diff --git a/apps/admin/package.json b/apps/admin/package.json index 0453afa9..e4279f15 100644 --- a/apps/admin/package.json +++ b/apps/admin/package.json @@ -17,23 +17,18 @@ "check": "biome check" }, "dependencies": { - "@radix-ui/react-label": "^2.1.2", - "@radix-ui/react-slot": "^1.2.4", - "@radix-ui/react-tabs": "^1.1.13", "@solid-connect/api-schema": "workspace:^", + "@solid-connect/ui": "workspace:^", "@stomp/stompjs": "^7.1.1", "@tailwindcss/vite": "^4.0.6", "@tanstack/react-query": "^5.84.1", "axios": "^1.6.7", - "class-variance-authority": "^0.7.1", - "clsx": "^2.1.1", "date-fns": "^4.1.0", "lucide-react": "^0.561.0", "react": "^19.2.6", "react-dom": "^19.2.6", "sockjs-client": "^1.6.1", "sonner": "^2.0.7", - "tailwind-merge": "^3.0.2", "tailwindcss": "^4.0.6" }, "devDependencies": { diff --git a/apps/admin/src/components/ui/button.tsx b/apps/admin/src/components/ui/button.tsx index bf9301ee..28df80f4 100644 --- a/apps/admin/src/components/ui/button.tsx +++ b/apps/admin/src/components/ui/button.tsx @@ -1,47 +1,2 @@ -import { Slot } from "@radix-ui/react-slot"; -import { cva, type VariantProps } from "class-variance-authority"; -import * as React from "react"; - -import { cn } from "@/lib/utils"; - -const buttonVariants = cva( - "inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md typo-sb-11 transition-colors focus-visible:outline-none disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0", - { - variants: { - variant: { - default: "bg-primary text-k-0 shadow-sm hover:bg-primary-600", - destructive: "bg-[#E22A2D] text-k-0 shadow-sm hover:bg-[#BA1E21]", - outline: "border border-k-200 bg-k-0 text-k-700 shadow-sm hover:bg-k-50", - secondary: "bg-k-50 text-k-700 shadow-sm hover:bg-k-100", - ghost: "text-k-600 hover:bg-k-50 hover:text-k-800", - link: "text-primary underline-offset-4 hover:underline", - }, - size: { - default: "h-9 px-4 py-2", - sm: "h-8 rounded-md px-3 text-xs", - lg: "h-10 rounded-md px-8", - icon: "h-9 w-9", - }, - }, - defaultVariants: { - variant: "default", - size: "default", - }, - }, -); - -export interface ButtonProps - extends React.ButtonHTMLAttributes, - VariantProps { - asChild?: boolean; -} - -const Button = React.forwardRef( - ({ className, variant, size, asChild = false, ...props }, ref) => { - const Comp = asChild ? Slot : "button"; - return ; - }, -); -Button.displayName = "Button"; - -export { Button, buttonVariants }; +export type { ButtonProps } from "@solid-connect/ui/button"; +export { Button, buttonVariants } from "@solid-connect/ui/button"; diff --git a/apps/admin/src/components/ui/card.tsx b/apps/admin/src/components/ui/card.tsx index 90091311..33127960 100644 --- a/apps/admin/src/components/ui/card.tsx +++ b/apps/admin/src/components/ui/card.tsx @@ -1,41 +1 @@ -import * as React from "react"; - -import { cn } from "@/lib/utils"; - -const Card = React.forwardRef>(({ className, ...props }, ref) => ( -
-)); -Card.displayName = "Card"; - -const CardHeader = React.forwardRef>( - ({ className, ...props }, ref) => ( -
- ), -); -CardHeader.displayName = "CardHeader"; - -const CardTitle = React.forwardRef>( - ({ className, ...props }, ref) => ( -
- ), -); -CardTitle.displayName = "CardTitle"; - -const CardDescription = React.forwardRef>( - ({ className, ...props }, ref) =>
, -); -CardDescription.displayName = "CardDescription"; - -const CardContent = React.forwardRef>( - ({ className, ...props }, ref) =>
, -); -CardContent.displayName = "CardContent"; - -const CardFooter = React.forwardRef>( - ({ className, ...props }, ref) => ( -
- ), -); -CardFooter.displayName = "CardFooter"; - -export { Card, CardHeader, CardFooter, CardTitle, CardDescription, CardContent }; +export { Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle } from "@solid-connect/ui/card"; diff --git a/apps/admin/src/components/ui/input.tsx b/apps/admin/src/components/ui/input.tsx index 2cc968f4..fe0a3676 100644 --- a/apps/admin/src/components/ui/input.tsx +++ b/apps/admin/src/components/ui/input.tsx @@ -1,22 +1 @@ -import * as React from "react"; - -import { cn } from "@/lib/utils"; - -const Input = React.forwardRef>( - ({ className, type, ...props }, ref) => { - return ( - - ); - }, -); -Input.displayName = "Input"; - -export { Input }; +export { Input } from "@solid-connect/ui/input"; diff --git a/apps/admin/src/components/ui/label.tsx b/apps/admin/src/components/ui/label.tsx index 17727c08..33279401 100644 --- a/apps/admin/src/components/ui/label.tsx +++ b/apps/admin/src/components/ui/label.tsx @@ -1,17 +1 @@ -import * as LabelPrimitive from "@radix-ui/react-label"; -import { cva, type VariantProps } from "class-variance-authority"; -import * as React from "react"; - -import { cn } from "@/lib/utils"; - -const labelVariants = cva("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"); - -const Label = React.forwardRef< - React.ComponentRef, - React.ComponentPropsWithoutRef & VariantProps ->(({ className, ...props }, ref) => ( - -)); -Label.displayName = LabelPrimitive.Root.displayName; - -export { Label }; +export { Label } from "@solid-connect/ui/label"; diff --git a/apps/admin/src/components/ui/table.tsx b/apps/admin/src/components/ui/table.tsx index d8768222..fdf4a193 100644 --- a/apps/admin/src/components/ui/table.tsx +++ b/apps/admin/src/components/ui/table.tsx @@ -1,81 +1,10 @@ -import * as React from "react"; - -import { cn } from "@/lib/utils"; - -const Table = React.forwardRef>( - ({ className, ...props }, ref) => ( -
- - - ), -); -Table.displayName = "Table"; - -const TableHeader = React.forwardRef>( - ({ className, ...props }, ref) => ( - - ), -); -TableHeader.displayName = "TableHeader"; - -const TableBody = React.forwardRef>( - ({ className, ...props }, ref) => ( - - ), -); -TableBody.displayName = "TableBody"; - -const TableFooter = React.forwardRef>( - ({ className, ...props }, ref) => ( - tr]:last:border-b-0", className)} {...props} /> - ), -); -TableFooter.displayName = "TableFooter"; - -const TableRow = React.forwardRef>( - ({ className, ...props }, ref) => ( - - ), -); -TableRow.displayName = "TableRow"; - -const TableHead = React.forwardRef>( - ({ className, ...props }, ref) => ( -
[role=checkbox]]:translate-y-[2px]", - className, - )} - {...props} - /> - ), -); -TableHead.displayName = "TableHead"; - -const TableCell = React.forwardRef>( - ({ className, ...props }, ref) => ( - [role=checkbox]]:translate-y-[2px]", - className, - )} - {...props} - /> - ), -); -TableCell.displayName = "TableCell"; - -const TableCaption = React.forwardRef>( - ({ className, ...props }, ref) => ( -
- ), -); -TableCaption.displayName = "TableCaption"; - -export { Table, TableHeader, TableBody, TableFooter, TableHead, TableRow, TableCell, TableCaption }; +export { + Table, + TableBody, + TableCaption, + TableCell, + TableFooter, + TableHead, + TableHeader, + TableRow, +} from "@solid-connect/ui/table"; diff --git a/apps/admin/src/components/ui/tabs.tsx b/apps/admin/src/components/ui/tabs.tsx index 06516a17..45d57357 100644 --- a/apps/admin/src/components/ui/tabs.tsx +++ b/apps/admin/src/components/ui/tabs.tsx @@ -1,43 +1 @@ -import * as TabsPrimitive from "@radix-ui/react-tabs"; -import * as React from "react"; - -import { cn } from "@/lib/utils"; - -const Tabs = TabsPrimitive.Root; - -const TabsList = React.forwardRef< - React.ComponentRef, - React.ComponentPropsWithoutRef ->(({ className, ...props }, ref) => ( - -)); -TabsList.displayName = TabsPrimitive.List.displayName; - -const TabsTrigger = React.forwardRef< - React.ComponentRef, - React.ComponentPropsWithoutRef ->(({ className, ...props }, ref) => ( - -)); -TabsTrigger.displayName = TabsPrimitive.Trigger.displayName; - -const TabsContent = React.forwardRef< - React.ComponentRef, - React.ComponentPropsWithoutRef ->(({ className, ...props }, ref) => ( - -)); -TabsContent.displayName = TabsPrimitive.Content.displayName; - -export { Tabs, TabsList, TabsTrigger, TabsContent }; +export { Tabs, TabsContent, TabsList, TabsTrigger } from "@solid-connect/ui/tabs"; diff --git a/apps/admin/src/components/ui/textarea.tsx b/apps/admin/src/components/ui/textarea.tsx index eff6ca3f..1d8aa20a 100644 --- a/apps/admin/src/components/ui/textarea.tsx +++ b/apps/admin/src/components/ui/textarea.tsx @@ -1,21 +1 @@ -import * as React from "react"; - -import { cn } from "@/lib/utils"; - -const Textarea = React.forwardRef>( - ({ className, ...props }, ref) => { - return ( -