1import{k as Te,r as R,c as u,_ as Xe,y as n,C as b,D as i,Q as h,z as m,K as f,G as $,H as P,L as Z,P as we,B as Ve,F as Ze,A as et,J as k,w as fe,u as t,N as qe,i as Oe,V as tt,a4 as at}from"./vendor-misc-5pJBpqhN.js";import{P as ot}from"./PageFrame-CmNWALAg.js";import{C as Ce}from"./ChromeCard-DkvfllPh.js";import{C as se}from"./ChromeButton-DmiFifbd.js";import{S as Qe}from"./SectionHeader-60mU8zeF.js";import{M as nt}from"./MetricGrid-DMaQt6lc.js";import{a$ as rt,k as X,_ as Fe,f as lt,aG as st,b0 as it,b1 as ut,b2 as ct,b3 as dt,b4 as mt,b5 as ft,b6 as pt}from"./index-BNPflmqD.js";import{f as ke,a as Ge,b as vt}from"./format-W5H20hG1.js";import{D as gt}from"./DataPageToolbar-CgUiuW-1.js";import{A as Ue}from"./AsyncState-C1wY1NSf.js";import{E as De}from"./EmptyState-HBFSUaTT.js";import{K as ht}from"./KpiStrip-BFft7DiM.js";import{M as j}from"./MasterDataTable-PTWiW2Qq.js";import{C as q}from"./CollapsibleSection-AKD5kywU.js";import{K as bt}from"./KeyValueGrid-NDsmIuoC.js";import{f as Je,I as yt}from"./creatorFieldHelp-BrZsjpkG.js";import{M as _t}from"./Modal-B1nPE52m.js";import{u as kt}from"./useAgencyPermissions-B_HoLjuX.js";import{u as wt}from"./useAgencyLiveFetch-Bl_pfbMN.js";import{g as Ct,u as Rt,f as At}from"./vendor-vue-BIDZeepx.js";import{e as Bt}from"./useAgencyRoster-CM0oBPCV.js";import"./FieldLabel-DcFbp3Rs.js";import"./vendor-tanstack-B6ELLr_Q.js";import"./vendor-sentry-84cD2ryj.js";import"./vendor-utils-CxkvrZ9U.js";import"./PageToolbar-C0IR3MXo.js";import"./TimeframePills-C882UVAW.js";import"./DataTable-DiOue6-9.js";import"./useBreakpoint-DOQrj9xp.js";import"./breakpoints-Cr7fi6TV.js";import"./arrow-up-8FIemuBW.js";import"./chevron-right-DB3KAVqC.js";import"./useLiveFetch-BwWvTjVn.js";const $t={key:0,class:"forecast-state"},St={key:1,class:"forecast-state forecast-gate"},It={key:2,class:"forecast-state forecast-error"},xt={key:3,class:"forecast-state"},Mt=["aria-label"],Nt=["title"],Pt={class:"chart__label"},Et={class:"chart__val"},Lt=Te({__name:"AgencyPortfolioForecastCard",props:{monthsAhead:{default:3}},setup(c){const C=c,A=R(null),T=R(!0),y=R(null),S=R(!1),p=u(()=>{var l;return((l=A.value)==null?void 0:l.portfolio_forecast)??[]}),B=u(()=>p.value.some(l=>Number(l)>0)),D=u(()=>{var l,s;return Math.max(1,...p.value.map(_=>Number(_)||0),...(((s=(l=A.value)==null?void 0:l.confidence_interval)==null?void 0:s.upper)??[]).map(_=>Number(_)||0))}),G=u(()=>{const l=A.value;if(!l)return[];const s=p.value.reduce((M,L)=>M+(Number(L)||0),0),_=l.model_confidence!=null?`${Math.round(l.model_confidence*100)}%`:"â";return[{id:"total",label:`Next ${l.months_ahead}mo (projected)`,value:ke(s)},{id:"creators",label:"Creators forecasted",value:`${l.forecasted_creator_count} / ${l.creator_count}`},{id:"confidence",label:"Avg. model confidence",value:_}]}),I=u(()=>`Projected monthly roster revenue for the next ${p.value.length} months.`);function x(l){const s=Math.max(0,Number(l)||0)/D.value*100;return{height:`${Math.max(3,Math.round(s))}%`}}function E(l){var F,O,N,V,w,Q;const s=Number(((N=(O=(F=A.value)==null?void 0:F.confidence_interval)==null?void 0:O.lower)==null?void 0:N[l])??0),_=Number(((Q=(w=(V=A.value)==null?void 0:V.confidence_interval)==null?void 0:w.upper)==null?void 0:Q[l])??0);if(_<=0)return{display:"none"};const M=100-_/D.value*100,L=(_-s)/D.value*100;return{top:`${Math.max(0,M)}%`,height:`${Math.max(1,L)}%`}}function U(l){var M,L,F,O,N,V;const s=Number(((F=(L=(M=A.value)==null?void 0:M.confidence_interval)==null?void 0:L.lower)==null?void 0:F[l])??0),_=Number(((V=(N=(O=A.value)==null?void 0:O.confidence_interval)==null?void 0:N.upper)==null?void 0:V[l])??0);return`${ke(s)} â ${ke(_)}`}function W(l){const s=Number(l)||0;return s>=1e3?`${Math.round(s/1e3)}k`:String(Math.round(s))}async function J(){var l;T.value=!0,y.value=null,S.value=!1;try{A.value=await rt(C.monthsAhead)}catch(s){const _=(l=s==null?void 0:s.response)==null?void 0:l.status;_===402||_===403?S.value=!0:y.value=X(s,"Could not load portfolio forecast")}finally{T.value=!1}}return Xe(J),(l,s)=>(n(),b(Ce,{class:"forecast-card"},{default:i(()=>[h(Qe,{title:"Portfolio forecast",description:"Roster-wide revenue projection â aggregated per-creator forecasts."}),T.value?(n(),m("div",$t,"Loading forecastâ¦")):S.value?(n(),m("div",St,[s[1]||(s[1]=f("p",null," Portfolio forecast is temporarily unavailable for this organization. Retry shortly, or check that roster creators have enough revenue history. ",-1)),h(se,{variant:"secondary",onClick:J},{default:i(()=>[...s[0]||(s[0]=[$("Retry",-1)])]),_:1})])):y.value?(n(),m("div",It,[$(P(y.value)+" ",1),f("button",{type:"button",class:"link-btn",onClick:J},"Retry")])):B.value?(n(),m(Z,{key:4},[h(nt,{items:G.value},null,8,["items"]),f("div",{class:"chart",role:"img","aria-label":I.value},[(n(!0),m(Z,null,we(p.value,(_,M)=>(n(),m("div",{key:M,class:"chart__col"},[f("div",{class:"chart__band",style:Ve(E(M)),title:U(M)},null,12,Nt),f("div",{class:"chart__bar",style:Ve(x(_))},null,4),f("span",Pt,"M"+P(M+1),1),f("span",Et,P(W(_)),1)]))),128))],8,Mt),s[2]||(s[2]=f("p",{class:"note"}," Bars are the projected monthly roster total; the shaded band is the confidence interval. Estimates only. ",-1))],64)):(n(),m("div",xt," Not enough forecastable history across the roster yet. Forecasts appear once creators have enough revenue data. "))]),_:1}))}}),Ot=Fe(Lt,[["__scopeId","data-v-20449070"]]),Dt={key:0,class:"chart-title-row"},Vt={class:"chart-title"},Tt={key:1,class:"chart-empty"},Ft=["aria-label"],Ht=["title"],zt=Te({__name:"RevenueAreaChart",props:{title:{default:"Revenue trend"},values:{},accentVar:{default:"--accent-sapphire-bright"},embedded:{type:Boolean,default:!1},hint:{},hintKey:{}},setup(c){const C=c,A=u(()=>C.hint??Je(C.hintKey)??Je("section_revenue_trend")),T=u(()=>{var p;
1return((p=C.values)==null?void 0:p.filter(B=>!Number.isNaN(B)))??[]}),y=u(()=>`linear-gradient(180deg, var(${C.accentVar}), transparent)`);function S(p){const B=Math.max(...T.value,1);return Math.max(4,p/B*100)}return(p,B)=>(n(),b(Ze(c.embedded?"div":Ce),{class:et(c.embedded?"chart-embedded":"chart-card")},{default:i(()=>[c.title?(n(),m("div",Dt,[f("h3",Vt,P(c.title),1),A.value?(n(),b(yt,{key:0,text:A.value,position:"top",label:c.title},null,8,["text","label"])):k("",!0)])):k("",!0),T.value.length?(n(),m("div",{key:2,class:"chart-bars",role:"img","aria-label":c.title},[(n(!0),m(Z,null,we(T.value,(D,G)=>(n(),m("div",{key:G,class:"bar",style:Ve({height:`${S(D)}%`,background:y.value}),title:String(D)},null,12,Ht))),128))],8,Ft)):(n(),m("div",Tt,"No chart data for this period."))]),_:1},8,["class"]))}}),Kt=Fe(zt,[["__scopeId","data-v-5c1b0e13"]]);function jt(c){return c?Bt(c):"â"}function qt(){const c=lt(),C=Ct(),{canRunBulkAria:A}=kt();c.initFromMemberships();const T=[30,60,90],y=R(30),S=R(!1),p=R([]),B=R(null),D=R(!1),G=R(!1),I=R(null),x=R([]),E=R(!1),U=R(null),W=R(!1),J=R(!1),l=R(null),s=R({}),{data:_,loading:M,error:L,refresh:F}=wt(async()=>c.activeOrgId?{performance:await st(y.value)}:null);fe(y,()=>void F({clear:!0})),fe(S,e=>{var r,g;if(!e){p.value=[];return}const a=(((g=(r=_.value)==null?void 0:r.performance)==null?void 0:g.creators_ranked)??[]).slice(0,2).map(K=>K.creator_id);p.value=a});let O=0;fe([S,y,()=>c.activeOrgId],async([e])=>{if(!e||!c.activeOrgId){B.value=null;return}const a=c.activeOrgId,r=++O;D.value=!0,B.value=null;try{const g=await pt(y.value);if(r!==O||c.activeOrgId!==a)return;B.value=g}catch(g){if(r!==O||c.activeOrgId!==a)return;C.error(X(g,"Could not load peer benchmarks")),B.value=null}finally{r===O&&(D.value=!1)}});let N=0;async function V(){const e=c.activeOrgId;if(!e)return;const a=++N;E.value=!0,U.value=null,x.value=[],I.value=null;try{const r=await mt(8);if(a!==N||c.activeOrgId!==e)return;x.value=r.runs??[],x.value.length&&(I.value=x.value[0])}catch(r){if(a!==N||c.activeOrgId!==e)return;U.value=X(r,"Could not load ARIA batch history")}finally{a===N&&(E.value=!1)}}fe(()=>c.activeOrgId,e=>{e?V():(x.value=[],I.value=null)},{immediate:!0});const w=u(()=>{var e;return((e=_.value)==null?void 0:e.performance)??null}),Q=u(()=>{var e;return((e=w.value)==null?void 0:e.portfolio_totals)??null}),Y=u(()=>{var e;return((e=w.value)==null?void 0:e.content_ranked)??null}),te=u(()=>{var e;return(((e=w.value)==null?void 0:e.creators_ranked)??[]).map(a=>({id:a.creator_id,label:a.display_name??a.creator_id.slice(0,8)}))}),ie=u(()=>{var K,He,ze,Ke,je;const e=w.value;if(!e)return!1;const a=((K=e.creators_ranked)==null?void 0:K.length)??0,r=Object.keys(e.platform_totals??{}).length,g=(((ze=(He=Y.value)==null?void 0:He.top_by_revenue)==null?void 0:ze.length)??0)+(((je=(Ke=Y.value)==null?void 0:Ke.top_by_engagement)==null?void 0:je.length)??0);return a>0||r>0||g>0});fe(te,e=>{const a=new Set(e.map(g=>g.id)),r=p.value.filter(g=>a.has(g));if(S.value&&r.length<2&&e.length>=2){p.value=e.slice(0,2).map(g=>g.id);return}p.value=r.slice(0,4)});const ue=u(()=>{var e;return((e=w.value)==null?void 0:e.message)??null}),ce=u(()=>{var r,g,K;const e=Q.value,a=(r=w.value)==null?void 0:r.connection_summary;return[{id:"revenue",label:"Portfolio revenue",value:(e==null?void 0:e.total_revenue)==null||e.total_revenue===""?"â":ke(String(e.total_revenue)),delta:null},{id:"roster",label:"Active roster",value:Ge((e==null?void 0:e.roster_size)??((K=(g=w.value)==null?void 0:g.creators_ranked)==null?void 0:K.length)??0),delta:null},{id:"with-revenue",label:"Creators w/ revenue",value:Ge((e==null?void 0:e.creators_with_revenue)??0),delta:null},{id:"health",label:"Sync health",value:a?`${a.healthy??0} ok · ${a.stale??0} stale · ${a.at_risk??0} at risk`:"â",delta:null}]}),de=[{key:"platform",label:"Platform"},{key:"revenue",label:"Revenue",align:"right",format:"currency"},{key:"share",label:"Share of portfolio",align:"right"}],pe=[{key:"name",label:"Creator"},{key:"revenue",label:"Revenue",align:"right",format:"currency"},{key:"vs_avg",label:"Vs avg",align:"right"},{key:"engagement",label:"Engagement",align:"right",format:"number"},{key:"health",label:"Sync"}],ae=[{key:"rank",label:"#",align:"right"},{key:"title",label:"Content"},{key:"creator",label:"Creator"},{key:"platform",label:"Platform"},{key:"revenue",label:"Attributed revenue",align:"right",format:"currency"},{key:"confidence",label:"Confidence",align:"right"}],Re=[{key:"rank",label:"#",align:"right"},{key:"title",label:"Content"},{key:"creator",label:"Creator"},{key:"platform",label:"Platform"},{key:"score",label:"Engagement score",align:"right",format:"number"},{key:"views",label:"Views",align:"right",format:"number"},{key:"likes",label:"Likes",align:"right",format:"number"}],oe=u(()=>{var e;return Number(((e=Q.value)==null?void 0:e.total_revenue)??0)}),Ae=u(()=>{var e;return Object.entries(((e=w.value)==null?void 0:e.platform_totals)??{}).map(([a,r])=>{const g=Number(r),K=oe.value>0?`${(g/oe.value*100).toFixed(1)}%`:"â";return{id:a,platform:a,revenue:g,share:K}})});function ee(e){const a=e.vs_roster_average_percent??null,r=e.share_of_portfolio_percent;return{id:e.creator_id,rank:e.rank??"â",name:e.display_name??e.creator_id.slice(0,8),revenue:Number(e.total_revenue),share:r!=null?`${r.toFixed(1)}%`:"â",vs_avg:a!==null?vt(a)??"â":"â",platforms:e.platform_count??0,top_platform:e.top_platform??"â",views:e.total_views??0,engagement:e.engagement_score??0,health:jt(e.connection_health)}}function ne(e){return{id:`${e.creator_id}-${e.post_id}`,rank:e.rank,title:e.title,creator:e.creator_name,platform:e.platform,revenue:Number(e.attributed_revenue??0),confidence:e.confidence_score!=null?`${Math.round(e.confidence_score*100)}%`:"â"}}function me(e){return{id:`${e.creator_id}-${e.post_id}`,rank:e.rank,title:e.title,creator:e.creator_name,platform:e.platform,score:e.engagement_score??0,views:e.views??0,likes:e.likes??0}}const H=u(()=>{var e;return(((e=w.value)==null?void 0:e.top_performers)??[]).map(ee)}),Be=u(()=>{var e;return(((e=w.value)==null?void 0:e.bottom_performers)??[]).map(ee)}),ve=u(()=>{var e;return(((e=w.value)==null?void 0:e.underperformers)??[]).map(ee)}),ge=u(()=>{var e;return(((e=w.value)==null?void 0:e.creators_ranked)??[]).map(ee)}),$e=u(()=>{var e;return(((e=w.value)==null?void 0:e.creators_ranked)??[]).map(a=>Number(a.total_revenue||0)).filter(a=>a>0)}),Se=u(()=>{var e;return(((e=Y.value)==null?void 0:e.top_by_revenue)??[]).map(ne)}),Ie=u(()=>{var e;return(((e=Y.value)==null?void 0:e.bottom_by_revenue)??[]).map(ne)}),he=u(()=>{var e;return(((e=Y.value)==null?void 0:e.top_by_engagement)??[]).map(me)}),xe=u(()=>{var e;return(((e=Y.value)==null?void 0:e.bottom_by_engagement)??[]).map(me)}),re=[{key:"name",label:"Creator"},{key:"revenue",label:"Revenue",align:"right",format:"currency"},{key:"share",label:"Portfolio share",align:"right"},{key:"vs_avg",label:"Vs roster avg",align:"right"},{key:"views",label:"Views",align:"right",format:"number"},{key:"engagement",label:"Engagement",align:"right",format:"number"},{key:"top_platform",label:"Top platform"},{key:"health",label:"Sync"}],be=u(()=>{var a;const e=new Set(p.value);return e.size?(((a=w.value)==null?void 0:a.creators_ranked)??[]).filter(r=>e.has(r.creator_id)).map(ee):[]}),Me=u(()=>be.value.length>=2),ye=[{key:"creator",label:"Creator"},{key:"status",label:"Status"},{key:"headline",label:"Mission output"},{key:"actions",label:"Actions"}],Ne=u(()=>{var e;return(((e=I.value)==null?void 0:e.results)??[]).map(a=>{const r=a.mission_output??{}
1,g=typeof r.operator_action=="string"?r.operator_action:null,K=r.headline||r.recommended_action||a.error_code||"â";return{id:a.result_id,resultId:a.result_id,creator:a.display_name||a.creator_id.slice(0,8),status:a.status,headline:K,actions:"",operatorAction:g,actionable:a.status==="ready"&&!g}})}),Pe=u(()=>{const e=I.value;return e?`${e.completed_count}/${e.creator_count} complete · ${e.mission_type.replace(/_/g," ")} · ${e.status}`:null});async function _e(){if(c.activeOrgId){G.value=!0;try{const e=await it({mission_type:"next_best_action",timeframe_days:y.value});I.value=e,x.value=[e,...x.value.filter(g=>g.run_id!==e.run_id)];const a=Number(e.failed_count||0),r=`${e.completed_count}/${e.creator_count}`;e.status==="failed"||a>0&&e.completed_count===0?C.error(`Bulk ARIA mission failed (${r})`):a>0?C.error(`Bulk ARIA finished with ${a} failure(s) (${r})`):C.success(`Bulk ARIA mission complete (${r})`)}catch(e){C.error(X(e,"Could not start bulk ARIA mission"))}finally{G.value=!1}}}async function z(){if(c.activeOrgId){J.value=!0,l.value=null;try{l.value=await dt({mission_type:"next_best_action"}),W.value=!0}catch(e){C.error(X(e,"Could not estimate batch token usage"))}finally{J.value=!1}}}function o(){W.value=!1}async function d(){var e;if((e=l.value)!=null&&e.blocked){C.error("Batch run is blocked: token pool would be exceeded without overage enabled");return}W.value=!1,await _e()}function v(e){const a=x.value.find(r=>r.run_id===e);a&&(I.value=a)}function le(e){const a=p.value;if(a.includes(e)){p.value=a.filter(r=>r!==e);return}a.length>=4||(p.value=[...a,e])}async function Ee(){var e;if((e=I.value)!=null&&e.run_id){E.value=!0,U.value=null;try{const a=await ft(I.value.run_id);I.value=a,x.value=x.value.map(r=>r.run_id===a.run_id?a:r)}catch(a){U.value=X(a,"Could not refresh batch run")}finally{E.value=!1}}}function Le(e){return!!s.value[e]}async function Ye(e){if(!(!e||Le(e))){s.value[e]=!0;try{await ct(e),C.success("Batch result accepted"),await Ee()}catch(a){C.error(X(a,"Could not accept batch result"))}finally{s.value[e]=!1}}}async function We(e){if(!(!e||Le(e))){s.value[e]=!0;try{await ut(e),C.success("Batch result dismissed"),await Ee()}catch(a){C.error(X(a,"Could not dismiss batch result"))}finally{s.value[e]=!1}}}return{timeframeOptions:T,timeframeDays:y,comparisonMode:S,comparisonCandidates:te,selectedComparisonCreatorIds:p,comparisonColumns:re,comparisonRows:be,canRenderComparisonTable:Me,toggleComparisonCreator:le,peerBenchmarks:B,peerLoading:D,loading:M,error:L,refresh:F,hasData:ie,message:ue,metrics:ce,platformColumns:de,creatorColumns:pe,contentRevenueColumns:ae,contentEngagementColumns:Re,platformRows:Ae,topRows:H,bottomRows:Be,underRows:ve,rankedRows:ge,rankedRevenueValues:$e,topContentRevenueRows:Se,bottomContentRevenueRows:Ie,topContentEngagementRows:he,bottomContentEngagementRows:xe,canRunBulkAria:A,startingBatch:G,activeBatch:I,batchHistory:x,batchLoading:E,batchError:U,estimateModalOpen:W,estimateLoading:J,batchEstimate:l,batchResultColumns:ye,batchResultRows:Ne,batchSummary:Pe,selectBatch:v,refreshBatchRun:Ee,loadBatchHistory:V,prepareBulkAriaEstimate:z,closeEstimateModal:o,confirmRunBulkAria:d,isBatchResultActionLoading:Le,acceptBatchResult:Ye,dismissBatchResult:We,agency:c,runBulkAria:_e}}const Gt={class:"toggle-label perf-compare"},Ut={class:"compare-selector"},Jt=["checked","disabled","onChange"],Qt={key:0,class:"batch-summary"},Yt={key:0,class:"batch-picker"},Wt=["value"],Xt=["value"],Zt={key:1,class:"batch-summary"},ea={class:"batch-actions"},ta={key:0,class:"batch-action-label"},aa={key:0,class:"estimate-grid"},oa={key:0,class:"estimate-warning"},na={key:0},ra={key:1},la=Te({__name:"AgencyPerformancePage",setup(c){const C=Rt();function A(z){z&&C.push(`/agency/roster/${z}`)}const{timeframeOptions:T,timeframeDays:y,comparisonMode:S,comparisonCandidates:p,selectedComparisonCreatorIds:B,comparisonColumns:D,comparisonRows:G,canRenderComparisonTable:I,toggleComparisonCreator:x,peerBenchmarks:E,loading:U,error:W,refresh:J,hasData:l,message:s,metrics:_,platformColumns:M,creatorColumns:L,contentRevenueColumns:F,contentEngagementColumns:O,platformRows:N,topRows:V,bottomRows:w,underRows:Q,rankedRows:Y,rankedRevenueValues:te,topContentRevenueRows:ie,bottomContentRevenueRows:ue,topContentEngagementRows:ce,bottomContentEngagementRows:de,canRunBulkAria:pe,startingBatch:ae,activeBatch:Re,batchHistory:oe,batchLoading:Ae,batchError:ee,estimateModalOpen:ne,estimateLoading:me,batchEstimate:H,batchResultColumns:Be,batchResultRows:ve,batchSummary:ge,selectBatch:$e,loadBatchHistory:Se,prepareBulkAriaEstimate:Ie,closeEstimateModal:he,confirmRunBulkAria:xe,isBatchResultActionLoading:re,acceptBatchResult:be,dismissBatchResult:Me,agency:ye}=qt();function Ne(z){const o=z.target;
1typeof(o==null?void 0:o.value)=="string"&&$e(o.value)}function Pe(z){const o=String(z.resultId??"");o&&be(o)}function _e(z){const o=String(z.resultId??"");o&&Me(o)}return(z,o)=>(n(),b(ot,{title:"Performance",description:"Roster revenue and engagement health trends for the selected period."},{toolbar:i(()=>[h(gt,{"timeframe-days":t(y),"onUpdate:timeframeDays":o[1]||(o[1]=d=>Oe(y)?y.value=d:null),options:t(T)},{actions:i(()=>[f("label",Gt,[tt(f("input",{"onUpdate:modelValue":o[0]||(o[0]=d=>Oe(S)?S.value=d:null),type:"checkbox"},null,512),[[at,t(S)]]),o[7]||(o[7]=$(" Compare creators ",-1))]),t(pe)?(n(),b(se,{key:0,variant:"secondary",disabled:!t(ye).activeOrgId||t(ae)||t(me),loading:t(ae)||t(me),onClick:t(Ie)},{default:i(()=>[...o[8]||(o[8]=[$(" Run bulk ARIA mission ",-1)])]),_:1},8,["disabled","loading","onClick"])):k("",!0)]),_:1},8,["timeframe-days","options"])]),default:i(()=>[h(Ue,{loading:t(U),error:t(W),onRetry:t(J)},{default:i(()=>[t(ye).activeOrgId?t(l)?(n(),m(Z,{key:2},[t(_).length?(n(),b(ht,{key:0,items:t(_),max:3},null,8,["items"])):k("",!0),t(Y).length?(n(),b(j,{key:1,title:`Roster movers · ${t(y)}d`,"hide-header":"","count-label":"creators",columns:t(L),rows:t(Y),"default-sort-key":"revenue","default-sort-direction":"desc",layout:"responsive","row-clickable":"",onRowClick:o[2]||(o[2]=d=>A(String(d.id)))},null,8,["title","columns","rows"])):k("",!0),t(te).length?(n(),b(Kt,{key:2,class:"perf-chart",title:`Revenue distribution · top ${t(te).length} creators`,values:t(te),"accent-var":"--agency-gold-bright"},null,8,["title","values"])):k("",!0),t(S)&&t(p).length?(n(),b(q,{key:3,title:"Compare creators",description:"Side-by-side roster comparison (secondary).",open:!1},{default:i(()=>[h(Ce,{class:"peer-bench"},{default:i(()=>[f("div",Ut,[(n(!0),m(Z,null,we(t(p),d=>(n(),m("label",{key:d.id,class:"toggle-label"},[f("input",{type:"checkbox",checked:t(B).includes(d.id),disabled:!t(B).includes(d.id)&&t(B).length>=4,onChange:v=>t(x)(d.id)},null,40,Jt),$(" "+P(d.label),1)]))),128))]),t(I)?(n(),b(j,{key:1,title:"Creator comparison",description:"Select 2 to 4 creators to compare side by side.","count-label":"creators",columns:t(D),rows:t(G),layout:"table","empty-label":"No comparison data"},null,8,["columns","rows"])):(n(),m("p",Qt," Select at least 2 creators to enable comparison mode. "))]),_:1}),t(E)?(n(),b(Ce,{key:0,class:"peer-bench"},{default:i(()=>{var d,v,le;return[h(Qe,{title:"Peer benchmarks (anonymized)",description:t(E).message??void 0},null,8,["description"]),h(bt,{items:[{label:"Revenue p50",value:String(((d=t(E).revenue_percentiles)==null?void 0:d.p50)??"â")},{label:"Revenue p75",value:String(((v=t(E).revenue_percentiles)==null?void 0:v.p75)??"â")},{label:"Engagement p50",value:String(((le=t(E).engagement_percentiles)==null?void 0:le.p50)??"â")}]},null,8,["items"])]}),_:1})):k("",!0)]),_:1})):k("",!0),t(N).length?(n(),b(q,{key:4,title:`Platform totals · ${t(y)}d`,description:"Aggregated metrics by platform across the roster.",count:t(N).length,"count-label":"platforms",open:!1},{default:i(()=>[h(j,{title:"Platform totals","show-count":!1,"hide-header":"","count-label":"platforms",columns:t(M),rows:t(N),"default-sort-key":"revenue","default-sort-direction":"desc",layout:"table"},null,8,["columns","rows"])]),_:1},8,["title","count"])):k("",!0),h(q,{title:"Forecast",description:"Portfolio outlook (tier-gated).",open:!1},{default:i(()=>[h(Ot)]),_:1}),t(V).length?(n(),b(q,{key:5,title:"Top performers",description:"Highest-performing creators in the selected period.",count:t(V).length,"count-label":"creators",open:!1},{default:i(()=>[h(j,{title:"Top performers","show-count":!1,"hide-header":"","count-label":"creators",columns:t(L),rows:t(V),"default-sort-key":"revenue","default-sort-direction":"desc",layout:"table","row-clickable":"",onRowClick:o[3]||(o[3]=d=>A(String(d.id)))},null,8,["columns","rows"])]),_:1},8,["count"])):k("",!0),t(w).length?(n(),b(q,{key:6,title:"Bottom performers",description:"Lowest-performing creators in the selected period.",count:t(w).length,"count-label":"creators",open:!1},{default:i(()=>[h(j,{title:"Bottom performers","show-count":!1,"hide-header":"","count-label":"creators",columns:t(L),rows:t(w),"default-sort-key":"revenue",layout:"table","row-clickable":"",onRowClick:o[4]||(o[4]=d=>A(String(d.id)))},null,8,["columns","rows"])]),_:1},8,["count"])):k("",!0),t(Q).length?(n(),b(q,{key:7,title:"Below roster average",description:"Creators performing under the roster average.",count:t(Q).length,"count-label":"creators",open:!1},{default:i(()=>[h(j,{title:"Below roster average","show-count":!1,"hide-header":"","count-label":"creators",columns:t(L),rows:t(Q),"default-sort-key":"revenue",layout:"table"},null,8,["columns","rows"])]),_:1},8,["count"])):k("",!0),t(ie).length?(n(),b(q,{key:8,title:`Best content by attributed revenue · ${t(y)}d`,description:"Top content ranked by attributed revenue.",count:t(ie).length,"count-label":"items",open:!1},{default:i(()=>[h(j,{title:"Best content by attributed revenue","show-count":!1,"hide-header":"","count-label":"items",columns:t(F),rows:t(ie),"default-sort-key":"revenue","default-sort-direction":"desc",layout:"table"},null,8,["columns","rows"])]),_:1},8,["title","count"])):k("",!0),t(ue).length?(n(),b(q,{key:9,title:`Lowest attributed revenue content · ${t(y)}d`,description:"Content with the lowest attributed revenue.",count:t(ue).length,"count-label":"items",open:!1},{default:i(()=>[h(j,{title:"Lowest attributed revenue content","show-count":!1,"hide-header":"","count-label":"items",columns:t(F),rows:t(ue),"default-sort-key":"revenue",layout:"table"},null,8,["columns","rows"])]),_:1},8,["title","count"])):k("",!0),t(ce).length?(n(),b(q,{key:10,title:`Best content by engagement · ${t(y)}d`,description:"Top content ranked by engagement.",count:t(ce).length,"count-label":"items",open:!1},{default:i(()=>[h(j,{title:"Best content by engagement","show-count":!1,"hide-header":"","count-label":"items",columns:t(O),rows:t(ce),"default-sort-key":"score","default-sort-direction":"desc",layout:"table"},null,8,["columns","rows"])]),_:1},8,["title","count"])):k("",!0),t(de).length?(n(),b(q,{key:11,title:`Lowest engagement content · ${t(y)}d`,description:"Content with the lowest engagement.",count:t(de).length,"count-label":"items",open:!1},{default:i(()=>[h(j,{title:"Lowest engagement content","show-count":!1,"hide-header":"","count-label":"items",columns:t(O),rows:t(de),"default-sort-key":"score",layout:"table"},null,8,["columns","rows"])]),_:1},8,["title","count"])):k("",!0),t(pe)?(n(),b(q,{key:12,title:"ARIA batch missions",de
1scription:"Roster-wide next-best-action queue with persisted results.",open:!1},{default:i(()=>[h(Ue,{loading:t(Ae),error:t(ee),onRetry:t(Se)},{default:i(()=>{var d;return[t(oe).length?(n(),m(Z,{key:1},[t(oe).length>1?(n(),m("div",Yt,[o[10]||(o[10]=f("label",{class:"field-label",for:"batch-run-select"},"Recent runs",-1)),f("select",{id:"batch-run-select",class:"field-input",value:((d=t(Re))==null?void 0:d.run_id)??"",onChange:o[5]||(o[5]=v=>Ne(v))},[(n(!0),m(Z,null,we(t(oe),v=>(n(),m("option",{key:v.run_id,value:v.run_id},P(v.mission_type.replace(/_/g," "))+" · "+P(v.created_at?new Date(v.created_at).toLocaleString():v.run_id.slice(0,8)),9,Xt))),128))],40,Wt)])):k("",!0),t(ge)?(n(),m("p",Zt,P(t(ge)),1)):k("",!0),t(ve).length?(n(),b(j,{key:2,title:"ARIA batch mission results",description:"Per-creator next-best-action results from roster-wide missions.","count-label":"results",columns:t(Be),rows:t(ve),layout:"table","empty-label":"No batch results"},{"cell-actions":i(({row:v})=>[f("div",ea,[v.operatorAction?(n(),m("span",ta,P(v.operatorAction),1)):(n(),m(Z,{key:1},[h(se,{variant:"secondary",loading:t(re)(String(v.resultId)),disabled:!v.actionable||t(re)(String(v.resultId)),onClick:qe(le=>Pe(v),["stop"])},{default:i(()=>[...o[11]||(o[11]=[$(" Accept ",-1)])]),_:1},8,["loading","disabled","onClick"]),h(se,{variant:"ghost",loading:t(re)(String(v.resultId)),disabled:!v.actionable||t(re)(String(v.resultId)),onClick:qe(le=>_e(v),["stop"])},{default:i(()=>[...o[12]||(o[12]=[$(" Dismiss ",-1)])]),_:1},8,["loading","disabled","onClick"])],64))])]),_:1},8,["columns","rows"])):k("",!0)],64)):(n(),b(De,{key:0,title:"No batch missions yet",description:"Run a bulk ARIA mission to generate next-best-action guidance for your roster."}))]}),_:1},8,["loading","error","onRetry"])]),_:1})):k("",!0)],64)):(n(),b(De,{key:1,title:"No performance data",description:t(s)||"Sync roster platforms to populate performance analytics."},{actions:i(()=>[h(t(At),{to:"/agency/roster",class:"empty-cta"},{default:i(()=>[...o[9]||(o[9]=[$("Open Book",-1)])]),_:1})]),_:1},8,["description"])):(n(),b(De,{key:0,title:"No agency workspace",description:"Your account is not linked to an agency organization. Contact your agency owner for an invite."}))]),_:1},8,["loading","error","onRetry"]),h(_t,{open:t(ne),"onUpdate:open":o[6]||(o[6]=d=>Oe(ne)?ne.value=d:null),title:"Confirm bulk ARIA mission",description:"Review estimated token usage before launching the roster-wide mission.",size:"md",onClose:t(he)},{footer:i(()=>{var d;return[h(se,{variant:"ghost",onClick:t(he)},{default:i(()=>[...o[19]||(o[19]=[$("Cancel",-1)])]),_:1},8,["onClick"]),h(se,{variant:"secondary",disabled:!!((d=t(H))!=null&&d.blocked)||t(ae),loading:t(ae),onClick:t(xe)},{default:i(()=>[...o[20]||(o[20]=[$(" Run mission ",-1)])]),_:1},8,["disabled","loading","onClick"])]}),default:i(()=>[t(H)?(n(),m("div",aa,[f("p",null,[o[13]||(o[13]=f("strong",null,"Mission:",-1)),$(" "+P(t(H).mission_type.replace(/_/g," ")),1)]),f("p",null,[o[14]||(o[14]=f("strong",null,"Creators:",-1)),$(" "+P(t(H).creator_count),1)]),f("p",null,[o[15]||(o[15]=f("strong",null,"LLM mode:",-1)),$(" "+P(t(H).llm_mode),1)]),f("p",null,[o[16]||(o[16]=f("strong",null,"Estimated tokens:",-1)),$(" "+P(t(H).estimated_total_tokens.toLocaleString()),1)]),f("p",null,[o[17]||(o[17]=f("strong",null,"Pool remaining:",-1)),$(" "+P(t(H).pool_remaining.toLocaleString()),1)]),t(H).would_exceed_pool?(n(),m("p",oa,[o[18]||(o[18]=$(" Estimated usage exceeds remaining pool. ",-1)),t(H).overage_enabled?(n(),m("span",na,"Overage is enabled, so run can proceed.")):(n(),m("span",ra,"Overage is disabled, so this run is currently blocked."))])):k("",!0)])):k("",!0)]),_:1},8,["open","onClose"])]),_:1}))}}),Fa=Fe(la,[["__scopeId","data-v-1bd00bf3"]]);export{Fa 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.