1import{_ as Pn,a as Sa}from"./BiHHjzw7.js";import{u as Pa,a as Ra}from"./Cwtg81h9.js";import{_ as Ft,a as tt,b as Aa}from"./B_ak3ofn.js";import{_ as Ge,t as Rn,g as Fa,a as Ta,p as Xt,f as St,c as Cn,d as Oa,F as La,e as Na,h as Ia,D as Ea}from"./0wElFjAm.js";import{l as ue,g as fe,o as n,c as i,t as C,k as o,q as K,b as p,d as ve,$ as Re,J as _t,r as D,A as B,H as ke,a as u,s as k,F as ne,O as _e,E as ae,U as Pt,D as we,N as Rt,w as F,M as Da,G as ln,C as kt,a3 as an,a4 as on,n as An,h as Ba,a2 as Va,v as Ma,K as qa,p as Ua,aa as za}from"./D8JAWOXc.js";import{_ as De}from"./IV9XgtOK.js";import{_ as Fn}from"./BksVtvsq.js";import{T as Ne}from"./CEh4BZEc.js";import{_ as rn}from"./DlAUqK2U.js";import{s as Qa}from"./C5k-Qj34.js";import{b as Fe,i as Tn,d as Ka,e as On,g as Ue,t as Ct}from"./B8KpjbiY.js";import{_ as Ln}from"./eanmVWXR.js";import{s as Ga}from"./DjiztDGc.js";import{s as Ha}from"./CAV3F9o6.js";import{s as He}from"./6QIjfQ3v.js";import{_ as Wa}from"./BREvAqs5.js";import{_ as un}from"./BjdMAx5Y.js";import{s as Tt}from"./DU5l-jYu.js";import{s as Nn}from"./TtdM2BIz.js";import{_ as In}from"./CmgjdSet.js";import{u as ja}from"./CcD1Q1te.js";import{s as Ot}from"./QD5zkh2c.js";import{u as Ja}from"./BiSe-s0g.js";import{_ as En}from"./XhgJZAiR.js";import{s as Ya}from"./Bwmmk3-k.js";import{u as Dn}from"./CIjTYBNQ.js";import{_ as Bn}from"./DkG_01oP.js";import{_ as Xa}from"./CZ_1E-hz.js";import{_ as Vn}from"./BShuEJrN.js";import{u as cn}from"./DE-F3PvW.js";import{s as dn}from"./D4rZ0KrL.js";import{s as Za}from"./DpeEZVWq.js";import{s as es}from"./HyC0vgUo.js";import{g as ts,P as ns}from"./B27sEcxt.js";import{A as as}from"./BCrSmeRC.js";import{f as ss,d as ls}from"./sSsNOBxD.js";import{g as os}from"./BGRMKsn_.js";import{_ as rs}from"./D8P1r4qb.js";import{_ as Mn}from"./BSUomAxG.js";import{f as Le,e as ze,D as et,F as is,i as us,a as cs,h as ds}from"./CgLwjrzY.js";import{b as At,r as ps,D as vs}from"./vHoASSny.js";import{f as ms,e as _s}from"./QD7LY-cA.js";import{a as fs}from"./CovFXRuf.js";import{u as ys}from"./Bd-fRiZK.js";import{u as gs}from"./BSdf0Kst.js";import{u as bs}from"./BBOnd2Dq.js";import{u as hs,F as ft}from"./BbtyLaks.js";import{r as ks,g as Cs}from"./1K4wEndk.js";import"./CiC-M5WA.js";import"./CEmu4y3R.js";import"./BcuaDaoQ.js";import"./XZ1Xr026.js";import"./BxzlEGuZ.js";import"./CPH9xMxY.js";import"./BX3AYuz9.js";import"./Bf6Sc8ju.js";import"./pyXpB0KN.js";import"./B0iP2WA2.js";import"./Cq2mDni-.js";import"./BnB9SxQe.js";import"./BZ3zZBmh.js";import"./DSShKCz4.js";import"./CAtiYsWG.js";import"./fxBjJcZr.js";import"./BQTZPQt5.js";import"./CYj_FSKN.js";import"./3C8dQlEC.js";import"./lbhY9UtT.js";import"./CJJ8CO3R.js";import"./BRV9kY1l.js";import"./COwO9dI3.js";import"./DRSK0AOR.js";import"./D13DZRJm.js";import"./B9AmSqC5.js";import"./DzaFhz8p.js";import"./DNmIlrBV.js";import"./gvqPCG7P.js";import"./DKokxms_.js";import"./BgO1Z9zW.js";import"./C3BLmpJp.js";import"./U6eUA9Uh.js";import"./DlyqTE4o.js";import"./Ch2svcrh.js";import"./DoyIXTCl.js";import"./BtdYDqo6.js";import"./k-JCkjHK.js";import"./XXI8HlUT.js";const $s={key:0,class:"text-[10px] text-dark-forest font-semibold bg-lime-tint rounded-full px-2.5 py-0.5 leading-none shrink-0"},qn=ue({__name:"PaidBadge",props:{isPaid:{type:[Boolean,null],default:!1}},setup(t){const{t:a}=fe();return(e,s)=>e.isPaid?(n(),i("span",$s,C(o(a)("paid_badge")),1)):K("",!0)}}),xs={key:0,class:"flex items-center gap-1 text-gray-400 text-[11px]"},ws=ue({__name:"PaidSubLine",props:{visible:{type:Boolean,default:!0}},setup(t){return(a,e)=>{const s=qn;return a.visible?(n(),i("span",xs,[p(s,{"is-paid":!0}),e[0]||(e[0]=ve("(")),Re(a.$slots,"default"),e[1]||(e[1]=ve(") "))])):K("",!0)}}}),$n="tabular-nums",Ss="font-semibold tabular-nums",Zt="flex items-center gap-1 font-semibold",$t="pi pi-info-circle text-[13px] text-gray-400 cursor-help",xt="py-3 px-2 font-semibold text-gray-700",Ke="font-medium text-gray-800 text-sm",Ps={class:"qp-grouped-table"},Rs={key:0,class:"flex items-center justify-center py-12 text-gray-400"},As={key:0,class:"flex items-center justify-end gap-1 mb-2"},Fs={class:"text-[11px] text-gray-400 mr-1"},Ts=["onClick"],Os={class:"w-full text-sm border-collapse"},Ls={class:"border-b border-gray-200"},Ns=["onClick"],Is=["src"],Es={key:2,class:"text-xs font-medium text-gray-400 leading-none"},Ds={key:4,class:"inline-flex items-center justify-center w-4 h-4 rounded-full bg-dark-forest text-lime-green text-[9px] font-bold leading-none shrink-0"},Bs=["onClick"],Vs={key:0,class:"flex items-center gap-2 font-semibold"},Ms=["onClick"],qs={key:0,class:"flex items-center gap-2"},Us={key:0,class:"bg-gray-100/30"},zs=["colspan"],Qs=["onClick"],Ks={key:0,class:"bg-gray-50/30"},Gs=["colspan"],Hs=["onClick"],Ws={key:0},js={class:"border-t-2 border-gray-300"},Js=ue({__name:"QpGroupedTable",props:{columns:{},groups:{},loading:{type:Boolean,default:!1},emptyMessage:{default:""},childLimit:{default:5},showFooter:{type:Boolean,default:!0},flatGroup:{},sortField:{default:""},sortOrder:{default:-1},sortCriteria:{default:()=>[]}
1,expandControls:{type:Boolean,default:!1},initialDepth:{},levelLabels:{default:()=>[]},bodyMaxHeight:{},groupRowClass:{}},emits:["sort"],setup(t,{expose:a,emit:e}){const s=t,c=e,{t:l}=fe(),g=_t({}),L=_t({}),T=_t({}),P=_t({}),R=D(null);function N(S){g[S]=!g[S],R.value=null}function V(S){L[S]=!L[S]}function M(S){return!s.childLimit||L[S.key]||S.children.length<=s.childLimit?S.children:S.children.slice(0,s.childLimit)}function d(S,I,se){return`${S.key}::${I.key??se}`}function m(S){return Array.isArray(S.children)&&S.children.length>0}function $(S){var se;const I=S.children[0];return S.children.length===1&&!!I&&!m(I)&&(((se=s.flatGroup)==null?void 0:se.call(s,S))??!1)}function _(S){T[S]=!T[S],R.value=null}function f(S){P[S]=!P[S]}function x(S,I){const se=S.children??[];return!s.childLimit||P[I]||se.length<=s.childLimit?se:se.slice(0,s.childLimit)}function y(S,I){return S.align?`text-${S.align}`:I===0?"text-start":"text-end"}function O(S,I){return(S.align??(I===0?"left":"right"))==="left"?"justify-start":"justify-end"}const J=B(()=>{const S=new Map;return(s.sortCriteria.length?s.sortCriteria:s.sortField?[{field:s.sortField,order:s.sortOrder}]:[]).forEach((se,ge)=>S.set(se.field,{order:se.order,priority:ge+1})),S});function W(S){return J.value.get(S.key)??null}const r=B(()=>J.value.size>1);function A(S){if(!S.sortable)return;const I=J.value.get(S.key),se=I?I.order*-1:-1;c("sort",{sortField:S.key,sortOrder:se})}const H=B(()=>{var I;let S=1;for(const se of s.groups)if((I=se.children)!=null&&I.length&&(S=Math.max(S,2),se.children.some(ge=>m(ge))))return 3;return S});function me(S){var I;return((I=s.levelLabels)==null?void 0:I[S-1])??l("level_n",{n:S})}function ee(S){R.value=S;for(const I of s.groups)g[I.key]=S>=2&&I.children.length>0&&!$(I),I.children.forEach((se,ge)=>{m(se)&&(T[d(I,se,ge)]=S>=3)})}let oe=!1;return ke(()=>s.groups,S=>{if(!oe&&s.initialDepth!=null&&S.length){oe=!0,ee(s.initialDepth);return}R.value!=null&&ee(R.value)},{immediate:!0}),a({expandToDepth:ee,maxDepth:H}),(S,I)=>{const se=Fn,ge=Ne;return n(),i("div",Ps,[S.loading?(n(),i("div",Rs,I[0]||(I[0]=[u("i",{class:"pi pi-spin pi-spinner text-xl"},null,-1)]))):S.groups.length===0?(n(),k(se,{key:1,message:S.emptyMessage},null,8,["message"])):(n(),i(ne,{key:2}
1,[S.expandControls&&H.value>1?(n(),i("div",As,[u("span",Fs,C(o(l)("expand_to")),1),(n(!0),i(ne,null,_e(H.value,h=>(n(),i("button",{key:h,type:"button",class:ae(["text-[11px] px-2 py-0.5 rounded border transition-colors cursor-pointer",R.value===h?"bg-primary-50 border-primary-300 text-primary-700 font-medium":"bg-white border-gray-200 text-gray-500 hover:bg-gray-50"]),onClick:le=>ee(h)},C(me(h)),11,Ts))),128))])):K("",!0),u("div",{class:ae(["qp-grouped-table__scroll",{"is-scrollable":S.bodyMaxHeight}]),style:Pt(S.bodyMaxHeight?{maxHeight:S.bodyMaxHeight}:void 0)},[u("table",Os,[u("thead",null,[u("tr",Ls,[(n(!0),i(ne,null,_e(S.columns,(h,le)=>(n(),i("th",{key:h.key,class:ae([o(xt),y(h,le),h.sortable?"cursor-pointer select-none":""]),style:Pt(W(h)?{backgroundColor:"#F0FBE3"}:void 0),onClick:w=>A(h)},[u("span",{class:ae(["flex items-center gap-1",O(h,le)])},[h.tooltip?we((n(),i("i",{key:0,class:ae(o($t))},null,2)),[[ge,h.tooltip,void 0,{top:!0}]]):K("",!0),h.headerIcon?(n(),i("img",{key:1,src:h.headerIcon,class:"w-3.5 h-3.5 shrink-0",alt:""},null,8,Is)):K("",!0),h.flavor?(n(),i("span",Es,C(h.flavor),1)):K("",!0),ve(" "+C(h.label)+" ",1),h.sortable?(n(),i("i",{key:3,class:ae(["pi text-[10px] shrink-0",W(h)?W(h).order===1?"pi-sort-amount-up-alt text-dark-forest":"pi-sort-amount-down text-dark-forest":"pi-sort-alt text-gray-300"])},null,2)):K("",!0),h.sortable&&r.value&&W(h)?(n(),i("span",Ds,C(W(h).priority),1)):K("",!0)],2)],14,Ns))),128))])]),u("tbody",null,[(n(!0),i(ne,null,_e(S.groups,(h,le)=>{var w;return n(),i(ne,{key:h.key},[u("tr",{class:ae(["border-b border-gray-200 select-none",[{"hover:bg-gray-50 cursor-pointer":!$(h)},{"bg-gray-50/50":le%2===1&&!g[h.key]},(w=S.groupRowClass)==null?void 0:w.call(S,h)]]),onClick:E=>!$(h)&&N(h.key)},[(n(!0),i(ne,null,_e(S.columns,(E,q)=>(n(),i("td",{key:E.key,class:ae(["py-2.5",[y(E,q),q===0?"ps-2 pe-2":"px-2"]])},[q===0?(n(),i("div",Vs,[u("i",{"aria-hidden":"true",class:ae(["pi text-xs transition-transform",g[h.key]?"pi-chevron-down":"pi-chevron-right",{invisible:$(h)}])},null,2),Re(S.$slots,"group-cell",{group:h,col:E,colIndex:q},void 0,!0)])):Re(S.$slots,"group-cell",{key:1,group:h,col:E,colIndex:q},void 0,!0)],2))),128))],10,Bs),g[h.key]?(n(),i(ne,{key:0},[(n(!0),i(ne,null,_e(M(h),(E,q)=>{var U,j;return n(),i(ne,{key:q},[u("tr",{class:ae(["border-b border-gray-100 bg-gray-50/30 select-none",{"hover:bg-gray-100/50 cursor-pointer":m(E)}]),onClick:Y=>m(E)&&_(d(h,E,q))},[(n(!0),i(ne,null,_e(S.columns,(Y,ce)=>(n(),i("td",{key:Y.key,class:ae(["py-1.5 text-xs text-gray-500",[y(Y,ce),ce===0?"ps-10 pe-2":"px-2"]])},[ce===0?(n(),i("div",qs,[u("i",{"aria-hidden":"true",class:ae(["pi text-[10px] transition-transform",T[d(h,E,q)]?"pi-chevron-down":"pi-chevron-right",{invisible:!m(E)}])},null,2),Re(S.$slots,"child-cell",{child:E,group:h,col:Y,colIndex:ce},void 0,!0)])):Re(S.$slots,"child-cell",{key:1,child:E,group:h,col:Y,colIndex:ce},void 0,!0)],2))),128))],10,Ms),m(E)&&T[d(h,E,q)]?(n(),i(ne,{key:0},[(n(!0),i(ne,null,_e(x(E,d(h,E,q)),(Y,ce)=>(n(),i("tr",{key:`gc-${ce}`,class:"border-b border-gray-100 bg-gray-100/30"},[(n(!0),i(ne,null,_e(S.columns,(de,Se)=>(n(),i("td",{key:de.key,class:ae(["py-1.5 text-xs text-gray-400",[y(de,Se),Se===0?"ps-20 pe-2":"px-2"]])},[Re(S.$slots,"grandchild-cell",{grandchild:Y,child:E,group:h,col:de,colIndex:Se},void 0,!0)],2))),128))]))),128)),S.childLimit&&(((U=E.children)==null?void 0:U.length)??0)>S.childLimit?(n(),i("tr",Us,[u("td",{colspan:S.columns.length,class:"py-1.5 pe-2 ps-20"},[u("button",{class:"inline-flex items-center gap-1 text-xs text-primary-500 hover:text-primary-700 cursor-pointer transition-colors",onClick:Rt(Y=>f(d(h,E,q)),["stop"])},[u("i",{class:ae(["pi text-[10px]",P[d(h,E,q)]?"pi-chevron-up":"pi-chevron-down"])},null,2),ve(" "+C(P[d(h,E,q)]?o(l)("show_less"):o(l)("show_more_count",{count:(((j=E.children)==null?void 0:j.length)??0)-S.childLimit})),1)],8,Qs)],8,zs)])):K("",!0)],64)):K("",!0)],64)}),128)),S.childLimit&&h.children.length>S.childLimit?(n(),i("tr",Ks,[u("td",{colspan:S.columns.length,class:"py-1.5 pe-2 ps-10"},[u("button",{class:"inline-flex items-center gap-1 text-xs text-primary-500 hover:text-primary-700 cursor-pointer transition-colors",onClick:Rt(E=>V(h.key),["stop"])},[u("i",{class:ae(["pi text-[10px]",L[h.key]?"pi-chevron-up":"pi-chevron-down"])},null,2),ve(" "+C(L[h.key]?o(l)("show_less"):o(l)("show_more_count",{count:h.children.length-S.childLimit})),1)],8,Hs)],8,Gs)])):K("",!0)],64)):K("",!0)],64)}),128))]),S.showFooter?(n(),i("tfoot",Ws,[u("tr",js,[(n(!0),i(ne,null,_e(S.columns,(h,le)=>(n(),i("td",{key:h.key,class:ae(["py-2.5 px-2",y(h,le)])},[Re(S.$slots,"footer-cell",{col:h,colIndex:le},void 0,!0)],2))),128))])])):K("",!0)])],6)],64))])}}}),pn=rn(Js,[["__scopeId","data-v-770430a6"]]),Ys="__remainder__",yt={paid:0,organic:1,direct:2,other:3,unattributed:4};function gt(t){var $;const a=t.reduce((_,f)=>_+f.conversions,0),e=t.reduce((_,f)=>_+(f.new_customers??0),0),s=t.reduce((_,f)=>_+f.revenue,0),l=t.some(_=>_.qeen_spend!=null)?t.reduce((_,f)=>_+(f.qeen_spend??0),0):null,L=t.some(_=>_.ad_platform_spend!=null)?t.reduce((_,f)=>_+(f.ad_platform_spend??0),0):null,T=(($=t.find(_=>_.currency))==null?void 0:$.currency)??"",P=l!=null&&a>0?l/a:null,R=l!=null&&e>0?l/e:null,N=l!=null&&l>0?parseFloat((s/l).toFixed(2)):l!=null?0:null,V=L!=null&&a>0?L/a:null,M=L!=null&&e>0?L/e:null,d=L!=null&&L>0?parseFloat((s/L).toFixed(2)):L!=null?0:null,m=t.length===0?null:t.every(_=>_.is_paid===!0)?!0:t.every(_=>_.is_paid===!1)?!1:null;return{conversions:a,new_customers:e,revenue:s,qeen_spend:l,ad_platform_spend:L,currency:T,effective_cpa:P,effective_cac:R,effective_roas:N,true_cpa:V,true_cac:M,true_roas:d,is_paid:m}}function en(t,a){const e=new Map;for(const s of t){const c=a(s),l=e.get(c);l?l.push(s):e.set(c,[s])}return e}function Xs(t){const a=en(t,s=>s.channel_l1??"other"),e=[];for(const[s,c]of a){const l=en(c,L=>L.channel_l2??"other"),g=[];for(const[L,T]of l){const P=en(T.filter(V=>V.channel_l3!=null),V=>`${V.channel_l3}::${V.is_paid===!0?"paid":"unpaid"}`),R=[],N=new Set;for(const[V,M]of P){const d=gt(M);
1if(!(d.conversions<=0&&d.revenue<=0)){for(const m of M)N.add(m);R.push({key:V,channel_l3:M[0].channel_l3,...d})}}if(R.sort((V,M)=>M.conversions-V.conversions),R.length){const V=T.filter(d=>!N.has(d)),M=gt(V);(M.conversions>0||M.revenue>0)&&R.push({key:`${s}::${L}::remainder`,channel_l3:Ys,is_remainder:!0,...M,qeen_spend:null,ad_platform_spend:null,effective_cpa:null,effective_cac:null,effective_roas:null,true_cpa:null,true_cac:null,true_roas:null})}g.push({key:`${s}::${L}`,channel_l1:s,channel_l2:L,...gt(T),children:R})}g.sort((L,T)=>T.conversions-L.conversions),e.push({key:s,channel_l1:s,...gt(c),children:g})}return e.sort((s,c)=>{const l=yt[s.channel_l1]??yt.other,g=yt[c.channel_l1]??yt.other;return l!==g?l-g:c.conversions-s.conversions}),e}const Zs={class:"text-gray-400 text-xs"},el={key:1,class:"tabular-nums"},tl={key:2,class:"tabular-nums"},nl={key:0,class:"flex items-center gap-1.5"},al={key:0,class:"text-gray-400 text-xs"},sl={key:1,class:"tabular-nums"},ll={key:2,class:"tabular-nums"},ol={key:0,class:"flex items-center gap-1.5"},rl={key:0,class:"pi pi-info-circle text-gray-400 cursor-help",style:{"font-size":"10px"}},il={key:1,class:"tabular-nums"},ul={key:2,class:"tabular-nums"},cl={key:0,class:"flex items-center gap-1 font-semibold text-gray-700"},dl={class:"pi pi-info-circle text-gray-400 cursor-help",style:{"font-size":"11px"}},pl={key:1,class:"flex flex-col items-end"},vl={class:"font-semibold tabular-nums"},ml={key:2,class:"font-semibold tabular-nums"},_l={key:3,class:"flex flex-col items-end"},fl={key:6,class:"flex flex-col items-end"},yl={key:7,class:"flex flex-col items-end"},gl={key:8,class:"flex flex-col items-end"},bl={key:9,class:"flex flex-col items-end"},hl={key:10,class:"flex flex-col items-end"},kl={class:"font-semibold"},Cl={key:11,class:"flex flex-col items-end"},$l={class:"font-semibold"},bt="/logo_mark_green.svg",xl=ue({__name:"ConversionsBySourceTable",props:{data:{},loading:{type:Boolean},includeOrganic:{type:Boolean},spendView:{default:"true"},attributionModel:{}},emits:["filterChannel"],setup(t,{emit:a}){const{t:e}=fe(),s=t,c=a;function l(m){var $;return m.children.length===1&&(($=m.children[0])==null?void 0:$.channel_l2)===m.channel_l1}const g=m=>{const $=Number(m??0);return s.attributionModel==="last_touch"||s.attributionModel==="first_touch"?String(Math.round($)):$.toFixed(2)},L=[{key:"source",label:""},{key:"conversions",label:"",align:"right",headerIcon:bt},{key:"newCustomers",label:"",align:"right",headerIcon:bt},{key:"revenue",label:"",align:"right",headerIcon:bt},{key:"adPlatformSpend",label:"",align:"right"},{key:"qeenSpend",label:"",align:"right",headerIcon:bt},{key:"trueCpa",label:"",align:"right"},{key:"effectiveCpa",label:"",align:"right"},{key:"trueCac",label:"",align:"right"},{key:"effectiveCac",label:"",align:"right"},{key:"trueRoas",label:"",align:"right"},{key:"effectiveRoas",label:"",align:"right"}],T=new Set(["adPlatformSpend","trueCpa","trueCac","trueRoas"]),P=new Set(["qeenSpend","effectiveCpa","effectiveCac","effectiveRoas"]),R=B(()=>{const m={source:{label:e("attribution_source")},conversions:{label:e("conversions")},newCustomers:{label:e("nc"),tooltip:e("nc_tooltip")},revenue:{label:e("revenue"),tooltip:e("revenue_qeen_tooltip")},adPlatformSpend:{label:e("spend"),tooltip:e("spend_ad_platform_tooltip")},qeenSpend:{label:e("spend"),tooltip:e("spend_qeen_tooltip")},trueCpa:{label:e("cpa"),flavor:e("flavor_true"),tooltip:e("cpa_true_tooltip")},effectiveCpa:{label:e("cpa"),flavor:e("flavor_effective"),tooltip:e("cpa_effective_tooltip")},trueCac:{label:e("cac"),flavor:e("flavor_true"),tooltip:e("cac_true_tooltip")},effectiveCac:{label:e("cac"),flavor:e("flavor_effective"),tooltip:e("cac_effective_tooltip")},trueRoas:{label:e("roas"),flavor:e("flavor_true"),tooltip:e("roas_true_tooltip")},effectiveRoas:{label:e("roas"),flavor:e("flavor_effective"),tooltip:e("roas_effective_tooltip")}};return L.filter($=>s.spendView==="true"?!P.has($.key):s.spendView==="effective"?!T.has($.key):!0).map($=>{var _,f,x;return{...$,label:((_=m[$.key])==null?void 0:_.label)??$.label,flavor:(f=m[$.key])==null?void 0:f.flavor,tooltip:(x=m[$.key])==null?void 0:x.tooltip}})}),N=B(()=>Xs(s.data)),V=B(()=>N.value),M=B(()=>[e("channel_class_level"),e("channel_level"),e("channel_detail_level")]),d=B(()=>{var E;const m=N.value.reduce((q,U)=>q+U.conversions,0),$=N.value.reduce((q,U)=>q+(U.new_customers??0),0),_=N.value.reduce((q,U)=>q+U.revenue,0),f=N.value.reduce((q,U)=>q+(U.qeen_spend??0),0),x=N.value.reduce((q,U)=>q+(U.ad_platform_spend??0),0),y=s.data.filter(q=>q.is_paid===!0),O=y.reduce((q,U)=>q+(U.conversions??0),0),J=y.reduce((q,U)=>q+(U.revenue??0),0),W=y.reduce((q,U)=>q+(U.new_customers??0),0),r=m>0&&f>0?f/m:null,A=f>0?parseFloat((_/f).toFixed(2)):null,H=m>0&&x>0?x/m:null,me=x>0?parseFloat((_/x).toFixed(2)):null,ee=$>0&&f>0?f/$:null,oe=$>0&&x>0?x/$:null,S=O>0&&f>0?f/O:null,I=f>0?parseFloat((J/f).toFixed(2)):null,se=O>0&&x>0?x/O:null,ge=x>0?parseFloat((J/x).toFixed(2)):null,h=W>0&&f>0?f/W:null,le=W>0&&x>0?x/W:null,w=((E=s.data.find(q=>
1q.currency))==null?void 0:E.currency)??null;return{conversions:g(m),paidConversions:g(O),newCustomers:g($),paidNewCustomers:g(W),revenue:_,paidRevenue:J,qeenSpend:f,adPlatformSpend:x,effectiveCpa:r,effectiveRoas:A,trueCpa:H,trueRoas:me,effectiveCac:ee,trueCac:oe,paidEffectiveCpa:S,paidEffectiveRoas:I,paidTrueCpa:se,paidTrueRoas:ge,paidEffectiveCac:h,paidTrueCac:le,currency:w}});return(m,$)=>{const _=Ge,f=qn,x=De,y=Pn,O=ws,J=pn,W=Ne;return n(),k(J,{columns:R.value,groups:V.value,loading:m.loading,"empty-message":o(e)("no_data_found"),"child-limit":5,"flat-group":l,"expand-controls":"","level-labels":M.value,"initial-depth":2},{"group-cell":F(({group:r,col:A})=>[A.key==="source"?(n(),i(ne,{key:0},[l(r)&&r.children[0].children.length===0?(n(),i(ne,{key:0},[p(_,{source:r.channel_l1,"sub-source":r.children[0].channel_l2,showTitle:"",titleClass:o(Ke),vocabulary:"channel","filter-value":r.children[0].channel_l2,onFilter:$[0]||($[0]=H=>c("filterChannel",H))},null,8,["source","sub-source","titleClass","filter-value"]),p(f,{"is-paid":r.children[0].is_paid},null,8,["is-paid"])],64)):(n(),i(ne,{key:1},[p(_,{source:r.channel_l1,showTitle:"",titleClass:o(Ke),vocabulary:"channel","filter-value":r.channel_l1,onFilter:$[1]||($[1]=H=>c("filterChannel",H))},null,8,["source","titleClass","filter-value"]),u("span",Zs,"("+C(g(r.conversions))+")",1)],64))],64)):A.key==="conversions"?(n(),i("span",el,C(g(r.conversions)),1)):A.key==="newCustomers"?(n(),i("span",tl,C(g(r.new_customers)),1)):A.key==="revenue"?(n(),k(x,{key:3,value:r.revenue,currency:r.currency},null,8,["value","currency"])):A.key==="adPlatformSpend"?(n(),k(x,{key:4,value:r.ad_platform_spend,currency:r.currency},null,8,["value","currency"])):A.key==="qeenSpend"?(n(),k(x,{key:5,value:r.qeen_spend,currency:r.currency},null,8,["value","currency"])):A.key==="trueCpa"?(n(),k(x,{key:6,value:r.true_cpa,currency:r.currency},null,8,["value","currency"])):A.key==="effectiveCpa"?(n(),k(x,{key:7,value:r.effective_cpa,currency:r.currency},null,8,["value","currency"])):A.key==="trueCac"?(n(),k(x,{key:8,value:r.true_cac,currency:r.currency},null,8,["value","currency"])):A.key==="effectiveCac"?(n(),k(x,{key:9,value:r.effective_cac,currency:r.currency},null,8,["value","currency"])):A.key==="trueRoas"?(n(),k(y,{key:10,value:r.true_roas},null,8,["value"])):A.key==="effectiveRoas"?(n(),k(y,{key:11,value:r.effective_roas},null,8,["value"])):K("",!0)]),"child-cell":F(({child:r,group:A,col:H})=>[H.key==="source"?(n(),i("span",nl,[p(_,{source:r.channel_l1,"sub-source":r.channel_l2,showTitle:"",titleClass:"text-xs text-gray-600",vocabulary:"channel","filter-value":r.channel_l2,onFilter:$[2]||($[2]=me=>c("filterChannel",me))},null,8,["source","sub-source","filter-value"]),p(f,{"is-paid":r.is_paid},null,8,["is-paid"]),r.children.length?(n(),i("span",al,"("+C(g(r.conversions))+")",1)):K("",!0)])):H.key==="conversions"?(n(),i("span",sl,C(g(r.conversions)),1)):H.key==="newCustomers"?(n(),i("span",ll,C(g(r.new_customers)),1)):H.key==="revenue"?(n(),k(x,{key:3,value:r.revenue,currency:r.currency??A.currency},null,8,["value","currency"])):H.key==="adPlatformSpend"?(n(),k(x,{key:4,value:r.ad_platform_spend,currency:r.currency??A.currency},null,8,["value","currency"])):H.key==="qeenSpend"?(n(),k(x,{key:5,value:r.qeen_spend,currency:r.currency??A.currency},null,8,["value","currency"])):H.key==="trueCpa"?(n(),k(x,{key:6,value:r.true_cpa,currency:r.currency??A.currency},null,8,["value","currency"])):H.key==="effectiveCpa"?(n(),k(x,{key:7,value:r.effective_cpa,currency:r.currency??A.currency},null,8,["value","currency"])):H.key==="trueCac"?(n(),k(x,{key:8,value:r.true_cac,currency:r.currency??A.currency},null,8,["value","currency"])):H.key==="effectiveCac"?(n(),k(x,{key:9,value:r.effective_cac,currency:r.currency??A.currency},null,8,["value","currency"])):H.key==="trueRoas"?(n(),k(y,{key:10,value:r.true_roas},null,8,["value"])):H.key==="effectiveRoas"?(n(),k(y,{key:11,value:r.effective_roas},null,8,["value"])):K("",!0)]),"grandchild-cell":F(({grandchild:r,child:A,col:H})=>[H.key==="source"?(n(),i("span",ol,[p(_,{source:A.channel_l2,"sub-source":r.is_remainder?A.channel_l2:r.channel_l3,label:r.is_remainder?o(e)("channel_remainder"):void 0,vocabulary:"channel",showTitle:"",titleClass:"text-xs text-gray-500",interactive:!1},null,8,["source","sub-source","label"]),r.is_remainder?we((n(),i("i",rl,null,512)),[[W,o(e)("channel_remainder_tooltip"),void 0,{top:!0}]]):K("",!0),p(f,{"is-paid":r.is_paid},null,8,["is-paid"])])):H.key==="conversions"?(n(),i("span",il,C(g(r.conversions)),1)):H.key==="newCustomers"?(n(),i("span",ul,C(g(r.new_customers)),1)):H.key==="revenue"?(n(),k(x,{key:3,value:r.revenue,currency:r.currency??A.currency},null,8,["value","currency"])):H.key==="adPlatformSpend"?(n(),k(x,{key:4,value:r.ad_platform_spend,currency:r.currency??A.currency},null,8,["value","currency"])):H.key==="qeenSpend"?(n(),k(x,{key:5,value:r.qeen_spend,currency:r.currency??A.currency},null,8,["value","currency"])):H.key==="trueCpa"?(n(),k(x,{key:6,value:r.true_cpa,currency:r.currency??A.currency},null,8,["value","currency"])):H.key==="effectiveCpa"?(n(),k(x,{key:7,value:r.effective_cpa,currency:r.currency??A.currency},null,8,["value","currency"])):H.key==="trueCac"?(n(),k(x,{key:8,value:r.true_cac,currency:r.currency??A.currency},null,8,["value","currency"])):H.key==="effectiveCac"?(n(),k(x,{key:9,value:r.effective_cac,currency:r.currency??A.currency},null,8,["value","currency"])):H.key==="trueRoas"?(n(),k(y,{key:10,value:r.true_roas}
1,null,8,["value"])):H.key==="effectiveRoas"?(n(),k(y,{key:11,value:r.effective_roas},null,8,["value"])):K("",!0)]),"footer-cell":F(({col:r})=>[r.key==="source"?(n(),i("span",cl,[ve(C(o(e)("total"))+" ",1),we(u("i",dl,null,512),[[W,o(e)("conversions_totals_tooltip"),void 0,{top:!0}]])])):r.key==="conversions"?(n(),i("span",pl,[u("span",vl,C(d.value.conversions),1),p(O,{visible:m.includeOrganic!==!1&&d.value.paidConversions!==d.value.conversions,class:"tabular-nums"},{default:F(()=>[ve(C(d.value.paidConversions),1)]),_:1},8,["visible"])])):r.key==="newCustomers"?(n(),i("span",ml,C(d.value.newCustomers),1)):r.key==="revenue"?(n(),i("span",_l,[p(x,{value:d.value.revenue,currency:d.value.currency,class:"font-semibold"},null,8,["value","currency"]),p(O,{visible:m.includeOrganic!==!1&&d.value.paidRevenue!==d.value.revenue},{default:F(()=>[p(x,{value:d.value.paidRevenue,currency:d.value.currency},null,8,["value","currency"])]),_:1},8,["visible"])])):r.key==="adPlatformSpend"?(n(),k(x,{key:4,value:d.value.adPlatformSpend,currency:d.value.currency,class:"font-semibold"},null,8,["value","currency"])):r.key==="qeenSpend"?(n(),k(x,{key:5,value:d.value.qeenSpend,currency:d.value.currency,class:"font-semibold"},null,8,["value","currency"])):r.key==="trueCpa"?(n(),i("span",fl,[p(x,{value:d.value.trueCpa,currency:d.value.currency,class:"font-semibold"},null,8,["value","currency"]),p(O,{visible:m.includeOrganic!==!1&&d.value.paidConversions!==d.value.conversions},{default:F(()=>[p(x,{value:d.value.paidTrueCpa,currency:d.value.currency},null,8,["value","currency"])]),_:1},8,["visible"])])):r.key==="effectiveCpa"?(n(),i("span",yl,[p(x,{value:d.value.effectiveCpa,currency:d.value.currency,class:"font-semibold"},null,8,["value","currency"]),p(O,{visible:m.includeOrganic!==!1&&d.value.paidConversions!==d.value.conversions},{default:F(()=>[p(x,{value:d.value.paidEffectiveCpa,currency:d.value.currency},null,8,["value","currency"])]),_:1},8,["visible"])])):r.key==="trueCac"?(n(),i("span",gl,[p(x,{value:d.value.trueCac,currency:d.value.currency,class:"font-semibold"},null,8,["value","currency"]),p(O,{visible:m.includeOrganic!==!1&&d.value.paidNewCustomers!==d.value.newCustomers},{default:F(()=>[p(x,{value:d.value.paidTrueCac,currency:d.value.currency},null,8,["value","currency"])]),_:1},8,["visible"])])):r.key==="effectiveCac"?(n(),i("span",bl,[p(x,{value:d.value.effectiveCac,currency:d.value.currency,class:"font-semibold"},null,8,["value","currency"]),p(O,{visible:m.includeOrganic!==!1&&d.value.paidNewCustomers!==d.value.newCustomers},{default:F(()=>[p(x,{value:d.value.paidEffectiveCac,currency:d.value.currency},null,8,["value","currency"])]),_:1},8,["visible"])])):r.key==="trueRoas"?(n(),i("span",hl,[u("span",kl,[p(y,{value:d.value.trueRoas},null,8,["value"])]),p(O,{visible:m.includeOrganic!==!1&&d.value.paidConversions!==d.value.conversions},{default:F(()=>[p(y,{value:d.value.paidTrueRoas},null,8,["value"])]),_:1},8,["visible"])])):r.key==="effectiveRoas"?(n(),i("span",Cl,[u("span",$l,[p(y,{value:d.value.effectiveRoas},null,8,["value"])]),p(O,{visible:m.includeOrganic!==!1&&d.value.paidConversions!==d.value.conversions},{default:F(()=>[p(y,{value:d.value.paidEffectiveRoas},null,8,["value"])]),_:1},8,["visible"])])):K("",!0)]),_:1},8,["columns","groups","loading","empty-message","level-labels"])}}}),wl={key:0,class:"flex flex-col items-center justify-center py-10 text-gray-500"},Sl={key:1},Pl={class:"flex justify-around ps-10 pe-2"},Rl=ue({__name:"ConversionsBySourceChart",props:{data:{},loading:{type:Boolean}},emits:["filterChannel"],setup(t,{emit:a}){const{t:e,te:s}=fe(),c=t,l=a,g=B(()=>{const P=new Map;for(const R of c.data){const N=Rn(R.channel_l1,R.channel_l2),V=P.get(N)??{conversions:0,revenue:0,currency:""};V.conversions+=R.conversions??0,V.revenue+=R.revenue??0,V.currency||(V.currency=R.currency??""),P.set(N,V)}return[...P].map(([R,N])=>({channel:R,...N})).sort((R,N)=>N.conversions-R.conversions)}),L=B(()=>({labels:g.value.map(P=>Fa(P.channel,"channel",e,s)),datasets:[{label:e("conversions"),data:g.value.map(P=>P.conversions),backgroundColor:g.value.map(P=>Ta(P.channel)),borderRadius:4}]})),T=B(()=>
1({responsive:!0,maintainAspectRatio:!1,plugins:{legend:{display:!1},tooltip:{callbacks:{label:P=>{const R=g.value[P.dataIndex];if(!R)return"";const N=[`${e("conversions")}: ${R.conversions}`];return R.revenue&&N.push(`${e("revenue")}: ${R.revenue} ${R.currency}`),N}}}},scales:{y:{beginAtZero:!0,ticks:{stepSize:10}},x:{grid:{display:!1},ticks:{display:!1}}}}));return(P,R)=>{const N=Ge;return!P.data.length&&!P.loading?(n(),i("div",wl,[R[1]||(R[1]=u("i",{class:"pi pi-inbox text-3xl mb-2 text-gray-300"},null,-1)),ve(" "+C(o(e)("no_data_found")),1)])):(n(),i("div",Sl,[p(o(Qa),{type:"bar",data:L.value,options:T.value,class:"h-64"},null,8,["data","options"]),u("div",Pl,[(n(!0),i(ne,null,_e(g.value,V=>(n(),k(N,{key:V.channel,source:V.channel,vocabulary:"channel","show-title":"","filter-value":V.channel,onFilter:R[0]||(R[0]=M=>l("filterChannel",M))},null,8,["source","filter-value"]))),128))])]))}}}),Al={class:"flex items-center gap-2"},Fl=ue({__name:"ConversionsBySourceWidget",props:{data:{},loading:{type:Boolean},includeOrganic:{type:Boolean},attributionModel:{}},emits:["filterChannel"],setup(t,{emit:a}){const{t:e}=fe(),s=a,c=D("table"),l=[{value:"table",icon:"pi pi-table",label:e("table_view")},{value:"chart",icon:"pi pi-chart-bar",label:e("chart_view")}],g=D("true"),L=[{value:"true",icon:"pi pi-chart-line",tooltip:e("spend_view_true_tooltip")},{value:"effective",icon:"pi pi-eye",tooltip:e("spend_view_effective_tooltip")},{value:"all",icon:"pi pi-th-large",tooltip:e("spend_view_all_tooltip")}];return(T,P)=>{const R=Ft,N=xl,V=Rl,M=tt;return n(),k(M,{title:o(e)("conversions_by_source"),loading:T.loading},{toolbar:F(()=>[u("div",Al,[c.value==="table"?(n(),k(R,{key:0,modelValue:g.value,"onUpdate:modelValue":P[0]||(P[0]=d=>g.value=d),options:L},null,8,["modelValue"])):K("",!0),p(R,{modelValue:c.value,"onUpdate:modelValue":P[1]||(P[1]=d=>c.value=d),options:l},null,8,["modelValue"])])]),default:F(()=>[c.value==="table"?(n(),k(N,{key:0,data:T.data,loading:T.loading,"include-organic":T.includeOrganic,"spend-view":g.value,"attribution-model":T.attributionModel,onFilterChannel:P[2]||(P[2]=d=>s("filterChannel",d))},null,8,["data","loading","include-organic","spend-view","attribution-model"])):(n(),k(V,{key:1,data:T.data,loading:T.loading,onFilterChannel:P[3]||(P[3]=d=>s("filterChannel",d))},null,8,["data","loading"]))]),_:1},8,["title","loading"])}}}),wt="__NONE__";function xn(t,a){return{key:t,is_attributed:t==="attributed",conversions:0,revenue:0,currency:a}}function Tl(t){const a=new Map;for(const e of t){const s=e.sales_channel||wt;let c=a.get(s);c||(c={key:s,channel:s,conversions:0,revenue:0,currency:e.currency,children:[xn("attributed",e.currency),xn("unattributed",e.currency)]},a.set(s,c));const l=c.children.find(g=>g.is_attributed===e.is_attributed);l.conversions+=e.conversions,l.revenue+=e.revenue,e.currency&&(l.currency=e.currency),c.conversions+=e.conversions,c.revenue+=e.revenue,e.currency&&(c.currency=e.currency)}return[...a.values()].sort((e,s)=>e.channel===wt?1:s.channel===wt?-1:s.revenue-e.revenue)}const Ol={key:0,class:"text-xs text-grays-20"},Ll={key:0,class:"font-semibold"},wn="/logo_mark_green.svg",Nl=ue({__name:"ConversionsBySalesChannelTable",props:{groups:{},loading:{type:Boolean}},setup(t){const{t:a}=fe(),e=t,s={CHANNEL:"channel",CONVERSIONS:"conversions",REVENUE:"revenue"},c=B(()=>[{key:s.CHANNEL,label:a("sales_channel")},{key:s.CONVERSIONS,label:a("conversions"),align:"right",headerIcon:wn,tooltip:a("conversions_qeen_tooltip")},{key:s.REVENUE,label:a("revenue"),align:"right",headerIcon:wn,tooltip:a("revenue_qeen_tooltip")}]);function l(L){return L===wt?a("sales_channel_not_set"):L}const g=B(()=>e.groups.reduce((L,T)=>({conversions:L.conversions+T.conversions,revenue:L.revenue+T.revenue,currency:T.currency||L.currency}),{conversions:0,revenue:0,currency:""}));return(L,T)=>{const P=De,R=pn;return n(),k(R,{columns:c.value,groups:L.groups,loading:L.loading,"empty-message":o(a)("no_data_found"),"child-limit":0},{"group-cell":F(({group:N,col:V})=>[V.key===s.CHANNEL?(n(),i("span",{key:0,class:ae(o(Ke))},C(l(N.channel)),3)):V.key===s.CONVERSIONS?(n(),i("span",{key:1,class:ae(o($n))},C(o(Fe)(N.conversions)),3)):V.key===s.REVENUE?(n(),k(P,{key:2,value:N.revenue,currency:N.currency},null,8,["value","currency"])):K("",!0)]),"child-cell":F(({child:N,group:V,col:M})=>[M.key===s.CHANNEL?(n(),i("span",Ol,C(N.is_attributed?o(a)("attributed"):o(a)("source_unattributed")),1)):M.key===s.CONVERSIONS?(n(),i("span",{key:1,class:ae(o($n))},C(o(Fe)(N.conversions)),3)):M.key===s.REVENUE?(n(),k(P,{key:2,value:N.revenue,currency:N.currency??V.currency},null,8,["value","currency"])):K("",!0)]),"footer-cell":F(({col:N})=>[N.key===s.CHANNEL?(n(),i("span",Ll,C(o(a)("total")),1)):N.key===s.CONVERSIONS?(n(),i("span",{key:1,class:ae(o(Ss))},C(o(Fe)(g.value.conversions)),3)):N.key===s.REVENUE?(n(),k(P,{key:2,value:g.value.revenue,currency:g.value.currency,class:"font-semibold"},null,8,["value","currency"])):K("",!0)]),_:1},8,["columns","groups","loading","empty-message"])}}}),Il=ue({__name:"ConversionsBySalesChannelWidget",props:{groups:{},loading:{type:Boolean}},setup(t){const{t:a}=fe();
1return(e,s)=>{const c=Nl,l=tt;return n(),k(l,{title:o(a)("conversions_by_sales_channel"),loading:e.loading,"skeleton-rows":4},{default:F(()=>[p(c,{groups:e.groups,loading:e.loading},null,8,["groups","loading"])]),_:1},8,["title","loading"])}}}),El={class:"relative shrink-0"},Dl={key:0,class:"absolute -top-1.5 -end-1.5 min-w-[16px] h-4 px-1 rounded-full bg-dark-forest text-white text-[10px] leading-4 text-center font-semibold"},Bl={class:"p-1 w-72"},Vl={class:"text-[11px] uppercase tracking-wide text-gray-400 mb-2 px-1"},Ml={key:0,class:"text-xs text-gray-400 px-1 pb-2"},ql={class:"flex flex-col gap-2"},Ul={class:"w-4 text-[11px] text-gray-400 tabular-nums text-center shrink-0"},zl={class:"inline-flex rounded border border-gray-200 overflow-hidden shrink-0"},Ql=["title","onClick"],Kl=["title","onClick"],Gl=["title","onClick"],Hl={class:"flex items-center justify-between mt-2 pt-2 border-t border-gray-100"},Wl=["disabled"],jl=ue({__name:"QpSortMenu",props:{fields:{},modelValue:{}},emits:["update:modelValue"],setup(t,{emit:a}){const e=t,s=a,{t:c}=fe(),l=D(null);function g(_){var f;(f=l.value)==null||f.toggle(_)}const L=B(()=>new Set(e.modelValue.map(_=>_.field))),T=B(()=>e.fields.filter(_=>!L.value.has(_.value)));function P(_){var x;const f=(x=e.modelValue[_])==null?void 0:x.field;return e.fields.filter(y=>!L.value.has(y.value)||y.value===f)}function R(_){s("update:modelValue",_)}function N(_,f){R(e.modelValue.map((x,y)=>y===_?{...x,field:f}:x))}function V(_,f){R(e.modelValue.map((x,y)=>y===_?{...x,order:f}:x))}function M(_){R(e.modelValue.filter((f,x)=>x!==_))}function d(){const _=T.value[0];_&&R([...e.modelValue,{field:_.value,order:-1}])}function m(){R([])}const $=B(()=>e.modelValue.length?e.modelValue.map(_=>{var y;const f=((y=e.fields.find(O=>O.value===_.field))==null?void 0:y.label)??_.field,x=_.order===1?c("metrics_sort_asc"):c("metrics_sort_desc");return`${f} (${x})`}).join(", "):c("sort_none"));return(_,f)=>(n(),i("div",El,[p(o(He),{type:"button",icon:"pi pi-sort-alt",label:o(c)("sort"),severity:"secondary",outlined:"",size:"small",title:$.value,onClick:g},null,8,["label","title"]),_.modelValue.length?(n(),i("span",Dl,C(_.modelValue.length),1)):K("",!0),p(o(Ga),{ref_key:"popover",ref:l},{default:F(()=>[u("div",Bl,[u("div",Vl,C(o(c)("sort_by")),1),_.modelValue.length?K("",!0):(n(),i("p",Ml,C(o(c)("sort_none")),1)),u("div",ql,[(n(!0),i(ne,null,_e(_.modelValue,(x,y)=>(n(),i("div",{key:y,class:"flex items-center gap-1.5"},[u("span",Ul,C(y+1),1),p(o(Ha),{"model-value":x.field,options:P(y),"option-label":"label","option-value":"value",class:"flex-1 !text-xs","onUpdate:modelValue":O=>N(y,O)},null,8,["model-value","options","onUpdate:modelValue"]),u("div",zl,[u("button",{type:"button",class:ae(["px-1.5 py-1 text-[11px] cursor-pointer transition-colors",x.order===1?"bg-dark-forest text-white":"bg-white text-gray-500 hover:bg-gray-50"]),title:o(c)("metrics_sort_asc"),onClick:O=>V(y,1)},f[0]||(f[0]=[u("i",{class:"pi pi-sort-amount-up-alt text-[11px]"},null,-1)]),10,Ql),u("button",{type:"button",class:ae(["px-1.5 py-1 text-[11px] cursor-pointer transition-colors border-s border-gray-200",x.order===-1?"bg-dark-forest text-white":"bg-white text-gray-500 hover:bg-gray-50"]),title:o(c)("metrics_sort_desc"),onClick:O=>V(y,-1)},f[1]||(f[1]=[u("i",{class:"pi pi-sort-amount-down text-[11px]"},null,-1)]),10,Kl)]),u("button",{type:"button",class:"p-1 text-gray-400 hover:text-metric-red cursor-pointer transition-colors shrink-0",title:o(c)("remove"),onClick:O=>M(y)},f[2]||(f[2]=[u("i",{class:"pi pi-times text-[11px]"},null,-1)]),8,Gl)]))),128))]),u("div",Hl,[u("button",{type:"button",class:"inline-flex items-center gap-1 text-xs text-primary-600 hover:text-primary-700 cursor-pointer transition-colors disabled:opacity-40 disabled:cursor-not-allowed",disabled:!T.value.length,onClick:d},[f[3]||(f[3]=u("i",{class:"pi pi-plus text-[10px]"},null,-1)),ve(" "+C(o(c)("add_sort_field")),1)],8,Wl),_.modelValue.length?(n(),i("button",{key:0,type:"button",class:"text-xs text-gray-400 hover:text-gray-600 cursor-pointer transition-colors",onClick:m},C(o(c)("clear_all")),1)):K("",!0)])])]),_:1},512)]))}}),Jl={key:0,class:"text-[10px] text-amber-600 font-medium bg-amber-50 rounded-full px-1.5 py-0.5 leading-none shrink-0"},Yl=ue({__name:"UndetectedBadge",props:{isDetected:{type:[Boolean,null],default:!0}},setup(t){const{t:a}=fe();
1return(e,s)=>{const c=Ne;return e.isDetected===!1?we((n(),i("span",Jl,[ve(C(o(a)("undetected_badge")),1)])),[[c,o(a)("undetected_campaigns_hint"),void 0,{top:!0}]]):K("",!0)}}}),tn=ue({__name:"QpLevelBadge",props:{label:{},level:{}},setup(t){const a=t,e=B(()=>({1:"bg-lime-tint text-dark-forest border-dark-forest/20",2:"bg-indigo-50 text-indigo-700 border-indigo-200",3:"bg-slate-100 text-slate-600 border-slate-200"})[a.level]);return(s,c)=>(n(),i("span",{class:ae(["shrink-0 inline-flex items-center leading-none uppercase tracking-wide font-semibold text-[9px] px-1.5 py-0.5 rounded border",e.value])},C(s.label),3))}}),sn=ue({__name:"AudienceButton",props:{count:{default:null},countLabelKey:{default:"audience_view_count"},plainLabelKey:{default:"audience_view"}},emits:["click"],setup(t,{emit:a}){const e=a,{t:s}=fe(),{formatNumber:c}=ja();return(l,g)=>{const L=He;return n(),k(L,{type:"button",size:"small",severity:"secondary",outlined:"",icon:"pi pi-users",label:l.count!=null?o(s)(l.countLabelKey,{count:o(c)(l.count)}):o(s)(l.plainLabelKey),onClick:g[0]||(g[0]=Rt(T=>e("click"),["stop"]))},null,8,["label"])}}}),Xl={class:"inline-flex items-center justify-center min-w-[18px] h-[18px] rounded-full bg-red-500 px-1 text-[10px] font-semibold leading-none text-white"},Zl=ue({__name:"LowRoasFilterButton",props:{count:{},active:{type:Boolean,default:!1},loading:{type:Boolean,default:!1}},emits:["toggle"],setup(t,{emit:a}){const e=a,{t:s}=fe();return(c,l)=>{const g=Ot,L=Ne;return c.loading?(n(),k(g,{key:0,width:"8.5rem",height:"1.875rem",borderRadius:"9999px"})):we((n(),i("button",{key:1,type:"button",class:ae(["inline-flex items-center gap-2 rounded-full border bg-white px-3 py-1.5 text-xs font-medium shadow-sm transition-colors cursor-pointer",c.active?"border-red-300 ring-1 ring-red-200 text-red-700":"border-gray-200 text-gray-700 hover:bg-gray-50"]),onClick:l[0]||(l[0]=T=>e("toggle"))},[l[1]||(l[1]=u("span",{class:"h-2 w-2 rounded-full bg-red-500 shrink-0"},null,-1)),l[2]||(l[2]=u("i",{class:"pi pi-bell text-sm text-gray-400"},null,-1)),u("span",null,C(o(s)("low_roas_label",{count:c.count})),1),u("span",Xl,C(c.count),1)],2)),[[L,o(s)("filter_low_roas_tooltip"),void 0,{top:!0}]])}}}),eo={class:"mb-2 flex items-center justify-between gap-2 rounded-md bg-red-50 px-3 py-2 text-xs text-red-800"},to={class:"flex items-center gap-2"},no={class:"font-semibold"},ao=ue({__name:"LowRoasFilterNotice",emits:["clear"],setup(t,{emit:a}){const e=a,{t:s}=fe();return(c,l)=>{const g=Da("i18n-t");return n(),i("div",eo,[u("span",to,[l[1]||(l[1]=u("i",{class:"pi pi-exclamation-triangle text-red-500"},null,-1)),p(g,{keypath:"low_roas_active_notice",tag:"span",scope:"global"},{threshold:F(()=>[u("strong",no,C(o(s)("roas"))+" ⤠1.0",1)]),_:1})]),u("button",{type:"button",class:"inline-flex items-center gap-1 rounded-full border border-red-200 bg-white px-2.5 py-1 font-medium text-red-700 transition-colors hover:bg-red-100 cursor-pointer shrink-0",onClick:l[0]||(l[0]=L=>e("clear"))},[l[2]||(l[2]=u("i",{class:"pi pi-times text-[10px]"},null,-1)),ve(" "+C(o(s)("clear_filter")),1)])])}}}),so={class:"flex items-center gap-2"},lo={key:0,class:"flex flex-col"},oo={key:0,class:"flex flex-col gap-0.5"},ro={class:"flex items-center gap-1.5"},io=["title"],uo={key:1,class:"text-[10px] text-gray-400 tabular-nums flex items-center gap-0.5"},co={class:"pi pi-info-circle text-gray-400 cursor-help shrink-0",style:{"font-size":"9px"}},po={key:0,class:"tabular-nums"},vo={key:1,class:"text-gray-400"},mo={key:0,class:"tabular-nums"},_o={key:1,class:"text-gray-400"},fo={key:0,class:"flex flex-col gap-0.5"},yo={class:"flex items-center gap-1.5"},go=["title"],bo={key:1},ho={key:0,class:"tabular-nums"},ko={key:1,class:"text-gray-400"},Co={key:0,class:"tabular-nums"},$o={key:1,class:"text-gray-400"},xo={key:9},wo={key:0,class:"flex flex-col gap-0.5"},So={class:"flex items-center gap-1.5"},Po=["title"],Ro={key:1},Ao={key:0,class:"tabular-nums"},Fo={key:1,class:"text-gray-400"},To={key:0,class:"tabular-nums"},Oo={key:1,class:"text-gray-400"},Lo={key:9},No={class:"font-semibold text-gray-700"},Io={class:"flex flex-col gap-0.5"},Eo={class:"text-xs text-gray-400 tabular-nums"},Do={class:"flex flex-col gap-0.5"},Bo={class:"text-xs text-gray-400 tabular-nums"},Vo=7,Mo=4,qo=ue({__name:"CampaignPerformanceWidget",props:{data:{},allData:{},loading:{type:Boolean},totalRecords:{},currentPage:{},rowsPerPage:{},sort:{},campaignFilter:{},search:{},hasLowRoas:{type:Boolean},lowRoasCount:{},lowRoasActive:{type:Boolean},audienceEnabled:{type:Boolean}},emits:["filterChannel","sort","page","update:campaignFilter","update:search","update:sort","update:lowRoasActive","viewAudience"],setup(t,{emit:a}){const{t:e}=fe(),{maskText:s}=Ja(),c=t,l=a,g=B(()=>{const y=[{key:"campaign",label:e("campaign"),align:"left",tooltip:e("unknown_campaign_tooltip")},{key:"channel",label:e("channel_level"),align:"left"},{key:"conversions",label:e("conversions"),sortable:!0,tooltip:e("conversions_qeen_tooltip"),headerIcon:"/logo_mark_green.svg"},{key:"newCustomers",label:e("nc"),sortable:!0,tooltip:e("nc_tooltip"),headerIcon:"/logo_mark_green.svg"},{key:"revenue",label:e("revenue"),sortable:!0,tooltip:e("revenue_qeen_tooltip"),headerIcon:"/logo_mark_green.svg"},{key:"adPlatformSpend",label:e("spend"),sortable:!0,tooltip:e("spend_ad_platform_campaign_tooltip")},{key:"trueCpa",label:e("cpa"),flavor:e("flavor_true"),sortable:!0,tooltip:e("cpa_true_tooltip")},{key:"trueCac",label:e("cac"),flavor:e("flavor_true"),sortable:!0,tooltip:e("cac_true_tooltip")},{key:"trueRoas",label:e("roas"),flavor:e("flavor_true"),sortable:!0,tooltip:e("roas_true_tooltip")}];return c.audienceEnabled&&y.push({key:"audience",label:e("campaign_audience"),align:"right",tooltip:e("campaign_audience_tooltip")}),y}),L=B(()=>[e("campaign_level"),e("ad_set_level"),e("ad_level")]);function T(y){return(y==null?void 0:y.true_roas)!=null&&y.true_roas<=1?"!bg-red-50 hover:!bg-red-100":""}const P=B(()=>g.value.filter(y=>y.sortable).map(y=>({value:y.key,label:y.label}))),R=`${Vo*Mo+2.5}rem`,N=D("campaign"),V=B(()=>[{value:"campaign",icon:"pi pi-list",tooltip:e("view_by_campaign_tooltip")},{value:"channel",icon:"pi pi-objects-column",tooltip:e("view_by_channel_tooltip")}]),M=B(()=>[{value:"all",icon:"pi pi-list",tooltip:e("campaign_filter_all_tooltip")},{value:"detected",icon:"pi pi-check-circle",tooltip:e("campaign_filter_detected_tooltip")},{value:"undetected",icon:"pi pi-question-circle",tooltip:e("campaign_filter_undetected_tooltip")}]),d=B({get:()=>c.campaignFilter??"all",set:y=>l("update:campaignFilter",y)}),m=B(()=>{const y=new Map;for(const O of c.allData){const J=Xt(O.source)??"unknown",W=y.get(J)??{qpSpend:0,apSpend:0,hasPaid:!1,currency:O.currency??""};O.is_detected&&(W.qpSpend+=O.spend??0),W.apSpend+=O.ad_platform_spend??0,O.is_paid&&(W.hasPaid=!0),y.set(J,W)}
1return[...y.entries()].filter(([,O])=>O.hasPaid&&(O.apSpend>0||O.qpSpend>0)).map(([O,J])=>({channel:O,qpSpend:J.qpSpend,apSpend:J.apSpend,diff:J.apSpend-J.qpSpend,diffPct:J.apSpend>0?(J.apSpend-J.qpSpend)/J.apSpend*100:0,currency:J.currency})).sort((O,J)=>J.apSpend-O.apSpend)}),$=B(()=>{var W;const y=m.value,O=y.reduce((r,A)=>r+A.qpSpend,0),J=y.reduce((r,A)=>r+A.apSpend,0);return{qpSpend:O,apSpend:J,diff:J-O,diffPct:J>0?(J-O)/J*100:0,currency:((W=y[0])==null?void 0:W.currency)??""}});function _(y){if(!y)return"?";const O=new Date(y);return isNaN(O.getTime())?"?":O.toLocaleDateString("en-CA")}function f(y){l("sort",{sortField:y.sortField,sortOrder:y.sortOrder})}function x(y){l("page",{page:y.page+1,rows:y.rows})}return(y,O)=>{const J=Ln,W=jl,r=Ft,A=Yl,H=Wa,me=Ge,ee=De,oe=Pn,S=pn,I=Nn,se=Tt,ge=un,h=tt,le=Ne;return n(),k(h,{title:o(e)("campaign_performance"),loading:y.loading,"skeleton-rows":6},{toolbar:F(()=>[u("div",so,[y.hasLowRoas&&N.value==="campaign"?(n(),k(Zl,{key:0,count:y.lowRoasCount??0,active:y.lowRoasActive,loading:y.loading,onToggle:O[0]||(O[0]=w=>l("update:lowRoasActive",!y.lowRoasActive))},null,8,["count","active","loading"])):K("",!0),N.value==="campaign"?(n(),k(J,{key:1,"model-value":y.search??"",placeholder:o(e)("search_campaigns"),tooltip:o(e)("search_campaign_or_source"),class:"w-56","onUpdate:modelValue":O[1]||(O[1]=w=>l("update:search",w))},null,8,["model-value","placeholder","tooltip"])):K("",!0),N.value==="campaign"?(n(),k(W,{key:2,fields:P.value,"model-value":y.sort??[],"onUpdate:modelValue":O[2]||(O[2]=w=>l("update:sort",w))},null,8,["fields","model-value"])):K("",!0),y.campaignFilter?(n(),k(r,{key:3,modelValue:d.value,"onUpdate:modelValue":O[3]||(O[3]=w=>d.value=w),options:M.value},null,8,["modelValue","options"])):K("",!0),y.campaignFilter?(n(),k(r,{key:4,modelValue:N.value,"onUpdate:modelValue":O[4]||(O[4]=w=>N.value=w),options:V.value},null,8,["modelValue","options"])):K("",!0)])]),default:F(()=>[N.value==="campaign"?(n(),i("div",lo,[y.lowRoasActive?(n(),k(ao,{key:0,onClear:O[5]||(O[5]=w=>l("update:lowRoasActive",!1))})):K("",!0),p(S,{columns:g.value,groups:y.data,loading:y.loading,"empty-message":o(e)("no_data_found"),"show-footer":!1,"sort-criteria":y.sort??[],"expand-controls":"","level-labels":L.value,"body-max-height":R,"group-row-class":T,onSort:f},{"group-cell":F(({group:w,col:E})=>[E.key==="campaign"?(n(),i("div",oo,[u("div",ro,[p(tn,{label:o(e)("campaign_level"),level:1},null,8,["label"]),u("span",{class:"font-semibold text-gray-800 truncate max-w-[220px]",title:o(s)(w.campaign)},C(o(s)(w.campaign)),9,io),p(A,{"is-detected":w.is_detected},null,8,["is-detected"])]),w.campaign_id?(n(),k(H,{key:0,value:o(s)(w.campaign_id),"enable-copy":"","max-width":"none",class:"text-gray-400 font-mono","text-class":"text-[10px]"},null,8,["value"])):K("",!0),w.start_date||w.end_date?(n(),i("span",uo,[ve(C(_(w.start_date))+" â "+C(_(w.end_date))+" ",1),we(u("i",co,null,512),[[le,o(e)("campaign_dates_tooltip"),void 0,{top:!0}]])])):K("",!0)])):E.key==="channel"?(n(),k(me,{key:1,source:"paid","sub-source":o(Xt)(w.source)??void 0,vocabulary:"channel",showTitle:"",titleClass:o(Ke),"filter-value":o(Xt)(w.source)??void 0,onFilter:O[6]||(O[6]=q=>l("filterChannel",q))},null,8,["sub-source","titleClass","filter-value"])):E.key==="conversions"?(n(),i(ne,{key:2},[w.conversions!=null?(n(),i("span",po,C(w.conversions),1)):(n(),i("span",vo,"-"))],64)):E.key==="newCustomers"?(n(),i(ne,{key:3},[w.new_customers!=null?(n(),i("span",mo,C(w.new_customers),1)):(n(),i("span",_o,"-"))],64)):E.key==="revenue"?(n(),k(ee,{key:4,value:w.revenue,currency:w.currency},null,8,["value","currency"])):E.key==="adPlatformSpend"?(n(),k(ee,{key:5,value:w.ad_platform_spend,currency:w.currency},null,8,["value","currency"])):E.key==="trueCpa"?(n(),k(ee,{key:6,value:w.true_cpa,currency:w.currency},null,8,["value","currency"])):E.key==="trueCac"?(n(),k(ee,{key:7,value:w.true_cac,currency:w.currency},null,8,["value","currency"])):E.key==="trueRoas"?(n(),k(oe,{key:8,value:w.true_roas},null,8,["value"])):E.key==="audience"?(n(),k(sn,{key:9,count:w.audience_count,onClick:q=>l("viewAudience",{campaign_id:w.campaign_id,campaign:w.campaign,source:w.source,currency:w.currency})},null,8,["count","onClick"])):K("",!0)]),"child-cell":F(({child:w,col:E})=>[E.key==="campaign"?(n(),i("div",fo,[u("div",yo,[p(tn,{label:o(e)("ad_set_level"),level:2},null,8,["label"]),u("span",{class:"font-medium text-gray-700 truncate max-w-[200px]",title:o(s)(w.ad_group)},C(o(s)(w.ad_group)),9,go)]),w.ad_group_id?(n(),k(H,{key:0,value:o(s)(w.ad_group_id),"enable-copy":"","max-width":"none",class:"text-gray-400 font-mono","text-class":"text-[10px]"},null,8,["value"])):K("",!0)])):E.key==="channel"?(n(),i("span",bo)):E.key==="conversions"?(n(),i(ne,{key:2},[w.conversions!=null?(n(),i("span",ho,C(w.conversions),1)):(n(),i("span",ko,"-"))],64)):E.key==="newCustomers"?(n(),i(ne,{key:3},[w.new_customers!=null?(n(),i("span",Co,C(w.new_customers),1)):(n(),i("span",$o,"-"))],64)):E.key==="revenue"?(n(),k(ee,{key:4,value:w.revenue,currency:w.currency},null,8,["value","currency"])):E.key==="adPlatformSpend"?(n(),k(ee,{key:5,value:w.ad_platform_spend,currency:w.currency},null,8,["value","currency"])):E.key==="trueCpa"?(n(),k(ee,{key:6,value:w.true_cpa,currency:w.currency},null,8,["value","currency"])):E.key==="trueCac"?(n(),k(ee,{key:7,value:w.true_cac,currency:w.currency},null,8,["value","currency"])):E.key==="trueRoas"?(n(),k(oe,{key:8,value:w.true_roas},null,8,["value"])):E.key==="audience"?(n(),i("span",xo)):K("",!0)]),"grandchild-cell":F(({grandchild:w,col:E})=>[E.key==="campaign"?(n(),i("div",wo,[u("div",So,[p(tn,{label:o(e)("ad_level"),level:3},null,8,["label"]),u("span",{class:"text-gray-600 truncate max-w-[180px]",title:o(s)(w.ad)},C(o(s)(w.ad)),9,Po)]),w.ad_id?(n(),k(H,{key:0,value:o(s)(w.ad_id),"enable-copy":"","max-width":"none",class:"text-gray-400 font-mono","text-class":"text-[10px]"},null,8,["value"])):K("",!0)])):E.key==="channel"?(n(),i("span",Ro)):E.key==="conversions"?(n(),i(ne,{key:2},[w.conversions!=null?(n(),i("span",Ao,C(w.conversions),1)):(n(),i("span",Fo,"-"))],64)):E.key==="newCustomers"?(n(),i(ne,{key:3},[w.new_customers!=null?(n(),i("span",To,C(w.new_customers),1)):(n(),i("span",Oo,"-"))],64)):E.key==="revenue"?(n(),k(ee,{key:4,value:w.revenue,currency:w.currency},null,8,["value","currency"])):E.key==="adPlatformSpend"?(n(),k(ee,{key:5,value:w.ad_platform_spend,currency:w.currency},null,8,["value","currency"])):E.key==="trueCpa"?(n(),k(ee,{key:6,value:w.true_cpa,currency:w.currency},null,8,["value","currency"])):E.key==="trueCac"?(n(),k(ee,{key:7,value:w.true_cac,currency:w.currency},null,8,["value","currency"])):E.key==="trueRoas"?(n(),k(oe,{key:8,value:w.true_roas},null,8,["value"])):E.key==="audience"?(n(),i("span",Lo)):K("",!0)]),_:1},8,["columns","groups","loading","empty-message","sort-criteria","level-labels"]),y.totalRecords>0?(n(),k(I,{key:1,class:"qp-campaign-paginator",rows:y.rowsPerPage,first:(y.currentPage-1)*y.rowsPerPage,"total-records":y.totalRecords,"rows-per-page-options":[5,10,25,50],onPage:x},null,8,["rows","first","total-records"])):K("",!0)])):(n(),k(ge,{key:1,items:m.value,paginated:!1,"full-height":!1,loading:y.loading,"scroll-height":"420px","striped-rows":"","table-class":"text-sm channel-agg-table","empty-message":o(e)("no_data_found")},{default:F(()=>[p(se,{header:o(e)("channel_level"),field:"channel",sortable:""},{body:F(({data:w})=>[p(me,{source:"paid","sub-source":w.channel,vocabulary:"channel",showTitle:"",titleClass:o(Ke),"filter-value":w.channel,onFilter:O[7]||(O[7]=E=>l("filterChannel",E))},null,8,["sub-source","titleClass","filter-value"])]),footer:F(()=>[u("span",No,C(o(e)("total")),1)]),_:1},8,["header"]),p(se,{field:"qpSpend",sortable:""},{header:F(()=>[u("span",{class:ae(o(Zt))},[we(u("i",{class:ae(o($t))},null,2),[[le,o(e)("spend_qeen_tooltip"),void 0,{top:!0}]]),O[8]||(O[8]=u("img",{src:In,class:"w-3.5 h-3.5 shrink-0",alt:""},null,-1)),ve(" "+C(o(e)("spend")),1)],2)]),body:F(({data:w})=>[p(ee,{value:w.qpSpend,currency:w.currency},null,8,["value","currency"])]),footer:F(()=>[p(ee,{class:"font-semibold",value:$.value.qpSpend,currency:$.value.currency},null,8,["value","currency"])]),_:1}),p(se,{field:"apSpend",sortable:""},{header:F(()=>[u("span",{class:ae(o(Zt))},[we(u("i",{class:ae(o($t))},null,2),[[le,o(e)("spend_ad_platform_tooltip"),void 0,{top:!0}]]),ve(" "+C(o(e)("spend")),1)],2)]),body:F(({data:w})=>[p(ee,{value:w.apSpend,currency:w.currency},null,8,["value","currency"])]),footer:F(()=>
1[p(ee,{class:"font-semibold",value:$.value.apSpend,currency:$.value.currency},null,8,["value","currency"])]),_:1}),p(se,{field:"diff"},{header:F(()=>[u("span",{class:ae(o(Zt))},[we(u("i",{class:ae(o($t))},null,2),[[le,o(e)("spend_difference_tooltip"),void 0,{top:!0}]]),ve(" "+C(o(e)("spend_difference")),1)],2)]),body:F(({data:w})=>[u("div",Io,[p(ee,{value:w.diff,currency:w.currency},null,8,["value","currency"]),u("span",Eo,C(w.diffPct.toFixed(2))+"%",1)])]),footer:F(()=>[u("div",Do,[p(ee,{class:"font-semibold",value:$.value.diff,currency:$.value.currency},null,8,["value","currency"]),u("span",Bo,C($.value.diffPct.toFixed(2))+"%",1)])]),_:1})]),_:1},8,["items","loading","empty-message"]))]),_:1},8,["title","loading"])}}}),Uo=rn(qo,[["__scopeId","data-v-9639ae2d"]]),zo={class:"flex flex-col gap-1 min-w-[100px]"},Qo={class:"tabular-nums font-semibold text-charcoal"},Ko={class:"text-[10px] text-grays-30 tabular-nums"},qe=ue({__name:"ValueWithPercentageBar",props:{value:{},denominator:{},rateText:{},barColor:{}},setup(t){const a=t,e=B(()=>a.denominator<=0?0:Math.min(100,a.value/a.denominator*100));return(s,c)=>{const l=Bn;return n(),i("div",zo,[u("span",Qo,C(o(Fe)(s.value)),1),u("span",Ko,C(s.rateText),1),p(l,{percent:o(e),color:s.barColor,"max-width":"120px",height:6},null,8,["percent","color"])])}}});function Go(t){try{return(new URL(t).pathname||"/").toLowerCase()}catch{const a=t.match(/^https?:\/\/[^/]+(\/[^?#]*)/i);return((a==null?void 0:a[1])||"/").toLowerCase()}}function Un(t){return t.length>1&&t.endsWith("/")?t.slice(0,-1):t||"/"}function Ho(t){const a=Un(t);return!!(a==="/"||a==="/index.html"||a==="/index.htm"||/^\/(home|index)(\.html)?$/.test(a)||/^\/[a-z]{2}(-[a-z]{2})?$/.test(a))}const Wo=/\/(?:products?|p|item|goods)\/[^/?#]+/;function jo(t){const a=Un(t);return!!(a==="/shop"||a==="/catalog"||/^\/c\/[^/]+/.test(a)||/^\/(?:collections?|categories?)(?:\/[^/]+)?$/.test(a))}const Jo=/\/(?:cart|basket|bag)(?:\/|$)/,Yo=/\/checkout/,Xo=/\/(?:search|s)(?:\/|$)/,Zo=/\/(?:blog|news|articles?)(?:\/|$)|\/pages\//,er=/\/(?:account|login|register|sign-in|signup|my-account)(?:\/|$)/;function tr(t){if(!(t!=null&&t.trim()))return"other";if(!Tn(t.trim()))return"screen";let a=Go(t.trim()),e=!1;try{const s=new URL(t.trim());a=(s.pathname||"/").toLowerCase(),e=s.searchParams.has("q")||s.searchParams.has("query")||s.searchParams.has("search")||s.searchParams.has("keyword")}catch{e=/[?&](?:q|query|search|keyword)=/i.test(t)}return Ho(a)?"home":Jo.test(a)?"cart":Yo.test(a)?"checkout":Xo.test(a)||e?"search":Wo.test(a)?"product":jo(a)?"category":Zo.test(a)?"blog":er.test(a)?"account":"other"}const nr={home:{icon:"pi-home",toneClass:"bg-node-cyan/10 text-info-dark"},product:{icon:"pi-shopping-bag",toneClass:"bg-lime-tint text-dark-forest"},category:{icon:"pi-th-large",toneClass:"bg-syntax-violet/10 text-syntax-violet"},cart:{icon:"pi-shopping-cart",toneClass:"bg-index-orange/10 text-warn-dark"},checkout:{icon:"pi-credit-card",toneClass:"bg-node-cyan/10 text-info-dark"},search:{icon:"pi-search",toneClass:"bg-surface-subtle text-grays-30"},blog:{icon:"pi-book",toneClass:"bg-surface-subtle text-grays-30"},account:{icon:"pi-user",toneClass:"bg-surface-subtle text-grays-30"},screen:{icon:"pi-mobile",toneClass:"bg-lime-tint text-dark-forest"},other:{icon:"pi-link",toneClass:"bg-surface-subtle text-grays-30"}};function ar(t){const a=tr(t);return{type:a,...nr[a]}}const sr=ue({__name:"PageUrlTypeIcon",props:{url:{}},setup(t){const a=t,e=B(()=>ar(a.url));return(s,c)=>(n(),i("span",{class:ae(["inline-flex items-center justify-center shrink-0 w-6 h-6 rounded-md",o(e).toneClass])},[u("i",{class:ae(["pi text-xs",o(e).icon])},null,2)],2))}}),lr={class:"group/url flex items-center gap-1.5 min-w-0"},or=["href","title"],rr=["title"],zn=ue({__name:"PageUrlLink",props:{url:{},websiteDomain:{},linkClass:{}},setup(t){const a=t,e=B(()=>Tn(a.url)),s=B(()=>Ka(a.url,a.websiteDomain));return(c,l)=>{const g=sr;return n(),i("div",lr,[p(g,{url:c.url},null,8,["url"]),o(e)?(n(),i("a",{key:0,href:c.url,target:"_blank",rel:"noopener noreferrer",class:ae(["text-sm font-medium text-charcoal truncate hover:text-lime-green",c.linkClass]),title:c.url,onClick:l[0]||(l[0]=Rt(()=>{},["stop"]))},C(o(s)),11,or)):(n(),i("span",{key:1,class:ae(["text-sm font-medium text-charcoal truncate",c.linkClass]),title:c.url},C(o(s)),11,rr)),p(Xa,{value:c.url,size:"md",style:{"font-size":"10px"},class:"opacity-0 group-hover/url:opacity-100 transition-opacity shrink-0"},null,8,["value"])])}}}),ir={class:"flex flex-col"},ur={class:"bg-surface-subtle"},cr={class:"border-b border-grays-50/60 py-1.5 text-xs font-semibold text-grays-30 ps-[calc(3rem+0.75rem)]"},dr={class:"py-3 text-center text-sm text-grays-30"},pr={class:"text-grays-30"},vr={class:"tabular-nums"},mr={class:"flex items-center gap-1"},_r={class:"tabular-nums"},fr={class:"flex items-center gap-1"},yr={class:"flex items-center gap-1"},gr={class:"flex items-center gap-1"},br=ue({__name:"LandingPagePerformanceWidget",props:{data:{},loading:{type:Boolean},totalRecords:{},currentPage:{},rowsPerPage:{},search:{},sortField:{},sortOrder:{}},emits:["viewVisitors","page","sort","update:search"],setup(t,{emit:a}){const{t:e}=fe(),{selectedCurrencyCode:s}=Dn(),c=ln(),l=B(()=>{var m;return(m=c.selectedWebsite)==null?void 0:m.website}),g=St("cart_adds"),L=St("orders"),T=t,P=D({});ke(()=>T.data,()=>{P.value={}});const R=a;function N(m){if(!m.sortField||m.sortOrder==null){R("sort",{sortField:"conversions",sortOrder:"desc"});return}R("sort",{sortField:m.sortField,sortOrder:m.sortOrder===1?"asc":"desc"})}function V(m){R("page",{page:m.page+1,rows:m.rows})}function M(m,$){return{landing_page:m.landing_page,source:$.source,sessions:$.sessions,add_to_cart:$.add_to_cart,conversions:$.conversions,revenue:$.revenue,visitors:$.visitors}}function d(m,$,_){return e(_,{pct:Fe(On(m,$))})}return(m,$)=>{const _=Ln,f=Tt,x=Ya,y=En,O=un,J=Nn,W=tt;return n(),k(W,{title:o(e)("landing_page_performance"),loading:m.loading,"skeleton-rows":6},{toolbar:F(()=>[p(_,{"model-value":m.search??"",placeholder:o(e)("search_landing_pages"),class:"w-56","onUpdate:modelValue":$[0]||($[0]=r=>R("update:search",r))},null,8,["model-value","placeholder"])]),default:F(()=>[u("div",ir,[p(O,{expandedRows:o(P),"onUpdate:expandedRows":$[1]||($[1]=r=>kt(P)?P.value=r:null),items:m.data,paginated:!1,"full-height":!1,loading:m.loading,"data-key":"landing_page","scroll-height":"620px","striped-rows":"","table-class":"text-sm landing-page-table","empty-message":o(e)("no_data_found"),"sort-field":m.sortField,"sort-order":m.sortOrder,"removable-sort":"",onSort:N},{expansion:F(({data:r})=>[u("div",ur,[u("div",cr,C(o(e)("landing_page_source_breakdown")),1),p(x,{value:r.source_breakdown??[],"show-headers":!1,size:"small",class:"text-xs landing-page-source-breakdown-table","table-style":"min-width: 52rem"},{empty:F(()=>[u("div",dr,C(o(e)("landing_page_source_breakdown_empty")),1)]),default:F(()=>[p(f,{style:{width:"3rem","min-width":"3rem"}},{body:F(()=>$[2]||($[2]=[u("span",{"aria-hidden":"true"},null,-1)])),_:1}),p(f,{field:"source",style:{width:"34%","min-width":"260px"}},{body:F(({data:A})=>[p(Ge,{source:A.source,"show-title":"",interactive:!1,"title-class":"text-grays-10 text-sm"},null,8,["source"])]),_:1}),p(f,{field:"sessions",style:{width:"11%","min-width":"110px"}},{body:F(({data:A})=>[u("span",pr,[u("span",vr,C(o(Fe)(A.sessions)),1)])]),_:1}),p(f,{field:"add_to_cart",style:{width:"13%","min-width":"120px"}},{body:F(({data:A})=>[p(qe,{value:A.add_to_cart,denominator:A.sessions,"rate-text":d(A.add_to_cart,A.sessions,"landing_page_pct_of_sessions"),"bar-color":o(g)},null,8,["value","denominator","rate-text","bar-color"])]),_:1}),p(f,{field:"conversions",style:{width:"13%","min-width":"120px"}},{body:F(({data:A})=>[p(qe,{value:A.conversions,denominator:A.add_to_cart,"rate-text":d(A.conversions,A.add_to_cart,"landing_page_pct_of_add_to_carts"),"bar-color":o(L)},null,8,["value","denominator","rate-text","bar-color"])]),_:1}),p(f,{field:"revenue",style:{width:"13%","min-width":"120px"}},{body:F(({data:A})=>[p(De,{value:A.revenue,currency:o(s),"optional-decimals":""},null,8,["value","currency"])]),_:1}),p(f,{field:"visitors",style:{width:"13%","min-width":"140px"}},{body:F(({data:A})=>[p(sn,{count:A.visitors,"count-label-key":"page_visitors_view_count","plain-label-key":"page_visitors_view",onClick:H=>R("viewVisitors",M(r,A))},null,8,["count","onClick"])]),_:2},1024)]),_:2},1032,["value"])])]),default:F(()=>[p(f,{expander:"",style:{"min-width":"3rem"}}),p(f,{field:"landing_page",header:o(e)("page_screen"),sortable:"",style:{width:"34%","min-width":"260px"}},{body:F(({data:r})=>[p(zn,{url:r.landing_page,"website-domain":o(l),"link-class":"max-w-[320px]"},null,8,["url","website-domain"])]),_:1},8,["header"]),p(f,{field:"sessions",sortable:"",style:{width:"11%","min-width":"110px"}},{header:F(()=>[u("span",mr,[ve(C(o(e)("sessions"))+" ",1),p(y,{text:o(e)("landing_page_sessions_tooltip"),size:"11px"},null,8,["text"])])]),body:F(({data:r})=>[u("span",_r,C(o(Fe)(r.sessions)),1)]),_:1}),p(f,{field:"add_to_cart",sortable:"",style:{width:"13%","min-width":"120px"}},{header:F(()=>[u("span",fr,[ve(C(o(e)("add_to_cart"))+" ",1),p(y,{text:o(e)("landing_page_add_to_cart_tooltip"),size:"11px"},null,8,["text"])])]),body:F(({data:r})=>[p(qe,{value:r.add_to_cart,denominator:r.sessions,"rate-text":d(r.add_to_cart,r.sessions,"landing_page_pct_of_sessions"),"bar-color":o(g)},null,8,["value","denominator","rate-text","bar-color"])]),_:1}),p(f,{field:"conversions",sortable:"",style:{width:"13%","min-width":"120px"}},{header:F(()=>[u("span",yr,[ve(C(o(e)("conversions"))+" ",1),p(y,{text:o(e)("landing_page_conversions_tooltip"),size:"11px"},null,8,["text"])])]),body:F(({data:r})=>[p(qe,{value:r.conversions,denominator:r.add_to_cart,"rate-text":d(r.conversions,r.add_to_cart,"landing_page_pct_of_add_to_carts"),"bar-color":o(L)},null,8,["value","denominator","rate-text","bar-color"])]),_:1}
1),p(f,{field:"revenue",sortable:"",style:{width:"13%","min-width":"120px"}},{header:F(()=>[u("span",gr,[ve(C(o(e)("revenue"))+" ",1),p(y,{text:o(e)("landing_page_revenue_tooltip"),size:"11px"},null,8,["text"])])]),body:F(({data:r})=>[p(De,{value:r.revenue,currency:o(s),"optional-decimals":""},null,8,["value","currency"])]),_:1}),p(f,{field:"visitors",header:o(e)("page_visitors"),sortable:"",style:{width:"13%","min-width":"140px"}},{body:F(({data:r})=>[p(sn,{count:r.visitors,"count-label-key":"page_visitors_view_count","plain-label-key":"page_visitors_view",onClick:A=>R("viewVisitors",r)},null,8,["count","onClick"])]),_:1},8,["header"])]),_:1},8,["expandedRows","items","loading","empty-message","sort-field","sort-order"]),m.totalRecords>0?(n(),k(J,{key:0,class:"qp-campaign-paginator",rows:m.rowsPerPage,first:(m.currentPage-1)*m.rowsPerPage,"total-records":m.totalRecords,"rows-per-page-options":[5,10,25,50],onPage:V},null,8,["rows","first","total-records"])):K("",!0)])]),_:1},8,["title","loading"])}}}),hr=rn(br,[["__scopeId","data-v-4dfef918"]]),kr={class:"flex flex-col items-center gap-1"},Cr=ue({__name:"FunnelStepHeader",props:{icon:{},color:{},label:{}},setup(t){return(a,e)=>(n(),i("div",kr,[u("i",{class:ae(`pi ${a.icon} text-lg`),style:Pt({color:a.color})},null,6),u("span",null,C(a.label),1)]))}}),$r={class:"flex flex-col items-center gap-1"},xr={key:0,class:"text-[10px] text-gray-400 font-normal"},wr=ue({__name:"FunnelStepCell",props:{value:{},color:{},rate:{default:null},barPercent:{default:0},showBar:{type:Boolean,default:!0},bold:{type:Boolean,default:!1}},setup(t){const a=t,e=B(()=>Ue(a.value));return(s,c)=>{const l=Bn;return n(),i("div",$r,[u("span",{class:ae(["tabular-nums text-gray-800",{"font-semibold":s.bold}])},[ve(C(o(e))+" ",1),s.rate!=null?(n(),i("span",xr,"("+C(s.rate)+")",1)):K("",!0)],2),s.showBar?(n(),k(l,{key:0,percent:s.barPercent,color:s.color,class:"w-full"},null,8,["percent","color"])):K("",!0)])}}}),Sr={class:"flex items-center gap-2"},Pr={key:1,class:"relative overflow-x-auto"},Rr={class:"w-full table-fixed text-sm"},Ar={class:"border-b border-gray-200"},Fr={class:"py-2 px-2"},Tr={key:0,class:"py-2 px-2 whitespace-nowrap"},Or={class:"flex justify-end"},Lr={class:"border-t-2 border-gray-300 bg-gray-50 font-semibold"},Nr={class:"py-3 px-2 text-gray-700"},Ir={class:"flex items-center gap-1"},Er={class:"pi pi-info-circle text-gray-400 cursor-help",style:{"font-size":"10px"}},Dr={key:0,class:"py-3 px-2"},Br=ue({__name:"FunnelBySourceWidget",props:{data:{},loading:{type:Boolean},funnelVersion:{},audienceEnabled:{type:Boolean}},emits:["buildAudience","filterChannel","update:funnelVersion"],setup(t,{emit:a}){const{t:e}=fe(),s=t,c=a,l=D("global"),g=[{value:"global",icon:"pi pi-chart-bar",label:e("bar_mode_global")},{value:"row",icon:"pi pi-th-large",label:e("bar_mode_row")}],L=[{value:"raw",label:e("funnel_version_raw"),icon:"pi pi-database",disabled:!0},{value:"modeled",label:e("funnel_version_modeled"),icon:"pi pi-chart-line",disabled:!1},{value:"qeen",label:e("funnel_version_qeen"),icon:"pi pi-star",disabled:!0}],T=La,P=B(()=>{const d={};for(const m of T)d[m.field]=s.data.reduce(($,_)=>$+(_[m.field]??0),0);return d}),R=B(()=>Math.max(...s.data.map(d=>d.page_views??0),1));function N(d,m){const $=d[m]??0,_=l.value==="row"?Math.max(d.page_views??0,1):R.value;return Math.round($/_*100)}function V(d,m){if(m===0)return"100%";const $=d[T[m-1].field]??0,_=d[T[m].field]??0;return $===0?"0%":(_/$*100).toFixed(1)+"%"}function M(d){if(d===0)return"100%";const m=P.value[T[d-1].field]??0,$=P.value[T[d].field]??0;return m===0?"0%":($/m*100).toFixed(1)+"%"}return(d,m)=>{const $=Ft,_=Fn,f=Cr,x=Ge,y=wr,O=He,J=tt,W=Ne;return n(),k(J,{title:o(e)("funnel_by_source"),loading:d.loading},{toolbar:F(()=>[u("div",Sr,[p($,{modelValue:l.value,"onUpdate:modelValue":m[0]||(m[0]=r=>l.value=r),options:g},null,8,["modelValue"]),p($,{modelValue:d.funnelVersion,"onUpdate:modelValue":m[1]||(m[1]=r=>c("update:funnelVersion",r)),options:L},null,8,["modelValue"])])]),default:F(()=>[d.data.length?(n(),i("div",Pr,[u("table",Rr,[u("thead",null,[u("tr",Ar,[u("th",{class:ae([o(xt),"text-start w-40"])},C(o(e)("channel_level")),3),(n(!0),i(ne,null,_e(o(T),r=>(n(),i("th",{class:ae([o(xt),"text-center"]),key:r.key}
1,[p(f,{icon:r.icon,color:r.color,label:o(e)(r.key)},null,8,["icon","color","label"])],2))),128)),d.audienceEnabled?(n(),i("th",{key:0,class:ae([o(xt),"w-44"])},null,2)):K("",!0)])]),u("tbody",null,[(n(!0),i(ne,null,_e(d.data,r=>(n(),i("tr",{key:r.channel,class:"border-b border-gray-100 last:border-0"},[u("td",Fr,[p(x,{source:r.channel_l1,"sub-source":r.channel===r.channel_l1?void 0:r.channel,vocabulary:"channel",showTitle:"",titleClass:o(Ke),"filter-value":r.channel,onFilter:m[2]||(m[2]=A=>c("filterChannel",A))},null,8,["source","sub-source","titleClass","filter-value"])]),(n(!0),i(ne,null,_e(o(T),(A,H)=>(n(),i("td",{key:A.key,class:"py-2 px-2"},[p(y,{value:r[A.field]??0,color:A.color,rate:H>0?V(r,H):null,"bar-percent":N(r,A.field)},null,8,["value","color","rate","bar-percent"])]))),128)),d.audienceEnabled?(n(),i("td",Tr,[u("div",Or,[we(p(O,{label:o(e)("build_audience"),icon:"pi pi-users",disabled:!o(Cn)(r.channel),class:"!gap-2 !px-3 !h-9 !rounded-xl !bg-white !border !border-border-soft !text-grays-20 !text-sm !font-medium shadow-sm hover:!bg-lime-tint hover:!text-dark-forest hover:!border-lime-green transition-colors",onClick:A=>c("buildAudience",o(Oa)(r.channel))},null,8,["label","disabled","onClick"]),[[W,{value:o(Cn)(r.channel)?"":o(e)("coming_soon")},void 0,{top:!0}]])])])):K("",!0)]))),128)),u("tr",Lr,[u("td",Nr,[u("span",Ir,[ve(C(o(e)("total"))+" ",1),we(u("i",Er,null,512),[[W,o(e)("funnel_totals_tooltip"),void 0,{top:!0}]])])]),(n(!0),i(ne,null,_e(o(T),(r,A)=>(n(),i("td",{key:r.key,class:"py-3 px-2 text-center"},[p(y,{value:P.value[r.field],color:r.color,rate:A>0?M(A):null,"show-bar":!1,bold:""},null,8,["value","color","rate"])]))),128)),d.audienceEnabled?(n(),i("td",Dr)):K("",!0)])])])])):(n(),k(_,{key:0,message:o(e)("no_data_found")},null,8,["message"]))]),_:1},8,["title","loading"])}}}),Vr=["/icons/integrations/meta-logo.svg","/icons/integrations/google-ads.svg","/icons/integrations/tiktok-logo.svg","/icons/integrations/snapchat-logo.svg"],Qn=[{icon:"pi pi-sync",titleKey:"build_audience_sync_title",descriptionKey:"build_audience_sync_description",logos:Vr},{icon:"pi pi-whatsapp",titleKey:"build_audience_whatsapp_title",descriptionKey:"build_audience_whatsapp_description"},{icon:"pi pi-filter",titleKey:"build_audience_retarget_title",descriptionKey:"build_audience_retarget_description"}],Mr={class:"text-xs font-medium text-grays-30 mb-2"},qr={class:"flex flex-col gap-2.5"},Ur={class:"min-w-0"},zr={class:"flex items-center gap-2 flex-wrap"},Qr={class:"text-sm font-medium text-charcoal"},Kr={key:0,class:"flex items-center gap-1"},Gr=["src"],Hr={class:"text-xs text-grays-30 mt-0.5"},nn=ue({__name:"AudienceNextSteps",props:{steps:{default:()=>Qn}},setup(t){const{t:a}=fe();return(e,s)=>(n(),i("div",null,[u("p",Mr,C(o(a)("build_audience_next_steps")),1),u("ul",qr,[(n(!0),i(ne,null,_e(e.steps,c=>{var l;return n(),i("li",{key:c.titleKey,class:"flex items-start gap-2.5"},[u("i",{class:ae([c.icon,"text-brand mt-0.5 shrink-0"]),style:{"font-size":"14px"}},null,2),u("div",Ur,[u("div",zr,[u("span",Qr,C(o(a)(c.titleKey)),1),(l=c.logos)!=null&&l.length?(n(),i("span",Kr,[(n(!0),i(ne,null,_e(c.logos,g=>(n(),i("img",{key:g,src:g,class:"w-3.5 h-3.5 shrink-0",alt:""},null,8,Gr))),128))])):K("",!0)]),u("p",Hr,C(o(a)(c.descriptionKey)),1)])])}),128))])]))}});async function Wr(t){return await ns(t.sendTo,t.dontSendTo,t.name,t.domain,[as.QEEN_PIXEL])}function ht(t){return t.trim()}async function jr(t){const a=await ts(t.domain,void 0,1,"",!0),e=ht(t.sendTo),s=ht(t.dontSendTo),c=((a==null?void 0:a.results)??[]).find(l=>ht(l.sendTo??"")===e&&ht(l.dontSendTo??"")===s);return c?{audienceId:c.audienceId,name:c.name}:null}const Jr=60,Kn={all:{label:"",phrase:null},added_to_cart:{label:"Cart",phrase:"added at least one item to their cart"},checkout:{label:"Checkout",phrase:"reached checkout"}},Gn={any:{label:"",phrase:null},converted:{label:"Converted",phrase:"have converted"},no_conversion:{label:"Not converted",phrase:"have not converted"}};function Yr(t,a){const e=t.trim();return e.length>a?`${e.slice(0,a).trimEnd()}â¦`:e}
1function Lt(t){return t.split("_").filter(Boolean).map(a=>a.charAt(0).toUpperCase()+a.slice(1).toLowerCase()).join(" ")}function Hn(t){const a=[Kn[t.stage].label,Gn[t.conversion].label].filter(Boolean);return a.length?a.join(" · "):"Engaged"}function Xr(t){const a=[Kn[t.stage].phrase,Gn[t.conversion].phrase].filter(Boolean);return a.length?`, who ${a.join(" and ")}`:""}function Wn(t){const a=Yr(t.campaignName,Jr),e=t.source?` (${Lt(t.source)})`:"";return`${a}${e} â ${Hn(t.scope)}`}function Zr(t){const a=t.campaignName.trim(),e=t.campaignId?`"${a}" (campaign id: ${t.campaignId})`:`"${a}"`,s=t.source?` on ${Lt(t.source)}`:"";return`Customers who engaged with the ad campaign ${e}${s}`}function jn(t,a,e){return{name:t,sendTo:`${a}${Xr(e)}.`,dontSendTo:""}}function ei(t){return jn(Wn(t),Zr(t),t.scope)}function Jn(t){return`${Lt(t.source)} â ${Hn(t.scope)}`}function ti(t){return`Customers who engaged with any ad campaign on ${Lt(t.source)}`}function ni(t){return jn(Jn(t),ti(t),t.scope)}function ai(t){return t.kind==="source"?ni(t):ei(t)}function si(t){return t.kind==="source"?Jn(t):Wn(t)}const li={key:0,class:"flex flex-col items-center text-center py-6"},oi={class:"text-xs text-grays-30 mt-3"},ri={key:0,class:"rounded-lg bg-surface-subtle px-3 py-2.5 mb-4"},ii={class:"flex flex-col gap-0.5"},ui={class:"text-grays-30 shrink-0"},ci={class:"text-charcoal break-all"},di={key:1,class:"flex items-start gap-1.5 text-xs text-amber-700 mb-4"},pi={key:0},vi={key:1},mi={class:"flex flex-col gap-3 mb-4"},_i={class:"flex items-center gap-3"},fi={class:"text-sm text-grays-30 w-24 shrink-0"},yi={class:"flex items-center gap-3"},gi={class:"text-sm text-grays-30 w-24 shrink-0"},bi={class:"text-sm text-charcoal mb-4"},hi={class:"flex items-start gap-1.5 text-xs text-grays-30 mb-4"},ki={for:"qp-audience-name",class:"text-sm text-gray-600"},Ci={key:2,class:"text-red-400"},$i={key:3,class:"text-grays-30"},xi={class:"mt-5"},wi={class:"flex flex-col items-center text-center py-2"},Si={class:"text-sm font-medium text-charcoal mt-3"},Pi={class:"text-xs text-grays-30 mt-1"},Ri={class:"mt-5"},Ai={class:"flex flex-col items-center text-center py-2"},Fi={class:"text-sm font-medium text-charcoal mt-3"},Ti={class:"text-sm text-charcoal mt-1 break-words"},Oi={class:"text-xs text-grays-30 mt-2"},Li={class:"mt-5"},Ni="success",Ii="/whatsapp/audiences",Yn=ue({__name:"BuildAudienceDialog",props:an({campaign:{default:null},funnelSource:{default:null},initialScope:{default:void 0},domain:{}},{visible:{type:Boolean,default:!1},visibleModifiers:{}}),emits:an(["created"],["update:visible"]),setup(t,{emit:a}){const e=t,s=a,c=on(t,"visible"),{t:l,te:g}=fe(),L=An(),T=Ba(),P={stage:"all",conversion:"any"},R=D("checking"),N=D(""),V=D(!1),M=D(!1),d=D(""),m=D(null),$=D({...P}),_=new Set;let f=0;const x=D(null);function y(U,j){return j?`source:${j}`:U?`campaign:${U.id??U.name}`:null}const O=B(()=>R.value==="building"),J=B(()=>R.value==="built"?"build_audience_built_title":"create_audience"),W=B(()=>e.funnelSource?{kind:"source",source:e.funnelSource,businessId:e.domain,scope:$.value}:e.campaign?{kind:"campaign",campaignName:e.campaign.name,campaignId:e.campaign.id,businessId:e.domain,source:e.campaign.source,scope:$.value}:null),r=B(()=>W.value?ai(W.value):null),A=B(()=>!!e.funnelSource),H=B(()=>[{value:"all",label:l("audience_stage_all")},{value:"added_to_cart",label:l("audience_stage_cart")},{value:"checkout",label:l("audience_stage_checkout")}]),me=B(()=>[{value:"any",label:l("audience_conversion_any")},{value:"converted",label:l("converted")},{value:"no_conversion",label:l("no_conversion")}]),ee=B({get:()=>$.value.stage,set:U=>S({stage:U})}),oe=B({get:()=>$.value.conversion,set:U=>S({conversion:U})});function S(U){$.value={...$.value,...U},M.value||I(),w({silent:!0})}function I(){N.value=W.value?si(W.value):""}const se=B(()=>{const U=A.value?"build_audience_source_summary":"build_audience_summary",j=[$.value.stage==="added_to_cart"?"cart":$.value.stage==="checkout"?"checkout":"",$.value.conversion==="any"?"":$.value.conversion].filter(Boolean);return j.length?`${U}_${j.join("_")}`:`${U}_all`}),ge=B(()=>
1{if(e.funnelSource){const U=`source_${e.funnelSource}`,j=g(U)?l(U):Ct(e.funnelSource);return l(se.value,{source:j})}return e.campaign?l(se.value,{campaign:e.campaign.name}):""}),h=B(()=>{const U=[];if(e.funnelSource){const Y=`source_${e.funnelSource}`;return U.push({label:l("ad_platform"),value:g(Y)?l(Y):Ct(e.funnelSource)}),U}const j=e.campaign;if(!j)return U;if(U.push({label:l("campaign"),value:j.name}),j.id&&U.push({label:l("campaign_id"),value:j.id}),j.source){const Y=`source_${j.source}`;U.push({label:l("ad_platform"),value:g(Y)?l(Y):Ct(j.source)})}return U});function le(U){return`${U.sendTo.trim()}\0${U.dontSendTo.trim()}`}ke([c,()=>{var U;return(U=e.campaign)==null?void 0:U.id},()=>{var U;return(U=e.campaign)==null?void 0:U.name},()=>e.funnelSource],()=>{if(c.value){if(x.value&&x.value===y(e.campaign,e.funnelSource)){R.value="building";return}V.value=!1,M.value=!1,m.value=null,$.value=e.initialScope?{...e.initialScope}:{...P},I(),w()}},{immediate:!0});async function w({silent:U=!1}={}){const j=r.value;if(!j){R.value="confirm";return}if(_.has(le(j))){m.value={name:d.value||void 0},U||(R.value="confirm");return}const Y=++f;U||(R.value="checking");try{const ce=await jr({sendTo:j.sendTo,dontSendTo:j.dontSendTo,domain:e.domain});if(Y!==f)return;m.value=ce}catch(ce){if(Y!==f)return;console.error("[Build Audience] Could not check for an existing audience:",ce),m.value=null}U||(R.value="confirm")}ke(()=>e.domain,()=>{c.value=!1});function E(){window.open(T(Ii),"_blank","noopener")}async function q(){if(O.value)return;const U=N.value.trim();V.value=!U;const j=r.value;if(V.value||!j)return;const Y=y(e.campaign,e.funnelSource);x.value=Y;const ce=()=>y(e.campaign,e.funnelSource)===Y;R.value="building";try{const de=await Wr({sendTo:j.sendTo,dontSendTo:j.dontSendTo,name:U,domain:e.domain});if((de==null?void 0:de.responseStatus)===Ni){_.add(le(j)),L.add({severity:"success",summary:l("audience_built_successfully"),life:3e3}),s("created"),ce()&&(d.value=de.name||U,R.value="built");return}L.add({severity:"error",summary:de!=null&&de.code&&g(de.code)?l(de.code):(de==null?void 0:de.message)||l("build_audience_failed"),life:5e3}),ce()&&(R.value="confirm")}catch(de){console.error("[Build Audience] Failed to build audience:",de),L.add({severity:"error",summary:l("build_audience_failed"),life:5e3}),ce()&&(R.value="confirm")}finally{x.value===Y&&(x.value=null)}}return(U,j)=>{const Y=es,ce=Ft,de=Za,Se=He,It=dn;return n(),k(It,{visible:c.value,"onUpdate:visible":j[6]||(j[6]=Ce=>c.value=Ce),modal:"",header:o(l)(J.value),style:{width:"30rem"},breakpoints:{"640px":"92vw"},draggable:!1},{footer:F(()=>[R.value==="checking"?(n(),i(ne,{key:0},[],64)):R.value==="confirm"?(n(),i(ne,{key:1},[p(Se,{label:o(l)("cancel"),severity:"secondary",text:"",onClick:j[4]||(j[4]=Ce=>c.value=!1)},null,8,["label"]),p(Se,{label:o(l)("build_my_audience"),icon:"pi pi-users",onClick:q},null,8,["label"])],64)):R.value==="building"?(n(),k(Se,{key:2,label:o(l)("build_my_audience"),disabled:""},null,8,["label"])):(n(),i(ne,{key:3},[p(Se,{label:o(l)("close"),severity:"secondary",text:"",onClick:j[5]||(j[5]=Ce=>c.value=!1)},null,8,["label"]),p(Se,{label:o(l)("build_audience_open_audiences"),icon:"pi pi-external-link",onClick:E},null,8,["label"])],64))]),default:F(()=>[R.value==="checking"?(n(),i("div",li,[p(Y,{style:{width:"36px",height:"36px"},strokeWidth:"4"}),u("p",oi,C(o(l)("build_audience_checking")),1)])):R.value==="confirm"?(n(),i(ne,{key:1},[h.value.length?(n(),i("div",ri,[u("dl",ii,[(n(!0),i(ne,null,_e(h.value,Ce=>(n(),i("div",{key:Ce.label,class:"flex gap-1.5 text-xs"},[u("dt",ui,C(Ce.label)+":",1),u("dd",ci,C(Ce.value),1)]))),128))])])):K("",!0),m.value?(n(),i("p",di,[j[7]||(j[7]=u("i",{class:"pi pi-info-circle mt-0.5 shrink-0",style:{"font-size":"11px"}},null,-1)),m.value.name?(n(),i("span",pi,C(o(l)("build_audience_duplicate_note",{name:m.value.name})),1)):(n(),i("span",vi,C(o(l)("build_audience_duplicate_note_unnamed")),1))])):K("",!0),u("div",mi,[u("div",_i,[u("label",fi,C(o(l)("audience_stage")),1),p(ce,{modelValue:ee.value,"onUpdate:modelValue":j[0]||(j[0]=Ce=>ee.value=Ce),options:H.value},null,8,["modelValue","options"])]),u("div",yi,[u("label",gi,C(o(l)("audience_conversion")),1),p(ce,{modelValue:oe.value,"onUpdate:modelValue":j[1]||(j[1]=Ce=>oe.value=Ce),options:me.value}
1,null,8,["modelValue","options"])])]),u("p",bi,C(ge.value),1),u("p",hi,[j[8]||(j[8]=u("i",{class:"pi pi-refresh mt-0.5 shrink-0",style:{"font-size":"11px"}},null,-1)),u("span",null,C(o(l)("build_audience_refresh_note")),1)]),u("label",ki,C(o(l)("audience_name")),1),p(de,{id:"qp-audience-name",modelValue:N.value,"onUpdate:modelValue":j[2]||(j[2]=Ce=>N.value=Ce),class:"w-full mt-1",invalid:V.value,autocomplete:"off",onInput:j[3]||(j[3]=Ce=>M.value=!0),onKeyup:Va(q,["enter"])},null,8,["modelValue","invalid"]),V.value?(n(),i("small",Ci,C(o(l)("audience_name_is_required")),1)):(n(),i("small",$i,C(o(l)("build_audience_name_hint")),1)),u("div",xi,[p(nn)])],64)):R.value==="building"?(n(),i(ne,{key:2},[u("div",wi,[p(Y,{style:{width:"42px",height:"42px"},strokeWidth:"4"}),u("p",Si,C(o(l)("build_audience_building_title")),1),u("p",Pi,C(o(l)("build_audience_building_hint")),1)]),u("div",Ri,[p(nn)])],64)):(n(),i(ne,{key:3},[u("div",Ai,[j[9]||(j[9]=u("i",{class:"pi pi-check-circle text-green-600",style:{"font-size":"34px"}},null,-1)),u("p",Fi,C(o(l)("build_audience_built_title")),1),u("p",Ti,C(d.value),1),u("p",Oi,C(o(l)("build_audience_built_hint")),1)]),u("div",Li,[p(nn)])],64))]),_:1},8,["visible","header"])}}}),Ei={class:"flex flex-col items-start gap-3 min-w-0"},Di={class:"text-xl font-semibold leading-snug text-white"},Bi={key:0,class:"text-sm leading-relaxed text-white/80"},Vi={class:"flex flex-col gap-4 m-0 p-0 list-none"},Mi={class:"flex items-start gap-3"},qi={class:"flex items-center justify-center w-8 h-8 rounded-full bg-lime-tint shrink-0"},Ui={class:"min-w-0"},zi={class:"flex flex-wrap items-center gap-2"},Qi={class:"text-sm font-semibold text-charcoal"},Ki={key:0,class:"flex items-center gap-1.5"},Gi=["src"],Hi={class:"mt-0.5 text-sm leading-relaxed text-grays-30"},Wi={class:"flex items-center justify-between gap-3 w-full"},ji={key:0,class:"text-xs text-grays-40"},Ji=ue({__name:"ComingSoonDialog",props:an({title:{},description:{default:void 0},features:{default:()=>[]},note:{default:void 0},width:{default:"38rem"}},{visible:{type:Boolean,default:!1},visibleModifiers:{}}),emits:["update:visible"],setup(t){const{t:a}=fe(),e=on(t,"visible");return(s,c)=>{const l=Vn,g=He,L=dn;return n(),k(L,{visible:e.value,"onUpdate:visible":c[1]||(c[1]=T=>e.value=T),modal:"","dismissable-mask":"",style:Pt({width:s.width}),breakpoints:{"640px":"95vw"},pt:{root:"overflow-hidden",header:"!items-start !gap-4 !px-6 !pt-5 !pb-6 bg-gradient-to-br from-green-200 via-dark-forest to-dark-forest",pcCloseButton:{root:"!text-white hover:!bg-white/10"},content:"!px-6 !py-5",footer:"!px-6 !pb-5 !pt-4 border-t border-border-soft"}},{header:F(()=>[u("div",Ei,[p(l,{variant:"promo",severity:"lime",size:"sm",value:o(a)("coming_soon")},null,8,["value"]),u("h2",Di,C(s.title),1),s.description?(n(),i("p",Bi,C(s.description),1)):K("",!0)])]),footer:F(()=>[u("div",Wi,[s.note?(n(),i("span",ji,C(s.note),1)):K("",!0),p(g,{label:o(a)("close"),severity:"secondary",variant:"outlined",onClick:c[0]||(c[0]=T=>e.value=!1)},null,8,["label"])])]),default:F(()=>[u("ul",Vi,[(n(!0),i(ne,null,_e(s.features,(T,P)=>{var R;return n(),i(ne,{key:P},[T.groupLabel?(n(),i("li",{key:0,class:ae(["text-xs font-semibold uppercase tracking-wide text-grays-40",{"mt-1":P>0}])},C(T.groupLabel),3)):K("",!0),u("li",Mi,[u("span",qi,[u("i",{class:ae([T.icon,"text-dark-forest"]),style:{"font-size":"14px"}},null,2)]),u("div",Ui,[u("div",zi,[u("span",Qi,C(T.title),1),(R=T.logos)!=null&&R.length?(n(),i("span",Ki,[(n(!0),i(ne,null,_e(T.logos,N=>(n(),i("img",{key:N,src:N,alt:"",class:"w-4 h-4 object-contain"},null,8,Gi))),128))])):K("",!0)]),u("p",Hi,C(T.description),1)])])],64)}),128))])]),_:1},8,["visible","style"])}}}),Yi=ue({__name:"BuildAudienceComingSoonDialog",props:{visible:{type:Boolean,default:!1},visibleModifiers:{}},emits:["update:visible"],setup(t){const{t:a}=fe(),e=on(t,"visible"),s=B(()=>[{icon:"pi pi-comment",title:a("build_audience_segments_title"),description:a("build_audience_segments_description")},...Qn.map((c,l)=>({...l===0?{groupLabel:a("build_audience_next_steps")}:{},icon:c.icon,title:a(c.titleKey),description:a(c.descriptionKey),...c.logos?{logos:c.logos}:{}}))]);return(c,l)=>(n(),k(Ji,{visible:e.value,"onUpdate:visible":l[0]||(l[0]=g=>
1e.value=g),title:o(a)("build_audience_coming_soon_title"),description:o(a)("build_audience_coming_soon_subtitle"),features:s.value,note:o(a)("build_audience_coming_soon_note")},null,8,["visible","title","description","features","note"]))}}),Xi={class:"flex items-center gap-2 min-w-0"},Zi={class:"flex flex-col gap-0.5 min-w-0"},eu=["title"],tu={key:0,class:"text-[10px] text-gray-400"},nu={key:0,class:"flex flex-wrap gap-2 mb-4 shrink-0"},au={class:"flex items-center justify-between gap-3"},su={class:"flex items-center gap-1.5"},lu=["onClick"],Xn=ue({__name:"CustomerAudienceModal",props:{visible:{type:Boolean},domain:{},title:{},source:{default:null},subtitle:{default:null},stats:{default:()=>[]},statsLoading:{type:Boolean,default:!1},fetchList:{},tabs:{default:void 0},emptyMessage:{default:""},buildAudienceDisabledReason:{default:null}},emits:["update:visible"],setup(t,{emit:a}){const{t:e}=fe(),s="converted",c=["all","converted","no_conversion"],l=t,g=a,L=D([]),T=D(0),P=D(!1),R=D(!1),N=D(!1),V=D(s),M=D(1),d=D(10),m=D(!1);let $=0,_=!1;const f=B(()=>l.emptyMessage||e("campaign_audience_empty")),x=B(()=>l.stats.length||3),y=B(()=>l.tabs??[{value:"all",label:e("campaign_audience_tab_all")},{value:"converted",label:e("converted")},{value:"no_conversion",label:e("no_conversion")},{value:"anonymous",label:e("campaign_audience_tab_anonymous")}]),O=B(()=>c.includes(V.value)),J=B(()=>P.value?Array.from({length:d.value},()=>({})):L.value),W=D({});function r(h){return h.is_anonymous?e("anonymous"):h.customer_id&&W.value[h.customer_id]?W.value[h.customer_id]:h.customer_name}function A(h){return h.is_anonymous||!h.customer_id?null:N.value?h.customer_id:null}function H(h){Ma(`/qeen-pixel/customers/${h}`,{open:{target:"_blank"}})}async function me(){if(!l.domain)return;const h=++$;P.value=!0;try{const{rows:le,total:w}=await l.fetchList({tab:V.value,page:M.value,pageSize:d.value});if(h!==$)return;L.value=le,T.value=w,R.value=!0,ee(le)}catch(le){if(h!==$)return;console.error("Failed to load audience:",le),L.value=[],T.value=0,R.value=!0}finally{h===$&&(P.value=!1)}}async function ee(h){const le=h.map(q=>q.customer_id).filter(q=>!!q);if(!le.length)return;const w=await ss(l.domain,le),E={};for(const[q,U]of Object.entries(w)){const j=ls(U);j&&(E[q]=j)}W.value={...W.value,...E}}function oe(h){V.value!==h&&(V.value=h,M.value=1,me())}function S(h){m.value=h}function I(h){_||(M.value=h.page+1,me())}async function se(h){h!==d.value&&(_=!0,d.value=h,M.value=1,me(),await qa(),_=!1)}function ge(){V.value=s,m.value=!1,M.value=1,W.value={},L.value=[],R.value=!1,me()}return ke(()=>[l.visible,l.domain,l.title],([h])=>{h&&l.domain&&(os(l.domain).then(le=>{N.value=le}),ge())},{immediate:!0}),(h,le)=>{const w=Ot,E=He,q=un,U=dn,j=Ne;return n(),k(U,{visible:h.visible,modal:"",maximizable:"",style:{width:"52rem",height:"80vh"},breakpoints:{"900px":"95vw"},pt:{root:"max-w-[95vw]",content:"flex flex-col min-h-0"},"onUpdate:visible":le[2]||(le[2]=Y=>g("update:visible",Y))},{header:F(()=>[Re(h.$slots,"header",{},()=>[u("div",Xi,[h.source?(n(),k(Ge,{key:0,source:h.source,interactive:!1},null,8,["source"])):K("",!0),u("div",Zi,[u("span",{class:"text-sm font-semibold text-gray-800 truncate",title:h.title},C(h.title),9,eu),h.subtitle?(n(),i("span",tu,C(h.subtitle),1)):K("",!0)])])])]),default:F(()=>[h.statsLoading||h.stats.length?(n(),i("div",nu,[h.statsLoading?(n(!0),i(ne,{key:0},_e(x.value,Y=>(n(),i("div",{key:`stat-skel-${Y}`,class:"flex-1 !min-w-[120px] rounded-lg border border-gray-200 px-5 py-3 text-center"},[p(w,{width:"55%",height:"0.65rem",class:"!mx-auto !mb-2"}),p(w,{width:"40%",height:"1.4rem",class:"!mx-auto"})]))),128)):(n(!0),i(ne,{key:1},_e(h.stats,(Y,ce)=>(n(),k(rs,{key:ce,class:"flex-1 !min-w-[120px]",title:Y.title,value:Y.value,"value-class":Y.valueClass,tooltip:Y.tooltip},null,8,["title","value","value-class","tooltip"]))),128))])):K("",!0),p(q,{items:J.value,loading:!1,paginated:!0,"total-records":T.value,first:(M.value-1)*d.value,rows:d.value,"rows-per-page-options":[10,25,50],"data-key":"profile_key","empty-message":R.value?f.value:o(e)("customers_loading"),onPage:I,"onUpdate:rows":se},{header:F(()=>[u("div",au,[u("div",su,[(n(!0),i(ne,null,_e(y.value,Y=>(n(),i("button",{key:Y.value,type:"button",class:ae(["px-3 py-1 rounded-full text-xs font-medium transition-colors",V.value===Y.value?"bg-surface-subtle text-charcoal ring-1 ring-border-soft":"text-grays-30 hover:text-charcoal"]),onClick:ce=>oe(Y.value)},C(Y.label),11,lu))),128))]),O.value?we((n(),k(E,{key:0,icon:"pi pi-users",label:o(e)("build_audie
1nce"),size:"small",class:"shrink-0",disabled:!!h.buildAudienceDisabledReason,onClick:le[0]||(le[0]=Y=>m.value=!0)},null,8,["label","disabled"])),[[j,{value:h.buildAudienceDisabledReason||""},void 0,{top:!0}]]):K("",!0)])]),default:F(()=>[Re(h.$slots,"columns",{loading:P.value,displayName:r,customerIdLabel:A,showInternalIds:N.value,goToProfile:H})]),_:3},8,["items","total-records","first","rows","empty-message"]),Re(h.$slots,"build-audience",{visible:m.value,tab:V.value,setVisible:S},()=>[p(Yi,{visible:m.value,"onUpdate:visible":le[1]||(le[1]=Y=>m.value=Y)},null,8,["visible"])])]),_:3},8,["visible"])}}}),ie="QeenPixelCustomerJourneys";function vn(t){const a=[t.campaignId,t.campaignName].filter(s=>!!s).filter((s,c,l)=>l.indexOf(s)===c),e=[{member:`${ie}.businessId`,operator:"equals",values:[t.businessId]},{member:`${ie}.attributionType`,operator:"equals",values:[t.attributionModel]},{member:`${ie}.campaign`,operator:"equals",values:a}];return t.currencyCode&&e.push({member:"CurrencyRates.currencyCode",operator:"equals",values:[t.currencyCode]}),t.dateRange&&e.push({member:`${ie}.journeyEndAt`,operator:"inDateRange",values:t.dateRange}),e}function ou(t){const a=t.page_size??10,e=t.page??1,s=vn(t);switch(t.tab){case"converted":s.push({member:`${ie}.convertedJourneys`,operator:"gt",values:["0"]});break;case"no_conversion":s.push({member:`${ie}.convertedJourneys`,operator:"equals",values:["0"]});break;case"anonymous":s.push({member:`${ie}.customerId`,operator:"notSet"});break}return s.push(...Le(ie,t.financialStatuses)),{dimensions:[`${ie}.profileKey`,`${ie}.customerId`,`${ie}.orderCurrency`,`${ie}.isAnonymous`],measures:[`${ie}.attributedValue`,`${ie}.attributedValueOriginal`,`${ie}.convertedJourneys`],filters:s,order:{[`${ie}.attributedValueOriginal`]:"desc",[`${ie}.isAnonymous`]:"asc",[`${ie}.profileKey`]:"asc"},limit:a,offset:(e-1)*a,total:!0}}function ru(t){return{measures:[`${ie}.distinctCustomers`,`${ie}.anonymousCustomers`,`${ie}.convertedCustomers`],filters:vn(t)}}function iu(t){return{measures:[`${ie}.distinctCustomers`],filters:vn(t)}}function uu(t){var a;return Number(((a=t[0])==null?void 0:a[`${ie}.distinctCustomers`])??0)}function cu(t,a){const e=t[`${ie}.customerId`]??null,s=a.useOriginal?"attributedValueOriginal":"attributedValue";return{profile_key:t[`${ie}.profileKey`]??"",customer_id:e,customer_name:e??"Unknown Visitor",is_anonymous:!e,is_converted:Number(t[`${ie}.convertedJourneys`]??0)>0,revenue:Number(t[`${ie}.${s}`]??0),order_currency:a.useOriginal?t[`${ie}.orderCurrency`]??null:a.displayCurrency??null}}function du(t,a){return t.map(e=>cu(e,a))}function pu(t){const a=t[0]??{},e=Number(a[`${ie}.distinctCustomers`]??0),s=Number(a[`${ie}.convertedCustomers`]??0);return{total_visitors:e,anonymous:Number(a[`${ie}.anonymousCustomers`]??0),cvr:e>0?s/e*100:0}}async function vu(t,a,e){const s=await t(ou(a),a.businessId),c=du(s.rawData(),e);return{rows:c,total:s.total??c.length}}async function mu(t,a){const e=await t(ru(a),a.businessId);return pu(e.rawData())}async function _u(t,a){const e=await t(iu(a),a.businessId);return uu(e.rawData())}const fu={class:"flex items-center gap-1 font-semibold"},yu={class:"pi pi-info-circle text-gray-400 cursor-help",style:{"font-size":"13px"}},gu={key:1,class:"text-gray-400"},bu=ue({__name:"CampaignAudienceModal",props:{visible:{type:Boolean},domain:{},campaignId:{},campaignName:{},source:{},attributionModel:{},currencyCode:{},dateRange:{},financialStatuses:{}},emits:["update:visible"],setup(t,{emit:a}){const{t:e,te:s}=fe(),{load:c}=cn(),l=t,g=a,L=B(()=>l.campaignId||l.campaignName?{id:l.campaignId,name:l.campaignName||e("unknown_campaign"),source:l.source}:null),T=B(()=>Na(l.source));function P(_){return{stage:"all",conversion:_==="converted"?"converted":_==="no_conversion"?"no_conversion":"any"}}const R=B(()=>{const _=l.source;if(!_)return null;const f=`source_${_}`,x=s(f)?e(f):Ct(_);return`${e("source")}: ${x}`});function N(){const _=l.dateRange;return{businessId:l.domain,campaignId:l.campaignId,campaignName:l.campaignName,attributionModel:l.attributionModel,currencyCode:l.currencyCode,dateRange:(_==null?void 0:_[0])!=null?[At(_[0]),At(_[1]??_[0])]:null,financialStatuses:l.financialStatuses}}async function V(_){return!l.domain||!l.campaignId?{rows:[],total:0}:vu(c,{...N(),tab:_.tab,page:_.page,page_size:_.pageSize},{useOriginal:!l.currencyCode,displayCurrency:l.currencyCode})}const M=D([]),d=D(!1);let m=0;async function $(){if(!l.domain||!l.campaignId){M.value=[],d.value=!1;return}const _=++m;d.value=!0,M.value=[];try{const f=await mu(c,N());if(_!==m)return;M.value=[{title:e("campaign_audience_total_visitors"),value:Ue(f.total_visitors),tooltip:e("campaign_audience_visitors_tooltip")},{title:e("campaign_audience_anonymous"),value:Ue(f.anonymous)},{title:e("cvr"),value:`${f.cvr.toFixed(1)}%`,valueClass:"text-warn-dark"}]}catch(f){if(_!==m)return;console.error("Failed to load campaign audience summary:",f),M.value=[]}finally{_===m&&(d.value=!1)}}return ke(()=>[l.visible,l.campaignId,l.attributionModel,l.dateRange],([_])=>{_&&l.domain&&l.campaignId&&$()},{immediate:!0}),(_,f)=>{const x=Ot,y=Tt,O=Vn,J=Ne;return n(),k(Xn,{visible:_.visible,domain:_.domain,title:_.campaignName||o(e)("unknown_campaign"),source:_.source,subt
1itle:R.value,stats:M.value,"stats-loading":d.value,"fetch-list":V,"build-audience-disabled-reason":T.value?null:o(e)("coming_soon"),"onUpdate:visible":f[0]||(f[0]=W=>g("update:visible",W))},{columns:F(({loading:W,displayName:r,customerIdLabel:A,showInternalIds:H,goToProfile:me})=>[p(y,{header:o(e)("campaign_audience_visitor"),style:{"min-width":"220px"}},{body:F(({data:ee})=>[W?(n(),k(x,{key:0})):ee.profile_key?(n(),k(Mn,{key:1,"display-name":r(ee),"customer-id":A(ee),"split-by-pipe":!H&&!ee.is_anonymous,onNavigate:oe=>me(ee.profile_key)},null,8,["display-name","customer-id","split-by-pipe","onNavigate"])):K("",!0)]),_:2},1032,["header"]),p(y,{header:o(e)("campaign_audience_conversion_status"),style:{"min-width":"130px"}},{body:F(({data:ee})=>[W?(n(),k(x,{key:0})):ee.profile_key?(n(),i(ne,{key:1},[ee.is_converted?(n(),k(O,{key:0,variant:"status",severity:"success",value:o(e)("converted")},null,8,["value"])):(n(),k(O,{key:1,variant:"status",severity:"secondary",value:o(e)("no_conversion")},null,8,["value"]))],64)):K("",!0)]),_:2},1032,["header"]),p(y,{style:{"min-width":"120px"}},{header:F(()=>[u("span",fu,[f[1]||(f[1]=u("img",{src:In,class:"w-3.5 h-3.5 shrink-0",alt:""},null,-1)),ve(" "+C(o(e)("revenue"))+" ",1),we(u("i",yu,null,512),[[J,o(e)("campaign_audience_revenue_tooltip"),void 0,{top:!0}]])])]),body:F(({data:ee})=>[W?(n(),k(x,{key:0})):ee.profile_key?(n(),i(ne,{key:1},[ee.revenue>0?(n(),k(De,{key:0,value:ee.revenue,currency:ee.order_currency},null,8,["value","currency"])):(n(),i("span",gu,"â"))],64)):K("",!0)]),_:2},1024)]),"build-audience":F(({visible:W,tab:r,setVisible:A})=>[p(Yn,{visible:W,campaign:L.value,"initial-scope":P(r),domain:_.domain,"onUpdate:visible":A},null,8,["visible","campaign","initial-scope","domain","onUpdate:visible"])]),_:1},8,["visible","domain","title","source","subtitle","stats","stats-loading","build-audience-disabled-reason"])}}}),G="QeenPixelCustomerJourneyLandingPages",hu=[`${G}.sessionCount`,`${G}.attributedAddToCarts`,`${G}.attributedConversionsCount`,`${G}.distinctCustomers`];function Zn(t){return!t}function We(t){return Zn(t)?`${G}.attributedConversionValueOriginal`:`${G}.attributedConversionValue`}function mn(t){return[...hu,We(t)]}const ku={landing_page:`${G}.landingPage`,sessions:`${G}.sessionCount`,add_to_cart:`${G}.attributedAddToCarts`,conversions:`${G}.attributedConversionsCount`,visitors:`${G}.distinctCustomers`};function ea(t,a){return t==="revenue"?We(a):ku[t]}function Nt(t){return[{dimension:`${G}.journeyEndAt`,dateRange:t}]}function _n(t){var s;const a=[{member:`${G}.businessId`,operator:"equals",values:[t.businessId]},{member:`${G}.attributionType`,operator:"equals",values:[t.attributionModel]}];t.currencyCode&&a.push({member:"CurrencyRates.currencyCode",operator:"equals",values:[t.currencyCode]});const e=(s=t.search)==null?void 0:s.trim();return e&&a.push({member:`${G}.landingPage`,operator:"contains",values:[e]}),a.push(...ms(G,t.dataStreams)),a}function Cu(t,a,e){const s=t??"conversions",c=a??"desc",l=ea(s,e),g={[l]:c};return l!==`${G}.landingPage`&&(g[`${G}.landingPage`]="asc"),g}function $u(t,a,e){const s=t??"conversions",c=a??"desc",l={[`${G}.landingPage`]:"asc"};return s==="landing_page"?(l[`${G}.source`]=c,l):(l[ea(s,e)]=c,l[`${G}.source`]="asc",l)}function xu(t){const a=t.page??1,e=t.pageSize??10;return{dimensions:[`${G}.landingPage`],measures:mn(t.currencyCode),filters:[..._n(t),...Le(G,t.financialStatuses),...ze(G,t.excludeDuplicates)],timeDimensions:Nt(t.dateRange),order:Cu(t.sortField,t.sortOrder,t.currencyCode),limit:e,offset:(a-1)*e,total:!0}}function wu(t,a){return{dimensions:[`${G}.landingPage`,`${G}.source`],measures:mn(t.currencyCode),filters:[..._n(t),{member:`${G}.landingPage`,operator:"equals",values:a},...Le(G,t.financialStatuses),...ze(G,t.excludeDuplicates)],timeDimensions:Nt(t.dateRange),order:$u(t.sortField,t.sortOrder,t.currencyCode)}}function Su(t,a){const e=We(a);return t.filter(s=>s[`${G}.landingPage`]).map(s=>({landing_page:String(s[`${G}.landingPage`]??""),sessions:Number(s[`${G}.sessionCount`]??0),add_to_cart:Number(s[`${G}.attributedAddToCarts`]??0),conversions:Number(s[`${G}.attributedConversionsCount`]??0),revenue:Number(s[e]??0),visitors:Number(s[`${G}.distinctCustomers`]??0)}
1))}function Pu(t,a){const e=We(a),s=new Map;for(const c of t){const l=c[`${G}.landingPage`];if(!l)continue;const g=String(c[`${G}.source`]??"").trim()||"other",L=s.get(String(l))??[];L.push({source:g,sessions:Number(c[`${G}.sessionCount`]??0),add_to_cart:Number(c[`${G}.attributedAddToCarts`]??0),conversions:Number(c[`${G}.attributedConversionsCount`]??0),revenue:Number(c[e]??0),visitors:Number(c[`${G}.distinctCustomers`]??0)}),s.set(String(l),L)}return s}function ta(t){const a=[..._n(t),{member:`${G}.landingPage`,operator:"equals",values:[t.landingPage]}];return t.source&&a.push({member:`${G}.source`,operator:"equals",values:[t.source]}),a}function Ru(t){const a=t.pageSize??10,e=t.page??1,s=ta(t);switch(t.tab){case"converted":s.push({member:`${G}.attributedConversionsCount`,operator:"gt",values:["0"]});break;case"no_conversion":s.push({member:`${G}.attributedConversionsCount`,operator:"equals",values:["0"]});break;case"anonymous":s.push({member:`${G}.customerId`,operator:"notSet"});break}return s.push(...Le(G,t.financialStatuses)),{dimensions:[`${G}.customerId`,`${G}.profileKey`],measures:mn(t.currencyCode),filters:s,timeDimensions:Nt(t.dateRange),order:{[We(t.currencyCode)]:"desc",[`${G}.customerId`]:"asc"},limit:a,offset:(e-1)*a,total:!0}}function Au(t){return{measures:[`${G}.distinctCustomers`,`${G}.convertedCustomers`,`${G}.anonymousCustomers`],filters:ta(t),timeDimensions:Nt(t.dateRange)}}function Fu(t,a,e=0){const s=t[`${G}.customerId`]??null,c=t[`${G}.profileKey`]??null,l=Number(t[`${G}.attributedConversionsCount`]??0),g=We(a);return{profile_key:c??`anon-${e}`,customer_id:s,customer_name:s??"Unknown Visitor",is_anonymous:!s,is_converted:l>0,revenue:Number(t[g]??0),order_currency:Zn(a)?null:a??null,sessions:Number(t[`${G}.sessionCount`]??0),add_to_cart:Number(t[`${G}.attributedAddToCarts`]??0),conversions:l}}function Tu(t){const a=t[0]??{};return{total_visitors:Number(a[`${G}.distinctCustomers`]??0),converted:Number(a[`${G}.convertedCustomers`]??0),anonymous:Number(a[`${G}.anonymousCustomers`]??0)}}async function Ou(t,a){const e=await t(xu(a),a.businessId),s=Su(e.rawData(),a.currencyCode);if(s.length===0)return{rows:s,total:e.total??s.length};const c=await t(wu(a,s.map(g=>g.landing_page)),a.businessId),l=Pu(c.rawData(),a.currencyCode);return{rows:s.map(g=>({...g,source_breakdown:l.get(g.landing_page)??[]})),total:e.total??s.length}}async function Lu(t,a){const e=await t(Ru(a),a.businessId),s=e.rawData().map((c,l)=>Fu(c,a.currencyCode,l));return{rows:s,total:e.total??s.length}}async function Nu(t,a){const e=await t(Au(a),a.businessId);return Tu(e.rawData())}const Iu={class:"flex items-center gap-1"},Eu={key:1,class:"tabular-nums"},Du={class:"flex items-center gap-1"},Bu={class:"flex items-center gap-1"},Vu={class:"flex items-center gap-1"},Mu=ue({__name:"LandingPageAudienceModal",props:{visible:{type:Boolean},domain:{},landingPage:{},attributionModel:{},dateRange:{},currencyCode:{},financialStatuses:{},dataStreams:{}},emits:["update:visible"],setup(t,{emit:a}){const{t:e}=fe(),{load:s}=cn(),c=ln(),l=B(()=>{var f;return(f=c.selectedWebsite)==null?void 0:f.website}),g=St("cart_adds"),L=St("orders");function T(f,x,y){return e(y,{pct:Fe(On(f,x))})}const P=t,R=a,N=[{value:"all",label:e("campaign_audience_tab_all")},{value:"converted",label:e("converted")},{value:"no_conversion",label:e("no_conversion")},{value:"anonymous",label:e("campaign_audience_tab_anonymous")}];function V(){return{businessId:P.domain,attributionModel:P.attributionModel,dateRange:P.dateRange,landingPage:P.landingPage.landing_page,source:P.landingPage.source,currencyCode:P.currencyCode,financialStatuses:P.financialStatuses,dataStreams:P.dataStreams}}async function M(f){return!P.domain||!P.landingPage||!P.dateRange?{rows:[],total:0}:Lu(s,{...V(),tab:f.tab,page:f.page,pageSize:f.pageSize})}const d=D([]),m=D(!1);let $=0;async function _(){if(!P.domain||!P.landingPage||!P.dateRange){d.value=[],m.value=!1;return}const f=++$;m.value=!0,d.value=[];try{const x=await Nu(s,V());if(f!==$)return;d.value=[{title:e("page_visitors"),value:Ue(x.total_visitors),valueClass:"text-black"},{title:e("converted"),value:Ue(x.converted),valueClass:"text-green-600",tooltip:e("landing_page_converted_tooltip")},{title:e("anonymous"),value:Ue(x.anonymous),valueClass:"text-orange-700"}]}
1catch(x){if(f!==$)return;console.error("Failed to load landing page audience summary:",x),d.value=[]}finally{f===$&&(m.value=!1)}}return ke(()=>{var f,x;return[P.visible,(f=P.landingPage)==null?void 0:f.landing_page,(x=P.landingPage)==null?void 0:x.source,P.attributionModel,P.dateRange,P.currencyCode,P.dataStreams]},([f])=>{f&&P.domain&&P.landingPage&&P.dateRange&&_()},{immediate:!0}),(f,x)=>{var W;const y=Ot,O=Tt,J=En;return n(),k(Xn,{visible:f.visible,domain:f.domain,title:((W=f.landingPage)==null?void 0:W.landing_page)??"",stats:d.value,"stats-loading":m.value,"fetch-list":M,tabs:N,"empty-message":o(e)("landing_page_audience_empty"),"onUpdate:visible":x[0]||(x[0]=r=>R("update:visible",r))},{header:F(()=>[f.landingPage?(n(),k(zn,{key:0,url:f.landingPage.landing_page,"website-domain":l.value},null,8,["url","website-domain"])):K("",!0)]),columns:F(({loading:r,displayName:A,customerIdLabel:H,showInternalIds:me,goToProfile:ee})=>[p(O,{header:o(e)("visitor"),style:{"min-width":"220px"}},{body:F(({data:oe})=>[r?(n(),k(y,{key:0})):(n(),k(Mn,{key:1,"display-name":A(oe),"customer-id":H(oe),"split-by-pipe":!me&&!oe.is_anonymous,onNavigate:S=>ee(oe.profile_key)},null,8,["display-name","customer-id","split-by-pipe","onNavigate"]))]),_:2},1032,["header"]),p(O,{style:{"min-width":"100px"}},{header:F(()=>[u("span",Iu,[ve(C(o(e)("sessions"))+" ",1),p(J,{text:o(e)("landing_page_sessions_tooltip"),size:"11px"},null,8,["text"])])]),body:F(({data:oe})=>[r?(n(),k(y,{key:0})):(n(),i("span",Eu,C(o(Fe)(oe.sessions)),1))]),_:2},1024),p(O,{style:{"min-width":"120px"}},{header:F(()=>[u("span",Du,[ve(C(o(e)("add_to_cart"))+" ",1),p(J,{text:o(e)("landing_page_add_to_cart_tooltip"),size:"11px"},null,8,["text"])])]),body:F(({data:oe})=>[r?(n(),k(y,{key:0})):(n(),k(qe,{key:1,value:oe.add_to_cart,denominator:oe.sessions,"rate-text":T(oe.add_to_cart,oe.sessions,"landing_page_pct_of_sessions"),"bar-color":o(g)},null,8,["value","denominator","rate-text","bar-color"]))]),_:2},1024),p(O,{style:{"min-width":"120px"}},{header:F(()=>[u("span",Bu,[ve(C(o(e)("conversions"))+" ",1),p(J,{text:o(e)("landing_page_conversions_tooltip"),size:"11px"},null,8,["text"])])]),body:F(({data:oe})=>[r?(n(),k(y,{key:0})):(n(),k(qe,{key:1,value:oe.conversions,denominator:oe.add_to_cart,"rate-text":T(oe.conversions,oe.add_to_cart,"landing_page_pct_of_add_to_carts"),"bar-color":o(L)},null,8,["value","denominator","rate-text","bar-color"]))]),_:2},1024),p(O,{style:{"min-width":"120px"}},{header:F(()=>[u("span",Vu,[ve(C(o(e)("revenue"))+" ",1),p(J,{text:o(e)("landing_page_revenue_tooltip"),size:"11px"},null,8,["text"])])]),body:F(({data:oe})=>[r?(n(),k(y,{key:0})):(n(),k(De,{key:1,value:oe.revenue,currency:oe.order_currency,"optional-decimals":""},null,8,["value","currency"]))]),_:2},1024)]),_:1},8,["visible","domain","title","stats","stats-loading","empty-message"])}}});function qu(t){const{domain:a,attributionModel:e,dateRange:s,selectedChannel:c,includeOrganic:l,currencyCode:g,dataStreams:L}=t,T=B(()=>{var M;return!!a.value&&!!e.value&&((M=s.value)==null?void 0:M[0])!=null});function P(){return[At(s.value[0]),At(s.value[1]??s.value[0])]}function R(M,d){const m=[{member:`${M}.businessId`,operator:"equals",values:[a.value]},{member:`${M}.attributionType`,operator:"equals",values:[e.value]}],$=Ia(M,c==null?void 0:c.value);return $&&m.push($),l.value||m.push({member:`${M}.isPaid`,operator:"equals",values:["true"]}),g!=null&&g.value&&!(d!=null&&d.skipCurrency)&&m.push({member:"CurrencyRates.currencyCode",operator:"equals",values:[g.value]}),m.push(..._s(M,L==null?void 0:L.value)),m}function N(M){return[{dimension:`${M}.date`,dateRange:P()}]}function V(M,d,m,$,_){return{measures:d.map(f=>`${M}.${f}`),dimensions:m.map(f=>`${M}.${f}`),filters:R(M,_),timeDimensions:N(M),...$?{order:$}:{}}}return{canFetch:T,getDateRange:P,buildFilters:R,buildTimeDimensions:N,buildQuery:V}}const Ae="QeenPixelConversionsBySalesChannel",Qe={salesChannel:`${Ae}.salesChannel`,isAttributed:`${Ae}.isAttributed`,originalCurrency:`${Ae}.originalCurrency`},na=`${Ae}.conversions`;async function Uu(t,a){const e=await t(zu(a),a.businessId);return Qu(e.rawData(),a.currencyCode)}function zu(t){const a=fn(t.currencyCode),e=[{member:`${Ae}.businessId`,operator:"equals",values:[t.businessId]}];return t.currencyCode&&e.push({member:"CurrencyRates.currencyCode",operator:"equals",values:[t.currencyCode]}),e.push(...Le(Ae,t.financialStatuses)),e.push(...ze(Ae,t.excludeDuplicates)),{measures:[na,aa(t.currencyCode)],dimensions:[Qe.salesChannel,Qe.isAttributed,...a?[Qe.originalCurrency]:[]],filters:e,timeDimensions:[{dimension:`${Ae}.date`,dateRange:t.dateRange}]}}function Qu(t,a){const e=fn(a),s=aa(a);return t.map(c=>{const l=c[Qe.isAttributed];return{sales_channel:c[Qe.salesChannel]??"",is_attributed:l===!0||l==="true",conversions:parseFloat(c[na]??"0"),revenue:parseFloat(c[s]??"0"),currency:e?c[Qe.originalCurrency]??"":a??""}})}function fn(t){return!t}function aa(t){return fn(t)?`${Ae}.revenueOriginal`:`${Ae}.revenue`}const Me="QeenPixelConversionsBySource",$e="QeenPixelCampaignPerformance",Sn="QeenPixelFunnelBySource",xd=ue({__name:"pixel-performance",setup(t){const{t:a,te:e}=fe(),s=An(),{setTitle:c}=bs();c(a("pixel_performance"));const l=ln(),g=B(()=>{var b;return(b=l.selectedWebsite)==null?void 0:b.website}),L=B(()=>{var b,v;return ps((v=(b=l.selectedWebsite)==null?void 0:b.qeen_pixel_config)==null?void 0:v.connectingDateTime)}),{selectedCurrencyCode:T}=Dn(),{load:P}=cn(),{getFlags:R}=hs(),N=D(!1),V=D(!1),M=D(!1),d=D(null);function m(b){d.value=b,M.value=!0}const $=D(!1),_=D(null);function f(b){_.value=b,$.value=!0}const x=D(!1),y=D(null);function O(b){y.value=b,x.value=!0}const J=D({}),W=new Map(Ea.map((b,v)=>[b,v])),r=gs(L),A=D(vs),H=D([]),{attributionWindow:me,isReady:ee}=Pa(),oe=D("modeled"),S=D(!0),I=D(!0),se=D([]),ge=D("all"),h=D(!1),le=D(!1),w=D(0),E=D([...is]),q=D([...et]),U=B(()=>E.value.length>0&&q.value.length>0&&q.value.length<E.value.length),j=B(()=>!us(q.value)),Y=D(!1),ce=D([...q.value]),de=D(Y.value);function Se(){ce.value=[...q.value],de.value=Y.value}function It(){q.value=[...ce.value],Y.value=de.value}function Ce(){ce.value=[...et],de.value=!1}const sa=b=>{const v=cs(b);return v&&e(v)?a(v):ds(b)},la=ys([{key:"financialStatus",label:a("financial_status"),value:q,show:()=>j.value,groupLabel:a("financial_status"),groupItems:B(()=>q.value.map(b=>({key:b,label:sa(b)}))),onRemoveItem:b=>{const v=q.value.filter(te=>te!==b);q.value=v.length?v:[...et]},resetIcon:!0,reset:()=>{q.value=[...et]}},{key:"excludeDuplicates",label:a("exclude_duplicate_orders_chip"),value:Y,show:b=>b===!0,reset:()=>{Y.value=!1}}
1]),{canFetch:Ie,buildQuery:nt,getDateRange:Et}=qu({domain:g,attributionModel:A,dateRange:r,selectedChannel:H,includeOrganic:S,currencyCode:T,dataStreams:se}),Dt=B(()=>{var b;return((b=r.value)==null?void 0:b[0])!=null?Et():null}),Be=D(1),Bt=D(10),Vt=D(0),at=D(""),Mt=D("conversions"),qt=D("desc"),oa=B(()=>qt.value==="asc"?1:-1);function ra(b){Mt.value=b.sortField,qt.value=b.sortOrder,Be.value=1,Ee()}function ia(b){Be.value=b.page,Bt.value=b.rows,Ee()}const ua=ks(at,400);ke(ua,()=>{Be.value=1,Ee()});function Ut(b){H.value=H.value.includes(b)?H.value.filter(v=>v!==b):[...H.value,b]}const je=D([{field:"conversions",order:-1}]),Te=D(1),st=D(10),lt=D("");function ca(b){je.value=[{field:b.sortField,order:b.sortOrder===1?1:-1}]}ke([lt,je],()=>{Te.value=1},{deep:!0});function da(b){Te.value=b.page,st.value=b.rows}function pa(b){ge.value=b,Te.value=1,Oe()}function va(b){h.value=b,Te.value=1,Oe()}const zt=D([]),Qt=D([]),Kt=D(!1),Je=D([]),Gt=D([]),Ht=D([]),ot=D(!0),rt=D(!0),it=D(!0),ut=D(!0),ma=B(()=>ot.value||rt.value||it.value||ut.value),Wt=B(()=>Je.value.filter(b=>b.level==="campaign")),_a={newCustomers:"new_customers",adPlatformSpend:"ad_platform_spend",trueCpa:"true_cpa",trueCac:"true_cac",trueRoas:"true_roas"};function jt(b){const v=je.value;return v.length?[...b].sort((te,pe)=>{for(const{field:be,order:ye}of v){const z=_a[be]??be,X=te[z],xe=pe[z],Q=typeof X=="string"&&typeof xe=="string"?X.localeCompare(xe):(X??0)-(xe??0);if(Q!==0)return Q*ye}return 0}):b}const fa=B(()=>jt(Wt.value)),yn=B(()=>fa.value.filter(b=>{const v=(b.source??"").trim().toLowerCase(),te=(b.campaign_id??"").toString().trim().toLowerCase(),pe=(b.campaign??"").toString().trim().toLowerCase();if(v==="organic"||v==="other"||(!te||te==="unknown")&&(!pe||pe==="unknown"))return!1;const z=lt.value.trim().toLowerCase();return!(z&&!(pe.includes(z)||te.includes(z)))})),ya=B(()=>yn.value.length),Jt=B(()=>{const b=(Te.value-1)*st.value;return yn.value.slice(b,b+st.value)}),ga=B(()=>{const b=new Map;for(const v of Je.value){if(v.level!=="ad")continue;const te=`${v.campaign_id}__${v.source}__${v.ad_group_id??""}`,pe=b.get(te);pe?pe.push(v):b.set(te,[v])}return b}),ba=B(()=>{const b=new Map;for(const v of Je.value){if(v.level!=="ad_group")continue;const te=`${v.campaign_id}__${v.source}`,pe=`${te}__${v.ad_group_id??""}`,be=jt(ga.value.get(pe)??[]).map(X=>({...X,key:`${pe}__${X.ad_id??""}`})),ye={...v,key:pe,children:be},z=b.get(te);z?z.push(ye):b.set(te,[ye])}for(const[v,te]of b)b.set(v,jt(te));return b}),ha=B(()=>{const b=new Map;return Jt.value.map(v=>{const te=`${v.campaign_id}__${v.source}`,pe=b.get(te)??0;b.set(te,pe+1);const be=pe===0?te:`${te}__${pe}`;return{...v,key:be,children:ba.value.get(te)??[],audience_count:J.value[String(v.campaign_id)]}})});async function ka(){if(!g.value||!V.value)return;const b=Jt.value.filter(v=>v.campaign_id&&J.value[String(v.campaign_id)]===void 0);b.length&&await Promise.all(b.map(async v=>{try{const te=await _u(P,{businessId:g.value,campaignId:v.campaign_id,campaignName:v.campaign,attributionModel:A.value,dateRange:Dt.value});J.value={...J.value,[String(v.campaign_id)]:te}}catch{}}))}ke([Jt,V],()=>ka(),{immediate:!0}),ke([A,Dt],()=>{J.value={}});function Ye(b){var v;s.add({severity:"error",summary:a("error_fetching_data"),detail:((v=b==null?void 0:b.data)==null?void 0:v.statusMessage)??a("unexpected_error"),life:4e3})}let ct=0,Xe=0,dt=0,pt=0;async function Ze(){if(!Ie.value)return;const b=++ct;ot.value=!0;try{const v=!T.value,te=v?I.value?["calculatedConversions","calculatedNewCustomers","calculatedRevenueOriginal","calculatedPaidConversions","calculatedPaidRevenueOriginal","qeenSpendOriginal","adPlatformSpendOriginal"]:["conversions","newCustomers","revenueOriginal","qeenSpendOriginal","adPlatformSpendOriginal"]:I.value?["calculatedConversions","calculatedNewCustomers","calculatedRevenue","calculatedPaidConversions","calculatedPaidRevenue","qeenSpend","calculatedEffectiveCpa","calculatedEffectiveCac","calculatedEffectiveRoas","adPlatformSpend","calculatedTrueCpa","calculatedTrueCac","calculatedTrueRoas"]:["conversions","newCustomers","revenue","qeenSpend","effectiveCpa","effectiveCac","effectiveRoas","adPlatformSpend","trueCpa","trueCac","trueRoas"],pe=I.value?"calculatedEffectiveRoas":"effectiveRoas",be=["source","channelL1","channelL2","channelL3","isPaid"];v&&be.push("originalCurrency");const ye=nt(Me,te,be,{[`${Me}.${pe}`]:"desc",[`${Me}.source`]:"asc"});ye.filters.push(...Le(Me,q.value)),ye.filters.push(...ze(Me,Y.value));const z=Me,X=await P(ye,g.value);if(b!==ct)return;const xe=X.rawData();zt.value=xe.map(Q=>{var kn;const Z=Q[`${z}.isPaid`]??null,he=Z===!0||Z==="true",Ve=parseFloat((I.value?Q[`${z}.calculatedConversions`]:Q[`${z}.conversions`])??"0"),Pe=parseFloat((I.value?v?Q[`${z}.calculatedRevenueOriginal`]:Q[`${z}.calculatedRevenue`]:v?Q[`${z}.revenueOriginal`]:Q[`${z}.revenue`])??"0"),re=parseFloat((I.value?Q[`${z}.calculatedPaidConversions`]:Ve)??"0"),$a=he?parseFloat((I.value?v?Q[`${z}.calculatedPaidRevenueOriginal`]:Q[`${z}.calculatedPaidRevenue`]:Pe)??"0"):0,bn=v?Q[`${z}.qeenSpendOriginal`]:Q[`${z}.qeenSpend`],xa=he&&bn!=null?parseFloat(bn):null,hn=v?Q[`${z}.adPlatformSpendOriginal`]:Q[`${z}.adPlatformSpend`],wa=he&&hn!=null?parseFloat(hn):null;return{source:((kn=Q[`${z}.source`])==null?void 0:kn.trim().toLowerCase())??"",channel_l1:Q[`${z}.channelL1`]??null,channel_l2:Q[`${z}.channelL2`]??null,channel_l3:Q[`${z}.channelL3`]??null,conversions:Ve,new_customers:parseFloat((I.value?Q[`${z}.calculatedNewCustomers`]:Q[`${z}.newCustomers`])??"0"),revenue:Pe,paid_conversions:he?re:0,paid_revenue:$a,qeen_spend:xa,ad_platform_spend:wa,currency:v?Q[`${z}.originalCurrency`]??"":T.value??"",effective_cpa:he?v?null:(I.value?Q[`${z}.calculatedEffectiveCpa`]:Q[`${z}.effectiveCpa`])!=null?parseFloat(I.value?Q[`${z}.calculatedEffectiveCpa`]:Q[`${z}.effectiveCpa`]):null:null,effective_cac:he?v?null:(I.value?Q[`${z}.calculatedEffectiveCac`]:Q[`${z}.effectiveCac`])!=null?parseFloat(I.value?Q[`${z}.calculatedEffectiveCac`]:Q[`${z}.effectiveCac`]):null:null,effective_roas:he?v?null:(I.value?Q[`${z}.calculatedEffectiveRoas`]:Q[`${z}.effectiveRoas`])!=null?parseFloat(I.value?Q[`${z}.calculatedEffectiveRoas`]:Q[`${z}.effectiveRoas`]):null:null,true_cpa:he?v?null:(I.value?Q[`${z}.calculatedTrueCpa`]:Q[`${z}.trueCpa`])!=null?parseFloat(I.value?Q[`${z}.calculatedTrueCpa`]:Q[`${z}
1.trueCpa`]):null:null,true_cac:he?v?null:(I.value?Q[`${z}.calculatedTrueCac`]:Q[`${z}.trueCac`])!=null?parseFloat(I.value?Q[`${z}.calculatedTrueCac`]:Q[`${z}.trueCac`]):null:null,true_roas:he?v?null:(I.value?Q[`${z}.calculatedTrueRoas`]:Q[`${z}.trueRoas`])!=null?parseFloat(I.value?Q[`${z}.calculatedTrueRoas`]:Q[`${z}.trueRoas`]):null:null,is_paid:Z}}).filter(Q=>Q.conversions>0||Q.revenue>0||Q.new_customers>0||Q.qeen_spend!=null&&Q.qeen_spend>0||Q.ad_platform_spend!=null&&Q.ad_platform_spend>0)}catch(v){if(b!==ct)return;Ye(v),zt.value=[]}finally{b===ct&&(ot.value=!1)}}async function Oe(){if(!Ie.value)return;const b=++Xe;rt.value=!0;try{const v=N.value,te=!T.value,pe=["level","campaignId","campaign","adGroupId","adGroup","adId","ad","source","startDate","endDate","isPaid","originalCurrency"];v&&pe.push("isDetected");const be=I.value?["calculatedConversions","calculatedNewCustomers","calculatedRevenue","calculatedRevenueOriginal","spend","spendOriginal","adPlatformSpend","adPlatformSpendOriginal","calculatedTrueCpa","calculatedTrueCac","calculatedTrueRoas"]:["conversions","newCustomers","revenue","revenueOriginal","spend","spendOriginal","adPlatformSpend","adPlatformSpendOriginal","trueCpa","trueCac","trueRoas"],ye=I.value?"calculatedConversions":"conversions",z=nt($e,be,pe,{[`${$e}.${ye}`]:"desc"});if(gn(z.filters,v),z.filters.push(...Le($e,q.value)),z.filters.push(...ze($e,Y.value)),h.value){const Z=await Ca(v);if(b!==Xe)return;if(Z.length===0)return h.value=!1,le.value=!1,await Oe();z.filters.push({member:`${$e}.campaignId`,operator:"equals",values:Z}),le.value=!0}const X=$e,xe=(await P(z,g.value)).rawData();if(b!==Xe)return;Je.value=xe.map(Z=>{const he=v?Z[`${X}.isDetected`]===!0||Z[`${X}.isDetected`]==="true":!0,Ve=he?parseFloat((I.value?te?Z[`${X}.calculatedRevenueOriginal`]:Z[`${X}.calculatedRevenue`]:te?Z[`${X}.revenueOriginal`]:Z[`${X}.revenue`])??"0"):null;return{level:Z[`${X}.level`]??"campaign",campaign_id:Z[`${X}.campaignId`],campaign:Z[`${X}.campaign`],ad_group_id:Z[`${X}.adGroupId`]??null,ad_group:Z[`${X}.adGroup`]??null,ad_id:Z[`${X}.adId`]??null,ad:Z[`${X}.ad`]??null,source:Z[`${X}.source`],start_date:Z[`${X}.startDate`]??null,end_date:Z[`${X}.endDate`]??null,conversions:he?parseFloat(parseFloat((I.value?Z[`${X}.calculatedConversions`]:Z[`${X}.conversions`])??"0").toFixed(2)):null,new_customers:he?parseFloat(parseFloat((I.value?Z[`${X}.calculatedNewCustomers`]:Z[`${X}.newCustomers`])??"0").toFixed(2)):null,revenue:Ve,spend:(()=>{const Pe=te?Z[`${X}.spendOriginal`]:Z[`${X}.spend`];return Pe!=null?parseFloat(Pe):null})(),ad_platform_spend:(()=>{const Pe=te?Z[`${X}.adPlatformSpendOriginal`]:Z[`${X}.adPlatformSpend`];return Pe!=null?parseFloat(Pe):null})(),currency:te?Z[`${X}.originalCurrency`]??"":T.value??"",true_cpa:(I.value?Z[`${X}.calculatedTrueCpa`]:Z[`${X}.trueCpa`])!=null?parseFloat(I.value?Z[`${X}.calculatedTrueCpa`]:Z[`${X}.trueCpa`]):null,true_cac:te?null:(I.value?Z[`${X}.calculatedTrueCac`]:Z[`${X}.trueCac`])!=null?parseFloat(I.value?Z[`${X}.calculatedTrueCac`]:Z[`${X}.trueCac`]):null,true_roas:(I.value?Z[`${X}.calculatedTrueRoas`]:Z[`${X}.trueRoas`])!=null?parseFloat(I.value?Z[`${X}.calculatedTrueRoas`]:Z[`${X}.trueRoas`]):null,is_paid:Z[`${X}.isPaid`]??null,is_detected:he}}),Te.value=1;const Q=Wt.value.filter(Z=>Z.true_roas!=null&&Z.true_roas<=1);w.value=Q.length,le.value=Q.length>0}catch(v){if(b!==Xe)return;Ye(v),Je.value=[]}finally{b===Xe&&(rt.value=!1)}}function gn(b,v){v?ge.value==="detected"?b.push({member:`${$e}.isDetected`,operator:"equals",values:["true"]}):ge.value==="undetected"&&b.push({member:`${$e}.isDetected`,operator:"equals",values:["false"]}):b.push({member:`${$e}.isDetected`,operator:"equals",values:["true"]})}async function Ca(b){const v=I.value?"calculatedTrueRoas":"trueRoas",te=nt($e,[v],["campaignId","source"]);te.filters.push({member:`${$e}.level`,operator:"equals",values:["campaign"]}),gn(te.filters,b),te.filters.push(...Le($e,q.value)),te.filters.push(...ze($e,Y.value)),te.filters.push({member:`${$e}.${v}`,operator:"lte",values:["1"]});const be=(await P(te,g.value)).rawData().map(ye=>ye[`${$e}
1.campaignId`]).filter(Boolean);return[...new Set(be)]}async function vt(){if(Ie.value){it.value=!0;try{const b=I.value?["calculatedPageViews","calculatedCartAdds","calculatedCheckoutStarts","calculatedOrders"]:["pageViews","cartAdds","checkoutStarts","orders"],v=nt(Sn,b,["channelL1","channelL2"],void 0,{skipCurrency:!0}),te=Sn,pe=(await P(v,g.value)).rawData(),be=new Map;for(const ye of pe){const z=ye[`${te}.channelL1`]??"other",X=Rn(z,ye[`${te}.channelL2`]),xe=(Z,he)=>parseFloat((I.value?ye[`${te}.${he}`]:ye[`${te}.${Z}`])??"0"),Q=be.get(X)??{channel:X,channel_l1:z,page_views:0,cart_adds:0,checkout_starts:0,orders:0};Q.page_views+=xe("pageViews","calculatedPageViews"),Q.cart_adds+=xe("cartAdds","calculatedCartAdds"),Q.checkout_starts+=xe("checkoutStarts","calculatedCheckoutStarts"),Q.orders+=xe("orders","calculatedOrders"),be.set(X,Q)}Gt.value=[...be.values()].sort((ye,z)=>(W.get(ye.channel)??W.size)-(W.get(z.channel)??W.size))}catch(b){Ye(b),Gt.value=[]}finally{it.value=!1}}}async function Ee(){if(!Ie.value)return;const b=++dt;ut.value=!0;try{const v=await Ou(P,{businessId:g.value,attributionModel:A.value,dateRange:Et(),currencyCode:T.value,page:Be.value,pageSize:Bt.value,search:at.value,sortField:Mt.value,sortOrder:qt.value,financialStatuses:U.value?q.value:void 0,excludeDuplicates:Y.value,dataStreams:se.value});if(b!==dt)return;Ht.value=v.rows,Vt.value=v.total}catch(v){if(b!==dt)return;Ye(v),Ht.value=[],Vt.value=0}finally{b===dt&&(ut.value=!1)}}async function mt(){if(!Ie.value)return;const b=++pt;Kt.value=!0;try{const v=await Uu(P,{businessId:g.value,dateRange:Et(),currencyCode:T.value,financialStatuses:q.value,excludeDuplicates:Y.value});if(b!==pt)return;Qt.value=Tl(v)}catch(v){if(b!==pt)return;Ye(v),Qt.value=[]}finally{b===pt&&(Kt.value=!1)}}function Yt(){Ze(),Oe(),vt(),Ee()}return ke([A,H,me,T,S,se],()=>{Te.value=1,Be.value=1,Yt()}),ke(oe,()=>vt()),Cs(q,()=>{Ze(),Oe(),Ee(),mt()},{deep:!0,debounce:900}),ke(Y,()=>{Ze(),Oe(),Ee(),mt()}),ke(I,()=>{Ze(),Oe(),vt()}),ke([r,g,T],()=>{mt()}),ke(r,b=>{b!=null&&b[0]&&(b!=null&&b[1])&&Yt()}),ke(g,()=>{g.value&&Yt()}),Ua(()=>{Ie.value&&(Ze(),vt(),Ee(),mt())}),ke(g,async b=>{if(b){const v=await R({[ft.QP_MISSED_CAMPAIGNS]:!1,[ft.QP_CUSTOMERS]:!1},{domain:b});N.value=!!v[ft.QP_MISSED_CAMPAIGNS],V.value=!!v[ft.QP_CUSTOMERS],Ie.value&&Oe()}},{immediate:!0}),(b,v)=>{const te=Sa,pe=Ra,be=Aa,ye=Fl,z=Il,X=Uo,xe=hr,Q=Br,Z=bu,he=Mu,Ve=Yn,Pe=fs;return n(),k(Pe,{"show-analyst-chat":""},{filters:F(()=>[p(be,{attributionModel:A.value,"onUpdate:attributionModel":v[2]||(v[2]=re=>A.value=re),paidAtm:I.value,"onUpdate:paidAtm":v[3]||(v[3]=re=>I.value=re),selectedChannel:H.value,"onUpdate:selectedChannel":v[4]||(v[4]=re=>H.value=re),attributionWindow:o(me),"onUpdate:attributionWindow":v[5]||(v[5]=re=>kt(me)?me.value=re:null),includeOrganic:S.value,"onUpdate:includeOrganic":v[6]||(v[6]=re=>S.value=re),dateRange:o(r),"onUpdate:dateRange":v[7]||(v[7]=re=>kt(r)?r.value=re:null),currencyCode:o(T),"onUpdate:currencyCode":v[8]||(v[8]=re=>kt(T)?T.value=re:null),dataStreams:se.value,"onUpdate:dataStreams":v[9]||(v[9]=re=>se.value=re),"attribution-window-ready":o(ee),"extra-active-filters":o(la),"show-attribution-filters":"","show-channel-filter":"","show-paid-atm-toggle":"","show-currency-filter":"","show-data-stream-filter":"","show-apply-footer":"","apply-loading":ma.value,onOpen:Se,onApply:It,onReset:Ce},za({_:2},[E.value.length?{name:"filters",fn:F(()=>[p(te,{modelValue:ce.value,statuses:E.value,"onUpdate:modelValue":v[0]||(v[0]=re=>ce.value=re&&re.length?re:[...o(et)])},null,8,["modelValue","statuses"]),p(pe,{modelValue:de.value,"onUpdate:modelValue":v[1]||(v[1]=re=>de.value=re),label:o(a)("exclude_duplicate_orders"),"input-id":"exclude-duplicate-orders",tooltip:o(a)("exclude_duplicate_orders_tooltip")},null,8,["modelValue","label","tooltip"])]),key:"0"}:void 0]),1032,["attributionModel","paidAtm","selectedChannel","attributionWindow","includeOrganic","dateRange","currencyCode","dataStreams","attribution-window-ready","extra-active-filters","apply-loading"])]),default:F(()=>[p(ye,{data:zt.value,loading:ot.value,"include-organic":S.value,"attribution-model":A.value,onFilterChannel:Ut},null,8,["data","loading","include-organic","attribution-model"]),p(z,{groups:Qt.value,loading:Kt.value},null,8,["groups","loading"]),p(X,{data:ha.value,allData:Wt.value,loading:rt.value,totalRecords:ya.value,currentPage:Te.value,rowsPerPage:st.value,campaignFilter:N.value?ge.value:void 0,hasLowRoas:le.value,lowRoasCount:w.value,lowRoasActive:h.value,audie
1nceEnabled:V.value,search:lt.value,"onUpdate:search":v[10]||(v[10]=re=>lt.value=re),sort:je.value,"onUpdate:sort":v[11]||(v[11]=re=>je.value=re),"onUpdate:campaignFilter":pa,"onUpdate:lowRoasActive":va,onFilterChannel:Ut,onSort:ca,onPage:da,onViewAudience:m},null,8,["data","allData","loading","totalRecords","currentPage","rowsPerPage","campaignFilter","hasLowRoas","lowRoasCount","lowRoasActive","audienceEnabled","search","sort"]),p(xe,{data:Ht.value,loading:ut.value,"total-records":Vt.value,"current-page":Be.value,"rows-per-page":Bt.value,"sort-field":Mt.value,"sort-order":oa.value,search:at.value,"onUpdate:search":v[12]||(v[12]=re=>at.value=re),onSort:ra,onPage:ia,onViewVisitors:f},null,8,["data","loading","total-records","current-page","rows-per-page","sort-field","sort-order","search"]),p(Q,{data:Gt.value,loading:it.value,"audience-enabled":V.value,funnelVersion:oe.value,"onUpdate:funnelVersion":v[13]||(v[13]=re=>oe.value=re),onBuildAudience:O,onFilterChannel:Ut},null,8,["data","loading","audience-enabled","funnelVersion"]),g.value&&d.value?(n(),k(Z,{key:0,visible:M.value,"onUpdate:visible":v[14]||(v[14]=re=>M.value=re),domain:g.value,"campaign-id":d.value.campaign_id,"campaign-name":d.value.campaign,source:d.value.source,"attribution-model":A.value,"currency-code":o(T),"date-range":o(r),"financial-statuses":U.value?q.value:void 0},null,8,["visible","domain","campaign-id","campaign-name","source","attribution-model","currency-code","date-range","financial-statuses"])):K("",!0),g.value&&_.value?(n(),k(he,{key:1,visible:$.value,"onUpdate:visible":v[15]||(v[15]=re=>$.value=re),domain:g.value,"landing-page":_.value,"attribution-model":A.value,"date-range":Dt.value,"currency-code":o(T),"financial-statuses":U.value?q.value:void 0,"data-streams":se.value},null,8,["visible","domain","landing-page","attribution-model","date-range","currency-code","financial-statuses","data-streams"])):K("",!0),g.value&&y.value?(n(),k(Ve,{key:2,visible:x.value,"onUpdate:visible":v[16]||(v[16]=re=>x.value=re),"funnel-source":y.value,domain:g.value},null,8,["visible","funnel-source","domain"])):K("",!0)]),_:1})}}});
1export{xd 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.