@brijbyte/agentic-ui 0.0.1-beta → 0.0.1
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 +736 -0
- package/dist/accordion/accordion.css +89 -0
- package/dist/accordion/accordion.d.ts +28 -0
- package/dist/accordion/accordion.d.ts.map +1 -0
- package/dist/accordion/accordion.js +51 -0
- package/dist/accordion/accordion.js.map +1 -0
- package/dist/accordion/accordion.module.css.d.ts +2 -0
- package/dist/accordion/accordion.module.js +14 -0
- package/dist/accordion/accordion.module.js.map +1 -0
- package/dist/accordion/index.d.ts +3 -0
- package/dist/accordion/index.js +4 -0
- package/dist/accordion/parts.d.ts +28 -0
- package/dist/accordion/parts.d.ts.map +1 -0
- package/dist/accordion/parts.js +55 -0
- package/dist/accordion/parts.js.map +1 -0
- package/dist/badge/badge.css +70 -0
- package/dist/badge/badge.d.ts +20 -0
- package/dist/badge/badge.d.ts.map +1 -0
- package/dist/badge/badge.js +21 -0
- package/dist/badge/badge.js.map +1 -0
- package/dist/badge/badge.module.css.d.ts +2 -0
- package/dist/badge/badge.module.js +16 -0
- package/dist/badge/badge.module.js.map +1 -0
- package/dist/badge/index.d.ts +2 -0
- package/dist/badge/index.js +3 -0
- package/dist/button/button.css +242 -0
- package/dist/button/button.d.ts +28 -0
- package/dist/button/button.d.ts.map +1 -0
- package/dist/button/button.js +34 -0
- package/dist/button/button.js.map +1 -0
- package/dist/button/button.module.css.d.ts +2 -0
- package/dist/button/button.module.js +27 -0
- package/dist/button/button.module.js.map +1 -0
- package/dist/button/index.d.ts +2 -0
- package/dist/button/index.js +3 -0
- package/dist/card/card.css +68 -0
- package/dist/card/card.d.ts +41 -0
- package/dist/card/card.d.ts.map +1 -0
- package/dist/card/card.js +50 -0
- package/dist/card/card.js.map +1 -0
- package/dist/card/card.module.css.d.ts +2 -0
- package/dist/card/card.module.js +15 -0
- package/dist/card/card.module.js.map +1 -0
- package/dist/card/index.d.ts +2 -0
- package/dist/card/index.js +3 -0
- package/dist/checkbox/checkbox.css +76 -0
- package/dist/checkbox/checkbox.d.ts +29 -0
- package/dist/checkbox/checkbox.d.ts.map +1 -0
- package/dist/checkbox/checkbox.js +40 -0
- package/dist/checkbox/checkbox.js.map +1 -0
- package/dist/checkbox/checkbox.module.css.d.ts +2 -0
- package/dist/checkbox/checkbox.module.js +11 -0
- package/dist/checkbox/checkbox.module.js.map +1 -0
- package/dist/checkbox/index.d.ts +3 -0
- package/dist/checkbox/index.js +4 -0
- package/dist/checkbox/parts.d.ts +20 -0
- package/dist/checkbox/parts.d.ts.map +1 -0
- package/dist/checkbox/parts.js +51 -0
- package/dist/checkbox/parts.js.map +1 -0
- package/dist/collapsible/collapsible.css +92 -0
- package/dist/collapsible/collapsible.d.ts +24 -0
- package/dist/collapsible/collapsible.d.ts.map +1 -0
- package/dist/collapsible/collapsible.js +44 -0
- package/dist/collapsible/collapsible.js.map +1 -0
- package/dist/collapsible/collapsible.module.css.d.ts +2 -0
- package/dist/collapsible/collapsible.module.js +12 -0
- package/dist/collapsible/collapsible.module.js.map +1 -0
- package/dist/collapsible/index.d.ts +3 -0
- package/dist/collapsible/index.js +4 -0
- package/dist/collapsible/parts.d.ts +23 -0
- package/dist/collapsible/parts.d.ts.map +1 -0
- package/dist/collapsible/parts.js +44 -0
- package/dist/collapsible/parts.js.map +1 -0
- package/dist/dialog/dialog.css +120 -0
- package/dist/dialog/dialog.d.ts +32 -0
- package/dist/dialog/dialog.d.ts.map +1 -0
- package/dist/dialog/dialog.js +54 -0
- package/dist/dialog/dialog.js.map +1 -0
- package/dist/dialog/dialog.module.css.d.ts +2 -0
- package/dist/dialog/dialog.module.js +15 -0
- package/dist/dialog/dialog.module.js.map +1 -0
- package/dist/dialog/index.d.ts +3 -0
- package/dist/dialog/index.js +4 -0
- package/dist/dialog/parts.d.ts +38 -0
- package/dist/dialog/parts.d.ts.map +1 -0
- package/dist/dialog/parts.js +75 -0
- package/dist/dialog/parts.js.map +1 -0
- package/dist/drawer/drawer.css +257 -0
- package/dist/drawer/drawer.d.ts +38 -0
- package/dist/drawer/drawer.d.ts.map +1 -0
- package/dist/drawer/drawer.js +87 -0
- package/dist/drawer/drawer.js.map +1 -0
- package/dist/drawer/drawer.module.css.d.ts +2 -0
- package/dist/drawer/drawer.module.js +20 -0
- package/dist/drawer/drawer.module.js.map +1 -0
- package/dist/drawer/index.d.ts +3 -0
- package/dist/drawer/index.js +4 -0
- package/dist/drawer/parts.d.ts +58 -0
- package/dist/drawer/parts.d.ts.map +1 -0
- package/dist/drawer/parts.js +107 -0
- package/dist/drawer/parts.js.map +1 -0
- package/dist/index.css +2424 -0
- package/dist/index.d.ts +33 -0
- package/dist/index.js +53 -0
- package/dist/input/index.d.ts +2 -0
- package/dist/input/index.js +3 -0
- package/dist/input/input.css +107 -0
- package/dist/input/input.d.ts +17 -0
- package/dist/input/input.d.ts.map +1 -0
- package/dist/input/input.js +37 -0
- package/dist/input/input.js.map +1 -0
- package/dist/input/input.module.css.d.ts +2 -0
- package/dist/input/input.module.js +18 -0
- package/dist/input/input.module.js.map +1 -0
- package/dist/menu/index.d.ts +4 -0
- package/dist/menu/index.js +5 -0
- package/dist/menu/menu.css +158 -0
- package/dist/menu/menu.d.ts +50 -0
- package/dist/menu/menu.d.ts.map +1 -0
- package/dist/menu/menu.js +69 -0
- package/dist/menu/menu.js.map +1 -0
- package/dist/menu/menu.module.css.d.ts +2 -0
- package/dist/menu/menu.module.js +19 -0
- package/dist/menu/menu.module.js.map +1 -0
- package/dist/menu/menuitemshortcut.d.ts +9 -0
- package/dist/menu/menuitemshortcut.d.ts.map +1 -0
- package/dist/menu/menuitemshortcut.js +15 -0
- package/dist/menu/menuitemshortcut.js.map +1 -0
- package/dist/menu/parts.d.ts +39 -0
- package/dist/menu/parts.d.ts.map +1 -0
- package/dist/menu/parts.js +76 -0
- package/dist/menu/parts.js.map +1 -0
- package/dist/number-field/index.d.ts +3 -0
- package/dist/number-field/index.js +4 -0
- package/dist/number-field/number-field.css +115 -0
- package/dist/number-field/number-field.d.ts +31 -0
- package/dist/number-field/number-field.d.ts.map +1 -0
- package/dist/number-field/number-field.js +78 -0
- package/dist/number-field/number-field.js.map +1 -0
- package/dist/number-field/number-field.module.css.d.ts +2 -0
- package/dist/number-field/number-field.module.js +16 -0
- package/dist/number-field/number-field.module.js.map +1 -0
- package/dist/number-field/parts.d.ts +38 -0
- package/dist/number-field/parts.d.ts.map +1 -0
- package/dist/number-field/parts.js +74 -0
- package/dist/number-field/parts.js.map +1 -0
- package/dist/progress/index.d.ts +3 -0
- package/dist/progress/index.js +4 -0
- package/dist/progress/parts.d.ts +20 -0
- package/dist/progress/parts.d.ts.map +1 -0
- package/dist/progress/parts.js +42 -0
- package/dist/progress/parts.js.map +1 -0
- package/dist/progress/progress.css +75 -0
- package/dist/progress/progress.d.ts +27 -0
- package/dist/progress/progress.d.ts.map +1 -0
- package/dist/progress/progress.js +27 -0
- package/dist/progress/progress.js.map +1 -0
- package/dist/progress/progress.module.css.d.ts +2 -0
- package/dist/progress/progress.module.js +19 -0
- package/dist/progress/progress.module.js.map +1 -0
- package/dist/reset.css +91 -0
- package/dist/select/index.d.ts +3 -0
- package/dist/select/index.js +4 -0
- package/dist/select/parts.d.ts +65 -0
- package/dist/select/parts.d.ts.map +1 -0
- package/dist/select/parts.js +134 -0
- package/dist/select/parts.js.map +1 -0
- package/dist/select/select.css +159 -0
- package/dist/select/select.d.ts +38 -0
- package/dist/select/select.d.ts.map +1 -0
- package/dist/select/select.js +80 -0
- package/dist/select/select.js.map +1 -0
- package/dist/select/select.module.css.d.ts +2 -0
- package/dist/select/select.module.js +17 -0
- package/dist/select/select.module.js.map +1 -0
- package/dist/separator/index.d.ts +2 -0
- package/dist/separator/index.js +3 -0
- package/dist/separator/separator.css +20 -0
- package/dist/separator/separator.d.ts +16 -0
- package/dist/separator/separator.d.ts.map +1 -0
- package/dist/separator/separator.js +17 -0
- package/dist/separator/separator.js.map +1 -0
- package/dist/separator/separator.module.css.d.ts +2 -0
- package/dist/separator/separator.module.js +6 -0
- package/dist/separator/separator.module.js.map +1 -0
- package/dist/styles/reset.css +69 -0
- package/dist/styles/tokens.css +274 -0
- package/dist/switch/index.d.ts +3 -0
- package/dist/switch/index.js +4 -0
- package/dist/switch/parts.d.ts +18 -0
- package/dist/switch/parts.d.ts.map +1 -0
- package/dist/switch/parts.js +39 -0
- package/dist/switch/parts.js.map +1 -0
- package/dist/switch/switch.css +68 -0
- package/dist/switch/switch.d.ts +28 -0
- package/dist/switch/switch.d.ts.map +1 -0
- package/dist/switch/switch.js +26 -0
- package/dist/switch/switch.js.map +1 -0
- package/dist/switch/switch.module.css.d.ts +2 -0
- package/dist/switch/switch.module.js +11 -0
- package/dist/switch/switch.module.js.map +1 -0
- package/dist/tabs/index.d.ts +3 -0
- package/dist/tabs/index.js +4 -0
- package/dist/tabs/parts.d.ts +23 -0
- package/dist/tabs/parts.d.ts.map +1 -0
- package/dist/tabs/parts.js +48 -0
- package/dist/tabs/parts.js.map +1 -0
- package/dist/tabs/tabs.css +90 -0
- package/dist/tabs/tabs.d.ts +28 -0
- package/dist/tabs/tabs.d.ts.map +1 -0
- package/dist/tabs/tabs.js +30 -0
- package/dist/tabs/tabs.js.map +1 -0
- package/dist/tabs/tabs.module.css.d.ts +2 -0
- package/dist/tabs/tabs.module.js +11 -0
- package/dist/tabs/tabs.module.js.map +1 -0
- package/dist/tailwind-theme.css +142 -0
- package/dist/toast/index.d.ts +3 -0
- package/dist/toast/index.js +4 -0
- package/dist/toast/parts.d.ts +33 -0
- package/dist/toast/parts.d.ts.map +1 -0
- package/dist/toast/parts.js +62 -0
- package/dist/toast/parts.js.map +1 -0
- package/dist/toast/toast.css +211 -0
- package/dist/toast/toast.d.ts +43 -0
- package/dist/toast/toast.d.ts.map +1 -0
- package/dist/toast/toast.js +156 -0
- package/dist/toast/toast.js.map +1 -0
- package/dist/toast/toast.module.css.d.ts +2 -0
- package/dist/toast/toast.module.js +25 -0
- package/dist/toast/toast.module.js.map +1 -0
- package/dist/tokens.css +400 -0
- package/dist/tooltip/index.d.ts +3 -0
- package/dist/tooltip/index.js +4 -0
- package/dist/tooltip/parts.d.ts +23 -0
- package/dist/tooltip/parts.d.ts.map +1 -0
- package/dist/tooltip/parts.js +53 -0
- package/dist/tooltip/parts.js.map +1 -0
- package/dist/tooltip/tooltip.css +64 -0
- package/dist/tooltip/tooltip.d.ts +22 -0
- package/dist/tooltip/tooltip.d.ts.map +1 -0
- package/dist/tooltip/tooltip.js +23 -0
- package/dist/tooltip/tooltip.js.map +1 -0
- package/dist/tooltip/tooltip.module.css.d.ts +2 -0
- package/dist/tooltip/tooltip.module.js +10 -0
- package/dist/tooltip/tooltip.module.js.map +1 -0
- package/package.json +137 -4
- package/src/accordion/accordion.module.css +89 -0
- package/src/accordion/accordion.tsx +50 -0
- package/src/accordion/index.ts +6 -0
- package/src/accordion/parts.tsx +68 -0
- package/src/badge/badge.module.css +70 -0
- package/src/badge/badge.tsx +19 -0
- package/src/badge/index.ts +3 -0
- package/src/button/button.module.css +265 -0
- package/src/button/button.tsx +67 -0
- package/src/button/index.ts +3 -0
- package/src/card/card.module.css +67 -0
- package/src/card/card.tsx +54 -0
- package/src/card/index.ts +3 -0
- package/src/checkbox/checkbox.module.css +80 -0
- package/src/checkbox/checkbox.tsx +38 -0
- package/src/checkbox/index.ts +6 -0
- package/src/checkbox/parts.tsx +54 -0
- package/src/collapsible/collapsible.module.css +94 -0
- package/src/collapsible/collapsible.tsx +38 -0
- package/src/collapsible/index.ts +6 -0
- package/src/collapsible/parts.tsx +52 -0
- package/src/css.d.ts +8 -0
- package/src/dialog/dialog.module.css +123 -0
- package/src/dialog/dialog.tsx +60 -0
- package/src/dialog/index.ts +13 -0
- package/src/dialog/parts.tsx +96 -0
- package/src/drawer/drawer.module.css +289 -0
- package/src/drawer/drawer.tsx +96 -0
- package/src/drawer/index.ts +24 -0
- package/src/drawer/parts.tsx +122 -0
- package/src/index.ts +189 -0
- package/src/input/index.ts +3 -0
- package/src/input/input.module.css +109 -0
- package/src/input/input.tsx +39 -0
- package/src/menu/index.ts +7 -0
- package/src/menu/menu.module.css +172 -0
- package/src/menu/menu.tsx +108 -0
- package/src/menu/menuitemshortcut.tsx +9 -0
- package/src/menu/parts.tsx +90 -0
- package/src/number-field/index.ts +20 -0
- package/src/number-field/number-field.module.css +114 -0
- package/src/number-field/number-field.tsx +75 -0
- package/src/number-field/parts.tsx +91 -0
- package/src/progress/index.ts +6 -0
- package/src/progress/parts.tsx +51 -0
- package/src/progress/progress.module.css +70 -0
- package/src/progress/progress.tsx +42 -0
- package/src/select/index.ts +30 -0
- package/src/select/parts.tsx +171 -0
- package/src/select/select.module.css +167 -0
- package/src/select/select.tsx +89 -0
- package/src/separator/index.ts +3 -0
- package/src/separator/separator.module.css +18 -0
- package/src/separator/separator.tsx +20 -0
- package/src/styles/reset.css +91 -0
- package/src/styles/tailwind-theme.css +142 -0
- package/src/styles/tokens.css +400 -0
- package/src/switch/index.ts +6 -0
- package/src/switch/parts.tsx +44 -0
- package/src/switch/switch.module.css +67 -0
- package/src/switch/switch.tsx +33 -0
- package/src/tabs/index.ts +6 -0
- package/src/tabs/parts.tsx +48 -0
- package/src/tabs/tabs.module.css +92 -0
- package/src/tabs/tabs.tsx +48 -0
- package/src/toast/index.ts +6 -0
- package/src/toast/parts.tsx +76 -0
- package/src/toast/toast.module.css +252 -0
- package/src/toast/toast.tsx +129 -0
- package/src/tooltip/index.ts +6 -0
- package/src/tooltip/parts.tsx +62 -0
- package/src/tooltip/tooltip.module.css +67 -0
- package/src/tooltip/tooltip.tsx +30 -0
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
@layer theme, base;
|
|
2
|
+
|
|
3
|
+
@layer components {
|
|
4
|
+
.root_prqJ8a {
|
|
5
|
+
flex-direction: column;
|
|
6
|
+
gap: 0;
|
|
7
|
+
display: flex;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
.list_prqJ8a {
|
|
11
|
+
align-items: center;
|
|
12
|
+
gap: var(--space-px);
|
|
13
|
+
border-bottom: var(--border-width-base) solid var(--color-border-base);
|
|
14
|
+
scrollbar-width: none;
|
|
15
|
+
display: flex;
|
|
16
|
+
overflow-x: auto;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
.list_prqJ8a::-webkit-scrollbar {
|
|
20
|
+
display: none;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.tab_prqJ8a {
|
|
24
|
+
align-items: center;
|
|
25
|
+
gap: var(--space-1-5);
|
|
26
|
+
padding: var(--space-1-5) var(--space-3);
|
|
27
|
+
font-family: var(--font-mono);
|
|
28
|
+
font-size: var(--font-size-sm);
|
|
29
|
+
font-weight: var(--font-weight-regular);
|
|
30
|
+
color: var(--color-text-tertiary);
|
|
31
|
+
cursor: pointer;
|
|
32
|
+
white-space: nowrap;
|
|
33
|
+
transition: color var(--duration-fast) var(--easing-standard),
|
|
34
|
+
border-color var(--duration-fast) var(--easing-standard);
|
|
35
|
+
user-select: none;
|
|
36
|
+
background: none;
|
|
37
|
+
border: none;
|
|
38
|
+
border-bottom: 3px solid #0000;
|
|
39
|
+
outline: none;
|
|
40
|
+
margin-bottom: -1px;
|
|
41
|
+
display: inline-flex;
|
|
42
|
+
position: relative;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
.tab_prqJ8a:hover:not([data-disabled]) {
|
|
46
|
+
color: var(--color-text-primary);
|
|
47
|
+
border-bottom-color: var(--color-border-strong);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
.tab_prqJ8a:focus-visible {
|
|
51
|
+
outline: none;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
.tab_prqJ8a:focus-visible:after {
|
|
55
|
+
content: "";
|
|
56
|
+
border-radius: var(--radius-sm);
|
|
57
|
+
box-shadow: var(--shadow-focus);
|
|
58
|
+
pointer-events: none;
|
|
59
|
+
position: absolute;
|
|
60
|
+
inset: 2px 2px 8px;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
.tab_prqJ8a[data-active] {
|
|
64
|
+
color: var(--color-text-primary);
|
|
65
|
+
font-weight: var(--font-weight-medium);
|
|
66
|
+
border-bottom-color: var(--color-accent);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
.tab_prqJ8a[data-disabled] {
|
|
70
|
+
opacity: .44;
|
|
71
|
+
cursor: not-allowed;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
.panel_prqJ8a {
|
|
75
|
+
padding-top: var(--space-4);
|
|
76
|
+
transition: opacity .15s var(--easing-ease-out);
|
|
77
|
+
outline: none;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
.panel_prqJ8a[data-starting-style] {
|
|
81
|
+
opacity: 0;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
.panel_prqJ8a:focus-visible {
|
|
85
|
+
box-shadow: var(--shadow-focus);
|
|
86
|
+
border-radius: var(--radius-sm);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
@layer utilities;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { ReactNode } from "react";
|
|
2
|
+
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
3
|
+
import styles from "./tabs.module.css";
|
|
4
|
+
|
|
5
|
+
//#region src/tabs/tabs.d.ts
|
|
6
|
+
interface TabItem {
|
|
7
|
+
value: string;
|
|
8
|
+
label: ReactNode;
|
|
9
|
+
content: ReactNode;
|
|
10
|
+
disabled?: boolean;
|
|
11
|
+
icon?: ReactNode;
|
|
12
|
+
}
|
|
13
|
+
interface TabsProps {
|
|
14
|
+
items: TabItem[];
|
|
15
|
+
value?: string;
|
|
16
|
+
defaultValue?: string;
|
|
17
|
+
/** `eventDetails` is the base-ui event details object. */
|
|
18
|
+
onValueChange?: (value: unknown, eventDetails: unknown) => void;
|
|
19
|
+
className?: string;
|
|
20
|
+
}
|
|
21
|
+
declare function Tabs({
|
|
22
|
+
items,
|
|
23
|
+
className,
|
|
24
|
+
...props
|
|
25
|
+
}: TabsProps): react_jsx_runtime0.JSX.Element;
|
|
26
|
+
//#endregion
|
|
27
|
+
export { TabItem, Tabs, TabsProps, styles };
|
|
28
|
+
//# sourceMappingURL=tabs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tabs.d.ts","names":[],"sources":["../../src/tabs/tabs.tsx"],"mappings":";;;;;UAIiB,OAAA;EACf,KAAA;EACA,KAAA,EAAO,SAAA;EACP,OAAA,EAAS,SAAA;EACT,QAAA;EACA,IAAA,GAAO,SAAA;AAAA;AAAA,UAGQ,SAAA;EACf,KAAA,EAAO,OAAA;EACP,KAAA;EACA,YAAA;EAVA;EAYA,aAAA,IAAiB,KAAA,WAAgB,YAAA;EACjC,SAAA;AAAA;AAAA,iBAGc,IAAA,CAAA;EAAO,KAAA;EAAO,SAAA;EAAA,GAAc;AAAA,GAAS,SAAA,GAAS,kBAAA,CAAA,GAAA,CAAA,OAAA"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import tabs_module_default from "./tabs.module.js";
|
|
2
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { Tabs } from "@base-ui/react/tabs";
|
|
4
|
+
//#region src/tabs/tabs.tsx
|
|
5
|
+
function Tabs$1({ items, className, ...props }) {
|
|
6
|
+
const defaultVal = props.defaultValue ?? items[0]?.value;
|
|
7
|
+
return /* @__PURE__ */ jsxs(Tabs.Root, {
|
|
8
|
+
className: `${tabs_module_default.root} ${className ?? ""}`,
|
|
9
|
+
defaultValue: defaultVal,
|
|
10
|
+
onValueChange: props.onValueChange,
|
|
11
|
+
value: props.value,
|
|
12
|
+
children: [/* @__PURE__ */ jsx(Tabs.List, {
|
|
13
|
+
className: tabs_module_default.list,
|
|
14
|
+
children: items.map((item) => /* @__PURE__ */ jsxs(Tabs.Tab, {
|
|
15
|
+
value: item.value,
|
|
16
|
+
disabled: item.disabled,
|
|
17
|
+
className: tabs_module_default.tab,
|
|
18
|
+
children: [item.icon, item.label]
|
|
19
|
+
}, item.value))
|
|
20
|
+
}), items.map((item) => /* @__PURE__ */ jsx(Tabs.Panel, {
|
|
21
|
+
value: item.value,
|
|
22
|
+
className: tabs_module_default.panel,
|
|
23
|
+
children: item.content
|
|
24
|
+
}, item.value))]
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
//#endregion
|
|
28
|
+
export { Tabs$1 as Tabs };
|
|
29
|
+
|
|
30
|
+
//# sourceMappingURL=tabs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tabs.js","names":["Tabs","BaseTabs","styles"],"sources":["../../src/tabs/tabs.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport { Tabs as BaseTabs } from \"@base-ui/react/tabs\";\nimport styles from \"./tabs.module.css\";\n\nexport interface TabItem {\n value: string;\n label: ReactNode;\n content: ReactNode;\n disabled?: boolean;\n icon?: ReactNode;\n}\n\nexport interface TabsProps {\n items: TabItem[];\n value?: string;\n defaultValue?: string;\n /** `eventDetails` is the base-ui event details object. */\n onValueChange?: (value: unknown, eventDetails: unknown) => void;\n className?: string;\n}\n\nexport function Tabs({ items, className, ...props }: TabsProps) {\n const defaultVal = props.defaultValue ?? items[0]?.value;\n\n return (\n <BaseTabs.Root\n className={`${styles.root} ${className ?? \"\"}`}\n defaultValue={defaultVal}\n onValueChange={props.onValueChange as never}\n value={props.value}\n >\n <BaseTabs.List className={styles.list}>\n {items.map((item) => (\n <BaseTabs.Tab key={item.value} value={item.value} disabled={item.disabled} className={styles.tab}>\n {item.icon}\n {item.label}\n </BaseTabs.Tab>\n ))}\n </BaseTabs.List>\n {items.map((item) => (\n <BaseTabs.Panel key={item.value} value={item.value} className={styles.panel}>\n {item.content}\n </BaseTabs.Panel>\n ))}\n </BaseTabs.Root>\n );\n}\nexport { styles as TabsStyles };\n"],"mappings":";;;;AAqBA,SAAgBA,OAAK,EAAE,OAAO,WAAW,GAAG,SAAoB;CAC9D,MAAM,aAAa,MAAM,gBAAgB,MAAM,IAAI;AAEnD,QACE,qBAACC,KAAS,MAAV;EACE,WAAW,GAAGC,oBAAO,KAAK,GAAG,aAAa;EAC1C,cAAc;EACd,eAAe,MAAM;EACrB,OAAO,MAAM;YAJf,CAME,oBAACD,KAAS,MAAV;GAAe,WAAWC,oBAAO;aAC9B,MAAM,KAAK,SACV,qBAACD,KAAS,KAAV;IAA+B,OAAO,KAAK;IAAO,UAAU,KAAK;IAAU,WAAWC,oBAAO;cAA7F,CACG,KAAK,MACL,KAAK,MACO;MAHI,KAAK,MAGT,CACf;GACY,CAAA,EACf,MAAM,KAAK,SACV,oBAACD,KAAS,OAAV;GAAiC,OAAO,KAAK;GAAO,WAAWC,oBAAO;aACnE,KAAK;GACS,EAFI,KAAK,MAET,CACjB,CACY"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
//#region src/tabs/tabs.module.css
|
|
2
|
+
var tabs_module_default = {
|
|
3
|
+
"list": "list_prqJ8a",
|
|
4
|
+
"panel": "panel_prqJ8a",
|
|
5
|
+
"root": "root_prqJ8a",
|
|
6
|
+
"tab": "tab_prqJ8a"
|
|
7
|
+
};
|
|
8
|
+
//#endregion
|
|
9
|
+
export { tabs_module_default as default };
|
|
10
|
+
|
|
11
|
+
//# sourceMappingURL=tabs.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tabs.module.js","names":[],"sources":["../../src/tabs/tabs.module.css"],"sourcesContent":["@layer theme, base, components, utilities;\n\n@layer components {\n .root {\n display: flex;\n flex-direction: column;\n gap: 0;\n }\n\n /* ─── Tab List ──────────────────────────────────────── */\n .list {\n display: flex;\n align-items: center;\n gap: var(--space-px);\n border-bottom: var(--border-width-base) solid var(--color-border-base);\n overflow-x: auto;\n scrollbar-width: none;\n }\n\n .list::-webkit-scrollbar {\n display: none;\n }\n\n /* ─── Tab trigger ────────────────────────────────────── */\n .tab {\n display: inline-flex;\n align-items: center;\n gap: var(--space-1-5);\n padding: var(--space-1-5) var(--space-3);\n font-family: var(--font-mono);\n font-size: var(--font-size-sm);\n font-weight: var(--font-weight-regular);\n color: var(--color-text-tertiary);\n border: none;\n background: none;\n cursor: pointer;\n outline: none;\n white-space: nowrap;\n position: relative;\n margin-bottom: -1px;\n border-bottom: 3px solid transparent;\n transition:\n color var(--duration-fast) var(--easing-standard),\n border-color var(--duration-fast) var(--easing-standard);\n user-select: none;\n }\n\n .tab:hover:not([data-disabled]) {\n color: var(--color-text-primary);\n border-bottom-color: var(--color-border-strong);\n }\n\n .tab:focus-visible {\n outline: none;\n }\n\n .tab:focus-visible::after {\n content: \"\";\n position: absolute;\n inset: 2px 2px 8px;\n border-radius: var(--radius-sm);\n box-shadow: var(--shadow-focus);\n pointer-events: none;\n }\n\n .tab[data-active] {\n color: var(--color-text-primary);\n font-weight: var(--font-weight-medium);\n border-bottom-color: var(--color-accent);\n }\n\n .tab[data-disabled] {\n opacity: 0.44;\n cursor: not-allowed;\n }\n\n /* ─── Tab panel ─────────────────────────────────────── */\n .panel {\n padding-top: var(--space-4);\n outline: none;\n transition: opacity 150ms var(--easing-ease-out);\n }\n\n .panel[data-starting-style] {\n opacity: 0;\n }\n\n .panel:focus-visible {\n box-shadow: var(--shadow-focus);\n border-radius: var(--radius-sm);\n }\n}\n"],"mappings":""}
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @brijbyte/agentic-ui — Tailwind v4 theme integration
|
|
3
|
+
*
|
|
4
|
+
* Import this AFTER `@import "tailwindcss"` and AFTER the agentic-ui
|
|
5
|
+
* token/reset CSS in your app's CSS entry file:
|
|
6
|
+
*
|
|
7
|
+
* @import "tailwindcss";
|
|
8
|
+
* @import "@brijbyte/agentic-ui/styles/tokens.css";
|
|
9
|
+
* @import "@brijbyte/agentic-ui/styles/reset.css";
|
|
10
|
+
* @import "@brijbyte/agentic-ui/tailwind-theme";
|
|
11
|
+
*
|
|
12
|
+
* `@theme inline` tells Tailwind v4 to generate utility classes that
|
|
13
|
+
* reference our CSS custom properties directly — dark mode and theme
|
|
14
|
+
* overrides work automatically without any Tailwind configuration.
|
|
15
|
+
*
|
|
16
|
+
* Generated utility examples:
|
|
17
|
+
* bg-bg-base → background-color: var(--color-bg-base)
|
|
18
|
+
* text-text-primary → color: var(--color-text-primary)
|
|
19
|
+
* border-border-base→ border-color: var(--color-border-base)
|
|
20
|
+
* font-mono → font-family: var(--font-mono)
|
|
21
|
+
* rounded-md → border-radius: var(--radius-md)
|
|
22
|
+
* shadow-sm → box-shadow: var(--shadow-sm)
|
|
23
|
+
*/
|
|
24
|
+
|
|
25
|
+
@theme inline {
|
|
26
|
+
/* ── Backgrounds ────────────────────────────────────────────── */
|
|
27
|
+
--color-bg-base: var(--color-bg-base);
|
|
28
|
+
--color-bg-elevated: var(--color-bg-elevated);
|
|
29
|
+
--color-bg-sunken: var(--color-bg-sunken);
|
|
30
|
+
--color-bg-overlay: var(--color-bg-overlay);
|
|
31
|
+
--color-bg-sidebar: var(--color-bg-sidebar);
|
|
32
|
+
|
|
33
|
+
/* ── Surfaces ───────────────────────────────────────────────── */
|
|
34
|
+
--color-surface-1: var(--color-surface-1);
|
|
35
|
+
--color-surface-2: var(--color-surface-2);
|
|
36
|
+
--color-surface-3: var(--color-surface-3);
|
|
37
|
+
--color-surface-hover: var(--color-surface-hover);
|
|
38
|
+
--color-surface-active: var(--color-surface-active);
|
|
39
|
+
--color-surface-selected: var(--color-surface-selected);
|
|
40
|
+
|
|
41
|
+
/* ── Text ───────────────────────────────────────────────────── */
|
|
42
|
+
--color-text-primary: var(--color-text-primary);
|
|
43
|
+
--color-text-secondary: var(--color-text-secondary);
|
|
44
|
+
--color-text-tertiary: var(--color-text-tertiary);
|
|
45
|
+
--color-text-disabled: var(--color-text-disabled);
|
|
46
|
+
--color-text-inverse: var(--color-text-inverse);
|
|
47
|
+
--color-text-on-accent: var(--color-text-on-accent);
|
|
48
|
+
--color-text-code: var(--color-text-code);
|
|
49
|
+
|
|
50
|
+
/* ── Borders ────────────────────────────────────────────────── */
|
|
51
|
+
--color-border-base: var(--color-border-base);
|
|
52
|
+
--color-border-strong: var(--color-border-strong);
|
|
53
|
+
--color-border-subtle: var(--color-border-subtle);
|
|
54
|
+
--color-border-focus: var(--color-border-focus);
|
|
55
|
+
|
|
56
|
+
/* ── Accent (macOS blue) ────────────────────────────────────── */
|
|
57
|
+
--color-accent: var(--color-accent);
|
|
58
|
+
--color-accent-hover: var(--color-accent-hover);
|
|
59
|
+
--color-accent-pressed: var(--color-accent-pressed);
|
|
60
|
+
--color-accent-tint: var(--color-accent-tint);
|
|
61
|
+
--color-accent-tint-hover: var(--color-accent-tint-hover);
|
|
62
|
+
|
|
63
|
+
/* ── Focus ──────────────────────────────────────────────────── */
|
|
64
|
+
--color-focus-ring: var(--color-focus-ring);
|
|
65
|
+
|
|
66
|
+
/* ── Status ─────────────────────────────────────────────────── */
|
|
67
|
+
--color-success-bg: var(--color-success-bg);
|
|
68
|
+
--color-success-border: var(--color-success-border);
|
|
69
|
+
--color-success-text: var(--color-success-text);
|
|
70
|
+
--color-success-solid: var(--color-success-solid);
|
|
71
|
+
|
|
72
|
+
--color-warning-bg: var(--color-warning-bg);
|
|
73
|
+
--color-warning-border: var(--color-warning-border);
|
|
74
|
+
--color-warning-text: var(--color-warning-text);
|
|
75
|
+
--color-warning-solid: var(--color-warning-solid);
|
|
76
|
+
|
|
77
|
+
--color-error-bg: var(--color-error-bg);
|
|
78
|
+
--color-error-border: var(--color-error-border);
|
|
79
|
+
--color-error-text: var(--color-error-text);
|
|
80
|
+
--color-error-solid: var(--color-error-solid);
|
|
81
|
+
|
|
82
|
+
--color-info-bg: var(--color-info-bg);
|
|
83
|
+
--color-info-border: var(--color-info-border);
|
|
84
|
+
--color-info-text: var(--color-info-text);
|
|
85
|
+
--color-info-solid: var(--color-info-solid);
|
|
86
|
+
|
|
87
|
+
/* ── Code syntax ────────────────────────────────────────────── */
|
|
88
|
+
--color-code-bg: var(--color-code-bg);
|
|
89
|
+
--color-code-border: var(--color-code-border);
|
|
90
|
+
--color-code-keyword: var(--color-code-keyword);
|
|
91
|
+
--color-code-string: var(--color-code-string);
|
|
92
|
+
--color-code-function: var(--color-code-function);
|
|
93
|
+
|
|
94
|
+
/* ── Fonts ──────────────────────────────────────────────────── */
|
|
95
|
+
--font-display: var(--font-display);
|
|
96
|
+
--font-mono: var(--font-mono);
|
|
97
|
+
--font-sans: var(--font-sans);
|
|
98
|
+
|
|
99
|
+
/* ── Border radius ──────────────────────────────────────────── */
|
|
100
|
+
--radius-none: var(--radius-none);
|
|
101
|
+
--radius-sm: var(--radius-sm);
|
|
102
|
+
--radius-md: var(--radius-md);
|
|
103
|
+
--radius-lg: var(--radius-lg);
|
|
104
|
+
--radius-xl: var(--radius-xl);
|
|
105
|
+
--radius-2xl: var(--radius-2xl);
|
|
106
|
+
--radius-full: var(--radius-full);
|
|
107
|
+
|
|
108
|
+
/* ── Shadows ────────────────────────────────────────────────── */
|
|
109
|
+
--shadow-xs: var(--shadow-xs);
|
|
110
|
+
--shadow-sm: var(--shadow-sm);
|
|
111
|
+
--shadow-md: var(--shadow-md);
|
|
112
|
+
--shadow-lg: var(--shadow-lg);
|
|
113
|
+
--shadow-xl: var(--shadow-xl);
|
|
114
|
+
--shadow-popover: var(--shadow-popover);
|
|
115
|
+
--shadow-focus: var(--shadow-focus);
|
|
116
|
+
--shadow-inset: var(--shadow-inset);
|
|
117
|
+
|
|
118
|
+
/* ── Line heights ───────────────────────────────────────────── */
|
|
119
|
+
--leading-tight: var(--line-height-tight);
|
|
120
|
+
--leading-normal: var(--line-height-normal);
|
|
121
|
+
--leading-relaxed: var(--line-height-relaxed);
|
|
122
|
+
|
|
123
|
+
/* ── Letter spacing ─────────────────────────────────────────── */
|
|
124
|
+
--tracking-tight: var(--letter-spacing-tight);
|
|
125
|
+
--tracking-normal: var(--letter-spacing-normal);
|
|
126
|
+
--tracking-wide: var(--letter-spacing-wide);
|
|
127
|
+
--tracking-wider: var(--letter-spacing-wider);
|
|
128
|
+
|
|
129
|
+
/* ── Easing ─────────────────────────────────────────────────── */
|
|
130
|
+
--ease-standard: var(--easing-standard);
|
|
131
|
+
--ease-spring: var(--easing-spring);
|
|
132
|
+
--ease-in: var(--easing-ease-in);
|
|
133
|
+
--ease-out: var(--easing-ease-out);
|
|
134
|
+
--ease-linear: var(--easing-linear);
|
|
135
|
+
|
|
136
|
+
/* ── Z-index ────────────────────────────────────────────────── */
|
|
137
|
+
--z-dropdown: var(--z-dropdown);
|
|
138
|
+
--z-overlay: var(--z-overlay);
|
|
139
|
+
--z-modal: var(--z-modal);
|
|
140
|
+
--z-toast: var(--z-toast);
|
|
141
|
+
--z-tooltip: var(--z-tooltip);
|
|
142
|
+
}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { ToastProvider, ToastProviderProps, ToastType, ToastViewport, ToastViewportProps, styles, useToastManager } from "./toast.js";
|
|
2
|
+
import { ToastClose, ToastCloseProps, ToastDescription, ToastDescriptionProps, ToastRoot, ToastRootProps, ToastTitle, ToastTitleProps, ToastViewportPart, ToastViewportPartProps } from "./parts.js";
|
|
3
|
+
export { ToastClose, type ToastCloseProps, ToastDescription, type ToastDescriptionProps, ToastProvider, type ToastProviderProps, ToastRoot, type ToastRootProps, styles as ToastStyles, ToastTitle, type ToastTitleProps, type ToastType, ToastViewport, ToastViewportPart, type ToastViewportPartProps, type ToastViewportProps, useToastManager };
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import toast_module_default from "./toast.module.js";
|
|
2
|
+
import { ToastProvider, ToastViewport, useToastManager } from "./toast.js";
|
|
3
|
+
import { ToastClose, ToastDescription, ToastRoot, ToastTitle, ToastViewportPart } from "./parts.js";
|
|
4
|
+
export { ToastClose, ToastDescription, ToastProvider, ToastRoot, toast_module_default as ToastStyles, ToastTitle, ToastViewport, ToastViewportPart, useToastManager };
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import * as react from "react";
|
|
2
|
+
import { ComponentPropsWithoutRef } from "react";
|
|
3
|
+
import { Toast } from "@base-ui/react/toast";
|
|
4
|
+
|
|
5
|
+
//#region src/toast/parts.d.ts
|
|
6
|
+
type BaseRootProps = ComponentPropsWithoutRef<typeof Toast.Root>;
|
|
7
|
+
type BaseTitleProps = ComponentPropsWithoutRef<typeof Toast.Title>;
|
|
8
|
+
type BaseDescriptionProps = ComponentPropsWithoutRef<typeof Toast.Description>;
|
|
9
|
+
type BaseCloseProps = ComponentPropsWithoutRef<typeof Toast.Close>;
|
|
10
|
+
type BaseViewportProps = ComponentPropsWithoutRef<typeof Toast.Viewport>;
|
|
11
|
+
interface ToastRootProps extends Omit<BaseRootProps, "className"> {
|
|
12
|
+
className?: string;
|
|
13
|
+
}
|
|
14
|
+
interface ToastTitleProps extends Omit<BaseTitleProps, "className"> {
|
|
15
|
+
className?: string;
|
|
16
|
+
}
|
|
17
|
+
interface ToastDescriptionProps extends Omit<BaseDescriptionProps, "className"> {
|
|
18
|
+
className?: string;
|
|
19
|
+
}
|
|
20
|
+
interface ToastCloseProps extends Omit<BaseCloseProps, "className"> {
|
|
21
|
+
className?: string;
|
|
22
|
+
}
|
|
23
|
+
interface ToastViewportPartProps extends Omit<BaseViewportProps, "className"> {
|
|
24
|
+
className?: string;
|
|
25
|
+
}
|
|
26
|
+
declare const ToastRoot: react.ForwardRefExoticComponent<ToastRootProps & react.RefAttributes<HTMLDivElement>>;
|
|
27
|
+
declare const ToastTitle: react.ForwardRefExoticComponent<ToastTitleProps & react.RefAttributes<HTMLHeadingElement>>;
|
|
28
|
+
declare const ToastDescription: react.ForwardRefExoticComponent<ToastDescriptionProps & react.RefAttributes<HTMLParagraphElement>>;
|
|
29
|
+
declare const ToastClose: react.ForwardRefExoticComponent<ToastCloseProps & react.RefAttributes<HTMLButtonElement>>;
|
|
30
|
+
declare const ToastViewportPart: react.ForwardRefExoticComponent<ToastViewportPartProps & react.RefAttributes<HTMLDivElement>>;
|
|
31
|
+
//#endregion
|
|
32
|
+
export { ToastClose, ToastCloseProps, ToastDescription, ToastDescriptionProps, ToastRoot, ToastRootProps, ToastTitle, ToastTitleProps, ToastViewportPart, ToastViewportPartProps };
|
|
33
|
+
//# sourceMappingURL=parts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parts.d.ts","names":[],"sources":["../../src/toast/parts.tsx"],"mappings":";;;;;KAuBK,aAAA,GAAgB,wBAAA,QAAgC,KAAA,CAAU,IAAA;AAAA,KAC1D,cAAA,GAAiB,wBAAA,QAAgC,KAAA,CAAU,KAAA;AAAA,KAC3D,oBAAA,GAAuB,wBAAA,QAAgC,KAAA,CAAU,WAAA;AAAA,KACjE,cAAA,GAAiB,wBAAA,QAAgC,KAAA,CAAU,KAAA;AAAA,KAC3D,iBAAA,GAAoB,wBAAA,QAAgC,KAAA,CAAU,QAAA;AAAA,UAElD,cAAA,SAAuB,IAAA,CAAK,aAAA;EAC3C,SAAA;AAAA;AAAA,UAEe,eAAA,SAAwB,IAAA,CAAK,cAAA;EAC5C,SAAA;AAAA;AAAA,UAEe,qBAAA,SAA8B,IAAA,CAAK,oBAAA;EAClD,SAAA;AAAA;AAAA,UAEe,eAAA,SAAwB,IAAA,CAAK,cAAA;EAC5C,SAAA;AAAA;AAAA,UAEe,sBAAA,SAA+B,IAAA,CAAK,iBAAA;EACnD,SAAA;AAAA;AAAA,cAGW,SAAA,EAAS,KAAA,CAAA,yBAAA,CAAA,cAAA,GAAA,KAAA,CAAA,aAAA,CAAA,cAAA;AAAA,cAIT,UAAA,EAAU,KAAA,CAAA,yBAAA,CAAA,eAAA,GAAA,KAAA,CAAA,aAAA,CAAA,kBAAA;AAAA,cAOV,gBAAA,EAAgB,KAAA,CAAA,yBAAA,CAAA,qBAAA,GAAA,KAAA,CAAA,aAAA,CAAA,oBAAA;AAAA,cAOhB,UAAA,EAAU,KAAA,CAAA,yBAAA,CAAA,eAAA,GAAA,KAAA,CAAA,aAAA,CAAA,iBAAA;AAAA,cAOV,iBAAA,EAAiB,KAAA,CAAA,yBAAA,CAAA,sBAAA,GAAA,KAAA,CAAA,aAAA,CAAA,cAAA"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import toast_module_default from "./toast.module.js";
|
|
2
|
+
import { forwardRef } from "react";
|
|
3
|
+
import { jsx } from "react/jsx-runtime";
|
|
4
|
+
import { Toast } from "@base-ui/react/toast";
|
|
5
|
+
//#region src/toast/parts.tsx
|
|
6
|
+
/**
|
|
7
|
+
* Styled primitives for Toast.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```tsx
|
|
11
|
+
* import { Toast } from '@base-ui/react/toast';
|
|
12
|
+
* import { ToastRoot, ToastTitle, ToastDescription, ToastClose } from '@brijbyte/agentic-ui/toast';
|
|
13
|
+
*
|
|
14
|
+
* // Inside a Toast.Viewport or custom viewport:
|
|
15
|
+
* manager.toasts.map((toast) => (
|
|
16
|
+
* <ToastRoot key={toast.id} toast={toast}>
|
|
17
|
+
* <ToastTitle />
|
|
18
|
+
* <ToastDescription />
|
|
19
|
+
* <ToastClose aria-label="Dismiss" />
|
|
20
|
+
* </ToastRoot>
|
|
21
|
+
* ))
|
|
22
|
+
* ```
|
|
23
|
+
*/
|
|
24
|
+
const ToastRoot = forwardRef(function ToastRoot({ className, ...props }, ref) {
|
|
25
|
+
return /* @__PURE__ */ jsx(Toast.Root, {
|
|
26
|
+
ref,
|
|
27
|
+
className: `${toast_module_default.toast} ${className ?? ""}`,
|
|
28
|
+
...props
|
|
29
|
+
});
|
|
30
|
+
});
|
|
31
|
+
const ToastTitle = forwardRef(function ToastTitle({ className, ...props }, ref) {
|
|
32
|
+
return /* @__PURE__ */ jsx(Toast.Title, {
|
|
33
|
+
ref,
|
|
34
|
+
className: `${toast_module_default.title} ${className ?? ""}`,
|
|
35
|
+
...props
|
|
36
|
+
});
|
|
37
|
+
});
|
|
38
|
+
const ToastDescription = forwardRef(function ToastDescription({ className, ...props }, ref) {
|
|
39
|
+
return /* @__PURE__ */ jsx(Toast.Description, {
|
|
40
|
+
ref,
|
|
41
|
+
className: `${toast_module_default.description} ${className ?? ""}`,
|
|
42
|
+
...props
|
|
43
|
+
});
|
|
44
|
+
});
|
|
45
|
+
const ToastClose = forwardRef(function ToastClose({ className, ...props }, ref) {
|
|
46
|
+
return /* @__PURE__ */ jsx(Toast.Close, {
|
|
47
|
+
ref,
|
|
48
|
+
className: `${toast_module_default.close} ${className ?? ""}`,
|
|
49
|
+
...props
|
|
50
|
+
});
|
|
51
|
+
});
|
|
52
|
+
const ToastViewportPart = forwardRef(function ToastViewportPart({ className, ...props }, ref) {
|
|
53
|
+
return /* @__PURE__ */ jsx(Toast.Viewport, {
|
|
54
|
+
ref,
|
|
55
|
+
className: `${toast_module_default.viewport} ${className ?? ""}`,
|
|
56
|
+
...props
|
|
57
|
+
});
|
|
58
|
+
});
|
|
59
|
+
//#endregion
|
|
60
|
+
export { ToastClose, ToastDescription, ToastRoot, ToastTitle, ToastViewportPart };
|
|
61
|
+
|
|
62
|
+
//# sourceMappingURL=parts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parts.js","names":["BaseToast","styles"],"sources":["../../src/toast/parts.tsx"],"sourcesContent":["/**\n * Styled primitives for Toast.\n *\n * @example\n * ```tsx\n * import { Toast } from '@base-ui/react/toast';\n * import { ToastRoot, ToastTitle, ToastDescription, ToastClose } from '@brijbyte/agentic-ui/toast';\n *\n * // Inside a Toast.Viewport or custom viewport:\n * manager.toasts.map((toast) => (\n * <ToastRoot key={toast.id} toast={toast}>\n * <ToastTitle />\n * <ToastDescription />\n * <ToastClose aria-label=\"Dismiss\" />\n * </ToastRoot>\n * ))\n * ```\n */\nimport { forwardRef } from \"react\";\nimport type { ComponentRef, ComponentPropsWithoutRef } from \"react\";\nimport { Toast as BaseToast } from \"@base-ui/react/toast\";\nimport styles from \"./toast.module.css\";\n\ntype BaseRootProps = ComponentPropsWithoutRef<typeof BaseToast.Root>;\ntype BaseTitleProps = ComponentPropsWithoutRef<typeof BaseToast.Title>;\ntype BaseDescriptionProps = ComponentPropsWithoutRef<typeof BaseToast.Description>;\ntype BaseCloseProps = ComponentPropsWithoutRef<typeof BaseToast.Close>;\ntype BaseViewportProps = ComponentPropsWithoutRef<typeof BaseToast.Viewport>;\n\nexport interface ToastRootProps extends Omit<BaseRootProps, \"className\"> {\n className?: string;\n}\nexport interface ToastTitleProps extends Omit<BaseTitleProps, \"className\"> {\n className?: string;\n}\nexport interface ToastDescriptionProps extends Omit<BaseDescriptionProps, \"className\"> {\n className?: string;\n}\nexport interface ToastCloseProps extends Omit<BaseCloseProps, \"className\"> {\n className?: string;\n}\nexport interface ToastViewportPartProps extends Omit<BaseViewportProps, \"className\"> {\n className?: string;\n}\n\nexport const ToastRoot = forwardRef<ComponentRef<typeof BaseToast.Root>, ToastRootProps>(function ToastRoot({ className, ...props }, ref) {\n return <BaseToast.Root ref={ref} className={`${styles.toast} ${className ?? \"\"}`} {...props} />;\n});\n\nexport const ToastTitle = forwardRef<ComponentRef<typeof BaseToast.Title>, ToastTitleProps>(function ToastTitle(\n { className, ...props },\n ref,\n) {\n return <BaseToast.Title ref={ref} className={`${styles.title} ${className ?? \"\"}`} {...props} />;\n});\n\nexport const ToastDescription = forwardRef<ComponentRef<typeof BaseToast.Description>, ToastDescriptionProps>(function ToastDescription(\n { className, ...props },\n ref,\n) {\n return <BaseToast.Description ref={ref} className={`${styles.description} ${className ?? \"\"}`} {...props} />;\n});\n\nexport const ToastClose = forwardRef<ComponentRef<typeof BaseToast.Close>, ToastCloseProps>(function ToastClose(\n { className, ...props },\n ref,\n) {\n return <BaseToast.Close ref={ref} className={`${styles.close} ${className ?? \"\"}`} {...props} />;\n});\n\nexport const ToastViewportPart = forwardRef<ComponentRef<typeof BaseToast.Viewport>, ToastViewportPartProps>(function ToastViewportPart(\n { className, ...props },\n ref,\n) {\n return <BaseToast.Viewport ref={ref} className={`${styles.viewport} ${className ?? \"\"}`} {...props} />;\n});\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AA6CA,MAAa,YAAY,WAAgE,SAAS,UAAU,EAAE,WAAW,GAAG,SAAS,KAAK;AACxI,QAAO,oBAACA,MAAU,MAAX;EAAqB;EAAK,WAAW,GAAGC,qBAAO,MAAM,GAAG,aAAa;EAAM,GAAI;EAAS,CAAA;EAC/F;AAEF,MAAa,aAAa,WAAkE,SAAS,WACnG,EAAE,WAAW,GAAG,SAChB,KACA;AACA,QAAO,oBAACD,MAAU,OAAX;EAAsB;EAAK,WAAW,GAAGC,qBAAO,MAAM,GAAG,aAAa;EAAM,GAAI;EAAS,CAAA;EAChG;AAEF,MAAa,mBAAmB,WAA8E,SAAS,iBACrH,EAAE,WAAW,GAAG,SAChB,KACA;AACA,QAAO,oBAACD,MAAU,aAAX;EAA4B;EAAK,WAAW,GAAGC,qBAAO,YAAY,GAAG,aAAa;EAAM,GAAI;EAAS,CAAA;EAC5G;AAEF,MAAa,aAAa,WAAkE,SAAS,WACnG,EAAE,WAAW,GAAG,SAChB,KACA;AACA,QAAO,oBAACD,MAAU,OAAX;EAAsB;EAAK,WAAW,GAAGC,qBAAO,MAAM,GAAG,aAAa;EAAM,GAAI;EAAS,CAAA;EAChG;AAEF,MAAa,oBAAoB,WAA4E,SAAS,kBACpH,EAAE,WAAW,GAAG,SAChB,KACA;AACA,QAAO,oBAACD,MAAU,UAAX;EAAyB;EAAK,WAAW,GAAGC,qBAAO,SAAS,GAAG,aAAa;EAAM,GAAI;EAAS,CAAA;EACtG"}
|
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
@layer theme, base;
|
|
2
|
+
|
|
3
|
+
@layer components {
|
|
4
|
+
.viewport_QXnIWW {
|
|
5
|
+
bottom: var(--space-4);
|
|
6
|
+
right: var(--space-4);
|
|
7
|
+
z-index: var(--z-toast);
|
|
8
|
+
width: 360px;
|
|
9
|
+
max-width: calc(100vw - var(--space-8));
|
|
10
|
+
pointer-events: none;
|
|
11
|
+
outline: none;
|
|
12
|
+
flex-direction: column;
|
|
13
|
+
list-style: none;
|
|
14
|
+
display: flex;
|
|
15
|
+
position: fixed;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
.viewport-list_QXnIWW {
|
|
19
|
+
gap: var(--space-2);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
.viewport-stacked_QXnIWW {
|
|
23
|
+
gap: 0;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
.toast_QXnIWW {
|
|
27
|
+
align-items: flex-start;
|
|
28
|
+
gap: var(--space-3);
|
|
29
|
+
padding: var(--space-3) var(--space-4);
|
|
30
|
+
background-color: var(--color-bg-overlay);
|
|
31
|
+
border: var(--border-width-base) solid var(--color-border-base);
|
|
32
|
+
border-radius: var(--radius-xl);
|
|
33
|
+
box-shadow: var(--shadow-popover);
|
|
34
|
+
pointer-events: auto;
|
|
35
|
+
cursor: default;
|
|
36
|
+
width: 100%;
|
|
37
|
+
display: flex;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
@supports (backdrop-filter: blur(12px)) {
|
|
41
|
+
.toast_QXnIWW {
|
|
42
|
+
-webkit-backdrop-filter: blur(12px) saturate(1.5);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
.viewport-list_QXnIWW .toast_QXnIWW {
|
|
47
|
+
transform-origin: 100% 100%;
|
|
48
|
+
opacity: 1;
|
|
49
|
+
transition: opacity .3s var(--easing-ease-out),
|
|
50
|
+
transform .3s var(--easing-spring);
|
|
51
|
+
transform: translateX(0);
|
|
52
|
+
|
|
53
|
+
@starting-style {
|
|
54
|
+
opacity: 0;
|
|
55
|
+
transform: translateX(calc(100% + var(--space-4)));
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
.viewport-list_QXnIWW .toast_QXnIWW[data-ending-style] {
|
|
60
|
+
opacity: 0;
|
|
61
|
+
transform: translateX(calc(100% + var(--space-4)));
|
|
62
|
+
transition: opacity .2s var(--easing-ease-in),
|
|
63
|
+
transform .2s var(--easing-ease-in);
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
.viewport-stacked_QXnIWW {
|
|
67
|
+
height: calc(var(--toast-frontmost-height, 64px) + 20px);
|
|
68
|
+
box-sizing: content-box;
|
|
69
|
+
clip-path: inset(0 0 0 0 round var(--radius-xl));
|
|
70
|
+
transition: clip-path .2s var(--easing-ease-out),
|
|
71
|
+
height .2s var(--easing-ease-out);
|
|
72
|
+
padding-top: 20px;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
.viewport-stacked_QXnIWW[data-expanded] {
|
|
76
|
+
clip-path: inset(-9999px 0 0 0 round var(--radius-xl));
|
|
77
|
+
height: calc(var(--toast-frontmost-height, 64px) + 20px);
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
.viewport-stacked_QXnIWW[data-expanded]:after {
|
|
81
|
+
content: "";
|
|
82
|
+
pointer-events: auto;
|
|
83
|
+
z-index: 0;
|
|
84
|
+
position: absolute;
|
|
85
|
+
inset: -9999px 0 0;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
.toast-stacked_QXnIWW {
|
|
89
|
+
z-index: calc(50 - var(--toast-index));
|
|
90
|
+
transform: translateY(calc(var(--toast-index) * -8px)) scale(calc(1 - var(--toast-index) * .04));
|
|
91
|
+
transform-origin: bottom;
|
|
92
|
+
opacity: calc(1 - var(--toast-index) * .15);
|
|
93
|
+
transition: transform .2s var(--easing-ease-out),
|
|
94
|
+
opacity .2s var(--easing-ease-out);
|
|
95
|
+
position: absolute;
|
|
96
|
+
bottom: 0;
|
|
97
|
+
left: 0;
|
|
98
|
+
right: 0;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
.viewport-stacked_QXnIWW[data-expanded] .toast-stacked_QXnIWW {
|
|
102
|
+
transform: translateY(calc((var(--toast-offset-y) + var(--toast-index) * 8px) * -1));
|
|
103
|
+
opacity: 1;
|
|
104
|
+
pointer-events: auto;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
.viewport-stacked_QXnIWW .toast-stacked_QXnIWW {
|
|
108
|
+
@starting-style {
|
|
109
|
+
opacity: 0;
|
|
110
|
+
transform: translateY(16px) scale(calc(1 - var(--toast-index) * .04));
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
.viewport-stacked_QXnIWW .toast-stacked_QXnIWW[data-ending-style] {
|
|
115
|
+
opacity: 0;
|
|
116
|
+
transform: translateX(calc(100% + var(--space-4)));
|
|
117
|
+
transition: opacity .15s var(--easing-ease-in),
|
|
118
|
+
transform .15s var(--easing-ease-in);
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
.toast-success_QXnIWW {
|
|
122
|
+
background-color: color-mix(in srgb, var(--color-success-solid) 6%, var(--color-bg-overlay));
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
.toast-error_QXnIWW {
|
|
126
|
+
background-color: color-mix(in srgb, var(--color-error-solid) 6%, var(--color-bg-overlay));
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
.toast-warning_QXnIWW {
|
|
130
|
+
background-color: color-mix(in srgb, var(--color-warning-solid) 6%, var(--color-bg-overlay));
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
.toast-info_QXnIWW {
|
|
134
|
+
background-color: color-mix(in srgb, var(--color-info-solid) 6%, var(--color-bg-overlay));
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
.icon_QXnIWW {
|
|
138
|
+
flex-shrink: 0;
|
|
139
|
+
width: 16px;
|
|
140
|
+
height: 16px;
|
|
141
|
+
margin-top: 1px;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
.icon-success_QXnIWW {
|
|
145
|
+
color: var(--color-success-solid);
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
.icon-warning_QXnIWW {
|
|
149
|
+
color: var(--color-warning-solid);
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
.icon-error_QXnIWW {
|
|
153
|
+
color: var(--color-error-solid);
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
.icon-info_QXnIWW {
|
|
157
|
+
color: var(--color-info-solid);
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
.content_QXnIWW {
|
|
161
|
+
gap: var(--space-0-5);
|
|
162
|
+
flex-direction: column;
|
|
163
|
+
flex: 1;
|
|
164
|
+
min-width: 0;
|
|
165
|
+
display: flex;
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
.title_QXnIWW {
|
|
169
|
+
font-family: var(--font-mono);
|
|
170
|
+
font-size: var(--font-size-sm);
|
|
171
|
+
font-weight: var(--font-weight-medium);
|
|
172
|
+
color: var(--color-text-primary);
|
|
173
|
+
line-height: var(--line-height-normal);
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
.description_QXnIWW {
|
|
177
|
+
font-family: var(--font-mono);
|
|
178
|
+
font-size: var(--font-size-xs);
|
|
179
|
+
color: var(--color-text-secondary);
|
|
180
|
+
line-height: var(--line-height-relaxed);
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
.close_QXnIWW {
|
|
184
|
+
border-radius: var(--radius-sm);
|
|
185
|
+
width: 20px;
|
|
186
|
+
height: 20px;
|
|
187
|
+
color: var(--color-text-tertiary);
|
|
188
|
+
cursor: pointer;
|
|
189
|
+
transition: background-color var(--duration-fast) var(--easing-standard),
|
|
190
|
+
color var(--duration-fast) var(--easing-standard);
|
|
191
|
+
background: none;
|
|
192
|
+
border: none;
|
|
193
|
+
outline: none;
|
|
194
|
+
flex-shrink: 0;
|
|
195
|
+
justify-content: center;
|
|
196
|
+
align-items: center;
|
|
197
|
+
margin-top: 1px;
|
|
198
|
+
display: flex;
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
.close_QXnIWW:hover {
|
|
202
|
+
background-color: var(--color-surface-hover);
|
|
203
|
+
color: var(--color-text-primary);
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
.close_QXnIWW:focus-visible {
|
|
207
|
+
box-shadow: var(--shadow-focus);
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
@layer utilities;
|