fix(map): پاپآپ نقشهٔ اصلی هم فقط گالری را نشان میدهد — بدون تکرار تصویر شاخص و بدون قاب خالی
This commit is contained in:
@@ -73,7 +73,7 @@ export function ProjectsMapAll({
|
||||
{popupHost &&
|
||||
activeProject &&
|
||||
createPortal(
|
||||
<ProjectPopupCard project={activeProject} images={images} onClose={closePopup}>
|
||||
<ProjectPopupCard project={activeProject} images={images} hideImageWhenEmpty onClose={closePopup}>
|
||||
<Link to={projectHref} className={POPUP_PRIMARY_CLASS}>
|
||||
{t('viewProject')}
|
||||
<MdArrowBack className="h-4 w-4" aria-hidden="true" />
|
||||
|
||||
@@ -87,15 +87,14 @@ export function Projects() {
|
||||
return dbMatch ? `/projects/${dbMatch.slug}` : undefined;
|
||||
};
|
||||
|
||||
// تصاویر پاپآپ نقشه — تصویر شاخص + گالری پروژهٔ متناظر در دیتابیس؛
|
||||
// پروژهٔ بدون تصویر یا بدون متناظر، جاینگهدار میگیرد.
|
||||
// تصاویر پاپآپ نقشه — فقط گالری پروژهٔ متناظر (تصویر شاخص در کارتهای فهرست
|
||||
// و صفحهٔ پروژه دیده میشود و اینجا تکرار نمیشود)؛ نبود گالری → قاب تصویر پنهان.
|
||||
const imagesFor = (mapProject: MapProject): string[] => {
|
||||
const dbMatch = dbProjects.find(
|
||||
(p) => p.title === mapProject.name || p.title_en === mapProject.name,
|
||||
);
|
||||
if (!dbMatch) return [];
|
||||
const gallery = Array.isArray(dbMatch.gallery) ? dbMatch.gallery : [];
|
||||
return [dbMatch.image, ...gallery].filter((src): src is string => !!src);
|
||||
if (!dbMatch || !Array.isArray(dbMatch.gallery)) return [];
|
||||
return dbMatch.gallery.filter((src): src is string => !!src);
|
||||
};
|
||||
|
||||
return (
|
||||
|
||||
Reference in New Issue
Block a user