Files
wehub-resource-sync 221778fa98
rowboat / apps/x Vitest suites (push) Has been cancelled
rowboat / apps/x Electron package smoke test (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 13:33:34 +08:00

32 lines
826 B
TypeScript

import clsx from 'clsx';
import { tokens } from "@/app/styles/design-tokens";
interface SectionHeadingProps {
children: React.ReactNode;
subheading?: React.ReactNode;
}
export function SectionHeading({ children, subheading }: SectionHeadingProps) {
return (
<div className="space-y-1">
<div className={clsx(
tokens.typography.weights.medium,
tokens.typography.sizes.lg,
tokens.colors.light.text.primary,
tokens.colors.dark.text.primary
)}>
{children}
</div>
{subheading && (
<p className={clsx(
tokens.typography.sizes.sm,
tokens.typography.weights.normal,
tokens.colors.light.text.secondary,
tokens.colors.dark.text.secondary
)}>
{subheading}
</p>
)}
</div>
);
}