1import{c as le,r as f,j as e,ae as X,aq as oe,X as O,am as re,a as J,az as ee,aP as de,aj as ce,aQ as M,S as ue,P as fe,aO as F,aR as he,ad as pe,C as ge}from"./index-Cn3juDuU.js";import{u as xe,a as me,b as ye,G as be,E as W,P as H,c as ve,d as Se,e as ke,f as je,g as we,h as Ce,i as Ie,j as te,k as ze,l as Te,m as Pe,n as Ee}from"./PhantomToggle-BmkRKhWG.js";import{H as A,l as Re,b as Be,c as Le,h as ne,d as $e}from"./types-zEhY_XAE.js";import{g as Ne}from"./TableOverlay-YiEL9djj.js";import{C as se}from"./ConfirmDialog-B8KhezE6.js";import{L as D,D as We}from"./link-2-CTxJ7I4b.js";import{S as Me}from"./search-BJPO7duS.js";import{C as Ae}from"./chevron-up-Dc1rrBed.js";import"./external-link-CvRWOjxF.js";import"./Badge-BD4P7wqJ.js";import"./useDebounce-cL_rFmlL.js";import"./pencil-CPLCel5F.js";/** 2 * @license lucide-react v0.487.0 - ISC 3 * 4 * This source code is licensed under the ISC license. 5 * See the LICENSE file in the root directory of this source tree. 6 */const De=[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]],Fe=le("chevron-left",De),Oe=18;function He(t){const n=f.useRef(null),i=f.useRef(null),s=f.useRef([]),l=f.useRef([]),u=f.useRef(new Map),h=f.useRef(null),a=f.useRef(null),[d,p]=f.useState(!1),[S,y]=f.useState(A),[k,w]=f.useState(null),b=f.useRef(t.onDeselect);b.current=t.onDeselect;const j=f.useRef(t.selectedTableId);j.current=t.selectedTableId,f.useEffect(()=>{if(!n.current)return;let o=!1;return Re().then(x=>{if(o||!n.current)return;const g=new x.maps.Map(n.current,{center:Be,zoom:A,mapTypeId:"satellite",disableDefaultUI:!1,mapTypeControl:!1,streetViewControl:!1,fullscreenControl:!1});i.current=g,Le(g),h.current=new x.maps.InfoWindow({disableAutoPan:!1}),g.addListener("zoom_changed",()=>y(g.getZoom()??A)),g.addListener("click",()=>{var c,v;(c=h.current)==null||c.close(),(v=b.current)==null||v.call(b)}),p(!0)}).catch(x=>w(x.message)),()=>{var x;o=!0,a.current&&clearTimeout(a.current),u.current.forEach(g=>g.setMap(null)),u.current.clear(),s.current.forEach(g=>g.setMap(null)),s.current=[],l.current.forEach(g=>g.setMap(null)),l.current=[],(x=h.current)==null||x.close(),h.current=null,i.current&&(google.maps.event.clearInstanceListeners(i.current),i.current=null),p(!1)}},[]);const z=S>=Oe;f.useEffect(()=>{if(!(!d||!i.current)&&(s.current.forEach(o=>o.setMap(null)),s.current=[],!!z)){for(const o of t.halls)if(o.encodedPolygon)try{const x=google.maps.geometry.encoding.decodePath(o.encodedPolygon),g=new google.maps.Polygon({paths:x,strokeColor:"#1565C0",strokeOpacity:.8,strokeWeight:2,fillColor:"#1565C0",fillOpacity:.05,map:i.current});g.addListener("click",()=>{var c;return(c=t.onHallSelect)==null?void 0:c.call(t,o)}),s.current.push(g)}catch{}}},[d,z,t.halls,t.onHallSelect]),f.useEffect(()=>{if(!(!d||!i.current)&&(l.current.forEach(o=>o.setMap(null)),l.current=[],!z)){for(const o of t.halls)if(o.encodedPolygon)try{const x=google.maps.geometry.encoding.decodePath(o.encodedPolygon);if(!x.length)continue;const g=new google.maps.LatLngBounds;x.forEach(m=>g.extend(m));const c=g.getCenter(),v=ne(o),P=v>=90?"#16a34a":v>=50?"#eab308":"#ef4444",E=new google.maps.Marker({position:c,map:i.current,label:{text:o.name,color:"#111",fontSize:"11px",fontWeight:"600"},icon:{path:google.maps.SymbolPath.CIRCLE,scale:10+o.tableCount/20,fillColor:P,fillOpacity:.85,strokeColor:"#1f2937",strokeWeight:1.5}});E.addListener("click",()=>{var m;return(m=t.onHallSelect)==null?void 0:m.call(t,o)}),l.current.push(E)}catch{}}},[d,z,t.halls,t.onHallSelect]),f.useEffect(()=>{if(!d||!i.current)return;const o=u.current,x=t.categoryFilter?t.tables.filter(m=>m.tableCostId===t.categoryFilter):t.tables,c=t.showPhantom??!0?x:x.map(m=>m.hasPhantomAssignment?{...m,hasPhantomAssignment:!1}:m),v=new Set(c.map(m=>m.id));if(o.forEach((m,B)=>{(!v.has(B)||!z)&&(m.setMap(null),o.delete(B))}),!z)return;const P=Ne(),E=t.selectedTableId??null;for(const m of c){if(m.latitude===0&&m.longitude===0)continue;const B=m.id===E;if(o.has(m.id)){o.get(m.id).update(m,B);continue}const L=new P({table:m,isSelected:B,onClick:R=>{var r;return(r=t.onTableClick)==null?void 0:r.call(t,R)}
6,onHover:R=>{j.current||(a.current&&clearTimeout(a.current),a.current=setTimeout(()=>{a.current=null,!j.current&&(!i.current||!h.current||(h.current.setContent(U(R)),h.current.setPosition(new google.maps.LatLng(R.latitude,R.longitude)),h.current.open(i.current)))},400))},onHoverEnd:()=>{var R;a.current&&(clearTimeout(a.current),a.current=null),j.current||(R=h.current)==null||R.close()}});L.setMap(i.current),o.set(m.id,L)}},[d,z,t.tables,t.categoryFilter,t.showPhantom,t.onTableClick]);const T=f.useRef(null);return f.useEffect(()=>{var c,v;if(!d)return;const o=u.current,x=t.selectedTableId??null,g=T.current;g!==x&&(g&&g!==x&&((c=o.get(g))==null||c.setSelected(!1)),x&&((v=o.get(x))==null||v.setSelected(!0)),T.current=x)},[d,t.selectedTableId]),f.useEffect(()=>{if(!d||!i.current||!h.current)return;if(!t.selectedTableId){h.current.close();return}const o=t.tables.find(x=>x.id===t.selectedTableId);o&&(h.current.setContent(U(o)),h.current.setPosition(new google.maps.LatLng(o.latitude,o.longitude)),h.current.open(i.current))},[d,t.selectedTableId,t.tables]),f.useEffect(()=>{if(!d||!i.current||!t.activeHallId)return;const o=t.halls.find(x=>x.id===t.activeHallId);if(o!=null&&o.encodedPolygon)try{const x=google.maps.geometry.encoding.decodePath(o.encodedPolygon),g=new google.maps.LatLngBounds;x.forEach(c=>g.extend(c)),i.current.fitBounds(g,40)}catch{}},[d,t.activeHallId]),f.useEffect(()=>{if(!d||!i.current||!t.selectedTableId)return;const o=t.tables.find(g=>g.id===t.selectedTableId);if(!o||o.latitude===0&&o.longitude===0)return;const x=setTimeout(()=>{var g;(g=i.current)==null||g.panTo(new google.maps.LatLng(o.latitude,o.longitude))},120);return()=>clearTimeout(x)},[d,t.selectedTableId]),k?e.jsx("div",{style:_e,children:e.jsxs("div",{style:{textAlign:"center",padding:"24px",color:"#6b7280"},children:[e.jsx("p",{style:{fontWeight:600,marginBottom:4,color:"#111"},children:"Google Maps konnte nicht geladen werden"}),e.jsx("p",{style:{fontSize:13,margin:0},children:k})]})}):e.jsx("div",{ref:n,style:{width:"100%",height:"100%"}})}const Ue={"cat-0001":"#6D0101","cat-0002":"#2563eb","cat-0003":"#d97706","cat-0004":"#7c3aed"};function U(t){const n=Ue[t.tableCostId]??"#6D0101",i=t.assignedSeats>0||t.seats.length===0?t.assignedSeats:t.seats.filter(w=>w.seatAssignment).length,s=t.paidSeats>0||t.seats.length===0?t.paidSeats:t.seats.filter(w=>{var b;return((b=w.seatAssignment)==null?void 0:b.reservation.paymentStatus)==="received"}).length,l=t.cancelledSeats,u=i-s,h=t.totalSeats-i,a=t.totalSeats>0?Math.round(i/t.totalSeats*100):0,d=(w,b="none")=>`<span style="display:inline-block;width:10px;height:10px;border-radius:50%;background:${w};border:${b};margin:1.5px;"></span>`,p=d("#16a34a").repeat(s)+d("#d97706").repeat(u)+d("#ef4444").repeat(l)+d("#fff","1.5px solid #d1d5db").repeat(Math.max(0,h)),S=i===0?'<div style="padding:12px 0 4px;text-align:center;color:#9ca3af;font-size:12px;">Alle Plätze frei</div>':'<div style="padding:8px 0 4px;text-align:center;color:#6b7280;font-size:11px;">Klicken für Details</div>',y=t.hasPhantomAssignment?'<div style="margin-top:6px;padding:4px 6px;background:#ede9fe;color:#5b21b6;border-radius:4px;font-size:10px;font-weight:600;text-align:center;">Phantom-Buchung</div>':"",k=[s>0?`<span style="display:inline-flex;align-items:center;gap:3px;"><span style="width:6px;height:6px;border-radius:50%;background:#16a34a;"></span><span style="color:#065f46;">${s} bezahlt</span></span>`:"",u>0?`<span style="display:inline-flex;align-items:center;gap:3px;"><span style="width:6px;height:6px;border-radius:50%;background:#d97706;"></span><span style="color:#92400e;">${u} offen</span></span>`:"",l>0?`<span style="display:inline-flex;align-items:center;gap:3px;"><span style="width:6px;height:6px;border-radius:50%;background:#ef4444;"></span><span style="color:#991b1b;">${l} storniert</span></span>`:"",h>0?`<span style="display:inline-flex;align-items:center;gap:3px;"><span style="width:6px;height:6px;border-radius:50%;background:#d1d5db;"></span><span style="color:#6b7280;">${h} frei</span></span>`:""].filter(Boolean).join('<span style="color:#e5e7eb;margin:0 4px;">·</span>');return` 7 <div style="font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;width:240px;padding:0;margin:0;"> 8 <div style="height:3px;background:${n};border-radius:2px 2px 0 0;margin:-8px -12px 10px;"></div> 9 <div style="display:flex;align-items:center;gap:10px;margin-bottom:8px;"> 10 <div style="width:36px;height:36px;border-radius:8px;background:${n};color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px;flex-shrink:0;"> 11 ${t.label} 12 </div> 13 <div style="flex:1;min-width:0;"> 14 <div style="font-size:13px;font-weight:600;color:#111;">${t.hall.name}</div> 15 <div style="font-size:11px;color:#6b7280;">${t.tableCost.name}</div> 16 </div> 17 <div style="text-align:right;"> 18 <div style="font-size:16px;font-weight:700;color:${a>=100?"#16a34a":a>0?"#111":"#9ca3af"};">${a}%</div> 19 </div> 20 </div> 21 <div style="margin-bottom:8px;"> 22 <div style="display:flex;align-items:center;gap:6px;margin-bottom:6px;"> 23 <div style="flex:1;height:5px;background:#f3f4f6;border-radius:3px;overflow:hidden;"> 24 <div style="width:${a}%;height:100%;background:${a>=100?"#16a34a":a>=50?n:"#ef4444"};border-radius:3px;"></div> 25 </div>
26 <span style="font-size:11px;font-weight:600;color:#374151;white-space:nowrap;">${i}/${t.totalSeats}</span> 27 </div> 28 <div style="display:flex;flex-wrap:wrap;gap:0;">${p}</div> 29 </div> 30 <div style="height:1px;background:#f3f4f6;margin:6px 0 8px;"></div> 31 ${S} 32 ${y} 33 <div style="margin-top:8px;padding-top:6px;border-top:1px solid #f3f4f6;display:flex;align-items:center;justify-content:center;gap:0;font-size:10px;font-weight:500;"> 34 ${k} 35 </div> 36 </div> 37 `}const _e={width:"100%",height:"100%",display:"flex",alignItems:"center",justifyContent:"center",background:"#f3f4f6",border:"1px dashed #d1d5db",borderRadius:8};function Ge({halls:t,activeHallId:n,onHallClick:i}){return e.jsxs("aside",{style:Qe,children:[e.jsx("div",{style:Ye,children:"SAALBELEGUNG"}),e.jsx("div",{style:{flex:1,overflowY:"auto"},children:t.slice().sort((s,l)=>s.sortOrder-l.sortOrder).map(s=>{const l=ne(s),u=s.id===n;return e.jsxs("button",{onClick:()=>i(s),style:{...Ve,background:u?"#f3f4f6":"#fff",borderLeft:u?"4px solid #6D0101":"4px solid transparent"},children:[e.jsxs("div",{style:Ze,children:[e.jsx("span",{style:{fontWeight:600,fontSize:13,color:"#111"},children:s.name}),e.jsxs("span",{style:{fontSize:11,color:"#6b7280"},children:[s.assignedTables,"/",s.tableCount]})]}),e.jsx("div",{style:qe,children:e.jsx("div",{style:{...Xe,width:`${l}%`,background:$e(l)}})}),e.jsxs("div",{style:Ke,children:[s.tableCount," Tische"]})]},s.id)})})]})}const Qe={width:240,minWidth:240,height:"100%",borderRight:"1px solid #e5e7eb",background:"#fff",display:"flex",flexDirection:"column"},Ye={padding:"12px 16px",fontSize:11,fontWeight:600,letterSpacing:"0.08em",color:"#6b7280",borderBottom:"1px solid #e5e7eb"},Ve={width:"100%",textAlign:"left",padding:"10px 12px 10px 8px",border:"none",cursor:"pointer",borderBottom:"1px solid #f3f4f6",transition:"background 200ms ease"},Ze={display:"flex",justifyContent:"space-between",alignItems:"baseline",marginBottom:6},Ke={marginTop:4,fontSize:10,color:"#9ca3af",textAlign:"right"},qe={height:6,background:"#f3f4f6",borderRadius:4,overflow:"hidden"},Xe={height:"100%",transition:"width 200ms ease"};function Je({tableId:t,seat:n}){const i=xe(t),s=me(t),l=ye(t),u=X(),[h,a]=f.useState(!1),[d,p]=f.useState(!1),[S,y]=f.useState(!1);if(n.linkedEntryCard!=null){let k=function(m){l.mutate({id:w,guestName:m},{onSuccess:()=>{u(m?"Gast-Name gespeichert":"Gast-Name entfernt")}})};const{individualTicketId:w,holderName:b,reservationId:j,ticketTypeName:z,isInherentPair:T,guestName:o,paymentStatus:x}=n.linkedEntryCard,g=j===n.reservationId;async function c(){var m;y(!0);try{const L=(m=(await re.listLinks(n.individualTicketId)).items[0])==null?void 0:m.id;if(!L){p(!1);return}s.mutate(L,{onSuccess:()=>{u("Verknüpfung gelöst"),p(!1),y(!1)},onSettled:()=>{p(!1),y(!1)}})}catch{y(!1)}}const v=e.jsx(be,{currentName:o,isSaving:l.isPending,onSave:k});if(T)return e.jsxs("div",{className:"flex items-center gap-1.5 py-0.5 text-[11px] text-[#6b7280]",children:[e.jsx(oe,{size:11,strokeWidth:1.75,className:"shrink-0 text-[#2f6b3a]","aria-hidden":"true"}),e.jsx("span",{children:"automatisch verknüpft"}),v]});const P=e.jsx("button",{type:"button","aria-label":"Verknüpfung lösen",className:"ml-auto shrink-0 cursor-pointer rounded p-0.5 text-[#9ca3af] hover:bg-[#f3f4f6] hover:text-[#6b7280] disabled:opacity-40",onClick:()=>p(!0),disabled:s.isPending||S,children:e.jsx(O,{size:12})}),E=e.jsx(se,{open:d,title:"Verknüpfung lösen?",description:"Die verknüpfte Eintrittskarte wird von dieser Tischplatzkarte getrennt.",confirmLabel:"Lösen",busy:s.isPending||S,onCancel:()=>p(!1),onConfirm:()=>void c()});return g?e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"flex items-center gap-1.5 py-0.5 text-[12px] text-[#234a2b]",children:[e.jsx(D,{size:12,strokeWidth:1.75,className:"shrink-0 text-[#2f6b3a]","aria-hidden":"true"}),e.jsx("span",{className:"font-medium",children:z??"Eintrittskarte"}),v,P]}),E]}):e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"rounded-md border border-[#e7d6a8] bg-[#fdf8ec] px-2 py-1.5 text-[12px]",children:[e.jsxs("div",{className:"flex items-center gap-1.5",children:[e.jsx(D,{size:12,strokeWidth:1.75,className:"shrink-0 text-[#92702a]","aria-hidden":"true"}),e.jsx("span",{className:"font-semibold text-[#5c4708]",children:b}),e.jsx(W,{href:`/reservations?r=${encodeURIComponent(j)}`,label:`#${j}`}),P]}),e.jsxs("div",{className:"mt-1 flex flex-wrap items-center gap-x-2 gap-y-1 pl-[
3718px]",children:[z&&e.jsx("span",{className:"text-[11px] font-medium text-[#6b5a2a]",children:z}),e.jsx(H,{status:x}),v]})]}),E]})}return e.jsx(e.Fragment,{children:h?e.jsx(ve,{reservationId:n.reservationId,onPick:k=>{a(!1),i.mutate({eintrittskarteId:k.id,tischplatzkarteId:n.individualTicketId},{onSuccess:()=>u("Eintrittskarte verknüpft")})},onCancel:()=>a(!1)}):e.jsxs("button",{type:"button","aria-label":"Eintrittskarte verknüpfen",className:"inline-flex cursor-pointer items-center gap-1.5 rounded-md border border-dashed border-[#d9c9c9] px-2 py-1 text-[13px] text-[#6D0101] hover:bg-[#fbf4f4] disabled:opacity-40",disabled:i.isPending,onClick:()=>a(!0),children:[e.jsx(D,{size:13}),"Eintrittskarte verknüpfen",e.jsx("span",{className:"text-[#9ca3af]",children:"· optional"})]})})}function et({tableId:t,freeSeats:n,onDone:i}){var R;const[s,l]=f.useState(""),[u,h]=f.useState(null),[a,d]=f.useState([]),[p,S]=f.useState(new Set),[y,k]=f.useState(!1),{activeEventYearId:w}=J(),{data:b}=Se(w??null,s.trim()||void 0),j=f.useMemo(()=>(b==null?void 0:b.items)??[],[b==null?void 0:b.items]),z=ke(t),T=je((u==null?void 0:u.reservationId)??null),o=((R=T.data)==null?void 0:R.items)??[],x=o.filter(r=>!r.isPlaced),g=o.filter(r=>r.isPlaced),c=a.filter(r=>p.has(r)).length,v=a.length-c,P=v>n;function E(r){const C=a.includes(r);d(I=>I.includes(r)?I.filter($=>$!==r):[...I,r]),C&&S(I=>{if(!I.has(r))return I;const $=new Set(I);return $.delete(r),$})}function m(r){S(C=>{const I=new Set(C);return I.has(r)?I.delete(r):I.add(r),I})}function B(r){h(r),d([]),S(new Set),k(!1)}function L(){if(a.length===0||P)return;const r=a.filter(C=>p.has(C));z.mutate({individualTicketIds:a,phantomTicketIds:r},{onSuccess:()=>{const C=a.length,I=r.length===C;M.success(I?`${C} als Phantom-Buchung platziert`:r.length>0?`${C} Tischplatzkarte${C===1?"":"n"} platziert (inkl. Phantom-Buchung)`:`${C} Tischplatzkarte${C===1?"":"n"} platziert`),i()},onError:C=>{if(C instanceof ce&&C.code==="TABLE_CAPACITY_EXCEEDED"){M.error("Tisch ist inzwischen voll â überzählige Karten als Phantom-Buchung markieren.");return}M.error("Platzieren fehlgeschlagen â bitte Seite neu laden.")}})}return e.jsxs("div",{style:{padding:"8px 12px"},children:[e.jsxs("button",{onClick:()=>{u?(h(null),d([])):i()},type:"button",style:it,children:[e.jsx(Fe,{size:11,strokeWidth:1.75})," Zurück"]}),!u&&e.jsxs(e.Fragment,{children:[e.jsxs("div",{style:tt,children:[e.jsx(Me,{size:12,strokeWidth:1.75,style:{color:"#9ca3af",flexShrink:0}}),e.jsx("input",{autoFocus:!0,value:s,onChange:r=>l(r.target.value),placeholder:"Name oder Firmaâ¦",style:nt,"aria-label":"Reservierung suchen"})]}),e.jsxs("div",{style:{marginTop:8},children:[j.length===0&&e.jsx("div",{style:N,children:"Keine Reservierungen mit nicht zugeteilten Tischplatzkarten."}),j.map(r=>{const C=r.breakdown.map(I=>`${I.count}x ${I.ticketTypeName}`).join(" · ");return e.jsxs("button",{type:"button",onClick:()=>B(r),style:st,children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:6,flexWrap:"wrap"},children:[e.jsxs("div",{style:lt,children:[r.firstName," ",r.lastName]}),e.jsx("span",{onClick:I=>I.stopPropagation(),style:{display:"inline-flex"},children:e.jsx(W,{href:`/reservations?r=${encodeURIComponent(r.reservationId)}`,label:`#${r.reservationId}`})}),e.jsx(H,{status:r.paymentStatus})]}),e.jsx("div",{style:_,children:r.company||"Privat"}),C&&e.jsx("div",{style:ot,children:C})]},r.reservationId)})]})]}),u&&e.jsx("div",{style:{marginTop:8},children:e.jsxs("div",{style:{padding:10,borderRadius:8,border:"1px solid #e5e7eb",background:"#fafafa"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:6,flexWrap:"wrap"},children:[e.jsxs("span",{style:{fontSize:13,fontWeight:600,color:"#111"},children:[u.firstName," ",u.lastName]}),e.jsx(W,{href:`/reservations?r=${encodeURIComponent(u.reservationId)}`,label:`#${u.reservationId}`})]}),e.jsxs("div",{style:{fontSize:11,color:"#6b7280",margin:"2px 0 10px"},children:[u.company??"Privat"," · ",a.length," ausgewählt",n>0?` · ${n} frei`:"",c>0?` · ${c} Phantom-Buchung`:""]}),P&&e.jsxs("div",{style:{fontSize:11,color:"#b45309",marginBottom:10,lineHeight:1.5},children:[v," normale Karten passen nicht in ",n," ",n===1?"freien Platz":"freie Plätze"," â markiere
37überzählige als Phantom-Buchung."]}),T.isLoading&&e.jsx("div",{style:N,children:"Tischplatzkarten werden geladenâ¦"}),!T.isLoading&&o.length===0&&e.jsx("div",{style:N,children:"Keine Tischplatzkarten vorhanden."}),!T.isLoading&&o.length>0&&x.length===0&&e.jsx("div",{style:N,children:"Alle Tischplatzkarten sind bereits zugewiesen."}),e.jsx("ul",{style:{listStyle:"none",margin:0,padding:0},children:x.map(r=>{const C=a.includes(r.individualTicketId);return e.jsx("li",{style:G,children:e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsxs("label",{style:{display:"flex",alignItems:"center",gap:8,flex:1,minWidth:0,cursor:"pointer"},children:[e.jsx("input",{type:"checkbox","aria-label":r.ticketTypeName,checked:C,onChange:()=>E(r.individualTicketId),style:{flexShrink:0}}),e.jsx("span",{style:Q,children:r.ticketTypeName})]}),C&&e.jsx(we,{active:p.has(r.individualTicketId),onToggle:()=>m(r.individualTicketId)})]})},r.individualTicketId)})}),g.length>0&&e.jsxs("div",{style:{marginTop:8,borderTop:"1px solid #f3f4f6",paddingTop:8},children:[e.jsxs("button",{type:"button",onClick:()=>k(r=>!r),"aria-expanded":y,style:rt,children:[y?e.jsx(ee,{size:12,strokeWidth:1.75,"aria-hidden":"true"}):e.jsx(de,{size:12,strokeWidth:1.75,"aria-hidden":"true"}),g.length," bereits ",g.length===1?"zugewiesenes Ticket":"zugewiesene Tickets"]}),y&&e.jsx("ul",{style:{listStyle:"none",margin:"4px 0 0",padding:0},children:g.map(r=>e.jsxs("li",{style:{...G,opacity:.7},children:[e.jsx("div",{style:Q,children:r.ticketTypeName}),e.jsxs("div",{style:_,children:["bereits an Tisch ",r.tableLabel??"?"]})]},r.individualTicketId))})]}),e.jsx("button",{onClick:L,style:{...at,...a.length===0||P||z.isPending?{background:"#9ca3af",cursor:"default"}:{}},disabled:a.length===0||P||z.isPending,type:"button",children:z.isPending?"Wird platziertâ¦":`${a.length||""} Tischplatzkarte${a.length===1?"":"n"} platzieren`.trim()})]})})]})}const N={padding:"20px 14px",fontSize:12,color:"#9ca3af",textAlign:"center"},tt={display:"flex",alignItems:"center",gap:6,height:32,padding:"0 8px",border:"1px solid #d1d5db",borderRadius:6,background:"#fff"},nt={flex:1,border:"none",outline:"none",fontSize:12,color:"#111",background:"transparent",fontFamily:"inherit"},st={display:"block",width:"100%",textAlign:"left",padding:"8px 10px",background:"#fff",border:"1px solid #f3f4f6",borderRadius:6,cursor:"pointer",marginBottom:4},it={display:"inline-flex",alignItems:"center",gap:3,background:"transparent",border:"none",cursor:"pointer",fontSize:11,color:"#6b7280",padding:0,marginBottom:8},at={marginTop:12,width:"100%",height:32,background:"#6D0101",color:"#fff",border:"none",borderRadius:6,cursor:"pointer",fontSize:12,fontWeight:500},lt={fontSize:12,fontWeight:600,color:"#111",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},_={fontSize:11,color:"#6b7280",marginTop:2},ot={fontSize:11,color:"#9ca3af",marginTop:2},G={padding:"6px 0",borderBottom:"1px solid #f3f4f6"},rt={display:"flex",alignItems:"center",gap:4,width:"100%",background:"transparent",border:"none",cursor:"pointer",fontSize:11,fontWeight:600,color:"#6b7280",padding:"2px 0",textAlign:"left"},Q={fontSize:12,fontWeight:600,color:"#111",fontVariantNumeric:"tabular-nums"};function dt({table:t,showPhantom:n=!0,onClose:i}){var S;const[s,l]=f.useState(!1),u=Ce((t==null?void 0:t.id)??null),h=((S=u.data)==null?void 0:S.items)??[];if(!t)return null;const a=h.filter(y=>!y.isPhantom).length,d=Math.max(0,t.totalSeats-a),p=n?h:h.filter(y=>!y.isPhantom);return e.jsxs("aside",{style:xt,children:[e.jsx(ct,{table:t,assigned:a,free:d,onClose:i}),e.jsx("div",{style:{flex:1,overflowY:"auto"},children:s?e.jsx(et,{tableId:t.id,freeSeats:d,onDone:()=>l(!1)}):e.jsx(ut,{tableId:t.id,seats:p,totalSeats:t.totalSeats,isLoading:u.isLoading,isError:u.isError,onAddClick:()=>l(!0)})})]})}function ct({table:t,assigned:n,free:i,onClose:s}){const l=t.totalSeats>0?Math.round(n/t.totalSeats*100):0;return e.jsxs("header",{style:mt,children:[e.jsxs("div",{style:{flex:1},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsxs("span",{style:{fontSize:16,fontWeight:600,color:"#111"},children:["Tisch ",t.label]}),e.jsxs("span",{style:{fontSize:11,color:"#6b7280"},children:[t.hall.name," · ",t.tableCost.name]})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,marginTop:6},children:[e.jsx("div",{style:{flex:1,height:5,background:"#f3f4f6",borderRadius:3,overflow:"hidden"},children:e.jsx("div",{style:{height:"100%",width:`${l}%`,background:i===0?"#16a34a":"#2196F3",transition:"width 200ms"}})}),e.jsxs("span",{style:{fontSize:11,color:"#6b7280",whiteSpace:"nowrap"},children:[n,"/",t.totalSeats," · ",i," frei"]})]})]}),e.jsx("button",{onClick:s,"aria-label":"SchlieÃen",style:yt,type:"button",children:e.jsx(O,{size:16,strokeWidth:1.75})})]})}function ut({tableId:t,seats:n,totalSeats:i,isLoading:s,isError:l,onAddClick:u}){if(s)return e.jsx("div",{style:{display:"flex",justifyContent:"center",padding:"24px 0"},children:e.jsx(ue,{size:20})});if(l)return e.jsx("div",{style:{padding:"16px 14px",fontSize:12,color:"#b91c1c"},children:"Sitzplatzdaten konnten nicht geladen werden."});const h=n.filter(d=>!d.isPhantom).length,a=Math.max(0,i-h);return e.jsxs("ul",{style:bt,children:[n.map((d,p)=>e.jsx(ht,{tableId:t,seat:d,seatNumber:p+1},d.individualTicketId)),Array.from({length:a}).map((d,p)=>e.jsx(ft,{seatNumber:n.length+p+1,onAddClick:u},`free-${p}`))]})}function ft({seatNumber:t,onAddClick:n}){const[i,s]=f.useState(!1);return e.jsx("li",{style:{listStyle:"none",margin:0,padding:0},children:e.jsxs("button",{type:"button",tabIndex:0,"aria-label":"Tischplatzkarte hinzufügen",onClick:n,onMouseEnter:()=>s(!0),onMouseLeave:()=>s(!1),style:{display:"flex",alignItems:"center",gap:8,width:"100%",padding:"10px 14px",borderBottom:"1px solid #f3f4f6",minHeight:36,background:i?"#fef2f2":"#fafafa",border:"none",borderBottomWidth:1,borderBottomStyle:"solid",borderBottomColor:"#f3f4f6",cursor:"pointer",textAlign:"left",transition:"background 100ms"},children:[e.jsx("span",{style:ie,children:t}),i?e.jsxs("span",{style:{display:"flex",alignItems:"center",gap:4,fontSize:12,color:"#6D0101",fontStyle:"normal"},children:[e.jsx(fe,{size:12,strokeWidth:1.75,"aria-hidden":"true"}),"Tischplatzkarte hinzufügen"]}):e.jsx("span",{style:{fontSize:12,color:"#9ca3af",fontStyle:"italic"},children:"â frei"})]})})}function ht({tableId:t,seat:n,seatNumber:i}){var p,S;const s=Ie(t),l=X(),[u,h]=f.useState(!1),a=((p=n.linkedEntryCard)==null?void 0:p.guestName)??((S=n.linkedEntryCard)==null?void 0:S.holderName)??n.reservationName,d=n.company??n.bundName??null;return e.jsxs("li",{style:{...vt,flexDirection:"column",alignItems:"stretch",gap:6},children:[e.jsxs("div",{style:{display:"flex",alignItems:"flex-start",ga
37p:8},children:[e.jsx("span",{style:ie,children:i}),e.jsxs("div",{style:{flex:1,minWidth:0},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:6},children:[e.jsxs("span",{style:jt,children:[n.ticketTypeName??"Tischplatzkarte"," · ",a]}),n.isPhantom&&e.jsx(gt,{})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",flexWrap:"wrap",gap:4,marginTop:3},children:[e.jsx(W,{href:`/reservations?r=${encodeURIComponent(n.reservationId)}`,label:`#${n.reservationId}`}),e.jsx(H,{status:n.paymentStatus}),d&&e.jsxs("span",{style:{fontSize:11,color:"#9ca3af"},children:["· ",d]})]})]}),e.jsx("button",{type:"button",onClick:()=>h(!0),disabled:s.isPending,style:{...kt,cursor:"pointer"},title:"Tischplatzkarte vom Tisch entfernen","aria-label":"Tischplatzkarte vom Tisch entfernen",children:e.jsx(O,{size:11})})]}),e.jsx("div",{style:{paddingLeft:24},children:e.jsx(Je,{tableId:t,seat:n})}),e.jsx(se,{open:u,title:"Tischplatzkarte entfernen?",description:`${n.ticketTypeName??"Tischplatzkarte"} · ${a} wird von diesem Tisch entfernt.`,confirmLabel:"Entfernen",busy:s.isPending,onCancel:()=>h(!1),onConfirm:()=>{s.mutate(n.individualTicketId,{onSuccess:()=>{l("Tischplatzkarte vom Tisch entfernt"),h(!1)},onError:()=>h(!1)})}})]})}const pt="Phantom-Buchung: teilt sich die Plätze mit der Erstbuchung";function gt(){return e.jsxs("span",{style:{...St,display:"inline-flex",alignItems:"center",gap:3,background:"#ede9fe",color:"#5b21b6"},title:pt,children:[e.jsx(te,{size:9,strokeWidth:1.75,"aria-hidden":"true"}),"Phantom-Buchung"]})}const xt={width:420,minWidth:420,height:"100%",borderLeft:"1px solid #e5e7eb",background:"#fff",display:"flex",flexDirection:"column",boxShadow:"-4px 0 12px rgba(0,0,0,0.03)"},mt={padding:"12px 14px",display:"flex",alignItems:"flex-start",gap:8,borderBottom:"1px solid #e5e7eb"},yt={width:28,height:28,display:"flex",alignItems:"center",justifyContent:"center",background:"transparent",border:"none",borderRadius:6,cursor:"pointer",color:"#6b7280",flexShrink:0},bt={listStyle:"none",margin:0,padding:0},vt={display:"flex",alignItems:"flex-start",gap:8,padding:"10px 14px",borderBottom:"1px solid #f3f4f6",minHeight:36},St={fontSize:9,fontWeight:600,padding:"1px 6px",borderRadius:3,whiteSpace:"nowrap",flexShrink:0},kt={display:"flex",alignItems:"center",justifyContent:"center",width:22,height:22,border:"1px solid #fecaca",background:"#fff",color:"#b91c1c",borderRadius:4,cursor:"pointer",flexShrink:0},ie={fontSize:10,color:"#d1d5db",minWidth:16,textAlign:"right",flexShrink:0},jt={fontSize:12,fontWeight:600,color:"#111"};function wt({categories:t,active:n,onChange:i}){const s=[{id:null,name:"Alle"},...t];return e.jsx("div",{style:Ct,children:s.map(l=>e.jsx("button",{onClick:()=>i(l.id),style:{...It,background:n===l.id?"#6D0101":"#fff",color:n===l.id?"#fff":"#374151",borderColor:n===l.id?"#6D0101":"#d1d5db"},children:l.name},l.id??"all"))})}const Ct={display:"flex",gap:6,padding:6,background:"#fff",border:"1px solid #e5e7eb",borderRadius:8,boxShadow:"0 1px 2px rgba(0,0,0,0.05)"},It={height:30,padding:"0 12px",fontSize:12,fontWeight:500,border:"1px solid",borderRadius:6,cursor:"pointer",transition:"all 120ms ease"};function zt(){const t=[{fill:"#4ade80",border:"#16a34a",label:"Vollbesetzt · Bezahlt"},{fill:"#fed7aa",border:"#f97316",label:"Teilbesetzt · Bezahlt"},{fill:"#bfdbfe",border:"#3b82f6",label:"Offen"},{fill:"#f3f4f6",border:"#9ca3af",label:"Frei"},{fill:"#fecaca",border:"#ef4444",label:"Storniert"},{fill:"#FFEB3B",border:"#F57F17",label:"Ausgewählt"}];return e.jsx("div",{style:Tt,children:t.map(n=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:6},children:[e.jsx("span",{style:{width:14,height:14,background:n.fill,borderRadius:3,border:`1.5px solid ${n.border}`}}),e.jsx("span",{style:{fontSize:11,color:"#374151"},children:n.label})]},n.label))})}const Tt={display:"flex",gap:12,padding:"8px 10px",background:"#fff",border:"1px solid #e5e7eb",borderRadius:8,boxShadow:"0 1px 2px rgba(0,0,0,0.05)"};function Pt({tables:t,categories:n}){const[i,s]=F("akbb.tables.inventoryExpanded",!1),l=f.useMemo(()=>{const a=t.reduce((y,k)=>y+k.totalSeats,0),d=t.reduce((y,k)=>y+k.assignedSeats,0),p=t.length,S=n.map(y=>{const k=t.filter(w=>w.tableCostId===y.id);return{categoryId:y.id,categoryName:y.name,totalSeats:k.reduce((w,b)=>w+b.totalSeats,0),assignedSeats:k.reduce((w,b)=>w+b.assignedSeats,0)}});return{totals:{totalSeats:a,assignedSeats:d,tableCount:p},byCategory:S}},[t,n]),u=l.totals.totalSeats>0?Math.round(l.totals.assignedSeats/l.totals.totalSeats*100):0,h=i?Ae:ee;return e.jsxs("div",{style:Et,children:[e.jsxs("button",{onClick:()=>s(a=>!a),style:Rt,children:[e.jsxs("div",{style:{flex:1,minWidth:0},children:[e.jsxs("div",{style:{display:"flex",alignItems:"baseline",gap:6,marginBottom:4},children:[e.jsxs("span",{style:{fontSize:13,fontWeight:600,color:"#111"},children:[u,"%"]}),e.jsx("span",{style:{fontSize:11,color:"#6b7280"},children:"Auslastung"})]}),e.jsx("div",{style:V,children:e.jsx("div",{style:{...Z,width:`${u}%`,background:Y(u)}})}
37),e.jsxs("div",{style:{fontSize:10,color:"#9ca3af",marginTop:3},children:[l.totals.assignedSeats,"/",l.totals.totalSeats," Plätze ·"," ",l.totals.tableCount," Tische"]})]}),e.jsx(h,{size:14,strokeWidth:1.75,style:{color:"#9ca3af",flexShrink:0,marginLeft:8}})]}),i&&e.jsx("div",{style:{borderTop:"1px solid #e5e7eb",padding:"10px 12px 6px"},children:l.byCategory.map(a=>{const d=a.totalSeats>0?Math.round(a.assignedSeats/a.totalSeats*100):0;return e.jsxs("div",{style:{marginBottom:8},children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",marginBottom:3},children:[e.jsx("span",{style:{fontSize:11,fontWeight:500,color:"#374151"},children:a.categoryName}),e.jsxs("span",{style:{fontSize:10,color:"#9ca3af"},children:[a.assignedSeats,"/",a.totalSeats]})]}),e.jsx("div",{style:V,children:e.jsx("div",{style:{...Z,width:`${d}%`,background:Y(d)}})})]},a.categoryId)})})]})}function Y(t){return t>=90?"#16a34a":t>=50?"#eab308":"#6D0101"}const Et={background:"#fff",border:"1px solid #e5e7eb",borderRadius:8,boxShadow:"0 2px 8px rgba(0,0,0,0.06)",width:240,overflow:"hidden"},Rt={display:"flex",alignItems:"center",width:"100%",padding:"10px 12px",background:"none",border:"none",cursor:"pointer",textAlign:"left"},V={height:5,background:"#f3f4f6",borderRadius:3,overflow:"hidden"},Z={height:"100%",transition:"width 200ms ease",borderRadius:3};function Bt({tables:t,categories:n}){const{data:i}=ze(),s=(i==null?void 0:i.totalTickets)??0,l=(i==null?void 0:i.totalPlaced)??0,u=Math.max(0,s-l),h=s>0?Math.min(100,Math.round(l/s*100)):100,a=f.useMemo(()=>n.map((p,S)=>{const y=t.filter(b=>b.tableCostId===p.id),k=y.reduce((b,j)=>b+j.totalSeats,0),w=y.reduce((b,j)=>b+j.assignedSeats,0);return{categoryId:p.id,categoryName:p.name,total:k,placed:w,idx:S}}),[t,n]),d=["#6D0101","#2563eb","#d97706","#7c3aed"];return u===0&&s>0?e.jsxs("div",{style:q,children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:6,marginBottom:4},children:[e.jsx(he,{size:14,strokeWidth:2,style:{color:"#16a34a"}}),e.jsx("span",{style:{fontSize:12,fontWeight:600,color:"#065f46"},children:"Alle Tickets platziert"})]}),e.jsx(K,{pct:100})]}):e.jsxs("div",{style:q,children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:6,marginBottom:2},children:[e.jsx(pe,{size:13,strokeWidth:1.75,style:{color:"#d97706",flexShrink:0}}),e.jsxs("span",{style:{fontSize:12,fontWeight:600,color:"#111"},children:[l,"/",s," platziert"]}),e.jsxs("span",{style:{fontSize:11,color:"#6b7280",marginLeft:"auto"},children:[h,"%"]})]}),e.jsx(K,{pct:h}),a.length>0&&e.jsx("div",{style:{marginTop:8,display:"flex",flexDirection:"column",gap:5},children:a.map(p=>{const S=p.total>0?Math.round(p.placed/p.total*100):100,y=d[p.idx%d.length]??"#6b7280",k=p.total-p.placed;return e.jsxs("div",{children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:2},children:[e.jsx("span",{style:{fontSize:10,fontWeight:500,color:"#374151"},children:p.categoryName}),e.jsx("span",{style:{fontSize:10,color:k>0?"#92400e":"#065f46",fontWeight:500},children:k>0?`${k} offen`:e.jsx(ge,{size:11,strokeWidth:2})})]}),e.jsx("div",{style:ae,children:e.jsx("div",{style:{...Lt,width:`${S}%`,background:y}})})]},p.categoryId)})})]})}function K({pct:t}){return e.jsx("div",{style:{...ae,height:6},children:e.jsx("div",{style:{height:"100%",borderRadius:3,width:`${t}%`,background:t>=100?"#16a34a":t>=50?"#6D0101":"#ef4444",transition:"width 300ms ease"}})})}const q={padding:"10px 14px",background:"#fff",border:"1px solid #e5e7eb",borderRadius:8,boxShadow:"0 2px 8px rgba(0,0,0,0.06)",width:240},ae={height:4,background:"#f3f4f6",borderRadius:3,overflow:"hidden"},Lt={height:"100%",borderRadius:3,transition:"width 300ms ease"};function $t(t){return t==="round"||t==="oval"?"rhombus":"rectangle"}function Nt(t,n,i){const s=n.get(t.hallId),l=t.tableCostId?i.get(t.tableCostId):null;return{id:t.id,hallId:t.hallId,tableCostId:t.tableCostId??"",label:t.label,totalSeats:t.totalSeats,assignedSeats:t.assignedSeats,paidSeats:t.paidSeats,cancelledSeats:t.cancelledSeats,hasPhantomAssignment:t.hasPhantom,shape:$t(t.shape),width:t.width,height:t.height,latitude:t.latitude,longitude:t.longitude,angle:t.angle,isActive:!0,tableCost:{id:(l==null?void 0:l.id)??t.tableCostId??"",name:(l==null?void 0:l.name)??""},hall:{id:(s==null?void 0:s.id)??t.hallId,name:(s==null?void 0:s.name)??""},seats:[]}}function Wt(t){return{id:t.id,eventId:"",name:t.name,encodedPolygon:t.encodedPolygon||null,bounds:t.bounds||null,sortOrder:t.sortOrder,isActive:t.isActive,tableCount:t.tableCount,totalSeats:t.totalSeats,assignedSeats:t.assignedSeats,assignedTables:t.assignedTables,paidSeats:t.paidSeats,freeSeats:t.freeSeats}}function Kt(){const{data:t}=Te(),{data:n}=Pe(),{data:i}=Ee(),{activeEventYearId:s}=J(),l=f.useMemo(()=>{const c=new Map;return t==null||t.forEach(v=>c.set(v.id,v)),c},[t]),u=f.useMemo(()=>{const c=new Map;
37return i==null||i.forEach(v=>c.set(v.id,v)),c},[i]),h=f.useMemo(()=>(t??[]).map(Wt),[t]),a=f.useMemo(()=>(n??[]).map(c=>Nt(c,l,u)),[n,l,u]),d=i??[],[p,S]=f.useState(null),[y,k]=f.useState(null),[w,b]=F("akbb.tables.categoryFilter",null),[j,z]=F("akbb.tables.showPhantom",!0),[T,o]=f.useState(!1),x=f.useCallback(async()=>{if(!(!s||T)){o(!0);try{const c=`/api/halls/belegungsliste?eventYearId=${encodeURIComponent(s)}`,v=await fetch(c,{credentials:"include"});if(!v.ok)throw new Error("Export fehlgeschlagen");const P=await v.blob(),E=URL.createObjectURL(P),m=document.createElement("a");m.href=E,m.download="tisch-belegungsliste.pdf",m.click(),URL.revokeObjectURL(E)}catch{alert("Export fehlgeschlagen. Bitte erneut versuchen.")}finally{o(!1)}}},[s,T]),g=a.find(c=>c.id===p)??null;return f.useEffect(()=>{function c(v){v.key==="Escape"&&S(null)}return window.addEventListener("keydown",c),()=>window.removeEventListener("keydown",c)},[]),e.jsxs("div",{style:Mt,children:[e.jsx(Ge,{halls:h,activeHallId:y,onHallClick:c=>{k(v=>v===c.id?null:c.id),requestAnimationFrame(()=>k(c.id)),S(null)}}),e.jsxs("div",{style:{flex:1,position:"relative",minWidth:0},children:[e.jsx(He,{halls:h,tables:a,selectedTableId:p,activeHallId:y,onTableClick:c=>S(c.id),onHallSelect:c=>k(c.id),onDeselect:()=>S(null),categoryFilter:w,showPhantom:j}),e.jsxs("div",{style:{position:"absolute",top:16,left:16,zIndex:10,display:"flex",flexDirection:"column",gap:8},children:[e.jsx(Bt,{tables:a,categories:d}),e.jsx(Pt,{tables:a,categories:d})]}),e.jsxs("div",{style:{position:"absolute",top:16,right:16,zIndex:10,display:"flex",flexDirection:"column",gap:8,alignItems:"flex-end"},children:[e.jsx(wt,{categories:d,active:w,onChange:b}),e.jsxs("button",{type:"button",onClick:()=>z(c=>!c),"aria-pressed":j,"aria-label":j?"Phantom-Buchungen ausblenden":"Phantom-Buchungen anzeigen",title:j?"Phantom-Buchungen ausblenden":"Phantom-Buchungen anzeigen",style:{display:"inline-flex",alignItems:"center",gap:5,height:30,padding:"0 12px",backgroundColor:j?"#ede9fe":"#fff",color:j?"#5b21b6":"#6b7280",border:`1px solid ${j?"#ddd6fe":"#e5e7eb"}`,borderRadius:6,fontSize:12,fontWeight:600,whiteSpace:"nowrap",boxShadow:"0 1px 2px rgba(0,0,0,0.05)",cursor:"pointer"},children:[e.jsx(te,{size:12,strokeWidth:1.75}),"Phantom-Buchungen"]}),e.jsxs("button",{type:"button",onClick:x,disabled:T||!s,"aria-label":"Belegungsliste als PDF exportieren",style:{display:"inline-flex",alignItems:"center",gap:5,padding:"5px 12px",backgroundColor:T||!s?"#a86060":"#6D0101",color:"#fff",borderRadius:4,fontSize:12,fontWeight:600,whiteSpace:"nowrap",boxShadow:"0 1px 3px rgba(0,0,0,0.18)",border:"none",cursor:T||!s?"not-allowed":"pointer",opacity:T||!s?.7:1},children:[e.jsx(We,{size:12,strokeWidth:1.75}),T?"Exportiereâ¦":"Belegungsliste exportieren"]})]}),e.jsx("div",{style:{position:"absolute",bottom:16,left:16,zIndex:10},children:e.jsx(zt,{})})]}),g&&e.jsx(dt,{table:g,showPhantom:j,onClose:()=>S(null)})]})}const Mt={flex:1,display:"flex",minHeight:0,overflow:"hidden",height:"100%",width:"100%"};export{ve as EntryCardPicker,be as GuestNameInlineEdit,H as PaymentBadge,we as PhantomToggle,Kt as TablesPage};
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.