import type { ComponentMetadata } from '../interfaces/types';

export const metadata: ComponentMetadata = {
  component_name: 'Formulario_2025_Teruel',
  category: 'Formulario',
  name: 'Tarjeta horizontal con imagen, dos botones y popup con formulario LF2 2025',
  description: 'Tarjeta horizontal con imagen + texto + dos botones (uno que navega a un enlace externo, otro que abre un popup). El popup contiene título h2, imagen lateral, descripción HTML y formulario LF2 inyectado dinámicamente. Incluye toggle de borde inferior separador (útil cuando se usan varias tarjetas seguidas — p. ej. dentro de Contenido_2026_Michigan)',
  framework: 'Astro',
  priority: 1,
  tags: ['contenido', 'card', 'imagen', 'popup', 'formulario', 'lf2', 'modal', 'cta'],
   fields: [
    {
      name: 'orientation',
      type: 'select',
      help: 'Posición de la imagen respecto al texto. "Izquierda" coloca la imagen a la izquierda y el texto a la derecha (flex-row). "Derecha" invierte el orden (flex-row-reverse)',
      label: 'Orientación del contenido',
      options: ['left', 'right'],
      options_labels: ['Izquierda', 'Derecha'],
      mandatory: false,
      example_value: 'left',
    },
    {
      name: 'bottomBorder',
      type: 'boolean',
      help: 'Activa/desactiva el borde inferior separador. Útil cuando se usan varias tarjetas seguidas (p. ej. dentro de Contenido_2026_Michigan) para poner borde en todas excepto la última',
      label: 'Mostrar borde inferior',
      mandatory: false,
      options: ['false', 'true'],
      options_labels: ['Falso', 'Verdadero'],
      example_value: true
    },
    {
      name: 'title',
      type: 'text',
      help: 'Título de la tarjeta (h2). Se renderiza siempre; si se deja vacío aparece el h2 vacío. No admite HTML. También se usa como alt de la imagen principal',
      label: 'Texto del título',
      mandatory: false,
      example_value: 'Automatización de contratos con IA'
    },
    {
      name: 'description',
      type: 'text',
      help: 'Descripción de la tarjeta. Admite HTML (útil para listas, negritas, etc.). Se renderiza siempre',
      label: 'Texto de la descripción',
      mandatory: false,
      example_value: 'Redacta borradores de contratos en segundos a partir de plantillas personalizables, con revisión automática de cláusulas'
    },
    {
      name: 'imageSrc',
      type: 'image',
      help: 'URL de la imagen principal de la tarjeta (lateral al texto)',
      label: 'Src de la imagen',
      mandatory: false,
      example_value: 'https://assets.lefebvre.es/media/img/preview-comp/comp-16-9.png'
    },
    {
      name: 'showBtn',
      type: 'boolean',
      help: 'Activa/desactiva el botón primario (enlace externo). Recuerda: también requiere "Url del enlace" relleno; si está vacío el botón no aparece',
      label: 'Mostrar botón',
      mandatory: false,
      options: ['false', 'true'],
      options_labels: ['Falso', 'Verdadero'],
      example_value: false
    },
    {
      name: 'txtBtn',
      type: 'text',
      help: 'Texto del botón primario (enlace). Solo se muestra si "Mostrar botón" está activado Y "Url del enlace" tiene valor',
      label: 'Texto del botón',
      mandatory: false,
      example_value: 'Saber más'
    },
    {
      name: 'linkBtn',
      type: 'text',
      help: 'URL de destino del botón primario (se abre en la misma pestaña). Si se deja vacío, el botón NO aparece aunque "Mostrar botón" esté activado',
      label: 'Url del enlace',
      mandatory: false,
      example_value: '/genia-l/automatizacion-contratos'
    },
    {
      name: 'showBtnModal',
      type: 'boolean',
      help: 'Activa/desactiva el botón que abre el popup con el formulario LF2. Si está activado, al hacer click se abre un modal con título, imagen, descripción y formulario LF2 inyectado dinámicamente',
      label: 'Mostrar botón modal',
      mandatory: false,
      options: ['false', 'true'],
      options_labels: ['Falso', 'Verdadero'],
      example_value: true
    },
    {
      name: 'txtBtnModal',
      type: 'text',
      help: 'Texto del botón que abre el popup. Solo se muestra si "Mostrar botón modal" está activado',
      label: 'Texto del botón modal',
      mandatory: false,
      example_value: 'Descargar guía en PDF'
    },
    {
      name: 'titleModal',
      type: 'text',
      help: 'Título (h2) que aparece dentro del popup, junto al formulario LF2',
      label: 'Texto del título modal',
      mandatory: false,
      example_value: 'Descarga la guía de automatización jurídica'
    },
    {
      name: 'subtitleModal',
      type: 'text',
      help: 'Subtítulo del modal. AVISO: este campo está DECLARADO en el carbin pero en el .astro está comentado (L76), por lo que NO se renderiza actualmente. Déjalo vacío o usa "Descripción del modal"',
      label: 'Texto del subtítulo modal (no se usa)',
      mandatory: false,
      example_value: ''
    },
    {
      name: 'descriptionModal',
      type: 'text',
      help: 'Descripción que aparece dentro del popup, antes del formulario LF2. Admite HTML',
      label: 'Texto de la descripción modal',
      mandatory: false,
      example_value: 'Déjanos tus datos y te enviaremos el whitepaper de 40 páginas con los casos de uso más relevantes'
    },
    {
      name: 'imageModal',
      type: 'image',
      help: 'Imagen que aparece en la columna izquierda del popup (la portada de la guía, por ejemplo)',
      label: 'Src de la imagen modal',
      mandatory: false,
      example_value: 'https://assets.lefebvre.es/media/img/preview-comp/comp-16-9.png'
    },
    {
      name: 'altModal',
      type: 'text',
      help: 'Texto alternativo de la imagen del popup para accesibilidad',
      label: 'Alt de la imagen modal',
      mandatory: false,
      example_value: 'Portada de la guía de automatización jurídica'
    },
    {
      name: 'lf2FormTitle',
      type: 'text',
      help: 'Nombre EXACTO del formulario tal como está dado de alta en LF2. Se pasa a apiManager.pintarFormularioAutogestionado() para cargar el formulario correcto dentro del popup. Si es erróneo, el formulario no se renderizará',
      label: 'Nombre del formulario en LF2',
      mandatory: false,
      example_value: ''
    }
   ]
};
