1import{d as It,s as Ee,c as f,w as g,ac as Mt,o as i,h as o,f as a,k as p,b as n,e as r,t as u,g as c,F as Ve,r as Le,H as s,M as Et,l as Vt,N as _l,W as kl,x as Bt,y as yl,V as wl,D as b,G as Al,p as $l,q as $,n as k,C as Te,E as Ie,ad as I,B as Pl,I as Cl,U as Me}from"./DxLkTp3o.js";import{_ as zl}from"./BIR34Nq6.js";import{_ as Bl}from"./DtbqvRjc.js";import{_ as Sl}from"./B75NkjHn.js";import{_ as Ul}from"./CjUOL7I1.js";import{_ as Tl}from"./DTm-FCRg.js";import{_ as Il}from"./Cj5_Pkq9.js";import{_ as Ml}from"./cUtXKJWH.js";import{o as El,f as Vl}from"./BwexS1Za.js";import{f as Ll}from"./CdpWOiSo.js";import{s as Nl}from"./awhsVlCC.js";import"./BsLVxVdC.js";import"./CH5Z76yF.js";import"./CUPg0Eun.js";import"./Cw4HcQiy.js";import"./BlSgJYPe.js";import"./BYNjaBzN.js";import"./C7eTaWhY.js";import"./BPWwYhjC.js";import"./CgRNcDg-.js";import"./CfRSTBRl.js";import"./BY-uDoI5.js";import"./DWNazQbg.js";import"./ClyMoqz6.js";const Fl={class:"flex flex-col gap-4"},Rl={key:0,class:"flex items-start gap-3 rounded-xl border border-red-200 bg-red-50 px-4 py-3 dark:border-red-800 dark:bg-red-950/30"},Dl={class:"text-sm text-red-800 dark:text-red-300"},Kl={key:1,class:"flex justify-center py-8"},Ol={key:2,class:"rounded-xl border border-dashed border-neutral-200 px-4 py-8 text-center text-sm text-muted dark:border-neutral-700"},Wl={key:3,class:"flex flex-col gap-1.5"},jl={class:"inline-flex size-6 shrink-0 items-center justify-center rounded-full bg-neutral-100 text-xs font-semibold text-neutral-600 dar
1k:bg-neutral-700 dark:text-neutral-300"},Hl={class:"min-w-0 flex-1"},Jl=["href","title"],Gl={class:"truncate text-xs text-muted"},ql={class:"flex justify-end"},Zl=It({__name:"PromoWishlistAdminModal",props:{open:{type:Boolean},promotionId:{},publisherName:{},blogUrl:{}},emits:["update:open","start-promotion"],setup(P,{emit:Q}){const ee=P,_e=Q,z=s([]),M=s(!1),te=s("");async function B(){if(ee.promotionId!==null){M.value=!0,te.value="";try{const h=await $fetch(`/api/admin/promotions/${ee.promotionId}/wishlist`);z.value=[...h.items].sort((x,E)=>x.position-E.position)}catch(h){te.value=h?.data?.detail??"Die Wunschliste konnte nicht geladen werden."}finally{M.value=!1}}}Ee(()=>ee.open,h=>{h&&B()});function me(h){_e("update:open",!1),_e("start-promotion",h.url)}function le(h){try{return new URL(h).hostname.replace(/^www\./,"")}catch{return h}}return(h,x)=>{const E=Vt,ve=Et,ke=Mt;return i(),f(ke,{open:P.open,title:`Wunschliste für ${le(P.blogUrl)}`,description:`von ${P.publisherName}`,ui:{content:"sm:max-w-2xl"},"onUpdate:open":x[1]||(x[1]=y=>h.$emit("update:open",y))},{body:g(()=>[o("div",Fl,[n(te)?(i(),r("div",Rl,[a(E,{name:"i-lucide-circle-x",class:"mt-0.5 size-4 shrink-0 text-red-600 dark:text-red-400"}),o("p",Dl,u(n(te)),1)])):c("",!0),n(M)?(i(),r("div",Kl,[a(E,{name:"i-lucide-loader-circle",class:"size-6 animate-spin text-muted"})])):n(z).length===0?(i(),r("p",Ol," Diese Wunschliste ist leer. ")):(i(),r("ul",Wl,[(i(!0),r(Ve,null,Le(n(z),(y,ge)=>(i(),r("li",{key:y.id,class:"flex items-center gap-3 rounded-xl border border-neutral-200 bg-white px-3 py-2 dark:border-neutral-700 dark:bg-neutral-800"},[o("span",jl,u(ge+1),1),o("div",Hl,[o("a",{href:y.url,target:"_blank",rel:"noopener noreferrer",class:"block truncate text-sm font-medium text-highlighted hover:text-[#21A4A3] hover:underline",title:y.url},u(y.title||y.url),9,Jl),o("p",Gl,u(le(y.url)),1)]),a(ve,{size:"xs",icon:"i-lucide-send",class:"shrink-0",title:"Promotion für diesen Beitrag starten",onClick:ye=>me(y)},{default:g(()=>[...x[2]||(x[2]=[p(" Promotion starten ",-1)])]),_:1},8,["onClick"])]))),128))])),x[3]||(x[3]=o("p",{class:"text-xs text-muted"}," Der Eintrag verschwindet automatisch aus der Wunschliste, sobald die Promotion verarbeitet worden ist. ",-1))])]),footer:g(()=>[o("div",ql,[a(ve,{variant:"ghost",color:"neutral",onClick:x[0]||(x[0]=y=>h.$emit("update:open",!1))},{default:g(()=>[...x[4]||(x[4]=[p(" SchlieÃen ",-1)])]),_:1})])]),_:1},8,["open","title","description"])}}}),Xl=Object.assign(Zl,{__name:"PromoWishlistAdminModal"}),rt=" (individuell)";function St(P){return P?P.endsWith(rt)?P.slice(0,-rt.length):P:""}function Ut(P){return!!P?.endsWith(rt)}const Yl={class:"min-h-screen bg-neutral-50 dark:bg-neutral-900"},Ql={class:"mx-auto max-w-7xl px-4 py-8 sm:px-6 lg:px-8"},en={class:"mb-8 flex flex-wrap items-start justify-between gap-4"},tn={class:"flex items-center gap-3"},ln={class:"rounded-xl bg-[#21A4A3]/10 p-2"},nn={class:"mt-2 flex items-center gap-2"},on={class:"flex flex-col items-end gap-2"},an={class:"flex items-center gap-2"},sn={key:0,class:"mb-6 rounded-xl border border-emerald-200 bg-emerald-50 p-4 dark:border-emerald-800 dark:bg-emerald-950/30"},rn={class:"flex items-start gap-3"},dn={class:"text-sm"},un={class:"mt-1 space-y-0.5 text-emerald-700 dark:text-emerald-400"},cn={key:1,class:"mb-6 rounded-xl border border-red-200 bg-red-50 p-4 dark:border-red-800 dark:bg-red-950/30"},pn={class:"flex items-center gap-2 text-sm text-red-700 dark:text-red-400"},mn={class:"overflow-hidden rounded-2xl border-t-2 border-[#21A4A3] bg-white shadow-sm dark:bg-neutral-800 dark:ring-1 dark:ring-neutral-700"},vn={class:"flex flex-wrap items-end gap-3 border-b border-neutral-100 px-5 py-4 dark:border-neutral-700"},gn={class:"flex-1 min-w-48"},bn={class:"ml-auto text-xs text-muted self-end pb-1"},fn={class:"overflow-x-auto"},hn={class:"w-full text-sm"},xn={class:"border-b border-neutral-100 bg-neutral-50 text-left dark:border-neutral-700 dark:bg-neutral-700/30"},_n={class:"inline-flex items-center gap-1"},kn={class:"inline-flex items-center gap-1"},yn={class:"inline-flex items-center gap-1"},wn={class:"inline-flex items-center gap-1"},An={class:"inline-flex items-center gap-1",title:"Nächste Abbuchung"},$n={class:"inline-flex items-center gap-1"}
1,Pn={class:"divide-y divide-neutral-100 dark:divide-neutral-700"},Cn={key:0,class:"text-center"},zn={colspan:"9",class:"px-4 py-10"},Bn={class:"flex justify-center"},Sn={key:1,class:"text-center"},Un={class:"px-4 py-3"},Tn={class:"flex items-center gap-1.5"},In={class:"min-w-0"},Mn=["disabled","title","onClick"],En={key:1,class:"font-medium text-highlighted"},Vn={key:2,class:"flex items-center gap-1 text-xs font-medium text-red-700 dark:text-red-400",title:"Der Blog ist gelöscht, das Abo läuft weiter und bucht weiter ab. Ãber das Umhängen-Symbol auf einen bestehenden Blog des Publishers verschieben oder die Promotion beenden."},Ln={key:3,class:"flex items-center gap-1 min-w-0"},Nn=["id","onKeydown"],Fn={key:4,class:"flex items-center gap-1 min-w-0"},Rn=["href","title","onClick"],Dn=["onClick"],Kn=["onClick"],On={class:"px-4 py-3"},Wn=["disabled","title"],jn={class:"min-w-36 py-1"},Hn=["onClick"],Jn={class:"px-4 py-3"},Gn={key:0,class:"flex items-center gap-1"},qn=["id","onKeydown"],Zn=["onClick"],Xn={class:"px-3 py-3"},Yn={class:"flex items-center gap-2"},Qn=["disabled","onClick"],eo={key:0,class:"flex items-center gap-1"},to=["id","onKeydown"],lo=["onClick"],no={class:"px-2 py-3 text-xs"},oo={class:"text-highlighted"},io=["title"],ao={key:0,class:"text-amber-600 dark:text-amber-400"},so=["title"],ro={class:"px-2 py-3"},uo={key:0,class:"flex items-center gap-1"},co=["id","onKeydown"],po=["onClick"],mo={class:"inline-flex items-center gap-1"},vo=["href"],go={key:2},bo={class:"px-2 py-3"},fo={class:"px-2 py-3"},ho={class:"grid grid-cols-[2rem_2.75rem_1rem_2rem_2rem_2rem_2rem] items-center gap-1"},xo=["title","onClick"],_o={key:0,class:"flex items-center justify-center gap-2 border-t border-neutral-100 px-5 py-4 dark:border-neutral-700"},ko={class:"text-sm text-muted"},yo={class:"space-y-4"},wo={class:"relative"},Ao={key:0,class:"mt-1.5 text-xs text-red-600"},$o={key:1,class:"mt-1.5 text-xs text-emerald-700"},Po={key:0},Co={key:0,class:"mt-1 text-xs text-muted"},zo={key:1},Bo={key:2,class:"rounded-lg bg-red-50 px-3 py-2 text-sm text-red-700 dark:bg-red-950/30 dark:text-red-400"},So={class:"flex justify-end gap-2"},Uo={class:"space-y-4"},To={key:0,class:"text-sm text-muted"},Io={class:"font-medium text-highlighted"},Mo={key:0},Eo={key:1,class:"text-sm text-muted"},Vo={key:2},Lo={key:0,class:"mt-1 text-xs text-muted"},No={key:3,class:"text-sm text-muted"},Fo={key:4,class:"rounded-lg bg-red-50 px-3 py-2 text-sm text-red-700 dark:bg-red-950/30 dark:text-red-400"},Ro={class:"flex justify-end gap-2"},Do={class:"space-y-3"},Ko={key:0,class:"text-sm text-muted"},Oo={class:"font-medium text-highlighted"},Wo={class:"flex justify-between gap-2"},jo={class:"flex gap-2 ml-auto"},Ho={class:"space-y-3"},Jo={key:0,class:"text-sm text-muted"},Go={class:"font-medium text-highlighted"},qo={key:1,class:"text-sm text-error"},Zo={class:"flex justify-between gap-2"},Xo={class:"flex gap-2 ml-auto"},Yo={class:"space-y-3"},Qo={key:0,class:"text-sm text-muted"},ei={class:"font-medium text-highlighted"},ti={class:"space-y-2"},li=["onClick"],ni={class:"min-w-0"},oi={class:"mt-0.5 text-xs leading-relaxed text-muted"},ii={class:"flex justify-end gap-2"},st=50,Tt=168,Ui=It({__name:"index",async setup(P){let Q,ee;const{startImpersonation:_e}=_l(),z=kl(),M=s(null);async function te(t){if(t.publisher_id){M.value=t.publisher_id;try{await _e("publisher",t.publisher_id),await Cl("/dashboard/publisher")}catch{z.add({title:"Fehler beim Einloggen als Publisher.",color:"error"}),M.value=null}}}const B=s([]);async function me(){try{const t=await $fetch("/api/admin/promotions/jobs");B.value=t??[]}catch{}}const le=$(()=>B.value.filter(t=>t.status==="running")),h=$(()=>new Set(le.value.map(t=>t.promotion_id).filter(t=>t!==null))),x=$(()=>new Set(le.value.map(t=>t.blog_id).filter(t=>t!==null)));function E(t){return!!(t.id&&h.value.has(t.id)||t.blog_id&&x.value.has(t.blog_id))}const ve=$(()=>B.value.filter(t=>t.status==="awaiting_review"));function ke(t){return y(t)!==null}function y(t){return ve.value.find(e=>t.id&&e.promotion_id===t.id||t.blog_id&&e.blog_id===t.blog_id)??null}const ge=$(()=>le.value.length),ye=$(()=>ve.value.length),we=s(!1),dt=s(null);function Lt(t){dt.value=t,we.value=!0}function Nt(t){B.value=B.value.map(e=>e.id===t?{...e,status:"running",current_message:"Freigegeben, Verarbeitung wird fortgesetztâ¦",pending_payload:null}:e)}function Ft(t){B.value=B.value.filter(e=>e.id!==t)}let Ne=null;Bt(async()=>{await me(),Ne=Nl(me,5e3)}),yl(()=>{Ne&&clearInterval(Ne)});const Rt=[{label:"Alle",value:"all"},{label:"Laufend",value:"running"},{label:"Aktiv",value:"active"},{label:"Ãberfällig",value:"past_due"},{label:"Pausiert",value:"paused"},{label:"Storniert",value:"canceled"}
1],be=s(""),D=s("running"),V=s(1),Dt=$(()=>({search:be.value||void 0,status:D.value&&D.value!=="all"?D.value:void 0,limit:st,offset:(V.value-1)*st})),{data:ut,status:Kt,refresh:L}=([Q,ee]=wl(()=>$l("/api/admin/promotions",{query:Dt},"$J8b-wyysmT")),Q=await Q,ee(),Q),ct=$(()=>ut.value?.items??[]),pt=$(()=>ut.value?.total??0),Fe=$(()=>Math.ceil(pt.value/st)),w=s(null),A=s("asc");Bt(async()=>{try{const t=await $fetch("/api/admin/promotions/sort-preference");t.sort_key&&(w.value=t.sort_key,A.value=t.sort_dir)}catch{}});async function Ot(){try{await $fetch("/api/admin/promotions/sort-preference",{method:"PUT",body:{sort_key:w.value,sort_dir:A.value}})}catch{}}function ne(t){w.value===t?A.value==="asc"?A.value="desc":(w.value=null,A.value="asc"):(w.value=t,A.value="asc"),Ot()}const mt=$(()=>w.value?[...ct.value].sort((t,e)=>{const d=w.value,v=t[d]??"",X=e[d]??"",Y=v<X?-1:v>X?1:0;return A.value==="asc"?Y:-Y}):ct.value);let vt;Ee(be,()=>{clearTimeout(vt),vt=setTimeout(()=>{V.value=1,L()},300)}),Ee(D,()=>{V.value=1,L()});const Re=s(null),oe=s(""),De=s(!1);function Wt(t){Re.value=t.id,oe.value=(t.price_cents/100).toFixed(2).replace(".",","),Me(()=>{const e=document.getElementById(`price-input-${t.id}`);e&&e.select()})}function Ae(){Re.value=null,oe.value=""}async function gt(t){const e=parseFloat(oe.value.replace(",","."));if(isNaN(e)||e<=0)return;const d=Math.round(e*100);if(d===t.price_cents){Ae();return}De.value=!0;try{await $fetch(`/api/admin/promotions/${t.id}/price`,{method:"PATCH",body:{price_cents:d}}),t.price_cents=d,Ae()}finally{De.value=!1}}const Ke=s(null),ie=s(""),Oe=s(!1);function jt(t){Ke.value=t.id,ie.value=t.activated_at?t.activated_at.substring(0,10):"",Me(()=>{const e=document.getElementById(`activated-input-${t.id}`);e&&e.focus()})}function We(){Ke.value=null,ie.value=""}async function bt(t){Oe.value=!0;try{const e=ie.value||null;await $fetch(`/api/admin/promotions/${t.id}/activated-at`,{method:"PATCH",body:{activated_at:e}}),t.activated_at=e?`${e}T00:00:00+00:00`:null,We()}finally{Oe.value=!1}}const je=s(null),ae=s(""),He=s(!1);function Ht(t){je.value=t.id,ae.value=t.next_billing_at?t.next_billing_at.substring(0,10):"",Me(()=>{const e=document.getElementById(`billing-input-${t.id}`);e&&e.focus()})}function Je(){je.value=null,ae.value=""}async function ft(t){He.value=!0;try{const e=ae.value||null;await $fetch(`/api/admin/promotions/${t.id}/billing-date`,{method:"PATCH",body:{next_billing_at:e}}),t.next_billing_at=e,Je()}finally{He.value=!1}}const Jt=[{label:"Aktiv",value:"active"},{label:"Pausiert",value:"paused"},{label:"Ãberfällig",value:"past_due"},{label:"Ausstehend",value:"pending"},{label:"Storniert",value:"canceled"}],$e=s(null),fe=s(null);async function Gt(t,e){if(e===t.status){$e.value=null;return}fe.value=t.id,$e.value=null;try{await $fetch(`/api/admin/promotions/${t.id}/status`,{method:"PATCH",body:{status:e}}),t.status=e,t.pause_reason=e==="paused"?"admin":null}finally{fe.value=null}}const Ge=s(!1),K=s(null),Pe=s("");async function qt(){Ge.value=!0,Pe.value="",K.value=null;try{K.value=await $fetch("/api/admin/promotions/daily-billing",{method:"POST"}),await L()}catch{Pe.value="Billing-Run fehlgeschlagen. Bitte Logs prüfen."}finally{Ge.value=!1}}function se(t){return t?new Date(t).toLocaleDateString("de-DE",{day:"2-digit",month:"2-digit",year:"numeric"}):"â"}function Zt(t){if(t.status!=="paused"||t.pause_reason!=="insufficient_funds")return;const e=t.paused_at?se(t.paused_at):"unbekannt",d=t.pause_reminder_sent_at?se(t.pause_reminder_sent_at):"noch nicht verschickt";return`Pausiert seit: ${e} 2Erinnerungsmail (30 Tage): ${d}`}function Xt(t){if(!t.last_promoted_at)return"text-muted";if(t.status==="paused")return"text-muted line-through decoration-1";if(t.is_overdue)return"font-medium text-red-600 dark:text-red-400";const e=t.expected_interval_hours??Tt;return(Date.now()-new Date(t.last_promoted_at).getTime())/36e5>=e-24?"font-medium text-amber-600 dark:text-amber-400":"text-muted"}function ht(t){return(t.expected_interval_hours??Tt)/24}const re=s(!1),S=s(null),O=s(""),qe=s(!1);function Yt(t){S.value=t,O.value=t.admin_note??"",re.value=!0}
2async function xt(){if(S.value){qe.value=!0;try{await $fetch(`/api/admin/promotions/${S.value.id}/note`,{method:"PATCH",body:{admin_note:O.value||null}}),S.value.admin_note=O.value||null,re.value=!1}finally{qe.value=!1}}}const de=s(!1),U=s(null),W=s(""),Ze=s(!1),ue=s("");function Qt(t){U.value=t,W.value=t.expected_interval_hours?String(ht(t)).replace(".",","):"",ue.value="",de.value=!0}async function Xe(t){if(U.value){Ze.value=!0,ue.value="";try{const e=await $fetch(`/api/admin/promotions/${U.value.id}/expected-interval`,{method:"PATCH",body:{expected_interval_hours:t}});U.value.expected_interval_hours=e.expected_interval_hours,U.value.package_label=e.package_label,de.value=!1}catch{ue.value="Fehler beim Speichern."}finally{Ze.value=!1}}}const Ye=s(null);async function el(t){Ye.value=t.id;try{const e=await $fetch(`/api/admin/promotions/${t.id}/linkedin`,{method:"PATCH",body:{linkedin_included:!t.linkedin_included}});t.linkedin_included=e.linkedin_included,t.package_label=e.package_label}finally{Ye.value=null}}function _t(){if(!W.value.trim()){Xe(null);return}const t=parseFloat(W.value.replace(",","."));if(isNaN(t)||t<=0){ue.value="Ungültiger Wert.";return}Xe(Math.round(t*24))}const Qe=s(null),j=s(""),et=s(!1);function kt(t){Qe.value=t.id,j.value=t.feed_url??"",Me(()=>{const e=document.getElementById(`feed-input-${t.id}`);e&&e.focus()})}function tt(){Qe.value=null,j.value=""}async function yt(t){if(t.blog_id){et.value=!0;try{await $fetch(`/api/admin/blogs/${t.blog_id}`,{method:"PATCH",body:{feed_url:j.value||null}}),t.feed_url=j.value||null,tt()}catch{z.add({title:"Feed-URL konnte nicht gespeichert werden.",color:"error"})}finally{et.value=!1}}}const ce=s(!1),N=s(""),_=s(null),Ce=s(!1),T=s(void 0),he=s("12,99"),lt=s(!1),H=s("");let wt;async function tl(){const t=N.value.trim();if(!t||!t.includes("@")){_.value=null,T.value=void 0;return}Ce.value=!0,H.value="";try{_.value=await $fetch("/api/admin/publisher-lookup",{query:{email:t}}),T.value=void 0}catch{_.value=null}finally{Ce.value=!1}}Ee(N,()=>{clearTimeout(wt),wt=setTimeout(tl,400)});function ll(){N.value="",_.value=null,T.value=void 0,he.value="12,99",H.value="",ce.value=!0}const At=$(()=>(_.value?.blogs??[]).map(t=>({label:t.blog_url.replace(/^https?:\/\//,""),value:t.id,disabled:t.has_active_promotion})));async function nl(){if(!T.value||!N.value)return;const t=parseFloat(he.value.replace(",","."));if(isNaN(t)||t<=0){H.value="Ungültiger Betrag.";return}lt.value=!0,H.value="";try{await $fetch("/api/admin/promotions",{method:"POST",body:{publisher_email:N.value.trim(),blog_id:T.value,price_cents:Math.round(t*100)}}),ce.value=!1,z.add({title:"Promotion wurde angelegt.",color:"success"}),await L()}catch(e){const d=e?.data?.detail;H.value=d??"Fehler beim Anlegen der Promotion."}finally{lt.value=!1}}const pe=s(!1),F=s(null),nt=s(null),ze=s(!1),J=s(void 0),ot=s(!1),G=s(""),it=$(()=>(nt.value?.blogs??[]).filter(t=>t.id!==F.value?.blog_id).map(t=>({label:t.blog_url.replace(/^https?:\/\//,""),value:t.id,disabled:t.has_active_promotion})));async function ol(t){if(F.value=t,nt.value=null,J.value=void 0,G.value="",pe.value=!0,!!t.publisher_email){ze.value=!0;try{nt.value=await $fetch("/api/admin/publisher-lookup",{query:{email:t.publisher_email}})}catch{G.value="Blogs des Publishers konnten nicht geladen werden."}finally{ze.value=!1}}}async function il(){const t=F.value;if(!(!t||!J.value)){ot.value=!0,G.value="";try{await $fetch(`/api/admin/promotions/${t.id}/blog`,{method:"PATCH",body:{blog_id:J.value}}),pe.value=!1,z.add({title:"Promotion wurde umgehängt.",color:"success"}),await L()}catch(e){const d=e?.data?.detail;G.value=d??"Fehler beim Umhängen der Promotion."}finally{ot.value=!1}}}function al(t,e){const v={active:"Aktiv",paused:"Pausiert",past_due:"Ãberfällig",canceled:"Storniert",pending:"Ausstehend"}[t]??t;return t==="paused"&&e==="insufficient_funds"?`${v} (Guthaben)`:t==="paused"&&e==="admin"?`${v} (Admin)`:v}function $t(t){return{active:"text-emerald-700 bg-emerald-50",paused:"text-amber-700 bg-amber-50",past_due:"text-red-700 bg-red-50",canceled:"text-neutral-500 bg-neutral-100",pending:"text-blue-700 bg-blue-50"}[t]??"text-neutral-600 bg-neutral-100"}function Pt(t){return t==="wallet"?"i-lucide-wallet":t==="manual"?"i-lucide-handshake":"i-lucide-credit-card"}function Ct(t){return t==="wallet"?"text-[#21A4A3]":t==="manual"?"text-neutral-400":"text-violet-400"}function sl(t){return t==="wallet"?"Wallet-Abbuchung":t==="manual"?"Extern verwaltet":"Stripe (Legacy)"}const q=s(!1),Z=s(null),C=s("wallet"),Be=s(null),rl=[{value:"wallet",icon:"i-lucide-wallet",label:"Wallet-Abbuchung",description:"Der tägliche Billing-Run bucht den Betrag automatisch vom Guthaben des Publishers ab. Bei zu wenig Guthaben wird die Promotion pausiert und eine Warnmail verschickt."},{value:"manual",icon:"i-lucide-handshake",label:"Extern verwaltet",description:"Keine automatische Abbuchung. Das Abo läuft weiter und verlängert sich monatlich â die Abrechnung erfolgt auÃerhalb der Plattform (z. B. per Rechnung oder Ãberweisung)."}];function dl(t){t.payment_method!=="stripe"&&(Z.value=t,C.value=t.payment_method,q.value=!0)}const Se=s(!1),R=s(null),Ue=s(!1),zt=s("");function ul(t){R.value=t,Se.value=!0}function cl(t){zt.value=t,Ue.value=!0}async function pl(){await me(),await L()}async function ml(){const t=Z.value;if(!t||C.value===t.payment_method){q.value=!1;return}Be.value=t.id,q.value=!1;try{await $fetch(`/api/admin/promotions/${t.id}/payment-method`,{method:"PATCH",body:{payment_method:C.value}}),t.payment_method=C.value}catch{z.add({title:"Zahlungsart konnte nicht geändert werden.",color:"error"})}finally{Be.value=null}}return(t,e)=>{const d=Et,v=Vt,X=Al,Y=zl,at=Bl,vl=Sl,gl=Ul,xe=Mt,bl=Tl,fl=Il,hl=Xl,xl=Ml;return i(),r("div",Yl,[o("div",Ql,[o("div",en,[o("div",null,[o("div",tn,[a(d,{to:"/dashboard/admin",variant:"ghost",color:"neutral",icon:"i-lucide-arrow-left",size:"sm"}),o("div",ln,[a(v,{name:"i-lucide-megaphone",class:"size-5 text-[#21A4A3]"})]),e[35]||(e[35]=o("h1",{class:"text-2xl font-bold text-highlighted"}," Blog-Promotions ",-1))]),e[37]||(e[37]=o("p",{class:"mt-1 text-sm text-muted"}," Alle BlogBooster-Abos im Ãberblick â Wallet-Abrechnung verwalten ",-1)),o("div",nn,[n(ge)>0?(i(),f(X,{key:0,to:"/dashboard/admin/promotions/in-progress",class:"inline-flex items-center gap-1.5 rounded-full bg-blue-50 px-3 py-1 text-xs font-medium text-blue-700 hover:bg-blue-100 transition-colors"},{default:g(()=>[a(v,{name:"i-lucide-loader-circle",class:"size-3.5 animate-spin"}),p(" "+u(n(ge))+" "+u(n(ge)===1?"Promotion":"Promotions")+" in Arbeit ",1)]),_:1})):c("",!0),n(ye)>0?(i(),f(X,{key:1,to:"/dashboard/admin/promotions/in-progress",class:"inline-flex items-center gap-1.5 rounded-full bg-amber-50 px-3 py-1 text-xs font-medium text-amber-700 hover:bg-amber-100 transition-colors dark:bg-amber-950/30 dark:text-amber-400"},{default:g(()=>[a(v,{name:"i-lucide-bell-ring",class:"size-3.5"}),p(" "+u(n(ye))+" "+u(n(ye)===1?"Vorschau":"Vorschauen")+" wartet auf Freigabe ",1)]),_:1})):c("",!0),a(X,{to:"/dashboard/admin/promotions/in-progress",class:"inline-flex items-center gap-1.5 rounded-full bg-neutral-100 px-3 py-1 text-xs font-medium text-neutral-600 hover:bg-neutral-200 transition-colors dark:bg-neutral-700 dark:text-neutral-300 dark:hover:bg-neutral-600"},{default:g(()=>[a(v,{name:"i-lucide-list",class:"size-3.5"}),e[36]||(e[36]=p(" Promotion-Jobs ",-1))]),_:1})])]),o("div",on,[o("div",an,[a(d,{icon:"i-lucide-plus",color:"neutral",variant:"outline",onClick:ll},{default:g(()=>[...e[38]||(e[38]=[p(" Promotion hinzufügen ",-1)])]),_:1}),a(d,{loading:n(Ge),icon:"i-lucide-refresh-cw",color:"primary",onClick:qt},{default:g(()=>[...e[39]||(e[39]=[p(" Billing-Run jetzt ausführen ",-1)])]),_:1},8,["loading"])]),e[40]||(e[40]=o("p",{class:"text-xs text-muted max-w-64 text-right"}
2," Billing-Run: Manuelle Notfalllösung â läuft automatisch täglich. ",-1))])]),n(K)?(i(),r("div",sn,[o("div",rn,[a(v,{name:"i-lucide-check-circle",class:"mt-0.5 size-5 shrink-0 text-emerald-600"}),o("div",dn,[e[45]||(e[45]=o("p",{class:"font-semibold text-emerald-800 dark:text-emerald-300"},"Billing-Run abgeschlossen",-1)),o("ul",un,[o("li",null,[e[41]||(e[41]=p("Erfolgreich abgebucht: ",-1)),o("strong",null,u(n(K).billed_ok.length),1)]),o("li",null,[e[42]||(e[42]=p("Reaktiviert (zuvor pausiert): ",-1)),o("strong",null,u(n(K).reactivated.length),1)]),o("li",null,[e[43]||(e[43]=p("Pausiert (Guthaben zu gering): ",-1)),o("strong",null,u(n(K).paused.length),1)]),o("li",null,[e[44]||(e[44]=p("Vorab-Warnungen nötig: ",-1)),o("strong",null,u(n(K).warnings_needed.length),1)])])])])])):c("",!0),n(Pe)?(i(),r("div",cn,[o("div",pn,[a(v,{name:"i-lucide-alert-circle",class:"size-4"}),p(" "+u(n(Pe)),1)])])):c("",!0),o("div",mn,[o("div",vn,[o("div",gn,[e[46]||(e[46]=o("p",{class:"mb-1 text-xs text-muted"},"Suche",-1)),a(Y,{modelValue:n(be),"onUpdate:modelValue":e[0]||(e[0]=l=>b(be)?be.value=l:null),placeholder:"Blog-URL, E-Mail, Publisher-Nameâ¦",icon:"i-lucide-search",size:"sm"},null,8,["modelValue"])]),o("div",null,[e[47]||(e[47]=o("p",{class:"mb-1 text-xs text-muted"},"Status",-1)),a(at,{modelValue:n(D),"onUpdate:modelValue":e[1]||(e[1]=l=>b(D)?D.value=l:null),items:Rt,"value-key":"value","label-key":"label",size:"sm",class:"w-40"},null,8,["modelValue"])]),o("div",bn,u(n(pt))+" Einträge gesamt ",1)]),o("div",fn,[o("table",hn,[o("thead",null,[o("tr",xn,[o("th",{class:"cursor-pointer select-none px-4 py-3 text-xs font-semibold uppercase tracking-wide text-muted hover:text-highlighted",onClick:e[2]||(e[2]=l=>ne("publisher_name"))},[o("span",_n,[e[48]||(e[48]=p("Publisher",-1)),a(v,{name:n(w)==="publisher_name"?n(A)==="asc"?"i-lucide-arrow-up":"i-lucide-arrow-down":"i-lucide-arrows-up-down",class:"size-3 opacity-50"},null,8,["name"])])]),o("th",{class:"cursor-pointer select-none px-4 py-3 text-xs font-semibold uppercase tracking-wide text-muted hover:text-highlighted",onClick:e[3]||(e[3]=l=>ne("status"))},[o("span",kn,[e[49]||(e[49]=p("Status",-1)),a(v,{name:n(w)==="status"?n(A)==="asc"?"i-lucide-arrow-up":"i-lucide-arrow-down":"i-lucide-arrows-up-down",class:"size-3 opacity-50"},null,8,["name"])])]),o("th",{class:"w-28 cursor-pointer select-none px-4 py-3 text-xs font-semibold uppercase tracking-wide text-muted hover:text-highlighted",onClick:e[4]||(e[4]=l=>ne("activated_at"))},[o("span",yn,[e[50]||(e[50]=p("Aktiviert",-1)),a(v,{name:n(w)==="activated_at"?n(A)==="asc"?"i-lucide-arrow-up":"i-lucide-arrow-down":"i-lucide-arrows-up-down",class:"size-3 opacity-50"},null,8,["name"])])]),o("th",{class:"cursor-pointer select-none px-3 py-3 text-xs font-semibold uppercase tracking-wide text-muted hover:text-highlighted",onClick:e[5]||(e[5]=l=>ne("price_cents"))},[o("span",wn,[e[51]||(e[51]=p("Betrag",-1)),a(v,{name:n(w)==="price_cents"?n(A)==="asc"?"i-lucide-arrow-up":"i-lucide-arrow-down":"i-lucide-arrows-up-down",class:"size-3 opacity-50"},null,8,["name"])])]),e[54]||(e[54]=o("th",{class:"w-28 px-2 py-3 text-xs font-semibold uppercase tracking-wide text-muted"}," Paket ",-1)),o("th",{class:"w-20 cursor-pointer select-none px-2 py-3 text-xs font-semibold uppercase tracking-wide text-muted hover:text-highlighted",onClick:e[6]||(e[6]=l=>ne("next_billing_at"))},[o("span",An,[e[52]||(e[52]=p("Fällig",-1)),a(v,{name:n(w)==="next_billing_at"?n(A)==="asc"?"i-lucide-arrow-up":"i-lucide-arrow-down":"i-lucide-arrows-up-down",class:"size-3 opacity-50"},null,8,["name"])])]),o("th",{class:"w-20 cursor-pointer select-none px-2 py-3 text-xs font-semibold uppercase tracking-wide text-muted hover:text-highlighted",onClick:e[7]||(e[7]=l=>ne("last_promoted_at"))},[o("span",$n,[e[53]||(e[53]=p("Zuletzt",-1)),a(v,{name:n(w)==="last_promoted_at"?n(A)==="asc"?"i-lucide-arrow-up":"i-lucide-arrow-down":"i-lucide-arrows-up-down",class:"size-3 opacity-50"},null,8,["name"])])]),e[55]||(e[55]=o("th",{class:"w-10 px-2 py-3 text-xs font-semibold uppercase tracking-wide text-muted"}
2,null,-1)),e[56]||(e[56]=o("th",{class:"px-2 py-3 text-xs font-semibold uppercase tracking-wide text-muted"}," Verwalten ",-1))])]),o("tbody",Pn,[n(Kt)==="pending"?(i(),r("tr",Cn,[o("td",zn,[o("div",Bn,[a(v,{name:"i-lucide-loader-circle",class:"size-6 animate-spin text-muted"})])])])):n(mt).length===0?(i(),r("tr",Sn,[...e[57]||(e[57]=[o("td",{colspan:"9",class:"px-4 py-10 text-sm text-muted"}," Keine Promotions gefunden. ",-1)])])):c("",!0),(i(!0),r(Ve,null,Le(n(mt),l=>(i(),r("tr",{key:l.id,class:k(["transition-colors",ke(l)?"bg-amber-50/40 dark:bg-amber-900/10 hover:bg-amber-50/60":E(l)?"bg-blue-50/40 dark:bg-blue-900/10 hover:bg-blue-50/60":"hover:bg-neutral-50 dark:hover:bg-neutral-700/30"])},[o("td",Un,[o("div",Tn,[E(l)?(i(),f(v,{key:0,name:"i-lucide-loader-circle",class:"size-3.5 shrink-0 animate-spin text-blue-500"})):c("",!0),o("div",In,[l.publisher_id?(i(),r("button",{key:0,class:"font-medium text-highlighted hover:text-[#21A4A3] hover:underline text-left disabled:opacity-50 disabled:cursor-not-allowed",disabled:n(M)!==null,title:`Als ${l.publisher_name} einloggen`,onClick:m=>te(l)},[n(M)===l.publisher_id?(i(),f(v,{key:0,name:"i-lucide-loader-circle",class:"mr-1 size-3 animate-spin"})):c("",!0),p(" "+u(l.publisher_name),1)],8,Mn)):(i(),r("p",En,u(l.publisher_name),1)),l.blog_deleted?(i(),r("p",Vn,[a(v,{name:"i-lucide-octagon-alert",class:"size-3 shrink-0"}),e[58]||(e[58]=p(" Blog gelöscht, Abo läuft weiter ",-1))])):c("",!0),n(Qe)===l.id?(i(),r("div",Ln,[Te(o("input",{id:`feed-input-${l.id}`,"onUpdate:modelValue":e[8]||(e[8]=m=>b(j)?j.value=m:null),type:"url",placeholder:"https://â¦/feed",class:"w-24 rounded border border-[#21A4A3] bg-white px-2 py-0.5 text-xs text-highlighted focus:outline-none dark:bg-neutral-800",onKeydown:[I(m=>yt(l),["enter"]),I(tt,["escape"])]},null,40,Nn),[[Ie,n(j)]]),a(d,{size:"xs",color:"neutral",variant:"ghost",loading:n(et),icon:"i-lucide-check",onClick:m=>yt(l)},null,8,["loading","onClick"]),a(d,{size:"xs",color:"neutral",variant:"ghost",icon:"i-lucide-x",onClick:tt})])):(i(),r("div",Fn,[l.feed_url?(i(),r("a",{key:0,href:n(Vl)(l.feed_url),target:"_blank",rel:"noopener noreferrer",class:"text-xs text-[#21A4A3] hover:underline truncate max-w-[180px]",title:`Feed-Vorschau öffnen: ${l.feed_url}`,onClick:Pl(m=>n(El)(l.feed_url),["stop","prevent"])},u(l.feed_url.replace(/^https?:\/\//,"")),9,Rn)):(i(),r("button",{key:1,class:"text-xs text-muted opacity-50 hover:opacity-100 hover:text-[#21A4A3] italic",title:"Feed-URL hinzufügen",onClick:m=>kt(l)}," keine Feed-URL ",8,Dn)),l.blog_id?(i(),r("button",{key:2,class:"shrink-0 ml-0.5 text-muted opacity-30 hover:opacity-80 hover:text-[#21A4A3]",title:"Feed-URL bearbeiten",onClick:m=>kt(l)},[a(v,{name:"i-lucide-pencil",class:"size-3"})],8,Kn)):c("",!0),E(l)?(i(),f(X,{key:3,to:"/dashboard/admin/promotions/in-progress",title:"Promotion wird gerade erstellt",class:"shrink-0 inline-flex items-center gap-1 rounded-full bg-blue-50 px-2 py-0.5 text-xs text-blue-600 hover:bg-blue-100 transition-colors"},{default:g(()=>[a(v,{name:"i-lucide-loader-circle",class:"size-3 animate-spin"})]),_:1})):c("",!0)]))])])]),o("td",On,[a(vl,{open:n($e)===l.id,"onUpdate:open":m=>$e.value=m?l.id:null},{content:g(()=>[o("div",jn,[(i(),r(Ve,null,Le(Jt,m=>o("button",{key:m.value,class:k(["flex w-full items-center gap-2 px-3 py-1.5 text-xs hover:bg-neutral-50 dark:hover:bg-neutral-700",m.value===l.status?"font-semibold text-highlighted":"text-muted"]),onClick:ai=>Gt(l,m.value)},[o("span",{class:k(["inline-flex rounded-full px-1.5 py-0.5 font-medium",$t(m.value)])},u(m.label),3),m.value===l.status?(i(),f(v,{key:0,name:"i-lucide-check",class:"ml-auto size-3 shrink-0"})):c("",!0)],10,Hn)),64))])]),default:g(()=>[o("button",{class:k(["inline-flex items-center gap-1 rounded-full px-2 py-0.5 text-xs font-medium transition-opacity hover:opacity-75",$t(l.status)]),disabled:n(fe)===l.id,title:Zt(l)??"Status ändern"},[n(fe)===l.id?(i(),f(v,{key:0,name:"i-lucide-loader-circle",class:"size-3 animate-spin"})):c("",!0),p(" "+u(al(l.status,l.pause_reason))+" ",1),n(fe)!==l.id?(i(),f(v,{key:1,name:"i-lucide-chevron-down",class:"size-3 opacity-60"})):c("",!0)],10,Wn)]),_:2},1032,["open","onUpdate:open"])]),o("td",Jn,[n(Ke)===l.id?(i(),r("div",Gn,[Te(o("input",{id:`activated-input-${l.id}`,"onUpdate:modelValue":e[9]||(e[9]=m=>b(ie)?ie.value=m:null),type:"date",class:"rounded border border-[#21A4A3] bg-white px-2 py-0.5 text-sm font-medium text-highlighted focus:outline-none dark:bg-neutral-800",onKeydown:[I(m=>bt(l),["enter"]),I(We,["escape"])]},null,40,qn),[[Ie,n(ie)]]),a(d,{size:"xs",color:"neutral",variant:"ghost",loading:n(Oe),icon:"i-lucide-check",onClick:m=>bt(l)},null,8,["loading","onClick"]),a(d,{size:"xs",color:"neutral",variant:"ghost",icon:"i-lucide-x",onClick:We})])):(i(),r("button",{key:1,class:"font-medium text-highlighted hover:text-[#21A4A3] hover:underline",title:"Klicken zum Bearbeiten",onClick:m=>jt(l)},u(l.activated_at?se(l.activated_at):"â"),9,Zn))]),o("td",Xn,[o("div",Yn,[a(gl,{text:sl(l.payment_method)},{default:g(()=>[l.payment_method!=="stripe"?(i(),r("button",{key:0,class:"inline-flex shrink-0 items-center justify-center rounded p-0.5 transition-opacity hover:opacity-60 disabled:cursor-not-allowed disabled:opacity-40",disabled:n(Be)===l.id,onClick:m=>dl(l)},[n(Be)===l.id?(i(),f(v,{key:0,name:"i-lucide-loader-circle",class:"size-4 animate-spin text-muted"})):(i(),f(v,{key:1,name:Pt(l.payment_method),class:k(["size-4",Ct(l.payment_method)])},null,8,["name","class"]))],8,Qn)):(i(),f(v,{key:1,name:Pt(l.payment_method),class:k(["size-4 shrink-0",Ct(l.payment_method)])},null,8,["name","class"]))]),_:2},1032,["text"]),n(Re)===l.id?(i(),r("div",eo,[Te(o("input",{id:`price-input-${l.id}`,"onUpdate:modelValue":e[10]||(e[10]=m=>b(oe)?oe.value=m:null),type:"text",class:"w-20 rounded border border-[#21A4A3] bg-white px-2 py-0.5 text-sm font-medium text-highlighted focus:outline-none dark:bg-neutral-800",onKeydown:[I(m=>gt(l),["enter"]),I(Ae,["escape"])]},null,40,to),[[Ie,n(oe)]]),e[59]||(e[59]=o("span",{class:"text-xs text-muted"},"â¬",-1)),a(d,{size:"xs",color:"neutral",variant:"ghost",loading:n(De),icon:"i-lucide-check",onClick:m=>gt(l)},null,8,["loading","onClick"]),a(d,{size:"xs",color:"neutral",variant:"ghost",icon:"i-lucide-x",onClick:Ae})])):(i(),r("button",{key:1,class:"whitespace-nowrap font-medium text-highlighted hover:text-[#21A4A3] hover:underline",title:"Klicken zum Bearbeiten",onClick:m=>Wt(l)},u(n(Ll)(l.price_cents)),9,lo))])]),o("td",no,[o("div",oo,[p(u(("packageBaseLabel"in t?t.packageBaseLabel:n(St))(l.package_label)),1
2),("hasCustomPackagePrice"in t?t.hasCustomPackagePrice:n(Ut))(l.package_label)?(i(),r("span",{key:0,class:"cursor-help text-muted",title:`Individueller Preis, weicht vom Paketpreis ab (${l.package_label})`},"*",8,io)):c("",!0)]),l.pending_package_label?(i(),r("div",ao,[p(" â "+u(("packageBaseLabel"in t?t.packageBaseLabel:n(St))(l.pending_package_label)),1),("hasCustomPackagePrice"in t?t.hasCustomPackagePrice:n(Ut))(l.pending_package_label)?(i(),r("span",{key:0,class:"cursor-help",title:`Individueller Preis, weicht vom Paketpreis ab (${l.pending_package_label})`},"*",8,so)):c("",!0)])):c("",!0)]),o("td",ro,[n(je)===l.id?(i(),r("div",uo,[Te(o("input",{id:`billing-input-${l.id}`,"onUpdate:modelValue":e[11]||(e[11]=m=>b(ae)?ae.value=m:null),type:"date",class:"rounded border border-[#21A4A3] bg-white px-2 py-0.5 text-sm font-medium text-highlighted focus:outline-none dark:bg-neutral-800",onKeydown:[I(m=>ft(l),["enter"]),I(Je,["escape"])]},null,40,co),[[Ie,n(ae)]]),a(d,{size:"xs",color:"neutral",variant:"ghost",loading:n(He),icon:"i-lucide-check",onClick:m=>ft(l)},null,8,["loading","onClick"]),a(d,{size:"xs",color:"neutral",variant:"ghost",icon:"i-lucide-x",onClick:Je})])):(i(),r("button",{key:1,class:"font-medium text-highlighted hover:text-[#21A4A3] hover:underline",title:"Klicken zum Bearbeiten",onClick:m=>Ht(l)},u(l.next_billing_at?se(l.next_billing_at):"â"),9,po))]),o("td",{class:k(["px-2 py-3",Xt(l)])},[o("span",mo,[l.last_promotion_from_wishlist?(i(),f(v,{key:0,name:"i-lucide-list-checks",class:"size-3.5 shrink-0 text-[#21A4A3]",title:"Letzte Promotion stammt aus der Wunschliste"})):c("",!0),l.last_promotion_preview_url?(i(),r("a",{key:1,href:l.last_promotion_preview_url,target:"_blank",rel:"noopener noreferrer",title:"Vorschau öffnen",class:"hover:underline"},u(se(l.last_promoted_at)),9,vo)):(i(),r("span",go,u(se(l.last_promoted_at)),1))])],2),o("td",bo,[ke(l)?(i(),f(d,{key:0,variant:"soft",color:"warning",icon:"i-lucide-bell-ring",size:"xs",title:"Vorschau wartet auf Freigabe",onClick:m=>Lt(y(l))},null,8,["onClick"])):c("",!0)]),o("td",fo,[o("div",ho,[l.blog_id?(i(),f(d,{key:0,to:`/dashboard/admin/blogs/${l.blog_id}/rss`,variant:"ghost",color:"neutral",icon:"i-lucide-rss",size:"xs",class:"col-start-1 row-start-1 bg-[#21A4A3]/10 text-[#21A4A3] hover:bg-[#21A4A3]/20",title:"RSS-Feed anzeigen / Promotion starten"},null,8,["to"])):c("",!0),l.wishlist_count>0?(i(),r("button",{key:1,class:"col-start-2 row-start-1 inline-flex items-center justify-center gap-1 rounded-full bg-[#21A4A3]/10 px-2 py-1 text-xs font-semibold text-[#21A4A3] transition-colors hover:bg-[#21A4A3]/20",title:`${l.wishlist_count} vom Publisher vorgemerkte Artikel â Liste öffnen`,onClick:m=>ul(l)},[a(v,{name:"i-lucide-list-checks",class:"size-3.5"}),p(" "+u(l.wishlist_count),1)],8,xo)):c("",!0),e[60]||(e[60]=o("div",{class:"col-start-3 row-start-1 mx-auto h-4 w-px bg-neutral-200 dark:bg-neutral-700"},null,-1)),a(d,{variant:"ghost",color:"neutral",icon:l.admin_note?"i-lucide-sticky-note":"i-lucide-plus",size:"xs",class:k([l.admin_note?"text-amber-500":"text-muted opacity-40 hover:opacity-100","col-start-4 row-start-1"]),title:l.admin_note?"Notiz bearbeiten":"Notiz hinzufügen",onClick:m=>Yt(l)},null,8,["icon","class","title","onClick"]),a(d,{variant:"ghost",color:"neutral",icon:"i-lucide-timer",size:"xs",class:k([l.expected_interval_hours?"text-amber-500":"text-muted opacity-40 hover:opacity-100","col-start-5 row-start-1"]),title:l.expected_interval_hours?`Kadenz: alle ${ht(l)} Tage (Standard: 7)`:"Kadenz auf Standard (7 Tage)",onClick:m=>Qt(l)},null,8,["class","title","onClick"]),a(d,{variant:"ghost",color:"neutral",icon:"i-simple-icons-linkedin",size:"xs",loading:n(Ye)===l.id,class:k([l.linkedin_included?"text-amber-500":"text-muted opacity-40 hover:opacity-100","col-start-6 row-start-1"]),title:l.linkedin_included?"LinkedIn im Abo enthalten â klicken zum Entfernen":"LinkedIn nicht im Abo enthalten â klicken zum Hinzufügen",onClick:m=>el(l)},null,8,["loading","class","title","onClick"]),l.publisher_id&&l.status!=="canceled"?(i(),f(d,{key:2,variant:"ghost",color:"neutral",icon:"i-lucide-replace",size:"xs",class:"col-start-7 row-start-1 text-muted opacity-40 hover:opacity-100",title:"Promotion auf anderen Blog umhängen",onClick:m=>ol(l)},null,8,["onClick"])):c("",!0)])])],2))),128))])])]),n(Fe)>1?(i(),r("div",_o,[a(d,{size:"sm",color:"neutral",variant:"outline",icon:"i-lucide-chevron-left",disabled:n(V)===1,onClick:e[12]||(e[12]=l=>{V.value--,n(L)()})},null,8,["disabled"]),o("span",ko,"Seite "+u(n(V))+" von "+u(n(Fe)),1),a(d,{size:"sm",color:"neutral",variant:"outline",icon:"i-lucide-chevron-right",disabled:n(V)===n(Fe),onClick:e[13]||(e[13]=l=>{V.value++,n(L)()})},null,8,["disabled"])])):c("",!0)]),a(xe,{open:n(ce),"onUpdate:open":e[18]||(e[18]=l=>b(ce)?ce.value=l:null),title:"Promotion hinzufügen"},{body:g(()=>[o("div",yo,[o("div",null,[e[61]||(e[61]=o("label",{class:"mb-1 block text-sm font-medium text-highlighted"}
2,"Publisher-E-Mail",-1)),o("div",wo,[a(Y,{modelValue:n(N),"onUpdate:modelValue":e[14]||(e[14]=l=>b(N)?N.value=l:null),type:"email",placeholder:"[email protected]",icon:"i-lucide-mail","trailing-icon":n(Ce)?"i-lucide-loader-circle":void 0,ui:{trailingIcon:n(Ce)?"animate-spin":""},class:"w-full"},null,8,["modelValue","trailing-icon","ui"])]),n(_)&&!n(_).publisher_found?(i(),r("div",Ao," Kein aktiver Publisher mit dieser E-Mail gefunden. ")):c("",!0),n(_)?.publisher_found?(i(),r("div",$o,u(n(_).vorname)+" "+u(n(_).nachname)+" â "+u(n(_).blogs.length)+" Blog(s) ",1)):c("",!0)]),n(_)?.publisher_found?(i(),r("div",Po,[e[62]||(e[62]=o("label",{class:"mb-1 block text-sm font-medium text-highlighted"},"Blog",-1)),a(at,{modelValue:n(T),"onUpdate:modelValue":e[15]||(e[15]=l=>b(T)?T.value=l:null),items:n(At),"value-key":"value","label-key":"label",placeholder:"Blog auswählenâ¦",class:"w-full"},null,8,["modelValue","items"]),n(At).some(l=>l.disabled)?(i(),r("p",Co," Ausgegraut = bereits aktive Promotion vorhanden ")):c("",!0)])):c("",!0),n(_)?.publisher_found?(i(),r("div",zo,[e[63]||(e[63]=o("label",{class:"mb-1 block text-sm font-medium text-highlighted"},"Monatlicher Betrag (â¬)",-1)),a(Y,{modelValue:n(he),"onUpdate:modelValue":e[16]||(e[16]=l=>b(he)?he.value=l:null),type:"text",placeholder:"12,99",class:"w-36"},null,8,["modelValue"]),e[64]||(e[64]=o("p",{class:"mt-1 text-xs text-muted"}," Nur zur Dokumentation â keine Wallet-Abbuchung bei manuellen Promotions. ",-1))])):c("",!0),n(H)?(i(),r("div",Bo,u(n(H)),1)):c("",!0)])]),footer:g(()=>[o("div",So,[a(d,{color:"neutral",variant:"outline",onClick:e[17]||(e[17]=l=>ce.value=!1)},{default:g(()=>[...e[65]||(e[65]=[p(" Abbrechen ",-1)])]),_:1}),a(d,{color:"primary",loading:n(lt),disabled:!n(T)||!n(_)?.publisher_found,icon:"i-lucide-plus",onClick:nl},{default:g(()=>[...e[66]||(e[66]=[p(" Promotion anlegen ",-1)])]),_:1},8,["loading","disabled"])])]),_:1},8,["open"]),a(xe,{open:n(pe),"onUpdate:open":e[21]||(e[21]=l=>b(pe)?pe.value=l:null),title:"Promotion auf anderen Blog umhängen"},{body:g(()=>[o("div",Uo,[n(F)?(i(),r("div",To,[o("span",Io,u(n(F).publisher_name),1),p(" â aktuell: "+u(n(F).blog_url.replace(/^https?:\/\//,""))+" ",1),n(F).blog_id?(i(),r("span",Mo," (Blog #"+u(n(F).blog_id)+")",1)):c("",!0)])):c("",!0),e[69]||(e[69]=o("p",{class:"rounded-lg bg-neutral-50 px-3 py-2 text-xs leading-relaxed text-muted dark:bg-neutral-800/50"}," Hängt die laufende Promotion auf einen anderen Blog desselben Publishers um. Zahlungsart und Abrechnung bleiben unverändert. Nützlich, wenn der Publisher seinen Blog gelöscht und neu registriert hat. ",-1)),n(ze)?(i(),r("div",Eo,[a(v,{name:"i-lucide-loader-circle",class:"mr-1 size-4 animate-spin"}),e[67]||(e[67]=p(" Blogs werden geladen⦠",-1))])):n(it).length?(i(),r("div",Vo,[e[68]||(e[68]=o("label",{class:"mb-1 block text-sm font-medium text-highlighted"},"Ziel-Blog",-1)),a(at,{modelValue:n(J),"onUpdate:modelValue":e[19]||(e[19]=l=>b(J)?J.value=l:null),items:n(it),"value-key":"value","label-key":"label",placeholder:"Blog auswählenâ¦",class:"w-full"},null,8,["modelValue","items"]),n(it).some(l=>l.disabled)?(i(),r("p",Lo," Ausgegraut = bereits aktive Promotion vorhanden ")):c("",!0)])):!n(ze)&&!n(G)?(i(),r("div",No," Keine anderen Blogs dieses Publishers gefunden. ")):c("",!0),n(G)?(i(),r("div",Fo,u(n(G)),1)):c("",!0)])]),footer:g(()=>[o("div",Ro,[a(d,{color:"neutral",variant:"outline",onClick:e[20]||(e[20]=l=>pe.value=!1)},{default:g(()=>[...e[70]||(e[70]=[p(" Abbrechen ",-1)])]),_:1}),a(d,{color:"primary",loading:n(ot),disabled:!n(J),icon:"i-lucide-replace",onClick:il},{default:g(()=>[...e[71]||(e[71]=[p(" Umhängen ",-1)])]),_:1},8,["loading","disabled"])])]),_:1},8,["open"]),a(xe,{open:n(re),"onUpdate:open":e[25]||(e[25]=l=>b(re)?re.value=l:null),title:n(S)?.admin_note?"Notiz bearbeiten":"Notiz hinzufügen"},{body:g(()=>[o("div",Do,[n(S)?(i(),r("div",Ko,[o("span",Oo,u(n(S).publisher_name),1),p(" â "+u(n(S).blog_url.replace(/^https?:\/\//,"")),1)])):c("",!0),a(bl,{modelValue:n(O),"onUpdate:modelValue":e[22]||(e[22]=l=>b(O)?O.value=l:null),placeholder:"Notiz eingebenâ¦",rows:5,autofocus:"",class:"w-full"},null,8,["modelValue"])])]),footer:g(()=>[o("div",Wo,[n(S)?.admin_note?(i(),f(d,{key:0,color:"error",variant:"ghost",icon:"i-lucide-trash-2",onClick:e[23]||(e[23]=l=>{O.value="",xt()})},{default:g(()=>[...e[72]||(e[72]=[p(" Löschen ",-1)])]),_:1})):c("",!0),o("div",jo,[a(d,{color:"neutral",variant:"outline",onClick:e[24]||(e[24]=l=>re.value=!1)},{default:g(()=>[...e[73]||(e[73]=[p(" Abbrechen ",-1)])]),_:1}),a(d,{color:"primary",loading:n(qe),icon:"i-lucide-save",onClick:xt},{default:g(()=>[...e[74]||(e[74]=[p(" Speichern ",-1)])]),_:1},8,["loading"])])])]),_:1},8,["open","title"]),a(xe,{open:n(de),"onUpdate:open":e[29]||(e[29]=l=>
2b(de)?de.value=l:null),title:"Erwartete Kadenz"},{body:g(()=>[o("div",Ho,[n(U)?(i(),r("div",Jo,[o("span",Go,u(n(U).publisher_name),1),p(" â "+u(n(U).blog_url.replace(/^https?:\/\//,"")),1)])):c("",!0),e[75]||(e[75]=o("p",{class:"text-sm text-muted"}," Nach wie vielen Tagen ohne neue Promotion soll dieses Abo als überfällig gelten? Leer lassen für den Standard (7 Tage). ",-1)),a(Y,{modelValue:n(W),"onUpdate:modelValue":e[26]||(e[26]=l=>b(W)?W.value=l:null),placeholder:"7",autofocus:"",class:"w-full",onKeydown:I(_t,["enter"])},null,8,["modelValue"]),n(ue)?(i(),r("p",qo,u(n(ue)),1)):c("",!0)])]),footer:g(()=>[o("div",Zo,[n(U)?.expected_interval_hours?(i(),f(d,{key:0,color:"error",variant:"ghost",icon:"i-lucide-trash-2",onClick:e[27]||(e[27]=l=>{W.value="",Xe(null)})},{default:g(()=>[...e[76]||(e[76]=[p(" Auf Standard zurücksetzen ",-1)])]),_:1})):c("",!0),o("div",Xo,[a(d,{color:"neutral",variant:"outline",onClick:e[28]||(e[28]=l=>de.value=!1)},{default:g(()=>[...e[77]||(e[77]=[p(" Abbrechen ",-1)])]),_:1}),a(d,{color:"primary",loading:n(Ze),icon:"i-lucide-save",onClick:_t},{default:g(()=>[...e[78]||(e[78]=[p(" Speichern ",-1)])]),_:1},8,["loading"])])])]),_:1},8,["open"]),a(xe,{open:n(q),"onUpdate:open":e[31]||(e[31]=l=>b(q)?q.value=l:null),title:"Zahlungsart ändern"},{body:g(()=>[o("div",Yo,[n(Z)?(i(),r("p",Qo,[o("span",ei,u(n(Z).publisher_name),1),p(" â "+u(n(Z).blog_url.replace(/^https?:\/\//,"")),1)])):c("",!0),o("div",ti,[(i(),r(Ve,null,Le(rl,l=>o("button",{key:l.value,class:k(["flex w-full items-start gap-3 rounded-xl border-2 p-4 text-left transition-colors",n(C)===l.value?"border-[#21A4A3] bg-[#21A4A3]/5":"border-neutral-200 hover:border-neutral-300 dark:border-neutral-700 dark:hover:border-neutral-600"]),onClick:m=>C.value=l.value},[o("div",{class:k(["mt-0.5 flex size-8 shrink-0 items-center justify-center rounded-lg",n(C)===l.value?"bg-[#21A4A3]/15":"bg-neutral-100 dark:bg-neutral-700"])},[a(v,{name:l.icon,class:k(["size-4",n(C)===l.value?"text-[#21A4A3]":"text-neutral-500"])},null,8,["name","class"])],2),o("div",ni,[o("p",{class:k(["text-sm font-semibold",n(C)===l.value?"text-[#21A4A3]":"text-highlighted"])},u(l.label),3),o("p",oi,u(l.description),1)]),n(C)===l.value?(i(),f(v,{key:0,name:"i-lucide-check-circle",class:"ml-auto mt-0.5 size-4 shrink-0 text-[#21A4A3]"})):c("",!0)],10,li)),64))])])]),footer:g(()=>[o("div",ii,[a(d,{color:"neutral",variant:"outline",onClick:e[30]||(e[30]=l=>q.value=!1)},{default:g(()=>[...e[79]||(e[79]=[p(" Abbrechen ",-1)])]),_:1}),a(d,{color:"primary",icon:"i-lucide-check",disabled:n(Z)!==null&&n(C)===n(Z).payment_method,onClick:ml},{default:g(()=>[...e[80]||(e[80]=[p(" Ãbernehmen ",-1)])]),_:1},8,["disabled"])])]),_:1},8,["open"]),a(fl,{open:n(we),"onUpdate:open":e[32]||(e[32]=l=>b(we)?we.value=l:null),job:n(dt),onResumed:Nt,onDiscarded:Ft},null,8,["open","job"]),a(hl,{open:n(Se),"onUpdate:open":e[33]||(e[33]=l=>b(Se)?Se.value=l:null),"promotion-id":n(R)?.id??null,"publisher-name":n(R)?.publisher_name??"","blog-url":n(R)?.blog_url??"",onStartPromotion:cl},null,8,["open","promotion-id","publisher-name","blog-url"]),a(xl,{open:n(Ue),"onUpdate:open":e[34]||(e[34]=l=>b(Ue)?Ue.value=l:null),"prefilled-url":n(zt),"promotion-id":n(R)?.id??null,"blog-id":n(R)?.blog_id??null,"default-linkedin-included":n(R)?.linkedin_included??!1,"default-pinterest-board":n(R)?.last_pinterest_board??null,onSubmitted:pl},null,8,["open","prefilled-url","promotion-id","blog-id","default-linkedin-included","default-pinterest-board"])])])}}});export{Ui 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.