heading.tsx 660 B

123456789101112131415161718192021222324
  1. "use client";
  2. import type { ComponentRenderProps } from "./types";
  3. import { baseClass, getCustomClass } from "./utils";
  4. export function Heading({ element }: ComponentRenderProps) {
  5. const { props } = element;
  6. const customClass = getCustomClass(props);
  7. const level = (props.level as number) || 2;
  8. const headingClass =
  9. level === 1
  10. ? "text-lg font-bold"
  11. : level === 3
  12. ? "text-xs font-semibold"
  13. : level === 4
  14. ? "text-[10px] font-semibold"
  15. : "text-sm font-semibold";
  16. return (
  17. <div className={`${headingClass} text-left ${baseClass} ${customClass}`}>
  18. {props.text as string}
  19. </div>
  20. );
  21. }