feat(admin-ui): shadcn primitives + @/ui barrel (Stage 2.1)

This commit is contained in:
Александр Зимин
2026-05-10 21:47:24 +00:00
parent c11a70128c
commit 5d12c89c4f
36 changed files with 2826 additions and 28 deletions
@@ -0,0 +1,27 @@
import { Loader2 } from 'lucide-react'
import { cn } from '@/lib/utils'
/**
* LoadingBlock — central spinner с подписью. Заменяет {@code @nstart/ui}
* LoadingBlock. Для inline placeholder используйте Skeleton.
*/
export type LoadingBlockProps = React.HTMLAttributes<HTMLDivElement> & {
label?: React.ReactNode
}
export function LoadingBlock({ className, label, ...props }: LoadingBlockProps) {
return (
<div
role="status"
aria-busy="true"
className={cn(
'flex flex-col items-center justify-center gap-2 py-12 text-mute',
className,
)}
{...props}
>
<Loader2 className="size-5 animate-spin text-accent" />
{label && <span className="text-sm">{label}</span>}
</div>
)
}