mirror of
https://github.com/pacnpal/thrilltrack-explorer.git
synced 2025-12-22 13:31:22 -05:00
Refactor code structure and remove redundant changes
This commit is contained in:
115
src-old/components/ui/bottom-sheet.tsx
Normal file
115
src-old/components/ui/bottom-sheet.tsx
Normal file
@@ -0,0 +1,115 @@
|
||||
import * as React from "react"
|
||||
import { Drawer as DrawerPrimitive } from "vaul"
|
||||
import { cn } from "@/lib/utils"
|
||||
|
||||
const BottomSheet = ({
|
||||
shouldScaleBackground = true,
|
||||
...props
|
||||
}: React.ComponentProps<typeof DrawerPrimitive.Root>) => (
|
||||
<DrawerPrimitive.Root
|
||||
shouldScaleBackground={shouldScaleBackground}
|
||||
{...props}
|
||||
/>
|
||||
)
|
||||
BottomSheet.displayName = "BottomSheet"
|
||||
|
||||
const BottomSheetTrigger = DrawerPrimitive.Trigger
|
||||
|
||||
const BottomSheetPortal = DrawerPrimitive.Portal
|
||||
|
||||
const BottomSheetClose = DrawerPrimitive.Close
|
||||
|
||||
const BottomSheetOverlay = React.forwardRef<
|
||||
React.ElementRef<typeof DrawerPrimitive.Overlay>,
|
||||
React.ComponentPropsWithoutRef<typeof DrawerPrimitive.Overlay>
|
||||
>(({ className, ...props }, ref) => (
|
||||
<DrawerPrimitive.Overlay
|
||||
ref={ref}
|
||||
className={cn("fixed inset-0 z-50 bg-background/80 backdrop-blur-sm", className)}
|
||||
{...props}
|
||||
/>
|
||||
))
|
||||
BottomSheetOverlay.displayName = DrawerPrimitive.Overlay.displayName
|
||||
|
||||
const BottomSheetContent = React.forwardRef<
|
||||
React.ElementRef<typeof DrawerPrimitive.Content>,
|
||||
React.ComponentPropsWithoutRef<typeof DrawerPrimitive.Content>
|
||||
>(({ className, children, ...props }, ref) => (
|
||||
<BottomSheetPortal>
|
||||
<BottomSheetOverlay />
|
||||
<DrawerPrimitive.Content
|
||||
ref={ref}
|
||||
className={cn(
|
||||
"fixed inset-x-0 bottom-0 z-50 mt-24 flex h-auto flex-col rounded-t-[10px] border border-border bg-card",
|
||||
className
|
||||
)}
|
||||
{...props}
|
||||
>
|
||||
<div className="mx-auto mt-4 h-2 w-[100px] rounded-full bg-muted" />
|
||||
{children}
|
||||
</DrawerPrimitive.Content>
|
||||
</BottomSheetPortal>
|
||||
))
|
||||
BottomSheetContent.displayName = "BottomSheetContent"
|
||||
|
||||
const BottomSheetHeader = ({
|
||||
className,
|
||||
...props
|
||||
}: React.HTMLAttributes<HTMLDivElement>) => (
|
||||
<div
|
||||
className={cn("grid gap-1.5 p-4 text-center sm:text-left", className)}
|
||||
{...props}
|
||||
/>
|
||||
)
|
||||
BottomSheetHeader.displayName = "BottomSheetHeader"
|
||||
|
||||
const BottomSheetFooter = ({
|
||||
className,
|
||||
...props
|
||||
}: React.HTMLAttributes<HTMLDivElement>) => (
|
||||
<div
|
||||
className={cn("mt-auto flex flex-col gap-2 p-4", className)}
|
||||
{...props}
|
||||
/>
|
||||
)
|
||||
BottomSheetFooter.displayName = "BottomSheetFooter"
|
||||
|
||||
const BottomSheetTitle = React.forwardRef<
|
||||
React.ElementRef<typeof DrawerPrimitive.Title>,
|
||||
React.ComponentPropsWithoutRef<typeof DrawerPrimitive.Title>
|
||||
>(({ className, ...props }, ref) => (
|
||||
<DrawerPrimitive.Title
|
||||
ref={ref}
|
||||
className={cn(
|
||||
"text-lg font-semibold leading-none tracking-tight",
|
||||
className
|
||||
)}
|
||||
{...props}
|
||||
/>
|
||||
))
|
||||
BottomSheetTitle.displayName = DrawerPrimitive.Title.displayName
|
||||
|
||||
const BottomSheetDescription = React.forwardRef<
|
||||
React.ElementRef<typeof DrawerPrimitive.Description>,
|
||||
React.ComponentPropsWithoutRef<typeof DrawerPrimitive.Description>
|
||||
>(({ className, ...props }, ref) => (
|
||||
<DrawerPrimitive.Description
|
||||
ref={ref}
|
||||
className={cn("text-sm text-muted-foreground", className)}
|
||||
{...props}
|
||||
/>
|
||||
))
|
||||
BottomSheetDescription.displayName = DrawerPrimitive.Description.displayName
|
||||
|
||||
export {
|
||||
BottomSheet,
|
||||
BottomSheetPortal,
|
||||
BottomSheetOverlay,
|
||||
BottomSheetTrigger,
|
||||
BottomSheetClose,
|
||||
BottomSheetContent,
|
||||
BottomSheetHeader,
|
||||
BottomSheetFooter,
|
||||
BottomSheetTitle,
|
||||
BottomSheetDescription,
|
||||
}
|
||||
Reference in New Issue
Block a user