Some checks failed
Pull Request Checks / Code Quality & Security (push) Has been cancelled
Security Audit / Security Vulnerability Audit (push) Has been cancelled
Security Audit / Dependency Review (push) Has been cancelled
Security Audit / CodeQL Security Analysis (push) Has been cancelled
Security Audit / Check Outdated Dependencies (push) Has been cancelled
Introduce a dual-layer component architecture: - `components/ui/` contains raw shadcn/ui primitives (button, badge, input, checkbox, label, skeleton, alert, toggle, toggle-group, input-otp) - `components/atoms/` wraps these primitives with enhanced APIs (loading states, semantic variants, polymorphic props) for backward compatibility Migrated atoms: badge, button, checkbox, input, label, skeleton, view-toggle, error-message, inline-toast, error-state. Legacy backups preserved as .legacy.tsx files for reference. Added barrel export for ui/ and updated components/index.ts. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
23 lines
540 B
TypeScript
23 lines
540 B
TypeScript
/**
|
|
* Skeleton — now powered by shadcn/ui
|
|
*
|
|
* Uses the standard shadcn animate-pulse pattern instead of the custom
|
|
* cp-skeleton-shimmer animation.
|
|
*/
|
|
|
|
import { cn } from "@/shared/utils";
|
|
|
|
interface SkeletonProps extends React.ComponentProps<"div"> {
|
|
animate?: boolean;
|
|
}
|
|
|
|
export function Skeleton({ className, animate = true, ...props }: SkeletonProps) {
|
|
return (
|
|
<div
|
|
data-slot="skeleton"
|
|
className={cn("rounded-md", animate ? "animate-pulse bg-accent" : "bg-muted", className)}
|
|
{...props}
|
|
/>
|
|
);
|
|
}
|