64 lines
1.2 KiB
TypeScript
64 lines
1.2 KiB
TypeScript
interface TextProps {
|
|
className?: string;
|
|
children: React.ReactNode;
|
|
border?: boolean;
|
|
}
|
|
|
|
const borderClass = "pb-4 border-b border-utils-divider border-opacity-50";
|
|
|
|
export function Heading1(props: TextProps) {
|
|
return (
|
|
<h1
|
|
className={[
|
|
"text-5xl font-bold text-white mb-9",
|
|
props.border ? borderClass : null,
|
|
props.className ?? "",
|
|
].join(" ")}
|
|
>
|
|
{props.children}
|
|
</h1>
|
|
);
|
|
}
|
|
|
|
export function Heading2(props: TextProps) {
|
|
return (
|
|
<h2
|
|
className={[
|
|
"text-3xl font-bold text-white mt-20 mb-9",
|
|
props.border ? borderClass : null,
|
|
props.className ?? "",
|
|
].join(" ")}
|
|
>
|
|
{props.children}
|
|
</h2>
|
|
);
|
|
}
|
|
|
|
export function Heading3(props: TextProps) {
|
|
return (
|
|
<h2
|
|
className={[
|
|
"text-xl font-bold text-white mb-3",
|
|
props.border ? borderClass : null,
|
|
props.className ?? "",
|
|
].join(" ")}
|
|
>
|
|
{props.children}
|
|
</h2>
|
|
);
|
|
}
|
|
|
|
export function Paragraph(props: TextProps) {
|
|
return (
|
|
<p
|
|
className={[
|
|
"text-type-text my-9 font-medium",
|
|
props.border ? borderClass : null,
|
|
props.className ?? "",
|
|
].join(" ")}
|
|
>
|
|
{props.children}
|
|
</p>
|
|
);
|
|
}
|