libreria-astro-lefebvre 0.0.5 → 0.0.7

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.
Files changed (91) hide show
  1. package/README.md +46 -46
  2. package/package.json +30 -30
  3. package/src/carbins/AstroButton.ts +34 -10
  4. package/src/carbins/CTA_2025_Formentera.ts +48 -0
  5. package/src/carbins/Cabecera_2025_Barcelona.ts +34 -0
  6. package/src/carbins/Cabecera_2025_Madrid.ts +34 -0
  7. package/src/carbins/Contenido_2025_Alcorcon.ts +76 -0
  8. package/src/carbins/Contenido_2025_Granada.ts +59 -0
  9. package/src/carbins/Contenido_2025_Malaga.ts +100 -0
  10. package/src/carbins/CorpFooter.ts +13 -0
  11. package/src/carbins/CorpHero.ts +20 -0
  12. package/src/carbins/FooterCorporativo.ts +13 -0
  13. package/src/carbins/Footer_2025_Napoles.ts +12 -0
  14. package/src/carbins/Formulario_2025_Seul.ts +56 -0
  15. package/src/carbins/GeometricShapeCard.ts +19 -8
  16. package/src/carbins/HeaderCorporativo.ts +34 -0
  17. package/src/carbins/ImageTextSimple.ts +45 -0
  18. package/src/carbins/Imagen_2025_Bogota.ts +69 -0
  19. package/src/carbins/ReactButton.ts +32 -8
  20. package/src/carbins/Repetidor_2025_Cabra.ts +12 -0
  21. package/src/carbins/Repetidor_2025_Dubai.ts +48 -0
  22. package/src/carbins/Repetidor_2025_Estocolmo.ts +12 -0
  23. package/src/carbins/Repetidor_2025_Menorca.ts +75 -0
  24. package/src/carbins/Repetidor_2025_Michigan.ts +21 -0
  25. package/src/carbins/Repetidor_2025_Orcasitas.ts +34 -0
  26. package/src/carbins/Repetidor_2025_Oslo.ts +12 -0
  27. package/src/carbins/Repetidor_2025_Quito.ts +20 -0
  28. package/src/carbins/Repetidor_2025_Seatle.ts +12 -0
  29. package/src/carbins/Repetidor_2025_Tokyo.ts +48 -0
  30. package/src/carbins/Repetidor_2025_Ubeda.ts +12 -0
  31. package/src/carbins/Repetidor_2025_Yakarta.ts +12 -0
  32. package/src/carbins/Separador_2025_Reinosa.ts +12 -0
  33. package/src/carbins/SpectrumSeparator.ts +12 -0
  34. package/src/carbins/TestPadre.ts +20 -0
  35. package/src/carbins/TextBox.ts +27 -0
  36. package/src/carbins/TextImageBackground.ts +47 -0
  37. package/src/carbins/TextImageBlock.ts +62 -0
  38. package/src/carbins/TextImageCard.ts +44 -0
  39. package/src/carbins/TextImageHeader.ts +68 -0
  40. package/src/carbins/Titulo_2025_Algeciras.ts +43 -0
  41. package/src/carbins/Titulo_2025_Santorini.ts +20 -0
  42. package/src/carbins/VideoAutoplay.ts +36 -0
  43. package/src/carbins/VueButton.ts +35 -11
  44. package/src/components/Astro/Button.astro +5 -5
  45. package/src/components/Astro/CTA_2025_Formentera.astro +20 -0
  46. package/src/components/Astro/Cabecera_2025_Barcelona.astro +17 -0
  47. package/src/components/Astro/Cabecera_2025_Madrid.astro +147 -0
  48. package/src/components/Astro/Contenido_2025_Alcorcon.astro +46 -0
  49. package/src/components/Astro/Contenido_2025_Granada.astro +67 -0
  50. package/src/components/Astro/Contenido_2025_Malaga.astro +125 -0
  51. package/src/components/Astro/CorpFooter.astro +107 -0
  52. package/src/components/Astro/CorpHero.astro +21 -0
  53. package/src/components/Astro/CorpNavigation.astro +87 -0
  54. package/src/components/Astro/FooterCorporativo.astro +82 -0
  55. package/src/components/Astro/Footer_2025_Napoles.astro +128 -0
  56. package/src/components/Astro/Formulario_2025_Seul.astro +63 -0
  57. package/src/components/Astro/GeometricShape.astro +0 -0
  58. package/src/components/Astro/GeometricShapeCard.astro +0 -0
  59. package/src/components/Astro/HeaderCorporativo.astro +26 -0
  60. package/src/components/Astro/ImageTextSimple.astro +56 -0
  61. package/src/components/Astro/Imagen_2025_Bogota.astro +43 -0
  62. package/src/components/Astro/Repetidor_2025_Cabra.astro +121 -0
  63. package/src/components/Astro/Repetidor_2025_Dubai.astro +30 -0
  64. package/src/components/Astro/Repetidor_2025_Estocolmo.astro +34 -0
  65. package/src/components/Astro/Repetidor_2025_Menorca.astro +42 -0
  66. package/src/components/Astro/Repetidor_2025_Michigan.astro +24 -0
  67. package/src/components/Astro/Repetidor_2025_Orcasitas.astro +189 -0
  68. package/src/components/Astro/Repetidor_2025_Oslo.astro +54 -0
  69. package/src/components/Astro/Repetidor_2025_Quito.astro +43 -0
  70. package/src/components/Astro/Repetidor_2025_Seatle.astro +32 -0
  71. package/src/components/Astro/Repetidor_2025_Tokyo.astro +55 -0
  72. package/src/components/Astro/Repetidor_2025_Ubeda.astro +19 -0
  73. package/src/components/Astro/Repetidor_2025_Yakarta.astro +136 -0
  74. package/src/components/Astro/Separador_2025_Reinosa.astro +4 -0
  75. package/src/components/Astro/SpectrumSeparator.astro +11 -0
  76. package/src/components/Astro/TestHijo.astro +5 -0
  77. package/src/components/Astro/TestPadre.astro +7 -0
  78. package/src/components/Astro/TextBox.astro +11 -0
  79. package/src/components/Astro/TextImageBackground.astro +18 -0
  80. package/src/components/Astro/TextImageBlock.astro +29 -0
  81. package/src/components/Astro/TextImageCard.astro +25 -0
  82. package/src/components/Astro/TextImageHeader.astro +31 -0
  83. package/src/components/Astro/Titulo_2025_Algeciras.astro +27 -0
  84. package/src/components/Astro/Titulo_2025_Santorini.astro +9 -0
  85. package/src/components/Astro/VideoAutoplay.astro +20 -0
  86. package/src/components/React/ReactButton.jsx +0 -0
  87. package/src/components/Vue/VueButton.vue +0 -0
  88. package/src/generated/componentRegistry.ts +86 -12
  89. package/src/index.ts +113 -5
  90. package/src/interfaces/types.ts +3 -0
  91. package/src/lib/functions.js +0 -0
@@ -1,7 +1,10 @@
1
+ // dame en un string el codigo html resultante de la renderizacion de este componente quitando las clases de tailwind y poniendo estilos inline de css, no debe tener codigo js, es para hcer una preview
2
+
1
3
  import type { ComponentMetadata } from '../interfaces/types';
2
4
 
3
5
  export const metadata: ComponentMetadata = {
4
6
  component_name: 'GeometricShapeCard',
7
+ category: 'Imagen',
5
8
  name: 'Tarjeta con figura geométrica',
6
9
  description: 'Tarjeta con figura geométrica y botón de leer más.',
7
10
  framework: 'Astro',
@@ -11,46 +14,54 @@ export const metadata: ComponentMetadata = {
11
14
  name: 'title',
12
15
  type: 'text',
13
16
  label: 'Título',
14
- mandatory: true
17
+ mandatory: true,
18
+ example_value: 'Título de la tarjeta'
15
19
  },
16
20
  {
17
21
  name: 'mainContent',
18
22
  type: 'textArea',
19
23
  label: 'Contenido principal (HTML)',
20
- mandatory: true
24
+ mandatory: true,
25
+ example_value: '<p>Este es el <b>contenido</b> principal.</p>'
21
26
  },
22
27
  {
23
28
  name: 'secondaryContent',
24
29
  type: 'textArea',
25
30
  label: 'Contenido secundario (HTML) que aparece al leer más',
26
- mandatory: false
31
+ mandatory: false,
32
+ example_value: '<p>Este es el contenido secundario.</p>'
27
33
  },
28
34
  {
29
35
  name: 'imageSrc',
30
36
  type: 'text',
31
37
  label: 'URL de la imagen',
32
- mandatory: true
38
+ mandatory: true,
39
+ example_value: 'https://via.placeholder.com/150'
33
40
  },
34
41
  {
35
42
  name: 'figure',
36
43
  type: 'select',
37
44
  label: 'Tipo de figura',
38
45
  options: ['Trapeze', 'Trapeze2', 'Leaf', 'Sphere'],
39
- options_labels: ['Trapecio', 'Trapecio II', 'Hoja de parra', 'Esfera']
46
+ options_labels: ['Trapecio', 'Trapecio II', 'Hoja de parra', 'Esfera'],
47
+ example_value: 'Trapeze'
40
48
  },
41
49
  {
42
50
  name: 'orientation',
43
51
  type: 'select',
44
52
  label: 'Orientación de la figura',
45
53
  options: ['right', 'left'],
46
- options_labels: ['Derecha','Izquierda']
54
+ options_labels: ['Derecha','Izquierda'],
55
+ example_value: 'right'
47
56
  },
48
57
  {
49
58
  name: 'gradiantIndex',
50
59
  type: 'select',
51
60
  label: 'Gradiante',
52
61
  options: [0, 1, 2, 3, 4],
53
- options_labels: ['Lefebvre España', 'Lefebvre Sarrut', 'Lefebvre Italia', 'Lefebvre Toovalu', 'Bandera de España']
62
+ options_labels: ['Lefebvre España', 'Lefebvre Sarrut', 'Lefebvre Italia', 'Lefebvre Toovalu', 'Bandera de España'],
63
+ example_value: 0
54
64
  },
55
65
  ]
56
- };
66
+
67
+ };
@@ -0,0 +1,34 @@
1
+ import type { ComponentMetadata } from '../interfaces/types';
2
+
3
+ export const metadata: ComponentMetadata = {
4
+ component_name: 'HeaderCorporativo',
5
+ category: 'Cabecera',
6
+ name: 'Header Corporativo',
7
+ description: 'Header de prueba en Astro',
8
+ framework: 'Astro',
9
+ priority: 1,
10
+ tags: ['header', 'navegación'],
11
+ fields: [
12
+ {
13
+ name: 'logo',
14
+ type: 'text',
15
+ label: 'URL del logo',
16
+ mandatory: false,
17
+ example_value: 'https://espacioasesoria.com/wp-content/themes/lf-espacioasesoria-theme/src/images/logo-espacio-asesoria.png'
18
+ },
19
+ {
20
+ name: 'alt',
21
+ type: 'text',
22
+ label: 'Texto alternativo',
23
+ mandatory: false,
24
+ example_value: 'https://lefebvre.es'
25
+ },
26
+ {
27
+ name: 'showLefebvreLogo',
28
+ type: 'boolean',
29
+ label: 'Mostrar logo de Lefebvre',
30
+ mandatory: false,
31
+ example_value: true
32
+ },
33
+ ]
34
+ };
@@ -0,0 +1,45 @@
1
+ // dame en un string el codigo html resultante de la renderizacion de este componente quitando las clases de tailwind y poniendo estilos inline de css, no debe tener codigo js, es para hcer una preview
2
+
3
+ import type { ComponentMetadata } from '../interfaces/types';
4
+
5
+ export const metadata: ComponentMetadata = {
6
+ component_name: 'ImageTextSimple',
7
+ category: 'Imagen',
8
+ name: 'Contenido con imagen/video simple',
9
+ description: 'Contenido con imagen/video simple, título y texto',
10
+ framework: 'Astro',
11
+ tags: ['card', 'interactivo','lefebvre.es'],
12
+ fields: [
13
+ {
14
+ name: 'title',
15
+ type: 'text',
16
+ label: 'Título',
17
+ mandatory: true,
18
+ example_value: 'Soluciones para activar el conocimiento'
19
+ },
20
+ {
21
+ name: 'description',
22
+ type: 'textArea',
23
+ label: 'Contenido principal (HTML)',
24
+ mandatory: true,
25
+ example_value: `<p>En Lefebvre buscamos ofrecer a nuestros clientes <strong>soluciones específicas, relevantes e integrales</strong>.
26
+ Para ello, las adaptamos a las características y necesidades de cada empresa y sector, haciendo hincapié en los puntos críticos de cada uno de ellos para contribuir positivamente a su desarrollo. </p>
27
+ `
28
+ },
29
+ {
30
+ name: 'image',
31
+ type: 'text',
32
+ label: 'URL de la imagen',
33
+ mandatory: true,
34
+ example_value: 'https://lefebvre.es/build/images/img-map.57810cde.webp'
35
+ },
36
+ {
37
+ name: 'video',
38
+ type: 'text',
39
+ label: 'URL del video',
40
+ mandatory: true,
41
+ example_value: 'https://www.youtube.com/embed/3gJIiEdYKR0'
42
+ },
43
+ ]
44
+
45
+ };
@@ -0,0 +1,69 @@
1
+ import type { ComponentMetadata } from '../interfaces/types';
2
+
3
+ export const metadata: ComponentMetadata = {
4
+ component_name: 'Imagen_2025_Bogota',
5
+ category: 'Imagen',
6
+ name: 'Imagen Banner Genial 2025',
7
+ description: 'Imagen Banner para el directorio de Genial en la corporativa de Lefebvre',
8
+ framework: 'Astro',
9
+ priority: 1,
10
+ tags: ['banner', 'imagen', 'genial'],
11
+ fields: [
12
+ {
13
+ name: 'title',
14
+ type: 'text',
15
+ label: 'Texto del título',
16
+ mandatory: false,
17
+ example_value: 'Pruébalo ya'
18
+ },
19
+ {
20
+ name: 'description',
21
+ type: 'text',
22
+ label: 'Texto de la descripción',
23
+ mandatory: false,
24
+ example_value: 'Texto descriptivo del título'
25
+ },
26
+ {
27
+ name: 'txtBtn',
28
+ type: 'text',
29
+ label: 'Label del botón',
30
+ mandatory: false,
31
+ example_value: 'Texto del botón'
32
+ },
33
+ {
34
+ name: 'linkBtn',
35
+ type: 'text',
36
+ label: 'Enlace del botón',
37
+ mandatory: false,
38
+ example_value: 'https://www.ejemplo.com'
39
+ },
40
+ {
41
+ name: 'alt',
42
+ type: 'text',
43
+ label: 'Texto alternativo del botón',
44
+ mandatory: false,
45
+ example_value: 'Texto alternativo del botón'
46
+ },
47
+ {
48
+ name: 'src',
49
+ type: 'text',
50
+ label: 'Src de la imagen',
51
+ mandatory: false,
52
+ example_value: 'https://www.ejemplo.com/imagen.jpg'
53
+ },
54
+ {
55
+ name: 'iframeSrc',
56
+ type: 'text',
57
+ label: 'Src del iframe',
58
+ mandatory: false,
59
+ example_value: 'https://www.ejemplo.com/video.mp4'
60
+ },
61
+ {
62
+ name: 'showBtn',
63
+ type: 'boolean',
64
+ label: 'Mostrar botón',
65
+ mandatory: false,
66
+ example_value: true
67
+ }
68
+ ]
69
+ };
@@ -1,9 +1,33 @@
1
- import type { ComponentMetadata } from '../interfaces/types';
2
-
3
- export const metadata: ComponentMetadata = {
4
- component_name: 'ReactButton',
5
- name: 'Botón en React',
6
- description: 'Botón de prueba en React',
7
- framework: 'React',
8
- tags: ['boton', 'interactivo', 'ejemplo'],
1
+ import type { ComponentMetadata } from '../interfaces/types';
2
+
3
+ export const metadata: ComponentMetadata = {
4
+ component_name: 'ReactButton',
5
+ category: 'Call to Action',
6
+ name: 'Botón en React',
7
+ description: 'Botón de prueba en React',
8
+ framework: 'React',
9
+ tags: ['boton', 'interactivo', 'ejemplo'],
10
+ fields: [
11
+ {
12
+ name: 'label',
13
+ type: 'text',
14
+ label: 'Texto del botón',
15
+ mandatory: true,
16
+ example_value: 'Botón en React'
17
+ },
18
+ {
19
+ name: 'href',
20
+ type: 'text',
21
+ label: 'Url de destino',
22
+ mandatory: true,
23
+ example_value: 'https://lefebvre.es'
24
+ },
25
+ {
26
+ name: 'target',
27
+ type: 'text',
28
+ label: 'Indicar si se abre en la misma ventana o en una nueva (_blank)',
29
+ mandatory: false,
30
+ example_value: '_blank'
31
+ },
32
+ ]
9
33
  };
@@ -0,0 +1,12 @@
1
+ import type { ComponentMetadata } from '../interfaces/types';
2
+
3
+ export const metadata: ComponentMetadata = {
4
+ component_name: 'Repetidor_2025_Cabra',
5
+ category: 'Repetidor',
6
+ name: 'Repetidor de contenido con tabs Genial 2025',
7
+ description: 'Repetidor de contenido con tabs para el directorio de Genial en la corporativa de Lefebvre',
8
+ framework: 'Astro',
9
+ priority: 1,
10
+ tags: ['contenido', 'genial'],
11
+ fields: []
12
+ };
@@ -0,0 +1,48 @@
1
+ import type { ComponentMetadata } from '../interfaces/types';
2
+
3
+ export const metadata: ComponentMetadata = {
4
+ component_name: 'Repetidor_2025_Dubai',
5
+ category: 'Repetidor',
6
+ name: 'Carrusel Genial 2025',
7
+ description: 'Carrusel para el directorio de Genial en la corporativa de Lefebvre',
8
+ framework: 'Astro',
9
+ priority: 1,
10
+ tags: ['contenido', 'carrusel', 'genial'],
11
+ fields: [
12
+ {
13
+ name: 'title',
14
+ type: 'text',
15
+ label: 'Texto del título',
16
+ mandatory: false,
17
+ example_value: 'Pruébalo ya'
18
+ },
19
+ {
20
+ name: 'description',
21
+ type: 'text',
22
+ label: 'Texto de la descripción',
23
+ mandatory: false,
24
+ example_value: 'Texto descriptivo del título'
25
+ },
26
+ {
27
+ name: 'buttonText',
28
+ type: 'text',
29
+ label: 'Label del botón',
30
+ mandatory: false,
31
+ example_value: 'Texto del botón'
32
+ },
33
+ {
34
+ name: 'buttonUrl',
35
+ type: 'text',
36
+ label: 'Enlace del botón',
37
+ mandatory: false,
38
+ example_value: 'https://www.ejemplo.com'
39
+ },
40
+ {
41
+ name: 'showBtn',
42
+ type: 'boolean',
43
+ label: 'Mostrar botón',
44
+ mandatory: false,
45
+ example_value: true
46
+ }
47
+ ]
48
+ };
@@ -0,0 +1,12 @@
1
+ import type { ComponentMetadata } from '../interfaces/types';
2
+
3
+ export const metadata: ComponentMetadata = {
4
+ component_name: 'Repetidor_2025_Estocolmo',
5
+ category: 'Repetidor',
6
+ name: 'Repetidor de contenido Genial 2025',
7
+ description: 'Repetidor de contenido para el directorio de Genial en la corporativa de Lefebvre',
8
+ framework: 'Astro',
9
+ priority: 1,
10
+ tags: ['contenido', 'genial'],
11
+ fields: []
12
+ };
@@ -0,0 +1,75 @@
1
+ import type { ComponentMetadata } from '../interfaces/types';
2
+
3
+ export const metadata: ComponentMetadata = {
4
+ component_name: 'Repetidor_2025_Menorca',
5
+ category: 'Repetidor',
6
+ name: 'Repetidor de contenido con icono Genial 2025',
7
+ description: 'Repetidor de contenido con icono para el directorio de Genial en la corporativa de Lefebvre',
8
+ framework: 'Astro',
9
+ priority: 1,
10
+ tags: ['contenido', 'genial', 'icono'],
11
+ fields: [
12
+
13
+ {
14
+ name: 'positionFlex',
15
+ type: 'select',
16
+ label: 'Posición del item',
17
+ options: ['items-start', 'items-center'],
18
+ options_labels: ['Principio', 'Centrado'],
19
+ example_value: 'items-start'
20
+ },
21
+ {
22
+ name: 'positionBtnFlex',
23
+ type: 'select',
24
+ label: 'Posición del botón',
25
+ options: ['justify-center', 'justify-start'],
26
+ options_labels: ['Centrado', 'Principio'],
27
+ example_value: 'justify-center'
28
+ },
29
+ {
30
+ name: 'flexOrientationIcoText',
31
+ type: 'select',
32
+ label: 'Flex del icono del item',
33
+ options: ['flex-row', 'flex-col'],
34
+ options_labels: ['Horizontal', 'Vertical'],
35
+ example_value: 'flex-row'
36
+ },
37
+ {
38
+ name: 'flexOrientationBlockIcoText',
39
+ type: 'select',
40
+ label: 'Flex del item',
41
+ options: ['flex-row', 'flex-col'],
42
+ options_labels: ['Horizontal', 'Vertical'],
43
+ example_value: 'flex-row'
44
+ },
45
+ {
46
+ name: 'headingType',
47
+ type: 'select',
48
+ label: 'Etiqueta del título',
49
+ options: ['h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'span'],
50
+ options_labels: ['H1', 'H2', 'H3', 'H4', 'H5', 'H6', 'Span'],
51
+ example_value: 'h2'
52
+ },
53
+ {
54
+ name: 'btnLabel',
55
+ type: 'text',
56
+ label: 'Label del botón',
57
+ mandatory: false,
58
+ example_value: 'Texto del botón'
59
+ },
60
+ {
61
+ name: 'buttonUrl',
62
+ type: 'text',
63
+ label: 'Enlace del botón',
64
+ mandatory: false,
65
+ example_value: 'https://www.ejemplo.com'
66
+ },
67
+ {
68
+ name: 'showBtn',
69
+ type: 'boolean',
70
+ label: 'Mostrar botón',
71
+ mandatory: false,
72
+ example_value: true
73
+ }
74
+ ]
75
+ };
@@ -0,0 +1,21 @@
1
+ import type { ComponentMetadata } from '../interfaces/types';
2
+
3
+ export const metadata: ComponentMetadata = {
4
+ component_name: 'Repetidor_2025_Michigan',
5
+ category: 'Repetidor',
6
+ name: 'Repetidor artículo con texto e imagen Genial 2025',
7
+ description: 'Repetidor para el directorio de Genial en la corporativa de Lefebvre',
8
+ framework: 'Astro',
9
+ priority: 1,
10
+ tags: ['texto', 'imagen', 'genial'],
11
+ fields: [
12
+ {
13
+ name: 'orientation',
14
+ type: 'select',
15
+ label: 'Alineación del contenido',
16
+ options: ['left', 'right'],
17
+ options_labels: ['Izquierda', 'Derecha'],
18
+ example_value: 'left'
19
+ },
20
+ ]
21
+ };
@@ -0,0 +1,34 @@
1
+ import type { ComponentMetadata } from '../interfaces/types';
2
+
3
+ export const metadata: ComponentMetadata = {
4
+ component_name: 'Repetidor_2025_Orcasitas',
5
+ category: 'Repetidor',
6
+ name: 'Carrusel Genial 2025',
7
+ description: 'Carrusel para el directorio de Genial en la corporativa de Lefebvre',
8
+ framework: 'Astro',
9
+ priority: 1,
10
+ tags: ['contenido', 'carrusel', 'genial'],
11
+ fields: [
12
+ {
13
+ name: 'slidesToShow',
14
+ type: 'text',
15
+ label: 'Número de slides a mostrar',
16
+ mandatory: false,
17
+ example_value: '3'
18
+ },
19
+ {
20
+ name: 'slidesToScroll',
21
+ type: 'text',
22
+ label: 'Número de slides a desplazar',
23
+ mandatory: false,
24
+ example_value: '1'
25
+ },
26
+ {
27
+ name: 'loadScript',
28
+ type: 'boolean',
29
+ label: 'Cargar dependencias',
30
+ mandatory: false,
31
+ example_value: true
32
+ }
33
+ ]
34
+ };
@@ -0,0 +1,12 @@
1
+ import type { ComponentMetadata } from '../interfaces/types';
2
+
3
+ export const metadata: ComponentMetadata = {
4
+ component_name: 'Repetidor_2025_Oslo',
5
+ category: 'Repetidor',
6
+ name: 'Listado con popups Genial 2025',
7
+ description: 'Listado con popups para el directorio de Genial en la corporativa de Lefebvre',
8
+ framework: 'Astro',
9
+ priority: 1,
10
+ tags: ['contenido', 'popup', 'genial'],
11
+ fields: []
12
+ };
@@ -0,0 +1,20 @@
1
+ import type { ComponentMetadata } from '../interfaces/types';
2
+
3
+ export const metadata: ComponentMetadata = {
4
+ component_name: 'Repetidor_2025_Quito',
5
+ category: 'Repetidor',
6
+ name: 'Texto con icono Genial 2025',
7
+ description: 'Texto con icono para el directorio de Genial en la corporativa de Lefebvre',
8
+ framework: 'Astro',
9
+ priority: 1,
10
+ tags: ['texto', 'genial'],
11
+ fields: [
12
+ {
13
+ name: 'title',
14
+ type: 'text',
15
+ label: 'Título del bloque',
16
+ mandatory: false,
17
+ example_value: 'Test'
18
+ }
19
+ ]
20
+ };
@@ -0,0 +1,12 @@
1
+ import type { ComponentMetadata } from '../interfaces/types';
2
+
3
+ export const metadata: ComponentMetadata = {
4
+ component_name: 'Repetidor_2025_Seatle',
5
+ category: 'Repetidor',
6
+ name: 'Repetidor con cards Genial 2025',
7
+ description: 'Repetidor con tarjetas para el directorio de Genial en la corporativa de Lefebvre',
8
+ framework: 'Astro',
9
+ priority: 1,
10
+ tags: ['repetidor', 'cards', 'genial'],
11
+ fields: []
12
+ };
@@ -0,0 +1,48 @@
1
+ import type { ComponentMetadata } from '../interfaces/types';
2
+
3
+ export const metadata: ComponentMetadata = {
4
+ component_name: 'Repetidor_2025_Tokyo',
5
+ category: 'Repetidor',
6
+ name: 'Repetidor de contenido Genial 2025',
7
+ description: 'Repetidor de contenido para el directorio de Genial en la corporativa de Lefebvre',
8
+ framework: 'Astro',
9
+ priority: 1,
10
+ tags: ['contenido', 'genial'],
11
+ fields: [
12
+ {
13
+ name: 'title',
14
+ type: 'text',
15
+ label: 'Texto del título',
16
+ mandatory: false,
17
+ example_value: 'Pruébalo ya'
18
+ },
19
+ {
20
+ name: 'description',
21
+ type: 'text',
22
+ label: 'Texto de la descripción',
23
+ mandatory: false,
24
+ example_value: 'Texto descriptivo del título'
25
+ },
26
+ {
27
+ name: 'buttonText',
28
+ type: 'text',
29
+ label: 'Label del botón',
30
+ mandatory: false,
31
+ example_value: 'Texto del botón'
32
+ },
33
+ {
34
+ name: 'buttonUrl',
35
+ type: 'text',
36
+ label: 'Enlace del botón',
37
+ mandatory: false,
38
+ example_value: 'https://www.ejemplo.com'
39
+ },
40
+ {
41
+ name: 'showBtn',
42
+ type: 'boolean',
43
+ label: 'Mostrar botón',
44
+ mandatory: false,
45
+ example_value: true
46
+ }
47
+ ]
48
+ };
@@ -0,0 +1,12 @@
1
+ import type { ComponentMetadata } from '../interfaces/types';
2
+
3
+ export const metadata: ComponentMetadata = {
4
+ component_name: 'Repetidor_2025_Ubeda',
5
+ category: 'Repetidor',
6
+ name: 'Repetidor Texto bloque Genial 2025',
7
+ description: 'Repetidor con texto bloque para el directorio de Genial en la corporativa de Lefebvre',
8
+ framework: 'Astro',
9
+ priority: 1,
10
+ tags: ['contenido', 'texto', 'genial'],
11
+ fields: []
12
+ };
@@ -0,0 +1,12 @@
1
+ import type { ComponentMetadata } from '../interfaces/types';
2
+
3
+ export const metadata: ComponentMetadata = {
4
+ component_name: 'Repetidor_2025_Yakarta',
5
+ category: 'Repetidor',
6
+ name: 'Listado vídeos acordeón Genial 2025',
7
+ description: 'Listado de vídeos en acordeón para el directorio de Genial en la corporativa de Lefebvre',
8
+ framework: 'Astro',
9
+ priority: 1,
10
+ tags: ['acordeon', 'video', 'genial'],
11
+ fields: []
12
+ };
@@ -0,0 +1,12 @@
1
+ import type { ComponentMetadata } from '../interfaces/types';
2
+
3
+ export const metadata: ComponentMetadata = {
4
+ component_name: 'Separador_2025_Reinosa',
5
+ category: 'Separador',
6
+ name: 'Separador de contenido Genial 2025',
7
+ description: 'Separador de contenido para el directorio de Genial en la corporativa de Lefebvre',
8
+ framework: 'Astro',
9
+ priority: 1,
10
+ tags: ['spectrum', 'genial'],
11
+ fields: []
12
+ };
@@ -0,0 +1,12 @@
1
+ import type { ComponentMetadata } from '../interfaces/types';
2
+
3
+ export const metadata: ComponentMetadata = {
4
+ component_name: 'SpectrumSeparator',
5
+ category: 'Separador',
6
+ name: 'Separador de Espectro',
7
+ description: 'Separador de espectro',
8
+ framework: 'Astro',
9
+ priority: 1,
10
+ tags: ['separador','lefebvre.es'],
11
+ fields: []
12
+ };
@@ -0,0 +1,20 @@
1
+ import type { ComponentMetadata } from '../interfaces/types';
2
+
3
+ export const metadata: ComponentMetadata = {
4
+ component_name: 'TestPadre',
5
+ category: 'Texto',
6
+ name: 'TestPadre',
7
+ description: 'TestPadre',
8
+ framework: 'Astro',
9
+ priority: 1,
10
+ tags: ['texto'],
11
+ fields: [
12
+ {
13
+ name: 'texto',
14
+ type: 'text',
15
+ label: 'Texto',
16
+ mandatory: false,
17
+ example_value: 'Prueba de texto'
18
+ }
19
+ ]
20
+ };
@@ -0,0 +1,27 @@
1
+ import type { ComponentMetadata } from '../interfaces/types';
2
+
3
+ export const metadata: ComponentMetadata = {
4
+ component_name: 'TextBox',
5
+ category: 'Texto',
6
+ name: 'Caja de texto',
7
+ description: 'Caja de texto en Astro',
8
+ framework: 'Astro',
9
+ priority: 1,
10
+ tags: ['texto'],
11
+ fields: [
12
+ {
13
+ name: 'htmlCode',
14
+ type: 'textArea',
15
+ label: 'Código HTML',
16
+ mandatory: false,
17
+ example_value: '<p>Lo que quieras...</p>'
18
+ },
19
+ {
20
+ name: 'addShadow',
21
+ type: 'boolean',
22
+ label: 'Añadir sombra',
23
+ mandatory: false,
24
+ example_value: true
25
+ },
26
+ ]
27
+ };