@edgedev/create-edge-app 1.1.5 → 1.1.7

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.
Files changed (357) hide show
  1. package/.eslintrc +2 -1
  2. package/assets/css/tailwind.css +12 -2
  3. package/components/ui/accordion/Accordion.vue +1 -1
  4. package/components/ui/accordion/AccordionContent.vue +3 -3
  5. package/components/ui/accordion/AccordionItem.vue +3 -3
  6. package/components/ui/accordion/AccordionTrigger.vue +4 -4
  7. package/components/ui/alert/Alert.vue +1 -1
  8. package/components/ui/alert/AlertDescription.vue +1 -1
  9. package/components/ui/alert/AlertTitle.vue +1 -1
  10. package/components/ui/alert/index.ts +2 -2
  11. package/components/ui/alert-dialog/AlertDialog.vue +1 -1
  12. package/components/ui/alert-dialog/AlertDialogAction.vue +4 -4
  13. package/components/ui/alert-dialog/AlertDialogCancel.vue +12 -5
  14. package/components/ui/alert-dialog/AlertDialogContent.vue +4 -4
  15. package/components/ui/alert-dialog/AlertDialogDescription.vue +3 -3
  16. package/components/ui/alert-dialog/AlertDialogFooter.vue +1 -1
  17. package/components/ui/alert-dialog/AlertDialogHeader.vue +1 -1
  18. package/components/ui/alert-dialog/AlertDialogTitle.vue +3 -3
  19. package/components/ui/alert-dialog/AlertDialogTrigger.vue +1 -1
  20. package/components/ui/alert-dialog/index.ts +5 -5
  21. package/components/ui/aspect-ratio/AspectRatio.vue +1 -1
  22. package/components/ui/auto-form/AutoForm.vue +8 -8
  23. package/components/ui/auto-form/AutoFormField.vue +1 -1
  24. package/components/ui/auto-form/AutoFormFieldArray.vue +9 -9
  25. package/components/ui/auto-form/AutoFormFieldBoolean.vue +9 -9
  26. package/components/ui/auto-form/AutoFormFieldDate.vue +9 -9
  27. package/components/ui/auto-form/AutoFormFieldEnum.vue +8 -8
  28. package/components/ui/auto-form/AutoFormFieldFile.vue +6 -6
  29. package/components/ui/auto-form/AutoFormFieldInput.vue +5 -5
  30. package/components/ui/auto-form/AutoFormFieldNumber.vue +4 -4
  31. package/components/ui/auto-form/AutoFormFieldObject.vue +5 -5
  32. package/components/ui/auto-form/AutoFormLabel.vue +1 -1
  33. package/components/ui/auto-form/constant.ts +2 -1
  34. package/components/ui/auto-form/dependencies.ts +4 -4
  35. package/components/ui/auto-form/index.ts +4 -4
  36. package/components/ui/auto-form/interface.ts +15 -1
  37. package/components/ui/auto-form/utils.ts +23 -6
  38. package/components/ui/avatar/Avatar.vue +3 -3
  39. package/components/ui/avatar/AvatarFallback.vue +1 -1
  40. package/components/ui/avatar/AvatarImage.vue +5 -2
  41. package/components/ui/avatar/index.ts +2 -2
  42. package/components/ui/badge/Badge.vue +1 -1
  43. package/components/ui/badge/index.ts +1 -1
  44. package/components/ui/breadcrumb/BreadcrumbEllipsis.vue +1 -1
  45. package/components/ui/breadcrumb/BreadcrumbItem.vue +1 -1
  46. package/components/ui/breadcrumb/BreadcrumbLink.vue +2 -2
  47. package/components/ui/breadcrumb/BreadcrumbList.vue +1 -1
  48. package/components/ui/breadcrumb/BreadcrumbPage.vue +1 -1
  49. package/components/ui/breadcrumb/BreadcrumbSeparator.vue +2 -2
  50. package/components/ui/button/Button.vue +2 -2
  51. package/components/ui/button/index.ts +3 -3
  52. package/components/ui/calendar/Calendar.vue +3 -3
  53. package/components/ui/calendar/CalendarCell.vue +4 -4
  54. package/components/ui/calendar/CalendarCellTrigger.vue +5 -5
  55. package/components/ui/calendar/CalendarGrid.vue +3 -3
  56. package/components/ui/calendar/CalendarGridBody.vue +1 -1
  57. package/components/ui/calendar/CalendarGridHead.vue +1 -1
  58. package/components/ui/calendar/CalendarGridRow.vue +3 -3
  59. package/components/ui/calendar/CalendarHeadCell.vue +3 -3
  60. package/components/ui/calendar/CalendarHeader.vue +3 -3
  61. package/components/ui/calendar/CalendarHeading.vue +7 -3
  62. package/components/ui/calendar/CalendarNextButton.vue +4 -4
  63. package/components/ui/calendar/CalendarPrevButton.vue +4 -4
  64. package/components/ui/card/Card.vue +1 -1
  65. package/components/ui/card/CardContent.vue +1 -1
  66. package/components/ui/card/CardDescription.vue +1 -1
  67. package/components/ui/card/CardFooter.vue +1 -1
  68. package/components/ui/card/CardHeader.vue +1 -1
  69. package/components/ui/card/CardTitle.vue +1 -1
  70. package/components/ui/card/index.ts +3 -3
  71. package/components/ui/carousel/Carousel.vue +15 -7
  72. package/components/ui/carousel/CarouselContent.vue +2 -2
  73. package/components/ui/carousel/CarouselItem.vue +2 -2
  74. package/components/ui/carousel/CarouselNext.vue +4 -3
  75. package/components/ui/carousel/CarouselPrevious.vue +4 -3
  76. package/components/ui/carousel/index.ts +5 -5
  77. package/components/ui/carousel/interface.ts +14 -8
  78. package/components/ui/carousel/useCarousel.ts +5 -8
  79. package/components/ui/chart/ChartCrosshair.vue +2 -2
  80. package/components/ui/chart/ChartLegend.vue +3 -3
  81. package/components/ui/chart/ChartSingleTooltip.vue +6 -7
  82. package/components/ui/chart/ChartTooltip.vue +1 -1
  83. package/components/ui/chart/index.ts +6 -6
  84. package/components/ui/chart-area/AreaChart.vue +10 -7
  85. package/components/ui/chart-bar/BarChart.vue +5 -5
  86. package/components/ui/chart-donut/DonutChart.vue +6 -6
  87. package/components/ui/chart-line/LineChart.vue +5 -5
  88. package/components/ui/checkbox/Checkbox.vue +4 -4
  89. package/components/ui/collapsible/Collapsible.vue +2 -2
  90. package/components/ui/collapsible/CollapsibleContent.vue +1 -1
  91. package/components/ui/collapsible/CollapsibleTrigger.vue +1 -1
  92. package/components/ui/collapsible/index.ts +1 -1
  93. package/components/ui/combobox/Combobox.vue +14 -0
  94. package/components/ui/combobox/ComboboxAnchor.vue +25 -0
  95. package/components/ui/combobox/ComboboxEmpty.vue +20 -0
  96. package/components/ui/combobox/ComboboxGroup.vue +29 -0
  97. package/components/ui/combobox/ComboboxInput.vue +28 -0
  98. package/components/ui/combobox/ComboboxItem.vue +26 -0
  99. package/components/ui/combobox/ComboboxList.vue +34 -0
  100. package/components/ui/combobox/ComboboxSeparator.vue +23 -0
  101. package/components/ui/combobox/ComboboxTrigger.vue +26 -0
  102. package/components/ui/combobox/index.ts +10 -0
  103. package/components/ui/command/Command.vue +71 -9
  104. package/components/ui/command/CommandDialog.vue +3 -3
  105. package/components/ui/command/CommandEmpty.vue +12 -7
  106. package/components/ui/command/CommandGroup.vue +26 -9
  107. package/components/ui/command/CommandInput.vue +10 -6
  108. package/components/ui/command/CommandItem.vue +61 -9
  109. package/components/ui/command/CommandList.vue +8 -11
  110. package/components/ui/command/CommandSeparator.vue +7 -7
  111. package/components/ui/command/CommandShortcut.vue +1 -1
  112. package/components/ui/command/index.ts +16 -0
  113. package/components/ui/context-menu/ContextMenu.vue +2 -2
  114. package/components/ui/context-menu/ContextMenuCheckboxItem.vue +4 -4
  115. package/components/ui/context-menu/ContextMenuContent.vue +3 -3
  116. package/components/ui/context-menu/ContextMenuGroup.vue +1 -1
  117. package/components/ui/context-menu/ContextMenuItem.vue +3 -3
  118. package/components/ui/context-menu/ContextMenuLabel.vue +3 -3
  119. package/components/ui/context-menu/ContextMenuPortal.vue +1 -1
  120. package/components/ui/context-menu/ContextMenuRadioGroup.vue +1 -1
  121. package/components/ui/context-menu/ContextMenuRadioItem.vue +4 -4
  122. package/components/ui/context-menu/ContextMenuSeparator.vue +3 -3
  123. package/components/ui/context-menu/ContextMenuShortcut.vue +1 -1
  124. package/components/ui/context-menu/ContextMenuSub.vue +1 -1
  125. package/components/ui/context-menu/ContextMenuSubContent.vue +3 -3
  126. package/components/ui/context-menu/ContextMenuSubTrigger.vue +4 -4
  127. package/components/ui/context-menu/ContextMenuTrigger.vue +1 -1
  128. package/components/ui/context-menu/index.ts +6 -6
  129. package/components/ui/dialog/Dialog.vue +1 -1
  130. package/components/ui/dialog/DialogClose.vue +1 -1
  131. package/components/ui/dialog/DialogContent.vue +5 -5
  132. package/components/ui/dialog/DialogDescription.vue +3 -3
  133. package/components/ui/dialog/DialogFooter.vue +1 -1
  134. package/components/ui/dialog/DialogHeader.vue +1 -1
  135. package/components/ui/dialog/DialogScrollContent.vue +5 -5
  136. package/components/ui/dialog/DialogTitle.vue +3 -3
  137. package/components/ui/dialog/DialogTrigger.vue +1 -1
  138. package/components/ui/dialog/index.ts +5 -5
  139. package/components/ui/drawer/Drawer.vue +1 -1
  140. package/components/ui/drawer/DrawerContent.vue +4 -4
  141. package/components/ui/drawer/DrawerDescription.vue +2 -2
  142. package/components/ui/drawer/DrawerFooter.vue +1 -1
  143. package/components/ui/drawer/DrawerHeader.vue +1 -1
  144. package/components/ui/drawer/DrawerOverlay.vue +3 -3
  145. package/components/ui/drawer/DrawerTitle.vue +2 -2
  146. package/components/ui/drawer/index.ts +4 -4
  147. package/components/ui/dropdown-menu/DropdownMenu.vue +1 -1
  148. package/components/ui/dropdown-menu/DropdownMenuCheckboxItem.vue +4 -4
  149. package/components/ui/dropdown-menu/DropdownMenuContent.vue +3 -3
  150. package/components/ui/dropdown-menu/DropdownMenuGroup.vue +1 -1
  151. package/components/ui/dropdown-menu/DropdownMenuItem.vue +4 -4
  152. package/components/ui/dropdown-menu/DropdownMenuLabel.vue +3 -3
  153. package/components/ui/dropdown-menu/DropdownMenuRadioGroup.vue +1 -1
  154. package/components/ui/dropdown-menu/DropdownMenuRadioItem.vue +4 -4
  155. package/components/ui/dropdown-menu/DropdownMenuSeparator.vue +3 -3
  156. package/components/ui/dropdown-menu/DropdownMenuShortcut.vue +1 -1
  157. package/components/ui/dropdown-menu/DropdownMenuSub.vue +1 -1
  158. package/components/ui/dropdown-menu/DropdownMenuSubContent.vue +3 -3
  159. package/components/ui/dropdown-menu/DropdownMenuSubTrigger.vue +4 -4
  160. package/components/ui/dropdown-menu/DropdownMenuTrigger.vue +1 -1
  161. package/components/ui/dropdown-menu/index.ts +8 -8
  162. package/components/ui/form/FormControl.vue +1 -1
  163. package/components/ui/form/FormDescription.vue +1 -1
  164. package/components/ui/form/FormItem.vue +2 -2
  165. package/components/ui/form/FormLabel.vue +3 -3
  166. package/components/ui/form/index.ts +3 -3
  167. package/components/ui/form/useFormField.ts +7 -7
  168. package/components/ui/hover-card/HoverCard.vue +1 -1
  169. package/components/ui/hover-card/HoverCardContent.vue +3 -3
  170. package/components/ui/hover-card/HoverCardTrigger.vue +1 -1
  171. package/components/ui/hover-card/index.ts +1 -1
  172. package/components/ui/input/Input.vue +1 -1
  173. package/components/ui/label/Label.vue +3 -3
  174. package/components/ui/menubar/Menubar.vue +3 -3
  175. package/components/ui/menubar/MenubarCheckboxItem.vue +4 -4
  176. package/components/ui/menubar/MenubarContent.vue +3 -3
  177. package/components/ui/menubar/MenubarGroup.vue +1 -1
  178. package/components/ui/menubar/MenubarItem.vue +3 -3
  179. package/components/ui/menubar/MenubarLabel.vue +2 -2
  180. package/components/ui/menubar/MenubarMenu.vue +1 -1
  181. package/components/ui/menubar/MenubarRadioGroup.vue +1 -1
  182. package/components/ui/menubar/MenubarRadioItem.vue +4 -4
  183. package/components/ui/menubar/MenubarSeparator.vue +3 -3
  184. package/components/ui/menubar/MenubarShortcut.vue +1 -1
  185. package/components/ui/menubar/MenubarSub.vue +1 -1
  186. package/components/ui/menubar/MenubarSubContent.vue +3 -3
  187. package/components/ui/menubar/MenubarSubTrigger.vue +3 -3
  188. package/components/ui/menubar/MenubarTrigger.vue +3 -3
  189. package/components/ui/menubar/index.ts +4 -4
  190. package/components/ui/navigation-menu/NavigationMenu.vue +3 -3
  191. package/components/ui/navigation-menu/NavigationMenuContent.vue +3 -3
  192. package/components/ui/navigation-menu/NavigationMenuIndicator.vue +3 -3
  193. package/components/ui/navigation-menu/NavigationMenuItem.vue +1 -1
  194. package/components/ui/navigation-menu/NavigationMenuLink.vue +1 -1
  195. package/components/ui/navigation-menu/NavigationMenuList.vue +3 -3
  196. package/components/ui/navigation-menu/NavigationMenuTrigger.vue +4 -4
  197. package/components/ui/navigation-menu/NavigationMenuViewport.vue +4 -4
  198. package/components/ui/navigation-menu/index.ts +5 -3
  199. package/components/ui/number-field/NumberField.vue +4 -4
  200. package/components/ui/number-field/NumberFieldContent.vue +2 -2
  201. package/components/ui/number-field/NumberFieldDecrement.vue +5 -5
  202. package/components/ui/number-field/NumberFieldIncrement.vue +5 -5
  203. package/components/ui/number-field/NumberFieldInput.vue +11 -3
  204. package/components/ui/number-field/index.ts +3 -3
  205. package/components/ui/pagination/PaginationEllipsis.vue +3 -3
  206. package/components/ui/pagination/PaginationFirst.vue +5 -5
  207. package/components/ui/pagination/PaginationLast.vue +5 -5
  208. package/components/ui/pagination/PaginationNext.vue +5 -5
  209. package/components/ui/pagination/PaginationPrev.vue +5 -5
  210. package/components/ui/pagination/index.ts +5 -5
  211. package/components/ui/pin-input/PinInput.vue +3 -3
  212. package/components/ui/pin-input/PinInputGroup.vue +3 -3
  213. package/components/ui/pin-input/PinInputInput.vue +3 -3
  214. package/components/ui/pin-input/PinInputSeparator.vue +1 -1
  215. package/components/ui/pin-input/index.ts +1 -1
  216. package/components/ui/popover/Popover.vue +2 -2
  217. package/components/ui/popover/PopoverContent.vue +3 -3
  218. package/components/ui/popover/PopoverTrigger.vue +1 -1
  219. package/components/ui/popover/index.ts +1 -1
  220. package/components/ui/progress/Progress.vue +3 -3
  221. package/components/ui/radio-group/RadioGroup.vue +3 -3
  222. package/components/ui/radio-group/RadioGroupItem.vue +8 -6
  223. package/components/ui/range-calendar/RangeCalendar.vue +3 -3
  224. package/components/ui/range-calendar/RangeCalendarCell.vue +4 -4
  225. package/components/ui/range-calendar/RangeCalendarCellTrigger.vue +5 -5
  226. package/components/ui/range-calendar/RangeCalendarGrid.vue +3 -3
  227. package/components/ui/range-calendar/RangeCalendarGridBody.vue +1 -1
  228. package/components/ui/range-calendar/RangeCalendarGridHead.vue +1 -1
  229. package/components/ui/range-calendar/RangeCalendarGridRow.vue +3 -3
  230. package/components/ui/range-calendar/RangeCalendarHeadCell.vue +4 -4
  231. package/components/ui/range-calendar/RangeCalendarHeader.vue +3 -3
  232. package/components/ui/range-calendar/RangeCalendarHeading.vue +7 -3
  233. package/components/ui/range-calendar/RangeCalendarNextButton.vue +4 -4
  234. package/components/ui/range-calendar/RangeCalendarPrevButton.vue +4 -4
  235. package/components/ui/resizable/ResizableHandle.vue +3 -3
  236. package/components/ui/resizable/ResizablePanelGroup.vue +3 -3
  237. package/components/ui/resizable/index.ts +2 -2
  238. package/components/ui/scroll-area/ScrollArea.vue +3 -3
  239. package/components/ui/scroll-area/ScrollBar.vue +3 -3
  240. package/components/ui/select/Select.vue +2 -2
  241. package/components/ui/select/SelectContent.vue +4 -4
  242. package/components/ui/select/SelectGroup.vue +3 -3
  243. package/components/ui/select/SelectItem.vue +4 -4
  244. package/components/ui/select/SelectItemText.vue +1 -1
  245. package/components/ui/select/SelectLabel.vue +2 -2
  246. package/components/ui/select/SelectScrollDownButton.vue +3 -3
  247. package/components/ui/select/SelectScrollUpButton.vue +3 -3
  248. package/components/ui/select/SelectSeparator.vue +3 -3
  249. package/components/ui/select/SelectTrigger.vue +5 -5
  250. package/components/ui/select/SelectValue.vue +1 -1
  251. package/components/ui/select/index.ts +4 -4
  252. package/components/ui/separator/Separator.vue +21 -6
  253. package/components/ui/sheet/Sheet.vue +1 -1
  254. package/components/ui/sheet/SheetClose.vue +1 -1
  255. package/components/ui/sheet/SheetContent.vue +5 -5
  256. package/components/ui/sheet/SheetDescription.vue +3 -3
  257. package/components/ui/sheet/SheetFooter.vue +1 -1
  258. package/components/ui/sheet/SheetHeader.vue +1 -1
  259. package/components/ui/sheet/SheetTitle.vue +3 -3
  260. package/components/ui/sheet/SheetTrigger.vue +1 -1
  261. package/components/ui/sheet/index.ts +4 -4
  262. package/components/ui/sidebar/Sidebar.vue +8 -8
  263. package/components/ui/sidebar/SidebarContent.vue +1 -1
  264. package/components/ui/sidebar/SidebarFooter.vue +1 -1
  265. package/components/ui/sidebar/SidebarGroup.vue +1 -1
  266. package/components/ui/sidebar/SidebarGroupAction.vue +3 -4
  267. package/components/ui/sidebar/SidebarGroupContent.vue +1 -1
  268. package/components/ui/sidebar/SidebarGroupLabel.vue +3 -3
  269. package/components/ui/sidebar/SidebarHeader.vue +1 -1
  270. package/components/ui/sidebar/SidebarInput.vue +2 -2
  271. package/components/ui/sidebar/SidebarInset.vue +1 -1
  272. package/components/ui/sidebar/SidebarMenu.vue +1 -1
  273. package/components/ui/sidebar/SidebarMenuAction.vue +2 -3
  274. package/components/ui/sidebar/SidebarMenuBadge.vue +1 -1
  275. package/components/ui/sidebar/SidebarMenuButton.vue +1 -1
  276. package/components/ui/sidebar/SidebarMenuButtonChild.vue +2 -2
  277. package/components/ui/sidebar/SidebarMenuItem.vue +1 -1
  278. package/components/ui/sidebar/SidebarMenuSkeleton.vue +2 -2
  279. package/components/ui/sidebar/SidebarMenuSub.vue +1 -1
  280. package/components/ui/sidebar/SidebarMenuSubButton.vue +3 -3
  281. package/components/ui/sidebar/SidebarProvider.vue +2 -2
  282. package/components/ui/sidebar/SidebarRail.vue +1 -1
  283. package/components/ui/sidebar/SidebarSeparator.vue +2 -2
  284. package/components/ui/sidebar/SidebarTrigger.vue +2 -2
  285. package/components/ui/sidebar/utils.ts +1 -1
  286. package/components/ui/skeleton/Skeleton.vue +1 -1
  287. package/components/ui/slider/Slider.vue +7 -7
  288. package/components/ui/stepper/Stepper.vue +31 -0
  289. package/components/ui/stepper/StepperDescription.vue +23 -0
  290. package/components/ui/stepper/StepperIndicator.vue +35 -0
  291. package/components/ui/stepper/StepperItem.vue +27 -0
  292. package/components/ui/stepper/StepperSeparator.vue +31 -0
  293. package/components/ui/stepper/StepperTitle.vue +23 -0
  294. package/components/ui/stepper/StepperTrigger.vue +26 -0
  295. package/components/ui/stepper/index.ts +7 -0
  296. package/components/ui/switch/Switch.vue +7 -5
  297. package/components/ui/table/Table.vue +1 -1
  298. package/components/ui/table/TableBody.vue +1 -1
  299. package/components/ui/table/TableCaption.vue +1 -1
  300. package/components/ui/table/TableCell.vue +1 -1
  301. package/components/ui/table/TableEmpty.vue +3 -3
  302. package/components/ui/table/TableFooter.vue +1 -1
  303. package/components/ui/table/TableHead.vue +1 -1
  304. package/components/ui/table/TableHeader.vue +1 -1
  305. package/components/ui/table/TableRow.vue +1 -1
  306. package/components/ui/table/index.ts +3 -2
  307. package/components/ui/tabs/Tabs.vue +2 -2
  308. package/components/ui/tabs/TabsContent.vue +3 -3
  309. package/components/ui/tabs/TabsList.vue +4 -4
  310. package/components/ui/tabs/TabsTrigger.vue +6 -4
  311. package/components/ui/tabs/index.ts +2 -2
  312. package/components/ui/tags-input/TagsInput.vue +3 -3
  313. package/components/ui/tags-input/TagsInputInput.vue +3 -3
  314. package/components/ui/tags-input/TagsInputItem.vue +3 -3
  315. package/components/ui/tags-input/TagsInputItemDelete.vue +3 -3
  316. package/components/ui/tags-input/TagsInputItemText.vue +3 -3
  317. package/components/ui/textarea/Textarea.vue +1 -1
  318. package/components/ui/toast/Toast.vue +2 -2
  319. package/components/ui/toast/ToastAction.vue +3 -3
  320. package/components/ui/toast/ToastClose.vue +3 -3
  321. package/components/ui/toast/ToastDescription.vue +3 -3
  322. package/components/ui/toast/ToastProvider.vue +1 -1
  323. package/components/ui/toast/ToastTitle.vue +3 -3
  324. package/components/ui/toast/ToastViewport.vue +3 -3
  325. package/components/ui/toast/Toaster.vue +1 -1
  326. package/components/ui/toast/index.ts +6 -6
  327. package/components/ui/toast/use-toast.ts +1 -1
  328. package/components/ui/toggle/Toggle.vue +3 -3
  329. package/components/ui/toggle/index.ts +5 -5
  330. package/components/ui/toggle-group/ToggleGroup.vue +4 -4
  331. package/components/ui/toggle-group/ToggleGroupItem.vue +4 -4
  332. package/components/ui/tooltip/Tooltip.vue +1 -1
  333. package/components/ui/tooltip/TooltipContent.vue +3 -3
  334. package/components/ui/tooltip/TooltipProvider.vue +1 -1
  335. package/components/ui/tooltip/TooltipTrigger.vue +1 -1
  336. package/components/ui/tooltip/index.ts +1 -1
  337. package/components.json +10 -7
  338. package/lib/utils.ts +9 -0
  339. package/middleware/auth.ts +7 -2
  340. package/nuxt.config.ts +1 -1
  341. package/package.json +13 -13
  342. package/components/ui/accordion/index.js +0 -4
  343. package/components/ui/alert/index.js +0 -21
  344. package/components/ui/button/index.js +0 -33
  345. package/components/ui/card/index.js +0 -6
  346. package/components/ui/command/index.js +0 -9
  347. package/components/ui/dialog/index.js +0 -9
  348. package/components/ui/form/index.js +0 -7
  349. package/components/ui/form/injectionKeys.js +0 -1
  350. package/components/ui/form/useFormField.js +0 -36
  351. package/components/ui/input/index.js +0 -1
  352. package/components/ui/label/index.js +0 -1
  353. package/components/ui/popover/index.js +0 -3
  354. package/components/ui/progress/index.js +0 -1
  355. package/components/ui/separator/index.js +0 -1
  356. package/components/ui/v-calendar/Calendar.vue +0 -331
  357. package/components/ui/v-calendar/index.ts +0 -22
@@ -1,5 +1,6 @@
1
1
  <script setup lang="ts">
2
- import { type HTMLAttributes, computed } from 'vue'
2
+ import { cn } from '~/lib/utils'
3
+ import { X } from 'lucide-vue-next'
3
4
  import {
4
5
  DialogClose,
5
6
  DialogContent,
@@ -8,10 +9,9 @@ import {
8
9
  DialogOverlay,
9
10
  DialogPortal,
10
11
  useForwardPropsEmits,
11
- } from 'radix-vue'
12
- import { X } from 'lucide-vue-next'
12
+ } from 'reka-ui'
13
+ import { computed, type HTMLAttributes } from 'vue'
13
14
  import { type SheetVariants, sheetVariants } from '.'
14
- import { cn } from '@/lib/utils'
15
15
 
16
16
  interface SheetContentProps extends DialogContentProps {
17
17
  class?: HTMLAttributes['class']
@@ -38,7 +38,7 @@ const forwarded = useForwardPropsEmits(delegatedProps, emits)
38
38
  <template>
39
39
  <DialogPortal>
40
40
  <DialogOverlay
41
- class="fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0"
41
+ class="fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0"
42
42
  />
43
43
  <DialogContent
44
44
  :class="cn(sheetVariants({ side }), props.class)"
@@ -1,7 +1,7 @@
1
1
  <script setup lang="ts">
2
- import { type HTMLAttributes, computed } from 'vue'
3
- import { DialogDescription, type DialogDescriptionProps } from 'radix-vue'
4
- import { cn } from '@/lib/utils'
2
+ import { cn } from '~/lib/utils'
3
+ import { DialogDescription, type DialogDescriptionProps } from 'reka-ui'
4
+ import { computed, type HTMLAttributes } from 'vue'
5
5
 
6
6
  const props = defineProps<DialogDescriptionProps & { class?: HTMLAttributes['class'] }>()
7
7
 
@@ -1,6 +1,6 @@
1
1
  <script setup lang="ts">
2
2
  import type { HTMLAttributes } from 'vue'
3
- import { cn } from '@/lib/utils'
3
+ import { cn } from '~/lib/utils'
4
4
 
5
5
  const props = defineProps<{ class?: HTMLAttributes['class'] }>()
6
6
  </script>
@@ -1,6 +1,6 @@
1
1
  <script setup lang="ts">
2
2
  import type { HTMLAttributes } from 'vue'
3
- import { cn } from '@/lib/utils'
3
+ import { cn } from '~/lib/utils'
4
4
 
5
5
  const props = defineProps<{ class?: HTMLAttributes['class'] }>()
6
6
  </script>
@@ -1,7 +1,7 @@
1
1
  <script setup lang="ts">
2
- import { type HTMLAttributes, computed } from 'vue'
3
- import { DialogTitle, type DialogTitleProps } from 'radix-vue'
4
- import { cn } from '@/lib/utils'
2
+ import { cn } from '~/lib/utils'
3
+ import { DialogTitle, type DialogTitleProps } from 'reka-ui'
4
+ import { computed, type HTMLAttributes } from 'vue'
5
5
 
6
6
  const props = defineProps<DialogTitleProps & { class?: HTMLAttributes['class'] }>()
7
7
 
@@ -1,5 +1,5 @@
1
1
  <script setup lang="ts">
2
- import { DialogTrigger, type DialogTriggerProps } from 'radix-vue'
2
+ import { DialogTrigger, type DialogTriggerProps } from 'reka-ui'
3
3
 
4
4
  const props = defineProps<DialogTriggerProps>()
5
5
  </script>
@@ -1,13 +1,13 @@
1
- import { type VariantProps, cva } from 'class-variance-authority'
1
+ import { cva, type VariantProps } from 'class-variance-authority'
2
2
 
3
3
  export { default as Sheet } from './Sheet.vue'
4
- export { default as SheetTrigger } from './SheetTrigger.vue'
5
4
  export { default as SheetClose } from './SheetClose.vue'
6
5
  export { default as SheetContent } from './SheetContent.vue'
7
- export { default as SheetHeader } from './SheetHeader.vue'
8
- export { default as SheetTitle } from './SheetTitle.vue'
9
6
  export { default as SheetDescription } from './SheetDescription.vue'
10
7
  export { default as SheetFooter } from './SheetFooter.vue'
8
+ export { default as SheetHeader } from './SheetHeader.vue'
9
+ export { default as SheetTitle } from './SheetTitle.vue'
10
+ export { default as SheetTrigger } from './SheetTrigger.vue'
11
11
 
12
12
  export const sheetVariants = cva(
13
13
  'fixed z-50 gap-4 bg-background p-6 shadow-lg transition ease-in-out data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:duration-300 data-[state=open]:duration-500',
@@ -1,8 +1,12 @@
1
1
  <script setup lang="ts">
2
- import { SIDEBAR_WIDTH_MOBILE, useSidebar } from './utils'
3
2
  import type { SidebarProps } from '.'
4
- import { Sheet, SheetContent } from '@/components/ui/sheet'
5
- import { cn } from '@/lib/utils'
3
+ import { cn } from '~/lib/utils'
4
+ import { Sheet, SheetContent } from '~/components/ui/sheet'
5
+ import { SIDEBAR_WIDTH_MOBILE, useSidebar } from './utils'
6
+
7
+ defineOptions({
8
+ inheritAttrs: false,
9
+ })
6
10
 
7
11
  const props = withDefaults(defineProps<SidebarProps>(), {
8
12
  side: 'left',
@@ -10,10 +14,6 @@ const props = withDefaults(defineProps<SidebarProps>(), {
10
14
  collapsible: 'offcanvas',
11
15
  })
12
16
 
13
- defineOptions({
14
- inheritAttrs: false,
15
- })
16
-
17
17
  const { isMobile, state, openMobile, setOpenMobile } = useSidebar()
18
18
  </script>
19
19
 
@@ -31,7 +31,7 @@ const { isMobile, state, openMobile, setOpenMobile } = useSidebar()
31
31
  data-sidebar="sidebar"
32
32
  data-mobile="true"
33
33
  :side="side"
34
- :class="cn('w-[--sidebar-width] bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden', props.class)"
34
+ class="w-[--sidebar-width] bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden"
35
35
  :style="{
36
36
  '--sidebar-width': SIDEBAR_WIDTH_MOBILE,
37
37
  }"
@@ -1,6 +1,6 @@
1
1
  <script setup lang="ts">
2
2
  import type { HTMLAttributes } from 'vue'
3
- import { cn } from '@/lib/utils'
3
+ import { cn } from '~/lib/utils'
4
4
 
5
5
  const props = defineProps<{
6
6
  class?: HTMLAttributes['class']
@@ -1,6 +1,6 @@
1
1
  <script setup lang="ts">
2
2
  import type { HTMLAttributes } from 'vue'
3
- import { cn } from '@/lib/utils'
3
+ import { cn } from '~/lib/utils'
4
4
 
5
5
  const props = defineProps<{
6
6
  class?: HTMLAttributes['class']
@@ -1,6 +1,6 @@
1
1
  <script setup lang="ts">
2
2
  import type { HTMLAttributes } from 'vue'
3
- import { cn } from '@/lib/utils'
3
+ import { cn } from '~/lib/utils'
4
4
 
5
5
  const props = defineProps<{
6
6
  class?: HTMLAttributes['class']
@@ -1,8 +1,8 @@
1
1
  <script setup lang="ts">
2
- import type { PrimitiveProps } from 'radix-vue'
2
+ import type { PrimitiveProps } from 'reka-ui'
3
3
  import type { HTMLAttributes } from 'vue'
4
- import { cn } from '@/lib/utils'
5
- import { Primitive } from 'radix-vue'
4
+ import { cn } from '~/lib/utils'
5
+ import { Primitive } from 'reka-ui'
6
6
 
7
7
  const props = defineProps<PrimitiveProps & {
8
8
  class?: HTMLAttributes['class']
@@ -16,7 +16,6 @@ const props = defineProps<PrimitiveProps & {
16
16
  :as-child="asChild"
17
17
  :class="cn(
18
18
  'absolute right-3 top-3.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground outline-none ring-sidebar-ring transition-transform hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0',
19
- // Increases the hit area of the button on mobile.
20
19
  'after:absolute after:-inset-2 after:md:hidden',
21
20
  'group-data-[collapsible=icon]:hidden',
22
21
  props.class,
@@ -1,6 +1,6 @@
1
1
  <script setup lang="ts">
2
2
  import type { HTMLAttributes } from 'vue'
3
- import { cn } from '@/lib/utils'
3
+ import { cn } from '~/lib/utils'
4
4
 
5
5
  const props = defineProps<{
6
6
  class?: HTMLAttributes['class']
@@ -1,8 +1,8 @@
1
1
  <script setup lang="ts">
2
- import type { PrimitiveProps } from 'radix-vue'
2
+ import type { PrimitiveProps } from 'reka-ui'
3
3
  import type { HTMLAttributes } from 'vue'
4
- import { cn } from '@/lib/utils'
5
- import { Primitive } from 'radix-vue'
4
+ import { cn } from '~/lib/utils'
5
+ import { Primitive } from 'reka-ui'
6
6
 
7
7
  const props = defineProps<PrimitiveProps & {
8
8
  class?: HTMLAttributes['class']
@@ -1,6 +1,6 @@
1
1
  <script setup lang="ts">
2
2
  import type { HTMLAttributes } from 'vue'
3
- import { cn } from '@/lib/utils'
3
+ import { cn } from '~/lib/utils'
4
4
 
5
5
  const props = defineProps<{
6
6
  class?: HTMLAttributes['class']
@@ -1,7 +1,7 @@
1
1
  <script setup lang="ts">
2
2
  import type { HTMLAttributes } from 'vue'
3
- import { Input } from '@/components/ui/input'
4
- import { cn } from '@/lib/utils'
3
+ import { cn } from '~/lib/utils'
4
+ import { Input } from '~/components/ui/input'
5
5
 
6
6
  const props = defineProps<{
7
7
  class?: HTMLAttributes['class']
@@ -1,6 +1,6 @@
1
1
  <script setup lang="ts">
2
2
  import type { HTMLAttributes } from 'vue'
3
- import { cn } from '@/lib/utils'
3
+ import { cn } from '~/lib/utils'
4
4
 
5
5
  const props = defineProps<{
6
6
  class?: HTMLAttributes['class']
@@ -1,6 +1,6 @@
1
1
  <script setup lang="ts">
2
2
  import type { HTMLAttributes } from 'vue'
3
- import { cn } from '@/lib/utils'
3
+ import { cn } from '~/lib/utils'
4
4
 
5
5
  const props = defineProps<{
6
6
  class?: HTMLAttributes['class']
@@ -1,7 +1,7 @@
1
1
  <script setup lang="ts">
2
2
  import type { HTMLAttributes } from 'vue'
3
- import { cn } from '@/lib/utils'
4
- import { Primitive, type PrimitiveProps } from 'radix-vue'
3
+ import { cn } from '~/lib/utils'
4
+ import { Primitive, type PrimitiveProps } from 'reka-ui'
5
5
 
6
6
  const props = withDefaults(defineProps<PrimitiveProps & {
7
7
  showOnHover?: boolean
@@ -16,7 +16,6 @@ const props = withDefaults(defineProps<PrimitiveProps & {
16
16
  data-sidebar="menu-action"
17
17
  :class="cn(
18
18
  'absolute right-1 top-1.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground outline-none ring-sidebar-ring transition-transform hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 peer-hover/menu-button:text-sidebar-accent-foreground [&>svg]:size-4 [&>svg]:shrink-0',
19
- // Increases the hit area of the button on mobile.
20
19
  'after:absolute after:-inset-2 after:md:hidden',
21
20
  'peer-data-[size=sm]/menu-button:top-1',
22
21
  'peer-data-[size=default]/menu-button:top-1.5',
@@ -1,6 +1,6 @@
1
1
  <script setup lang="ts">
2
2
  import type { HTMLAttributes } from 'vue'
3
- import { cn } from '@/lib/utils'
3
+ import { cn } from '~/lib/utils'
4
4
 
5
5
  const props = defineProps<{
6
6
  class?: HTMLAttributes['class']
@@ -1,5 +1,5 @@
1
1
  <script setup lang="ts">
2
- import { Tooltip, TooltipContent, TooltipTrigger } from '@/components/ui/tooltip'
2
+ import { Tooltip, TooltipContent, TooltipTrigger } from '~/components/ui/tooltip'
3
3
  import { type Component, computed } from 'vue'
4
4
  import SidebarMenuButtonChild, { type SidebarMenuButtonProps } from './SidebarMenuButtonChild.vue'
5
5
  import { useSidebar } from './utils'
@@ -1,7 +1,7 @@
1
1
  <script setup lang="ts">
2
2
  import type { HTMLAttributes } from 'vue'
3
- import { cn } from '@/lib/utils'
4
- import { Primitive, type PrimitiveProps } from 'radix-vue'
3
+ import { cn } from '~/lib/utils'
4
+ import { Primitive, type PrimitiveProps } from 'reka-ui'
5
5
  import { type SidebarMenuButtonVariants, sidebarMenuButtonVariants } from '.'
6
6
 
7
7
  export interface SidebarMenuButtonProps extends PrimitiveProps {
@@ -1,6 +1,6 @@
1
1
  <script setup lang="ts">
2
2
  import type { HTMLAttributes } from 'vue'
3
- import { cn } from '@/lib/utils'
3
+ import { cn } from '~/lib/utils'
4
4
 
5
5
  const props = defineProps<{
6
6
  class?: HTMLAttributes['class']
@@ -1,6 +1,6 @@
1
1
  <script setup lang="ts">
2
- import { Skeleton } from '@/components/ui/skeleton'
3
- import { cn } from '@/lib/utils'
2
+ import { cn } from '~/lib/utils'
3
+ import { Skeleton } from '~/components/ui/skeleton'
4
4
  import { computed, type HTMLAttributes } from 'vue'
5
5
 
6
6
  const props = defineProps<{
@@ -1,6 +1,6 @@
1
1
  <script setup lang="ts">
2
2
  import type { HTMLAttributes } from 'vue'
3
- import { cn } from '@/lib/utils'
3
+ import { cn } from '~/lib/utils'
4
4
 
5
5
  const props = defineProps<{
6
6
  class?: HTMLAttributes['class']
@@ -1,8 +1,8 @@
1
1
  <script setup lang="ts">
2
- import type { PrimitiveProps } from 'radix-vue'
2
+ import type { PrimitiveProps } from 'reka-ui'
3
3
  import type { HTMLAttributes } from 'vue'
4
- import { cn } from '@/lib/utils'
5
- import { Primitive } from 'radix-vue'
4
+ import { cn } from '~/lib/utils'
5
+ import { Primitive } from 'reka-ui'
6
6
 
7
7
  const props = withDefaults(defineProps<PrimitiveProps & {
8
8
  size?: 'sm' | 'md'
@@ -1,7 +1,7 @@
1
1
  <script setup lang="ts">
2
- import { cn } from '@/lib/utils'
2
+ import { cn } from '~/lib/utils'
3
3
  import { useEventListener, useMediaQuery, useVModel } from '@vueuse/core'
4
- import { TooltipProvider } from 'radix-vue'
4
+ import { TooltipProvider } from 'reka-ui'
5
5
  import { computed, type HTMLAttributes, type Ref, ref } from 'vue'
6
6
  import { provideSidebarContext, SIDEBAR_COOKIE_MAX_AGE, SIDEBAR_COOKIE_NAME, SIDEBAR_KEYBOARD_SHORTCUT, SIDEBAR_WIDTH, SIDEBAR_WIDTH_ICON } from './utils'
7
7
 
@@ -1,6 +1,6 @@
1
1
  <script setup lang="ts">
2
2
  import type { HTMLAttributes } from 'vue'
3
- import { cn } from '@/lib/utils'
3
+ import { cn } from '~/lib/utils'
4
4
  import { useSidebar } from './utils'
5
5
 
6
6
  const props = defineProps<{
@@ -1,7 +1,7 @@
1
1
  <script setup lang="ts">
2
2
  import type { HTMLAttributes } from 'vue'
3
- import { Separator } from '@/components/ui/separator'
4
- import { cn } from '@/lib/utils'
3
+ import { cn } from '~/lib/utils'
4
+ import { Separator } from '~/components/ui/separator'
5
5
 
6
6
  const props = defineProps<{
7
7
  class?: HTMLAttributes['class']
@@ -1,7 +1,7 @@
1
1
  <script setup lang="ts">
2
2
  import type { HTMLAttributes } from 'vue'
3
- import { Button } from '@/components/ui/button'
4
- import { cn } from '@/lib/utils'
3
+ import { cn } from '~/lib/utils'
4
+ import { Button } from '~/components/ui/button'
5
5
  import { PanelLeft } from 'lucide-vue-next'
6
6
  import { useSidebar } from './utils'
7
7
 
@@ -1,5 +1,5 @@
1
1
  import type { ComputedRef, Ref } from 'vue'
2
- import { createContext } from 'radix-vue'
2
+ import { createContext } from 'reka-ui'
3
3
 
4
4
  export const SIDEBAR_COOKIE_NAME = 'sidebar:state'
5
5
  export const SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7
@@ -1,6 +1,6 @@
1
1
  <script setup lang="ts">
2
2
  import type { HTMLAttributes } from 'vue'
3
- import { cn } from '@/lib/utils'
3
+ import { cn } from '~/lib/utils'
4
4
 
5
5
  interface SkeletonProps {
6
6
  class?: HTMLAttributes['class']
@@ -1,8 +1,8 @@
1
1
  <script setup lang="ts">
2
- import { type HTMLAttributes, computed } from 'vue'
3
- import type { SliderRootEmits, SliderRootProps } from 'radix-vue'
4
- import { SliderRange, SliderRoot, SliderThumb, SliderTrack, useForwardPropsEmits } from 'radix-vue'
5
- import { cn } from '@/lib/utils'
2
+ import type { SliderRootEmits, SliderRootProps } from 'reka-ui'
3
+ import { cn } from '~/lib/utils'
4
+ import { SliderRange, SliderRoot, SliderThumb, SliderTrack, useForwardPropsEmits } from 'reka-ui'
5
+ import { computed, type HTMLAttributes } from 'vue'
6
6
 
7
7
  const props = defineProps<SliderRootProps & { class?: HTMLAttributes['class'] }>()
8
8
  const emits = defineEmits<SliderRootEmits>()
@@ -19,13 +19,13 @@ const forwarded = useForwardPropsEmits(delegatedProps, emits)
19
19
  <template>
20
20
  <SliderRoot
21
21
  :class="cn(
22
- 'relative flex w-full touch-none select-none items-center',
22
+ 'relative flex w-full touch-none select-none items-center data-[orientation=vertical]:flex-col data-[orientation=vertical]:w-2 data-[orientation=vertical]:h-full',
23
23
  props.class,
24
24
  )"
25
25
  v-bind="forwarded"
26
26
  >
27
- <SliderTrack class="relative h-2 w-full grow overflow-hidden rounded-full bg-secondary">
28
- <SliderRange class="absolute h-full bg-primary" />
27
+ <SliderTrack class="relative h-2 w-full data-[orientation=vertical]:w-2 grow overflow-hidden rounded-full bg-secondary">
28
+ <SliderRange class="absolute h-full data-[orientation=vertical]:w-full bg-primary" />
29
29
  </SliderTrack>
30
30
  <SliderThumb
31
31
  v-for="(_, key) in modelValue"
@@ -0,0 +1,31 @@
1
+ <script lang="ts" setup>
2
+ import type { StepperRootEmits, StepperRootProps } from 'reka-ui'
3
+ import { cn } from '~/lib/utils'
4
+ import { StepperRoot, useForwardPropsEmits } from 'reka-ui'
5
+
6
+ import { computed, type HTMLAttributes } from 'vue'
7
+
8
+ const props = defineProps<StepperRootProps & { class?: HTMLAttributes['class'] }>()
9
+ const emits = defineEmits<StepperRootEmits>()
10
+
11
+ const delegatedProps = computed(() => {
12
+ const { class: _, ...delegated } = props
13
+
14
+ return delegated
15
+ })
16
+
17
+ const forwarded = useForwardPropsEmits(delegatedProps, emits)
18
+ </script>
19
+
20
+ <template>
21
+ <StepperRoot
22
+ v-slot="slotProps"
23
+ :class="cn(
24
+ 'flex gap-2',
25
+ props.class,
26
+ )"
27
+ v-bind="forwarded"
28
+ >
29
+ <slot v-bind="slotProps" />
30
+ </StepperRoot>
31
+ </template>
@@ -0,0 +1,23 @@
1
+ <script lang="ts" setup>
2
+ import type { StepperDescriptionProps } from 'reka-ui'
3
+ import { cn } from '~/lib/utils'
4
+ import { StepperDescription, useForwardProps } from 'reka-ui'
5
+
6
+ import { computed, type HTMLAttributes } from 'vue'
7
+
8
+ const props = defineProps<StepperDescriptionProps & { class?: HTMLAttributes['class'] }>()
9
+
10
+ const delegatedProps = computed(() => {
11
+ const { class: _, ...delegated } = props
12
+
13
+ return delegated
14
+ })
15
+
16
+ const forwarded = useForwardProps(delegatedProps)
17
+ </script>
18
+
19
+ <template>
20
+ <StepperDescription v-slot="slotProps" v-bind="forwarded" :class="cn('text-xs text-muted-foreground', props.class)">
21
+ <slot v-bind="slotProps" />
22
+ </StepperDescription>
23
+ </template>
@@ -0,0 +1,35 @@
1
+ <script lang="ts" setup>
2
+ import type { StepperIndicatorProps } from 'reka-ui'
3
+ import { cn } from '~/lib/utils'
4
+ import { StepperIndicator, useForwardProps } from 'reka-ui'
5
+
6
+ import { computed, type HTMLAttributes } from 'vue'
7
+
8
+ const props = defineProps<StepperIndicatorProps & { class?: HTMLAttributes['class'] }>()
9
+
10
+ const delegatedProps = computed(() => {
11
+ const { class: _, ...delegated } = props
12
+
13
+ return delegated
14
+ })
15
+
16
+ const forwarded = useForwardProps(delegatedProps)
17
+ </script>
18
+
19
+ <template>
20
+ <StepperIndicator
21
+ v-bind="forwarded"
22
+ :class="cn(
23
+ 'inline-flex items-center justify-center rounded-full text-muted-foreground/50 w-10 h-10',
24
+ // Disabled
25
+ 'group-data-[disabled]:text-muted-foreground group-data-[disabled]:opacity-50',
26
+ // Active
27
+ 'group-data-[state=active]:bg-primary group-data-[state=active]:text-primary-foreground',
28
+ // Completed
29
+ 'group-data-[state=completed]:bg-accent group-data-[state=completed]:text-accent-foreground',
30
+ props.class,
31
+ )"
32
+ >
33
+ <slot />
34
+ </StepperIndicator>
35
+ </template>
@@ -0,0 +1,27 @@
1
+ <script lang="ts" setup>
2
+ import type { StepperItemProps } from 'reka-ui'
3
+ import { cn } from '~/lib/utils'
4
+ import { StepperItem, useForwardProps } from 'reka-ui'
5
+
6
+ import { computed, type HTMLAttributes } from 'vue'
7
+
8
+ const props = defineProps<StepperItemProps & { class?: HTMLAttributes['class'] }>()
9
+
10
+ const delegatedProps = computed(() => {
11
+ const { class: _, ...delegated } = props
12
+
13
+ return delegated
14
+ })
15
+
16
+ const forwarded = useForwardProps(delegatedProps)
17
+ </script>
18
+
19
+ <template>
20
+ <StepperItem
21
+ v-slot="slotProps"
22
+ v-bind="forwarded"
23
+ :class="cn('flex items-center gap-2 group data-[disabled]:pointer-events-none', props.class)"
24
+ >
25
+ <slot v-bind="slotProps" />
26
+ </StepperItem>
27
+ </template>
@@ -0,0 +1,31 @@
1
+ <script lang="ts" setup>
2
+ import type { StepperSeparatorProps } from 'reka-ui'
3
+ import { cn } from '~/lib/utils'
4
+ import { StepperSeparator, useForwardProps } from 'reka-ui'
5
+
6
+ import { computed, type HTMLAttributes } from 'vue'
7
+
8
+ const props = defineProps<StepperSeparatorProps & { class?: HTMLAttributes['class'] }>()
9
+
10
+ const delegatedProps = computed(() => {
11
+ const { class: _, ...delegated } = props
12
+
13
+ return delegated
14
+ })
15
+
16
+ const forwarded = useForwardProps(delegatedProps)
17
+ </script>
18
+
19
+ <template>
20
+ <StepperSeparator
21
+ v-bind="forwarded"
22
+ :class="cn(
23
+ 'bg-muted',
24
+ // Disabled
25
+ 'group-data-[disabled]:bg-muted group-data-[disabled]:opacity-50',
26
+ // Completed
27
+ 'group-data-[state=completed]:bg-accent-foreground',
28
+ props.class,
29
+ )"
30
+ />
31
+ </template>
@@ -0,0 +1,23 @@
1
+ <script lang="ts" setup>
2
+ import type { StepperTitleProps } from 'reka-ui'
3
+ import { cn } from '~/lib/utils'
4
+ import { StepperTitle, useForwardProps } from 'reka-ui'
5
+
6
+ import { computed, type HTMLAttributes } from 'vue'
7
+
8
+ const props = defineProps<StepperTitleProps & { class?: HTMLAttributes['class'] }>()
9
+
10
+ const delegatedProps = computed(() => {
11
+ const { class: _, ...delegated } = props
12
+
13
+ return delegated
14
+ })
15
+
16
+ const forwarded = useForwardProps(delegatedProps)
17
+ </script>
18
+
19
+ <template>
20
+ <StepperTitle v-bind="forwarded" :class="cn('text-md font-semibold whitespace-nowrap', props.class)">
21
+ <slot />
22
+ </StepperTitle>
23
+ </template>
@@ -0,0 +1,26 @@
1
+ <script lang="ts" setup>
2
+ import type { StepperTriggerProps } from 'reka-ui'
3
+ import { cn } from '~/lib/utils'
4
+ import { StepperTrigger, useForwardProps } from 'reka-ui'
5
+
6
+ import { computed, type HTMLAttributes } from 'vue'
7
+
8
+ const props = defineProps<StepperTriggerProps & { class?: HTMLAttributes['class'] }>()
9
+
10
+ const delegatedProps = computed(() => {
11
+ const { class: _, ...delegated } = props
12
+
13
+ return delegated
14
+ })
15
+
16
+ const forwarded = useForwardProps(delegatedProps)
17
+ </script>
18
+
19
+ <template>
20
+ <StepperTrigger
21
+ v-bind="forwarded"
22
+ :class="cn('p-2 flex flex-col items-center text-center gap-2 rounded-md', props.class)"
23
+ >
24
+ <slot />
25
+ </StepperTrigger>
26
+ </template>
@@ -0,0 +1,7 @@
1
+ export { default as Stepper } from './Stepper.vue'
2
+ export { default as StepperDescription } from './StepperDescription.vue'
3
+ export { default as StepperIndicator } from './StepperIndicator.vue'
4
+ export { default as StepperItem } from './StepperItem.vue'
5
+ export { default as StepperSeparator } from './StepperSeparator.vue'
6
+ export { default as StepperTitle } from './StepperTitle.vue'
7
+ export { default as StepperTrigger } from './StepperTrigger.vue'