PageSourceSearch

https://ipepper.manus.space/assets/GuestReschedule-PWS_HNGu.js

js ipepper.manus.space collected 2026-10-03 05:04:37 UTC 18,106 bytes, 12 lines download raw bytes

1import{p as U,r as x,t as k,b as _,j as e,L as C,d as b,e as j,T as W,C as K,f as X,g as ee,c as A,B as v}from"./index-T5nyJFFV.js";import{i as S,a as se}from"./constants-Hoh27Szo.js";import{C as te}from"./calendar-clock-CU7ivC6_.js";import{C as $}from"./calendar-Sy4Jw0Y9.js";import{C as P}from"./chevron-left-cw3ou3fn.js";import{C as ae}from"./chevron-right-ao0_Il05.js";function h(t){return t.toLocaleDateString("fr-FR",{weekday:"long",day:"numeric",month:"long",year:"numeric"})}function u(t){return new Date(t).toLocaleTimeString("fr-FR",{hour:"2-digit",minute:"2-digit",timeZone:"Europe/Paris"})}function ce(t,n){const a=[],m=new Date(t,n,1),r=new Date(t,n+1,0),R=(m.getDay()+6)%7;for(let c=R-1;c>=0;c--){const i=new Date(t,n,-c);a.push(i)}for(let c=1;c<=r.getDate();c++)a.push(new Date(t,n,c));for(;a.length%7!==0;){const c=a[a.length-1],i=new Date(c);i.setDate(i.getDate()+1),a.push(i)}return a}function H(t,n){return t.getFullYear()===n.getFullYear()&&t.getMonth()===n.getMonth()&&t.getDate()===n.getDate()}function le(t){const n=t.getFullYear(),a=String(t.getMonth()+1).padStart(2,"0"),m=String(t.getDate()).padStart(2,"0");return`${n}-${a}-${m}`}function xe(){const[,t]=U("/reschedule/:token"),n=t?.token||"",[a,m]=x.useState(null),[r,R]=x.useState(null),[c,i]=x.useState(()=>{const s=new Date;return{year:s.getFullYear(),month:s.getMonth()}}),[F,N]=x.useState("info"),{data:l,isLoading:E,error:M}=k.booking.getBookingByToken.useQuery({token:n},{enabled:!!n}),{data:T,isLoading:Y}=k.booking.getAvailableSlots.useQuery({slug:l?.slug||"",date:a?le(a):""},{enabled:!!a&&!!l?.slug}),y=k.booking.guestReschedule.useMutation({onSuccess:()=>{N("confirmed"),_.success("Rendez-vous reprogrammé avec succès !")},onError:s=>_.error(s.message)}),B=x.useMemo(()=>ce(c.year,c.month),[c.year,c.month]),w=x.useMemo(()=>new Date,[]);w.setHours(0,0,0,0);const z=l?.availabilitySchedule,L=s=>{if(s<w||!z||S(s))return!1;const d=String(s.getDay());return!!z[d]},J=s=>{if(!S(s))return null;const d=s.getFullYear(),o=String(s.getMonth()+1).padStart(2,"0"),g=String(s.getDate()).padStart(2,"0"),p=`${d}-${o}-${g}`,D=se(d),f=["Jour de l'an","Lundi de Pâques","Fête du travail","Victoire 1945","Ascension","Lundi de Pentecôte","Fête nationale","Assomption","Toussaint","Armistice","Noël"],G=D.indexOf(p);return G>=0?f[G]:"Jour férié"},O=()=>{i(s=>s.month===0?{year:s.year-1,month:11}:{...s,month:s.month-1})},V=()=>{i(s=>s.month===11?{year:s.year+1,month:0}:{...s,month:s.month+1})},q=s=>{L(s)&&(m(s),R(null))},Q=()=>{!r||!n||y.mutate({token:n,newStartTime:r,timezone:Intl.DateTimeFormat().resolvedOptions().timeZone})},Z=new Date(c.year,c.month).toLocaleDateString("fr-FR",{month:"long",year:"numeric"}),I=["Lun","Mar","Mer","Jeu","Ven","Sam","Dim"];return E?e.jsxs("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:192",className:"min-h-screen flex items-center justify-center",style:{background:"url('https://d2xsxph8kpxj0f.cloudfront.net/310519663277656189/md34hY4tckF7RAhcvxn5EH/ipepper_hero_ia_186b2cd8.webp') center center / cover no-repeat fixed"},children:[e.jsx("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:193",className:"fixed inset-0 bg-white/88 pointer-events-none"}),e.jsx(C,{"data-loc":"client/src/pages/GuestReschedule.tsx:194",className:"h-8 w-8 animate-spin text-amber-600 relative z-10"})]}):M||!l?e.jsxs("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:201",className:"min-h-screen flex items-center justify-center p-4",style:{background:"url('https://d2xsxph8kpxj0f.cloudfront.net/310519663277656189/md34hY4tckF7RAhcvxn5EH/ipepper_hero_ia_186b2cd8.webp') center center / cover no-repeat fixed"},children:[e.jsx("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:202",className:"fixed inset-0 bg-white/88 pointer-events-none"}),e.jsx(b,{"data-loc":"client/src/pages/GuestReschedule.tsx:203",className:"max-w-md w-full relative z-10",children:e.jsxs(j,{"data-loc":"client/src/pages/GuestReschedule.tsx:204",className:"pt-8 text-center",children:[e.jsx(W,{"data-loc":"client/src/pages/GuestReschedule.tsx:205",className:"h-12 w-12 text-red-500 mx-auto mb-4"}),e.jsx("h2",{"data-loc":"client/src/pages/GuestReschedule.tsx:206",className:"text-xl font-semibold text-slate-800 mb-2",children:"Lien invalide"}),e.jsx("p",{"data-loc":"client/src/pages/GuestReschedule.tsx:207",className:"text-slate-500",children:M?.message||"Ce lien de reprogrammation est invalide, expiré, ou le rendez-vous a déjà été annulé."})]})})]}):F==="confirmed"?e.jsxs("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:220",className:"min-h-screen flex items-center justify-center p-4",style:{background:"url('https://d2xsxph8kpxj0f.cloudfront.net/310519663277656189/md34hY4tckF7RAhcvxn5EH/ipepper_hero_ia_186b2cd8.webp') center center / cover no-repeat fixed"},children:[e.jsx("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:221",className:"fixed inset-0 bg-white/88 pointer-events-none"}),e.jsx(b,{"data-loc":"client/src/pages/GuestReschedule.tsx:222",className:"max-w-md w-full relative z-10",children:e.jsxs(j,{"data-loc":"client/src/pages/GuestReschedule.tsx:223",className:"pt-8 text-center",children:[e.jsx("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:224",className:"w-16 h-16 bg-green-100 rounded-full flex items-center justify-center mx-auto mb-4",children:e.jsx(K,{"data-loc":"client/src/pages/GuestReschedule.tsx:225",className:"h-8 w-8 text-green-600"})}),e.jsx("h2",{"data-loc":"client/src/pages/GuestReschedule.tsx:227",className:"text-xl font-semibold text-slate-800 mb-2",children:"Rendez-vous reprogrammé"}),e.jsxs("p",{"data-loc":"client/src/pages/GuestReschedule.tsx:228",className:"text-slate-500 mb-4",children:["Votre rendez-vous avec ",e.jsx("strong",{"data-loc":"client/src/pages/GuestReschedule.tsx:229",children:l.hostName})," a été reprogrammé avec succès."]}),r&&e.jsx("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:232",className:"bg-green-50 border border-green-200 rounded-lg p-4 text-left",children:e.jsxs("p",{"data-loc":"client/src/pages/GuestReschedule.tsx:233",className:"text-sm text-green-800",children:[e.jsx("strong",{"data-loc":"client/src/pages/GuestReschedule.tsx:234",children:"Nouveau créneau :"}),e.jsx("br",{"data-loc":"client/src/pages/GuestReschedule.tsx:234"}),h(new Date(r))," à ",u(r)]})}),e.jsxs("p",{"data-loc":"client/src/pages/GuestReschedule.tsx:239",className:"text-sm text-slate-400 mt-4",children:["Un email de confirmation a été envoyé à ",l.guestEmail,"."]})]})})]}):F==="info"?e.jsxs("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:252",className:"min-h-screen flex items-center justify-center p-4",style:{background:"url('https://d2xsxph8kpxj0f.cloudfront.net/310519663277656189/md34hY4tckF7RAhcvxn5EH/ipepper_hero_ia_186b2cd8.webp') center center / cover no-repeat fixed"},children:[e.jsx("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:253",className:"fixed inset-0 bg-white/88 pointer-events-none"}),e.jsxs(b,{"data-loc":"client/src/pages/GuestReschedule.tsx:254",className:"max-w-md w-full relative z-10",children:[e.jsxs(X,{"data-loc":"client/src/pages/GuestReschedule.tsx:255",className:"text-center pb-2",children:[e.jsxs("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:256",className:"inline-flex items-center gap-3 bg-white/90 backdrop-blur-sm rounded-full px-5 py-2.5 shadow-md mb-4",children:[e.jsx("img",{"data-loc":"client/src/pages/GuestReschedule.tsx:257",src:"/clarity-logo.png",alt:"Clarity by iPepper",className:"h-10 w-10 object-contain"}),e.jsxs("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:258",className:"flex flex-col items-start",children:[e.jsx("span",{"data-loc":"client/src/pages/GuestReschedule.tsx:259",className:"text-sm font-bold text-gray-800 leading-tight",children:"Clarity"}),e.jsx("span",{"data-loc":"client/src/pages/GuestReschedule.tsx:260",className:"text-xs text-gray-500 leading-tight",children:"by iPepper"})]})]}),e.jsx("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:263",className:"w-12 h-12 bg-amber-100 rounded-full flex items-center justify-center mx-auto mb-3",children:e.jsx(te,{"data-loc":"client/src/pages/GuestReschedule.tsx:264",className:"h-6 w-6 text-amber-600"})}),e.jsx(ee,{"data-loc":"client/src/pages/GuestReschedule.tsx:266",className:"text-xl",children:"Reprogrammer votre rendez-vous"})]}),e.jsxs(j,{"data-loc":"client/src/pages/GuestReschedule.tsx:268",className:"space-y-4",children:[e.jsxs("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:269",className:"bg-slate-50 rounded-lg p-4 space-y-2",children:[e.jsx("p",{"data-loc":"client/src/pages/GuestReschedule.tsx:270",className:"text-sm text-slate-500",children:"Rendez-vous actuel"}),e.jsx("p",{"data-loc":"client/src/pages/GuestReschedule.tsx:271",className:"font-medium text-slate-800",children:l.subject}),e.jsxs("p",{"data-loc":"client/src/pages/GuestReschedule.tsx:272",className:"text-sm text-slate-600",children:["avec ",e.jsx("strong",{"data-loc":"client/src/pages/GuestReschedule.tsx:273",children:l.hostName})]}),e.jsxs("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:275",className:"flex items-center gap-2 text-sm text-slate-600",children:[e.jsx($,{"data-loc":"client/src/pages/GuestReschedule.tsx:276",className:"h-4 w-4"}),h(new Date(l.startTime))]}),e.jsxs("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:279",className:"flex items-center gap-2 text-sm text-slate-600",children:[e.jsx(A,{"data-loc":"client/src/pages/GuestReschedule.tsx:280",className:"h-4 w-4"}),u(l.startTime)," - ",u(l.endTime)]})]}),e.jsx(v,{"data-loc":"client/src/pages/GuestReschedule.tsx:285",className:"w-full bg-amber-500 hover:bg-amber-600 text-white",onClick:()=>N("calendar"),children:"Choisir un nouveau créneau"}),e.jsx("p",{"data-loc":"client/src/pages/GuestReschedule.tsx:292",className:"text-xs text-slate-400 text-center",children:"Le créneau actuel sera libéré et un email de confirmation sera envoyé."})]})]})]}):e.jsxs("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:304",className:"min-h-screen p-4 md:p-8",style:{background:"url('https://d2xsxph8kpxj0f.cloudfront.net/310519663277656189/md34hY4tckF7RAhcvxn5EH/ipepper_hero_ia_186b2cd8.webp') center center / cover no-repeat fixed"},children:[e.jsx("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:305",className:"fixed inset-0 bg-white/88 pointer-events-none"}),e.jsxs("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:306",className:"max-w-4xl mx-auto relative z-10",children:[e.jsxs("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:308",className:"text-center mb-6",children:[e.jsxs("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:309",className:"inline-flex items-center gap-3 bg-white/90 backdrop-blur-sm rounded-full px-5 py-2.5 shadow-md mb-4",children:[e.jsx("img",{"data-loc":"client/src/pages/GuestReschedule.tsx:310",src:"/clarity-logo.png",alt:"Clarity by iPepper",className:"h-10 w-10 object-contain"}),e.jsxs("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:311",className:"flex flex-col items-start",children:[e.jsx("span",{"data-loc":"client/src/pages/GuestReschedule.tsx:312",className:"text-sm font-bold text-gray-800 leading-tight",children:"Clarity"}),e.jsx("span",{"data-loc":"client/src/pages/GuestReschedule.tsx:313",className:"text-xs text-gray-500 leading-tight",children:"by iPepper"})]})]}),e.jsx("h1",{"data-loc":"client/src/pages/GuestReschedule.tsx:316",className:"text-2xl font-bold text-slate-800 mb-1",children:"Reprogrammer votre rendez-vous"}),e.jsxs("p",{"data-loc":"client/src/pages/GuestReschedule.tsx:317",className:"text-slate-500",children:[l.subject," avec ",l.hostName]}),e.jsxs("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:320",className:"mt-2 inline-flex items-center gap-2 bg-amber-50 border border-amber-200 rounded-lg px-3 py-1.5 text-sm text-amber-700",children:[e.jsx(A,{"data-loc":"client/src/pages/GuestReschedule.tsx:321",className:"h-3.5 w-3.5"}),"Créneau actuel : ",h(new Date(l.startTime))," à ",u(l.startTime)]})]}),e.jsxs("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:326",className:"grid md:grid-cols-2 gap-6",children:[e.jsx(b,{"data-loc":"client/src/pages/GuestReschedule.tsx:328",children:e.jsxs(j,{"data-loc":"client/src/pages/GuestReschedule.tsx:329",className:"px-1 py-3 sm:p-6",children:[e.jsxs("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:331",className:"flex items-center justify-between mb-4",children:[e.jsx("button",{"data-loc":"client/src/pages/GuestReschedule.tsx:332","aria-label":"Précédent",onClick:O,className:"flex h-11 w-11 items-center justify-center rounded-lg hover:bg-slate-100",children:e.jsx(P,{"data-loc":"client/src/pages/GuestReschedule.tsx:333",className:"h-5 w-5 text-slate-600"})}),e.jsx("h3",{"data-loc":"client/src/pages/GuestReschedule.tsx:335",className:"text-lg font-semibold text-slate-800 capitalize",children:Z}),e.jsx("button",{"data-loc":"client/src/pages/GuestReschedule.tsx:336","aria-label":"Suivant",onClick:V,className:"flex h-11 w-11 items-center justify-center rounded-lg hover:bg-slate-100",children:e.jsx(ae,{"data-loc":"client/src/pages/GuestReschedule.tsx:337",className:"h-5 w-5 text-slate-600"})})]}),e.jsx("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:342",className:"grid grid-cols-7 mb-2",children:I.map(s=>e.jsx("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:344",className:"text-center text-xs font-medium text-slate-400 py-1",children:s},s))}),e.jsx("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:351",className:"grid grid-cols-7 gap-1",children:B.map((s,d)=>{const o=s.getMonth()===c.month,g=L(s),p=a&&H(s,a),D=H(s,w),f=o&&S(s),G=f?J(s):null;return e.jsx("button",{"data-loc":"client/src/pages/GuestReschedule.tsx:361",onClick:()=>q(s),disabled:!g||!o,title:G||void 0,className:`
2                        aspect-square min-h-11 flex items-center justify-center text-sm rounded-lg transition-colors sm:min-h-0
3                        ${o?"":"text-slate-200 cursor-default"}
4                        ${o&&f?"text-red-300 cursor-default line-through":""}
5                        ${o&&!g&&!f?"text-slate-300 cursor-default":""}
6                        ${o&&g&&!p?"text-slate-700 hover:bg-amber-50 cursor-pointer":""}
7                        ${p?"bg-amber-500 text-white font-semibold":""}
8                        ${D&&!p?"ring-1 ring-amber-300":""}
9                      `,children:s.getDate()},d)})})]})}),e.jsx(b,{"data-loc":"client/src/pages/GuestReschedule.tsx:385",children:e.jsx(j,{"data-loc":"client/src/pages/GuestReschedule.tsx:386",className:"p-3 sm:p-6",children:a?e.jsxs(e.Fragment,{children:[e.jsxs("h3",{"data-loc":"client/src/pages/GuestReschedule.tsx:396",className:"font-semibold text-slate-800 mb-4",children:["Créneaux du ",h(a)]}),Y?e.jsx("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:401",className:"flex items-center justify-center py-8",children:e.jsx(C,{"data-loc":"client/src/pages/GuestReschedule.tsx:402",className:"h-6 w-6 animate-spin text-amber-500"})}):T?.slots?.length?e.jsxs("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:407",className:"space-y-4",children:[e.jsx("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:408",className:"grid grid-cols-2 gap-2 max-h-64 overflow-y-auto",children:T.slots.map(s=>{const d=r===s.start;return e.jsx("button",{"data-loc":"client/src/pages/GuestReschedule.tsx:412",onClick:()=>R(s.start),className:`
10                                px-4 py-2.5 rounded-lg border text-sm font-medium transition-colors
11                                ${d?"bg-amber-500 text-white border-amber-500":"bg-white text-slate-700 border-slate-200 hover:border-amber-300 hover:bg-amber-50"}
12                              `,children:u(s.start)},s.start)})}),r&&e.jsxs("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:430",className:"pt-4 border-t space-y-3",children:[e.jsxs("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:431",className:"bg-amber-50 border border-amber-200 rounded-lg p-3 text-sm",children:[e.jsxs("p",{"data-loc":"client/src/pages/GuestReschedule.tsx:432",className:"text-amber-800",children:[e.jsx("strong",{"data-loc":"client/src/pages/GuestReschedule.tsx:433",children:"Nouveau créneau :"})," ",h(new Date(r))," à ",u(r)]}),e.jsxs("p",{"data-loc":"client/src/pages/GuestReschedule.tsx:435",className:"text-amber-600 mt-1 text-xs",children:["Remplace : ",h(new Date(l.startTime))," à
12 ",u(l.startTime)]})]}),e.jsxs("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:440",className:"flex flex-col gap-2 sm:flex-row",children:[e.jsx(v,{"data-loc":"client/src/pages/GuestReschedule.tsx:441",variant:"outline",className:"w-full sm:flex-1",onClick:()=>N("info"),children:"Annuler"}),e.jsx(v,{"data-loc":"client/src/pages/GuestReschedule.tsx:448",className:"w-full sm:flex-1 bg-amber-500 hover:bg-amber-600 text-white",onClick:Q,disabled:y.isPending,children:y.isPending?e.jsxs(e.Fragment,{children:[e.jsx(C,{"data-loc":"client/src/pages/GuestReschedule.tsx:455",className:"h-4 w-4 animate-spin mr-2"}),"Reprogrammation..."]}):"Confirmer le nouveau créneau"})]})]})]}):e.jsx("p",{"data-loc":"client/src/pages/GuestReschedule.tsx:405",className:"text-slate-400 text-center py-8",children:"Aucun créneau disponible ce jour"})]}):e.jsx("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:388",className:"h-full flex items-center justify-center text-slate-400",children:e.jsxs("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:389",className:"text-center",children:[e.jsx($,{"data-loc":"client/src/pages/GuestReschedule.tsx:390",className:"h-10 w-10 mx-auto mb-2 opacity-40"}),e.jsx("p",{"data-loc":"client/src/pages/GuestReschedule.tsx:391",children:"Sélectionnez une date"})]})})})})]}),e.jsx("div",{"data-loc":"client/src/pages/GuestReschedule.tsx:474",className:"text-center mt-4",children:e.jsxs(v,{"data-loc":"client/src/pages/GuestReschedule.tsx:475",variant:"ghost",className:"text-slate-500",onClick:()=>N("info"),children:[e.jsx(P,{"data-loc":"client/src/pages/GuestReschedule.tsx:476",className:"h-4 w-4 mr-1"}),"Retour aux informations du rendez-vous"]})})]})]})}export{xe 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.