text.tsx 499 B

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