1import"../chunks/Bzak7iHL.js";import{p as Ua,d as ja,f as Ea,t as z,a as f,q as Fa,w as e,v as r,h as t,y as g,A as I,C as S,z as a,s as Ga,x as pa}from"../chunks/QWGH_Vqv.js";import{s as d}from"../chunks/D34mFCWd.js";import{i as ma}from"../chunks/DYDo2J5T.js";import{e as _a,i as ua}from"../chunks/Cp_G1qXa.js";import{c as Wa}from"../chunks/DFQrHiwB.js";import{a as H}from"../chunks/DMTy2Buu.js";import{a as ba,b as qa,s as Ya,r as Ha,c as Ja}from"../chunks/n1SVnzFV.js";import{d as Ka,a as fa}from"../chunks/Co4qpSy7.js";import{e as J}from"../chunks/B3O5gLWN.js";import{g as Na}from"../chunks/CPP3GVaz.js";import{C as Qa}from"../chunks/SaJGmBHn.js";import{R as Va}from"../chunks/C5I8XYVN.js";import{U as Xa}from"../chunks/D-27aeXT.js";import{M as Za}from"../chunks/BQnJSbGK.js";import{W as $a}from"../chunks/DgyUEQpT.js";import{L as ae}from"../chunks/DZz92pUm.js";import{C as ee}from"../chunks/EMuOQlmk.js";import{C as te}from"../chunks/LQ3v4z4X.js";import{F as re}from"../chunks/CDoLQDF4.js";import{T as se}from"../chunks/DUihoX9F.js";var ie=g('<div class="kpi-card"><div class="kpi-label"><!> </div> <div class="kpi-value"> </div></div>'),de=g('<form method="POST" action="?/removeMember" style="display:inline"><input type="hidden" name="userId"/> <button type="submit" class="admin-btn admin-btn-danger" style="padding:3px 8px;font-size:0.72rem">Remove</button></form>'),le=g('<tr><td><span style="margin-right:6px"> </span> <a> </a></td><td class="text-muted"> </td><td><span> </span></td><td class="text-muted"> </td><td><!></td></tr>'),ne=g('<button class="admin-btn admin-btn-danger"><!> Delete Trip</button>'),oe=g('<div class="flex-row" style="background:var(--danger-soft);padding:12px 16px;border-radius:var(--radius-sm);border:1px solid var(--danger)"><span style="color:var(--danger);font-size:0.85rem">Are you sure? This deletes all trip data permanently.</span> <form method="POST" action="?/deleteTrip"><button type="submit" class="admin-btn admin-btn-danger">Yes, Delete</button></form> <button class="admin-btn admin-btn-secondary">Cancel</button></div>
1'),ve=g('<div class="admin-page-header flex-row" style="justify-content:space-between;align-items:flex-start"><div><a href="/admin/trips" class="text-muted" style="font-size:0.82rem;display:inline-flex;align-items:center;gap:3px"><!> Back to Trips</a> <h1 class="admin-page-title" style="margin-top:6px"> </h1> <p class="admin-page-subtitle"> </p></div> <span> </span></div> <div class="kpi-grid" style="grid-template-columns:repeat(auto-fill,minmax(130px,1fr))"></div> <div class="admin-card"><p class="admin-card-title">Trip Details</p> <div class="detail-grid svelte-1g3d3v4"><div><span class="detail-label svelte-1g3d3v4">ID</span><code class="detail-val svelte-1g3d3v4"> </code></div> <div><span class="detail-label svelte-1g3d3v4">Currency</span><span class="detail-val svelte-1g3d3v4"> </span></div> <div><span class="detail-label svelte-1g3d3v4">Owner</span><span class="detail-val svelte-1g3d3v4"> </span></div> <div><span class="detail-label svelte-1g3d3v4">Invite Token</span><code class="detail-val svelte-1g3d3v4"> </code></div> <div><span class="detail-label svelte-1g3d3v4">Created</span><span class="detail-val svelte-1g3d3v4"> </span></div></div></div> <div class="admin-card"><p class="admin-card-title">Members</p> <div class="admin-table-wrap"><table class="admin-table"><thead><tr><th>User</th><th>Email</th><th>Role</th><th>Last Seen</th><th></th></tr></thead><tbody></tbody></table></div></div> <div class="admin-card"><p class="admin-card-title">Actions</p> <div class="flex-row" style="gap:12px;flex-wrap:wrap"><form method="POST" action="?/resetInviteToken"><button type="submit" class="admin-btn admin-btn-secondary"><!> Reset Invite Token</button></form> <!></div></div>',1);function Le(ga,x){Ua(x,!0);const l=I(()=>x.data.trip),K=I(()=>x.data.members),_=I(()=>x.data.stats);ja(()=>{var i;(i=x.form)!=null&&i.deleted&&Na("/admin/trips")});let M=Ga(!1);function xa(i){return i?new Date(i).toLocaleDateString("en-GB",{day:"2-digit",month:"short",year:"numeric"}):"â"}const ha=new Date().toISOString().slice(0,10),N=I(()=>t(l).end_date>=ha);var Q=ve(),A=Ea(Q),L=e(A),O=e(L),ya=e(O);Qa(ya,{size:14}),S(),a(O);var P=r(O,2),wa=e(P,!0);a(P);var V=r(P,2),ka=e(V);a(V),a(L);var R=r(L,2),Ca=e(R,!0);a(R),a(A);var B=r(A,2);_a(B,21,()=>[{icon:Xa,label:"Members",value:t(K).length,color:"var(--accent-300)"},{icon:Za,label:"Messages",value:t(_).messageCount,color:"var(--warning)"},{icon:$a,label:"Expenses",value:t(_).expenseCount,color:"var(--danger)"},{icon:ae,label:"Checklist",value:t(_).checklistCount,color:"var(--success)"},{icon:ee,label:"Itinerary",value:t(_).itineraryCount,color:"#38bdf8"},{icon:te,label:"Photos",value:t(_).photoCount,color:"var(--accent-300)"},{icon:re,label:"Docs",value:t(_).docCount,color:"var(--text-tertiary)"}],ua,(i,s)=>{let n=()=>t(s).icon,o=()=>t(s).label,v=()=>t(s).value,u=()=>t(s).color;var c=ie(),h=e(c),b=e(h);Wa(b,n,(Y,w)=>{w(Y,{size:14})});var q=r(b);a(h);var p=r(h,2),y=e(p,!0);a(p),a(c),z(()=>{d(q,` ${o()??""}`),qa(p,`font-size:1.6rem;color:${u()??""}`),d(y,v())}),f(i,c)}),a(B);var U=r(B,2),X=r(e(U),2),j=e(X),Z=r(e(j)),Ta=e(Z,!0);a(Z),a(j);var E=r(j,2),$=r(e(E)),Da=e($,!0);a($),a(E);var F=r(E,2),aa=r(e(F)),za=e(aa,!0);a(aa),a(F);var G=r(F,2),ea=r(e(G)),Ia=e(ea,!0);a(ea),a(G);var ta=r(G,2),ra=r(e(ta)),Sa=e(ra,!0);a(ra),a(ta),a(X),a(U);var W=r(U,2),sa=r(e(W),2),ia=e(sa),da=r(e(ia));_a(da,21,()=>t(K),ua,(i,s)=>{var n=le(),o=e(n),v=e(o),u=e(v,!0);a(v);var c=r(v,2),h=e(c,!0);a(c),a(o);var b=r(o),q=e(b,!0);a(b);var p=r(b),y=e(p),Y=e(y,!0);a(y),a(p);var w=r(p),Pa=e(w,!0);a(w);var va=r(w),Ra=e(va);{var Ba=k=>{var m=de(),C=e(m);Ha(C),S(2),a(m),H(m,D=>{var ca;return(ca=J)==null?void 0:ca(D)}),z(()=>Ja(C,t(s).user_id)),f(k,m)};ma(Ra,k=>{t(s).role!=="owner"&&k(Ba)})}a(va),a(n),z(k=>{var m,C,D;d(u,((m=t(s).profiles)==null?void 0:m.avatar_emoji)??"ð¤"),Ya(c,"href",`/admin/users/${t(s).user_id??""}`),d(h,((C=t(s).profiles)==null?void 0:C.display_name)??"â"),d(q,((D=t(s).profiles)==null?void 0:D.email)??"â"),ba(y,1,`badge-pill ${t(s).role==="owner"?"badge-blue":t(s).role==="viewer"?"badge-gray":"badge-green"}`),d(Y,t(s).role),d(Pa,k)},[()=>t(s).last_seen_at?new Date(t(s).last_seen_at).toLocaleDateString("en-GB"):"â"]),f(i,n)}),a(da),a(ia),a(sa),a(W);var la=r(W,2),na=r(e(la),2),T=e(na),oa=e(T),Ma=e(oa);Va(Ma,{size:14}),S(),a(oa),a(T),H(T,i=>{var s;return(s=J)==null?void 0:s(i)});var Aa=r(T,2);{var La=i=>{var s=ne(),n=e(s);se(n,{size:14}
1),S(),a(s),fa("click",s,()=>pa(M,!0)),f(i,s)},Oa=i=>{var s=oe(),n=r(e(s),2);H(n,v=>{var u;return(u=J)==null?void 0:u(v)});var o=r(n,2);a(s),fa("click",o,()=>pa(M,!1)),f(i,s)};ma(Aa,i=>{t(M)?i(Oa,-1):i(La)})}a(na),a(la),z(i=>{d(wa,t(l).title),d(ka,`${t(l).base_city??""}, ${t(l).country??""} · ${t(l).start_date??""} â ${t(l).end_date??""}`),ba(R,1,`badge-pill ${t(N)?"badge-green":"badge-gray"}`),d(Ca,t(N)?"Active":"Past"),d(Ta,t(l).id),d(Da,t(l).currency_default),d(za,t(l).owner_id),d(Ia,t(l).invite_token??"â"),d(Sa,i)},[()=>xa(t(l).created_at)]),f(ga,Q),Fa()}Ka(["click"]);export{Le as component};
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.