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,127 +1,127 @@
1
- import * as React from "react"
2
- import * as ToastPrimitives from "@radix-ui/react-toast"
3
- import { cva, type VariantProps } from "class-variance-authority"
4
- import { X } from "lucide-react"
5
-
6
- import { cn } from "@/lib/utils"
7
-
8
- const ToastProvider = ToastPrimitives.Provider
9
-
10
- const ToastViewport = React.forwardRef<
11
- React.ElementRef<typeof ToastPrimitives.Viewport>,
12
- React.ComponentPropsWithoutRef<typeof ToastPrimitives.Viewport>
13
- >(({ className, ...props }, ref) => (
14
- <ToastPrimitives.Viewport
15
- ref={ref}
16
- className={cn(
17
- "fixed top-0 z-[100] flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-[420px]",
18
- className
19
- )}
20
- {...props}
21
- />
22
- ))
23
- ToastViewport.displayName = ToastPrimitives.Viewport.displayName
24
-
25
- const toastVariants = cva(
26
- "group pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)] data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)] data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full data-[state=open]:sm:slide-in-from-bottom-full",
27
- {
28
- variants: {
29
- variant: {
30
- default: "border bg-background",
31
- destructive:
32
- "destructive group border-destructive bg-destructive text-destructive-foreground",
33
- },
34
- },
35
- defaultVariants: {
36
- variant: "default",
37
- },
38
- }
39
- )
40
-
41
- const Toast = React.forwardRef<
42
- React.ElementRef<typeof ToastPrimitives.Root>,
43
- React.ComponentPropsWithoutRef<typeof ToastPrimitives.Root> &
44
- VariantProps<typeof toastVariants>
45
- >(({ className, variant, ...props }, ref) => {
46
- return (
47
- <ToastPrimitives.Root
48
- ref={ref}
49
- className={cn(toastVariants({ variant }), className)}
50
- {...props}
51
- />
52
- )
53
- })
54
- Toast.displayName = ToastPrimitives.Root.displayName
55
-
56
- const ToastAction = React.forwardRef<
57
- React.ElementRef<typeof ToastPrimitives.Action>,
58
- React.ComponentPropsWithoutRef<typeof ToastPrimitives.Action>
59
- >(({ className, ...props }, ref) => (
60
- <ToastPrimitives.Action
61
- ref={ref}
62
- className={cn(
63
- "inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium ring-offset-background transition-colors hover:bg-secondary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 group-[.destructive]:border-muted/40 group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground group-[.destructive]:focus:ring-destructive",
64
- className
65
- )}
66
- {...props}
67
- />
68
- ))
69
- ToastAction.displayName = ToastPrimitives.Action.displayName
70
-
71
- const ToastClose = React.forwardRef<
72
- React.ElementRef<typeof ToastPrimitives.Close>,
73
- React.ComponentPropsWithoutRef<typeof ToastPrimitives.Close>
74
- >(({ className, ...props }, ref) => (
75
- <ToastPrimitives.Close
76
- ref={ref}
77
- className={cn(
78
- "absolute right-2 top-2 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-none focus:ring-2 group-hover:opacity-100 group-[.destructive]:text-red-300 group-[.destructive]:hover:text-red-50 group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600",
79
- className
80
- )}
81
- toast-close=""
82
- {...props}
83
- >
84
- <X className="h-4 w-4" />
85
- </ToastPrimitives.Close>
86
- ))
87
- ToastClose.displayName = ToastPrimitives.Close.displayName
88
-
89
- const ToastTitle = React.forwardRef<
90
- React.ElementRef<typeof ToastPrimitives.Title>,
91
- React.ComponentPropsWithoutRef<typeof ToastPrimitives.Title>
92
- >(({ className, ...props }, ref) => (
93
- <ToastPrimitives.Title
94
- ref={ref}
95
- className={cn("text-sm font-semibold", className)}
96
- {...props}
97
- />
98
- ))
99
- ToastTitle.displayName = ToastPrimitives.Title.displayName
100
-
101
- const ToastDescription = React.forwardRef<
102
- React.ElementRef<typeof ToastPrimitives.Description>,
103
- React.ComponentPropsWithoutRef<typeof ToastPrimitives.Description>
104
- >(({ className, ...props }, ref) => (
105
- <ToastPrimitives.Description
106
- ref={ref}
107
- className={cn("text-sm opacity-90", className)}
108
- {...props}
109
- />
110
- ))
111
- ToastDescription.displayName = ToastPrimitives.Description.displayName
112
-
113
- type ToastProps = React.ComponentPropsWithoutRef<typeof Toast>
114
-
115
- type ToastActionElement = React.ReactElement<typeof ToastAction>
116
-
117
- export {
118
- type ToastProps,
119
- type ToastActionElement,
120
- ToastProvider,
121
- ToastViewport,
122
- Toast,
123
- ToastTitle,
124
- ToastDescription,
125
- ToastClose,
126
- ToastAction,
127
- }
1
+ import * as React from "react"
2
+ import * as ToastPrimitives from "@radix-ui/react-toast"
3
+ import { cva, type VariantProps } from "class-variance-authority"
4
+ import { X } from "lucide-react"
5
+
6
+ import { cn } from "@/lib/utils"
7
+
8
+ const ToastProvider = ToastPrimitives.Provider
9
+
10
+ const ToastViewport = React.forwardRef<
11
+ React.ElementRef<typeof ToastPrimitives.Viewport>,
12
+ React.ComponentPropsWithoutRef<typeof ToastPrimitives.Viewport>
13
+ >(({ className, ...props }, ref) => (
14
+ <ToastPrimitives.Viewport
15
+ ref={ref}
16
+ className={cn(
17
+ "fixed top-0 z-[100] flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-[420px]",
18
+ className
19
+ )}
20
+ {...props}
21
+ />
22
+ ))
23
+ ToastViewport.displayName = ToastPrimitives.Viewport.displayName
24
+
25
+ const toastVariants = cva(
26
+ "group pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)] data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)] data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full data-[state=open]:sm:slide-in-from-bottom-full",
27
+ {
28
+ variants: {
29
+ variant: {
30
+ default: "border bg-background",
31
+ destructive:
32
+ "destructive group border-destructive bg-destructive text-destructive-foreground",
33
+ },
34
+ },
35
+ defaultVariants: {
36
+ variant: "default",
37
+ },
38
+ }
39
+ )
40
+
41
+ const Toast = React.forwardRef<
42
+ React.ElementRef<typeof ToastPrimitives.Root>,
43
+ React.ComponentPropsWithoutRef<typeof ToastPrimitives.Root> &
44
+ VariantProps<typeof toastVariants>
45
+ >(({ className, variant, ...props }, ref) => {
46
+ return (
47
+ <ToastPrimitives.Root
48
+ ref={ref}
49
+ className={cn(toastVariants({ variant }), className)}
50
+ {...props}
51
+ />
52
+ )
53
+ })
54
+ Toast.displayName = ToastPrimitives.Root.displayName
55
+
56
+ const ToastAction = React.forwardRef<
57
+ React.ElementRef<typeof ToastPrimitives.Action>,
58
+ React.ComponentPropsWithoutRef<typeof ToastPrimitives.Action>
59
+ >(({ className, ...props }, ref) => (
60
+ <ToastPrimitives.Action
61
+ ref={ref}
62
+ className={cn(
63
+ "inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium ring-offset-background transition-colors hover:bg-secondary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 group-[.destructive]:border-muted/40 group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground group-[.destructive]:focus:ring-destructive",
64
+ className
65
+ )}
66
+ {...props}
67
+ />
68
+ ))
69
+ ToastAction.displayName = ToastPrimitives.Action.displayName
70
+
71
+ const ToastClose = React.forwardRef<
72
+ React.ElementRef<typeof ToastPrimitives.Close>,
73
+ React.ComponentPropsWithoutRef<typeof ToastPrimitives.Close>
74
+ >(({ className, ...props }, ref) => (
75
+ <ToastPrimitives.Close
76
+ ref={ref}
77
+ className={cn(
78
+ "absolute right-2 top-2 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-none focus:ring-2 group-hover:opacity-100 group-[.destructive]:text-red-300 group-[.destructive]:hover:text-red-50 group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600",
79
+ className
80
+ )}
81
+ toast-close=""
82
+ {...props}
83
+ >
84
+ <X className="h-4 w-4" />
85
+ </ToastPrimitives.Close>
86
+ ))
87
+ ToastClose.displayName = ToastPrimitives.Close.displayName
88
+
89
+ const ToastTitle = React.forwardRef<
90
+ React.ElementRef<typeof ToastPrimitives.Title>,
91
+ React.ComponentPropsWithoutRef<typeof ToastPrimitives.Title>
92
+ >(({ className, ...props }, ref) => (
93
+ <ToastPrimitives.Title
94
+ ref={ref}
95
+ className={cn("text-sm font-semibold", className)}
96
+ {...props}
97
+ />
98
+ ))
99
+ ToastTitle.displayName = ToastPrimitives.Title.displayName
100
+
101
+ const ToastDescription = React.forwardRef<
102
+ React.ElementRef<typeof ToastPrimitives.Description>,
103
+ React.ComponentPropsWithoutRef<typeof ToastPrimitives.Description>
104
+ >(({ className, ...props }, ref) => (
105
+ <ToastPrimitives.Description
106
+ ref={ref}
107
+ className={cn("text-sm opacity-90", className)}
108
+ {...props}
109
+ />
110
+ ))
111
+ ToastDescription.displayName = ToastPrimitives.Description.displayName
112
+
113
+ type ToastProps = React.ComponentPropsWithoutRef<typeof Toast>
114
+
115
+ type ToastActionElement = React.ReactElement<typeof ToastAction>
116
+
117
+ export {
118
+ type ToastProps,
119
+ type ToastActionElement,
120
+ ToastProvider,
121
+ ToastViewport,
122
+ Toast,
123
+ ToastTitle,
124
+ ToastDescription,
125
+ ToastClose,
126
+ ToastAction,
127
+ }
@@ -1,35 +1,35 @@
1
- "use client"
2
-
3
- import {
4
- Toast,
5
- ToastClose,
6
- ToastDescription,
7
- ToastProvider,
8
- ToastTitle,
9
- ToastViewport,
10
- } from "@/components/ui/toast"
11
- import { useToast } from "@/components/ui/use-toast"
12
-
13
- export function Toaster() {
14
- const { toasts } = useToast()
15
-
16
- return (
17
- <ToastProvider>
18
- {toasts.map(function ({ id, title, description, action, ...props }) {
19
- return (
20
- <Toast key={id} {...props}>
21
- <div className="grid gap-1">
22
- {title && <ToastTitle>{title}</ToastTitle>}
23
- {description && (
24
- <ToastDescription>{description}</ToastDescription>
25
- )}
26
- </div>
27
- {action}
28
- <ToastClose />
29
- </Toast>
30
- )
31
- })}
32
- <ToastViewport />
33
- </ToastProvider>
34
- )
35
- }
1
+ "use client"
2
+
3
+ import {
4
+ Toast,
5
+ ToastClose,
6
+ ToastDescription,
7
+ ToastProvider,
8
+ ToastTitle,
9
+ ToastViewport,
10
+ } from "@/components/ui/toast"
11
+ import { useToast } from "@/components/ui/use-toast"
12
+
13
+ export function Toaster() {
14
+ const { toasts } = useToast()
15
+
16
+ return (
17
+ <ToastProvider>
18
+ {toasts.map(function ({ id, title, description, action, ...props }) {
19
+ return (
20
+ <Toast key={id} {...props}>
21
+ <div className="grid gap-1">
22
+ {title && <ToastTitle>{title}</ToastTitle>}
23
+ {description && (
24
+ <ToastDescription>{description}</ToastDescription>
25
+ )}
26
+ </div>
27
+ {action}
28
+ <ToastClose />
29
+ </Toast>
30
+ )
31
+ })}
32
+ <ToastViewport />
33
+ </ToastProvider>
34
+ )
35
+ }
@@ -1,45 +1,45 @@
1
- "use client"
2
-
3
- import * as React from "react"
4
- import * as TogglePrimitive from "@radix-ui/react-toggle"
5
- import { cva, type VariantProps } from "class-variance-authority"
6
-
7
- import { cn } from "@/lib/utils"
8
-
9
- const toggleVariants = cva(
10
- "inline-flex items-center justify-center rounded-md text-sm font-medium ring-offset-background transition-colors hover:bg-muted hover:text-muted-foreground 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=on]:bg-accent data-[state=on]:text-accent-foreground",
11
- {
12
- variants: {
13
- variant: {
14
- default: "bg-transparent",
15
- outline:
16
- "border border-input bg-transparent hover:bg-accent hover:text-accent-foreground",
17
- },
18
- size: {
19
- default: "h-10 px-3",
20
- sm: "h-9 px-2.5",
21
- lg: "h-11 px-5",
22
- },
23
- },
24
- defaultVariants: {
25
- variant: "default",
26
- size: "default",
27
- },
28
- }
29
- )
30
-
31
- const Toggle = React.forwardRef<
32
- React.ElementRef<typeof TogglePrimitive.Root>,
33
- React.ComponentPropsWithoutRef<typeof TogglePrimitive.Root> &
34
- VariantProps<typeof toggleVariants>
35
- >(({ className, variant, size, ...props }, ref) => (
36
- <TogglePrimitive.Root
37
- ref={ref}
38
- className={cn(toggleVariants({ variant, size, className }))}
39
- {...props}
40
- />
41
- ))
42
-
43
- Toggle.displayName = TogglePrimitive.Root.displayName
44
-
45
- export { Toggle, toggleVariants }
1
+ "use client"
2
+
3
+ import * as React from "react"
4
+ import * as TogglePrimitive from "@radix-ui/react-toggle"
5
+ import { cva, type VariantProps } from "class-variance-authority"
6
+
7
+ import { cn } from "@/lib/utils"
8
+
9
+ const toggleVariants = cva(
10
+ "inline-flex items-center justify-center rounded-md text-sm font-medium ring-offset-background transition-colors hover:bg-muted hover:text-muted-foreground 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=on]:bg-accent data-[state=on]:text-accent-foreground",
11
+ {
12
+ variants: {
13
+ variant: {
14
+ default: "bg-transparent",
15
+ outline:
16
+ "border border-input bg-transparent hover:bg-accent hover:text-accent-foreground",
17
+ },
18
+ size: {
19
+ default: "h-10 px-3",
20
+ sm: "h-9 px-2.5",
21
+ lg: "h-11 px-5",
22
+ },
23
+ },
24
+ defaultVariants: {
25
+ variant: "default",
26
+ size: "default",
27
+ },
28
+ }
29
+ )
30
+
31
+ const Toggle = React.forwardRef<
32
+ React.ElementRef<typeof TogglePrimitive.Root>,
33
+ React.ComponentPropsWithoutRef<typeof TogglePrimitive.Root> &
34
+ VariantProps<typeof toggleVariants>
35
+ >(({ className, variant, size, ...props }, ref) => (
36
+ <TogglePrimitive.Root
37
+ ref={ref}
38
+ className={cn(toggleVariants({ variant, size, className }))}
39
+ {...props}
40
+ />
41
+ ))
42
+
43
+ Toggle.displayName = TogglePrimitive.Root.displayName
44
+
45
+ export { Toggle, toggleVariants }
@@ -1,30 +1,30 @@
1
- "use client"
2
-
3
- import * as React from "react"
4
- import * as TooltipPrimitive from "@radix-ui/react-tooltip"
5
-
6
- import { cn } from "@/lib/utils"
7
-
8
- const TooltipProvider = TooltipPrimitive.Provider
9
-
10
- const Tooltip = TooltipPrimitive.Root
11
-
12
- const TooltipTrigger = TooltipPrimitive.Trigger
13
-
14
- const TooltipContent = React.forwardRef<
15
- React.ElementRef<typeof TooltipPrimitive.Content>,
16
- React.ComponentPropsWithoutRef<typeof TooltipPrimitive.Content>
17
- >(({ className, sideOffset = 4, ...props }, ref) => (
18
- <TooltipPrimitive.Content
19
- ref={ref}
20
- sideOffset={sideOffset}
21
- className={cn(
22
- "z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-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",
23
- className
24
- )}
25
- {...props}
26
- />
27
- ))
28
- TooltipContent.displayName = TooltipPrimitive.Content.displayName
29
-
30
- export { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider }
1
+ "use client"
2
+
3
+ import * as React from "react"
4
+ import * as TooltipPrimitive from "@radix-ui/react-tooltip"
5
+
6
+ import { cn } from "@/lib/utils"
7
+
8
+ const TooltipProvider = TooltipPrimitive.Provider
9
+
10
+ const Tooltip = TooltipPrimitive.Root
11
+
12
+ const TooltipTrigger = TooltipPrimitive.Trigger
13
+
14
+ const TooltipContent = React.forwardRef<
15
+ React.ElementRef<typeof TooltipPrimitive.Content>,
16
+ React.ComponentPropsWithoutRef<typeof TooltipPrimitive.Content>
17
+ >(({ className, sideOffset = 4, ...props }, ref) => (
18
+ <TooltipPrimitive.Content
19
+ ref={ref}
20
+ sideOffset={sideOffset}
21
+ className={cn(
22
+ "z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-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",
23
+ className
24
+ )}
25
+ {...props}
26
+ />
27
+ ))
28
+ TooltipContent.displayName = TooltipPrimitive.Content.displayName
29
+
30
+ export { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider }