libreria-astro-lefebvre 0.1.113 → 0.1.115

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "libreria-astro-lefebvre",
3
- "version": "0.1.113",
3
+ "version": "0.1.115",
4
4
  "description": "Librería de componentes Astro, React y Vue para Lefebvre",
5
5
  "author": "Equipo web desarrollo Lefebvre",
6
6
  "type": "module",
@@ -0,0 +1,55 @@
1
+ import type { ComponentMetadata } from '../interfaces/types';
2
+
3
+ export const metadata: ComponentMetadata = {
4
+ component_name: 'FAQ_2026_Takayama',
5
+ category: 'Contenido con listas',
6
+ name: 'Acordeón de tarjetas blancas con título Poppins 24px, chevron y listas a 3 columnas con check 2026',
7
+ description: 'Acordeón según diseño de Figma (Apuntes y Consejos): etiqueta pequeña opcional sobre fondo azul muy claro y, debajo, una tarjeta blanca por ítem (esquinas 16px, sombra suave, padding 24px) con título Poppins 24px semibold y chevron a la derecha que gira al abrir. Comportamiento exclusivo: al abrir una pregunta se cierran las demás; un segundo click la cierra. Estado inicial configurable. Las respuestas admiten HTML: los párrafos se muestran en Inter 16px y las listas <ul><li> se pintan a 3 columnas en escritorio (1 en móvil) con un icono de check a la izquierda de cada elemento. Incluye datos estructurados FAQPage.',
8
+ framework: 'Astro',
9
+ priority: 1,
10
+ tags: ['texto', 'faq', 'acordeon', 'preguntas', 'interactivo', 'sumario', 'tarjeta'],
11
+ fields: [
12
+ {
13
+ name: 'title',
14
+ type: 'text',
15
+ help: 'Etiqueta pequeña que aparece encima de las tarjetas (párrafo con estilo de tag: fondo azul muy claro, 14px). Si se deja vacío, no se muestra',
16
+ label: 'Texto de la etiqueta superior',
17
+ mandatory: false,
18
+ example_value: 'Características del producto'
19
+ },
20
+ {
21
+ name: 'initialState',
22
+ type: 'select',
23
+ help: 'Estado inicial de los elementos del acordeón. "all-open": todos desplegados (por defecto). "all-closed": todos plegados. "first-open": solo el primero desplegado',
24
+ label: 'Estado inicial del acordeón',
25
+ mandatory: false,
26
+ options: ['all-open', 'all-closed', 'first-open'],
27
+ options_labels: ['Todos desplegados (por defecto)', 'Todos plegados', 'Solo el primero desplegado'],
28
+ example_value: 'all-open'
29
+ },
30
+ {
31
+ name: 'items',
32
+ type: 'list',
33
+ help: 'Listado de tarjetas. Cada una muestra su título como cabecera clicable con chevron. Al hacer click se abre su contenido y se cierran las demás (comportamiento exclusivo). Un segundo click en la abierta la cierra',
34
+ label: 'Listado de tarjetas',
35
+ mandatory: false,
36
+ items: {
37
+ type: 'object',
38
+ fields: [
39
+ { name: 'question', type: 'text', help: 'Título de la tarjeta (Poppins 24px semibold). No admite HTML', label: 'Título de la tarjeta', example_value: 'Sumario' },
40
+ { name: 'answer', type: 'textArea', help: 'Contenido que aparece al abrir la tarjeta. Admite HTML. Los <p> se muestran como párrafo de 16px; las listas <ul><li> se pintan a 3 columnas en escritorio con un icono de check delante de cada elemento. Evitar scripts', label: 'Contenido de la tarjeta', example_value: '<p>Los siguientes temas son abordados de manera regular:</p><ul><li>Actualidad</li><li>Facturación</li><li>IRPF</li><li>ITP</li><li>Recaudación</li><li>Sanciones tributarias</li></ul>' }
41
+ ]
42
+ }
43
+ },
44
+ {
45
+ name: 'noSchema',
46
+ type: 'boolean',
47
+ help: 'Si está ACTIVADO, omite la inyección del JSON-LD FAQPage interno del componente. Útil cuando hay varias instancias del componente en la misma página, o cuando se está usando SEO_Schema_Page con pageType FAQPage para declarar el FAQPage raíz unificado. Default: desactivado (emite el FAQPage propio)',
48
+ label: 'Omitir JSON-LD FAQPage propio',
49
+ mandatory: false,
50
+ options: ['false', 'true'],
51
+ options_labels: ['Falso (emite FAQPage)', 'Verdadero (no emite FAQPage)'],
52
+ example_value: false
53
+ }
54
+ ]
55
+ };
@@ -0,0 +1,128 @@
1
+ ---
2
+ // Acordeón de tarjetas según diseño de Figma "Apuntes y Consejos" (nodo 2373:19090).
3
+ // Misma lógica y carbin que FAQ_2025_Hiroshima; cambia la maquetación.
4
+ const {
5
+ title,
6
+ items = [],
7
+ initialState = "all-open",
8
+ noSchema = false,
9
+ } = Astro.props;
10
+
11
+ const allOpen = initialState === 'all-open';
12
+
13
+ // Prefijo único por instancia para enlazar botón ↔ panel (aria-controls / aria-labelledby) sin colisionar si hay varios FAQ en la misma página.
14
+ const uid = 'faq-' + Math.random().toString(36).substring(2, 10);
15
+
16
+ const stripHtml = (html: string) => html.replace(/<[^>]*>/g, '');
17
+
18
+ const structuredData = !noSchema && items.length > 0 ? `<script type="application/ld+json">
19
+ {
20
+ "@context": "https://schema.org",
21
+ "@type": "FAQPage",
22
+ "mainEntity": [
23
+ ${items.map((item: { question: string; answer: string }) => `{
24
+ "@type": "Question",
25
+ "name": ${JSON.stringify(item.question)},
26
+ "acceptedAnswer": {
27
+ "@type": "Answer",
28
+ "text": ${JSON.stringify(stripHtml(item.answer))}
29
+ }
30
+ }`).join(',\n ')}
31
+ ]
32
+ }
33
+ </script>` : '';
34
+ ---
35
+
36
+ <div class="w-full flex flex-col items-start gap-4 px-8 md:px-0 py-12">
37
+ {title && <p class="inline-flex items-center justify-center px-2 py-1 rounded bg-[rgba(0,23,114,0.1)] font-inter text-sm font-normal leading-5 text-[#363942]">{title}</p>}
38
+ <div class="w-full flex flex-col gap-4 faq-container" data-initial-state={initialState}>
39
+ {items.map((item: { question: string; answer: string }, index: number) => {
40
+ const isOpen = allOpen || (initialState === 'first-open' && index === 0);
41
+ return (
42
+ <div class="faq-item w-full flex flex-col gap-4 bg-white rounded-2xl p-6 shadow-[0_2px_4px_-2px_rgba(0,0,0,0.08),0_4px_8px_-2px_rgba(0,0,0,0.04)]">
43
+ <h3 class="m-0 w-full">
44
+ <button id={`${uid}-header-${index}`} aria-expanded={isOpen ? 'true' : 'false'} aria-controls={`${uid}-panel-${index}`} class="faq-toggle flex items-center gap-4 w-full cursor-pointer bg-transparent text-left">
45
+ <span class="flex-1 min-w-0 font-poppins text-2xl font-semibold leading-8 text-[#262626]">{item.question}</span>
46
+ <svg class={`faq-arrow shrink-0 -scale-y-100 transition-transform duration-300${isOpen ? ' rotate-180' : ''}`} xmlns="http://www.w3.org/2000/svg" width="12" height="17" viewBox="0 0 12 17" fill="none">
47
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M5.81854 0.0209452C5.76196 0.0379263 5.68058 0.075179 5.6377 0.103713C5.52731 0.177114 0.11211 5.94283 0.0713747 6.03031C0.0105434 6.16092 -0.0154752 6.35561 0.00932299 6.49458C0.0418748 6.67705 0.0949975 6.78302 0.218129 6.91116C0.413508 7.1145 0.688797 7.17488 0.952965 7.07237C1.07784 7.02393 1.17979 6.91976 3.19161 4.78509L5.29941 2.54856L5.30521 9.26125L5.31102 15.974L5.37143 16.0956C5.50041 16.3553 5.72556 16.5 6.00049 16.5C6.27542 16.5 6.50057 16.3553 6.62955 16.0956L6.68996 15.974L6.69577 9.26113L6.70158 2.54832L8.80938 4.78504C10.8221 6.92094 10.9231 7.02407 11.048 7.07247C11.3123 7.17484 11.5875 7.11443 11.7829 6.91116C11.9048 6.78422 11.9591 6.677 11.9905 6.50095C12.0179 6.34771 11.9843 6.13743 11.9115 6.00629C11.8822 5.95345 10.6293 4.6055 9.12716 3.01089C6.9192 0.666875 6.37592 0.102152 6.29081 0.0624731C6.1555 -0.000599483 5.95033 -0.0186613 5.81854 0.0209452Z" fill="#001978"/>
48
+ </svg>
49
+ </button>
50
+ </h3>
51
+ <div id={`${uid}-panel-${index}`} role="region" aria-labelledby={`${uid}-header-${index}`} class={`faq-answer takayama-answer w-full font-inter text-base font-normal leading-6 text-[#363942]${isOpen ? '' : ' hidden'}`} set:html={item.answer} />
52
+ </div>
53
+ );
54
+ })}
55
+ </div>
56
+ </div>
57
+
58
+ <Fragment set:html={structuredData} />
59
+
60
+ <style is:global>
61
+ /* El contenido llega como HTML del editor (set:html), por eso los estilos son globales acotados a .takayama-answer. */
62
+ .takayama-answer > * + * {
63
+ margin-top: 16px;
64
+ }
65
+ .takayama-answer ul {
66
+ list-style: none;
67
+ margin: 0;
68
+ padding: 0;
69
+ column-gap: 32px;
70
+ }
71
+ @media (min-width: 768px) {
72
+ .takayama-answer ul { column-count: 2; }
73
+ }
74
+ @media (min-width: 1024px) {
75
+ .takayama-answer ul { column-count: 3; }
76
+ }
77
+ .takayama-answer li {
78
+ display: flex;
79
+ align-items: center;
80
+ gap: 8px;
81
+ break-inside: avoid;
82
+ margin-bottom: 16px;
83
+ }
84
+ /* Icono de check del diseño (20px). */
85
+ .takayama-answer li::before {
86
+ content: '';
87
+ flex-shrink: 0;
88
+ width: 20px;
89
+ height: 20px;
90
+ background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M9.52323 1.87984C9.48085 1.88406 9.34646 1.89646 9.22459 1.90742C6.20948 2.17824 3.55136 4.17488 2.43499 7.00744C2.04243 8.00344 1.875 8.89734 1.875 9.99719C1.875 10.637 1.91207 11.0417 2.02051 11.5864C2.44445 13.7156 3.70601 15.5839 5.53518 16.7916C7.40748 18.0277 9.7323 18.4285 11.922 17.8927C14.6722 17.2198 16.8645 15.18 17.737 12.4821C18.4881 10.1599 18.1359 7.57374 16.7913 5.53818C15.861 4.1298 14.5332 3.04831 12.9858 2.43875C12.2694 2.15657 11.6069 1.99561 10.7949 1.90654C10.6007 1.88521 9.66628 1.86562 9.52323 1.87984ZM9.49433 3.09333C8.19133 3.20444 6.98457 3.63947 5.97802 4.36093C5.41198 4.76667 4.76348 5.41501 4.35765 5.98091C3.763 6.81011 3.33085 7.8586 3.16671 8.87032C3.09698 9.30017 3.08858 9.42146 3.08858 9.99719C3.08858 10.5729 3.09698 10.6942 3.16671 11.1241C3.21731 11.4359 3.36322 12.0321 3.42484 12.1786C3.43487 12.2025 3.48291 12.3304 3.53158 12.4628C3.67707 12.8587 3.93829 13.3767 4.18725 13.763C4.68206 14.5309 5.48002 15.3263 6.24777 15.8169C6.62281 16.0566 7.1438 16.3178 7.52905 16.4593C7.66152 16.508 7.78943 16.556 7.81332 16.566C7.95989 16.6276 8.55618 16.7735 8.86814 16.8241C9.29809 16.8938 9.41942 16.9022 9.99529 16.9022C10.5712 16.9022 10.6925 16.8938 11.1224 16.8241C11.4344 16.7735 12.0307 16.6276 12.1772 16.566C12.2011 16.556 12.3291 16.508 12.4615 16.4593C12.8468 16.3178 13.3678 16.0566 13.7428 15.8169C14.3674 15.4178 15.0466 14.7866 15.5184 14.1667C16.1798 13.2979 16.6484 12.2055 16.8239 11.1241C16.8936 10.6942 16.902 10.5729 16.902 9.99719C16.902 9.42146 16.8936 9.30017 16.8239 8.87032C16.7733 8.55844 16.6274 7.96229 16.5657 7.81576C16.5557 7.79188 16.5077 7.66399 16.459 7.53156C16.3135 7.13569 16.0523 6.61766 15.8033 6.23133C15.3085 5.46344 14.5106 4.66804 13.7428 4.17746C13.3678 3.93779 12.8468 3.67659 12.4615 3.53506C12.3291 3.48641 12.2011 3.43838 12.1772 3.42835C12.1062 3.39847 11.6757 3.28153 11.4789 3.23861C10.9791 3.12964 10.7044 3.10036 10.1109 3.09273C9.81947 3.089 9.54202 3.08927 9.49433 3.09333ZM12.4308 7.54749C12.3768 7.56615 12.2987 7.60867 12.2574 7.64195C12.216 7.67524 11.4367 8.44827 10.5256 9.35982L8.86916 11.0172L8.29879 10.4499C7.64429 9.79888 7.61416 9.77736 7.35553 9.77661C7.23578 9.77624 7.19201 9.78543 7.10093 9.82997C6.81974 9.9675 6.69055 10.2925 6.79926 10.5888C6.83749 10.693 6.89456 10.7548 7.67111 11.5342C8.6168 12.4832 8.60335 12.4727 8.86814 12.4722C8.98685 12.4719 9.04442 12.4618 9.11862 12.4281C9.19837 12.3919 9.55375 12.0454 11.1829 10.4155C13.0646 8.5328 13.1526 8.44165 13.1915 8.33505C13.3676 7.85265 12.9122 7.38112 12.4308 7.54749Z' fill='%23262626'/%3E%3C/svg%3E") center / contain no-repeat;
91
+ }
92
+ </style>
93
+
94
+ <script>
95
+ document.querySelectorAll('.faq-container').forEach((container) => {
96
+ const exclusive = container.getAttribute('data-initial-state') !== 'all-open';
97
+
98
+ container.querySelectorAll('.faq-toggle').forEach((button) => {
99
+ button.addEventListener('click', () => {
100
+ const item = button.closest('.faq-item');
101
+ const answer = item?.querySelector('.faq-answer');
102
+ const arrow = item?.querySelector('.faq-arrow');
103
+ const isOpen = !answer?.classList.contains('hidden');
104
+
105
+ if (exclusive) {
106
+ // Cerrar todos los del mismo contenedor
107
+ container.querySelectorAll('.faq-item').forEach((otherItem) => {
108
+ otherItem.querySelector('.faq-answer')?.classList.add('hidden');
109
+ otherItem.querySelector('.faq-arrow')?.classList.remove('rotate-180');
110
+ otherItem.querySelector('.faq-toggle')?.setAttribute('aria-expanded', 'false');
111
+ });
112
+ // Si no estaba abierto, abrirlo
113
+ if (!isOpen) {
114
+ answer?.classList.remove('hidden');
115
+ arrow?.classList.add('rotate-180');
116
+ button.setAttribute('aria-expanded', 'true');
117
+ }
118
+ } else {
119
+ // Toggle independiente
120
+ const willOpen = answer?.classList.contains('hidden');
121
+ answer?.classList.toggle('hidden');
122
+ arrow?.classList.toggle('rotate-180');
123
+ button.setAttribute('aria-expanded', willOpen ? 'true' : 'false');
124
+ }
125
+ });
126
+ });
127
+ });
128
+ </script>
@@ -43,6 +43,7 @@ import * as CorpFooter from '../carbins/CorpFooter.ts';
43
43
  import * as CorpHero from '../carbins/CorpHero.ts';
44
44
  import * as Enlace_2025_Venecia from '../carbins/Enlace_2025_Venecia.ts';
45
45
  import * as FAQ_2025_Hiroshima from '../carbins/FAQ_2025_Hiroshima.ts';
46
+ import * as FAQ_2026_Takayama from '../carbins/FAQ_2026_Takayama.ts';
46
47
  import * as Footer_2025_Napoles from '../carbins/Footer_2025_Napoles.ts';
47
48
  import * as Footer_2026_Napoles from '../carbins/Footer_2026_Napoles.ts';
48
49
  import * as Footer_2027_Napoles from '../carbins/Footer_2027_Napoles.ts';
@@ -144,6 +145,7 @@ export const components = [
144
145
  {component: CorpHero},
145
146
  {component: Enlace_2025_Venecia},
146
147
  {component: FAQ_2025_Hiroshima},
148
+ {component: FAQ_2026_Takayama},
147
149
  {component: Footer_2025_Napoles},
148
150
  {component: Footer_2026_Napoles},
149
151
  {component: Footer_2027_Napoles},
package/src/index.ts CHANGED
@@ -49,6 +49,7 @@ import CorpHero from './components/Astro/CorpHero.astro';
49
49
  import CorpNavigation from './components/Astro/CorpNavigation.astro';
50
50
  import Enlace_2025_Venecia from './components/Astro/Enlace_2025_Venecia.astro';
51
51
  import FAQ_2025_Hiroshima from './components/Astro/FAQ_2025_Hiroshima.astro';
52
+ import FAQ_2026_Takayama from './components/Astro/FAQ_2026_Takayama.astro';
52
53
  import Footer_2025_Napoles from './components/Astro/Footer_2025_Napoles.astro';
53
54
  import Footer_2026_Napoles from './components/Astro/Footer_2026_Napoles.astro';
54
55
  import Footer_2027_Napoles from './components/Astro/Footer_2027_Napoles.astro';
@@ -109,7 +110,7 @@ import ReactButton from './components/React/ReactButton.jsx';
109
110
  // Exporta todos los componentes uno a uno para que puedan ser usados directamente.
110
111
 
111
112
 
112
- export { VueButton, Author_2025_Algarve, Boton_2026_Elx, Button, CTA_2025_Formentera, Cabecera_2025_Barcelona, Cabecera_2025_Madrid, Cabecera_2026_Bilbao, Cabecera_2026_Dakota, Cabecera_2026_Madrid, Calculadora_2026_Lisboa, Card_2025_Malta, Contenido_2025_Alcorcon, Contenido_2025_Cordoba, Contenido_2025_Granada, Contenido_2025_Malaga, Contenido_2025_Montevideo, Contenido_2026_Cabra, Contenido_2026_Castellon, Contenido_2026_Denia, Contenido_2026_Dubai, Contenido_2026_Estepona, Contenido_2026_Estocolmo, Contenido_2026_Huesca, Contenido_2026_Jaen, Contenido_2026_Leon, Contenido_2026_Lleida, Contenido_2026_Mallorca, Contenido_2026_Marruecos, Contenido_2026_Menorca, Contenido_2026_Michigan, Contenido_2026_Moraira, Contenido_2026_Mostoles, Contenido_2026_Orcasitas, Contenido_2026_Oslo, Contenido_2026_Quito, Contenido_2026_Seattle, Contenido_2026_Sevilla, Contenido_2026_Tokyo, Contenido_2026_Ubeda, Contenido_2026_Yakarta, CorpFooter, CorpHero, CorpNavigation, Enlace_2025_Venecia, FAQ_2025_Hiroshima, Footer_2025_Napoles, Footer_2026_Napoles, Footer_2027_Napoles, Formulario_2025_Nara, Formulario_2025_Seul, Formulario_2025_Teruel, Formulario_2026_Carabanchel, Formulario_2026_Wichita, Galeria_2026_Segorbe, GeometricShape, GeometricShapeCard, Grid_2026_Aldaia, HeaderCorporativo, Hero_2025_Benidorm, Hero_2026_Benidorm, Hero_2026_Lliria, ImageTextSimple, Imagen_2025_Bogota, Imagen_2025_Fukushima, Imagen_2026_Algar, Indice_2025_Taiwan, Mapa_2026_Girona, Modal_2025_Sagunto, Modal_2026_Almeria, Paginacion_2025_Paris, RRSS_2025_Pisa, SEO_Head_Section, SEO_Schema_Page, Separador_2025_Reinosa, Separador_2025_Toledo, Separador_2026_Teulada, Share_2025_Florencia, SpectrumSeparator, Sumario_2025_Beijing, Tabla_2025_Fuenlabrada, Tabla_2026_Cadiz, Tag_2025_Bolonia, TestHijo, TestPadre, Test_2026_Gaza, TextBox, TextImageBackground, TextImageBlock, TextImageCard, TextImageHeader, Texto_2025_Kyoto, Texto_2026_Alicante, Texto_2026_Castellon, Tiempo_2025_Londres, Titulo_2025_Algeciras, Titulo_2025_Santorini, VideoAutoplay, Video_2025_Polop, Video_2025_Valencia, Video_2026_Andujar, ReactButton };
113
+ export { VueButton, Author_2025_Algarve, Boton_2026_Elx, Button, CTA_2025_Formentera, Cabecera_2025_Barcelona, Cabecera_2025_Madrid, Cabecera_2026_Bilbao, Cabecera_2026_Dakota, Cabecera_2026_Madrid, Calculadora_2026_Lisboa, Card_2025_Malta, Contenido_2025_Alcorcon, Contenido_2025_Cordoba, Contenido_2025_Granada, Contenido_2025_Malaga, Contenido_2025_Montevideo, Contenido_2026_Cabra, Contenido_2026_Castellon, Contenido_2026_Denia, Contenido_2026_Dubai, Contenido_2026_Estepona, Contenido_2026_Estocolmo, Contenido_2026_Huesca, Contenido_2026_Jaen, Contenido_2026_Leon, Contenido_2026_Lleida, Contenido_2026_Mallorca, Contenido_2026_Marruecos, Contenido_2026_Menorca, Contenido_2026_Michigan, Contenido_2026_Moraira, Contenido_2026_Mostoles, Contenido_2026_Orcasitas, Contenido_2026_Oslo, Contenido_2026_Quito, Contenido_2026_Seattle, Contenido_2026_Sevilla, Contenido_2026_Tokyo, Contenido_2026_Ubeda, Contenido_2026_Yakarta, CorpFooter, CorpHero, CorpNavigation, Enlace_2025_Venecia, FAQ_2025_Hiroshima, FAQ_2026_Takayama, Footer_2025_Napoles, Footer_2026_Napoles, Footer_2027_Napoles, Formulario_2025_Nara, Formulario_2025_Seul, Formulario_2025_Teruel, Formulario_2026_Carabanchel, Formulario_2026_Wichita, Galeria_2026_Segorbe, GeometricShape, GeometricShapeCard, Grid_2026_Aldaia, HeaderCorporativo, Hero_2025_Benidorm, Hero_2026_Benidorm, Hero_2026_Lliria, ImageTextSimple, Imagen_2025_Bogota, Imagen_2025_Fukushima, Imagen_2026_Algar, Indice_2025_Taiwan, Mapa_2026_Girona, Modal_2025_Sagunto, Modal_2026_Almeria, Paginacion_2025_Paris, RRSS_2025_Pisa, SEO_Head_Section, SEO_Schema_Page, Separador_2025_Reinosa, Separador_2025_Toledo, Separador_2026_Teulada, Share_2025_Florencia, SpectrumSeparator, Sumario_2025_Beijing, Tabla_2025_Fuenlabrada, Tabla_2026_Cadiz, Tag_2025_Bolonia, TestHijo, TestPadre, Test_2026_Gaza, TextBox, TextImageBackground, TextImageBlock, TextImageCard, TextImageHeader, Texto_2025_Kyoto, Texto_2026_Alicante, Texto_2026_Castellon, Tiempo_2025_Londres, Titulo_2025_Algeciras, Titulo_2025_Santorini, VideoAutoplay, Video_2025_Polop, Video_2025_Valencia, Video_2026_Andujar, ReactButton };
113
114
 
114
115
 
115
116
  // Exporta la función listComponents para que sea usado en el Pagebuilder en Vue.
@@ -170,6 +171,7 @@ export const components = {
170
171
  CorpNavigation: CorpNavigation,
171
172
  Enlace_2025_Venecia: Enlace_2025_Venecia,
172
173
  FAQ_2025_Hiroshima: FAQ_2025_Hiroshima,
174
+ FAQ_2026_Takayama: FAQ_2026_Takayama,
173
175
  Footer_2025_Napoles: Footer_2025_Napoles,
174
176
  Footer_2026_Napoles: Footer_2026_Napoles,
175
177
  Footer_2027_Napoles: Footer_2027_Napoles,