{post.data.Title}
++ {post.data.SEO?.metaDescription} +
+diff --git a/.gitignore b/.gitignore index 05c42ec..1bdf880 100644 --- a/.gitignore +++ b/.gitignore @@ -9,3 +9,4 @@ package-lock.json .astro/ *.local *.backup +*.draft.* \ No newline at end of file diff --git a/src/components/blocks.content.astro b/src/components/blocks.content.astro new file mode 100644 index 0000000..632a034 --- /dev/null +++ b/src/components/blocks.content.astro @@ -0,0 +1,353 @@ +--- +import { type ContentBlock } from "../types.d"; + +export interface Props { + content?: ContentBlock[]; + className?: string; +} + +const { content, className = "" } = Astro.props; +--- + +{ + content && content.length > 0 && ( +
+ {block.children.map((child) => (
+
+ {child.text}
+
+ )}
+ {child.type === "link" && !child.code && (
+
+ {child.children?.[0]?.text || child.text}
+
+ )}
+ {!child.code &&
+ child.type !== "link" &&
+ (child.bold ? (
+ {child.text}
+ ) : (
+ {child.text}
+ ))}
+
+ {child.text}
+
+ ) : child.type === "link" ? (
+
+ {child.children?.[0]?.text || child.text}
+
+ ) : (
+ {child.text}
+ )}
+
+ {child.text}
+
+ ) : child.type === "link" ? (
+
+ {child.children?.[0]?.text || child.text}
+
+ ) : (
+ {child.text}
+ )}
+
+ {child.text}
+
+ ) : child.type === "link" ? (
+
+ {child.children?.[0]?.text || child.text}
+
+ ) : (
+ {child.text}
+ )}
+
+ {child.text}
+
+ ) : child.type === "link" ? (
+
+ {child.children?.[0]?.text || child.text}
+
+ ) : (
+ {child.text}
+ )}
+
+ {child.text}
+
+ ) : child.type === "link" ? (
+
+ {child.children?.[0]?.text || child.text}
+
+ ) : (
+ {child.text}
+ )}
+
+ {child.text}
+
+ ) : child.type === "link" ? (
+
+ {child.children?.[0]?.text || child.text}
+
+ ) : (
+ {child.text}
+ )}
+
+
+ {block.children
+ .map((child) => (child.code ? child.text : ""))
+ .filter(Boolean)
+ .join("\n")}
+
+
+ ++ )} + + {/* Image blocks */} + {block.type === "image" && block.image?.url && ( ++ {block.children.map((child) => ( +++ {child.code ? ( + + ))} ++ {child.text} ++ ) : child.type === "link" ? ( + + {child.children?.[0]?.text || child.text} + + ) : ( + {child.text} + )} +
{description}
- } - - {(colors) && -{page.SEO.metaDescription}
+ ) : ( ++ Conoce más sobre nosotros y lo que hacemos. +
+ ) + } +{page.SEO.metaDescription}
+ ) + } ++ No hay contenido disponible para esta página. +
+Principios que nos guian
++ Nos apasiona lo que hacemos y se refleja en cada producto y + servicio que ofrecemos. +
++ Actuamos con honestidad y transparencia en todas nuestras + relaciones comerciales. +
++ Buscamos constantemente nuevas formas de mejorar y evolucionar + nuestros servicios. +
++ Estamos aquí para responder cualquier pregunta que puedas tener sobre { + store?.title + }, nuestros productos y servicios. +
+ + + Contáctanos + +Components and blocks for Product Lists
-Cards with full details
-With image grid
- -Product Overviews with image gallery and expandable details
- -With inline actions and expandable sidebar filters
-With color selector, size selector, and details link
- -With large size selector
-Full-width with background image and large content
-With fading background image and testimonials
-Split with order summary
-SWith order summary sidebar
-Simple with avatars
-With summary chart
-With order summary sidebar
-3-column with illustrations and header
-{current.SEO.metaDescription}
++ {post.data.SEO?.metaDescription} +
++ {page?.SEO?.metaDescription} +
++ {articles?.[0]?.data.SEO?.metaDescription} +
++ {post.data.SEO?.metaDescription} +
++ Suscríbete a nuestro boletín y recibe los últimos artículos + directamente en tu inbox +
+Consejos prácticos
+Simples trucos
+Últimas novedades
++ Estamos aquí para ayudarte. No dudes en ponerte en contacto con nosotros +
+
+ 123 Calle Principal
+ Ciudad, País 12345
+
+1 (555) 123-4567
+{store?.settings?.support_email}
+
+ Lun - Vie: 9:00 AM - 6:00 PM
+ Sáb: 10:00 AM - 4:00 PM
+ Dom: Cerrado
+
Quizás encuentres la respuesta a tu pregunta aquí
+{storeDescription}
-- Descubre nuestros artículos más populares -
+Encuentra exactamente lo que buscas
-- Estamos comprometidos a brindar la mejor experiencia de compra -
+{storeDescription}
+{storeDescription}
-+ {product.SEO?.metaDescription} +
++ {page?.SEO?.metaDEscription} +
++ Suscríbete a nuestro boletín y mantente al día con las últimas + novedades +
+