PageSourceSearch

https://www.adverfly.com/_next/static/chunks/5746-47db19eadddfb3c3.js

js adverfly.com collected 2026-10-02 00:29:28 UTC 24,077 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[5746],{51188:function(e,n,t){t.d(n,{Em:function(){return m},sz:function(){return l.s},G6:function(){return p}});var a=t(85893),i=t(67294),c=t(90512),o=t(13033),s=t(11163),r=t(95915),d=t(31651),l=t(24285);function p(e){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:["view","tab"],t=(0,s.useRouter)(),a=(0,d.Z)(),{mode:c}=(0,o.e)(),p=(0,l.o)(e=>e.setSpec),g=(0,l.o)(e=>e.clearSpec),m=(0,l.o)(e=>e.clearSelection),{appId:f,onSectionChange:u,sections:h}=e;i.useEffect(()=>{p(e)}),i.useEffect(()=>()=>{g(f);let e=r.vq.getState();e.isOpenSecondSidebar&&"app-panel"===e.state&&e.setIsOpenSecondSidebar(!1)},[f,g]),i.useEffect(()=>{m(f)},[f,t.query.workspace_id,m]);let x=i.useRef(!1);return i.useEffect(()=>{if(t.isReady&&!x.current)for(let e of(x.current=!0,n)){let n=t.query[e],a=Array.isArray(n)?n[0]:n;if(a&&h.some(e=>e.id===a)){u(a);return}}},[t.isReady]),{inline:a||"panel"===c}}function g(e){var n;let{spec:t}=e,i=t.items,o=i&&t.selectedId&&i.some(e=>e.id===t.selectedId)?t.selectedId:"";return(0,a.jsxs)("div",{className:"mb-5 space-y-2",children:[(0,a.jsx)("div",{className:(0,c.Z)("flex flex-wrap gap-1",t.sections.length<=1&&"hidden"),children:t.sections.map(e=>{let{id:n,label:i,icon:o,count:s,disabled:r}=e;return(0,a.jsxs)("button",{type:"button",disabled:r,onClick:()=>t.onSectionChange(n),className:(0,c.Z)("inline-flex items-center gap-1.5 rounded-md px-2.5 py-1 text-[13px] transition-colors disabled:opacity-50",t.section===n?"bg-zinc-100 font-medium text-zinc-900":"text-zinc-500 hover:text-zinc-900"),children:[o&&(0,a.jsx)(o,{className:"size-3.5 text-zinc-400"}),i,void 0!==s&&(0,a.jsx)("span",{className:"text-[11px] text-zinc-400",children:s})]},n)})}),(i||t.actions&&t.actions.length>0)&&(0,a.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[i&&(0,a.jsxs)("select",{value:null!=o?o:"",onChange:e=>{var n;return e.target.value&&(null===(n=t.onSelect)||void 0===n?void 0:n.call(t,e.target.value))},className:(0,c.Z)("w-full rounded-md border border-zinc-200 bg-white px-3 py-2 text-sm text-zinc-700 outline-none focus:border-blue-500","max-w-xs"),"aria-label":"Item",children:[(0,a.jsx)("option",{value:"",children:"— Select —"}),i.map(e=>(0,a.jsx)("option",{value:e.id,children:e.label},e.id))]}),null===(n=t.actions)||void 0===n?void 0:n.map(e=>{let{id:n,label:t,icon:i,onClick:c,disabled:o}=e;return(0,a.jsxs)("button",{type:"button",onClick:c,disabled:o,className:"inline-flex items-center gap-1.5 rounded-md border border-zinc-200 bg-white px-2.5 py-1.5 text-[13px] text-zinc-700 hover:bg-zinc-50 disabled:opacity-50",children:[i&&(0,a.jsx)(i,{className:"size-3.5 text-zinc-400"}),t]},n)})]})]})}function m(e){var n,t;let{heading:i,headerActions:s,urlParams:r,className:d,children:l,...m}=e,{mode:f}=(0,o.e)(),{inline:u}=p(m,r),h=null!==(t=null===(n=m.sections.find(e=>e.id===m.section))||void 0===n?void 0:n.label)&&void 0!==t?t:"",x=void 0===i?h:i;return(0,a.jsxs)("div",{className:(0,c.Z)("panel"===f?"p-4":"p-6",d),children:[u&&(0,a.jsx)(g,{spec:m}),(x||s)&&(0,a.jsxs)("div",{className:"mb-6 flex items-center justify-between gap-3",children:["string"==typeof x?(0,a.jsx)("p",{className:"text-sm font-medium text-zinc-950",children:x}):(0,a.jsx)("div",{children:x}),s&&(0,a.jsx)("div",{className:"flex items-center gap-2",children:s})]}),l]})}t(8913)},38743:function(e,n,t){t.d(n,{U:function(){return U}});var a=t(85893),i=t(67294),c=t(61929),o=t(33058),s=t(15948),r=t(90512),d=t(46077),l=t(16890);let p=[{id:"default",name:"Default",description:"Text-first layout with media tiles for creatives.",tokens:{brand:"#0a0a0a",outerBg:"#f9fafb",bg:"#ffffff",bgSurface:"#f9fafb",bgDark:"#f5f5f5",border:"#ececec",borderLight:"#f3f3f3",text:"#0a0a0a",textSecondary:"#3f3f3f",textMuted:"#6e6e6e",textFaint:"#a0a0a0",accent:"#0a0a0a",fontFamily:"-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif",headingFontFamily:"-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif",cardRadius:"12px",outerCardRadius:"24px",buttonRadius:"8px",boxShadow:"0 1px 3px rgba(0,0,0,0.03)"}}];p.map(e=>[e.id,e]);let g="Last 7 days",m=[{name:"Meta",spend:"EUR 7,200",roas:"3.4x",change:8},{name:"Google",spend:"EUR 5,100",roas:"2.1x",change:-3}
1,{name:"TikTok",spend:"EUR 1,950",roas:"2.6x",change:14}],f=[{name:"Bing",spend:"EUR 620",roas:"0.8x",change:-22},{name:"Pinterest",spend:"EUR 410",roas:"0.6x",change:-31}],u=[{name:"Summer Sale Retargeting",channel:"Meta",spend:"EUR 5,200",ctr:"2.8%",change:22},{name:"Brand Search EU",channel:"Google",spend:"EUR 4,100",ctr:"5.2%",change:8},{name:"Prospecting Lookalike",channel:"Meta",spend:"EUR 2,900",ctr:"1.6%",change:4}],h=[{name:"Generic Display",channel:"Google",spend:"EUR 1,800",ctr:"0.4%",change:-18},{name:"Cold Audience Test 3",channel:"TikTok",spend:"EUR 900",ctr:"0.7%",change:-25}],x=[{name:"Retargeting 30d — UGC",campaign:"Summer Sale RTG",spend:"EUR 2,400",ctr:"3.1%",change:18},{name:"Brand Keywords — Exact",campaign:"Brand Search EU",spend:"EUR 2,100",ctr:"6.4%",change:11},{name:"Lookalike 1% — Static",campaign:"Prospecting LAL",spend:"EUR 1,300",ctr:"1.9%",change:6}],b=[{name:"Display Network — All",campaign:"Generic Display",spend:"EUR 1,100",ctr:"0.3%",change:-21},{name:"Broad Match — Tier 3",campaign:"Cold Audience Test 3",spend:"EUR 540",ctr:"0.5%",change:-28}],y=[{name:"Spring UGC Testimonial v2",channel:"Meta",spend:"EUR 4,200",ctr:"2.4%",isVideo:!0},{name:"Before/After Carousel #1",channel:"Meta",spend:"EUR 3,100",ctr:"1.9%",isVideo:!1},{name:"Product Demo Static",channel:"Google",spend:"EUR 2,800",ctr:"1.1%",isVideo:!1}],v=[{name:"Generic Stock Photo v1",channel:"Google",spend:"EUR 900",ctr:"0.4%",isVideo:!1},{name:"Talking Head Cut #3",channel:"TikTok",spend:"EUR 450",ctr:"0.6%",isVideo:!0}],w=[{name:"Social Proof / UGC",spend:"EUR 6,100",ctr:"2.7%",change:19},{name:"Before / After",spend:"EUR 3,400",ctr:"2.1%",change:12},{name:"Discount / Urgency",spend:"EUR 2,200",ctr:"1.8%",change:5}],k=[{name:"Generic Brand Mention",spend:"EUR 1,400",ctr:"0.5%",change:-24},{name:"Feature List Static",spend:"EUR 800",ctr:"0.6%",change:-19}],R=[{name:"Meta",spend:"EUR 7,200",change:8},{name:"Google",spend:"EUR 5,100",change:-3},{name:"TikTok",spend:"EUR 1,950",change:14}],A=[{source:"Meta",conversions:92,sessions:4200,cr:"2.2%",change:11},{source:"Google",conversions:54,sessions:3100,cr:"1.7%",change:-2},{source:"Direct",conversions:28,sessions:1500,cr:"1.9%",change:5}],E=[{title:"Scale Meta spend +15%",priority:"high"},{title:"Pause Generic Display",priority:"medium"},{title:"Test TikTok UGC carousel",priority:"low"}],j=[{channel:"Meta",region:"Berlin vs Hamburg",status:"running",lift:"—"},{channel:"Google",region:"Munich vs Cologne",status:"completed",lift:"+6.2%"}],S=[{keyword:"summer skincare",change:24},{keyword:"protein bars",change:18},{keyword:"organic cotton",change:-8}],z=[{channel:"Meta",spend:"EUR 7,200",share:"38%",roi:"3.2x",mroi:"2.8x"},{channel:"Google",spend:"EUR 5,100",share:"32%",roi:"2.1x",mroi:"1.1x"},{channel:"TikTok",spend:"EUR 1,950",share:"14%",roi:"1.8x",mroi:"3.5x"}];function U(e){let{enabledAppIds:n,value:t,onChange:U}=e,I=(0,i.useMemo)(()=>(0,l.jx)(n),[n]),T=(0,i.useMemo)(()=>new Set(I.map(e=>e.id)),[I]);(0,i.useEffect)(()=>{let e=function(e,n){let t=new Set(e.map(e=>e.id)),a=[];for(let t of e)n.has(t.id)&&a.push(t);for(let e of l.AA)!t.has(e.id)&&n.has(e.id)&&a.push({id:e.id,enabled:e.defaultEnabled});return a}(t.blocks,T);e.length!==t.blocks.length&&U({...t,blocks:e})},[T]);let[M,C]=(0,i.useState)(0);(0,i.useEffect)(()=>{C(e=>e+1)},[t]);let N=(0,i.useMemo)(()=>(function(e){let n=p[0].tokens,t=e.blocks.filter(e=>e.enabled),a=(e,t)=>'<div style="font-size:12px;font-weight:700;color:'.concat(n.text,";margin:0 0 8px;font-family:").concat(n.fontFamily,';">').concat(e).concat(t?' <span style="font-weight:400;color:'.concat(n.textFaint,';font-size:11px;">— ').concat(t,"</span>"):"","</div>"),i=(e,t)=>'<table cellpadding="0" cellspacing="0" style="margin:2px 0;border-collapse:collapse;font-size:13px;color:'.concat(n.text,';"><tr>\n      <td style="width:160px;color:').concat(n.textMuted,';vertical-align:top;padding-right:10px;">').concat(e,'</td>\n      <td style="vertical-align:top;">').concat(t,"</td>\n    </tr></table>"),c=e=>e>0?'<span style="color:'.concat(n.textSecondary,';font-size:12px;font-weight:600;">&#9650; ').concat(e,"%</span>"):e<0?'<span style="color:'.concat(n.textMuted,';font-size:12px;font-weight:600;">&#9660; ').concat(Math.abs(e),"%</span>"):'<span style="color:'.concat(n.textFaint,';font-size:12px;">&mdash; 0%</span>'),o='<span style="color:'.concat(n.text,';font-weight:700;">&#10003;</span>'),s={meta:{bg:"#eff6ff",fg:"#1877f2",mono:"M",slug:"meta"},facebook:{bg:"#eff6ff",fg:"#1877f2",mono:"f",slug:"facebook"},instagram:{bg:"#fdf2f8",fg:"#e1306c",mono:"IG",slug:"instagram"},google:{bg:"#f0fdf4",fg:"#16a34a",mono:"G",slug:"google"},tiktok:{bg:"#f3f4f6",fg:"#0a0a0a",mono:"TT",slug:"tiktok"},snapchat:{bg:"#fefce8",fg:"#eab308",mono:"S",slug:"snapchat"},pinterest:{bg:"#fdf2f8",fg:"#e60023",mono:"P",slug:"pinterest"},bing:{bg:"#eff6ff",fg:"#008373",mono:"B",slug:"bing"},youtube:{bg:"#fef2f2",fg:"#ef4444",mono:"YT",slug:"youtube"},threads:{bg:"#f3f4f6",fg:"#0a0a0a",mono:"T",slug:"threads"},audience_network:{bg:"#eff6ff",fg:"#1877f2",mono:"AN",slug:"audience_network"},direct:{bg:"#f3f4f6",fg:"#52525b",mono:"D",slug:null},email:{bg:"#f3f4f6",fg:"#52525b",mono:"@",slug:"email"}},r=e=>{var n;return null!==(n=s[(e||"").toLowerCase().replace(/[\s_-]?ads$/i,"").trim()])&&void 0!==n?n:{bg:"#f5f5f5",fg:"#52525b",mono:"?",slug:null}},d=e=>"https://cdn-adv.s3.eu-central-1.amazonaws.com/svgs/channels/".concat(e,".svg"),l=e=>{let t=r(e),a=t.slug?'<img src="'.concat(d(t.slug),'" alt="').concat(t.mono,'" width="20" height="20" style="display:inline-block;vertical-align:middle;width:20px;height:20px;border:0;" />'):'<span style="color:'.concat(t.fg,';font-size:13px;font-weight:700;">').concat(t.mono,"</span>");return'<div style="width:36px;height:36px;background:'.concat(t.bg,";border-radius:").concat(n.cardRadius,';text-align:center;line-height:36px;">').concat(a,"</div>")},U=(e,t,a)=>'\n    <table cellpadding="0" cellspacing="0" style="margin:3px 0;border-collapse:collapse;">\n      <tr>\n        <td style="vertical-align:middle;padding-right:10px;">'.concat(l(e),'</td>\n        <td style="vertical-align:middle;">\n          <div style="font-size:13px;color:').concat(n.text,';font-weight:500;">').concat(t,'</div>\n          <div style="font-size:11px;color:').concat(n.textMuted,';margin-top:1px;">').concat(a,"</div>\n        </td>\n      </tr>\n    </table>"),I=e=>'\n    <table cellpadding="0" cellspacing="0" style="margin:3px 0;border-collapse:collapse;">\n      <tr>\n        <td style="vertical-align:middle;padding-right:8px;">'.concat(l(e.channel),'</td>\n        <td style="vertical-align:middle;padding-right:10px;">\n          <div style="width:36px;height:36px;background:').concat(n.bgDark,";border-radius:").concat(n.cardRadius,";display:flex;align-items:center;justify-content:center;color:").concat(n.textFaint,';font-size:14px;">\n            ').concat(e.isVideo?"&#9654;":"&#9646;",'\n          </div>\n        </td>\n        <td style="vertical-align:middle;">\n          <div style="font-size:13px;color:').concat(n.text,';font-weight:500;">').concat(e.name,'</div>\n          <div style="font-size:11px;color:').concat(n.textMuted,';margin-top:1px;">').concat(e.channel," \xb7 ").concat(e.spend,"</div>\n        </td>\n      </tr>\n    </table>"),T={"kpi-bar":()=>"".concat(a("KPIs",g),"\n      ").concat(i("Spend","".concat("EUR 14,250","  ").concat(c(1))),"\n      ").concat(i("Revenue","".concat("EUR 42,500","  ").concat(c(12))),"\n      ").concat(i("ROAS","".concat("3.0x","  ").concat(c(11))),"\n      ").concat(i("Conversions","".concat("187","  ").concat(c(9)))),"ai-status":()=>"".concat(a("Summary"),'\n      <div style="font-size:13px;color:').concat(n.textSecondary,';line-height:1.6;">').concat("<strong>Revenue is up 12% WoW</strong> on flat spend — efficiency drove the lift, not budget. Meta is leading at 3.2x ROAS with room to scale, while Google has plateaued near saturation.","</div>"),"top-platform":()=>"".concat(a("Top Platforms",g),"\n      ").concat(m.map(e=>U(e.name,e.name,"".concat(e.spend," \xb7 ROAS ").concat(e.roas,"  ").
1concat(c(e.change)))).join("")),"top-campaigns":()=>"".concat(a("Top Campaigns",g),"\n      ").concat(u.map(e=>U(e.channel,e.name,"".concat(e.channel," \xb7 ").concat(e.spend,"  ").concat(c(e.change)))).join("")),"top-ad-groups":()=>"".concat(a("Top Ad Groups",g),"\n      ").concat(x.map(e=>i(e.name,"".concat(e.campaign," \xb7 ").concat(e.spend," \xb7 CTR ").concat(e.ctr,"  ").concat(c(e.change)))).join("")),"top-ads":()=>"".concat(a("Top Ads",g),"\n      ").concat(y.map(I).join("")),"top-angles":()=>"".concat(a("Top Angles",g),"\n      ").concat(w.map(e=>i(e.name,"".concat(e.spend," \xb7 CTR ").concat(e.ctr,"  ").concat(c(e.change)))).join("")),"ai-action-items":()=>"".concat(a("Action Items"),'\n      <div style="font-size:13px;color:').concat(n.textSecondary,';line-height:1.8;">').concat("1. Shift 2.5K EUR from Google to Meta this week — Meta's mROI (2.8x) is now 2.5x Google's (1.1x).<br>2. Pause <em>Generic Display</em> — wasted 1.8K EUR for 6 conversions.<br>3. Refresh <em>Spring UGC v2</em> creative before frequency hits 4.","</div>"),"worst-platform":()=>"".concat(a("Underperforming Platforms",g),"\n      ").concat(f.map(e=>U(e.name,e.name,"".concat(e.spend," \xb7 ROAS ").concat(e.roas,"  ").
1concat(c(e.change)))).join("")),"worst-campaigns":()=>"".concat(a("Underperforming Campaigns",g),"\n      ").concat(h.map(e=>U(e.channel,e.name,"".concat(e.channel," \xb7 ").concat(e.spend,"  ").concat(c(e.change)))).join("")),"worst-ad-groups":()=>"".concat(a("Underperforming Ad Groups",g),"\n      ").concat(b.map(e=>i(e.name,"".concat(e.campaign," \xb7 ").concat(e.spend," \xb7 CTR ").concat(e.ctr,"  ").concat(c(e.change)))).join("")),"worst-ads":()=>"".concat(a("Underperforming Ads",g),"\n      ").concat(v.map(I).join("")),"worst-angles":()=>"".concat(a("Underperforming Angles",g),"\n      ").concat(k.map(e=>i(e.name,"".concat(e.spend," \xb7 CTR ").concat(e.ctr,"  ").concat(c(e.change)))).join("")),"pixel-insights":()=>"".concat(a("Pixel Insights",g),"\n      ").concat(A.map(e=>U(e.source,e.source,"".concat(e.conversions," conv \xb7 ").concat(e.sessions," sessions \xb7 CR ").concat(e.cr,"  ").concat(c(e.change)))).join("")),"channel-spend":()=>"".concat(a("Channel Spend",g),"\n      ").concat(R.map(e=>U(e.name,e.name,"".concat(e.spend,"  ").concat(c(e.change)))).join("")),recommendations:()=>"".concat(a("Recommendations"),"\n      ").concat(E.map(e=>'<div style="font-size:13px;color:'.concat(n.text,';margin:3px 0;">').concat(o," ").concat(e.title,' <span style="color:').concat(n.textFaint,';font-size:11px;">[').concat(e.priority,"]</span></div>")).join("")),experiments:()=>"".concat(a("Experiments"),"\n      ").concat(j.map(e=>U(e.channel,e.region,"".concat(e.channel," \xb7 ").concat(e.status," \xb7 ").concat(e.lift))).join("")),"ai-visibility":()=>"".concat(a("AI Visibility",g),"\n      ").concat(i("Score","62.0"),"\n      ").concat(i("Mention Rate","48%"),"\n      ").concat(i("Prompts",String(45))),trends:()=>"".concat(a("Trending Keywords","Last 28 days"),"\n      ").concat(S.map(e=>i(e.keyword,c(e.change))).join("")),mmm:()=>"".concat(a("MMM Insights","Model period"),"\n      ").concat(z.map(e=>U(e.channel,e.channel,"".concat(e.spend," \xb7 ROI ").concat(e.roi," \xb7 mROI ").concat(e.mroi))).join("")),"ai-deep-analysis":()=>"".concat(a("Analysis"),'\n      <div style="font-size:13px;color:').concat(n.textSecondary,';line-height:1.6;">').concat("<p>The week-over-week revenue lift was concentrated in Meta retargeting, where the new UGC testimonial format outperformed the prior creative by 38% on CTR. This pattern matches what we saw in Q1 — UGC formats consistently beat polished production for warm audiences.</p>","</div>")},M=t.map(e=>{var n,t;return null!==(t=null===(n=T[e.id])||void 0===n?void 0:n.call(T))&&void 0!==t?t:""}).filter(Boolean).map(e=>'<div style="background:'.concat(n.bgSurface,";border:1px solid ").concat(n.borderLight,";border-radius:").concat(n.cardRadius,';padding:14px 18px;margin:10px 0;">').concat(e,"</div>")).join("");return'<!DOCTYPE html>\n<html><head><meta charset="utf-8"></head>\n<body style="margin:0;padding:32px 24px;background:'.concat(n.outerBg,";font-family:").concat(n.fontFamily,";line-height:1.5;font-size:14px;color:").concat(n.text,';">\n  <div style="max-width:720px;margin:0 auto;">\n    <div style="background:').concat(n.bg,";border-radius:").concat(n.outerCardRadius,";padding:32px;box-shadow:").concat(n.boxShadow,';">\n      <img src="').concat("https://assets-adv.s3.eu-central-1.amazonaws.com/adverfly-logo.svg",'" alt="Adverfly" width="100" style="display:block;margin-bottom:20px;" />\n      <h1 style="margin:0;font-size:22px;font-weight:700;color:').concat(n.text,';"><span style="').concat("background:#a7f3d0;background:linear-gradient(to top,#a7f3d0 55%,transparent 55%);padding:0 3px;-webkit-box-decoration-break:clone;box-decoration-break:clone;",'">Daily Briefing</span></h1>\n      <p style="margin:6px 0 0;font-size:13px;color:').concat(n.textMuted,';">').concat("Cortex"," \xb7 ").concat("Demo Workspace"," \xb7 ").concat("Monday, June 5, 2026"," \xb7 ").concat(g,"</p>\n      ").concat(M,'\n      <div style="margin-top:20px;"><a href="#" style="color:').concat(n.accent,';font-size:13px;font-weight:600;text-decoration:underline;">Open Dashboard &rarr;</a></div>\n    </div>\n  </div>\n</body></html>')})(t),[t]);return(0,a.jsxs)("div",{className:"grid grid-cols-[280px_1fr] gap-4 h-[60vh]",children:[(0,a.jsx)("div",{className:"overflow-y-auto pr-1 space-y-4",children:(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wide text-zinc-400 mb-1.5 block",children:"Sections"}),(0,a.jsx)(s.Z5,{onDragEnd:function(e){if(!e.destination||e.source.index===e.destination.index)return;let n=Array.from(t.blocks),[a]=n.splice(e.source.index,1);n.splice(e.destination.index,0,a),U({...t,blocks:n})},children:(0,a.jsx)(s.bK,{droppableId:"blocks",children:e=>(0,a.jsxs)("div",{ref:e.innerRef,...e.droppableProps,className:"rounded-md border border-zinc-200 overflow-hidden divide-y divide-zinc-100",children:[t.blocks.map((e,n)=>{let i=(0,l.qu)(e.id);return i?(0,a.jsx)(s._l,{draggableId:e.id,index:n,children:(n,s)=>(0,a.jsxs)("div",{ref:n.innerRef,...n.draggableProps,className:(0,r.Z)("flex items-center gap-2 px-2 py-2 bg-white",s.isDragging&&"bg-zinc-50 ring-1 ring-zinc-300"),children:[(0,a.jsx)("button",{type:"button",...n.dragHandleProps,className:"text-zinc-300 hover:text-zinc-500 cursor-grab active:cursor-grabbing",children:(0,a.jsx)(c.Z,{className:"size-3.5"})}),(0,a.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,a.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,a.jsx)("span",{className:(0,r.Z)("text-[12px] font-medium truncate",e.enabled?"text-zinc-900":"text-zinc-400 line-through"),children:i.name}),i.isAi&&(0,a.jsxs)("span",{className:"text-[9px] font-medium text-violet-600 bg-violet-50 rounded px-1 py-0.5 flex items-center gap-0.5",children:[(0,a.jsx)(o.Z,{className:"size-2.5"}),"AI"]})]}),(0,a.jsx)("div",{className:"text-[10px] text-zinc-400 truncate leading-tight",children:i.description})]}),(0,a.jsx)(d.rs,{checked:e.enabled,onChange:n=>{var a;return a=e.id,void U({...t,blocks:t.blocks.map(e=>e.id===a?{...e,enabled:n}:e)})},color:e.enabled?"emerald":"zinc"})]})},e.id):null}),e.placeholder]})})}),0===t.blocks.length&&(0,a.jsx)("p",{className:"text-[11px] text-zinc-400 mt-2 px-2",children:"No sections available — enable apps in your workspace to add data sources."})]})}),(0,a.jsxs)("div",{className:"rounded-md border border-zinc-200 bg-zinc-100 overflow-hidden",children:[(0,a.jsxs)("div",{className:"px-3 py-1.5 bg-white border-b border-zinc-200 flex items-center justify-between",children:[(0,a.jsx)("span",{className:"text-[11px] font-medium uppercase tracking-wide text-zinc-400",children:"Preview"}),(0,a.jsx)("span",{className:"text-[10px] text-zinc-400",children:"Mock data"})]}),(0,a.jsx)("iframe",{title:"Email preview",srcDoc:N,className:"w-full h-[calc(100%-30px)] bg-white"},M)]})]})}},16890:function(e,n,t){t.d(n,{AA:function(){return a},jx:function(){return o},qu:function(){return c}});let a=[{id:"kpi-bar",name:"KPI Bar",description:"Spend, Revenue, ROAS, Conversions with WoW deltas.",appId:null,isAi:!1,defaultOrder:10,defaultEnabled:!0},{id:"ai-status",name:"AI Status Summary",description:"AI-narrated 2-3 sentence summary of what changed.",appId:null,isAi:!0,defaultOrder:20,defaultEnabled:!0},{id:"top-platform",name:"Top Platforms",description:"Best-performing channels by spend & efficiency.",appId:"insights",isAi:!1,defaultOrder:30,defaultEnabled:!0}
1,{id:"top-campaigns",name:"Top Campaigns",description:"Top campaigns by spend with WoW trend.",appId:"insights",isAi:!1,defaultOrder:31,defaultEnabled:!0},{id:"top-ad-groups",name:"Top Ad Groups",description:"Best ad groups / ad sets within campaigns.",appId:"insights",isAi:!1,defaultOrder:32,defaultEnabled:!0},{id:"top-ads",name:"Top Ads",description:"Top ads by spend with thumbnails.",appId:"creatives",isAi:!1,defaultOrder:33,defaultEnabled:!0},{id:"top-angles",name:"Top Angles",description:"Best-performing creative angles / messages.",appId:"marketing-angles",isAi:!1,defaultOrder:34,defaultEnabled:!0},{id:"ai-action-items",name:"AI Action Items",description:"AI-narrated 1-3 concrete actions for this period.",appId:null,isAi:!0,defaultOrder:40,defaultEnabled:!0},{id:"worst-platform",name:"Underperforming Platforms",description:"Channels burning spend with weakest efficiency.",appId:"insights",isAi:!1,defaultOrder:50,defaultEnabled:!0},{id:"worst-campaigns",name:"Underperforming Campaigns",description:"Bottom campaigns by ROAS.",appId:"insights",isAi:!1,defaultOrder:51,defaultEnabled:!0},{id:"worst-ad-groups",name:"Underperforming Ad Groups",description:"Weakest ad groups by ROAS.",appId:"insights",isAi:!1,defaultOrder:52,defaultEnabled:!0},{id:"worst-ads",name:"Underperforming Ads",description:"Worst ads by spend.",appId:"creatives",isAi:!1,defaultOrder:53,defaultEnabled:!0},{id:"worst-angles",name:"Underperforming Angles",description:"Angles / messages losing traction.",appId:"marketing-angles",isAi:!1,defaultOrder:54,defaultEnabled:!0},{id:"pixel-insights",name:"Pixel Insights",description:"First-party last-click attribution per source.",appId:"power-pixel",isAi:!1,defaultOrder:70,defaultEnabled:!0},{id:"channel-spend",name:"Channel Spend",description:"Spend per channel with WoW trend pills.",appId:"insights",isAi:!1,defaultOrder:80,defaultEnabled:!0},{id:"recommendations",name:"Recommendations",description:"Pending AI recommendations ranked by priority.",appId:"recommendations",isAi:!1,defaultOrder:90,defaultEnabled:!0},{id:"experiments",name:"Experiments",description:"Active geo-tests with status + lift.",appId:"geo-testing",isAi:!1,defaultOrder:100,defaultEnabled:!0},{id:"ai-visibility",name:"AI Visibility",description:"Brand visibility score across ChatGPT/Claude/Gemini.",appId:"ai-visibility",isAi:!1,defaultOrder:110,defaultEnabled:!0},{id:"trends",name:"Trending Keywords",description:"Top trending keywords with change %.",appId:"trends",isAi:!1,defaultOrder:120,defaultEnabled:!0},{id:"mmm",name:"MMM Insights",description:"Channel ROI + mROI from the Marketing Mix Model.",appId:"marketing-mix-modeling",isAi:!1,defaultOrder:130,defaultEnabled:!0},{id:"ai-deep-analysis",name:"AI Deep Analysis",description:"Longer-form AI interpretation of patterns / anomalies.",appId:null,isAi:!0,defaultOrder:140,defaultEnabled:!1}],i=new Map(a.map(e=>[e.id,e]));function c(e){return i.get(e)}function o(e){return null===e?a:a.filter(n=>null===n.appId||e.has(n.appId))}}}]);

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.