Break 838-line page.tsx into _types.ts, _data.ts (templates),
_components/{AddRequirementForm,RequirementCard,LoadingSkeleton}.tsx,
and _hooks/useRequirementsData.ts. page.tsx is now 246 LOC (wiring
only). No behavior changes.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
19 lines
585 B
TypeScript
19 lines
585 B
TypeScript
'use client'
|
|
|
|
export function LoadingSkeleton() {
|
|
return (
|
|
<div className="space-y-4">
|
|
{[1, 2, 3].map(i => (
|
|
<div key={i} className="bg-white rounded-xl border border-gray-200 p-6 animate-pulse">
|
|
<div className="flex items-center gap-2 mb-3">
|
|
<div className="h-5 w-20 bg-gray-200 rounded" />
|
|
<div className="h-5 w-16 bg-gray-200 rounded-full" />
|
|
</div>
|
|
<div className="h-6 w-3/4 bg-gray-200 rounded mb-2" />
|
|
<div className="h-4 w-full bg-gray-100 rounded" />
|
|
</div>
|
|
))}
|
|
</div>
|
|
)
|
|
}
|