PageSourceSearch

https://rankroot.ai/assets/PerformancePage-DQFeC3U3.js

js rankroot.ai collected 2026-10-05 12:40:39 UTC 15,741 bytes, 1 lines download raw bytes

1import{u as F,a as w,j as e}from"./vendor-query-KIqPKL62.js";import{P as E}from"./PageHeader-Diazf5ms.js";import{d as c,i as l}from"./index-Kn8_sQ1R.js";import{u as C}from"./useDashboardTranslation-BhtYSrIf.js";import{u as O}from"./useDocumentMeta-BaLm5S8t.js";import{s as K}from"./seo-BGRx7oyO.js";import{T as m,E as I,F as q,q as Y,L as B,ay as v}from"./vendor-icons-ay6WqPhI.js";import{R as x,A as _,C as h,X as p,Y as j,T as g,b,B as G,d as Q}from"./vendor-charts-DHTMaBQ6.js";import{u as V}from"./vendor-react-DHuYjmqr.js";import"./vendor-motion-0x81uQcl.js";import"./vendor-posthog-CxGLPvq9.js";function W(i,n){return F({queryKey:["performance-dashboard",i,n],queryFn:()=>K.getPerformanceDashboard({days:i,website:n}).then(a=>a.data),staleTime:6e4})}const k={listicle:"Listicle",how_to:"Poradnik",checklist:"Checklist",qa:"Q&A",versus:"Porównanie",roundup:"Roundup",ultimate_guide:"Przewodnik",news:"News",youtube_article:"YouTube",interactive_tool:"Narzędzie SEO",other:"Inne"},S={how_to:"#00ff41",listicle:"#06b6d4",ultimate_guide:"#a855f7",checklist:"#f59e0b",versus:"#ec4899",qa:"#6366f1",roundup:"#14b8a6",news:"#f97316",youtube_article:"#ef4444",interactive_tool:"#8b5cf6",other:"#6b7280"},M={draft:"bg-gray-500",generating:"bg-terminal-amber",review:"bg-blue-500",fact_checking:"bg-purple-500",approved:"bg-cyan-500",scheduled:"bg-indigo-500",published:"bg-terminal-green",failed:"bg-red-500"};function X(){const i=C();return{draft:i.common.statusDraft,generating:i.common.statusGenerating,review:i.common.statusReview,fact_checking:i.common.statusFactChecking,approved:i.common.statusApproved,scheduled:i.common.statusScheduled,published:i.common.statusPublished,failed:i.common.statusFailed}}function Z(){return e.jsx(l,{children:e.jsxs("div",{className:"animate-pulse",children:[e.jsx("div",{className:"h-3 bg-terminal-border rounded w-24 mb-3"}),e.jsx("div",{className:"h-8 bg-terminal-border rounded w-20 mb-2"}),e.jsx("div",{className:"h-3 bg-terminal-border rounded w-16"})]})})}function d(){return e.jsx(l,{children:e.jsxs("div",{className:"animate-pulse",children:[e.jsx("div",{className:"h-4 bg-terminal-border rounded w-32 mb-4"}),e.jsx("div",{className:"h-48 bg-terminal-border/50 rounded"})]})})}function u({value:i}){if(i===0)return e.jsx("span",{className:"text-terminal-dim text-xs",children:"-"});const n=i>0;return e.jsxs("span",{className:c("text-xs font-medium flex items-center gap-0.5",n?"text-terminal-green":"text-red-400"),children:[n?e.jsx(m,{className:"w-3 h-3"}):e.jsx(v,{className:"w-3 h-3"}),n?"+":"",i,"%"]})}function ne(){const{lang:i}=V(),a=C().performance;O(a.title,a.description);const P=X(),[f,z]=w.useState(30),[N,L]=w.useState(),{data:s,isLoading:o}=W(f,N),A=[{value:7,label:a.timeRange7d},{value:30,label:a.timeRange30d},{value:90,label:a.timeRange90d}];return e.jsxs("div",{className:"space-y-6",children:[e.jsxs("div",{className:"flex flex-col sm:flex-row sm:items-center sm:justify-between gap-4",children:[e.jsx(E,{title:a.title,description:a.description}),e.jsxs("div",{className:"flex items-center gap-2",children:[s&&s.websites.length>1&&e.jsxs("select",{value:N||"",onChange:t=>L(t.target.value||void 0),className:"bg-terminal-card border border-terminal-border rounded-lg px-3 py-2 text-sm text-terminal-text h-10",children:[e.jsx("option",{value:"",children:a.allWebsites}),s.websites.map(t=>e.jsx("option",{value:t.id,children:t.domain},t.id))]}),e.jsx("div",{className:"flex rounded-lg border border-terminal-border overflow-hidden",children:A.map(t=>e.jsx("button",{onClick:()=>z(t.value),className:c("px-3 py-2 text-sm transition-colors cursor-pointer",f===t.value?"bg-terminal-green/10 text-terminal-green":"text-terminal-dim hover:bg-terminal-bg/80 hover:text-terminal-text"),children:t.label},t.value))})]})]}),o?e.jsx("div",{className:"grid grid-cols-2 lg:grid-cols-4 gap-4",children:[...Array(4)].map((t,r)=>e.jsx(Z,{},r))}):s?e.jsxs("div",{className:c("grid grid-cols-2 gap-4",s.overview.has_blogs?"lg:grid-cols-4":"lg:grid-cols-3"),children:[e.jsxs(l,{children:[e.jsxs("div",{className:"flex items-center gap-2 text-terminal-dim text-sm mb-1",children:[e.jsx(m,{className:"w-4 h-4 text-terminal-green"}),a.totalClicks]}),e.jsx("div",{className:"text-2xl font-bold text-terminal-green",children:s.overview.total_clicks.toLocaleStr
1ing()}),e.jsx(u,{value:s.overview.clicks_change})]}),s.overview.has_blogs&&e.jsxs(l,{children:[e.jsxs("div",{className:"flex items-center gap-2 text-terminal-dim text-sm mb-1",children:[e.jsx(I,{className:"w-4 h-4 text-terminal-cyan"}),a.blogViews]}),e.jsx("div",{className:"text-2xl font-bold text-terminal-cyan",children:s.overview.total_views.toLocaleString()}),e.jsx(u,{value:s.overview.views_change})]}),e.jsxs(l,{children:[e.jsxs("div",{className:"flex items-center gap-2 text-terminal-dim text-sm mb-1",children:[e.jsx(q,{className:"w-4 h-4 text-terminal-amber"}),a.articlesPublished]}),e.jsx("div",{className:"text-2xl font-bold text-terminal-amber",children:s.overview.articles_published}),e.jsx(u,{value:s.overview.articles_change})]}),e.jsxs(l,{children:[e.jsxs("div",{className:"flex items-center gap-2 text-terminal-dim text-sm mb-1",children:[e.jsx(Y,{className:"w-4 h-4 text-purple-400"}),a.keywordsTracked]}),e.jsx("div",{className:"text-2xl font-bold text-purple-400",children:s.overview.keywords_tracked}),e.jsxs("div",{className:"flex items-center gap-2 text-xs mt-0.5",children:[s.overview.positions_improved>0&&e.jsxs("span",{className:"text-terminal-green",children:[s.overview.positions_improved," ",a.improved]}),s.overview.positions_declined>0&&e.jsxs("span",{className:"text-red-400",children:[s.overview.positions_declined," ",a.declined]})]})]})]}):null,o?e.jsx(d,{}):s&&e.jsx(l,{title:a.trafficChart,children:s.overview.has_gsc?s.traffic_chart.length===0?e.jsx("p",{className:"text-terminal-dim text-sm py-8 text-center",children:a.connectGsc}):e.jsx(x,{width:"100%",height:260,children:e.jsxs(_,{data:s.traffic_chart,children:[e.jsx(h,{strokeDasharray:"3 3",stroke:"rgba(255,255,255,0.05)"}),e.jsx(p,{dataKey:"date",tick:{fill:"#6b7280",fontSize:11},tickFormatter:t=>t.slice(5)}),e.jsx(j,{tick:{fill:"#6b7280",fontSize:11}}),e.jsx(g,{contentStyle:{backgroundColor:"#1a1a2e",border:"1px solid #333",borderRadius:8,fontSize:12},labelStyle:{color:"#9ca3af"}}),e.jsx(b,{type:"monotone",dataKey:"clicks",stroke:"#00ff41",fill:"#00ff41",fillOpacity:.1,name:a.clicks}),e.jsx(b,{type:"monotone",dataKey:"impressions",stroke:"#06b6d4",fill:"#06b6d4",fillOpacity:.05,name:a.impressions})]})}):e.jsx("p",{className:"text-terminal-dim text-sm py-8 text-center",children:a.connectGsc})}),o?null:s&&s.overview.has_blogs&&e.jsx(l,{title:a.viewsChart,children:s.views_chart.length===0?e.jsx("p",{className:"text-terminal-dim text-sm py-8 text-center",children:a.noViews}):e.jsx(x,{width:"100%",height:220,children:e.jsxs(_,{data:s.views_chart,children:[e.jsx(h,{strokeDasharray:"3 3",stroke:"rgba(255,255,255,0.05)"}),e.jsx(p,{dataKey:"date",tick:{fill:"#6b7280",fontSize:11},tickFormatter:t=>t.slice(5)}),e.jsx(j,{tick:{fill:"#6b7280",fontSize:11}}),e.jsx(g,{contentStyle:{backgroundColor:"#1a1a2e",border:"1px solid #333",borderRadius:8,fontSize:12},labelStyle:{color:"#9ca3af"}}),e.jsx(b,{type:"monotone",dataKey:"views",stroke:"#06b6d4",fill:"#06b6d4",fillOpacity:.1,name:a.blogViews})]})})}),o?e.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-4",children:[e.jsx(d,{}),e.jsx(d,{})]}):s&&e.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-4",children:[e.jsx(l,{title:a.contentVelocity,children:s.content_velocity.chart.length===0?e.jsx("p",{className:"text-terminal-dim text-sm py-8 text-center",children:a.noArticles}):e.jsxs(e.Fragment,{children:[e.jsx(x,{width:"100%",height:200,children:e.jsxs(G,{data:s.content_velocity.chart,children:[e.jsx(h,{strokeDasharray:"3 3",stroke:"rgba(255,255,255,0.05)"}),e.jsx(p,{dataKey:"date",tick:{fill:"#6b7280",fontSize:11},tickFormatter:t=>t.slice(5)}),e.jsx(j,{tick:{fill:"#6b7280",fontSize:11},allowDecimals:!1}),e.jsx(g,{contentStyle:{backgroundColor:"#1a1a2e",border:"1px solid #333",borderRadius:8,fontSize:12},labelStyle:{color:"#9ca3af"},formatter:(t,r)=>[t,k[r]||r]}),s.content_velocity.types.map(t=>e.jsx(Q,{dataKey:t,stackId:"articles",fill:S[t]||"#6b7280",name:t},t))]})}),e.jsx("div",{className:"flex flex-wrap gap-2 mt-3",children:Object.entries(s.content_velocity.by_type).sort(([,t],[,r])=>r-t).map(([t,r])=>e.jsxs("span",{className:"inline-flex items-center gap-1.5 px-2.5 py-1 rounded-md text-xs bg-terminal-border/50 text-terminal-text",children:[e.jsx("span",{className:"w-2 h-2 rounded-full shrink-0",style:{backgroundColor:S[t]||"#6b7280"}}),k[t]||t,": ",r]},t))}),e.jsxs("div",{className:"flex items-center gap-4 mt-3 text-xs text-terminal-dim",children:[e.jsxs("span",{children:[s.content_velocity.total_words.toLocaleStr
1ing()," ",i==="pl"?"słów łącznie":i==="de"?"Wörter insgesamt":"words total"]}),s.content_velocity.backlinks_total>0&&e.jsxs("span",{className:"inline-flex items-center gap-1 text-terminal-cyan",children:[e.jsx(B,{className:"w-3 h-3"}),s.content_velocity.backlinks_total," ",i==="pl"?"backlinków":"backlinks",s.content_velocity.backlinks_period>0&&e.jsxs("span",{className:"text-terminal-green",children:["(+",s.content_velocity.backlinks_period,")"]})]})]})]})}),e.jsx(l,{title:a.contentPipeline,children:Object.keys(s.pipeline).length===0?e.jsx("p",{className:"text-terminal-dim text-sm py-8 text-center",children:a.noArticles}):e.jsx("div",{className:"space-y-3",children:Object.entries(s.pipeline).map(([t,r])=>{const y=Object.values(s.pipeline).reduce((R,T)=>R+T,0),D=y>0?Math.round(r/y*100):0;return e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center justify-between text-sm mb-1",children:[e.jsx("span",{className:"text-terminal-text",children:P[t]||t}),e.jsx("span",{className:"text-terminal-dim",children:r})]}),e.jsx("div",{className:"h-2 bg-terminal-border/30 rounded-full overflow-hidden",children:e.jsx("div",{className:c("h-full rounded-full",M[t]||"bg-gray-500"),style:{width:`${D}%`}})})]},t)})})})]}),o?e.jsx(d,{}):s&&e.jsx(l,{title:a.positionsSummary,children:s.positions.tracked===0?e.jsx("p",{className:"text-terminal-dim text-sm py-8 text-center",children:a.noPositions}):e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"flex items-center gap-4 mb-4 text-sm flex-wrap",children:[e.jsxs("span",{className:"text-terminal-green font-medium",children:[s.positions.improved," ",a.improved]}),e.jsxs("span",{className:"text-red-400 font-medium",children:[s.positions.declined," ",a.declined]}),e.jsxs("span",{className:"text-terminal-dim",children:[s.positions.unchanged," ",a.unchanged]}),s.positions.avg_position>0&&e.jsxs("span",{className:"text-terminal-dim ml-auto",children:[i==="pl"?"Średnia pozycja":"Avg position",": ",e.jsx("span",{className:"text-terminal-text font-medium",children:s.positions.avg_position})]})]}),s.positions.top_movers.length>0&&e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"text-xs text-terminal-dim mb-2 uppercase tracking-wider",children:a.topMovers}),e.jsx("div",{className:"overflow-x-auto mb-4",children:e.jsxs("table",{className:"w-full text-sm",children:[e.jsx("thead",{children:e.jsxs("tr",{className:"border-b border-terminal-border text-terminal-dim text-xs uppercase",children:[e.jsx("th",{className:"text-left py-2 pr-4",children:"Keyword"}),e.jsx("th",{className:"text-center py-2 px-2",children:i==="pl"?"Pozycja":"Position"}),e.jsx("th",{className:"text-center py-2 px-2",children:i==="pl"?"Zmiana":"Change"}),e.jsx("th",{className:"text-left py-2 pl-4",children:i==="pl"?"Domena":"Domain"})]})}),e.jsx("tbody",{children:s.positions.top_movers.map((t,r)=>e.jsxs("tr",{className:"border-b border-terminal-border/50",children:[e.jsx("td",{className:"py-2 pr-4 text-terminal-text",children:t.keyword}),e.jsx("td",{className:"py-2 px-2 text-center",children:t.position}),e.jsxs("td",{className:c("py-2 px-2 text-center font-medium",t.change>0?"text-terminal-green":"text-red-400"),children:[t.change>0?e.jsx(m,{className:"w-3 h-3 inline mr-1"}):e.jsx(v,{className:"w-3 h-3 inline mr-1"}),t.change>0?"+":"",t.change]}),e.jsx("td",{className:"py-2 pl-4 text-terminal-dim",children:t.domain})]},r))})]})})]}),s.positions.all_keywords&&s.positions.all_keywords.length>0&&e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"text-xs text-terminal-dim mb-2 mt-4 pt-4 border-t border-terminal-border uppercase tracking-wider",children:[i==="pl"?"Wszystkie śledzone słowa kluczowe":i==="de"?"Alle verfolgten Keywords":"All tracked keywords"," (",s.positions.all_keywords.length,")"]}),e.jsx("div",{className:"overflow-x-auto",children:e.jsxs("table",{className:"w-full text-sm",children:[e.jsx("thead",{children:e.jsxs("tr",{className:"border-b border-terminal-border text-terminal-dim text-xs",children:[e.jsx("th",{className:"text-left py-2 pr-4 font-medium",children:"Keyword"}),e.jsx("th",{className:"text-center py-2 px-2 font-medium",children:i==="pl"?"Pozycja":"Position"}),e.jsx("th",{className:"text-center py-2 px-2 font-medium",children:i==="pl"?"Poprzednia":"Previous"}),e.jsx("th",{className:"text-center py-2 px-2 font-medium",children:i==="pl"?"Zmiana":"Change"}),e.jsx("th",{className:"text-left py-2 px-2 font-medium",children:i==="pl"?"Domena":"Domain"}),e.jsx("th",{className:"text-right py-2 pl-2 font-medium",children:i==="pl"?"Sprawdzono":"Checked"})]})}),e.jsx("tbody",{children:s.positions.all_keywords.map((t,r)=>e.jsxs("tr",{className:"border-b border-terminal-border/30",children:[e.jsx("td",{className:"py-2 pr-4 text-terminal-text",children:t.keyword}),e.jsx("td",{className:"py-2 px-2 text-center",children:t.position?e.jsx("span",{className:c("font-medium",t.position<=3?"text-terminal-green":t.position<=10?"text-terminal-cyan":t.position<=20?"text-terminal-amber":"text-terminal-dim"),children:t.position}):e.jsx("span",{className:"text-terminal-dim",children:"-"})}),e.jsx("td",{className:"py-2 px-2 text-center text-terminal-dim",children:t.previous_position||"-"}),e.jsx("td",{className:"py-2 px-2 text-center",children:t.change!==0?e.jsxs("span",{className:c("font-medium",t.change>0?"text-terminal-green":"text-red-400"),children:[t.change>0?e.jsx(m,{className:"w-3 h-3 inline mr-0.5"}):e.jsx(v,{className:"w-3 h-3 inline mr-0.5"}),t.change>0?"+":"",t.change]}):e.jsx("span",{className:"text-terminal-dim",children:"-"})}),e.jsx("td",{className:"py-2 px-2 text-terminal-dim",children:t.domain}),e.jsx("td",{className:"py-2 pl-2 text-right text-terminal-dim text-xs",children:t.checked_at?new Date(t.checked_at).toLocaleDateString(i):"-"})]},r))})]})})]})]})}),o?e.jsx(d,{}):s&&s.overview.has_gsc&&s.top_queries.length>0&&e.jsx(l,{title:a.topQueries,children:e.jsx("div",{className:"overflow-x-auto",children:e.jsxs("table",{className:"w-full text-sm",children:[e.jsx("thead",{children:e.jsxs("tr",{className:"border-b border-terminal-border text-terminal-dim text-xs uppercase",children:[e.jsx("th",{className:"text-left py-2 pr-4",children:"Query"}),e.jsx("th",{className:"text-right py-2 px-2",children:a.clicks}),e.jsx("th",{className:"text-right py-2 px-2",children:a.impressions}),e.jsx("th",{className:"text-right py-2 pl-2",children:"CTR"})]})}),e.jsx("tbody",{children:s.top_queries.map((t,r)=>e.jsxs("tr",{className:"border-b border-terminal-border/50",children:[e.jsx("td",{className:"py-2 pr-4 text-terminal-text",children:t.query}),e.jsx("td",{className:"py-2 px-2 text-right text-terminal-green",children:t.clicks}),e.jsx("td",{className:"py-2 px-2 text-right text-terminal-dim",children:t.impressions.toLocaleStr
1ing()}),e.jsxs("td",{className:"py-2 pl-2 text-right text-terminal-cyan",children:[(t.ctr*100).toFixed(1),"%"]})]},r))})]})})})]})}export{ne as PerformancePage};

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.