PageSourceSearch

https://bluerevolution-cc.manus.space/assets/EventReview-5jDHry_h.js

js bluerevolution-cc.manus.space collected 2026-10-03 05:02:15 UTC 41,563 bytes, 59 lines download raw bytes

1import{j as e}from"./editor-BhGk7_S1.js";import{b as x}from"./leaflet-DcfcX7a_.js";import{c as fe,u as ye,b as f,t as E,a as $,n as Se}from"./index-BjIHAQhU.js";import{u as Ce}from"./useAuth-D2-kN8CV.js";import{B as y}from"./button-CK76V7Lo.js";import{D as O,a as B,b as U,c as z,d as q,e as Q}from"./dialog-DDbhAKMR.js";import{T as ie}from"./textarea-C8AkMAaz.js";import{I as le}from"./input-BtSXPsMX.js";import{B as ne}from"./badge-DrwiIgVf.js";import{M as $e}from"./Map-DXYZzeuq.js";import{C as ce}from"./chevron-left-rvLUTF53.js";import{R as _}from"./refresh-cw-A4TQI-r2.js";import{S as re}from"./square-check-big-BIB5RFtL.js";import{C as oe}from"./chevron-right-DDkBVPVM.js";import{C as ke}from"./calendar-DWvkJ5SF.js";import{M as A}from"./map-pin-Cg1SEPDo.js";import{U as Ie}from"./users-CXg3PGFq.js";import{C as Te}from"./chevron-down-BC8hO1vL.js";import{M as Z}from"./mail-Ds9fVSLJ.js";import{M as de}from"./message-circle-CjX-dlJo.js";import{S as X}from"./square-pen-syxzeoxO.js";import{T as Le}from"./trash-2-D_KuvKG4.js";import{E as Me}from"./eye-DdF-53Ak.js";import{X as De}from"./x-rm1_-8OE.js";import{C as Pe}from"./check-DFqoFjW9.js";import{C as Fe}from"./copy-XdjMT1NJ.js";import"./mapbox-BPFQ-Sfv.js";import"./trpc-DqtxhgQo.js";import"./index-CmmlU_cv.js";/**
2 * @license lucide-react v0.453.0 - ISC
3 *
4 * This source code is licensed under the ISC license.
5 * See the LICENSE file in the root directory of this source tree.
6 */const Ae=fe("Square",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]]),Oe=["jan.","fév.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc."];function J(t){if(!t)return"—";const o=(typeof t=="string"?t:t.toISOString()).substring(0,10).split("-"),a=o[0],l=parseInt(o[1],10)-1;return`${parseInt(o[2],10)} ${Oe[l]??""} ${a}`}const Y="https://bluerevolution-cc.manus.space/participate",xe="https://www.onehome.org/blue-revolution?event=";function Be(t,s,o,a){const l=(t.creatorFirstName||"").trim(),p=l?` ${l}`:"";[t.creatorFirstName,t.creatorLastName].filter(Boolean).join(" ");const v=t.title||"",i=J(t.eventDate),c=[t.locationLabel,t.country].filter(Boolean).join(", ")||"—",d=t.country||"",m=t.slug?`${xe}${t.slug}`:null,g=o?`
7
8Vous pouvez également inviter d'autres personnes à participer à la Révolution Bleue en partageant cette page traduite en 14 langues : ${Y}`:"",u=o?`
9
10You can also invite others to join the Blue Revolution by sharing this page, available in 14 languages: ${Y}`:"",w=o?`
11
12También puede invitar a otras personas a unirse a la Revolución Azul compartiendo esta página disponible en 14 idiomas: ${Y}`:"",b=a?" À quand le prochain ? 😊":"",r=a?" When is the next one? 😊":"",h=a?" ¿Cuándo será el próximo? 😊":"",S=`https://bluerevolution-cc.manus.space/explore?event=${t.sanityId}&lang=fr`,j=`https://bluerevolution-cc.manus.space/explore?event=${t.sanityId}&lang=en`,M=m?`
13
14Votre événement est désormais visible sur la carte de la Révolution Bleue : ${m}
15Vous pouvez aussi le retrouver directement ici : ${S}`:`
16
17Vous pouvez retrouver votre événement directement ici : ${S}`,R=m?`
18
19Your event is now visible on the Blue Revolution map: ${m}
20You can also find it directly here: ${j}`:`
21
22You can find your event directly here: ${j}`,C=m?`
23
24Su evento ya es visible en el mapa de la Revolución Azul: ${m}
25También puede encontrarlo directamente aquí: ${j}`:`
26
27Puede encontrar su evento directamente aquí: ${j}`;return s==="fr"?{subject:`Merci pour votre projection en ${d} - ${v||"OneHome"}`,body:`Bonjour${p},
28
29Merci pour votre événement "${v}" organisé le ${i} à ${c}.
30
31Nous avons bien reçu votre rapport de projection et nous vous en remercions chaleureusement.${M}
32
33Votre engagement pour la Révolution Bleue est précieux.${b}${g}
34
35Cordialement,
36L'équipe OneHome`}:s==="en"?{subject:`Thank you for your screening in ${d} - ${v||"OneHome"}`,body:`Hello${p},
37
38Thank you for your event "${v}" organized on ${i} in ${c}.
39
40We have received your screening report and we warmly thank you for it.${R}
41
42Your commitment to the Blue Revolution is invaluable.${r}${u}
43
44Best regards,
45The OneHome Team`}:{subject:`Gracias por su proyección en ${d} - ${v||"OneHome"}`,body:`Hola${p},
46
47Gracias por su evento "${v}" organizado el ${i} en ${c}.
48
49Hemos recibido su informe de proyección y le agradecemos calurosamente.${C}
50
51Su compromiso con la Revolución Azul es invaluable.${h}${w}
52
53Atentamente,
54El equipo OneHome`}}function Ue(t,s){const o=t.countryIso2;if(o)try{const a=s==="fr"?"fr-FR":s==="es"?"es-ES":"en-US",p=new Intl.DisplayNames([a],{type:"region"}).of(o.toUpperCase());if(p)return p}catch{}return t.country||"..."}function ze(t){return t.toUpperCase().split("").map(s=>String.fromCodePoint(127397+s.charCodeAt(0))).join("")}function qe(t,s){const o=[t.creatorFirstName,t.creatorLastName].filter(
54Boolean).join(" ")||"...",a=t.title||"...",l=Ue(t,s),p=t.countryIso2?ze(t.countryIso2)+" ":"",v=(()=>{const h=t.eventDate;return h?J(h):"—"})(),i=t.audience?`${t.audience} personnes`:null,c=t.audience?`${t.audience} people`:null,d=t.audience?`${t.audience} personas`:null,m=t.organization||null,g=m?` + ${m}`:"",u=t.slug?`${xe}${t.slug}`:null,w=`https://bluerevolution-cc.manus.space/explore?event=${t.sanityId}`,b=u?`
55${u}
56${w}`:`
57${w}`,r=t.description?`
58
59${t.description.trim()}`:"";if(s==="fr"){const h=[`${p}Nouvelle projection en ${l} : "${a}" organisée par ${o}${g} le ${v}`];return i&&h.push(`avec ${i}`),h.join(" ")+b+r}else if(s==="en"){const h=[`${p}New screening in ${l}: "${a}" organized by ${o}${g} on ${v}`];return c&&h.push(`with ${c}`),h.join(" ")+b+r}else{const h=[`${p}Nueva proyección en ${l}: "${a}" organizada por ${o}${g} el ${v}`];return d&&h.push(`con ${d}`),h.join(" ")+b+r}}function Qe({event:t,onClose:s}){const o=t.lat!=null&&t.lng!=null;return e.jsx(O,{"data-loc":"client/src/pages/EventReview.tsx:235",open:!0,onOpenChange:s,children:e.jsxs(B,{"data-loc":"client/src/pages/EventReview.tsx:236",className:"bg-card border-border max-w-2xl",children:[e.jsxs(U,{"data-loc":"client/src/pages/EventReview.tsx:237",children:[e.jsxs(z,{"data-loc":"client/src/pages/EventReview.tsx:238",className:"flex items-center gap-2",children:[e.jsx(A,{"data-loc":"client/src/pages/EventReview.tsx:239",className:"w-4 h-4 text-primary"}),t.title||"Location"]}),e.jsxs(q,{"data-loc":"client/src/pages/EventReview.tsx:242",className:"text-white/50 text-sm",children:[t.locationLabel&&e.jsxs("span",{"data-loc":"client/src/pages/EventReview.tsx:243",children:[t.locationLabel," · "]}),t.country,o&&e.jsxs("span",{"data-loc":"client/src/pages/EventReview.tsx:245",className:"ml-2 text-white/30 text-xs font-mono",children:[t.lat?.toFixed(4),", ",t.lng?.toFixed(4)]})]})]}),o?e.jsx("div",{"data-loc":"client/src/pages/EventReview.tsx:249",className:"h-80 rounded-lg overflow-hidden border border-white/10",children:e.jsx($e,{"data-loc":"client/src/pages/EventReview.tsx:250",onMapReady:a=>{const l={lat:t.lat,lng:t.lng};a.setCenter(l),a.setZoom(12),new google.maps.Marker({position:l,map:a,title:t.title||""})}})}):e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:260",className:"h-40 flex items-center justify-center text-white/40 text-sm",children:[e.jsx(A,{"data-loc":"client/src/pages/EventReview.tsx:261",className:"w-5 h-5 mr-2"}),"No GPS coordinates available for this event."]}),e.jsx(Q,{"data-loc":"client/src/pages/EventReview.tsx:265",children:e.jsx(y,{"data-loc":"client/src/pages/EventReview.tsx:266",variant:"outline",onClick:s,className:"bg-transparent border-white/20 text-white/70",children:"Close"})})]})})}function He({event:t,onClose:s,onSaved:o}){const[a,l]=x.useState({title:t.title||"",description:t.description||"",eventDate:t.eventDate?t.eventDate.substring(0,10):"",audience:t.audience?.toString()||"",country:t.country||"",locationLabel:t.locationLabel||"",lat:t.lat?.toString()||"",lng:t.lng?.toString()||"",creatorFirstName:t.creatorFirstName||"",creatorLastName:t.creatorLastName||"",creatorEmail:t.creatorEmail||"",bestQuote:t.bestQuote||"",isTop30:t.isTop30?.toString()||"0",isRelevant:t.isRelevant?.toString()||"0",category:t.category||"",quoteScore:t.quoteScore?.toString()||"",isStreamedEvent:t.isStreamedEvent??!1}),p=f.eventReview.updateEvent.useMutation({onSuccess:c=>{c.sanity.success?E.success("Event updated locally and in Sanity ✓"):(E.success("Event updated locally ✓"),E.warning(`Sanity: ${c.sanity.error||"update failed"}`)),o(),s()},onError:c=>E.error(c.message)}),v=()=>{p.mutate({eventId:t.id,title:a.title||void 0,description:a.description||void 0,eventDate:a.eventDate||void 0,audience:a.audience?parseInt(a.audience):null,country:a.country||void 0,locationLabel:a.locationLabel||void 0,lat:a.lat?parseFloat(a.lat):null,lng:a.lng?parseFloat(a.lng):null,creatorFirstName:a.creatorFirstName||void 0,creatorLastName:a.creatorLastName||void 0,creatorEmail:a.creatorEmail||"",bestQuote:a.bestQuote||void 0,isTop30:parseInt(a.isTop30)||0,isRelevant:parseInt(a.isRelevant)||0,category:a.category||void 0,quoteScore:a.quoteScore?parseInt(a.quoteScore):null,isStreamedEvent:a.isStreamedEvent})},i=(c,d,m="text")=>e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:334",children:[e.jsx("label",{"data-loc":"client/src/pages/EventReview.tsx:335",className:"text-xs text-white/50 mb-1 block",children:c}),m==="textarea"?e.jsx(ie,{"data-loc":"client/src/pages/EventReview.tsx:337",value:a[d],onChange:g=>l(u=>({...u,[d]:g.target.value})),rows:3,className:"bg-white/5 border-white/10 text-white resize-none text-sm"}):m==="checkbox"?e.jsxs("label",{"data-loc":"client/src/pages/EventReview.tsx:344",className:"flex items-center gap-2 cursor-pointer",children:[e.jsx("input",{"data-loc":"client/src/pages/EventReview.tsx:345",type:"checkbox",checked:a[d],onChange:g=>l(u=>({...u,[d]:g.target.checked})),className:"w-4 h-4 accent-primary"}),e.jsx("span",{"data-loc":"client/src/pages/EventReview.tsx:351",className:"text-sm text-white/70",children:"Yes"})]}):e.jsx(le,{"data-loc":"client/src/pages/EventReview.tsx:354",type:m,value:a[d],onChange:g=>l(u=>({...u,[d]:g.target.value})),className:"bg-white/5 border-white/10 text-white text-sm"})]});return e.jsx(O,{"data-loc":"client/src/pages/EventReview.tsx:365",open:!0,onOpenChange:s,children:e.jsxs(B,{"data-loc":"client/src/pages/EventReview.tsx:366",className:"bg-card border-border max-w-2xl max-h-[90vh] overflow-y-auto",children:[e.jsxs(U,{"data-loc":"client/src/pages/EventReview.tsx:367",children:[e.jsxs(z,{"data-loc":"client/src/pages/EventReview.tsx:368",className:"flex items-center gap-2",children:[e.jsx(X,{"data-loc":"client/src/pages/EventReview.tsx:369",className:"w-4 h-4 text-primary"}),"Update Event"]}),e.jsxs(q,{"data-loc":"client/src/pages/EventReview.tsx:372",className:"text-white/50 text-xs",children:["Sanity ID: ",t.sanityId]})]}),e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:377",className:"grid grid-cols-2 gap-3",children:[e.jsx("div",{"data-loc":"client/src/pages/EventReview.tsx:378",className:"col-span-2",children:i("Title","title")}),e.jsx("div",{"data-loc":"client/src/pages/EventReview.tsx:379",className:"col-span-2",children:i("Description","description","textarea")}),e.jsx("div",{"data-loc":"client/src/pages/EventReview.tsx:380",children:i("Event Date","eventDate","date")}),e.jsx("div",{"data-loc":"client/src/pages/EventReview.tsx:381",children:i("Audience","audience","number")}),e.jsx("div",{"data-loc":"client/src/pages/EventReview.tsx:382",className:"col-span-2",children:i("Location Label","locationLabel")}),e.jsx("div",{"data-loc":"client/src/pages/EventReview.tsx:383",children:i("Country","country")}),e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:384",className:"col-span-2 grid grid-cols-2 gap-3",children:[e.jsx("div",{"data-loc":"client/src/pages/EventReview.tsx:385",children:i("Latitude","lat","number")}),e.jsx("div",{"data-loc":"client/src/pages/EventReview.tsx:386",children:i("Longitude","lng","number")})]}),e.jsx("div",{"data-loc":"client/src/pages/EventReview.tsx:388",children:i("Creator First Name","creatorFirstName")}
59),e.jsx("div",{"data-loc":"client/src/pages/EventReview.tsx:389",children:i("Creator Last Name","creatorLastName")}),e.jsx("div",{"data-loc":"client/src/pages/EventReview.tsx:390",className:"col-span-2",children:i("Creator Email","creatorEmail","email")}),e.jsx("div",{"data-loc":"client/src/pages/EventReview.tsx:391",className:"col-span-2",children:i("Best Quote","bestQuote","textarea")}),e.jsx("div",{"data-loc":"client/src/pages/EventReview.tsx:392",children:i("Category","category")}),e.jsx("div",{"data-loc":"client/src/pages/EventReview.tsx:393",children:i("Quote Score (1-5)","quoteScore","number")}),e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:394",children:[e.jsx("label",{"data-loc":"client/src/pages/EventReview.tsx:395",className:"text-xs text-white/50 mb-1 block",children:"Is Top 30"}),e.jsxs("select",{"data-loc":"client/src/pages/EventReview.tsx:396",value:a.isTop30,onChange:c=>l(d=>({...d,isTop30:c.target.value})),className:"w-full bg-white/5 border border-white/10 rounded-md px-3 py-2 text-sm text-white",children:[e.jsx("option",{"data-loc":"client/src/pages/EventReview.tsx:401",value:"0",children:"No"}),e.jsx("option",{"data-loc":"client/src/pages/EventReview.tsx:402",value:"1",children:"Yes"})]})]}),e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:405",children:[e.jsx("label",{"data-loc":"client/src/pages/EventReview.tsx:406",className:"text-xs text-white/50 mb-1 block",children:"Is Relevant"}),e.jsxs("select",{"data-loc":"client/src/pages/EventReview.tsx:407",value:a.isRelevant,onChange:c=>l(d=>({...d,isRelevant:c.target.value})),className:"w-full bg-white/5 border border-white/10 rounded-md px-3 py-2 text-sm text-white",children:[e.jsx("option",{"data-loc":"client/src/pages/EventReview.tsx:412",value:"0",children:"No"}),e.jsx("option",{"data-loc":"client/src/pages/EventReview.tsx:413",value:"1",children:"Yes"})]})]}),e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:416",className:"col-span-2",children:[e.jsx("label",{"data-loc":"client/src/pages/EventReview.tsx:417",className:"text-xs text-white/50 mb-1 block",children:"Streamed / Online Event"}),i("","isStreamedEvent","checkbox")]})]}),e.jsxs(Q,{"data-loc":"client/src/pages/EventReview.tsx:422",className:"mt-4",children:[e.jsx(y,{"data-loc":"client/src/pages/EventReview.tsx:423",variant:"outline",onClick:s,className:"bg-transparent border-white/20 text-white/70",children:"Cancel"}),e.jsxs(y,{"data-loc":"client/src/pages/EventReview.tsx:426",onClick:v,disabled:p.isPending,className:"bg-primary text-white",children:[p.isPending?e.jsx($,{"data-loc":"client/src/pages/EventReview.tsx:431",className:"w-4 h-4 animate-spin mr-1"}):e.jsx(X,{"data-loc":"client/src/pages/EventReview.tsx:431",className:"w-4 h-4 mr-1"}),"Save & Push to Sanity"]})]})]})})}function We({event:t,onClose:s,onEmailSent:o}){const[a,l]=x.useState("fr"),[p,v]=x.useState(!0),[i,c]=x.useState(!0),[d,m]=x.useState(""),[g,u]=x.useState("");x.useEffect(()=>{const r=Be(t,a,p,i);m(r.subject),u(r.body)},[a,p,i,t]);const w=f.eventReview.sendReviewEmail.useMutation({onSuccess:()=>{E.success("Email sent! ✓"),o?.(t.id),s()},onError:r=>E.error(r.message)}),b=()=>{t.creatorEmail&&w.mutate({eventId:t.id,to:t.creatorEmail,subject:d,body:g})};return e.jsx(O,{"data-loc":"client/src/pages/EventReview.tsx:471",open:!0,onOpenChange:s,children:e.jsxs(B,{"data-loc":"client/src/pages/EventReview.tsx:472",className:"bg-card border-border max-w-xl",children:[e.jsxs(U,{"data-loc":"client/src/pages/EventReview.tsx:473",children:[e.jsxs(z,{"data-loc":"client/src/pages/EventReview.tsx:474",className:"flex items-center gap-2",children:[e.jsx(Z,{"data-loc":"client/src/pages/EventReview.tsx:475",className:"w-4 h-4 text-blue-400"}),"Send Email"]}),e.jsxs(q,{"data-loc":"client/src/pages/EventReview.tsx:478",className:"text-white/50 text-sm",children:["To: ",t.creatorEmail]})]}),e.jsx("div",{"data-loc":"client/src/pages/EventReview.tsx:484",className:"flex gap-1 bg-white/5 rounded-lg p-1",children:["fr","en","es"].map(r=>e.jsx("button",{"data-loc":"client/src/pages/EventReview.tsx:486",onClick:()=>l(r),className:`flex-1 py-1.5 text-sm font-medium rounded-md transition-all ${a===r?"bg-primary text-white":"text-white/50 hover:text-white/80"}`,children:r==="fr"?"🇫🇷 FR":r==="en"?"🇬🇧 EN":"🇪🇸 ES"},r))}),e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:501",className:"space-y-2",children:[e.jsxs("label",{"data-loc":"client/src/pages/EventReview.tsx:502",className:"flex items-center gap-2 cursor-pointer bg-blue-500/10 border border-blue-500/20 rounded-lg px-3 py-2",children:[e.jsx("input",{"data-loc":"client/src/pages/EventReview.tsx:503",type:"checkbox",checked:p,onChange:r=>v(r.target.checked),className:"w-4 h-4 accent-primary"}),e.jsxs("span",{"data-loc":"client/src/pages/EventReview.tsx:509",className:"text-sm text-white/80",children:["Include invitation link to ",e.jsx("span",{"data-loc":"client/src/pages/EventReview.tsx:510",className:"text-blue-400 font-mono text-xs",children:"/participate"})]})]}),e.jsxs("label",{"data-loc":"client/src/pages/EventReview.tsx:513",className:"flex items-center gap-2 cursor-pointer bg-blue-500/10 border border-blue-500/20 rounded-lg px-3 py-2",children:[e.jsx("input",{"data-loc":"client/src/pages/EventReview.tsx:514",type:"checkbox",checked:i,onChange:r=>c(r.target.checked),className:"w-4 h-4 accent-primary"}),e.jsx("span",{"data-loc":"client/src/pages/EventReview.tsx:520",className:"text-sm text-white/80",children:'Include "À quand le prochain ? 😊"'})]})]}),e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:526",className:"space-y-3",children:[e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:527",children:[e.jsx("label",{"data-loc":"client/src/pages/EventReview.tsx:528",className:"text-xs text-white/50 mb-1 block",children:"Subject"}),e.jsx(le,{"data-loc":"client/src/pages/EventReview.tsx:529",value:d,onChange:r=>m(r.target.value),className:"bg-white/5 border-white/10 text-white text-sm"})]}),e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:535",children:[e.jsx("label",{"data-loc":"client/src/pages/EventReview.tsx:536",className:"text-xs text-white/50 mb-1 block",children:"Message"}),e.jsx(ie,{"data-loc":"client/src/pages/EventReview.tsx:537",value:g,onChange:r=>u(r.target.value),rows:10,className:"bg-white/5 border-white/10 text-white resize-none text-sm"})]})]}),e.jsxs(Q,{"data-loc":"client/src/pages/EventReview.tsx:546",children:[e.jsx(y,{"data-loc":"client/src/pages/EventReview.tsx:547",variant:"outline",onClick:s,className:"bg-transparent border-white/20 text-white/70",children:"Cancel"}),e.jsxs(y,{"data-loc":"client/src/pages/EventReview.tsx:550",onClick:b,disabled:w.isPending||!d||!g,className:"bg-blue-600 hover:bg-blue-700 text-white",children:[w.isPending?e.jsx($,{"data-loc":"client/src/pages/EventReview.tsx:555",className:"w-4 h-4 animate-spin mr-1"}):e.jsx(Z,{"data-loc":"client/src/pages/EventReview.tsx:555",className:"w-4 h-4 mr-1"}),"Send"]})]})]})})}function Ve({event:t,onClose:s}){const[o,a]=x.useState("fr"),[l,p]=x.useState(!1),v=qe(t,o),i=async()=>{try{await navigator.clipboard.writeText(v),p(!0),setTimeout(()=>p(!1),2e3),E.success("Message copied!")}catch{E.error("Copy failed — please select and copy manually.")}};return e.jsx(O,{"data-loc":"client/src/pages/EventReview.tsx:584",open:!0,onOpenChange:s,children:e.jsxs(B,{"data-loc":"client/src/pages/EventReview.tsx:585",className:"bg-card border-border max-w-lg",children:[e.jsxs(U,{"data-loc":"client/src/pages/EventReview.tsx:586",children:[e.jsxs(z,{"data-loc":"client/src/pages/EventReview.tsx:587",className:"flex items-center gap-2",children:[e.jsx(de,{"data-loc":"client/src/pages/EventReview.tsx:588",className:"w-4 h-4 text-green-400"}),"WhatsApp Message"]}),e.jsx(q,{"data-loc":"client/src/pages/EventReview.tsx:591",className:"text-white/50 text-sm",children:"Copy and paste into WhatsApp"})]}),e.jsx("div",{"data-loc":"client/src/pages/EventReview.tsx:597",className:"flex gap-1 bg-white/5 rounded-lg p-1",children:["fr","en","es"].map(c=>e.jsx("button",{"data-loc":"client/src/pages/EventReview.tsx:599",onClick:()=>{a(c),p(!1)},className:`flex-1 py-1.5 text-sm font-medium rounded-md transition-all ${o===c?"bg-green-600 text-white":"text-white/50 hover:text-white/80"}`,children:c==="fr"?"🇫🇷 FR":c==="en"?"🇬🇧 EN":"🇪🇸 ES"},c))}),e.jsx("div",{"data-loc":"client/src/pages/EventReview.tsx:614",className:"bg-white/5 border border-white/10 rounded-lg p-3",children:e.jsx("pre",{"data-loc":"client/src/pages/EventReview.tsx:615",className:"text-sm text-white/80 whitespace-pre-wrap font-sans leading-relaxed",children:v})}),e.jsxs(Q,{"data-loc":"client/src/pages/EventReview.tsx:618",children:[e.jsx(y,{"data-loc":"client/src/pages/EventReview.tsx:619",variant:"outline",onClick:s,className:"bg-transparent border-white/20 text-white/70",children:"Close"}),e.jsxs(y,{"data-loc":"client/src/pages/EventReview.tsx:622",onClick:i,className:`transition-all ${l?"bg-green-600 hover:bg-green-700":"bg-green-700 hover:bg-green-600"} text-white`,children:[l?e.jsx(Pe,{"data-loc":"client/src/pages/EventReview.tsx:626",className:"w-4 h-4 mr-1"}):e.jsx(Fe,{"data-loc":"client/src/pages/EventReview.tsx:626",className:"w-4 h-4 mr-1"}),l?"Copied!":"Copy Message"]})]})]})})}function Ge({index:t,event:s,onToggleReviewed:o,onOpenGps:a,onOpenUpdate:l,onOpenEmail:p,onOpenWhatsApp:v,isToggling:i,emailSent:c,recentlySynced:d,onSynced:m,onDelete:g}){const u=f.eventReview.syncOneEvent.useMutation({onSuccess:R=>{E.success(`Événement re-synchronisé depuis Sanity (${R.action})`),m()},onError:R=>E.error(`Erreur sync : ${R.message}`)}
59),[w,b]=x.useState(!1),[r,h]=x.useState(null),S=w?[s.pic1Url,s.pic2Url,s.pic3Url].filter(Boolean):[];s.pic1Ref||s.pic2Ref||s.pic3Ref;const j=s.lat!=null&&s.lng!=null,M=s.isReviewed?"border-green-500/30 bg-green-500/5":d?"border-blue-500/40 bg-blue-500/10":"border-white/10 bg-white/[0.03]";return e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:687",className:`border rounded-lg transition-all ${M}`,children:[e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:688",className:"px-3 py-3",children:[e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:690",className:"flex items-center gap-2",children:[e.jsxs("span",{"data-loc":"client/src/pages/EventReview.tsx:692",className:"text-white/25 text-xs font-mono w-7 text-right flex-shrink-0",children:["#",t]}),e.jsx("button",{"data-loc":"client/src/pages/EventReview.tsx:695",onClick:()=>o(s.id,s.isReviewed),disabled:i,className:"flex-shrink-0",title:s.isReviewed?"Mark as not reviewed":"Mark as reviewed",children:s.isReviewed?e.jsx(re,{"data-loc":"client/src/pages/EventReview.tsx:702",className:"w-5 h-5 text-green-400"}):e.jsx(Ae,{"data-loc":"client/src/pages/EventReview.tsx:703",className:"w-5 h-5 text-white/40 hover:text-white/70 transition-colors"})}),s.countryIso2&&e.jsx("img",{"data-loc":"client/src/pages/EventReview.tsx:708",src:`https://flagcdn.com/w80/${s.countryIso2.toLowerCase()}.png`,alt:s.country||"",width:24,height:16,className:"flex-shrink-0 object-cover",style:{borderRadius:"2px",display:"block"}}),e.jsxs("button",{"data-loc":"client/src/pages/EventReview.tsx:719",onClick:()=>b(!w),className:"flex-1 text-left min-w-0",children:[e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:720",className:"flex items-center gap-2 flex-wrap",children:[e.jsx("span",{"data-loc":"client/src/pages/EventReview.tsx:721",className:`font-medium text-sm ${s.isReviewed?"text-green-300":"text-white"}`,children:s.title||"(no title)"}),s.isTop30===1&&e.jsx(ne,{"data-loc":"client/src/pages/EventReview.tsx:724",className:"bg-yellow-500/20 text-yellow-300 border-yellow-500/30 text-xs",children:"Top 30"}),s.isStreamedEvent&&e.jsx(ne,{"data-loc":"client/src/pages/EventReview.tsx:725",className:"bg-blue-500/20 text-blue-300 border-blue-500/30 text-xs",children:"Online"})]}),e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:727",className:"flex items-center gap-3 mt-0.5 text-xs text-white/50 flex-wrap",children:[e.jsxs("span",{"data-loc":"client/src/pages/EventReview.tsx:728",className:"flex items-center gap-1",children:[e.jsx(ke,{"data-loc":"client/src/pages/EventReview.tsx:728",className:"w-3 h-3"}),J(s.eventDate)]}),s.country&&e.jsxs("span",{"data-loc":"client/src/pages/EventReview.tsx:729",className:"flex items-center gap-1",children:[e.jsx(A,{"data-loc":"client/src/pages/EventReview.tsx:729",className:"w-3 h-3 flex-shrink-0"}),s.country]}),s.locationLabel&&e.jsx("span",{"data-loc":"client/src/pages/EventReview.tsx:730",className:"truncate max-w-[160px]",children:s.locationLabel}),s.audience!=null&&e.jsxs("span",{"data-loc":"client/src/pages/EventReview.tsx:731",className:"flex items-center gap-1",children:[e.jsx(Ie,{"data-loc":"client/src/pages/EventReview.tsx:731",className:"w-3 h-3"}),s.audience]})]})]}),e.jsx("button",{"data-loc":"client/src/pages/EventReview.tsx:736",onClick:()=>b(!w),className:"p-1.5 rounded hover:bg-white/10 text-white/50 transition-colors flex-shrink-0",children:w?e.jsx(Te,{"data-loc":"client/src/pages/EventReview.tsx:737",className:"w-4 h-4"}):e.jsx(oe,{"data-loc":"client/src/pages/EventReview.tsx:737",className:"w-4 h-4"})})]}),e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:742",className:"flex items-center gap-0.5 mt-2 pl-[52px]",children:[e.jsx("button",{"data-loc":"client/src/pages/EventReview.tsx:744",onClick:()=>a(s),title:j?"View on map":"No GPS coordinates",className:`p-1.5 rounded transition-colors ${j?"hover:bg-orange-500/20 text-orange-400":"text-white/20 cursor-not-allowed"}`,disabled:!j,children:e.jsx(A,{"data-loc":"client/src/pages/EventReview.tsx:750",className:"w-4 h-4"})}),s.creatorEmail&&e.jsx("button",{"data-loc":"client/src/pages/EventReview.tsx:754",onClick:()=>p(s),title:c?"Email déjà envoyé — cliquer pour en envoyer un autre":"Envoyer un email","aria-label":c?"Email déjà envoyé — cliquer pour en envoyer un autre":"Envoyer un email",className:`p-1.5 rounded transition-colors relative ${c?"bg-blue-500 text-black hover:bg-blue-400":"hover:bg-blue-500/20 text-blue-400"}`,children:e.jsx(Z,{"data-loc":"client/src/pages/EventReview.tsx:764",className:"w-4 h-4"})}),e.jsx("button",{"data-loc":"client/src/pages/EventReview.tsx:768",onClick:()=>v(s),title:"Copy WhatsApp message",className:"p-1.5 rounded hover:bg-green-500/20 text-green-400 transition-colors",children:e.jsx(de,{"data-loc":"client/src/pages/EventReview.tsx:773",className:"w-4 h-4"})}),e.jsx("button",{"data-loc":"client/src/pages/EventReview.tsx:776",onClick:()=>u.mutate({sanityId:s.sanityId}),disabled:u.isPending,title:"Re-synchroniser depuis Sanity",className:"p-1.5 rounded hover:bg-cyan-500/20 text-cyan-400 transition-colors disabled:opacity-40",children:u.isPending?e.jsx($,{"data-loc":"client/src/pages/EventReview.tsx:783",className:"w-4 h-4 animate-spin"}):e.jsx(_,{"data-loc":"client/src/pages/EventReview.tsx:784",className:"w-4 h-4"})}),e.jsx("button",{"data-loc":"client/src/pages/EventReview.tsx:787",onClick:()=>l(s),title:"Update event",className:"p-1.5 rounded hover:bg-purple-500/20 text-purple-400 transition-colors",children:e.jsx(X,{"data-loc":"client/src/pages/EventReview.tsx:792",className:"w-4 h-4"})}),e.jsx("button",{"data-loc":"client/src/pages/EventReview.tsx:795",onClick:()=>g(s.id),title:"Supprimer localement (Sanity non affecté)",className:"p-1.5 rounded hover:bg-red-500/20 text-red-400 transition-colors",children:e.jsx(Le,{"data-loc":"client/src/pages/EventReview.tsx:800",className:"w-4 h-4"})})]})]}),w&&e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:807",className:"px-4 pb-4 border-t border-white/5 pt-3 space-y-3",children:[e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:808",className:"text-sm",children:[e.jsx("span",{"data-loc":"client/src/pages/EventReview.tsx:809",className:"text-white/50 text-xs uppercase tracking-wider",children:"Organizer"}),e.jsxs("p",{"data-loc":"client/src/pages/EventReview.tsx:810",className:"text-white mt-0.5",children:[[s.creatorFirstName,s.creatorLastName].filter(
59Boolean).join(" ")||"—",s.creatorEmail&&e.jsx("span",{"data-loc":"client/src/pages/EventReview.tsx:812",className:"text-white/50 ml-2 text-xs",children:s.creatorEmail})]})]}),s.description&&e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:816",className:"text-sm",children:[e.jsx("span",{"data-loc":"client/src/pages/EventReview.tsx:817",className:"text-white/50 text-xs uppercase tracking-wider",children:"Description"}),e.jsx("p",{"data-loc":"client/src/pages/EventReview.tsx:818",className:"text-white/80 mt-0.5 text-sm leading-relaxed whitespace-pre-wrap line-clamp-6",children:s.description})]}),s.bestQuote&&e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:822",className:"text-sm",children:[e.jsx("span",{"data-loc":"client/src/pages/EventReview.tsx:823",className:"text-white/50 text-xs uppercase tracking-wider",children:"Best Quote"}),e.jsx("blockquote",{"data-loc":"client/src/pages/EventReview.tsx:824",className:"mt-0.5 pl-3 border-l-2 border-blue-500/50 text-white/80 italic text-sm",children:s.bestQuote})]}),S.length>0&&e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:828",children:[e.jsx("span",{"data-loc":"client/src/pages/EventReview.tsx:829",className:"text-white/50 text-xs uppercase tracking-wider",children:"Photos"}),e.jsx("div",{"data-loc":"client/src/pages/EventReview.tsx:830",className:"flex gap-2 mt-1 flex-wrap",children:S.map((R,C)=>e.jsxs("button",{"data-loc":"client/src/pages/EventReview.tsx:832",onClick:()=>h(R),className:"relative group",children:[e.jsx("img",{"data-loc":"client/src/pages/EventReview.tsx:833",src:R,alt:`Photo ${C+1}`,className:"w-20 h-20 object-cover rounded border border-white/10 group-hover:border-blue-400/50 transition-all"}),e.jsx("div",{"data-loc":"client/src/pages/EventReview.tsx:834",className:"absolute inset-0 bg-black/0 group-hover:bg-black/30 transition-all rounded flex items-center justify-center",children:e.jsx(Me,{"data-loc":"client/src/pages/EventReview.tsx:835",className:"w-5 h-5 text-white opacity-0 group-hover:opacity-100 transition-opacity"})})]},C))})]}),e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:842",className:"flex flex-wrap gap-3 text-xs text-white/30",children:[s.eventType&&e.jsxs("span",{"data-loc":"client/src/pages/EventReview.tsx:843",children:["Type: ",s.eventType]}),s.eventScale&&e.jsxs("span",{"data-loc":"client/src/pages/EventReview.tsx:844",children:["Scale: ",s.eventScale]}),s.publicationStatus&&e.jsxs("span",{"data-loc":"client/src/pages/EventReview.tsx:845",children:["Status: ",s.publicationStatus]}),j&&e.jsxs("span",{"data-loc":"client/src/pages/EventReview.tsx:846",className:"font-mono",children:[s.lat?.toFixed(4),", ",s.lng?.toFixed(4)]}),e.jsxs("span",{"data-loc":"client/src/pages/EventReview.tsx:847",className:"font-mono",children:["Sanity: ",s.sanityId?.slice(0,12),"…"]})]})]}),r&&e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:854",className:"fixed inset-0 z-[9999] bg-black/90 flex items-center justify-center p-4",onClick:()=>h(null),children:[e.jsx("button",{"data-loc":"client/src/pages/EventReview.tsx:855",className:"absolute top-4 right-4 text-white/70 hover:text-white",onClick:()=>h(null),children:e.jsx(De,{"data-loc":"client/src/pages/EventReview.tsx:856",className:"w-6 h-6"})}),e.jsx("img",{"data-loc":"client/src/pages/EventReview.tsx:858",src:r,alt:"Photo",className:"max-w-full max-h-full object-contain rounded",onClick:R=>R.stopPropagation()})]})]})}const F=20;function ft(){const{user:t,loading:s}=Ce(),{language:o}=ye(),a=o||"fr",[l,p]=x.useState(""),[v,i]=x.useState(!1),[c,d]=x.useState(0),[m,g]=x.useState(null),[u,w]=x.useState(null),[b,r]=x.useState(null),[h,S]=x.useState(null),[j,M]=x.useState(new Set),R=x.useCallback(n=>{M(N=>new Set(N).add(n))},[]),[C,K]=x.useState(new Set),pe=x.useCallback(n=>{K(N=>new Set(N).add(n))},[]),[H,ve]=x.useState([]),[me,ge]=x.useState(""),D=x.useRef(null);x.useEffect(()=>(D.current&&clearTimeout(D.current),D.current=setTimeout(()=>{ge(l),d(0)},400),()=>{D.current&&clearTimeout(D.current)}),[l]);const ue={search:me||void 0,pendingOnly:v||void 0,limit:F,offset:c*F},{data:he,refetch:k}=f.eventReview.getStats.useQuery(void 0),{data:ee,isLoading:we,refetch:I}=f.eventReview.listAll.useQuery(ue),{data:P,isLoading:Ee,refetch:be}
59=f.sanitySync.countNewFromSanity.useQuery(void 0,{staleTime:0}),W=f.sanitySync.syncEvents.useMutation({onSuccess:n=>{E.success(`Sync complete — ${n.inserted} inserted, ${n.updated} updated`),n.insertedSanityIds?.length&&ve(n.insertedSanityIds),I(),k(),be()},onError:n=>E.error(n.message)}),V=ee?.events??[],te=ee?.total??0,T=Math.ceil(te/F),se=(()=>{if(!H.length||c!==0)return V;const n=V.filter(L=>H.includes(L.sanityId)),N=V.filter(L=>!H.includes(L.sanityId));return n.forEach(L=>{C.has(L.id)||K(Ne=>new Set(Ne).add(L.id))}),[...n,...N]})(),G=f.eventReview.toggleReviewed.useMutation({onSuccess:n=>{E.success(n.isReviewed?"Event validated ✓":"Validation removed"),I(),k()},onError:n=>E.error(n.message)}),Re=x.useCallback((n,N)=>{G.mutate({eventId:n,isReviewed:!N})},[G]),ae=f.eventReview.deleteEvent.useMutation({onSuccess:()=>{E.success("Événement supprimé localement"),I(),k()},onError:n=>E.error(n.message)}),je=x.useCallback(n=>{window.confirm("Supprimer cet événement de la base locale ? (Sanity n'est pas affecté)")&&ae.mutate({eventId:n})},[ae]);return s?e.jsx("div",{"data-loc":"client/src/pages/EventReview.tsx:987",className:"min-h-screen flex items-center justify-center bg-background",children:e.jsx($,{"data-loc":"client/src/pages/EventReview.tsx:988",className:"w-8 h-8 animate-spin text-primary"})}):t?t.role==="admin"||t.isEventReviewer?e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:1011",className:"min-h-screen bg-background text-foreground",children:[e.jsx("div",{"data-loc":"client/src/pages/EventReview.tsx:1012",className:"starfield"}),e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:1013",className:"relative z-10",children:[e.jsx("header",{"data-loc":"client/src/pages/EventReview.tsx:1016",className:"border-b border-border bg-card/50 backdrop-blur-sm sticky top-0 z-20",children:e.jsx("div",{"data-loc":"client/src/pages/EventReview.tsx:1017",className:"container py-4",children:e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:1018",className:"flex items-center justify-between",children:[e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:1019",className:"flex items-center gap-4",children:[e.jsxs("a",{"data-loc":"client/src/pages/EventReview.tsx:1020",href:"/",className:"text-white/60 hover:text-white transition-colors flex items-center gap-1 text-sm",children:[e.jsx(ce,{"data-loc":"client/src/pages/EventReview.tsx:1021",className:"w-4 h-4"}),a==="fr"?"Accueil":"Home"]}),e.jsx("h1",{"data-loc":"client/src/pages/EventReview.tsx:1024",className:"text-xl font-bold text-primary",children:"Event Review"})]}),e.jsx("button",{"data-loc":"client/src/pages/EventReview.tsx:1028",onClick:()=>{I(),k()},className:"p-2 rounded-lg hover:bg-white/10 text-white/60 hover:text-white transition-colors",title:"Refresh",children:e.jsx(_,{"data-loc":"client/src/pages/EventReview.tsx:1033",className:"w-4 h-4"})})]})})}),e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:1039",className:"container pt-6 pb-12",children:[e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:1042",className:"grid grid-cols-2 gap-4 mb-6",children:[e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:1043",className:"bg-[#0a1a3a]/80 border border-white/10 rounded-xl p-4 text-center",children:[e.jsx("div",{"data-loc":"client/src/pages/EventReview.tsx:1044",className:"text-3xl font-bold text-white",children:he?.total??"—"}),e.jsx("div",{"data-loc":"client/src/pages/EventReview.tsx:1045",className:"text-xs text-white/50 mt-1",children:"Total events in DB"})]}),e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:1047",className:`rounded-xl p-4 text-center border ${(P?.newCount??0)>0?"bg-[#1a0a0a]/80 border-orange-500/30":"bg-[#0a1a0a]/80 border-green-500/20"}`,children:[e.jsx("div",{"data-loc":"client/src/pages/EventReview.tsx:1052",className:`text-3xl font-bold ${(P?.newCount??0)>0?"text-orange-400":"text-green-400"}`,children:Ee?e.jsx($,{"data-loc":"client/src/pages/EventReview.tsx:1055",className:"w-7 h-7 animate-spin mx-auto"}):P?.newCount??"—"}),e.jsx("div",{"data-loc":"client/src/pages/EventReview.tsx:1057",className:"text-xs text-white/50 mt-1",children:"Not yet imported from Sanity"}),(P?.newCount??0)>0&&e.jsx("button",{"data-loc":"client/src/pages/EventReview.tsx:1059",onClick:()=>
59W.mutate(),disabled:W.isPending,className:"mt-3 flex items-center gap-1.5 mx-auto px-3 py-1.5 rounded-lg text-xs font-semibold bg-orange-500/20 text-orange-300 hover:bg-orange-500/30 border border-orange-500/30 transition-colors disabled:opacity-50",children:W.isPending?e.jsxs(e.Fragment,{children:[e.jsx($,{"data-loc":"client/src/pages/EventReview.tsx:1065",className:"w-3 h-3 animate-spin"})," Importing..."]}):e.jsxs(e.Fragment,{children:[e.jsx(_,{"data-loc":"client/src/pages/EventReview.tsx:1066",className:"w-3 h-3"})," Import ",P?.newCount," new events"]})})]})]}),e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:1074",className:"flex items-center gap-3 mb-4",children:[e.jsx("div",{"data-loc":"client/src/pages/EventReview.tsx:1075",className:"relative flex-1",children:e.jsx("input",{"data-loc":"client/src/pages/EventReview.tsx:1076",type:"text",value:l,onChange:n=>p(n.target.value),placeholder:"Search event, country, organizer...",className:"w-full bg-white/5 border border-white/10 rounded-lg px-4 py-2 text-sm text-white placeholder-white/30 focus:outline-none focus:border-primary/50"})}),e.jsxs("label",{"data-loc":"client/src/pages/EventReview.tsx:1084",className:"flex items-center gap-2 cursor-pointer whitespace-nowrap bg-white/5 border border-white/10 rounded-lg px-3 py-2 text-sm text-white/70 hover:bg-white/10 transition-colors",children:[e.jsx("input",{"data-loc":"client/src/pages/EventReview.tsx:1085",type:"checkbox",checked:v,onChange:n=>{i(n.target.checked),d(0)},className:"w-4 h-4 accent-primary"}),"Pending only"]})]}),e.jsxs("p",{"data-loc":"client/src/pages/EventReview.tsx:1096",className:"text-xs text-white/40 mb-3",children:[te," event(s)",T>1&&` · page ${c+1}/${T}`]}),we?e.jsx("div",{"data-loc":"client/src/pages/EventReview.tsx:1103",className:"flex items-center justify-center py-16",children:e.jsx($,{"data-loc":"client/src/pages/EventReview.tsx:1104",className:"w-8 h-8 animate-spin text-primary"})}):se.length===0?e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:1107",className:"text-center py-16 text-white/40",children:[e.jsx(re,{"data-loc":"client/src/pages/EventReview.tsx:1108",className:"w-12 h-12 mx-auto mb-3 text-green-400/50"}),e.jsx("p",{"data-loc":"client/src/pages/EventReview.tsx:1109",className:"text-lg font-medium text-white/60",children:v?"All events reviewed! 🎉":"No events found"})]}):e.jsxs(e.Fragment,{children:[e.jsx("div",{"data-loc":"client/src/pages/EventReview.tsx:1115",className:"space-y-2 mb-6",children:se.map((n,N)=>e.jsx(Ge,{"data-loc":"client/src/pages/EventReview.tsx:1117",index:c*F+N+1,event:n,onToggleReviewed:Re,onOpenGps:g,onOpenUpdate:w,onOpenEmail:r,onOpenWhatsApp:S,isToggling:G.isPending,emailSent:j.has(n.id)||!!n.emailSentAt,recentlySynced:C.has(n.id),onSynced:()=>{pe(n.id),I(),k()},onDelete:je},n.id))}),T>1&&e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:1137",className:"flex items-center justify-center gap-3",children:[e.jsxs(y,{"data-loc":"client/src/pages/EventReview.tsx:1138",variant:"outline",size:"sm",onClick:()=>d(n=>Math.max(0,n-1)),disabled:c===0,className:"bg-transparent border-white/20 text-white/70 hover:bg-white/10",children:[e.jsx(ce,{"data-loc":"client/src/pages/EventReview.tsx:1145",className:"w-4 h-4 mr-1"}),"Previous"]}),e.jsxs("span",{"data-loc":"client/src/pages/EventReview.tsx:1148",className:"text-white/50 text-sm",children:[c+1," / ",T]}),e.jsxs(y,{"data-loc":"client/src/pages/EventReview.tsx:1149",variant:"outline",size:"sm",onClick:()=>d(n=>Math.min(T-1,n+1)),disabled:c===T-1,className:"bg-transparent border-white/20 text-white/70 hover:bg-white/10",children:["Next",e.jsx(oe,{"data-loc":"client/src/pages/EventReview.tsx:1157",className:"w-4 h-4 ml-1"})]})]})]})]})]}),m&&e.jsx(Qe,{"data-loc":"client/src/pages/EventReview.tsx:1167",event:m,onClose:()=>g(null)}),u&&e.jsx(He,{"data-loc":"client/src/pages/EventReview.tsx:1169",event:u,onClose:()=>w(null),onSaved:()=>{I(),k()}}),b&&e.jsx(We,{"data-loc":"client/src/pages/EventReview.tsx:1175",event:b,onClose:()=>r(null),onEmailSent:R}),h&&e.jsx(Ve,{"data-loc":"client/src/pages/EventReview.tsx:1176",event:h,onClose:()=>S(null)})]}):e.jsx("div",{"data-loc":"client/src/pages/EventReview.tsx:999",className:"min-h-screen flex items-center justify-center bg-background text-foreground",children:e.jsxs("div",{"data-loc":"client/src/pages/EventReview.tsx:1000",className:"text-center space-y-4",children:[e.jsx("p",{"data-loc":"client/src/pages/EventReview.tsx:1001",className:"text-xl font-semibold",children:"Accès restreint"}),e.jsx("p",{"data-loc":"client/src/pages/EventReview.tsx:1002",className:"text-muted-foreground",children:"Cette page est réservée aux validateurs d'événements et aux administrateurs."})]})}):(window.location.href=Se(),null)}export{ft 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.