Spaces:
Sleeping
Sleeping
fix: upload actual loading.tsx content
Browse files
web/app/dashboard-pages/analyze/loading.tsx
CHANGED
|
@@ -1 +1,50 @@
|
|
| 1 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/**
|
| 2 |
+
* ClauseGuard — Loading skeleton for Analyze page
|
| 3 |
+
* FIX v4.1: Added loading.tsx for instant navigation feedback
|
| 4 |
+
* Next.js App Router automatically shows this while the page component loads
|
| 5 |
+
*/
|
| 6 |
+
|
| 7 |
+
import { ScanText } from "lucide-react";
|
| 8 |
+
|
| 9 |
+
export default function AnalyzeLoading() {
|
| 10 |
+
return (
|
| 11 |
+
<div className="min-h-screen bg-zinc-50/30">
|
| 12 |
+
<div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-6 sm:py-10">
|
| 13 |
+
{/* Header skeleton */}
|
| 14 |
+
<div className="mb-6 sm:mb-8">
|
| 15 |
+
<h1 className="text-xl sm:text-2xl font-semibold tracking-tight flex items-center gap-2">
|
| 16 |
+
<ScanText className="w-5 h-5 sm:w-6 sm:h-6 text-zinc-400" />
|
| 17 |
+
Scan a document
|
| 18 |
+
</h1>
|
| 19 |
+
<div className="mt-2 h-4 w-96 bg-zinc-200 rounded animate-pulse" />
|
| 20 |
+
</div>
|
| 21 |
+
|
| 22 |
+
<div className="grid lg:grid-cols-5 gap-4 sm:gap-6">
|
| 23 |
+
{/* Input panel skeleton */}
|
| 24 |
+
<div className="lg:col-span-2">
|
| 25 |
+
<div className="bg-white border border-zinc-200 rounded-xl p-3 sm:p-4">
|
| 26 |
+
<div className="w-full h-[260px] sm:h-[360px] bg-zinc-100 rounded-lg animate-pulse" />
|
| 27 |
+
<div className="mt-3 flex gap-2">
|
| 28 |
+
<div className="flex-1 h-10 bg-zinc-900/10 rounded-lg animate-pulse" />
|
| 29 |
+
<div className="w-20 h-10 bg-zinc-100 rounded-lg animate-pulse" />
|
| 30 |
+
<div className="w-10 h-10 bg-zinc-100 rounded-lg animate-pulse" />
|
| 31 |
+
</div>
|
| 32 |
+
</div>
|
| 33 |
+
</div>
|
| 34 |
+
|
| 35 |
+
{/* Results panel skeleton */}
|
| 36 |
+
<div className="lg:col-span-3">
|
| 37 |
+
<div className="bg-white border border-zinc-200 rounded-xl p-4 sm:p-5">
|
| 38 |
+
<div className="flex items-center justify-center h-48 text-zinc-300">
|
| 39 |
+
<div className="text-center">
|
| 40 |
+
<ScanText className="w-10 h-10 mx-auto mb-3 text-zinc-200" />
|
| 41 |
+
<div className="h-4 w-48 bg-zinc-100 rounded mx-auto animate-pulse" />
|
| 42 |
+
</div>
|
| 43 |
+
</div>
|
| 44 |
+
</div>
|
| 45 |
+
</div>
|
| 46 |
+
</div>
|
| 47 |
+
</div>
|
| 48 |
+
</div>
|
| 49 |
+
);
|
| 50 |
+
}
|