@geniusdynamics/ns8-ui-lib 1.0.6 → 1.0.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 (294) hide show
  1. package/dist/ns8-ui-lib.css +1 -1
  2. package/dist/ns8-ui-lib.es.js +222 -222
  3. package/dist/ns8-ui-lib.es.js.map +1 -1
  4. package/dist/ns8-ui-lib.umd.js +3 -3
  5. package/dist/ns8-ui-lib.umd.js.map +1 -1
  6. package/package.json +2 -2
  7. package/src/App.vue +3 -4
  8. package/src/components/HelloWorld.vue +2 -2
  9. package/src/components/NS/CompleteDemo.vue +49 -49
  10. package/src/components/NS/Demo.vue +20 -20
  11. package/src/components/NS/cards/NSBackupCard.vue +41 -41
  12. package/src/components/NS/cards/NSSystemInfoCard.vue +37 -37
  13. package/src/components/NS/cards/NSSystemdServiceCard.vue +27 -27
  14. package/src/components/NS/checkbox/NSCheckbox.vue +4 -4
  15. package/src/components/NS/data-table/NSDataTable.vue +29 -29
  16. package/src/components/NS/empty-state/NSEmptyState.vue +3 -3
  17. package/src/components/NS/inline-notification/NSInlineNotification.vue +9 -9
  18. package/src/components/NS/lottie-animation/NSLottieAnimation.vue +5 -5
  19. package/src/components/NS/modal/NSModal.vue +10 -10
  20. package/src/components/NS/modal/NSModalTrigger.vue +1 -1
  21. package/src/components/NS/pagination/NSPagination.vue +10 -10
  22. package/src/components/NS/progress/NSProgress.vue +3 -3
  23. package/src/components/NS/progress/NSProgressBar.vue +4 -4
  24. package/src/components/NS/slider/NSByteSlider.vue +3 -3
  25. package/src/components/NS/slider/NSSlider.vue +2 -2
  26. package/src/components/NS/tag/NSTag.vue +5 -5
  27. package/src/components/NS/text-input/NSTextInput.vue +5 -5
  28. package/src/components/NS/toast-notification/NSToastNotification.vue +7 -7
  29. package/src/components/NS/toggle/NSToggle.vue +2 -2
  30. package/src/components/NS/wizard/NSWizard.vue +21 -21
  31. package/src/components/ui/accordion/AccordionContent.vue +2 -2
  32. package/src/components/ui/accordion/AccordionItem.vue +1 -1
  33. package/src/components/ui/accordion/AccordionTrigger.vue +3 -3
  34. package/src/components/ui/alert/AlertDescription.vue +1 -1
  35. package/src/components/ui/alert/AlertTitle.vue +1 -1
  36. package/src/components/ui/alert-dialog/AlertDialogCancel.vue +1 -1
  37. package/src/components/ui/alert-dialog/AlertDialogContent.vue +2 -2
  38. package/src/components/ui/alert-dialog/AlertDialogDescription.vue +1 -1
  39. package/src/components/ui/alert-dialog/AlertDialogFooter.vue +1 -1
  40. package/src/components/ui/alert-dialog/AlertDialogHeader.vue +1 -1
  41. package/src/components/ui/alert-dialog/AlertDialogTitle.vue +1 -1
  42. package/src/components/ui/avatar/Avatar.vue +1 -1
  43. package/src/components/ui/avatar/AvatarFallback.vue +1 -1
  44. package/src/components/ui/avatar/AvatarImage.vue +1 -1
  45. package/src/components/ui/breadcrumb/BreadcrumbEllipsis.vue +3 -3
  46. package/src/components/ui/breadcrumb/BreadcrumbItem.vue +1 -1
  47. package/src/components/ui/breadcrumb/BreadcrumbLink.vue +1 -1
  48. package/src/components/ui/breadcrumb/BreadcrumbList.vue +1 -1
  49. package/src/components/ui/breadcrumb/BreadcrumbPage.vue +1 -1
  50. package/src/components/ui/breadcrumb/BreadcrumbSeparator.vue +1 -1
  51. package/src/components/ui/button-group/ButtonGroupSeparator.vue +1 -1
  52. package/src/components/ui/button-group/ButtonGroupText.vue +1 -1
  53. package/src/components/ui/calendar/Calendar.vue +16 -16
  54. package/src/components/ui/calendar/CalendarCell.vue +1 -1
  55. package/src/components/ui/calendar/CalendarCellTrigger.vue +6 -6
  56. package/src/components/ui/calendar/CalendarGrid.vue +1 -1
  57. package/src/components/ui/calendar/CalendarGridRow.vue +1 -1
  58. package/src/components/ui/calendar/CalendarHeadCell.vue +1 -1
  59. package/src/components/ui/calendar/CalendarHeader.vue +1 -1
  60. package/src/components/ui/calendar/CalendarHeading.vue +1 -1
  61. package/src/components/ui/calendar/CalendarNextButton.vue +2 -2
  62. package/src/components/ui/calendar/CalendarPrevButton.vue +2 -2
  63. package/src/components/ui/card/Card.vue +1 -1
  64. package/src/components/ui/card/CardAction.vue +1 -1
  65. package/src/components/ui/card/CardContent.vue +1 -1
  66. package/src/components/ui/card/CardDescription.vue +1 -1
  67. package/src/components/ui/card/CardFooter.vue +1 -1
  68. package/src/components/ui/card/CardHeader.vue +1 -1
  69. package/src/components/ui/card/CardTitle.vue +1 -1
  70. package/src/components/ui/carousel/Carousel.vue +1 -1
  71. package/src/components/ui/carousel/CarouselContent.vue +3 -3
  72. package/src/components/ui/carousel/CarouselItem.vue +2 -2
  73. package/src/components/ui/carousel/CarouselNext.vue +4 -4
  74. package/src/components/ui/carousel/CarouselPrevious.vue +4 -4
  75. package/src/components/ui/checkbox/Checkbox.vue +3 -3
  76. package/src/components/ui/combobox/ComboboxAnchor.vue +1 -1
  77. package/src/components/ui/combobox/ComboboxEmpty.vue +1 -1
  78. package/src/components/ui/combobox/ComboboxGroup.vue +2 -2
  79. package/src/components/ui/combobox/ComboboxInput.vue +3 -3
  80. package/src/components/ui/combobox/ComboboxItem.vue +1 -1
  81. package/src/components/ui/combobox/ComboboxItemIndicator.vue +1 -1
  82. package/src/components/ui/combobox/ComboboxList.vue +1 -1
  83. package/src/components/ui/combobox/ComboboxSeparator.vue +1 -1
  84. package/src/components/ui/combobox/ComboboxTrigger.vue +1 -1
  85. package/src/components/ui/combobox/ComboboxViewport.vue +1 -1
  86. package/src/components/ui/command/Command.vue +1 -1
  87. package/src/components/ui/command/CommandDialog.vue +2 -2
  88. package/src/components/ui/command/CommandEmpty.vue +1 -1
  89. package/src/components/ui/command/CommandGroup.vue +2 -2
  90. package/src/components/ui/command/CommandInput.vue +3 -3
  91. package/src/components/ui/command/CommandItem.vue +1 -1
  92. package/src/components/ui/command/CommandList.vue +1 -1
  93. package/src/components/ui/command/CommandSeparator.vue +1 -1
  94. package/src/components/ui/command/CommandShortcut.vue +1 -1
  95. package/src/components/ui/context-menu/ContextMenuCheckboxItem.vue +3 -3
  96. package/src/components/ui/context-menu/ContextMenuContent.vue +1 -1
  97. package/src/components/ui/context-menu/ContextMenuItem.vue +1 -1
  98. package/src/components/ui/context-menu/ContextMenuLabel.vue +1 -1
  99. package/src/components/ui/context-menu/ContextMenuRadioItem.vue +3 -3
  100. package/src/components/ui/context-menu/ContextMenuSeparator.vue +1 -1
  101. package/src/components/ui/context-menu/ContextMenuShortcut.vue +1 -1
  102. package/src/components/ui/context-menu/ContextMenuSubContent.vue +1 -1
  103. package/src/components/ui/context-menu/ContextMenuSubTrigger.vue +2 -2
  104. package/src/components/ui/dialog/DialogContent.vue +18 -27
  105. package/src/components/ui/dialog/DialogDescription.vue +1 -1
  106. package/src/components/ui/dialog/DialogFooter.vue +1 -1
  107. package/src/components/ui/dialog/DialogHeader.vue +1 -1
  108. package/src/components/ui/dialog/DialogOverlay.vue +1 -1
  109. package/src/components/ui/dialog/DialogScrollContent.vue +5 -5
  110. package/src/components/ui/dialog/DialogTitle.vue +1 -1
  111. package/src/components/ui/drawer/DrawerContent.vue +6 -6
  112. package/src/components/ui/drawer/DrawerDescription.vue +1 -1
  113. package/src/components/ui/drawer/DrawerFooter.vue +1 -1
  114. package/src/components/ui/drawer/DrawerHeader.vue +1 -1
  115. package/src/components/ui/drawer/DrawerOverlay.vue +1 -1
  116. package/src/components/ui/drawer/DrawerTitle.vue +1 -1
  117. package/src/components/ui/dropdown-menu/DropdownMenuCheckboxItem.vue +3 -3
  118. package/src/components/ui/dropdown-menu/DropdownMenuContent.vue +1 -1
  119. package/src/components/ui/dropdown-menu/DropdownMenuItem.vue +1 -1
  120. package/src/components/ui/dropdown-menu/DropdownMenuLabel.vue +1 -1
  121. package/src/components/ui/dropdown-menu/DropdownMenuRadioItem.vue +3 -3
  122. package/src/components/ui/dropdown-menu/DropdownMenuSeparator.vue +1 -1
  123. package/src/components/ui/dropdown-menu/DropdownMenuShortcut.vue +1 -1
  124. package/src/components/ui/dropdown-menu/DropdownMenuSubContent.vue +1 -1
  125. package/src/components/ui/dropdown-menu/DropdownMenuSubTrigger.vue +2 -2
  126. package/src/components/ui/empty/Empty.vue +1 -1
  127. package/src/components/ui/empty/EmptyContent.vue +1 -1
  128. package/src/components/ui/empty/EmptyDescription.vue +2 -2
  129. package/src/components/ui/empty/EmptyHeader.vue +1 -1
  130. package/src/components/ui/empty/EmptyTitle.vue +1 -1
  131. package/src/components/ui/field/FieldContent.vue +1 -1
  132. package/src/components/ui/field/FieldDescription.vue +3 -3
  133. package/src/components/ui/field/FieldError.vue +2 -2
  134. package/src/components/ui/field/FieldGroup.vue +1 -1
  135. package/src/components/ui/field/FieldLabel.vue +3 -3
  136. package/src/components/ui/field/FieldLegend.vue +3 -3
  137. package/src/components/ui/field/FieldSeparator.vue +3 -3
  138. package/src/components/ui/field/FieldSet.vue +2 -2
  139. package/src/components/ui/field/FieldTitle.vue +1 -1
  140. package/src/components/ui/form/FormDescription.vue +1 -1
  141. package/src/components/ui/form/FormItem.vue +1 -1
  142. package/src/components/ui/form/FormLabel.vue +1 -1
  143. package/src/components/ui/form/FormMessage.vue +1 -1
  144. package/src/components/ui/hover-card/HoverCardContent.vue +1 -1
  145. package/src/components/ui/input/Input.vue +3 -3
  146. package/src/components/ui/input-group/InputGroup.vue +8 -8
  147. package/src/components/ui/input-group/InputGroupInput.vue +1 -1
  148. package/src/components/ui/input-group/InputGroupText.vue +1 -1
  149. package/src/components/ui/input-group/InputGroupTextarea.vue +1 -1
  150. package/src/components/ui/input-otp/InputOTP.vue +1 -1
  151. package/src/components/ui/input-otp/InputOTPGroup.vue +1 -1
  152. package/src/components/ui/input-otp/InputOTPSlot.vue +3 -3
  153. package/src/components/ui/item/ItemActions.vue +1 -1
  154. package/src/components/ui/item/ItemContent.vue +1 -1
  155. package/src/components/ui/item/ItemDescription.vue +2 -2
  156. package/src/components/ui/item/ItemFooter.vue +1 -1
  157. package/src/components/ui/item/ItemGroup.vue +1 -1
  158. package/src/components/ui/item/ItemHeader.vue +1 -1
  159. package/src/components/ui/item/ItemSeparator.vue +1 -1
  160. package/src/components/ui/item/ItemTitle.vue +1 -1
  161. package/src/components/ui/kbd/Kbd.vue +3 -3
  162. package/src/components/ui/kbd/KbdGroup.vue +1 -1
  163. package/src/components/ui/label/Label.vue +1 -1
  164. package/src/components/ui/menubar/Menubar.vue +1 -1
  165. package/src/components/ui/menubar/MenubarCheckboxItem.vue +3 -3
  166. package/src/components/ui/menubar/MenubarContent.vue +1 -1
  167. package/src/components/ui/menubar/MenubarItem.vue +1 -1
  168. package/src/components/ui/menubar/MenubarLabel.vue +1 -1
  169. package/src/components/ui/menubar/MenubarRadioItem.vue +3 -3
  170. package/src/components/ui/menubar/MenubarSeparator.vue +1 -1
  171. package/src/components/ui/menubar/MenubarShortcut.vue +1 -1
  172. package/src/components/ui/menubar/MenubarSubContent.vue +1 -1
  173. package/src/components/ui/menubar/MenubarSubTrigger.vue +2 -2
  174. package/src/components/ui/menubar/MenubarTrigger.vue +1 -1
  175. package/src/components/ui/native-select/NativeSelect.vue +5 -5
  176. package/src/components/ui/native-select/NativeSelectOptGroup.vue +1 -1
  177. package/src/components/ui/native-select/NativeSelectOption.vue +1 -1
  178. package/src/components/ui/navigation-menu/NavigationMenu.vue +1 -1
  179. package/src/components/ui/navigation-menu/NavigationMenuContent.vue +2 -2
  180. package/src/components/ui/navigation-menu/NavigationMenuIndicator.vue +2 -2
  181. package/src/components/ui/navigation-menu/NavigationMenuItem.vue +1 -1
  182. package/src/components/ui/navigation-menu/NavigationMenuLink.vue +1 -1
  183. package/src/components/ui/navigation-menu/NavigationMenuList.vue +1 -1
  184. package/src/components/ui/navigation-menu/NavigationMenuTrigger.vue +2 -2
  185. package/src/components/ui/navigation-menu/NavigationMenuViewport.vue +2 -2
  186. package/src/components/ui/number-field/NumberField.vue +1 -1
  187. package/src/components/ui/number-field/NumberFieldContent.vue +1 -1
  188. package/src/components/ui/number-field/NumberFieldDecrement.vue +2 -2
  189. package/src/components/ui/number-field/NumberFieldIncrement.vue +2 -2
  190. package/src/components/ui/number-field/NumberFieldInput.vue +1 -1
  191. package/src/components/ui/pagination/Pagination.vue +1 -1
  192. package/src/components/ui/pagination/PaginationContent.vue +1 -1
  193. package/src/components/ui/pagination/PaginationEllipsis.vue +3 -3
  194. package/src/components/ui/pagination/PaginationFirst.vue +2 -2
  195. package/src/components/ui/pagination/PaginationLast.vue +2 -2
  196. package/src/components/ui/pagination/PaginationNext.vue +2 -2
  197. package/src/components/ui/pagination/PaginationPrevious.vue +2 -2
  198. package/src/components/ui/pin-input/PinInput.vue +1 -1
  199. package/src/components/ui/pin-input/PinInputGroup.vue +1 -1
  200. package/src/components/ui/pin-input/PinInputSlot.vue +1 -1
  201. package/src/components/ui/popover/PopoverContent.vue +1 -1
  202. package/src/components/ui/progress/Progress.vue +12 -9
  203. package/src/components/ui/radio-group/RadioGroup.vue +1 -1
  204. package/src/components/ui/radio-group/RadioGroupItem.vue +16 -16
  205. package/src/components/ui/range-calendar/RangeCalendar.vue +4 -4
  206. package/src/components/ui/range-calendar/RangeCalendarCell.vue +1 -1
  207. package/src/components/ui/range-calendar/RangeCalendarCellTrigger.vue +7 -7
  208. package/src/components/ui/range-calendar/RangeCalendarGrid.vue +1 -1
  209. package/src/components/ui/range-calendar/RangeCalendarGridRow.vue +1 -1
  210. package/src/components/ui/range-calendar/RangeCalendarHeadCell.vue +1 -1
  211. package/src/components/ui/range-calendar/RangeCalendarHeader.vue +1 -1
  212. package/src/components/ui/range-calendar/RangeCalendarHeading.vue +1 -1
  213. package/src/components/ui/range-calendar/RangeCalendarNextButton.vue +3 -3
  214. package/src/components/ui/range-calendar/RangeCalendarPrevButton.vue +3 -3
  215. package/src/components/ui/resizable/ResizableHandle.vue +3 -3
  216. package/src/components/ui/resizable/ResizablePanelGroup.vue +1 -1
  217. package/src/components/ui/scroll-area/ScrollArea.vue +2 -2
  218. package/src/components/ui/scroll-area/ScrollBar.vue +16 -22
  219. package/src/components/ui/select/SelectContent.vue +18 -27
  220. package/src/components/ui/select/SelectItem.vue +3 -3
  221. package/src/components/ui/select/SelectLabel.vue +1 -1
  222. package/src/components/ui/select/SelectScrollDownButton.vue +2 -2
  223. package/src/components/ui/select/SelectScrollUpButton.vue +2 -2
  224. package/src/components/ui/select/SelectSeparator.vue +1 -1
  225. package/src/components/ui/select/SelectTrigger.vue +2 -2
  226. package/src/components/ui/separator/Separator.vue +1 -1
  227. package/src/components/ui/sheet/SheetContent.vue +28 -31
  228. package/src/components/ui/sheet/SheetDescription.vue +1 -1
  229. package/src/components/ui/sheet/SheetFooter.vue +1 -1
  230. package/src/components/ui/sheet/SheetHeader.vue +1 -1
  231. package/src/components/ui/sheet/SheetOverlay.vue +1 -1
  232. package/src/components/ui/sheet/SheetTitle.vue +1 -1
  233. package/src/components/ui/sidebar/Sidebar.vue +16 -16
  234. package/src/components/ui/sidebar/SidebarContent.vue +1 -1
  235. package/src/components/ui/sidebar/SidebarFooter.vue +1 -1
  236. package/src/components/ui/sidebar/SidebarGroup.vue +1 -1
  237. package/src/components/ui/sidebar/SidebarGroupAction.vue +3 -3
  238. package/src/components/ui/sidebar/SidebarGroupContent.vue +1 -1
  239. package/src/components/ui/sidebar/SidebarGroupLabel.vue +2 -2
  240. package/src/components/ui/sidebar/SidebarHeader.vue +1 -1
  241. package/src/components/ui/sidebar/SidebarInput.vue +1 -1
  242. package/src/components/ui/sidebar/SidebarInset.vue +2 -2
  243. package/src/components/ui/sidebar/SidebarMenu.vue +1 -1
  244. package/src/components/ui/sidebar/SidebarMenuAction.vue +7 -7
  245. package/src/components/ui/sidebar/SidebarMenuBadge.vue +6 -6
  246. package/src/components/ui/sidebar/SidebarMenuItem.vue +1 -1
  247. package/src/components/ui/sidebar/SidebarMenuSkeleton.vue +3 -3
  248. package/src/components/ui/sidebar/SidebarMenuSub.vue +2 -2
  249. package/src/components/ui/sidebar/SidebarMenuSubButton.vue +5 -5
  250. package/src/components/ui/sidebar/SidebarMenuSubItem.vue +1 -1
  251. package/src/components/ui/sidebar/SidebarProvider.vue +1 -1
  252. package/src/components/ui/sidebar/SidebarRail.vue +6 -6
  253. package/src/components/ui/sidebar/SidebarSeparator.vue +1 -1
  254. package/src/components/ui/sidebar/SidebarTrigger.vue +2 -2
  255. package/src/components/ui/skeleton/Skeleton.vue +1 -1
  256. package/src/components/ui/slider/Slider.vue +4 -4
  257. package/src/components/ui/sonner/Sonner.vue +7 -7
  258. package/src/components/ui/spinner/Spinner.vue +1 -1
  259. package/src/components/ui/stepper/Stepper.vue +1 -1
  260. package/src/components/ui/stepper/StepperDescription.vue +1 -1
  261. package/src/components/ui/stepper/StepperIndicator.vue +4 -4
  262. package/src/components/ui/stepper/StepperItem.vue +1 -1
  263. package/src/components/ui/stepper/StepperSeparator.vue +3 -3
  264. package/src/components/ui/stepper/StepperTitle.vue +1 -1
  265. package/src/components/ui/stepper/StepperTrigger.vue +1 -1
  266. package/src/components/ui/switch/Switch.vue +2 -2
  267. package/src/components/ui/table/Table.vue +6 -12
  268. package/src/components/ui/table/TableBody.vue +1 -1
  269. package/src/components/ui/table/TableCaption.vue +1 -1
  270. package/src/components/ui/table/TableCell.vue +1 -1
  271. package/src/components/ui/table/TableEmpty.vue +14 -17
  272. package/src/components/ui/table/TableFooter.vue +1 -1
  273. package/src/components/ui/table/TableHead.vue +1 -1
  274. package/src/components/ui/table/TableHeader.vue +1 -1
  275. package/src/components/ui/table/TableRow.vue +1 -1
  276. package/src/components/ui/tabs/Tabs.vue +1 -1
  277. package/src/components/ui/tabs/TabsContent.vue +1 -1
  278. package/src/components/ui/tabs/TabsList.vue +1 -1
  279. package/src/components/ui/tabs/TabsTrigger.vue +1 -1
  280. package/src/components/ui/tags-input/TagsInput.vue +3 -3
  281. package/src/components/ui/tags-input/TagsInputInput.vue +1 -1
  282. package/src/components/ui/tags-input/TagsInputItem.vue +1 -1
  283. package/src/components/ui/tags-input/TagsInputItemDelete.vue +2 -2
  284. package/src/components/ui/tags-input/TagsInputItemText.vue +1 -1
  285. package/src/components/ui/textarea/Textarea.vue +1 -1
  286. package/src/components/ui/toggle-group/ToggleGroup.vue +1 -1
  287. package/src/components/ui/toggle-group/ToggleGroupItem.vue +2 -2
  288. package/src/components/ui/tooltip/TooltipContent.vue +2 -2
  289. package/src/components/ui/checkbox/NsCheckbox.vue +0 -123
  290. package/src/components/ui/empty-state/NsEmptyState.vue +0 -149
  291. package/src/components/ui/inline-notification/NsInlineNotification.vue +0 -163
  292. package/src/components/ui/tag/NsTag.vue +0 -114
  293. package/src/components/ui/text-input/NsTextInput.vue +0 -269
  294. package/src/components/ui/toggle/NsToggle.vue +0 -126
@@ -11,7 +11,7 @@ const props = defineProps<{
11
11
  <div
12
12
  data-slot="field-group"
13
13
  :class="cn(
14
- 'tw:group/field-group tw:@container/field-group tw:flex tw:w-full tw:flex-col tw:gap-7 tw:data-[slot=checkbox-group]:gap-3 tw:[&>[data-slot=field-group]]:gap-4',
14
+ 'group/field-group @container/field-group flex w-full flex-col gap-7 data-[slot=checkbox-group]:gap-3 [&>[data-slot=field-group]]:gap-4',
15
15
  props.class,
16
16
  )"
17
17
  >
@@ -12,9 +12,9 @@ const props = defineProps<{
12
12
  <Label
13
13
  data-slot="field-label"
14
14
  :class="cn(
15
- 'tw:group/field-label tw:peer/field-label tw:flex tw:w-fit tw:gap-2 tw:leading-snug tw:group-data-[disabled=true]/field:opacity-50',
16
- 'tw:has-[>[data-slot=field]]:w-full tw:has-[>[data-slot=field]]:flex-col tw:has-[>[data-slot=field]]:rounded-md tw:has-[>[data-slot=field]]:border tw:[&>*]:data-[slot=field]:p-4',
17
- 'tw:has-data-[state=checked]:bg-primary/5 tw:has-data-[state=checked]:border-primary tw:dark:has-data-[state=checked]:bg-primary/10',
15
+ 'group/field-label peer/field-label flex w-fit gap-2 leading-snug group-data-[disabled=true]/field:opacity-50',
16
+ 'has-[>[data-slot=field]]:w-full has-[>[data-slot=field]]:flex-col has-[>[data-slot=field]]:rounded-md has-[>[data-slot=field]]:border [&>*]:data-[slot=field]:p-4',
17
+ 'has-data-[state=checked]:bg-primary/5 has-data-[state=checked]:border-primary dark:has-data-[state=checked]:bg-primary/10',
18
18
  props.class,
19
19
  )"
20
20
  >
@@ -13,9 +13,9 @@ const props = defineProps<{
13
13
  data-slot="field-legend"
14
14
  :data-variant="variant"
15
15
  :class="cn(
16
- 'tw:mb-3 tw:font-medium',
17
- 'tw:data-[variant=legend]:text-base',
18
- 'tw:data-[variant=label]:text-sm',
16
+ 'mb-3 font-medium',
17
+ 'data-[variant=legend]:text-base',
18
+ 'data-[variant=label]:text-sm',
19
19
  props.class,
20
20
  )"
21
21
  >
@@ -13,14 +13,14 @@ const props = defineProps<{
13
13
  data-slot="field-separator"
14
14
  :data-content="!!$slots.default"
15
15
  :class="cn(
16
- 'tw:relative tw:-my-2 tw:h-5 tw:text-sm tw:group-data-[variant=outline]/field-group:-mb-2',
16
+ 'relative -my-2 h-5 text-sm group-data-[variant=outline]/field-group:-mb-2',
17
17
  props.class,
18
18
  )"
19
19
  >
20
- <Separator class=""tw:absolute tw:inset-0 tw:top-1/2"" />
20
+ <Separator class="absolute inset-0 top-1/2" />
21
21
  <span
22
22
  v-if="$slots.default"
23
- class=""tw:bg-background tw:text-muted-foreground tw:relative tw:mx-auto tw:block tw:w-fit tw:px-2""
23
+ class="bg-background text-muted-foreground relative mx-auto block w-fit px-2"
24
24
  data-slot="field-separator-content"
25
25
  >
26
26
  <slot />
@@ -11,8 +11,8 @@ const props = defineProps<{
11
11
  <fieldset
12
12
  data-slot="field-set"
13
13
  :class="cn(
14
- 'tw:flex tw:flex-col tw:gap-6',
15
- 'tw:has-[>[data-slot=checkbox-group]]:gap-3 tw:has-[>[data-slot=radio-group]]:gap-3',
14
+ 'flex flex-col gap-6',
15
+ 'has-[>[data-slot=checkbox-group]]:gap-3 has-[>[data-slot=radio-group]]:gap-3',
16
16
  props.class,
17
17
  )"
18
18
  >
@@ -11,7 +11,7 @@ const props = defineProps<{
11
11
  <div
12
12
  data-slot="field-label"
13
13
  :class="cn(
14
- 'tw:flex tw:w-fit tw:items-center tw:gap-2 tw:text-sm tw:leading-snug tw:font-medium tw:group-data-[disabled=true]/field:opacity-50',
14
+ 'flex w-fit items-center gap-2 text-sm leading-snug font-medium group-data-[disabled=true]/field:opacity-50',
15
15
  props.class,
16
16
  )"
17
17
  >
@@ -14,7 +14,7 @@ const { formDescriptionId } = useFormField()
14
14
  <p
15
15
  :id="formDescriptionId"
16
16
  data-slot="form-description"
17
- :class="cn('tw:text-muted-foreground tw:text-sm', props.class)"
17
+ :class="cn('text-muted-foreground text-sm', props.class)"
18
18
  >
19
19
  <slot />
20
20
  </p>
@@ -16,7 +16,7 @@ provide(FORM_ITEM_INJECTION_KEY, id)
16
16
  <template>
17
17
  <div
18
18
  data-slot="form-item"
19
- :class="cn('tw:grid tw:gap-2', props.class)"
19
+ :class="cn('grid gap-2', props.class)"
20
20
  >
21
21
  <slot />
22
22
  </div>
@@ -15,7 +15,7 @@ const { error, formItemId } = useFormField()
15
15
  data-slot="form-label"
16
16
  :data-error="!!error"
17
17
  :class="cn(
18
- 'tw:data-[error=true]:text-destructive',
18
+ 'data-[error=true]:text-destructive',
19
19
  props.class,
20
20
  )"
21
21
  :for="formItemId"
@@ -18,6 +18,6 @@ const { name, formMessageId } = useFormField()
18
18
  data-slot="form-message"
19
19
  as="p"
20
20
  :name="toValue(name)"
21
- :class="cn('tw:text-destructive tw:text-sm', props.class)"
21
+ :class="cn('text-destructive text-sm', props.class)"
22
22
  />
23
23
  </template>
@@ -32,7 +32,7 @@ const forwardedProps = useForwardProps(delegatedProps)
32
32
  v-bind="{ ...$attrs, ...forwardedProps }"
33
33
  :class="
34
34
  cn(
35
- 'tw:bg-popover tw:text-popover-foreground tw:data-[state=open]:animate-in tw:data-[state=closed]:animate-out tw:data-[state=closed]:fade-out-0 tw:data-[state=open]:fade-in-0 tw:data-[state=closed]:zoom-out-95 tw:data-[state=open]:zoom-in-95 tw:data-[side=bottom]:slide-in-from-top-2 tw:data-[side=left]:slide-in-from-right-2 tw:data-[side=right]:slide-in-from-left-2 tw:data-[side=top]:slide-in-from-bottom-2 tw:z-50 tw:w-64 tw:rounded-md tw:border tw:p-4 tw:shadow-md tw:outline-hidden',
35
+ '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 w-64 rounded-md border p-4 shadow-md outline-hidden',
36
36
  props.class,
37
37
  )
38
38
  "
@@ -24,9 +24,9 @@ const modelValue = useVModel(props, "modelValue", emits, {
24
24
  v-model="modelValue"
25
25
  data-slot="input"
26
26
  :class="cn(
27
- 'tw:file:text-foreground tw:placeholder:text-muted-foreground tw:selection:bg-primary tw:selection:text-primary-foreground tw:dark:bg-input/30 tw:border-input tw:h-9 tw:w-full tw:min-w-0 tw:rounded-md tw:border tw:bg-transparent tw:px-3 tw:py-1 tw:text-base tw:shadow-xs tw:transition-[color,box-shadow] tw:outline-none tw:file:inline-flex tw:file:h-7 tw:file:border-0 tw:file:bg-transparent tw:file:text-sm tw:file:font-medium tw:disabled:pointer-events-none tw:disabled:cursor-not-allowed tw:disabled:opacity-50 tw:md:text-sm',
28
- 'tw:focus-visible:border-ring tw:focus-visible:ring-ring/50 tw:focus-visible:ring-[3px]',
29
- 'tw:aria-invalid:ring-destructive/20 tw:dark:aria-invalid:ring-destructive/40 tw:aria-invalid:border-destructive',
27
+ 'file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm',
28
+ 'focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]',
29
+ 'aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive',
30
30
  props.class,
31
31
  )"
32
32
  >
@@ -12,20 +12,20 @@ const props = defineProps<{
12
12
  data-slot="input-group"
13
13
  role="group"
14
14
  :class="cn(
15
- 'tw:group/input-group tw:border-input tw:dark:bg-input/30 tw:relative tw:flex tw:w-full tw:items-center tw:rounded-md tw:border tw:shadow-xs tw:transition-[color,box-shadow] tw:outline-none',
16
- 'tw:h-9 tw:min-w-0 tw:has-[>textarea]:h-auto',
15
+ 'group/input-group border-input dark:bg-input/30 relative flex w-full items-center rounded-md border shadow-xs transition-[color,box-shadow] outline-none',
16
+ 'h-9 min-w-0 has-[>textarea]:h-auto',
17
17
 
18
18
  // Variants based on alignment.
19
- 'tw:has-[>[data-align=inline-start]]:[&>input]:pl-2',
20
- 'tw:has-[>[data-align=inline-end]]:[&>input]:pr-2',
21
- 'tw:has-[>[data-align=block-start]]:h-auto tw:has-[>[data-align=block-start]]:flex-col tw:has-[>[data-align=block-start]]:[&>input]:pb-3',
22
- 'tw:has-[>[data-align=block-end]]:h-auto tw:has-[>[data-align=block-end]]:flex-col tw:has-[>[data-align=block-end]]:[&>input]:pt-3',
19
+ 'has-[>[data-align=inline-start]]:[&>input]:pl-2',
20
+ 'has-[>[data-align=inline-end]]:[&>input]:pr-2',
21
+ 'has-[>[data-align=block-start]]:h-auto has-[>[data-align=block-start]]:flex-col has-[>[data-align=block-start]]:[&>input]:pb-3',
22
+ 'has-[>[data-align=block-end]]:h-auto has-[>[data-align=block-end]]:flex-col has-[>[data-align=block-end]]:[&>input]:pt-3',
23
23
 
24
24
  // Focus state.
25
- 'tw:has-[[data-slot=input-group-control]:focus-visible]:border-ring tw:has-[[data-slot=input-group-control]:focus-visible]:ring-ring/50 tw:has-[[data-slot=input-group-control]:focus-visible]:ring-[3px]',
25
+ 'has-[[data-slot=input-group-control]:focus-visible]:border-ring has-[[data-slot=input-group-control]:focus-visible]:ring-ring/50 has-[[data-slot=input-group-control]:focus-visible]:ring-[3px]',
26
26
 
27
27
  // Error state.
28
- 'tw:has-[[data-slot][aria-invalid=true]]:ring-destructive/20 tw:has-[[data-slot][aria-invalid=true]]:border-destructive tw:dark:has-[[data-slot][aria-invalid=true]]:ring-destructive/40',
28
+ 'has-[[data-slot][aria-invalid=true]]:ring-destructive/20 has-[[data-slot][aria-invalid=true]]:border-destructive dark:has-[[data-slot][aria-invalid=true]]:ring-destructive/40',
29
29
 
30
30
  props.class,
31
31
  )"
@@ -12,7 +12,7 @@ const props = defineProps<{
12
12
  <Input
13
13
  data-slot="input-group-control"
14
14
  :class="cn(
15
- 'tw:flex-1 tw:rounded-none tw:border-0 tw:bg-transparent tw:shadow-none tw:focus-visible:ring-0 tw:dark:bg-transparent',
15
+ 'flex-1 rounded-none border-0 bg-transparent shadow-none focus-visible:ring-0 dark:bg-transparent',
16
16
  props.class,
17
17
  )"
18
18
  />
@@ -10,7 +10,7 @@ const props = defineProps<{
10
10
  <template>
11
11
  <span
12
12
  :class="cn(
13
- 'tw:text-muted-foreground tw:flex tw:items-center tw:gap-2 tw:text-sm tw:[&_svg]:pointer-events-none tw:[&_svg:not([class*=\'size-\'])]:size-4',
13
+ 'text-muted-foreground flex items-center gap-2 text-sm [&_svg]:pointer-events-none [&_svg:not([class*=\'size-\'])]:size-4',
14
14
  props.class,
15
15
  )"
16
16
  >
@@ -12,7 +12,7 @@ const props = defineProps<{
12
12
  <Textarea
13
13
  data-slot="input-group-control"
14
14
  :class="cn(
15
- 'tw:flex-1 tw:resize-none tw:rounded-none tw:border-0 tw:bg-transparent tw:py-3 tw:shadow-none tw:focus-visible:ring-0 tw:dark:bg-transparent',
15
+ 'flex-1 resize-none rounded-none border-0 bg-transparent py-3 shadow-none focus-visible:ring-0 dark:bg-transparent',
16
16
  props.class,
17
17
  )"
18
18
  />
@@ -21,7 +21,7 @@ const forwarded = useForwardPropsEmits(delegatedProps, emits)
21
21
  v-bind="forwarded"
22
22
  :container-class="cn('flex items-center gap-2 has-disabled:opacity-50', props.class)"
23
23
  data-slot="input-otp"
24
- class=""tw:disabled:cursor-not-allowed""
24
+ class="disabled:cursor-not-allowed"
25
25
  >
26
26
  <slot v-bind="slotProps" />
27
27
  </OTPInput>
@@ -15,7 +15,7 @@ const forwarded = useForwardProps(delegatedProps)
15
15
  <div
16
16
  data-slot="input-otp-group"
17
17
  v-bind="forwarded"
18
- :class="cn('tw:flex tw:items-center', props.class)"
18
+ :class="cn('flex items-center', props.class)"
19
19
  >
20
20
  <slot />
21
21
  </div>
@@ -22,11 +22,11 @@ const slot = computed(() => context?.value.slots[props.index])
22
22
  v-bind="forwarded"
23
23
  data-slot="input-otp-slot"
24
24
  :data-active="slot?.isActive"
25
- :class="cn('tw:data-[active=true]:border-ring tw:data-[active=true]:ring-ring/50 tw:data-[active=true]:aria-invalid:ring-destructive/20 tw:dark:data-[active=true]:aria-invalid:ring-destructive/40 tw:aria-invalid:border-destructive tw:data-[active=true]:aria-invalid:border-destructive tw:dark:bg-input/30 tw:border-input tw:relative tw:flex tw:h-9 tw:w-9 tw:items-center tw:justify-center tw:border-y tw:border-r tw:text-sm tw:shadow-xs tw:transition-all tw:outline-none tw:first:rounded-l-md tw:first:border-l tw:last:rounded-r-md tw:data-[active=true]:z-10 tw:data-[active=true]:ring-[3px]', props.class)"
25
+ :class="cn('data-[active=true]:border-ring data-[active=true]:ring-ring/50 data-[active=true]:aria-invalid:ring-destructive/20 dark:data-[active=true]:aria-invalid:ring-destructive/40 aria-invalid:border-destructive data-[active=true]:aria-invalid:border-destructive dark:bg-input/30 border-input relative flex h-9 w-9 items-center justify-center border-y border-r text-sm shadow-xs transition-all outline-none first:rounded-l-md first:border-l last:rounded-r-md data-[active=true]:z-10 data-[active=true]:ring-[3px]', props.class)"
26
26
  >
27
27
  {{ slot?.char }}
28
- <div v-if="slot?.hasFakeCaret" class=""tw:pointer-events-none tw:absolute tw:inset-0 tw:flex tw:items-center tw:justify-center"">
29
- <div class=""tw:animate-caret-blink tw:bg-foreground tw:h-4 tw:w-px tw:duration-1000"" />
28
+ <div v-if="slot?.hasFakeCaret" class="pointer-events-none absolute inset-0 flex items-center justify-center">
29
+ <div class="animate-caret-blink bg-foreground h-4 w-px duration-1000" />
30
30
  </div>
31
31
  </div>
32
32
  </template>
@@ -10,7 +10,7 @@ const props = defineProps<{
10
10
  <template>
11
11
  <div
12
12
  data-slot="item-actions"
13
- :class="cn('tw:flex tw:items-center tw:gap-2', props.class)"
13
+ :class="cn('flex items-center gap-2', props.class)"
14
14
  >
15
15
  <slot />
16
16
  </div>
@@ -10,7 +10,7 @@ const props = defineProps<{
10
10
  <template>
11
11
  <div
12
12
  data-slot="item-content"
13
- :class="cn('tw:flex tw:flex-1 tw:flex-col tw:gap-1 tw:[&+[data-slot=item-content]]:flex-none', props.class)"
13
+ :class="cn('flex flex-1 flex-col gap-1 [&+[data-slot=item-content]]:flex-none', props.class)"
14
14
  >
15
15
  <slot />
16
16
  </div>
@@ -11,8 +11,8 @@ const props = defineProps<{
11
11
  <p
12
12
  data-slot="item-description"
13
13
  :class="cn(
14
- 'tw:text-muted-foreground tw:line-clamp-2 tw:text-sm tw:leading-normal tw:font-normal tw:text-balance',
15
- 'tw:[&>a:hover]:text-primary tw:[&>a]:underline tw:[&>a]:underline-offset-4',
14
+ 'text-muted-foreground line-clamp-2 text-sm leading-normal font-normal text-balance',
15
+ '[&>a:hover]:text-primary [&>a]:underline [&>a]:underline-offset-4',
16
16
  props.class,
17
17
  )"
18
18
  >
@@ -10,7 +10,7 @@ const props = defineProps<{
10
10
  <template>
11
11
  <div
12
12
  data-slot="item-footer"
13
- :class="cn('tw:flex tw:basis-full tw:items-center tw:justify-between tw:gap-2', props.class)"
13
+ :class="cn('flex basis-full items-center justify-between gap-2', props.class)"
14
14
  >
15
15
  <slot />
16
16
  </div>
@@ -11,7 +11,7 @@ const props = defineProps<{
11
11
  <div
12
12
  role="list"
13
13
  data-slot="item-group"
14
- :class="cn('tw:group/item-group tw:flex tw:flex-col', props.class)"
14
+ :class="cn('group/item-group flex flex-col', props.class)"
15
15
  >
16
16
  <slot />
17
17
  </div>
@@ -10,7 +10,7 @@ const props = defineProps<{
10
10
  <template>
11
11
  <div
12
12
  data-slot="item-header"
13
- :class="cn('tw:flex tw:basis-full tw:items-center tw:justify-between tw:gap-2', props.class)"
13
+ :class="cn('flex basis-full items-center justify-between gap-2', props.class)"
14
14
  >
15
15
  <slot />
16
16
  </div>
@@ -13,6 +13,6 @@ const props = defineProps<
13
13
  <Separator
14
14
  data-slot="item-separator"
15
15
  orientation="horizontal"
16
- :class="cn('tw:my-0', props.class)"
16
+ :class="cn('my-0', props.class)"
17
17
  />
18
18
  </template>
@@ -10,7 +10,7 @@ const props = defineProps<{
10
10
  <template>
11
11
  <div
12
12
  data-slot="item-title"
13
- :class="cn('tw:flex tw:w-fit tw:items-center tw:gap-2 tw:text-sm tw:leading-snug tw:font-medium', props.class)"
13
+ :class="cn('flex w-fit items-center gap-2 text-sm leading-snug font-medium', props.class)"
14
14
  >
15
15
  <slot />
16
16
  </div>
@@ -10,9 +10,9 @@ const props = defineProps<{
10
10
  <template>
11
11
  <kbd
12
12
  :class="cn(
13
- 'tw:bg-muted tw:text-muted-foreground tw:pointer-events-none tw:inline-flex tw:h-5 tw:w-fit tw:min-w-5 tw:items-center tw:justify-center tw:gap-1 tw:rounded-sm tw:px-1 tw:font-sans tw:text-xs tw:font-medium tw:select-none',
14
- 'tw:[&_svg:not([class*=\'size-\'])]:size-3',
15
- 'tw:[[data-slot=tooltip-content]_&]:bg-background/20 tw:[[data-slot=tooltip-content]_&]:text-background tw:dark:[[data-slot=tooltip-content]_&]:bg-background/10',
13
+ 'bg-muted text-muted-foreground pointer-events-none inline-flex h-5 w-fit min-w-5 items-center justify-center gap-1 rounded-sm px-1 font-sans text-xs font-medium select-none',
14
+ '[&_svg:not([class*=\'size-\'])]:size-3',
15
+ '[[data-slot=tooltip-content]_&]:bg-background/20 [[data-slot=tooltip-content]_&]:text-background dark:[[data-slot=tooltip-content]_&]:bg-background/10',
16
16
  props.class,
17
17
  )"
18
18
  >
@@ -10,7 +10,7 @@ const props = defineProps<{
10
10
  <template>
11
11
  <kbd
12
12
  data-slot="kbd-group"
13
- :class="cn('tw:inline-flex tw:items-center tw:gap-1', props.class)"
13
+ :class="cn('inline-flex items-center gap-1', props.class)"
14
14
  >
15
15
  <slot />
16
16
  </kbd>
@@ -16,7 +16,7 @@ const delegatedProps = reactiveOmit(props, "class")
16
16
  v-bind="delegatedProps"
17
17
  :class="
18
18
  cn(
19
- 'tw:flex tw:items-center tw:gap-2 tw:text-sm tw:leading-none tw:font-medium tw:select-none tw:group-data-[disabled=true]:pointer-events-none tw:group-data-[disabled=true]:opacity-50 tw:peer-disabled:cursor-not-allowed tw:peer-disabled:opacity-50',
19
+ 'flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50',
20
20
  props.class,
21
21
  )
22
22
  "
@@ -23,7 +23,7 @@ const forwarded = useForwardPropsEmits(delegatedProps, emits)
23
23
  v-bind="forwarded"
24
24
  :class="
25
25
  cn(
26
- 'tw:bg-background tw:flex tw:h-9 tw:items-center tw:gap-1 tw:rounded-md tw:border tw:p-1 tw:shadow-xs',
26
+ 'bg-background flex h-9 items-center gap-1 rounded-md border p-1 shadow-xs',
27
27
  props.class,
28
28
  )
29
29
  "
@@ -23,14 +23,14 @@ const forwarded = useForwardPropsEmits(delegatedProps, emits)
23
23
  data-slot="menubar-checkbox-item"
24
24
  v-bind="forwarded"
25
25
  :class="cn(
26
- 'tw:focus:bg-accent tw:focus:text-accent-foreground tw:relative tw:flex tw:cursor-default tw:items-center tw:gap-2 tw:rounded-xs tw:py-1.5 tw:pr-2 tw:pl-8 tw:text-sm tw:outline-hidden tw:select-none tw:data-[disabled]:pointer-events-none tw:data-[disabled]:opacity-50 tw:[&_svg]:pointer-events-none tw:[&_svg]:shrink-0 tw:[&_svg:not([class*=\'size-\'])]:size-4',
26
+ 'focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-xs 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',
27
27
  props.class,
28
28
  )"
29
29
  >
30
- <span class=""tw:pointer-events-none tw:absolute tw:left-2 tw:flex tw:size-3.5 tw:items-center tw:justify-center"">
30
+ <span class="pointer-events-none absolute left-2 flex size-3.5 items-center justify-center">
31
31
  <MenubarItemIndicator>
32
32
  <slot name="indicator-icon">
33
- <Check class=""tw:size-4"" />
33
+ <Check class="size-4" />
34
34
  </slot>
35
35
  </MenubarItemIndicator>
36
36
  </span>
@@ -34,7 +34,7 @@ const forwardedProps = useForwardProps(delegatedProps)
34
34
  v-bind="{ ...$attrs, ...forwardedProps }"
35
35
  :class="
36
36
  cn(
37
- 'tw:bg-popover tw:text-popover-foreground tw:data-[state=open]:animate-in tw:data-[state=closed]:fade-out-0 tw:data-[state=open]:fade-in-0 tw:data-[state=closed]:zoom-out-95 tw:data-[state=open]:zoom-in-95 tw:data-[side=bottom]:slide-in-from-top-2 tw:data-[side=left]:slide-in-from-right-2 tw:data-[side=right]:slide-in-from-left-2 tw:data-[side=top]:slide-in-from-bottom-2 tw:z-50 tw:min-w-[12rem] tw:origin-(--reka-menubar-content-transform-origin) tw:overflow-hidden tw:rounded-md tw:border tw:p-1 tw:shadow-md',
37
+ 'bg-popover text-popover-foreground data-[state=open]:animate-in 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 min-w-[12rem] origin-(--reka-menubar-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-md',
38
38
  props.class,
39
39
  )
40
40
  "
@@ -27,7 +27,7 @@ const forwarded = useForwardPropsEmits(delegatedProps, emits)
27
27
  :data-variant="variant"
28
28
  v-bind="forwarded"
29
29
  :class="cn(
30
- 'tw:focus:bg-accent tw:focus:text-accent-foreground tw:data-[variant=destructive]:text-destructive-foreground tw:data-[variant=destructive]:focus:bg-destructive/10 tw:dark:data-[variant=destructive]:focus:bg-destructive/40 tw:data-[variant=destructive]:focus:text-destructive-foreground tw:data-[variant=destructive]:*:[svg]:!text-destructive-foreground tw:[&_svg:not([class*=\'text-\'])]:text-muted-foreground tw:relative tw:flex tw:cursor-default tw:items-center tw:gap-2 tw:rounded-sm tw:px-2 tw:py-1.5 tw:text-sm tw:outline-hidden tw:select-none tw:data-[disabled]:pointer-events-none tw:data-[disabled]:opacity-50 tw:data-[inset]:pl-8 tw:[&_svg]:pointer-events-none tw:[&_svg]:shrink-0 tw:[&_svg:not([class*=\'size-\'])]:size-4',
30
+ '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',
31
31
  props.class,
32
32
  )"
33
33
  >
@@ -13,7 +13,7 @@ const delegatedProps = reactiveOmit(props, "class", "inset")
13
13
  <MenubarLabel
14
14
  :data-inset="inset ? '' : undefined"
15
15
  v-bind="delegatedProps"
16
- :class="cn('tw:px-2 tw:py-1.5 tw:text-sm tw:font-medium tw:data-[inset]:pl-8', props.class)"
16
+ :class="cn('px-2 py-1.5 text-sm font-medium data-[inset]:pl-8', props.class)"
17
17
  >
18
18
  <slot />
19
19
  </MenubarLabel>
@@ -23,14 +23,14 @@ const forwarded = useForwardPropsEmits(delegatedProps, emits)
23
23
  data-slot="menubar-radio-item"
24
24
  v-bind="forwarded"
25
25
  :class="cn(
26
- 'tw:focus:bg-accent tw:focus:text-accent-foreground tw:relative tw:flex tw:cursor-default tw:items-center tw:gap-2 tw:rounded-xs tw:py-1.5 tw:pr-2 tw:pl-8 tw:text-sm tw:outline-hidden tw:select-none tw:data-[disabled]:pointer-events-none tw:data-[disabled]:opacity-50 tw:[&_svg]:pointer-events-none tw:[&_svg]:shrink-0 tw:[&_svg:not([class*=\'size-\'])]:size-4',
26
+ 'focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-xs 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',
27
27
  props.class,
28
28
  )"
29
29
  >
30
- <span class=""tw:pointer-events-none tw:absolute tw:left-2 tw:flex tw:size-3.5 tw:items-center tw:justify-center"">
30
+ <span class="pointer-events-none absolute left-2 flex size-3.5 items-center justify-center">
31
31
  <MenubarItemIndicator>
32
32
  <slot name="indicator-icon">
33
- <Circle class=""tw:size-2 tw:fill-current"" />
33
+ <Circle class="size-2 fill-current" />
34
34
  </slot>
35
35
  </MenubarItemIndicator>
36
36
  </span>
@@ -15,7 +15,7 @@ const forwardedProps = useForwardProps(delegatedProps)
15
15
  <template>
16
16
  <MenubarSeparator
17
17
  data-slot="menubar-separator"
18
- :class=" cn('tw:bg-border tw:-mx-1 tw:my-1 tw:h-px', props.class)"
18
+ :class=" cn('bg-border -mx-1 my-1 h-px', props.class)"
19
19
  v-bind="forwardedProps"
20
20
  />
21
21
  </template>
@@ -10,7 +10,7 @@ const props = defineProps<{
10
10
  <template>
11
11
  <span
12
12
  data-slot="menubar-shortcut"
13
- :class="cn('tw:text-muted-foreground tw:ml-auto tw:text-xs tw:tracking-widest', props.class)"
13
+ :class="cn('text-muted-foreground ml-auto text-xs tracking-widest', props.class)"
14
14
  >
15
15
  <slot />
16
16
  </span>
@@ -28,7 +28,7 @@ const forwarded = useForwardPropsEmits(delegatedProps, emits)
28
28
  v-bind="{ ...$attrs, ...forwarded }"
29
29
  :class="
30
30
  cn(
31
- 'tw:bg-popover tw:text-popover-foreground tw:data-[state=open]:animate-in tw:data-[state=closed]:animate-out tw:data-[state=closed]:fade-out-0 tw:data-[state=open]:fade-in-0 tw:data-[state=closed]:zoom-out-95 tw:data-[state=open]:zoom-in-95 tw:data-[side=bottom]:slide-in-from-top-2 tw:data-[side=left]:slide-in-from-right-2 tw:data-[side=right]:slide-in-from-left-2 tw:data-[side=top]:slide-in-from-bottom-2 tw:z-50 tw:min-w-[8rem] tw:origin-(--reka-menubar-content-transform-origin) tw:overflow-hidden tw:rounded-md tw:border tw:p-1 tw:shadow-lg',
31
+ '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 min-w-[8rem] origin-(--reka-menubar-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-lg',
32
32
  props.class,
33
33
  )
34
34
  "
@@ -18,11 +18,11 @@ const forwardedProps = useForwardProps(delegatedProps)
18
18
  :data-inset="inset ? '' : undefined"
19
19
  v-bind="forwardedProps"
20
20
  :class="cn(
21
- 'tw:focus:bg-accent tw:focus:text-accent-foreground tw:data-[state=open]:bg-accent tw:data-[state=open]:text-accent-foreground tw:flex tw:cursor-default tw:items-center tw:rounded-sm tw:px-2 tw:py-1.5 tw:text-sm tw:outline-none tw:select-none tw:data-[inset]:pl-8',
21
+ 'focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-none select-none data-[inset]:pl-8',
22
22
  props.class,
23
23
  )"
24
24
  >
25
25
  <slot />
26
- <ChevronRight class=""tw:ml-auto tw:size-4"" />
26
+ <ChevronRight class="ml-auto size-4" />
27
27
  </MenubarSubTrigger>
28
28
  </template>
@@ -18,7 +18,7 @@ const forwardedProps = useForwardProps(delegatedProps)
18
18
  v-bind="forwardedProps"
19
19
  :class="
20
20
  cn(
21
- 'tw:focus:bg-accent tw:focus:text-accent-foreground tw:data-[state=open]:bg-accent tw:data-[state=open]:text-accent-foreground tw:flex tw:items-center tw:rounded-sm tw:px-2 tw:py-1 tw:text-sm tw:font-medium tw:outline-hidden tw:select-none',
21
+ 'focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex items-center rounded-sm px-2 py-1 text-sm font-medium outline-hidden select-none',
22
22
  props.class,
23
23
  )
24
24
  "
@@ -25,7 +25,7 @@ const delegatedProps = reactiveOmit(props, "class")
25
25
 
26
26
  <template>
27
27
  <div
28
- class=""tw:group/native-select tw:relative tw:w-fit tw:has-[select:disabled]:opacity-50""
28
+ class="group/native-select relative w-fit has-[select:disabled]:opacity-50"
29
29
  data-slot="native-select-wrapper"
30
30
  >
31
31
  <select
@@ -33,16 +33,16 @@ const delegatedProps = reactiveOmit(props, "class")
33
33
  v-model="modelValue"
34
34
  data-slot="native-select"
35
35
  :class="cn(
36
- 'tw:border-input tw:placeholder:text-muted-foreground tw:selection:bg-primary tw:selection:text-primary-foreground tw:dark:bg-input/30 tw:dark:hover:bg-input/50 tw:h-9 tw:w-full tw:min-w-0 tw:appearance-none tw:rounded-md tw:border tw:bg-transparent tw:px-3 tw:py-2 tw:pr-9 tw:text-sm tw:shadow-xs tw:transition-[color,box-shadow] tw:outline-none tw:disabled:pointer-events-none tw:disabled:cursor-not-allowed',
37
- 'tw:focus-visible:border-ring tw:focus-visible:ring-ring/50 tw:focus-visible:ring-[3px]',
38
- 'tw:aria-invalid:ring-destructive/20 tw:dark:aria-invalid:ring-destructive/40 tw:aria-invalid:border-destructive',
36
+ 'border-input placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 dark:hover:bg-input/50 h-9 w-full min-w-0 appearance-none rounded-md border bg-transparent px-3 py-2 pr-9 text-sm shadow-xs transition-[color,box-shadow] outline-none disabled:pointer-events-none disabled:cursor-not-allowed',
37
+ 'focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]',
38
+ 'aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive',
39
39
  props.class,
40
40
  )"
41
41
  >
42
42
  <slot />
43
43
  </select>
44
44
  <ChevronDownIcon
45
- class=""tw:text-muted-foreground tw:pointer-events-none tw:absolute tw:top-1/2 tw:right-3.5 tw:size-4 tw:-translate-y-1/2 tw:opacity-50 tw:select-none""
45
+ class="text-muted-foreground pointer-events-none absolute top-1/2 right-3.5 size-4 -translate-y-1/2 opacity-50 select-none"
46
46
  aria-hidden="true"
47
47
  data-slot="native-select-icon"
48
48
  />
@@ -9,7 +9,7 @@ const props = defineProps<{ class?: HTMLAttributes["class"] }>()
9
9
  </script>
10
10
 
11
11
  <template>
12
- <optgroup data-slot="native-select-optgroup" :class="cn('tw:bg-popover tw:text-popover-foreground', props.class)">
12
+ <optgroup data-slot="native-select-optgroup" :class="cn('bg-popover text-popover-foreground', props.class)">
13
13
  <slot />
14
14
  </optgroup>
15
15
  </template>
@@ -9,7 +9,7 @@ const props = defineProps<{ class?: HTMLAttributes["class"] }>()
9
9
  </script>
10
10
 
11
11
  <template>
12
- <option data-slot="native-select-option" :class="cn('tw:bg-popover tw:text-popover-foreground', props.class)">
12
+ <option data-slot="native-select-option" :class="cn('bg-popover text-popover-foreground', props.class)">
13
13
  <slot />
14
14
  </option>
15
15
  </template>
@@ -27,7 +27,7 @@ const forwarded = useForwardPropsEmits(delegatedProps, emits)
27
27
  data-slot="navigation-menu"
28
28
  :data-viewport="viewport"
29
29
  v-bind="forwarded"
30
- :class="cn('tw:group/navigation-menu tw:relative tw:flex tw:max-w-max tw:flex-1 tw:items-center tw:justify-center', props.class)"
30
+ :class="cn('group/navigation-menu relative flex max-w-max flex-1 items-center justify-center', props.class)"
31
31
  >
32
32
  <slot v-bind="slotProps" />
33
33
  <NavigationMenuViewport v-if="viewport" />
@@ -21,8 +21,8 @@ const forwarded = useForwardPropsEmits(delegatedProps, emits)
21
21
  data-slot="navigation-menu-content"
22
22
  v-bind="forwarded"
23
23
  :class="cn(
24
- 'tw:data-[motion^=from-]:animate-in tw:data-[motion^=to-]:animate-out tw:data-[motion^=from-]:fade-in tw:data-[motion^=to-]:fade-out tw:data-[motion=from-end]:slide-in-from-right-52 tw:data-[motion=from-start]:slide-in-from-left-52 tw:data-[motion=to-end]:slide-out-to-right-52 tw:data-[motion=to-start]:slide-out-to-left-52 tw:top-0 tw:left-0 tw:w-full tw:p-2 tw:pr-2.5 tw:md:absolute tw:md:w-auto',
25
- 'tw:group-data-[viewport=false]/navigation-menu:bg-popover tw:group-data-[viewport=false]/navigation-menu:text-popover-foreground tw:group-data-[viewport=false]/navigation-menu:data-[state=open]:animate-in tw:group-data-[viewport=false]/navigation-menu:data-[state=closed]:animate-out tw:group-data-[viewport=false]/navigation-menu:data-[state=closed]:zoom-out-95 tw:group-data-[viewport=false]/navigation-menu:data-[state=open]:zoom-in-95 tw:group-data-[viewport=false]/navigation-menu:data-[state=open]:fade-in-0 tw:group-data-[viewport=false]/navigation-menu:data-[state=closed]:fade-out-0 tw:group-data-[viewport=false]/navigation-menu:top-full tw:group-data-[viewport=false]/navigation-menu:mt-1.5 tw:group-data-[viewport=false]/navigation-menu:overflow-hidden tw:group-data-[viewport=false]/navigation-menu:rounded-md tw:group-data-[viewport=false]/navigation-menu:border tw:group-data-[viewport=false]/navigation-menu:shadow tw:group-data-[viewport=false]/navigation-menu:duration-200 tw:**:data-[slot=navigation-menu-link]:focus:ring-0 tw:**:data-[slot=navigation-menu-link]:focus:outline-none',
24
+ 'data-[motion^=from-]:animate-in data-[motion^=to-]:animate-out data-[motion^=from-]:fade-in data-[motion^=to-]:fade-out data-[motion=from-end]:slide-in-from-right-52 data-[motion=from-start]:slide-in-from-left-52 data-[motion=to-end]:slide-out-to-right-52 data-[motion=to-start]:slide-out-to-left-52 top-0 left-0 w-full p-2 pr-2.5 md:absolute md:w-auto',
25
+ 'group-data-[viewport=false]/navigation-menu:bg-popover group-data-[viewport=false]/navigation-menu:text-popover-foreground group-data-[viewport=false]/navigation-menu:data-[state=open]:animate-in group-data-[viewport=false]/navigation-menu:data-[state=closed]:animate-out group-data-[viewport=false]/navigation-menu:data-[state=closed]:zoom-out-95 group-data-[viewport=false]/navigation-menu:data-[state=open]:zoom-in-95 group-data-[viewport=false]/navigation-menu:data-[state=open]:fade-in-0 group-data-[viewport=false]/navigation-menu:data-[state=closed]:fade-out-0 group-data-[viewport=false]/navigation-menu:top-full group-data-[viewport=false]/navigation-menu:mt-1.5 group-data-[viewport=false]/navigation-menu:overflow-hidden group-data-[viewport=false]/navigation-menu:rounded-md group-data-[viewport=false]/navigation-menu:border group-data-[viewport=false]/navigation-menu:shadow group-data-[viewport=false]/navigation-menu:duration-200 **:data-[slot=navigation-menu-link]:focus:ring-0 **:data-[slot=navigation-menu-link]:focus:outline-none',
26
26
  props.class,
27
27
  )"
28
28
  >
@@ -16,8 +16,8 @@ const forwardedProps = useForwardProps(delegatedProps)
16
16
  <NavigationMenuIndicator
17
17
  data-slot="navigation-menu-indicator"
18
18
  v-bind="forwardedProps"
19
- :class="cn('tw:data-[state=visible]:animate-in tw:data-[state=hidden]:animate-out tw:data-[state=hidden]:fade-out tw:data-[state=visible]:fade-in tw:top-full tw:z-[1] tw:flex tw:h-1.5 tw:items-end tw:justify-center tw:overflow-hidden', props.class)"
19
+ :class="cn('data-[state=visible]:animate-in data-[state=hidden]:animate-out data-[state=hidden]:fade-out data-[state=visible]:fade-in top-full z-[1] flex h-1.5 items-end justify-center overflow-hidden', props.class)"
20
20
  >
21
- <div class=""tw:bg-border tw:relative tw:top-[60%] tw:h-2 tw:w-2 tw:rotate-45 tw:rounded-tl-sm tw:shadow-md"" />
21
+ <div class="bg-border relative top-[60%] h-2 w-2 rotate-45 rounded-tl-sm shadow-md" />
22
22
  </NavigationMenuIndicator>
23
23
  </template>