PageSourceSearch

https://everlange.com/assets/CompetitorsWatchlist-DEiD7Mtt.js

js everlange.com collected 2026-09-25 23:07:09 UTC 9,157 bytes, 2 lines download raw bytes

1const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-f6cR2jUt.js","assets/vendor-motion-Dg40ukRu.js","assets/vendor-charts-BtrAPO2T.js","assets/vendor-pdf-BVgqk7dV.js","assets/index-CzcIPi-0.css"])))=>i.map(i=>d[i]);
2import{_ as w}from"./vendor-pdf-BVgqk7dV.js";import{a as i,j as e}from"./vendor-motion-Dg40ukRu.js";import{u as J,s as U,l as V,n as G}from"./index-f6cR2jUt.js";import{P as H}from"./plus-BL00TCCS.js";import{T as K}from"./trash-2-B5tMRo5v.js";import{M as L}from"./minus-bXHMc7F0.js";import{T as Q}from"./trending-down-B_S5F6S7.js";import"./vendor-charts-BtrAPO2T.js";function $(l){return l>=70?"#34D399":l>=40?"#FBBF24":"#F87171"}function ie({userPlan:l,onNavigate:O}){const{t:s}=J(),j=l==="pro"||l==="enterprise"||l==="starter",[m,W]=i.useState(null),[S,B]=i.useState(new Map),[I,y]=i.useState(!0),[v,N]=i.useState(!1),[p,T]=i.useState(""),[h,C]=i.useState(""),[E,D]=i.useState(""),[P,A]=i.useState(!1),[z,u]=i.useState(null),b=i.useCallback(async()=>{y(!0);try{const{getValidToken:t}=await w(async()=>{const{getValidToken:d}=await import("./index-f6cR2jUt.js").then(f=>f.ap);return{getValidToken:d}},__vite__mapDeps([0,1,2,3,4])),r=await t();if(!r)return;const a=await fetch("/api/competitors",{headers:{Authorization:`Bearer ${r}`}});if(a.status===403){W([]);return}const c=(await a.json()).competitors||[];W(c);const n=new Set;if(c.forEach(d=>{n.add(d.owner_domain),n.add(d.competitor_domain)}),n.size>0){const{getSupabase:d}=await w(async()=>{const{getSupabase:_}=await import("./index-f6cR2jUt.js").then(x=>x.ao);return{getSupabase:_}},__vite__mapDeps([0,1,2,3,4])),f=d();if(f){const{data:_}=await f.from("aeo_dna_audits").select("domain, overall_score, category_scores, created_at").in("domain",Array.from(n)).eq("status","completed").gt("overall_score",0).order("created_at",{ascending:!1}),x=new Map;for(const g of _||[]){const k=g.domain;if(x.has(k))continue;const F=g.category_scores?._dualScores,q=Math.round(F?.onSite??g.overall_score??0);x.set(k,{domain:k,score:q,date:g.created_at})}B(x)}}}catch(t){console.error("[CompetitorsWatchlist]",t)}finally{y(!1)}},[]);i.useEffect(()=>{j?b():y(!1)},[j,b]);const M=async()=>{if(!(!p.trim()||!h.trim())){A(!0),u(null);try{const{getValidToken:t}=await w(async()=>{const{getValidToken:c}=await import("./index-f6cR2jUt.js").then(n=>n.ap);return{getValidToken:c}},__vite__mapDeps([0,1,2,3,4])),r=await t();if(!r)return;const a=await fetch("/api/competitors",{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${r}`},body:JSON.stringify({ownerDomain:p,competitorDomain:h,label:E})}),o=await a.json();if(!a.ok){u(o.error||s("competitorsWatch.error"));return}T(""),C(""),D(""),N(!1),b()}catch(t){u(t instanceof Error?t.message:s("competitorsWatch.error"))}finally{A(!1)}}},R=async t=>{try{const{getValidToken:r}=await w(async()=>{const{getValidToken:o}=await import("./index-f6cR2jUt.js").then(c=>c.ap);return{getValidToken:o}},__vite__mapDeps([0,1,2,3,4])),a=await r();if(!a)return;await fetch(`/api/competitors?id=${t}`,{method:"DELETE",headers:{Authorization:`Bearer ${a}`}}),b()}catch{}};return j?e.jsxs("div",{className:"bg-white/[0.03] border border-white/[0.06] rounded-2xl p-4 sm:p-6",children:[e.jsxs("div",{className:"flex items-center justify-between mb-4",children:[e.jsxs("h3",{className:"text-base font-bold text-white flex items-center gap-2",children:[e.jsx(V,{size:18,className:"text-[#c8f135]"})," ",s("competitorsWatch.title")]}),!v&&m&&m.length<5&&e.jsxs("button",{onClick:()=>N(!0),className:"text-xs font-semibold text-[#c8f135] border border-[#c8f135]/30 hover:bg-[#c8f135]/10 px-3 py-1.5 rounded-full transition-colors flex items-center gap-1.5",children:[e.jsx(H,{size:12})," ",s("competitorsWatch.add")]})]}),e.jsx("p",{className:"text-xs text-gray-400 mb-4",children:s("competitorsWatch.description")}),z&&e.jsx("div",{className:"text-xs text-red-400 mb-3",children:z}),v&&e.jsxs("div",{className:"mb-4 p-4 bg-white/[0.02] border border-white/[0.06] rounded-xl space-y-3",children:[e.jsxs("div",{className:"grid sm:grid-cols-2 gap-3",children:[e.jsxs("div",{children:[e.jsx("label",{className:"text-[10px] uppercase tracking-wider text-gray-500 font-semibold mb-1 block",children:s("competitorsWatch.yourDomain")}),e.jsx("input",{type:"text",value:p,onChange:t=>
2T(t.target.value),placeholder:s("competitorsWatch.yourDomainPlaceholder"),className:"w-full bg-white/[0.03] border border-white/[0.08] rounded-lg px-3 py-2 text-sm text-white placeholder-gray-600 focus:border-[#c8f135]/40 outline-none"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"text-[10px] uppercase tracking-wider text-gray-500 font-semibold mb-1 block",children:s("competitorsWatch.competitor")}),e.jsx("input",{type:"text",value:h,onChange:t=>C(t.target.value),placeholder:s("competitorsWatch.competitorPlaceholder"),className:"w-full bg-white/[0.03] border border-white/[0.08] rounded-lg px-3 py-2 text-sm text-white placeholder-gray-600 focus:border-[#c8f135]/40 outline-none"})]})]}),e.jsxs("div",{children:[e.jsx("label",{className:"text-[10px] uppercase tracking-wider text-gray-500 font-semibold mb-1 block",children:s("competitorsWatch.labelOptional")}),e.jsx("input",{type:"text",value:E,onChange:t=>D(t.target.value),placeholder:s("competitorsWatch.labelPlaceholder"),className:"w-full bg-white/[0.03] border border-white/[0.08] rounded-lg px-3 py-2 text-sm text-white placeholder-gray-600 focus:border-[#c8f135]/40 outline-none"})]}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx("button",{onClick:M,disabled:P||!p.trim()||!h.trim(),className:"flex-1 px-4 py-2 rounded-lg text-xs font-semibold text-black bg-[#c8f135] hover:bg-[#d4f55a] disabled:opacity-50 transition-colors",children:s(P?"competitorsWatch.adding":"competitorsWatch.add")}),e.jsx("button",{onClick:()=>{N(!1),u(null)},className:"px-4 py-2 rounded-lg text-xs font-medium text-white border border-white/[0.1] hover:bg-white/[0.04] transition-colors",children:s("competitorsWatch.cancel")})]})]}),I?e.jsx("div",{className:"py-4 text-center text-xs text-gray-500",children:s("competitorsWatch.loading")}):m&&m.length>0?e.jsx("div",{className:"space-y-2",children:m.map(t=>{const r=S.get(t.owner_domain),a=S.get(t.competitor_domain),o=r&&a?r.score-a.score:null,c=o===null?L:o>0?G:o<0?Q:L,n=o===null||o===0?"text-gray-500":o>0?"text-emerald-400":"text-red-400";return e.jsxs("div",{className:"p-3 bg-white/[0.02] border border-white/[0.04] rounded-lg",children:[e.jsxs("div",{className:"flex items-center justify-between gap-3 mb-2",children:[e.jsxs("div",{className:"min-w-0 flex-1",children:[e.jsx("div",{className:"text-sm font-semibold text-white truncate",children:t.label||t.competitor_domain}),t.label&&e.jsx("div",{className:"text-[10px] text-gray-500 truncate",children:t.competitor_domain})]}),e.jsx("button",{onClick:()=>R(t.id),className:"p-1.5 text-gray-500 hover:text-red-400 rounded-md hover:bg-red-500/10 transition-colors shrink-0","aria-label":s("competitorsWatch.delete"),children:e.jsx(K,{size:12})})]}),e.jsxs("div",{className:"flex items-center gap-3 text-xs",children:[e.jsxs("div",{className:"flex-1",children:[e.jsx("div",{className:"text-[9px] text-gray-500 uppercase tracking-wider",children:s("competitorsWatch.you",{domain:t.owner_domain})}),e.jsx("div",{className:"font-bold",style:{color:r?$(r.score):"#6b7280"},children:r?`${r.score}/100`:s("competitorsWatch.notAudited")})]}),e.jsxs("div",{className:`flex items-center gap-1 font-semibold ${n}`,children:[e.jsx(c,{size:12}),o!==null?`${o>0?"+":""}${o}`:""]}),e.jsxs("div",{className:"flex-1 text-right",children:[e.jsx("div",{className:"text-[9px] text-gray-500 uppercase tracking-wider",children:s("competitorsWatch.competitor")}),e.jsx("div",{className:"font-bold",style:{color:a?$(a.score):"#6b7280"},children:a?`${a.score}/100`:s("competitorsWatch.notAudited")})]})]})]},t.id)})}):v?null:e.jsxs("div",{className:"py-6 text-center text-xs text-gray-500 border border-dashed border-white/[0.06] rounded-lg",children:[s("competitorsWatch.emptyStatePrefix")," ",e.jsx("span",{className:"text-[#c8f135]",children:s("competitorsWatch.add")}),"."]})]}):e.jsxs("div",{className:"bg-white/[0.03] border border-white/[0.06] rounded-2xl p-4 sm:p-6",children:[e.jsxs("div",{className:"flex items-start gap-3 mb-4",children:[e.jsx("div",{className:"p-2 rounded-xl bg-white/[0.06] border border-white/[0.08] text-white/60 shrink-0",children:e.jsx(U,{size:18})}),e.jsxs("div",{className:"flex-1",children:[e.jsxs("h3",{className:"font-bold text-white text-base mb-1 flex items-center gap-2",children:[e.jsx(V,{size:16,className:"text-[#c8f135]"})," ",s("competitorsWatch.title"),e.jsx("span",{className:"text-[10px] font-bold uppercase tracking-wider px-2 py-0.5 rounded-full bg-[#c8f135]/10 text-[#c8f135] border border-[#c8f135]/30",children:"Pro"})]}),e.jsx("p",{className:"text-xs text-gray-400",children:s("competitorsWatch.lockDescription")})]})]}),e.jsx("button",{onClick:()=>
2O("api-dashboard"),className:"text-xs font-semibold text-black bg-[#c8f135] hover:bg-[#d4f55a] px-4 py-2 rounded-full transition-colors",children:s("competitorsWatch.upgradeCta")})]})}export{ie 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.