PageSourceSearch

https://app.whoscale.io/_nuxt/Cf08shpd.js

js whoscale.io collected 2026-09-24 14:04:15 UTC 105,122 bytes, 2 lines download raw bytes

1const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./DD2Wax1k.js","./BbzuaxXb.js","./DCH-kk0_.js","./entry.Dhc1Mdfs.css","./AppLoader.Bd8g1Fpg.css","./CPPqxSe1.js","./8EyAu65e.js","./CDNAb3jY.js","./lQNc42SZ.js","./Bti-I0f8.js","./Bpe5rnk0.js","./CZ_Gsw3K.js","./E8nz7N-9.js","./C_g6PjNv.js","./CVh1vVFz.js","./CQqK7a2D.js","./EymbBqmh.js","./UpgradeGateWidget.DOdx22bB.css","./DgO4xpSJ.js","./useAdShareLink.zHZtVUzy.css","./ChJe1PaG.js","./DP2gcdg9.js","./useAdReachHistoryChart.DIZbichH.css","./DNnsPhZi.js","./ILnkWP9i.js","./B-Jr9WU5.js","./Dzv5nGGw.js","./D4RkItJw.js","./DrawerShell.D_kqBUtk.css","./DlUa9J12.js","./BTBozEz0.js","./WmD2re27.js","./BsC51BPG.js","./CqrxqX_b.js","./AdDetailDrawer.l66gXWFQ.css","./D5WyEhcA.js","./UrdJ3G7H.js","./nybtf5i8.js","./1SVM7nR8.js","./D23l-Eit.js","./C2m24VNr.js","./ByVAGH2d.js","./CBN1Ss7c.js","./DsWgamXl.js","./Ci0E4rSa.js","./FilterDropdown.DJhzSyAq.css","./BlVLTMRC.js","./AdCard.CLRymk3u.css","./BYAncsRD.js","./9VxYx0Mn.js","./xt3Y5gTH.js","./HV3N4_4i.js","./CawKEfZB.js","./CN2Srehd.js","./CpI8q_7c.js","./CxocDVx3.js","./Cv15j3Uz.js","./CNQUZG9E.js","./BxvrJBmS.js","./SpyDrawer.DVuysYHE.css"])))=>i.map(i=>d[i]);
2import{r as De,aA as Bs,ao as Us,ap as Ns,o as s,c as o,ay as Ws,aC as js,e as Ee,j as v,i as $,k as a,t as i,m as l,l as D,am as qe,Z as Y,$ as W,G as b,f as Q,w as ue,v as Fa,z as Ht,a3 as Se,a0 as re,h as ne,_ as Ne,al as Vs,ar as Hs,n as Ae,b as Ta,a2 as Te,ax as Sa,T as Ge,g as Ks,a4 as Pa,p as qs,S as ct,aq as ha,az as ya,a1 as za,Y as Ra,u as Gs,a as Xs,aN as Ys,aF as ka,aO as Ut,ac as Nt,a7 as nt,aQ as wa,aP as Qs,y as ba}from"./DCH-kk0_.js";import{_ as Zs}from"./P1of9iPb.js";import{_ as Kt}from"./CDNAb3jY.js";import{_ as Js}from"./Czjn4xUq.js";import{_ as en}from"./nybtf5i8.js";import{_ as La}from"./Bti-I0f8.js";import{_ as tn}from"./CBN1Ss7c.js";import{_ as an}from"./CNDWo7oV.js";import{e as sn,s as nn,t as on,g as rn,a as ln,m as dn,f as un,_ as cn}from"./DFDnXhwD.js";import{_ as Ma}from"./Cdqw1TYq.js";import{_ as Xe}from"./CPPqxSe1.js";import{_ as vn}from"./UHcvVCTW.js";import{_ as Da}from"./D925dhoP.js";import{H as pn}from"./CzJyZv11.js";import{_ as Oa}from"./bqYcJiDF.js";import{A as Ea}from"./BlVLTMRC.js";import{g as bt}from"./CVh1vVFz.js";import{o as Vt,i as xa,n as $a}from"./CNQUZG9E.js";import{_ as qt}from"./BbzuaxXb.js";import{_ as mn}from"./EymbBqmh.js";import{A as fn}from"./Bpe5rnk0.js";import{u as Ba}from"./E8nz7N-9.js";import{T as gn,D as Ia,e as _n,r as Wt,d as hn}from"./D0KETDOI.js";import{u as yn,a as kn,_ as wn}from"./C-gDQyD1.js";import{u as bn}from"./D96_67Ka.js";import{u as xn}from"./Dzv5nGGw.js";import{u as $n}from"./DrBAQ-sh.js";import{u as In}from"./uKfyI_rv.js";import{a as An,b as Cn,u as Fn,c as Tn,d as Sn,e as Pn,f as zn,g as Rn,h as Aa}from"./SC5wLRZs.js";import"./Ci0E4rSa.js";import"./ByVAGH2d.js";import"./DsWgamXl.js";import"./DP2gcdg9.js";import"./DiIoNgw8.js";import"./mEh9aB9Z.js";import"./B7eR0nFn.js";import"./DNnsPhZi.js";import"./D23l-Eit.js";import"./ILnkWP9i.js";import"./CZ_Gsw3K.js";import"./C2m24VNr.js";import"./ChJe1PaG.js";import"./D8h3pt4e.js";import"./D9KcYDf2.js";import"./AqtHATO2.js";import"./Bt1P3G9y.js";import"./BG9oEp7_.js";import"./Bu9vIC2K.js";import"./DPpcv83c.js";import"./D4RkItJw.js";import"./CQqK7a2D.js";import"./BFey235K.js";import"./BTBozEz0.js";import"./C_g6PjNv.js";import"./lQNc42SZ.js";import"./1SVM7nR8.js";import"./CplTTFQF.js";import"./DAghVjwE.js";import"./B-Jr9WU5.js";import"./D9AdQKZG.js";import"./Q3X8ZwXl.js";import"./CMGc7LGc.js";const Ln=["disabled","rows"],Mn=De({inheritAttrs:!1,__name:"Textarea",props:js({disabled:{type:Boolean,default:!1},invalid:{type:Boolean,default:!1},rows:{default:3}},{modelValue:{default:""},modelModifiers:{}}),emits:["update:modelValue"],setup(I){const m=Bs(I,"modelValue");return(p,N)=>Us((s(),o("textarea",Ws({"onUpdate:modelValue":N[0]||(N[0]=Z=>m.value=Z),disabled:I.disabled,rows:I.rows,class:["field-input min-h-[72px] py-2 leading-relaxed",I.invalid?"border-error":""]},p.$attrs),null,16,Ln)),[[Ns,m.value]])}}),Dn=Object.assign(Mn,{__name:"UiTextarea"}),On={key:0,class:"w-full max-w-[380px] rounded-[18px] border border-border bg-card p-6 shadow-[0_24px_64px_rgb(0_0_0_/_0.18)] dark:shadow-[0_24px_64px_rgb(0_0_0_/_0.55)]"},En={id:"workspace-creator-remove-title",class:"text-[16px] font-bold text-text-primary"},Bn={class:"mt-2 text-[13px] leading-[1.55] text-text-subtle"},Un={class:"mt-4 flex items-center gap-3 rounded-[12px] border border-border bg-surface p-3"},Nn={class:"size-[40px] shrink-0 overflow-hidden rounded-full border border-border bg-surface flex items-center justify-center"},Wn=["src","alt"],jn={key:1,class:"text-[16px] font-bold text-text-primary"},Vn={class:"min-w-0"},Hn={class:"truncate text-[13px] font-semibold text-text-primary"},Kn={key:0,class:"truncate text-[12px] text-text-muted"},qn={class:"mt-5 flex justify-end gap-2.5"},Gn=De({__name:"CreatorContextMenu",emits:["open","remove"],setup(I,{expose:m,emit:p}){const{t:N}=Ee(),Z=p,L=b({show:!1,x:0,y:0,creator:null}),j=b(null),H=Q(()=>[{id:"open",label:N("workspace.spy")},{id:"sep",type:"separator"},{id:"remove",label:N("workspace.settings.remove_from_folder"),danger:!0}]);function G(R){return String(R?.page_id||R?.id||R?.itemId||R?.favoriteItemId||"")}function de(R,h){L.value={show:!0,x:R.clientX,y:R.clientY,creator:h}}function ee(){L.value={...L.value,show:!1}}function O(){j.value=null}function B(R){const h=L.value.creator;ee(),h&&(R.id==="open"&&Z("open",h),R.id==="remove"&&(j.value=h))}function z(){const R=G(j.value);R&&Z("remove",R),O()}return m({open:de}),(R,h)=>{const y=vn,M=qe,A=Da;return s(),o(W,null,[v(y,{show:L.value.show,x:L.value.x,y:L.value.y,items:H.value,onClose:ee,onSelect:B},null,8,["show","x","y","items"]),v(A,{show:!!j.value,bare:"","z-class":"z-[210]","labelled-by":"workspace-creator-remove-title",onClose:O},{default:$(()=>[j.value?(s(),o("div",On,[a("p",En,i(l(N)("workspace.settings.remove_creator_modal.title")),1),a("p",Bn,i(l(N)("workspace.settings.remove_creator_modal.body",{name:j.value.name||l(N)("workspace.settings.creator_fallback")})),1),a("div",Un,[a("div",Nn,[j.value.avatar?(s(),o("img",{key:0,src:j.value.avatar,alt:j.value.name||"",class:"size-full object-cover"},null,8,Wn)):(s(),o("span",jn,i((j.value.name||"?").charAt(0).toUpperCase()),1))]),a("div",Vn,[a("p",Hn,i(j.value.name),1),j.value.domain?(s(),o("p",Kn,i(j.value.domain),1)):D("",!0)])]),a("div",qn,[v(M,{variant:"secondary",class:"!h-9 !rounded-[9px] !px-4 !text-[13px] text-text-muted hover:bg-surface-hover hover:text-text-primary",onClick:O},{default:$(()=>[Y(i(l(N)("workspace.settings.remove_creator_modal.cancel")),1)]),_:1}),v(M,{variant:"destructive",class:"!h-9 !rounded-[9px] !border-transparent !bg-error !px-4 !text-[13px] text-white hover:!bg-error hover:brightness-90",onClick:z},{default:$(()=>[Y(i(l(N)("workspace.settings.remove_creator_modal.confirm")),1)]),_:1})])])):D("",!0)]),_:1},8,["show"])],64)}}}),Ua=Object.assign(Gn,{__name:"WorkspaceCreatorContextMenu"}),Xn={key:0,class:"flex items-center justify-end gap-1.5 -mb-0.5"},Yn={class:"overflow-hidden"},Qn={key:1,class:"flex items-center justify-center gap-1.5 pt-1"},Zn=De({__name:"WorkspaceAdsCarousel",props:{items:{},pending:{type:Boolean,default:!1},selectedKey:{default:null},starredAdIds:{default:()=>new Set},maxPages:{default:3},showInlineNav:{type:Boolean,default:!0},emptyTitle:{default:""}
2,emptyDescription:{default:""}},emits:["open","open-creator","open-funnel","page-change","ad-starred","ad-unstarred"],setup(I,{expose:m,emit:p}){const N=I,Z=p,{t:L}=Ee(),j=b(null),H=b(5),G=b(0);function de(h){return h>=1024?5:h>=768?4:h>=520?3:2}const ee=Q(()=>({gridTemplateColumns:`repeat(${H.value}, minmax(0, 1fr))`})),O=Q(()=>{const h=H.value*N.maxPages,y=N.items.slice(0,h),M=[];for(let A=0;A<y.length;A+=H.value)M.push(y.slice(A,A+H.value));return M});ue(O,h=>{G.value>h.length-1&&(G.value=Math.max(0,h.length-1)),Z("page-change",G.value,h.length)},{immediate:!0}),ue(G,h=>{Z("page-change",h,O.value.length)}),ue(()=>N.items,()=>{G.value=0}),ue(H,()=>{G.value=0});function B(){G.value>0&&G.value--}function z(){G.value<O.value.length-1&&G.value++}let R=null;return Fa(()=>{H.value=de(window.innerWidth),j.value&&typeof ResizeObserver<"u"&&(R=new ResizeObserver(h=>{const y=h[0]?.contentRect.width??0;y>0&&(H.value=de(y))}),R.observe(j.value))}),Ht(()=>{R?.disconnect(),R=null}),m({page:G,pages:O,goPrev:B,goNext:z,perPage:H}),(h,y)=>{const M=Ma,A=Ne,f=Xe,U=Oa;return s(),o("section",{ref_key:"sectionRef",ref:j,class:"flex flex-col gap-3"},[I.pending?(s(),o("div",{key:0,class:"grid gap-3",style:Se(ee.value)},[(s(!0),o(W,null,re(H.value,se=>(s(),o("div",{key:se,class:"rounded-[14px] border border-border bg-card overflow-hidden"},[...y[2]||(y[2]=[a("div",{class:"skeleton-shimmer aspect-[4/5]"},null,-1),a("div",{class:"flex flex-col gap-2 p-3"},[a("div",{class:"skeleton-shimmer h-3 w-3/4 rounded"}),a("div",{class:"skeleton-shimmer h-3 w-1/2 rounded"})],-1)])]))),128))],4)):I.items.length?(s(),o(W,{key:2},[I.showInlineNav&&O.value.length>1?(s(),o("div",Xn,[v(f,{class:"!size-[30px] !rounded-[9px] !border-border-control text-text-secondary hover:!border-primary hover:!bg-card hover:!text-primary",disabled:G.value===0,"aria-label":l(L)("home.recentAds.prev"),onClick:B},{default:$(()=>[v(A,{name:"ph:caret-left-bold",class:"size-4","aria-hidden":"true"})]),_:1},8,["disabled","aria-label"]),v(f,{class:"!size-[30px] !rounded-[9px] !border-border-control text-text-secondary hover:!border-primary hover:!bg-card hover:!text-primary",disabled:G.value>=O.value.length-1,"aria-label":l(L)("home.recentAds.next"),onClick:z},{default:$(()=>[v(A,{name:"ph:caret-right-bold",class:"size-4","aria-hidden":"true"})]),_:1},8,["disabled","aria-label"])])):D("",!0),a("div",Yn,[a("div",{class:"flex transition-transform duration-300 ease-out",style:Se({transform:`translateX(-${G.value*100}%)`})},[(s(!0),o(W,null,re(O.value,(se,C)=>(s(),o("div",{key:se[0]?.id||C,class:"grid w-full shrink-0 gap-3",style:Se(ee.value)},[(s(!0),o(W,null,re(se,d=>(s(),ne(Ea,{key:d.id,ad:d,variant:"workspace",selected:I.selectedKey===d.id,onOpen:_=>h.$emit("open",d),onOpenCreator:y[0]||(y[0]=_=>h.$emit("open-creator",_)),onOpenFunnel:y[1]||(y[1]=_=>h.$emit("open-funnel",_))},Vs({"header-trailing":$(()=>[v(U,{"item-id":d.id,type:"ad",starred:I.starredAdIds.has(d.id),"button-class":"shrink-0 p-0.5","icon-class":"size-[17px]",lite:"",onStarred:_=>h.$emit("ad-starred",d.id),onUnstarred:_=>h.$emit("ad-unstarred",d.id)},null,8,["item-id","starred","onStarred","onUnstarred"])]),_:2},[h.$slots["tags-notes"]?{name:"tags-notes",fn:$(()=>[Hs(h.$slots,"tags-notes",{ad:d})]),key:"0"}:void 0]),1032,["ad","selected","onOpen"]))),128))],4))),128))],4)]),O.value.length>1?(s(),o("div",Qn,[(s(!0),o(W,null,re(O.value,(se,C)=>(s(),ne(f,{key:C,class:Ae(["!min-h-0 !min-w-0 !rounded-full !border-0 p-0 hover:!border-0 hover:!bg-transparent",C===G.value?"!h-1.5 !w-5 !bg-primary hover:!bg-primary":"!size-1.5 !bg-border-control hover:!bg-text-disabled"]),"aria-label":l(L)("home.recentAds.goToPage",{n:C+1}),onClick:d=>G.value=C},null,8,["class","aria-label","onClick"]))),128))])):D("",!0)],64)):(s(),ne(M,{key:1,icon:"chart",title:I.emptyTitle,description:I.emptyDescription},null,8,["title","description"]))],512)}}}),Jn=Object.assign(Zn,{__name:"FavoriteWorkspaceAdsCarousel"}),eo={class:"home-wrap"},to={key:1,class:"mb-6"},ao={class:"flex flex-wrap gap-4"},so={key:2,class:"mb-6"},no={class:"flex items-center justify-between mb-3"},oo={class:"flex items-center gap-2"},ro={class:"text-[13px] font-medium text-text-secondary"},lo={class:"text-[11px] text-text-muted"},io={class:"flex flex-wrap gap-4"},uo=["onClick","onContextmenu"],co={class:"relative size-[64px] rounded-full border border-border overflow-visible bg-surface flex items-center justify-center shadow-sm group-hover:border-primary transition-colors"},vo={class:"absolute inset-0 rounded-full overflow-hidden"},po=["src","alt","onError"],mo=["src"],fo={class:"absolute inset-0 flex items-center justify-center z-10 bg-black/5",title:"Avatar failed to load"},go={key:1,class:"text-[20px] font-bold text-text-primary z-0"},_o=["title"],ho=["title"],yo={class:"relative size-[64px] rounded-full border border-dashed border-border bg-card flex items-center justify-center shadow-sm group-hover:border-primary group-hover:bg-primary/12 transition-colors"},ko={class:"text-[12px] font-medium text-text-muted max-w-[80px] text-center group-hover:text-primary transition-colors"},wo={key:3,class:"mb-6"},bo={class:"flex items-center justify-between mb-3 gap-3"},xo={class:"flex items-center gap-2 min-w-0"},$o={class:"text-[13px] font-medium text-text-secondary"},Io={class:"text-[11px] text-text-muted"},Ao={key:4,class:"mb-6"},Co={class:"flex items-center justify-between mb-3 gap-3"},Fo={class:"flex items-center gap-2 min-w-0"},To={class:"text-[13px] font-medium text-text-secondary"},So={class:"text-[11px] text-text-muted"},Po={class:"flex items-center gap-3 shrink-0"},zo={key:0,class:"flex items-center gap-1.5"},Ro={key:5,class:"flex flex-col min-w-0 mt-6"},Lo={class:"flex items-center justify-between mb-3"},Mo={class:"text-[14px] font-semibold text-text-primary"},Do={class:"note-collab-wrap"},Oo=["title"],Eo=["src","alt"],Bo={key:1},Uo={key:6,class:"flex flex-col min-w-0 mt-6"},No={class:"flex items-center justify-between mb-3"},Wo={class:"text-[14px] font-semibold text-text-primary"},jo={class:"text-[12px] text-text-muted"},Vo={key:0,class:"grid grid-cols-2 sm:grid-cols-3 gap-4"},Ho={key:1,class:"bg-card border border-border rounded-[12px] text-[13px] text-text-muted p-6 text-center"},Ko={key:2,class:"grid grid-cols-2 sm:grid-cols-3 gap-4"},qo=["onClick"],Go={class:"flex items-center gap-3 min-w-0"},Xo={class:"relative size-11 rounded-full overflow-hidden bg-surface flex-shrink-0 border border-border group-hover:border-primary transition-colors"},Yo=["src","onError"],Qo=["src"],Zo={class:"absolute inset-0 flex items-center justify-center z-10 bg-black/5",title:"Avatar failed to load"},Jo={key:1,class:"absolute inset-0 flex items-center justify-center text-[14px] font-bold text-text-primary z-0"},er={class:"min-w-0 flex-1"},tr={class:"text-[13px] font-semibold text-text-primary truncate"},ar={class:"text-[11px] text-text-muted truncate"},sr=6,nr=De({__name:"FolderHomeTab",props:{items:{},loadingCreators:{type:Boolean},derivedFunnels:{},derivedAds:{},derivedAdsTotal:{},loadingAds:{type:Boolean},starredAdIds:{},workspaceNote:{},noteEditing:{},suggestions:{},loadingSuggestions:{type:Boolean}},emits:["navigate-tab","open-item","spy-funnel","update-workspace-note","note-editing","o
2pen-suggestion","add-suggestion","open-finder","remove-creator","open-creator","ad-starred","ad-unstarred"],setup(I,{emit:m}){const{t:p}=Ee(),N=b(new Set);function Z(x){const S=new Set(N.value);S.add(x),N.value=S}const L=I,j=m,{user:H}=Ta(),G=b(null),de=b(L.workspaceNote||""),ee=b(!1);let O=null;ue(()=>L.workspaceNote,x=>{L.noteEditing&&!ee.value||(de.value=x||"")}),ue(()=>L.noteEditing,x=>{!x||ee.value||(de.value=x.note||"")});const B=Q(()=>ee.value&&H.value?{userId:H.value.id,name:H.value.name||H.value.email||null,avatar:H.value.avatar||H.value.image||null}:L.noteEditing?.user||null);function z(x){j("note-editing",{scope:"workspace",phase:x,note:de.value})}function R(){ee.value=!0,z("focus")}function h(){ee.value=!1,z("blur")}function y(){z("typing"),O&&clearTimeout(O),O=setTimeout(()=>{j("update-workspace-note",de.value)},500)}function M(x){return Number(x?.active_ads||0)>0}const A=Q(()=>L.items.filter(x=>x.favoriteType==="creator")),f=Q(()=>L.derivedAds||[]),U=Q(()=>!!L.loadingAds),se=b(null),C=b(0),d=b(0);function _(x,S){C.value=x,d.value=S}function J(x){j("open-creator",x)}function E(x){j("open-item",x)}const ve=Q(()=>L.derivedFunnels||[]),fe=Q(()=>sn(ve.value)),c={gridTemplateColumns:"repeat(auto-fill, minmax(min(100%, 360px), 1fr))"},w=Q(()=>nn(fe.value).slice(0,sr).map(x=>on(x,Re(x))));function le(x){j("spy-funnel",x.funnel_id,x.page_id)}function te(x){const S=f.value.find(ge=>String(ge.id||ge.ad_id)===String(x));S&&j("open-item",S)}function Re(x){return rn(f.value,x.page_id,x.funnel_id,4,x.link?.top_ads)}const be=Q(()=>new Set(A.value.map(x=>String(x.page_id||x.id||"")))),me=Q(()=>[...A.value].sort((x,S)=>Be(S.spend)-Be(x.spend)||x.rank-S.rank).slice(0,1)),ye=Q(()=>({creators:A.value.length,ads:typeof L.derivedAdsTotal=="number"?L.derivedAdsTotal:f.value.length,funnels:ve.value.length,activeFunnels:ve.value.filter(x=>x.is_active).length,topCreator:me.value[0]||null}));function Pe(){j("open-finder",[...be.value])}function Be(x){if(!x)return 0;if(typeof x=="number")return x;if(String(x).includes("k"))return parseFloat(String(x))*1e3;const S=parseFloat(String(x).replace(/[^\d.]/g,""));return Number.isFinite(S)?S:0}function Ye(x){const S=Number(x||0);return S?S>=1e6?`${(S/1e6).toFixed(S%1e6===0?0:1)}M`:S>=1e3?`${Math.round(S/1e3)}k`:String(S):"—"}return(x,S)=>{const ge=Ne,q=qe,oe=Ma,ie=Kt,X=Xe,ke=Dn,Qe=Ua;return s(),o("div",eo,[!I.loadingCreators&&!I.items.length?(s(),ne(oe,{key:0,title:l(p)("workspaceFolder.emptyTitle"),description:l(p)("workspaceFolder.emptyHint"),icon:"search"},{action:$(()=>[v(q,{size:"sm",onClick:Pe},{iconLeft:$(()=>[v(ge,{name:"ph:plus-bold",class:"size-3","aria-hidden":"true"})]),default:$(()=>[Y(" "+i(l(p)("workspaceFolder.add_creator")),1)]),_:1})]),_:1},8,["title","description"])):D("",!0),I.loadingCreators&&!A.value.length?(s(),o("div",to,[a("div",ao,[(s(),o(W,null,re(5,k=>a("div",{key:k,class:"flex w-[80px] flex-col items-center gap-2"},[...S[12]||(S[12]=[a("div",{class:"size-[64px] rounded-full skeleton-shimmer"},null,-1),a("div",{class:"h-2.5 w-10 skeleton-shimmer rounded"},null,-1)])])),64))])])):D("",!0),A.value.length>0?(s(),o("div",so,[a("div",no,[a("div",oo,[a("span",ro,i(l(p)("workspaceFolder.addedCreators")),1),a("span",lo,i(ye.value.creators),1)]),ye.value.creators>8?(s(),ne(ie,{key:0,variant:"primary",class:"shrink-0",onClick:S[0]||(S[0]=k=>x.$emit("navigate-tab","creators"))},{default:$(()=>[Y(i(l(p)("workspaceFolder.see_all_n",{n:ye.value.creators}))+" ",1),v(ge,{name:"ph:arrow-right",class:"size-3 text-current","aria-hidden":"true"})]),_:1})):D("",!0)]),a("div",io,[(s(!0),o(W,null,re(A.value,k=>(s(),o("div",{key:k.page_id||k.id,class:"flex w-[80px] flex-col items-center gap-2 cursor-pointer group",onClick:ze=>x.$emit("open-item",k),onContextmenu:Te(ze=>G.value?.open(ze,k),["prevent","stop"])},[a("div",co,[a("div",vo,[k.avatar&&!N.value.has(k.page_id||k.id)?(s(),o("img",{key:0,src:k.avatar,alt:k.name||k.advertiser,class:"absolute inset-0 size-full object-cover z-10 bg-card",onError:ze=>Z(k.page_id||k.id)},null,40,po)):(s(),o(W,{key:1},[k.topAdsPreview?.[0]?.thumbnail||k.topAdsPreview?.[0]?.thumbnailImage?(s(),o(W,{key:0},[a("img",{src:k.topAdsPreview[0].thumbnailImage||k.topAdsPreview[0].thumbnail,class:"absolute inset-0 size-full object-cover blur-[6px] scale-110 opacity-60 z-0"},null,8,mo),a("div",fo,[v(ge,{name:"ph:image-broken",class:"size-4 text-white opacity-90 drop-shadow-md","aria-hidden":"true"})])],64)):(s(),o("span",go,i((k.name||k.advertiser||"?").charAt(0)),1))],64))]),M(k)?(s(),o("span",{key:0,class:"creator-pfp-active-badge",title:l(p)("workspaceFolder.activeAds",k.active_ads)},[S[13]||(S[13]=a("span",{class:"creator-pfp-active-dot","aria-hidden":"true"},null,-1)),Y(" "+i(l(p)("workspace.live")),1)],8,_o)):D("",!0)]),a("span",{class:"creator-pfp-name group-hover:text-primary transition-colors",title:k.name||k.advertiser},i(k.name||k.advertiser),9,ho)],40,uo))),128)),v(q,{variant:"ghost",class:"group !flex !h-auto w-[80px] flex-col items-center gap-2 !rou
2nded-none border-transparent bg-transparent !px-0 hover:bg-transparent",onClick:Pe},{default:$(()=>[a("div",yo,[v(ge,{name:"ph:plus",class:"size-[18px] text-text-muted group-hover:text-primary transition-colors","aria-hidden":"true"})]),a("span",ko,i(l(p)("workspaceFolder.quick_add")),1)]),_:1})])])):D("",!0),fe.value.length>0?(s(),o("div",wo,[a("div",bo,[a("div",xo,[a("span",$o,i(l(p)("workspaceFolder.tabs.funnels")),1),a("span",Io,i(fe.value.length),1)]),v(ie,{variant:"primary",class:"shrink-0",onClick:S[1]||(S[1]=k=>x.$emit("navigate-tab","funnels"))},{default:$(()=>[Y(i(l(p)("workspaceFolder.see_all_n",{n:fe.value.length}))+" ",1),v(ge,{name:"ph:arrow-right",class:"size-3 text-current","aria-hidden":"true"})]),_:1})]),a("div",{class:"grid gap-3",style:c},[(s(!0),o(W,null,re(w.value,k=>(s(),ne(pn,{key:String(k.funnel_id||k.landing_url),funnel:k,onSpyFunnel:le,onSelectCreator:S[2]||(S[2]=ze=>x.$emit("open-creator",ze)),onSelectAd:te},null,8,["funnel"]))),128))])])):D("",!0),ye.value.ads>0||U.value?(s(),o("div",Ao,[a("div",Co,[a("div",Fo,[a("span",To,i(l(p)("workspaceFolder.tabs.ads")),1),a("span",So,i(ye.value.ads),1)]),a("div",Po,[!U.value&&d.value>1?(s(),o("div",zo,[v(X,{class:"!size-[30px] !rounded-[9px] !border-border-control bg-card text-text-secondary hover:!border-primary hover:!bg-card hover:!text-primary disabled:opacity-35",disabled:C.value===0,"aria-label":l(p)("home.recentAds.prev"),onClick:S[3]||(S[3]=k=>se.value?.goPrev())},{default:$(()=>[v(ge,{name:"ph:caret-left-bold",class:"size-4","aria-hidden":"true"})]),_:1},8,["disabled","aria-label"]),v(X,{class:"!size-[30px] !rounded-[9px] !border-border-control bg-card text-text-secondary hover:!border-primary hover:!bg-card hover:!text-primary disabled:opacity-35",disabled:C.value>=d.value-1,"aria-label":l(p)("home.recentAds.next"),onClick:S[4]||(S[4]=k=>se.value?.goNext())},{default:$(()=>[v(ge,{name:"ph:caret-right-bold",class:"size-4","aria-hidden":"true"})]),_:1},8,["disabled","aria-label"])])):D("",!0),ye.value.ads>5?(s(),ne(ie,{key:1,variant:"primary",onClick:S[5]||(S[5]=k=>x.$emit("navigate-tab","ads"))},{default:$(()=>[Y(i(l(p)("workspaceFolder.see_all_n",{n:ye.value.ads}))+" ",1),v(ge,{name:"ph:arrow-right",class:"size-3 text-current","aria-hidden":"true"})]),_:1})):D("",!0)])]),v(Jn,{ref_key:"adsCarouselRef",ref:se,items:f.value,pending:U.value,"starred-ad-ids":I.starredAdIds,"show-inline-nav":!1,"empty-title":l(p)("workspaceFolder.empty_ads"),onPageChange:_,onOpen:S[6]||(S[6]=k=>x.$emit("open-item",k)),onOpenCreator:J,onOpenFunnel:E,onAdStarred:S[7]||(S[7]=k=>x.$emit("ad-starred",k)),onAdUnstarred:S[8]||(S[8]=k=>x.$emit("ad-unstarred",k))},null,8,["items","pending","starred-ad-ids","empty-title"])])):D("",!0),I.items.length>0?(s(),o("div",Ro,[a("div",Lo,[a("span",Mo,i(l(p)("workspaceFolder.home_note_title")),1)]),a("div",Do,[v(ke,{modelValue:de.value,"onUpdate:modelValue":S[9]||(S[9]=k=>de.value=k),class:Ae(["workspace-note",B.value?"workspace-note-editing":""]),readonly:!!L.noteEditing&&!ee.value,placeholder:l(p)("workspace.angles_placeholder"),onFocus:R,onBlur:h,onInput:y},null,8,["modelValue","class","readonly","placeholder"]),B.value?(s(),o("div",{key:0,class:"note-editor-avatar",title:B.value.name||""},[B.value.avatar?(s(),o("img",{key:0,src:B.value.avatar,alt:B.value.name||""},null,8,Eo)):(s(),o("span",Bo,i((B.value.name||B.value.userId||"?").charAt(0).toUpperCase()),1))],8,Oo)):D("",!0)])])):D("",!0),I.items.length>0?(s(),o("div",Uo,[a("div",No,[a("span",Wo,i(l(p)("workspaceFolder.home_suggestions_title")),1),a("span",jo,i(l(p)("workspaceFolder.home_suggestions_similar")),1)]),I.loadingSuggestions?(s(),o("div",Vo,[(s(),o(W,null,re(6,k=>a("div",{key:k,class:"rounded-[12px] border border-border bg-card p-3"},[...S[14]||(S[14]=[Sa('<div class="flex items-center gap-3" data-v-ac56320f><div class="size-11 rounded-full bg-border flex-shrink-0 animate-pulse" data-v-ac56320f></div><div class="min-w-0 flex-1" data-v-ac56320f><div class="h-3.5 bg-border rounded w-24 mb-1.5 animate-pulse" data-v-ac56320f></div><div class="h-2.5 bg-border rounded w-16 animate-pulse" data-v-ac56320f></div></div></div><div class="h-7 mt-3 rounded-md bg-border animate-pulse" data-v-ac56320f></div>',2)])])),64))])):I.suggestions.length===0?(s(),o("p",Ho,i(l(p)("workspaceFolder.home_suggestions_empty")),1)):(s(),o("div",Ko,[(s(!0),o(W,null,re(I.suggestions,k=>(s(),o("div",{key:k.page_id,class:"group relative flex flex-col rounded-[12px] border border-border bg-card p-3 hover:border-primary transition-colors cursor-pointer focusable",onClick:ze=>x.$emit("open-suggestion",k)},[a("div",Go,[a("div",Xo,[k.avatar&&!N.value.has(k.page_id)?(s(),o("img",{key:0,src:k.avatar,class:"absolute inset-0 size-full object-cover z-10 bg-card",onError:ze=>Z(k.page_id)},null,40,Yo)):(s(),o(W,{key:1},[k.topAdsPreview?.[0]?.thumbnail||k.topAdsPreview?.[0]?.thumbnailImage?(s(),o(W,{key:0},[a("img",{src:k.topAdsPreview[0].thumbnailImage||k.topAdsPreview[0].thumbnail,class:"absolute inset-0 size-full object-cover blur-[4px] scale-110 opacity-60 z-0"},null,8,Qo),a("div",Zo,[v(ge,{name:"ph:image-broken",class:"size-3 text-white opacity-90 drop-shadow-md","aria-hidden":"true"})])],64)):(s(),o("span",Jo,i(k.name?.charAt(0)||"?"),1))],64))]),a("div",er,[a("p",tr,i(k.name),1),a("p",ar,i(l(p)("workspaceFolder.suggestion_line",{active:k.active_ads,reach:Ye(k.eu_total_reach
2)})),1)])]),v(q,{size:"sm",class:"mt-3 !h-7 w-full !rounded-md !px-0 !font-semibold hover:bg-primary hover:opacity-[0.92]",onClick:Te(ze=>x.$emit("add-suggestion",k),["stop"])},{iconLeft:$(()=>[v(ge,{name:"ph:plus-bold",class:"size-2.5 text-white","aria-hidden":"true"})]),default:$(()=>[Y(" "+i(l(p)("common.add")),1)]),_:1},8,["onClick"])],8,qo))),128))]))])):D("",!0),v(Qe,{ref_key:"creatorMenuRef",ref:G,onOpen:S[10]||(S[10]=k=>x.$emit("open-item",k)),onRemove:S[11]||(S[11]=k=>x.$emit("remove-creator",k))},null,512)])}}}),or=Object.assign(Ge(nr,[["__scopeId","data-v-ac56320f"]]),{__name:"FavoriteWorkspaceFolderHomeTab"}),rr={class:"creator-list"},lr=["onDragstart","onDragover","onDrop","onClick","onAuxclick","onContextmenu"],ir={class:"card-head"},dr={class:"avatar-frame"},ur=["src","alt","onError"],cr=["src"],vr={class:"avatar-fallback-overlay"},pr={key:1,class:"avatar-letter"},mr={class:"identity"},fr={class:"identity-name-row"},gr={class:"identity-name"},_r={key:0,class:"pin-badge"},hr={class:"identity-domain"},yr={class:"metrics"},kr={class:"metric"},wr={class:"metric-label"},br={class:"metric-value"},xr={class:"metric metric--right"},$r={class:"metric-label"},Ir={class:"metric-value"},Ar={class:"metric-active"},Cr={class:"metric-total"},Fr={key:0,class:"preview-strip"},Tr={class:"preview-thumb-wrap"},Sr={key:0,class:"preview-empty"},Pr={key:1,class:"preview-empty"},zr=["src","onError"],Rr={class:"preview-hover-overlay","aria-hidden":"true"},Lr={class:"preview-hover-icon"},Mr={key:1,class:"empty-preview"},Dr=De({__name:"FolderCreatorsTab",props:{items:{type:Array,default:()=>[]},selectedKey:{type:String,default:null}},emits:["select","reorder","toggle-pin","open-preview-ad","remove-creator"],setup(I,{emit:m}){const{t:p}=Ee();function N(A,f){f?.button===1&&(f.preventDefault(),A?.page_id&&Vt(A.page_id))}const Z=I,L=m,j=b(null),H=b(new Set);function G(A){const f=new Set(H.value);f.add(A),H.value=f}const de=b(new Set);function ee(A){const f=new Set(de.value);f.add(A),de.value=f}const O=b(null),B=b(null);function z(A){O.value=A}function R(A){B.value=A}function h(A){if(O.value===null||O.value===A)return;const f=[...Z.items],[U]=f.splice(O.value,1);f.splice(A,0,U),L("reorder",f.map(se=>se.page_id)),O.value=null,B.value=null}function y(){O.value=null,B.value=null}function M(A){return!!A?.pinnedByView?.creators}return(A,f)=>{const U=Ne,se=Xe,C=qe,d=Ua;return s(),o("div",null,[a("div",rr,[(s(!0),o(W,null,re(I.items,(_,J)=>(s(),o("article",{key:_.page_id,class:Ae(["creator-card group",[I.selectedKey===_.page_id?"is-active":"",B.value===J&&O.value!==J?"is-dragover":"",M(_)?"is-pinned":""]]),draggable:"true",onDragstart:E=>z(J),onDragover:Te(E=>R(J),["prevent"]),onDrop:Te(E=>h(J),["prevent"]),onDragend:y,onClick:E=>A.$emit("select",_,E),onAuxclick:E=>N(_,E),onContextmenu:Te(E=>j.value?.open(E,_),["prevent","stop"])},[a("header",ir,[a("div",dr,[_.avatar&&!H.value.has(_.page_id)?(s(),o("img",{key:0,src:_.avatar,alt:_.name,class:"avatar-img",onError:E=>G(_.page_id)},null,40,ur)):(s(),o(W,{key:1},[_.topAdsPreview?.[0]?.thumbnail||_.topAdsPreview?.[0]?.thumbnailImage?(s(),o(W,{key:0},[a("img",{src:_.topAdsPreview[0].thumbnailImage||_.topAdsPreview[0].thumbnail,class:"avatar-fallback-blur"},null,8,cr),a("div",vr,[v(U,{name:"ph:image-broken",class:"size-3.5 text-white opacity-90 drop-shadow-md","aria-hidden":"true"})])],64)):(s(),o("span",pr,i(_.name?.charAt(0)||"?"),1))],64))]),a("div",mr,[a("div",fr,[a("p",gr,i(_.name||"—"),1),M(_)?(s(),o("span",_r,[v(U,{name:"ph:push-pin-simple-fill",class:"size-2.5 text-current","aria-hidden":"true"})])):D("",!0)]),a("p",hr,i(_.domain||l(p)("workspace.no_domain")),1)]),v(se,{size:"sm",class:Ae(["pin-btn !size-7 !border-transparent !bg-transparent hover:!border-transparent",{"is-active":M(_)}]),title:M(_)?l(p)("workspace.unpin"):l(p)("workspace.pin"),"aria-label":M(_)?l(p)("workspace.unpin"):l(p)("workspace.pin"),onClick:Te(E=>A.$emit("toggle-pin",_),["stop"])},{default:$(()=>[v(U,{name:M(_)?"ph:push-pin-simple-fill":"ph:push-pin-simple",class:"size-3.5 text-current","aria-hidden":"true"},null,8,["name"])]),_:2},1032,["class","title","aria-label","onClick"])]),a("div",yr,[a("div",kr,[a("span",wr,[Y(i(l(p)("analyzer.estSpend"))+" ",1),f[2]||(f[2]=a("span",{class:"metric-period"},"30d",-1))]),a("span",br,i(_.spend||"—"),1)]),f[3]||(f[3]=a("span",{class:"metric-divider","aria-hidden":"true"},null,-1)),a("div",xr,[a("span",$r,i(l(p)("analyzer.activeAds")),1),a("span",Ir,[a("span",Ar,i(_.active_ads||0),1),a("span",Cr,"/ "+i(_.ads||0),1)])])]),_.topAdsPreview?.length?(s(),o("div",Fr,[(s(!0),o(W,null,re(_.topAdsPreview.slice(0,3),E=>(s(),ne(C,{key:E.id,variant:"ghost",class:"preview-ad group/ad !h-auto !min-h-0 !w-full !rou
2nded-none !border-transparent !bg-transparent !px-0 font-normal hover:!bg-transparent hover:!border-transparent",onClick:Te(ve=>A.$emit("open-preview-ad",{adId:E.id,creator:_}),["stop"])},{default:$(()=>[a("div",Tr,[l(bt)(E)?de.value.has(E.id)?(s(),o("div",Pr,[v(U,{name:"ph:image-broken",class:"size-6 text-border","aria-hidden":"true"})])):(s(),o("img",{key:2,src:l(bt)(E),class:"preview-thumb",onError:ve=>ee(E.id),loading:"lazy"},null,40,zr)):(s(),o("div",Sr,[v(U,{name:"ph:image",class:"size-6 text-border","aria-hidden":"true"})])),a("div",Rr,[a("span",Lr,[v(U,{name:"ph:magnifying-glass",class:"size-4 text-text-primary","aria-hidden":"true"})])])])]),_:2},1032,["onClick"]))),128))])):(s(),o("div",Mr,[v(U,{name:"ph:image-square",class:"size-4 text-border","aria-hidden":"true"}),a("span",null,i(l(p)("workspace.noAdPreview")),1)])),v(C,{variant:"secondary",size:"sm",class:"more-info-btn focusable w-full",onClick:Te(E=>A.$emit("select",_),["stop"])},{default:$(()=>[Y(i(l(p)("workspace.more_info"))+" ",1),v(U,{name:"ph:arrow-right-bold",class:"size-2.5 text-current","aria-hidden":"true"})]),_:1},8,["onClick"])],42,lr))),128))]),v(d,{ref_key:"creatorMenuRef",ref:j,onOpen:f[0]||(f[0]=_=>A.$emit("select",_)),onRemove:f[1]||(f[1]=_=>A.$emit("remove-creator",_))},null,512)])}}}),Or=Object.assign(Ge(Dr,[["__scopeId","data-v-1cc79201"]]),{__name:"FavoriteWorkspaceFolderCreatorsTab"}),Er={class:"funnels-list"},Br={class:"creator-head"},Ur={class:"creator-avatar"},Nr=["src","alt"],Wr={key:1},jr={class:"creator-meta"},Vr={class:"creator-name"},Hr={class:"creator-sub"},Kr={class:"creator-active"},qr={class:"domains"},Gr={class:"domain-head"},Xr={class:"domain-name"},Yr={class:"domain-routes-count"},Qr={class:"routes"},Zr={class:"route-thumb","aria-hidden":"true"},Jr=["src"],el={class:"route-path-wrap"},tl=["href"],al={class:"route-stat route-stat--active"},sl={class:"route-stat-num"},nl={class:"route-stat-lbl"},ol={class:"route-stat route-stat--total"},rl={class:"route-stat-num"},ll={class:"route-stat-lbl"},il={class:"route-stat route-stat--reach"},dl={class:"route-stat-num"},ul={class:"route-stat-lbl"},cl={key:1,class:"route-stat-empty"},vl={class:"route-actions"},pl={key:0,class:"direct-row route-row"},ml={class:"route-thumb route-thumb--direct","aria-hidden":"true"},fl={class:"route-path-wrap"},gl={class:"direct-label"},_l={class:"route-stat route-stat--active"},hl={class:"route-stat-num"},yl={class:"route-stat-lbl"},kl={class:"route-stat route-stat--total"},wl={class:"route-stat-num"},bl={class:"route-stat-lbl"},xl={key:1,class:"no-links"},jt=3,$l=De({__name:"FolderFunnelsTab",props:{items:{type:Array,default:()=>[]},selectedKey:{type:String,default:null}},emits:["select","spy-funnel"],setup(I,{emit:m}){const{t:p}=Ee(),N=m,Z=b(new Set);function L(h){return(h.previewLinks||[]).filter(y=>y?.url).length}function j(h){return L(h)+(h.direct_ads?.total?1:0)}function H(h){return Z.value.has(h.page_id)}function G(h){const y=new Set(Z.value);y.has(h.page_id)?y.delete(h.page_id):y.add(h.page_id),Z.value=y}function de(h,y){if(H(h))return y.links;const M=z(h.previewLinks);let A=0;for(const f of M){if(f.domain!==y.domain){A+=f.links.length;continue}const U=Math.max(0,jt-A);return f.links.slice(0,U)}return[]}function ee(h){try{return new URL(h).hostname.replace("www.","")}catch{return h}}function O(h){try{const y=new URL(h);return y.pathname+y.search||"/"}catch{return h}}function B(h){const y=Number(h||0);return y?y>=1e6?`${(y/1e6).toFixed(1)}M`:y>=1e3?`${Math.round(y/1e3)}k`:String(y):"—"}function z(h){const y={};for(const M of h||[]){if(!M?.url)continue;const A=M.domain||ee(M.url);y[A]||(y[A]={domain:A,links:[]}),y[A].links.push(M)}return Object.values(y)}function R(h){const y=h.target;y.style.visibility="hidden"}return(h,y)=>{const M=Ne,A=qe;return s(),o("div",Er,[(s(!0),o(W,null,re(I.items,f=>(s(),o("article",{key:f.page_id,class:"creator-card"},[a("header",Br,[a("div",Ur,[f.avatar?(s(),o("img",{key:0,src:f.avatar,alt:f.creator},null,8,Nr)):(s(),o("span",Wr,i(f.creator?.charAt(0).toUpperCase()||"?"),1))]),a("div",jr,[a("p",Vr,i(f.creator||"—"),1),a("p",Hr,[a("span",null,i(l(p)("workspaceFolder.funnelCount",j(f))),1),f.active_ads?(s(),o(W,{key:0},[y[2]||(y[2]=a("span",{class:"creator-sub-sep"},"·",-1)),a("span",Kr,[y[1]||(y[1]=a("span",{class:"creator-active-dot","aria-hidden":"true"},null,-1)),Y(" "+i(l(p)("workspaceFolder.activeAds",f.active_ads)),1)])],64)):D("",!0)])])]),a("div",qr,[(s(!0),o(W,null,re(z(f.previewLinks),U=>(s(),o("div",{key:U.domain,class:"domain"},[a("div",Gr,[v(M,{name:"ph:globe",class:"domain-icon size-3.5 text-current","aria-hidden":"true"}),a("span",Xr,i(U.domain),1),a("span",Yr,i(U.links.length),1)]),a("div",Qr,[(s(!0),o(W,null,re(de(f,U),se=>(s(),o("div",{key:se.url,class:Ae(["route-row",{"is-dormant":!se.has_active_ads}])},[a("div",Zr,[a("img",{src:`https://www.google.com/s2/favicons?sz=64&domain=${U.domain}`,alt:"",onError:R},null,40,Jr)]),a("div",el,[a("span",{class:Ae(["route-status-dot",{"is-live":se.has_active_ads}]),"aria-hidden":"true"},null,2),a("a",{href:se.url,target:"_blank",rel:"noreferrer",class:"route-path",onClick:y[0]||(y[0]=Te(()=>{},["stop"]))},i(O(se.url)),9,tl)]),a("div",al,[a("span",sl,i(se.active_ads),1
2),a("span",nl,i(l(p)("workspaceFolder.stat_active")),1)]),a("div",ol,[a("span",rl,i(se.total_ads),1),a("span",ll,i(l(p)("workspaceFolder.stat_ads")),1)]),a("div",il,[se.total_reach?(s(),o(W,{key:0},[a("span",dl,i(B(se.total_reach)),1),a("span",ul,i(l(p)("workspaceFolder.stat_reach")),1)],64)):(s(),o("span",cl,"—"))]),a("div",vl,[se.funnel_id?(s(),ne(A,{key:0,size:"sm",class:"spy-btn focusable !h-[26px] !rounded-[8px] !border-0 !px-2.5 !pl-[11px] !text-[11px] font-semibold hover:!bg-primary",title:l(p)("workspace.spy"),onClick:Te(C=>N("spy-funnel",se.funnel_id,f.page_id),["stop"])},{default:$(()=>[Y(i(l(p)("workspace.spy"))+" ",1),v(M,{name:"ph:arrow-right-bold",class:"size-2.5 text-current","aria-hidden":"true"})]),_:1},8,["title","onClick"])):D("",!0)])],2))),128))])]))),128)),f.direct_ads?.total?(s(),o("div",pl,[a("div",ml,[v(M,{name:"ph:user-circle",class:"size-4 text-current","aria-hidden":"true"})]),a("div",fl,[y[3]||(y[3]=a("span",{class:"route-status-dot is-live","aria-hidden":"true"},null,-1)),a("span",gl,i(l(p)("workspaceFolder.direct_no_landing")),1)]),a("div",_l,[a("span",hl,i(f.direct_ads.active),1),a("span",yl,i(l(p)("workspaceFolder.stat_active")),1)]),a("div",kl,[a("span",wl,i(f.direct_ads.total),1),a("span",bl,i(l(p)("workspaceFolder.stat_ads")),1)]),y[4]||(y[4]=a("div",{class:"route-stat route-stat--reach"},[a("span",{class:"route-stat-empty"},"—")],-1)),y[5]||(y[5]=a("div",{class:"route-actions"},null,-1))])):D("",!0),!f.previewLinks?.length&&!f.direct_ads?.total?(s(),o("p",xl,i(l(p)("workspaceFolder.no_resolved_links")),1)):D("",!0)]),L(f)>jt?(s(),ne(A,{key:0,variant:"secondary",size:"sm",class:"see-more-btn focusable !h-[30px] !rounded-full !px-3.5 !text-[12px] font-semibold",onClick:U=>G(f)},{default:$(()=>[H(f)?(s(),o(W,{key:0},[Y(i(l(p)("workspaceFolder.see_less")),1)],64)):(s(),o(W,{key:1},[Y(i(l(p)("workspaceFolder.see_more_n",{n:L(f)-jt})),1)],64))]),_:2},1032,["onClick"])):D("",!0)]))),128))])}}}),Il=Object.assign(Ge($l,[["__scopeId","data-v-3c1a5b2b"]]),{__name:"FavoriteWorkspaceFolderFunnelsTab"}),Al={class:"min-w-0 truncate max-w-[88px]"},Cl={key:0,class:"text-[10px] font-semibold leading-none"},Fl={class:"min-w-0 flex-1 truncate"},Ca=180,Tl=320,Sl=36,Pl=12,ut=6,zl=De({__name:"WorkspaceAdTags",props:{tags:{default:()=>[]},tagRegistry:{default:()=>[]}},emits:["assign","empty"],setup(I,{emit:m}){const p=I,N=m,{t:Z}=Ee(),{popoverInitial:L,popoverAnimate:j,popoverExit:H,popoverTransition:G}=Ks(),de=b(null),ee=b(null),O=b(null),B=b(!1),z=b(null),R=Q(()=>[...new Set((p.tags||[]).map(w=>String(w||"").trim()).filter(Boolean))]),h=Q(()=>(p.tagRegistry||[]).length>0);function y(w){return p.tagRegistry.find(le=>le.name===w)?.color||"#9e9e9e"}function M(w){const le=y(w);return{background:`${le}18`,borderColor:`${le}44`,color:le}}function A(){const w=Math.max(1,p.tagRegistry.length);return Math.min(Tl,w*Sl+Pl)}function f(){const w=ha(ee.value)||de.value;if(!w)return;const le=w.getBoundingClientRect(),te=window.innerWidth,Re=window.innerHeight,be=A();let me=le.left;me+Ca+8>te&&(me=Math.max(8,te-Ca-8)),me<8&&(me=8);const ye=Re-le.bottom-ut,Pe=le.top-ut,Be=ye>=be||ye>=Pe?le.bottom+ut:Pe>
2=be?le.top-ut-be:Math.max(8,le.top-ut-Pe);z.value={top:`${Be}px`,left:`${me}px`}}function U(){B.value=!1,z.value=null}function se(){if(!h.value){N("empty");return}if(B.value){U();return}B.value=!0,ct(()=>f())}function C(w){N("assign",w)}function d(w){const le=R.value.includes(w)?R.value.filter(te=>te!==w):[...R.value,w];C(le)}function _(w){C(R.value.filter(le=>le!==w))}function J(w){if(!B.value)return;const le=w.target;de.value?.contains(le)||ha(O.value)?.contains(le)||U()}function E(){B.value&&f()}function ve(w){w.key==="Escape"&&B.value&&U()}function fe(){window.addEventListener("mousedown",J,!0),window.addEventListener("scroll",E,!0),window.addEventListener("resize",E),window.addEventListener("keydown",ve)}function c(){window.removeEventListener("mousedown",J,!0),window.removeEventListener("scroll",E,!0),window.removeEventListener("resize",E),window.removeEventListener("keydown",ve)}return ue(B,w=>{w?fe():c()}),ue(()=>p.tagRegistry.length,w=>{!w&&B.value&&U()}),Ht(c),(w,le)=>{const te=Ne,Re=Xe,be=La;return s(),o("div",{ref_key:"rootRef",ref:de,class:"flex flex-wrap items-center gap-1",onClick:le[1]||(le[1]=Te(()=>{},["stop"]))},[(s(!0),o(W,null,re(R.value,me=>(s(),o("span",{key:me,class:"inline-flex max-w-full items-center gap-1 h-[18px] pl-1.5 pr-0.5 rounded-full border text-[10px] font-semibold leading-none",style:Se(M(me))},[a("span",{class:"size-[5px] rounded-full shrink-0",style:Se({background:y(me)}),"aria-hidden":"true"},null,4),a("span",Al,i(me),1),v(Re,{size:"sm","aria-label":l(Z)("common.remove"),title:l(Z)("common.remove"),class:"!size-3.5 !min-h-0 !rounded-full !border-0 !bg-transparent text-current opacity-55 hover:!border-transparent hover:!bg-transparent hover:opacity-100 hover:!text-error focus-visible:!ring-0",onClick:ye=>_(me)},{default:$(()=>[v(te,{name:"ph:x-bold",class:"size-2 text-current","aria-hidden":"true"})]),_:1},8,["aria-label","title","onClick"])],4))),128)),v(Re,{ref_key:"triggerRef",ref:ee,size:"sm",active:B.value,"aria-label":l(Z)("workspace.actions.add_tag"),title:h.value?l(Z)("workspace.actions.add_tag"):l(Z)("workspace.tags_registry_empty_hint"),"aria-expanded":B.value,class:Ae(["!h-[18px] !min-h-0 !w-auto gap-0.5 !rounded-full !px-1.5 !border-dashed !bg-transparent text-text-muted hover:!border-border-control hover:!bg-surface-hover hover:!text-text-secondary",B.value?"!border-primary/35 !bg-primary/[0.08] !text-primary":h.value?"":"!text-text-disabled"]),onClick:se},{default:$(()=>[v(te,{name:"ph:plus",class:"size-2 text-current","aria-hidden":"true"}),R.value.length?D("",!0):(s(),o("span",Cl,i(l(Z)("workspace.tags")),1))]),_:1},8,["active","aria-label","title","aria-expanded","class"]),(s(),ne(Pa,{to:"body"},[v(l(fn),{initial:!1},{default:$(()=>[B.value&&z.value?(s(),ne(l(qs).div,{key:"workspace-ad-tags",ref_key:"pickerRef",ref:O,role:"menu",class:"fixed z-[95] min-w-[180px] max-h-[320px] overflow-y-auto rounded-[12px] border border-border bg-card py-1.5 shadow-[0_18px_45px_rgba(15,23,42,0.16)] custom-scrollbar",style:Se(z.value),initial:l(L),animate:l(j),exit:l(H),transition:l(G),onClick:le[0]||(le[0]=Te(()=>{},["stop"]))},{default:$(()=>[(s(!0),o(W,null,re(I.tagRegistry,me=>(s(),ne(be,{key:me.name,active:R.value.includes(me.name),class:"!px-3 !py-2 !text-[12px] !font-medium",onClick:ye=>d(me.name)},{default:$(()=>[a("span",{class:"size-2 rounded-full shrink-0",style:Se({background:me.color||"#9e9e9e"}),"aria-hidden":"true"},null,4),a("span",Fl,i(me.name),1),R.value.includes(me.name)?(s(),ne(te,{key:0,name:"ph:check-bold",class:"size-[9px] shrink-0 text-current","aria-hidden":"true"})):D("",!0)]),_:2},1032,["active","onClick"]))),128))]),_:1},8,["style","initial","animate","exit","transition"])):D("",!0)]),_:1})]))],512)}}}),Rl=Object.assign(zl,{__name:"FavoriteWorkspaceAdTags"}),Ll={class:"ads-grid"},Ml={key:0,class:"mt-1 rounded-[10px] bg-primary/12 border border-primary/25 px-3 py-2.5 flex items-center gap-2.5"},Dl={class:"flex-1 min-w-0"},Ol={class:"text-[12px] font-semibold text-text-primary leading-tight"},El={class:"text-[11px] text-text-secondary mt-0.5"},Bl={key:0,class:"sentinel-loading"},Ul={key:1,class:"sentinel-done"},Nl=De({__name:"FolderAdsTab",props:{items:{type:Array,default:()=>[]},selectedKey:{type:String,default:null},starredAdIds:{type:Object,default:()=>new Set},tagRegistry:{type:Array,default:()=>[]},hasMore:{type:Boolean,default:!1},loadingMore:{type:Boolean,default:!1},total:{type:Number,default:0},loadedCount:{type:Number,default:0}},emits:["select","open-creator","load-more","assign-tags","tags-empty","ad-starred","ad-unstarred"],setup(I,{emit:m}){const{t:p}=Ee(),N=I,Z=m,{isAdsLibraryLimited:L,openUpgradeCta:j}=Ba(),H=Q(()=>Math.max(0,N.total-(N.loadedCount||N.items.length))),G=Q(()=>L.value&&H.value>0),de=b(null),ee=b(null);let O=null;function B(){O?.disconnect(),ee.value&&(O=new IntersectionObserver(z=>{z[0]?.isIntersecting&&N.hasMore&&!N.loadingMore&&Z("load-more")},{rootMargin:"400px",threshold:0}),O.observe(ee.value))}return Fa(()=>ct(()=>B())),Ht(()=>{O?.disconnect(),O=null}),ue(ee,()=>ct(()=>B())),ue(()=>N.hasMore,()=>ct(()=>B())),(z,R)=>{const h=Oa,y=mn,M=qe,A=qt;return s(),o("div",{ref_key:"sectionRef",ref:de,class:"ads-tab"},[a("div",Ll,[(s(!0),o(W,null,re(I.items,f=>(s(),ne(Ea,{key:f.id,ad:f,variant:"workspace",selected:I.selectedKey===f.id,onOpen:U=>z.$emit("select",f),onOpenCreator:R[1]||(R[1]=U=>
2z.$emit("open-creator",U)),onOpenFunnel:R[2]||(R[2]=U=>z.$emit("select",U))},{"header-trailing":$(()=>[v(h,{"item-id":f.id,type:"ad",starred:I.starredAdIds.has(f.id),"button-class":"shrink-0 p-0.5","icon-class":"size-[17px]",lite:"",onStarred:U=>z.$emit("ad-starred",f.id),onUnstarred:U=>z.$emit("ad-unstarred",f.id)},null,8,["item-id","starred","onStarred","onUnstarred"])]),"tags-notes":$(()=>[v(Rl,{tags:f.tags||[],"tag-registry":I.tagRegistry,onAssign:U=>z.$emit("assign-tags",{itemId:f.id,type:"ad",tags:U}),onEmpty:R[0]||(R[0]=U=>z.$emit("tags-empty"))},null,8,["tags","tag-registry","onAssign"])]),_:2},1032,["ad","selected","onOpen"]))),128))]),G.value?(s(),o("div",Ml,[v(y,{type:"lock",compact:"",class:"shrink-0"}),a("div",Dl,[a("p",Ol,i(l(p)("workspace.ads.upgrade_gate_title",{n:I.total})),1),a("p",El,i(l(p)("workspace.ads.upgrade_gate_body")),1)]),v(M,{size:"sm",class:"shrink-0 !h-[26px] font-semibold",onClick:R[3]||(R[3]=f=>l(j)())},{default:$(()=>[Y(i(l(p)("common.upgrade")),1)]),_:1})])):D("",!0),a("div",{ref_key:"sentinelEl",ref:ee,class:"scroll-sentinel","aria-hidden":"true"},[I.loadingMore?(s(),o("div",Bl,[v(A,{class:"size-4 text-primary"}),a("span",null,i(l(p)("workspace.ads.loading_more")),1)])):!I.hasMore&&!G.value&&I.items.length>0&&I.total>0?(s(),o("span",Ul,i(l(p)("workspace.ads.all_loaded",{n:I.total})),1)):D("",!0)],512)],512)}}}),Wl=Object.assign(Ge(Nl,[["__scopeId","data-v-cda018da"]]),{__name:"FavoriteWorkspaceFolderAdsTab"}),jl={class:"settings-wrap"},Vl={class:"settings-section"},Hl={class:"section-title"},Kl={class:"rename-row"},ql={key:0,class:"saved-label"},Gl={class:"settings-section"},Xl={class:"section-head"},Yl={class:"section-title"},Ql={class:"section-sub"},Zl={class:"count-badge"},Jl={key:0,class:"tag-grid"},ei={class:"tag-card-name"},ti={key:1,class:"tag-empty"},ai={class:"tag-composer"},si=["title"],ni={class:"palette-row"},oi={class:"settings-section"},ri={class:"section-head"},li={class:"section-title"},ii={class:"count-badge"},di={class:"creator-list"},ui={key:0,class:"empty-list"},ci=["src"],vi={key:1,class:"c-avatar c-avatar-placeholder"},pi={class:"c-info"},mi={class:"c-name"},fi={key:0,class:"c-domain"},gi={class:"add-creator-wrap"},_i={class:"add-creator-label"},hi={class:"settings-section"},yi={class:"section-head"},ki={class:"section-title"},wi={key:0,class:"count-badge"},bi={key:0,class:"empty-list"},xi={key:1,class:"hidden-group"},$i={class:"hidden-group-label"},Ii=["src"],Ai={key:1,class:"c-avatar c-avatar-placeholder"},Ci={class:"c-info flex-1 min-w-0"},Fi={class:"c-name"},Ti={class:"c-domain"},Si={key:2,class:"hidden-group"},Pi={class:"hidden-group-label"},zi=["src"],Ri={key:1,class:"ad-thumb-sm ad-thumb-placeholder"},Li={class:"c-info flex-1 min-w-0"},Mi={class:"c-name"},Di={class:"c-domain"},Oi={key:0,class:"creator-remove-dialog"},Ei={id:"folder-settings-remove-title",class:"creator-remove-title"},Bi={class:"creator-remove-body"},Ui={class:"creator-remove-card"},Ni=["src"],Wi={key:1,class:"creator-remove-avatar creator-remove-avatar-placeholder"},ji={class:"creator-remove-meta"},Vi={class:"creator-remove-name"},Hi={key:0,class:"creator-remove-domain"},Ki={class:"creator-remove-actions"},qi=De({__name:"FolderSettingsTab",props:{folder:{},creators:{},hiddenFunnels:{},hiddenAds:{}},emits:["rename-folder","remove-creator","open-finder","add-registry-tag","remove-registry-tag","unhide"],setup(I,{emit:m}){const{t:p}=Ee(),N=I,Z=m,L=b(N.folder?.name||""),j=b(!1);ue(()=>N.folder?.name,C=>{C&&(L.value=C)});function H(){!L.value.trim()||L.value.trim()===N.folder?.name||(Z("rename-folder",L.value.trim()),j.value=!0,setTimeout(()=>{j.value=!1},1800))}const G=b(""),de=Q(()=>{const C=G.value.trim().toLowerCase();return C?N.creators.filter(d=>(d.name||"").toLowerCase().includes(C)||(d.domain||"").toLowerCase().includes(C)):N.creators});function ee(C){return Array.isArray(C)?C.map(d=>typeof d=="string"?{name:d,color:Ia}:{name:d.name||"",color:d.color||Ia}).filter(d=>d.name):[]}const O=Q(()=>ee(N.folder?.tagRegistry?.ads)),B=b(""),z=b(_n),R=Q(()=>{const C=B.value.trim();return C?!O.value.some(d=>d.name===C):!1});function h(){const C=B.value.trim();!C||!R.value||(Z("add-registry-tag","ads",{name:C,color:z.value}),B.value="")}function y(C){Z("remove-registry-tag","ads",C)}const M=b(null);function A(C){M.value=C}function f(){M.value=null}function U(){const C=String(M.value?.page_id||M.value?.id||M.value?.itemId||"");C&&(Z("remove-creator",C),f())}function se(){Z("open-finder",N.creators.map(C=>String(C.page_id)))}return(C,d)=>{const _=za,J=qe,E=Ne,ve=Xe,fe=Da;return s(),o("div",jl,[a("section",Vl,[a("h3",Hl,i(l(p)("workspaceFolder.title")),1),a("div",Kl,[v(_,{modelValue:L.value,"onUpdate:modelValue":d[
20]||(d[0]=c=>L.value=c),type:"text",size:"lg",class:"rename-input min-w-0 flex-1 !w-auto",placeholder:l(p)("workspace.folder_name_placeholder"),onKeydown:ya(H,["enter"])},null,8,["modelValue","placeholder"]),v(J,{class:"save-btn",disabled:L.value.trim()===(I.folder?.name||"")||!L.value.trim(),onClick:H},{default:$(()=>[...d[6]||(d[6]=[Y(" Save ",-1)])]),_:1},8,["disabled"]),j.value?(s(),o("span",ql,i(l(p)("workspace.settings.saved")),1)):D("",!0)])]),a("section",Gl,[a("div",Xl,[a("div",null,[a("h3",Yl,i(l(p)("workspaceFolder.tabs.ads"))+" tags",1),a("p",Ql,i(l(p)("workspace.settings.ad_tags_sub")),1)]),a("span",Zl,i(O.value.length),1)]),O.value.length?(s(),o("div",Jl,[(s(!0),o(W,null,re(O.value,c=>(s(),o("div",{key:c.name,class:"tag-card",style:Se(`--tag-color:${c.color}`)},[d[7]||(d[7]=a("span",{class:"tag-card-dot"},null,-1)),a("span",ei,i(c.name),1),v(ve,{size:"sm",class:"tag-card-remove !border-0","aria-label":l(p)("common.remove"),title:l(p)("common.remove"),onClick:w=>y(c.name)},{default:$(()=>[v(E,{name:"ph:x-bold",class:"size-2.5 text-current","aria-hidden":"true"})]),_:1},8,["aria-label","title","onClick"])],4))),128))])):(s(),o("p",ti,i(l(p)("workspace.settings.no_tags")),1)),a("div",ai,[a("div",{class:"tag-composer-color",style:Se(`background:${z.value}`),title:l(p)("workspace.settings.tag_color")},[v(E,{name:"ph:palette",class:"size-3.5 text-white","aria-hidden":"true"})],12,si),v(_,{modelValue:B.value,"onUpdate:modelValue":d[1]||(d[1]=c=>B.value=c),type:"text",class:"tag-composer-input !w-auto !border-0 !bg-transparent !shadow-none",placeholder:l(p)("workspace.settings.new_tag_placeholder"),maxlength:"30",onKeydown:ya(h,["enter"])},null,8,["modelValue","placeholder"]),v(J,{class:"tag-composer-submit",disabled:!R.value,onClick:h},{iconLeft:$(()=>[v(E,{name:"ph:plus-bold",class:"size-2.5 text-current","aria-hidden":"true"})]),default:$(()=>[Y(" "+i(l(p)("workspace.settings.add")),1)]),_:1},8,["disabled"])]),a("div",ni,[(s(!0),o(W,null,re(l(gn),c=>(s(),ne(J,{key:c,variant:"ghost",size:"sm",class:Ae(["palette-swatch",{"is-active":z.value===c}]),style:Se(`background:${c}`),"aria-label":c,onClick:w=>z.value=c},null,8,["style","class","aria-label","onClick"]))),128))])]),a("section",oi,[a("div",ri,[a("h3",li,[d[8]||(d[8]=Y("Creators ",-1)),a("span",ii,i(I.creators.length),1)])]),a("div",di,[de.value.length?D("",!0):(s(),o("div",ui,i(l(p)("workspace.settings.no_creators")),1)),(s(!0),o(W,null,re(de.value,c=>(s(),o("div",{key:c.page_id,class:"creator-row"},[c.avatar?(s(),o("img",{key:0,src:c.avatar,class:"c-avatar",onError:d[2]||(d[2]=w=>w.target.style.display="none")},null,40,ci)):(s(),o("span",vi,i((c.name||"?").charAt(0).toUpperCase()),1)),a("div",pi,[a("p",mi,i(c.name),1),c.domain?(s(),o("p",fi,i(c.domain),1)):D("",!0)]),v(ve,{size:"sm",class:"c-remove !border-0 !bg-transparent","aria-label":l(p)("workspace.settings.remove_from_folder"),title:l(p)("workspace.settings.remove_from_folder"),onClick:w=>A(c)},{default:$(()=>[v(E,{name:"ph:x",class:"size-[13px] text-current","aria-hidden":"true"})]),_:1},8,["aria-label","title","onClick"])]))),128))]),a("div",gi,[a("p",_i,i(l(p)("workspaceFolder.add_creator_label")),1),v(J,{variant:"secondary",size:"sm",onClick:se},{iconLeft:$(()=>[v(E,{name:"ph:plus-bold",class:"size-3","aria-hidden":"true"})]),default:$(()=>[Y(" "+i(l(p)("workspaceFolder.add_creator")),1)]),_:1})])]),a("section",hi,[a("div",yi,[a("h3",ki,[d[9]||(d[9]=Y(" Hidden items ",-1)),I.hiddenFunnels.length+I.hiddenAds.length>0?(s(),o("span",wi,i(I.hiddenFunnels.length+I.hiddenAds.length),1)):D("",!0)])]),d[14]||(d[14]=a("p",{class:"hidden-hint"},"Funnels and ads you hid. Restore them to make them visible again.",-1)),!I.hiddenFunnels.length&&!I.hiddenAds.length?(s(),o("div",bi,i(l(p)("workspace.settings.no_hidden")),1)):D("",!0),I.hiddenFunnels.length?(s(),o("div",xi,[a("p",$i,[v(E,{name:"ph:eye",class:"size-[11px] shrink-0 text-current","aria-hidden":"true"}),d[10]||(d[10]=Y(" Funnels ",-1))]),(s(!0),o(W,null,re(I.hiddenFunnels,c=>(s(),o("div",{key:c.page_id,class:"hidden-row"},[c.avatar?(s(),o("img",{key:0,src:c.avatar,class:"c-avatar",onError:d[3]||(d[3]=w=>w.target.style.display="none")},null,40,Ii)):(s(),o("span",Ai,i((c.creator||c.domain||"?").charAt(0).toUpperCase()),1)),a("div",Ci,[a("p",Fi,i(c.creator||c.domain||"Funnel"),1),a("p",Ti,i(c.domain||""),1)]),v(J,{variant:"secondary",size:"sm",class:"restore-btn",onClick:w=>Z("unhide",{itemId:c.page_id,type:"funnel",hidden:!1})},{default:$(()=>[...d[11]||(d[11]=[Y("Restore",-1)])]),_:1},8,["onClick"])]))),128))])):D("",!0),I.hiddenAds.length?(s(),o("div",Si,[a("p",Pi,[v(E,{name:"ph:monitor",class:"size-[11px] shrink-0 text-current","aria-hidden":"true"}),d[12]||(d[12]=Y(" Ads ",-1))]),(s(!0),o(W,null,re(I.hiddenAds,c=>(s(),o("div",{key:c.id,class:"hidden-row"},[l(bt)(c)?(s(),o("img",{key:0,src:l(bt)(c),class:"ad-thumb-sm",onError:d[4]||(d[4]=w=>w.target.style.display="none")},null,40,zi)):(s(),o("div",Ri)),a("div",Li,[a("p",Mi,i(c.headline||c.advertiser||"Ad"),1),a("p",Di,i(c.advertiser),1)]),v(J,{variant:"secondary",size:"sm",class:"restore-btn",onClick:w=>Z("unhide",{itemId:c.id,type:"ad",hidden:!1})},{default:$(()=>[...d[13]||(d[13]=[Y("Restore",-1)])]),_:1},8,["onClick"])]))),128))])):D("",!0)]),v(fe,{show:!!M.value,bare:"","z-class":"z-[70]","labelled-by":"folder-settings-remove-title",onClose:f},{default:$(()=>[M.value?(s(),o("div",Oi,[a("p",Ei,i(l(p)("workspace.settings.remove_creator_modal.title")),1),a("p",Bi,i(l(p)("workspace.settings.remove_creator_modal.body",{name:M.value.name||l(p)("workspace.settings.creator_fallback")})),1),a("div",Ui,[M.value.avatar?(s(),o("img",{key:0,src:M.value.avatar,class:"creator-remove-avatar",onError:d[5]||(d[5]=c=>c.target.style.display="none")},null,40,Ni)):(s(),o("span",Wi,i((M.value.name||"?").charAt(0).toUpperCase()),1)),a("div",ji,[a("p",Vi,i(M.value.name||l(p)("workspace.settings.creator_fallback")),1),M.value.domain?(s(),o("p",Hi,i(M.value.domain),1)):D("",!0)])]),a("div",Ki,[v(J,{variant:"secondary",class:"creator-remove-secondary",onClick:f},{default:$(()=>[Y(i(l(p)("workspace.settings.remove_creator_modal.cancel")),1)]),_:1}),v(J,{class:"creator-remove-danger",onClick:U},{default:$(()=>[Y(i(l(p)("workspace.settings.remove_creator_modal.confirm")),1)]),_:1})])])):D("",!0)]),_:1},8,["show"])])}}}),Gi=Object.assign(Ge(qi,[["__scopeId","data-v-2ff66336"]]),{__name:"FavoriteWorksp
2aceFolderSettingsTab"}),Xi={class:"activity-shell"},Yi={class:"activity-head"},Qi={class:"min-w-0"},Zi={class:"activity-title"},Ji={class:"activity-subtitle"},ed={class:"activity-body"},td={key:0,class:"activity-loading"},ad={key:1,class:"activity-empty"},sd={class:"activity-empty-title"},nd={class:"activity-empty-hint"},od={key:2,class:"activity-feed"},rd={class:"activity-group-label"},ld={class:"activity-row"},id={class:"activity-avatar"},dd=["src","onError"],ud={key:1,class:"activity-avatar-fallback"},cd={class:"activity-copy"},vd={class:"activity-copy-line"},pd={class:"activity-headline"},md={class:"activity-time"},fd={key:0,class:"activity-previews"},gd=["src","onError"],_d={key:1,class:"activity-preview-fallback","aria-hidden":"true"},hd={key:2,class:"activity-preview-video","aria-hidden":"true"},yd=De({__name:"FolderActivitySidebar",props:{folderId:{type:String,required:!0}},emits:["open-creator","open-funnel","open-ad","open-reel"],setup(I){const{t:m,locale:p}=Ee(),N=I,Z=Ra(),L=b(!1),j=b([]),H=b(new Set),G=b(new Set),de=Q(()=>{const d=new Map;for(const _ of j.value){const J=ee(_);d.has(J)||d.set(J,{key:J,label:O(_),events:[]}),d.get(J).events.push(_)}return[...d.values()]});function ee(d){return typeof d.date=="string"&&d.date.length>=10?d.date.slice(0,10):d.ts?new Date(d.ts).toISOString().slice(0,10):"unknown"}function O(d){const _=B(d);if(!_)return m("workspace.activity.unknownDate");const J=new Date,E=new Date(J.getFullYear(),J.getMonth(),J.getDate()),ve=new Date(_.getFullYear(),_.getMonth(),_.getDate()),fe=Math.floor((E.getTime()-ve.getTime())/864e5);return fe===0?m("workspace.activity.today"):fe===1?m("workspace.activity.yesterday"):_.toLocaleDateString(p.value,{day:"numeric",month:"short"})}function B(d){if(d.ts)return new Date(d.ts);if(d.date){const _=new Date(d.date);if(!Number.isNaN(_.getTime()))return _}return null}function z(d){const _=B(d);if(!_)return"";const J=Date.now()-_.getTime(),E=Math.floor(J/6e4);if(E<60)return m("workspace.activity.time.minutes",{n:Math.max(1,E)});const ve=Math.floor(E/60);if(ve<24)return m("workspace.activity.time.hours",{n:ve});const fe=Math.floor(ve/24);return fe<14?m("workspace.activity.time.days",{n:fe}):_.toLocaleDateString(p.value,{day:"numeric",month:"short"})}function R(d){return String(d||"?").trim().charAt(0).toUpperCase()}function h(d){if(d.type==="new_funnel")return[{kind:"funnel",funnelId:d.funnelId,pageId:d.funnelPageId,label:d.funnelDomain||m("workspace.activity.unknownFunnel")},{kind:"text",text:` ${m("workspace.activity.from")} `,tone:"muted"},{kind:"creator",pageId:d.creatorPageId,label:d.creatorName}];if(d.type==="new_reels"){const ve=d.reelCount>1?m("workspace.activity.reelPlural"):m("workspace.activity.reelSingular");return[{kind:"creator",pageId:d.creatorPageId,label:d.creatorName},{kind:"text",text:` ${m("workspace.activity.posted")} `,tone:"muted"},{kind:"text",text:String(d.reelCount),tone:"count"},{kind:"text",text:` ${ve}`,tone:"muted"}]}const _=d.adCount>1?m("workspace.activity.adPlural"):m("workspace.activity.adSingular"),J=d.isActive?m("workspace.activity.running"):m("workspace.activity.launched"),E=[{kind:"creator",pageId:d.creatorPageId,label:d.creatorName},{kind:"text",text:` ${J} `,tone:"muted"},{kind:"text",text:String(d.adCount),tone:"count"},{kind:"text",text:` ${_}`,tone:"muted"}];return d.funnelDomain&&(E.push({kind:"text",text:` ${m("workspace.activity.on")} `,tone:"muted"}),E.push({kind:"funnel",funnelId:d.funnelId,pageId:d.funnelPageId,label:d.funnelDomain})),E}function y(d){return d.type==="new_reels"?d.reelPreviews||[]:d.adPreviews||[]}function M(d){return y(d).slice(0,4)}function A(d){return Math.max(0,y(d).length-4)}function f(d){return d.shortcode||d.ad_id||d.thumbnail||"preview"}function U(d){H.value=new Set([...H.value,d])}function se(d){G.value=new Set([...G.value,d])}async function C(){if(N.folderId){L.value=!0,H.value=new Set,G.value=new Set;try{const d=await Z("/api/favorites/folder-activity",{params:{folderId:N.folderId}});j.value=d?.events||[]}catch{j.value=[]}finally{L.value=!1}}}return ue(()=>N.folderId,d=>{d&&C()},{immediate:!0}),(d,_)=>{const J=Ne,E=Xe,ve=qt,fe=Kt;return s(),o("div",Xi,[a("header",Yi,[a("div",Qi,[a("h3",Zi,i(l(m)("workspace.activity.title")),1),a("p",Ji,i(l(m)("workspace.activity.subtitle")),1)]),v(E,{size:"sm",class:"refresh-btn !size-7 2xl:!size-7 !rounded-[8px] !border-transparent !bg-transparent text-text-muted hover:!bg-surface-hover hover:!text-text-primary hover:!border-transparent disabled:!opacity-45",disabled:L.value,"aria-label":l(m)("workspace.activity.refresh"),onClick:C},{default:$(()=>[v(J,{name:"ph:arrow-clockwise",class:Ae(["size-3.5 text-current",L.value?"spin":""]),"aria-hidden":"true"},null,8,["class"])]),_:1},8,["disabled","aria-label"])]),a("div",ed,[L.value?(s(),o("div",td,[v(ve,{class:"size-5 text-primary"}),a("span",null,i(l(m)("common.loading")),1)])):j.value.length?(s(),o("div",od,[(s(!0),o(W,null,re(de.value,c=>(s(),o("section",{key:c.key,class:"activity-group"},[a("div",rd,[a("span",null,i(c.label),1),_[0]||(_[0]=a("span",{class:"activity-group-line","aria-hidden":"true"},null,-1))]),(s(!0),o(W,null,re(c.events,(w,le)=>(s(),o("article",{key:`${c.key}-${le}`,class:"activity-item"},[a("div",ld,[a("div",id,[w.creatorAvatar&&!H.value.has(w.creatorPageId)?(s(),o("img",{key:0,src:w.creatorAvatar,class:"size-full object-cover",alt:"",onError:te=>U(w.creatorPageId)},null,40,dd)):(s(),o("span",ud,i(R(w.creatorName)),1))]),a("div",cd,[a("div",vd,[a("p",pd,[(s(!0),o(W,null,re(h(w),(te,Re)=>(s(),o(W,{key:`${c.key}-${le}-${Re}`},[te.kind==="creator"?(s(),ne(fe,{key:0,class:"activity-link !inline !p-0 !gap-0 font-semibold !text-[inherit] !leading-[inherit] !text-text-primary hover:!text-primary",onClick:be=>d.$emit("open-creator",te.pageId,be)}
2,{default:$(()=>[Y(i(te.label),1)]),_:2},1032,["onClick"])):te.kind==="funnel"?(s(),ne(fe,{key:1,class:"activity-link !inline !p-0 !gap-0 font-semibold !text-[inherit] !leading-[inherit] !text-text-primary hover:!text-primary",onClick:be=>d.$emit("open-funnel",te.funnelId,te.pageId)},{default:$(()=>[Y(i(te.label),1)]),_:2},1032,["onClick"])):(s(),o("span",{key:2,class:Ae(te.tone==="count"?"activity-count":"activity-muted")},i(te.text),3))],64))),128))]),a("span",md,i(z(w)),1)])])]),y(w).length?(s(),o("div",fd,[(s(!0),o(W,null,re(M(w),te=>(s(),ne(E,{key:f(te),class:Ae(["activity-preview !p-0 overflow-hidden !border-border-light !bg-surface hover:!bg-surface hover:!border-primary/30",w.type==="new_reels"?"activity-preview--reel !w-[32px] !h-[48px] 2xl:!w-[32px] 2xl:!h-[48px] !rounded-[6px]":"!w-[40px] !h-[40px] 2xl:!w-[40px] 2xl:!h-[40px] !rounded-[7px]"]),title:te.headline||(w.type==="new_reels"?l(m)("workspace.activity.reelPreviewFallback"):l(m)("workspace.activity.previewFallback")),"aria-label":te.headline||(w.type==="new_reels"?l(m)("workspace.activity.reelPreviewFallback"):l(m)("workspace.activity.previewFallback")),onClick:Re=>w.type==="new_reels"?d.$emit("open-reel",te,w):d.$emit("open-ad",te.ad_id,w)},{default:$(()=>[te.thumbnail&&!G.value.has(f(te))?(s(),o("img",{key:0,src:te.thumbnail,class:"size-full object-cover",alt:"",onError:Re=>se(f(te))},null,40,gd)):(s(),o("span",_d)),te.isVideo||w.type==="new_reels"?(s(),o("span",hd)):D("",!0)]),_:2},1032,["class","title","aria-label","onClick"]))),128)),A(w)>0?(s(),ne(E,{key:0,class:"activity-preview activity-preview--more !w-[40px] !h-[40px] 2xl:!w-[40px] 2xl:!h-[40px] !rounded-[7px] !p-0 !border-border-light !bg-surface hover:!bg-surface hover:!border-primary/30","aria-label":`+${A(w)}`,onClick:te=>d.$emit("open-creator",w.creatorPageId,te)},{default:$(()=>[Y(" +"+i(A(w)),1)]),_:2},1032,["aria-label","onClick"])):D("",!0)])):D("",!0)]))),128))]))),128))])):(s(),o("div",ad,[a("p",sd,i(l(m)("workspace.activity.noActivity")),1),a("p",nd,i(l(m)("workspace.activity.noActivityHint")),1)]))])])}}}),kd=Object.assign(Ge(yd,[["__scopeId","data-v-ea3a841c"]]),{__name:"FavoriteWorkspaceFolderActivitySidebar"}),wd={class:"workspace-page page-shell h-full"},bd={class:"workspace-shell"},xd={class:"workspace-header"},$d={class:"workspace-header-top"},Id={class:"count-pill"},Ad={key:1,class:"flex items-center gap-1.5 px-2 py-1 rounded-full bg-success/10 border border-success/25 text-success text-[11px] font-medium select-none"},Cd={class:"flex items-center -space-x-1.5 mr-0.5"},Fd=["title"],Td=["src","alt"],Sd={key:1,class:"text-[8px] text-white font-bold leading-none"},Pd={class:"relative toolbar-dropdown"},zd={key:0,class:"dropdown-menu"},Rd={class:"truncate"},Ld={class:"text-text-muted"},Md={class:"workspace-header-bottom"},Dd={class:"tab-strip",role:"tablist"},Od={class:"inline-flex items-center gap-1.5"},Ed={class:"workspace-body"},Bd={key:0,class:"h-full overflow-y-auto px-[18px] py-4"},Ud={class:"mb-6"},Nd={class:"flex flex-wrap gap-4"},Wd={class:"mb-6"},jd={class:"grid gap-4 grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4"},Vd={class:"flex flex-col gap-2.5 p-3"},Hd={class:"flex items-center gap-2"},Kd={class:"grid gap-4 grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4"},qd={key:1,class:"workspace-content-shell"},Gd={class:"workspace-content"},Xd={key:0,class:"workspace-filters-sticky"},Yd={key:2,class:"derived-tab-wrap"},Qd={key:0,class:"derived-loading"},Zd={key:1,class:"derived-empty"},Jd={key:2,class:"derived-empty"},eu={key:3,class:"derived-tab-wrap"},tu={key:0,class:"derived-loading"},au={key:1,class:"derived-empty"},su={key:2,class:"derived-empty"},nu={class:"activity-collapsed-label"},ou={class:"tag-delete-dialog",role:"dialog","aria-modal":"true"},ru={class:"tag-delete-title"},lu={class:"tag-delete-body"},iu={class:"tag-delete-actions"},du={class:"w-[320px] rounded-[16px] bg-card p-5 shadow-xl"},uu={class:"text-[15px] font-semibold text-text-primary"},cu={class:"mt-2 text-[12px] leading-5 text-text-subtle"},vu={class:"mt-4 flex items-center justify-end gap-2"},pu=De({__name:"[folderId]",setup(I){const{t:m}=Ee(),p=b(!1),N=Ut(()=>Nt(()=>import("./DD2Wax1k.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34]),import.meta.url)),Z=Ut(()=>Nt(()=>import("./D5WyEhcA.js"),__vite__mapDeps([35,2,3,5,36,37,9,38,10,39,24,11,21,40,41,42,43,44,7,45,20,22,1,4,16,17,46,14,23,30,12,13,47,48,49,50,33,51,25,26,27,28,32]),import.meta.url)),L=Ut(()=>Nt(()=>import("./CawKEfZB.js"),__vite__mapDeps([52,2,3,37,5,36,9,38,10,39,24,11,21,40,41,42,43,44,7,45,20,22,1,4,16,17,46,14,23,30,12,13,47,48,49,50,33,51,53,54,29,25,26,27,28,55,18,56,57,32,31,58,59]),import.meta.url));yn(),bn();const j=Gs(),H=Xs(),{drawerRouteState:G,replaceDrawerRoute:de,pushDrawerRoute:ee,backDrawerRoute:O}=Ys(),B=xn(),z=Ra(),{starredAdIds:R,loadStarredAdIds:h,onAdStarred:y,onAdUnstarred:M}=kn(),{status:A,hasResolvedBusinessData:f}=Ta(),{isAdsLibraryLimited:U}=Ba(),{open:se}=$n(),{folders:C,loadFolders:d,loaded:_,renameFolder:J,deleteFolder:E,duplicateFolder:ve,incrementFolderCount:fe}=In(),c=Q(()=>String(j.params.folderId||"")),w=Q(()=>C.value.find(e=>e.id===c.value)||null),le=An(),te=Q(()=>le.value[Aa({folderId:c.value,scope:"workspace"})]||null),Re=Cn(),be=Q(()=>Re.value.filter(e=>e.currentFolderId===c.value)),me=[{id:"home",label:m("workspaceFolder.tabs.home")},{id:"creators",label:m("workspaceFolder.tabs.creators")},{id:"funnels",label:m("workspaceFolder.tabs.funnels")},{id:"ads",label:m("workspaceFolder.tabs.ads")},{id:"settings",label:m("workspaceFolder.tabs.settings")}
2],ye=b(!0),Pe=b(!1),Be=b(!1),Ye=b(!1),x=b(!1),S=b(!0),ge=b(!1),q=b("home"),oe=b([]),ie=b([]),X=b([]),ke=b(0),Qe=b(0),k=b(!1),ze=b(!1),xt=b(!1),we=b(null);function Na(e){const t=e?.shortcode;!t||Wt(we.value)!==t||(we.value={...we.value,...e})}function Wa(e,t){const n=Wt(e);if(!n||Wt(we.value)!==n)return;const r={...we.value,starred:t};t&&!r.video_url&&(r.video_assets_status=r.video_assets_status||"pending"),we.value=r}const pe=b([]),vt=b(!1),ae=b(null),_e=b(null),Ce=b(!1),ce=b(null),Gt=b(!1),Xt=b(!1),Yt=b(!1);ue(()=>!!_e.value,e=>{e&&(Gt.value=!0)},{immediate:!0}),ue(Ce,e=>{e&&(Xt.value=!0)},{immediate:!0}),ue(()=>!!ce.value,e=>{e&&(Yt.value=!0)},{immediate:!0});const $t=Q(()=>Ce.value),Ze=b([]),It=b(!1),V=b(kt());let Qt=null,pt=0,mt=0,ot=0,ft=0,At=0,gt=0,Ct=0,Ft="",Tt="";function ja(){ie.value=[],X.value=[],ke.value=0,Qe.value=0,k.value=!1,Ze.value=[],pe.value=[],vt.value=!1,Ft="",Tt=""}function rt(){ja()}async function Va(){const e=c.value;if(!e||Tt===e)return;const t=++Ct;try{const n=await z("/api/favorites/creator-previews",{params:{folderId:e}});if(t!==Ct||c.value!==e)return;const r=n?.previews||{};oe.value=oe.value.map(g=>{if(g.favoriteType!=="creator"||!g.page_id)return g;const K=r[g.page_id];return K?{...g,topAdsPreview:K}:g}),Tt=e}catch(n){if(t!==Ct||c.value!==e)return;console.error("Failed to load creator previews",n)}}async function Je(e){const t=c.value;if(e==="home"){if(Ft===t)return;Ft=t,ht({signal:"home"}),it({preview:!0}),((r,g)=>{typeof ba<"u"?ba(r,{timeout:g+400}):setTimeout(r,g)})(()=>{es()},400);return}if(e==="creators"){Va();return}if(e==="funnels"){await it();return}if(e==="ads"){await ht({signal:"tab"});return}e==="settings"&&await Promise.all([it(),Ja()])}function et(){return{creatorId:null,funnelPageId:null,funnelId:null,funnelUrl:null,funnelCreator:null,funnelAvatar:null,funnelDomain:null,funnelBuilder:null,funnelAdsOpen:!1,adId:null}}function Ha(e){if(!e)return null;const t=ce.value;if(t?.adId===e)return t;const n=Array.isArray(t?.adIds)&&t.adIds.length>0?t.adIds:X.value.map(r=>r.id).filter(Boolean);return{adId:e,adIds:n.length?n:[e]}}const We=b(!1),tt=b(""),Zt=b(null);ue(w,e=>{We.value||(tt.value=e?.name||"")},{immediate:!0});async function Ka(){x.value=!1,We.value=!1,ae.value=null,V.value=kt(),we.value=null,rt();const e=q.value==="home";q.value="home";const t=_.value?Promise.resolve():d(),n=zt();h(),e&&Je("home"),await Promise.all([t,n])}ue(()=>[c.value,A.value,f.value],([e,t,n])=>{if(!e||t!=="authenticated"||!n)return;const r=`${e}:${t}:${n}`;Qt!==r&&(Qt=r,Ka())},{immediate:!0});function Jt(e){return!e?.page_id||oe.value.some(t=>t.page_id===e.page_id)?!1:(oe.value=[{...e,favoriteType:"creator"},...oe.value],Ze.value=Ze.value.filter(t=>t.page_id!==e.page_id),!0)}{let e=function(u,T=300){let P=null;return()=>{P&&clearTimeout(P),P=setTimeout(()=>{u()},T)}},t=function(u,T){if(!u)return{item:u,changed:!1};const P=[...T.tags];if(T.itemType==="creator"&&u.favoriteType==="creator"&&(u.page_id||u.id)===T.itemId)return{item:{...u,tags:P},changed:!0};if(T.itemType==="ad"&&u.favoriteType==="ad"&&String(u.id)===String(T.itemId))return{item:{...u,tags:P},changed:!0};if(T.itemType!=="funnel"||u.favoriteType!=="funnel")return{item:u,changed:!1};if(T.routePageId){if(u.page_id!==T.routePageId)return{item:u,changed:!1};let Fe=!1;const Ie=(u.previewLinks||[]).map(he=>he.funnel_id!==T.itemId?he:(Fe=!0,{...he,tags:P}));return Fe?{item:{...u,previewLinks:Ie},changed:Fe}:{item:u,changed:!1}}return(u.page_id||u.id)===T.itemId?{item:{...u,tags:P},changed:!0}:{item:u,changed:!1}},n=function(u,T){let P=!1;const Fe=u.map(Ie=>{const he=t(Ie,T);return he.changed&&(P=!0),he.item});return{next:P?Fe:u,changed:P}},r=function(u,T,P){if(!u)return u;const Fe=T==="creators"?"creator":T==="funnels"?"funnel":"ad";if(u.favoriteType!==Fe)return u;const Ie={...u};return Array.isArray(u.tags)&&u.tags.includes(P)&&(Ie.tags=u.tags.filter(he=>he!==P)),T==="funnels"&&Array.isArray(u.previewLinks)&&(Ie.previewLinks=u.previewLinks.map(he=>Array.isArray(he.tags)&&he.tags.includes(P)?{...he,tags:he.tags.filter(Oe=>Oe!==P)}:he)),Ie},g=function(u){if(u.itemType==="ad"){if(u.hidden){const T=X.value.find(P=>P.id===u.itemId);X.value=X.value.filter(P=>P.id!==u.itemId),T&&(ke.value=Math.max(0,ke.value-1),pe.value.some(P=>P.id===T.id)||(pe.value=[{...T,hidden:!0},...pe.value]))}else{const T=pe.value.find(P=>P.id===u.itemId);pe.value=pe.value.filter(P=>P.id!==u.itemId),T&&!X.value.some(P=>P.id===T.id)&&(X.value=[{...T,hidden:!1},...X.value],ke.value=ke.value+1)}ae.value?.favoriteType==="ad"&&ae.value.id===u.itemId&&u.hidden&&(ae.value=null);return}if(u.routePageId){ie.value=ie.value.map(T=>T.page_id!==u.routePageId?T:{...T,previewLinks:u.hidden?(T.previewLinks||[]).filter(P=>P.funnel_id!==u.itemId):T.previewLinks});return}ie.value=ie.value.map(T=>T.page_id===u.itemId?{...T,hidden:u.hidden}:T),ae.value?.favoriteType==="funnel"&&ae.value.page_id===u.itemId&&u.hidden&&(ae.value=null)},K=function(u,T,P,Fe){if(!T||!P)return u;let Ie=!1;const he=u.map(Oe=>Oe.favoriteType!==T||(Oe.id||Oe.page_id)!==P?Oe:(Ie=!0,{...Oe,note:Fe}));return Ie?he:u},Me=function(u){if(u.scope==="workspace"){C.value=C.value.map(T=>T.id===u.folderId?{...T,workspaceNote:u.note}:T);return}oe.value=K(oe.value,u.itemType,u.itemId,u.note),ie.value=K(ie.value,u.itemType,u.itemId,u.note),X.value=K(X.value,u.itemType,u.itemId,u.note),pe.value=K(pe.value,u.itemType,u.itemId,u.note),ae.value&&(
2ae.value.id||ae.value.page_id)===u.itemId&&(ae.value={...ae.value,note:u.note})};const xe=Fn(),$e=Tn(),Ue=Sn(),Ke=Pn(),Ot=zn(),Et=Rn();ue($e,u=>{if(!u||u.folderId!==c.value)return;let T=!1;if(u.itemType==="creator"){const P=n(oe.value,u);oe.value=P.next,T=P.changed}else if(u.itemType==="ad"){const P=n(X.value,u),Fe=n(pe.value,u);X.value=P.next,pe.value=Fe.next,T=P.changed||Fe.changed}else if(u.itemType==="funnel"){const P=n(ie.value,u);ie.value=P.next,T=P.changed}ae.value&&(ae.value=t(ae.value,u).item),!T&&u.itemType==="creator"&&zt(),!T&&u.itemType==="ad"&&ht({signal:q.value==="ads"?"tab":"home"}),!T&&u.itemType==="funnel"&&it({preview:q.value!=="funnels"})},{deep:!1}),ue(Ue,u=>{if(!u||u.folderId!==c.value||(C.value=C.value.map(P=>P.id===u.folderId?{...P,tagRegistry:u.tagRegistry}:P),!u.cascadeRemovedTag))return;const T=u.cascadeRemovedTag;oe.value=oe.value.map(P=>r(P,u.registryType,T)),ie.value=ie.value.map(P=>r(P,u.registryType,T)),X.value=X.value.map(P=>r(P,u.registryType,T)),pe.value=pe.value.map(P=>r(P,u.registryType,T)),ae.value&&(ae.value=r(ae.value,u.registryType,T))},{deep:!1}),ue(Ke,u=>{!u||u.folderId!==c.value||g(u)},{deep:!1}),ue(Ot,u=>{!u||u.folderId!==c.value||u.itemType!=="creator"||!u.item||Jt(u.item)&&(fe(c.value,1),rt(),Je(q.value))},{deep:!1}),ue(Et,u=>{!u||u.folderId!==c.value||Me(u)},{deep:!1});async function wt(){await zt(),rt(),await Je(q.value)}ue(()=>xe.value.favorites,e(wt)),ue(()=>xe.value.tags,e(()=>d({force:!0}))),ue(()=>xe.value.note,e(wt)),ue(()=>xe.value.folders,e(()=>d({force:!0})))}ue(q,async e=>{if(Je(e),ae.value&&e!=="home"){const t=ae.value.favoriteType;(e==="creators"&&t!=="creator"||e==="funnels"&&t!=="funnel"||e==="ads"&&t!=="ad")&&(ae.value=null)}V.value=kt()});let _t=null;function qa(){q.value==="ads"&&(_t&&clearTimeout(_t),_t=setTimeout(()=>{_t=null,ht({signal:"tab"})},120))}ue(()=>[V.value.sortBy,V.value.live,V.value.mediaType,V.value.creatorId,V.value.topAds,V.value.adRankPct,V.value.adRankMax],qa);const ea=Q(()=>Ps(oe.value,"creators")),Ga=Q(()=>ie.value.filter(e=>!e.hidden)),St=Q(()=>X.value),Xa=Q(()=>ie.value.filter(e=>e.hidden)),ta=Q(()=>q.value==="creators"?ea.value:q.value==="funnels"?Ga.value:q.value==="ads"?St.value:oe.value),lt=Q(()=>{let e=[...ta.value];const t=(V.value.search||"").trim().toLowerCase();if(q.value==="creators")return e;if(q.value==="funnels"){V.value.creatorId&&V.value.creatorId!=="all"&&(e=e.filter(g=>g.page_id===V.value.creatorId)),e=e.map(g=>Ms(g,V.value)).filter(Boolean),e=ln(e,{...V.value,search:"",creatorId:"all",funnelStatus:"all",scaling:"all",sortBy:"default"});const r=V.value.sortBy;return r&&r!=="default"&&(r==="active_ads"?e=[...e].sort((g,K)=>(K.active_ads||0)-(g.active_ads||0)):r==="total_ads"?e=[...e].sort((g,K)=>(K.total_ads||0)-(g.total_ads||0)):r==="tracking"&&(e=[...e].sort((g,K)=>(K.first_detection_days||0)-(g.first_detection_days||0)))),e}t&&(e=e.filter(r=>zs(r).includes(t))),V.value.niche&&V.value.niche!=="all"&&(e=e.filter(r=>r.niche===V.value.niche)),q.value==="ads"&&!U.value&&V.value.tags?.length&&(e=e.filter(r=>dn(r,V.value.tags))),V.value.hasNote&&(e=e.filter(r=>!!r.note)),V.value.pinnedOnly&&(e=e.filter(r=>Ds(r))),q.value==="creators"&&V.value.status&&V.value.status!=="all"&&(e=e.filter(r=>r.status===V.value.status)),q.value==="ads"&&!U.value&&(e=un(e,{...V.value,search:"",creatorId:"all",mediaType:"all",live:"all",sortBy:"default",tags:void 0,niche:"all"}));const n=V.value.sortBy;return n&&n!=="default"&&q.value==="creators"&&(n==="active_ads"?e=[...e].sort((r,g)=>(g.active_ads||0)-(r.active_ads||0)):n==="total_ads"?e=[...e].sort((r,g)=>(g.total_ads||0)-(r.total_ads||0)):n==="rank"&&(e=[...e].sort((r,g)=>(r.rank??9999)-(g.rank??9999)))),e}),aa=Q(()=>w.value?.tagRegistry?.ads||[]),Ya=Q(()=>w.value?.tagRegistry?.creators||[]),Pt=Q(()=>st(ae.value)),Qa=Q(()=>_e.value?"right-[500px]":"right-0");async function zt(){const e=c.value;if(!e)return;const t=++pt;ye.value=!0;try{const n=await z("/api/favorites",{params:{folderId:e,type:"creator",mode:"workspace",page:1,compact:"true",skipTopAds:"1"}});if(t!==pt||c.value!==e)return;oe.value=(n.items||[]).filter(r=>r.favoriteType==="creator"),pe.value=[],vt.value=!1}catch(n){if(t!==pt||c.value!==e)return;console.error("Failed to load folder workspace",n),oe.value=[]}finally{t===pt&&c.value===e&&(ye.value=!1)}}async function it(e={}){const t=c.value;if(!t)return;const n=++mt;Pe.value=!0;try{const r={folderId:t,type:"funnels"};e.preview&&(r.mode="preview");const g=await z("/api/favorites/derived-items",{params:r});if(n!==mt||c.value!==t)return;ie.value=g.items||[]}catch(r){if(n!==mt||c.value!==t)return;console.error("Failed to load derived funnels",r)}finally{n===mt&&c.value===t&&(Pe.value=!1)}}
2function sa(e,t=c.value,n={}){const r={folderId:t,type:"ads",page:e};if(n.carousel&&(r.mode="carousel"),U.value)return r;const g=V.value.sortBy;return g&&g!=="default"&&(r.sortBy=g),V.value.topAds&&(r.topAds=1),V.value.adRankPct&&(r.adRankPct=V.value.adRankPct),V.value.adRankMax&&(r.adRankMax=V.value.adRankMax),V.value.live==="live"?r.status="live":V.value.live==="inactive"&&(r.status="inactive"),V.value.mediaType&&V.value.mediaType!=="all"&&(r.mediaType=V.value.mediaType),V.value.creatorId&&V.value.creatorId!=="all"&&(r.creatorId=V.value.creatorId),r}async function ht(e={}){const t=c.value;if(!t)return;const n=++ot,r=e.signal==="home",g=r;r?xt.value=!0:Pe.value=!0;try{const K=await z("/api/favorites/derived-items",{params:sa(1,t,{carousel:g})});if(n!==ot||c.value!==t)return;X.value=K.items||[],ke.value=K.total||0,k.value=g?!1:!!K.hasMore,Qe.value=1}catch(K){if(n!==ot||c.value!==t)return;console.error("Failed to load derived ads",K),X.value=[],ke.value=0,k.value=!1}finally{r?n===ot&&c.value===t&&(xt.value=!1):n===ot&&c.value===t&&(Pe.value=!1)}}async function Za(){const e=c.value;if(!e||ze.value||!k.value)return;const t=++ft;ze.value=!0;const n=Qe.value+1;try{const r=await z("/api/favorites/derived-items",{params:sa(n,e)});if(t!==ft||c.value!==e)return;X.value=[...X.value,...r.items||[]],ke.value=r.total||ke.value,k.value=!!r.hasMore,Qe.value=n}catch(r){if(t!==ft||c.value!==e)return;console.error("Failed to load more ads",r)}finally{t===ft&&c.value===e&&(ze.value=!1)}}async function Ja(){const e=c.value;if(!e||vt.value)return;const t=++At;try{const n=await z("/api/favorites/derived-items",{params:{folderId:e,type:"ads",hiddenOnly:"true"}});if(t!==At||c.value!==e)return;pe.value=n.items||[],vt.value=!0}catch(n){if(t!==At||c.value!==e)return;console.error("Failed to load hidden ads",n),pe.value=[]}}async function es(){const e=c.value;if(!e)return;const t=++gt;It.value=!0;try{const n=await z("/api/favorites/folder-suggestions",{params:{folderId:e}});if(t!==gt||c.value!==e)return;Ze.value=(n.items||[]).map(r=>({...r,favoriteType:"creator",tags:[],note:null,pinnedByView:{},isSuggestion:!0}))}catch(n){if(t!==gt||c.value!==e)return;console.error("Failed to load folder suggestions",n),Ze.value=[]}finally{t===gt&&c.value===e&&(It.value=!1)}}function yt(e){q.value=e}function ts(){V.value=kt()}function as(e,t){if(e?.favoriteType==="creator"&&e?.page_id&&t&&xa(t)){Vt(e.page_id);return}at(e)}async function at(e,t={}){const{updateRoute:n=!0}=t;if(ae.value=e,!!e){if(e.favoriteType==="creator")return e.page_id?$a(e.page_id):void 0;if(e.favoriteType==="funnel"){_e.value=e,Ce.value=!1,ce.value=null,n&&await ee({...et(),...Qs(e)});return}if(e.favoriteType==="ad"){_e.value=null,Ce.value=!1,we.value=null,ce.value={adId:e.id,adIds:X.value.map(r=>r.id)},n&&await ee({...et(),adId:e.id});return}e.favoriteType==="reel"&&na(e)}}function na(e){e&&(we.value=e,ae.value=e,_e.value=null,Ce.value=!1,ce.value=null)}function ss(e){ae.value=e,He(e.page_id)}async function ns(e){const t=St.value.find(n=>n.id===e.adId);ae.value=t||null,ce.value={adId:e.adId,adIds:e.creator?.topAdsPreview?.map(n=>n.id).filter(Boolean)||St.value.map(n=>n.id)},await ee({...et(),adId:e.adId})}function os(e){x.value=!1,e!==c.value&&H.push(`/ws/${e}`)}function rs(){We.value=!0,tt.value=w.value?.name||"",ct(()=>{const e=Zt.value?.$el;e instanceof HTMLInputElement&&e.focus()})}function ls(){We.value=!1,tt.value=w.value?.name||""}function is(e){e.key==="Enter"?oa():e.key==="Escape"&&ls()}async function oa(){const e=tt.value.trim();if(!e||e===w.value?.name){We.value=!1;return}await J(c.value,e)&&(We.value=!1)}async function ds(){Be.value=!0;try{const e=await ve(c.value);e?.id&&H.push(`/ws/${e.id}`)}finally{Be.value=!1}}async function us(){Ye.value=!0;try{await E(c.value)&&(ge.value=!1,H.push("/ws"))}finally{Ye.value=!1}}async function cs(e){await z(`/api/favorite-folders/${c.value}/workspace-note`,{method:"PATCH",body:{note:e}}),C.value=C.value.map(t=>t.id===c.value?{...t,workspaceNote:e}:t)}const je=new Map;function vs(e){const t={folderId:c.value,...e},n=Aa(t);async function r(){try{await z("/api/workspace-note-events",{method:"POST",body:t})}catch{}}
2if(e.phase==="focus"||e.phase==="blur"){je.has(n)&&clearTimeout(je.get(n)),je.delete(n),r();return}je.has(n)&&clearTimeout(je.get(n)),je.set(n,setTimeout(()=>{je.delete(n),r()},80))}const ra=new Map;async function Rt(e,t){const n=c.value,r=`${n}:${e}`,g=C.value.find($e=>$e.id===n)?.tagRegistry||{creators:[],funnels:[],ads:[]},K=ps(Array.isArray(g?.[e])?g[e]:[],t);C.value=C.value.map($e=>$e.id===n?{...$e,tagRegistry:{...g,[e]:K}}:$e);const xe=(ra.get(r)||Promise.resolve()).then(async()=>{try{const $e={type:e,...t},Ue=await z(`/api/favorite-folders/${n}/tags`,{method:"PATCH",body:$e});C.value=C.value.map(Ke=>Ke.id===n?{...Ke,tagRegistry:Ue.tagRegistry}:Ke)}catch($e){throw C.value=C.value.map(Ue=>Ue.id===n?{...Ue,tagRegistry:g}:Ue),$e}});return ra.set(r,xe.catch(()=>{})),xe}function ps(e,t){if(t.op==="replace")return[...t.tags];if(t.op==="remove")return e.filter(n=>n.name!==t.tag);if(t.op==="add")return e.some(n=>n.name===t.tag.name)?e:[...e,t.tag];if(t.op==="update"){const n=e.findIndex(g=>g.name===t.tag.name);if(n<0)return[...e,t.tag];const r=[...e];return r[n]=t.tag,r}return e}async function ms(e){await J(c.value,e)}async function Lt(e){const t=String(e||"");if(t)try{await z("/api/favorites/bulk-delete",{method:"DELETE",body:{items:[{type:"creator",itemId:t}],folderId:c.value}}),oe.value=oe.value.filter(n=>(n.page_id||n.id)!==t),fe(c.value,-1),ae.value&&(ae.value.page_id||ae.value.id)===t&&(ae.value=null),rt(),Je(q.value)}catch(n){console.error("[workspace] remove creator failed",n),nt().error(n?.data?.statusMessage||n?.statusMessage||"Could not remove creator — try again",4e3)}}function fs(e){return{page_id:e.id,name:e.label||"Unknown",domain:e.domain||"",avatar:e.avatar||null,favoriteType:"creator",tags:[],note:null,pinnedByView:{},starred:!0,folderId:c.value}}async function la(e){try{const t=await z("/api/favorites",{method:"POST",body:{type:"creator",itemId:e.id,folderId:c.value}});if(!t.created)return;fe(c.value,1),Jt(t.item||fs(e)),rt(),Je(q.value)}catch(t){const n=t?.data?.data?.code??t?.data?.code;if(t?.statusCode===403&&(n?.startsWith("PLAN_LIMIT_")||n==="PLAN_FEATURE_LOCKED"))return;console.error("[workspace] add creator failed",t),nt().error(t?.data?.statusMessage||t?.statusMessage||"Could not add creator — try again",4e3)}}function ia(e){se({context:"workspace",folderId:c.value,memberIds:e,onPick:async t=>{await la({id:t.pageId,label:t.name,avatar:t.avatar,domain:t.domain||""})}})}async function gs(e,t){try{await Rt(e,{op:"add",tag:t})}catch(n){console.error("[registry][add] failed",n),nt().error(n?.statusMessage||n?.data?.statusMessage||"Could not save tag — try again",4e3)}}const Le=b(null),Ve=b(!1);async function _s(e,t){try{const n=await z(`/api/favorite-folders/${c.value}/tag-usage`,{params:{type:e,name:t}});if((n?.count||0)>0){Le.value={type:e,name:t,usage:n.count};return}await Rt(e,{op:"remove",tag:t})}catch(n){console.error("[registry][remove] failed",n),nt().error(n?.statusMessage||n?.data?.statusMessage||"Could not remove tag — try again",4e3)}}async function hs(){const e=Le.value;if(!(!e||Ve.value)){Ve.value=!0;try{await Rt(e.type,{op:"remove",tag:e.name,cascade:!0}),e.type==="creators"?oe.value=oe.value.map(t=>Array.isArray(t.tags)&&t.tags.includes(e.name)?{...t,tags:t.tags.filter(n=>n!==e.name)}:t):e.type==="funnels"?ie.value=ie.value.map(t=>{const n={...t};return Array.isArray(t.tags)&&t.tags.includes(e.name)&&(n.tags=t.tags.filter(r=>r!==e.name)),Array.isArray(t.previewLinks)&&(n.previewLinks=t.previewLinks.map(r=>Array.isArray(r.tags)&&r.tags.includes(e.name)?{...r,tags:r.tags.filter(g=>g!==e.name)}:r)),n}):e.type==="ads"&&(X.value=X.value.map(t=>Array.isArray(t.tags)&&t.tags.includes(e.name)?{...t,tags:t.tags.filter(n=>n!==e.name)}:t)),Le.value=null}catch(t){console.error("[registry][remove cascade] failed",t),nt().error(t?.statusMessage||t?.data?.statusMessage||"Could not remove tag — try again",4e3)}finally{Ve.value=!1}}}function da(){Ve.value||(Le.value=null)}const ys=Q(()=>Le.value?Le.value.type==="creators"?m("workspaceFolder.tabs.creators").toLowerCase():Le.value.type==="funnels"?m("workspaceFolder.tabs.funnels").toLowerCase():Le.value.type==="ads"?m("workspaceFolder.tabs.ads").toLowerCase():"":"");async function ks(e){const t=String(e.itemId),n=X.value;X.value=X.value.map(r=>String(r.id)===t?{...r,tags:e.tags}:r);try{await z("/api/favorites/tags",{method:"PATCH",body:{type:e.type,itemId:t,tags:e.tags,folderId:c.value}})}catch(r){X.value=n,nt().error(r?.statusMessage||r?.data?.statusMessage||"Could not save tags — try again",4e3)}}async function ws(e){if(await z("/api/favorites/hide",{method:"PATCH",body:{type:e.type,itemId:e.itemId,hidden:e.hidden,folderId:c.value,...e.routePageId?{routePageId:e.routePageId}:{}}}),e.type==="funnel")e.routePageId?ie.value=ie.value.map(t=>t.page_id!==e.routePageId?t:{...t,previewLinks:e.hidden?(t.previewLinks||[]).filter(n=>n.funnel_id!==e.itemId):t.previewLinks}):ie.value=ie.value.map(t=>t.page_id===e.itemId?{...t,hidden:e.hidden}:t);else if(e.type==="ad")if(e.hidden){const t=X.value.find(n=>n.id===e.itemId);X.value=X.value.filter(n=>n.id!==e.itemId),ke.value=Math.max(0,ke.value-1),t&&!pe.value.some(n=>n.id===t.id)&&(pe.value=[{...t,hidden:!0},...pe.value])}else{const t=pe.value.find(n=>n.id===e.itemId);pe.value=pe.value.filter(n=>n.id!==e.itemId),t&&(X.value=[{...t,hidden:!1},...X.value],ke.value=ke.value+1)}}async function bs(e){if(!e||q.value==="home"||e.isSuggestion)return;const t=q.value,n=!dt(e,t);await z("/api/favorites/pin",{method:"PATCH",body:{type:e.favoriteType,itemId:st(e),view:t,pinned:n,folderId:c.value}}),_a(st(e),{pinnedByView:{...e.pinnedByView||{},[t]:n}})}async function xs(e,t){await z("/api/favorites/layout-order",{method:"PATCH",body:{folderId:c.value,typeView:e,itemIds:t}});const n=`layoutOrder.${e}`;t.forEach((r,g)=>{_a(r,n,g)})}async function $s(e){await la({id:e.page_id,label:e.name||e.advertiser||"",avatar:e.avatar||null,domain:e.domain||""})}async function Is(){_e.value||Ce.value?await va():ce.value&&await Dt()}ue(_e,e=>{e||(Ce.value=!1,ce.value=null)});const As=Q(()=>{const e=oe.value.slice(0,5).map(t=>
2t.page_id||t.itemId).filter(Boolean).join(",");return`/analyzer?folder_id=${c.value}&folder_creators=${e}`});async function Cs(e,t){_e.value=null;const n=(t?.adPreviews||[]).map(r=>r.ad_id).filter(Boolean);ce.value={adId:e,adIds:n.length?n:[e]},await ee({...et(),adId:e})}async function Mt(e,t){if(!t)return;const n=ca(e,t);if(n){await at(n);return}if(!ie.value.length){await it();const r=ca(e,t);if(r){yt("funnels"),await at(r);return}}if(e){ce.value=null,_e.value=wa({...et(),funnelPageId:t,funnelId:e}),await ee({...et(),funnelPageId:t,funnelId:e});return}t&&He(t)}function He(e,t={}){const{event:n}=t;if(e){if(n&&xa(n)){Vt(e);return}return $a(e)}}function Fs(e){const t=[...oe.value.filter(n=>n.favoriteType==="funnel"),...ie.value];if(e.funnelId){const n=ua(t,e.funnelId);if(n)return n;const r=t.find(g=>g?.funnel_id===e.funnelId);if(r)return r}return t.find(n=>{if(e.funnelPageId&&n?.page_id!==e.funnelPageId)return!1;if(e.funnelUrl){const r=String(n?.resolved_url||n?.domain||"").toLowerCase(),g=String(e.funnelUrl).toLowerCase();return r===g||r.includes(g)||g.includes(r)}return!!e.funnelPageId})||null}function Ts(e,t){return{...e,funnel_id:t.funnel_id||e?.funnel_id||null,resolved_url:t.url||e?.resolved_url||null,domain:t.domain||e?.domain||"",niche:t.niche??e?.niche??null,subcategory:t.subcategory??e?.subcategory??null,active_ads:t.active_ads??e?.active_ads??0,total_ads:t.total_ads??e?.total_ads??0,is_active:t.has_active_ads??(t.active_ads??0)>0,total_reach:t.total_reach??e?.total_reach??0}}function ua(e,t){if(!t)return null;for(const n of e){const r=(n?.previewLinks||[]).find(g=>g?.funnel_id===t);if(r)return Ts(n,r)}return null}function ca(e,t){const n=ua(ie.value,e);return n||ie.value.find(r=>e?r.funnel_id===e:r.page_id===t)||null}ue([G,oe,ie,X],async([e])=>{const t=!!(e.funnelPageId||e.funnelId||e.funnelUrl);_e.value=t?Fs(e)||wa(e):null,Ce.value=t&&e.funnelAdsOpen,ce.value=Ha(e.adId)},{immediate:!0});async function va(){_e.value=null,Ce.value=!1,ce.value=null,ae.value=null,await O({funnelPageId:null,funnelId:null,funnelUrl:null,funnelCreator:null,funnelAvatar:null,funnelDomain:null,funnelBuilder:null,funnelAdsOpen:!1,adId:null})}async function Ss(){ce.value=null,!Ce.value?(Ce.value=!0,await ee({funnelAdsOpen:!0,adId:null})):(Ce.value=!1,await O({funnelAdsOpen:!1,adId:null}))}async function pa(){Ce.value=!1,ce.value=null,await O({funnelAdsOpen:!1,adId:null})}async function ma(e){const t=$t.value;ce.value=e,await ee({funnelAdsOpen:t,adId:e?.adId||null})}async function Dt(){ce.value=null,_e.value||(ae.value=null),await O({adId:null})}async function fa(){ce.value=null,await O({adId:null})}async function ga(e){ce.value&&(ce.value={...ce.value,adId:e},await de({adId:e,funnelAdsOpen:$t.value}))}function _a(e,t,n){if(typeof t=="string"){const r=t.split(".");oe.value=oe.value.map(g=>{if(st(g)!==e)return g;const K={...g};if(r.length===2){const[Me,xe]=r;K[Me]={...K[Me]||{},[xe]:n}}else K[t]=n;return K})}else oe.value=oe.value.map(r=>st(r)===e?{...r,...t}:r),ae.value&&st(ae.value)===e&&(ae.value={...ae.value,...t})}function Ps(e,t){return[...e].sort((n,r)=>{const g=Number(dt(r,t))-Number(dt(n,t));if(g!==0)return g;const K=+((r.active_ads||0)>0)-+((n.active_ads||0)>0);if(K!==0)return K;const Me=(r.active_ads||0)-(n.active_ads||0);if(Me!==0)return Me;const xe=Number.isFinite(n?.layoutOrder?.[t])?n.layoutOrder[t]:Number.MAX_SAFE_INTEGER,$e=Number.isFinite(r?.layoutOrder?.[t])?r.layoutOrder[t]:Number.MAX_SAFE_INTEGER;return xe!==$e?xe-$e:new Date(r.savedAt||0).getTime()-new Date(n.savedAt||0).getTime()})}function st(e){return e?e.id||e.shortcode||e.favoriteItemId||e.page_id:null}function zs(e){return[e.name,e.advertiser,e.creator,e.page_name,e.ig_username,e.caption,e.shortcode,e.domain,e.headline,e.niche,...e.tags||[]].filter(Boolean).join(" ").toLowerCase()}function Rs(e,t){let n=e.url||"";try{const r=new URL(e.url);n=r.pathname+r.search}catch{}return[t.creator,t.domain,e.domain,e.url,n,e.niche,e.subcategory,t.niche,t.subcategory,...e.tags||[]].filter(Boolean).join(" ").toLowerCase()}function Ls(e,t){const n=[...e];return!t||t==="default"||t==="tracking"?n.sort((r,g)=>
2Number(g.has_active_ads)-Number(r.has_active_ads)||(g.active_ads||0)-(r.active_ads||0)||(g.total_ads||0)-(r.total_ads||0)||new Date(g.created_at||0).getTime()-new Date(r.created_at||0).getTime()):t==="active_ads"?n.sort((r,g)=>(g.active_ads||0)-(r.active_ads||0)):t==="total_ads"?n.sort((r,g)=>(g.total_ads||0)-(r.total_ads||0)):n}function Ms(e,t){const n=(t.search||"").trim().toLowerCase();if(t.scaling&&t.scaling!=="all"&&e.scaling!==t.scaling||t.hasNote&&!e.note||t.pinnedOnly&&!dt(e,"funnels"))return null;const r=(e.previewLinks||[]).filter(K=>!(!K?.url||n&&!Rs(K,e).includes(n)||t.funnelStatus&&t.funnelStatus!=="all"&&(t.funnelStatus==="active"&&!K.has_active_ads||t.funnelStatus==="inactive"&&K.has_active_ads)));let g=e.direct_ads;if(g?.total){let K=!0;n&&([e.creator,e.domain,"no landing page","pas de landing page"].join(" ").toLowerCase().includes(n)||(K=!1)),t.funnelStatus==="active"&&!(g.active>0)&&(K=!1),t.funnelStatus==="inactive"&&g.active>0&&(K=!1),K||(g=null)}return!r.length&&!g?.total?null:{...e,previewLinks:Ls(r,t.sortBy),direct_ads:g}}function Ds(e){return dt(e,q.value)}function dt(e,t){return t==="creators"?!!e?.pinnedByView?.creators:t==="funnels"?!!e?.pinnedByView?.funnels:t==="ads"?!!e?.pinnedByView?.ads:!1}function kt(){return{search:"",status:"all",mediaType:"all",live:"all",scaling:"all",funnelStatus:"all",niche:"all",tag:"all",tags:void 0,creatorId:"all",sortBy:"default",hasNote:!1,pinnedOnly:!1,viralOnly:!1,relative:[],trajectory:[],viewsMin:0,viewsMax:null,ageMin:0,ageMax:null,postedStart:null,postedEnd:null,durationMin:0,durationMax:null,hasAudio:null,hashtags:[],language:[],engagementMin:0,technology:"all",technologies:[],runningSince:"all",activeDaysMin:0,activeDaysMax:null,cta:"all",ctas:[],growth:"all",growths:[],topAds:!1,duplicatesMin:0,duplicatesMax:null,copyLengthMin:0,copyLengthMax:null,liveAdsMin:0,liveAdsMax:null,creationStart:null,creationEnd:null,lastSeenStart:null,lastSeenEnd:null,countries:[],spendMin:0,spendMax:null,targetAges:[],targetGenders:[],funnelTypes:[],multilingual:"all",reachMin:0,reachMax:null,visitsMin:0,visitsMax:null,trafficTrend:"all"}}return(e,t)=>{const n=Ne,r=Zs,g=za,K=Kt,Me=Js,xe=en,$e=La,Ue=tn,Ke=an,Ot=cn,Et=or,wt=Or,u=qt,T=Il,P=Wl,Fe=Gi,Ie=qe,he=Xe,Oe=kd,Os=hn,Es=wn;return s(),o(W,null,[a("div",wd,[a("div",bd,[a("div",xd,[a("div",$d,[v(r,{to:"/ws",class:"crumb-link"},{default:$(()=>[v(n,{name:"ph:caret-left",class:"size-3.5 text-current","aria-hidden":"true"}),Y(" "+i(l(m)("workspaceFolder.breadcrumb")),1)]),_:1}),t[21]||(t[21]=a("span",{class:"crumb-sep"},"/",-1)),We.value?(s(),ne(g,{key:0,ref_key:"renameInput",ref:Zt,modelValue:tt.value,"onUpdate:modelValue":t[0]||(t[0]=F=>tt.value=F),class:"folder-input",onKeydown:is,onBlur:oa},null,8,["modelValue"])):D("",!0),v(K,{class:"folder-title-btn",onClick:rs},{default:$(()=>[Y(i(w.value?.name||l(m)("workspaceFolder.title_fallback")),1)]),_:1}),a("span",Id,i(l(m)("workspaceFolder.creator_count",{n:oe.value.length})),1),t[22]||(t[22]=a("div",{class:"header-spacer"},null,-1)),be.value.length>0?(s(),o("div",Ad,[t[20]||(t[20]=a("span",{class:"size-1.5 rounded-full bg-success shrink-0"},null,-1)),a("div",Cd,[(s(!0),o(W,null,re(be.value.slice(0,3),F=>(s(),o("div",{key:F.userId,class:"size-4 rounded-full border border-card overflow-hidden bg-primary flex items-center justify-center shrink-0",title:F.name??F.userId},[F.avatar?(s(),o("img",{key:0,src:F.avatar,alt:F.name??"",class:"w-full h-full object-cover"},null,8,Td)):(s(),o("span",Sd,i((F.name??F.userId).charAt(0).toUpperCase()),1))],8,Fd))),128))]),a("span",null,i(be.value.length===1?be.value[0].name??"Seat":`${be.value.length} en ligne`),1)])):D("",!0),v(Me,{onClick:t[1]||(t[1]=F=>p.value=!0)}),a("div",Pd,[v(xe,{class:"toolbar-btn",onClick:t[2]||(t[2]=F=>x.value=!x.value)},{default:$(()=>[Y(i(l(m)("workspaceFolder.quick_switch"))+" ",1),v(n,{name:"ph:caret-down",class:Ae(["size-2.5 text-current",x.value?"rotate-180":""]),"aria-hidden":"true"},null,8,["class"])]),_:1}),x.value?(s(),o("div",zd,[(s(!0),o(W,null,re(l(C),F=>(s(),ne($e,{key:F.id,class:Ae(["dropdown-item",F.id===c.value?"dropdown-item-active":""]),onClick:Bt=>os(F.id)},{default:$(()=>[a("span",Rd,i(F.name),1),a("span",Ld,i(F.count),1)]),_:2},1032,["class","onClick"]))),128))])):D("",!0)]),v(xe,{class:"toolbar-btn",disabled:Be.value,onClick:ds},{default:$(()=>[Y(i(Be.value?l(m)("workspaceFolder.duplicating"):l(m)("workspaceFolder.duplicate")),1)]),_:1},8,["disabled"]),v(xe,{class:"toolbar-btn",onClick:t[3]||(t[3]=F=>ge.value=!0)},{default:$(()=>[Y(i(l(m)("workspaceFolder.delete")),1)]),_:1}),oe.value.length?(s(),ne(r,{key:2,to:As.value,class:"toolbar-btn anal
2yzer-btn"},{default:$(()=>[v(n,{name:"ph:chart-line-up",class:"size-3 text-current","aria-hidden":"true"}),Y(" "+i(l(m)("workspaceFolder.push_analyzer")),1)]),_:1},8,["to"])):D("",!0)]),a("div",Md,[a("div",Dd,[(s(),o(W,null,re(me,F=>v(Ue,{key:F.id,role:"tab",class:Ae(["tab-btn",q.value===F.id?"tab-btn-active":""]),"aria-selected":q.value===F.id,onClick:Bt=>yt(F.id)},{default:$(()=>[a("span",Od,i(F.label),1)]),_:2},1032,["class","aria-selected","onClick"])),64))])])]),a("div",Ed,[ye.value&&q.value!=="home"?(s(),o("div",Bd,[a("div",Ud,[t[24]||(t[24]=a("div",{class:"flex items-center justify-between mb-3"},[a("div",{class:"h-3 w-32 skeleton-shimmer rounded"}),a("div",{class:"h-3 w-5 skeleton-shimmer rounded"})],-1)),a("div",Nd,[(s(),o(W,null,re(5,F=>a("div",{key:F,class:"skeleton-item flex flex-col items-center gap-2",style:Se([{width:"80px"},{animationDelay:`${(F-1)*40}ms`}])},[t[23]||(t[23]=a("div",{class:"size-[64px] rounded-full skeleton-shimmer"},null,-1)),a("div",{class:"h-2.5 skeleton-shimmer rounded",style:Se({width:`${36+F*19%26}px`})},null,4)],4)),64))])]),a("div",Wd,[t[28]||(t[28]=a("div",{class:"flex items-center justify-between mb-3"},[a("div",{class:"h-3 w-20 skeleton-shimmer rounded"}),a("div",{class:"h-3 w-5 skeleton-shimmer rounded"})],-1)),a("div",jd,[(s(),o(W,null,re(4,F=>a("div",{key:F,class:"skeleton-item border border-border rounded-[16px] overflow-hidden flex flex-col",style:Se({animationDelay:`${(F-1+5)*50}ms`})},[t[27]||(t[27]=a("div",{class:"w-full skeleton-shimmer",style:{"aspect-ratio":"16/10"}},null,-1)),a("div",Vd,[a("div",Hd,[t[25]||(t[25]=a("div",{class:"size-4 skeleton-shimmer rounded shrink-0"},null,-1)),a("div",{class:"h-3 skeleton-shimmer rounded flex-1",style:Se({maxWidth:`${80+F*31%50}px`})},null,4)]),t[26]||(t[26]=Sa('<div class="flex gap-3" data-v-f072d710><div class="h-2.5 w-14 skeleton-shimmer rounded" data-v-f072d710></div><div class="h-2.5 w-16 skeleton-shimmer rounded" data-v-f072d710></div></div><div class="flex gap-2 pt-1" data-v-f072d710><div class="h-[30px] skeleton-shimmer rounded-[8px] flex-1" data-v-f072d710></div><div class="h-[30px] w-[56px] skeleton-shimmer rounded-[8px] shrink-0" data-v-f072d710></div></div>',2))])],4)),64))])]),a("div",null,[t[29]||(t[29]=a("div",{class:"flex items-center justify-between mb-3"},[a("div",{class:"h-3 w-12 skeleton-shimmer rounded"}),a("div",{class:"h-3 w-14 skeleton-shimmer rounded"})],-1)),a("div",Kd,[(s(),o(W,null,re(4,F=>v(Ke,{key:F,delay:(F-1+9)*50,seed:F,"show-header-action":""},null,8,["delay","seed"])),64))])])])):(s(),o("div",qd,[a("div",Gd,[q.value==="funnels"||q.value==="ads"?(s(),o("div",Xd,[v(Ot,{tab:q.value,items:ta.value,creators:oe.value,filters:V.value,"tag-registry":aa.value,"onUpdate:filters":t[4]||(t[4]=F=>V.value=F),onReset:ts},null,8,["tab","items","creators","filters","tag-registry"])])):D("",!0),a("div",{class:Ae(["workspace-tab-panel",{"workspace-tab-panel--with-filters":q.value==="funnels"||q.value==="ads"}])},[q.value==="home"?(s(),ne(Et,{key:0,items:ea.value,"loading-creators":ye.value,"derived-funnels":ie.value,"derived-ads":X.value,"derived-ads-total":ke.value,"loading-ads":xt.value,"starred-ad-ids":l(R),"workspace-note":w.value?.workspaceNote||"","note-editing":te.value,suggestions:Ze.value,"loading-suggestions":It.value,onNavigateTab:yt,onOpenItem:at,onSpyFunnel:Mt,onUpdateWorkspaceNote:cs,onNoteEditing:vs,onOpenSuggestion:ss,onAddSuggestion:$s,onOpenFinder:ia,onRemoveCreator:Lt,onOpenCreator:t[5]||(t[5]=F=>He(F)),onAdStarred:l(y),onAdUnstarred:l(M)},null,8,["items","loading-creators","derived-funnels","derived-ads","derived-ads-total","loading-ads","starred-ad-ids","workspace-note","note-editing","suggestions","loading-suggestions","onAdStarred","onAdUnstarred"])):q.value==="creators"?(s(),ne(wt,{key:1,items:lt.value,"selected-key":Pt.value,"tag-registry":Ya.value,onSelect:as,onReorder:t[6]||(t[6]=F=>xs("creators",F)),onTogglePin:bs,onOpenPreviewAd:ns,onRemoveCreator:Lt},null,8,["items","selected-key","tag-registry"])):q.value==="funnels"?(s(),o("div",Yd,[Pe.value?(s(),o("div",Qd,[v(u,{class:"size-5 text-primary"}),a("span",null,i(l(m)("workspaceFolder.loading_funnels")),1)])):ie.value.length?lt.value.length?(s(),ne(T,{key:3,items:lt.value,"selected-key":Pt.value,onSelect:at,onSpyFunnel:Mt},null,8,["items","selected-key"])):(s(),o("p",Jd,i(l(m)("workspaceFolder.empty_funnels_filtered")),1)):(s(),o("p",Zd,i(l(m)("workspaceFolder.empty_funnels")),1))])):q.value==="ads"?(s(),o("div",eu,[Pe.value&&!X.value.length?(s(),o("div",tu,[v(u,{class:"size-5 text-primary"}),a("span",null,i(l(m)("workspaceFolder.loading_ads")),1)])):X.value.length?lt.value.length?(s(),ne(P,{key:3,items:lt.value,"selected-key":Pt.value,"starred-ad-ids":l(R),"tag-registry":aa.value,"has-more":k.value,"loading-more":ze.value,total:ke.value,"loaded-count":X.value.length,onSelect:at,onOpenCreator:t[7]||(t[7]=F=>He(F)),onLoadMore:Za,onAssignTags:ks,onTagsEmpty:t[8]||(t[8]=F=>yt("settings")),onAdStarred:l(y),onAdUnstarred:l(M)},null,8,["items","selected-key","starred-ad-ids","tag-registry","has-more","loading-more","total","loaded-count","onAdStarred","onAdUnstarred"])):(s(),o("p",su,i(l(m)("workspaceFolder.empty_ads_filtered")),1)):(s(),o("p",au,i(l(m)("workspaceFolder.empty_ads")),1))])):q.value==="settings"?(s(),ne(Fe,{key:4,folder:w.value,creators:oe.value,"hidden-funnels":Xa.value,"hidden-ads":pe.value,onRenameFolder:ms,onRemoveCreator:Lt,onOpenFinder:ia,onUnhide:ws,onAddRegistryTag:gs,onRemoveRegistryTag:_s},null,8,["folder","creators","hidden-funnels","hidden-ads"])):D("",!0)],2)]),a("aside",{class:Ae(["workspace-tools relative",S.value?"workspace-tools--collapsed":""])},[S.value?(s(),ne(Ie,{key:0,variant:"ghost",class:"activity-collapsed-rail",title:l(m)("workspace.activity.show"),"aria-label":l(m)("workspace.activity.show"),onClick:t[9]||(t[9]=F=>S.value=!1)},{default:$(()=>[v(n,{name:"ph:clock-counter-clockwise",class:"activity-collapsed-icon","aria-hidden":"true"}),a("span",nu,i(l(m)("workspace.activity.title")),1),v(n,{name:"ph:caret-left",class:"activity-collapsed-caret","aria-hidden":"true"})]),_:1},8,["title","aria-label"])):(s(),o(W,{key:1},[v(he,{class:"activity-toggle-btn absolute top-[14px] left-[4px] z-10",title:l(m)("workspace.activity.hide"),"aria-label":l(m)("workspace.activity.hide"),onClick:t[10
2]||(t[10]=F=>S.value=!0)},{default:$(()=>[v(n,{name:"ph:caret-left",class:"size-3 text-current","aria-hidden":"true"})]),_:1},8,["title","aria-label"]),v(Oe,{"folder-id":c.value,onOpenCreator:t[11]||(t[11]=(F,Bt)=>He(F,{event:Bt})),onOpenFunnel:Mt,onOpenAd:Cs,onOpenReel:t[12]||(t[12]=F=>na(F))},null,8,["folder-id"])],64))],2)]))])]),v(ka,{name:"backdrop"},{default:$(()=>[l(B)&&(_e.value||ce.value)?(s(),o("div",{key:0,class:"fixed inset-0 bg-black/20 z-[38] cursor-pointer",onClick:Is})):D("",!0)]),_:1}),Gt.value?(s(),ne(l(L),{key:0,show:!!_e.value,funnel:_e.value,"ads-open":$t.value,"active-ad-id":ce.value?.adId??null,"ad-detail":ce.value,"z-class":"z-[50]",onClose:va,onOpenAds:Ss,onCloseAds:pa,onOpenAd:ma,onCloseAdDetail:Dt,onBackAdDetail:fa,onChangeAd:ga,onOpenCreator:t[13]||(t[13]=({pageId:F})=>He(F))},null,8,["show","funnel","ads-open","active-ad-id","ad-detail"])):D("",!0),Xt.value?(s(),ne(l(Z),{key:1,show:Ce.value&&!ce.value,"page-id":_e.value?.page_id??null,"funnel-id":_e.value?.funnel_id??null,"active-ad-id":ce.value?.adId??null,"right-class":"right-[500px]","z-class":"z-[48]",onClose:pa,onOpenAd:ma},null,8,["show","page-id","funnel-id","active-ad-id"])):D("",!0),Yt.value?(s(),ne(l(N),{key:2,show:!!ce.value,"ad-id":ce.value?.adId??void 0,"ad-ids":ce.value?.adIds??[],"right-class":Qa.value,"z-class":"z-[48]","show-back":!!(_e.value&&ce.value),onClose:Dt,onBack:fa,onChangeAd:ga},null,8,["show","ad-id","ad-ids","right-class","show-back"])):D("",!0),v(Os,{show:!!we.value,reel:we.value,starred:!!we.value?.starred,"allow-in-app-playback":!!we.value?.starred,onClose:t[14]||(t[14]=F=>we.value=null),onAssets:Na,onOpenCreator:t[15]||(t[15]=F=>{we.value=null,He(F)}),"onUpdate:starred":t[16]||(t[16]=F=>{we.value&&Wa(we.value,F)})},null,8,["show","reel","starred","allow-in-app-playback"]),(s(),ne(Pa,{to:"body"},[v(ka,{name:"tag-delete-modal"},{default:$(()=>[Le.value?(s(),o("div",{key:0,class:"tag-delete-backdrop",onClick:Te(da,["self"])},[a("div",ou,[a("p",ru,i(l(m)("workspace.settings.delete_tag_modal.title",{name:Le.value.name})),1),a("p",lu,i(l(m)("workspace.settings.delete_tag_modal.body",{count:Le.value.usage,scope:ys.value})),1),a("div",iu,[v(Ie,{variant:"secondary",class:"tag-delete-secondary",disabled:Ve.value,onClick:da},{default:$(()=>[Y(i(l(m)("common.cancel")),1)]),_:1},8,["disabled"]),v(Ie,{variant:"destructive",class:"tag-delete-danger",disabled:Ve.value,onClick:hs},{default:$(()=>[Y(i(Ve.value?l(m)("workspace.settings.delete_tag_modal.deleting"):l(m)("workspace.settings.delete_tag_modal.confirm")),1)]),_:1},8,["disabled"])])])])):D("",!0)]),_:1})])),ge.value?(s(),o("div",{key:3,class:"fixed inset-0 z-50 flex items-center justify-center bg-black/40",onClick:t[18]||(t[18]=Te(F=>ge.value=!1,["self"]))},[a("div",du,[a("p",uu,i(l(m)("workspaceFolder.delete_modal.title")),1),a("p",cu,i(l(m)("workspaceFolder.delete_modal.body")),1),a("div",vu,[v(Ie,{variant:"secondary",class:"modal-secondary",onClick:t[17]||(t[17]=F=>ge.value=!1)},{default:$(()=>[Y(i(l(m)("workspaceFolder.delete_modal.cancel")),1)]),_:1}),v(Ie,{variant:"destructive",class:"modal-danger",disabled:Ye.value,onClick:us},{default:$(()=>[Y(i(Ye.value?l(m)("workspaceFolder.delete_modal.deleting"):l(m)("workspaceFolder.delete_modal.confirm")),1)]),_:1},8,["disabled"])])])])):D("",!0)]),v(Es,{show:p.value,onClose:t[19]||(t[19]=F=>p.value=!1)},null,8,["show"])],64)}}}),bc=Ge(pu,[["__scopeId","data-v-f072d710"]]);export{bc 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.