PageSourceSearch

https://go-makkah.com/assets/Dossiers-D7iVmhxC.js

js go-makkah.com collected 2026-09-25 01:33:57 UTC 2,912 bytes, 1 lines download raw bytes

1import{u as h,a as f,r as u,j as e}from"./index-CmUU21-Z.js";import{u as g,C as i}from"./ClientShell-BFqy9J-l.js";import{C as d,f as j}from"./clientUi-DV9eaSuD.js";import{i as v,a as N,s as c}from"./useActiveDossier-K7QWSXK9.js";import"./loyalty-BnFCLfN1.js";/* empty css               */const B=()=>{const{t}=h(),l=f(),{loading:r,bookings:x}=g(),a=(x||[]).filter(s=>v(s)&&!N(s));u.useEffect(()=>{r||a.length===1&&(c(a[0].id),l("/client/dashboard",{replace:!0}))},[r,a.length]);const m=s=>{c(s),l("/client/dashboard")};return r?e.jsx(i,{children:e.jsx("div",{className:"flex min-h-[40vh] items-center justify-center",children:e.jsx("span",{className:"h-9 w-9 animate-spin rounded-full border-[3px] border-ink/15 border-t-red-brand","aria-label":t("client:dossiers.loadingAria")})})}):a.length===0?e.jsx(i,{children:e.jsx("div",{className:"mx-auto max-w-[980px]",children:e.jsxs("div",{className:"grid place-items-center gap-3 rounded-2xl border border-ink/8 bg-cream-100 px-6 py-16 text-center shadow-soft",children:[e.jsx("h2",{className:"font-display text-[18px] text-navy",children:t("client:dossiers.emptyTitle")}),e.jsx("p",{className:"max-w-sm text-[13.5px] text-ink-soft",children:t("client:dossiers.emptyText")})]})})}):e.jsx(i,{children:e.jsxs("div",{className:"mx-auto max-w-[980px] py-2",children:[e.jsx("h1",{className:"mb-1 text-center font-display text-[22px] text-navy sm:text-[26px]",children:a.length>1?t("client:dossiers.foundMany",{count:a.length}):t("client:dossiers.foundOne",{count:a.length})}),e.jsx("p",{className:"mb-6 text-center text-[14px] text-ink-soft",children:t("client:dossiers.selectPrompt")}),e.jsx("div",{className:"grid gap-4 sm:grid-cols-2",children:a.map(s=>{const o=String(s.passengerNames||"").split(",").map(n=>n.trim()).filter(Boolean);return e.jsxs("button",{onClick:()=>m(s.id),className:"group flex flex-col items-start gap-2 rounded-2xl border border-ink/10 bg-white p-5 text-left shadow-soft transition hover:border-navy hover:shadow-lift",children:[e.jsx("span",{className:"rounded-full bg-cream-200 px-2.5 py-1 text-[11px] font-bold uppercase tracking-wide text-navy",children:s.reference}),e.jsx("h2",{className:"font-display text-[17px] leading-snug text-navy",children:s.tripName||t("client:dossiers.tripFallback")}),e.jsxs("p",{className:"flex items-center gap-1.5 text-[13px] font-semibold text-red-brand",children:[e.jsx(d,{name:"cal",className:"h-4 w-4",strokeWidth:2})," ",t("client:dossiers.departurePrefix")," ",j(s.departureDate)]}),o.length>0&&e.jsx("div",{className:"mt-1 space-y-0.5 text-[13px] text-ink-soft",children:o.map((n,p)=>e.jsx("p",{children:n},p))}),e.jsxs("span",{className:"mt-2 inline-flex items-center gap-1 text-[13px] font-semibold text-navy group-hover:underline",children:[t("client:dossiers.manageDossier")," ",e.jsx(d,{name:"chevron",className:"h-4 w-4",strokeWidth:2})]})]},s.id)})})]})})};export{B as Dossiers,B as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.