@tomny-dev/uzi 0.1.9 → 0.1.10-pr.3.10.1.0d19006

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 (68) hide show
  1. package/README.md +132 -103
  2. package/dist/components/alert/Alert.d.ts +9 -0
  3. package/dist/components/alert/Alert.d.ts.map +1 -0
  4. package/dist/components/app-shell/AppShell.d.ts +46 -0
  5. package/dist/components/app-shell/AppShell.d.ts.map +1 -0
  6. package/dist/components/avatar/Avatar.d.ts +10 -0
  7. package/dist/components/avatar/Avatar.d.ts.map +1 -0
  8. package/dist/components/button/Button.d.ts +20 -0
  9. package/dist/components/button/Button.d.ts.map +1 -0
  10. package/dist/components/card/Card.d.ts +28 -0
  11. package/dist/components/card/Card.d.ts.map +1 -0
  12. package/dist/components/checkbox/Checkbox.d.ts +4 -0
  13. package/dist/components/checkbox/Checkbox.d.ts.map +1 -0
  14. package/dist/components/dropdown/Dropdown.d.ts +18 -0
  15. package/dist/components/dropdown/Dropdown.d.ts.map +1 -0
  16. package/dist/components/dropdown-menu/DropdownMenu.d.ts +24 -0
  17. package/dist/components/dropdown-menu/DropdownMenu.d.ts.map +1 -0
  18. package/dist/components/input/Input.d.ts +4 -0
  19. package/dist/components/input/Input.d.ts.map +1 -0
  20. package/dist/components/label/Label.d.ts +4 -0
  21. package/dist/components/label/Label.d.ts.map +1 -0
  22. package/dist/components/modal/Modal.d.ts +21 -0
  23. package/dist/components/modal/Modal.d.ts.map +1 -0
  24. package/dist/components/multi-select/MultiSelect.d.ts +21 -0
  25. package/dist/components/multi-select/MultiSelect.d.ts.map +1 -0
  26. package/dist/components/pill/Pill.d.ts +28 -0
  27. package/dist/components/pill/Pill.d.ts.map +1 -0
  28. package/dist/components/progress/Progress.d.ts +12 -0
  29. package/dist/components/progress/Progress.d.ts.map +1 -0
  30. package/dist/components/select/Select.d.ts +28 -0
  31. package/dist/components/select/Select.d.ts.map +1 -0
  32. package/dist/components/sidebar-nav/SidebarNav.d.ts +36 -0
  33. package/dist/components/sidebar-nav/SidebarNav.d.ts.map +1 -0
  34. package/dist/components/skeleton/Skeleton.d.ts +11 -0
  35. package/dist/components/skeleton/Skeleton.d.ts.map +1 -0
  36. package/dist/components/theme-toggle-button/ThemeToggleButton.d.ts +8 -0
  37. package/dist/components/theme-toggle-button/ThemeToggleButton.d.ts.map +1 -0
  38. package/dist/components/toast/ToastContext.d.ts +27 -0
  39. package/dist/components/toast/ToastContext.d.ts.map +1 -0
  40. package/dist/components/toast/types.d.ts +46 -0
  41. package/dist/components/toast/types.d.ts.map +1 -0
  42. package/dist/components/top-bar/TopBar.d.ts +20 -0
  43. package/dist/components/top-bar/TopBar.d.ts.map +1 -0
  44. package/dist/index.cjs +46 -1487
  45. package/dist/index.cjs.map +1 -1
  46. package/dist/index.d.ts +44 -390
  47. package/dist/index.d.ts.map +1 -0
  48. package/dist/index.js +6774 -1152
  49. package/dist/index.js.map +1 -1
  50. package/dist/server.cjs +7 -51
  51. package/dist/server.cjs.map +1 -1
  52. package/dist/server.d.ts +2 -16
  53. package/dist/server.d.ts.map +1 -0
  54. package/dist/server.js +13 -18
  55. package/dist/server.js.map +1 -1
  56. package/dist/style.css +1 -0
  57. package/dist/theme/ThemeProvider.d.ts +29 -0
  58. package/dist/theme/ThemeProvider.d.ts.map +1 -0
  59. package/dist/theme/constants.d.ts +5 -0
  60. package/dist/theme/constants.d.ts.map +1 -0
  61. package/dist/{server.d.cts → theme/themeScript.d.ts} +2 -3
  62. package/dist/theme/themeScript.d.ts.map +1 -0
  63. package/dist/utils/cx.d.ts +2 -0
  64. package/dist/utils/cx.d.ts.map +1 -0
  65. package/package.json +11 -7
  66. package/dist/index.css +0 -1428
  67. package/dist/index.css.map +0 -1
  68. package/dist/index.d.cts +0 -390
package/README.md CHANGED
@@ -1,103 +1,132 @@
1
- # @tomny-dev/uzi
2
-
3
- Rapid-fire React UI components. Ship faster, build more.
4
-
5
- ## Install
6
-
7
- ```bash
8
- pnpm add @tomny-dev/uzi
9
- ```
10
-
11
- ## Usage
12
-
13
- ```tsx
14
- import { Button, Card, Modal, ThemeProvider, useToast } from "@tomny-dev/uzi";
15
- ```
16
-
17
- If you want the packaged component styles, import the exported stylesheet once in your app:
18
-
19
- ```css
20
- @import "@tomny-dev/uzi/styles.css";
21
- ```
22
-
23
- ## Themes
24
-
25
- `uzi` ships with built-in light/dark tokens and a small accent palette layer.
26
-
27
- ```tsx
28
- "use client";
29
-
30
- import { Button, ThemeProvider, useTheme } from "@tomny-dev/uzi";
31
-
32
- function ThemeToggle() {
33
- const { resolvedTheme, toggleTheme, accent, setAccent } = useTheme();
34
-
35
- return (
36
- <div>
37
- <Button onClick={toggleTheme}>
38
- {resolvedTheme === "dark" ? "Switch to light" : "Switch to dark"}
39
- </Button>
40
- <Button variant="outline" onClick={() => setAccent(accent === "violet" ? "blue" : "violet")}>
41
- Toggle accent
42
- </Button>
43
- </div>
44
- );
45
- }
46
-
47
- export function App() {
48
- return (
49
- <ThemeProvider defaultTheme="system" defaultAccent="blue">
50
- <ThemeToggle />
51
- </ThemeProvider>
52
- );
53
- }
54
- ```
55
-
56
- Supported themes:
57
-
58
- - `light`
59
- - `dark`
60
- - `system`
61
-
62
- Supported accent palettes:
63
-
64
- - `blue`
65
- - `cyan`
66
- - `violet`
67
- - `emerald`
68
- - `amber`
69
- - `rose`
70
-
71
- ## Components
72
-
73
- | Component | Description |
74
- |---|---|
75
- | `Avatar` | Profile image with fallback states |
76
- | `Button` | Primary, secondary, outline, ghost variants |
77
- | `Card` | Surface container with tone/padding control |
78
- | `Checkbox` | Checkbox form primitive |
79
- | `Input` | Text input primitive |
80
- | `Label` | Form label primitive |
81
- | `Pill` | Inline badge/tag |
82
- | `Modal` | Accessible overlay dialog |
83
- | `Dropdown` | Select-style dropdown |
84
- | `DropdownMenu` | Radix-based action menu primitives |
85
- | `AppShell` | Responsive layout with collapsible sidebar |
86
- | `SidebarNav` | Sidebar navigation list |
87
- | `TopBar` | Composable header shell for brand, nav triggers, and actions |
88
- | `ThemeToggleButton` | Reusable light/dark toggle wired to `ThemeProvider` |
89
- | `ThemeProvider` / `useTheme` | Light/dark + accent palette theming |
90
- | `ToastProvider` / `useToast` | Toast notification system |
91
-
92
- `TopBar` supports:
93
-
94
- - `brandingLocation="left" | "center"`
95
- - `isSticky={true | false}`
96
- - `showThemeToggle`
97
- - `themeToggleProps`
98
-
99
- ## Notes
100
-
101
- - No Tailwind — components use CSS modules internally
102
- - `"use client"` is handled by the bundle no need to wrap imports
103
- - `react` and `react-dom` are peer dependencies, provided by your app
1
+ # @tomny-dev/uzi
2
+
3
+ Rapid-fire React UI components. Ship faster, build more.
4
+
5
+ ## Install
6
+
7
+ ```bash
8
+ pnpm add @tomny-dev/uzi
9
+ ```
10
+
11
+ ## Usage
12
+
13
+ ```tsx
14
+ import { Button, Card, Modal, ThemeProvider, useToast } from "@tomny-dev/uzi";
15
+ ```
16
+
17
+ If you want the packaged component styles, import the exported stylesheet once in your app:
18
+
19
+ ```css
20
+ @import "@tomny-dev/uzi/styles.css";
21
+ ```
22
+
23
+ ## Using With Coding Agents
24
+
25
+ Installing `@tomny-dev/uzi` in an app does not by itself cause Claude Code, Codex, or similar agents to prefer `uzi` components. You should add that policy to the consumer repo's agent guidance.
26
+
27
+ Recommended snippet for the consumer repo's `CLAUDE.md`, `AGENTS.md`, or equivalent:
28
+
29
+ ```md
30
+ ## UI Components
31
+
32
+ - Prefer `@tomny-dev/uzi` for shared UI primitives and layout components.
33
+ - Check `uzi` before creating new local primitives such as buttons, inputs, labels, cards, modals, selects, dropdown menus, alerts, shells, navigation, and theme controls.
34
+ - Only introduce a repo-local primitive when `uzi` lacks the required behavior or when the local file is intentionally app-specific composition.
35
+ - Keep imports consistent with the surrounding area of the codebase. If the repo already uses thin wrappers around `uzi`, follow that local pattern.
36
+ ```
37
+
38
+ If you want agents to discover props and examples directly, also configure the `uzi` MCP server. See [`mcp/README.md`](./mcp/README.md).
39
+
40
+ ## Themes
41
+
42
+ `uzi` ships with built-in light/dark tokens and a small accent palette layer.
43
+
44
+ ```tsx
45
+ "use client";
46
+
47
+ import { Button, ThemeProvider, useTheme } from "@tomny-dev/uzi";
48
+
49
+ function ThemeToggle() {
50
+ const { resolvedTheme, toggleTheme, accent, setAccent } = useTheme();
51
+
52
+ return (
53
+ <div>
54
+ <Button onClick={toggleTheme}>
55
+ {resolvedTheme === "dark" ? "Switch to light" : "Switch to dark"}
56
+ </Button>
57
+ <Button variant="outline" onClick={() => setAccent(accent === "violet" ? "blue" : "violet")}>
58
+ Toggle accent
59
+ </Button>
60
+ </div>
61
+ );
62
+ }
63
+
64
+ export function App() {
65
+ return (
66
+ <ThemeProvider defaultTheme="system" defaultAccent="blue">
67
+ <ThemeToggle />
68
+ </ThemeProvider>
69
+ );
70
+ }
71
+ ```
72
+
73
+ Supported themes:
74
+
75
+ - `light`
76
+ - `dark`
77
+ - `system`
78
+
79
+ Supported accent palettes:
80
+
81
+ - `blue`
82
+ - `cyan`
83
+ - `violet`
84
+ - `emerald`
85
+ - `amber`
86
+ - `rose`
87
+
88
+ ## Component Philosophy
89
+
90
+ `uzi` is not meant to be a from-scratch accessibility framework.
91
+
92
+ - Use native HTML for simple form controls when the platform already gives the right behavior.
93
+ - Use Radix for interaction-heavy primitives such as menus, dialogs, popovers, toasts, and custom selects.
94
+ - Use `uzi` for the public component API, styling, tokens, and higher-level templates like `TopBar`, `SidebarNav`, and `AppShell`.
95
+
96
+ In practice, `uzi` should spend its complexity budget on reusable app scaffolding and cohesive design, not on rebuilding low-level widget behavior that Radix or the browser already solves.
97
+
98
+ ## Components
99
+
100
+ | Component | Description |
101
+ |---|---|
102
+ | `Avatar` | Profile image with fallback states |
103
+ | `Button` | Primary, secondary, outline, ghost variants |
104
+ | `Card` | Surface container with tone/padding control |
105
+ | `Checkbox` | Checkbox form primitive |
106
+ | `Input` | Text input primitive |
107
+ | `Label` | Form label primitive |
108
+ | `MultiSelect` | Custom multi-option picker with checkbox-style menu |
109
+ | `Pill` | Inline badge/tag |
110
+ | `Modal` | Radix-backed overlay dialog |
111
+ | `Select` | Styled Radix-based single-select field |
112
+ | `Dropdown` | Deprecated compatibility alias for Select |
113
+ | `DropdownMenu` | Radix-based action menu primitives |
114
+ | `AppShell` | Responsive layout with collapsible sidebar |
115
+ | `SidebarNav` | Sidebar navigation list |
116
+ | `TopBar` | Composable header shell for brand, nav triggers, and actions |
117
+ | `ThemeToggleButton` | Reusable light/dark toggle wired to `ThemeProvider` |
118
+ | `ThemeProvider` / `useTheme` | Light/dark + accent palette theming |
119
+ | `ToastProvider` / `useToast` | Radix-backed toast notification system |
120
+
121
+ `TopBar` supports:
122
+
123
+ - `brandingLocation="left" | "center"`
124
+ - `isSticky={true | false}`
125
+ - `showThemeToggle`
126
+ - `themeToggleProps`
127
+
128
+ ## Notes
129
+
130
+ - No Tailwind — components use CSS modules internally
131
+ - `"use client"` is handled by the bundle — no need to wrap imports
132
+ - `react` and `react-dom` are peer dependencies, provided by your app
@@ -0,0 +1,9 @@
1
+ import type { ReactNode } from "react";
2
+ export type AlertTone = "success" | "error" | "warning" | "info";
3
+ export type AlertProps = {
4
+ tone: AlertTone;
5
+ children: ReactNode;
6
+ className?: string;
7
+ };
8
+ export declare function Alert({ tone, children, className }: AlertProps): import("react/jsx-runtime").JSX.Element;
9
+ //# sourceMappingURL=Alert.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Alert.d.ts","sourceRoot":"","sources":["../../../src/components/alert/Alert.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvC,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;AAEjE,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,SAAS,CAAC;IAChB,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,wBAAgB,KAAK,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,UAAU,2CAM9D"}
@@ -0,0 +1,46 @@
1
+ import { type ReactNode } from "react";
2
+ import { type TopBarProps } from "../top-bar/TopBar";
3
+ export type AppShellProps = {
4
+ /** Primary page content rendered in the main area. */
5
+ children: ReactNode;
6
+ /** Sidebar navigation or custom content. */
7
+ sidebar: ReactNode;
8
+ /** Brand element rendered next to the hamburger (text or JSX). */
9
+ brand?: ReactNode;
10
+ /** Optional brand href; when provided the brand renders as an anchor. */
11
+ brandHref?: string;
12
+ /** Optional content after the brand on the left side of the top bar. */
13
+ topbarStart?: ReactNode;
14
+ /** Optional content aligned to the right side of the top bar. */
15
+ topbarEnd?: ReactNode;
16
+ /** Optional built-in theme toggle for the top bar. */
17
+ showThemeToggle?: boolean;
18
+ themeToggleProps?: TopBarProps["themeToggleProps"];
19
+ topBarBrandingLocation?: TopBarProps["brandingLocation"];
20
+ /** Custom class names for styling overrides. */
21
+ className?: string;
22
+ sidebarClassName?: string;
23
+ topbarClassName?: string;
24
+ mainClassName?: string;
25
+ /** Sets the sidebar width (e.g., `260`, `"18rem"`). */
26
+ sidebarWidth?: number | string;
27
+ /**
28
+ * Closes the sidebar on mobile whenever this value changes.
29
+ * Useful for reacting to route/pathname changes.
30
+ */
31
+ closeSidebarOnChangeKey?: unknown;
32
+ /** Label for the hamburger button (aria-label). */
33
+ hamburgerLabel?: string;
34
+ /** Optional callback fired whenever the sidebar open state changes. */
35
+ onSidebarToggle?: (open: boolean) => void;
36
+ };
37
+ /**
38
+ * Responsive application shell with a collapsible sidebar and sticky top bar.
39
+ *
40
+ * - Sidebar opens by default on desktop, collapses on mobile.
41
+ * - Closes on outside click/scroll/touch when in mobile mode.
42
+ * - Provides optional hook to close the sidebar when a prop value changes
43
+ * (e.g., route transitions).
44
+ */
45
+ export declare function AppShell({ children, sidebar, brand, brandHref, topbarStart, topbarEnd, showThemeToggle, themeToggleProps, topBarBrandingLocation, className, sidebarClassName, topbarClassName, mainClassName, sidebarWidth, closeSidebarOnChangeKey, hamburgerLabel, onSidebarToggle, }: AppShellProps): import("react/jsx-runtime").JSX.Element;
46
+ //# sourceMappingURL=AppShell.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AppShell.d.ts","sourceRoot":"","sources":["../../../src/components/app-shell/AppShell.tsx"],"names":[],"mappings":"AAEA,OAAO,EAML,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAEf,OAAO,EAAU,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAU7D,MAAM,MAAM,aAAa,GAAG;IAC1B,sDAAsD;IACtD,QAAQ,EAAE,SAAS,CAAC;IACpB,4CAA4C;IAC5C,OAAO,EAAE,SAAS,CAAC;IACnB,kEAAkE;IAClE,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,yEAAyE;IACzE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wEAAwE;IACxE,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,iEAAiE;IACjE,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,sDAAsD;IACtD,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,gBAAgB,CAAC,EAAE,WAAW,CAAC,kBAAkB,CAAC,CAAC;IACnD,sBAAsB,CAAC,EAAE,WAAW,CAAC,kBAAkB,CAAC,CAAC;IACzD,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,uDAAuD;IACvD,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B;;;OAGG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,mDAAmD;IACnD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,uEAAuE;IACvE,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CAC3C,CAAC;AAEF;;;;;;;IAOI;AACJ,wBAAgB,QAAQ,CAAC,EACvB,QAAQ,EACR,OAAO,EACP,KAAK,EACL,SAAS,EACT,WAAW,EACX,SAAS,EACT,eAAuB,EACvB,gBAAgB,EAChB,sBAA+B,EAC/B,SAAS,EACT,gBAAgB,EAChB,eAAe,EACf,aAAa,EACb,YAAY,EACZ,uBAAuB,EACvB,cAAoC,EACpC,eAAe,GAChB,EAAE,aAAa,2CA2Jf"}
@@ -0,0 +1,10 @@
1
+ import * as React from "react";
2
+ import * as AvatarPrimitive from "@radix-ui/react-avatar";
3
+ export type AvatarSize = "sm" | "md" | "lg";
4
+ export type AvatarProps = React.ComponentProps<typeof AvatarPrimitive.Root> & {
5
+ size?: AvatarSize;
6
+ };
7
+ export declare function Avatar({ className, size, ...props }: AvatarProps): import("react/jsx-runtime").JSX.Element;
8
+ export declare function AvatarImage({ className, ...props }: React.ComponentProps<typeof AvatarPrimitive.Image>): import("react/jsx-runtime").JSX.Element;
9
+ export declare function AvatarFallback({ className, ...props }: React.ComponentProps<typeof AvatarPrimitive.Fallback>): import("react/jsx-runtime").JSX.Element;
10
+ //# sourceMappingURL=Avatar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Avatar.d.ts","sourceRoot":"","sources":["../../../src/components/avatar/Avatar.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAC;AAI1D,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAE5C,MAAM,MAAM,WAAW,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC,GAAG;IAC5E,IAAI,CAAC,EAAE,UAAU,CAAC;CACnB,CAAC;AAEF,wBAAgB,MAAM,CAAC,EACrB,SAAS,EACT,IAAW,EACX,GAAG,KAAK,EACT,EAAE,WAAW,2CAUb;AAED,wBAAgB,WAAW,CAAC,EAC1B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,2CAOpD;AAED,wBAAgB,cAAc,CAAC,EAC7B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,QAAQ,CAAC,2CAOvD"}
@@ -0,0 +1,20 @@
1
+ import * as React from "react";
2
+ export type ButtonVariant = "default" | "primary" | "secondary" | "outline" | "ghost" | "destructive" | "link";
3
+ export type ButtonSize = "default" | "sm" | "md" | "lg" | "icon";
4
+ type BaseProps = {
5
+ variant?: ButtonVariant;
6
+ size?: ButtonSize;
7
+ className?: string;
8
+ children?: React.ReactNode;
9
+ asChild?: boolean;
10
+ };
11
+ type AsButton = BaseProps & React.ButtonHTMLAttributes<HTMLButtonElement> & {
12
+ as?: "button";
13
+ };
14
+ type AsAnchor = BaseProps & React.AnchorHTMLAttributes<HTMLAnchorElement> & {
15
+ as: "a";
16
+ };
17
+ export type ButtonProps = AsButton | AsAnchor;
18
+ export declare function Button({ as, variant, size, className, children, asChild, ...rest }: ButtonProps): import("react/jsx-runtime").JSX.Element;
19
+ export {};
20
+ //# sourceMappingURL=Button.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../src/components/button/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,MAAM,MAAM,aAAa,GACrB,SAAS,GACT,SAAS,GACT,WAAW,GACX,SAAS,GACT,OAAO,GACP,aAAa,GACb,MAAM,CAAC;AACX,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,MAAM,CAAC;AAEjE,KAAK,SAAS,GAAG;IACf,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,KAAK,QAAQ,GAAG,SAAS,GACvB,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,GAAG;IAAE,EAAE,CAAC,EAAE,QAAQ,CAAA;CAAE,CAAC;AAEpE,KAAK,QAAQ,GAAG,SAAS,GACvB,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,GAAG;IAAE,EAAE,EAAE,GAAG,CAAA;CAAE,CAAC;AAE9D,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAoB9C,wBAAgB,MAAM,CAAC,EACrB,EAAE,EACF,OAAmB,EACnB,IAAgB,EAChB,SAAS,EACT,QAAQ,EACR,OAAe,EACf,GAAG,IAAI,EACR,EAAE,WAAW,2CAoCb"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Lightweight container component used for panels across the app.
3
+ *
4
+ * @remarks
5
+ * Supports tone variants, padding presets, and an optional interactive affordance.
6
+ *
7
+ * @param props.as - Semantic element to render (defaults to `div`).
8
+ * @param props.tone - Visual tone variant.
9
+ * @param props.padding - Padding preset.
10
+ * @param props.interactive - Enables hover/focus affordance.
11
+ */
12
+ import type { HTMLAttributes } from "react";
13
+ export type CardTone = "default" | "muted" | "contrast";
14
+ export type CardPadding = "none" | "sm" | "md" | "lg";
15
+ type CardElement = "div" | "section" | "article";
16
+ export type CardProps = HTMLAttributes<HTMLElement> & {
17
+ /** Optional semantic element type. Defaults to `div`. */
18
+ as?: CardElement;
19
+ /** Visual tone; drives background/border CSS vars. */
20
+ tone?: CardTone;
21
+ /** Padding preset; maps to CSS variables so consumers can override globally. */
22
+ padding?: CardPadding;
23
+ /** Adds hover/focus affordance (lift + outline). */
24
+ interactive?: boolean;
25
+ };
26
+ export declare function Card({ as, tone, padding, interactive, className, children, ...rest }: CardProps): import("react/jsx-runtime").JSX.Element;
27
+ export {};
28
+ //# sourceMappingURL=Card.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Card.d.ts","sourceRoot":"","sources":["../../../src/components/card/Card.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAI5C,MAAM,MAAM,QAAQ,GAAG,SAAS,GAAG,OAAO,GAAG,UAAU,CAAC;AACxD,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAEtD,KAAK,WAAW,GAAG,KAAK,GAAG,SAAS,GAAG,SAAS,CAAC;AAEjD,MAAM,MAAM,SAAS,GAAG,cAAc,CAAC,WAAW,CAAC,GAAG;IACpD,yDAAyD;IACzD,EAAE,CAAC,EAAE,WAAW,CAAC;IACjB,sDAAsD;IACtD,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,gFAAgF;IAChF,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,oDAAoD;IACpD,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF,wBAAgB,IAAI,CAAC,EACnB,EAAE,EACF,IAAgB,EAChB,OAAc,EACd,WAAmB,EACnB,SAAS,EACT,QAAQ,EACR,GAAG,IAAI,EACR,EAAE,SAAS,2CAiBX"}
@@ -0,0 +1,4 @@
1
+ import * as React from "react";
2
+ export type CheckboxProps = React.InputHTMLAttributes<HTMLInputElement>;
3
+ export declare const Checkbox: React.ForwardRefExoticComponent<CheckboxProps & React.RefAttributes<HTMLInputElement>>;
4
+ //# sourceMappingURL=Checkbox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Checkbox.d.ts","sourceRoot":"","sources":["../../../src/components/checkbox/Checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,MAAM,MAAM,aAAa,GAAG,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;AAExE,eAAO,MAAM,QAAQ,wFAWpB,CAAC"}
@@ -0,0 +1,18 @@
1
+ import * as React from "react";
2
+ import { type SelectOption, type SelectProps } from "../select/Select";
3
+ export interface DropdownOption extends SelectOption {
4
+ }
5
+ export interface DropdownProps extends Omit<SelectProps, "allowEmptyOption" | "fullWidth" | "placeholder" | "options"> {
6
+ /** List of options to display in the menu. */
7
+ options: DropdownOption[];
8
+ /** Label shown when no option is selected. Defaults to "All". */
9
+ placeholder?: string;
10
+ /** Whether to show the placeholder as a clearable option. Defaults to true. */
11
+ allowClear?: boolean;
12
+ }
13
+ /**
14
+ * @deprecated Use Select for value selection and DropdownMenu for action menus.
15
+ * Dropdown remains as a compatibility alias during migration.
16
+ */
17
+ export declare const Dropdown: React.ForwardRefExoticComponent<DropdownProps & React.RefAttributes<HTMLButtonElement>>;
18
+ //# sourceMappingURL=Dropdown.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dropdown.d.ts","sourceRoot":"","sources":["../../../src/components/dropdown/Dropdown.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAU,KAAK,YAAY,EAAE,KAAK,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/E,MAAM,WAAW,cAAe,SAAQ,YAAY;CAAG;AAEvD,MAAM,WAAW,aACf,SAAQ,IAAI,CACV,WAAW,EACX,kBAAkB,GAAG,WAAW,GAAG,aAAa,GAAG,SAAS,CAC7D;IACD,8CAA8C;IAC9C,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,iEAAiE;IACjE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+EAA+E;IAC/E,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;;GAGG;AACH,eAAO,MAAM,QAAQ,yFAyBpB,CAAC"}
@@ -0,0 +1,24 @@
1
+ import * as React from "react";
2
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
3
+ export declare function DropdownMenu(props: React.ComponentProps<typeof DropdownMenuPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
4
+ export declare function DropdownMenuTrigger(props: React.ComponentProps<typeof DropdownMenuPrimitive.Trigger>): import("react/jsx-runtime").JSX.Element;
5
+ export declare function DropdownMenuGroup(props: React.ComponentProps<typeof DropdownMenuPrimitive.Group>): import("react/jsx-runtime").JSX.Element;
6
+ export declare function DropdownMenuPortal(props: React.ComponentProps<typeof DropdownMenuPrimitive.Portal>): import("react/jsx-runtime").JSX.Element;
7
+ export declare function DropdownMenuSub(props: React.ComponentProps<typeof DropdownMenuPrimitive.Sub>): import("react/jsx-runtime").JSX.Element;
8
+ export declare function DropdownMenuRadioGroup(props: React.ComponentProps<typeof DropdownMenuPrimitive.RadioGroup>): import("react/jsx-runtime").JSX.Element;
9
+ export declare function DropdownMenuContent({ className, sideOffset, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Content>): import("react/jsx-runtime").JSX.Element;
10
+ export declare function DropdownMenuItem({ className, inset, variant, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Item> & {
11
+ inset?: boolean;
12
+ variant?: "default" | "destructive";
13
+ }): import("react/jsx-runtime").JSX.Element;
14
+ export declare function DropdownMenuCheckboxItem({ className, children, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.CheckboxItem>): import("react/jsx-runtime").JSX.Element;
15
+ export declare function DropdownMenuRadioItem({ className, children, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.RadioItem>): import("react/jsx-runtime").JSX.Element;
16
+ export declare function DropdownMenuLabel({ className, inset, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Label> & {
17
+ inset?: boolean;
18
+ }): import("react/jsx-runtime").JSX.Element;
19
+ export declare function DropdownMenuSeparator({ className, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Separator>): import("react/jsx-runtime").JSX.Element;
20
+ export declare function DropdownMenuSubTrigger({ className, inset, children, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.SubTrigger> & {
21
+ inset?: boolean;
22
+ }): import("react/jsx-runtime").JSX.Element;
23
+ export declare function DropdownMenuSubContent({ className, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.SubContent>): import("react/jsx-runtime").JSX.Element;
24
+ //# sourceMappingURL=DropdownMenu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DropdownMenu.d.ts","sourceRoot":"","sources":["../../../src/components/dropdown-menu/DropdownMenu.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,qBAAqB,MAAM,+BAA+B,CAAC;AAIvE,wBAAgB,YAAY,CAC1B,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,IAAI,CAAC,2CAG/D;AAED,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,OAAO,CAAC,2CAGlE;AAED,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,KAAK,CAAC,2CAGhE;AAED,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,MAAM,CAAC,2CAGjE;AAED,wBAAgB,eAAe,CAC7B,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,GAAG,CAAC,2CAG9D;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,UAAU,CAAC,2CAGrE;AAED,wBAAgB,mBAAmB,CAAC,EAClC,SAAS,EACT,UAAc,EACd,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,OAAO,CAAC,2CAU5D;AAED,wBAAgB,gBAAgB,CAAC,EAC/B,SAAS,EACT,KAAK,EACL,OAAmB,EACnB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,IAAI,CAAC,GAAG;IAC3D,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,SAAS,GAAG,aAAa,CAAC;CACrC,2CAYA;AAED,wBAAgB,wBAAwB,CAAC,EACvC,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,YAAY,CAAC,2CAiCjE;AAED,wBAAgB,qBAAqB,CAAC,EACpC,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,SAAS,CAAC,2CAkB9D;AAED,wBAAgB,iBAAiB,CAAC,EAChC,SAAS,EACT,KAAK,EACL,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,KAAK,CAAC,GAAG;IAC5D,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,2CAQA;AAED,wBAAgB,qBAAqB,CAAC,EACpC,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,SAAS,CAAC,2CAO9D;AAED,wBAAgB,sBAAsB,CAAC,EACrC,SAAS,EACT,KAAK,EACL,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,UAAU,CAAC,GAAG;IACjE,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,2CA0BA;AAED,wBAAgB,sBAAsB,CAAC,EACrC,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,UAAU,CAAC,2CAO/D"}
@@ -0,0 +1,4 @@
1
+ import * as React from "react";
2
+ export type InputProps = React.InputHTMLAttributes<HTMLInputElement>;
3
+ export declare const Input: React.ForwardRefExoticComponent<InputProps & React.RefAttributes<HTMLInputElement>>;
4
+ //# sourceMappingURL=Input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../../src/components/input/Input.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,MAAM,MAAM,UAAU,GAAG,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;AAErE,eAAO,MAAM,KAAK,qFAWjB,CAAC"}
@@ -0,0 +1,4 @@
1
+ import * as React from "react";
2
+ export type LabelProps = React.LabelHTMLAttributes<HTMLLabelElement>;
3
+ export declare const Label: React.ForwardRefExoticComponent<LabelProps & React.RefAttributes<HTMLLabelElement>>;
4
+ //# sourceMappingURL=Label.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Label.d.ts","sourceRoot":"","sources":["../../../src/components/label/Label.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,MAAM,MAAM,UAAU,GAAG,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;AAErE,eAAO,MAAM,KAAK,qFAIjB,CAAC"}
@@ -0,0 +1,21 @@
1
+ import type { ReactNode } from "react";
2
+ export type ModalOverlayProps = {
3
+ open: boolean;
4
+ onClose: () => void;
5
+ /** Extra class applied to the backdrop */
6
+ className?: string;
7
+ children: ReactNode;
8
+ };
9
+ export declare function ModalOverlay({ open, onClose, className, children }: ModalOverlayProps): import("react/jsx-runtime").JSX.Element;
10
+ export type ModalSize = "sm" | "md" | "lg" | "xl";
11
+ export type ModalProps = {
12
+ open: boolean;
13
+ onClose: () => void;
14
+ title: string;
15
+ subtitle?: string;
16
+ size?: ModalSize;
17
+ children: ReactNode;
18
+ footer?: ReactNode;
19
+ };
20
+ export declare function Modal({ open, onClose, title, subtitle, size, children, footer }: ModalProps): import("react/jsx-runtime").JSX.Element;
21
+ //# sourceMappingURL=Modal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Modal.d.ts","sourceRoot":"","sources":["../../../src/components/modal/Modal.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AASvC,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,0CAA0C;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,SAAS,CAAC;CACrB,CAAC;AAEF,wBAAgB,YAAY,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,iBAAiB,2CAkBrF;AAKD,MAAM,MAAM,SAAS,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAElD,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,QAAQ,EAAE,SAAS,CAAC;IACpB,MAAM,CAAC,EAAE,SAAS,CAAC;CACpB,CAAC;AAEF,wBAAgB,KAAK,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,UAAU,2CA6BlG"}
@@ -0,0 +1,21 @@
1
+ import * as React from "react";
2
+ export type MultiSelectOption = {
3
+ label: string;
4
+ value: string;
5
+ disabled?: boolean;
6
+ };
7
+ export type MultiSelectProps = {
8
+ options: MultiSelectOption[];
9
+ value: string[];
10
+ onChange: (value: string[]) => void;
11
+ placeholder?: string;
12
+ fullWidth?: boolean;
13
+ maxVisibleValues?: number;
14
+ className?: string;
15
+ disabled?: boolean;
16
+ name?: string;
17
+ "aria-label"?: string;
18
+ "aria-labelledby"?: string;
19
+ };
20
+ export declare const MultiSelect: React.ForwardRefExoticComponent<MultiSelectProps & React.RefAttributes<HTMLButtonElement>>;
21
+ //# sourceMappingURL=MultiSelect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MultiSelect.d.ts","sourceRoot":"","sources":["../../../src/components/multi-select/MultiSelect.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,MAAM,MAAM,iBAAiB,GAAG;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,EAAE,iBAAiB,EAAE,CAAC;IAC7B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IACpC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,eAAO,MAAM,WAAW,4FAuKvB,CAAC"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Compact label component for status chips and tags.
3
+ *
4
+ * @remarks
5
+ * Supports tone and size presets, and can render any inline element.
6
+ *
7
+ * @param props.as - Element to render (defaults to `span`).
8
+ * @param props.tone - Visual tone variant.
9
+ * @param props.size - Size preset.
10
+ * @param props.icon - Optional leading icon.
11
+ */
12
+ import type { HTMLAttributes, ReactNode } from "react";
13
+ export type PillTone = "neutral" | "success" | "warning" | "info" | "danger";
14
+ export type PillSize = "sm" | "md";
15
+ type PillElement = "span" | "div" | "button";
16
+ export type PillProps = HTMLAttributes<HTMLElement> & {
17
+ /** Optional rendered element; defaults to `span`. */
18
+ as?: PillElement;
19
+ /** Visual tone; adjusts color and border. */
20
+ tone?: PillTone;
21
+ /** Size preset. */
22
+ size?: PillSize;
23
+ /** Leading icon node (not focusable). */
24
+ icon?: ReactNode;
25
+ };
26
+ export declare function Pill({ as, tone, size, icon, className, children, ...rest }: PillProps): import("react/jsx-runtime").JSX.Element;
27
+ export {};
28
+ //# sourceMappingURL=Pill.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Pill.d.ts","sourceRoot":"","sources":["../../../src/components/pill/Pill.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvD,MAAM,MAAM,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,GAAG,QAAQ,CAAC;AAC7E,MAAM,MAAM,QAAQ,GAAG,IAAI,GAAG,IAAI,CAAC;AAEnC,KAAK,WAAW,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,CAAC;AAE7C,MAAM,MAAM,SAAS,GAAG,cAAc,CAAC,WAAW,CAAC,GAAG;IACpD,qDAAqD;IACrD,EAAE,CAAC,EAAE,WAAW,CAAC;IACjB,6CAA6C;IAC7C,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,mBAAmB;IACnB,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,yCAAyC;IACzC,IAAI,CAAC,EAAE,SAAS,CAAC;CAClB,CAAC;AAEF,wBAAgB,IAAI,CAAC,EACnB,EAAE,EACF,IAAgB,EAChB,IAAW,EACX,IAAI,EACJ,SAAS,EACT,QAAQ,EACR,GAAG,IAAI,EACR,EAAE,SAAS,2CAcX"}
@@ -0,0 +1,12 @@
1
+ import type { HTMLAttributes } from "react";
2
+ export type ProgressTone = "default" | "success" | "warning" | "danger";
3
+ export type ProgressProps = HTMLAttributes<HTMLDivElement> & {
4
+ /** Value 0–100. */
5
+ value: number;
6
+ /** Visual tone. Defaults to "default". */
7
+ tone?: ProgressTone;
8
+ /** Accessible label. */
9
+ "aria-label"?: string;
10
+ };
11
+ export declare function Progress({ value, tone, className, "aria-label": ariaLabel, ...rest }: ProgressProps): import("react/jsx-runtime").JSX.Element;
12
+ //# sourceMappingURL=Progress.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Progress.d.ts","sourceRoot":"","sources":["../../../src/components/progress/Progress.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAI5C,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAC;AAExE,MAAM,MAAM,aAAa,GAAG,cAAc,CAAC,cAAc,CAAC,GAAG;IAC3D,mBAAmB;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,0CAA0C;IAC1C,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,wBAAwB;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,wBAAgB,QAAQ,CAAC,EACvB,KAAK,EACL,IAAgB,EAChB,SAAS,EACT,YAAY,EAAE,SAAS,EACvB,GAAG,IAAI,EACR,EAAE,aAAa,2CAkBf"}
@@ -0,0 +1,28 @@
1
+ import * as React from "react";
2
+ export type SelectOption = {
3
+ label: string;
4
+ value: string;
5
+ disabled?: boolean;
6
+ };
7
+ export type SelectProps = {
8
+ options: SelectOption[];
9
+ value: string;
10
+ onChange: (value: string) => void;
11
+ placeholder?: string;
12
+ allowEmptyOption?: boolean;
13
+ fullWidth?: boolean;
14
+ className?: string;
15
+ id?: string;
16
+ name?: string;
17
+ disabled?: boolean;
18
+ required?: boolean;
19
+ autoComplete?: string;
20
+ form?: string;
21
+ title?: string;
22
+ "aria-label"?: string;
23
+ "aria-labelledby"?: string;
24
+ onBlur?: React.FocusEventHandler<HTMLButtonElement>;
25
+ onFocus?: React.FocusEventHandler<HTMLButtonElement>;
26
+ };
27
+ export declare const Select: React.ForwardRefExoticComponent<SelectProps & React.RefAttributes<HTMLButtonElement>>;
28
+ //# sourceMappingURL=Select.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../../src/components/select/Select.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,MAAM,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;IACpD,OAAO,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;CACtD,CAAC;AAIF,eAAO,MAAM,MAAM,uFAyJlB,CAAC"}