@squadbase/vantage 0.6.2-dev1.b332e5a → 0.6.2-dev1.d7c0911
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/add-4GHF2TX2.js +6 -0
- package/dist/add-4GHF2TX2.js.map +1 -0
- package/dist/{build-TVKFIVFQ.js → build-X5NVCQKT.js} +7 -7
- package/dist/{build-TVKFIVFQ.js.map → build-X5NVCQKT.js.map} +1 -1
- package/dist/{check-3KHZXZMQ.js → check-ZBIH422T.js} +5 -5
- package/dist/{check-3KHZXZMQ.js.map → check-ZBIH422T.js.map} +1 -1
- package/dist/chunk-2ICNHUG6.js +1820 -0
- package/dist/chunk-2ICNHUG6.js.map +1 -0
- package/dist/{chunk-5ZOP4SQR.js → chunk-2N72FKLB.js} +12 -7
- package/dist/chunk-2N72FKLB.js.map +1 -0
- package/dist/{chunk-P7W4LR3Z.js → chunk-7DZGJQ3P.js} +3 -3
- package/dist/{chunk-P7W4LR3Z.js.map → chunk-7DZGJQ3P.js.map} +1 -1
- package/dist/{chunk-U2M6HGKQ.js → chunk-AABMKHEU.js} +4 -4
- package/dist/{chunk-U2M6HGKQ.js.map → chunk-AABMKHEU.js.map} +1 -1
- package/dist/{chunk-QI3XQKHS.js → chunk-GNXCX4WE.js} +10 -3
- package/dist/chunk-GNXCX4WE.js.map +1 -0
- package/dist/{chunk-PXRX5PEC.js → chunk-PDOBHMUQ.js} +3 -3
- package/dist/chunk-PDOBHMUQ.js.map +1 -0
- package/dist/{chunk-ZVANIULZ.js → chunk-RNTDBX6S.js} +4 -4
- package/dist/{chunk-ZVANIULZ.js.map → chunk-RNTDBX6S.js.map} +1 -1
- package/dist/{chunk-A2UUGASH.js → chunk-U736PVHY.js} +2 -2
- package/dist/chunk-U736PVHY.js.map +1 -0
- package/dist/{chunk-PVTHHV7X.js → chunk-V3LF7BE7.js} +27 -5
- package/dist/chunk-V3LF7BE7.js.map +1 -0
- package/dist/{chunk-LMUACBMA.js → chunk-WAMZWZJB.js} +53 -8
- package/dist/chunk-WAMZWZJB.js.map +1 -0
- package/dist/chunk-WRSX2MDK.js +7866 -0
- package/dist/chunk-WRSX2MDK.js.map +1 -0
- package/dist/{chunk-RPZAALCX.js → chunk-XPQSTZUU.js} +254 -164
- package/dist/chunk-XPQSTZUU.js.map +1 -0
- package/dist/{chunk-DTDVSFRY.js → chunk-XQUSGIDG.js} +17 -3
- package/dist/chunk-XQUSGIDG.js.map +1 -0
- package/dist/cli.js +12 -11
- package/dist/cli.js.map +1 -1
- package/dist/client/index.d.ts +32 -3
- package/dist/client/index.js +205 -12
- package/dist/client/index.js.map +1 -1
- package/dist/components/index.d.ts +1975 -28
- package/dist/components/index.js +4 -4
- package/dist/{dev-GDKATCC7.js → dev-4XEDTELV.js} +8 -8
- package/dist/dev-4XEDTELV.js.map +1 -0
- package/dist/doc/index.js +2 -2
- package/dist/doc/index.js.map +1 -1
- package/dist/{docs-EJJ3BECT.js → docs-JVP4RPKT.js} +3 -3
- package/dist/{docs-EJJ3BECT.js.map → docs-JVP4RPKT.js.map} +1 -1
- package/dist/{doctor-WQXPXP6K.js → doctor-5E2VEZPK.js} +5 -5
- package/dist/{doctor-WQXPXP6K.js.map → doctor-5E2VEZPK.js.map} +1 -1
- package/dist/markdown/index.js +1 -1
- package/dist/markdown/index.js.map +1 -1
- package/dist/{preview-OGMCNQUO.js → preview-T6CLSQVX.js} +3 -3
- package/dist/{preview-OGMCNQUO.js.map → preview-T6CLSQVX.js.map} +1 -1
- package/dist/query/index.d.ts +0 -11
- package/dist/query/index.js +2 -2
- package/dist/{routes-MWBWWOJ2.js → routes-3SGAFDMC.js} +4 -4
- package/dist/{routes-MWBWWOJ2.js.map → routes-3SGAFDMC.js.map} +1 -1
- package/dist/{search-6Y422SV6.js → search-5LC4XPB5.js} +3 -3
- package/dist/{search-6Y422SV6.js.map → search-5LC4XPB5.js.map} +1 -1
- package/dist/table/index.js +10 -9
- package/dist/table/index.js.map +1 -1
- package/dist/ui/index.d.ts +144 -11
- package/dist/ui/index.js +1339 -87
- package/dist/ui/index.js.map +1 -1
- package/dist/{upgrade-HCANX4GQ.js → upgrade-JHXZBGQS.js} +6 -6
- package/dist/{upgrade-HCANX4GQ.js.map → upgrade-JHXZBGQS.js.map} +1 -1
- package/dist/vite/index.d.ts +10 -0
- package/dist/vite/index.js +3 -3
- package/docs/en/components.md +29 -15
- package/docs/en/parts/data-table.md +22 -0
- package/docs/en/parts/delta.md +50 -0
- package/docs/en/parts/format.md +43 -0
- package/docs/en/parts/kpi-card.md +57 -0
- package/docs/en/parts/metric-value.md +3 -2
- package/docs/en/parts/sparkline.md +1 -1
- package/docs/en/parts/trend-indicator.md +17 -1
- package/docs/en/ui-and-theming.md +1 -1
- package/docs/index.json +366 -76
- package/docs/ja/changelog.md +31 -0
- package/docs/ja/components.md +57 -101
- package/docs/ja/page-types/csv.md +83 -0
- package/docs/ja/page-types/doc.md +83 -0
- package/docs/ja/page-types/excel.md +82 -0
- package/docs/ja/page-types/slide.md +132 -0
- package/docs/ja/page-types.md +47 -0
- package/docs/ja/parts/area-chart.md +61 -0
- package/docs/ja/parts/bar-chart.md +69 -0
- package/docs/ja/parts/bar-list.md +35 -0
- package/docs/ja/parts/category-bar.md +36 -0
- package/docs/ja/parts/data-table.md +22 -0
- package/docs/ja/parts/delta.md +50 -0
- package/docs/ja/parts/donut-chart.md +47 -0
- package/docs/ja/parts/echart.md +3 -0
- package/docs/ja/parts/format.md +44 -0
- package/docs/ja/parts/kpi-card.md +55 -0
- package/docs/ja/parts/line-chart.md +58 -0
- package/docs/ja/parts/metric-value.md +3 -2
- package/docs/ja/parts/progress-circle.md +34 -0
- package/docs/ja/parts/sparkline.md +2 -2
- package/docs/ja/parts/tracker.md +32 -0
- package/docs/ja/parts/trend-indicator.md +17 -1
- package/docs/ja/routing.md +8 -86
- package/docs/ja/ui/alert-dialog.md +41 -0
- package/docs/ja/ui/avatar.md +31 -0
- package/docs/ja/ui/combobox.md +74 -0
- package/docs/ja/ui/drawer.md +41 -0
- package/docs/ja/ui/field.md +42 -0
- package/docs/ja/ui/hover-card.md +21 -0
- package/docs/ja/ui/kbd.md +16 -0
- package/docs/ja/ui/pagination.md +36 -0
- package/docs/ja/ui/radio-group.md +21 -0
- package/docs/ja/ui/toast.md +46 -0
- package/docs/ja/ui-and-theming.md +14 -7
- package/package.json +13 -4
- package/registry/ui/accordion.tsx +76 -0
- package/registry/ui/alert-dialog.tsx +189 -0
- package/registry/ui/alert.tsx +80 -0
- package/registry/ui/app-shell.tsx +287 -0
- package/registry/ui/area-chart.tsx +3639 -0
- package/registry/ui/avatar.tsx +110 -0
- package/registry/ui/badge.tsx +56 -0
- package/registry/ui/bar-chart.tsx +3636 -0
- package/registry/ui/bar-list.tsx +3680 -0
- package/registry/ui/breadcrumb.tsx +128 -0
- package/registry/ui/button.tsx +62 -0
- package/registry/ui/calendar.tsx +223 -0
- package/registry/ui/card.tsx +107 -0
- package/registry/ui/category-bar.tsx +1255 -0
- package/registry/ui/chart-frame.tsx +1358 -0
- package/registry/ui/checkbox.tsx +30 -0
- package/registry/ui/collapsible.tsx +23 -0
- package/registry/ui/combobox.tsx +310 -0
- package/registry/ui/command.tsx +198 -0
- package/registry/ui/dashboard-card.tsx +217 -0
- package/registry/ui/data-table.tsx +693 -146
- package/registry/ui/date-range-picker.tsx +390 -0
- package/registry/ui/delta.tsx +188 -0
- package/registry/ui/dialog.tsx +161 -0
- package/registry/ui/donut-chart.tsx +3688 -0
- package/registry/ui/drawer.tsx +229 -0
- package/registry/ui/dropdown-menu.tsx +274 -0
- package/registry/ui/echart.tsx +890 -0
- package/registry/ui/field.tsx +240 -0
- package/registry/ui/filter-bar.tsx +392 -0
- package/registry/ui/funnel-steps.tsx +3541 -0
- package/registry/ui/heatmap.tsx +1752 -0
- package/registry/ui/hover-card.tsx +52 -0
- package/registry/ui/input-group.tsx +160 -0
- package/registry/ui/input.tsx +24 -0
- package/registry/ui/kbd.tsx +30 -0
- package/registry/ui/kpi-card.tsx +677 -0
- package/registry/ui/label.tsx +22 -0
- package/registry/ui/legend.tsx +3500 -0
- package/registry/ui/line-chart.tsx +3637 -0
- package/registry/ui/metric-value.tsx +62 -0
- package/registry/ui/multi-select.tsx +232 -0
- package/registry/ui/page-shell.tsx +282 -0
- package/registry/ui/pagination.tsx +140 -0
- package/registry/ui/placeholder.tsx +36 -0
- package/registry/ui/popover.tsx +92 -0
- package/registry/ui/progress-circle.tsx +867 -0
- package/registry/ui/progress.tsx +85 -0
- package/registry/ui/radio-group.tsx +39 -0
- package/registry/ui/sample-data.tsx +86 -0
- package/registry/ui/scatter-chart.tsx +4150 -0
- package/registry/ui/scroll-area.tsx +56 -0
- package/registry/ui/searchable-select.tsx +214 -0
- package/registry/ui/section-header.tsx +43 -0
- package/registry/ui/segmented-control.tsx +76 -0
- package/registry/ui/select.tsx +255 -0
- package/registry/ui/separator.tsx +27 -0
- package/registry/ui/sheet.tsx +139 -0
- package/registry/ui/sidebar.tsx +725 -0
- package/registry/ui/skeleton.tsx +17 -0
- package/registry/ui/slider.tsx +56 -0
- package/registry/ui/sparkline.tsx +230 -0
- package/registry/ui/spinner.tsx +14 -0
- package/registry/ui/states.tsx +90 -0
- package/registry/ui/status-badge.tsx +121 -0
- package/registry/ui/switch.tsx +34 -0
- package/registry/ui/table.tsx +118 -0
- package/registry/ui/tabs.tsx +84 -0
- package/registry/ui/textarea.tsx +22 -0
- package/registry/ui/toast.tsx +250 -0
- package/registry/ui/toggle-group.tsx +91 -0
- package/registry/ui/toggle.tsx +47 -0
- package/registry/ui/tooltip.tsx +68 -0
- package/registry/ui/tracker.tsx +843 -0
- package/registry/ui/trend-indicator.tsx +74 -0
- package/registry/ui/updated-at.tsx +122 -0
- package/registry/ui/waterfall-chart.tsx +4186 -0
- package/skills/vantage-add-feature/SKILL.md +9 -7
- package/skills/vantage-pitfalls/SKILL.md +5 -1
- package/templates/AGENTS.md +22 -1
- package/templates/agents/csv.md +2 -1
- package/templates/agents/doc.md +4 -3
- package/templates/agents/page.md +20 -6
- package/templates/agents/xlsx.md +2 -1
- package/theme.css +237 -136
- package/dist/add-DY4AXANK.js +0 -6
- package/dist/add-DY4AXANK.js.map +0 -1
- package/dist/chunk-5ZOP4SQR.js.map +0 -1
- package/dist/chunk-A2UUGASH.js.map +0 -1
- package/dist/chunk-DTDVSFRY.js.map +0 -1
- package/dist/chunk-LMUACBMA.js.map +0 -1
- package/dist/chunk-NKFBFDRZ.js +0 -2241
- package/dist/chunk-NKFBFDRZ.js.map +0 -1
- package/dist/chunk-PVTHHV7X.js.map +0 -1
- package/dist/chunk-PXRX5PEC.js.map +0 -1
- package/dist/chunk-QI3XQKHS.js.map +0 -1
- package/dist/chunk-RPZAALCX.js.map +0 -1
- package/dist/chunk-VA776YE5.js +0 -316
- package/dist/chunk-VA776YE5.js.map +0 -1
- package/dist/dev-GDKATCC7.js.map +0 -1
package/dist/ui/index.js
CHANGED
|
@@ -1,20 +1,31 @@
|
|
|
1
|
-
export { Empty, ErrorState, Loading } from '../chunk-
|
|
2
|
-
|
|
3
|
-
export {
|
|
4
|
-
import {
|
|
5
|
-
export {
|
|
1
|
+
export { Empty, ErrorState, Loading } from '../chunk-2N72FKLB.js';
|
|
2
|
+
import { InputGroup, InputGroupInput, InputGroupAddon, InputGroupButton, Separator } from '../chunk-XPQSTZUU.js';
|
|
3
|
+
export { Badge, Calendar, CalendarDayButton, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Checkbox, Collapsible, CollapsibleContent, CollapsibleTrigger, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, Input, InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputGroupTextarea, Popover, PopoverContent, PopoverDescription, PopoverHeader, PopoverTitle, PopoverTrigger, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Skeleton, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Textarea, Toggle, ToggleGroup, ToggleGroupItem, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, badgeVariants, toggleVariants, useIsMobile, useSidebar } from '../chunk-XPQSTZUU.js';
|
|
4
|
+
import { Button } from '../chunk-PDOBHMUQ.js';
|
|
5
|
+
export { Button, buttonVariants } from '../chunk-PDOBHMUQ.js';
|
|
6
|
+
import { cn } from '../chunk-U736PVHY.js';
|
|
7
|
+
export { cn } from '../chunk-U736PVHY.js';
|
|
6
8
|
import { Accordion as Accordion$1 } from '@base-ui/react/accordion';
|
|
7
|
-
import { ChevronDownIcon, ChevronUpIcon, ChevronRightIcon, MoreHorizontalIcon, Loader2Icon } from 'lucide-react';
|
|
9
|
+
import { ChevronDownIcon, ChevronUpIcon, ChevronRightIcon, MoreHorizontalIcon, CheckIcon, XIcon, ChevronLeftIcon, Loader2Icon, CircleCheckIcon, InfoIcon, TriangleAlertIcon, OctagonXIcon } from 'lucide-react';
|
|
8
10
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
9
|
-
import 'react';
|
|
11
|
+
import * as React6 from 'react';
|
|
12
|
+
import { useMemo } from 'react';
|
|
10
13
|
import { cva } from 'class-variance-authority';
|
|
14
|
+
import { AlertDialog as AlertDialog$1 } from '@base-ui/react/alert-dialog';
|
|
15
|
+
import { Avatar as Avatar$1 } from '@base-ui/react/avatar';
|
|
11
16
|
import { mergeProps } from '@base-ui/react/merge-props';
|
|
12
17
|
import { useRender } from '@base-ui/react/use-render';
|
|
18
|
+
import { Combobox as Combobox$1 } from '@base-ui/react/combobox';
|
|
19
|
+
import { Drawer as Drawer$1 } from '@base-ui/react/drawer';
|
|
20
|
+
import { PreviewCard } from '@base-ui/react/preview-card';
|
|
13
21
|
import { Progress as Progress$1 } from '@base-ui/react/progress';
|
|
22
|
+
import { Radio } from '@base-ui/react/radio';
|
|
23
|
+
import { RadioGroup as RadioGroup$1 } from '@base-ui/react/radio-group';
|
|
14
24
|
import { ScrollArea as ScrollArea$1 } from '@base-ui/react/scroll-area';
|
|
15
25
|
import { Slider as Slider$1 } from '@base-ui/react/slider';
|
|
16
26
|
import { Switch as Switch$1 } from '@base-ui/react/switch';
|
|
17
27
|
import { Tabs as Tabs$1 } from '@base-ui/react/tabs';
|
|
28
|
+
import { Toast as Toast$1 } from '@base-ui/react/toast';
|
|
18
29
|
|
|
19
30
|
// @squadbase/vantage — generated build. Do not edit.
|
|
20
31
|
function Accordion({ className, ...props }) {
|
|
@@ -68,7 +79,7 @@ function AccordionContent({
|
|
|
68
79
|
Accordion$1.Panel,
|
|
69
80
|
{
|
|
70
81
|
"data-slot": "accordion-content",
|
|
71
|
-
className: "overflow-hidden text-sm data-open:animate-accordion-down data-closed:animate-accordion-up",
|
|
82
|
+
className: "overflow-hidden text-sm data-open:animate-accordion-down data-closed:animate-accordion-up motion-reduce:animate-none",
|
|
72
83
|
...props,
|
|
73
84
|
children: /* @__PURE__ */ jsx(
|
|
74
85
|
"div",
|
|
@@ -151,6 +162,253 @@ function AlertAction({ className, ...props }) {
|
|
|
151
162
|
}
|
|
152
163
|
);
|
|
153
164
|
}
|
|
165
|
+
function AlertDialog({ ...props }) {
|
|
166
|
+
return /* @__PURE__ */ jsx(AlertDialog$1.Root, { "data-slot": "alert-dialog", ...props });
|
|
167
|
+
}
|
|
168
|
+
function AlertDialogTrigger({ ...props }) {
|
|
169
|
+
return /* @__PURE__ */ jsx(AlertDialog$1.Trigger, { "data-slot": "alert-dialog-trigger", ...props });
|
|
170
|
+
}
|
|
171
|
+
function AlertDialogPortal({ ...props }) {
|
|
172
|
+
return /* @__PURE__ */ jsx(AlertDialog$1.Portal, { "data-slot": "alert-dialog-portal", ...props });
|
|
173
|
+
}
|
|
174
|
+
function AlertDialogOverlay({
|
|
175
|
+
className,
|
|
176
|
+
...props
|
|
177
|
+
}) {
|
|
178
|
+
return /* @__PURE__ */ jsx(
|
|
179
|
+
AlertDialog$1.Backdrop,
|
|
180
|
+
{
|
|
181
|
+
"data-slot": "alert-dialog-overlay",
|
|
182
|
+
className: cn(
|
|
183
|
+
"fixed inset-0 isolate z-50 bg-black/10 duration-100 supports-backdrop-filter:backdrop-blur-xs data-open:animate-in motion-reduce:animate-none! data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0",
|
|
184
|
+
className
|
|
185
|
+
),
|
|
186
|
+
...props
|
|
187
|
+
}
|
|
188
|
+
);
|
|
189
|
+
}
|
|
190
|
+
function AlertDialogContent({
|
|
191
|
+
className,
|
|
192
|
+
size = "default",
|
|
193
|
+
...props
|
|
194
|
+
}) {
|
|
195
|
+
return /* @__PURE__ */ jsxs(AlertDialogPortal, { children: [
|
|
196
|
+
/* @__PURE__ */ jsx(AlertDialogOverlay, {}),
|
|
197
|
+
/* @__PURE__ */ jsx(
|
|
198
|
+
AlertDialog$1.Popup,
|
|
199
|
+
{
|
|
200
|
+
"data-slot": "alert-dialog-content",
|
|
201
|
+
"data-size": size,
|
|
202
|
+
className: cn(
|
|
203
|
+
"group/alert-dialog-content fixed top-1/2 left-1/2 z-50 grid w-full -translate-x-1/2 -translate-y-1/2 gap-4 rounded-xl bg-popover p-4 text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none data-[size=default]:max-w-xs data-[size=sm]:max-w-xs data-[size=default]:sm:max-w-sm data-open:animate-in motion-reduce:animate-none! data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",
|
|
204
|
+
className
|
|
205
|
+
),
|
|
206
|
+
...props
|
|
207
|
+
}
|
|
208
|
+
)
|
|
209
|
+
] });
|
|
210
|
+
}
|
|
211
|
+
function AlertDialogHeader({
|
|
212
|
+
className,
|
|
213
|
+
...props
|
|
214
|
+
}) {
|
|
215
|
+
return /* @__PURE__ */ jsx(
|
|
216
|
+
"div",
|
|
217
|
+
{
|
|
218
|
+
"data-slot": "alert-dialog-header",
|
|
219
|
+
className: cn(
|
|
220
|
+
"grid grid-rows-[auto_1fr] place-items-center gap-1.5 text-center has-data-[slot=alert-dialog-media]:grid-rows-[auto_auto_1fr] has-data-[slot=alert-dialog-media]:gap-x-4 sm:group-data-[size=default]/alert-dialog-content:place-items-start sm:group-data-[size=default]/alert-dialog-content:text-left sm:group-data-[size=default]/alert-dialog-content:has-data-[slot=alert-dialog-media]:grid-rows-[auto_1fr]",
|
|
221
|
+
className
|
|
222
|
+
),
|
|
223
|
+
...props
|
|
224
|
+
}
|
|
225
|
+
);
|
|
226
|
+
}
|
|
227
|
+
function AlertDialogFooter({
|
|
228
|
+
className,
|
|
229
|
+
...props
|
|
230
|
+
}) {
|
|
231
|
+
return /* @__PURE__ */ jsx(
|
|
232
|
+
"div",
|
|
233
|
+
{
|
|
234
|
+
"data-slot": "alert-dialog-footer",
|
|
235
|
+
className: cn(
|
|
236
|
+
"-mx-4 -mb-4 flex flex-col-reverse gap-2 rounded-b-xl border-t bg-muted/50 p-4 group-data-[size=sm]/alert-dialog-content:grid group-data-[size=sm]/alert-dialog-content:grid-cols-2 sm:flex-row sm:justify-end",
|
|
237
|
+
className
|
|
238
|
+
),
|
|
239
|
+
...props
|
|
240
|
+
}
|
|
241
|
+
);
|
|
242
|
+
}
|
|
243
|
+
function AlertDialogMedia({
|
|
244
|
+
className,
|
|
245
|
+
...props
|
|
246
|
+
}) {
|
|
247
|
+
return /* @__PURE__ */ jsx(
|
|
248
|
+
"div",
|
|
249
|
+
{
|
|
250
|
+
"data-slot": "alert-dialog-media",
|
|
251
|
+
className: cn(
|
|
252
|
+
"mb-2 inline-flex size-10 items-center justify-center rounded-md bg-muted sm:group-data-[size=default]/alert-dialog-content:row-span-2 *:[svg:not([class*='size-'])]:size-6",
|
|
253
|
+
className
|
|
254
|
+
),
|
|
255
|
+
...props
|
|
256
|
+
}
|
|
257
|
+
);
|
|
258
|
+
}
|
|
259
|
+
function AlertDialogTitle({
|
|
260
|
+
className,
|
|
261
|
+
...props
|
|
262
|
+
}) {
|
|
263
|
+
return /* @__PURE__ */ jsx(
|
|
264
|
+
AlertDialog$1.Title,
|
|
265
|
+
{
|
|
266
|
+
"data-slot": "alert-dialog-title",
|
|
267
|
+
className: cn(
|
|
268
|
+
"cn-font-heading text-base font-medium sm:group-data-[size=default]/alert-dialog-content:group-has-data-[slot=alert-dialog-media]/alert-dialog-content:col-start-2",
|
|
269
|
+
className
|
|
270
|
+
),
|
|
271
|
+
...props
|
|
272
|
+
}
|
|
273
|
+
);
|
|
274
|
+
}
|
|
275
|
+
function AlertDialogDescription({
|
|
276
|
+
className,
|
|
277
|
+
...props
|
|
278
|
+
}) {
|
|
279
|
+
return /* @__PURE__ */ jsx(
|
|
280
|
+
AlertDialog$1.Description,
|
|
281
|
+
{
|
|
282
|
+
"data-slot": "alert-dialog-description",
|
|
283
|
+
className: cn(
|
|
284
|
+
"text-sm text-balance text-muted-foreground md:text-pretty *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground",
|
|
285
|
+
className
|
|
286
|
+
),
|
|
287
|
+
...props
|
|
288
|
+
}
|
|
289
|
+
);
|
|
290
|
+
}
|
|
291
|
+
function AlertDialogAction({
|
|
292
|
+
className,
|
|
293
|
+
...props
|
|
294
|
+
}) {
|
|
295
|
+
return /* @__PURE__ */ jsx(
|
|
296
|
+
Button,
|
|
297
|
+
{
|
|
298
|
+
"data-slot": "alert-dialog-action",
|
|
299
|
+
className: cn(className),
|
|
300
|
+
...props
|
|
301
|
+
}
|
|
302
|
+
);
|
|
303
|
+
}
|
|
304
|
+
function AlertDialogCancel({
|
|
305
|
+
className,
|
|
306
|
+
variant = "outline",
|
|
307
|
+
size = "default",
|
|
308
|
+
...props
|
|
309
|
+
}) {
|
|
310
|
+
return /* @__PURE__ */ jsx(
|
|
311
|
+
AlertDialog$1.Close,
|
|
312
|
+
{
|
|
313
|
+
"data-slot": "alert-dialog-cancel",
|
|
314
|
+
className: cn(className),
|
|
315
|
+
render: /* @__PURE__ */ jsx(Button, { variant, size }),
|
|
316
|
+
...props
|
|
317
|
+
}
|
|
318
|
+
);
|
|
319
|
+
}
|
|
320
|
+
function Avatar({
|
|
321
|
+
className,
|
|
322
|
+
size = "default",
|
|
323
|
+
...props
|
|
324
|
+
}) {
|
|
325
|
+
return /* @__PURE__ */ jsx(
|
|
326
|
+
Avatar$1.Root,
|
|
327
|
+
{
|
|
328
|
+
"data-slot": "avatar",
|
|
329
|
+
"data-size": size,
|
|
330
|
+
className: cn(
|
|
331
|
+
"group/avatar relative flex size-8 shrink-0 rounded-full select-none after:absolute after:inset-0 after:rounded-full after:border after:border-border after:mix-blend-darken data-[size=lg]:size-10 data-[size=sm]:size-6 dark:after:mix-blend-lighten",
|
|
332
|
+
className
|
|
333
|
+
),
|
|
334
|
+
...props
|
|
335
|
+
}
|
|
336
|
+
);
|
|
337
|
+
}
|
|
338
|
+
function AvatarImage({ className, ...props }) {
|
|
339
|
+
return /* @__PURE__ */ jsx(
|
|
340
|
+
Avatar$1.Image,
|
|
341
|
+
{
|
|
342
|
+
"data-slot": "avatar-image",
|
|
343
|
+
className: cn(
|
|
344
|
+
"aspect-square size-full rounded-full object-cover",
|
|
345
|
+
className
|
|
346
|
+
),
|
|
347
|
+
...props
|
|
348
|
+
}
|
|
349
|
+
);
|
|
350
|
+
}
|
|
351
|
+
function AvatarFallback({
|
|
352
|
+
className,
|
|
353
|
+
...props
|
|
354
|
+
}) {
|
|
355
|
+
return /* @__PURE__ */ jsx(
|
|
356
|
+
Avatar$1.Fallback,
|
|
357
|
+
{
|
|
358
|
+
"data-slot": "avatar-fallback",
|
|
359
|
+
className: cn(
|
|
360
|
+
"flex size-full items-center justify-center rounded-full bg-muted text-sm text-muted-foreground group-data-[size=sm]/avatar:text-xs",
|
|
361
|
+
className
|
|
362
|
+
),
|
|
363
|
+
...props
|
|
364
|
+
}
|
|
365
|
+
);
|
|
366
|
+
}
|
|
367
|
+
function AvatarBadge({ className, ...props }) {
|
|
368
|
+
return /* @__PURE__ */ jsx(
|
|
369
|
+
"span",
|
|
370
|
+
{
|
|
371
|
+
"data-slot": "avatar-badge",
|
|
372
|
+
className: cn(
|
|
373
|
+
"absolute right-0 bottom-0 z-10 inline-flex items-center justify-center rounded-full bg-primary text-primary-foreground bg-blend-color ring-2 ring-background select-none",
|
|
374
|
+
"group-data-[size=sm]/avatar:size-2 group-data-[size=sm]/avatar:[&>svg]:hidden",
|
|
375
|
+
"group-data-[size=default]/avatar:size-2.5 group-data-[size=default]/avatar:[&>svg]:size-2",
|
|
376
|
+
"group-data-[size=lg]/avatar:size-3 group-data-[size=lg]/avatar:[&>svg]:size-2",
|
|
377
|
+
className
|
|
378
|
+
),
|
|
379
|
+
...props
|
|
380
|
+
}
|
|
381
|
+
);
|
|
382
|
+
}
|
|
383
|
+
function AvatarGroup({ className, ...props }) {
|
|
384
|
+
return /* @__PURE__ */ jsx(
|
|
385
|
+
"div",
|
|
386
|
+
{
|
|
387
|
+
"data-slot": "avatar-group",
|
|
388
|
+
className: cn(
|
|
389
|
+
"group/avatar-group flex -space-x-2 *:data-[slot=avatar]:ring-2 *:data-[slot=avatar]:ring-background",
|
|
390
|
+
className
|
|
391
|
+
),
|
|
392
|
+
...props
|
|
393
|
+
}
|
|
394
|
+
);
|
|
395
|
+
}
|
|
396
|
+
function AvatarGroupCount({
|
|
397
|
+
className,
|
|
398
|
+
...props
|
|
399
|
+
}) {
|
|
400
|
+
return /* @__PURE__ */ jsx(
|
|
401
|
+
"div",
|
|
402
|
+
{
|
|
403
|
+
"data-slot": "avatar-group-count",
|
|
404
|
+
className: cn(
|
|
405
|
+
"relative flex size-8 shrink-0 items-center justify-center rounded-full bg-muted text-sm text-muted-foreground ring-2 ring-background group-has-data-[size=lg]/avatar-group:size-10 group-has-data-[size=sm]/avatar-group:size-6 [&>svg]:size-4 group-has-data-[size=lg]/avatar-group:[&>svg]:size-5 group-has-data-[size=sm]/avatar-group:[&>svg]:size-3",
|
|
406
|
+
className
|
|
407
|
+
),
|
|
408
|
+
...props
|
|
409
|
+
}
|
|
410
|
+
);
|
|
411
|
+
}
|
|
154
412
|
function Breadcrumb({ className, ...props }) {
|
|
155
413
|
return /* @__PURE__ */ jsx(
|
|
156
414
|
"nav",
|
|
@@ -208,154 +466,913 @@ function BreadcrumbPage({ className, ...props }) {
|
|
|
208
466
|
return /* @__PURE__ */ jsx(
|
|
209
467
|
"span",
|
|
210
468
|
{
|
|
211
|
-
"data-slot": "breadcrumb-page",
|
|
212
|
-
role: "link",
|
|
213
|
-
"aria-disabled": "true",
|
|
214
|
-
"aria-current": "page",
|
|
215
|
-
className: cn("font-normal text-foreground", className),
|
|
469
|
+
"data-slot": "breadcrumb-page",
|
|
470
|
+
role: "link",
|
|
471
|
+
"aria-disabled": "true",
|
|
472
|
+
"aria-current": "page",
|
|
473
|
+
className: cn("font-normal text-foreground", className),
|
|
474
|
+
...props
|
|
475
|
+
}
|
|
476
|
+
);
|
|
477
|
+
}
|
|
478
|
+
function BreadcrumbSeparator({
|
|
479
|
+
children,
|
|
480
|
+
className,
|
|
481
|
+
...props
|
|
482
|
+
}) {
|
|
483
|
+
return /* @__PURE__ */ jsx(
|
|
484
|
+
"li",
|
|
485
|
+
{
|
|
486
|
+
"data-slot": "breadcrumb-separator",
|
|
487
|
+
role: "presentation",
|
|
488
|
+
"aria-hidden": "true",
|
|
489
|
+
className: cn("[&>svg]:size-3.5", className),
|
|
490
|
+
...props,
|
|
491
|
+
children: children ?? /* @__PURE__ */ jsx(ChevronRightIcon, { className: "cn-rtl-flip" })
|
|
492
|
+
}
|
|
493
|
+
);
|
|
494
|
+
}
|
|
495
|
+
function BreadcrumbEllipsis({
|
|
496
|
+
className,
|
|
497
|
+
...props
|
|
498
|
+
}) {
|
|
499
|
+
return /* @__PURE__ */ jsxs(
|
|
500
|
+
"span",
|
|
501
|
+
{
|
|
502
|
+
"data-slot": "breadcrumb-ellipsis",
|
|
503
|
+
role: "presentation",
|
|
504
|
+
"aria-hidden": "true",
|
|
505
|
+
className: cn(
|
|
506
|
+
"flex size-5 items-center justify-center [&>svg]:size-4",
|
|
507
|
+
className
|
|
508
|
+
),
|
|
509
|
+
...props,
|
|
510
|
+
children: [
|
|
511
|
+
/* @__PURE__ */ jsx(MoreHorizontalIcon, {}),
|
|
512
|
+
/* @__PURE__ */ jsx("span", { className: "sr-only", children: "More" })
|
|
513
|
+
]
|
|
514
|
+
}
|
|
515
|
+
);
|
|
516
|
+
}
|
|
517
|
+
var Combobox = Combobox$1.Root;
|
|
518
|
+
function ComboboxValue({ ...props }) {
|
|
519
|
+
return /* @__PURE__ */ jsx(Combobox$1.Value, { "data-slot": "combobox-value", ...props });
|
|
520
|
+
}
|
|
521
|
+
function ComboboxTrigger({
|
|
522
|
+
className,
|
|
523
|
+
children,
|
|
524
|
+
...props
|
|
525
|
+
}) {
|
|
526
|
+
return /* @__PURE__ */ jsxs(
|
|
527
|
+
Combobox$1.Trigger,
|
|
528
|
+
{
|
|
529
|
+
"data-slot": "combobox-trigger",
|
|
530
|
+
className: cn("[&_svg:not([class*='size-'])]:size-4", className),
|
|
531
|
+
...props,
|
|
532
|
+
children: [
|
|
533
|
+
children,
|
|
534
|
+
/* @__PURE__ */ jsx(
|
|
535
|
+
ChevronDownIcon,
|
|
536
|
+
{
|
|
537
|
+
className: "pointer-events-none size-4 text-muted-foreground"
|
|
538
|
+
}
|
|
539
|
+
)
|
|
540
|
+
]
|
|
541
|
+
}
|
|
542
|
+
);
|
|
543
|
+
}
|
|
544
|
+
function ComboboxClear({ className, ...props }) {
|
|
545
|
+
return /* @__PURE__ */ jsx(
|
|
546
|
+
Combobox$1.Clear,
|
|
547
|
+
{
|
|
548
|
+
"data-slot": "combobox-clear",
|
|
549
|
+
render: /* @__PURE__ */ jsx(InputGroupButton, { variant: "ghost", size: "icon-xs" }),
|
|
550
|
+
className: cn(className),
|
|
551
|
+
...props,
|
|
552
|
+
children: /* @__PURE__ */ jsx(
|
|
553
|
+
XIcon,
|
|
554
|
+
{
|
|
555
|
+
className: "pointer-events-none"
|
|
556
|
+
}
|
|
557
|
+
)
|
|
558
|
+
}
|
|
559
|
+
);
|
|
560
|
+
}
|
|
561
|
+
function ComboboxInput({
|
|
562
|
+
className,
|
|
563
|
+
children,
|
|
564
|
+
disabled = false,
|
|
565
|
+
showTrigger = true,
|
|
566
|
+
showClear = false,
|
|
567
|
+
...props
|
|
568
|
+
}) {
|
|
569
|
+
return /* @__PURE__ */ jsxs(InputGroup, { className: cn("w-auto", className), children: [
|
|
570
|
+
/* @__PURE__ */ jsx(
|
|
571
|
+
Combobox$1.Input,
|
|
572
|
+
{
|
|
573
|
+
render: /* @__PURE__ */ jsx(InputGroupInput, { disabled }),
|
|
574
|
+
...props
|
|
575
|
+
}
|
|
576
|
+
),
|
|
577
|
+
/* @__PURE__ */ jsxs(InputGroupAddon, { align: "inline-end", children: [
|
|
578
|
+
showTrigger && /* @__PURE__ */ jsx(
|
|
579
|
+
InputGroupButton,
|
|
580
|
+
{
|
|
581
|
+
size: "icon-xs",
|
|
582
|
+
variant: "ghost",
|
|
583
|
+
render: /* @__PURE__ */ jsx(ComboboxTrigger, {}),
|
|
584
|
+
"data-slot": "input-group-button",
|
|
585
|
+
className: "group-has-data-[slot=combobox-clear]/input-group:hidden data-pressed:bg-transparent",
|
|
586
|
+
disabled
|
|
587
|
+
}
|
|
588
|
+
),
|
|
589
|
+
showClear && /* @__PURE__ */ jsx(ComboboxClear, { disabled })
|
|
590
|
+
] }),
|
|
591
|
+
children
|
|
592
|
+
] });
|
|
593
|
+
}
|
|
594
|
+
function ComboboxContent({
|
|
595
|
+
className,
|
|
596
|
+
side = "bottom",
|
|
597
|
+
sideOffset = 6,
|
|
598
|
+
align = "start",
|
|
599
|
+
alignOffset = 0,
|
|
600
|
+
anchor,
|
|
601
|
+
...props
|
|
602
|
+
}) {
|
|
603
|
+
return /* @__PURE__ */ jsx(Combobox$1.Portal, { children: /* @__PURE__ */ jsx(
|
|
604
|
+
Combobox$1.Positioner,
|
|
605
|
+
{
|
|
606
|
+
side,
|
|
607
|
+
sideOffset,
|
|
608
|
+
align,
|
|
609
|
+
alignOffset,
|
|
610
|
+
anchor,
|
|
611
|
+
className: "isolate z-50",
|
|
612
|
+
children: /* @__PURE__ */ jsx(
|
|
613
|
+
Combobox$1.Popup,
|
|
614
|
+
{
|
|
615
|
+
"data-slot": "combobox-content",
|
|
616
|
+
"data-chips": !!anchor,
|
|
617
|
+
className: cn(
|
|
618
|
+
"cn-menu-target cn-menu-translucent group/combobox-content relative max-h-(--available-height) w-(--anchor-width) max-w-(--available-width) min-w-[calc(var(--anchor-width)+--spacing(7))] origin-(--transform-origin) overflow-hidden rounded-lg bg-popover text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 data-[chips=true]:min-w-(--anchor-width) data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-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 *:data-[slot=input-group]:m-1 *:data-[slot=input-group]:mb-0 *:data-[slot=input-group]:h-8 *:data-[slot=input-group]:border-input/30 *:data-[slot=input-group]:bg-input/30 *:data-[slot=input-group]:shadow-none data-open:animate-in motion-reduce:animate-none! data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",
|
|
619
|
+
className
|
|
620
|
+
),
|
|
621
|
+
...props
|
|
622
|
+
}
|
|
623
|
+
)
|
|
624
|
+
}
|
|
625
|
+
) });
|
|
626
|
+
}
|
|
627
|
+
function ComboboxList({ className, ...props }) {
|
|
628
|
+
return /* @__PURE__ */ jsx(
|
|
629
|
+
Combobox$1.List,
|
|
630
|
+
{
|
|
631
|
+
"data-slot": "combobox-list",
|
|
632
|
+
className: cn(
|
|
633
|
+
"no-scrollbar max-h-[min(calc(--spacing(72)---spacing(9)),calc(var(--available-height)---spacing(9)))] scroll-py-1 overflow-y-auto overscroll-contain p-1 data-empty:p-0",
|
|
634
|
+
className
|
|
635
|
+
),
|
|
636
|
+
...props
|
|
637
|
+
}
|
|
638
|
+
);
|
|
639
|
+
}
|
|
640
|
+
function ComboboxItem({
|
|
641
|
+
className,
|
|
642
|
+
children,
|
|
643
|
+
...props
|
|
644
|
+
}) {
|
|
645
|
+
return /* @__PURE__ */ jsxs(
|
|
646
|
+
Combobox$1.Item,
|
|
647
|
+
{
|
|
648
|
+
"data-slot": "combobox-item",
|
|
649
|
+
className: cn(
|
|
650
|
+
"relative flex w-full cursor-default items-center gap-2 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none data-highlighted:bg-accent data-highlighted:text-accent-foreground not-data-[variant=destructive]:data-highlighted:**:text-accent-foreground data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
651
|
+
className
|
|
652
|
+
),
|
|
653
|
+
...props,
|
|
654
|
+
children: [
|
|
655
|
+
children,
|
|
656
|
+
/* @__PURE__ */ jsx(
|
|
657
|
+
Combobox$1.ItemIndicator,
|
|
658
|
+
{
|
|
659
|
+
render: /* @__PURE__ */ jsx("span", { className: "pointer-events-none absolute right-2 flex size-4 items-center justify-center" }),
|
|
660
|
+
children: /* @__PURE__ */ jsx(
|
|
661
|
+
CheckIcon,
|
|
662
|
+
{
|
|
663
|
+
className: "pointer-events-none"
|
|
664
|
+
}
|
|
665
|
+
)
|
|
666
|
+
}
|
|
667
|
+
)
|
|
668
|
+
]
|
|
669
|
+
}
|
|
670
|
+
);
|
|
671
|
+
}
|
|
672
|
+
function ComboboxGroup({ className, ...props }) {
|
|
673
|
+
return /* @__PURE__ */ jsx(
|
|
674
|
+
Combobox$1.Group,
|
|
675
|
+
{
|
|
676
|
+
"data-slot": "combobox-group",
|
|
677
|
+
className: cn(className),
|
|
678
|
+
...props
|
|
679
|
+
}
|
|
680
|
+
);
|
|
681
|
+
}
|
|
682
|
+
function ComboboxLabel({
|
|
683
|
+
className,
|
|
684
|
+
...props
|
|
685
|
+
}) {
|
|
686
|
+
return /* @__PURE__ */ jsx(
|
|
687
|
+
Combobox$1.GroupLabel,
|
|
688
|
+
{
|
|
689
|
+
"data-slot": "combobox-label",
|
|
690
|
+
className: cn("px-2 py-1.5 text-xs text-muted-foreground", className),
|
|
691
|
+
...props
|
|
692
|
+
}
|
|
693
|
+
);
|
|
694
|
+
}
|
|
695
|
+
function ComboboxCollection({ ...props }) {
|
|
696
|
+
return /* @__PURE__ */ jsx(Combobox$1.Collection, { "data-slot": "combobox-collection", ...props });
|
|
697
|
+
}
|
|
698
|
+
function ComboboxEmpty({ className, ...props }) {
|
|
699
|
+
return /* @__PURE__ */ jsx(
|
|
700
|
+
Combobox$1.Empty,
|
|
701
|
+
{
|
|
702
|
+
"data-slot": "combobox-empty",
|
|
703
|
+
className: cn(
|
|
704
|
+
"hidden w-full justify-center py-2 text-center text-sm text-muted-foreground group-data-empty/combobox-content:flex",
|
|
705
|
+
className
|
|
706
|
+
),
|
|
707
|
+
...props
|
|
708
|
+
}
|
|
709
|
+
);
|
|
710
|
+
}
|
|
711
|
+
function ComboboxSeparator({
|
|
712
|
+
className,
|
|
713
|
+
...props
|
|
714
|
+
}) {
|
|
715
|
+
return /* @__PURE__ */ jsx(
|
|
716
|
+
Combobox$1.Separator,
|
|
717
|
+
{
|
|
718
|
+
"data-slot": "combobox-separator",
|
|
719
|
+
className: cn("-mx-1 my-1 h-px bg-border", className),
|
|
720
|
+
...props
|
|
721
|
+
}
|
|
722
|
+
);
|
|
723
|
+
}
|
|
724
|
+
function ComboboxChips({
|
|
725
|
+
className,
|
|
726
|
+
...props
|
|
727
|
+
}) {
|
|
728
|
+
return /* @__PURE__ */ jsx(
|
|
729
|
+
Combobox$1.Chips,
|
|
730
|
+
{
|
|
731
|
+
"data-slot": "combobox-chips",
|
|
732
|
+
className: cn(
|
|
733
|
+
"flex min-h-8 flex-wrap items-center gap-1 rounded-lg border border-input bg-transparent bg-clip-padding px-2.5 py-1 text-sm transition-colors focus-within:border-ring focus-within:ring-3 focus-within:ring-ring/50 has-aria-invalid:border-destructive has-aria-invalid:ring-3 has-aria-invalid:ring-destructive/20 has-data-[slot=combobox-chip]:px-1 dark:bg-input/30 dark:has-aria-invalid:border-destructive/50 dark:has-aria-invalid:ring-destructive/40",
|
|
734
|
+
className
|
|
735
|
+
),
|
|
736
|
+
...props
|
|
737
|
+
}
|
|
738
|
+
);
|
|
739
|
+
}
|
|
740
|
+
function ComboboxChip({
|
|
741
|
+
className,
|
|
742
|
+
children,
|
|
743
|
+
showRemove = true,
|
|
744
|
+
...props
|
|
745
|
+
}) {
|
|
746
|
+
return /* @__PURE__ */ jsxs(
|
|
747
|
+
Combobox$1.Chip,
|
|
748
|
+
{
|
|
749
|
+
"data-slot": "combobox-chip",
|
|
750
|
+
className: cn(
|
|
751
|
+
"flex h-[calc(--spacing(5.25))] w-fit items-center justify-center gap-1 rounded-sm bg-muted px-1.5 text-xs font-medium whitespace-nowrap text-foreground has-disabled:pointer-events-none has-disabled:cursor-not-allowed has-disabled:opacity-50 has-data-[slot=combobox-chip-remove]:pr-0",
|
|
752
|
+
className
|
|
753
|
+
),
|
|
754
|
+
...props,
|
|
755
|
+
children: [
|
|
756
|
+
children,
|
|
757
|
+
showRemove && /* @__PURE__ */ jsx(
|
|
758
|
+
Combobox$1.ChipRemove,
|
|
759
|
+
{
|
|
760
|
+
render: /* @__PURE__ */ jsx(Button, { variant: "ghost", size: "icon-xs" }),
|
|
761
|
+
className: "-ml-1 opacity-50 hover:opacity-100",
|
|
762
|
+
"data-slot": "combobox-chip-remove",
|
|
763
|
+
children: /* @__PURE__ */ jsx(
|
|
764
|
+
XIcon,
|
|
765
|
+
{
|
|
766
|
+
className: "pointer-events-none"
|
|
767
|
+
}
|
|
768
|
+
)
|
|
769
|
+
}
|
|
770
|
+
)
|
|
771
|
+
]
|
|
772
|
+
}
|
|
773
|
+
);
|
|
774
|
+
}
|
|
775
|
+
function ComboboxChipsInput({
|
|
776
|
+
className,
|
|
777
|
+
...props
|
|
778
|
+
}) {
|
|
779
|
+
return /* @__PURE__ */ jsx(
|
|
780
|
+
Combobox$1.Input,
|
|
781
|
+
{
|
|
782
|
+
"data-slot": "combobox-chip-input",
|
|
783
|
+
className: cn("min-w-16 flex-1 outline-none", className),
|
|
784
|
+
...props
|
|
785
|
+
}
|
|
786
|
+
);
|
|
787
|
+
}
|
|
788
|
+
function useComboboxAnchor() {
|
|
789
|
+
return React6.useRef(null);
|
|
790
|
+
}
|
|
791
|
+
var DrawerContext = React6.createContext(null);
|
|
792
|
+
function useDrawer() {
|
|
793
|
+
const context = React6.useContext(DrawerContext);
|
|
794
|
+
if (!context) {
|
|
795
|
+
throw new Error("useDrawer must be used within a Drawer.");
|
|
796
|
+
}
|
|
797
|
+
return context;
|
|
798
|
+
}
|
|
799
|
+
function Drawer({
|
|
800
|
+
modal = true,
|
|
801
|
+
showSwipeHandle = false,
|
|
802
|
+
snapPoints,
|
|
803
|
+
swipeDirection = "down",
|
|
804
|
+
...props
|
|
805
|
+
}) {
|
|
806
|
+
const hasSnapPoints = snapPoints != null && snapPoints.length > 0;
|
|
807
|
+
const contextValue = React6.useMemo(
|
|
808
|
+
() => ({ hasSnapPoints, modal, showSwipeHandle, swipeDirection }),
|
|
809
|
+
[hasSnapPoints, modal, showSwipeHandle, swipeDirection]
|
|
810
|
+
);
|
|
811
|
+
return /* @__PURE__ */ jsx(DrawerContext.Provider, { value: contextValue, children: /* @__PURE__ */ jsx(
|
|
812
|
+
Drawer$1.Root,
|
|
813
|
+
{
|
|
814
|
+
"data-slot": "drawer",
|
|
815
|
+
modal,
|
|
816
|
+
snapPoints,
|
|
817
|
+
swipeDirection,
|
|
818
|
+
...props
|
|
819
|
+
}
|
|
820
|
+
) });
|
|
821
|
+
}
|
|
822
|
+
function DrawerTrigger({ ...props }) {
|
|
823
|
+
return /* @__PURE__ */ jsx(Drawer$1.Trigger, { "data-slot": "drawer-trigger", ...props });
|
|
824
|
+
}
|
|
825
|
+
function DrawerPortal({ ...props }) {
|
|
826
|
+
return /* @__PURE__ */ jsx(Drawer$1.Portal, { "data-slot": "drawer-portal", ...props });
|
|
827
|
+
}
|
|
828
|
+
function DrawerClose({ ...props }) {
|
|
829
|
+
return /* @__PURE__ */ jsx(Drawer$1.Close, { "data-slot": "drawer-close", ...props });
|
|
830
|
+
}
|
|
831
|
+
function DrawerOverlay({
|
|
832
|
+
className,
|
|
833
|
+
...props
|
|
834
|
+
}) {
|
|
835
|
+
return /* @__PURE__ */ jsx(
|
|
836
|
+
Drawer$1.Backdrop,
|
|
837
|
+
{
|
|
838
|
+
"data-slot": "drawer-overlay",
|
|
839
|
+
className: cn(
|
|
840
|
+
"fixed inset-0 z-50 min-h-dvh bg-black/10 opacity-[max(var(--drawer-overlay-min-opacity,0),calc(1-var(--drawer-swipe-progress)))] transition-opacity duration-450 ease-[cubic-bezier(0.32,0.72,0,1)] select-none data-ending-style:pointer-events-none data-ending-style:opacity-0 data-ending-style:duration-[calc(var(--drawer-swipe-strength)*400ms)] data-snap-points:[--drawer-overlay-min-opacity:0.5] data-starting-style:opacity-0 data-swiping:duration-0 supports-backdrop-filter:backdrop-blur-xs supports-[-webkit-touch-callout:none]:absolute",
|
|
841
|
+
className
|
|
842
|
+
),
|
|
843
|
+
...props
|
|
844
|
+
}
|
|
845
|
+
);
|
|
846
|
+
}
|
|
847
|
+
function DrawerSwipeHandle({
|
|
848
|
+
className,
|
|
849
|
+
...props
|
|
850
|
+
}) {
|
|
851
|
+
return /* @__PURE__ */ jsx(
|
|
852
|
+
"div",
|
|
853
|
+
{
|
|
854
|
+
"data-slot": "drawer-swipe-handle",
|
|
855
|
+
"aria-hidden": "true",
|
|
856
|
+
className: cn(
|
|
857
|
+
"relative z-10 flex shrink-0 cursor-grab transition-opacity duration-200 group-data-nested-drawer-open/drawer-popup:opacity-0 group-data-nested-drawer-swiping/drawer-popup:opacity-100 group-data-[swipe-axis=x]/drawer-popup:h-full group-data-[swipe-axis=x]/drawer-popup:w-3 group-data-[swipe-axis=x]/drawer-popup:items-center group-data-[swipe-axis=y]/drawer-popup:h-3 group-data-[swipe-axis=y]/drawer-popup:w-full group-data-[swipe-axis=y]/drawer-popup:justify-center group-data-[swipe-direction=down]/drawer-popup:items-end group-data-[swipe-direction=left]/drawer-popup:order-last group-data-[swipe-direction=left]/drawer-popup:justify-start group-data-[swipe-direction=right]/drawer-popup:justify-end group-data-[swipe-direction=up]/drawer-popup:order-last group-data-[swipe-direction=up]/drawer-popup:items-start after:block after:shrink-0 after:rounded-full after:bg-muted group-data-[swipe-axis=x]/drawer-popup:after:h-24 group-data-[swipe-axis=x]/drawer-popup:after:w-1 group-data-[swipe-axis=y]/drawer-popup:after:h-1 group-data-[swipe-axis=y]/drawer-popup:after:w-24 active:cursor-grabbing",
|
|
858
|
+
className
|
|
859
|
+
),
|
|
860
|
+
...props
|
|
861
|
+
}
|
|
862
|
+
);
|
|
863
|
+
}
|
|
864
|
+
function DrawerContent({
|
|
865
|
+
className,
|
|
866
|
+
children,
|
|
867
|
+
...props
|
|
868
|
+
}) {
|
|
869
|
+
const { hasSnapPoints, modal, showSwipeHandle, swipeDirection } = useDrawer();
|
|
870
|
+
const swipeAxis = swipeDirection === "down" || swipeDirection === "up" ? "y" : "x";
|
|
871
|
+
return /* @__PURE__ */ jsxs(DrawerPortal, { "data-slot": "drawer-portal", children: [
|
|
872
|
+
modal === true && /* @__PURE__ */ jsx(DrawerOverlay, { "data-snap-points": hasSnapPoints ? "" : void 0 }),
|
|
873
|
+
/* @__PURE__ */ jsx(
|
|
874
|
+
Drawer$1.Viewport,
|
|
875
|
+
{
|
|
876
|
+
"data-slot": "drawer-viewport",
|
|
877
|
+
"data-modal": modal,
|
|
878
|
+
className: "pointer-events-none fixed inset-0 z-50 select-none data-[modal=true]:pointer-events-auto",
|
|
879
|
+
children: /* @__PURE__ */ jsxs(
|
|
880
|
+
Drawer$1.Popup,
|
|
881
|
+
{
|
|
882
|
+
"data-slot": "drawer-popup",
|
|
883
|
+
"data-swipe-axis": swipeAxis,
|
|
884
|
+
"data-snap-points": hasSnapPoints ? "" : void 0,
|
|
885
|
+
className: cn(
|
|
886
|
+
// Base.
|
|
887
|
+
"group/drawer-popup pointer-events-auto fixed z-50 m-(--drawer-inset,0px) flex h-(--drawer-content-height) max-h-(--drawer-content-max-height,none) min-h-0 w-(--drawer-content-width,auto) transform-[translate3d(var(--translate-x,0px),var(--translate-y,0px),0)_scale(var(--stack-scale))] flex-col bg-popover text-sm text-popover-foreground transition-[transform,height,opacity,filter] duration-450 ease-[cubic-bezier(0.22,1,0.36,1)] will-change-transform outline-none select-none [interpolate-size:allow-keywords] data-[swipe-direction=down]:rounded-t-xl data-[swipe-direction=down]:border-t data-[swipe-direction=left]:rounded-r-xl data-[swipe-direction=left]:border-r data-[swipe-direction=right]:rounded-l-xl data-[swipe-direction=right]:border-l data-[swipe-direction=up]:rounded-b-xl data-[swipe-direction=up]:border-b",
|
|
888
|
+
// Nested.
|
|
889
|
+
"data-nested-drawer-open:overflow-hidden data-nested-drawer-open:brightness-95",
|
|
890
|
+
// Bleed.
|
|
891
|
+
"after:pointer-events-none after:absolute after:bg-(--drawer-bleed-background,var(--color-popover)) data-[swipe-axis=x]:after:inset-y-0 data-[swipe-axis=x]:after:w-(--bleed) data-[swipe-axis=y]:after:inset-x-0 data-[swipe-axis=y]:after:h-(--bleed) data-[swipe-direction=down]:after:top-full data-[swipe-direction=left]:after:right-full data-[swipe-direction=right]:after:left-full data-[swipe-direction=up]:after:bottom-full",
|
|
892
|
+
// Sizing.
|
|
893
|
+
"[--drawer-content-height:var(--drawer-height,auto)] data-[swipe-axis=x]:[--drawer-content-width:75%] data-[swipe-axis=y]:[--drawer-content-max-height:calc(100dvh-6rem)] data-[swipe-axis=y]:data-snap-points:[--drawer-content-height:100dvh] data-[swipe-axis=x]:sm:[--drawer-content-width:24rem]",
|
|
894
|
+
// Stack.
|
|
895
|
+
"[--bleed:3rem] [--peek:1rem] [--stack-height:var(--drawer-frontmost-height,var(--drawer-height,0px))] [--stack-peek-offset:max(0px,calc((var(--nested-drawers)-var(--stack-progress))*var(--peek)))] [--stack-progress:clamp(0,var(--drawer-swipe-progress),1)] [--stack-scale-base:max(0,calc(1-(var(--nested-drawers)*var(--stack-step))))] [--stack-scale:clamp(0,calc(var(--stack-scale-base)+(var(--stack-step)*var(--stack-progress))),1)] [--stack-shrink:calc(1-var(--stack-scale))] [--stack-step:0.05]",
|
|
896
|
+
// Transitions.
|
|
897
|
+
"data-ending-style:transform-(--closed-transform) data-ending-style:opacity-[0.9999] data-ending-style:duration-[calc(var(--drawer-swipe-strength)*400ms)] data-nested-drawer-swiping:duration-0 data-ending-style:data-nested-drawer-swiping:duration-[calc(var(--drawer-swipe-strength)*400ms)] data-starting-style:transform-(--closed-transform) data-swiping:duration-0 data-ending-style:data-swiping:duration-[calc(var(--drawer-swipe-strength)*400ms)]",
|
|
898
|
+
// Axis: y.
|
|
899
|
+
"data-[swipe-axis=y]:inset-x-0 data-[swipe-axis=y]:data-nested-drawer-open:h-(--stack-height)",
|
|
900
|
+
// Axis: x.
|
|
901
|
+
"data-[swipe-axis=x]:inset-y-0 data-[swipe-axis=x]:flex-row",
|
|
902
|
+
// Direction: down.
|
|
903
|
+
"data-[swipe-direction=down]:bottom-0 data-[swipe-direction=down]:origin-bottom data-[swipe-direction=down]:[--closed-transform:translate3d(0,calc(100%+var(--drawer-inset,0px)+2px),0)] data-[swipe-direction=down]:[--translate-y:calc(var(--drawer-snap-point-offset,0px)+var(--drawer-swipe-movement-y)-var(--stack-peek-offset)-(var(--stack-shrink)*var(--stack-height)))]",
|
|
904
|
+
// Direction: up.
|
|
905
|
+
"data-[swipe-direction=up]:top-0 data-[swipe-direction=up]:origin-top data-[swipe-direction=up]:[--closed-transform:translate3d(0,calc(-100%-var(--drawer-inset,0px)-2px),0)] data-[swipe-direction=up]:[--translate-y:calc(var(--drawer-snap-point-offset,0px)+var(--drawer-swipe-movement-y)+var(--stack-peek-offset)+(var(--stack-shrink)*var(--stack-height)))]",
|
|
906
|
+
// Direction: left.
|
|
907
|
+
"data-[swipe-direction=left]:left-0 data-[swipe-direction=left]:origin-left data-[swipe-direction=left]:[--closed-transform:translate3d(calc(-100%-var(--drawer-inset,0px)-2px),0,0)] data-[swipe-direction=left]:[--translate-x:calc(var(--drawer-swipe-movement-x)+var(--stack-peek-offset)+(var(--stack-shrink)*100%))]",
|
|
908
|
+
// Direction: right.
|
|
909
|
+
"data-[swipe-direction=right]:right-0 data-[swipe-direction=right]:origin-right data-[swipe-direction=right]:[--closed-transform:translate3d(calc(100%+var(--drawer-inset,0px)+2px),0,0)] data-[swipe-direction=right]:[--translate-x:calc(var(--drawer-swipe-movement-x)-var(--stack-peek-offset)-(var(--stack-shrink)*100%))]",
|
|
910
|
+
className
|
|
911
|
+
),
|
|
912
|
+
...props,
|
|
913
|
+
children: [
|
|
914
|
+
showSwipeHandle && /* @__PURE__ */ jsx(DrawerSwipeHandle, {}),
|
|
915
|
+
/* @__PURE__ */ jsx(
|
|
916
|
+
Drawer$1.Content,
|
|
917
|
+
{
|
|
918
|
+
"data-slot": "drawer-content",
|
|
919
|
+
className: cn(
|
|
920
|
+
"flex min-h-0 flex-1 flex-col overflow-hidden overscroll-contain rounded-[inherit] transition-opacity duration-300 ease-[cubic-bezier(0.45,1.005,0,1.005)] select-text group-data-nested-drawer-open/drawer-popup:opacity-0 group-data-nested-drawer-swiping/drawer-popup:opacity-100 group-data-swiping/drawer-popup:select-none"
|
|
921
|
+
),
|
|
922
|
+
children
|
|
923
|
+
}
|
|
924
|
+
)
|
|
925
|
+
]
|
|
926
|
+
}
|
|
927
|
+
)
|
|
928
|
+
}
|
|
929
|
+
)
|
|
930
|
+
] });
|
|
931
|
+
}
|
|
932
|
+
function DrawerHeader({ className, ...props }) {
|
|
933
|
+
return /* @__PURE__ */ jsx(
|
|
934
|
+
"div",
|
|
935
|
+
{
|
|
936
|
+
"data-slot": "drawer-header",
|
|
937
|
+
className: cn(
|
|
938
|
+
"flex shrink-0 flex-col gap-0.5 p-4 pb-0 group-data-[swipe-axis=y]/drawer-popup:text-center md:gap-0.5 md:text-left",
|
|
939
|
+
className
|
|
940
|
+
),
|
|
941
|
+
...props
|
|
942
|
+
}
|
|
943
|
+
);
|
|
944
|
+
}
|
|
945
|
+
function DrawerFooter({ className, ...props }) {
|
|
946
|
+
return /* @__PURE__ */ jsx(
|
|
947
|
+
"div",
|
|
948
|
+
{
|
|
949
|
+
"data-slot": "drawer-footer",
|
|
950
|
+
className: cn("mt-auto flex shrink-0 flex-col gap-2 p-4 pt-0", className),
|
|
951
|
+
...props
|
|
952
|
+
}
|
|
953
|
+
);
|
|
954
|
+
}
|
|
955
|
+
function DrawerTitle({ className, ...props }) {
|
|
956
|
+
return /* @__PURE__ */ jsx(
|
|
957
|
+
Drawer$1.Title,
|
|
958
|
+
{
|
|
959
|
+
"data-slot": "drawer-title",
|
|
960
|
+
className: cn(
|
|
961
|
+
"cn-font-heading text-base font-medium text-foreground",
|
|
962
|
+
className
|
|
963
|
+
),
|
|
964
|
+
...props
|
|
965
|
+
}
|
|
966
|
+
);
|
|
967
|
+
}
|
|
968
|
+
function DrawerDescription({
|
|
969
|
+
className,
|
|
970
|
+
...props
|
|
971
|
+
}) {
|
|
972
|
+
return /* @__PURE__ */ jsx(
|
|
973
|
+
Drawer$1.Description,
|
|
974
|
+
{
|
|
975
|
+
"data-slot": "drawer-description",
|
|
976
|
+
className: cn("text-sm text-balance text-muted-foreground", className),
|
|
977
|
+
...props
|
|
978
|
+
}
|
|
979
|
+
);
|
|
980
|
+
}
|
|
981
|
+
function Label({ className, ...props }) {
|
|
982
|
+
return /* @__PURE__ */ jsx(
|
|
983
|
+
"label",
|
|
984
|
+
{
|
|
985
|
+
"data-slot": "label",
|
|
986
|
+
className: cn(
|
|
987
|
+
"flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",
|
|
988
|
+
className
|
|
989
|
+
),
|
|
990
|
+
...props
|
|
991
|
+
}
|
|
992
|
+
);
|
|
993
|
+
}
|
|
994
|
+
function FieldSet({ className, ...props }) {
|
|
995
|
+
return /* @__PURE__ */ jsx(
|
|
996
|
+
"fieldset",
|
|
997
|
+
{
|
|
998
|
+
"data-slot": "field-set",
|
|
999
|
+
className: cn(
|
|
1000
|
+
"flex flex-col gap-4 has-[>[data-slot=checkbox-group]]:gap-3 has-[>[data-slot=radio-group]]:gap-3",
|
|
1001
|
+
className
|
|
1002
|
+
),
|
|
1003
|
+
...props
|
|
1004
|
+
}
|
|
1005
|
+
);
|
|
1006
|
+
}
|
|
1007
|
+
function FieldLegend({
|
|
1008
|
+
className,
|
|
1009
|
+
variant = "legend",
|
|
1010
|
+
...props
|
|
1011
|
+
}) {
|
|
1012
|
+
return /* @__PURE__ */ jsx(
|
|
1013
|
+
"legend",
|
|
1014
|
+
{
|
|
1015
|
+
"data-slot": "field-legend",
|
|
1016
|
+
"data-variant": variant,
|
|
1017
|
+
className: cn(
|
|
1018
|
+
"mb-1.5 font-medium data-[variant=label]:text-sm data-[variant=legend]:text-base",
|
|
1019
|
+
className
|
|
1020
|
+
),
|
|
1021
|
+
...props
|
|
1022
|
+
}
|
|
1023
|
+
);
|
|
1024
|
+
}
|
|
1025
|
+
function FieldGroup({ className, ...props }) {
|
|
1026
|
+
return /* @__PURE__ */ jsx(
|
|
1027
|
+
"div",
|
|
1028
|
+
{
|
|
1029
|
+
"data-slot": "field-group",
|
|
1030
|
+
className: cn(
|
|
1031
|
+
"group/field-group @container/field-group flex w-full flex-col gap-5 data-[slot=checkbox-group]:gap-3 *:data-[slot=field-group]:gap-4",
|
|
1032
|
+
className
|
|
1033
|
+
),
|
|
1034
|
+
...props
|
|
1035
|
+
}
|
|
1036
|
+
);
|
|
1037
|
+
}
|
|
1038
|
+
var fieldVariants = cva(
|
|
1039
|
+
"group/field flex w-full gap-2 data-[invalid=true]:text-destructive",
|
|
1040
|
+
{
|
|
1041
|
+
variants: {
|
|
1042
|
+
orientation: {
|
|
1043
|
+
vertical: "flex-col *:w-full [&>.sr-only]:w-auto",
|
|
1044
|
+
horizontal: "flex-row items-center has-[>[data-slot=field-content]]:items-start *:data-[slot=field-label]:flex-auto has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px",
|
|
1045
|
+
responsive: "flex-col *:w-full @md/field-group:flex-row @md/field-group:items-center @md/field-group:*:w-auto @md/field-group:has-[>[data-slot=field-content]]:items-start @md/field-group:*:data-[slot=field-label]:flex-auto [&>.sr-only]:w-auto @md/field-group:has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px"
|
|
1046
|
+
}
|
|
1047
|
+
},
|
|
1048
|
+
defaultVariants: {
|
|
1049
|
+
orientation: "vertical"
|
|
1050
|
+
}
|
|
1051
|
+
}
|
|
1052
|
+
);
|
|
1053
|
+
function Field({
|
|
1054
|
+
className,
|
|
1055
|
+
orientation = "vertical",
|
|
1056
|
+
...props
|
|
1057
|
+
}) {
|
|
1058
|
+
return /* @__PURE__ */ jsx(
|
|
1059
|
+
"div",
|
|
1060
|
+
{
|
|
1061
|
+
role: "group",
|
|
1062
|
+
"data-slot": "field",
|
|
1063
|
+
"data-orientation": orientation,
|
|
1064
|
+
className: cn(fieldVariants({ orientation }), className),
|
|
1065
|
+
...props
|
|
1066
|
+
}
|
|
1067
|
+
);
|
|
1068
|
+
}
|
|
1069
|
+
function FieldContent({ className, ...props }) {
|
|
1070
|
+
return /* @__PURE__ */ jsx(
|
|
1071
|
+
"div",
|
|
1072
|
+
{
|
|
1073
|
+
"data-slot": "field-content",
|
|
1074
|
+
className: cn(
|
|
1075
|
+
"group/field-content flex flex-1 flex-col gap-0.5 leading-snug",
|
|
1076
|
+
className
|
|
1077
|
+
),
|
|
1078
|
+
...props
|
|
1079
|
+
}
|
|
1080
|
+
);
|
|
1081
|
+
}
|
|
1082
|
+
function FieldLabel({
|
|
1083
|
+
className,
|
|
1084
|
+
...props
|
|
1085
|
+
}) {
|
|
1086
|
+
return /* @__PURE__ */ jsx(
|
|
1087
|
+
Label,
|
|
1088
|
+
{
|
|
1089
|
+
"data-slot": "field-label",
|
|
1090
|
+
className: cn(
|
|
1091
|
+
"group/field-label peer/field-label flex w-fit gap-2 leading-snug group-data-[disabled=true]/field:opacity-50 has-data-checked:border-primary/30 has-data-checked:bg-primary/5 has-[>[data-slot=field]]:rounded-lg has-[>[data-slot=field]]:border has-[>[data-slot=field]]:not-has-[:disabled,[data-disabled]]:hover:bg-muted/50 has-[>[data-slot=field]]:has-[:focus-visible]:border-ring has-[>[data-slot=field]]:has-[:focus-visible]:ring-3 has-[>[data-slot=field]]:has-[:focus-visible]:ring-ring/50 *:data-[slot=field]:p-2.5 dark:has-data-checked:border-primary/20 dark:has-data-checked:bg-primary/10",
|
|
1092
|
+
"has-[>[data-slot=field]]:w-full has-[>[data-slot=field]]:flex-col",
|
|
1093
|
+
className
|
|
1094
|
+
),
|
|
1095
|
+
...props
|
|
1096
|
+
}
|
|
1097
|
+
);
|
|
1098
|
+
}
|
|
1099
|
+
function FieldTitle({ className, ...props }) {
|
|
1100
|
+
return /* @__PURE__ */ jsx(
|
|
1101
|
+
"div",
|
|
1102
|
+
{
|
|
1103
|
+
"data-slot": "field-label",
|
|
1104
|
+
className: cn(
|
|
1105
|
+
"flex w-fit items-center gap-2 text-sm font-medium group-data-[disabled=true]/field:opacity-50",
|
|
1106
|
+
className
|
|
1107
|
+
),
|
|
216
1108
|
...props
|
|
217
1109
|
}
|
|
218
1110
|
);
|
|
219
1111
|
}
|
|
220
|
-
function
|
|
221
|
-
children,
|
|
222
|
-
className,
|
|
223
|
-
...props
|
|
224
|
-
}) {
|
|
1112
|
+
function FieldDescription({ className, ...props }) {
|
|
225
1113
|
return /* @__PURE__ */ jsx(
|
|
226
|
-
"
|
|
1114
|
+
"p",
|
|
227
1115
|
{
|
|
228
|
-
"data-slot": "
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
1116
|
+
"data-slot": "field-description",
|
|
1117
|
+
className: cn(
|
|
1118
|
+
"text-left text-sm leading-normal font-normal text-muted-foreground group-has-data-horizontal/field:text-balance [[data-variant=legend]+&]:-mt-1.5",
|
|
1119
|
+
"last:mt-0 nth-last-2:-mt-1",
|
|
1120
|
+
"[&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary",
|
|
1121
|
+
className
|
|
1122
|
+
),
|
|
1123
|
+
...props
|
|
234
1124
|
}
|
|
235
1125
|
);
|
|
236
1126
|
}
|
|
237
|
-
function
|
|
1127
|
+
function FieldSeparator({
|
|
1128
|
+
children,
|
|
238
1129
|
className,
|
|
239
1130
|
...props
|
|
240
1131
|
}) {
|
|
241
1132
|
return /* @__PURE__ */ jsxs(
|
|
242
|
-
"
|
|
1133
|
+
"div",
|
|
243
1134
|
{
|
|
244
|
-
"data-slot": "
|
|
245
|
-
|
|
246
|
-
"aria-hidden": "true",
|
|
1135
|
+
"data-slot": "field-separator",
|
|
1136
|
+
"data-content": !!children,
|
|
247
1137
|
className: cn(
|
|
248
|
-
"
|
|
1138
|
+
"relative -my-2 h-5 text-sm group-data-[variant=outline]/field-group:-mb-2",
|
|
249
1139
|
className
|
|
250
1140
|
),
|
|
251
1141
|
...props,
|
|
252
1142
|
children: [
|
|
253
|
-
/* @__PURE__ */ jsx(
|
|
254
|
-
/* @__PURE__ */ jsx(
|
|
1143
|
+
/* @__PURE__ */ jsx(Separator, { className: "absolute inset-0 top-1/2" }),
|
|
1144
|
+
children && /* @__PURE__ */ jsx(
|
|
1145
|
+
"span",
|
|
1146
|
+
{
|
|
1147
|
+
className: "relative mx-auto block w-fit bg-background px-2 text-muted-foreground",
|
|
1148
|
+
"data-slot": "field-separator-content",
|
|
1149
|
+
children
|
|
1150
|
+
}
|
|
1151
|
+
)
|
|
255
1152
|
]
|
|
256
1153
|
}
|
|
257
1154
|
);
|
|
258
1155
|
}
|
|
259
|
-
function
|
|
1156
|
+
function FieldError({
|
|
260
1157
|
className,
|
|
261
|
-
|
|
1158
|
+
children,
|
|
1159
|
+
errors,
|
|
262
1160
|
...props
|
|
263
1161
|
}) {
|
|
1162
|
+
const content = useMemo(() => {
|
|
1163
|
+
if (children) {
|
|
1164
|
+
return children;
|
|
1165
|
+
}
|
|
1166
|
+
if (!errors?.length) {
|
|
1167
|
+
return null;
|
|
1168
|
+
}
|
|
1169
|
+
const uniqueErrors = [
|
|
1170
|
+
...new Map(errors.map((error) => [error?.message, error])).values()
|
|
1171
|
+
];
|
|
1172
|
+
if (uniqueErrors?.length == 1) {
|
|
1173
|
+
return uniqueErrors[0]?.message;
|
|
1174
|
+
}
|
|
1175
|
+
return /* @__PURE__ */ jsx("ul", { className: "ml-4 flex list-disc flex-col gap-1", children: uniqueErrors.map(
|
|
1176
|
+
(error, index) => error?.message && /* @__PURE__ */ jsx("li", { children: error.message }, index)
|
|
1177
|
+
) });
|
|
1178
|
+
}, [children, errors]);
|
|
1179
|
+
if (!content) {
|
|
1180
|
+
return null;
|
|
1181
|
+
}
|
|
264
1182
|
return /* @__PURE__ */ jsx(
|
|
265
1183
|
"div",
|
|
266
1184
|
{
|
|
267
|
-
|
|
268
|
-
"data-
|
|
269
|
-
className: cn(
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
),
|
|
273
|
-
...props
|
|
1185
|
+
role: "alert",
|
|
1186
|
+
"data-slot": "field-error",
|
|
1187
|
+
className: cn("text-sm font-normal text-destructive", className),
|
|
1188
|
+
...props,
|
|
1189
|
+
children: content
|
|
274
1190
|
}
|
|
275
1191
|
);
|
|
276
1192
|
}
|
|
277
|
-
function
|
|
1193
|
+
function HoverCard({ ...props }) {
|
|
1194
|
+
return /* @__PURE__ */ jsx(PreviewCard.Root, { "data-slot": "hover-card", ...props });
|
|
1195
|
+
}
|
|
1196
|
+
function HoverCardTrigger({ ...props }) {
|
|
1197
|
+
return /* @__PURE__ */ jsx(PreviewCard.Trigger, { "data-slot": "hover-card-trigger", ...props });
|
|
1198
|
+
}
|
|
1199
|
+
function HoverCardContent({
|
|
1200
|
+
className,
|
|
1201
|
+
side = "bottom",
|
|
1202
|
+
sideOffset = 4,
|
|
1203
|
+
align = "center",
|
|
1204
|
+
alignOffset = 4,
|
|
1205
|
+
...props
|
|
1206
|
+
}) {
|
|
1207
|
+
return /* @__PURE__ */ jsx(PreviewCard.Portal, { "data-slot": "hover-card-portal", children: /* @__PURE__ */ jsx(
|
|
1208
|
+
PreviewCard.Positioner,
|
|
1209
|
+
{
|
|
1210
|
+
align,
|
|
1211
|
+
alignOffset,
|
|
1212
|
+
side,
|
|
1213
|
+
sideOffset,
|
|
1214
|
+
className: "isolate z-50",
|
|
1215
|
+
children: /* @__PURE__ */ jsx(
|
|
1216
|
+
PreviewCard.Popup,
|
|
1217
|
+
{
|
|
1218
|
+
"data-slot": "hover-card-content",
|
|
1219
|
+
className: cn(
|
|
1220
|
+
"z-50 w-64 origin-(--transform-origin) rounded-lg bg-popover p-2.5 text-sm text-popover-foreground shadow-md ring-1 ring-foreground/10 outline-hidden duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-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 data-open:animate-in motion-reduce:animate-none! data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",
|
|
1221
|
+
className
|
|
1222
|
+
),
|
|
1223
|
+
...props
|
|
1224
|
+
}
|
|
1225
|
+
)
|
|
1226
|
+
}
|
|
1227
|
+
) });
|
|
1228
|
+
}
|
|
1229
|
+
function Kbd({ className, ...props }) {
|
|
278
1230
|
return /* @__PURE__ */ jsx(
|
|
279
|
-
"
|
|
1231
|
+
"kbd",
|
|
280
1232
|
{
|
|
281
|
-
"data-slot": "
|
|
1233
|
+
"data-slot": "kbd",
|
|
282
1234
|
className: cn(
|
|
283
|
-
"
|
|
1235
|
+
"pointer-events-none inline-flex h-5 w-fit min-w-5 items-center justify-center gap-1 rounded-sm bg-muted px-1 font-sans text-xs font-medium text-muted-foreground select-none in-data-[slot=tooltip-content]:bg-background/20 in-data-[slot=tooltip-content]:text-background dark:in-data-[slot=tooltip-content]:bg-background/10 [&_svg:not([class*='size-'])]:size-3",
|
|
284
1236
|
className
|
|
285
1237
|
),
|
|
286
1238
|
...props
|
|
287
1239
|
}
|
|
288
1240
|
);
|
|
289
1241
|
}
|
|
290
|
-
function
|
|
1242
|
+
function KbdGroup({ className, ...props }) {
|
|
291
1243
|
return /* @__PURE__ */ jsx(
|
|
292
|
-
"
|
|
1244
|
+
"kbd",
|
|
293
1245
|
{
|
|
294
|
-
"data-slot": "
|
|
295
|
-
className: cn(
|
|
296
|
-
"cn-font-heading text-base leading-snug font-medium group-data-[size=sm]/card:text-sm",
|
|
297
|
-
className
|
|
298
|
-
),
|
|
1246
|
+
"data-slot": "kbd-group",
|
|
1247
|
+
className: cn("inline-flex items-center gap-1", className),
|
|
299
1248
|
...props
|
|
300
1249
|
}
|
|
301
1250
|
);
|
|
302
1251
|
}
|
|
303
|
-
function
|
|
1252
|
+
function Pagination({ className, ...props }) {
|
|
304
1253
|
return /* @__PURE__ */ jsx(
|
|
305
|
-
"
|
|
1254
|
+
"nav",
|
|
306
1255
|
{
|
|
307
|
-
|
|
308
|
-
|
|
1256
|
+
role: "navigation",
|
|
1257
|
+
"aria-label": "pagination",
|
|
1258
|
+
"data-slot": "pagination",
|
|
1259
|
+
className: cn("mx-auto flex w-full justify-center", className),
|
|
309
1260
|
...props
|
|
310
1261
|
}
|
|
311
1262
|
);
|
|
312
1263
|
}
|
|
313
|
-
function
|
|
1264
|
+
function PaginationContent({
|
|
1265
|
+
className,
|
|
1266
|
+
...props
|
|
1267
|
+
}) {
|
|
314
1268
|
return /* @__PURE__ */ jsx(
|
|
315
|
-
"
|
|
1269
|
+
"ul",
|
|
316
1270
|
{
|
|
317
|
-
"data-slot": "
|
|
318
|
-
className: cn(
|
|
319
|
-
"col-start-2 row-span-2 row-start-1 self-start justify-self-end",
|
|
320
|
-
className
|
|
321
|
-
),
|
|
1271
|
+
"data-slot": "pagination-content",
|
|
1272
|
+
className: cn("flex items-center gap-0.5", className),
|
|
322
1273
|
...props
|
|
323
1274
|
}
|
|
324
1275
|
);
|
|
325
1276
|
}
|
|
326
|
-
function
|
|
1277
|
+
function PaginationItem({ ...props }) {
|
|
1278
|
+
return /* @__PURE__ */ jsx("li", { "data-slot": "pagination-item", ...props });
|
|
1279
|
+
}
|
|
1280
|
+
function PaginationLink({
|
|
1281
|
+
className,
|
|
1282
|
+
isActive,
|
|
1283
|
+
size = "icon",
|
|
1284
|
+
...props
|
|
1285
|
+
}) {
|
|
327
1286
|
return /* @__PURE__ */ jsx(
|
|
328
|
-
|
|
1287
|
+
Button,
|
|
329
1288
|
{
|
|
330
|
-
"
|
|
331
|
-
|
|
332
|
-
|
|
1289
|
+
variant: isActive ? "outline" : "ghost",
|
|
1290
|
+
size,
|
|
1291
|
+
className: cn(className),
|
|
1292
|
+
nativeButton: false,
|
|
1293
|
+
render: /* @__PURE__ */ jsx(
|
|
1294
|
+
"a",
|
|
1295
|
+
{
|
|
1296
|
+
"aria-current": isActive ? "page" : void 0,
|
|
1297
|
+
"data-slot": "pagination-link",
|
|
1298
|
+
"data-active": isActive,
|
|
1299
|
+
...props
|
|
1300
|
+
}
|
|
1301
|
+
)
|
|
333
1302
|
}
|
|
334
1303
|
);
|
|
335
1304
|
}
|
|
336
|
-
function
|
|
337
|
-
|
|
338
|
-
|
|
1305
|
+
function PaginationPrevious({
|
|
1306
|
+
className,
|
|
1307
|
+
text = "Previous",
|
|
1308
|
+
...props
|
|
1309
|
+
}) {
|
|
1310
|
+
return /* @__PURE__ */ jsxs(
|
|
1311
|
+
PaginationLink,
|
|
339
1312
|
{
|
|
340
|
-
"
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
1313
|
+
"aria-label": "Go to previous page",
|
|
1314
|
+
size: "default",
|
|
1315
|
+
className: cn("pl-1.5!", className),
|
|
1316
|
+
...props,
|
|
1317
|
+
children: [
|
|
1318
|
+
/* @__PURE__ */ jsx(
|
|
1319
|
+
ChevronLeftIcon,
|
|
1320
|
+
{
|
|
1321
|
+
"data-icon": "inline-start",
|
|
1322
|
+
className: "cn-rtl-flip"
|
|
1323
|
+
}
|
|
1324
|
+
),
|
|
1325
|
+
/* @__PURE__ */ jsx("span", { className: "hidden sm:block", children: text })
|
|
1326
|
+
]
|
|
346
1327
|
}
|
|
347
1328
|
);
|
|
348
1329
|
}
|
|
349
|
-
function
|
|
350
|
-
|
|
351
|
-
|
|
1330
|
+
function PaginationNext({
|
|
1331
|
+
className,
|
|
1332
|
+
text = "Next",
|
|
1333
|
+
...props
|
|
1334
|
+
}) {
|
|
1335
|
+
return /* @__PURE__ */ jsxs(
|
|
1336
|
+
PaginationLink,
|
|
352
1337
|
{
|
|
353
|
-
"
|
|
1338
|
+
"aria-label": "Go to next page",
|
|
1339
|
+
size: "default",
|
|
1340
|
+
className: cn("pr-1.5!", className),
|
|
1341
|
+
...props,
|
|
1342
|
+
children: [
|
|
1343
|
+
/* @__PURE__ */ jsx("span", { className: "hidden sm:block", children: text }),
|
|
1344
|
+
/* @__PURE__ */ jsx(
|
|
1345
|
+
ChevronRightIcon,
|
|
1346
|
+
{
|
|
1347
|
+
"data-icon": "inline-end",
|
|
1348
|
+
className: "cn-rtl-flip"
|
|
1349
|
+
}
|
|
1350
|
+
)
|
|
1351
|
+
]
|
|
1352
|
+
}
|
|
1353
|
+
);
|
|
1354
|
+
}
|
|
1355
|
+
function PaginationEllipsis({
|
|
1356
|
+
className,
|
|
1357
|
+
...props
|
|
1358
|
+
}) {
|
|
1359
|
+
return /* @__PURE__ */ jsxs(
|
|
1360
|
+
"span",
|
|
1361
|
+
{
|
|
1362
|
+
"aria-hidden": true,
|
|
1363
|
+
"data-slot": "pagination-ellipsis",
|
|
354
1364
|
className: cn(
|
|
355
|
-
"flex items-center
|
|
1365
|
+
"flex size-8 items-center justify-center [&_svg:not([class*='size-'])]:size-4",
|
|
356
1366
|
className
|
|
357
1367
|
),
|
|
358
|
-
...props
|
|
1368
|
+
...props,
|
|
1369
|
+
children: [
|
|
1370
|
+
/* @__PURE__ */ jsx(
|
|
1371
|
+
MoreHorizontalIcon,
|
|
1372
|
+
{}
|
|
1373
|
+
),
|
|
1374
|
+
/* @__PURE__ */ jsx("span", { className: "sr-only", children: "More pages" })
|
|
1375
|
+
]
|
|
359
1376
|
}
|
|
360
1377
|
);
|
|
361
1378
|
}
|
|
@@ -428,6 +1445,37 @@ function ProgressValue({ className, ...props }) {
|
|
|
428
1445
|
}
|
|
429
1446
|
);
|
|
430
1447
|
}
|
|
1448
|
+
function RadioGroup({ className, ...props }) {
|
|
1449
|
+
return /* @__PURE__ */ jsx(
|
|
1450
|
+
RadioGroup$1,
|
|
1451
|
+
{
|
|
1452
|
+
"data-slot": "radio-group",
|
|
1453
|
+
className: cn("grid w-full gap-2", className),
|
|
1454
|
+
...props
|
|
1455
|
+
}
|
|
1456
|
+
);
|
|
1457
|
+
}
|
|
1458
|
+
function RadioGroupItem({ className, ...props }) {
|
|
1459
|
+
return /* @__PURE__ */ jsx(
|
|
1460
|
+
Radio.Root,
|
|
1461
|
+
{
|
|
1462
|
+
"data-slot": "radio-group-item",
|
|
1463
|
+
className: cn(
|
|
1464
|
+
"group/radio-group-item peer relative flex aspect-square size-4 shrink-0 rounded-full border border-input outline-none group-has-[:focus-visible]/field-label:ring-0 group-has-[:focus-visible]/field-label:not-data-checked:border-input after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 aria-invalid:aria-checked:border-primary dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:border-primary data-checked:bg-primary data-checked:text-primary-foreground group-has-[:focus-visible]/field-label:data-checked:border-primary dark:data-checked:bg-primary",
|
|
1465
|
+
className
|
|
1466
|
+
),
|
|
1467
|
+
...props,
|
|
1468
|
+
children: /* @__PURE__ */ jsx(
|
|
1469
|
+
Radio.Indicator,
|
|
1470
|
+
{
|
|
1471
|
+
"data-slot": "radio-group-indicator",
|
|
1472
|
+
className: "flex size-4 items-center justify-center",
|
|
1473
|
+
children: /* @__PURE__ */ jsx("span", { className: "absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2 rounded-full bg-primary-foreground" })
|
|
1474
|
+
}
|
|
1475
|
+
)
|
|
1476
|
+
}
|
|
1477
|
+
);
|
|
1478
|
+
}
|
|
431
1479
|
function ScrollArea({
|
|
432
1480
|
className,
|
|
433
1481
|
children,
|
|
@@ -608,7 +1656,7 @@ function TabsTrigger({ className, ...props }) {
|
|
|
608
1656
|
{
|
|
609
1657
|
"data-slot": "tabs-trigger",
|
|
610
1658
|
className: cn(
|
|
611
|
-
"relative inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-1.5 py-0.5 text-sm font-medium whitespace-nowrap text-foreground/60 transition-
|
|
1659
|
+
"relative inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-1.5 py-0.5 text-sm font-medium whitespace-nowrap text-foreground/60 transition-[color,background-color,border-color,box-shadow] group-data-vertical/tabs:w-full group-data-vertical/tabs:justify-start hover:text-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 has-data-[icon=inline-end]:pr-1 has-data-[icon=inline-start]:pl-1 aria-disabled:pointer-events-none aria-disabled:opacity-50 dark:text-muted-foreground dark:hover:text-foreground group-data-[variant=default]/tabs-list:data-active:shadow-sm group-data-[variant=line]/tabs-list:data-active:shadow-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
612
1660
|
"group-data-[variant=line]/tabs-list:bg-transparent group-data-[variant=line]/tabs-list:data-active:bg-transparent dark:group-data-[variant=line]/tabs-list:data-active:border-transparent dark:group-data-[variant=line]/tabs-list:data-active:bg-transparent",
|
|
613
1661
|
"data-active:bg-background data-active:text-foreground dark:data-active:border-input dark:data-active:bg-input/30 dark:data-active:text-foreground",
|
|
614
1662
|
"after:absolute after:bg-foreground after:opacity-0 after:transition-opacity group-data-horizontal/tabs:after:inset-x-0 group-data-horizontal/tabs:after:bottom-[-5px] group-data-horizontal/tabs:after:h-0.5 group-data-vertical/tabs:after:inset-y-0 group-data-vertical/tabs:after:-right-1 group-data-vertical/tabs:after:w-0.5 group-data-[variant=line]/tabs-list:data-active:after:opacity-100",
|
|
@@ -623,12 +1671,216 @@ function TabsContent({ className, ...props }) {
|
|
|
623
1671
|
Tabs$1.Panel,
|
|
624
1672
|
{
|
|
625
1673
|
"data-slot": "tabs-content",
|
|
626
|
-
className: cn("flex-1 text-sm outline-none", className),
|
|
1674
|
+
className: cn("flex-1 text-sm outline-none focus-visible:ring-[3px] focus-visible:ring-ring/50", className),
|
|
1675
|
+
...props
|
|
1676
|
+
}
|
|
1677
|
+
);
|
|
1678
|
+
}
|
|
1679
|
+
var toast = Toast$1.createToastManager();
|
|
1680
|
+
function ToastProvider({ ...props }) {
|
|
1681
|
+
return /* @__PURE__ */ jsx(Toast$1.Provider, { ...props });
|
|
1682
|
+
}
|
|
1683
|
+
function ToastPortal({ ...props }) {
|
|
1684
|
+
return /* @__PURE__ */ jsx(Toast$1.Portal, { "data-slot": "toast-portal", ...props });
|
|
1685
|
+
}
|
|
1686
|
+
function ToastViewport({ className, ...props }) {
|
|
1687
|
+
return /* @__PURE__ */ jsx(
|
|
1688
|
+
Toast$1.Viewport,
|
|
1689
|
+
{
|
|
1690
|
+
"data-slot": "toast-viewport",
|
|
1691
|
+
className: cn(
|
|
1692
|
+
"pointer-events-none fixed inset-x-4 bottom-4 z-50 mx-auto w-auto max-w-sm outline-none sm:right-4 sm:left-auto sm:mx-0 sm:w-full",
|
|
1693
|
+
className
|
|
1694
|
+
),
|
|
1695
|
+
...props
|
|
1696
|
+
}
|
|
1697
|
+
);
|
|
1698
|
+
}
|
|
1699
|
+
function Toast({ className, ...props }) {
|
|
1700
|
+
return /* @__PURE__ */ jsx(
|
|
1701
|
+
Toast$1.Root,
|
|
1702
|
+
{
|
|
1703
|
+
"data-slot": "toast",
|
|
1704
|
+
className: cn(
|
|
1705
|
+
"group/toast pointer-events-auto absolute right-0 bottom-0 z-[calc(1000-var(--toast-index))] w-full origin-bottom rounded-2xl border bg-popover text-popover-foreground shadow-lg will-change-transform outline-none select-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50",
|
|
1706
|
+
"[--gap:0.75rem] [--height:var(--toast-frontmost-height,var(--toast-height))] [--offset-y:calc(var(--toast-offset-y)*-1+calc(var(--toast-index)*var(--gap)*-1)+var(--toast-swipe-movement-y))] [--peek:0.75rem] [--scale:calc(max(0,1-(var(--toast-index)*0.1)))] [--shrink:calc(1-var(--scale))]",
|
|
1707
|
+
"h-(--height) [transform:translateX(var(--toast-swipe-movement-x))_translateY(calc(var(--toast-swipe-movement-y)-(var(--toast-index)*var(--peek))-(var(--shrink)*var(--height))))_scale(var(--scale))] [transition:transform_400ms_cubic-bezier(0.22,1,0.36,1),opacity_400ms,height_150ms] data-ending-style:[transition-duration:200ms] motion-reduce:[transition:opacity_150ms]",
|
|
1708
|
+
"after:absolute after:top-full after:left-0 after:h-[calc(var(--gap)+1px)] after:w-full after:content-['']",
|
|
1709
|
+
"data-expanded:h-(--toast-height) data-expanded:[transform:translateX(var(--toast-swipe-movement-x))_translateY(var(--offset-y))]",
|
|
1710
|
+
"data-limited:opacity-0 data-starting-style:[transform:translateY(150%)]",
|
|
1711
|
+
"[&[data-ending-style]:not([data-limited]):not([data-swipe-direction])]:[transform:translateY(150%)]",
|
|
1712
|
+
"data-ending-style:data-[swipe-direction=down]:[transform:translateY(calc(var(--toast-swipe-movement-y)+150%))]",
|
|
1713
|
+
"data-ending-style:data-[swipe-direction=left]:[transform:translateX(calc(var(--toast-swipe-movement-x)-150%))_translateY(var(--offset-y))]",
|
|
1714
|
+
"data-ending-style:data-[swipe-direction=right]:[transform:translateX(calc(var(--toast-swipe-movement-x)+150%))_translateY(var(--offset-y))]",
|
|
1715
|
+
"data-ending-style:data-[swipe-direction=up]:[transform:translateY(calc(var(--toast-swipe-movement-y)-150%))]",
|
|
1716
|
+
"data-expanded:data-ending-style:data-[swipe-direction=down]:[transform:translateY(calc(var(--toast-swipe-movement-y)+150%))]",
|
|
1717
|
+
"data-expanded:data-ending-style:data-[swipe-direction=left]:[transform:translateX(calc(var(--toast-swipe-movement-x)-150%))_translateY(var(--offset-y))]",
|
|
1718
|
+
"data-expanded:data-ending-style:data-[swipe-direction=right]:[transform:translateX(calc(var(--toast-swipe-movement-x)+150%))_translateY(var(--offset-y))]",
|
|
1719
|
+
"data-expanded:data-ending-style:data-[swipe-direction=up]:[transform:translateY(calc(var(--toast-swipe-movement-y)-150%))]",
|
|
1720
|
+
className
|
|
1721
|
+
),
|
|
1722
|
+
...props
|
|
1723
|
+
}
|
|
1724
|
+
);
|
|
1725
|
+
}
|
|
1726
|
+
function ToastContent({ className, ...props }) {
|
|
1727
|
+
return /* @__PURE__ */ jsx(
|
|
1728
|
+
Toast$1.Content,
|
|
1729
|
+
{
|
|
1730
|
+
"data-slot": "toast-content",
|
|
1731
|
+
className: cn(
|
|
1732
|
+
"flex h-full items-center gap-3 overflow-hidden p-4 transition-opacity duration-250 ease-[cubic-bezier(0.22,1,0.36,1)] data-behind:opacity-0 data-expanded:opacity-100",
|
|
1733
|
+
className
|
|
1734
|
+
),
|
|
1735
|
+
...props
|
|
1736
|
+
}
|
|
1737
|
+
);
|
|
1738
|
+
}
|
|
1739
|
+
function ToastTitle({ className, ...props }) {
|
|
1740
|
+
return /* @__PURE__ */ jsx(
|
|
1741
|
+
Toast$1.Title,
|
|
1742
|
+
{
|
|
1743
|
+
"data-slot": "toast-title",
|
|
1744
|
+
className: cn("text-sm font-medium", className),
|
|
1745
|
+
...props
|
|
1746
|
+
}
|
|
1747
|
+
);
|
|
1748
|
+
}
|
|
1749
|
+
function ToastDescription({
|
|
1750
|
+
className,
|
|
1751
|
+
...props
|
|
1752
|
+
}) {
|
|
1753
|
+
return /* @__PURE__ */ jsx(
|
|
1754
|
+
Toast$1.Description,
|
|
1755
|
+
{
|
|
1756
|
+
"data-slot": "toast-description",
|
|
1757
|
+
className: cn("text-sm text-muted-foreground", className),
|
|
1758
|
+
...props
|
|
1759
|
+
}
|
|
1760
|
+
);
|
|
1761
|
+
}
|
|
1762
|
+
function ToastAction({
|
|
1763
|
+
className,
|
|
1764
|
+
render = /* @__PURE__ */ jsx(Button, { variant: "outline", size: "sm" }),
|
|
1765
|
+
...props
|
|
1766
|
+
}) {
|
|
1767
|
+
return /* @__PURE__ */ jsx(
|
|
1768
|
+
Toast$1.Action,
|
|
1769
|
+
{
|
|
1770
|
+
"data-slot": "toast-action",
|
|
1771
|
+
render,
|
|
1772
|
+
className: cn("shrink-0", className),
|
|
627
1773
|
...props
|
|
628
1774
|
}
|
|
629
1775
|
);
|
|
630
1776
|
}
|
|
1777
|
+
function ToastClose({
|
|
1778
|
+
className,
|
|
1779
|
+
children,
|
|
1780
|
+
render = /* @__PURE__ */ jsx(Button, { variant: "ghost", size: "icon-sm" }),
|
|
1781
|
+
...props
|
|
1782
|
+
}) {
|
|
1783
|
+
return /* @__PURE__ */ jsx(
|
|
1784
|
+
Toast$1.Close,
|
|
1785
|
+
{
|
|
1786
|
+
"data-slot": "toast-close",
|
|
1787
|
+
"aria-label": "Close toast",
|
|
1788
|
+
render,
|
|
1789
|
+
className: cn(
|
|
1790
|
+
"relative shrink-0 text-muted-foreground after:absolute after:-inset-2 after:content-[''] hover:text-foreground",
|
|
1791
|
+
className
|
|
1792
|
+
),
|
|
1793
|
+
...props,
|
|
1794
|
+
children: children ?? /* @__PURE__ */ jsx(
|
|
1795
|
+
XIcon,
|
|
1796
|
+
{
|
|
1797
|
+
"aria-hidden": "true"
|
|
1798
|
+
}
|
|
1799
|
+
)
|
|
1800
|
+
}
|
|
1801
|
+
);
|
|
1802
|
+
}
|
|
1803
|
+
function ToastIcon({ type }) {
|
|
1804
|
+
let icon = null;
|
|
1805
|
+
if (type === "success") {
|
|
1806
|
+
icon = /* @__PURE__ */ jsx(
|
|
1807
|
+
CircleCheckIcon,
|
|
1808
|
+
{
|
|
1809
|
+
"aria-hidden": "true"
|
|
1810
|
+
}
|
|
1811
|
+
);
|
|
1812
|
+
}
|
|
1813
|
+
if (type === "info") {
|
|
1814
|
+
icon = /* @__PURE__ */ jsx(
|
|
1815
|
+
InfoIcon,
|
|
1816
|
+
{
|
|
1817
|
+
"aria-hidden": "true"
|
|
1818
|
+
}
|
|
1819
|
+
);
|
|
1820
|
+
}
|
|
1821
|
+
if (type === "warning") {
|
|
1822
|
+
icon = /* @__PURE__ */ jsx(
|
|
1823
|
+
TriangleAlertIcon,
|
|
1824
|
+
{
|
|
1825
|
+
"aria-hidden": "true"
|
|
1826
|
+
}
|
|
1827
|
+
);
|
|
1828
|
+
}
|
|
1829
|
+
if (type === "error") {
|
|
1830
|
+
icon = /* @__PURE__ */ jsx(
|
|
1831
|
+
OctagonXIcon,
|
|
1832
|
+
{
|
|
1833
|
+
className: "text-destructive",
|
|
1834
|
+
"aria-hidden": "true"
|
|
1835
|
+
}
|
|
1836
|
+
);
|
|
1837
|
+
}
|
|
1838
|
+
if (type === "loading") {
|
|
1839
|
+
icon = /* @__PURE__ */ jsx(
|
|
1840
|
+
Loader2Icon,
|
|
1841
|
+
{
|
|
1842
|
+
className: "animate-spin",
|
|
1843
|
+
"aria-hidden": "true"
|
|
1844
|
+
}
|
|
1845
|
+
);
|
|
1846
|
+
}
|
|
1847
|
+
if (!icon) {
|
|
1848
|
+
return null;
|
|
1849
|
+
}
|
|
1850
|
+
return /* @__PURE__ */ jsx(
|
|
1851
|
+
"span",
|
|
1852
|
+
{
|
|
1853
|
+
"data-slot": "toast-icon",
|
|
1854
|
+
className: "shrink-0 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4",
|
|
1855
|
+
children: icon
|
|
1856
|
+
}
|
|
1857
|
+
);
|
|
1858
|
+
}
|
|
1859
|
+
function ToastList() {
|
|
1860
|
+
const { toasts } = Toast$1.useToastManager();
|
|
1861
|
+
return toasts.map((toastItem) => /* @__PURE__ */ jsx(Toast, { toast: toastItem, children: /* @__PURE__ */ jsxs(ToastContent, { children: [
|
|
1862
|
+
/* @__PURE__ */ jsx(ToastIcon, { type: toastItem.type }),
|
|
1863
|
+
/* @__PURE__ */ jsxs("div", { className: "flex min-w-0 flex-1 flex-col gap-1", children: [
|
|
1864
|
+
/* @__PURE__ */ jsx(ToastTitle, {}),
|
|
1865
|
+
/* @__PURE__ */ jsx(ToastDescription, {})
|
|
1866
|
+
] }),
|
|
1867
|
+
/* @__PURE__ */ jsx(ToastAction, {}),
|
|
1868
|
+
/* @__PURE__ */ jsx(ToastClose, {})
|
|
1869
|
+
] }) }, toastItem.id));
|
|
1870
|
+
}
|
|
1871
|
+
function Toaster({
|
|
1872
|
+
children,
|
|
1873
|
+
toastManager = toast,
|
|
1874
|
+
...props
|
|
1875
|
+
}) {
|
|
1876
|
+
return /* @__PURE__ */ jsxs(ToastProvider, { toastManager, ...props, children: [
|
|
1877
|
+
children,
|
|
1878
|
+
/* @__PURE__ */ jsx(ToastPortal, { children: /* @__PURE__ */ jsx(ToastViewport, { children: /* @__PURE__ */ jsx(ToastList, {}) }) })
|
|
1879
|
+
] });
|
|
1880
|
+
}
|
|
1881
|
+
var createToastManager = Toast$1.createToastManager;
|
|
1882
|
+
var useToastManager = Toast$1.useToastManager;
|
|
631
1883
|
|
|
632
|
-
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, Alert, AlertAction, AlertDescription, AlertTitle, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator,
|
|
1884
|
+
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, Alert, AlertAction, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogMedia, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, Avatar, AvatarBadge, AvatarFallback, AvatarGroup, AvatarGroupCount, AvatarImage, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Combobox, ComboboxChip, ComboboxChips, ComboboxChipsInput, ComboboxCollection, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxInput, ComboboxItem, ComboboxLabel, ComboboxList, ComboboxSeparator, ComboboxTrigger, ComboboxValue, Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerSwipeHandle, DrawerTitle, DrawerTrigger, Field, FieldContent, FieldDescription, FieldError, FieldGroup, FieldLabel, FieldLegend, FieldSeparator, FieldSet, FieldTitle, HoverCard, HoverCardContent, HoverCardTrigger, Kbd, KbdGroup, Label, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, Progress, ProgressIndicator, ProgressLabel, ProgressTrack, ProgressValue, RadioGroup, RadioGroupItem, ScrollArea, ScrollBar, Slider, Spinner, Switch, Tabs, TabsContent, TabsList, TabsTrigger, Toast, ToastAction, ToastClose, ToastContent, ToastDescription, ToastPortal, ToastProvider, ToastTitle, ToastViewport, Toaster, createToastManager, tabsListVariants, toast, useComboboxAnchor, useToastManager };
|
|
633
1885
|
//# sourceMappingURL=index.js.map
|
|
634
1886
|
//# sourceMappingURL=index.js.map
|