1const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/useStripeReportData-BRoIAECC.js","assets/query-BfS8OGlq.js","assets/vendor-BWGWb13B.js","assets/ui-CRfrqFYg.js","assets/index-DL2CIW7t.js","assets/motion-dpBNAuY6.js","assets/dates-CYSaORGK.js","assets/index-AoaNAEbY.css"])))=>i.map(i=>d[i]); 2import{j as e}from"./ui-CRfrqFYg.js";import{r as b}from"./vendor-BWGWb13B.js";import{u as w}from"./query-BfS8OGlq.js";import{s as g,bl as Le,B as D,bH as Oe,ch as De,bF as Ae,bG as ne,ac as q,dd as Me,cf as Ie,a as h,b as S,d as k,e as p,dV as Be,aD as pe,bq as le,a2 as W,a3 as H,a4 as Y,a5 as Q,a6 as O,a8 as fe,a9 as je,aa as R,ab as T,a1 as Ee,ba as qe,bg as K,P as Fe,an as Pe,G as Ve,dO as Ue,T as ee,_ as se,r as I,$ as _,q as te,t as y,g as C,U as ge,aW as Ke,bc as $e,Q as Ge,bk as ve,bf as ie,b9 as ze,aj as We,cu as He,Y as Ye,E as Qe}from"./index-DL2CIW7t.js";import{A as Xe}from"./AdminLayout-GJDoX4mo.js";import{g as _e,A as X,G as Ze,R as Je,a as ce,B as es,S as ss,b as ts}from"./ReportResultsTable-G2G1vn0c.js";import{C as v,s as F}from"./dates-CYSaORGK.js";import{useStripeReportData as as}from"./useStripeReportData-BRoIAECC.js";import{Z as rs,K as ns,_ as ls,c as V,$ as is,a0 as cs,e as ye}from"./GlobalSearchDialog-DaO6IUqb.js";import{O as os,R as ds,B as ms,A as us}from"./AffiliatePerformanceTab-D7mxd_HT.js";import{R as Z,X as oe,Y as de,T as J,B as xs,H as hs,L as ps}from"./generateCategoricalChart-CsXSN63y.js";import{B as fs}from"./BarChart-BMryEvQO.js";import{C as me}from"./CartesianGrid-BB1A-oCJ.js";import{L as js,a as ue}from"./LineChart-SnsHEfmp.js";import{P as gs,a as vs}from"./PieChart-COzDjUSd.js";import{a as _s,b as ys}from"./refresh-ccw-Dy4sV11r.js";import"./motion-dpBNAuY6.js";import"./rocket-BGHNjPoG.js";import"./useStripeMode-CRBopKQn.js";import"./chrome-BTaOdbeC.js";import"./copy-BPUJlJnK.js";import"./crosshair-CvOyu8Mf.js";import"./ellipsis-DyD3S9Ov.js";import"./wifi-off-CIcChNab.js";import"./key-CW80570D.js";import"./pen-tkD2419m.js";import"./printer-CqnWYUTP.js";import"./radio-Cx0UCA5p.js";import"./useDebounce-BEJW-TSj.js";import"./AreaChart-DHoFi7su.js";import"./stripe-BqCuezgc.js";function bs({configuration:t,operatorIds:r,enabled:s=!0,stripeData:a}){return w({queryKey:["admin-report-data",t,r],enabled:s,queryFn:async()=>{const{start:l,end:n}=_e(t.filters);let i=g.from("bookings").select(` 3 id, 4 booking_number, 5 booking_date, 6 start_time, 7 end_time, 8 status, 9 payment_status, 10 quantity, 11 guest_count, 12 unit_price_cents, 13 subtotal_cents, 14 total_cents, 15 tax_cents, 16 booking_fee_cents, 17 discount_amount_cents, 18 refund_amount_cents, 19 gift_card_amount_cents, 20 discount_code_id, 21 checked_in_at, 22 checked_in_by, 23 cancelled_at, 24 created_at, 25 duration_minutes, 26 operator_id, 27 experience_id, 28 order_id, 29 customer_id, 30 stripe_payment_intent_id, 31 payment_method_brand, 32 customer_type_breakdown, 33 listings!bookings_experience_id_fkey ( 34 id, 35 title, 36 category_id 37 ), 38 operators!bookings_operator_id_fkey ( 39 id, 40 business_name 41 ), 42 discount_codes ( 43 id, 44 code, 45 name 46 ) 47 `).gte("created_at",l.toISOString()).lte("created_at",n.toISOString());r&&r.length>0&&(i=i.in("operator_id",r)),t.filters.statuses&&t.filters.statuses.length>0&&(i=i.in("status",t.filters.statuses)),t.filters.paymentStatuses&&t.filters.paymentStatuses.length>0&&(i=i.in("payment_status",t.filters.paymentStatuses)),t.filters.experienceIds&&t.filters.experienceIds.length>0&&(i=i.in("experience_id",t.filters.experienceIds));const{data:o,error:m}=await i;if(m)throw m;const{matchBookingsToStripeData:d}=await Le(async()=>{const{matchBookingsToStripeData:A}=await import("./useStripeReportData-BRoIAECC.js");return{matchBookingsToStripeData:A}},__vite__mapDeps([0,1,2,3,4,5,6,7])),c=a?d(o||[],a):void 0,x=Ns(o||[],c),f=ws(x,t),N=Cs(x,t.columns);return{rows:f,summary:N,totalRows:f.length,rawCount:o?.length||0}}})}function Ns(t,r){return t.map(s=>{const a=new Date(s.created_at),l=new Date(s.booking_date),n=Math.floor((l.getTime()-a.getTime())/(1e3*60*60*24)),o=r?.get(s.id)?.fee??Math.round((s.total_cents||0)*.029+30),m=(s.total_cents||0)-(s.booking_fee_cents||0)-(s.refund_amount_cents||0)-o,d=s.guest_count>0?(s.total_cents||0)/s.guest_count:0,c=!!s.checked_in_at,x=!!s.cancelled_at,f=s.status==="confirmed",N=s.status==="completed",A=s.status==="pending",B=s.affiliate_id?Math.round((s.total_cents||0)*.1):0;return{...s,lead_time_days:n,net_revenue_cents:m,revenue_per_pax_cents:d,is_checked_in:c,confirmed_at:f?s.created_at:null,completed_at:N?s.created_at:null,pending_at:A?s.created_at:null,checkin_rate:c?100:0,cancellation_rate:x?100:0,stripe_fee_cents:o,affiliate_payout_cents:B,operator_payout_cents:m-B}})}function ws(t,r){if(r.includeDetails||r.groupBy.length===0)return t.map((n,i)=>{const o={groupKey:"row",groupValue:n.booking_number||`#${i+1}`};return r.columns.forEach(m=>{const d=X.find(c=>c.key===m);d&&(o[m]=ks(n,d))}),o});const s=r.groupBy[0],a=Ze.find(n=>n.key===s);if(!a)return[];const l={};return t.forEach(n=>{const{value:i,label:o}=Ss(n,a),m=i??"(None)";l[m]||(l[m]=[]),l[m].push({...n,_groupLabel:o})}),Object.entries(l).map(([n,i])=>{const o={groupKey:s,groupValue:n,groupLabel:i[0]?._groupLabel||n};return r.columns.forEach(m=>{const d=X.find(c=>c.key===m);d&&(o[m]=be(i,d))}),o})}function Ss(t,r){const s=t[r.dbField];if(s==null)return{value:null,label:"(None)"};
47if(r.transform){const a=new Date(s);let l,n;switch(r.transform){case"week":l=v(a,"yyyy-'W'ww"),n=`Week ${v(a,"w, yyyy")}`;break;case"month":l=v(a,"yyyy-MM"),n=v(a,"MMMM yyyy");break;case"quarter":const i=Math.ceil((a.getMonth()+1)/3);l=`${a.getFullYear()}-Q${i}`,n=`Q${i} ${a.getFullYear()}`;break;case"year":l=v(a,"yyyy"),n=v(a,"yyyy");break;case"dow":l=v(a,"EEEE"),n=v(a,"EEEE");break;case"hour":l=v(a,"HH:00"),n=v(a,"h:00 a");break;default:l=v(a,"yyyy-MM-dd"),n=v(a,"MMM d, yyyy")}return{value:l,label:n}}switch(r.key){case"experience":return{value:t.experience_id,label:t.listings?.title||t.experience_id||"(Unknown)"};case"operator":return{value:t.operator_id,label:t.operators?.business_name||t.operator_id||"(Unknown)"};case"discount_code":return{value:t.discount_code_id,label:t.discount_codes?.code||t.discount_code_id||"(None)"};case"booking_status":return{value:s,label:{pending:"Pending",confirmed:"Confirmed",completed:"Completed",cancelled:"Cancelled"}[s]||s};case"payment_status":return{value:s,label:{pending:"Pending",paid:"Paid",refunded:"Refunded",failed:"Failed"}[s]||s};case"checkin_status":return{value:s?"checked_in":"not_checked_in",label:s?"Checked In":"Not Checked In"};case"payment_method":return{value:s||"unknown",label:s?s.charAt(0).toUpperCase()+s.slice(1):"(Unknown)"};default:return{value:String(s),label:String(s)}}}function ks(t,r){const s=t[r.field];return r.aggregation==="count"||r.aggregation==="countDistinct"?s!=null?1:0:typeof s=="number"?s:0}function be(t,r){const s=t.map(a=>{const l=a[r.field];return r.aggregation==="count"||r.aggregation==="countDistinct"?l!=null?1:0:typeof l=="number"?l:0});switch(r.aggregation){case"count":return s.reduce((i,o)=>i+o,0);case"countDistinct":return new Set(t.map(i=>i[r.field]).filter(Boolean)).size;case"sum":return s.reduce((i,o)=>i+o,0);case"avg":const l=s.filter(i=>i!==0);return l.length>0?l.reduce((i,o)=>i+o,0)/l.length:0;case"min":const n=s.filter(i=>i!==0);return n.length>0?Math.min(...n):0;case"max":return Math.max(...s);default:return 0}}function Cs(t,r){const s={};return r.forEach(a=>{const l=X.find(n=>n.key===a);l&&(s[a]=be(t,l))}),s}const Rs=[{value:"today",label:"Today"},{value:"yesterday",label:"Yesterday"},{value:"last7",label:"Last 7 Days"},{value:"last30",label:"Last 30 Days"},{value:"last90",label:"Last 90 Days"},{value:"thisMonth",label:"This Month"},{value:"lastMonth",label:"Last Month"},{value:"thisQuarter",label:"This Quarter"},{value:"lastQuarter",label:"Last Quarter"},{value:"thisYear",label:"This Year"}],Ts=[{value:"pending",label:"Pending"},{value:"confirmed",label:"Confirmed"},{value:"completed",label:"Completed"},{value:"cancelled",label:"Cancelled"}],Ls={dateRange:{preset:"last30"},statuses:[],experienceIds:[]},xe={reportType:"booking",filters:Ls,groupBy:["operator"],columns:["booking_count","pax_count","gross_revenue"],includeDetails:!1};function he({initialOperatorIds:t}){const[r,s]=b.useState(xe),[a,l]=b.useState(t||[]),[n,i]=b.useState(!1),[o,m]=b.useState([]),{start:d,end:c}=b.useMemo(()=>_e(r.filters),[r.filters]),{data:x}=as({operatorId:a.length===1?a[0]:"",startDate:v(d,"yyyy-MM-dd"),endDate:v(c,"yyyy-MM-dd"),reportType:"transactions",enabled:n&&a.length===1});b.useEffect(()=>{(async()=>{const j=await g.from("operators").select("id, business_name").eq("is_active",!0).order("business_name");!j.error&&j.data&&m(j.data)})()},[]);const f=bs({configuration:r,operatorIds:a.length>0?a:void 0,enabled:n,stripeData:a.length===1?x:null}),N=f.data,A=f.isLoading,B=f.refetch,Ne=b.useCallback(()=>{i(!0),B()},[B]),we=b.useCallback(u=>{s(j=>({...j,groupBy:u}))},[]),ae=b.useCallback(u=>{s(j=>({...j,columns:u}))},[]),Se=b.useCallback(u=>{s(j=>({...j,includeDetails:u}))},[]),ke=b.useCallback(()=>{s(xe),l([]),i(!1)},[]),Ce=u=>{const j=r.filters.statuses||[],E=j.includes(u)?j.filter(M=>M!==u):[...j,u];s(M=>({...M,filters:{...M.filters,statuses:E}}))},Re=u=>{l(j=>j.includes(u)?j.filter(E=>E!==u):[...j,u])},Te=b.useCallback(()=>{if(!N?.rows)return;const u=r.groupBy.length>0,E=[(u?["Group",...r.columns]:r.columns).join(","),...N.rows.map(P=>(u?[`"${P.groupLabel||P.groupValue}"`,...r.columns.map(G=>{const L=P[G];return typeof L=="number"?L:`"${L||""}"`})]:r.columns.map(G=>{const L=P[G];return typeof L=="number"?L:`"${L||""}"`})).join(","))].join(` 48`),M=new Blob([E],{type:"text/csv"}),re=URL.createObjectURL(M),$=document.createElement("a");$.href=re,$.download=`admin-report-${new Date().toISOString().split("T")[0]}.csv`,$.click(),URL.revokeObjectURL(re)},[N,r]);return e.jsxs("div",{className:"space-y-6",children:[e.jsxs("div",{className:"flex items-center justify-between flex-wrap gap-4",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsxs(D,{onClick:Ne,disabled:A,children:[e.jsx(Oe,{className:"h-4 w-4 mr-2"}),"Run Report"]}),e.jsxs(D,{variant:"outline",onClick:ke,children:[e.jsx(De,{className:"h-4 w-4 mr-2"}),"Reset"]})]}),e.jsxs("div",{className:"flex items-center gap-4",children:[e.jsxs(Ae,{value:r.
48includeDetails?"detailed":"summary",onValueChange:u=>Se(u==="detailed"),className:"flex items-center gap-4",children:[e.jsxs("div",{className:"flex items-center gap-1.5",children:[e.jsx(ne,{value:"summary",id:"admin-summary-mode"}),e.jsxs(q,{htmlFor:"admin-summary-mode",className:"text-sm cursor-pointer flex items-center gap-1",children:[e.jsx(rs,{className:"h-3.5 w-3.5"}),"Summary"]})]}),e.jsxs("div",{className:"flex items-center gap-1.5",children:[e.jsx(ne,{value:"detailed",id:"admin-detailed-mode"}),e.jsxs(q,{htmlFor:"admin-detailed-mode",className:"text-sm cursor-pointer flex items-center gap-1",children:[e.jsx(Me,{className:"h-3.5 w-3.5"}),"Detailed"]})]})]}),e.jsxs(D,{variant:"outline",onClick:Te,disabled:!N?.rows?.length,children:[e.jsx(Ie,{className:"h-4 w-4 mr-2"}),e.jsx("span",{className:"hidden sm:inline",children:"Export CSV"})]})]})]}),e.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-4 gap-6",children:[e.jsxs(h,{children:[e.jsx(S,{className:"pb-3",children:e.jsxs(k,{className:"text-base flex items-center gap-2",children:[e.jsx(ns,{className:"h-4 w-4"}),"Filters"]})}),e.jsx(p,{children:e.jsx(Be,{className:"h-[350px] pr-4",children:e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsxs(q,{className:"text-xs font-medium flex items-center gap-1",children:[e.jsx(pe,{className:"h-3 w-3"}),"Operators"]}),e.jsx("div",{className:"border rounded-md p-2 max-h-32 overflow-y-auto",children:e.jsx("div",{className:"space-y-1",children:o?.map(u=>e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(le,{id:`op-${u.id}`,checked:a.includes(u.id),onCheckedChange:()=>Re(u.id)}),e.jsx("label",{htmlFor:`op-${u.id}`,className:"text-sm cursor-pointer truncate",children:u.business_name})]},u.id))})}),e.jsx("p",{className:"text-xs text-muted-foreground",children:a.length===0?"All operators":`${a.length} selected`})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(q,{className:"text-xs font-medium",children:"Date Range"}),e.jsxs(W,{value:r.filters.dateRange.preset,onValueChange:u=>s(j=>({...j,filters:{...j.filters,dateRange:{preset:u}}})),children:[e.jsx(H,{className:"w-full",children:e.jsx(Y,{})}),e.jsx(Q,{children:Rs.map(u=>e.jsx(O,{value:u.value,children:u.label},u.value))})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(q,{className:"text-xs font-medium",children:"Booking Status"}),e.jsx("div",{className:"space-y-1",children:Ts.map(u=>e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(le,{id:`admin-status-${u.value}`,checked:(r.filters.statuses||[]).includes(u.value),onCheckedChange:()=>Ce(u.value)}),e.jsx("label",{htmlFor:`admin-status-${u.value}`,className:"text-sm cursor-pointer",children:u.label})]},u.value))})]})]})})})]}),e.jsxs(h,{children:[e.jsx(S,{className:"pb-3",children:e.jsx(k,{className:"text-base",children:"Group By"})}),e.jsx(p,{children:e.jsx(Je,{selected:r.groupBy,onChange:we})})]}),e.jsxs(h,{className:"lg:col-span-2",children:[e.jsx(S,{className:"pb-3",children:e.jsx(k,{className:"text-base",children:"Columns"})}),e.jsx(p,{children:e.jsxs(fe,{defaultValue:"booking",className:"w-full",children:[e.jsxs(je,{className:"w-full",children:[e.jsx(R,{value:"booking",className:"flex-1 text-xs",children:"Booking"}),e.jsx(R,{value:"sales",className:"flex-1 text-xs",children:"Sales"})]}),e.jsx(T,{value:"booking",className:"mt-3",children:e.jsx(ce,{columns:es,selected:r.columns,onChange:ae})}),e.jsx(T,{value:"sales",className:"mt-3",children:e.jsx(ce,{columns:ss,selected:r.columns,onChange:ae})})]})})]})]}),n&&e.jsxs(h,{children:[e.jsx(S,{children:e.jsxs(k,{className:"text-base",children:["Results",N&&e.jsxs("span",{className:"ml-2 font-normal text-muted-foreground text-sm",children:["(",N.totalRows," rows from ",N.rawCount," bookings)"]})]})}),e.jsx(p,{children:e.jsx(ts,{data:N,columns:r.columns,groupBy:r.groupBy,isLoading:A})})]})]})}function Os(t=30){const r=v(F(new Date,t-1),"yyyy-MM-dd");return w({queryKey:["admin-platform-overview",t],queryFn:async()=>{const{data:s,error:a}=await g.from("analytics_rollups_daily").select("views, bookings, revenue_cents, source_context").gte("rollup_date",r);if(a)throw a;const l=s||[],n=l.reduce((d,c)=>d+(c.views||0),0),i=l.reduce((d,c)=>d+(c.bookings||0),0),o=l.reduce((d,c)=>d+(c.revenue_cents||0),0),m={};return l.forEach(d=>{const c=d.source_context||"unknown";m[c]=(m[c]||0)+(d.views||0)}),{totalViews:n,totalBookings:i,totalRevenueCents:o,conversionRate:n>0?i/n*100:0,sourceBreakdown:m}},staleTime:6e4})}function Ds(t=30){const r=v(F(new Date,t-1),"yyyy-MM-dd");return w({queryKey:["admin-operator-rankings",t],queryFn:async()=>{const{data:s,error:a}=await g.from("analytics_rollups_daily").select("operator_id, views, bookings, revenue_cents").gte("rollup_date",r);if(a)throw a;const l={};
48(s||[]).forEach(c=>{l[c.operator_id]||(l[c.operator_id]={views:0,bookings:0,revenue_cents:0}),l[c.operator_id].views+=c.views||0,l[c.operator_id].bookings+=c.bookings||0,l[c.operator_id].revenue_cents+=c.revenue_cents||0});const n=Object.keys(l);if(n.length===0)return[];const{data:i}=await g.from("operators").select("id, business_name").in("id",n),o={};(i||[]).forEach(c=>{o[c.id]=c.business_name});const{data:m}=await g.from("operator_analytics_settings").select("operator_id, tier, performance_score").in("operator_id",n),d={};return(m||[]).forEach(c=>{d[c.operator_id]={tier:c.tier||"basic",score:c.performance_score||0}}),Object.entries(l).map(([c,x])=>({operator_id:c,business_name:o[c]||"Unknown",views:x.views,bookings:x.bookings,revenue_cents:x.revenue_cents,conversion_rate:x.views>0?x.bookings/x.views*100:0,performance_score:d[c]?.score||0,tier:d[c]?.tier||"basic"})).sort((c,x)=>x.revenue_cents-c.revenue_cents)},staleTime:6e4})}function As(){return w({queryKey:["admin-tier-distribution"],queryFn:async()=>{const{data:t,error:r}=await g.from("operator_analytics_settings").select("tier, paywall_override");if(r)throw r;const s=t||[];return{basic:s.filter(a=>(a.tier||"basic")==="basic").length,advanced:s.filter(a=>a.tier==="advanced").length,ai:s.filter(a=>a.tier==="ai").length,overrides:s.filter(a=>a.paywall_override).length}},staleTime:3e5})}function Ms(){return w({queryKey:["admin-embed-adoption"],queryFn:async()=>{const{data:t,error:r}=await g.from("analytics_rollups_daily").select("operator_id").eq("source_context","operator_site").gt("views",0);if(r)throw r;const s=new Set((t||[]).map(l=>l.operator_id).filter(Boolean)),{count:a}=await g.from("operators").select("*",{count:"exact",head:!0}).eq("status","approved");return{sdkInstalledCount:s.size,totalOperators:a||0,adoptionRate:(a||0)>0?s.size/(a||1)*100:0}},staleTime:3e5})}function Is(){return w({queryKey:["admin-ai-impact"],queryFn:async()=>{const{data:t,error:r}=await g.from("ai_insights").select("status, created_at");if(r)throw r;const s=t||[],a=F(new Date,7),l=s.filter(n=>new Date(n.created_at)>=a);return{total:s.length,active:s.filter(n=>n.status==="active").length,dismissed:s.filter(n=>n.status==="dismissed").length,thisWeek:l.length}},staleTime:3e5})}function Bs(t=30){const r=v(F(new Date,t-1),"yyyy-MM-dd");return w({queryKey:["admin-revenue-trend",t],queryFn:async()=>{const{data:s,error:a}=await g.from("analytics_rollups_daily").select("rollup_date, revenue_cents, bookings").gte("rollup_date",r).order("rollup_date",{ascending:!0});if(a)throw a;const l={};return(s||[]).forEach(n=>{l[n.rollup_date]||(l[n.rollup_date]={revenue_cents:0,bookings:0}),l[n.rollup_date].revenue_cents+=n.revenue_cents||0,l[n.rollup_date].bookings+=n.bookings||0}),Object.entries(l).map(([n,i])=>({date:n,revenue:i.revenue_cents/100,bookings:i.bookings}))},staleTime:6e4})}const Es={marketplace:"Marketplace",embed:"Embed Widget",referral:"Referral",operator_site:"Operator Site",unknown:"Other"};function qs({days:t}){const{data:r,isLoading:s}=Os(t),{data:a}=Ms(),{data:l}=Is(),{data:n}=Bs(t);if(s)return e.jsx("div",{className:"grid grid-cols-2 lg:grid-cols-4 gap-4",children:[...Array(4)].map((o,m)=>e.jsx(h,{children:e.jsx(p,{className:"pt-6",children:e.jsx("div",{className:"h-20 bg-muted animate-pulse rounded"})})},m))});if(!r)return null;const i=Object.entries(r.sourceBreakdown).map(([o,m])=>({name:Es[o]||o,views:m})).sort((o,m)=>m.views-o.views);return e.jsxs("div",{className:"space-y-6",children:[e.jsxs("div",{className:"grid grid-cols-2 lg:grid-cols-6 gap-3",children:[e.jsx(h,{children:e.jsxs(p,{className:"pt-4 pb-4",children:[e.jsxs("div",{className:"flex items-center gap-2 text-muted-foreground text-sm mb-1",children:[e.jsx(Ee,{className:"h-4 w-4"})," Total Views"]}),e.jsx("p",{className:"text-2xl font-bold",children:r.totalViews.toLocaleString()})]})}),e.jsx(h,{children:e.jsxs(p,{className:"pt-4 pb-4",children:[e.jsxs("div",{className:"flex items-center gap-2 text-muted-foreground text-sm mb-1",children:[e.jsx(qe,{className:"h-4 w-4"})," Total Bookings"]}),e.jsx("p",{className:"text-2xl font-bold",children:r.totalBookings.toLocaleStr
48ing()})]})}),e.jsx(h,{children:e.jsxs(p,{className:"pt-4 pb-4",children:[e.jsxs("div",{className:"flex items-center gap-2 text-muted-foreground text-sm mb-1",children:[e.jsx(K,{className:"h-4 w-4"})," Revenue"]}),e.jsxs("p",{className:"text-2xl font-bold",children:["$",(r.totalRevenueCents/100).toLocaleString(void 0,{minimumFractionDigits:0})]})]})}),e.jsx(h,{children:e.jsxs(p,{className:"pt-4 pb-4",children:[e.jsxs("div",{className:"flex items-center gap-2 text-muted-foreground text-sm mb-1",children:[e.jsx(Fe,{className:"h-4 w-4"})," Conversion Rate"]}),e.jsxs("p",{className:"text-2xl font-bold",children:[r.conversionRate.toFixed(2),"%"]})]})}),e.jsx(h,{children:e.jsxs(p,{className:"pt-4 pb-4",children:[e.jsxs("div",{className:"flex items-center gap-2 text-muted-foreground text-sm mb-1",children:[e.jsx(ls,{className:"h-4 w-4"})," SDK Adoption"]}),e.jsx("p",{className:"text-2xl font-bold",children:a?.sdkInstalledCount??0}),e.jsxs("p",{className:"text-xs text-muted-foreground",children:["of ",a?.totalOperators??0," operators (",(a?.adoptionRate??0).toFixed(0),"%)"]})]})}),e.jsx(h,{children:e.jsxs(p,{className:"pt-4 pb-4",children:[e.jsxs("div",{className:"flex items-center gap-2 text-muted-foreground text-sm mb-1",children:[e.jsx(Pe,{className:"h-4 w-4"})," AI Insights"]}),e.jsx("p",{className:"text-2xl font-bold",children:l?.active??0}),e.jsxs("p",{className:"text-xs text-muted-foreground",children:[l?.thisWeek??0," this week · ",l?.total??0," total"]})]})})]}),i.length>0&&e.jsxs(h,{children:[e.jsx(S,{children:e.jsxs(k,{className:"text-base flex items-center gap-2",children:[e.jsx(Ve,{className:"h-4 w-4"})," Traffic by Source (Platform-Wide)"]})}),e.jsx(p,{children:e.jsx(Z,{width:"100%",height:250,children:e.jsxs(fs,{data:i,layout:"vertical",children:[e.jsx(me,{strokeDasharray:"3 3",className:"stroke-muted"}),e.jsx(oe,{type:"number",className:"fill-muted-foreground"}),e.jsx(de,{dataKey:"name",type:"category",width:120,className:"fill-muted-foreground",tick:{fontSize:12}}),e.jsx(J,{contentStyle:{background:"hsl(var(--popover))",border:"1px solid hsl(var(--border))",borderRadius:8}}),e.jsx(xs,{dataKey:"views",fill:"hsl(var(--primary))",radius:[0,4,4,0]})]})})})]}),n&&n.length>0&&e.jsxs(h,{children:[e.jsx(S,{children:e.jsxs(k,{className:"text-base flex items-center gap-2",children:[e.jsx(K,{className:"h-4 w-4"})," Revenue Trend"]})}),e.jsx(p,{children:e.jsx(Z,{width:"100%",height:250,children:e.jsxs(js,{data:n,children:[e.jsx(me,{strokeDasharray:"3 3",className:"stroke-muted"}),e.jsx(oe,{dataKey:"date",className:"fill-muted-foreground",tick:{fontSize:11}}),e.jsx(de,{className:"fill-muted-foreground",tick:{fontSize:11}}),e.jsx(J,{contentStyle:{background:"hsl(var(--popover))",border:"1px solid hsl(var(--border))",borderRadius:8}}),e.jsx(ue,{type:"monotone",dataKey:"revenue",stroke:"hsl(var(--primary))",strokeWidth:2,dot:!1,name:"Revenue ($)"}),e.jsx(ue,{type:"monotone",dataKey:"bookings",stroke:"hsl(var(--muted-foreground))",strokeWidth:1.5,dot:!1,name:"Bookings"})]})})})]})]})}function Fs({days:t}){const{data:r,isLoading:s}=Ds(t),[a,l]=b.useState("revenue_cents"),[n,i]=b.useState(!1),o=c=>{a===c?i(!n):(l(c),i(!1))},m=[...r||[]].sort((c,x)=>{const f=c[a]-x[a];return n?f:-f});if(s)return e.jsx(h,{children:e.jsx(p,{className:"pt-6",children:e.jsx("div",{className:"h-64 bg-muted animate-pulse rounded"})})});const d=c=>{switch(c){case"ai":return"default";case"advanced":return"secondary";default:return"outline"}};return e.jsxs(h,{children:[e.jsx(S,{children:e.jsxs(k,{className:"text-base flex items-center gap-2",children:[e.jsx(Ue,{className:"h-4 w-4"})," Operator Performance Leaderboard"]})}),e.jsx(p,{children:m.length>0?e.jsx("div",{className:"overflow-x-auto",children:e.jsxs(ee,{children:[e.jsx(se,{children:e.jsxs(I,{children:[e.jsx(_,{className:"w-8",children:"#"}),e.jsx(_,{children:"Operator"}),e.jsx(_,{children:"Tier"}),e.jsx(_,{className:"text-right",children:e.jsxs(D,{variant:"ghost",size:"sm",className:"h-auto p-0 font-medium",onClick:()=>o("views"),children:["Views ",e.jsx(V,{className:"h-3 w-3 ml-1"})]})}),e.jsx(_,{className:"text-right",children:e.jsxs(D,{variant:"ghost",size:"sm",className:"h-auto p-0 font-medium",onClick:()=>o("conversion_rate"),children:["Conversion ",e.jsx(V,{className:"h-3 w-3 ml-1"})]})}),e.jsx(_,{className:"text-right",children:e.jsxs(D,{variant:"ghost",size:"sm",className:"h-auto p-0 font-medium",onClick:()=>o("revenue_cents"),children:["Revenue ",e.jsx(V,{className:"h-3 w-3 ml-1"})]})}),e.jsx(_,{className:"text-right",children:e.jsxs(D,{variant:"ghost",size:"sm",className:"h-auto p-0 font-medium",onClick:()=>o("performance_score"),children:["Score ",e.jsx(V,{className:"h-3 w-3 ml-1"})]})})]})}),e.jsx(te,{children:m.slice(0,25).map((c,x)=>e.jsxs(I,{children:[e.jsx(y,{className:"font-medium text-muted-foreground",children:x+1}),e.jsx(y,{className:"font-medium max-w-[200px] truncate",children:c.business_name}),e.jsx(y,{children:e.jsx(C,{variant:d(c.tier),children:c.tier})}
48),e.jsx(y,{className:"text-right",children:c.views.toLocaleString()}),e.jsx(y,{className:"text-right",children:e.jsxs(C,{variant:c.conversion_rate>3?"default":"secondary",children:[c.conversion_rate.toFixed(1),"%"]})}),e.jsxs(y,{className:"text-right",children:["$",(c.revenue_cents/100).toLocaleString(void 0,{minimumFractionDigits:0})]}),e.jsx(y,{className:"text-right",children:e.jsx("span",{className:c.performance_score>=60?"text-green-600 font-semibold":c.performance_score>=30?"text-amber-600":"text-muted-foreground",children:c.performance_score})})]},c.operator_id))})]})}):e.jsx("p",{className:"text-center text-muted-foreground py-8",children:"No operator data available"})})]})}const z={basic:"hsl(var(--muted-foreground))",advanced:"hsl(var(--primary))",ai:"hsl(38, 92%, 50%)"};function Ps(){const{data:t,isLoading:r}=As();if(r)return e.jsx(h,{children:e.jsx(p,{className:"pt-6",children:e.jsx("div",{className:"h-48 bg-muted animate-pulse rounded"})})});if(!t)return null;const s=t.basic+t.advanced+t.ai,a=[{name:"Basic",value:t.basic,fill:z.basic},{name:"Advanced",value:t.advanced,fill:z.advanced},{name:"AI Pro",value:t.ai,fill:z.ai}].filter(l=>l.value>0);return e.jsxs(h,{children:[e.jsx(S,{children:e.jsxs(k,{className:"text-base flex items-center gap-2",children:[e.jsx(ge,{className:"h-4 w-4"})," Subscription Distribution"]})}),e.jsx(p,{children:e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-6",children:[e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx("span",{className:"text-sm",children:"Basic (Free)"}),e.jsx(C,{variant:"outline",children:t.basic})]}),e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx("span",{className:"text-sm",children:"Advanced"}),e.jsx(C,{variant:"secondary",children:t.advanced})]}),e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx("span",{className:"text-sm",children:"AI Pro"}),e.jsx(C,{children:t.ai})]}),e.jsxs("div",{className:"border-t pt-3 flex items-center justify-between",children:[e.jsx("span",{className:"text-sm font-medium",children:"Total"}),e.jsx("span",{className:"font-bold",children:s})]}),t.overrides>0&&e.jsxs("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[e.jsx(Ke,{className:"h-3 w-3"}),t.overrides," operator",t.overrides!==1?"s":""," with paywall override"]})]}),a.length>0&&e.jsx(Z,{width:"100%",height:200,children:e.jsxs(gs,{children:[e.jsx(vs,{data:a,dataKey:"value",nameKey:"name",cx:"50%",cy:"50%",outerRadius:70,label:({percent:l})=>`${(l*100).toFixed(0)}%`,children:a.map((l,n)=>e.jsx(hs,{fill:l.fill},n))}),e.jsx(J,{}),e.jsx(ps,{})]})})]})})]})}function Vs({days:t}){const{data:r,isLoading:s}=w({queryKey:["admin-cohort-summary",t],queryFn:async()=>{const a=v(F(new Date,t),"yyyy-MM-dd"),{data:l,error:n}=await g.from("revenue_cohorts").select("customer_id, operator_id, repeat_booking_count, total_revenue_lifetime_cents, acquisition_source").gte("first_booking_at",a);if(n)throw n;const i=l||[],o=i.length,m=i.filter(f=>(f.repeat_booking_count||0)>=2).length,d=o>0?m/o*100:0,c=o>0?i.reduce((f,N)=>f+(N.total_revenue_lifetime_cents||0),0)/o/100:0,x=new Set(i.map(f=>f.operator_id)).size;return{totalCustomers:o,repeatRate:d,avgLTV:c,uniqueOperators:x}},staleTime:12e4});return s?e.jsx(h,{children:e.jsx(p,{className:"py-6",children:e.jsx("div",{className:"animate-pulse h-20 bg-muted rounded"})})}):e.jsxs(h,{children:[e.jsx(S,{children:e.jsxs(k,{className:"text-lg flex items-center gap-2",children:[e.jsx(ge,{className:"h-5 w-5"}),"Platform Cohort Summary"]})}),e.jsx(p,{children:e.jsxs("div",{className:"grid grid-cols-2 md:grid-cols-4 gap-4",children:[e.jsxs("div",{children:[e.jsx("p",{className:"text-sm text-muted-foreground",children:"Total Customers"}),e.jsx("p",{className:"text-2xl font-bold",children:r?.totalCustomers?.toLocaleString()||0})]}),e.jsxs("div",{children:[e.jsx("p",{className:"text-sm text-muted-foreground",children:"Repeat Rate"}),e.jsxs("p",{className:"text-2xl font-bold flex items-center gap-1",children:[e.jsx(is,{className:"h-4 w-4 text-muted-foreground"}),r?.repeatRate?.toFixed(1)||0,"%"]})]}),e.jsxs("div",{children:[e.jsx("p",{className:"text-sm text-muted-foreground",children:"Avg Customer LTV"}),e.jsxs("p",{className:"text-2xl font-bold flex items-center gap-1",children:[e.jsx(K,{className:"h-4 w-4 text-muted-foreground"}),r?.avgLTV?.toFixed(0)||0]})]}),e.jsxs("div",{children:[e.jsx("p",{className:"text-sm text-muted-foreground",children:"Operators with Cohorts"}),e.jsx("p",{className:"text-2xl font-bold",children:r?.uniqueOperators||0})]})]})})]})}function Us(){const{data:t,isLoading:r}=w({queryKey:["admin-attribution-overview"],queryFn:async()=>{const{data:s}=await g.from("analytics_attribution_settings").select("operator_id, attribution_model, attribution_window_hours"),a=(s||[]).map(d=>d.operator_id),{data:l}=await g.from("operators").select("id, business_name").in("id",a.length>0?a:["__none__"]),n={};
48(l||[]).forEach(d=>{n[d.id]=d.business_name});const{count:i}=await g.from("operators").select("*",{count:"exact",head:!0}).eq("status","approved"),o={last_touch:0,first_touch:0,linear:0,time_decay:0};(s||[]).forEach(d=>{o[d.attribution_model]=(o[d.attribution_model]||0)+1});const m=(s||[]).filter(d=>d.attribution_model!=="last_touch").map(d=>({operatorId:d.operator_id,businessName:n[d.operator_id]||"Unknown",model:d.attribution_model,windowHours:d.attribution_window_hours}));return{totalOperators:i||0,configuredCount:s?.length||0,modelCounts:o,customModelOperators:m}}});return r?e.jsx(h,{children:e.jsx(p,{className:"pt-6",children:e.jsx("div",{className:"h-48 bg-muted animate-pulse rounded"})})}):e.jsxs(h,{children:[e.jsx(S,{children:e.jsxs(k,{className:"text-base flex items-center gap-2",children:[e.jsx(cs,{className:"h-4 w-4"})," Attribution Model Oversight"]})}),e.jsxs(p,{className:"space-y-4",children:[e.jsx("div",{className:"grid grid-cols-2 md:grid-cols-4 gap-3",children:Object.entries(t?.modelCounts||{}).map(([s,a])=>e.jsxs("div",{className:"p-3 rounded-lg border bg-muted/30",children:[e.jsx("p",{className:"text-xs text-muted-foreground capitalize",children:s.replace("_"," ")}),e.jsx("p",{className:"text-xl font-bold",children:a}),e.jsx("p",{className:"text-[10px] text-muted-foreground",children:"operators"})]},s))}),e.jsxs("p",{className:"text-xs text-muted-foreground",children:[t?.configuredCount," of ",t?.totalOperators," operators have configured attribution. Remaining use the default (Last Touch)."]}),(t?.customModelOperators?.length||0)>0&&e.jsxs(e.Fragment,{children:[e.jsx("p",{className:"text-sm font-medium mt-4",children:"Operators Using Custom Models"}),e.jsxs(ee,{children:[e.jsx(se,{children:e.jsxs(I,{children:[e.jsx(_,{children:"Operator"}),e.jsx(_,{children:"Model"}),e.jsx(_,{className:"text-right",children:"Window (hours)"})]})}),e.jsx(te,{children:t.customModelOperators.map(s=>e.jsxs(I,{children:[e.jsx(y,{className:"font-medium",children:s.businessName}),e.jsx(y,{children:e.jsx(C,{variant:"outline",className:"capitalize",children:s.model.replace("_"," ")})}),e.jsxs(y,{className:"text-right",children:[s.windowHours,"h"]})]},s.operatorId))})]})]})]})]})}function Ks(){const{data:t,isLoading:r}=w({queryKey:["admin-significance-log"],queryFn:async()=>{const{data:s}=await g.from("ai_insights").select("id, title, insight_type, confidence, evidence, status, created_at, operator_id").order("created_at",{ascending:!1}).limit(50),a=[...new Set((s||[]).map(x=>x.operator_id))],{data:l}=await g.from("operators").select("id, business_name").in("id",a.length>0?a:["__none__"]),n={};(l||[]).forEach(x=>{n[x.id]=x.business_name});const i=(s||[]).map(x=>{const f=x.evidence;return{...x,businessName:n[x.operator_id]||"Unknown",pValue:f?.p_value??null,isSignificant:f?.is_significant??null,sampleSize:f?.current_views??null}}),o=i.filter(x=>x.pValue!==null),m=o.filter(x=>x.isSignificant).length,d=o.length>0?((o.length-m)/o.length*100).toFixed(0):"0",c=o.filter(x=>(x.sampleSize||0)<30).length;return{insights:i,totalInsights:i.length,withStatsCount:o.length,significantCount:m,falsePositiveRate:d,lowSampleCount:c}}});return r?e.jsx(h,{children:e.jsx(p,{className:"pt-6",children:e.jsx("div",{className:"h-48 bg-muted animate-pulse rounded"})})}):e.jsxs(h,{children:[e.jsx(S,{children:e.jsxs(k,{className:"text-base flex items-center gap-2",children:[e.jsx(ye,{className:"h-4 w-4"})," Statistical Integrity Monitor"]})}),e.jsxs(p,{className:"space-y-4",children:[e.jsxs("div",{className:"grid grid-cols-2 md:grid-cols-4 gap-3",children:[e.jsxs("div",{className:"p-3 rounded-lg border bg-muted/30",children:[e.jsx("p",{className:"text-xs text-muted-foreground",children:"Total AI Insights"}),e.jsx("p",{className:"text-xl font-bold",children:t?.totalInsights})]}),e.jsxs("div",{className:"p-3 rounded-lg border bg-muted/30",children:[e.jsx("p",{className:"text-xs text-muted-foreground",children:"With Statistics"}),e.jsx("p",{className:"text-xl font-bold",children:t?.withStatsCount})]}),e.jsxs("div",{className:"p-3 rounded-lg border bg-muted/30",children:[e.jsx("p",{className:"text-xs text-muted-foreground",children:"Statistically Significant"}),e.jsx("p",{className:"text-xl font-bold text-green-600",children:t?.significantCount})]}),e.jsxs("div",{className:"p-3 rounded-lg border bg-muted/30",children:[e.jsx("p",{className:"text-xs text-muted-foreground",children:"Low Sample Warnings"}),e.jsx("p",{className:"text-xl font-bold text-amber-500",children:t?.lowSampleCount})]})]}),(t?.insights?.length||0)>0&&e.jsxs(ee,{children:[e.jsx(se,{children:e.jsxs(I,{children:[e.jsx(_,{children:"Operator"}),e.jsx(_,{children:"Insight"}),e.jsx(_,{children:"Type"}),e.jsx(_,{className:"text-right",children:"p-value"}),e.jsx(_,{children:"Significant"}),e.jsx(_,{children:"Status"}),e.jsx(_,{children:"Date"})]})}),e.jsx(te,{children:t.insights.slice(0,20).map(s=>e.jsxs(I,{children:[e.jsx(y,{className:"text-sm",children:s.businessName}),e.jsx(y,{className:"text-sm max-w-[200px] truncate",children:s.title}),e.jsx(y,{children:e.jsx(C,{variant:"outline",className:"text-[10px]",children:s.insight_type})}),e.jsx(y,{className:"text-right font-mono text-xs",children:s.pValue!==null?s.pValue:"â"}),e.jsx(y,{children:s.isSignificant===!0?e.jsx($e,{className:"h-4 w-4 text-green-500"}):s.isSignificant===!1?e.jsx(Ge,{className:"h-4 w-4 text-amber-400"}):e.jsx("span",{className:"text-xs text-muted-foreground",children:"N/A"})}),e.jsx(y,{children:e.jsx(C,{variant:s.status==="active"?"default":"secondary",className:"text-[10px]",children:s.status})}),e.jsx(y,{className:"text-xs text-muted-foreground",children:v(new Date(s.created_at),"MMM d")})]},s.id))})]})]})]})}function $s(){const{data:t,isLoading:r}=w({queryKey:["admin-saved-reports"],queryFn:async()=>{const{data:s,error:a}=await g.from("saved_reports").select(` 49 *, 50 operators ( 51 id, 52 business_name 53 ) 54 `).order("updated_at",{ascending:!1});if(a)throw a;return s}});return r?e.jsx("div",{className:"space-y-3",children:[1,2,3].map(s=>e.jsx(h,{children:e.jsx(p,{className:"py-4",children:e.jsx("div",{className:"animate-pulse h-12 bg-muted rounded"})})},s))}):!t||t.length===0?e.jsx(h,{children:e.jsxs(p,{className:"py-12 text-center",children:[e.jsx(ve,{className:"h-12 w-12 mx-auto mb-4 text-muted-foreground opacity-50"}),e.jsx("p",{className:"text-muted-foreground",children:"No saved reports"})]})}):e.jsx("div",{className:"space-y-3",children:t.map(s=>e.jsx(h,{children:e.jsx(p,{className:"py-4",children:e.jsx("div",{className:"flex items-center justify-between",children:e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("h3",{className:"font-medium",children:s.name}),s.is_template&&e.jsx(C,{variant:"secondary",children:"Template"}),e.jsx(C,{variant:"outline",children:s.report_type})]}),s.operators?.business_name&&e.jsx("p",{className:"text-sm text-muted-foreground mt-1",children:s.operators.business_name})]})})})},s.id))})}function Gs({days:t}){const{data:r,isLoading:s}=w({queryKey:["adminProductRevenue",t],queryFn:async()=>{const l=new Date(Date.now()-t*864e5).toISOString(),{data:n,error:i}=await g.from("product_orders").select("subtotal_cents, tax_cents, platform_fee_cents, total_cents, refunded_amount_cents, status, created_at").gte("created_at",l).in("status",["succeeded","partially_refunded","refunded"]);if(i)throw i;return(n||[]).reduce((m,d)=>(m.orders+=1,m.subtotal+=d.subtotal_cents||0,m.tax+=d.tax_cents||0,m.fee+=d.platform_fee_cents||0,m.gross+=d.total_cents||0,m.refunds+=d.refunded_amount_cents||0,m),{orders:0,subtotal:0,tax:0,fee:0,gross:0,refunds:0})},staleTime:6e4}),a=l=>
54(l/100).toLocaleString("en-US",{style:"currency",currency:"USD"});return e.jsxs(h,{children:[e.jsx(S,{className:"pb-3",children:e.jsxs(k,{className:"flex items-center gap-2 text-base",children:[e.jsx(ie,{className:"h-4 w-4 text-emerald-600"}),"Products (POS) â Last ",t," days"]})}),e.jsx(p,{children:s||!r?e.jsx(ze,{className:"h-20 w-full"}):e.jsxs("div",{className:"grid grid-cols-2 sm:grid-cols-4 gap-4",children:[e.jsx(U,{icon:e.jsx(_s,{className:"h-4 w-4"}),label:"Orders",value:String(r.orders)}),e.jsx(U,{icon:e.jsx(K,{className:"h-4 w-4"}),label:"Gross sales",value:a(r.gross)}),e.jsx(U,{icon:e.jsx(ie,{className:"h-4 w-4 text-emerald-600"}),label:"Platform service charge",value:a(r.fee),accent:!0}),e.jsx(U,{icon:e.jsx(ys,{className:"h-4 w-4"}),label:"Refunds (fees retained)",value:a(r.refunds)})]})})]})}function U({icon:t,label:r,value:s,accent:a}){return e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center gap-1.5 text-xs text-muted-foreground",children:[t,r]}),e.jsx("div",{className:`text-xl font-bold mt-1 ${a?"text-emerald-700":""}`,children:s})]})}function wt(){const[t,r]=b.useState("all"),[s,a]=b.useState("30"),{data:l}=w({queryKey:["all-operators-list"],queryFn:async()=>{const{data:n,error:i}=await g.from("operators").select("id, business_name").eq("status","approved").order("business_name");if(i)throw i;return n}});return e.jsx(Xe,{title:"Platform Reports",subtitle:"Analytics and insights across all operators",children:e.jsxs("div",{className:"p-6 space-y-6",children:[e.jsx(h,{children:e.jsx(p,{className:"py-4",children:e.jsxs("div",{className:"flex items-center gap-4",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(pe,{className:"h-4 w-4 text-muted-foreground"}),e.jsx("span",{className:"text-sm font-medium",children:"Operator:"})]}),e.jsxs(W,{value:t,onValueChange:r,children:[e.jsx(H,{className:"w-64",children:e.jsx(Y,{placeholder:"Select operator"})}),e.jsxs(Q,{children:[e.jsx(O,{value:"all",children:e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("span",{children:"All Operators"}),e.jsx(C,{variant:"secondary",className:"ml-1",children:"Platform"})]})}),l?.map(n=>e.jsx(O,{value:n.id,children:n.business_name},n.id))]})]}),e.jsxs("div",{className:"ml-auto flex items-center gap-2",children:[e.jsx("span",{className:"text-sm text-muted-foreground",children:"Period:"}),e.jsxs(W,{value:s,onValueChange:a,children:[e.jsx(H,{className:"w-36",children:e.jsx(Y,{})}),e.jsxs(Q,{children:[e.jsx(O,{value:"7",children:"Last 7 days"}),e.jsx(O,{value:"30",children:"Last 30 days"}),e.jsx(O,{value:"90",children:"Last 90 days"}),e.jsx(O,{value:"365",children:"Last year"})]})]})]})]})})}),e.jsxs(fe,{defaultValue:"traffic",children:[e.jsxs(je,{className:"flex-wrap",children:[e.jsxs(R,{value:"traffic",className:"gap-2",children:[e.jsx(We,{className:"h-4 w-4"}),"Traffic Intelligence"]}),e.jsxs(R,{value:"governance",className:"gap-2",children:[e.jsx(ye,{className:"h-4 w-4"}),"Governance"]}),e.jsxs(R,{value:"overview",className:"gap-2",children:[e.jsx(He,{className:"h-4 w-4"}),"Revenue & Bookings"]}),e.jsxs(R,{value:"builder",className:"gap-2",children:[e.jsx(Ye,{className:"h-4 w-4"}),"Report Builder"]}),e.jsxs(R,{value:"affiliate",className:"gap-2",children:[e.jsx(Qe,{className:"h-4 w-4"}),"Affiliate"]}),e.jsxs(R,{value:"saved",className:"gap-2",children:[e.jsx(ve,{className:"h-4 w-4"}),"Saved Reports"]})]}),e.jsxs(T,{value:"traffic",className:"mt-6 space-y-6",children:[e.jsx(Gs,{days:parseInt(s)}),e.jsx(qs,{days:parseInt(s)}),e.jsx(Fs,{days:parseInt(s)}),e.jsx(os,{days:parseInt(s)}),e.jsx(Vs,{days:parseInt(s)}),e.jsx(Ps,{})]}),e.jsxs(T,{value:"governance",className:"mt-6 space-y-6",children:[e.jsx(Us,{}),e.jsx(Ks,{})]}),e.jsx(T,{value:"overview",className:"mt-6 space-y-6",children:t==="all"?e.jsxs(e.Fragment,{children:[e.jsx(ds,{days:parseInt(s)}),e.jsx(ms,{days:parseInt(s)})]}):e.jsx(he,{initialOperatorIds:[t]})}),e.jsx(T,{value:"builder",className:"mt-6",children:e.jsx(he,{initialOperatorIds:t==="all"?void 0:[t]})}),e.jsx(T,{value:"affiliate",className:"mt-6 space-y-6",children:e.jsx(us,{days:parseInt(s)})}),e.jsx(T,{value:"saved",className:"mt-6",children:e.jsx($s,{})})]})]})})}export{wt 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.