summaryrefslogtreecommitdiff
path: root/driver/src/components/ui/avatar.tsx
diff options
context:
space:
mode:
authoromagdy7 <omar.professional8777@gmail.com>2023-12-22 18:59:16 +0200
committeromagdy7 <omar.professional8777@gmail.com>2023-12-22 18:59:16 +0200
commite97dbb11b30d0fe51b2ca1660e9f0d27a99a73e3 (patch)
treee99961a2ff29d7e8522697f67c9276713c657569 /driver/src/components/ui/avatar.tsx
parent7b379914e44583b9b097ed286b669ad244b176a1 (diff)
downloadcarpool-e97dbb11b30d0fe51b2ca1660e9f0d27a99a73e3.tar.xz
carpool-e97dbb11b30d0fe51b2ca1660e9f0d27a99a73e3.zip
Added most of the logic on the driver side
Diffstat (limited to 'driver/src/components/ui/avatar.tsx')
-rw-r--r--driver/src/components/ui/avatar.tsx48
1 files changed, 48 insertions, 0 deletions
diff --git a/driver/src/components/ui/avatar.tsx b/driver/src/components/ui/avatar.tsx
new file mode 100644
index 0000000..991f56e
--- /dev/null
+++ b/driver/src/components/ui/avatar.tsx
@@ -0,0 +1,48 @@
+import * as React from "react"
+import * as AvatarPrimitive from "@radix-ui/react-avatar"
+
+import { cn } from "@/lib/utils"
+
+const Avatar = React.forwardRef<
+ React.ElementRef<typeof AvatarPrimitive.Root>,
+ React.ComponentPropsWithoutRef<typeof AvatarPrimitive.Root>
+>(({ className, ...props }, ref) => (
+ <AvatarPrimitive.Root
+ ref={ref}
+ className={cn(
+ "relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full",
+ className
+ )}
+ {...props}
+ />
+))
+Avatar.displayName = AvatarPrimitive.Root.displayName
+
+const AvatarImage = React.forwardRef<
+ React.ElementRef<typeof AvatarPrimitive.Image>,
+ React.ComponentPropsWithoutRef<typeof AvatarPrimitive.Image>
+>(({ className, ...props }, ref) => (
+ <AvatarPrimitive.Image
+ ref={ref}
+ className={cn("aspect-square h-full w-full", className)}
+ {...props}
+ />
+))
+AvatarImage.displayName = AvatarPrimitive.Image.displayName
+
+const AvatarFallback = React.forwardRef<
+ React.ElementRef<typeof AvatarPrimitive.Fallback>,
+ React.ComponentPropsWithoutRef<typeof AvatarPrimitive.Fallback>
+>(({ className, ...props }, ref) => (
+ <AvatarPrimitive.Fallback
+ ref={ref}
+ className={cn(
+ "flex h-full w-full items-center justify-center rounded-full bg-muted",
+ className
+ )}
+ {...props}
+ />
+))
+AvatarFallback.displayName = AvatarPrimitive.Fallback.displayName
+
+export { Avatar, AvatarImage, AvatarFallback }