/* global React, ChamberChrome */ const { useState, useEffect } = React; function Prints({ onBack }) { const cat = window.PRINTS_CATALOGUE || {}; const photos = window.DARSHAN || []; const available = (cat.availableIds || []).map(id => photos.find(p => p.id === id)).filter(Boolean); const [picked, setPicked] = useState(null); useEffect(() => { const onKey = (e) => { if (e.key === "Escape") { picked ? setPicked(null) : onBack(); } }; window.addEventListener("keydown", onKey); return () => window.removeEventListener("keydown", onKey); }, [picked, onBack]); if (picked) { return setPicked(null)} />; } return (

owning a fragment of silence.

twelve photographs are offered as limited, hand-numbered prints on archival cotton-rag. each is signed in archival ink on the reverse, and posted in an acid-free portfolio sleeve.

{/* The note */}

{cat.note}

{/* Paper + size legend */}
कागज़ — papers
    {(cat.papers || []).map(p => (
  • {p.name}{p.pop && {p.pop}} — {p.blurb}
  • ))}
आकार — sizes & editions
    {(cat.sizes || []).map(s => (
  • {s.label} {s.dimension} · {s.edition} ₹{s.priceINR.toLocaleString("en-IN")} · ${s.priceUSD}
  • ))}
डाक — shipping
    {(cat.shipping || []).map(s => (
  • {s.region} {s.time} {s.fee}
  • ))}

— twelve photographs offered —

click any photograph to configure your edition.

{available.map((p, i) => { const cat2 = window.PRINTS_CATALOGUE; const minPrice = Math.min(...(cat2.sizes || []).map(s => s.priceINR)); return ( ); })}

for custom sizes, exhibition enquiries, or to commission a portfolio — write to rahul@darshan.archive

); } function PrintConfigurator({ photo, catalogue, onBack }) { const [size, setSize] = useState(catalogue.sizes[1]); // default medium const [paper, setPaper] = useState(catalogue.papers[0]); // default cotton const [framed, setFramed] = useState(false); const [added, setAdded] = useState(false); const framedSurcharge = framed ? 2400 : 0; const total = size.priceINR + framedSurcharge; return (
{photo.title}
{photo.dev} {photo.title} {photo.place} · {photo.year}
configuring print

{photo.title}

{photo.line}

आकार · size
{catalogue.sizes.map(s => ( ))}
कागज़ · paper
{catalogue.papers.map(p => ( ))}
ढाँचा · framing
{size.label} · {paper.name} ₹{size.priceINR.toLocaleString("en-IN")}
{framed && (
walnut frame ₹2,400
)}
total ₹{total.toLocaleString("en-IN")}
this is a portfolio archive · prints are made to order and posted within seven working days.
for now, "reserve" simply lets the photographer know — he will write to you to confirm.
); } window.Prints = Prints;