/* Ayyam Gallery — pages + App shell. */ const { GALLERY_ARTISTS: GA, EXHIBITED_ARTISTS: EA, WORKS: WK, EXHIBITIONS: EX, PUBLICATIONS: PUB, FAIRS: FR, PRESS: PR, ARTIST_BIOS: BIOS } = window.AYYAM_DATA; const { useState: uS, useEffect: uE, useMemo: uM } = React; /* ---------- HOME ---------- */ function HomePage({ locale, setRoute, openEnquiryFor, openDossier }) { const t = window.L[locale]; const current = EX.find(e => e.state === "current"); const featured = WK.filter(w => w.featured); return ( <> {/* Hero */}
{t.current} — {current.dates}

{locale==="en" ? <>The Eye:
An Aperture
Into the Soul.
: <>العين:
منفذٌ إلى الروح.}

{locale==="en" ? <>A new exhibition of acrylics by Safwan Dahoul, continuing his decades-long Dream cycle — a sustained meditation on memory, exile and waiting. : <>معرض جديد لأعمال أكريليك للفنان صفوان داحول، يواصل سلسلته «حلم» الممتدة منذ عقود — تأمّل طويل في الذاكرة والمنفى والانتظار.}

{t.workOnView}. Safwan Dahoul, Dream 284, 2025. Acrylic on canvas, 200 × 220 cm.
© the artist. Courtesy Ayyam Gallery. [Rights pending]
Safwan Dahoul, Dream 284, 2025
Safwan Dahoul Dream 284, 2025 · 200 × 220 cm
© rights pending

{/* Now Showing / Exhibitions teaser */}
{locale==="en"?"Programme":"البرنامج"}

{locale==="en"?<>Currently & forthcoming.:"المعارض الحالية والقادمة"}

{EX.filter(e => e.state !== "past").concat(EX.filter(e=>e.state==="past").slice(0,1)).slice(0,3).map(e => ( openExhibition(e.id)} /> ))}
{/* Gallery space band */}
Ayyam Gallery — Alserkal Avenue, Dubai
{locale==="en"?"The space":"المكان"}

{locale==="en" ? <>A white-cube hall
in Alserkal Avenue. : "قاعة عرض في العسكر أفينيو."}

{locale==="en" ? "B11 has been our permanent home since the gallery's move to Dubai's Alserkal Avenue arts district. The hall's curved white walls were built to give long-format paintings, sculpture and video installations the slow walk they need." : "B11 هو مقرنا الدائم منذ انتقال الغاليري إلى حيّ الفنون في العسكر أفينيو بدبي. صُمّمت الجدران البيضاء المنحنية لإتاحة المشاهدة الهادئة للوحات الكبيرة والمنحوتات والفيديو."}

{locale==="en" ? <>Open Mon–Fri 10:00–19:00, Sat 12:00–18:00. Closed Sunday. : <>المواعيد الإثنين–الجمعة 10:00–19:00، السبت 12:00–18:00. مغلق الأحد.}

{/* Featured works */}
{locale==="en"?"Selected works":"أعمال مختارة"}

{locale==="en"?<>From the programme.:"من البرنامج."}

{featured.map(w => ( openEnquiryFor({kind:"work", work:w})} /> ))}
{/* Publications teaser */}
{locale==="en"?"A differentiator":"السمة المميزة"}

{locale==="en" ? <>Publications.
The gallery as a press. : <>المنشورات.
الغاليري دار نشر.}

{locale==="en" ? "Since 2007 the gallery has run an active publishing programme — monographs, catalogues and essay collections for artists working under custodianship and through the wider Middle Eastern scene. Recent titles include the Dahoul, Azzam and Halaby monographs." : "منذ عام 2007، يدير الغاليري برنامج نشر فعّالاً يضم كتباً مخصصة، وكتالوغات، ومجموعات مقالات لفنانين من المشهد العربي الأوسع. من أحدث الإصدارات: داحول، عزّام، وحلبي."}

{PUB.slice(0,4).map((p, i) => (
{p.kind}

{p.title}

{p.year} · {p.pages}pp
))}
); function openExhibition(id) { setRoute("exhibition:" + id); } } /* ---------- EXHIBITIONS ---------- */ function ExhibitionsPage({ locale, setRoute }) { const t = window.L[locale]; const groups = [ { state:"current", label: t.current, items: EX.filter(e=>e.state==="current") }, { state:"upcoming", label: t.upcoming, items: EX.filter(e=>e.state==="upcoming") }, { state:"past", label: t.past, items: EX.filter(e=>e.state==="past") }, ]; return (
{locale==="en"?"Programme":"البرنامج"}

{t.nav[0]}.

{groups.map(g => (

{g.label}

{g.items.length}
{g.items.length === 0 ?
{locale==="en"?"To be announced. Confirmed listings will appear here.":"سيُعلن قريباً. ستظهر القوائم المؤكدة هنا."}
:
{g.items.map(e => ( setRoute("exhibition:" + e.id)} /> ))}
}
))}
); } /* ---------- Exhibition detail ---------- */ function ExhibitionDetailPage({ id, locale, setRoute, openEnquiryFor }) { const t = window.L[locale]; const ex = EX.find(e => e.id === id); if (!ex) return null; const works = ex.works.map(wid => WK.find(w => w.id === wid)).filter(Boolean); const stateLabel = ex.state === "current" ? t.current : ex.state === "upcoming" ? t.upcoming : t.past; return (
{stateLabel} — {ex.dates}

{ex.title}

{ex.artist}
{ex.title}
{locale==="en"?"Essay":"مقالة"}

{ex.blurb}

{ex.install && ex.install.length > 0 && (
{locale==="en"?"Install views":"مشاهد التركيب"}
{ex.install.map((src, i) => (
{`Install
))}
{locale==="en"?"Install views — Ayyam Gallery, Alserkal Avenue.":"مشاهد التركيب — غاليري أيام، العسكر أفينيو."} [Rights pending]
)}
{locale==="en"?"Works":"الأعمال"}

{works.length} {locale==="en" ? (works.length===1?"work":"works") : "أعمال"}

{works.map(w => ( openEnquiryFor({kind:"work", work:w})} /> ))}
); } /* ---------- ARTISTS ---------- */ function ArtistsPage({ locale, openDossier }) { const t = window.L[locale]; return (
{locale==="en"?"Roster":"السجل"}

{t.nav[1]}.

{locale==="en"?"Gallery artists & artists exhibited":"فنانو الغاليري والفنانون الذين عُرضوا"}

{t.galleryArtists}

{GA.length} {locale==="en"?"Represented programme":"البرنامج المُمَثَّل"}
{GA.map(name => openDossier(name)} />)}

{t.exhibitedArtists}

{EA.length} {locale==="en"?"Past exhibitions / projects":"معارض سابقة / مشاريع"}
{EA.map(name => openDossier(name)} />)}
); } /* ---------- PUBLICATIONS ---------- */ function PublicationsPage({ locale, openEnquiryFor }) { const t = window.L[locale]; return (
{locale==="en"?"A differentiator":"السمة المميزة"}

{t.nav[2]}.

{locale==="en" ? "The gallery has run an active publishing arm since 2007. Monographs, exhibition catalogues and essay collections are produced for artists in the programme and for the wider Middle Eastern scene — many under custodianship of an estate. Titles are available by request; selected publications ship internationally." : "يدير الغاليري ذراعاً نشطاً للنشر منذ عام 2007. تُنتَج كتب مخصّصة وكتالوغات معارض ومجموعات مقالات لفنانين من البرنامج ومن المشهد العربي الأوسع — كثير منها بإدارة عهدة الأرشيف الفني. الإصدارات متاحة عند الطلب."}

{PUB.map(p => (
openEnquiryFor({kind:"catalogue"})}>
{p.kind}

{p.title}

{p.year} · {p.pages}pp
{p.notes.split(". ")[0]}. {locale==="en"?"Request":"اطلب"}
))}
{locale==="en"?"Cover images flagged for client supply. Production stewardship — Ayyam Gallery, Alserkal Avenue, Dubai.":"صور الأغلفة قيد الطلب من العميل. الإشراف على الإنتاج — غاليري أيام، العسكر أفينيو، دبي."}
); } /* ---------- VIEWING ROOMS ---------- */ function ViewingRoomsPage({ locale, openEnquiryFor }) { const t = window.L[locale]; const rooms = [ { id:"dahoul", title: locale==="en"?"Safwan Dahoul — The Dream Cycle":"صفوان داحول — سلسلة الحلم", img: "media/artwork-safwan-dahoul-dream184.webp", count:6, blurb: locale==="en"?"A private selection of recent and historic Dream paintings, available for placement under POA. Includes the current exhibition's Dream 284.":"مجموعة خاصة من أعمال «حلم» الحديثة والتاريخية، متاحة للحجز بالسعر عند الطلب." }, { id:"abstraction", title: locale==="en"?"Geometries — Halaby, Murad, Kaaf":"هندسات — حلبي، مراد، كعّاف", img:"media/artwork-samia-halaby-milk.webp", count:9, blurb: locale==="en"?"A reading of geometric abstraction across three of the gallery's longest-held painters.":"قراءة في التجريد الهندسي عبر ثلاثة من أطول رسامي الغاليري حضوراً." }, { id:"paper", title: locale==="en"?"Paper / Place — Tammam Azzam":"ورق / مكان — تمّام عزّام", img:"media/artwork-tammam-azzam-place-paper.webp", count:5, blurb: locale==="en"?"A focused viewing room on Azzam's collaged cities — a preview of the autumn exhibition.":"غرفة عرض مركّزة على مدن عزّام المُكَوَّلَجَة — معاينة لمعرض الخريف." }, { id:"figures", title: locale==="en"?"On the Figure":"عن الجسد", img:"media/artwork-sadik-alfraji-soaring-body.webp", count:7, blurb: locale==="en"?"Alfraji, Jaber, Salman, Pirhashemi — a survey of the figure across painting and ink.":"الفرجي، جبر، سلمان، بير هاشمي — استعراض للجسد في الرسم والحبر." } ]; return (
{locale==="en"?"By appointment":"بموعد مسبق"}

{t.nav[3]}.

{locale==="en" ? "Curated online viewing rooms group available works by theme. All works are priced on application; private viewings can be arranged at B11, Alserkal Avenue, or by appointment in your city." : "غرف العرض الإلكترونية تُجمع الأعمال المتاحة حسب الموضوع. جميع الأسعار عند الطلب؛ يمكن ترتيب جلسات خاصة في B11 العسكر أفينيو، أو في مدينتك بموعد مسبق."}

{rooms.map(r => (
{r.title}
{r.count} {locale==="en"?"works · POA":"أعمال · السعر عند الطلب"}

{r.title}

{r.blurb}

))}
); } /* ---------- ART FAIRS ---------- */ function FairsPage({ locale, openEnquiryFor }) { const t = window.L[locale]; return (
{locale==="en"?"International programme":"البرنامج الدولي"}

{t.nav[4]}.

{FR.map(f => (
{f.state === "upcoming" ? t.upcoming : t.past}
{f.name}
{f.dates}
{f.booth && f.booth !== "—" &&
{f.booth}
}
{f.artists.length > 0 ? (locale==="en"?"With ":"مع: ") + f.artists.join(" · ") : (locale==="en" ? "Programme to be announced." : "البرنامج سيُعلن قريباً.")}
))}
); } /* ---------- PRESS ---------- */ function PressPage({ locale }) { const t = window.L[locale]; return (
{locale==="en"?"Selected references":"مراجع مختارة"}

{t.nav[5]}.

{locale==="en" ? "Institutional reach below is attributed as the gallery's own About claim, not an independent endorsement. The live Selected Press archive (articles + assets) will be supplied by the gallery." : "تُنسب المراجع المؤسسية أدناه إلى نصّ «حول» الخاص بالغاليري، وليست تأييداً مستقلاً. سيُزوَّد أرشيف الصحافة المختارة (المقالات والأصول) من قِبَل الغاليري."}

{PR.map(p => (
{p.outlet}
{p.note}
{p.year}
))}
); } /* ---------- ABOUT ---------- */ function AboutPage({ locale, setRoute }) { const t = window.L[locale]; return (
{locale==="en"?"The story":"الحكاية"}

{t.nav[6]}.

{locale==="en" ? <>Damascus, 2006 →
Dubai, today. : <>دمشق 2006 →
دبي اليوم.}

{locale==="en" ? <>Ayyam Gallery was founded in Damascus in 2006 by Khaled and Jouhayna Samawi at a moment when Syrian and broader Middle Eastern contemporary art was building its first sustained international audiences. : <>تأسس غاليري أيام في دمشق عام 2006 على يد خالد وجوهينا سماوي في لحظة كان فيها الفن السوري والشرق أوسطي المعاصر يبني جمهوره الدولي الأول.}

{locale==="en" ? <>After expansions to and from London, Jeddah, DIFC and Beirut, the gallery's permanent home is now B11 at Alserkal Avenue, Dubai. Those past spaces remain part of the gallery's story; they are not current public venues. : "بعد توسعات شملت لندن وجدّة ومركز دبي المالي العالمي وبيروت، أصبح المقر الدائم الآن B11 في العسكر أفينيو، دبي. تظل تلك المواقع السابقة جزءاً من حكاية الغاليري، لا مساحات عامة حالية."}

{locale==="en" ? "Alongside its commercial programme the gallery runs Shabab Ayyam, an emerging-artist platform; a publishing arm; custodianship and estates work; education and charity-auction activity. Its About text cites placements and loans with institutions including Institut du Monde Arabe, LACMA, Centre Pompidou and The British Museum — attributed as the gallery's own claim." : "إلى جانب البرنامج التجاري، يدير الغاليري «شباب أيام» منصة الفنانين الناشئين، وذراع نشر، وعمل عهدة وأرشيف، ونشاطات تعليمية ومزادات خيرية."}

{[ {h: locale==="en"?"Shabab Ayyam":"شباب أيام", p: locale==="en"?"An emerging-artist platform supporting first solo shows, commissions and studio support.":"منصة تدعم الفنانين الناشئين بمعارضهم الفردية الأولى والإقامات الفنية."}, {h: locale==="en"?"Custodianship":"العهدة الفنية", p: locale==="en"?"Long-term stewardship of selected estates, archives and unpublished work.":"إشراف طويل الأمد على عهد فنية مختارة وأرشيفاتها وأعمالها غير المنشورة."}, {h: locale==="en"?"Publishing":"النشر", p: locale==="en"?"Monographs, catalogues and essay collections produced in-house since 2007.":"كتب مخصصة وكتالوغات ومقالات تُنتج داخل الغاليري منذ 2007."}, {h: locale==="en"?"Education / charity":"التعليم والمزادات الخيرية", p: locale==="en"?"Charity auctions and education partnerships across the region.":"مزادات خيرية وشراكات تعليمية في المنطقة."} ].map((c, i) => (

{c.h}

{c.p}

))}
); } /* ---------- VISIT ---------- */ function VisitPage({ locale, openEnquiryFor }) { const t = window.L[locale]; return (
{locale==="en"?"Alserkal Avenue · Dubai":"العسكر أفينيو · دبي"}

{t.nav[7]}.

{t.address}
B11, Alserkal Avenue
Street 8, Al Quoz Industrial 1
Dubai, U.A.E. — P.O. Box 283174
{t.hours}
{locale==="en"?<>Mon–Fri · 10:00–19:00
Sat · 12:00–18:00
Sun · Closed:<>الإثنين–الجمعة · 10:00–19:00
السبت · 12:00–18:00
الأحد · مغلق}
{t.contact}
+971 4 323 6242
info@ayyamgallery.com
{locale==="en"?"Fax · +971 4 323 6243":"فاكس · +971 4 323 6243"}
{locale==="en"?"Getting here":"كيفية الوصول"}
{locale==="en" ? "Alserkal Avenue is a 15-minute drive from Dubai Marina and 25 minutes from DXB. The nearest metro is Noor Bank (red line). Paid parking on Street 8." : "العسكر أفينيو على بُعد 15 دقيقة من دبي مارينا و25 دقيقة من مطار دبي. أقرب محطة مترو: نور بنك (الخط الأحمر). موقف سيارات مدفوع في الشارع 8."}
{locale==="en"?"Schematic map. Geo verified to official Google Place link.":"خريطة تخطيطية. الإحداثيات مأخوذة من رابط Google Place الرسمي."}
); } Object.assign(window, { HomePage, ExhibitionsPage, ExhibitionDetailPage, ArtistsPage, PublicationsPage, ViewingRoomsPage, FairsPage, PressPage, AboutPage, VisitPage }); /* ====================== APP SHELL ====================== */ function App() { const T = window.AYYAM_TWEAKS; const tweaks = window.useTweaks(T); const t = tweaks[0]; const setTweak = tweaks[1]; const [route, setRoute] = uS("home"); const [dossierArtist, setDossierArtist] = uS(null); const [enquiry, setEnquiry] = uS({ open:false, kind:"general", work:null }); const locale = t.locale || "en"; const accent = t.accent || "#9A6A3C"; const density = t.density || "comfortable"; // Apply tweaks to root uE(() => { document.documentElement.style.setProperty("--accent", accent); document.documentElement.style.setProperty("--accent-ink", shade(accent, -0.18)); document.documentElement.style.setProperty("--focus", accent); document.documentElement.style.setProperty("--pad-y", density === "tight" ? "clamp(40px, 5vw, 80px)" : density === "airy" ? "clamp(96px, 11vw, 160px)" : "clamp(64px, 8vw, 120px)"); document.documentElement.lang = locale; document.documentElement.dir = locale === "ar" ? "rtl" : "ltr"; }, [accent, density, locale]); // Scroll top on route change uE(() => { window.scrollTo({top:0, behavior:"instant"}); }, [route]); function openDossier(name) { setDossierArtist(name); } function openEnquiryFor({ kind, work }) { setEnquiry({ open:true, kind: kind||"general", work: work||null }); } function closeEnquiry() { setEnquiry(e => ({ ...e, open:false })); } // Routes let page = null; if (route === "home") page = ; else if (route === "exhibitions") page = ; else if (route.startsWith("exhibition:")) page = ; else if (route === "artists") page = ; else if (route === "publications") page = ; else if (route === "viewing-rooms") page = ; else if (route === "art-fairs") page = ; else if (route === "press") page = ; else if (route === "about") page = ; else if (route === "visit") page = ; return ( <> setTweak("locale", v)} openEnquiry={() => openEnquiryFor({kind:"general"})} />
{page}