create-tauri-ui 0.2.1 → 0.3.1

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 (265) hide show
  1. package/README.md +19 -10
  2. package/dist/index.mjs +26 -26
  3. package/package.json +55 -54
  4. package/templates/.shared/app-icon.png +0 -0
  5. package/templates/.shared/src-tauri/Cargo.lock +3832 -3701
  6. package/templates/.shared/src-tauri/Cargo.toml +4 -1
  7. package/templates/.shared/src-tauri/src/main.rs +3 -0
  8. package/templates/.shared/src-tauri/tauri.conf.json +1 -9
  9. package/templates/next/components.json +1 -1
  10. package/templates/next/package.json +87 -83
  11. package/templates/next/pnpm-lock.yaml +608 -566
  12. package/templates/next/src/app/examples/cards/components/date-picker.tsx +3 -1
  13. package/templates/next/src/app/examples/cards/components/github-card.tsx +2 -0
  14. package/templates/next/src/app/examples/cards/components/notifications.tsx +2 -0
  15. package/templates/next/src/app/examples/cards/components/payment-method.tsx +3 -1
  16. package/templates/next/src/app/examples/cards/components/team-members.tsx +3 -5
  17. package/templates/next/src/app/examples/forms/page.tsx +1 -1
  18. package/templates/next/src/assets/Inter-VariableFont_slnt,wght.ttf +0 -0
  19. package/templates/next/src/components/about-dialog.tsx +111 -0
  20. package/templates/next/src/components/icons.tsx +156 -154
  21. package/templates/next/src/components/menu-mode-toggle.tsx +47 -46
  22. package/templates/next/src/components/menu.tsx +178 -214
  23. package/templates/next/src/components/page-header.tsx +2 -0
  24. package/templates/next/src/components/ui/accordion.tsx +60 -60
  25. package/templates/next/src/components/ui/alert-dialog.tsx +145 -145
  26. package/templates/next/src/components/ui/alert.tsx +59 -59
  27. package/templates/next/src/components/ui/aspect-ratio.tsx +7 -7
  28. package/templates/next/src/components/ui/avatar.tsx +50 -50
  29. package/templates/next/src/components/ui/badge.tsx +36 -36
  30. package/templates/next/src/components/ui/button.tsx +56 -56
  31. package/templates/next/src/components/ui/calendar.tsx +64 -64
  32. package/templates/next/src/components/ui/card.tsx +79 -79
  33. package/templates/next/src/components/ui/checkbox.tsx +30 -30
  34. package/templates/next/src/components/ui/collapsible.tsx +11 -11
  35. package/templates/next/src/components/ui/command.tsx +155 -155
  36. package/templates/next/src/components/ui/context-menu.tsx +200 -200
  37. package/templates/next/src/components/ui/dialog.tsx +123 -123
  38. package/templates/next/src/components/ui/dropdown-menu.tsx +200 -200
  39. package/templates/next/src/components/ui/form.tsx +176 -176
  40. package/templates/next/src/components/ui/hover-card.tsx +29 -29
  41. package/templates/next/src/components/ui/input.tsx +25 -25
  42. package/templates/next/src/components/ui/label.tsx +26 -26
  43. package/templates/next/src/components/ui/menubar.tsx +236 -236
  44. package/templates/next/src/components/ui/navigation-menu.tsx +128 -128
  45. package/templates/next/src/components/ui/popover.tsx +31 -31
  46. package/templates/next/src/components/ui/progress.tsx +28 -28
  47. package/templates/next/src/components/ui/radio-group.tsx +44 -44
  48. package/templates/next/src/components/ui/scroll-area.tsx +48 -48
  49. package/templates/next/src/components/ui/select.tsx +121 -121
  50. package/templates/next/src/components/ui/separator.tsx +31 -31
  51. package/templates/next/src/components/ui/sheet.tsx +144 -144
  52. package/templates/next/src/components/ui/skeleton.tsx +15 -15
  53. package/templates/next/src/components/ui/slider.tsx +28 -28
  54. package/templates/next/src/components/ui/switch.tsx +29 -29
  55. package/templates/next/src/components/ui/table.tsx +114 -114
  56. package/templates/next/src/components/ui/tabs.tsx +55 -55
  57. package/templates/next/src/components/ui/textarea.tsx +24 -24
  58. package/templates/next/src/components/ui/toast.tsx +127 -127
  59. package/templates/next/src/components/ui/toaster.tsx +35 -35
  60. package/templates/next/src/components/ui/toggle.tsx +45 -45
  61. package/templates/next/src/components/ui/tooltip.tsx +30 -30
  62. package/templates/next/src/components/ui/use-toast.ts +192 -192
  63. package/templates/next/src/styles/globals.css +5 -3
  64. package/templates/next/src-tauri/Cargo.lock +270 -139
  65. package/templates/next/src-tauri/Cargo.toml +39 -36
  66. package/templates/next/src-tauri/src/main.rs +22 -19
  67. package/templates/next/src-tauri/tauri.conf.json +1 -9
  68. package/templates/sveltekit/.github/workflows/release.yml +108 -108
  69. package/templates/sveltekit/package.json +85 -84
  70. package/templates/sveltekit/pnpm-lock.yaml +1543 -2703
  71. package/templates/sveltekit/src/app.html +1 -1
  72. package/templates/sveltekit/src/routes/+layout.svelte +4 -3
  73. package/templates/sveltekit/src-tauri/Cargo.lock +3832 -3701
  74. package/templates/sveltekit/src-tauri/Cargo.toml +39 -36
  75. package/templates/sveltekit/src-tauri/src/main.rs +8 -2
  76. package/templates/sveltekit/src-tauri/tauri.conf.json +71 -79
  77. package/templates/sveltekit/static/favicon.ico +0 -0
  78. package/templates/sveltekit/vite.config.js +10 -6
  79. package/templates/vite/index.html +1 -1
  80. package/templates/vite/package.json +83 -76
  81. package/templates/vite/pnpm-lock.yaml +5178 -5110
  82. package/templates/vite/src/assets/Inter-VariableFont_slnt,wght.ttf +0 -0
  83. package/templates/vite/src/components/about-dialog.tsx +101 -0
  84. package/templates/vite/src/components/icons.tsx +2 -2
  85. package/templates/vite/src/components/menu-mode-toggle.tsx +4 -3
  86. package/templates/vite/src/components/menu.tsx +177 -197
  87. package/templates/vite/src/components/ui/accordion.tsx +1 -3
  88. package/templates/vite/src/components/ui/alert-dialog.tsx +3 -10
  89. package/templates/vite/src/components/ui/alert.tsx +3 -5
  90. package/templates/vite/src/components/ui/aspect-ratio.tsx +0 -2
  91. package/templates/vite/src/components/ui/avatar.tsx +0 -2
  92. package/templates/vite/src/components/ui/badge.tsx +5 -5
  93. package/templates/vite/src/components/ui/button.tsx +15 -10
  94. package/templates/vite/src/components/ui/calendar.tsx +0 -2
  95. package/templates/vite/src/components/ui/card.tsx +1 -3
  96. package/templates/vite/src/components/ui/checkbox.tsx +2 -4
  97. package/templates/vite/src/components/ui/collapsible.tsx +0 -2
  98. package/templates/vite/src/components/ui/command.tsx +2 -4
  99. package/templates/vite/src/components/ui/context-menu.tsx +6 -8
  100. package/templates/vite/src/components/ui/dialog.tsx +4 -11
  101. package/templates/vite/src/components/ui/dropdown-menu.tsx +6 -8
  102. package/templates/vite/src/components/ui/form.tsx +176 -0
  103. package/templates/vite/src/components/ui/hover-card.tsx +1 -3
  104. package/templates/vite/src/components/ui/input.tsx +1 -3
  105. package/templates/vite/src/components/ui/label.tsx +1 -3
  106. package/templates/vite/src/components/ui/menubar.tsx +7 -9
  107. package/templates/vite/src/components/ui/navigation-menu.tsx +2 -4
  108. package/templates/vite/src/components/ui/popover.tsx +1 -3
  109. package/templates/vite/src/components/ui/progress.tsx +0 -2
  110. package/templates/vite/src/components/ui/radio-group.tsx +2 -4
  111. package/templates/vite/src/components/ui/scroll-area.tsx +0 -2
  112. package/templates/vite/src/components/ui/select.tsx +4 -5
  113. package/templates/vite/src/components/ui/separator.tsx +0 -2
  114. package/templates/vite/src/components/ui/sheet.tsx +22 -110
  115. package/templates/vite/src/components/ui/skeleton.tsx +0 -2
  116. package/templates/vite/src/components/ui/slider.tsx +0 -2
  117. package/templates/vite/src/components/ui/switch.tsx +1 -3
  118. package/templates/vite/src/components/ui/table.tsx +1 -1
  119. package/templates/vite/src/components/ui/tabs.tsx +1 -3
  120. package/templates/vite/src/components/ui/textarea.tsx +1 -3
  121. package/templates/vite/src/components/ui/toast.tsx +6 -8
  122. package/templates/vite/src/components/ui/toaster.tsx +0 -2
  123. package/templates/vite/src/components/ui/toggle.tsx +3 -5
  124. package/templates/vite/src/components/ui/tooltip.tsx +1 -3
  125. package/templates/vite/src/components/ui/use-toast.ts +5 -4
  126. package/templates/vite/src/styles/globals.css +5 -3
  127. package/templates/vite/src-tauri/Cargo.lock +3832 -3701
  128. package/templates/vite/src-tauri/Cargo.toml +39 -36
  129. package/templates/vite/src-tauri/src/main.rs +8 -2
  130. package/templates/vite/src-tauri/tauri.conf.json +1 -9
  131. package/templates/vite/vite.config.ts +2 -2
  132. package/templates/next/src/assets/Inter.var.woff2 +0 -0
  133. package/templates/vite/src/assets/Inter.var.woff2 +0 -0
  134. package/templates/viteuno/.github/workflows/release.yml +0 -108
  135. package/templates/viteuno/.vscode/extensions.json +0 -3
  136. package/templates/viteuno/README.md +0 -1
  137. package/templates/viteuno/app-icon.png +0 -0
  138. package/templates/viteuno/components.json +0 -16
  139. package/templates/viteuno/index.html +0 -16
  140. package/templates/viteuno/package.json +0 -73
  141. package/templates/viteuno/pnpm-lock.yaml +0 -5298
  142. package/templates/viteuno/preset.shadcn.ts +0 -160
  143. package/templates/viteuno/prettier.config.cjs +0 -34
  144. package/templates/viteuno/public/avatars/01.png +0 -0
  145. package/templates/viteuno/public/avatars/02.png +0 -0
  146. package/templates/viteuno/public/avatars/03.png +0 -0
  147. package/templates/viteuno/public/avatars/04.png +0 -0
  148. package/templates/viteuno/public/avatars/05.png +0 -0
  149. package/templates/viteuno/src/App.tsx +0 -39
  150. package/templates/viteuno/src/assets/Inter.var.woff2 +0 -0
  151. package/templates/viteuno/src/components/icons.tsx +0 -154
  152. package/templates/viteuno/src/components/menu-mode-toggle.tsx +0 -46
  153. package/templates/viteuno/src/components/menu.tsx +0 -232
  154. package/templates/viteuno/src/components/tailwind-indicator.tsx +0 -18
  155. package/templates/viteuno/src/components/theme-provider.tsx +0 -9
  156. package/templates/viteuno/src/components/ui/accordion.tsx +0 -60
  157. package/templates/viteuno/src/components/ui/alert-dialog.tsx +0 -150
  158. package/templates/viteuno/src/components/ui/alert.tsx +0 -61
  159. package/templates/viteuno/src/components/ui/aspect-ratio.tsx +0 -7
  160. package/templates/viteuno/src/components/ui/avatar.tsx +0 -50
  161. package/templates/viteuno/src/components/ui/badge.tsx +0 -36
  162. package/templates/viteuno/src/components/ui/button.tsx +0 -51
  163. package/templates/viteuno/src/components/ui/calendar.tsx +0 -64
  164. package/templates/viteuno/src/components/ui/card.tsx +0 -81
  165. package/templates/viteuno/src/components/ui/checkbox.tsx +0 -30
  166. package/templates/viteuno/src/components/ui/collapsible.tsx +0 -11
  167. package/templates/viteuno/src/components/ui/command.tsx +0 -155
  168. package/templates/viteuno/src/components/ui/context-menu.tsx +0 -200
  169. package/templates/viteuno/src/components/ui/dialog.tsx +0 -128
  170. package/templates/viteuno/src/components/ui/dropdown-menu.tsx +0 -200
  171. package/templates/viteuno/src/components/ui/hover-card.tsx +0 -29
  172. package/templates/viteuno/src/components/ui/index.ts +0 -0
  173. package/templates/viteuno/src/components/ui/input.tsx +0 -27
  174. package/templates/viteuno/src/components/ui/label.tsx +0 -26
  175. package/templates/viteuno/src/components/ui/menubar.tsx +0 -236
  176. package/templates/viteuno/src/components/ui/navigation-menu.tsx +0 -130
  177. package/templates/viteuno/src/components/ui/popover.tsx +0 -31
  178. package/templates/viteuno/src/components/ui/progress.tsx +0 -28
  179. package/templates/viteuno/src/components/ui/radio-group.tsx +0 -44
  180. package/templates/viteuno/src/components/ui/scroll-area.tsx +0 -48
  181. package/templates/viteuno/src/components/ui/select.tsx +0 -120
  182. package/templates/viteuno/src/components/ui/separator.tsx +0 -31
  183. package/templates/viteuno/src/components/ui/sheet.tsx +0 -230
  184. package/templates/viteuno/src/components/ui/skeleton.tsx +0 -17
  185. package/templates/viteuno/src/components/ui/slider.tsx +0 -28
  186. package/templates/viteuno/src/components/ui/switch.tsx +0 -29
  187. package/templates/viteuno/src/components/ui/table.tsx +0 -114
  188. package/templates/viteuno/src/components/ui/tabs.tsx +0 -55
  189. package/templates/viteuno/src/components/ui/textarea.tsx +0 -26
  190. package/templates/viteuno/src/components/ui/toast.tsx +0 -129
  191. package/templates/viteuno/src/components/ui/toaster.tsx +0 -35
  192. package/templates/viteuno/src/components/ui/toggle.tsx +0 -45
  193. package/templates/viteuno/src/components/ui/tooltip.tsx +0 -30
  194. package/templates/viteuno/src/components/ui/use-toast.ts +0 -191
  195. package/templates/viteuno/src/dashboard/components/date-range-picker.tsx +0 -66
  196. package/templates/viteuno/src/dashboard/components/main-nav.tsx +0 -38
  197. package/templates/viteuno/src/dashboard/components/overview.tsx +0 -78
  198. package/templates/viteuno/src/dashboard/components/recent-sales.tsx +0 -67
  199. package/templates/viteuno/src/dashboard/components/search.tsx +0 -13
  200. package/templates/viteuno/src/dashboard/components/team-switcher.tsx +0 -205
  201. package/templates/viteuno/src/dashboard/components/user-nav.tsx +0 -67
  202. package/templates/viteuno/src/dashboard/page.tsx +0 -140
  203. package/templates/viteuno/src/lib/utils.ts +0 -19
  204. package/templates/viteuno/src/main.tsx +0 -14
  205. package/templates/viteuno/src/styles/globals.css +0 -4
  206. package/templates/viteuno/src/vite-env.d.ts +0 -1
  207. package/templates/viteuno/src-tauri/Cargo.lock +0 -3701
  208. package/templates/viteuno/src-tauri/Cargo.toml +0 -36
  209. package/templates/viteuno/src-tauri/build.rs +0 -3
  210. package/templates/viteuno/src-tauri/icons/128x128.png +0 -0
  211. package/templates/viteuno/src-tauri/icons/128x128@2x.png +0 -0
  212. package/templates/viteuno/src-tauri/icons/32x32.png +0 -0
  213. package/templates/viteuno/src-tauri/icons/Square107x107Logo.png +0 -0
  214. package/templates/viteuno/src-tauri/icons/Square142x142Logo.png +0 -0
  215. package/templates/viteuno/src-tauri/icons/Square150x150Logo.png +0 -0
  216. package/templates/viteuno/src-tauri/icons/Square284x284Logo.png +0 -0
  217. package/templates/viteuno/src-tauri/icons/Square30x30Logo.png +0 -0
  218. package/templates/viteuno/src-tauri/icons/Square310x310Logo.png +0 -0
  219. package/templates/viteuno/src-tauri/icons/Square44x44Logo.png +0 -0
  220. package/templates/viteuno/src-tauri/icons/Square71x71Logo.png +0 -0
  221. package/templates/viteuno/src-tauri/icons/Square89x89Logo.png +0 -0
  222. package/templates/viteuno/src-tauri/icons/StoreLogo.png +0 -0
  223. package/templates/viteuno/src-tauri/icons/android/mipmap-hdpi/ic_launcher.png +0 -0
  224. package/templates/viteuno/src-tauri/icons/android/mipmap-hdpi/ic_launcher_foreground.png +0 -0
  225. package/templates/viteuno/src-tauri/icons/android/mipmap-hdpi/ic_launcher_round.png +0 -0
  226. package/templates/viteuno/src-tauri/icons/android/mipmap-mdpi/ic_launcher.png +0 -0
  227. package/templates/viteuno/src-tauri/icons/android/mipmap-mdpi/ic_launcher_foreground.png +0 -0
  228. package/templates/viteuno/src-tauri/icons/android/mipmap-mdpi/ic_launcher_round.png +0 -0
  229. package/templates/viteuno/src-tauri/icons/android/mipmap-xhdpi/ic_launcher.png +0 -0
  230. package/templates/viteuno/src-tauri/icons/android/mipmap-xhdpi/ic_launcher_foreground.png +0 -0
  231. package/templates/viteuno/src-tauri/icons/android/mipmap-xhdpi/ic_launcher_round.png +0 -0
  232. package/templates/viteuno/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher.png +0 -0
  233. package/templates/viteuno/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher_foreground.png +0 -0
  234. package/templates/viteuno/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher_round.png +0 -0
  235. package/templates/viteuno/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher.png +0 -0
  236. package/templates/viteuno/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher_foreground.png +0 -0
  237. package/templates/viteuno/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher_round.png +0 -0
  238. package/templates/viteuno/src-tauri/icons/icon.icns +0 -0
  239. package/templates/viteuno/src-tauri/icons/icon.ico +0 -0
  240. package/templates/viteuno/src-tauri/icons/icon.png +0 -0
  241. package/templates/viteuno/src-tauri/icons/ios/AppIcon-20x20@1x.png +0 -0
  242. package/templates/viteuno/src-tauri/icons/ios/AppIcon-20x20@2x-1.png +0 -0
  243. package/templates/viteuno/src-tauri/icons/ios/AppIcon-20x20@2x.png +0 -0
  244. package/templates/viteuno/src-tauri/icons/ios/AppIcon-20x20@3x.png +0 -0
  245. package/templates/viteuno/src-tauri/icons/ios/AppIcon-29x29@1x.png +0 -0
  246. package/templates/viteuno/src-tauri/icons/ios/AppIcon-29x29@2x-1.png +0 -0
  247. package/templates/viteuno/src-tauri/icons/ios/AppIcon-29x29@2x.png +0 -0
  248. package/templates/viteuno/src-tauri/icons/ios/AppIcon-29x29@3x.png +0 -0
  249. package/templates/viteuno/src-tauri/icons/ios/AppIcon-40x40@1x.png +0 -0
  250. package/templates/viteuno/src-tauri/icons/ios/AppIcon-40x40@2x-1.png +0 -0
  251. package/templates/viteuno/src-tauri/icons/ios/AppIcon-40x40@2x.png +0 -0
  252. package/templates/viteuno/src-tauri/icons/ios/AppIcon-40x40@3x.png +0 -0
  253. package/templates/viteuno/src-tauri/icons/ios/AppIcon-512@2x.png +0 -0
  254. package/templates/viteuno/src-tauri/icons/ios/AppIcon-60x60@2x.png +0 -0
  255. package/templates/viteuno/src-tauri/icons/ios/AppIcon-60x60@3x.png +0 -0
  256. package/templates/viteuno/src-tauri/icons/ios/AppIcon-76x76@1x.png +0 -0
  257. package/templates/viteuno/src-tauri/icons/ios/AppIcon-76x76@2x.png +0 -0
  258. package/templates/viteuno/src-tauri/icons/ios/AppIcon-83.5x83.5@2x.png +0 -0
  259. package/templates/viteuno/src-tauri/src/main.rs +0 -16
  260. package/templates/viteuno/src-tauri/tauri.conf.json +0 -79
  261. package/templates/viteuno/tsconfig.json +0 -26
  262. package/templates/viteuno/tsconfig.node.json +0 -9
  263. package/templates/viteuno/uno.config.ts +0 -111
  264. package/templates/viteuno/vite.config.ts +0 -33
  265. /package/templates/next/src/app/examples/forms/{profile-form.tsx → components/profile-form.tsx} +0 -0
@@ -1,28 +1,28 @@
1
- "use client"
2
-
3
- import * as React from "react"
4
- import * as SliderPrimitive from "@radix-ui/react-slider"
5
-
6
- import { cn } from "@/lib/utils"
7
-
8
- const Slider = React.forwardRef<
9
- React.ElementRef<typeof SliderPrimitive.Root>,
10
- React.ComponentPropsWithoutRef<typeof SliderPrimitive.Root>
11
- >(({ className, ...props }, ref) => (
12
- <SliderPrimitive.Root
13
- ref={ref}
14
- className={cn(
15
- "relative flex w-full touch-none select-none items-center",
16
- className
17
- )}
18
- {...props}
19
- >
20
- <SliderPrimitive.Track className="relative h-2 w-full grow overflow-hidden rounded-full bg-secondary">
21
- <SliderPrimitive.Range className="absolute h-full bg-primary" />
22
- </SliderPrimitive.Track>
23
- <SliderPrimitive.Thumb className="block h-5 w-5 rounded-full border-2 border-primary bg-background ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50" />
24
- </SliderPrimitive.Root>
25
- ))
26
- Slider.displayName = SliderPrimitive.Root.displayName
27
-
28
- export { Slider }
1
+ "use client"
2
+
3
+ import * as React from "react"
4
+ import * as SliderPrimitive from "@radix-ui/react-slider"
5
+
6
+ import { cn } from "@/lib/utils"
7
+
8
+ const Slider = React.forwardRef<
9
+ React.ElementRef<typeof SliderPrimitive.Root>,
10
+ React.ComponentPropsWithoutRef<typeof SliderPrimitive.Root>
11
+ >(({ className, ...props }, ref) => (
12
+ <SliderPrimitive.Root
13
+ ref={ref}
14
+ className={cn(
15
+ "relative flex w-full touch-none select-none items-center",
16
+ className
17
+ )}
18
+ {...props}
19
+ >
20
+ <SliderPrimitive.Track className="relative h-2 w-full grow overflow-hidden rounded-full bg-secondary">
21
+ <SliderPrimitive.Range className="absolute h-full bg-primary" />
22
+ </SliderPrimitive.Track>
23
+ <SliderPrimitive.Thumb className="block h-5 w-5 rounded-full border-2 border-primary bg-background ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50" />
24
+ </SliderPrimitive.Root>
25
+ ))
26
+ Slider.displayName = SliderPrimitive.Root.displayName
27
+
28
+ export { Slider }
@@ -1,29 +1,29 @@
1
- "use client"
2
-
3
- import * as React from "react"
4
- import * as SwitchPrimitives from "@radix-ui/react-switch"
5
-
6
- import { cn } from "@/lib/utils"
7
-
8
- const Switch = React.forwardRef<
9
- React.ElementRef<typeof SwitchPrimitives.Root>,
10
- React.ComponentPropsWithoutRef<typeof SwitchPrimitives.Root>
11
- >(({ className, ...props }, ref) => (
12
- <SwitchPrimitives.Root
13
- className={cn(
14
- "peer inline-flex h-[24px] w-[44px] shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input",
15
- className
16
- )}
17
- {...props}
18
- ref={ref}
19
- >
20
- <SwitchPrimitives.Thumb
21
- className={cn(
22
- "pointer-events-none block h-5 w-5 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-5 data-[state=unchecked]:translate-x-0"
23
- )}
24
- />
25
- </SwitchPrimitives.Root>
26
- ))
27
- Switch.displayName = SwitchPrimitives.Root.displayName
28
-
29
- export { Switch }
1
+ "use client"
2
+
3
+ import * as React from "react"
4
+ import * as SwitchPrimitives from "@radix-ui/react-switch"
5
+
6
+ import { cn } from "@/lib/utils"
7
+
8
+ const Switch = React.forwardRef<
9
+ React.ElementRef<typeof SwitchPrimitives.Root>,
10
+ React.ComponentPropsWithoutRef<typeof SwitchPrimitives.Root>
11
+ >(({ className, ...props }, ref) => (
12
+ <SwitchPrimitives.Root
13
+ className={cn(
14
+ "peer inline-flex h-[24px] w-[44px] shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input",
15
+ className
16
+ )}
17
+ {...props}
18
+ ref={ref}
19
+ >
20
+ <SwitchPrimitives.Thumb
21
+ className={cn(
22
+ "pointer-events-none block h-5 w-5 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-5 data-[state=unchecked]:translate-x-0"
23
+ )}
24
+ />
25
+ </SwitchPrimitives.Root>
26
+ ))
27
+ Switch.displayName = SwitchPrimitives.Root.displayName
28
+
29
+ export { Switch }
@@ -1,114 +1,114 @@
1
- import * as React from "react"
2
-
3
- import { cn } from "@/lib/utils"
4
-
5
- const Table = React.forwardRef<
6
- HTMLTableElement,
7
- React.HTMLAttributes<HTMLTableElement>
8
- >(({ className, ...props }, ref) => (
9
- <div className="w-full overflow-auto">
10
- <table
11
- ref={ref}
12
- className={cn("w-full caption-bottom text-sm", className)}
13
- {...props}
14
- />
15
- </div>
16
- ))
17
- Table.displayName = "Table"
18
-
19
- const TableHeader = React.forwardRef<
20
- HTMLTableSectionElement,
21
- React.HTMLAttributes<HTMLTableSectionElement>
22
- >(({ className, ...props }, ref) => (
23
- <thead ref={ref} className={cn("[&_tr]:border-b", className)} {...props} />
24
- ))
25
- TableHeader.displayName = "TableHeader"
26
-
27
- const TableBody = React.forwardRef<
28
- HTMLTableSectionElement,
29
- React.HTMLAttributes<HTMLTableSectionElement>
30
- >(({ className, ...props }, ref) => (
31
- <tbody
32
- ref={ref}
33
- className={cn("[&_tr:last-child]:border-0", className)}
34
- {...props}
35
- />
36
- ))
37
- TableBody.displayName = "TableBody"
38
-
39
- const TableFooter = React.forwardRef<
40
- HTMLTableSectionElement,
41
- React.HTMLAttributes<HTMLTableSectionElement>
42
- >(({ className, ...props }, ref) => (
43
- <tfoot
44
- ref={ref}
45
- className={cn("bg-primary font-medium text-primary-foreground", className)}
46
- {...props}
47
- />
48
- ))
49
- TableFooter.displayName = "TableFooter"
50
-
51
- const TableRow = React.forwardRef<
52
- HTMLTableRowElement,
53
- React.HTMLAttributes<HTMLTableRowElement>
54
- >(({ className, ...props }, ref) => (
55
- <tr
56
- ref={ref}
57
- className={cn(
58
- "border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",
59
- className
60
- )}
61
- {...props}
62
- />
63
- ))
64
- TableRow.displayName = "TableRow"
65
-
66
- const TableHead = React.forwardRef<
67
- HTMLTableCellElement,
68
- React.ThHTMLAttributes<HTMLTableCellElement>
69
- >(({ className, ...props }, ref) => (
70
- <th
71
- ref={ref}
72
- className={cn(
73
- "h-12 px-4 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0",
74
- className
75
- )}
76
- {...props}
77
- />
78
- ))
79
- TableHead.displayName = "TableHead"
80
-
81
- const TableCell = React.forwardRef<
82
- HTMLTableCellElement,
83
- React.TdHTMLAttributes<HTMLTableCellElement>
84
- >(({ className, ...props }, ref) => (
85
- <td
86
- ref={ref}
87
- className={cn("p-4 align-middle [&:has([role=checkbox])]:pr-0", className)}
88
- {...props}
89
- />
90
- ))
91
- TableCell.displayName = "TableCell"
92
-
93
- const TableCaption = React.forwardRef<
94
- HTMLTableCaptionElement,
95
- React.HTMLAttributes<HTMLTableCaptionElement>
96
- >(({ className, ...props }, ref) => (
97
- <caption
98
- ref={ref}
99
- className={cn("mt-4 text-sm text-muted-foreground", className)}
100
- {...props}
101
- />
102
- ))
103
- TableCaption.displayName = "TableCaption"
104
-
105
- export {
106
- Table,
107
- TableHeader,
108
- TableBody,
109
- TableFooter,
110
- TableHead,
111
- TableRow,
112
- TableCell,
113
- TableCaption,
114
- }
1
+ import * as React from "react"
2
+
3
+ import { cn } from "@/lib/utils"
4
+
5
+ const Table = React.forwardRef<
6
+ HTMLTableElement,
7
+ React.HTMLAttributes<HTMLTableElement>
8
+ >(({ className, ...props }, ref) => (
9
+ <div className="w-full overflow-auto">
10
+ <table
11
+ ref={ref}
12
+ className={cn("w-full caption-bottom text-sm", className)}
13
+ {...props}
14
+ />
15
+ </div>
16
+ ))
17
+ Table.displayName = "Table"
18
+
19
+ const TableHeader = React.forwardRef<
20
+ HTMLTableSectionElement,
21
+ React.HTMLAttributes<HTMLTableSectionElement>
22
+ >(({ className, ...props }, ref) => (
23
+ <thead ref={ref} className={cn("[&_tr]:border-b", className)} {...props} />
24
+ ))
25
+ TableHeader.displayName = "TableHeader"
26
+
27
+ const TableBody = React.forwardRef<
28
+ HTMLTableSectionElement,
29
+ React.HTMLAttributes<HTMLTableSectionElement>
30
+ >(({ className, ...props }, ref) => (
31
+ <tbody
32
+ ref={ref}
33
+ className={cn("[&_tr:last-child]:border-0", className)}
34
+ {...props}
35
+ />
36
+ ))
37
+ TableBody.displayName = "TableBody"
38
+
39
+ const TableFooter = React.forwardRef<
40
+ HTMLTableSectionElement,
41
+ React.HTMLAttributes<HTMLTableSectionElement>
42
+ >(({ className, ...props }, ref) => (
43
+ <tfoot
44
+ ref={ref}
45
+ className={cn("bg-primary font-medium text-primary-foreground", className)}
46
+ {...props}
47
+ />
48
+ ))
49
+ TableFooter.displayName = "TableFooter"
50
+
51
+ const TableRow = React.forwardRef<
52
+ HTMLTableRowElement,
53
+ React.HTMLAttributes<HTMLTableRowElement>
54
+ >(({ className, ...props }, ref) => (
55
+ <tr
56
+ ref={ref}
57
+ className={cn(
58
+ "border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",
59
+ className
60
+ )}
61
+ {...props}
62
+ />
63
+ ))
64
+ TableRow.displayName = "TableRow"
65
+
66
+ const TableHead = React.forwardRef<
67
+ HTMLTableCellElement,
68
+ React.ThHTMLAttributes<HTMLTableCellElement>
69
+ >(({ className, ...props }, ref) => (
70
+ <th
71
+ ref={ref}
72
+ className={cn(
73
+ "h-12 px-4 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0",
74
+ className
75
+ )}
76
+ {...props}
77
+ />
78
+ ))
79
+ TableHead.displayName = "TableHead"
80
+
81
+ const TableCell = React.forwardRef<
82
+ HTMLTableCellElement,
83
+ React.TdHTMLAttributes<HTMLTableCellElement>
84
+ >(({ className, ...props }, ref) => (
85
+ <td
86
+ ref={ref}
87
+ className={cn("p-4 align-middle [&:has([role=checkbox])]:pr-0", className)}
88
+ {...props}
89
+ />
90
+ ))
91
+ TableCell.displayName = "TableCell"
92
+
93
+ const TableCaption = React.forwardRef<
94
+ HTMLTableCaptionElement,
95
+ React.HTMLAttributes<HTMLTableCaptionElement>
96
+ >(({ className, ...props }, ref) => (
97
+ <caption
98
+ ref={ref}
99
+ className={cn("mt-4 text-sm text-muted-foreground", className)}
100
+ {...props}
101
+ />
102
+ ))
103
+ TableCaption.displayName = "TableCaption"
104
+
105
+ export {
106
+ Table,
107
+ TableHeader,
108
+ TableBody,
109
+ TableFooter,
110
+ TableHead,
111
+ TableRow,
112
+ TableCell,
113
+ TableCaption,
114
+ }
@@ -1,55 +1,55 @@
1
- "use client"
2
-
3
- import * as React from "react"
4
- import * as TabsPrimitive from "@radix-ui/react-tabs"
5
-
6
- import { cn } from "@/lib/utils"
7
-
8
- const Tabs = TabsPrimitive.Root
9
-
10
- const TabsList = React.forwardRef<
11
- React.ElementRef<typeof TabsPrimitive.List>,
12
- React.ComponentPropsWithoutRef<typeof TabsPrimitive.List>
13
- >(({ className, ...props }, ref) => (
14
- <TabsPrimitive.List
15
- ref={ref}
16
- className={cn(
17
- "inline-flex h-10 items-center justify-center rounded-md bg-muted p-1 text-muted-foreground",
18
- className
19
- )}
20
- {...props}
21
- />
22
- ))
23
- TabsList.displayName = TabsPrimitive.List.displayName
24
-
25
- const TabsTrigger = React.forwardRef<
26
- React.ElementRef<typeof TabsPrimitive.Trigger>,
27
- React.ComponentPropsWithoutRef<typeof TabsPrimitive.Trigger>
28
- >(({ className, ...props }, ref) => (
29
- <TabsPrimitive.Trigger
30
- ref={ref}
31
- className={cn(
32
- "inline-flex items-center justify-center whitespace-nowrap rounded-sm px-3 py-1.5 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-sm",
33
- className
34
- )}
35
- {...props}
36
- />
37
- ))
38
- TabsTrigger.displayName = TabsPrimitive.Trigger.displayName
39
-
40
- const TabsContent = React.forwardRef<
41
- React.ElementRef<typeof TabsPrimitive.Content>,
42
- React.ComponentPropsWithoutRef<typeof TabsPrimitive.Content>
43
- >(({ className, ...props }, ref) => (
44
- <TabsPrimitive.Content
45
- ref={ref}
46
- className={cn(
47
- "mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
48
- className
49
- )}
50
- {...props}
51
- />
52
- ))
53
- TabsContent.displayName = TabsPrimitive.Content.displayName
54
-
55
- export { Tabs, TabsList, TabsTrigger, TabsContent }
1
+ "use client"
2
+
3
+ import * as React from "react"
4
+ import * as TabsPrimitive from "@radix-ui/react-tabs"
5
+
6
+ import { cn } from "@/lib/utils"
7
+
8
+ const Tabs = TabsPrimitive.Root
9
+
10
+ const TabsList = React.forwardRef<
11
+ React.ElementRef<typeof TabsPrimitive.List>,
12
+ React.ComponentPropsWithoutRef<typeof TabsPrimitive.List>
13
+ >(({ className, ...props }, ref) => (
14
+ <TabsPrimitive.List
15
+ ref={ref}
16
+ className={cn(
17
+ "inline-flex h-10 items-center justify-center rounded-md bg-muted p-1 text-muted-foreground",
18
+ className
19
+ )}
20
+ {...props}
21
+ />
22
+ ))
23
+ TabsList.displayName = TabsPrimitive.List.displayName
24
+
25
+ const TabsTrigger = React.forwardRef<
26
+ React.ElementRef<typeof TabsPrimitive.Trigger>,
27
+ React.ComponentPropsWithoutRef<typeof TabsPrimitive.Trigger>
28
+ >(({ className, ...props }, ref) => (
29
+ <TabsPrimitive.Trigger
30
+ ref={ref}
31
+ className={cn(
32
+ "inline-flex items-center justify-center whitespace-nowrap rounded-sm px-3 py-1.5 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-sm",
33
+ className
34
+ )}
35
+ {...props}
36
+ />
37
+ ))
38
+ TabsTrigger.displayName = TabsPrimitive.Trigger.displayName
39
+
40
+ const TabsContent = React.forwardRef<
41
+ React.ElementRef<typeof TabsPrimitive.Content>,
42
+ React.ComponentPropsWithoutRef<typeof TabsPrimitive.Content>
43
+ >(({ className, ...props }, ref) => (
44
+ <TabsPrimitive.Content
45
+ ref={ref}
46
+ className={cn(
47
+ "mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
48
+ className
49
+ )}
50
+ {...props}
51
+ />
52
+ ))
53
+ TabsContent.displayName = TabsPrimitive.Content.displayName
54
+
55
+ export { Tabs, TabsList, TabsTrigger, TabsContent }
@@ -1,24 +1,24 @@
1
- import * as React from "react"
2
-
3
- import { cn } from "@/lib/utils"
4
-
5
- export interface TextareaProps
6
- extends React.TextareaHTMLAttributes<HTMLTextAreaElement> {}
7
-
8
- const Textarea = React.forwardRef<HTMLTextAreaElement, TextareaProps>(
9
- ({ className, ...props }, ref) => {
10
- return (
11
- <textarea
12
- className={cn(
13
- "flex min-h-[80px] w-full rounded-md border border-input bg-transparent px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",
14
- className
15
- )}
16
- ref={ref}
17
- {...props}
18
- />
19
- )
20
- }
21
- )
22
- Textarea.displayName = "Textarea"
23
-
24
- export { Textarea }
1
+ import * as React from "react"
2
+
3
+ import { cn } from "@/lib/utils"
4
+
5
+ export interface TextareaProps
6
+ extends React.TextareaHTMLAttributes<HTMLTextAreaElement> {}
7
+
8
+ const Textarea = React.forwardRef<HTMLTextAreaElement, TextareaProps>(
9
+ ({ className, ...props }, ref) => {
10
+ return (
11
+ <textarea
12
+ className={cn(
13
+ "flex min-h-[80px] w-full rounded-md border border-input bg-transparent px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",
14
+ className
15
+ )}
16
+ ref={ref}
17
+ {...props}
18
+ />
19
+ )
20
+ }
21
+ )
22
+ Textarea.displayName = "Textarea"
23
+
24
+ export { Textarea }