libreria-astro-lefebvre
Version:
Librería de componentes Astro, React y Vue para Lefebvre
100 lines (98 loc) • 4.38 kB
text/typescript
import type { ComponentMetadata } from '../interfaces/types';
export const metadata: ComponentMetadata = {
component_name: 'Share_2025_Florencia',
category: 'Imagen',
name: 'Botones para compartir contenido GenIA-L 2025',
description: 'Botones de compartir que generan automáticamente las URLs de intent de cada red social (Facebook sharer, LinkedIn share, X/Twitter tweet, WhatsApp send, mailto). Incluye además imprimir y copiar al portapapeles. Cada botón se activa/desactiva con un boolean. Para el directorio de GenIA-L en la corporativa de Lefebvre',
framework: 'Astro',
priority: 1,
tags: ['share', 'compartir', 'rrss', 'genial'],
fields: [
{
name: 'url',
type: 'text',
help: 'URL del contenido a compartir. Se codifica (encodeURIComponent) y se inyecta en los parámetros de compartir de cada red social',
label: 'URL del contenido',
mandatory: false,
example_value: 'https://lefebvre.es/genia-l/blog/articulo-ejemplo'
},
{
name: 'title',
type: 'text',
help: 'Título del contenido a compartir. Se usa en Twitter/X (texto del tweet), WhatsApp (texto del mensaje) y Email (asunto). Facebook y LinkedIn no lo usan porque extraen el título de la meta og:title',
label: 'Texto del título',
mandatory: false,
example_value: 'La inteligencia artificial en el sector legal'
},
{
name: 'facebook',
type: 'boolean',
help: 'Si está activado, muestra el botón de compartir en Facebook (abre el sharer oficial con la URL). Si está desactivado, NO aparece el botón',
label: 'Mostrar botón Facebook',
mandatory: false,
options: ['false', 'true'],
options_labels: ['Falso', 'Verdadero'],
example_value: true
},
{
name: 'linkedin',
type: 'boolean',
help: 'Si está activado, muestra el botón de compartir en LinkedIn (abre el share-offsite con la URL). Si está desactivado, NO aparece el botón',
label: 'Mostrar botón LinkedIn',
mandatory: false,
options: ['false', 'true'],
options_labels: ['Falso', 'Verdadero'],
example_value: true
},
{
name: 'twitter',
type: 'boolean',
help: 'Si está activado, muestra el botón de compartir en X (abre el intent/tweet con URL y título precargados). Si está desactivado, NO aparece el botón',
label: 'Mostrar botón X (Twitter)',
mandatory: false,
options: ['false', 'true'],
options_labels: ['Falso', 'Verdadero'],
example_value: true
},
{
name: 'whatsapp',
type: 'boolean',
help: 'Si está activado, muestra el botón de compartir por WhatsApp (abre api.whatsapp.com/send con título + URL en el mensaje). Si está desactivado, NO aparece el botón',
label: 'Mostrar botón WhatsApp',
mandatory: false,
options: ['false', 'true'],
options_labels: ['Falso', 'Verdadero'],
example_value: true
},
{
name: 'email',
type: 'boolean',
help: 'Si está activado, muestra el botón de compartir por Email (abre el cliente de correo con asunto=título y cuerpo=URL). Si está desactivado, NO aparece el botón',
label: 'Mostrar botón Email',
mandatory: false,
options: ['false', 'true'],
options_labels: ['Falso', 'Verdadero'],
example_value: true
},
{
name: 'print',
type: 'boolean',
help: 'Si está activado, muestra un botón con icono de imprimir que ejecuta window.print() en la página actual. Si está desactivado, el botón NO aparece',
label: 'Mostrar botón imprimir',
mandatory: false,
options: ['false', 'true'],
options_labels: ['Falso', 'Verdadero'],
example_value: false
},
{
name: 'copyLink',
type: 'boolean',
help: 'Si está activado, muestra un botón con icono de copiar enlace que copia la URL definida en "URL del contenido" al portapapeles (con tooltip de confirmación "Enlace copiado"). Si está desactivado, el botón NO aparece',
label: 'Mostrar botón copiar enlace',
mandatory: false,
options: ['false', 'true'],
options_labels: ['Falso', 'Verdadero'],
example_value: false
},
]
};