Show real titleFa captions, 3x logo size, fix category hover border
- CategoryCarousel: caption under each circle now comes from the slot image's own titleFa (as the business typed it) instead of the resolved category's API name - identity resolution via linkUrl slug is still used for the href, just not for the visible label - Replace the hover ring (box-shadow) with a real 1px border - the ring rendered oddly against Swiper's transformed slide track, looking like it "leaked" into the row above; a border participates in normal box layout and doesn't have that problem (border-box sizing means zero layout shift) - Header/footer logo: h-9 (36px) -> h-[108px], 3x on request; header row height bumped to fit. Note: the currently-uploaded (wrong-business) logo has a lot of baked-in padding, so it still reads small even at 3x - that's the asset, not the sizing - Re-verified the static-image-slot wiring end to end against the original spec (url->img, linkUrl->href, aspectRatio from API, placeholder on empty/fail) - all still holds Also add a Deployment section to AGENTS.md: this repo's whole point is CI/CD from origin/main, and local commits sitting unpushed (as 3 commits were, until now) look indistinguishable from unfixed bugs to whoever is testing the deployed site. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 5
parent
2249a07dee
commit
0ffbd953b3
@@ -58,6 +58,10 @@ Fonts: IRANYekan (fa, local `public/fonts`) + Montserrat (latin, next/font).
|
||||
mark, not موبایل معلم) — the wiring is correct and will pick up the right
|
||||
asset automatically the moment it's replaced in the dashboard; don't
|
||||
"fix" this by hardcoding the local fallback again.
|
||||
- Header/footer logo renders at `h-[108px]` (3x the original `h-9`/36px, on
|
||||
request). If the wrong logo above still looks small at that size, it's
|
||||
because that specific PNG has a lot of baked-in transparent padding around
|
||||
the mark — `object-contain` can't fix that, only the replacement asset can.
|
||||
- Contact data (phone, mobile, branch addresses, Instagram/Telegram) in
|
||||
`src/data/site.ts` is real, pulled from the live theme's footer — `GET
|
||||
/website/business-info` still returns empty `phoneNumbers`/`addresses`/
|
||||
@@ -142,10 +146,21 @@ business's upload order lines up with this site's category sort order. It
|
||||
doesn't, and there's no contract that it ever would — live data showed a
|
||||
laptop photo (`linkUrl` correctly said `?category=laptop`) landing on
|
||||
"موبایل" and "لوازم برقی" appearing with no photo uploaded for it at all,
|
||||
purely because of where it fell in the array. `titleFa` isn't reliable
|
||||
either — the same laptop image was titled "تبلت" (stale/copy-pasted text),
|
||||
contradicting its own `linkUrl`. The `linkUrl` query param was the one field
|
||||
that matched the actual photo content every time it was checked.
|
||||
purely because of where it fell in the array. The visible caption under each
|
||||
circle is that image's own `titleFa`, taken as typed — even on the one
|
||||
sample where it disagreed with the photo (that same laptop image was titled
|
||||
"تبلت"), it's still the business's own editorial text for the tile, and the
|
||||
`href` (built from the `linkUrl` slug, resolved to this site's own canonical
|
||||
`/products/category/{id}/{slug}` rather than linking off-site to the literal
|
||||
`linkUrl`) is what actually has to be correct for navigation to work.
|
||||
|
||||
**Category circle hover:** use a real `border` (1px, transparent → `border-brand`
|
||||
on `group-hover`), not a `ring`/box-shadow. A ring rendered inside a Swiper
|
||||
slide painted like it was "leaking" into the row above — box-shadow doesn't
|
||||
participate in normal layout the way a border does, and interacts oddly with
|
||||
Swiper's transformed `.swiper-wrapper` track. `border` with this site's
|
||||
global `box-sizing: border-box` reset adds zero layout shift, so it's the
|
||||
safer default for any future hover-outline effect inside a carousel.
|
||||
|
||||
Homepage banner placement (mirrors the logilook.com reference given for this
|
||||
layout): hero → categories → hot deals → **three-banner-bg** → موبایل
|
||||
@@ -222,3 +237,14 @@ npm run dev # localhost:3000
|
||||
npm run build
|
||||
node scripts/gen-category-placeholders.mjs # refresh category thumb placeholders
|
||||
```
|
||||
|
||||
## Deployment
|
||||
|
||||
`origin` is `gitea.meshkee.com/meshkee-websites/moalem-shop.git`, `main` branch.
|
||||
Whatever serves the business's preview/live URL deploys from `origin/main` —
|
||||
**committing locally is not enough**, push too. A whole session's worth of
|
||||
work (2026-09-06: about/contact/installments pages, the category-slot
|
||||
identity fix, live logo/favicon wiring) once sat 3 commits ahead of
|
||||
`origin/main` unpushed, and the business reported bugs that were already
|
||||
fixed locally — they were looking at the old deployed code. Check
|
||||
`git status` for "ahead of origin" before telling anyone a fix is live.
|
||||
|
||||
Reference in New Issue
Block a user