Openstatus
www.openstatus.dev
1"use client";
2
3import {
4 Sheet,
5 SheetContent,
6 SheetDescription,
7 SheetFooter,
8 SheetHeader,
9 SheetTitle,
10 SheetTrigger,
11} from "@/components/ui/sheet";
12import { cn } from "@/lib/utils";
13
14// TODO: rename to DataTableViewer?
15
16export function DataTableSheetContent({
17 children,
18 className,
19 ...props
20}: React.ComponentProps<typeof SheetContent>) {
21 return (
22 <SheetContent className={cn("max-h-screen gap-0", className)} {...props}>
23 {children}
24 </SheetContent>
25 );
26}
27
28export function DataTableSheetHeader({
29 children,
30 className,
31 ...props
32}: React.ComponentProps<typeof SheetHeader>) {
33 return (
34 <SheetHeader
35 className={cn("sticky top-0 border-b bg-background", className)}
36 {...props}
37 >
38 {children}
39 </SheetHeader>
40 );
41}
42
43export function DataTableSheetFooter({
44 children,
45 className,
46 ...props
47}: React.ComponentProps<typeof SheetFooter>) {
48 return (
49 <SheetFooter
50 className={cn("sticky bottom-0 border-t bg-background", className)}
51 {...props}
52 >
53 {children}
54 </SheetFooter>
55 );
56}
57
58export function DataTableSheetFooterInfo({
59 children,
60 className,
61 ...props
62}: React.ComponentProps<"p">) {
63 return (
64 <p className={cn("text-muted-foreground/70 text-xs", className)} {...props}>
65 {children}
66 </p>
67 );
68}
69
70export {
71 SheetTitle as DataTableSheetTitle,
72 SheetDescription as DataTableSheetDescription,
73 SheetTrigger as DataTableSheetTrigger,
74 Sheet as DataTableSheet,
75};