1import{r as c,j as i}from"./vendor-BMTqjksT.js";import{B as r,t as m,C as o,f as g,v as j,i as k,c as A,d as L,e as y}from"./index-C0VezhcQ.js";import"./trpc-c2OaEmLI.js";import"./d3-ngNJxV2x.js";const N={resource_page:"Resource Page",broken_link:"Broken Link",guest_post:"Guest Post",skyscraper:"Skyscraper",haro:"HARO/Connectively",unlinked_mention:"Unlinked Mention",scholarship:"Scholarship",local_citation:"Local Citation"},w={high:"bg-red-100 text-red-800",medium:"bg-yellow-100 text-yellow-800",low:"bg-gray-100 text-gray-800"},P={discovered:"bg-blue-100 text-blue-800",qualified:"bg-purple-100 text-purple-800",pitched:"bg-orange-100 text-orange-800",replied:"bg-green-100 text-green-800",link_acquired:"bg-emerald-100 text-emerald-800",rejected:"bg-red-100 text-red-800",dead:"bg-gray-100 text-gray-500"};function Q(){const[t,s]=c.useState("prospects"),[a,u]=c.useState("all"),[x,p]=c.useState("all"),[l,d]=c.useState("all");return i.jsxs("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:48",className:"p-6 max-w-7xl mx-auto space-y-6",children:[i.jsx("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:49",className:"flex items-center justify-between",children:i.jsxs("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:50",children:[i.jsx("h1",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:51",className:"text-2xl font-bold",children:"Link Building Agent"}),i.jsx("p",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:52",className:"text-muted-foreground",children:"Discover prospects, generate pitches, and track link acquisition"})]})}),i.jsxs("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:57",className:"flex gap-2 border-b pb-2",children:[i.jsx(r,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:58",variant:t==="prospects"?"default":"ghost",size:"sm",onClick:()=>s("prospects"),children:"Prospects"}),i.jsx(r,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:59",variant:t==="senders"?"default":"ghost",size:"sm",onClick:()=>s("senders"),children:"Sender Profiles"}),i.jsx(r,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:60",variant:t==="agent"?"default":"ghost",size:"sm",onClick:()=>s("agent"),children:"Agent Control"})]}),t==="prospects"&&i.jsx(C,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:64",strategyFilter:a,setStrategyFilter:u,priorityFilter:x,setPriorityFilter:p,statusFilter:l,setStatusFilter:d}),t==="senders"&&i.jsx(D,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:70"}),t==="agent"&&i.jsx(R,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:71"})]})}function C({strategyFilter:t,setStrategyFilter:s,priorityFilter:a,setPriorityFilter:u,statusFilter:x,setStatusFilter:p}){const l=m.linkBuilding.listProspects.useQuery({strategy:t==="all"?void 0:t,priorityTier:a==="all"?void 0:a,status:x==="all"?void 0:x,limit:50,offset:0}),d=m.linkBuilding.getStats.useQuery();return i.jsxs("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:93",className:"space-y-4",children:[d.data&&i.jsxs("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:95",className:"grid grid-cols-2 md:grid-cols-5 gap-3",children:[i.jsx(o,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:96",children:i.jsxs(g,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:96",className:"p-4 text-center",children:[i.jsx("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:96",className:"text-2xl font-bold",children:d.data.totalProspects}),i.jsx("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:96",className:"text-xs text-muted-foreground",children:"Total Prospects"})]})}),i.jsx(o,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:97",children:i.jsxs(g,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:97",className:"p-4 text-center",children:[i.jsx("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:97",className:"text-2xl font-bold text-purple-600",children:d.data.outreachReady}),i.jsx("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:97",className:"text-xs text-muted-foreground",children:"Qualified"})]})}),i.jsx(o,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:98",children:i.jsxs(g,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:98",className:"p-4 text-center",children:[i.jsx("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:98",className:"text-2xl font-bold text-orange-600",children:d.data.contacted}),i.jsx("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:98",className:"text-xs text-muted-foreground",children:"Contacted"})]})}),i.jsx(o,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:99",children:i.jsxs(g,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:99",className:"p-4 text-center",children:[i.jsx("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:99",className:"text-2xl font-bold text-green-600",children:d.data.linksPlaced}),i.jsx("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:99",className:"text-xs text-muted-foreground",children:"Links Acquired"})]})})]}),i.jsxs("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:104",className:"flex flex-wrap gap-3 items-center",children:[i.jsxs("select",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:105",className:"border rounded px-3 py-1.5 text-sm bg-background",value:t,onChange:e=>s(e.target.value),children:[i.jsx("option",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:106",value:"all",children:"All Strategies"}
1),Object.entries(N).map(([e,h])=>i.jsx("option",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:107",value:e,children:h},e))]}),i.jsxs("select",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:109",className:"border rounded px-3 py-1.5 text-sm bg-background",value:a,onChange:e=>u(e.target.value),children:[i.jsx("option",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:110",value:"all",children:"All Priorities"}),i.jsx("option",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:111",value:"high",children:"High"}),i.jsx("option",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:112",value:"medium",children:"Medium"}),i.jsx("option",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:113",value:"low",children:"Low"})]}),i.jsxs("select",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:115",className:"border rounded px-3 py-1.5 text-sm bg-background",value:x,onChange:e=>p(e.target.value),children:[i.jsx("option",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:116",value:"all",children:"All Statuses"}),i.jsx("option",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:117",value:"discovered",children:"Discovered"}),i.jsx("option",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:118",value:"qualified",children:"Qualified"}),i.jsx("option",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:119",value:"pitched",children:"Pitched"}),i.jsx("option",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:120",value:"replied",children:"Replied"}),i.jsx("option",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:121",value:"link_acquired",children:"Link Acquired"}),i.jsx("option",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:122",value:"rejected",children:"Rejected"}),i.jsx("option",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:123",value:"dead",children:"Dead"})]})]}),i.jsx("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:127",className:"border rounded-lg overflow-x-auto",children:i.jsxs("table",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:128",className:"w-full text-sm",children:[i.jsx("thead",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:129",className:"bg-muted/50",children:i.jsxs("tr",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:130",children:[i.jsx("th",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:131",className:"text-left p-3 font-medium",children:"Domain / URL"}),i.jsx("th",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:132",className:"text-left p-3 font-medium",children:"Strategy"}),i.jsx("th",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:133",className:"text-left p-3 font-medium",children:"Priority"}),i.jsx("th",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:134",className:"text-left p-3 font-medium",children:"DR"}),i.jsx("th",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:135",className:"text-left p-3 font-medium",children:"Status"}),i.jsx("th",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:136",className:"text-left p-3 font-medium",children:"Contact"}),i.jsx("th",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:137",className:"text-left p-3 font-medium",children:"Outreach"})]})}),i.jsxs("tbody",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:140",children:[l.isLoading&&i.jsx("tr",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:141",children:i.jsx("td",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:141",colSpan:7,className:"p-8 text-center text-muted-foreground",children:"Loading..."})}),l.data?.prospects.length===0&&i.jsx("tr",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:142",children:i.jsx("td",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:142",colSpan:7,className:"p-8 text-center text-muted-foreground",children:"No prospects found. Run the agent to discover prospects."})}),l.data?.prospects.map(e=>i.jsxs("tr",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:144",className:"border-t hover:bg-muted/30",children:[i.jsxs("td",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:145",className:"p-3",children:[i.jsx("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:146",className:"font-medium truncate max-w-[200px]",children:e.targetDomain}),i.jsx("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:147",className:"text-xs text-muted-foreground truncate max-w-[200px]",children:e.targetPageTitle||e.targetPageUrl})]}),i.jsx("td",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:149",className:"p-3",children:i.jsx(j,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:149",variant:"outline",className:"text-xs",children:N[e.strategy]||e.strategy})}),i.jsx("td",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:150",className:"p-3",children:i.jsx("span",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:150",className:`px-2 py-0.5 rounded text-xs font-medium ${w[e.priorityTier]||""}`,children:e.priorityTier||"â"})}),i.jsx("td",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:151",className:"p-3 text-center",children:e.domainRating||"â"}),i.jsx("td",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:152",className:"p-3",children:i.jsx("span",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:152",className:`px-2 py-0.5 rounded text-xs font-medium ${P[e.status]||""}`,children:e.status})}),i.jsxs("td",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:153",className:"p-3",children:[i.jsx("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:153",className:"text-xs",children:e.contactName||"â"}),i.jsx("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:153",className:"text-xs text-muted-foreground",children:e.contactEmail||""})]}),i.jsx("td",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:154",className:"p-3",children:i.jsxs(j,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:154",variant:"secondary",className:"text-xs",children:[e.outreachAttempts||0," attempts"]})})]},e.id))]})]})})]})}function D(){const t=m.linkBuilding.listSenderProfiles.useQuery(),s=m.useUtils(),a=m.linkBuilding.setDefaultSenderProfile.useMutation({onSuccess:()=>{k.success("Default sender profile updated"),s.linkBuilding.listSenderProfiles.invalidate()}}),u=m.linkBuilding.createSenderProfile.useMutation({onSuccess:()=>{k.success("Sender profile added"),s.linkBuilding.listSenderProfiles.invalidate(),l(!1)}}),x=m.linkBuilding.toggleSenderActive.useMutation({onSuccess:()=>{s.linkBuilding.listSenderProfiles.invalidate()}}),[p,l]=c.useState(!1),[d,e]=c.useState(""),[h,b]=c.useState("National Bankruptcy Advocates"),[B,f]=c.useState(""),[v,S]=c.useState("");return i.jsxs("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:185",className:"space-y-4",children:[i.jsxs(o,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:186",children:[i.jsxs(A,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:187",children:[i.jsx(L,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:188",children:"Sender Profiles"}),i.jsx(y,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:189",children:"Manage outreach sending domains. Switch the default when you've warmed up a new domain and connected it to your ESP."})]}),i.jsxs(g,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:191",children:[i.jsx("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:192",className:"space-y-3",children:t.data?.map(n=>i.jsxs("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:194",className:"flex items-center justify-between p-3 border rounded-lg",children:[i.jsxs("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:195",className:"flex items-center gap-3",children:[i.jsx("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:196",className:`w-3 h-3 rounded-full ${n.isActive?"bg-green-500":"bg-gray-300"}`}),i.jsxs("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:197",children:[i.jsxs("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:198",className:"font-medium",children:[n.fromName," <",n.email,">"]}),i.jsxs("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:199",className:"text-xs text-muted-foreground",children:["Domain: ",n.domain," ⢠Sent: ",n.totalSent," ⢠Limit: ",n.dailySendLimit,"/day",
1n.warmupComplete?" ⢠Warmup complete":" ⢠Warming up"]})]})]}),i.jsxs("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:202",className:"flex items-center gap-2",children:[n.isDefault&&i.jsx(j,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:203",className:"bg-blue-100 text-blue-800",children:"Default"}),!n.isDefault&&n.isActive&&i.jsx(r,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:204",size:"sm",variant:"outline",onClick:()=>a.mutate({id:n.id}),children:"Set Default"}),i.jsx(r,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:205",size:"sm",variant:"ghost",onClick:()=>x.mutate({id:n.id,isActive:!n.isActive}),children:n.isActive?"Deactivate":"Activate"})]})]},n.id))}),p?i.jsxs("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:214",className:"mt-4 p-4 border rounded-lg space-y-3",children:[i.jsx("h4",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:215",className:"font-medium",children:"Add New Sender Profile"}),i.jsxs("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:216",className:"grid grid-cols-2 gap-3",children:[i.jsx("input",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:217",className:"border rounded px-3 py-2 text-sm",placeholder:"Email (e.g. [email protected])",value:d,onChange:n=>{e(n.target.value),f(n.target.value.split("@")[1]||"")}}),i.jsx("input",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:218",className:"border rounded px-3 py-2 text-sm",placeholder:"From Name",value:h,onChange:n=>b(n.target.value)}),i.jsx("input",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:219",className:"border rounded px-3 py-2 text-sm",placeholder:"Domain (auto-detected)",value:B,onChange:n=>f(n.target.value)}),i.jsx("input",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:220",className:"border rounded px-3 py-2 text-sm",placeholder:"Reply-to (optional)",value:v,onChange:n=>S(n.target.value)})]}),i.jsxs("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:222",className:"flex gap-2",children:[i.jsx(r,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:223",size:"sm",onClick:()=>u.mutate({email:d,fromName:h,domain:B,replyTo:v||void 0}),disabled:!d||!B,children:"Add Profile"}),i.jsx(r,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:224",size:"sm",variant:"ghost",onClick:()=>l(!1),children:"Cancel"})]})]}):i.jsx(r,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:212",className:"mt-4",variant:"outline",onClick:()=>l(!0),children:"+ Add Sender Profile"})]})]}),i.jsxs(o,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:231",children:[i.jsx(A,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:232",children:i.jsx(L,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:232",children:"Domain Switching Instructions"})}),i.jsxs(g,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:233",className:"text-sm text-muted-foreground space-y-2",children:[i.jsx("p",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:234",children:i.jsx("strong",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:234",children:"To switch to a new outreach domain:"})}),i.jsxs("ol",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:235",className:"list-decimal pl-5 space-y-1",children:[i.jsx("li",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:236",children:"Add the new sender profile above with the warmed-up email address"}),i.jsx("li",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:237",children:"Verify the domain is authenticated in your ESP (Resend) with SPF, DKIM, and DMARC"}),i.jsx("li",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:238",children:'Click "Set Default" to make it the active sending domain'}),i.jsx("li",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:239",children:"Optionally deactivate the old domain to prevent accidental sends"})]}),i.jsx("p",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:241",className:"mt-3",children:"The send engine automatically resolves the default active sender profile at dispatch time. All new outreach emails will use the new domain immediately after switching."})]})]})]})}function R(){const t=m.linkBuilding.triggerAgent.useMutation({onSuccess:a=>{k.success(`Agent run complete: ${a.discovered} discovered, ${a.pitchesGenerated} pitches generated`)},onError:a=>{k.error(`Agent error: ${a.message}`)}}),s=m.linkBuilding.getReports.useQuery();return i.jsxs("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:258",className:"space-y-4",children:[i.jsxs(o,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:259",children:[i.jsxs(A,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:260",children:[i.jsx(L,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:261",children:"Link Building Agent"}),i.jsx(y,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:262",children:"The agent runs daily via cron. It discovers prospects using Ahrefs data, qualifies them by DR/traffic, generates personalized pitches via LLM, and queues them for outreach."})]}),i.jsxs(g,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:264",className:"space-y-4",children:[i.jsxs("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:265",className:"flex items-center gap-4",children:[i.jsx(r,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:266",onClick:()=>t.mutate(),disabled:t.isPending,children:t.isPending?"Running...":"Run Agent Now"}),i.jsx("span",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:267",className:"text-sm text-muted-foreground",children:"Manually trigger the link building agent (normally runs daily at 07:00 UTC)"})]}),i.jsxs("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:270",className:"p-3 bg-muted/50 rounded-lg text-sm space-y-1",children:[i.jsx("p",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:271",children:i.jsx("strong",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:271",children:"Agent Pipeline:"})}),i.jsxs("ol",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:272",className:"list-decimal pl-5 space-y-0.5 text-muted-foreground",children:[i.jsxs("li",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:273",children:[i.jsx("strong",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:273",children:"Discover"})," â Finds competitor backlink sources via Ahrefs API (resource pages, broken links, guest post opportunities)"]}),i.jsxs("li",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:274",children:[i.jsx("strong",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:274",children:"Qualify"})," â Filters by DR ⥠20, traffic ⥠100, relevance to bankruptcy/legal niche"]}),i.jsxs("li",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:275",children:[i.jsx("strong",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:275",children:"Pitch"})," â Generates personalized outreach emails using LLM based on the prospect's content and our relevant pages"]}),i.jsxs("li",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:276",children:[i.jsx("strong",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:276",children:"Queue"})," â Adds qualified prospects to the outreach queue for the active sender profile to dispatch"]})]})]})]})]}),i.jsxs(o,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:282",children:[i.jsx(A,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:283",children:i.jsx(L,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:283",children:"Agent Run History"})}),i.jsxs(g,{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:284",children:[s.data?.length===0&&i.jsx("p",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:285",className:"text-sm text-muted-foreground",children:'No agent runs yet. Click "Run Agent Now" to start.'}),s.data&&s.data.length>0&&i.jsx("div",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:287",className:"border rounded-lg overflow-x-auto",children:i.jsxs("table",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:288",className:"w-full text-sm",children:[i.jsx("thead",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:289",className:"bg-muted/50",children:i.jsxs("tr",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:290",children:[i.jsx("th",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:291",className:"text-left p-3 font-medium",children:"Date"}),i.jsx("th",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:292",className:"text-center p-3 font-medium",children:"Discovered"}),i.jsx("th",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:293",className:"text-center p-3 font-medium",children:"Qualified"}),i.jsx("th",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:294",className:"text-center p-3 font-medium",children:"Pitches"}),i.jsx("th",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:295",className:"text-center p-3 font-medium",children:"Sent"}),i.jsx("th",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:296",className:"text-center p-3 font-medium",children:"Links"}),i.jsx("th",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:297",className:"text-left p-3 font-medium",children:"Errors"})]})}),i.jsx("tbody",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:300",children:s.data.map(a=>i.jsxs("tr",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:302",className:"border-t",children:[i.jsx("td",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:303",className:"p-3",children:a.reportDate?new Date(a.reportDate).toLocaleDateString():"â"}),i.jsx("td",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:304",className:"p-3 text-center",children:a.prospectsDiscovered}),i.jsx("td",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:305",className:"p-3 text-center",children:a.prospectsQualified}),i.jsx("td",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:306",className:"p-3 text-center",children:a.pitchesGenerated}),i.jsx("td",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:307",className:"p-3 text-center",children:a.emailsSent}),i.jsx("td",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:308",className:"p-3 text-center",children:a.linksPlaced}),i.jsx("td",{"data-loc":"client/src/pages/admin/AdminLinkBuilding.tsx:309",className:"p-3 text-xs text-red-600 truncate max-w-[200px]",children:a.notes||"â"})]},a.id))})]})})]})]})]})}export{Q 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.