@edgedev/create-edge-app 1.1.5 → 1.1.6
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/assets/css/tailwind.css +12 -2
- package/components/ui/accordion/Accordion.vue +1 -1
- package/components/ui/accordion/AccordionContent.vue +3 -3
- package/components/ui/accordion/AccordionItem.vue +3 -3
- package/components/ui/accordion/AccordionTrigger.vue +4 -4
- package/components/ui/alert/Alert.vue +1 -1
- package/components/ui/alert/AlertDescription.vue +1 -1
- package/components/ui/alert/AlertTitle.vue +1 -1
- package/components/ui/alert/index.ts +2 -2
- package/components/ui/alert-dialog/AlertDialog.vue +1 -1
- package/components/ui/alert-dialog/AlertDialogAction.vue +4 -4
- package/components/ui/alert-dialog/AlertDialogCancel.vue +12 -5
- package/components/ui/alert-dialog/AlertDialogContent.vue +4 -4
- package/components/ui/alert-dialog/AlertDialogDescription.vue +3 -3
- package/components/ui/alert-dialog/AlertDialogFooter.vue +1 -1
- package/components/ui/alert-dialog/AlertDialogHeader.vue +1 -1
- package/components/ui/alert-dialog/AlertDialogTitle.vue +3 -3
- package/components/ui/alert-dialog/AlertDialogTrigger.vue +1 -1
- package/components/ui/alert-dialog/index.ts +5 -5
- package/components/ui/aspect-ratio/AspectRatio.vue +1 -1
- package/components/ui/auto-form/AutoForm.vue +8 -8
- package/components/ui/auto-form/AutoFormField.vue +1 -1
- package/components/ui/auto-form/AutoFormFieldArray.vue +9 -9
- package/components/ui/auto-form/AutoFormFieldBoolean.vue +9 -9
- package/components/ui/auto-form/AutoFormFieldDate.vue +9 -9
- package/components/ui/auto-form/AutoFormFieldEnum.vue +8 -8
- package/components/ui/auto-form/AutoFormFieldFile.vue +6 -6
- package/components/ui/auto-form/AutoFormFieldInput.vue +5 -5
- package/components/ui/auto-form/AutoFormFieldNumber.vue +4 -4
- package/components/ui/auto-form/AutoFormFieldObject.vue +5 -5
- package/components/ui/auto-form/AutoFormLabel.vue +1 -1
- package/components/ui/auto-form/constant.ts +2 -1
- package/components/ui/auto-form/dependencies.ts +4 -4
- package/components/ui/auto-form/index.ts +4 -4
- package/components/ui/auto-form/interface.ts +15 -1
- package/components/ui/auto-form/utils.ts +23 -6
- package/components/ui/avatar/Avatar.vue +3 -3
- package/components/ui/avatar/AvatarFallback.vue +1 -1
- package/components/ui/avatar/AvatarImage.vue +5 -2
- package/components/ui/avatar/index.ts +2 -2
- package/components/ui/badge/Badge.vue +1 -1
- package/components/ui/badge/index.ts +1 -1
- package/components/ui/breadcrumb/BreadcrumbEllipsis.vue +1 -1
- package/components/ui/breadcrumb/BreadcrumbItem.vue +1 -1
- package/components/ui/breadcrumb/BreadcrumbLink.vue +2 -2
- package/components/ui/breadcrumb/BreadcrumbList.vue +1 -1
- package/components/ui/breadcrumb/BreadcrumbPage.vue +1 -1
- package/components/ui/breadcrumb/BreadcrumbSeparator.vue +2 -2
- package/components/ui/button/Button.vue +2 -2
- package/components/ui/button/index.ts +3 -3
- package/components/ui/calendar/Calendar.vue +3 -3
- package/components/ui/calendar/CalendarCell.vue +4 -4
- package/components/ui/calendar/CalendarCellTrigger.vue +5 -5
- package/components/ui/calendar/CalendarGrid.vue +3 -3
- package/components/ui/calendar/CalendarGridBody.vue +1 -1
- package/components/ui/calendar/CalendarGridHead.vue +1 -1
- package/components/ui/calendar/CalendarGridRow.vue +3 -3
- package/components/ui/calendar/CalendarHeadCell.vue +3 -3
- package/components/ui/calendar/CalendarHeader.vue +3 -3
- package/components/ui/calendar/CalendarHeading.vue +7 -3
- package/components/ui/calendar/CalendarNextButton.vue +4 -4
- package/components/ui/calendar/CalendarPrevButton.vue +4 -4
- package/components/ui/card/Card.vue +1 -1
- package/components/ui/card/CardContent.vue +1 -1
- package/components/ui/card/CardDescription.vue +1 -1
- package/components/ui/card/CardFooter.vue +1 -1
- package/components/ui/card/CardHeader.vue +1 -1
- package/components/ui/card/CardTitle.vue +1 -1
- package/components/ui/card/index.ts +3 -3
- package/components/ui/carousel/Carousel.vue +15 -7
- package/components/ui/carousel/CarouselContent.vue +2 -2
- package/components/ui/carousel/CarouselItem.vue +2 -2
- package/components/ui/carousel/CarouselNext.vue +4 -3
- package/components/ui/carousel/CarouselPrevious.vue +4 -3
- package/components/ui/carousel/index.ts +5 -5
- package/components/ui/carousel/interface.ts +14 -8
- package/components/ui/carousel/useCarousel.ts +5 -8
- package/components/ui/chart/ChartCrosshair.vue +2 -2
- package/components/ui/chart/ChartLegend.vue +3 -3
- package/components/ui/chart/ChartSingleTooltip.vue +6 -7
- package/components/ui/chart/ChartTooltip.vue +1 -1
- package/components/ui/chart/index.ts +6 -6
- package/components/ui/chart-area/AreaChart.vue +10 -7
- package/components/ui/chart-bar/BarChart.vue +5 -5
- package/components/ui/chart-donut/DonutChart.vue +6 -6
- package/components/ui/chart-line/LineChart.vue +5 -5
- package/components/ui/checkbox/Checkbox.vue +4 -4
- package/components/ui/collapsible/Collapsible.vue +2 -2
- package/components/ui/collapsible/CollapsibleContent.vue +1 -1
- package/components/ui/collapsible/CollapsibleTrigger.vue +1 -1
- package/components/ui/collapsible/index.ts +1 -1
- package/components/ui/combobox/Combobox.vue +14 -0
- package/components/ui/combobox/ComboboxAnchor.vue +25 -0
- package/components/ui/combobox/ComboboxEmpty.vue +20 -0
- package/components/ui/combobox/ComboboxGroup.vue +29 -0
- package/components/ui/combobox/ComboboxInput.vue +28 -0
- package/components/ui/combobox/ComboboxItem.vue +26 -0
- package/components/ui/combobox/ComboboxList.vue +34 -0
- package/components/ui/combobox/ComboboxSeparator.vue +23 -0
- package/components/ui/combobox/ComboboxTrigger.vue +26 -0
- package/components/ui/combobox/index.ts +10 -0
- package/components/ui/command/Command.vue +71 -9
- package/components/ui/command/CommandDialog.vue +3 -3
- package/components/ui/command/CommandEmpty.vue +12 -7
- package/components/ui/command/CommandGroup.vue +26 -9
- package/components/ui/command/CommandInput.vue +10 -6
- package/components/ui/command/CommandItem.vue +61 -9
- package/components/ui/command/CommandList.vue +8 -11
- package/components/ui/command/CommandSeparator.vue +7 -7
- package/components/ui/command/CommandShortcut.vue +1 -1
- package/components/ui/command/index.ts +16 -0
- package/components/ui/context-menu/ContextMenu.vue +2 -2
- package/components/ui/context-menu/ContextMenuCheckboxItem.vue +4 -4
- package/components/ui/context-menu/ContextMenuContent.vue +3 -3
- package/components/ui/context-menu/ContextMenuGroup.vue +1 -1
- package/components/ui/context-menu/ContextMenuItem.vue +3 -3
- package/components/ui/context-menu/ContextMenuLabel.vue +3 -3
- package/components/ui/context-menu/ContextMenuPortal.vue +1 -1
- package/components/ui/context-menu/ContextMenuRadioGroup.vue +1 -1
- package/components/ui/context-menu/ContextMenuRadioItem.vue +4 -4
- package/components/ui/context-menu/ContextMenuSeparator.vue +3 -3
- package/components/ui/context-menu/ContextMenuShortcut.vue +1 -1
- package/components/ui/context-menu/ContextMenuSub.vue +1 -1
- package/components/ui/context-menu/ContextMenuSubContent.vue +3 -3
- package/components/ui/context-menu/ContextMenuSubTrigger.vue +4 -4
- package/components/ui/context-menu/ContextMenuTrigger.vue +1 -1
- package/components/ui/context-menu/index.ts +6 -6
- package/components/ui/dialog/Dialog.vue +1 -1
- package/components/ui/dialog/DialogClose.vue +1 -1
- package/components/ui/dialog/DialogContent.vue +5 -5
- package/components/ui/dialog/DialogDescription.vue +3 -3
- package/components/ui/dialog/DialogFooter.vue +1 -1
- package/components/ui/dialog/DialogHeader.vue +1 -1
- package/components/ui/dialog/DialogScrollContent.vue +5 -5
- package/components/ui/dialog/DialogTitle.vue +3 -3
- package/components/ui/dialog/DialogTrigger.vue +1 -1
- package/components/ui/dialog/index.ts +5 -5
- package/components/ui/drawer/Drawer.vue +1 -1
- package/components/ui/drawer/DrawerContent.vue +4 -4
- package/components/ui/drawer/DrawerDescription.vue +2 -2
- package/components/ui/drawer/DrawerFooter.vue +1 -1
- package/components/ui/drawer/DrawerHeader.vue +1 -1
- package/components/ui/drawer/DrawerOverlay.vue +3 -3
- package/components/ui/drawer/DrawerTitle.vue +2 -2
- package/components/ui/drawer/index.ts +4 -4
- package/components/ui/dropdown-menu/DropdownMenu.vue +1 -1
- package/components/ui/dropdown-menu/DropdownMenuCheckboxItem.vue +4 -4
- package/components/ui/dropdown-menu/DropdownMenuContent.vue +3 -3
- package/components/ui/dropdown-menu/DropdownMenuGroup.vue +1 -1
- package/components/ui/dropdown-menu/DropdownMenuItem.vue +4 -4
- package/components/ui/dropdown-menu/DropdownMenuLabel.vue +3 -3
- package/components/ui/dropdown-menu/DropdownMenuRadioGroup.vue +1 -1
- package/components/ui/dropdown-menu/DropdownMenuRadioItem.vue +4 -4
- package/components/ui/dropdown-menu/DropdownMenuSeparator.vue +3 -3
- package/components/ui/dropdown-menu/DropdownMenuShortcut.vue +1 -1
- package/components/ui/dropdown-menu/DropdownMenuSub.vue +1 -1
- package/components/ui/dropdown-menu/DropdownMenuSubContent.vue +3 -3
- package/components/ui/dropdown-menu/DropdownMenuSubTrigger.vue +4 -4
- package/components/ui/dropdown-menu/DropdownMenuTrigger.vue +1 -1
- package/components/ui/dropdown-menu/index.ts +8 -8
- package/components/ui/form/FormControl.vue +1 -1
- package/components/ui/form/FormDescription.vue +1 -1
- package/components/ui/form/FormItem.vue +2 -2
- package/components/ui/form/FormLabel.vue +3 -3
- package/components/ui/form/index.ts +3 -3
- package/components/ui/form/useFormField.ts +7 -7
- package/components/ui/hover-card/HoverCard.vue +1 -1
- package/components/ui/hover-card/HoverCardContent.vue +3 -3
- package/components/ui/hover-card/HoverCardTrigger.vue +1 -1
- package/components/ui/hover-card/index.ts +1 -1
- package/components/ui/input/Input.vue +1 -1
- package/components/ui/label/Label.vue +3 -3
- package/components/ui/menubar/Menubar.vue +3 -3
- package/components/ui/menubar/MenubarCheckboxItem.vue +4 -4
- package/components/ui/menubar/MenubarContent.vue +3 -3
- package/components/ui/menubar/MenubarGroup.vue +1 -1
- package/components/ui/menubar/MenubarItem.vue +3 -3
- package/components/ui/menubar/MenubarLabel.vue +2 -2
- package/components/ui/menubar/MenubarMenu.vue +1 -1
- package/components/ui/menubar/MenubarRadioGroup.vue +1 -1
- package/components/ui/menubar/MenubarRadioItem.vue +4 -4
- package/components/ui/menubar/MenubarSeparator.vue +3 -3
- package/components/ui/menubar/MenubarShortcut.vue +1 -1
- package/components/ui/menubar/MenubarSub.vue +1 -1
- package/components/ui/menubar/MenubarSubContent.vue +3 -3
- package/components/ui/menubar/MenubarSubTrigger.vue +3 -3
- package/components/ui/menubar/MenubarTrigger.vue +3 -3
- package/components/ui/menubar/index.ts +4 -4
- package/components/ui/navigation-menu/NavigationMenu.vue +3 -3
- package/components/ui/navigation-menu/NavigationMenuContent.vue +3 -3
- package/components/ui/navigation-menu/NavigationMenuIndicator.vue +3 -3
- package/components/ui/navigation-menu/NavigationMenuItem.vue +1 -1
- package/components/ui/navigation-menu/NavigationMenuLink.vue +1 -1
- package/components/ui/navigation-menu/NavigationMenuList.vue +3 -3
- package/components/ui/navigation-menu/NavigationMenuTrigger.vue +4 -4
- package/components/ui/navigation-menu/NavigationMenuViewport.vue +4 -4
- package/components/ui/navigation-menu/index.ts +5 -3
- package/components/ui/number-field/NumberField.vue +4 -4
- package/components/ui/number-field/NumberFieldContent.vue +2 -2
- package/components/ui/number-field/NumberFieldDecrement.vue +5 -5
- package/components/ui/number-field/NumberFieldIncrement.vue +5 -5
- package/components/ui/number-field/NumberFieldInput.vue +11 -3
- package/components/ui/number-field/index.ts +3 -3
- package/components/ui/pagination/PaginationEllipsis.vue +3 -3
- package/components/ui/pagination/PaginationFirst.vue +5 -5
- package/components/ui/pagination/PaginationLast.vue +5 -5
- package/components/ui/pagination/PaginationNext.vue +5 -5
- package/components/ui/pagination/PaginationPrev.vue +5 -5
- package/components/ui/pagination/index.ts +5 -5
- package/components/ui/pin-input/PinInput.vue +3 -3
- package/components/ui/pin-input/PinInputGroup.vue +3 -3
- package/components/ui/pin-input/PinInputInput.vue +3 -3
- package/components/ui/pin-input/PinInputSeparator.vue +1 -1
- package/components/ui/pin-input/index.ts +1 -1
- package/components/ui/popover/Popover.vue +2 -2
- package/components/ui/popover/PopoverContent.vue +3 -3
- package/components/ui/popover/PopoverTrigger.vue +1 -1
- package/components/ui/popover/index.ts +1 -1
- package/components/ui/progress/Progress.vue +3 -3
- package/components/ui/radio-group/RadioGroup.vue +3 -3
- package/components/ui/radio-group/RadioGroupItem.vue +8 -6
- package/components/ui/range-calendar/RangeCalendar.vue +3 -3
- package/components/ui/range-calendar/RangeCalendarCell.vue +4 -4
- package/components/ui/range-calendar/RangeCalendarCellTrigger.vue +5 -5
- package/components/ui/range-calendar/RangeCalendarGrid.vue +3 -3
- package/components/ui/range-calendar/RangeCalendarGridBody.vue +1 -1
- package/components/ui/range-calendar/RangeCalendarGridHead.vue +1 -1
- package/components/ui/range-calendar/RangeCalendarGridRow.vue +3 -3
- package/components/ui/range-calendar/RangeCalendarHeadCell.vue +4 -4
- package/components/ui/range-calendar/RangeCalendarHeader.vue +3 -3
- package/components/ui/range-calendar/RangeCalendarHeading.vue +7 -3
- package/components/ui/range-calendar/RangeCalendarNextButton.vue +4 -4
- package/components/ui/range-calendar/RangeCalendarPrevButton.vue +4 -4
- package/components/ui/resizable/ResizableHandle.vue +3 -3
- package/components/ui/resizable/ResizablePanelGroup.vue +3 -3
- package/components/ui/resizable/index.ts +2 -2
- package/components/ui/scroll-area/ScrollArea.vue +3 -3
- package/components/ui/scroll-area/ScrollBar.vue +3 -3
- package/components/ui/select/Select.vue +2 -2
- package/components/ui/select/SelectContent.vue +4 -4
- package/components/ui/select/SelectGroup.vue +3 -3
- package/components/ui/select/SelectItem.vue +4 -4
- package/components/ui/select/SelectItemText.vue +1 -1
- package/components/ui/select/SelectLabel.vue +2 -2
- package/components/ui/select/SelectScrollDownButton.vue +3 -3
- package/components/ui/select/SelectScrollUpButton.vue +3 -3
- package/components/ui/select/SelectSeparator.vue +3 -3
- package/components/ui/select/SelectTrigger.vue +5 -5
- package/components/ui/select/SelectValue.vue +1 -1
- package/components/ui/select/index.ts +4 -4
- package/components/ui/separator/Separator.vue +21 -6
- package/components/ui/sheet/Sheet.vue +1 -1
- package/components/ui/sheet/SheetClose.vue +1 -1
- package/components/ui/sheet/SheetContent.vue +5 -5
- package/components/ui/sheet/SheetDescription.vue +3 -3
- package/components/ui/sheet/SheetFooter.vue +1 -1
- package/components/ui/sheet/SheetHeader.vue +1 -1
- package/components/ui/sheet/SheetTitle.vue +3 -3
- package/components/ui/sheet/SheetTrigger.vue +1 -1
- package/components/ui/sheet/index.ts +4 -4
- package/components/ui/sidebar/Sidebar.vue +8 -8
- package/components/ui/sidebar/SidebarContent.vue +1 -1
- package/components/ui/sidebar/SidebarFooter.vue +1 -1
- package/components/ui/sidebar/SidebarGroup.vue +1 -1
- package/components/ui/sidebar/SidebarGroupAction.vue +3 -4
- package/components/ui/sidebar/SidebarGroupContent.vue +1 -1
- package/components/ui/sidebar/SidebarGroupLabel.vue +3 -3
- package/components/ui/sidebar/SidebarHeader.vue +1 -1
- package/components/ui/sidebar/SidebarInput.vue +2 -2
- package/components/ui/sidebar/SidebarInset.vue +1 -1
- package/components/ui/sidebar/SidebarMenu.vue +1 -1
- package/components/ui/sidebar/SidebarMenuAction.vue +2 -3
- package/components/ui/sidebar/SidebarMenuBadge.vue +1 -1
- package/components/ui/sidebar/SidebarMenuButton.vue +1 -1
- package/components/ui/sidebar/SidebarMenuButtonChild.vue +2 -2
- package/components/ui/sidebar/SidebarMenuItem.vue +1 -1
- package/components/ui/sidebar/SidebarMenuSkeleton.vue +2 -2
- package/components/ui/sidebar/SidebarMenuSub.vue +1 -1
- package/components/ui/sidebar/SidebarMenuSubButton.vue +3 -3
- package/components/ui/sidebar/SidebarProvider.vue +2 -2
- package/components/ui/sidebar/SidebarRail.vue +1 -1
- package/components/ui/sidebar/SidebarSeparator.vue +2 -2
- package/components/ui/sidebar/SidebarTrigger.vue +2 -2
- package/components/ui/sidebar/utils.ts +1 -1
- package/components/ui/skeleton/Skeleton.vue +1 -1
- package/components/ui/slider/Slider.vue +7 -7
- package/components/ui/stepper/Stepper.vue +31 -0
- package/components/ui/stepper/StepperDescription.vue +23 -0
- package/components/ui/stepper/StepperIndicator.vue +35 -0
- package/components/ui/stepper/StepperItem.vue +27 -0
- package/components/ui/stepper/StepperSeparator.vue +31 -0
- package/components/ui/stepper/StepperTitle.vue +23 -0
- package/components/ui/stepper/StepperTrigger.vue +26 -0
- package/components/ui/stepper/index.ts +7 -0
- package/components/ui/switch/Switch.vue +7 -5
- package/components/ui/table/Table.vue +1 -1
- package/components/ui/table/TableBody.vue +1 -1
- package/components/ui/table/TableCaption.vue +1 -1
- package/components/ui/table/TableCell.vue +1 -1
- package/components/ui/table/TableEmpty.vue +3 -3
- package/components/ui/table/TableFooter.vue +1 -1
- package/components/ui/table/TableHead.vue +1 -1
- package/components/ui/table/TableHeader.vue +1 -1
- package/components/ui/table/TableRow.vue +1 -1
- package/components/ui/table/index.ts +3 -2
- package/components/ui/tabs/Tabs.vue +2 -2
- package/components/ui/tabs/TabsContent.vue +3 -3
- package/components/ui/tabs/TabsList.vue +4 -4
- package/components/ui/tabs/TabsTrigger.vue +6 -4
- package/components/ui/tabs/index.ts +2 -2
- package/components/ui/tags-input/TagsInput.vue +3 -3
- package/components/ui/tags-input/TagsInputInput.vue +3 -3
- package/components/ui/tags-input/TagsInputItem.vue +3 -3
- package/components/ui/tags-input/TagsInputItemDelete.vue +3 -3
- package/components/ui/tags-input/TagsInputItemText.vue +3 -3
- package/components/ui/textarea/Textarea.vue +1 -1
- package/components/ui/toast/Toast.vue +2 -2
- package/components/ui/toast/ToastAction.vue +3 -3
- package/components/ui/toast/ToastClose.vue +3 -3
- package/components/ui/toast/ToastDescription.vue +3 -3
- package/components/ui/toast/ToastProvider.vue +1 -1
- package/components/ui/toast/ToastTitle.vue +3 -3
- package/components/ui/toast/ToastViewport.vue +3 -3
- package/components/ui/toast/Toaster.vue +1 -1
- package/components/ui/toast/index.ts +6 -6
- package/components/ui/toast/use-toast.ts +1 -1
- package/components/ui/toggle/Toggle.vue +3 -3
- package/components/ui/toggle/index.ts +5 -5
- package/components/ui/toggle-group/ToggleGroup.vue +4 -4
- package/components/ui/toggle-group/ToggleGroupItem.vue +4 -4
- package/components/ui/tooltip/Tooltip.vue +1 -1
- package/components/ui/tooltip/TooltipContent.vue +3 -3
- package/components/ui/tooltip/TooltipProvider.vue +1 -1
- package/components/ui/tooltip/TooltipTrigger.vue +1 -1
- package/components/ui/tooltip/index.ts +1 -1
- package/components.json +10 -7
- package/lib/utils.ts +9 -0
- package/nuxt.config.ts +1 -1
- package/package.json +13 -13
- package/components/ui/accordion/index.js +0 -4
- package/components/ui/alert/index.js +0 -21
- package/components/ui/button/index.js +0 -33
- package/components/ui/card/index.js +0 -6
- package/components/ui/command/index.js +0 -9
- package/components/ui/dialog/index.js +0 -9
- package/components/ui/form/index.js +0 -7
- package/components/ui/form/injectionKeys.js +0 -1
- package/components/ui/form/useFormField.js +0 -36
- package/components/ui/input/index.js +0 -1
- package/components/ui/label/index.js +0 -1
- package/components/ui/popover/index.js +0 -3
- package/components/ui/progress/index.js +0 -1
- package/components/ui/separator/index.js +0 -1
- package/components/ui/v-calendar/Calendar.vue +0 -331
- package/components/ui/v-calendar/index.ts +0 -22
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
export { getObjectFormSchema, getBaseSchema, getBaseType } from './utils'
|
|
2
|
-
export type { Config, ConfigItem, FieldProps } from './interface'
|
|
3
|
-
|
|
4
1
|
export { default as AutoForm } from './AutoForm.vue'
|
|
5
2
|
export { default as AutoFormField } from './AutoFormField.vue'
|
|
6
|
-
export { default as AutoFormLabel } from './AutoFormLabel.vue'
|
|
7
3
|
|
|
8
4
|
export { default as AutoFormFieldArray } from './AutoFormFieldArray.vue'
|
|
9
5
|
export { default as AutoFormFieldBoolean } from './AutoFormFieldBoolean.vue'
|
|
10
6
|
export { default as AutoFormFieldDate } from './AutoFormFieldDate.vue'
|
|
7
|
+
|
|
11
8
|
export { default as AutoFormFieldEnum } from './AutoFormFieldEnum.vue'
|
|
12
9
|
export { default as AutoFormFieldFile } from './AutoFormFieldFile.vue'
|
|
13
10
|
export { default as AutoFormFieldInput } from './AutoFormFieldInput.vue'
|
|
14
11
|
export { default as AutoFormFieldNumber } from './AutoFormFieldNumber.vue'
|
|
15
12
|
export { default as AutoFormFieldObject } from './AutoFormFieldObject.vue'
|
|
13
|
+
export { default as AutoFormLabel } from './AutoFormLabel.vue'
|
|
14
|
+
export type { Config, ConfigItem, FieldProps } from './interface'
|
|
15
|
+
export { getBaseSchema, getBaseType, getObjectFormSchema } from './utils'
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Component, InputHTMLAttributes } from 'vue'
|
|
2
|
-
import type {
|
|
2
|
+
import type { z, ZodAny } from 'zod'
|
|
3
3
|
import type { INPUT_COMPONENTS } from './constant'
|
|
4
4
|
|
|
5
5
|
export interface FieldProps {
|
|
@@ -18,6 +18,20 @@ export interface Shape {
|
|
|
18
18
|
schema?: ZodAny
|
|
19
19
|
}
|
|
20
20
|
|
|
21
|
+
export interface InputComponents {
|
|
22
|
+
date: Component
|
|
23
|
+
select: Component
|
|
24
|
+
radio: Component
|
|
25
|
+
checkbox: Component
|
|
26
|
+
switch: Component
|
|
27
|
+
textarea: Component
|
|
28
|
+
number: Component
|
|
29
|
+
string: Component
|
|
30
|
+
file: Component
|
|
31
|
+
array: Component
|
|
32
|
+
object: Component
|
|
33
|
+
}
|
|
34
|
+
|
|
21
35
|
export interface ConfigItem {
|
|
22
36
|
/** Value for the `FormLabel` */
|
|
23
37
|
label?: string
|
|
@@ -39,7 +39,7 @@ export function getBaseSchema<
|
|
|
39
39
|
ChildType extends z.ZodAny | z.AnyZodObject = z.ZodAny,
|
|
40
40
|
>(schema: ChildType | z.ZodEffects<ChildType>): ChildType | null {
|
|
41
41
|
if (!schema)
|
|
42
|
-
return null
|
|
42
|
+
return null;
|
|
43
43
|
if ('innerType' in schema._def)
|
|
44
44
|
return getBaseSchema(schema._def.innerType as ChildType)
|
|
45
45
|
|
|
@@ -55,7 +55,7 @@ export function getBaseSchema<
|
|
|
55
55
|
*/
|
|
56
56
|
export function getBaseType(schema: z.ZodAny) {
|
|
57
57
|
const baseSchema = getBaseSchema(schema)
|
|
58
|
-
return baseSchema ? baseSchema._def.typeName : ''
|
|
58
|
+
return baseSchema ? baseSchema._def.typeName : '';
|
|
59
59
|
}
|
|
60
60
|
|
|
61
61
|
/**
|
|
@@ -94,7 +94,7 @@ export function getObjectFormSchema(
|
|
|
94
94
|
}
|
|
95
95
|
|
|
96
96
|
function isIndex(value: unknown): value is number {
|
|
97
|
-
return Number(value) >= 0
|
|
97
|
+
return Number(value) >= 0;
|
|
98
98
|
}
|
|
99
99
|
/**
|
|
100
100
|
* Constructs a path with dot paths for arrays to use brackets to be compatible with vee-validate path syntax
|
|
@@ -102,7 +102,7 @@ function isIndex(value: unknown): value is number {
|
|
|
102
102
|
export function normalizeFormPath(path: string): string {
|
|
103
103
|
const pathArr = path.split('.')
|
|
104
104
|
if (!pathArr.length)
|
|
105
|
-
return ''
|
|
105
|
+
return '';
|
|
106
106
|
|
|
107
107
|
let fullPath = String(pathArr[0])
|
|
108
108
|
for (let i = 1; i < pathArr.length; i++) {
|
|
@@ -125,14 +125,14 @@ export function isNotNestedPath(path: string) {
|
|
|
125
125
|
return /^\[.+\]$/.test(path)
|
|
126
126
|
}
|
|
127
127
|
function isObject(obj: unknown): obj is Record<string, unknown> {
|
|
128
|
-
return obj !== null && !!obj && typeof obj === 'object' && !Array.isArray(obj)
|
|
128
|
+
return obj !== null && !!obj && typeof obj === 'object' && !Array.isArray(obj);
|
|
129
129
|
}
|
|
130
130
|
function isContainerValue(value: unknown): value is Record<string, unknown> {
|
|
131
131
|
return isObject(value) || Array.isArray(value)
|
|
132
132
|
}
|
|
133
133
|
function cleanupNonNestedPath(path: string) {
|
|
134
134
|
if (isNotNestedPath(path))
|
|
135
|
-
return path.replace(/\[|\]/g, '')
|
|
135
|
+
return path.replace(/\[|\]/g, '');
|
|
136
136
|
|
|
137
137
|
return path
|
|
138
138
|
}
|
|
@@ -169,3 +169,20 @@ export function getFromPath<TValue = unknown, TFallback = TValue>(
|
|
|
169
169
|
|
|
170
170
|
return resolvedValue as TValue | undefined
|
|
171
171
|
}
|
|
172
|
+
|
|
173
|
+
type Booleanish = boolean | 'true' | 'false'
|
|
174
|
+
|
|
175
|
+
export function booleanishToBoolean(value: Booleanish) {
|
|
176
|
+
switch (value) {
|
|
177
|
+
case 'true':
|
|
178
|
+
case true:
|
|
179
|
+
return true;
|
|
180
|
+
case 'false':
|
|
181
|
+
case false:
|
|
182
|
+
return false;
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
export function maybeBooleanishToBoolean(value?: Booleanish) {
|
|
187
|
+
return value ? booleanishToBoolean(value) : undefined
|
|
188
|
+
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
<script setup lang="ts">
|
|
2
2
|
import type { HTMLAttributes } from 'vue'
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
3
|
+
import { cn } from '~/lib/utils'
|
|
4
|
+
import { AvatarRoot } from 'reka-ui'
|
|
5
|
+
import { avatarVariant, type AvatarVariants } from '.'
|
|
6
6
|
|
|
7
7
|
const props = withDefaults(defineProps<{
|
|
8
8
|
class?: HTMLAttributes['class']
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
<script setup lang="ts">
|
|
2
|
-
import {
|
|
2
|
+
import type { AvatarImageProps } from 'reka-ui'
|
|
3
|
+
import { AvatarImage } from 'reka-ui'
|
|
3
4
|
|
|
4
5
|
const props = defineProps<AvatarImageProps>()
|
|
5
6
|
</script>
|
|
6
7
|
|
|
7
8
|
<template>
|
|
8
|
-
<AvatarImage v-bind="props" class="h-full w-full object-cover"
|
|
9
|
+
<AvatarImage v-bind="props" class="h-full w-full object-cover">
|
|
10
|
+
<slot />
|
|
11
|
+
</AvatarImage>
|
|
9
12
|
</template>
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { type VariantProps
|
|
1
|
+
import { cva, type VariantProps } from 'class-variance-authority'
|
|
2
2
|
|
|
3
3
|
export { default as Avatar } from './Avatar.vue'
|
|
4
|
-
export { default as AvatarImage } from './AvatarImage.vue'
|
|
5
4
|
export { default as AvatarFallback } from './AvatarFallback.vue'
|
|
5
|
+
export { default as AvatarImage } from './AvatarImage.vue'
|
|
6
6
|
|
|
7
7
|
export const avatarVariant = cva(
|
|
8
8
|
'inline-flex items-center justify-center font-normal text-foreground select-none shrink-0 bg-secondary overflow-hidden',
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<script lang="ts" setup>
|
|
2
2
|
import type { HTMLAttributes } from 'vue'
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
3
|
+
import { cn } from '~/lib/utils'
|
|
4
|
+
import { Primitive, type PrimitiveProps } from 'reka-ui'
|
|
5
5
|
|
|
6
6
|
const props = withDefaults(defineProps<PrimitiveProps & { class?: HTMLAttributes['class'] }>(), {
|
|
7
7
|
as: 'a',
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<script lang="ts" setup>
|
|
2
2
|
import type { HTMLAttributes } from 'vue'
|
|
3
|
+
import { cn } from '~/lib/utils'
|
|
3
4
|
import { ChevronRight } from 'lucide-vue-next'
|
|
4
|
-
import { cn } from '@/lib/utils'
|
|
5
5
|
|
|
6
6
|
const props = defineProps<{
|
|
7
7
|
class?: HTMLAttributes['class']
|
|
@@ -12,7 +12,7 @@ const props = defineProps<{
|
|
|
12
12
|
<li
|
|
13
13
|
role="presentation"
|
|
14
14
|
aria-hidden="true"
|
|
15
|
-
:class="cn('[&>svg]:
|
|
15
|
+
:class="cn('[&>svg]:w-3.5 [&>svg]:h-3.5', props.class)"
|
|
16
16
|
>
|
|
17
17
|
<slot>
|
|
18
18
|
<ChevronRight />
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
<script setup lang="ts">
|
|
2
2
|
import type { HTMLAttributes } from 'vue'
|
|
3
|
-
import {
|
|
3
|
+
import { cn } from '~/lib/utils'
|
|
4
|
+
import { Primitive, type PrimitiveProps } from 'reka-ui'
|
|
4
5
|
import { type ButtonVariants, buttonVariants } from '.'
|
|
5
|
-
import { cn } from '@/lib/utils'
|
|
6
6
|
|
|
7
7
|
interface Props extends PrimitiveProps {
|
|
8
8
|
variant?: ButtonVariants['variant']
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { VariantProps } from 'class-variance-authority'
|
|
2
|
+
import { cva } from 'class-variance-authority'
|
|
2
3
|
|
|
3
4
|
export { default as Button } from './Button.vue'
|
|
4
5
|
|
|
5
6
|
export const buttonVariants = cva(
|
|
6
|
-
'inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50',
|
|
7
|
+
'inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0',
|
|
7
8
|
{
|
|
8
9
|
variants: {
|
|
9
10
|
variant: {
|
|
@@ -19,7 +20,6 @@ export const buttonVariants = cva(
|
|
|
19
20
|
},
|
|
20
21
|
size: {
|
|
21
22
|
default: 'h-10 px-4 py-2',
|
|
22
|
-
xs: 'h-7 rounded px-2',
|
|
23
23
|
sm: 'h-9 rounded-md px-3',
|
|
24
24
|
lg: 'h-11 rounded-md px-8',
|
|
25
25
|
icon: 'h-10 w-10',
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
<script lang="ts" setup>
|
|
2
|
-
import {
|
|
3
|
-
import { CalendarRoot, type CalendarRootEmits, type CalendarRootProps, useForwardPropsEmits } from '
|
|
2
|
+
import { cn } from '~/lib/utils'
|
|
3
|
+
import { CalendarRoot, type CalendarRootEmits, type CalendarRootProps, useForwardPropsEmits } from 'reka-ui'
|
|
4
|
+
import { computed, type HTMLAttributes } from 'vue'
|
|
4
5
|
import { CalendarCell, CalendarCellTrigger, CalendarGrid, CalendarGridBody, CalendarGridHead, CalendarGridRow, CalendarHeadCell, CalendarHeader, CalendarHeading, CalendarNextButton, CalendarPrevButton } from '.'
|
|
5
|
-
import { cn } from '@/lib/utils'
|
|
6
6
|
|
|
7
7
|
const props = defineProps<CalendarRootProps & { class?: HTMLAttributes['class'] }>()
|
|
8
8
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<script lang="ts" setup>
|
|
2
|
-
import {
|
|
3
|
-
import { CalendarCell, type CalendarCellProps, useForwardProps } from '
|
|
4
|
-
import {
|
|
2
|
+
import { cn } from '~/lib/utils'
|
|
3
|
+
import { CalendarCell, type CalendarCellProps, useForwardProps } from 'reka-ui'
|
|
4
|
+
import { computed, type HTMLAttributes } from 'vue'
|
|
5
5
|
|
|
6
6
|
const props = defineProps<CalendarCellProps & { class?: HTMLAttributes['class'] }>()
|
|
7
7
|
|
|
@@ -16,7 +16,7 @@ const forwardedProps = useForwardProps(delegatedProps)
|
|
|
16
16
|
|
|
17
17
|
<template>
|
|
18
18
|
<CalendarCell
|
|
19
|
-
:class="cn('relative h-9 w-9 p-0 text-center text-sm focus-within:relative focus-within:z-20 [&:has([data-selected])]:rounded-md [&:has([data-selected])]:bg-accent [&:has([data-selected][data-outside-
|
|
19
|
+
:class="cn('relative h-9 w-9 p-0 text-center text-sm focus-within:relative focus-within:z-20 [&:has([data-selected])]:rounded-md [&:has([data-selected])]:bg-accent [&:has([data-selected][data-outside-view])]:bg-accent/50', props.class)"
|
|
20
20
|
v-bind="forwardedProps"
|
|
21
21
|
>
|
|
22
22
|
<slot />
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
<script lang="ts" setup>
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
2
|
+
import { cn } from '~/lib/utils'
|
|
3
|
+
import { buttonVariants } from '~/components/ui/button'
|
|
4
|
+
import { CalendarCellTrigger, type CalendarCellTriggerProps, useForwardProps } from 'reka-ui'
|
|
5
|
+
import { computed, type HTMLAttributes } from 'vue'
|
|
6
6
|
|
|
7
7
|
const props = defineProps<CalendarCellTriggerProps & { class?: HTMLAttributes['class'] }>()
|
|
8
8
|
|
|
@@ -28,7 +28,7 @@ const forwardedProps = useForwardProps(delegatedProps)
|
|
|
28
28
|
// Unavailable
|
|
29
29
|
'data-[unavailable]:text-destructive-foreground data-[unavailable]:line-through',
|
|
30
30
|
// Outside months
|
|
31
|
-
'data-[outside-
|
|
31
|
+
'data-[outside-view]:text-muted-foreground data-[outside-view]:opacity-50 [&[data-outside-view][data-selected]]:bg-accent/50 [&[data-outside-view][data-selected]]:text-muted-foreground [&[data-outside-view][data-selected]]:opacity-30',
|
|
32
32
|
props.class,
|
|
33
33
|
)"
|
|
34
34
|
v-bind="forwardedProps"
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<script lang="ts" setup>
|
|
2
|
-
import {
|
|
3
|
-
import { CalendarGrid, type CalendarGridProps, useForwardProps } from '
|
|
4
|
-
import {
|
|
2
|
+
import { cn } from '~/lib/utils'
|
|
3
|
+
import { CalendarGrid, type CalendarGridProps, useForwardProps } from 'reka-ui'
|
|
4
|
+
import { computed, type HTMLAttributes } from 'vue'
|
|
5
5
|
|
|
6
6
|
const props = defineProps<CalendarGridProps & { class?: HTMLAttributes['class'] }>()
|
|
7
7
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<script lang="ts" setup>
|
|
2
|
-
import {
|
|
3
|
-
import { CalendarGridRow, type CalendarGridRowProps, useForwardProps } from '
|
|
4
|
-
import {
|
|
2
|
+
import { cn } from '~/lib/utils'
|
|
3
|
+
import { CalendarGridRow, type CalendarGridRowProps, useForwardProps } from 'reka-ui'
|
|
4
|
+
import { computed, type HTMLAttributes } from 'vue'
|
|
5
5
|
|
|
6
6
|
const props = defineProps<CalendarGridRowProps & { class?: HTMLAttributes['class'] }>()
|
|
7
7
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<script lang="ts" setup>
|
|
2
|
-
import {
|
|
3
|
-
import { CalendarHeadCell, type CalendarHeadCellProps, useForwardProps } from '
|
|
4
|
-
import {
|
|
2
|
+
import { cn } from '~/lib/utils'
|
|
3
|
+
import { CalendarHeadCell, type CalendarHeadCellProps, useForwardProps } from 'reka-ui'
|
|
4
|
+
import { computed, type HTMLAttributes } from 'vue'
|
|
5
5
|
|
|
6
6
|
const props = defineProps<CalendarHeadCellProps & { class?: HTMLAttributes['class'] }>()
|
|
7
7
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<script lang="ts" setup>
|
|
2
|
-
import {
|
|
3
|
-
import { CalendarHeader, type CalendarHeaderProps, useForwardProps } from '
|
|
4
|
-
import {
|
|
2
|
+
import { cn } from '~/lib/utils'
|
|
3
|
+
import { CalendarHeader, type CalendarHeaderProps, useForwardProps } from 'reka-ui'
|
|
4
|
+
import { computed, type HTMLAttributes } from 'vue'
|
|
5
5
|
|
|
6
6
|
const props = defineProps<CalendarHeaderProps & { class?: HTMLAttributes['class'] }>()
|
|
7
7
|
|
|
@@ -1,10 +1,14 @@
|
|
|
1
1
|
<script lang="ts" setup>
|
|
2
|
-
import {
|
|
3
|
-
import { CalendarHeading, type CalendarHeadingProps, useForwardProps } from '
|
|
4
|
-
import {
|
|
2
|
+
import { cn } from '~/lib/utils'
|
|
3
|
+
import { CalendarHeading, type CalendarHeadingProps, useForwardProps } from 'reka-ui'
|
|
4
|
+
import { computed, type HTMLAttributes } from 'vue'
|
|
5
5
|
|
|
6
6
|
const props = defineProps<CalendarHeadingProps & { class?: HTMLAttributes['class'] }>()
|
|
7
7
|
|
|
8
|
+
defineSlots<{
|
|
9
|
+
default: (props: { headingValue: string }) => any
|
|
10
|
+
}>()
|
|
11
|
+
|
|
8
12
|
const delegatedProps = computed(() => {
|
|
9
13
|
const { class: _, ...delegated } = props
|
|
10
14
|
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
<script lang="ts" setup>
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { cn } from '~/lib/utils'
|
|
3
|
+
import { buttonVariants } from '~/components/ui/button'
|
|
4
4
|
import { ChevronRight } from 'lucide-vue-next'
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
5
|
+
import { CalendarNext, type CalendarNextProps, useForwardProps } from 'reka-ui'
|
|
6
|
+
import { computed, type HTMLAttributes } from 'vue'
|
|
7
7
|
|
|
8
8
|
const props = defineProps<CalendarNextProps & { class?: HTMLAttributes['class'] }>()
|
|
9
9
|
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
<script lang="ts" setup>
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { cn } from '~/lib/utils'
|
|
3
|
+
import { buttonVariants } from '~/components/ui/button'
|
|
4
4
|
import { ChevronLeft } from 'lucide-vue-next'
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
5
|
+
import { CalendarPrev, type CalendarPrevProps, useForwardProps } from 'reka-ui'
|
|
6
|
+
import { computed, type HTMLAttributes } from 'vue'
|
|
7
7
|
|
|
8
8
|
const props = defineProps<CalendarPrevProps & { class?: HTMLAttributes['class'] }>()
|
|
9
9
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { default as Card } from './Card.vue'
|
|
2
|
-
export { default as CardHeader } from './CardHeader.vue'
|
|
3
|
-
export { default as CardTitle } from './CardTitle.vue'
|
|
4
|
-
export { default as CardDescription } from './CardDescription.vue'
|
|
5
2
|
export { default as CardContent } from './CardContent.vue'
|
|
3
|
+
export { default as CardDescription } from './CardDescription.vue'
|
|
6
4
|
export { default as CardFooter } from './CardFooter.vue'
|
|
5
|
+
export { default as CardHeader } from './CardHeader.vue'
|
|
6
|
+
export { default as CardTitle } from './CardTitle.vue'
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<script setup lang="ts">
|
|
2
|
-
import { useProvideCarousel } from './useCarousel'
|
|
3
2
|
import type { CarouselEmits, CarouselProps, WithClassAsProps } from './interface'
|
|
4
|
-
import { cn } from '
|
|
3
|
+
import { cn } from '~/lib/utils'
|
|
4
|
+
import { useProvideCarousel } from './useCarousel'
|
|
5
5
|
|
|
6
6
|
const props = withDefaults(defineProps<CarouselProps & WithClassAsProps>(), {
|
|
7
7
|
orientation: 'horizontal',
|
|
@@ -9,9 +9,17 @@ const props = withDefaults(defineProps<CarouselProps & WithClassAsProps>(), {
|
|
|
9
9
|
|
|
10
10
|
const emits = defineEmits<CarouselEmits>()
|
|
11
11
|
|
|
12
|
-
const
|
|
12
|
+
const { canScrollNext, canScrollPrev, carouselApi, carouselRef, orientation, scrollNext, scrollPrev } = useProvideCarousel(props, emits)
|
|
13
13
|
|
|
14
|
-
defineExpose(
|
|
14
|
+
defineExpose({
|
|
15
|
+
canScrollNext,
|
|
16
|
+
canScrollPrev,
|
|
17
|
+
carouselApi,
|
|
18
|
+
carouselRef,
|
|
19
|
+
orientation,
|
|
20
|
+
scrollNext,
|
|
21
|
+
scrollPrev,
|
|
22
|
+
})
|
|
15
23
|
|
|
16
24
|
function onKeyDown(event: KeyboardEvent) {
|
|
17
25
|
const prevKey = props.orientation === 'vertical' ? 'ArrowUp' : 'ArrowLeft'
|
|
@@ -19,14 +27,14 @@ function onKeyDown(event: KeyboardEvent) {
|
|
|
19
27
|
|
|
20
28
|
if (event.key === prevKey) {
|
|
21
29
|
event.preventDefault()
|
|
22
|
-
|
|
30
|
+
scrollPrev()
|
|
23
31
|
|
|
24
32
|
return
|
|
25
33
|
}
|
|
26
34
|
|
|
27
35
|
if (event.key === nextKey) {
|
|
28
36
|
event.preventDefault()
|
|
29
|
-
|
|
37
|
+
scrollNext()
|
|
30
38
|
}
|
|
31
39
|
}
|
|
32
40
|
</script>
|
|
@@ -39,6 +47,6 @@ function onKeyDown(event: KeyboardEvent) {
|
|
|
39
47
|
tabindex="0"
|
|
40
48
|
@keydown="onKeyDown"
|
|
41
49
|
>
|
|
42
|
-
<slot
|
|
50
|
+
<slot :can-scroll-next :can-scroll-prev :carousel-api :carousel-ref :orientation :scroll-next :scroll-prev />
|
|
43
51
|
</div>
|
|
44
52
|
</template>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<script setup lang="ts">
|
|
2
|
-
import { useCarousel } from './useCarousel'
|
|
3
2
|
import type { WithClassAsProps } from './interface'
|
|
4
|
-
import { cn } from '
|
|
3
|
+
import { cn } from '~/lib/utils'
|
|
4
|
+
import { useCarousel } from './useCarousel'
|
|
5
5
|
|
|
6
6
|
defineOptions({
|
|
7
7
|
inheritAttrs: false,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<script setup lang="ts">
|
|
2
|
-
import { useCarousel } from './useCarousel'
|
|
3
2
|
import type { WithClassAsProps } from './interface'
|
|
4
|
-
import { cn } from '
|
|
3
|
+
import { cn } from '~/lib/utils'
|
|
4
|
+
import { useCarousel } from './useCarousel'
|
|
5
5
|
|
|
6
6
|
const props = defineProps<WithClassAsProps>()
|
|
7
7
|
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
<script setup lang="ts">
|
|
2
|
+
import type { WithClassAsProps } from './interface'
|
|
3
|
+
import { cn } from '~/lib/utils'
|
|
4
|
+
import { Button } from '~/components/ui/button'
|
|
2
5
|
import { ArrowRight } from 'lucide-vue-next'
|
|
3
6
|
import { useCarousel } from './useCarousel'
|
|
4
|
-
import type { WithClassAsProps } from './interface'
|
|
5
|
-
import { cn } from '@/lib/utils'
|
|
6
|
-
import { Button } from '@/components/ui/button'
|
|
7
7
|
|
|
8
8
|
const props = defineProps<WithClassAsProps>()
|
|
9
9
|
|
|
@@ -25,6 +25,7 @@ const { orientation, canScrollNext, scrollNext } = useCarousel()
|
|
|
25
25
|
>
|
|
26
26
|
<slot>
|
|
27
27
|
<ArrowRight class="h-4 w-4 text-current" />
|
|
28
|
+
<span class="sr-only">Next Slide</span>
|
|
28
29
|
</slot>
|
|
29
30
|
</Button>
|
|
30
31
|
</template>
|