← back to Open Seo
src/client/features/ai-search/components/PromptExplorerLoadingState.tsx
33 lines
type Props = {
modelCount: number;
};
export function PromptExplorerLoadingState({ modelCount }: Props) {
const count = Math.max(1, modelCount);
return (
<div className="space-y-5" aria-busy>
{Array.from({ length: count }).map((_, index) => (
<article
key={index}
className="overflow-hidden rounded-r-lg border border-base-300 border-l-4 border-l-base-300 bg-base-100"
>
<header className="flex items-center justify-between border-b border-base-200 bg-base-200/40 px-5 py-3">
<div className="flex items-center gap-2">
<div className="skeleton size-2 rounded-full" />
<div className="skeleton h-4 w-20" />
<div className="skeleton h-3 w-32" />
</div>
<div className="skeleton h-3 w-16" />
</header>
<div className="space-y-2 px-5 py-5">
<div className="skeleton h-3 w-full" />
<div className="skeleton h-3 w-11/12" />
<div className="skeleton h-3 w-10/12" />
<div className="skeleton h-3 w-9/12" />
</div>
</article>
))}
</div>
);
}