Polish storefront SEO, specials, and homepage UX.
Publish Meshkee sitemap-config, map product-source specials without variants, restore hero autoplay, and tighten page heroes, product images, and section order. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
co-authored by
Cursor
parent
11d0ba64ed
commit
24b5649abd
@@ -2,7 +2,6 @@ import { Container } from "@/components/Container";
|
||||
import { Placeholder } from "@/components/Placeholder";
|
||||
import { SlotLink } from "@/components/SlotLink";
|
||||
import { glossyBar } from "@/lib/glossy";
|
||||
import { parseAspectRatio } from "@/lib/static-images";
|
||||
import type { SlotMediaItem } from "@/lib/static-images";
|
||||
|
||||
const fallbackCopy = {
|
||||
@@ -11,37 +10,32 @@ const fallbackCopy = {
|
||||
href: "/contact",
|
||||
};
|
||||
|
||||
export function WideBanner({ image, aspectRatio }: { image?: SlotMediaItem; aspectRatio?: string }) {
|
||||
export function WideBanner({ image }: { image?: SlotMediaItem; aspectRatio?: string }) {
|
||||
const src = image?.image ?? "/images/banners/wide.jpg";
|
||||
const href = image?.href || fallbackCopy.href;
|
||||
const ratio = parseAspectRatio(aspectRatio);
|
||||
|
||||
return (
|
||||
<section
|
||||
className={`relative overflow-hidden ${ratio ? "min-h-[280px]" : "h-[280px] sm:h-[360px]"}`}
|
||||
style={ratio ? { aspectRatio: ratio } : undefined}
|
||||
>
|
||||
<section className="relative h-[160px] overflow-hidden bg-ink sm:h-[200px]">
|
||||
<SlotLink href={href} className="absolute inset-0">
|
||||
<Placeholder
|
||||
src={src}
|
||||
fallbackSrc={image?.fallbackSrc ?? "/images/banners/wide.jpg"}
|
||||
alt=""
|
||||
alt={image?.title || fallbackCopy.title}
|
||||
className="h-full w-full object-cover"
|
||||
/>
|
||||
<span className="absolute inset-0 bg-ink/20" />
|
||||
</SlotLink>
|
||||
<Container className="relative flex h-full items-center">
|
||||
<div className="max-w-xl rounded-2xl px-8 py-7" style={glossyBar}>
|
||||
<div className="max-w-xl rounded-2xl px-6 py-4 sm:px-8 sm:py-5" style={glossyBar}>
|
||||
<p className="font-latin text-[10px] font-bold tracking-[0.32em] text-white/60 uppercase">
|
||||
{image?.kicker || fallbackCopy.kicker}
|
||||
</p>
|
||||
<p className="mt-3 text-[22px] font-bold leading-9 text-white sm:text-[26px]">
|
||||
<p className="mt-1.5 line-clamp-2 text-[18px] font-bold leading-7 text-white sm:text-[22px]">
|
||||
{image?.title || fallbackCopy.title}
|
||||
</p>
|
||||
{image?.text ? <p className="mt-2 text-[14px] leading-7 text-white/75">{image.text}</p> : null}
|
||||
<SlotLink
|
||||
href={href}
|
||||
className="mt-5 inline-flex rounded-xl bg-brand px-6 py-3 text-[14px] font-medium text-white hover:bg-brand-dark"
|
||||
className="mt-3 inline-flex rounded-xl bg-brand px-5 py-2.5 text-[13px] font-medium text-white hover:bg-brand-dark"
|
||||
>
|
||||
تماس با ما
|
||||
</SlotLink>
|
||||
|
||||
Reference in New Issue
Block a user