Files
drive/apps/drive-web/src/directories/directory-page/skeleton-demo.tsx

47 lines
1.3 KiB
TypeScript
Raw Normal View History

import { useState } from "react"
import { Button } from "@/components/ui/button"
import { DirectoryContentTableSkeleton } from "./directory-content-table-skeleton"
import { DirectoryPageSkeleton } from "./directory-page-skeleton"
export function SkeletonDemo() {
const [showPageSkeleton, setShowPageSkeleton] = useState(false)
const [showTableSkeleton, setShowTableSkeleton] = useState(false)
return (
<div className="p-4 space-y-4">
<div className="flex gap-2">
2025-10-03 20:40:23 +00:00
<Button
onClick={() => setShowPageSkeleton(!showPageSkeleton)}
variant={showPageSkeleton ? "default" : "outline"}
>
{showPageSkeleton ? "Hide" : "Show"} Page Skeleton
</Button>
2025-10-03 20:40:23 +00:00
<Button
onClick={() => setShowTableSkeleton(!showTableSkeleton)}
variant={showTableSkeleton ? "default" : "outline"}
>
{showTableSkeleton ? "Hide" : "Show"} Table Skeleton
</Button>
</div>
2025-10-03 20:40:23 +00:00
{showPageSkeleton && (
<div className="border rounded-lg p-4">
2025-10-03 20:40:23 +00:00
<h3 className="text-lg font-semibold mb-4">
Directory Page Skeleton
</h3>
<DirectoryPageSkeleton />
</div>
)}
2025-10-03 20:40:23 +00:00
{showTableSkeleton && (
<div className="border rounded-lg p-4">
2025-10-03 20:40:23 +00:00
<h3 className="text-lg font-semibold mb-4">
Directory Content Table Skeleton
</h3>
<DirectoryContentTableSkeleton rows={5} />
</div>
)}
</div>
)
2025-10-03 20:40:23 +00:00
}