@squadbase/vantage 0.6.1 → 0.6.2-dev1.1c9e8bc
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-O5TVNH4E.js → build-X5NVCQKT.js} +9 -9
- package/dist/{build-O5TVNH4E.js.map → build-X5NVCQKT.js.map} +1 -1
- package/dist/{check-WFBEDHDR.js → check-ZBIH422T.js} +7 -7
- package/dist/{check-WFBEDHDR.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-BCE22JSM.js → chunk-7DZGJQ3P.js} +33 -14
- package/dist/chunk-7DZGJQ3P.js.map +1 -0
- package/dist/{chunk-MXI3PZFT.js → chunk-7S52M2SL.js} +257 -210
- package/dist/chunk-7S52M2SL.js.map +1 -0
- package/dist/{chunk-QDZA5JSL.js → chunk-AABMKHEU.js} +4 -4
- package/dist/{chunk-QDZA5JSL.js.map → chunk-AABMKHEU.js.map} +1 -1
- package/dist/{chunk-KLEIVDUV.js → chunk-CEXAQQ5W.js} +150 -11
- package/dist/chunk-CEXAQQ5W.js.map +1 -0
- package/dist/{chunk-3G43C6OL.js → chunk-GNXCX4WE.js} +46 -3
- package/dist/chunk-GNXCX4WE.js.map +1 -0
- package/dist/chunk-IUPSBD6W.js +7914 -0
- package/dist/chunk-IUPSBD6W.js.map +1 -0
- package/dist/{chunk-JGRMRXXZ.js → chunk-JKLLFVEU.js} +3 -3
- package/dist/{chunk-JGRMRXXZ.js.map → chunk-JKLLFVEU.js.map} +1 -1
- package/dist/chunk-PDOBHMUQ.js +54 -0
- 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-EP6JHXSR.js → chunk-WAMZWZJB.js} +54 -9
- package/dist/chunk-WAMZWZJB.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 +15 -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 +1983 -29
- package/dist/components/index.js +4 -3
- package/dist/{dev-NZRLOQCL.js → dev-4XEDTELV.js} +24 -13
- package/dist/dev-4XEDTELV.js.map +1 -0
- package/dist/doc/index.d.ts +4 -0
- package/dist/doc/index.js +107 -11
- package/dist/doc/index.js.map +1 -1
- package/dist/{docs-ZGDJUHJI.js → docs-JVP4RPKT.js} +3 -3
- package/dist/{docs-ZGDJUHJI.js.map → docs-JVP4RPKT.js.map} +1 -1
- package/dist/{doctor-VFKEMR54.js → doctor-5E2VEZPK.js} +8 -8
- package/dist/doctor-5E2VEZPK.js.map +1 -0
- package/dist/markdown/index.js +1 -1
- package/dist/markdown/index.js.map +1 -1
- package/dist/{preview-QDCIVVSR.js → preview-T6CLSQVX.js} +12 -4
- package/dist/preview-T6CLSQVX.js.map +1 -0
- package/dist/query/index.d.ts +0 -11
- package/dist/query/index.js +2 -2
- package/dist/{routes-RHP5FVGD.js → routes-3SGAFDMC.js} +6 -6
- package/dist/{routes-RHP5FVGD.js.map → routes-3SGAFDMC.js.map} +1 -1
- package/dist/{search-RFBELGY7.js → search-5LC4XPB5.js} +3 -3
- package/dist/{search-RFBELGY7.js.map → search-5LC4XPB5.js.map} +1 -1
- package/dist/slide/index.js +63 -17
- package/dist/slide/index.js.map +1 -1
- package/dist/table/index.js +11 -9
- package/dist/table/index.js.map +1 -1
- package/dist/ui/index.d.ts +148 -12
- package/dist/ui/index.js +1340 -87
- package/dist/ui/index.js.map +1 -1
- package/dist/{upgrade-GF2P67M6.js → upgrade-JHXZBGQS.js} +7 -7
- package/dist/{upgrade-GF2P67M6.js.map → upgrade-JHXZBGQS.js.map} +1 -1
- package/dist/vite/index.d.ts +10 -0
- package/dist/vite/index.js +4 -4
- package/docs/en/changelog.md +24 -0
- package/docs/en/cli-reference.md +30 -0
- 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/page-shell.md +1 -1
- package/docs/en/parts/sparkline.md +1 -1
- package/docs/en/parts/trend-indicator.md +17 -1
- package/docs/en/routing.md +4 -2
- package/docs/en/ui-and-theming.md +1 -1
- package/docs/index.json +366 -76
- package/docs/ja/changelog.md +55 -0
- package/docs/ja/cli-reference.md +29 -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/page-shell.md +1 -1
- 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 -84
- 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 +43 -29
- 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 +3701 -0
- package/registry/ui/attention-list.tsx +303 -0
- package/registry/ui/avatar.tsx +110 -0
- package/registry/ui/badge.tsx +56 -0
- package/registry/ui/bar-chart.tsx +3698 -0
- package/registry/ui/bar-list.tsx +3743 -0
- package/registry/ui/box-plot-chart.tsx +3906 -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 +1290 -0
- package/registry/ui/chart-frame.tsx +1393 -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 +3751 -0
- package/registry/ui/drawer.tsx +229 -0
- package/registry/ui/dropdown-menu.tsx +274 -0
- package/registry/ui/echart.tsx +918 -0
- package/registry/ui/field.tsx +240 -0
- package/registry/ui/filter-bar.tsx +392 -0
- package/registry/ui/funnel-steps.tsx +3569 -0
- package/registry/ui/heatmap.tsx +1786 -0
- package/registry/ui/histogram-chart.tsx +3986 -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 +699 -0
- package/registry/ui/label.tsx +22 -0
- package/registry/ui/legend.tsx +3563 -0
- package/registry/ui/line-chart.tsx +3699 -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/paired-chart.tsx +3827 -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 +4212 -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 +72 -0
- package/registry/ui/tracker.tsx +849 -0
- package/registry/ui/trend-indicator.tsx +74 -0
- package/registry/ui/updated-at.tsx +122 -0
- package/registry/ui/waterfall-chart.tsx +4248 -0
- package/skills/vantage-add-feature/SKILL.md +9 -7
- package/skills/vantage-design/SKILL.md +12 -2
- package/skills/vantage-design/references/format.md +1 -1
- package/skills/vantage-pitfalls/SKILL.md +5 -1
- package/skills/vantage-slide/SKILL.md +17 -0
- package/templates/AGENTS.md +22 -1
- package/templates/agents/api.md +29 -0
- package/templates/agents/csv.md +2 -1
- package/templates/agents/doc.md +6 -3
- package/templates/agents/page.md +32 -8
- package/templates/agents/slide.md +13 -1
- package/templates/agents/xlsx.md +2 -1
- package/theme.css +284 -128
- package/dist/add-EISGSZAH.js +0 -6
- package/dist/add-EISGSZAH.js.map +0 -1
- package/dist/chunk-3G43C6OL.js.map +0 -1
- package/dist/chunk-5ZOP4SQR.js.map +0 -1
- package/dist/chunk-A2UUGASH.js.map +0 -1
- package/dist/chunk-BCE22JSM.js.map +0 -1
- package/dist/chunk-DTDVSFRY.js.map +0 -1
- package/dist/chunk-EP6JHXSR.js.map +0 -1
- package/dist/chunk-KLEIVDUV.js.map +0 -1
- package/dist/chunk-MXI3PZFT.js.map +0 -1
- package/dist/chunk-PLST5Q7T.js +0 -2221
- package/dist/chunk-PLST5Q7T.js.map +0 -1
- package/dist/chunk-PVTHHV7X.js.map +0 -1
- package/dist/chunk-T3FLAGI6.js +0 -316
- package/dist/chunk-T3FLAGI6.js.map +0 -1
- package/dist/dev-NZRLOQCL.js.map +0 -1
- package/dist/doctor-VFKEMR54.js.map +0 -1
- package/dist/preview-QDCIVVSR.js.map +0 -1
package/dist/ui/index.js
CHANGED
|
@@ -1,19 +1,31 @@
|
|
|
1
|
-
export { Empty, ErrorState, Loading } from '../chunk-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
export { Empty, ErrorState, Loading } from '../chunk-2N72FKLB.js';
|
|
2
|
+
import { InputGroup, InputGroupInput, InputGroupAddon, InputGroupButton, Separator } from '../chunk-7S52M2SL.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-7S52M2SL.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';
|
|
5
8
|
import { Accordion as Accordion$1 } from '@base-ui/react/accordion';
|
|
6
|
-
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';
|
|
7
10
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
8
|
-
import 'react';
|
|
11
|
+
import * as React6 from 'react';
|
|
12
|
+
import { useMemo } from 'react';
|
|
9
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';
|
|
10
16
|
import { mergeProps } from '@base-ui/react/merge-props';
|
|
11
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';
|
|
12
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';
|
|
13
24
|
import { ScrollArea as ScrollArea$1 } from '@base-ui/react/scroll-area';
|
|
14
25
|
import { Slider as Slider$1 } from '@base-ui/react/slider';
|
|
15
26
|
import { Switch as Switch$1 } from '@base-ui/react/switch';
|
|
16
27
|
import { Tabs as Tabs$1 } from '@base-ui/react/tabs';
|
|
28
|
+
import { Toast as Toast$1 } from '@base-ui/react/toast';
|
|
17
29
|
|
|
18
30
|
// @squadbase/vantage — generated build. Do not edit.
|
|
19
31
|
function Accordion({ className, ...props }) {
|
|
@@ -67,7 +79,7 @@ function AccordionContent({
|
|
|
67
79
|
Accordion$1.Panel,
|
|
68
80
|
{
|
|
69
81
|
"data-slot": "accordion-content",
|
|
70
|
-
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",
|
|
71
83
|
...props,
|
|
72
84
|
children: /* @__PURE__ */ jsx(
|
|
73
85
|
"div",
|
|
@@ -150,6 +162,253 @@ function AlertAction({ className, ...props }) {
|
|
|
150
162
|
}
|
|
151
163
|
);
|
|
152
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
|
+
}
|
|
153
412
|
function Breadcrumb({ className, ...props }) {
|
|
154
413
|
return /* @__PURE__ */ jsx(
|
|
155
414
|
"nav",
|
|
@@ -207,154 +466,913 @@ function BreadcrumbPage({ className, ...props }) {
|
|
|
207
466
|
return /* @__PURE__ */ jsx(
|
|
208
467
|
"span",
|
|
209
468
|
{
|
|
210
|
-
"data-slot": "breadcrumb-page",
|
|
211
|
-
role: "link",
|
|
212
|
-
"aria-disabled": "true",
|
|
213
|
-
"aria-current": "page",
|
|
214
|
-
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
|
+
),
|
|
215
1108
|
...props
|
|
216
1109
|
}
|
|
217
1110
|
);
|
|
218
1111
|
}
|
|
219
|
-
function
|
|
220
|
-
children,
|
|
221
|
-
className,
|
|
222
|
-
...props
|
|
223
|
-
}) {
|
|
1112
|
+
function FieldDescription({ className, ...props }) {
|
|
224
1113
|
return /* @__PURE__ */ jsx(
|
|
225
|
-
"
|
|
1114
|
+
"p",
|
|
226
1115
|
{
|
|
227
|
-
"data-slot": "
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
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
|
|
233
1124
|
}
|
|
234
1125
|
);
|
|
235
1126
|
}
|
|
236
|
-
function
|
|
1127
|
+
function FieldSeparator({
|
|
1128
|
+
children,
|
|
237
1129
|
className,
|
|
238
1130
|
...props
|
|
239
1131
|
}) {
|
|
240
1132
|
return /* @__PURE__ */ jsxs(
|
|
241
|
-
"
|
|
1133
|
+
"div",
|
|
242
1134
|
{
|
|
243
|
-
"data-slot": "
|
|
244
|
-
|
|
245
|
-
"aria-hidden": "true",
|
|
1135
|
+
"data-slot": "field-separator",
|
|
1136
|
+
"data-content": !!children,
|
|
246
1137
|
className: cn(
|
|
247
|
-
"
|
|
1138
|
+
"relative -my-2 h-5 text-sm group-data-[variant=outline]/field-group:-mb-2",
|
|
248
1139
|
className
|
|
249
1140
|
),
|
|
250
1141
|
...props,
|
|
251
1142
|
children: [
|
|
252
|
-
/* @__PURE__ */ jsx(
|
|
253
|
-
/* @__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
|
+
)
|
|
254
1152
|
]
|
|
255
1153
|
}
|
|
256
1154
|
);
|
|
257
1155
|
}
|
|
258
|
-
function
|
|
1156
|
+
function FieldError({
|
|
259
1157
|
className,
|
|
260
|
-
|
|
1158
|
+
children,
|
|
1159
|
+
errors,
|
|
261
1160
|
...props
|
|
262
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
|
+
}
|
|
263
1182
|
return /* @__PURE__ */ jsx(
|
|
264
1183
|
"div",
|
|
265
1184
|
{
|
|
266
|
-
|
|
267
|
-
"data-
|
|
268
|
-
className: cn(
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
),
|
|
272
|
-
...props
|
|
1185
|
+
role: "alert",
|
|
1186
|
+
"data-slot": "field-error",
|
|
1187
|
+
className: cn("text-sm font-normal text-destructive", className),
|
|
1188
|
+
...props,
|
|
1189
|
+
children: content
|
|
273
1190
|
}
|
|
274
1191
|
);
|
|
275
1192
|
}
|
|
276
|
-
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 }) {
|
|
277
1230
|
return /* @__PURE__ */ jsx(
|
|
278
|
-
"
|
|
1231
|
+
"kbd",
|
|
279
1232
|
{
|
|
280
|
-
"data-slot": "
|
|
1233
|
+
"data-slot": "kbd",
|
|
281
1234
|
className: cn(
|
|
282
|
-
"
|
|
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",
|
|
283
1236
|
className
|
|
284
1237
|
),
|
|
285
1238
|
...props
|
|
286
1239
|
}
|
|
287
1240
|
);
|
|
288
1241
|
}
|
|
289
|
-
function
|
|
1242
|
+
function KbdGroup({ className, ...props }) {
|
|
290
1243
|
return /* @__PURE__ */ jsx(
|
|
291
|
-
"
|
|
1244
|
+
"kbd",
|
|
292
1245
|
{
|
|
293
|
-
"data-slot": "
|
|
294
|
-
className: cn(
|
|
295
|
-
"cn-font-heading text-base leading-snug font-medium group-data-[size=sm]/card:text-sm",
|
|
296
|
-
className
|
|
297
|
-
),
|
|
1246
|
+
"data-slot": "kbd-group",
|
|
1247
|
+
className: cn("inline-flex items-center gap-1", className),
|
|
298
1248
|
...props
|
|
299
1249
|
}
|
|
300
1250
|
);
|
|
301
1251
|
}
|
|
302
|
-
function
|
|
1252
|
+
function Pagination({ className, ...props }) {
|
|
303
1253
|
return /* @__PURE__ */ jsx(
|
|
304
|
-
"
|
|
1254
|
+
"nav",
|
|
305
1255
|
{
|
|
306
|
-
|
|
307
|
-
|
|
1256
|
+
role: "navigation",
|
|
1257
|
+
"aria-label": "pagination",
|
|
1258
|
+
"data-slot": "pagination",
|
|
1259
|
+
className: cn("mx-auto flex w-full justify-center", className),
|
|
308
1260
|
...props
|
|
309
1261
|
}
|
|
310
1262
|
);
|
|
311
1263
|
}
|
|
312
|
-
function
|
|
1264
|
+
function PaginationContent({
|
|
1265
|
+
className,
|
|
1266
|
+
...props
|
|
1267
|
+
}) {
|
|
313
1268
|
return /* @__PURE__ */ jsx(
|
|
314
|
-
"
|
|
1269
|
+
"ul",
|
|
315
1270
|
{
|
|
316
|
-
"data-slot": "
|
|
317
|
-
className: cn(
|
|
318
|
-
"col-start-2 row-span-2 row-start-1 self-start justify-self-end",
|
|
319
|
-
className
|
|
320
|
-
),
|
|
1271
|
+
"data-slot": "pagination-content",
|
|
1272
|
+
className: cn("flex items-center gap-0.5", className),
|
|
321
1273
|
...props
|
|
322
1274
|
}
|
|
323
1275
|
);
|
|
324
1276
|
}
|
|
325
|
-
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
|
+
}) {
|
|
326
1286
|
return /* @__PURE__ */ jsx(
|
|
327
|
-
|
|
1287
|
+
Button,
|
|
328
1288
|
{
|
|
329
|
-
"
|
|
330
|
-
|
|
331
|
-
|
|
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
|
+
)
|
|
332
1302
|
}
|
|
333
1303
|
);
|
|
334
1304
|
}
|
|
335
|
-
function
|
|
336
|
-
|
|
337
|
-
|
|
1305
|
+
function PaginationPrevious({
|
|
1306
|
+
className,
|
|
1307
|
+
text = "Previous",
|
|
1308
|
+
...props
|
|
1309
|
+
}) {
|
|
1310
|
+
return /* @__PURE__ */ jsxs(
|
|
1311
|
+
PaginationLink,
|
|
338
1312
|
{
|
|
339
|
-
"
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
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
|
+
]
|
|
345
1327
|
}
|
|
346
1328
|
);
|
|
347
1329
|
}
|
|
348
|
-
function
|
|
349
|
-
|
|
350
|
-
|
|
1330
|
+
function PaginationNext({
|
|
1331
|
+
className,
|
|
1332
|
+
text = "Next",
|
|
1333
|
+
...props
|
|
1334
|
+
}) {
|
|
1335
|
+
return /* @__PURE__ */ jsxs(
|
|
1336
|
+
PaginationLink,
|
|
351
1337
|
{
|
|
352
|
-
"
|
|
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",
|
|
353
1364
|
className: cn(
|
|
354
|
-
"flex items-center
|
|
1365
|
+
"flex size-8 items-center justify-center [&_svg:not([class*='size-'])]:size-4",
|
|
355
1366
|
className
|
|
356
1367
|
),
|
|
357
|
-
...props
|
|
1368
|
+
...props,
|
|
1369
|
+
children: [
|
|
1370
|
+
/* @__PURE__ */ jsx(
|
|
1371
|
+
MoreHorizontalIcon,
|
|
1372
|
+
{}
|
|
1373
|
+
),
|
|
1374
|
+
/* @__PURE__ */ jsx("span", { className: "sr-only", children: "More pages" })
|
|
1375
|
+
]
|
|
358
1376
|
}
|
|
359
1377
|
);
|
|
360
1378
|
}
|
|
@@ -427,6 +1445,37 @@ function ProgressValue({ className, ...props }) {
|
|
|
427
1445
|
}
|
|
428
1446
|
);
|
|
429
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
|
+
}
|
|
430
1479
|
function ScrollArea({
|
|
431
1480
|
className,
|
|
432
1481
|
children,
|
|
@@ -518,7 +1567,7 @@ function Slider({
|
|
|
518
1567
|
Slider$1.Thumb,
|
|
519
1568
|
{
|
|
520
1569
|
"data-slot": "slider-thumb",
|
|
521
|
-
className: "relative block size-3 shrink-0 rounded-full border border-ring bg-
|
|
1570
|
+
className: "relative block size-3 shrink-0 rounded-full border border-ring bg-background ring-ring/50 transition-[color,box-shadow] select-none after:absolute after:-inset-2 hover:ring-3 focus-visible:ring-3 focus-visible:outline-hidden active:ring-3 disabled:pointer-events-none disabled:opacity-50"
|
|
522
1571
|
},
|
|
523
1572
|
index
|
|
524
1573
|
))
|
|
@@ -607,7 +1656,7 @@ function TabsTrigger({ className, ...props }) {
|
|
|
607
1656
|
{
|
|
608
1657
|
"data-slot": "tabs-trigger",
|
|
609
1658
|
className: cn(
|
|
610
|
-
"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",
|
|
611
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",
|
|
612
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",
|
|
613
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",
|
|
@@ -622,12 +1671,216 @@ function TabsContent({ className, ...props }) {
|
|
|
622
1671
|
Tabs$1.Panel,
|
|
623
1672
|
{
|
|
624
1673
|
"data-slot": "tabs-content",
|
|
625
|
-
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),
|
|
626
1773
|
...props
|
|
627
1774
|
}
|
|
628
1775
|
);
|
|
629
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;
|
|
630
1883
|
|
|
631
|
-
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 };
|
|
632
1885
|
//# sourceMappingURL=index.js.map
|
|
633
1886
|
//# sourceMappingURL=index.js.map
|