@ttt-productions/ui-core 0.11.15 → 0.11.17
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/dist/react/components/alert-dialog.js +2 -2
- package/dist/react/components/alert-dialog.js.map +1 -1
- package/dist/react/components/avatar.js +1 -1
- package/dist/react/components/avatar.js.map +1 -1
- package/dist/react/components/badge.d.ts +2 -3
- package/dist/react/components/badge.d.ts.map +1 -1
- package/dist/react/components/badge.js +2 -12
- package/dist/react/components/badge.js.map +1 -1
- package/dist/react/components/button.js +2 -2
- package/dist/react/components/button.js.map +1 -1
- package/dist/react/components/card.js +1 -1
- package/dist/react/components/card.js.map +1 -1
- package/dist/react/components/dialog.js +2 -2
- package/dist/react/components/dialog.js.map +1 -1
- package/dist/react/components/dropdown-menu.d.ts.map +1 -1
- package/dist/react/components/dropdown-menu.js +4 -3
- package/dist/react/components/dropdown-menu.js.map +1 -1
- package/dist/react/components/end-of-list-indicator.js +1 -1
- package/dist/react/components/end-of-list-indicator.js.map +1 -1
- package/dist/react/components/input.js +1 -1
- package/dist/react/components/input.js.map +1 -1
- package/dist/react/components/menubar.js +1 -1
- package/dist/react/components/menubar.js.map +1 -1
- package/dist/react/components/popover.js +1 -1
- package/dist/react/components/popover.js.map +1 -1
- package/dist/react/components/scroll-to-top-button.js +1 -1
- package/dist/react/components/scroll-to-top-button.js.map +1 -1
- package/dist/react/components/search-dropdown.js +1 -1
- package/dist/react/components/search-dropdown.js.map +1 -1
- package/dist/react/components/select.js +1 -1
- package/dist/react/components/select.js.map +1 -1
- package/dist/react/components/sheet.js +2 -2
- package/dist/react/components/sheet.js.map +1 -1
- package/dist/react/components/switch.js +1 -1
- package/dist/react/components/switch.js.map +1 -1
- package/dist/react/components/table.js +1 -1
- package/dist/react/components/table.js.map +1 -1
- package/dist/react/components/tabs.js +1 -1
- package/dist/react/components/tabs.js.map +1 -1
- package/dist/react/components/textarea.js +1 -1
- package/dist/react/components/textarea.js.map +1 -1
- package/dist/react/components/toast.js +5 -5
- package/dist/react/components/toast.js.map +1 -1
- package/dist/react/components/tooltip.js +1 -1
- package/dist/react/components/tooltip.js.map +1 -1
- package/package.json +8 -4
- package/src/react/components/alert-dialog.tsx +2 -2
- package/src/react/components/avatar.tsx +1 -1
- package/src/react/components/badge.tsx +2 -20
- package/src/react/components/button.tsx +2 -2
- package/src/react/components/card.tsx +1 -1
- package/src/react/components/dialog.tsx +2 -2
- package/src/react/components/dropdown-menu.tsx +6 -3
- package/src/react/components/end-of-list-indicator.tsx +1 -1
- package/src/react/components/input.tsx +1 -1
- package/src/react/components/menubar.tsx +1 -1
- package/src/react/components/popover.tsx +1 -1
- package/src/react/components/scroll-to-top-button.tsx +1 -1
- package/src/react/components/search-dropdown.tsx +1 -1
- package/src/react/components/select.tsx +1 -1
- package/src/react/components/sheet.tsx +2 -2
- package/src/react/components/switch.tsx +1 -1
- package/src/react/components/table.tsx +1 -1
- package/src/react/components/tabs.tsx +2 -2
- package/src/react/components/textarea.tsx +1 -1
- package/src/react/components/toast.tsx +5 -5
- package/src/react/components/tooltip.tsx +1 -1
|
@@ -15,9 +15,9 @@ const buttonVariants = cva(
|
|
|
15
15
|
default:
|
|
16
16
|
"button-default bg-primary text-primary-foreground hover:bg-primary/90 border-2 border-[hsl(var(--brand-primary-deep))]",
|
|
17
17
|
destructive:
|
|
18
|
-
"bg-destructive text-destructive-foreground hover:bg-destructive/90 border-2 border-[hsl(var(--
|
|
18
|
+
"bg-destructive text-destructive-foreground hover:bg-destructive/90 border-2 border-[hsl(var(--destructive-border))]",
|
|
19
19
|
success:
|
|
20
|
-
"bg-
|
|
20
|
+
"bg-[color:var(--button-success)] text-[hsl(var(--success-foreground))] hover:bg-[color:var(--button-success)]/90 border-2 border-[hsl(var(--status-success-border))]",
|
|
21
21
|
outline:
|
|
22
22
|
"border-2 border-border bg-background hover:bg-accent hover:text-accent-foreground text-foreground",
|
|
23
23
|
secondary:
|
|
@@ -7,7 +7,7 @@ const Card = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElemen
|
|
|
7
7
|
({ className, ...props }, ref) => (
|
|
8
8
|
<div
|
|
9
9
|
ref={ref}
|
|
10
|
-
className={cn("rounded-lg border-2 card-border bg-card text-card-foreground
|
|
10
|
+
className={cn("rounded-lg border-2 card-border bg-card text-card-foreground", className)}
|
|
11
11
|
{...props}
|
|
12
12
|
/>
|
|
13
13
|
)
|
|
@@ -18,7 +18,7 @@ const DialogOverlay = React.forwardRef<
|
|
|
18
18
|
<DialogPrimitive.Overlay
|
|
19
19
|
ref={ref}
|
|
20
20
|
className={cn(
|
|
21
|
-
"fixed inset-0 z-50 bg-
|
|
21
|
+
"fixed inset-0 z-50 bg-[color:var(--scrim)] data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
|
|
22
22
|
className
|
|
23
23
|
)}
|
|
24
24
|
{...props}
|
|
@@ -35,7 +35,7 @@ const DialogContent = React.forwardRef<
|
|
|
35
35
|
<DialogPrimitive.Content
|
|
36
36
|
ref={ref}
|
|
37
37
|
className={cn(
|
|
38
|
-
"fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-card p-6
|
|
38
|
+
"fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-card p-6 elevation-raised duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",
|
|
39
39
|
"max-h-[90vh] overflow-y-auto [&>*]:min-w-0",
|
|
40
40
|
className
|
|
41
41
|
)}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import * as React from "react"
|
|
4
4
|
import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu"
|
|
5
|
+
import { Slottable } from "@radix-ui/react-slot"
|
|
5
6
|
import { Check, ChevronRight, Circle } from "lucide-react"
|
|
6
7
|
|
|
7
8
|
import { cn } from "../../lib/utils.js"
|
|
@@ -42,7 +43,7 @@ const DropdownMenuSubContent = React.forwardRef<
|
|
|
42
43
|
<DropdownMenuPrimitive.SubContent
|
|
43
44
|
ref={ref}
|
|
44
45
|
className={cn(
|
|
45
|
-
"z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground
|
|
46
|
+
"z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground elevation-raised data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
|
|
46
47
|
className
|
|
47
48
|
)}
|
|
48
49
|
{...props}
|
|
@@ -59,7 +60,7 @@ const DropdownMenuContent = React.forwardRef<
|
|
|
59
60
|
ref={ref}
|
|
60
61
|
sideOffset={sideOffset}
|
|
61
62
|
className={cn(
|
|
62
|
-
"z-50 min-w-[8rem] overflow-hidden rounded-md border !bg-card p-1 text-popover-foreground
|
|
63
|
+
"z-50 min-w-[8rem] overflow-hidden rounded-md border !bg-card p-1 text-popover-foreground elevation-popover data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
|
|
63
64
|
className
|
|
64
65
|
)}
|
|
65
66
|
{...props}
|
|
@@ -93,8 +94,10 @@ const DropdownMenuItem = React.forwardRef<
|
|
|
93
94
|
{...(pending ? { "aria-busy": true, "data-pending": "" } : {})}
|
|
94
95
|
disabled={disabled || pending || undefined}
|
|
95
96
|
>
|
|
97
|
+
{/* Direct siblings, never a fragment: under `asChild` Radix Slot finds the Slottable
|
|
98
|
+
among its direct children and renders the icon/spinner inside the child element. */}
|
|
96
99
|
{pending ? <Spinner size="xs" /> : icon}
|
|
97
|
-
{children}
|
|
100
|
+
<Slottable>{children}</Slottable>
|
|
98
101
|
</DropdownMenuPrimitive.Item>
|
|
99
102
|
))
|
|
100
103
|
DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName
|
|
@@ -20,7 +20,7 @@ export function EndOfListIndicator({
|
|
|
20
20
|
className,
|
|
21
21
|
)}
|
|
22
22
|
>
|
|
23
|
-
{icon ?? <CheckCircle2 className="h-6 w-6 text-
|
|
23
|
+
{icon ?? <CheckCircle2 className="h-6 w-6 text-[color:var(--success-icon)]" />}
|
|
24
24
|
<p className="text-sm">{message}</p>
|
|
25
25
|
</div>
|
|
26
26
|
);
|
|
@@ -9,7 +9,7 @@ const Input = React.forwardRef<HTMLInputElement, React.ComponentProps<"input">>(
|
|
|
9
9
|
<input
|
|
10
10
|
type={type}
|
|
11
11
|
className={cn(
|
|
12
|
-
"flex h-10 w-full rounded-md border-2 border-
|
|
12
|
+
"flex h-10 w-full rounded-md border-2 border-input bg-background px-3 py-2 text-base ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",
|
|
13
13
|
className
|
|
14
14
|
)}
|
|
15
15
|
ref={ref}
|
|
@@ -98,7 +98,7 @@ const MenubarContent = React.forwardRef<
|
|
|
98
98
|
alignOffset={alignOffset}
|
|
99
99
|
sideOffset={sideOffset}
|
|
100
100
|
className={cn(
|
|
101
|
-
"z-50 min-w-[12rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground
|
|
101
|
+
"z-50 min-w-[12rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground elevation-popover data-[state=open]:animate-in data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
|
|
102
102
|
className
|
|
103
103
|
)}
|
|
104
104
|
{...props}
|
|
@@ -19,7 +19,7 @@ const PopoverContent = React.forwardRef<
|
|
|
19
19
|
align={align}
|
|
20
20
|
sideOffset={sideOffset}
|
|
21
21
|
className={cn(
|
|
22
|
-
"z-50 w-72 rounded-md border !bg-card p-4 text-popover-foreground
|
|
22
|
+
"z-50 w-72 rounded-md border !bg-card p-4 text-popover-foreground elevation-popover outline-hidden data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
|
|
23
23
|
className
|
|
24
24
|
)}
|
|
25
25
|
{...props}
|
|
@@ -74,7 +74,7 @@ export function ScrollToTopButton({
|
|
|
74
74
|
onClick={onClick}
|
|
75
75
|
aria-label={ariaLabel}
|
|
76
76
|
className={cn(
|
|
77
|
-
"fixed bottom-24 left-1/2 -translate-x-1/2 z-50 rounded-full
|
|
77
|
+
"fixed bottom-24 left-1/2 -translate-x-1/2 z-50 rounded-full elevation-raised transition-opacity duration-300",
|
|
78
78
|
isVisible ? "opacity-100" : "opacity-0 pointer-events-none",
|
|
79
79
|
className,
|
|
80
80
|
)}
|
|
@@ -189,7 +189,7 @@ export function SearchDropdown<T>({
|
|
|
189
189
|
</div>
|
|
190
190
|
|
|
191
191
|
{showDropdown && (
|
|
192
|
-
<div className="absolute z-50 w-full mt-1 bg-popover border rounded-md
|
|
192
|
+
<div className="absolute z-50 w-full mt-1 bg-popover border rounded-md elevation-raised max-h-60 overflow-auto">
|
|
193
193
|
{error ? (
|
|
194
194
|
<div className="px-3 py-2 text-sm text-destructive">
|
|
195
195
|
{error}
|
|
@@ -80,7 +80,7 @@ const SelectContent = React.forwardRef<
|
|
|
80
80
|
<SelectPrimitive.Content
|
|
81
81
|
ref={ref}
|
|
82
82
|
className={cn(
|
|
83
|
-
"relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground
|
|
83
|
+
"relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground elevation-popover data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
|
|
84
84
|
position === "popper" &&
|
|
85
85
|
"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",
|
|
86
86
|
className
|
|
@@ -21,7 +21,7 @@ const SheetOverlay = React.forwardRef<
|
|
|
21
21
|
>(({ className, ...props }, ref) => (
|
|
22
22
|
<SheetPrimitive.Overlay
|
|
23
23
|
className={cn(
|
|
24
|
-
"fixed inset-0 z-50 bg-
|
|
24
|
+
"fixed inset-0 z-50 bg-[color:var(--scrim)] data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
|
|
25
25
|
className
|
|
26
26
|
)}
|
|
27
27
|
{...props}
|
|
@@ -31,7 +31,7 @@ const SheetOverlay = React.forwardRef<
|
|
|
31
31
|
SheetOverlay.displayName = SheetPrimitive.Overlay.displayName
|
|
32
32
|
|
|
33
33
|
const sheetVariants = cva(
|
|
34
|
-
"fixed z-50 gap-4 bg-background p-6
|
|
34
|
+
"fixed z-50 gap-4 bg-background p-6 elevation-raised transition ease-in-out data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:duration-300 data-[state=open]:duration-500",
|
|
35
35
|
{
|
|
36
36
|
variants: {
|
|
37
37
|
side: {
|
|
@@ -29,7 +29,7 @@ const Switch = React.forwardRef<
|
|
|
29
29
|
>
|
|
30
30
|
<SwitchPrimitives.Thumb
|
|
31
31
|
className={cn(
|
|
32
|
-
"pointer-events-none flex h-5 w-5 items-center justify-center rounded-full bg-background
|
|
32
|
+
"pointer-events-none flex h-5 w-5 items-center justify-center rounded-full bg-background elevation-raised transition-transform data-[state=checked]:translate-x-5 data-[state=unchecked]:translate-x-0"
|
|
33
33
|
)}
|
|
34
34
|
>
|
|
35
35
|
{pending ? <Spinner size="xs" /> : null}
|
|
@@ -59,7 +59,7 @@ const TableRow = React.forwardRef<
|
|
|
59
59
|
<tr
|
|
60
60
|
ref={ref}
|
|
61
61
|
className={cn(
|
|
62
|
-
"border-b transition-colors hover:bg-
|
|
62
|
+
"border-b transition-colors hover:bg-[color:var(--table-row-hover)] data-[state=selected]:bg-muted",
|
|
63
63
|
className
|
|
64
64
|
)}
|
|
65
65
|
{...props}
|
|
@@ -29,8 +29,8 @@ const TabsTrigger = React.forwardRef<
|
|
|
29
29
|
<TabsPrimitive.Trigger
|
|
30
30
|
ref={ref}
|
|
31
31
|
className={cn(
|
|
32
|
-
"inline-flex items-center justify-center whitespace-nowrap rounded-xs px-3 py-1.5 text-sm !font-bold ring-offset-background transition-all focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",
|
|
33
|
-
"data-[state=active]:bg-primary data-[state=active]:text-primary-foreground data-[state=active]:
|
|
32
|
+
"tabs-trigger inline-flex items-center justify-center whitespace-nowrap rounded-xs px-3 py-1.5 text-sm !font-bold ring-offset-background transition-all focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",
|
|
33
|
+
"data-[state=active]:bg-primary data-[state=active]:text-primary-foreground data-[state=active]:border-2 data-[state=active]:border-[hsl(var(--brand-primary-deep))]",
|
|
34
34
|
"data-[state=inactive]:border data-[state=inactive]:border-border data-[state=inactive]:bg-background data-[state=inactive]:hover:bg-accent data-[state=inactive]:hover:text-accent-foreground",
|
|
35
35
|
className
|
|
36
36
|
)}
|
|
@@ -8,7 +8,7 @@ const Textarea = React.forwardRef<HTMLTextAreaElement, React.ComponentProps<"tex
|
|
|
8
8
|
return (
|
|
9
9
|
<textarea
|
|
10
10
|
className={cn(
|
|
11
|
-
"flex min-h-[80px] w-full rounded-md border-2 border-
|
|
11
|
+
"flex min-h-[80px] w-full rounded-md border-2 border-input bg-background px-3 py-2 text-base ring-offset-background placeholder:text-muted-foreground focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",
|
|
12
12
|
className
|
|
13
13
|
)}
|
|
14
14
|
ref={ref}
|
|
@@ -25,7 +25,7 @@ function ToastKeyframes() {
|
|
|
25
25
|
const toastVariants = cva(
|
|
26
26
|
cn(
|
|
27
27
|
// base
|
|
28
|
-
"pointer-events-auto relative flex w-full items-start justify-between gap-2 overflow-hidden rounded-md border bg-background p-4 text-foreground
|
|
28
|
+
"pointer-events-auto relative flex w-full items-start justify-between gap-2 overflow-hidden rounded-md border bg-background p-4 text-foreground elevation-raised transition-all",
|
|
29
29
|
// radix state/animation
|
|
30
30
|
"data-[state=open]:animate-in data-[state=closed]:animate-out",
|
|
31
31
|
"data-[state=closed]:fade-out-80 data-[state=open]:fade-in-80",
|
|
@@ -38,10 +38,10 @@ const toastVariants = cva(
|
|
|
38
38
|
variants: {
|
|
39
39
|
variant: {
|
|
40
40
|
default: "",
|
|
41
|
-
destructive: "border-
|
|
42
|
-
success: "border-
|
|
43
|
-
warning: "border-
|
|
44
|
-
error: "border-
|
|
41
|
+
destructive: "border-[color:var(--toast-destructive-border)] bg-[color:var(--toast-destructive)] text-[color:var(--toast-destructive-foreground)]",
|
|
42
|
+
success: "border-[color:var(--toast-success-border)] bg-[color:var(--toast-success)] text-[color:var(--toast-success-foreground)]",
|
|
43
|
+
warning: "border-[color:var(--toast-warning-border)] bg-[color:var(--toast-warning)] text-[color:var(--toast-warning-foreground)]",
|
|
44
|
+
error: "border-[color:var(--toast-destructive-border)] bg-[color:var(--toast-destructive)] text-[color:var(--toast-destructive-foreground)]",
|
|
45
45
|
},
|
|
46
46
|
},
|
|
47
47
|
defaultVariants: {
|
|
@@ -17,7 +17,7 @@ const TooltipContent = React.forwardRef<
|
|
|
17
17
|
ref={ref}
|
|
18
18
|
sideOffset={sideOffset}
|
|
19
19
|
className={cn(
|
|
20
|
-
"z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground
|
|
20
|
+
"z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground elevation-popover animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
|
|
21
21
|
className
|
|
22
22
|
)}
|
|
23
23
|
{...props}
|