@accounter/client 0.0.7-alpha-20250821153628-4d6eb29b129830a7fde5b659fd301c9119a8ecde → 0.0.7-alpha-20250821153812-03cbf41f6d049dc4fec6c6e7c47a0f17144b7d6a
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/CHANGELOG.md +1 -1
- package/dist/assets/index-BERPxH5K.css +1 -0
- package/dist/assets/{index-CVDLjegj.js → index-C3Jzs8px.js} +287 -287
- package/dist/assets/{index.es-DtgSrhIW.js → index.es-CP2tkYw-.js} +1 -1
- package/dist/index.html +2 -2
- package/package.json +1 -1
- package/src/components/common/inputs/index.ts +1 -1
- package/src/components/{ui → common/inputs}/select-with-search.tsx +4 -13
- package/src/components/layout/dashboard-layout.tsx +1 -1
- package/src/components/layout/page-layout.tsx +2 -2
- package/src/components/transactions-table/cells/counterparty.tsx +1 -2
- package/src/components/transactions-table/cells-legacy/counterparty.tsx +1 -2
- package/src/components/ui/accordion.tsx +1 -1
- package/src/components/ui/avatar.tsx +1 -1
- package/src/components/ui/badge.tsx +2 -2
- package/src/components/ui/button.tsx +5 -5
- package/src/components/ui/calendar.tsx +6 -3
- package/src/components/ui/card.tsx +1 -1
- package/src/components/ui/chart.tsx +3 -1
- package/src/components/ui/checkbox.tsx +2 -2
- package/src/components/ui/collapsible.tsx +19 -0
- package/src/components/ui/command.tsx +18 -3
- package/src/components/ui/dialog.tsx +15 -7
- package/src/components/ui/drawer.tsx +7 -2
- package/src/components/ui/dropdown-menu.tsx +4 -4
- package/src/components/ui/form.tsx +4 -4
- package/src/components/ui/input.tsx +2 -2
- package/src/components/ui/label.tsx +3 -1
- package/src/components/ui/popover.tsx +2 -2
- package/src/components/ui/scroll-area.tsx +4 -2
- package/src/components/ui/select.tsx +9 -5
- package/src/components/ui/separator.tsx +2 -2
- package/src/components/ui/sheet.tsx +4 -2
- package/src/components/ui/sonner.tsx +1 -1
- package/src/components/ui/switch.tsx +5 -3
- package/src/components/ui/table.tsx +2 -2
- package/src/components/ui/tabs.tsx +5 -3
- package/src/components/ui/textarea.tsx +1 -1
- package/src/components/ui/toggle.tsx +1 -1
- package/src/components/ui/tooltip.tsx +5 -3
- package/dist/assets/index-waSKKwJo.css +0 -1
- package/src/components/common/inputs/select-input.tsx +0 -39
- package/src/components/ui/collapsible.ts +0 -9
- package/src/components/ui/heading.tsx +0 -15
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { XIcon } from 'lucide-react';
|
|
3
|
+
import { cn } from '@/lib/utils.js';
|
|
3
4
|
import * as DialogPrimitive from '@radix-ui/react-dialog';
|
|
4
|
-
import { cn } from '../../lib/utils.js';
|
|
5
5
|
|
|
6
6
|
function Dialog({ ...props }: React.ComponentProps<typeof DialogPrimitive.Root>) {
|
|
7
7
|
return <DialogPrimitive.Root data-slot="dialog" {...props} />;
|
|
@@ -27,7 +27,7 @@ function DialogOverlay({
|
|
|
27
27
|
<DialogPrimitive.Overlay
|
|
28
28
|
data-slot="dialog-overlay"
|
|
29
29
|
className={cn(
|
|
30
|
-
'data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-1001 bg-black/
|
|
30
|
+
'data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-1001 bg-black/50',
|
|
31
31
|
className,
|
|
32
32
|
)}
|
|
33
33
|
{...props}
|
|
@@ -38,8 +38,11 @@ function DialogOverlay({
|
|
|
38
38
|
function DialogContent({
|
|
39
39
|
className,
|
|
40
40
|
children,
|
|
41
|
+
showCloseButton = true,
|
|
41
42
|
...props
|
|
42
|
-
}: React.ComponentProps<typeof DialogPrimitive.Content>
|
|
43
|
+
}: React.ComponentProps<typeof DialogPrimitive.Content> & {
|
|
44
|
+
showCloseButton?: boolean;
|
|
45
|
+
}) {
|
|
43
46
|
return (
|
|
44
47
|
<DialogPortal data-slot="dialog-portal">
|
|
45
48
|
<DialogOverlay />
|
|
@@ -52,10 +55,15 @@ function DialogContent({
|
|
|
52
55
|
{...props}
|
|
53
56
|
>
|
|
54
57
|
{children}
|
|
55
|
-
|
|
56
|
-
<
|
|
57
|
-
|
|
58
|
-
|
|
58
|
+
{showCloseButton && (
|
|
59
|
+
<DialogPrimitive.Close
|
|
60
|
+
data-slot="dialog-close"
|
|
61
|
+
className="ring-offset-white focus:ring-gray-950 data-[state=open]:bg-gray-100 data-[state=open]:text-gray-500 absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 dark:ring-offset-gray-950 dark:focus:ring-gray-300 dark:data-[state=open]:bg-gray-800 dark:data-[state=open]:text-gray-400"
|
|
62
|
+
>
|
|
63
|
+
<XIcon />
|
|
64
|
+
<span className="sr-only">Close</span>
|
|
65
|
+
</DialogPrimitive.Close>
|
|
66
|
+
)}
|
|
59
67
|
</DialogPrimitive.Content>
|
|
60
68
|
</DialogPortal>
|
|
61
69
|
);
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
1
3
|
import React from 'react';
|
|
2
4
|
import { Drawer as DrawerPrimitive } from 'vaul';
|
|
3
|
-
import { cn } from '
|
|
5
|
+
import { cn } from '@/lib/utils.js';
|
|
4
6
|
|
|
5
7
|
function Drawer({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Root>) {
|
|
6
8
|
return <DrawerPrimitive.Root data-slot="drawer" {...props} />;
|
|
@@ -65,7 +67,10 @@ function DrawerHeader({ className, ...props }: React.ComponentProps<'div'>) {
|
|
|
65
67
|
return (
|
|
66
68
|
<div
|
|
67
69
|
data-slot="drawer-header"
|
|
68
|
-
className={cn(
|
|
70
|
+
className={cn(
|
|
71
|
+
'flex flex-col gap-0.5 p-4 group-data-[vaul-drawer-direction=bottom]/drawer-content:text-center group-data-[vaul-drawer-direction=top]/drawer-content:text-center md:gap-1.5 md:text-left',
|
|
72
|
+
className,
|
|
73
|
+
)}
|
|
69
74
|
{...props}
|
|
70
75
|
/>
|
|
71
76
|
);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { CheckIcon, ChevronRightIcon, CircleIcon } from 'lucide-react';
|
|
3
|
+
import { cn } from '@/lib/utils.js';
|
|
3
4
|
import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
|
|
4
|
-
import { cn } from '../../lib/utils.js';
|
|
5
5
|
|
|
6
6
|
function DropdownMenu({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Root>) {
|
|
7
7
|
return <DropdownMenuPrimitive.Root data-slot="dropdown-menu" {...props} />;
|
|
@@ -30,7 +30,7 @@ function DropdownMenuContent({
|
|
|
30
30
|
data-slot="dropdown-menu-content"
|
|
31
31
|
sideOffset={sideOffset}
|
|
32
32
|
className={cn(
|
|
33
|
-
'bg-white text-gray-950 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 z-1001 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] overflow-x-hidden overflow-y-auto rounded-md border border-gray-200 p-1 shadow-md dark:bg-gray-950 dark:text-gray-50 dark:border-gray-800',
|
|
33
|
+
'bg-white text-gray-950 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 z-1001 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border border-gray-200 p-1 shadow-md dark:bg-gray-950 dark:text-gray-50 dark:border-gray-800',
|
|
34
34
|
className,
|
|
35
35
|
)}
|
|
36
36
|
{...props}
|
|
@@ -58,7 +58,7 @@ function DropdownMenuItem({
|
|
|
58
58
|
data-inset={inset}
|
|
59
59
|
data-variant={variant}
|
|
60
60
|
className={cn(
|
|
61
|
-
"focus:bg-gray-100 focus:text-gray-900 data-[variant=destructive]:text-
|
|
61
|
+
"focus:bg-gray-100 focus:text-gray-900 data-[variant=destructive]:text-red-500 data-[variant=destructive]:focus:bg-red-500/10 dark:data-[variant=destructive]:focus:bg-red-500/20 data-[variant=destructive]:focus:text-red-500 data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-gray-500 relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 dark:focus:bg-gray-800 dark:focus:text-gray-50 dark:data-[variant=destructive]:text-red-900 dark:data-[variant=destructive]:focus:bg-red-900/10 dark:dark:data-[variant=destructive]:focus:bg-red-900/20 dark:data-[variant=destructive]:focus:text-red-900 dark:[&_svg:not([class*='text-'])]:text-gray-400",
|
|
62
62
|
className,
|
|
63
63
|
)}
|
|
64
64
|
{...props}
|
|
@@ -198,7 +198,7 @@ function DropdownMenuSubContent({
|
|
|
198
198
|
<DropdownMenuPrimitive.SubContent
|
|
199
199
|
data-slot="dropdown-menu-sub-content"
|
|
200
200
|
className={cn(
|
|
201
|
-
'bg-white text-gray-950 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 z-1001 min-w-[8rem] overflow-hidden rounded-md border border-gray-200 p-1 shadow-lg dark:bg-gray-950 dark:text-gray-50 dark:border-gray-800',
|
|
201
|
+
'bg-white text-gray-950 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 z-1001 min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-md border border-gray-200 p-1 shadow-lg dark:bg-gray-950 dark:text-gray-50 dark:border-gray-800',
|
|
202
202
|
className,
|
|
203
203
|
)}
|
|
204
204
|
{...props}
|
|
@@ -8,10 +8,10 @@ import {
|
|
|
8
8
|
type FieldPath,
|
|
9
9
|
type FieldValues,
|
|
10
10
|
} from 'react-hook-form';
|
|
11
|
+
import { Label } from '@/components/ui/label.js';
|
|
12
|
+
import { cn } from '@/lib/utils.js';
|
|
11
13
|
import * as LabelPrimitive from '@radix-ui/react-label';
|
|
12
14
|
import { Slot } from '@radix-ui/react-slot';
|
|
13
|
-
import { cn } from '../../lib/utils.js';
|
|
14
|
-
import { Label } from './label.js';
|
|
15
15
|
|
|
16
16
|
const Form = FormProvider;
|
|
17
17
|
|
|
@@ -84,7 +84,7 @@ function FormLabel({ className, ...props }: React.ComponentProps<typeof LabelPri
|
|
|
84
84
|
data-slot="form-label"
|
|
85
85
|
data-error={!!error}
|
|
86
86
|
className={cn(
|
|
87
|
-
'data-[error=true]:text-
|
|
87
|
+
'data-[error=true]:text-red-500 dark:data-[error=true]:text-red-900',
|
|
88
88
|
className,
|
|
89
89
|
)}
|
|
90
90
|
htmlFor={formItemId}
|
|
@@ -132,7 +132,7 @@ function FormMessage({ className, ...props }: React.ComponentProps<'p'>) {
|
|
|
132
132
|
<p
|
|
133
133
|
data-slot="form-message"
|
|
134
134
|
id={formMessageId}
|
|
135
|
-
className={cn('text-red-500 text-sm dark:text-red-
|
|
135
|
+
className={cn('text-red-500 text-sm dark:text-red-900', className)}
|
|
136
136
|
{...props}
|
|
137
137
|
>
|
|
138
138
|
{body}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { cn } from '
|
|
2
|
+
import { cn } from '@/lib/utils.js';
|
|
3
3
|
|
|
4
4
|
function Input({ className, type, ...props }: React.ComponentProps<'input'>) {
|
|
5
5
|
return (
|
|
@@ -7,7 +7,7 @@ function Input({ className, type, ...props }: React.ComponentProps<'input'>) {
|
|
|
7
7
|
type={type}
|
|
8
8
|
data-slot="input"
|
|
9
9
|
className={cn(
|
|
10
|
-
'
|
|
10
|
+
'file:text-gray-950 placeholder:text-gray-500 selection:bg-gray-900 selection:text-gray-50 dark:bg-gray-200/30 border-gray-200 flex h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm dark:file:text-gray-50 dark:placeholder:text-gray-400 dark:selection:bg-gray-50 dark:selection:text-gray-900 dark:dark:bg-gray-800/30 dark:border-gray-800',
|
|
11
11
|
'focus-visible:border-gray-950 focus-visible:ring-gray-950/50 focus-visible:ring-[3px] dark:focus-visible:border-gray-300 dark:focus-visible:ring-gray-300/50',
|
|
12
12
|
'aria-invalid:ring-red-500/20 dark:aria-invalid:ring-red-500/40 aria-invalid:border-red-500 dark:aria-invalid:ring-red-900/20 dark:dark:aria-invalid:ring-red-900/40 dark:aria-invalid:border-red-900',
|
|
13
13
|
className,
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
1
3
|
import React from 'react';
|
|
4
|
+
import { cn } from '@/lib/utils.js';
|
|
2
5
|
import * as LabelPrimitive from '@radix-ui/react-label';
|
|
3
|
-
import { cn } from '../../lib/utils.js';
|
|
4
6
|
|
|
5
7
|
function Label({ className, ...props }: React.ComponentProps<typeof LabelPrimitive.Root>) {
|
|
6
8
|
return (
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
import { cn } from '@/lib/utils.js';
|
|
2
3
|
import * as PopoverPrimitive from '@radix-ui/react-popover';
|
|
3
|
-
import { cn } from '../../lib/utils.js';
|
|
4
4
|
|
|
5
5
|
function Popover({ ...props }: React.ComponentProps<typeof PopoverPrimitive.Root>) {
|
|
6
6
|
return <PopoverPrimitive.Root data-slot="popover" {...props} />;
|
|
@@ -23,7 +23,7 @@ function PopoverContent({
|
|
|
23
23
|
align={align}
|
|
24
24
|
sideOffset={sideOffset}
|
|
25
25
|
className={cn(
|
|
26
|
-
'bg-white text-gray-950 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 z-1001 w-72 rounded-md border border-gray-200 p-4 shadow-md outline-hidden dark:bg-gray-950 dark:text-gray-50 dark:border-gray-800',
|
|
26
|
+
'bg-white text-gray-950 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 z-1001 w-72 origin-(--radix-popover-content-transform-origin) rounded-md border border-gray-200 p-4 shadow-md outline-hidden dark:bg-gray-950 dark:text-gray-50 dark:border-gray-800',
|
|
27
27
|
className,
|
|
28
28
|
)}
|
|
29
29
|
{...props}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
1
3
|
import React from 'react';
|
|
4
|
+
import { cn } from '@/lib/utils.js';
|
|
2
5
|
import * as ScrollAreaPrimitive from '@radix-ui/react-scroll-area';
|
|
3
|
-
import { cn } from '../../lib/utils.js';
|
|
4
6
|
|
|
5
7
|
function ScrollArea({
|
|
6
8
|
className,
|
|
@@ -15,7 +17,7 @@ function ScrollArea({
|
|
|
15
17
|
>
|
|
16
18
|
<ScrollAreaPrimitive.Viewport
|
|
17
19
|
data-slot="scroll-area-viewport"
|
|
18
|
-
className="
|
|
20
|
+
className="focus-visible:ring-gray-950/50 size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:outline-1 dark:focus-visible:ring-gray-300/50"
|
|
19
21
|
>
|
|
20
22
|
{children}
|
|
21
23
|
</ScrollAreaPrimitive.Viewport>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { CheckIcon, ChevronDownIcon, ChevronUpIcon } from 'lucide-react';
|
|
3
|
+
import { cn } from '@/lib/utils.js';
|
|
3
4
|
import * as SelectPrimitive from '@radix-ui/react-select';
|
|
4
|
-
import { cn } from '../../lib/utils.js';
|
|
5
5
|
|
|
6
6
|
function Select({ ...props }: React.ComponentProps<typeof SelectPrimitive.Root>) {
|
|
7
7
|
return <SelectPrimitive.Root data-slot="select" {...props} />;
|
|
@@ -17,14 +17,18 @@ function SelectValue({ ...props }: React.ComponentProps<typeof SelectPrimitive.V
|
|
|
17
17
|
|
|
18
18
|
function SelectTrigger({
|
|
19
19
|
className,
|
|
20
|
+
size = 'default',
|
|
20
21
|
children,
|
|
21
22
|
...props
|
|
22
|
-
}: React.ComponentProps<typeof SelectPrimitive.Trigger>
|
|
23
|
+
}: React.ComponentProps<typeof SelectPrimitive.Trigger> & {
|
|
24
|
+
size?: 'sm' | 'default';
|
|
25
|
+
}) {
|
|
23
26
|
return (
|
|
24
27
|
<SelectPrimitive.Trigger
|
|
25
28
|
data-slot="select-trigger"
|
|
29
|
+
data-size={size}
|
|
26
30
|
className={cn(
|
|
27
|
-
"border-gray-200 data-[placeholder]:text-gray-500 [&_svg:not([class*='text-'])]:text-gray-500 focus-visible:border-gray-950 focus-visible:ring-gray-950/50 aria-invalid:ring-red-500/20 dark:aria-invalid:ring-red-500/40 aria-invalid:border-red-500
|
|
31
|
+
"border-gray-200 data-[placeholder]:text-gray-500 [&_svg:not([class*='text-'])]:text-gray-500 focus-visible:border-gray-950 focus-visible:ring-gray-950/50 aria-invalid:ring-red-500/20 dark:aria-invalid:ring-red-500/40 aria-invalid:border-red-500 dark:bg-gray-200/30 dark:hover:bg-gray-200/50 flex w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 dark:border-gray-800 dark:data-[placeholder]:text-gray-400 dark:[&_svg:not([class*='text-'])]:text-gray-400 dark:focus-visible:border-gray-300 dark:focus-visible:ring-gray-300/50 dark:aria-invalid:ring-red-900/20 dark:dark:aria-invalid:ring-red-900/40 dark:aria-invalid:border-red-900 dark:dark:bg-gray-800/30 dark:dark:hover:bg-gray-800/50",
|
|
28
32
|
className,
|
|
29
33
|
)}
|
|
30
34
|
{...props}
|
|
@@ -48,7 +52,7 @@ function SelectContent({
|
|
|
48
52
|
<SelectPrimitive.Content
|
|
49
53
|
data-slot="select-content"
|
|
50
54
|
className={cn(
|
|
51
|
-
'bg-white text-gray-950 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 relative z-
|
|
55
|
+
'bg-white text-gray-950 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 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border border-gray-200 shadow-md dark:bg-gray-950 dark:text-gray-50 dark:border-gray-800',
|
|
52
56
|
position === 'popper' &&
|
|
53
57
|
'data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1',
|
|
54
58
|
className,
|
|
@@ -76,7 +80,7 @@ function SelectLabel({ className, ...props }: React.ComponentProps<typeof Select
|
|
|
76
80
|
return (
|
|
77
81
|
<SelectPrimitive.Label
|
|
78
82
|
data-slot="select-label"
|
|
79
|
-
className={cn('px-2 py-1.5 text-
|
|
83
|
+
className={cn('text-gray-500 px-2 py-1.5 text-xs dark:text-gray-400', className)}
|
|
80
84
|
{...props}
|
|
81
85
|
/>
|
|
82
86
|
);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
import { cn } from '@/lib/utils.js';
|
|
2
3
|
import * as SeparatorPrimitive from '@radix-ui/react-separator';
|
|
3
|
-
import { cn } from '../../lib/utils.js';
|
|
4
4
|
|
|
5
5
|
function Separator({
|
|
6
6
|
className,
|
|
@@ -10,7 +10,7 @@ function Separator({
|
|
|
10
10
|
}: React.ComponentProps<typeof SeparatorPrimitive.Root>) {
|
|
11
11
|
return (
|
|
12
12
|
<SeparatorPrimitive.Root
|
|
13
|
-
data-slot="separator
|
|
13
|
+
data-slot="separator"
|
|
14
14
|
decorative={decorative}
|
|
15
15
|
orientation={orientation}
|
|
16
16
|
className={cn(
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
1
3
|
import React from 'react';
|
|
2
4
|
import { XIcon } from 'lucide-react';
|
|
5
|
+
import { cn } from '@/lib/utils.js';
|
|
3
6
|
import * as SheetPrimitive from '@radix-ui/react-dialog';
|
|
4
|
-
import { cn } from '../../lib/utils.js';
|
|
5
7
|
|
|
6
8
|
function Sheet({ ...props }: React.ComponentProps<typeof SheetPrimitive.Root>) {
|
|
7
9
|
return <SheetPrimitive.Root data-slot="sheet" {...props} />;
|
|
@@ -27,7 +29,7 @@ function SheetOverlay({
|
|
|
27
29
|
<SheetPrimitive.Overlay
|
|
28
30
|
data-slot="sheet-overlay"
|
|
29
31
|
className={cn(
|
|
30
|
-
'data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-1001 bg-black/
|
|
32
|
+
'data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-1001 bg-black/50',
|
|
31
33
|
className,
|
|
32
34
|
)}
|
|
33
35
|
{...props}
|
|
@@ -1,13 +1,15 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
1
3
|
import React from 'react';
|
|
4
|
+
import { cn } from '@/lib/utils.js';
|
|
2
5
|
import * as SwitchPrimitive from '@radix-ui/react-switch';
|
|
3
|
-
import { cn } from '../../lib/utils.js';
|
|
4
6
|
|
|
5
7
|
function Switch({ className, ...props }: React.ComponentProps<typeof SwitchPrimitive.Root>) {
|
|
6
8
|
return (
|
|
7
9
|
<SwitchPrimitive.Root
|
|
8
10
|
data-slot="switch"
|
|
9
11
|
className={cn(
|
|
10
|
-
'peer data-[state=checked]:bg-gray-900 data-[state=unchecked]:bg-gray-200 focus-visible:border-gray-950 focus-visible:ring-gray-950/50 inline-flex h-
|
|
12
|
+
'peer data-[state=checked]:bg-gray-900 data-[state=unchecked]:bg-gray-200 focus-visible:border-gray-950 focus-visible:ring-gray-950/50 dark:data-[state=unchecked]:bg-gray-200/80 inline-flex h-[1.15rem] w-8 shrink-0 items-center rounded-full border border-gray-200 border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 dark:data-[state=checked]:bg-gray-50 dark:data-[state=unchecked]:bg-gray-800 dark:focus-visible:border-gray-300 dark:focus-visible:ring-gray-300/50 dark:dark:data-[state=unchecked]:bg-gray-800/80 dark:border-gray-800',
|
|
11
13
|
className,
|
|
12
14
|
)}
|
|
13
15
|
{...props}
|
|
@@ -15,7 +17,7 @@ function Switch({ className, ...props }: React.ComponentProps<typeof SwitchPrimi
|
|
|
15
17
|
<SwitchPrimitive.Thumb
|
|
16
18
|
data-slot="switch-thumb"
|
|
17
19
|
className={cn(
|
|
18
|
-
'bg-white pointer-events-none block size-4 rounded-full ring-0
|
|
20
|
+
'bg-white dark:data-[state=unchecked]:bg-gray-950 dark:data-[state=checked]:bg-gray-50 pointer-events-none block size-4 rounded-full ring-0 transition-transform data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0 dark:bg-gray-950 dark:dark:data-[state=unchecked]:bg-gray-50 dark:dark:data-[state=checked]:bg-gray-900',
|
|
19
21
|
)}
|
|
20
22
|
/>
|
|
21
23
|
</SwitchPrimitive.Root>
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { cn } from '
|
|
2
|
+
import { cn } from '@/lib/utils.js';
|
|
3
3
|
|
|
4
4
|
function Table({ className, ...props }: React.ComponentProps<'table'>) {
|
|
5
5
|
return (
|
|
@@ -58,7 +58,7 @@ function TableHead({ className, ...props }: React.ComponentProps<'th'>) {
|
|
|
58
58
|
<th
|
|
59
59
|
data-slot="table-head"
|
|
60
60
|
className={cn(
|
|
61
|
-
'text-gray-
|
|
61
|
+
'text-gray-950 h-10 px-2 text-left align-middle font-medium whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px] dark:text-gray-50',
|
|
62
62
|
className,
|
|
63
63
|
)}
|
|
64
64
|
{...props}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
1
3
|
import React from 'react';
|
|
4
|
+
import { cn } from '@/lib/utils.js';
|
|
2
5
|
import * as TabsPrimitive from '@radix-ui/react-tabs';
|
|
3
|
-
import { cn } from '../../lib/utils.js';
|
|
4
6
|
|
|
5
7
|
function Tabs({ className, ...props }: React.ComponentProps<typeof TabsPrimitive.Root>) {
|
|
6
8
|
return (
|
|
@@ -17,7 +19,7 @@ function TabsList({ className, ...props }: React.ComponentProps<typeof TabsPrimi
|
|
|
17
19
|
<TabsPrimitive.List
|
|
18
20
|
data-slot="tabs-list"
|
|
19
21
|
className={cn(
|
|
20
|
-
'bg-gray-100 text-gray-500 inline-flex h-9 w-fit items-center justify-center rounded-lg p-
|
|
22
|
+
'bg-gray-100 text-gray-500 inline-flex h-9 w-fit items-center justify-center rounded-lg p-[3px] dark:bg-gray-800 dark:text-gray-400',
|
|
21
23
|
className,
|
|
22
24
|
)}
|
|
23
25
|
{...props}
|
|
@@ -30,7 +32,7 @@ function TabsTrigger({ className, ...props }: React.ComponentProps<typeof TabsPr
|
|
|
30
32
|
<TabsPrimitive.Trigger
|
|
31
33
|
data-slot="tabs-trigger"
|
|
32
34
|
className={cn(
|
|
33
|
-
"data-[state=active]:bg-white data-[state=active]:text-gray-950 focus-visible:border-gray-950 focus-visible:ring-gray-950/50 focus-visible:outline-ring inline-flex flex-1 items-center justify-center gap-1.5 rounded-md px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 dark:data-[state=active]:bg-gray-950 dark:data-[state=active]:text-gray-50 dark:focus-visible:border-gray-300 dark:focus-visible:ring-gray-300/50",
|
|
35
|
+
"data-[state=active]:bg-white dark:data-[state=active]:text-gray-950 focus-visible:border-gray-950 focus-visible:ring-gray-950/50 focus-visible:outline-ring dark:data-[state=active]:border-gray-200 dark:data-[state=active]:bg-gray-200/30 text-gray-950 dark:text-gray-500 inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-gray-200 border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 dark:data-[state=active]:bg-gray-950 dark:dark:data-[state=active]:text-gray-50 dark:focus-visible:border-gray-300 dark:focus-visible:ring-gray-300/50 dark:dark:data-[state=active]:border-gray-800 dark:dark:data-[state=active]:bg-gray-800/30 dark:text-gray-50 dark:dark:text-gray-400 dark:border-gray-800",
|
|
34
36
|
className,
|
|
35
37
|
)}
|
|
36
38
|
{...props}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { cva, type VariantProps } from 'class-variance-authority';
|
|
3
|
+
import { cn } from '@/lib/utils.js';
|
|
3
4
|
import * as TogglePrimitive from '@radix-ui/react-toggle';
|
|
4
|
-
import { cn } from '../../lib/utils.js';
|
|
5
5
|
|
|
6
6
|
const toggleVariants = cva(
|
|
7
7
|
"inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium hover:bg-gray-100 hover:text-gray-500 disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-gray-100 data-[state=on]:text-gray-900 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0 focus-visible:border-gray-950 focus-visible:ring-gray-950/50 focus-visible:ring-[3px] outline-none transition-[color,box-shadow] aria-invalid:ring-red-500/20 dark:aria-invalid:ring-red-500/40 aria-invalid:border-red-500 whitespace-nowrap dark:hover:bg-gray-800 dark:hover:text-gray-400 dark:data-[state=on]:bg-gray-800 dark:data-[state=on]:text-gray-50 dark:focus-visible:border-gray-300 dark:focus-visible:ring-gray-300/50 dark:aria-invalid:ring-red-900/20 dark:dark:aria-invalid:ring-red-900/40 dark:aria-invalid:border-red-900",
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
1
3
|
import React from 'react';
|
|
4
|
+
import { cn } from '@/lib/utils.js';
|
|
2
5
|
import * as TooltipPrimitive from '@radix-ui/react-tooltip';
|
|
3
|
-
import { cn } from '../../lib/utils.js';
|
|
4
6
|
|
|
5
7
|
function TooltipProvider({
|
|
6
8
|
delayDuration = 0,
|
|
@@ -39,13 +41,13 @@ function TooltipContent({
|
|
|
39
41
|
data-slot="tooltip-content"
|
|
40
42
|
sideOffset={sideOffset}
|
|
41
43
|
className={cn(
|
|
42
|
-
'bg-gray-900 text-gray-50 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 z-
|
|
44
|
+
'bg-gray-900 text-gray-50 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 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance dark:bg-gray-50 dark:text-gray-900',
|
|
43
45
|
className,
|
|
44
46
|
)}
|
|
45
47
|
{...props}
|
|
46
48
|
>
|
|
47
49
|
{children}
|
|
48
|
-
<TooltipPrimitive.Arrow className="bg-gray-900 fill-primary z-
|
|
50
|
+
<TooltipPrimitive.Arrow className="bg-gray-900 fill-primary z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px] dark:bg-gray-50" />
|
|
49
51
|
</TooltipPrimitive.Content>
|
|
50
52
|
</TooltipPrimitive.Portal>
|
|
51
53
|
);
|