1import{d as ye,c as a,l as e,m as bt,F as z,r as Y,j as s,h as d,v as he,p as k,t as r,a5 as we,i as Ce,g as u,e as n,L as xe,M as je,a3 as Ze,a4 as be,k as W,B as M,y as et,f as se,Q as as,ah as re,z as gt,R as ke,ai as ns,o as ls,b as os,a8 as rs,ag as is,aj as cs}from"./CiKtckVa.js";import{u as De}from"./C0lOQg6C.js";const ms={class:"admin-campaign-container"},ds={class:"admin-campaign-box"},us={class:"p-8"},ys={class:"grid grid-cols-1 lg:grid-cols-3 gap-6"},vs={class:"lg:col-span-2 space-y-4"},ps=ye({__name:"CartSkeleton",props:{itemCount:{}},setup(t){return(F,i)=>(s(),a("div",ms,[e("div",ds,[e("div",us,[i[2]||(i[2]=bt('<div class="flex justify-between items-center mb-6"><div class="skeleton skeleton-title" style="width:200px;"></div><div class="skeleton skeleton-text" style="width:80px;height:48px;"></div></div><div class="flex gap-8 mb-8 pb-4 border-b border-gray-200"><div class="skeleton skeleton-text" style="width:100px;"></div><div class="skeleton skeleton-text" style="width:80px;"></div><div class="skeleton
1skeleton-text" style="width:70px;"></div><div class="skeleton skeleton-text" style="width:120px;"></div></div>',2)),e("div",ys,[e("div",vs,[(s(!0),a(z,null,Y(t.itemCount,T=>(s(),a("div",{key:T,class:"p-4 rounded-lg",style:{background:"#f8f9fb"}},[...i[0]||(i[0]=[bt('<div class="flex items-start space-x-4"><div class="skeleton" style="width:20px;height:20px;border-radius:4px;"></div><div class="flex-1 space-y-2"><div class="skeleton skeleton-text" style="width:60%;"></div><div class="skeleton skeleton-text" style="width:30%;"></div></div></div>',1)])]))),128))]),i[1]||(i[1]=e("div",{class:"space-y-4"},[e("div",{class:"skeleton",style:{width:"100%",height:"180px","border-radius":"12px"}}),e("div",{class:"skeleton",style:{width:"100%",height:"120px","border-radius":"12px"}})],-1))])])])]))}}),bs={class:"admin-header"},gs={class:"flex justify-between items-center"},fs={class:"text-left"},xs={class:"admin-title"},hs={class:"admin-stats-inline"},$s={class:"admin-stat-inline"},ks={class:"admin-stat-label"},_s={class:"admin-stat-value"},ws=ye({__name:"CartHeader",props:{isShop:{type:Boolean},label:{},count:{}},setup(t){return(F,i)=>{const T=he;return s(),a("header",bs,[e("div",gs,[e("div",fs,[e("h1",xs,[d(T,{name:"material-symbols:shopping-cart-outline",class:"mr-3",style:{"font-size":"2rem"}}),t.isShop?(s(),a(z,{key:0},[k("Boutique")],64)):(s(),a(z,{key:1},[k("Mon Panier")],64))])]),e("div",hs,[e("div",$s,[e("span",ks,r(t.label),1),e("span",_s,r(t.count),1)])])])])}}}),Cs={class:"cart-status-tabs"},Ts=ye({__name:"CartTabs",props:{modelValue:{},hasTravelData:{type:Boolean}},emits:["update:modelValue"],setup(t){return(F,i)=>{const T=he;return s(),a("div",Cs,[e("a",{href:"#",class:Ce(["cart-status-tab",{active:t.modelValue==="e"}]),onClick:i[0]||(i[0]=we(f=>F.$emit("update:modelValue","e"),["prevent"]))},"Reste à payer",2),e("a",{href:"#",class:Ce(["cart-status-tab",{active:t.modelValue==="b"}]),onClick:i[1]||(i[1]=we(f=>F.$emit("update:modelValue","b"),["prevent"]))},"Boutique",2),e("a",{href:"#",class:Ce(["cart-status-tab",{active:t.modelValue==="p"}]),onClick:i[2]||(i[2]=we(f=>F.$emit("update:modelValue","p"),["prevent"]))},"Payées",2),e("a",{href:"#",class:Ce(["cart-status-tab",{active:t.modelValue==="c"}]),onClick:i[3]||(i[3]=we(f=>F.$emit("update:modelValue","c"),["prevent"]))},"Annulés / Supprimés",2),t.hasTravelData?(s(),a("a",{key:0,href:"#",class:Ce(["cart-status-tab",{active:t.modelValue==="t"}]),onClick:i[4]||(i[4]=we(f=>F.$emit("update:modelValue","t"),["prevent"]))},[d(T,{name:"material-symbols:flight",class:"mr-1"}),i[5]||(i[5]=k("Voyages ",-1))],2)):u("",!0)])}}}),Ps={class:"cart-payment-result"},Ss={class:"cart-payment-result-title"},As={class:"cart-payment-result-description"},Ms={key:0,class:"payment-method-card mb-4"},js={class:"text-center"},Ds={class:"mb-3"},Fs=["href"],qs={key:1,class:"cart-payment-result-actions"},Vs=ye({__name:"CartPaymentResult",props:{isSuccess:{type:Boolean},campaignUrl:{}},emits:["go-history","close"],setup(t){return(F,i)=>{const T=he;return s(),a("div",Ps,[e("div",{class:Ce(["cart-payment-result-card",t.isSuccess?"cart-payment-result-card--success":"cart-payment-result-card--error"])},[e("div",{class:Ce(["cart-payment-result-icon",t.isSuccess?"cart-payment-result-icon--success":"cart-payment-result-icon--error"])},[d(T,{name:t.isSuccess?"material-symbols:check-circle":"material-symbols:cancel"},null,8,["name"])],2),e("h2",Ss,r(t.isSuccess?"Paiement réussi !":"Paiement échoué"),1),e("p",As,r(t.isSuccess?"Votre paiement a bien été pris en compte. Vous pouvez retrouver le détail dans votre historique.":"Une erreur est survenue lors du paiement. Veuillez réessayer ou choisir un autre moyen de paiement."),1),t.campaignUrl?(s(),a("div",Ms,[e("div",js,[e("div",Ds,[d(T,{name:"material-symbols:campaign-outline",class:"text-3xl text-blue-600"})]),i[3]||(i[3]=e("div",{class:"text-md font-semibold text-orange-700 mb-2"},"Campagne d'adhésion en cours",-1)),i[4]||(i[4]=e("div",{class:"text-sm text-gray-600 mb-4"},"Attention, votre campagne d'adhésion n'est pas encore terminée. Pensez à la finaliser pour valider votre inscription.",-1)),e("a",{href:t.campaignUrl,class:"payment-btn w-full justify-center"},[i[2]||(i[2]=k(" Continuer la campagne ",-1)),d(T,{name:"material-symbols:arrow-forward",class:"ml-2"})],8,Fs)])])):(s(),a("div",qs,[t.isSuccess?(s(),a("button",{key:0,class:"cart-payment-result-btn cart-payment-result-btn--primary",onClick:i[0]||(i[0]=f=>F.$emit("go-history"))},[d(T,{name:"material-symbols:receipt-long-outline",class:"w-4 h-4"}),i[5]||(i[5]=k(" Voir l'historique ",-1))])):u("",!0),e("button",{class:"cart-payment-result-btn cart-payment-result-btn--secondary",onClick:i[1]||(i[1]=f=>F.$emit("close"))},[d(T,{name:"material-symbols:shopping-cart-outline",class:"w-4 h-4"}),i[6]||(i[6]=k(" Retour au panier ",-1))])]))],2)])}}}),Ls={class:"admin-modal-section"},Ns={class:"admin-modal-section-content"},Hs={class:"text-center py-12"},Is={class:"text-md font-medium text-gray-900 mb-2"},Os={class:"text-gray-500"},Bs=ye({__name:"CartEmptyState",props:{icon:{},title:{},description:{}},setup(t){return(F,i)=>{const T=he;return s(),a("div",Ls,[e("div",Ns,[e("div",Hs,[d(T,{name:t.icon,
1class:"text-6xl text-gray-300 mb-4 block mx-auto"},null,8,["name"]),e("h3",Is,r(t.title),1),e("p",Os,r(t.description),1)])])])}}}),Rs={class:"admin-modal-section"},Es={class:"admin-modal-section-content"},Us={class:"admin-modal-item",style:{background:"transparent",border:"none",padding:"8px 0"}},Qs={class:"flex items-center justify-between"},zs={class:"flex items-center space-x-2"},Gs=["checked",".indeterminate"],Ks={class:"text-sm text-gray-500"},Ws=ye({__name:"CartSelectAll",props:{allSelected:{type:Boolean},indeterminate:{type:Boolean},selectedCount:{}},emits:["toggle"],setup(t){return(F,i)=>(s(),a("div",Rs,[e("div",Es,[e("div",Us,[e("div",Qs,[e("div",zs,[e("label",{class:"cart-custom-checkbox mb-0",title:"Tout sélectionner / désélectionner",onClick:i[0]||(i[0]=we(T=>F.$emit("toggle"),["prevent"]))},[e("input",{type:"checkbox",class:"hidden",checked:t.allSelected,".indeterminate":t.indeterminate},null,40,Gs),i[1]||(i[1]=e("span",{class:"checkmark"},null,-1)),i[2]||(i[2]=e("span",{class:"text-sm text-gray-600 font-normal",style:{"margin-top":"3px"}},"Tout",-1))])]),e("div",Ks,r(t.selectedCount)+" sélectionné(s) ",1)])])])]))}}),Ys={key:0,class:"admin-modal-item"},Js={class:"p-4 bg-green-50 border border-green-200 rounded-lg"},Xs={class:"flex items-center mb-2"},Zs={key:0,class:"text-sm text-green-700 flex items-center"},ea={key:1,class:"text-sm text-green-700 flex items-center"},ta={key:2,class:"text-sm text-green-700"},sa={class:"font-semibold text-green-800 mt-2"},aa={key:1,class:"admin-modal-item"},na={class:"flex items-start justify-between space-x-4"},la={class:"flex items-center"},oa=["checked"],ra=["title"],ia={key:2,class:"w-6"},ca={class:"flex-1"},ma={class:"flex items-start justify-between mb-2"},da={class:"flex-1 mr-4"},ua={class:"text-md font-semibold text-gray-900 mb-1"},ya={class:"text-sm font-medium text-gray-600"},va={class:"text-xs text-gray-500 mt-1 flex items-center"},pa=["value"],ba=["value"],ga={key:1,class:"ml-1"},fa={key:0,class:"text-xs font-medium text-gray-600 mt-2"},xa={key:1,class:"text-xs font-medium text-green-800 mt-2"},ha={class:"mt-2 p-3 bg-green-50 border border-green-200 rounded-lg text-xs text-green-800"},$a={key:2,class:"text-xs font-medium text-amber-700 mt-1 flex items-center"},ka={key:0,class:"ml-1"},_a={class:"flex items-center space-x-2"},wa={key:0,class:"text-sm text-gray-500 mb-2 flex items-center"},Ca={key:1,class:"p-3 bg-orange-50 border border-orange-200 rounded-lg mt-2"},Ta={class:"flex items-center"},Pa={key:2,class:"mt-2 text-sm text-gray-600 flex items-center"},Sa={key:3,class:"mt-2 text-sm text-gray-600 flex items-center"},Aa={key:4,class:"mt-2 text-sm text-gray-600 flex items-center"},Ma={key:5,class:"mt-2 p-2 bg-blue-50 border border-blue-200 rounded-lg"},ja={class:"flex items-start text-xs text-blue-800"},Da={key:6,class:"mt-3"},Fa={class:"mt-2 space-y-2"},qa={class:"flex items-start space-x-3"},Va={class:"flex-1"},La={class:"text-sm font-medium text-gray-900"},Na={class:"text-sm text-gray-600 mt-1"},Ha={class:"text-sm text-gray-400 mt-1"},Ia={key:7,class:"mt-3 p-3 bg-gray-50 border border-gray-200 rounded-lg"},Oa={class:"flex justify-end mt-2 space-x-2"},Ba={key:8,class:"mt-3 p-3 bg-red-50 border border-red-200 rounded-lg"},Ra={class:"flex justify-end mt-2 space-x-2"},Ea=ye({__name:"CartItem",props:{cart:{},selected:{type:Boolean},selectable:{type:Boolean},quantity:{},displayName:{},hasTerms:{type:Boolean},comments:{}},emits:["toggle","confirm","comment","delete","update-quantity"],setup(t,{emit:F}){const i=t,T=F,{formatEuro:f,formatDateTime:c,periodSentence:b,translatePaymentMethodName:x}=De(),w=W(()=>i.cart.mollie_method==="banktransfer"||i.cart.mollie_method==="paybybank"?"Paiement par virement en cours de validation. Cela peut prendre jusqu'à 3 jours.":"Paiement en cours de validation. Cela peut prendre quelques minutes."),R=M(!1),S=M(!1),G=M(!1),H=M(!1),D=M(""),g=M("");function E(){D.value.trim()&&(T("comment",i.cart.token,D.value.trim()),D.value="",R.value=!1)}function _(){T("delete",i.cart.token,g.value.trim()),g.value="",S.value=!1}return(h,v)=>{const $=he;return t.cart.prepayed&&t.cart.amount<0?(s(),a("div",Ys,[e("div",Js,[e("div",Xs,[d($,{name:"material-symbols:account-balance-wallet-outline",class:"text-green-600 mr-2"}),v[12]||(v[12]=e("span",{class:"font-medium text-green-800"},"Montant prépayé disponible",-1))]),t.cart.calendar?(s(),a("div",Zs,[d($,{name:"material-symbols:event-outline",class:"mr-1"}),k(" "+r(t.cart.calendar.place)+" - "+r(n(b)(t.cart.calendar.fromDate,t.cart.calendar.toDate)),1)])):t.cart.user_calendar_slot?(s(),a("div",ea,[d($,{name:"material-symbols:schedule-outline",class:"mr-1"}),k(" "+r(t.cart.user_calendar_slot.calendarSlotCategory?.name)+" - "+r(n(b)(t.cart.user_calendar_slot.fromDatetime,t.cart.user_calendar_slot.toDatetime)),1)])):(s(),a("div",ta,r(t.cart.name),1)),e("div",sa,r(n(f)(t.cart.amount)),1)])])):(s(),a("div",aa,[e("div",na,[e("div",la,[t.selectable?(s(),a("label",{key:0,class:"cart-custom-c
1heckbox mb-0",onClick:v[0]||(v[0]=we(L=>h.$emit("toggle",t.cart.token),["prevent"]))},[e("input",{type:"checkbox",class:"hidden",checked:t.selected},null,8,oa),v[13]||(v[13]=e("span",{class:"checkmark"},null,-1))])):t.cart.mollie_pending?(s(),a("div",{key:1,class:"w-6 flex items-center justify-center",title:n(w)},[d($,{name:"material-symbols:sync",class:"text-blue-600 animate-spin text-xl"})],8,ra)):(s(),a("div",ia))]),e("div",ca,[e("div",ma,[e("div",da,[e("div",ua,r(t.displayName),1),e("div",ya,r(n(f)(t.cart.amount-(t.cart.amount_payed||0))),1),e("div",va,[v[14]||(v[14]=e("span",null,"Quantité :",-1)),t.cart.editable_quantity?(s(),a("select",{key:0,value:t.quantity,class:"ml-2 px-2 py-1 border border-gray-300 rounded text-center text-xs bg-white",onChange:v[1]||(v[1]=L=>h.$emit("update-quantity",t.cart.token,L))},[(s(!0),a(z,null,Y(t.cart.quantities||99,L=>(s(),a("option",{key:L,value:L},r(L),9,ba))),128))],40,pa)):(s(),a("span",ga,r(t.cart.quantity||1),1))]),t.cart.tariffPlanPrices?.description?(s(),a("div",fa,r(t.cart.tariffPlanPrices.description),1)):u("",!0),t.hasTerms?(s(),a("div",xa,[e("div",{class:"flex items-center cursor-pointer",onMouseenter:v[2]||(v[2]=L=>H.value=!0),onMouseleave:v[3]||(v[3]=L=>H.value=!1)},[d($,{name:"material-symbols:schedule-outline",class:"mr-1"}),v[15]||(v[15]=k(" Paiement en plusieurs fois disponible ",-1)),d($,{name:"material-symbols:help-outline",class:"ml-1 text-gray-400"})],32),xe(e("div",ha,[d($,{name:"material-symbols:info-outline",class:"mr-1"}),v[16]||(v[16]=k(" Le paiement en plusieurs fois est activé pour cet article. Pour payer en plusieurs fois, sélectionnez uniquement des articles compatibles avec cette option, et sélectionnez paiement en plusieurs fois sous la méthode de paiement. ",-1))],512),[[je,n(H)]])])):u("",!0),t.cart.cartType?.variable_price?(s(),a("div",$a,[d($,{name:"material-symbols:edit",class:"mr-1"}),v[17]||(v[17]=k(" Paiement libre disponible ",-1)),t.cart.cartType?.variable_price_minimum?(s(),a("span",ka,"(minimum "+r(t.cart.cartType.variable_price_minimum)+" â¬)",1)):u("",!0)])):u("",!0)]),e("div",_a,[Math.floor(t.cart.amount)===0&&!t.cart.termPayed?(s(),a("button",{key:0,type:"button",class:"admin-btn-icon-small",title:"Confirmer produit gratuit",onClick:v[4]||(v[4]=L=>h.$emit("confirm",t.cart.token))},[d($,{name:"material-symbols:check-outline",class:"text-green-600"})])):u("",!0),e("button",{type:"button",class:"admin-btn-icon-small",title:"Ajouter un commentaire",onClick:v[5]||(v[5]=L=>R.value=!n(R))},[d($,{name:"material-symbols:add-comment-outline"})]),t.cart.is_deleteable&&!t.cart.mollie_pending?(s(),a("button",{key:1,type:"button",class:"admin-btn-icon-small",title:"Supprimer",onClick:v[6]||(v[6]=L=>S.value=!n(S))},[d($,{name:"material-symbols:delete-outline",class:"text-red-600"})])):u("",!0)])]),t.cart.user_calendar_slot?(s(),a("div",wa,[d($,{name:"material-symbols:schedule-outline",class:"mr-1"}),k(" "+r(t.cart.user_calendar_slot.calendarSlotCategory?.name)+" â "+r(n(c)(t.cart.user_calendar_slot.fromDatetime))+" â "+r(n(c)(t.cart.user_calendar_slot.toDatetime)),1)])):u("",!0),t.cart.is_not_payment_limit?u("",!0):(s(),a("div",Ca,[e("div",Ta,[d($,{name:"material-symbols:warning-outline",class:"text-orange-600 mr-2"}),v[18]||(v[18]=e("span",{class:"text-sm text-orange-800"},"Le paiement sera possible après validation par un administrateur",-1))])])),t.cart.termPayed&&t.cart.payment_method?(s(),a("div",Pa,[d($,{name:"material-symbols:payments-outline",class:"mr-1"}),k(" Paiement "+r(n(x)(t.cart.payment_method.name))+" ",1),v[19]||(v[19]=e("span",{class:"text-gray-500 ml-1"},"(En attente de vérification par le/la trésorier(e))",-1))])):t.cart.paymentMethodDefinedAt&&t.cart.payment_method?(s(),a("div",Sa,[d($,{name:"material-symbols:payments-outline",class:"mr-1"}),k(" Paiement "+r(n(x)(t.cart.payment_method.name))+" ",1),v[20]||(v[20]=e("span",{class:"text-gray-500 ml-1"},"(En attente de vérification par le/la trésorier(e))",-1))])):u("",!0),t.cart.termName?(s(),a("div",Aa,[d($,{name:"material-symbols:schedule-outline",class:"mr-1"}),k(" "+r(t.cart.termName),1)])):u("",!0),t.cart.mollie_pending?(s(),a("div",Ma,[e("div",ja,[d($,{name:"material-symbols:sync",class:"text-sm mr-1 mt-0.5 flex-shrink-0 animate-spin"}),k(" "+r(n(w)),1)])])):u("",!0),t.comments.length>0?(s(),a("div",Da,[e("button",{type:"button",class:"text-sm underline cursor-pointer",onClick:v[7]||(v[7]=L=>G.value=!n(G))}," Afficher les commentaires ("+r(t.comments.length)+") ",1),xe(e("div",Fa,[(s(!0),a(z,null,Y(t.comments,(L,ge)=>(s(),a("div",{key:ge,class:"p-3 bg-gray-50 border border-gray-200 rounded-lg"},[e("div",qa,[e("div",Va,[e("div",La,r(L.from_user),1),e("div",Na,r(L.message),1),e("div",Ha,r(n(c)(L.date)),1)])])]))),128))],512),[[je,n(G)]])])):u("",!0),n(R)?(s(),a("div",Ia,[xe(e("textarea",{"onUpdate:modelValue":v[8]||(v[8]=L=>be(D)?D.value=L:null),class:"w-full px-3 py-2 border border-gray-300 rounded-lg text-sm bg-white",rows:"2",placeholder:"Votre commentaire..."},null,512),[[Ze,n(D)]]),e("div",Oa,[e("button",{type:"button",class:"px-3 py-1 text-sm text-gray-600 bg-gray-100 rounded hover:bg-gray-200",onClick:v[9]||(v[9]=L=>R.value=!1)},"Annuler"),e("button",{type:"button",class:"px-3 py-1 text-sm text-white bg-blue-600 rounded hover:bg-blue-700",onClick:E},"Envoyer")])])):u("",!0),n(S)?(s(),a("div",Ba,[v[21]||(v[21]=e("p",{class:"text-sm text-red-800 mb
1-2"},"Voulez-vous vraiment supprimer cet article ?",-1)),xe(e("textarea",{"onUpdate:modelValue":v[10]||(v[10]=L=>be(g)?g.value=L:null),class:"w-full px-3 py-2 border border-gray-300 rounded-lg text-sm bg-white",rows:"1",placeholder:"Raison (optionnel)..."},null,512),[[Ze,n(g)]]),e("div",Ra,[e("button",{type:"button",class:"px-3 py-1 text-sm text-gray-600 bg-gray-100 rounded hover:bg-gray-200",onClick:v[11]||(v[11]=L=>S.value=!1)},"Annuler"),e("button",{type:"button",class:"px-3 py-1 text-sm text-white bg-red-600 rounded hover:bg-red-700",onClick:_},"Supprimer")])])):u("",!0)])])]))}}}),Ua={class:"lg:col-span-1"},Qa={key:0,class:"payment-method-card mb-4"},za={class:"text-center"},Ga={class:"mb-3"},Ka=["href"],Wa={class:"flex justify-between items-start mb-4"},Ya={class:"flex-1"},Ja={class:"total-amount mb-2"},Xa={key:0,class:"mb-3 p-3 bg-blue-50 border border-blue-200 rounded-lg"},Za={class:"text-sm font-medium text-blue-800 mb-2 flex items-center"},en={class:"flex items-center"},tn=["value","min","max","placeholder"],sn={key:0,class:"text-xs text-amber-600 mt-1"},an={key:1,class:"text-xs text-amber-600 mt-0.5"},nn={key:2,class:"mt-2"},ln=["innerHTML"],on={key:2,class:"text-md font-medium text-gray-700 mb-2"},rn={class:"mb-4"},cn={key:0,src:"https://vpdive.com/files/images/logocb.png",alt:"CB",class:"h-12 object-contain"},mn={key:1,src:"https://vpdive.com/files/images/logo/helloasso.png",alt:"HelloAsso",class:"h-12 object-contain"},dn={key:2,src:"https://vpdive.com/files/images/logo/vpaydive.png",alt:"VPayDive",class:"h-12 object-contain"},un=["disabled","onClick"],yn={key:0,class:"mt-4"},vn={class:"text-sm font-medium text-gray-700 mb-2 flex items-center"},pn=["value"],bn=["value"],gn={key:0,class:"mt-3 space-y-2"},fn={class:"flex items-center text-sm text-gray-700"},xn={class:"font-medium"},hn={class:"ml-2 text-gray-500"},$n={class:"text-xs text-gray-500"},kn={key:1,class:"payment-method-card primary"},_n={class:"total-amount"},wn={class:"flex justify-between items-center mb-4"},Cn={class:"flex-1"},Tn={class:"text-md font-semibold text-gray-900 mb-2"},Pn=["innerHTML"],Sn=["disabled","onClick"],An=ye({__name:"CartPaymentMethods",props:{cbMethods:{},normalMethods:{},total:{},hasVariablePrice:{type:Boolean},variableAmount:{},variablePriceMinimum:{},variablePriceMax:{},hasTerms:{type:Boolean},terms:{},termSchedule:{},acceptedTerm:{},loading:{type:Boolean},campaignUrl:{}},emits:["pay","update:variableAmount","update:acceptedTerm"],setup(t){const{t:F}=et(),{translatePaymentType:i,formatEuro:T}=De();function f(c){return new Date(c).toLocaleDateString("fr-FR",{day:"2-digit",month:"2-digit",year:"numeric"})}return(c,b)=>{const x=he;return s(),a("div",Ua,[t.campaignUrl?(s(),a("div",Qa,[e("div",za,[e("div",Ga,[d(x,{name:"material-symbols:campaign-outline",class:"text-3xl text-blue-600"})]),b[4]||(b[4]=e("div",{class:"text-md font-semibold text-gray-900 mb-2"},"Campagne d'adhésion",-1)),b[5]||(b[5]=e("div",{class:"text-sm text-gray-600 mb-4"},"Retourner à votre campagne d'adhésion en cours",-1)),e("a",{href:t.campaignUrl,class:"payment-btn w-full justify-center"},[b[3]||(b[3]=k(" Continuer la campagne ",-1)),d(x,{name:"material-symbols:arrow-forward",class:"ml-2"})],8,Ka)])])):u("",!0),(s(!0),a(z,null,Y(t.cbMethods,(w,R)=>(s(),a("div",{key:"cb-"+w.id,class:Ce(["payment-method-card",{primary:R===0}])},[e("div",Wa,[e("div",Ya,[e("div",Ja,[b[6]||(b[6]=k("Total : ",-1)),e("span",null,r(t.total),1)]),t.hasVariablePrice?(s(),a("div",Xa,[e("div",Za,[d(x,{name:"material-symbols:edit",class:"mr-1"}),b[7]||(b[7]=k(" Montant personnalisé ",-1))]),b[9]||(b[9]=e("div",{class:"text-xs text-blue-600 mb-2"}," Vous pouvez choisir le montant que vous souhaitez payer pour les articles à prix libre. ",-1)),e("div",en,[e("input",{type:"number",value:t.variableAmount,min:t.variablePriceMinimum||0,max:t.variablePriceMax||void 0,step:"0.01",class:"flex-1 px-3 py-2 border border-gray-300 rounded-lg text-sm bg-white",placeholder:t.variablePriceMinimum?String(t.variablePriceMinimum):"0.00",onInput:b[0]||(b[0]=S=>c.$emit("update:variableAmount",Number(S.target.value)))},null,40,tn),b[8]||(b[8]=e("span",{class:"ml-2 text-gray-600"},"â¬",-1))]),t.variablePriceMinimum?(s(),a("div",sn," Montant minimum : "+r(t.variablePriceMinimum)+" ⬠",1)):u("",!0),t.variablePriceMa
1x?(s(),a("div",an," Montant restant dû : "+r(t.variablePriceMax)+" ⬠",1)):u("",!0),t.variableAmount!=null&&t.variableAmount>0?(s(),a("div",nn,[e("button",{type:"button",class:"text-xs px-2 py-1 rounded bg-gray-100 text-gray-600 hover:bg-gray-200 transition-colors",onClick:b[1]||(b[1]=S=>c.$emit("update:variableAmount",0))}," Réinitialiser ")])):u("",!0)])):u("",!0),w.comment?(s(),a("div",{key:1,class:"text-md font-medium text-gray-700 mb-2",innerHTML:w.comment},null,8,ln)):(s(),a("div",on,r(n(F)(`cart.cbPaymentLabel.${w.name}`,w.name)),1)),e("div",rn,[w.id===3?(s(),a("img",cn)):w.id===6?(s(),a("img",mn)):(s(),a("img",dn))])])]),e("button",{type:"button",class:"payment-btn w-full justify-center",disabled:t.loading,onClick:S=>c.$emit("pay",w.id)},[t.loading?(s(),se(x,{key:0,name:"material-symbols:progress-activity",class:"animate-spin"})):(s(),se(x,{key:1,name:"material-symbols:credit-card-outline"})),k(" "+r(t.loading?"Chargement...":n(F)(`cart.cbButtonLabel.${w.name}`,w.name)),1)],8,un),t.hasTerms&&[6,9].includes(w.id)?(s(),a("div",yn,[e("div",vn,[d(x,{name:"material-symbols:schedule-outline",class:"mr-1"}),b[10]||(b[10]=k(" Paiement en plusieurs fois ",-1))]),e("select",{value:t.acceptedTerm,class:"w-full px-3 py-2 border border-gray-300 rounded-lg text-sm bg-white",onChange:b[2]||(b[2]=S=>c.$emit("update:acceptedTerm",S.target.value))},[b[11]||(b[11]=e("option",{value:"base"},"Paiement comptant",-1)),(s(!0),a(z,null,Y(t.terms,S=>(s(),a("option",{key:S.id,value:S.token},r(S.label),9,bn))),128))],40,pn),t.termSchedule&&t.termSchedule.length>0?(s(),a("div",gn,[(s(!0),a(z,null,Y(t.termSchedule,(S,G)=>(s(),a("div",{key:G,class:"flex items-center justify-between p-2 bg-gray-50 rounded-lg"},[e("div",fn,[d(x,{name:"material-symbols:euro",class:"mr-1 text-green-600"}),e("span",xn,r(n(T)(S.amount)),1),e("span",hn,"Ãchéance "+r(G+1)+"/"+r(t.termSchedule.length)+" ("+r(S.percent)+"%)",1)]),e("div",$n,r(f(S.date)),1)]))),128)),b[12]||(b[12]=e("div",{class:"text-xs text-gray-400 italic"}," Dates indicatives â la 1re échéance est débitée immédiatement. ",-1))])):u("",!0)])):u("",!0)],2))),128)),t.cbMethods.length===0?(s(),a("div",kn,[e("div",_n,[b[13]||(b[13]=k("Total : ",-1)),e("span",null,r(t.total),1)])])):u("",!0),(s(!0),a(z,null,Y(t.normalMethods,(w,R)=>(s(),a("div",{key:"normal-"+R,class:"payment-method-card"},[e("div",wn,[e("div",Cn,[e("h4",Tn,r(n(i)(w.name)),1),w.description?(s(),a("div",{key:0,class:"text-sm text-gray-600 whitespace-pre-line",innerHTML:w.description},null,8,Pn)):u("",!0)])]),e("button",{type:"button",class:"payment-btn w-full justify-center",disabled:t.loading,onClick:S=>c.$emit("pay",w.id)},[t.loading?(s(),se(x,{key:0,name:"material-symbols:progress-activity",class:"animate-spin"})):(s(),se(x,{key:1,name:"material-symbols:payments-outline"})),k(" "+r(t.loading?"Chargement...":"Choisir ce mode de paiement"),1)],8,Sn)]))),128))])}}}),Mn={class:"mb-8 bg-white rounded-xl border-2 shadow-sm overflow-hidden",style:{"border-color":"var(--travel-color, #e65100)"}},jn={class:"flex items-center"},Dn={class:"w-10 h-10 rounded-full flex items-center justify-center mr-3",style:{background:"var(--travel-color, #e65100)"}},Fn={class:"font-semibold text-gray-900"},qn={class:"text-sm",style:{color:"var(--travel-dark, #bf360c)"}},Vn={class:"flex items-center gap-4"},Ln={class:"text-right"},Nn={class:"font-semibold",style:{color:"var(--travel-color, #e65100)"}},Hn={key:0,class:"p-4"},In={key:0,class:"flex items-center justify-center py-8"},On={key:1,class:"text-center py-8 text-gray-500"},Bn={key:2,class:"grid grid-cols-1 lg:grid-cols-3 gap-6"},Rn={class:"lg:col-span-2"},En={class:"admin-modal-item",style:{background:"transparent",border:"none",padding:"8px 0"}},Un={class:"flex items-center justify-between"},Qn={key:0,class:"text-sm text-gray-600"},zn={class:"text-sm",style:{color:"var(--travel-dark, #bf360c)"}},Gn={key:0,class:"text-sm font-medium text-gray-700 mb-2 flex items-center px-2"},Kn={class:"flex items-start justify-between space-x-4"},Wn={class:"flex items-center"},Yn=["onClick"],Jn=["checked"],Xn={key:1,class:"w-6"},Zn={class:"flex-1"},el={class:"flex items-start justify-between mb-2"},tl={class:"flex-1 mr-4"},sl={class:"text-md font-semibold text-gray-900 mb-1"},al={class:"text-sm font-medium text-gray-600"},nl={key:0,class:"text-xs text-gray-500 mt-1"},ll={key:1,class:"text-xs text-gray-500 mt-1"},ol={key:2,class:"text-xs font-medium text-green-800 mt-1 flex items-center"},rl={key:3,class:"text-xs font-medium text-amber-700 mt-1 flex items-center"},il={key:0,class:"ml-1"},cl={class:"lg:col-span-1"},ml={key:0,class:"payment-method-card bg-amber-50 border-amber-200 mb-4"},dl={class:"flex items-center mb-3"},ul={class:"w-8 h-8 bg-amber-500 rounded-full flex items-center justify-center mr-3"},yl={class:"flex items-center gap-2"},vl=["value","min","max","placeholder"],pl={key:0,class:"text-xs text-amber-600 mt-1"},bl={key:1,class:"text-xs text-amber-600 mt-0.5"},gl={key:2,class:"mt-2"},fl={class:"flex justify-between items-start mb-4"},xl={class:"flex-1"},hl={class:"total-amount mb-2",style:{color:"var(--travel-dark, #bf360c)"}},$l={class:"text-md font-medium text-gray-700 mb-2"},kl={key:0,class:"mb-4"},_l={key:1,class:"mb-4"},wl=["disabled","onClick"],Cl={key:0,class:"mt-4"},Tl={class:"text-sm font-medium text-gray-700 mb-2 flex items-center"},Pl=["value"],Sl=["value"],Al={key:1,class:"payment-method-card travel-payment-primary"},Ml={class:"total-amount",style:{color:"var(--travel-dark, #bf360c)"}},jl={class:"flex items-center mb-3"},Dl={class:"font-medium"},Fl={key:0,class:"text-sm text-gray-500 mb-3"},ql=["disabled","onClick"],Vl=ye({__name:"TravelAccordion",props:{travel:{},expanded:{type:Boolean},loading:{type:Boolean},cartGroups:{},cartItems:{},selectedTokens:{},selectedCount:{},selectedTotal:{}
1,remainingAmount:{},hasVariablePrice:{type:Boolean},variableAmount:{},variablePriceMinimum:{},variablePriceMax:{},hasTermsSupport:{type:Boolean},terms:{},acceptedTerm:{},cbPaymentMethods:{},normalPaymentMethods:{},paymentLoading:{type:Boolean}},emits:["toggle","toggle-item","pay","update:variableAmount","update:acceptedTerm"],setup(t){const{t:F}=et(),{formatEuro:i,formatDateOnly:T,getCartDisplayName:f,hasTermsSupport:c,translatePaymentMethodName:b,isCartFullyPaid:x,isTravelSelectable:w,cartRemainingAmount:R}=De();function S(D){return D.carts?.filter(g=>!x(g))||[]}function G(D){return w(D)}function H(D){return c(D)}return(D,g)=>{const E=he;return s(),a("div",Mn,[e("div",{class:"p-4 cursor-pointer transition-colors flex items-center justify-between",style:{background:"var(--travel-light, #fff3e0)","border-color":"var(--travel-color, #e65100)"},onClick:g[0]||(g[0]=_=>D.$emit("toggle",t.travel.token))},[e("div",jn,[e("div",Dn,[d(E,{name:"material-symbols:flight",class:"text-white text-xl"})]),e("div",null,[e("div",Fn,r(t.travel.title),1),e("div",qn,[k(r(t.travel.destination),1),t.travel.displayDate!==!1?(s(),a(z,{key:0},[k(" â Du "+r(n(T)(t.travel.departureDate))+" au "+r(n(T)(t.travel.returnDate)),1)],64)):u("",!0)])])]),e("div",Vn,[e("div",Ln,[g[4]||(g[4]=e("div",{class:"text-sm text-gray-500"},"Reste à payer",-1)),e("div",Nn,r(t.remainingAmount),1)]),d(E,{name:t.expanded?"material-symbols:expand-less":"material-symbols:expand-more",class:"text-2xl",style:{color:"var(--travel-color, #e65100)"}},null,8,["name"])])]),t.expanded?(s(),a("div",Hn,[t.loading?(s(),a("div",In,[d(E,{name:"material-symbols:progress-activity",class:"animate-spin text-2xl",style:{color:"var(--travel-color, #e65100)"}}),g[5]||(g[5]=e("span",{class:"ml-2 text-gray-500"},"Chargement des articles...",-1))])):t.cartItems.length===0?(s(),a("div",On,[d(E,{name:"material-symbols:check-circle-outline",class:"text-3xl text-green-500 mb-2 block mx-auto"}),g[6]||(g[6]=k(" Tous les articles de ce voyage sont payés ",-1))])):(s(),a("div",Bn,[e("div",Rn,[e("div",En,[e("div",Un,[t.travel.displayDate!==!1?(s(),a("div",Qn," Du "+r(n(T)(t.travel.departureDate))+" au "+r(n(T)(t.travel.returnDate)),1)):u("",!0),e("div",zn,r(t.selectedCount)+" sélectionné(s) ",1)])]),(s(!0),a(z,null,Y(t.cartGroups,_=>(s(),a("div",{key:_.token,class:"mb-4"},[_.ownerName?(s(),a("div",Gn,[d(E,{name:"material-symbols:person-outline",class:"mr-1"}),k(" "+r(_.ownerName),1)])):u("",!0),(s(!0),a(z,null,Y(S(_),h=>(s(),a("div",{key:h.token,class:"admin-modal-item"},[e("div",Kn,[e("div",Wn,[G(h)?(s(),a("label",{key:0,class:"cart-custom-checkbox mb-0",onClick:we(v=>D.$emit("toggle-item",h.token),["prevent"])},[e("input",{type:"checkbox",class:"hidden",checked:t.selectedTokens.has(h.token)},null,8,Jn),g[7]||(g[7]=e("span",{class:"checkmark"},null,-1))],8,Yn)):(s(),a("div",Xn))]),e("div",Zn,[e("div",el,[e("div",tl,[e("div",sl,r(n(f)(h)),1),e("div",al,r(n(i)(n(R)(h))),1),(h.quantity||1)>1?(s(),a("div",nl," Quantité : "+r(h.quantity),1)):u("",!0),(h.amount_payed||0)>0?(s(),a("div",ll," Déjà réglé : "+r(n(i)(h.amount_payed||0)),1)):u("",!0),H(h)?(s(),a("div",ol,[d(E,{name:"material-symbols:schedule-outline",class:"mr-1"}),g[8]||(g[8]=k(" Paiement en plusieurs fois disponible ",-1))])):u("",!0),h.cartType?.variable_price?(s(),a("div",rl,[d(E,{name:"material-symbols:edit",class:"mr-1"}),g[9]||(g[9]=k(" Paiement libre disponible ",-1)),h.cartType?.variable_price_minimum?(s(),a("span",il,"(minimum "+r(h.cartType.variable_price_minimum)+" â¬)",1)):u("",!0)])):u("",!0)])])])])]))),128))]))),128))]),e("div",cl,[t.hasVariablePrice?(s(),a("div",ml,[e("div",dl,[e("div",ul,[d(E,{name:"material-symbols:edit",class:"text-white"})]),g[10]||(g[10]=e("div",null,[e("div",{class:"font-medium text-amber-800"},"Paiement libre disponible"),e("div",{class:"text-sm text-amber-600"},"Choisissez le montant à payer")],-1))]),e("div",yl,[g[11]||(g[11]=e("label",{class:"text-sm text-gray-700"},"Montant :",-1)),e("input",{value:t.variableAmount,type:"number",min:t.variablePriceMinimum||0,max:t.variablePriceMax||void 0,step:"0.01",class:"flex-1 px-3 py-2 border border-amber-300 rounded-lg text-sm bg-white",placeholder:t.variablePriceMinimum?String(t.variablePriceMinimum):"0.00",onInput:g[1]||(g[1]=_=>D.$emit("update:variableAmount",Number(_.target.value)))},null,40,vl),g[12]||(g[12]=e("span",{class:"text-gray-500 font-medium"},"â¬",-1))]),t.variablePriceMinimum?(s(),a("div",pl," Montant minimum : "+r(n(i)(t.variablePriceMinimum)),1)):u("",!0),t.variablePriceMa
1x?(s(),a("div",bl," Montant restant dû : "+r(n(i)(t.variablePriceMax)),1)):u("",!0),t.variableAmount!=null&&t.variableAmount>0?(s(),a("div",gl,[e("button",{type:"button",class:"text-xs px-2 py-1 rounded bg-gray-100 text-gray-600 hover:bg-gray-200 transition-colors",onClick:g[2]||(g[2]=_=>D.$emit("update:variableAmount",0))}," Réinitialiser ")])):u("",!0)])):u("",!0),(s(!0),a(z,null,Y(t.cbPaymentMethods,_=>(s(),a("div",{key:"cb-travel-"+_.id,class:"payment-method-card travel-payment-primary"},[e("div",fl,[e("div",xl,[e("div",hl,[g[13]||(g[13]=k(" Total : ",-1)),e("span",null,r(t.selectedTotal),1)]),e("div",$l,r(n(F)("cart.payments."+_.name)),1),_.name==="vpaydive"?(s(),a("div",kl,[...g[14]||(g[14]=[e("img",{src:"https://vpdive.com/files/images/logo/vpaydive.png",alt:"VPayDive",class:"h-12 object-contain"},null,-1)])])):_.name==="helloasso"?(s(),a("div",_l,[...g[15]||(g[15]=[e("img",{src:"https://vpdive.com/files/images/logo/helloasso.png",alt:"HelloAsso",class:"h-12 object-contain"},null,-1)])])):u("",!0)])]),e("button",{type:"button",class:"travel-payment-btn w-full justify-center",disabled:t.paymentLoading||t.selectedCount===0,onClick:h=>D.$emit("pay",_.id)},[t.paymentLoading?(s(),se(E,{key:0,name:"material-symbols:progress-activity",class:"animate-spin"})):(s(),se(E,{key:1,name:"material-symbols:credit-card-outline"})),k(" "+r(t.paymentLoading?"Chargement...":"Payer avec "+n(F)("cart.payments."+_.name)),1)],8,wl),t.hasTermsSupport&&t.terms.length>0?(s(),a("div",Cl,[e("div",Tl,[d(E,{name:"material-symbols:schedule-outline",class:"mr-1"}),g[16]||(g[16]=k(" Paiement en plusieurs fois ",-1))]),e("select",{value:t.acceptedTerm,class:"w-full px-3 py-2 border border-gray-300 rounded-lg text-sm bg-white",onChange:g[3]||(g[3]=h=>D.$emit("update:acceptedTerm",h.target.value))},[g[17]||(g[17]=e("option",{value:"base"},"Paiement comptant",-1)),(s(!0),a(z,null,Y(t.terms,h=>(s(),a("option",{key:h.id,value:h.id},r(h.label),9,Sl))),128))],40,Pl)])):u("",!0)]))),128)),t.cbPaymentMethods.length===0?(s(),a("div",Al,[e("div",Ml,[g[18]||(g[18]=k(" Total : ",-1)),e("span",null,r(t.selectedTotal),1)])])):u("",!0),(s(!0),a(z,null,Y(t.normalPaymentMethods,(_,h)=>(s(),a("div",{key:"normal-travel-"+h,class:"payment-method-card"},[e("div",jl,[d(E,{name:"material-symbols:payments-outline",class:"text-gray-600 mr-2"}),e("span",Dl,r(n(b)(_.name)),1)]),_.description?(s(),a("p",Fl,r(_.description),1)):u("",!0),e("button",{type:"button",class:"travel-payment-btn w-full",disabled:t.paymentLoading||t.selectedCount===0,onClick:v=>D.$emit("pay",_.id)},[t.paymentLoading?(s(),se(E,{key:0,name:"material-symbols:progress-activity",class:"animate-spin"})):(s(),se(E,{key:1,name:"material-symbols:payments-outline"})),k(" "+r(t.paymentLoading?"Chargement...":"Choisir ce mode de paiement"),1)],8,ql)]))),128))])]))])):u("",!0)])}}}),Ll=as(Vl,[["__scopeId","data-v-1193e24b"]]),Nl={class:"lg:hidden mb-4"},Hl={class:"flex items-center font-medium text-gray-900"},Il={class:"flex items-center justify-between mb-4"},Ol={class:"space-y-6"},Bl={class:"relative"},Rl=["value"],El={class:"space-y-2"},Ul={class:"flex items-center cursor-pointer"},Ql=["checked"],zl={class:"ml-auto text-sm text-gray-500 bg-gray-100 px-2 py-1 rounded-full"},Gl=["checked","onChange"],Kl={class:"ml-2 text-sm text-gray-700"},Wl={class:"ml-auto text-sm text-gray-500 bg-gray-100 px-2 py-1 rounded-full"},Yl={class:"space-y-2"},Jl={class:"flex items-center cursor-pointer"},Xl=["checked"],Zl={class:"flex items-center cursor-pointer"},eo=["checked"],to={class:"flex items-center cursor-pointer"},so=["checked"],ao={class:"w-64 flex-shrink-0 hidden lg:block"},no={class:"sticky top-4"},lo={class:"bg-white rounded-lg border border-gray-200 p-4 mb-4"},oo={class:"text-md font-semibold text-gray-900 mb-4 flex items-center"},ro={class:"mb-4"},io={class:"relative"},co=["value"],mo={class:"mb-4"},uo={class:"space-y-2"},yo={class:"flex items-center cursor-pointer"},vo=["checked"],po={class:"ml-auto text-sm text-gray-500 bg-gray-100 px-2 py-1 rounded-full"},bo=["checked","onChange"],go={class:"ml-2 text-sm text-gray-700"},fo={class:"ml-auto text-sm text-gray-500 bg-gray-100 px-2 py-1 rounded-full"},xo={class:"mb-4"},ho={class:"space-y-2"},$o={class:"flex items-center cursor-pointer"}
1,ko=["checked"],_o={class:"flex items-center cursor-pointer"},wo=["checked"],Co={class:"flex items-center cursor-pointer"},To=["checked"],Po=ye({__name:"ShopFilters",props:{searchQuery:{},selectedCategory:{},priceFilter:{},categories:{},totalProducts:{},categoryCounts:{}},emits:["update:searchQuery","update:selectedCategory","update:priceFilter","reset"],setup(t){const F=t,i=M(!1);function T(f){return F.categoryCounts[f]||0}return(f,c)=>{const b=he;return s(),a("div",null,[e("div",Nl,[e("button",{class:"w-full flex items-center justify-between px-4 py-3 bg-white border border-gray-200 rounded-lg",onClick:c[0]||(c[0]=x=>i.value=!n(i))},[e("span",Hl,[d(b,{name:"material-symbols:filter-list",class:"mr-2"}),c[16]||(c[16]=k("Filtres ",-1))]),d(b,{name:"material-symbols:expand-more",class:Ce(["transition-transform",{"rotate-180":n(i)}])},null,8,["class"])])]),xe(e("div",{class:"lg:hidden fixed inset-0 z-50",style:{background:"rgba(0, 0, 0, 0.5)"},onClick:c[9]||(c[9]=x=>i.value=!1)},[e("div",{class:"absolute top-0 right-0 h-full w-80 bg-white p-4 overflow-y-auto",onClick:c[8]||(c[8]=we(()=>{},["stop"]))},[e("div",Il,[c[17]||(c[17]=e("h3",{class:"text-md font-semibold text-gray-900"},"Filtres",-1)),e("button",{class:"p-2 text-gray-400 hover:text-gray-600",onClick:c[1]||(c[1]=x=>i.value=!1)},[d(b,{name:"material-symbols:close"})])]),e("div",Ol,[e("div",null,[e("div",Bl,[e("input",{value:t.searchQuery,type:"text",placeholder:"Rechercher...",class:"w-full px-3 py-2 border border-gray-300 rounded-lg text-sm bg-white",onInput:c[2]||(c[2]=x=>f.$emit("update:searchQuery",x.target.value))},null,40,Rl),d(b,{name:"material-symbols:search",class:"absolute right-3 -translate-y-1/2 text-gray-400",style:{to
1p:"50%"}})])]),e("div",null,[c[19]||(c[19]=e("h4",{class:"text-sm font-medium text-gray-700 mb-3"},"Catégories",-1)),e("div",El,[e("label",Ul,[e("input",{checked:t.selectedCategory==="all",type:"radio",name:"cat_m",class:"w-4 h-4 text-blue-600 bg-white",onChange:c[3]||(c[3]=x=>f.$emit("update:selectedCategory","all"))},null,40,Ql),c[18]||(c[18]=e("span",{class:"ml-2 text-sm text-gray-700"},"Toutes",-1)),e("span",zl,r(t.totalProducts),1)]),(s(!0),a(z,null,Y(t.categories,x=>(s(),a("label",{key:x,class:"flex items-center cursor-pointer"},[e("input",{checked:t.selectedCategory===x,type:"radio",name:"cat_m",class:"w-4 h-4 text-blue-600 bg-white",onChange:w=>f.$emit("update:selectedCategory",x)},null,40,Gl),e("span",Kl,r(x),1),e("span",Wl,r(T(x)),1)]))),128))])]),e("div",null,[c[23]||(c[23]=e("h4",{class:"text-sm font-medium text-gray-700 mb-3"},"Prix",-1)),e("div",Yl,[e("label",Jl,[e("input",{checked:t.priceFilter==="all",type:"radio",name:"price_m",class:"w-4 h-4 text-blue-600 bg-white",onChange:c[4]||(c[4]=x=>f.$emit("update:priceFilter","all"))},null,40,Xl),c[20]||(c[20]=e("span",{class:"ml-2 text-sm text-gray-700"},"Tous",-1))]),e("label",Zl,[e("input",{checked:t.priceFilter==="free",type:"radio",name:"price_m",class:"w-4 h-4 text-blue-600 bg-white",onChange:c[5]||(c[5]=x=>f.$emit("update:priceFilter","free"))},null,40,eo),c[21]||(c[21]=e("span",{class:"ml-2 text-sm text-gray-700"},"Gratuit",-1))]),e("label",to,[e("input",{checked:t.priceFilter==="paid",type:"radio",name:"price_m",class:"w-4 h-4 text-blue-600 bg-white",onChange:c[6]||(c[6]=x=>f.$emit("update:priceFilter","paid"))},null,40,so),c[22]||(c[22]=e("span",{class:"ml-2 text-sm text-gray-700"},"Payant",-1))])])]),e("button",{class:"w-full px-4 py-2 text-sm text-gray-600 bg-gray-200 hover:bg-gray-100 rounded-lg transition-colors flex items-center justify-center",onClick:c[7]||(c[7]=x=>f.$emit("reset"))},[d(b,{name:"material-symbols:refresh",class:"mr-2"}),c[24]||(c[24]=k("Réinitialiser ",-1))])])])],512),[[je,n(i)]]),e("div",ao,[e("div",no,[e("div",lo,[e("h3",oo,[d(b,{name:"material-symbols:filter-list",class:"mr-2"}),c[25]||(c[25]=k("Filtres ",-1))]),e("div",ro,[e("div",io,[e("input",{value:t.searchQuery,type:"text",placeholder:"Rechercher un produit...",class:"w-full px-3 py-2 border border-gray-300 rounded-lg text-sm bg-white",onInput:c[10]||(c[10]=x=>f.$emit("update:searchQuery",x.target.value))},null,40,co),d(b,{name:"material-symbols:search",class:"absolute right-3 -translate-y-1/2 text-gray-400",style:{to
1p:"50%"}})])]),e("div",mo,[c[27]||(c[27]=e("h4",{class:"text-sm font-medium text-gray-700 mb-3"},"Catégories",-1)),e("div",uo,[e("label",yo,[e("input",{checked:t.selectedCategory==="all",type:"radio",name:"cat_d",class:"w-4 h-4 text-blue-600 bg-white",onChange:c[11]||(c[11]=x=>f.$emit("update:selectedCategory","all"))},null,40,vo),c[26]||(c[26]=e("span",{class:"ml-2 text-sm text-gray-700"},"Toutes les catégories",-1)),e("span",po,r(t.totalProducts),1)]),(s(!0),a(z,null,Y(t.categories,x=>(s(),a("label",{key:x,class:"flex items-center cursor-pointer"},[e("input",{checked:t.selectedCategory===x,type:"radio",name:"cat_d",class:"w-4 h-4 text-blue-600 bg-white",onChange:w=>f.$emit("update:selectedCategory",x)},null,40,bo),e("span",go,r(x),1),e("span",fo,r(T(x)),1)]))),128))])]),e("div",xo,[c[31]||(c[31]=e("h4",{class:"text-sm font-medium text-gray-700 mb-3"},"Prix",-1)),e("div",ho,[e("label",$o,[e("input",{checked:t.priceFilter==="all",type:"radio",name:"price_d",class:"w-4 h-4 text-blue-600 bg-white",onChange:c[12]||(c[12]=x=>f.$emit("update:priceFilter","all"))},null,40,ko),c[28]||(c[28]=e("span",{class:"ml-2 text-sm text-gray-700"},"Tous les prix",-1))]),e("label",_o,[e("input",{checked:t.priceFilter==="free",type:"radio",name:"price_d",class:"w-4 h-4 text-blue-600 bg-white",onChange:c[13]||(c[13]=x=>f.$emit("update:priceFilter","free"))},null,40,wo),c[29]||(c[29]=e("span",{class:"ml-2 text-sm text-gray-700"},"Gratuit",-1))]),e("label",Co,[e("input",{checked:t.priceFilter==="paid",type:"radio",name:"price_d",class:"w-4 h-4 text-blue-600 bg-white",onChange:c[14]||(c[14]=x=>f.$emit("update:priceFilter","paid"))},null,40,To),c[30]||(c[30]=e("span",{class:"ml-2 text-sm text-gray-700"},"Payant",-1))])])]),e("button",{class:"w-full px-4 py-2 text-sm text-gray-600 bg-gray-200 hover:bg-gray-100 rounded-lg transition-colors flex items-center justify-center",onClick:c[15]||(c[15]=x=>f.$emit("reset"))},[d(b,{name:"material-symbols:refresh",class:"mr-2"}),c[32]||(c[32]=k("Réinitialiser ",-1))])])])])])}}}),So={class:"admin-modal-item",style:{padding:"0"}},Ao={class:"bg-white rounded-lg border border-gray-200 transition-all duration-200 hover:shadow-lg hover:border-blue-300",style:{height:"100%",display:"flex","flex-direction":"column"}},Mo={class:"bg-gray-50 p-6 flex items-center justify-center",style:{"min-height":"120px"}},jo=["src","alt"],Do={class:"p-4",style:{flex:"1",display:"flex","flex-direction":"column"}},Fo={class:"text-md font-semibold text-gray-900 mb-3 text-center line-clamp-2"},qo={class:"mb-4 text-center"},Vo={class:"flex items-center justify-center space-x-2"},Lo={class:"text-2xl font-bold text-green-600"},No={class:"flex items-center justify-center space-x-1 mt-1"},Ho=["innerHTML"],Io={style:{"margin-top":"auto"}},Oo={key:0},Bo={key:0},Ro={key:1,class:"relative"},Eo={class:"absolute z-50 w-full mt-2 bg-white border border-gray-200 rounded-lg",style:{"box-shadow":"0 10px 25px rgba(0, 0, 0, 0.1)"}},Uo=["onClick"],Qo={key:1},zo={disabled:"",class:"w-full flex items-center justify-center py-3 px-4 bg-gray-300 text-gray-500 rounded-lg font-medium text-sm cursor-not-allowed"},Go=ye({__name:"ShopProductCard",props:{product:{}},emits:["add"],setup(t,{emit:F}){const i=t,T=F,{formatEuro:f}=De(),c=M(!1);function b(x){T("add",i.product.token,x),c.value=!1}return(x,w)=>{const R=he;return s(),a("div",So,[e("div",Ao,[e("div",Mo,[t.product.fullpath?(s(),a("img",{key:0,src:"https://vpdive.com/"+t.product.fullpath,alt:t.product.name,class:"object-contain"},null,8,jo)):(s(),se(R,{key:1,name:"material-symbols:inventory-2-outline",class:"text-4xl text-gray-400"}))]),e("div",Do,[e("h4",Fo,r(t.product.name),1),e("div",qo,[e("div",Vo,[e("span",Lo,r(n(f)(t.product.price)),1)]),xe(e("div",No,[w[2]||(w[2]=e("span",{class:"text-sm text-gray-600 italic"},"(Calculé)",-1)),d(R,{name:"material-symbols:help-outline",class:"text-gray-500 text-sm"})],512),[[je,t.product.calculation]])]),t.product.description?(s(),a("div",{key:0,class:"text-sm text-gray-600 mb-4",style:{flex:"1"},innerHTML:t.product.description},null,8,Ho)):u("",!0),e("div",Io,[t.product.users&&t.product.users.length>0?(s(),a("div",Oo,[t.product.users.length===1&&t.product.users[0].is_current?(s(),a("div",Bo,[e("button",{class:"w-full flex items-center justify-center py-3 px-4 bg-blue-600 hover:bg-blue-700 text-white rounded-lg font-medium transition-colors text-sm",onClick:w[0]||(w[0]=S=>x.$emit("add",t.product.token))},[d(R,{name:"material-symbols:add-shopping-cart",class:"mr-2"}),w[3]||(w[3]=k("Ajouter au panier ",-1))])])):(s(),a("div",Ro,[e("button",{class:"w-full flex items-center justify-center py-3 px-4 bg-blue-600 hover:bg-blue-700 text-white rounded-lg font-medium transition-colors text-sm",onClick:w[1]||(w[1]=S=>c.value=!n(c))},[d(R,{name:"material-symbols:add-shopping-cart",class:"mr-2"}),w[4]||(w[4]=k("Ajouter au panier ",-1)),d(R,{name:"material-symbols:expand-more",class:"ml-2"})]),xe(e("div",Eo,[(s(!0),a(z,null,Y(t.product.users,S=>(s(),a("button",{key:S.id,class:"block w-full text-left px-4 py-2 text-sm text-gray-700 hover:bg-gray-50 transition-colors",onClick:G=>b(S.id)},r(S.fullname),9,Uo))),128))],512),[[je,n(c)]])]))])):(s(),a("div",Qo,[e("button",zo,[d(R,{name:"material-symbols:block",class:"mr-2"}),w[5]||(w[5]=k("Non disponible ",-1))])]))])])])])}}}),Ko={class:"flex flex-col sm:flex-row gap-3 mb-4"},Wo={class:"flex-1 flex items-center border border-gray-300 rounded-lg bg-white overflow-hidden"},Yo={class:"pl-3 text-gray-400"},Jo=["value"],Xo={class:"flex items-center gap-2"},Zo=["value"],er=ye({__name:"HistorySearchBar",props:{searchQuery:{},sortOrder:{},showTravelFilter:{type:Boolean},travelFilterActive:{type:Boolean}},emits:["update:searchQuery","update:sortOrder","toggle-travel-filter"],setup(t){return(F,i)=>{const T=he;return s(),a("div",Ko,[e("div",Wo,[e("span",Yo,[d(T,{name:"material-symbols:search"})]),e("input",{value:t.searchQuery,type:"text",placeholder:"Rechercher par nom...",class:"flex-1 py-2 px-2 m-2 text-sm bg-transparent border-none outline-none",onInput:i[0]||(i[0]=f=>F.$emit("update:searchQuery",f.target.value))},null,40,Jo)]),e("div",Xo,[i[4]||(i[4]=e("span",{class:"text-sm text-gray-600 whitespace-nowrap"},"Trier par :",-1)),e("select",{value:t.sortOrder,class:"px-3 py-2 border border-gray-300 rounded-lg text-sm bg-white",onCh
1ange:i[1]||(i[1]=f=>F.$emit("update:sortOrder",f.target.value))},[...i[3]||(i[3]=[e("option",{value:"desc"},"Plus récent",-1),e("option",{value:"asc"},"Plus ancien",-1)])],40,Zo)]),t.showTravelFilter?(s(),a("button",{key:0,type:"button",class:Ce(["flex items-center gap-2 px-4 py-2 rounded-lg text-sm font-medium transition-colors",t.travelFilterActive?"bg-blue-600 text-white hover:bg-blue-700":"bg-gray-100 text-gray-700 hover:bg-gray-200 border border-gray-300"]),onClick:i[2]||(i[2]=f=>F.$emit("toggle-travel-filter"))},[d(T,{name:"material-symbols:flight"}),i[5]||(i[5]=k(" Voyages ",-1))],2)):u("",!0)])}}}),tr={class:"admin-modal-item"},sr={class:"flex items-start justify-between space-x-4"},ar={class:"flex-1"},nr={class:"flex items-start justify-between mb-2"},lr={class:"flex-1 mr-4"},or={class:"flex items-center flex-wrap gap-2 mb-1"},rr={class:"text-md font-semibold text-gray-900"},ir={key:0,class:"px-2 py-0.5 text-xs font-medium bg-purple-100 text-purple-700 rounded-full"},cr={key:1,class:"px-2 py-0.5 text-xs font-medium bg-green-100 text-green-700 rounded-full"},mr={key:2,class:"px-2 py-0.5 text-xs font-medium bg-red-100 text-red-700 rounded-full"},dr={class:"text-sm font-medium text-gray-600"},ur={key:0,class:"text-xs text-gray-500 mt-1"},yr={key:0,class:"text-sm text-gray-600 mb-2 flex items-center"},vr={key:1,class:"text-sm text-gray-600 mb-2 flex items-center"},pr={key:2,class:"text-sm text-gray-600 mb-2 flex items-center"},br={key:3,class:"text-sm text-gray-600 mb-2"},gr={class:"flex items-start"},fr={class:"whitespace-pre-line"},xr={key:4,class:"text-sm text-gray-600 mb-2 flex items-center"},hr={key:5,class:"p-3 bg-orange-50 border border-orange-200 rounded-lg mt-2 mb-2"},$r={class:"flex items-center"},kr={class:"text-sm text-orange-800"},_r={key:6,class:"mt-3"},wr={class:"mt-2 space-y-2"},Cr={class:"flex-1"},Tr={class:"text-sm font-medium text-gray-900"},Pr={class:"text-sm text-gray-600 mt-1"},Sr={class:"text-sm text-gray-400 mt-1"},Ar={key:7,class:"mt-3 p-3 bg-gray-50 border border-gray-200 rounded-lg"},Mr={class:"flex justify-end mt-2 space-x-2"},jr={key:8,class:"mt-3"},Dr={key:9,class:"mt-3 space-y-2"},Fr={class:"flex items-center mb-1"},qr={class:"font-medium"},Vr={key:0,class:"text-sm text-gray-600"},Lr={class:"text-sm text-gray-500"},Nr={class:"text-gray-700"},Hr={key:10,class:"mt-3 space-y-2"},Ir={class:"flex items-center mb-1"},Or={class:"font-medium text-sm"},Br={class:"text-sm text-gray-500"},Rr={class:"text-gray-700"},Er={key:0,class:"text-sm text-gray-600 mt-1"},Ur={key:1,class:"text-sm text-gray-500 mt-1"},Qr=ye({__name:"HistoryCartItem",props:{cart:{},displayName:{},comments:{},payments:{},traceability:{},showPayedBadge:{type:Boolean}},emits:["comment"],setup(t,{emit:F}){const i=t,T=F,{formatEuro:f,formatDate:c,formatDateTime:b,translatePaymentMethodName:x,getTraceabilityIcon:w,getTraceabilityCategoryName:R}=De(),S=M(!1),G=M(!1),H=M(!1),D=M(""),g=W(()=>i.payments.length>0||i.traceability.length>0);function E(){D.value.trim()&&(T("comment",i.cart.token,D.value.trim()),D.value="",S.value=!1)}return(_,h)=>{const v=he;return s(),a("div",tr,[e("div",sr,[e("div",ar,[e("div",nr,[e("div",lr,[e("div",or,[e("span",rr,r(t.displayName),1),t.cart.is_prepayed?(s(),a("span",ir," Prépayé ")):t.showPayedBadge?(s(),a("span",cr," Payé ")):(s(),a("span",mr," Annulé "))]),e("div",dr,r(n(f)(t.cart.amount)),1),t.cart.quantity>1?(s(),a("div",ur," Quantité : "+r(t.cart.quantity),1)):u("",!0)]),e("button",{type:"button",class:"px-2 py-1 text-xs text-gray-600 bg-gray-200 hover:bg-gray-100 rounded flex items-center",onClick:h[0]||(h[0]=$=>S.value=!n(S))},[d(v,{name:"material-symbols:add-comment-outline",class:"mr-1"}),h[5]||(h[5]=k(" Ajouter un commentaire ",-1))])]),t.cart.payed_at?(s(),a("div",yr,[d(v,{name:"material-symbols:calendar-today-outline",class:"mr-1 text-green-600"}),k(" Payé le "+r(n(b)(t.cart.payed_at)),1)])):u("",!0),t.cart.payment_method?(s(),a("div",vr,[d(v,{name:"material-symbols:payments-outline",class:"mr-1"}),k(" Paiement "+r(n(x)(t.cart.payment_method.name)),1)])):u("",!0),t.cart.tariffPlanPrices?.description?(s(),a("div",pr,[d(v,{name:"material-symbols:sell-outline",class:"mr-1"}),k(" "+r(t.cart.tariffPlanPrices.description),1)])):u("",!0),t.cart.materials?(s(),a("div",br,[e("div",gr,[d(v,{name:"material-symbols:scuba-diving",class:"mr-1 mt-0.5 flex-shrink-0"}),e("div",fr,r(t.cart.materials),1)])])):u("",!0),t.cart.termName?(s(),a("div",xr,[d(v,{name:"material-symbols:schedule-outline",class:"mr-1"}),k(r(t.cart.termName),1)])):u("",!0),t.cart.is_not_payment_limit===!1?(s(),a("div",hr,[e("div",$r,[d(v,{name:"material-symbols:warning-outline",class:"text-orange-600 mr-2"}),e("span",kr,"Paiement possible à partir du "+r(n(c)(t.cart.payment_limit)),1)])])):u("",!0),t.comments.length>0?(s(),a("div",_r,[e("button",{type:"button",class:"text-xs underline cursor-pointer",onClick:h[1]||(h[1]=$=>G.value=!n(G))}," Afficher les commentaires ("+r(t.comments.length)+") ",1),xe(e("div",wr,[(s(!0),a(z,null,Y(t.comments,($,L)=>(s(),a("div",{key:L,class:"p-3 bg-gray-50 border border-gray-200 rounded-lg"},[e("div",Cr,[e("div",Tr,r($.from_user),1),e("div",Pr,r($.message),1),e("div",Sr,r(n(b)($.date)),1)])]))),128))],512),[[je,n(G)]])])):u("",!0),n(S)?(s(),a("div",Ar,[xe(e("textarea",{"onUpdate:modelValue":h[2]||(h[2]=$=>be(D)?D.value=$:null),class:"w-full px-3 py-2 border border-gray-300 rounded-lg text-sm bg-white",rows:"2",placeholder:"Votre commentaire..."},null,512),[[Ze,n(D)]]),e("div",Mr,[e("button",{type:"button",class:"px-3 py-1 text-sm text-gray-600 bg-gray-100 rounded hover:bg-gray-200",onClick:h[3]||(h[3]=$=>S.value=!1)},"Annuler"),e("button",{type:"button",class:"px-3 py-1 text-sm text-white bg-blue-600 rounded hover:bg-blue-700",onClick:E},"Envoyer")])])):u("",!0),n(g)?(s(),a("div",jr,[e("button",{type:"button",class:"text-sm text-blue-600 hover:text-blue-800 flex items-center",onClick:h[4]||(h[4]=$=>H.value=!n(H))},[d(v,{name:n(H)?"material-symbols:expand-less":"material-symbols:expand-more",class:"mr-1"},null,8,["name"]),k(" "+r(n(H)?"Masquer le détail":"Voir le détail"),1)])])):u("",!0),n(H)&&t.payments.length>0?(s(),a("div",Dr,[h[7]||(h[7]=e("div",{class:"text-xs font-medium text-gray-500 mb-1"},"Historique des paiements",-1)),(s(!0),a(z,null,Y(t.payments,($,L)=>(s(),a("div",{key:$.id||L,class:"p-3 bg-gray-50 rounded-lg"},[e("div",Fr,[d(v,{name:"material-symbols:euro",class:"mr-2 text-green-600"}),e("span",qr,r(n(f)($.amount_payed)),1)]),$.description?(s(),a("div",Vr,r($.description),1)):u("",!0),e("div",Lr,[k(" Le "+r(n(b)($.createdAt))+" ",1),$.created_by?(s(),a(z,{key:0},[h[6]||(h[6]=k(" par ",-1)),e("span",Nr,r($.created_by.first_name)+" "+r($.created_by.last_name),1)],64)):u("",!0)])]))),128))])):u("",!0),n(H)&&t.traceability.length>0?(s(),a("div",Hr,[h[9]||(h[9]=e("div",{class:"text-xs font-medium text-gray-500 mb-1"},"Historique des actions",-1)),(s(!0),a(z,null,Y(t.traceability,($,L)=>(s(),a("div",{key:$.id||L,class:"p-3 bg-gray-50 rounded-lg"},[e("div",Ir,[d(v,{name:n(w)($.cart_traceability_category?.icon),class:"mr-2 text-gray-600"},null,8,["name"]),e("span",Or,r(n(R)($.cart_traceability_category?.name)),1)]),e("div",Br,[k(" Le "+r(n(b)($.createdAt))+" ",1),$.createdBy?(s(),a(z,{key:0},[h[8]||(h[8]=k(" par ",-1)),e("span",Rr,r($.createdBy.first_name)+" "+r($.createdBy.last_name),1)],64)):u("",!0)]),$.description?(s(),a("div",Er,r($.description),1)):u("",!0),$.last_value_info?(s(),a("div",Ur,r($.last_value_info),1)):u("",!0)]))),128))])):u("",!0)])])])}}});function zr(){const t=M("e"),F=M(!1),i=M([]),T=M({}),f=M([]),c=M({}),b=M({}),x=M([]),w=M("base"),R=M(null),S=M(!1),G=M([]),H=M(null),D=M(new Set),g=M({}),E=M({}),_=M(!1),h=re({}),v=re({}),$=re({}),L=re({}),ge=re({}),Fe=re({}),Se=re({}),ve=M(""),ue=M("desc"),Te=M(""),ae=M("all"),ne=M("all"),X=M("club"),me=M(!1),ie=M(null);return{status:t,loading:F,carts:i,cartTypes:T,cbPaymentMethods:f,normalPaymentMethods:c,clubPaymentMethods:b,terms:x,acceptedTerm:w,variableAmount:R,hasToPayed:S,discounts:G,campaign:H,selectedTokens:D,cartQuantities:g,userMap:E,paymentLoading:_,visibleComments:h,openCommentForm:v,openDeleteForm:$,openTermsTooltip:L,expandedDetails:ge,commentTexts:Fe,deleteReasons:Se,historySearchQuery:ve,historySortOrder:ue,shopSearchQuery:Te,shopSelectedCategory:ae,shopPriceFilter:ne,shopSortBy:X,showMobileFilters:me,openProductDropdown:ie}}function Gr(){const t=M(null),F=M([]),i=re({}),T=re({}),f=re({}),c=re({}),b=re({}),x=re({}),w=re({}),R=re({}),S=re({}),G=re({}),H=M(!1),D=M([]),g=M(!1);return{travelData:t,allTravelData:F,travelCarts:i,travelCartTypes:T,travelCbPaymentMethods:f,travelNormalPaymentMethods:c,travelTerms:b,expandedTravels:x,selectedTravelTokens:w,travelVariableAmounts:R,travelAcceptedTerms:S,travelLoading:G,travelHistoryFilter:H,travelHistoryCarts:D,travelHistoryLoading:g}}function Kr(t){const F=M(null),{status:i,loading:T,carts:f,cartTypes:c,cbPaymentMethods:b,normalPaymentMethods:x,clubPaymentMethods:w,terms:R,hasToPayed:S,discounts:G,selectedTokens:H,cartQuantities:D,userMap:g,paymentLoading:E,acceptedTerm:_,variableAmount:h,campaign:v,commentTexts:$,openCommentForm:L,deleteReasons:ge,openDeleteForm:Fe,allCartItems:Se,selectedHasVariablePrice:ve,variablePriceMinimum:ue,variablePriceMa
1x:Te}=t,ae=gt(),{parseGroupKey:ne,normalizeCartItem:X,isSelectable:me}=De();async function ie(){T.value=!0;try{const A=await ke(`/api/cart/index/${i.value}`,{method:"GET"}),I=A?.carts,C={};if(I&&typeof I=="object"&&!Array.isArray(I)){const m=[];for(const[P,j]of Object.entries(I)){const{ownerName:O,userId:V}=ne(P),U=j?.user?.fullname||O;V&&(C[V]=U);let Q=[];const le=j?.carts;le&&typeof le=="object"&&(Q=Object.values(le).map(de=>X(de))),m.push({token:P,ownerName:U,carts:Q})}f.value=m,g.value=C}else f.value=[],g.value={};c.value=A?.cart_types||{},G.value=Array.isArray(A?.discounts)?A.discounts:Object.values(A?.discounts||{}),S.value=A?.has_to_payed??A?.hasToPayed??!1;const q=A?.cb_payment_methods;Array.isArray(q)?b.value=q:b.value=[];const J=A?.normal_payment_methods;J&&typeof J=="object"&&!Array.isArray(J)?x.value=J:x.value={},w.value=A?.club_payment_methods||{};const $e=A?.terms;let qe=[];Array.isArray($e)&&$e.length>0?qe=$e:$e&&typeof $e=="object"&&!Array.isArray($e)&&(qe=Object.entries($e).map(([m,P])=>({id:m,label:String(P)}))),R.value=qe,i.value==="e"&&(H.value=new Set(Se.value.filter(m=>me(m)).map(m=>m.token)))}catch(A){console.error(A),ae.add?.({title:"Erreur",description:"Impossible de charger le panier",color:"red"})}finally{T.value=!1}}async function Pe(A,I){const C=(I??$[A])?.trim();if(!C)return;const q=new FormData;q.append("front_paymentbundle_club_cart_comment_form[token]",A),q.append("front_paymentbundle_club_cart_comment_form[comment]",C);try{await ke("/api/cart/comment",{method:"POST",data:q}),$[A]="",L[A]=!1,await ie()}catch(J){console.error(J)}}async function Be(A,I){const C=(I??ge[A])?.trim(),q=new FormData;q.append("token",A),C&&q.append("comment",C);try{await ke("/api/cart/delete",{method:"POST",data:q}),ge[A]="",Fe[A]=!1,await ie()}catch(J){console.error(J)}}async function Re(A){const I=new FormData;I.append("token",A);try{await ke("/api/cart/confirm",{method:"POST",data:I}),await ie()}catch(C){console.error(C)}}async function Ee(A){E.value=!0;const I=new FormData;I.append("front_paymentbundle_club_cart_payment_form[methods]",A.toString());for(const C of Se.value)H.value.has(C.token)&&(I.append(`front_paymentbundle_club_cart_payment_form[select_${C.token}]`,"1"),D.value[C.token]&&I.append(`front_paymentbundle_club_cart_payment_form[quantity_${C.token}]`,String(D.value[C.token])));if([6,9].includes(A)&&I.append("cart_terms_form[terms]",_.value==="base"?"":String(_.value)),ve.value&&h.value!=null&&h.value>0){const C=ue.value;if(C>0&&h.value<C){ae.add({title:"Montant insuffisant",description:`Le montant minimum est de ${C} â¬`,color:"red",icon:"heroicons:x-circle"}),E.value=!1;return}const q=Te?.value??0;if(q>0&&h.value>q){ae.add({title:"Montant trop élevé",description:`Le montant restant dû est de ${q} â¬`,color:"red",icon:"heroicons:x-circle"}),E.value=!1;return}I.append("front_paymentbundle_club_cart_payment_form[variable_amount]",h.value.toFixed(2))}v.value&&I.append("campaign",v.value);try{const C=await ke("/api/cart/prepare",{method:"POST",data:I,silentErrorCodes:[403]});if(C?.status==="error"){ae.add({title:"Erreur de paiement",description:C.info||"Une erreur est survenue",color:"red",icon:"heroicons:x-circle"}),E.value=!1;return}if(C?.redirect){window.location.href=C.redirect;return}const q=Object.values(x.value||{}).find(J=>Number(J?.id)===Number(A));F.value={name:C?.method_name||q?.name||"",instructions:C?.instructions||q?.description||""},await ie(),E.value=!1}catch(C){console.error(C);const q=C?.data?.info||C?.response?._data?.info||C?.response?.data?.info;ae.add?.({title:"Erreur de paiement",description:q||"Impossible de procéder au paiement",color:"red",icon:"heroicons:x-circle"}),E.value=!1}}async function Ue(A,I){const C=new FormData;C.append("token",A),C.append("quantity",String(I));try{const q=await ke("/api/cart/quantity",{method:"POST",data:C,silentErrorCodes:[403]});return q?.status!=="success"?(ae.add?.({title:"Quantité non enregistrée",description:q?.info||"La quantité n'a pas pu être modifiée",color:"red",icon:"heroicons:x-circle"}),null):(await ie(),typeof q.quantity=="number"?q.quantity:I)}catch(q){console.error(q);const J=q?.data?.info||q?.response?._data?.info||q?.response?.data?.info;return ae.add?.({title:"Quantité non enregistrée",description:J||"La quantité n'a pas pu être modifiée",color:"red",icon:"heroicons:x-circle"}),null}}async function ee(A,I){const C=I?`/api/cart/add_type/${A}?user_id=${I}`:`/api/cart/add_type/${A}`;try{return await ke(C,{method:"POST"}),ae.add?.({title:"Ajouté",description:"Article ajouté au panier",color:"green"}),!0}catch(q){return console.error(q),!1}}return{fetchData:ie,handleSubmitComment:Pe,handleSubmitDelete:Be,submitConfirm:Re,selectPaymentMethod:Ee,methodConfirmation:F,updateCartQuantity:Ue,handleAddShop:ee}}function Wr(t){const{status:F,paymentLoading:i,campaign:T,travelData:f,allTravelData:c,travelCarts:b,travelCartTypes:x,travelCbPaymentMethods:w,travelNormalPaymentMethods:R,travelTerms:S,exp
1andedTravels:G,selectedTravelTokens:H,travelVariableAmounts:D,travelAcceptedTerms:g,travelLoading:E,travelHistoryFilter:_,travelHistoryCarts:h,travelHistoryLoading:v}=t,$=gt(),{parseGroupKey:L,normalizeCartItem:ge,hasUnpaidTravelItems:Fe,isTravelSelectable:Se,getGroupCarts:ve,formatEuro:ue,hasTermsSupport:Te,cartRemainingAmount:ae}=De();function ne(m){const P=b[m]||[],j=[];for(const O of P)for(const V of ve(O))j.push(V);return j}function X(m){const P=ne(m),j=H[m]||new Set,O=P.filter(V=>j.has(V.token));return O.length===0?!1:O.every(V=>V.cartType?.variable_price===!0)}function me(m){const P=ne(m),j=H[m]||new Set,O=P.filter(V=>j.has(V.token)).map(V=>V.cartType?.variable_price_minimum).filter(V=>V!=null&&V>0);return O.length>0?Math.max(...O):0}function ie(m){const P=ne(m),j=H[m]||new Set,O=P.reduce((V,U)=>j.has(U.token)?V+ae(U):V,0);return Math.round(O*100)/100}function Pe(m){return ie(m)}function Be(m){const P=ne(m);return ue(P.reduce((j,O)=>j+ae(O),0))}function Re(m){const P=ne(m),j=H[m]||new Set,O=P.filter(V=>j.has(V.token));return O.length===0?!1:O.every(V=>Te(V))}function Ee(m){const P=D[m];return X(m)&&P!=null&&P>0?ue(P):ue(ie(m))}function Ue(m){return(H[m]||new Set).size}function ee(m,P){H[m]||(H[m]=new Set),H[m].has(P)?H[m].delete(P):H[m].add(P)}function A(m){const P=ne(m),j=H[m]||new Set,O=P.filter(U=>j.has(U.token)&&Te(U));if(O.length===0)return[];const V=O[0].terms;return Object.values(V).map(U=>({id:String(U.id),label:U.name,token:U.token}))}async function I(m=!1){try{const P=await ke("/api/travel/my_travel",{method:"GET"});if(P?.travel){c.value=P.travel;const j=P.travel.filter(O=>Fe(O));f.value=j,m&&await Promise.all(j.map(O=>C(O.token)))}else c.value=[],f.value=[]}catch(P){console.error("Erreur chargement voyages:",P),c.value=[],f.value=[]}}async function C(m){E[m]=!0;try{const P=await ke(`/api/cart/travel/${m}/e`,{method:"GET"}),j=P?.carts;if(j&&typeof j=="object"&&!Array.isArray(j)){const de=[];for(const[fe,_e]of Object.entries(j)){const{ownerName:Le}=L(fe),ce=_e?.user?.fullname||Le;let Ne=[];const Ve=_e?.carts;Ve&&typeof Ve=="object"&&(Ne=Object.values(Ve).map(Ge=>ge(Ge))),de.push({token:fe,ownerName:ce,carts:Ne})}b[m]=de}else b[m]=[];x[m]=P?.cart_types||{};const O=P?.cb_payment_methods;Array.isArray(O)?w[m]=O:w[m]=[];const V=P?.normal_payment_methods;V&&typeof V=="object"&&!Array.isArray(V)?R[m]=V:R[m]={};const U=P?.terms;let Q=[];Array.isArray(U)&&U.length>0?Q=U:U&&typeof U=="object"&&!Array.isArray(U)&&(Q=Object.entries(U).map(([de,fe])=>({id:de,label:String(fe)}))),S[m]=Q,g[m]="base";const le=ne(m).filter(de=>Se(de)).map(de=>de.token);H[m]=new Set(le)}catch(P){console.error("Erreur chargement panier voyage:",P),delete b[m]}finally{E[m]=!1}}async function q(m){G[m]=!G[m],G[m]&&!b[m]&&await C(m)}async function J(){if(!(!c.value||c.value.length===0)){v.value=!0;try{const m=await Promise.all(c.value.map(j=>ke(`/api/cart/travel/${j.token}/${F.value}`,{method:"GET"}).then(O=>({travel:j,res:O})).catch(()=>({travel:j,res:null})))),P=[];for(const{travel:j,res:O}of m){const V=O?.carts;if(V&&typeof V=="object"&&!Array.isArray(V))for(const[U,Q]of Object.entries(V)){const{ownerName:le}=L(U),de=Q?.user?.fullname||le;let fe=[];const _e=Q?.carts;_e&&typeof _e=="object"&&(fe=Object.values(_e).map(Le=>ge(Le))),fe.length>0&&P.push({token:`${j.token}-${U}`,ownerName:`${j.title} - ${de}`,carts:fe})}}h.value=P}catch(m){console.error("Erreur chargement historique voyages:",m),h.value=[]}finally{v.value=!1}}}async function $e(){_.value=!_.value,_.value&&await J()}async function qe(m,P){i.value=!0;const j=new FormData;j.append("front_paymentbundle_club_cart_payment_form[methods]",P.toString());
1const O=ne(m),V=H[m]||new Set;for(const Q of O)V.has(Q.token)&&j.append(`front_paymentbundle_club_cart_payment_form[select_${Q.token}]`,"1");if([6,9].includes(P)){const Q=g[m]||"base";j.append("cart_terms_form[terms]",Q==="base"?"":Q)}const U=D[m];if(X(m)&&U!=null&&U>0){const Q=me(m);if(Q>0&&U<Q){$.add({title:"Montant insuffisant",description:`Le montant minimum est de ${ue(Q)}`,color:"red",icon:"heroicons:x-circle"}),i.value=!1;return}const le=Pe(m);if(le>0&&U>le){$.add({title:"Montant trop élevé",description:`Le montant restant dû est de ${ue(le)}`,color:"red",icon:"heroicons:x-circle"}),i.value=!1;return}j.append("front_paymentbundle_club_cart_payment_form[variable_amount]",U.toFixed(2))}T.value&&j.append("campaign",T.value);try{const Q=await ke("/api/cart/prepare",{method:"POST",data:j,silentErrorCodes:[403]});if(Q?.status==="error"){$.add({title:"Erreur de paiement",description:Q.info||"Une erreur est survenue",color:"red",icon:"heroicons:x-circle"}),i.value=!1;return}if(Q?.redirect){window.location.href=Q.redirect;return}window.location.reload()}catch(Q){console.error(Q);const le=Q?.data?.info||Q?.response?._data?.info||Q?.response?.data?.info;$.add?.({title:"Erreur de paiement",description:le||"Impossible de procéder au paiement",color:"red",icon:"heroicons:x-circle"}),i.value=!1}}return{getTravelCartItems:ne,travelHasVariablePrice:X,getTravelVariablePriceMinimum:me,getTravelVariablePriceMax:Pe,getTravelRemainingAmount:Be,travelSelectedHaveTermsSupport:Re,getTravelSelectedTotal:Ee,getTravelSelectedCount:Ue,toggleTravelToken:ee,getAvailableTravelTerms:A,fetchTravelData:I,fetchTravelCarts:C,toggleTravel:q,fetchTravelHistoryData:J,toggleTravelHistoryFilter:$e,selectTravelPaymentMethod:qe}}const Yr={key:1},Jr={class:"admin-campaign-container"},Xr={class:"admin-campaign-box"},Zr={key:0,class:"admin-table-container p-4"},ei={class:"p-4 rounded-lg bg-green-50 border border-green-200"},ti={class:"flex items-center font-semibold text-green-800 mb-2"},si={key:0},ai={key:1},ni=["innerHTML"],li={key:1,class:"text-sm text-green-900"},oi={key:2,class:"admin-table-container"},ri={class:"grid grid-cols-1 lg:grid-cols-3 gap-6"},ii={class:"lg:col-span-2 p-4"},ci={key:0,class:"admin-modal-section-title"},mi={class:"admin-modal-section-content"},di={key:0,class:"admin-modal-section"},ui={class:"admin-modal-section-content"},yi={class:"flex items-center justify-between"},vi={class:"flex-1"},pi={class:"font-medium text-gray-900"},bi={key:0,class:"text-sm text-gray-600"},gi={class:"text-md font-semibold text-green-600"},fi={class:"lg:col-span-1"},xi={key:3,class:"admin-table-container"},hi={key:4,class:"admin-table-container"},$i={class:"admin-modal-section"},ki={class:"admin-modal-section-title"},_i={class:"admin-modal-section-content"},wi={class:"min-h-[600px]"},Ci={class:"flex gap-6"},Ti={class:"flex-1"},Pi={class:"flex items-center justify-between mb-6"},Si={class:"text-sm text-gray-600"},Ai={class:"flex items-center space-x-4"},Mi={class:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 gap-6"},ji={key:5,class:"admin-table-container"},Di={class:"admin-modal-section"},Fi={class:"flex items-center justify-between mb-4"},qi={class:"admin-modal-section-title flex items-center mb-0"},Vi={class:"text-sm text-gray-500"},Li={key:0,class:"flex items-center justify-center py-8"},Ni={key:1,class:"admin-modal-section-content"},Hi={key:0,class:"text-center py-8"},Ii={key:1,class:"text-center py-8"},Oi={class:"text-gray-500"},Bi={key:2,class:"text-center py-8"},Ri={key:6,class:"admin-table-container"},Ei={class:"admin-modal-section"},Ui={class:"flex items-center justify-between mb-4"},Qi={class:"admin-modal-section-title flex items-center mb-0"},zi={class:"text-sm text-gray-500"},Gi={key:0,class:"flex items-center justify-center py-8"},Ki={key:1,class:"admin-modal-section-content"},Wi={key:0,class:"text-center py-8"},Yi={key:1,class:"text-center py-8"},Ji={class:"text-gray-500"},Xi={key:2,class:"text-center py-8"},Zi=6,sc=ye({__name:"index",setup(t){const{t:F}=et(),i=is(),T=cs(),f=M(null);function c(){f.value=null,T.replace({query:{...i.query,payment:void 0}})}function b(){f.value=null,T.replace({query:{payment:void 0}}),Xe("p")}const{formatEuro:x,getGroupCarts:w,isSelectable:R,hasTermsSupport:S,getComments:G,getValidPayments:H,getValidTraceability:D,getCartDisplayName:g,translatePaymentType:E}=De(),{status:_,loading:h,carts:v,cartTypes:$,cbPaymentMethods:L,normalPaymentMethods:ge,clubPaymentMethods:Fe,terms:Se,acceptedTerm:ve,variableAmount:ue,hasToPayed:Te,discounts:ae,campaign:ne,selectedTokens:X,cartQuantities:me,userMap:ie,paymentLoading:Pe,openCommentForm:Be,openDeleteForm:Re,commentTexts:Ee,deleteReasons:Ue,historySearchQuery:ee,historySortOrder:A,shopSearchQuery:I,shopSelectedCategory:C,shopPriceFilter:q,shopSortBy:J,showMobileFilters:$e,openProductDropdown:qe}=zr(),{travelData:m,allTravelData:P,travelCarts:j,travelCartTypes:O,travelCbPaymentMethods:V,travelNormalPaymentMethods:U,travelTerms:Q,expandedTravels:le,selectedTravelTokens:de,travelVariableAmounts:fe,travelAcceptedTerms:_e,travelLoading:Le,travelHistoryFilter:ce,travelHistoryCarts:Ne,travelHistoryLoading:Ve}=Gr(),Ge=ns();function tt(o){return o.id!==Zi||o.mobile_helloasso_allowed===!0}const ft=W(()=>Ge.isMobile?L.value.filter(tt):L.value),xt=W(()=>
1{if(!Ge.isMobile)return V;const o={};for(const[l,p]of Object.entries(V))o[l]=p.filter(tt);return o}),Ke=W(()=>{const o=i.query.campaign;return typeof o=="string"?o:ne.value}),st=W(()=>{if(!Ke.value)return"";const o=i.query.campaign_url;return typeof o=="string"&&o.startsWith("/")?`/app/admin/vpdive?route=${o}`:`/app/admin/vpdive?route=/f/campaign/user/index/${Ke.value}`}),pe=W(()=>{const o=[];for(const l of v.value)for(const p of w(l))o.push(p);return o}),We=W(()=>!!(m.value&&Array.isArray(m.value)&&m.value.length>0)),He=W(()=>{let o=[...pe.value];if(ee.value.trim()){const l=ee.value.toLowerCase();o=o.filter(p=>{const N=g(p).toLowerCase(),K=p.cartType?.name?.toLowerCase()||"";return N.includes(l)||K.includes(l)})}return o.sort((l,p)=>{const N=K=>{if(_.value==="c"){const B=D(K);if(B.length>0){const oe=B.map(Z=>Z.createdAt?new Date(Z.createdAt).getTime():0);return Math.max(...oe)}return 0}return K.payed_at?new Date(K.payed_at).getTime():K.created_at?new Date(K.created_at).getTime():0};return A.value==="desc"?N(p)-N(l):N(l)-N(p)}),o}),Ae=W(()=>{const o=[];for(const p of Ne.value)for(const N of w(p))o.push(N);let l=[...o];if(ee.value.trim()){const p=ee.value.toLowerCase();l=l.filter(N=>{const K=g(N).toLowerCase(),B=N.cartType?.name?.toLowerCase()||"";return K.includes(p)||B.includes(p)})}return l.sort((p,N)=>{const K=B=>{if(_.value==="c"){const oe=D(B);if(oe.length>0){const Z=oe.map(Me=>Me.createdAt?new Date(Me.createdAt).getTime():0);return Math.max(...Z)}return 0}return B.payed_at?new Date(B.payed_at).getTime():B.created_at?new Date(B.created_at).getTime():0};return A.value==="desc"?K(N)-K(p):K(p)-K(N)}),l}),Qe=W(()=>pe.value.filter(o=>R(o)).map(o=>o.token)),ht=W(()=>X.value.size),at=W(()=>Qe.value.length>0&&Qe.value.every(o=>X.value.has(o))),$t=W(()=>{const o=Qe.value.filter(l=>X.value.has(l)).length;return o>0&&o<Qe.value.length}),kt=W(()=>{const o=pe.value.filter(l=>X.value.has(l.token));return o.length===0?!1:o.every(l=>S(l))}),nt=W(()=>{const o=pe.value.filter(p=>X.value.has(p.token)&&S(p));if(o.length===0)return[];const l=o[0].terms;return Object.values(l).map(p=>({id:String(p.id),label:p.name,token:p.token,termTimes:p.term_times||[]}))}),lt=W(()=>{const o=pe.value.filter(l=>X.value.has(l.token));return o.length===0?!1:o.every(l=>l.cartType?.variable_price===!0)}),ot=W(()=>{const l=pe.value.filter(p=>X.value.has(p.token)).map(p=>p.cartType?.variable_price_minimum).filter(p=>p!=null&&p>0);return l.length>0?Math.max(...l):0});function rt(o){const l=me.value[o.token]||o.quantity||1;return(o.amount||0)*l-(o.amount_payed||0)}const it=W(()=>{let o=0;for(const l of pe.value)X.value.has(l.token)&&(o+=rt(l));return Math.round(o*100)/100}),ct=W(()=>{let o=0;const l=[];for(const p of pe.value)X.value.has(p.token)&&(o+=rt(p),l.push(p.token));for(const p of ae.value)p.users_status&&Object.keys(p.users_status).every(K=>l.includes(K))&&(o+=p.amount);return Math.round(o*100)/100}),_t=W(()=>x(ct.value));function wt(o){return o?Array.isArray(o)?o.join(", "):typeof o=="object"?Object.values(o).join(", "):String(o):""}function Ct(o){const l=new Date;if(!o||o===0)return l;const p=new Date(l);p.setMonth(p.getMonth()+1);let N=new Date(l);for(N.setDate(N.getDate()+o),N.getTime()<=p.getTime()&&(N=p);N.getDate()>27;)N.setDate(N.getDate()+1);return N}const Tt=W(()=>{if(!ve.value||ve.value==="base")return[];const l=nt.value.find(Z=>Z.token===ve.value)?.termTimes??[];if(l.length===0)return[];const p=ct.value,N=[...l].sort((Z,Me)=>Number(Z.time)-Number(Me.time)),K=N.length;let B=Math.round(p*100)/100;const oe=[];return N.forEach((Z,Me)=>{let Oe;Me<K-1?(Oe=Math.round(p*(Number(Z.percent)/100)*100)/100,B=Math.round((B-Oe)*100)/100):Oe=B,oe.push({amount:Oe,percent:Number(Z.percent),date:Ct(Number(Z.time))})}),oe}),ze=W(()=>{const o=[];let l=0;for(const[p,N]of Object.entries($.value))if(N&&typeof N=="object"){for(const[,K]of Object.entries(N))if(K&&typeof K=="object")for(const[B,oe]of Object.entries(K))o.push({token:B,name:oe.name||"",price:oe.price||0,description:oe.description||"",fullpath:oe.fullpath||"",calculation:!!oe.calculation,category:p||"uncategorized",club_order:l++,users:oe.users?Object.entries(oe.users).map(([Z])=>({id:Z,fullname:ie.value[Z]||`Utilisateur #${Z}`,is_current:Object.keys(ie.value).length>0?Z===Object.keys(ie.value)[0]:!1})):[]})}return o}
1),mt=W(()=>{const o=new Set;for(const l of ze.value)l.category&&o.add(l.category);return Array.from(o).sort()}),Ye=W(()=>{let o=[...ze.value];if(I.value.trim()){const l=I.value.toLowerCase();o=o.filter(p=>p.name.toLowerCase().includes(l)||p.description.toLowerCase().includes(l))}return C.value!=="all"&&(o=o.filter(l=>l.category===C.value)),q.value==="free"?o=o.filter(l=>l.price===0):q.value==="paid"&&(o=o.filter(l=>l.price>0)),J.value==="club"?o.sort((l,p)=>l.club_order-p.club_order):J.value==="name"?o.sort((l,p)=>l.name.localeCompare(p.name)):J.value==="price_asc"?o.sort((l,p)=>l.price-p.price):J.value==="price_desc"&&o.sort((l,p)=>p.price-l.price),o}),Pt=W(()=>{const o={};for(const l of mt.value)o[l]=ze.value.filter(p=>p.category===l).length;return o}),St=Kr({status:_,loading:h,carts:v,cartTypes:$,cbPaymentMethods:L,normalPaymentMethods:ge,clubPaymentMethods:Fe,terms:Se,hasToPayed:Te,discounts:ae,selectedTokens:X,cartQuantities:me,userMap:ie,paymentLoading:Pe,acceptedTerm:ve,variableAmount:ue,campaign:ne,commentTexts:Ee,openCommentForm:Be,deleteReasons:Ue,openDeleteForm:Re,allCartItems:pe,selectedHasVariablePrice:lt,variablePriceMinimum:ot,variablePriceMax:it}),At=Wr({status:_,paymentLoading:Pe,campaign:ne,travelData:m,allTravelData:P,travelCarts:j,travelCartTypes:O,travelCbPaymentMethods:V,travelNormalPaymentMethods:U,travelTerms:Q,expandedTravels:le,selectedTravelTokens:de,travelVariableAmounts:fe,travelAcceptedTerms:_e,travelLoading:Le,travelHistoryFilter:ce,travelHistoryCarts:Ne,travelHistoryLoading:Ve}),{fetchData:dt,handleSubmitComment:Je,handleSubmitDelete:Mt,submitConfirm:jt,selectPaymentMethod:Dt,methodConfirmation:Ie,updateCartQuantity:Ft,handleAddShop:qt}=St,{getTravelCartItems:Vt,travelHasVariablePrice:Lt,getTravelVariablePriceMinimum:Nt,getTravelVariablePriceMax:Ht,getTravelRemainingAmount:It,travelSelectedHaveTermsSupport:Ot,getTravelSelectedTotal:Bt,getTravelSelectedCount:Rt,toggleTravelToken:Et,fetchTravelData:Ut,fetchTravelCarts:ut,toggleTravel:Qt,toggleTravelHistoryFilter:yt,selectTravelPaymentMethod:zt}=At;function Gt(o){const l=new Set(X.value);l.has(o)?l.delete(o):l.add(o),X.value=l}function Kt(){at.value?X.value=new Set:X.value=new Set(Qe.value)}async function Wt(o,l){const p=l.target,N=parseInt(p.value,10);if(!(N>0))return;const K=me.value[o];me.value[o]=N;const B=await Ft(o,N);if(B===null){K===void 0?delete me.value[o]:me.value[o]=K;return}me.value[o]=B}function Yt(){I.value="",C.value="all",q.value="all",J.value="club",$e.value=!1}async function Jt(o,l){await qt(o,l)&&(qe.value=null,Xe("e"))}function Xe(o){_.value!==o&&(_.value=o,ce.value=!1,Ne.value=[],T.replace({query:{...i.query,status:o}}),o==="t"?Xt():dt())}async function Xt(){const o=m.value||[];await Promise.all(o.filter(l=>!j[l.token]).map(l=>ut(l.token)))}return ls(async()=>{ne.value=i.query.campaign?String(i.query.campaign):null,i.query.status&&(_.value=String(i.query.status)),i.query.payment==="success"?f.value="success":i.query.payment==="error"&&(f.value="error"),await Promise.all([dt(),Ut(_.value==="t")]);const o=i.query.travel?String(i.query.travel):null;o&&_.value==="t"&&(le[o]=!0,await ut(o))}),os({title:"Panier"}),(o,l)=>{const p=ps,N=ws,K=Ts,B=he,oe=Vs,Z=Bs,Me=Ws,Oe=Ea,Zt=An,es=Ll,ts=Po,ss=Go,vt=er,pt=Qr;return s(),a("div",null,[n(h)?(s(),se(p,{key:0,"item-count":4})):(s(),a("div",Yr,[e("div",Jr,[e("div",Xr,[d(N,{"is-shop":n(_)==="b",label:n(_)==="e"?"Total en attente":n(_)==="b"?"Total articles":n(_)==="p"?"Total payés":"Total",count:n(_)==="b"?ze.value.length:pe.value.length},null,8,["is-shop","label","count"]),d(K,{"model-value":n(_),"has-travel-data":We.value||n(_)==="t","onUpdate:modelValue":Xe},null,8,["model-value","has-travel-data"]),n(Ie)?(s(),a("div",Zr,[e("div",ei,[e("div",ti,[d(B,{name:"material-symbols:check-circle-outline",class:"mr-2"}),n(Ie).name?(s(),a("span",si," Votre choix de paiement "+r(n(E)(n(Ie).name))+" est enregistré ",1)):(s(),a("span",ai,"Votre choix de paiement est enregistré"))]),n(Ie).instructions?(s(),a("div",{key:0,class:"text-sm text-green-900 whitespace-pre-line",innerHTML:n(Ie).instructions},null,8,ni)):(s(),a("div",li," Votre club validera le règlement à réception ;
1 vous n'avez rien d'autre à faire pour l'instant. ")),e("button",{type:"button",class:"mt-3 text-sm underline",onClick:l[0]||(l[0]=y=>Ie.value=null)},"Fermer")])])):u("",!0),f.value?(s(),se(oe,{key:1,"is-success":f.value==="success","campaign-url":Ke.value?st.value:void 0,onGoHistory:b,onClose:c},null,8,["is-success","campaign-url"])):u("",!0),!f.value&&n(_)==="e"?(s(),a("section",oi,[pe.value.length===0?(s(),se(Z,{key:0,icon:"material-symbols:shopping-cart-outline",title:"Aucun article dans le panier",description:"Votre panier est actuellement vide"})):(s(),a("form",{key:1,method:"post",action:"#",onSubmit:l[3]||(l[3]=we(()=>{},["prevent"]))},[e("div",ri,[e("div",ii,[d(Me,{"all-selected":at.value,indeterminate:$t.value,"selected-count":ht.value,onToggle:Kt},null,8,["all-selected","indeterminate","selected-count"]),(s(!0),a(z,null,Y(n(v),y=>(s(),a("div",{key:y.token,class:"admin-modal-section"},[y.ownerName?(s(),a("h3",ci,[d(B,{name:"material-symbols:person-outline",class:"mr-2"}),k(" "+r(y.ownerName),1)])):u("",!0),e("div",mi,[(s(!0),a(z,null,Y(n(w)(y),te=>(s(),se(Oe,{key:te.token,cart:te,selected:n(X).has(te.token),selectable:n(R)(te),quantity:n(me)[te.token]||te.quantity||1,"display-name":n(g)(te),"has-terms":n(S)(te),comments:n(G)(te),onToggle:Gt,onConfirm:n(jt),onComment:n(Je),onDelete:n(Mt),onUpdateQuantity:Wt},null,8,["cart","selected","selectable","quantity","display-name","has-terms","comments","onConfirm","onComment","onDelete"]))),128))])]))),128)),n(ae).length>0?(s(),a("div",di,[l[12]||(l[12]=e("h3",{class:"admin-modal-section-title"},"Remises",-1)),e("div",ui,[(s(!0),a(z,null,Y(n(ae),(y,te)=>(s(),a("div",{key:te,class:"admin-modal-item"},[e("div",yi,[e("div",vi,[e("div",pi,r(y.cartType?.name||"Remise"),1),y.users?(s(),a("div",bi,r(wt(y.users)),1)):u("",!0)]),e("div",gi,r(n(x)(y.amount)),1)])]))),128))])])):u("",!0)]),e("div",fi,[n(Te)?(s(),se(Zt,{key:0,"cb-methods":ft.value,"normal-methods":n(ge),total:_t.value,"has-variable-price":lt.value,"variable-price-minimum":ot.value,"variable-price-max":it.value,"variable-amount":n(ue),"onUpdate:variableAmount":l[1]||(l[1]=y=>be(ue)?ue.value=y:null),"has-terms":kt.value,terms:nt.value,"term-schedule":Tt.value,"accepted-term":n(ve),"onUpdate:acceptedTerm":l[2]||(l[2]=y=>be(ve)?ve.value=y:null),loading:n(Pe),"campaign-url":Ke.value?st.value:void 0,onPay:n(Dt)},null,8,["cb-methods","normal-methods","total","has-variable-price","variable-price-minimum","variable-price-max","variable-amount","has-terms","terms","term-schedule","accepted-term","loading","campaign-url","onPay"])):u("",!0)])])],32))])):u("",!0),!f.value&&n(_)==="t"?(s(),a("section",xi,[!n(m)||n(m).length===0?(s(),se(Z,{key:0,icon:"material-symbols:flight",title:"Aucun voyage",description:"Vous n'avez aucun voyage avec des articles à payer"})):(s(!0),a(z,{key:1},Y(n(m),y=>(s(),se(es,{key:y.token,travel:y,expanded:n(le)[y.token]??!1,loading:n(Le)[y.token]??!1,"cart-groups":n(j)[y.token]||[],"cart-items":n(Vt)(y.token),"selected-tokens":n(de)[y.token]||new Set,"selected-count":n(Rt)(y.token),"selected-total":n(Bt)(y.token),"remaining-amount":n(It)(y.token),"has-variable-price":n(Lt)(y.token),"variable-price-minimum":n(Nt)(y.token),"variable-price-max":n(Ht)(y.token),"variable-amount":n(fe)[y.token]??null,"has-terms-support":n(Ot)(y.token),terms:n(Q)[y.token]||[],"accepted-term":n(_e)[y.token]||"base","cb-payment-methods":xt.value[y.token]||[],"normal-payment-methods":n(U)[y.token]||{},"payment-loading":n(Pe),onToggle:n(Qt),onToggleItem:te=>n(Et)(y.token,te),onPay:te=>n(zt)(y.token,te),"onUpdate:variableAmount":te=>n(fe)[y.token]=te,"onUpdate:acceptedTerm":te=>n(_e)[y.token]=te},null,8,["travel","expanded","loading","cart-groups","cart-items","selected-tokens","selected-count","selected-total","remaining-amount","has-variable-price","variable-price-minimum","variable-price-max","variable-amount","has-terms-support","terms","accepted-term","cb-payment-methods","normal-payment-methods","payment-loading","onToggle","onToggleItem","onPay","onUpdate:variableAmount","onUpdate:acceptedTerm"]))),128))])):u("",!0),!f.value&&n(_)==="b"?(s(),a("section",hi,[e("div",$i,[e("h3",ki,[d(B,{name:"material-symbols:storefront-outline",class:"mr-2"}),l[13]||(l[13]=k("Boutique ",-1))]),e("div",_i,[e("div",wi,[e("div",Ci,[d(ts,{"search-query":n(I),"onUpdate:searchQuery":l[4]||(l[4]=y=>be(I)?I.value=y:null),"selected-category":n(C),"onUpdate:selectedCategory":l[5]||(l[5]=y=>be(C)?C.value=y:null),"price-filter":n(q),"onUpdate:priceFilter":l[6]||(l[6]=y=>be(q)?q.value=y:null),categories:mt.value,"total-products":ze.value.length,"category-counts":Pt.value,onReset:Yt},null,8,["search-query","selected-category","price-filter","categories","total-products","category-counts"]),e("div",Ti,[e("div",Pi,[e("div",Si,[k(r(Ye.value.length)+" produit(s) trouvé(s) ",1),xe(e("span",null,"dans "+r(n(C)),513),[[je,n(C)!=="all"]])]),e("div",Ai,[l[15]||(l[15]=e("span",{class:"text-sm text-gray-600"}
1,"Trier par :",-1)),xe(e("select",{"onUpdate:modelValue":l[7]||(l[7]=y=>be(J)?J.value=y:null),class:"px-3 py-2 border border-gray-300 rounded-lg text-sm"},[...l[14]||(l[14]=[e("option",{value:"club"},"Tri du club",-1),e("option",{value:"name"},"Nom",-1),e("option",{value:"price_asc"},"Prix croissant",-1),e("option",{value:"price_desc"},"Prix décroissant",-1)])],512),[[rs,n(J)]])])]),e("div",Mi,[(s(!0),a(z,null,Y(Ye.value,y=>(s(),se(ss,{key:y.token,product:y,onAdd:Jt},null,8,["product"]))),128))]),xe(d(Z,{icon:"material-symbols:search-off",title:"Aucun produit trouvé",description:"Essayez de modifier vos filtres ou votre recherche"},null,512),[[je,Ye.value.length===0]])])])])])])])):u("",!0),!f.value&&n(_)==="p"?(s(),a("section",ji,[e("div",Di,[e("div",Fi,[e("h3",qi,[d(B,{name:"material-symbols:receipt-long-outline",class:"mr-2"}),l[16]||(l[16]=k(" Historique des paiements ",-1))]),e("div",Vi,r(n(ce)?Ae.value.length:He.value.length)+" article(s) ",1)]),d(vt,{"search-query":n(ee),"onUpdate:searchQuery":l[8]||(l[8]=y=>be(ee)?ee.value=y:null),"sort-order":n(A),"onUpdate:sortOrder":l[9]||(l[9]=y=>be(A)?A.value=y:null),"show-travel-filter":We.value,"travel-filter-active":n(ce),onToggleTravelFilter:n(yt)},null,8,["search-query","sort-order","show-travel-filter","travel-filter-active","onToggleTravelFilter"]),n(Ve)?(s(),a("div",Li,[d(B,{name:"material-symbols:progress-activity",class:"animate-spin text-2xl text-gray-400"}),l[17]||(l[17]=e("span",{class:"ml-2 text-gray-500"},"Chargement des données voyages...",-1))])):(s(),a("div",Ni,[!n(ce)&&pe.value.length===0&&!n(ee)?(s(),a("div",Hi,[d(B,{name:"material-symbols:check-circle-outline",class:"text-6xl text-gray-300 mb-4 block mx-auto"}),l[18]||(l[18]=e("h3",{class:"text-md font-medium text-gray-900 mb-2"},"Aucun article payé",-1)),l[19]||(l[19]=e("p",{class:"text-gray-500"},"Vos articles payés apparaîtront ici",-1))])):(n(ce)?Ae.value.length:He.value.length)===0&&n(ee)?(s(),a("div",Ii,[d(B,{name:"material-symbols:search-off",class:"text-4xl text-gray-300 mb-2 block mx-auto"}),e("p",Oi,'Aucun résultat pour "'+r(n(ee))+'"',1)])):n(ce)&&Ae.value.length===0?(s(),a("div",Bi,[d(B,{name:"material-symbols:flight",class:"text-4xl text-gray-300 mb-2 block mx-auto"}),l[20]||(l[20]=e("p",{class:"text-gray-500"},"Aucun article de voyage payé",-1))])):u("",!0),(s(!0),a(z,null,Y(n(ce)?Ae.value:He.value,y=>(s(),se(pt,{key:y.token,cart:y,"display-name":n(g)(y),comments:n(G)(y),payments:n(H)(y),traceability:n(D)(y),"show-payed-badge":!0,onComment:n(Je)},null,8,["cart","display-name","comments","payments","traceability","onComment"]))),128))]))])])):u("",!0),!f.value&&n(_)==="c"?(s(),a("section",Ri,[e("div",Ei,[e("div",Ui,[e("h3",Qi,[d(B,{name:"material-symbols:delete-outline",class:"mr-2"}),l[21]||(l[21]=k(" Historique des paiements annulés / supprimés ",-1))]),e("div",zi,r(n(ce)?Ae.value.length:He.value.length)+" article
1(s) ",1)]),d(vt,{"search-query":n(ee),"onUpdate:searchQuery":l[10]||(l[10]=y=>be(ee)?ee.value=y:null),"sort-order":n(A),"onUpdate:sortOrder":l[11]||(l[11]=y=>be(A)?A.value=y:null),"show-travel-filter":We.value,"travel-filter-active":n(ce),onToggleTravelFilter:n(yt)},null,8,["search-query","sort-order","show-travel-filter","travel-filter-active","onToggleTravelFilter"]),n(Ve)?(s(),a("div",Gi,[d(B,{name:"material-symbols:progress-activity",class:"animate-spin text-2xl text-gray-400"}),l[22]||(l[22]=e("span",{class:"ml-2 text-gray-500"},"Chargement des données voyages...",-1))])):(s(),a("div",Ki,[!n(ce)&&pe.value.length===0&&!n(ee)?(s(),a("div",Wi,[d(B,{name:"material-symbols:delete-outline",class:"text-6xl text-gray-300 mb-4 block mx-auto"}),l[23]||(l[23]=e("h3",{class:"text-md font-medium text-gray-900 mb-2"},"Aucun article annulé",-1)),l[24]||(l[24]=e("p",{class:"text-gray-500"},"Vos articles annulés ou supprimés apparaîtront ici",-1))])):(n(ce)?Ae.value.length:He.value.length)===0&&n(ee)?(s(),a("div",Yi,[d(B,{name:"material-symbols:search-off",class:"text-4xl text-gray-300 mb-2 block mx-auto"}),e("p",Ji,'Aucun résultat pour "'+r(n(ee))+'"',1)])):n(ce)&&Ae.value.length===0?(s(),a("div",Xi,[d(B,{name:"material-symbols:flight",class:"text-4xl text-gray-300 mb-2 block mx-auto"}),l[25]||(l[25]=e("p",{class:"text-gray-500"},"Aucun article de voyage annulé",-1))])):u("",!0),(s(!0),a(z,null,Y(n(ce)?Ae.value:He.value,y=>(s(),se(pt,{key:y.token,cart:y,"display-name":n(g)(y),comments:n(G)(y),payments:[],traceability:n(D)(y),"show-payed-badge":!1,onComment:n(Je)},null,8,["cart","display-name","comments","traceability","onComment"]))),128))]))])])):u("",!0)])])]))])}}});export{sc 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.