text.tsx 520 B

1234567891011121314151617181920
  1. "use client";
  2. import { type ComponentRenderProps } from "@json-render/react";
  3. export function Text({ element }: ComponentRenderProps) {
  4. const { content, variant } = element.props as {
  5. content: string;
  6. variant?: string | null;
  7. };
  8. const colors: Record<string, string> = {
  9. default: "var(--foreground)",
  10. muted: "var(--muted)",
  11. success: "#22c55e",
  12. warning: "#eab308",
  13. error: "#ef4444",
  14. };
  15. return (
  16. <p style={{ margin: 0, color: colors[variant || "default"] }}>{content}</p>
  17. );
  18. }