@bl33dz/fa814698dcde12f86a37ac31dd3aedf9 1.0.6 → 1.0.9

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 (388) hide show
  1. package/README.md +80 -95
  2. package/dist/fa814698dcde12f86a37ac31dd3aedf9.css +1 -1
  3. package/dist/perisai-ui.es.js +97 -94
  4. package/dist/perisai-ui.umd.js +1 -1
  5. package/package.json +45 -45
  6. package/src/globals.css +575 -575
  7. package/src/index.ts +178 -177
  8. package/src/lib/utils.ts +6 -6
  9. package/src/shadcn/accordion/Accordion.vue +19 -19
  10. package/src/shadcn/accordion/AccordionContent.vue +23 -23
  11. package/src/shadcn/accordion/AccordionItem.vue +23 -23
  12. package/src/shadcn/accordion/AccordionTrigger.vue +38 -38
  13. package/src/shadcn/accordion/index.ts +4 -4
  14. package/src/shadcn/avatar/Avatar.vue +18 -18
  15. package/src/shadcn/avatar/AvatarFallback.vue +21 -21
  16. package/src/shadcn/avatar/AvatarImage.vue +16 -16
  17. package/src/shadcn/avatar/index.ts +3 -3
  18. package/src/shadcn/breadcrumb/Breadcrumb.vue +8 -8
  19. package/src/shadcn/breadcrumb/BreadcrumbEllipsis.vue +9 -9
  20. package/src/shadcn/breadcrumb/BreadcrumbItem.vue +8 -8
  21. package/src/shadcn/breadcrumb/BreadcrumbLink.vue +8 -8
  22. package/src/shadcn/breadcrumb/BreadcrumbList.vue +8 -8
  23. package/src/shadcn/breadcrumb/BreadcrumbPage.vue +8 -8
  24. package/src/shadcn/breadcrumb/BreadcrumbSeparator.vue +8 -8
  25. package/src/shadcn/breadcrumb/index.ts +7 -7
  26. package/src/shadcn/button/Button.vue +29 -29
  27. package/src/shadcn/button/index.ts +38 -38
  28. package/src/shadcn/calendar/Calendar.vue +64 -64
  29. package/src/shadcn/calendar/CalendarCell.vue +23 -23
  30. package/src/shadcn/calendar/CalendarCellTrigger.vue +39 -39
  31. package/src/shadcn/calendar/CalendarGrid.vue +23 -23
  32. package/src/shadcn/calendar/CalendarGridBody.vue +15 -15
  33. package/src/shadcn/calendar/CalendarGridHead.vue +16 -16
  34. package/src/shadcn/calendar/CalendarGridRow.vue +22 -22
  35. package/src/shadcn/calendar/CalendarHeadCell.vue +23 -23
  36. package/src/shadcn/calendar/CalendarHeader.vue +23 -23
  37. package/src/shadcn/calendar/CalendarHeading.vue +30 -30
  38. package/src/shadcn/calendar/CalendarNextButton.vue +32 -32
  39. package/src/shadcn/calendar/CalendarPrevButton.vue +32 -32
  40. package/src/shadcn/calendar/index.ts +12 -12
  41. package/src/shadcn/card/Card.vue +8 -8
  42. package/src/shadcn/card/CardContent.vue +8 -8
  43. package/src/shadcn/card/CardDescription.vue +8 -8
  44. package/src/shadcn/card/CardHeader.vue +8 -8
  45. package/src/shadcn/card/CardTitle.vue +8 -8
  46. package/src/shadcn/card/index.ts +5 -5
  47. package/src/shadcn/checkbox/Checkbox.vue +38 -38
  48. package/src/shadcn/checkbox/index.ts +1 -1
  49. package/src/shadcn/command/Command.vue +87 -87
  50. package/src/shadcn/command/CommandDialog.vue +31 -31
  51. package/src/shadcn/command/CommandEmpty.vue +27 -27
  52. package/src/shadcn/command/CommandGroup.vue +45 -45
  53. package/src/shadcn/command/CommandInput.vue +39 -39
  54. package/src/shadcn/command/CommandItem.vue +76 -76
  55. package/src/shadcn/command/CommandList.vue +25 -25
  56. package/src/shadcn/command/CommandSeparator.vue +21 -21
  57. package/src/shadcn/command/CommandShortcut.vue +17 -17
  58. package/src/shadcn/command/index.ts +25 -25
  59. package/src/shadcn/context-menu/ContextMenu.vue +18 -18
  60. package/src/shadcn/context-menu/ContextMenuCheckboxItem.vue +38 -38
  61. package/src/shadcn/context-menu/ContextMenuContent.vue +34 -34
  62. package/src/shadcn/context-menu/ContextMenuGroup.vue +15 -15
  63. package/src/shadcn/context-menu/ContextMenuItem.vue +39 -39
  64. package/src/shadcn/context-menu/ContextMenuLabel.vue +22 -22
  65. package/src/shadcn/context-menu/ContextMenuPortal.vue +15 -15
  66. package/src/shadcn/context-menu/ContextMenuRadioGroup.vue +22 -22
  67. package/src/shadcn/context-menu/ContextMenuRadioItem.vue +38 -38
  68. package/src/shadcn/context-menu/ContextMenuSeparator.vue +22 -22
  69. package/src/shadcn/context-menu/ContextMenuShortcut.vue +17 -17
  70. package/src/shadcn/context-menu/ContextMenuSub.vue +22 -22
  71. package/src/shadcn/context-menu/ContextMenuSubContent.vue +33 -33
  72. package/src/shadcn/context-menu/ContextMenuSubTrigger.vue +33 -33
  73. package/src/shadcn/context-menu/ContextMenuTrigger.vue +17 -17
  74. package/src/shadcn/context-menu/index.ts +15 -15
  75. package/src/shadcn/dialog/Dialog.vue +18 -18
  76. package/src/shadcn/dialog/DialogClose.vue +15 -15
  77. package/src/shadcn/dialog/DialogContent.vue +46 -46
  78. package/src/shadcn/dialog/DialogDescription.vue +23 -23
  79. package/src/shadcn/dialog/DialogFooter.vue +15 -15
  80. package/src/shadcn/dialog/DialogHeader.vue +17 -17
  81. package/src/shadcn/dialog/DialogOverlay.vue +21 -21
  82. package/src/shadcn/dialog/DialogScrollContent.vue +56 -56
  83. package/src/shadcn/dialog/DialogTitle.vue +23 -23
  84. package/src/shadcn/dialog/DialogTrigger.vue +15 -15
  85. package/src/shadcn/dialog/index.ts +10 -10
  86. package/src/shadcn/dropdown-menu/DropdownMenu.vue +18 -18
  87. package/src/shadcn/dropdown-menu/DropdownMenuCheckboxItem.vue +38 -38
  88. package/src/shadcn/dropdown-menu/DropdownMenuContent.vue +36 -36
  89. package/src/shadcn/dropdown-menu/DropdownMenuGroup.vue +15 -15
  90. package/src/shadcn/dropdown-menu/DropdownMenuItem.vue +31 -31
  91. package/src/shadcn/dropdown-menu/DropdownMenuLabel.vue +23 -23
  92. package/src/shadcn/dropdown-menu/DropdownMenuRadioGroup.vue +22 -22
  93. package/src/shadcn/dropdown-menu/DropdownMenuRadioItem.vue +39 -39
  94. package/src/shadcn/dropdown-menu/DropdownMenuSeparator.vue +24 -24
  95. package/src/shadcn/dropdown-menu/DropdownMenuShortcut.vue +17 -17
  96. package/src/shadcn/dropdown-menu/DropdownMenuSub.vue +19 -19
  97. package/src/shadcn/dropdown-menu/DropdownMenuSubContent.vue +28 -28
  98. package/src/shadcn/dropdown-menu/DropdownMenuSubTrigger.vue +31 -31
  99. package/src/shadcn/dropdown-menu/DropdownMenuTrigger.vue +17 -17
  100. package/src/shadcn/dropdown-menu/index.ts +16 -16
  101. package/src/shadcn/menubar/Menubar.vue +33 -33
  102. package/src/shadcn/menubar/MenubarCheckboxItem.vue +38 -38
  103. package/src/shadcn/menubar/MenubarContent.vue +42 -42
  104. package/src/shadcn/menubar/MenubarGroup.vue +15 -15
  105. package/src/shadcn/menubar/MenubarItem.vue +37 -37
  106. package/src/shadcn/menubar/MenubarLabel.vue +20 -20
  107. package/src/shadcn/menubar/MenubarMenu.vue +15 -15
  108. package/src/shadcn/menubar/MenubarPortal.vue +5 -5
  109. package/src/shadcn/menubar/MenubarRadioGroup.vue +22 -22
  110. package/src/shadcn/menubar/MenubarRadioItem.vue +38 -38
  111. package/src/shadcn/menubar/MenubarSeparator.vue +21 -21
  112. package/src/shadcn/menubar/MenubarShortcut.vue +17 -17
  113. package/src/shadcn/menubar/MenubarSub.vue +23 -23
  114. package/src/shadcn/menubar/MenubarSubContent.vue +36 -36
  115. package/src/shadcn/menubar/MenubarSubTrigger.vue +28 -28
  116. package/src/shadcn/menubar/MenubarTrigger.vue +28 -28
  117. package/src/shadcn/menubar/index.ts +15 -15
  118. package/src/shadcn/navigation-menu/NavigationMenu.vue +35 -35
  119. package/src/shadcn/navigation-menu/NavigationMenuContent.vue +31 -31
  120. package/src/shadcn/navigation-menu/NavigationMenuIndicator.vue +23 -23
  121. package/src/shadcn/navigation-menu/NavigationMenuItem.vue +21 -21
  122. package/src/shadcn/navigation-menu/NavigationMenuLink.vue +26 -26
  123. package/src/shadcn/navigation-menu/NavigationMenuList.vue +28 -28
  124. package/src/shadcn/navigation-menu/NavigationMenuTrigger.vue +24 -24
  125. package/src/shadcn/navigation-menu/NavigationMenuViewport.vue +31 -31
  126. package/src/shadcn/navigation-menu/index.ts +14 -14
  127. package/src/shadcn/pagination/Pagination.vue +151 -151
  128. package/src/shadcn/pagination/PaginationContent.vue +22 -22
  129. package/src/shadcn/pagination/PaginationEllipsis.vue +25 -25
  130. package/src/shadcn/pagination/PaginationFirst.vue +33 -33
  131. package/src/shadcn/pagination/PaginationItem.vue +31 -31
  132. package/src/shadcn/pagination/PaginationLast.vue +33 -33
  133. package/src/shadcn/pagination/PaginationLink.vue +13 -13
  134. package/src/shadcn/pagination/PaginationNext.vue +22 -22
  135. package/src/shadcn/pagination/PaginationPrevious.vue +33 -33
  136. package/src/shadcn/pagination/index.ts +9 -9
  137. package/src/shadcn/popover/Popover.vue +18 -18
  138. package/src/shadcn/popover/PopoverAnchor.vue +15 -15
  139. package/src/shadcn/popover/PopoverContent.vue +46 -46
  140. package/src/shadcn/popover/PopoverTrigger.vue +15 -15
  141. package/src/shadcn/popover/index.ts +4 -4
  142. package/src/shadcn/radio-group/RadioGroup.vue +24 -24
  143. package/src/shadcn/radio-group/RadioGroupItem.vue +39 -39
  144. package/src/shadcn/radio-group/index.ts +2 -2
  145. package/src/shadcn/range-calendar/RangeCalendar.vue +71 -71
  146. package/src/shadcn/range-calendar/RangeCalendarCell.vue +23 -23
  147. package/src/shadcn/range-calendar/RangeCalendarCellTrigger.vue +41 -41
  148. package/src/shadcn/range-calendar/RangeCalendarGrid.vue +23 -23
  149. package/src/shadcn/range-calendar/RangeCalendarGridBody.vue +15 -15
  150. package/src/shadcn/range-calendar/RangeCalendarGridHead.vue +15 -15
  151. package/src/shadcn/range-calendar/RangeCalendarGridRow.vue +22 -22
  152. package/src/shadcn/range-calendar/RangeCalendarHeadCell.vue +23 -23
  153. package/src/shadcn/range-calendar/RangeCalendarHeader.vue +23 -23
  154. package/src/shadcn/range-calendar/RangeCalendarHeading.vue +30 -30
  155. package/src/shadcn/range-calendar/RangeCalendarNextButton.vue +32 -32
  156. package/src/shadcn/range-calendar/RangeCalendarPrevButton.vue +32 -32
  157. package/src/shadcn/range-calendar/index.ts +12 -12
  158. package/src/shadcn/select/Select.vue +18 -18
  159. package/src/shadcn/select/SelectContent.vue +52 -52
  160. package/src/shadcn/select/SelectGroup.vue +15 -15
  161. package/src/shadcn/select/SelectItem.vue +43 -43
  162. package/src/shadcn/select/SelectItemText.vue +15 -15
  163. package/src/shadcn/select/SelectLabel.vue +17 -17
  164. package/src/shadcn/select/SelectScrollDownButton.vue +26 -26
  165. package/src/shadcn/select/SelectScrollUpButton.vue +26 -26
  166. package/src/shadcn/select/SelectSeparator.vue +19 -19
  167. package/src/shadcn/select/SelectTrigger.vue +33 -33
  168. package/src/shadcn/select/SelectValue.vue +15 -15
  169. package/src/shadcn/select/index.ts +11 -11
  170. package/src/shadcn/separator/Separator.vue +31 -31
  171. package/src/shadcn/separator/index.ts +1 -1
  172. package/src/shadcn/sidebar/MenuGroup.vue +28 -28
  173. package/src/shadcn/sidebar/MenuItemRenderer.vue +23 -23
  174. package/src/shadcn/sidebar/Sidebar.vue +14 -14
  175. package/src/shadcn/sidebar/SidebarDemoContent.vue +26 -26
  176. package/src/shadcn/sidebar/SidebarMenuGroupWithLabel.vue +29 -29
  177. package/src/shadcn/sidebar/SidebarMenuItemWithIcon.vue +103 -103
  178. package/src/shadcn/sidebar/SidebarMenuSub.vue +10 -10
  179. package/src/shadcn/sidebar/SidebarMenuSubItemStyled.vue +38 -38
  180. package/src/shadcn/sidebar/SidebarTrigger.vue +8 -8
  181. package/src/shadcn/sidebar/index.ts +5 -5
  182. package/src/shadcn/slider/Slider.vue +43 -43
  183. package/src/shadcn/slider/index.ts +1 -1
  184. package/src/shadcn/sonner/Sonner.vue +19 -19
  185. package/src/shadcn/sonner/index.ts +1 -1
  186. package/src/shadcn/spinner/Spinner.vue +17 -17
  187. package/src/shadcn/spinner/index.ts +1 -1
  188. package/src/shadcn/switch/Switch.vue +38 -38
  189. package/src/shadcn/switch/index.ts +1 -1
  190. package/src/shadcn/tabs/CardTabsContent.vue +16 -16
  191. package/src/shadcn/tabs/CornerCutTabsTrigger.vue +102 -102
  192. package/src/shadcn/tabs/GridTabsList.vue +30 -30
  193. package/src/shadcn/tabs/ScrollableTabsList.vue +8 -8
  194. package/src/shadcn/tabs/Tabs.vue +23 -23
  195. package/src/shadcn/tabs/TabsContent.vue +21 -21
  196. package/src/shadcn/tabs/TabsList.vue +24 -24
  197. package/src/shadcn/tabs/TabsTrigger.vue +30 -30
  198. package/src/shadcn/tabs/VerticalTabsList.vue +28 -28
  199. package/src/shadcn/tabs/VerticalTabsTrigger.vue +16 -16
  200. package/src/shadcn/tabs/index.ts +10 -10
  201. package/src/shadcn/toggle/Toggle.vue +35 -35
  202. package/src/shadcn/toggle/index.ts +28 -28
  203. package/src/shadcn/tooltip/Tooltip.vue +18 -18
  204. package/src/shadcn/tooltip/TooltipContent.vue +34 -34
  205. package/src/shadcn/tooltip/TooltipProvider.vue +14 -14
  206. package/src/shadcn/tooltip/TooltipTrigger.vue +15 -15
  207. package/src/shadcn/tooltip/index.ts +4 -4
  208. package/src/shadcn/tree/index.ts +1 -0
  209. package/src/ui/InputOTP.vue +69 -69
  210. package/src/ui/InputOTPContext.ts +9 -9
  211. package/src/ui/InputOTPGroup.vue +7 -7
  212. package/src/ui/InputOTPSeparator.vue +8 -8
  213. package/src/ui/InputOTPSlot.vue +61 -61
  214. package/src/ui/PopoverContent.vue +27 -27
  215. package/src/ui/PopoverTrigger.vue +9 -9
  216. package/src/ui/SelectContent.vue +23 -23
  217. package/src/ui/SelectGroup.vue +12 -12
  218. package/src/ui/SelectItem.vue +25 -25
  219. package/src/ui/SelectLabel.vue +16 -16
  220. package/src/ui/SelectSeparator.vue +17 -17
  221. package/src/ui/SelectTrigger.vue +22 -22
  222. package/src/ui/SelectValue.vue +9 -9
  223. package/src/ui/SheetContent.vue +34 -34
  224. package/src/ui/SheetDescription.vue +9 -9
  225. package/src/ui/SheetHeader.vue +11 -11
  226. package/src/ui/SheetTitle.vue +9 -9
  227. package/src/ui/accordion-content.vue +21 -21
  228. package/src/ui/accordion-item.vue +18 -18
  229. package/src/ui/accordion-trigger.vue +14 -14
  230. package/src/ui/accordion.vue +9 -9
  231. package/src/ui/alert-actions.vue +13 -13
  232. package/src/ui/alert-description.vue +13 -13
  233. package/src/ui/alert-title.vue +13 -13
  234. package/src/ui/alert.vue +63 -63
  235. package/src/ui/avatar-fallback.vue +38 -38
  236. package/src/ui/avatar-group.vue +32 -32
  237. package/src/ui/avatar-image.vue +19 -19
  238. package/src/ui/avatar.vue +32 -32
  239. package/src/ui/badge.vue +90 -90
  240. package/src/ui/breadcrumb-item.vue +11 -11
  241. package/src/ui/breadcrumb-separator.vue +9 -9
  242. package/src/ui/breadcrumb.vue +11 -11
  243. package/src/ui/button.vue +76 -76
  244. package/src/ui/card-content.vue +16 -16
  245. package/src/ui/card-description.vue +16 -16
  246. package/src/ui/card-footer.vue +13 -13
  247. package/src/ui/card-header.vue +19 -19
  248. package/src/ui/card-title.vue +16 -16
  249. package/src/ui/card.vue +73 -73
  250. package/src/ui/category-breakdown-metric.vue +205 -205
  251. package/src/ui/checkbox.vue +84 -84
  252. package/src/ui/cn.ts +6 -6
  253. package/src/ui/dialog-body.vue +13 -13
  254. package/src/ui/dialog-close.vue +9 -9
  255. package/src/ui/dialog-content.vue +36 -36
  256. package/src/ui/dialog-description.vue +13 -13
  257. package/src/ui/dialog-footer.vue +13 -13
  258. package/src/ui/dialog-header.vue +13 -13
  259. package/src/ui/dialog-overlay.vue +14 -14
  260. package/src/ui/dialog-portal.vue +9 -9
  261. package/src/ui/dialog-title.vue +13 -13
  262. package/src/ui/dialog-trigger.vue +9 -9
  263. package/src/ui/dialog.vue +9 -9
  264. package/src/ui/dismissible-badges-demo.vue +94 -94
  265. package/src/ui/drawer-content.vue +53 -53
  266. package/src/ui/drawer-description.vue +23 -23
  267. package/src/ui/drawer-footer.vue +22 -22
  268. package/src/ui/drawer-header.vue +22 -22
  269. package/src/ui/drawer-title.vue +23 -23
  270. package/src/ui/drawer-trigger.vue +23 -23
  271. package/src/ui/drawer.vue +34 -34
  272. package/src/ui/dropdown-menu-checkbox-item.vue +27 -27
  273. package/src/ui/dropdown-menu-content.vue +23 -23
  274. package/src/ui/dropdown-menu-group.vue +7 -7
  275. package/src/ui/dropdown-menu-item.vue +19 -19
  276. package/src/ui/dropdown-menu-label.vue +17 -17
  277. package/src/ui/dropdown-menu-portal.vue +8 -8
  278. package/src/ui/dropdown-menu-radio-group.vue +14 -14
  279. package/src/ui/dropdown-menu-radio-item.vue +30 -30
  280. package/src/ui/dropdown-menu-separator.vue +13 -13
  281. package/src/ui/dropdown-menu-shortcut.vue +15 -15
  282. package/src/ui/dropdown-menu-sub-content.vue +8 -8
  283. package/src/ui/dropdown-menu-sub-trigger.vue +8 -8
  284. package/src/ui/dropdown-menu-sub.vue +8 -8
  285. package/src/ui/dropdown-menu-trigger.vue +8 -8
  286. package/src/ui/dropdown-menu.vue +9 -9
  287. package/src/ui/grouped-avatar.vue +19 -19
  288. package/src/ui/icons/Accessibility.vue +7 -7
  289. package/src/ui/icons/AlignLeft.vue +6 -6
  290. package/src/ui/icons/ArrowDown.vue +7 -7
  291. package/src/ui/icons/ArrowUp.vue +7 -7
  292. package/src/ui/icons/ArrowUpDown.vue +8 -8
  293. package/src/ui/icons/BookOpen.vue +6 -6
  294. package/src/ui/icons/Calendar.vue +9 -9
  295. package/src/ui/icons/Check.vue +6 -6
  296. package/src/ui/icons/ChevronRight.vue +6 -6
  297. package/src/ui/icons/Circle.vue +6 -6
  298. package/src/ui/icons/Copy.vue +7 -7
  299. package/src/ui/icons/Dot.vue +6 -6
  300. package/src/ui/icons/Edit.vue +6 -6
  301. package/src/ui/icons/FileText.vue +9 -9
  302. package/src/ui/icons/Folder.vue +6 -6
  303. package/src/ui/icons/FolderOpen.vue +7 -7
  304. package/src/ui/icons/Hash.vue +6 -6
  305. package/src/ui/icons/Home.vue +6 -6
  306. package/src/ui/icons/Minus.vue +6 -6
  307. package/src/ui/icons/MoreHorizontal.vue +8 -8
  308. package/src/ui/icons/Settings.vue +7 -7
  309. package/src/ui/icons/Slash.vue +6 -6
  310. package/src/ui/icons/Trash2.vue +6 -6
  311. package/src/ui/icons/Type.vue +6 -6
  312. package/src/ui/icons/User.vue +7 -7
  313. package/src/ui/input-otp.vue +52 -52
  314. package/src/ui/input.vue +98 -98
  315. package/src/ui/label.vue +19 -19
  316. package/src/ui/pagination.vue +41 -41
  317. package/src/ui/popover.vue +9 -9
  318. package/src/ui/progress.vue +67 -67
  319. package/src/ui/radio-group-item.vue +53 -53
  320. package/src/ui/radio-group.vue +27 -27
  321. package/src/ui/scrollable-tabs-list.vue +148 -148
  322. package/src/ui/select-multiple.vue +135 -135
  323. package/src/ui/select.vue +77 -77
  324. package/src/ui/separator.vue +60 -60
  325. package/src/ui/sheet.vue +50 -50
  326. package/src/ui/sidebar/BaseSidebar.vue +97 -97
  327. package/src/ui/sidebar/BasicSearch.vue +27 -27
  328. package/src/ui/sidebar/ResponsiveSearch.vue +54 -54
  329. package/src/ui/sidebar/Sidebar.vue +227 -227
  330. package/src/ui/sidebar/SidebarCollapseButton.vue +10 -10
  331. package/src/ui/sidebar/SidebarContent.vue +31 -31
  332. package/src/ui/sidebar/SidebarDescription.vue +10 -10
  333. package/src/ui/sidebar/SidebarExpandButton.vue +10 -10
  334. package/src/ui/sidebar/SidebarFooter.vue +10 -10
  335. package/src/ui/sidebar/SidebarGroup.vue +11 -11
  336. package/src/ui/sidebar/SidebarGroupContent.vue +10 -10
  337. package/src/ui/sidebar/SidebarGroupLabel.vue +7 -7
  338. package/src/ui/sidebar/SidebarHeader.vue +10 -10
  339. package/src/ui/sidebar/SidebarInset.vue +19 -19
  340. package/src/ui/sidebar/SidebarMenu.vue +7 -7
  341. package/src/ui/sidebar/SidebarMenuBadge.vue +7 -7
  342. package/src/ui/sidebar/SidebarMenuButton.vue +17 -17
  343. package/src/ui/sidebar/SidebarMenuItem.vue +10 -10
  344. package/src/ui/sidebar/SidebarMenuSub.vue +18 -18
  345. package/src/ui/sidebar/SidebarMenuSubContent.vue +10 -10
  346. package/src/ui/sidebar/SidebarMenuSubItem.vue +10 -10
  347. package/src/ui/sidebar/SidebarMenuSubTrigger.vue +10 -10
  348. package/src/ui/sidebar/SidebarProvider.vue +108 -108
  349. package/src/ui/sidebar/SidebarScrollArea.vue +10 -10
  350. package/src/ui/sidebar/SidebarSection.vue +10 -10
  351. package/src/ui/sidebar/SidebarSeparator.vue +8 -8
  352. package/src/ui/sidebar/SidebarShortcut.vue +10 -10
  353. package/src/ui/sidebar/SidebarTitle.vue +10 -10
  354. package/src/ui/sidebar/SidebarTrigger.vue +27 -27
  355. package/src/ui/sidebar/Wrapper.vue +12 -12
  356. package/src/ui/sidebar/context.ts +8 -8
  357. package/src/ui/sidebar/index.ts +27 -27
  358. package/src/ui/sidebar/sidebarStore.ts +40 -40
  359. package/src/ui/sidebar/types.ts +30 -30
  360. package/src/ui/sidebar/useAutoCollapse.ts +81 -81
  361. package/src/ui/sidebar.vue +24 -24
  362. package/src/ui/skeleton.vue +15 -15
  363. package/src/ui/slider.vue +32 -32
  364. package/src/ui/sonner.vue +67 -67
  365. package/src/ui/switch.vue +33 -33
  366. package/src/ui/tab-content.vue +28 -28
  367. package/src/ui/tab-list.vue +31 -31
  368. package/src/ui/tab-panel.vue +19 -19
  369. package/src/ui/tab-trigger.vue +34 -34
  370. package/src/ui/tab.vue +30 -30
  371. package/src/ui/table-body.vue +16 -16
  372. package/src/ui/table-caption.vue +20 -20
  373. package/src/ui/table-cell.vue +16 -16
  374. package/src/ui/table-footer.vue +16 -16
  375. package/src/ui/table-header.vue +132 -132
  376. package/src/ui/table-row.vue +16 -16
  377. package/src/ui/table.vue +55 -55
  378. package/src/ui/tabs.vue +33 -33
  379. package/src/ui/textarea.vue +91 -91
  380. package/src/ui/threat-gauge.vue +137 -137
  381. package/src/ui/toggle.vue +69 -69
  382. package/src/ui/tooltip-content.vue +52 -52
  383. package/src/ui/tooltip-provider.vue +13 -13
  384. package/src/ui/tooltip-root.vue +9 -9
  385. package/src/ui/tooltip-trigger.vue +13 -13
  386. package/src/ui/tooltip.vue +22 -22
  387. package/src/ui/utils.ts +6 -6
  388. package/vite.config.ts +39 -39
@@ -1,76 +1,76 @@
1
- <script setup lang="ts">
2
- import type { ListboxItemEmits, ListboxItemProps } from "reka-ui"
3
- import type { HTMLAttributes } from "vue"
4
- import { reactiveOmit, useCurrentElement } from "@vueuse/core"
5
- import { ListboxItem, useForwardPropsEmits, useId } from "reka-ui"
6
- import { computed, onMounted, onUnmounted, ref } from "vue"
7
- import { cn } from "@/lib/utils"
8
- import { useCommand, useCommandGroup } from "."
9
-
10
- const props = defineProps<ListboxItemProps & { class?: HTMLAttributes["class"] }>()
11
- const emits = defineEmits<ListboxItemEmits>()
12
-
13
- const delegatedProps = reactiveOmit(props, "class")
14
-
15
- const forwarded = useForwardPropsEmits(delegatedProps, emits)
16
-
17
- const id = useId()
18
- const { filterState, allItems, allGroups } = useCommand()
19
- const groupContext = useCommandGroup()
20
-
21
- const isRender = computed(() => {
22
- if (!filterState.search) {
23
- return true
24
- }
25
- else {
26
- const filteredCurrentItem = filterState.filtered.items.get(id)
27
- // If the filtered items is undefined means not in the all times map yet
28
- // Do the first render to add into the map
29
- if (filteredCurrentItem === undefined) {
30
- return true
31
- }
32
-
33
- // Check with filter
34
- return filteredCurrentItem > 0
35
- }
36
- })
37
-
38
- const itemRef = ref()
39
- const currentElement = useCurrentElement(itemRef)
40
- onMounted(() => {
41
- if (!(currentElement.value instanceof HTMLElement))
42
- return
43
-
44
- // textValue to perform filter
45
- allItems.value.set(id, currentElement.value.textContent ?? (props.value?.toString() ?? ""))
46
-
47
- const groupId = groupContext?.id
48
- if (groupId) {
49
- if (!allGroups.value.has(groupId)) {
50
- allGroups.value.set(groupId, new Set([id]))
51
- }
52
- else {
53
- allGroups.value.get(groupId)?.add(id)
54
- }
55
- }
56
- })
57
- onUnmounted(() => {
58
- allItems.value.delete(id)
59
- })
60
- </script>
61
-
62
- <template>
63
- <ListboxItem
64
- v-if="isRender"
65
- v-bind="forwarded"
66
- :id="id"
67
- ref="itemRef"
68
- data-slot="command-item"
69
- :class="cn('data-[state=checked]:bg-accent data-[highlighted]:text-accent-foreground [&_svg:not([class*=\'text-\'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 !py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*=\'size-\'])]:size-4', props.class)"
70
- @select="() => {
71
- filterState.search = ''
72
- }"
73
- >
74
- <slot />
75
- </ListboxItem>
76
- </template>
1
+ <script setup lang="ts">
2
+ import type { ListboxItemEmits, ListboxItemProps } from "reka-ui"
3
+ import type { HTMLAttributes } from "vue"
4
+ import { reactiveOmit, useCurrentElement } from "@vueuse/core"
5
+ import { ListboxItem, useForwardPropsEmits, useId } from "reka-ui"
6
+ import { computed, onMounted, onUnmounted, ref } from "vue"
7
+ import { cn } from "@/lib/utils"
8
+ import { useCommand, useCommandGroup } from "."
9
+
10
+ const props = defineProps<ListboxItemProps & { class?: HTMLAttributes["class"] }>()
11
+ const emits = defineEmits<ListboxItemEmits>()
12
+
13
+ const delegatedProps = reactiveOmit(props, "class")
14
+
15
+ const forwarded = useForwardPropsEmits(delegatedProps, emits)
16
+
17
+ const id = useId()
18
+ const { filterState, allItems, allGroups } = useCommand()
19
+ const groupContext = useCommandGroup()
20
+
21
+ const isRender = computed(() => {
22
+ if (!filterState.search) {
23
+ return true
24
+ }
25
+ else {
26
+ const filteredCurrentItem = filterState.filtered.items.get(id)
27
+ // If the filtered items is undefined means not in the all times map yet
28
+ // Do the first render to add into the map
29
+ if (filteredCurrentItem === undefined) {
30
+ return true
31
+ }
32
+
33
+ // Check with filter
34
+ return filteredCurrentItem > 0
35
+ }
36
+ })
37
+
38
+ const itemRef = ref()
39
+ const currentElement = useCurrentElement(itemRef)
40
+ onMounted(() => {
41
+ if (!(currentElement.value instanceof HTMLElement))
42
+ return
43
+
44
+ // textValue to perform filter
45
+ allItems.value.set(id, currentElement.value.textContent ?? (props.value?.toString() ?? ""))
46
+
47
+ const groupId = groupContext?.id
48
+ if (groupId) {
49
+ if (!allGroups.value.has(groupId)) {
50
+ allGroups.value.set(groupId, new Set([id]))
51
+ }
52
+ else {
53
+ allGroups.value.get(groupId)?.add(id)
54
+ }
55
+ }
56
+ })
57
+ onUnmounted(() => {
58
+ allItems.value.delete(id)
59
+ })
60
+ </script>
61
+
62
+ <template>
63
+ <ListboxItem
64
+ v-if="isRender"
65
+ v-bind="forwarded"
66
+ :id="id"
67
+ ref="itemRef"
68
+ data-slot="command-item"
69
+ :class="cn('data-[state=checked]:bg-accent data-[highlighted]:text-accent-foreground [&_svg:not([class*=\'text-\'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 !py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*=\'size-\'])]:size-4', props.class)"
70
+ @select="() => {
71
+ filterState.search = ''
72
+ }"
73
+ >
74
+ <slot />
75
+ </ListboxItem>
76
+ </template>
@@ -1,25 +1,25 @@
1
- <script setup lang="ts">
2
- import type { ListboxContentProps } from "reka-ui"
3
- import type { HTMLAttributes } from "vue"
4
- import { reactiveOmit } from "@vueuse/core"
5
- import { ListboxContent, useForwardProps } from "reka-ui"
6
- import { cn } from "@/lib/utils"
7
-
8
- const props = defineProps<ListboxContentProps & { class?: HTMLAttributes["class"] }>()
9
-
10
- const delegatedProps = reactiveOmit(props, "class")
11
-
12
- const forwarded = useForwardProps(delegatedProps)
13
- </script>
14
-
15
- <template>
16
- <ListboxContent
17
- data-slot="command-list"
18
- v-bind="forwarded"
19
- :class="cn('max-h-[300px] scroll-py-1 overflow-x-hidden overflow-y-auto', props.class)"
20
- >
21
- <div role="presentation">
22
- <slot />
23
- </div>
24
- </ListboxContent>
25
- </template>
1
+ <script setup lang="ts">
2
+ import type { ListboxContentProps } from "reka-ui"
3
+ import type { HTMLAttributes } from "vue"
4
+ import { reactiveOmit } from "@vueuse/core"
5
+ import { ListboxContent, useForwardProps } from "reka-ui"
6
+ import { cn } from "@/lib/utils"
7
+
8
+ const props = defineProps<ListboxContentProps & { class?: HTMLAttributes["class"] }>()
9
+
10
+ const delegatedProps = reactiveOmit(props, "class")
11
+
12
+ const forwarded = useForwardProps(delegatedProps)
13
+ </script>
14
+
15
+ <template>
16
+ <ListboxContent
17
+ data-slot="command-list"
18
+ v-bind="forwarded"
19
+ :class="cn('max-h-[300px] scroll-py-1 overflow-x-hidden overflow-y-auto', props.class)"
20
+ >
21
+ <div role="presentation">
22
+ <slot />
23
+ </div>
24
+ </ListboxContent>
25
+ </template>
@@ -1,21 +1,21 @@
1
- <script setup lang="ts">
2
- import type { SeparatorProps } from "reka-ui"
3
- import type { HTMLAttributes } from "vue"
4
- import { reactiveOmit } from "@vueuse/core"
5
- import { Separator } from "reka-ui"
6
- import { cn } from "@/lib/utils"
7
-
8
- const props = defineProps<SeparatorProps & { class?: HTMLAttributes["class"] }>()
9
-
10
- const delegatedProps = reactiveOmit(props, "class")
11
- </script>
12
-
13
- <template>
14
- <Separator
15
- data-slot="command-separator"
16
- v-bind="delegatedProps"
17
- :class="cn('bg-border -mx-1 h-px', props.class)"
18
- >
19
- <slot />
20
- </Separator>
21
- </template>
1
+ <script setup lang="ts">
2
+ import type { SeparatorProps } from "reka-ui"
3
+ import type { HTMLAttributes } from "vue"
4
+ import { reactiveOmit } from "@vueuse/core"
5
+ import { Separator } from "reka-ui"
6
+ import { cn } from "@/lib/utils"
7
+
8
+ const props = defineProps<SeparatorProps & { class?: HTMLAttributes["class"] }>()
9
+
10
+ const delegatedProps = reactiveOmit(props, "class")
11
+ </script>
12
+
13
+ <template>
14
+ <Separator
15
+ data-slot="command-separator"
16
+ v-bind="delegatedProps"
17
+ :class="cn('bg-border -mx-1 h-px', props.class)"
18
+ >
19
+ <slot />
20
+ </Separator>
21
+ </template>
@@ -1,17 +1,17 @@
1
- <script setup lang="ts">
2
- import type { HTMLAttributes } from "vue"
3
- import { cn } from "@/lib/utils"
4
-
5
- const props = defineProps<{
6
- class?: HTMLAttributes["class"]
7
- }>()
8
- </script>
9
-
10
- <template>
11
- <span
12
- data-slot="command-shortcut"
13
- :class="cn('text-muted-foreground ml-auto text-xs tracking-widest', props.class)"
14
- >
15
- <slot />
16
- </span>
17
- </template>
1
+ <script setup lang="ts">
2
+ import type { HTMLAttributes } from "vue"
3
+ import { cn } from "@/lib/utils"
4
+
5
+ const props = defineProps<{
6
+ class?: HTMLAttributes["class"]
7
+ }>()
8
+ </script>
9
+
10
+ <template>
11
+ <span
12
+ data-slot="command-shortcut"
13
+ :class="cn('text-muted-foreground ml-auto text-xs tracking-widest', props.class)"
14
+ >
15
+ <slot />
16
+ </span>
17
+ </template>
@@ -1,25 +1,25 @@
1
- import type { Ref } from "vue"
2
- import { createContext } from "reka-ui"
3
-
4
- export { default as Command } from "./Command.vue"
5
- export { default as CommandDialog } from "./CommandDialog.vue"
6
- export { default as CommandEmpty } from "./CommandEmpty.vue"
7
- export { default as CommandGroup } from "./CommandGroup.vue"
8
- export { default as CommandInput } from "./CommandInput.vue"
9
- export { default as CommandItem } from "./CommandItem.vue"
10
- export { default as CommandList } from "./CommandList.vue"
11
- export { default as CommandSeparator } from "./CommandSeparator.vue"
12
- export { default as CommandShortcut } from "./CommandShortcut.vue"
13
-
14
- export const [useCommand, provideCommandContext] = createContext<{
15
- allItems: Ref<Map<string, string>>
16
- allGroups: Ref<Map<string, Set<string>>>
17
- filterState: {
18
- search: string
19
- filtered: { count: number, items: Map<string, number>, groups: Set<string> }
20
- }
21
- }>("Command")
22
-
23
- export const [useCommandGroup, provideCommandGroupContext] = createContext<{
24
- id?: string
25
- }>("CommandGroup")
1
+ import type { Ref } from "vue"
2
+ import { createContext } from "reka-ui"
3
+
4
+ export { default as Command } from "./Command.vue"
5
+ export { default as CommandDialog } from "./CommandDialog.vue"
6
+ export { default as CommandEmpty } from "./CommandEmpty.vue"
7
+ export { default as CommandGroup } from "./CommandGroup.vue"
8
+ export { default as CommandInput } from "./CommandInput.vue"
9
+ export { default as CommandItem } from "./CommandItem.vue"
10
+ export { default as CommandList } from "./CommandList.vue"
11
+ export { default as CommandSeparator } from "./CommandSeparator.vue"
12
+ export { default as CommandShortcut } from "./CommandShortcut.vue"
13
+
14
+ export const [useCommand, provideCommandContext] = createContext<{
15
+ allItems: Ref<Map<string, string>>
16
+ allGroups: Ref<Map<string, Set<string>>>
17
+ filterState: {
18
+ search: string
19
+ filtered: { count: number, items: Map<string, number>, groups: Set<string> }
20
+ }
21
+ }>("Command")
22
+
23
+ export const [useCommandGroup, provideCommandGroupContext] = createContext<{
24
+ id?: string
25
+ }>("CommandGroup")
@@ -1,18 +1,18 @@
1
- <script setup lang="ts">
2
- import type { ContextMenuRootEmits, ContextMenuRootProps } from "reka-ui"
3
- import { ContextMenuRoot, useForwardPropsEmits } from "reka-ui"
4
-
5
- const props = defineProps<ContextMenuRootProps>()
6
- const emits = defineEmits<ContextMenuRootEmits>()
7
-
8
- const forwarded = useForwardPropsEmits(props, emits)
9
- </script>
10
-
11
- <template>
12
- <ContextMenuRoot
13
- data-slot="context-menu"
14
- v-bind="forwarded"
15
- >
16
- <slot />
17
- </ContextMenuRoot>
18
- </template>
1
+ <script setup lang="ts">
2
+ import type { ContextMenuRootEmits, ContextMenuRootProps } from "reka-ui"
3
+ import { ContextMenuRoot, useForwardPropsEmits } from "reka-ui"
4
+
5
+ const props = defineProps<ContextMenuRootProps>()
6
+ const emits = defineEmits<ContextMenuRootEmits>()
7
+
8
+ const forwarded = useForwardPropsEmits(props, emits)
9
+ </script>
10
+
11
+ <template>
12
+ <ContextMenuRoot
13
+ data-slot="context-menu"
14
+ v-bind="forwarded"
15
+ >
16
+ <slot />
17
+ </ContextMenuRoot>
18
+ </template>
@@ -1,38 +1,38 @@
1
- <script setup lang="ts">
2
- import type { ContextMenuCheckboxItemEmits, ContextMenuCheckboxItemProps } from "reka-ui"
3
- import type { HTMLAttributes } from "vue"
4
- import { reactiveOmit } from "@vueuse/core"
5
- import { Check } from "lucide-vue-next"
6
- import {
7
- ContextMenuCheckboxItem,
8
-
9
- ContextMenuItemIndicator,
10
- useForwardPropsEmits,
11
- } from "reka-ui"
12
- import { cn } from "@/lib/utils"
13
-
14
- const props = defineProps<ContextMenuCheckboxItemProps & { class?: HTMLAttributes["class"] }>()
15
- const emits = defineEmits<ContextMenuCheckboxItemEmits>()
16
-
17
- const delegatedProps = reactiveOmit(props, "class")
18
-
19
- const forwarded = useForwardPropsEmits(delegatedProps, emits)
20
- </script>
21
-
22
- <template>
23
- <ContextMenuCheckboxItem
24
- data-slot="context-menu-checkbox-item"
25
- v-bind="forwarded"
26
- :class="cn(
27
- 'focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*=\'size-\'])]:size-4',
28
- props.class,
29
- )"
30
- >
31
- <span class="pointer-events-none absolute left-2 flex size-3.5 items-center justify-center">
32
- <ContextMenuItemIndicator>
33
- <Check class="size-4" />
34
- </ContextMenuItemIndicator>
35
- </span>
36
- <slot />
37
- </ContextMenuCheckboxItem>
38
- </template>
1
+ <script setup lang="ts">
2
+ import type { ContextMenuCheckboxItemEmits, ContextMenuCheckboxItemProps } from "reka-ui"
3
+ import type { HTMLAttributes } from "vue"
4
+ import { reactiveOmit } from "@vueuse/core"
5
+ import { Check } from "lucide-vue-next"
6
+ import {
7
+ ContextMenuCheckboxItem,
8
+
9
+ ContextMenuItemIndicator,
10
+ useForwardPropsEmits,
11
+ } from "reka-ui"
12
+ import { cn } from "@/lib/utils"
13
+
14
+ const props = defineProps<ContextMenuCheckboxItemProps & { class?: HTMLAttributes["class"] }>()
15
+ const emits = defineEmits<ContextMenuCheckboxItemEmits>()
16
+
17
+ const delegatedProps = reactiveOmit(props, "class")
18
+
19
+ const forwarded = useForwardPropsEmits(delegatedProps, emits)
20
+ </script>
21
+
22
+ <template>
23
+ <ContextMenuCheckboxItem
24
+ data-slot="context-menu-checkbox-item"
25
+ v-bind="forwarded"
26
+ :class="cn(
27
+ 'focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*=\'size-\'])]:size-4',
28
+ props.class,
29
+ )"
30
+ >
31
+ <span class="pointer-events-none absolute left-2 flex size-3.5 items-center justify-center">
32
+ <ContextMenuItemIndicator>
33
+ <Check class="size-4" />
34
+ </ContextMenuItemIndicator>
35
+ </span>
36
+ <slot />
37
+ </ContextMenuCheckboxItem>
38
+ </template>
@@ -1,34 +1,34 @@
1
- <script setup lang="ts">
2
- import type { ContextMenuContentEmits, ContextMenuContentProps } from "reka-ui"
3
- import type { HTMLAttributes } from "vue"
4
- import { reactiveOmit } from "@vueuse/core"
5
- import {
6
- ContextMenuContent,
7
-
8
- ContextMenuPortal,
9
- useForwardPropsEmits,
10
- } from "reka-ui"
11
- import { cn } from "@/lib/utils"
12
-
13
- const props = defineProps<ContextMenuContentProps & { class?: HTMLAttributes["class"] }>()
14
- const emits = defineEmits<ContextMenuContentEmits>()
15
-
16
- const delegatedProps = reactiveOmit(props, "class")
17
-
18
- const forwarded = useForwardPropsEmits(delegatedProps, emits)
19
- </script>
20
-
21
- <template>
22
- <ContextMenuPortal>
23
- <ContextMenuContent
24
- data-slot="context-menu-content"
25
- v-bind="forwarded"
26
- :class="cn(
27
- 'bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--reka-context-menu-content-available-height) min-w-[8rem] overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md',
28
- props.class,
29
- )"
30
- >
31
- <slot />
32
- </ContextMenuContent>
33
- </ContextMenuPortal>
34
- </template>
1
+ <script setup lang="ts">
2
+ import type { ContextMenuContentEmits, ContextMenuContentProps } from "reka-ui"
3
+ import type { HTMLAttributes } from "vue"
4
+ import { reactiveOmit } from "@vueuse/core"
5
+ import {
6
+ ContextMenuContent,
7
+
8
+ ContextMenuPortal,
9
+ useForwardPropsEmits,
10
+ } from "reka-ui"
11
+ import { cn } from "@/lib/utils"
12
+
13
+ const props = defineProps<ContextMenuContentProps & { class?: HTMLAttributes["class"] }>()
14
+ const emits = defineEmits<ContextMenuContentEmits>()
15
+
16
+ const delegatedProps = reactiveOmit(props, "class")
17
+
18
+ const forwarded = useForwardPropsEmits(delegatedProps, emits)
19
+ </script>
20
+
21
+ <template>
22
+ <ContextMenuPortal>
23
+ <ContextMenuContent
24
+ data-slot="context-menu-content"
25
+ v-bind="forwarded"
26
+ :class="cn(
27
+ 'bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--reka-context-menu-content-available-height) min-w-[8rem] overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md',
28
+ props.class,
29
+ )"
30
+ >
31
+ <slot />
32
+ </ContextMenuContent>
33
+ </ContextMenuPortal>
34
+ </template>
@@ -1,15 +1,15 @@
1
- <script setup lang="ts">
2
- import type { ContextMenuGroupProps } from "reka-ui"
3
- import { ContextMenuGroup } from "reka-ui"
4
-
5
- const props = defineProps<ContextMenuGroupProps>()
6
- </script>
7
-
8
- <template>
9
- <ContextMenuGroup
10
- data-slot="context-menu-group"
11
- v-bind="props"
12
- >
13
- <slot />
14
- </ContextMenuGroup>
15
- </template>
1
+ <script setup lang="ts">
2
+ import type { ContextMenuGroupProps } from "reka-ui"
3
+ import { ContextMenuGroup } from "reka-ui"
4
+
5
+ const props = defineProps<ContextMenuGroupProps>()
6
+ </script>
7
+
8
+ <template>
9
+ <ContextMenuGroup
10
+ data-slot="context-menu-group"
11
+ v-bind="props"
12
+ >
13
+ <slot />
14
+ </ContextMenuGroup>
15
+ </template>
@@ -1,39 +1,39 @@
1
- <script setup lang="ts">
2
- import type { ContextMenuItemEmits, ContextMenuItemProps } from "reka-ui"
3
- import type { HTMLAttributes } from "vue"
4
- import { reactiveOmit } from "@vueuse/core"
5
- import {
6
- ContextMenuItem,
7
-
8
- useForwardPropsEmits,
9
- } from "reka-ui"
10
- import { cn } from "@/lib/utils"
11
-
12
- const props = withDefaults(defineProps<ContextMenuItemProps & {
13
- class?: HTMLAttributes["class"]
14
- inset?: boolean
15
- variant?: "default" | "destructive"
16
- }>(), {
17
- variant: "default",
18
- })
19
- const emits = defineEmits<ContextMenuItemEmits>()
20
-
21
- const delegatedProps = reactiveOmit(props, "class")
22
-
23
- const forwarded = useForwardPropsEmits(delegatedProps, emits)
24
- </script>
25
-
26
- <template>
27
- <ContextMenuItem
28
- data-slot="context-menu-item"
29
- :data-inset="inset ? '' : undefined"
30
- :data-variant="variant"
31
- v-bind="forwarded"
32
- :class="cn(
33
- 'focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive-foreground data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/40 data-[variant=destructive]:focus:text-destructive-foreground data-[variant=destructive]:*:[svg]:!text-destructive-foreground [&_svg:not([class*=\'text-\'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*=\'size-\'])]:size-4',
34
- props.class,
35
- )"
36
- >
37
- <slot />
38
- </ContextMenuItem>
39
- </template>
1
+ <script setup lang="ts">
2
+ import type { ContextMenuItemEmits, ContextMenuItemProps } from "reka-ui"
3
+ import type { HTMLAttributes } from "vue"
4
+ import { reactiveOmit } from "@vueuse/core"
5
+ import {
6
+ ContextMenuItem,
7
+
8
+ useForwardPropsEmits,
9
+ } from "reka-ui"
10
+ import { cn } from "@/lib/utils"
11
+
12
+ const props = withDefaults(defineProps<ContextMenuItemProps & {
13
+ class?: HTMLAttributes["class"]
14
+ inset?: boolean
15
+ variant?: "default" | "destructive"
16
+ }>(), {
17
+ variant: "default",
18
+ })
19
+ const emits = defineEmits<ContextMenuItemEmits>()
20
+
21
+ const delegatedProps = reactiveOmit(props, "class")
22
+
23
+ const forwarded = useForwardPropsEmits(delegatedProps, emits)
24
+ </script>
25
+
26
+ <template>
27
+ <ContextMenuItem
28
+ data-slot="context-menu-item"
29
+ :data-inset="inset ? '' : undefined"
30
+ :data-variant="variant"
31
+ v-bind="forwarded"
32
+ :class="cn(
33
+ 'focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive-foreground data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/40 data-[variant=destructive]:focus:text-destructive-foreground data-[variant=destructive]:*:[svg]:!text-destructive-foreground [&_svg:not([class*=\'text-\'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*=\'size-\'])]:size-4',
34
+ props.class,
35
+ )"
36
+ >
37
+ <slot />
38
+ </ContextMenuItem>
39
+ </template>