Files
pihkaal-me/src/components/Text.tsx
2024-01-25 20:38:42 +01:00

24 lines
549 B
TypeScript

import config from "~/../tailwind.config";
const THEME = config.theme.extend.colors;
type TerminalColor = keyof {
[K in keyof typeof THEME]: K extends `color${number}` ? K : never;
};
export const Text = (props: {
children: string | Array<string>;
bold?: boolean;
fg?: TerminalColor;
bg?: TerminalColor;
}) => (
<span
style={{
fontWeight: props.bold ? "bold" : "normal",
color: THEME[props.fg ?? "color7"],
backgroundColor: props.bg ? THEME[props.bg] : "transparent",
}}
>
{props.children}
</span>
);