1import{a as y,r as f,j as e,C as j,I as _,f as T,A as H,y as F,z as O,P as q,m as z,c as V,b as B,L as M,n as G,q as S,D as K}from"./app-b2hICByS.js";import{u as U,s as J}from"./useIssueText-DFMbZH0R.js";import{A as W}from"./AiFixButton-lvCfDtDu.js";import{A as X}from"./AgencyUpsellDialog-CcHAfxAc.js";import{r as Y,P as Q}from"./aiMarkdown-CNVljASA.js";import{r as Z}from"./lazy-DmtcHhxC.js";function ee({auditId:t,pageId:a,checksCount:r}){const{t:s,i18n:i}=y(),[o,c]=f.useState(!1),[d,h]=f.useState(null),[b,v]=f.useState(null),[N,l]=f.useState(!1);async function m(){c(!0),v(null);try{const g=i.language.startsWith("en")?"en":"pt",k=await T.aiPageSummary(t,a,{lang:g});h({summary:k.summary,fallback:k.fallback,creditsRemaining:k.creditsRemaining})}catch(g){const k=g instanceof H?g.code:void 0;v(s(k==="ai_summary_credits"?"aiSummary.errCredits":k==="rate_limited"?"aiSummary.errRate":"aiSummary.errGeneric")),k==="ai_summary_credits"&&l(!0)}finally{c(!1)}}const w=s("aiSummary.reads",{count:r});return e.jsxs(j,{className:`mt-6 overflow-hidden p-0 ${d?"":"border-dashed"}`,children:[e.jsxs("div",{className:"p-5",children:[e.jsxs("div",{className:"flex flex-wrap items-center gap-2 text-[13px] font-bold uppercase tracking-wide text-brand-700 dark:text-brand-300",children:[e.jsx(_,{name:"sparkles",size:15})," ",s("aiSummary.title")]}),d?e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"mt-3 text-[13.5px] leading-relaxed text-slate-700 dark:text-slate-200",children:Y(d.summary)}),e.jsx("div",{className:"mt-3 text-[11px] text-slate-400",children:d.fallback?s("aiSummary.example"):s("aiSummary.creditsLeft",{count:d.creditsRemaining})})]}):e.jsxs(e.Fragment,{children:[e.jsx("p",{className:"mt-1.5 text-[13.5px] leading-relaxed text-slate-600 dark:text-slate-300",children:s("aiSummary.hint")}),e.jsxs("div",{className:"mt-3 flex flex-wrap items-center gap-x-3 gap-y-2",children:[e.jsxs("button",{type:"button",onClick:()=>void m(),disabled:o,className:"inline-flex items-center gap-1.5 rounded-lg bg-brand-600 px-3.5 py-2 text-[13px] font-semibold text-white hover:bg-brand-700 disabled:opacity-60",children:[e.jsx(_,{name:"sparkles",size:13})," ",s(o?"aiSummary.loading":"aiSummary.button")]}),e.jsx("span",{className:"text-[12.5px] text-slate-400 dark:text-slate-500",children:w})]}
1),b&&e.jsx("p",{className:"mt-2 text-[12px] text-rose-600 dark:text-rose-400",children:b})]})]}),e.jsx(X,{open:N,onClose:()=>l(!1),motivo:"creditos"})]})}const te="2026-09-16";function ae({artifacts:t,locked:a,gate:r="footer"}){const{t:s}=y(),[i,o]=f.useState(null),[c,d]=f.useState(null);if(!t.length&&!a)return null;const h=Date.now()<Date.parse(te),b=a>0&&r==="chip",v=t.map(l=>e.jsxs("div",{className:"flex items-center gap-2.5",children:[e.jsx("code",{className:"flex-none rounded-md bg-slate-100 px-1.5 py-0.5 font-mono text-[12px] text-slate-600 dark:bg-slate-800 dark:text-slate-300",children:l.target==="file"?l.path:"<head>"}),e.jsx("span",{className:"flex-none text-[12.5px] text-slate-400 dark:text-slate-500",children:s("pageDetail.artifacts.lines",{count:l.lines})}),e.jsx(F,{})]},l.id)),N=l=>{var w;const m=(w=navigator.clipboard)==null?void 0:w.writeText(l.content);m&&m.then(()=>{d(l.id),window.setTimeout(()=>d(g=>g===l.id?null:g),2e3)}).catch(()=>{})};return e.jsxs(e.Fragment,{children:[e.jsxs(j,{className:`p-0 ${h?"relative ml-2":""}`,children:[h&&e.jsx(O,{}),e.jsxs("div",{children:[e.jsxs("div",{className:`px-5 py-4 sm:px-6 ${b?"":"border-b border-slate-200 dark:border-slate-800"} ${h?"pl-12 sm:pl-12":""}`,children:[e.jsxs("div",{className:"flex flex-wrap items-center gap-2.5",children:[e.jsx("h2",{className:"text-base font-bold text-slate-900 dark:text-slate-100",children:s("pageDetail.artifacts.heading")}),t.length>0&&e.jsx("span",{className:"rounded-full bg-slate-100 px-2 py-0.5 text-[11px] font-semibold text-slate-600 dark:bg-slate-800 dark:text-slate-300",children:t.length}),b&&e.jsx(q,{requires:"pro"})]}),e.jsx("p",{className:"mt-1 max-w-2xl text-[13px] leading-relaxed text-slate-500 dark:text-slate-400",children:s("pageDetail.artifacts.intro")}),b&&e.jsx("div",{className:"mt-3 flex flex-col gap-2.5",children:v})]}),a>0?!b&&e.jsx(Q,{requires:"pro",children:e.jsxs("div",{className:"flex w-full flex-col gap-2.5",children:[e.jsx("p",{className:"text-[13px] text-slate-500 dark:text-slate-400",children:s("pageDetail.artifacts.locked",{count:a})}),v]})}):e.jsx("ul",{className:"divide-y divide-slate-100 dark:divide-slate-800",children:t.map(l=>e.jsxs("li",{className:"flex flex-wrap items-center gap-3 px-5 py-4 sm:px-6",children:[e.jsxs("div",{className:"min-w-0 flex-1",children:[e.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[e.jsx("code",{className:"rounded-md bg-slate-100 px-1.5 py-0.5 font-mono text-[12.5px] font-semibold text-slate-800 dark:bg-slate-800 dark:text-slate-200",children:l.target==="file"?l.path:"<head>"}),e.jsx("span",{className:"text-[14px] font-semibold text-slate-900 dark:text-slate-100",children:s([`pageDetail.artifacts.item.${l.id}`,l.id])}),l.replaces&&e.jsx("span",{className:"rounded-md bg-amber-50 px-1.5 py-0.5 text-[10.5px] font-bold uppercase tracking-wide text-amber-700 dark:bg-amber-500/10 dark:text-amber-300",children:s("pageDetail.artifacts.replacesTag")}),l.needsReview&&e.jsx("span",{className:"rounded-md bg-slate-100 px-1.5 py-0.5 text-[10.5px] font-bold uppercase tracking-wide text-slate-500 dark:bg-slate-800 dark:text-slate-400",children:s("pageDetail.artifacts.reviewTag")})]}),e.jsxs("p",{className:"mt-1 text-[12.5px] text-slate-500 dark:text-slate-400",children:[l.scope==="site"?s("pageDetail.artifacts.scopeSite"):s("pageDetail.artifacts.scopePage")," · ",s("pageDetail.artifacts.lines",{count:l.lines})]})]}),e.jsxs("div",{className:"flex flex-none items-center gap-2",children:[e.jsx("button",{type:"button",onClick:()=>N(l),className:"rounded-[10px] border border-slate-300 px-3 py-1.5 text-[13px] font-semibold text-slate-600 transition hover:border-brand-300 hover:text-brand-600 dark:border-slate-700 dark:text-slate-300 dark:hover:border-brand-500/50 dark:hover:text-brand-300",children:c===l.id?s("pageDetail.artifacts.copied"):s("pageDetail.artifacts.copy")}),e.jsx("button",{type:"button",onClick:()=>o(l),className:"rounded-[10px] bg-brand-600 px-3.5 py-1.5 text-[13px] font-semibold text-white transition hover:bg-brand-700",children:s("pageDetail.artifacts.view")})]})]},l.id))}),e.jsx("p",{className:"border-t border-slate-200 px-5 py-3.5 text-[12.5px] leading-relaxed text-slate-400 sm:px-6 dark:border-slate-800 dark:text-slate-500",children:s("pageDetail.artifacts.footer")})]})]}),i&&e.jsx(se,{art:i,onClose:()=>o(null),onCopy:()=>N(i),copiado:c===i.id})]})}function se({art:t,onClose:a,onCopy:r,copiado:s}){var c;const{t:i}=y();f.useEffect(()=>{const d=h=>{h.key==="Escape"&&a()};return window.addEventListener("keydown",d),()=>window.removeEventListener("keydown",d)},[a]);const o=[t.replaces?i("pageDetail.artifacts.replaces"):null,t.needsReview?i("pageDetail.artifacts.review"):null,(c=t.missing)!=null&&c.length?i("pageDetail.artifacts.missing",{list:t.missing.join(", ")}
1):null].filter(Boolean);return e.jsxs("div",{className:"fixed inset-0 z-50 flex items-center justify-center p-4",role:"dialog","aria-modal":"true",children:[e.jsx("div",{className:"absolute inset-0 bg-slate-900/60 backdrop-blur-sm",onClick:a,"aria-hidden":!0}),e.jsxs("div",{className:"relative flex max-h-[88vh] w-full max-w-3xl flex-col overflow-hidden rounded-2xl border border-slate-200 bg-white shadow-2xl dark:border-slate-800 dark:bg-slate-900",children:[e.jsxs("div",{className:"flex items-start justify-between gap-3 border-b border-slate-200 px-5 py-4 sm:px-6 dark:border-slate-800",children:[e.jsxs("div",{className:"min-w-0",children:[e.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[e.jsx("code",{className:"rounded-md bg-slate-100 px-1.5 py-0.5 font-mono text-[13px] font-semibold text-slate-800 dark:bg-slate-800 dark:text-slate-200",children:t.target==="file"?t.path:"<head>"}),e.jsx("h2",{className:"text-[15px] font-bold text-slate-900 dark:text-slate-100",children:i([`pageDetail.artifacts.item.${t.id}`,t.id])})]}),e.jsx("p",{className:"mt-1 text-[12.5px] text-slate-500 dark:text-slate-400",children:t.target==="file"?i("pageDetail.artifacts.applyFile",{path:t.path}):i("pageDetail.artifacts.applyHead")})]}),e.jsx("button",{type:"button",onClick:a,"aria-label":i("pageDetail.artifacts.close"),className:"flex-none rounded-lg p-1.5 text-slate-400 transition hover:bg-slate-100 hover:text-slate-600 dark:hover:bg-slate-800 dark:hover:text-slate-200",children:"â"})]}),o.length>0&&e.jsx("ul",{className:"flex flex-col gap-1.5 border-b border-amber-200/60 bg-amber-50/60 px-5 py-3 sm:px-6 dark:border-amber-500/20 dark:bg-amber-500/5",children:o.map(d=>e.jsx("li",{className:"text-[12.5px] leading-relaxed text-amber-800 dark:text-amber-200",children:d},d))}),e.jsx("div",{className:"min-h-0 flex-1 overflow-auto bg-slate-50 px-5 py-4 sm:px-6 dark:bg-slate-950",children:e.jsx("pre",{className:"text-[12.5px] leading-relaxed text-slate-800 dark:text-slate-200",children:e.jsx("code",{children:t.content})})}),e.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-3 border-t border-slate-200 px-5 py-3.5 sm:px-6 dark:border-slate-800",children:[e.jsx("span",{className:"text-[12px] text-slate-400 dark:text-slate-500",children:i("pageDetail.artifacts.lines",{count:t.lines})}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("button",{type:"button",onClick:a,className:"rounded-[10px] border border-slate-300 px-3.5 py-2 text-[13px] font-semibold text-slate-600 transition hover:border-slate-400 dark:border-slate-700 dark:text-slate-300",children:i("pageDetail.artifacts.close")}),e.jsx("button",{type:"button",onClick:r,className:"rounded-[10px] bg-brand-600 px-4 py-2 text-[13px] font-semibold text-white transition hover:bg-brand-700",children:i(s?"pageDetail.artifacts.copied":"pageDetail.artifacts.copyFile")})]})]})]})]})}const le="Preview",re="{{vp}} screenshot of the page",ne="Error loading the page.",ie="Back to the audit",oe="Loadingâ¦",de="no title",ce="{{count}} word",xe="{{count}} words",pe="open page â",me="Ignore this page",ge="Fails",ue="Warnings",fe="OK",he="Full report for this page â {{count}} technical SEO checks.",be="Page",ke="Detected content & metadata",je="Heading structure",ve="index, follow (default)",we="(empty)",Ne="{{internal}} internal · {{external}} external",ye={title:"Title",description:"Description",canonical:"Canonical",language:"Language",viewport:"Viewport",robots:"Robots",ogTitle:"og:title",ogDescription:"og:description",ogImage:"og:image",twitter:"Twitter",schema:"Schema",links:"Links"},De="Page score",Te="Full page report",Ce="{{count}} check",_e="{{count}} checks",Se="Keep a clean heading hierarchy: a single H1, then nested levels without skipping (no H1 â H3 jumps).",$e={heading:"Ready-to-paste fixes",intro:'The file or block, already built from what we found on this page. Paste it, publish, then hit "Re-analyze" to confirm.',copy:"Copy",copied:"Copied",applyFile:"File {{path}}, at the site root",applyHead:"Inside this page's <head>",replaces:"This replaces the file's current contents â review before publishing.",review:"The site name was inferred from the page title. Review it before pasting.",missing:"Left blank for lack of real data: {{list}}",locked_one:"There is {{count}} ready-made fix for this page.",locked_other:"There are {{count}} ready-made fixes for this page.",footer:"We never change your site. You apply it and decide what goes live.",view:"View file",copyFile:"Copy file",close:"Close",replacesTag:"replaces",reviewTag:"review",scopeSite:"Applies to the whole site",scopePage:"This page only",lines_one:"{{count}} line",lines_other:"{{count}} lines",item:{robots_ai_bots:"robots.txt unblocking AI crawlers",llms_txt:"Site llms.txt",canonical:"Canonical tag for this page",viewport:"Viewport meta (mobile)",charset
1:"Charset declaration",open_graph:"Missing Open Graph tags",twitter_card:"X/Twitter card tag",json_ld_website:"Site structured data (JSON-LD)"}},Pe={preview:le,screenshotAlt:re,loadError:ne,backToAudit:ie,loading:oe,noTitle:de,words_one:ce,words_other:xe,openPage:pe,ignorePage:me,fails:ge,warnings:ue,ok:fe,fullReport:he,breadcrumbPage:be,detectedTitle:ke,headingsTitle:je,robotsDefault:ve,empty:we,links:Ne,dl:ye,scoreLabel:De,fullReportTitle:Te,checksCount_one:Ce,checksCount_other:_e,headingsHint:Se,artifacts:$e},Re="Pré-visualização",Ae="Captura {{vp}} da página",Ee="Erro ao carregar página.",Ie="Voltar à auditoria",Le="Carregandoâ¦",He="sem title",Fe="{{count}} palavra",Oe="{{count}} palavras",qe="abrir página â",ze="Ignorar esta página",Ve="Falhas",Be="Atenção",Me="OK",Ge="Relatório completo desta página â {{count}} verificações de SEO técnico.",Ke="Página",Ue="Conteúdo & metadados detectados",Je="Estrutura de headings",We="index, follow (padrão)",Xe="(vazio)",Ye="{{internal}} internos · {{external}} externos",Qe={title:"TÃtulo",description:"Descrição",canonical:"Canonical",language:"Idioma",viewport:"Viewport",robots:"Robots",ogTitle:"og:title",ogDescription:"og:description",ogImage:"og:image",twitter:"Twitter",schema:"Schema",links:"Links"},Ze="Score da página",et="Relatório completo da página",tt="{{count}} verificação",at="{{count}} verificações",st="Mantenha a hierarquia de headings limpa: um único H1 e nÃveis aninhados sem pular (evite saltos como H1 â H3).",lt={heading:"Correções prontas para colar",intro:'O arquivo ou bloco já montado a partir do que foi encontrado nesta página. Cole, publique e use "Reanalisar" para confirmar.',copy:"Copiar",copied:"Copiado",applyFile:"Arquivo {{path}}, na raiz do site",applyHead:"Dentro do <head> desta página",replaces:"Substitui o conteúdo atual do arquivo â confira antes de publicar.",review:"O nome do site foi deduzido do tÃtulo da página. Revise antes de colar.",missing:"Não preenchido por falta de dado real: {{list}}",locked_one:"Há {{count}} correção pronta para esta página.",locked_other:"Há {{count}} correções prontas para esta página.",footer:"A gente não altera seu site. Você aplica e decide o que entra no ar.",view:"Ver arquivo",copyFile:"Copiar arquivo",close:"Fechar",replacesTag:"substitui",reviewTag:"revisar",scopeSite:"Vale para o site inteiro",scopePage:"Só para esta página",lines_one:"{{count}} linha",lines_other:"{{count}} linhas",item:{robots_ai_bots:"robots.txt liberando os robôs de IA",llms_txt:"llms.txt do site",canonical:"Tag canonical desta página",viewport:"Meta viewport (mobile)",charset:"Declaração de charset",open_graph:"Tags Open Graph que faltam",twitter_card:"Tag do card do X/Twitter",json_ld_website:"Dados estruturados do site (JSON-LD)"}},rt={preview:Re,screenshotAlt:Ae,loadError:Ee,backToAudit:Ie,loading:Le,noTitle:He,words_one
1:Fe,words_other:Oe,openPage:qe,ignorePage:ze,fails:Ve,warnings:Be,ok:Me,fullReport:Ge,breadcrumbPage:Ke,detectedTitle:Ue,headingsTitle:Je,robotsDefault:We,empty:Xe,links:Ye,dl:Qe,scoreLabel:Ze,fullReportTitle:et,checksCount_one:tt,checksCount_other:at,headingsHint:st,artifacts:lt},$={fail:0,warn:1,info:2,pass:3};function nt(t){return t===1?"bg-indigo-50 text-indigo-700 dark:bg-indigo-500/15 dark:text-indigo-300":t===2?"bg-sky-50 text-sky-700 dark:bg-sky-500/15 dark:text-sky-300":"bg-slate-100 text-slate-500 dark:bg-slate-800 dark:text-slate-400"}const P={pass:{cls:"bg-emerald-50 text-emerald-600 dark:bg-emerald-500/15 dark:text-emerald-300",icon:"â"},warn:{cls:"bg-amber-50 text-amber-600 dark:bg-amber-500/15 dark:text-amber-300",icon:"!"},fail:{cls:"bg-red-50 text-red-600 dark:bg-red-500/15 dark:text-red-300",icon:"â"},info:{cls:"bg-sky-50 text-sky-700 dark:bg-sky-500/15 dark:text-sky-300",icon:"i"}};function it({status:t}){const a=P[t]??P.info;return e.jsx("span",{"aria-hidden":!0,className:`grid h-[26px] w-[26px] shrink-0 place-items-center rounded-full text-sm font-bold ${a.cls}`,children:a.icon})}const ot=!1;function p({label:t,value:a,mono:r}){const s=a==null||a==="";return e.jsxs("div",{className:"grid grid-cols-[6.5rem_1fr] items-baseline gap-3",children:[e.jsx("dt",{className:"font-mono text-[10.5px] font-semibold uppercase tracking-[0.04em] text-slate-400 dark:text-slate-400",children:t}),e.jsx("dd",{className:`min-w-0 break-words [overflow-wrap:anywhere] text-[13.5px] ${s?"text-slate-400 dark:text-slate-600":"text-slate-700 dark:text-slate-200"} ${r&&!s?"font-mono text-xs text-indigo-700 dark:text-indigo-300":""}`,children:s?"â":a})]})}function dt({page:t}){const{t:a}=y(),r=t.detailsJson;if(!r)return null;const s=r.headingOutline??[],i=r.structuredDataTypes??[],o=t.title!=null||t.metaDescription!=null||r.canonical!=null||r.lang!=null||r.viewport!=null||r.ogTitle!=null||i.length>0;return!o&&s.length===0?null:e.jsxs("div",{className:"mt-4 grid items-start gap-3.5 md:grid-cols-[1.35fr_1fr]",children:[o&&e.jsxs(j,{className:"p-[18px] sm:p-6",children:[e.jsx("h2",{className:"mb-4 text-[11px] font-bold uppercase tracking-[0.08em] text-slate-400 dark:text-slate-400",children:a("pageDetail.detectedTitle")}),e.jsxs("dl",{className:"flex flex-col gap-3",children:[e.jsx(p,{label:a("pageDetail.dl.title"),value:t.title}),e.jsx(p,{label:a("pageDetail.dl.description"),value:t.metaDescription}),e.jsx(p,{label:a("pageDetail.dl.canonical"),value:r.canonical,mono:!0}),e.jsx(p,{label:a("pageDetail.dl.language"),value:r.lang}),e.jsx(p,{label:a("pageDetail.dl.viewport"),value:r.viewport,mono:!0}),e.jsx(p,{label:a("pageDetail.dl.robots"),value:r.metaRobots??a("pageDetail.robotsDefault")}),e.jsx("div",{className:"h-px bg-slate-100 dark:bg-slate-800"}),e.jsx(p,{label:a("pageDetail.dl.ogTitle"),value:r.ogTitle}),e.jsx(p,{label:a("pageDetail.dl.ogDescription"),value:r.ogDescription}),e.jsx(p,{label:a("pageDetail.dl.ogImage"),value:r.ogImage,mono:!0}),e.jsx(p,{label:a("pageDetail.dl.twitter"),value:r.twitterCard}),e.jsx("div",{className:"h-px bg-slate-100 dark:bg-slate-800"}),i.length>0?e.jsxs("div",{className:"grid grid-cols-[6.5rem_1fr] items-baseline gap-3",children:[e.jsx("dt",{className:"font-mono text-[10.5px] font-semibold uppercase tracking-[0.04em] text-slate-400 dark:text-slate-400",children:a("pageDetail.dl.schema")}),e.jsx("dd",{className:"flex min-w-0 flex-wrap gap-1.5",children:i.map(c=>e.jsx("span",{className:"rounded-md bg-slate-100 px-2 py-0.5 font-mono text-[11px] text-slate-600 dark:bg-slate-800 dark:text-slate-300",children:c},c))})]}):e.jsx(p,{label:a("pageDetail.dl.schema"),value:null}),e.jsx(p,{label:a("pageDetail.dl.links"),value:a("pageDetail.links",{internal:r.internalLinkCount??0,external:r.externalLinkCount??0})})]})]}),s.length>0&&e.jsxs(j,{className:"p-[18px] sm:p-6",children:[e.jsx("h2",{className:"mb-4 text-[11px] font-bold uppercase tracking-[0.08em] text-slate-400 dark:text-slate-400",children:a("pageDetail.headingsTitle")}),e.jsx("ul",{className:"flex flex-col gap-2.5",children:s.map((c,d)=>e.jsxs("li",{className:"flex items-center gap-2.5 text-[13.5px] text-slate-700 dark:text-slate-200",style:{paddingLeft:`${(c.level-1)*1.25}
1rem`},children:[e.jsxs("span",{className:`grid h-5 w-[26px] shrink-0 place-items-center rounded-md font-mono text-[10.5px] font-bold ${nt(c.level)}`,children:["H",c.level]}),e.jsx("span",{className:"min-w-0 break-words",children:c.text||e.jsx("span",{className:"text-slate-400 dark:text-slate-400",children:a("pageDetail.empty")})})]},d))}),e.jsxs("div",{className:"mt-4 flex items-start gap-2 rounded-[10px] bg-amber-50 px-3 py-2.5 ring-1 ring-inset ring-amber-200 dark:bg-amber-500/10 dark:ring-amber-500/30",children:[e.jsx("span",{"aria-hidden":!0,children:"ð¡"}),e.jsx("span",{className:"text-xs leading-relaxed text-amber-800 dark:text-amber-200",children:a("pageDetail.headingsHint")})]})]})]})}Z("pageDetail",{en:{pageDetail:Pe},pt:{pageDetail:rt}});function ft(){var C;const{t}=y(),a=U(),{id:r,pageId:s}=z(),i=V(),[o,c]=f.useState(null),[d,h]=f.useState(!1);B(o==null?void 0:o.page.url.replace(/^https?:\/\//,""));async function b(){if(!(!o||!r)){h(!0);try{await T.acknowledgeIssue(r,{checkId:"*",scope:"url",pattern:o.page.url}),i(`/app/audits/${r}`)}finally{h(!1)}}}const[v,N]=f.useState(null);if(f.useEffect(()=>{T.getPage(r??"",s??"").then(c).catch(n=>N(n instanceof Error?n.message:t("pageDetail.loadError")))},[r,s]),v)return e.jsxs("div",{className:"mx-auto max-w-md px-4 py-16 text-center",children:[e.jsx("p",{className:"text-red-600",children:v}),e.jsx(M,{to:`/app/audits/${r}`,className:"mt-4 inline-block text-sm font-semibold text-brand-600",children:t("pageDetail.backToAudit")})]});if(!o)return e.jsx("div",{className:"grid min-h-[50vh] place-items-center text-slate-400 dark:text-slate-400",children:t("pageDetail.loading")});const{page:l}=o,m=(((C=l.detailsJson)==null?void 0:C.checks)??[]).map(n=>{const u=a({checkId:n.id,severity:J(n.status),reason:n.reason??null,message:n.label,recommendation:n.recommendation,detail:n.detail??null,detailCode:n.detailCode??null,detailVars:n.detailVars??null});return{...n,label:u.label,recommendation:u.recommendation||n.recommendation,detail:u.detail??void 0}}),w=l.score??0,g=new Map;for(const n of m){const u=g.get(n.category)??[];u.push(n),g.set(n.category,u)}const k=[...g.entries()].map(([n,u])=>({cat:n,list:[...u].sort((x,D)=>$[x.status]-$[D.status])})),R="footer",A=m.filter(n=>n.status==="fail").length,E=m.filter(n=>n.status==="warn").length,I=m.filter(n=>n.status==="pass").length;return e.jsxs("div",{className:"mx-auto max-w-[1040px] px-4 py-8 sm:px-7",children:[e.jsx(G,{items:[{label:t("nav.dashboard"),to:"/app"},{label:o.auditTarget,to:`/app/audits/${r}`},{label:t("pageDetail.breadcrumbPage")}]}),e.jsx("div",{className:"mt-3 flex justify-end",children:e.jsx("button",{type:"button",onClick:b,disabled:d,className:"inline-flex items-center gap-1.5 rounded-lg border border-slate-300 px-3 py-1.5 text-sm font-medium text-slate-600 transition hover:border-brand-300 hover:text-brand-600 disabled:opacity-50 dark:border-slate-700 dark:text-slate-300 dark:hover:border-brand-500/50 dark:hover:text-brand-300",children:d?"â¦":t("pageDetail.ignorePage")})}),e.jsxs(j,{className:"mt-3.5 flex flex-wrap items-center justify-between gap-4 p-[18px] sm:gap-6 sm:p-6",children:[e.jsxs("div",{className:"flex w-full min-w-0 flex-1 items-center gap-4 sm:block sm:w-auto",children:[e.jsxs("div",{className:"min-w-0 flex-1",children:[e.jsx("h1",{className:"break-all [overflow-wrap:anywhere] font-mono text-base font-bold tracking-tight text-slate-900 dark:text-slate-100 sm:text-2xl",children:l.url}),e.jsx("p",{className:"mt-1.5 text-[13px] font-medium text-slate-600 dark:text-slate-400 sm:text-sm",children:l.title??t("pageDetail.noTitle")})]}),e.jsxs("div",{className:"flex flex-none scale-[0.62] flex-col items-center gap-2 sm:hidden",children:[e.jsx(S,{score:w,size:120}),e.jsx("span",{className:"text-xs text-slate-400 dark:text-slate-400",children:t("pageDetail.scoreLabel")})]}),e.jsxs("div",{className:"hidden flex-wrap items-center gap-2 sm:mt-3.5 sm:flex",children:[e.jsxs("span",{className:"inline-flex items-center gap-1.5 rounded-full bg-emerald-50 px-2.5 py-1 font-mono text-xs font-semibold text-emerald-700 ring-1 ring-inset ring-emerald-200 dark:bg-emerald-500/10 dark:text-emerald-300 dark:ring-emerald-500/30",children:[e.jsx("span",{className:"h-1.5 w-1.5 rounded-full bg-emerald-500"}),"HTTP ",l.statusCode??"â"]}),e.jsxs("span",{className:"rounded-full bg-slate-100 px-2.5 py-1 font-mono text-xs font-medium text-slate-600 dar
1k:bg-slate-800 dark:text-slate-300",children:[l.responseMs??0," ms"]}),e.jsx("span",{className:"rounded-full bg-slate-100 px-2.5 py-1 font-mono text-xs font-medium text-slate-600 dark:bg-slate-800 dark:text-slate-300",children:t("pageDetail.words",{count:l.wordCount??0})}),e.jsx("a",{href:l.url,target:"_blank",rel:"noreferrer",className:"inline-flex items-center gap-1.5 rounded-full bg-indigo-50 px-2.5 py-1 text-xs font-semibold text-indigo-700 hover:bg-indigo-100 dark:bg-indigo-500/15 dark:text-indigo-300 dark:hover:bg-indigo-500/25",children:t("pageDetail.openPage")})]})]}),e.jsxs("div",{className:"flex w-full flex-wrap items-center gap-1.5 sm:hidden",children:[e.jsxs("span",{className:"inline-flex items-center gap-1.5 rounded-full bg-emerald-50 px-2.5 py-1 font-mono text-xs font-semibold text-emerald-700 ring-1 ring-inset ring-emerald-200 dark:bg-emerald-500/10 dark:text-emerald-300 dark:ring-emerald-500/30",children:[e.jsx("span",{className:"h-1.5 w-1.5 rounded-full bg-emerald-500"}),"HTTP ",l.statusCode??"â"]}),e.jsxs("span",{className:"rounded-full bg-slate-100 px-2.5 py-1 font-mono text-xs font-medium text-slate-600 dark:bg-slate-800 dark:text-slate-300",children:[l.responseMs??0," ms"]}),e.jsx("span",{className:"rounded-full bg-slate-100 px-2.5 py-1 font-mono text-xs font-medium text-slate-600 dark:bg-slate-800 dark:text-slate-300",children:t("pageDetail.words",{count:l.wordCount??0})})]}),e.jsxs("a",{href:l.url,target:"_blank",rel:"noreferrer",className:"flex w-full items-center justify-center gap-1.5 rounded-[10px] bg-indigo-50 px-3 py-2.5 text-[13px] font-semibold text-indigo-700 hover:bg-indigo-100 dark:bg-indigo-500/15 dark:text-indigo-300 dark:hover:bg-indigo-500/25 sm:hidden",children:[t("pageDetail.openPage")," ",e.jsx("span",{"aria-hidden":!0,className:"text-[11px]",children:"â"})]}),e.jsxs("div",{className:"hidden flex-none flex-col items-center gap-2 sm:flex",children:[e.jsx(S,{score:w,size:120}),e.jsx("span",{className:"text-xs text-slate-400 dark:text-slate-400",children:t("pageDetail.scoreLabel")})]})]}),e.jsxs("div",{className:"mt-4 grid grid-cols-3 gap-2 sm:gap-3.5",children:[e.jsxs(j,{className:"flex flex-col items-center gap-1.5 px-1.5 py-3 sm:flex-row sm:gap-3.5 sm:p-4",children:[e.jsx("span",{className:"font-mono text-2xl font-bold leading-none text-slate-900 dark:text-slate-100 sm:text-3xl",children:A}),e.jsxs("span",{className:"inline-flex items-center gap-1.5 rounded-full bg-red-50 px-2.5 py-0.5 text-[10.5px] font-medium text-red-700 ring-1 ring-inset ring-red-200 dark:bg-red-500/10 dark:text-red-300 dark:ring-red-500/30 sm:px-3 sm:py-1 sm:text-xs",children:[e.jsx("span",{className:"h-1.5 w-1.5 rounded-full bg-red-500"}),t("pageDetail.fails")]})]}),e.jsxs(j,{className:"flex flex-col items-center gap-1.5 px-1.5 py-3 sm:flex-row sm:gap-3.5 sm:p-4",children:[e.jsx("span",{className:"font-mono text-2xl font-bold leading-none text-slate-900 dark:text-slate-100 sm:text-3xl",children:E}),e.jsxs("span",{className:"inline-flex items-center gap-1.5 rounded-full bg-amber-50 px-2.5 py-0.5 text-[10.5px] font-medium text-amber-700 ring-1 ring-inset ring-amber-200 dark:bg-amber-500/10 dark:text-amber-300 dark:ring-amber-500/30 sm:px-3 sm:py-1 sm:text-xs",children:[e.jsx("span",{className:"h-1.5 w-1.5 rounded-full bg-amber-500"}),t("pageDetail.warnings")]})]}),e.jsxs(j,{className:"flex flex-col items-center gap-1.5 px-1.5 py-3 sm:flex-row sm:gap-3.5 sm:p-4",children:[e.jsx("span",{className:"font-mono text-2xl font-bold leading-none text-slate-900 dark:text-slate-100 sm:text-3xl",children:I}),e.jsxs("span",{className:"inline-flex items-center gap-1.5 rounded-full bg-emerald-50 px-2.5 py-0.5 text-[10.5px] font-medium text-emerald-700 ring-1 ring-inset ring-emerald-200 dark:bg-emerald-500/10 dark:text-emerald-300 dark:ring-emerald-500/30 sm:px-3 sm:py-1 sm:text-xs",children:[e.jsx("span",{className:"h-1.5 w-1.5 rounded-full bg-emerald-500"}),t("pageDetail.ok")]})]})]}),ot,e.jsx(dt,{page:l}),e.jsx(ee,{auditId:r??"",pageId:s??"",checksCount:m.length}),e.jsx("div",{className:"mt-8",children:e.jsx(ae,{artifacts:o.artifacts??[],locked:o.artifactsLocked??0,gate:R})}),e.jsx("div",{className:"mt-8 flex flex-wrap items-end justify-between gap-3",children:e.jsxs("div",{children:[e.jsx("h2",{className:"text-lg font-bold tracking-tight text-slate-900 dark:text-slate-100",children:t("pageDetail.fullReportTitle")}),e.jsx("p",{className:"mt-1 text-sm text-slate-500 dark:text-slate-400",children:t("pageDetail.fullReport",{count:m.length})})]})}),e.jsx("div",{className:"mt-5 space-y-6",children:k.map(({cat:n,list:u})=>e.jsxs("div",{children:[e.jsxs("div",{className:"mb-2.5 flex items-center gap-2.5",children:[e.jsx("span",{className:"font-mono text-[11px] font-bold uppercase tracking-[0.08em] text-indigo-600 dark:text-indigo-400",children:t(`common.categories.${n}`,n)}),e.jsx("span",{className:"text-xs text-slate-400 dark:text-slate-400",children:t("pageDetail.checksCount",{count:u.length})})]}),e.jsx(j,{className:"flex flex-col divide-y divide-slate-100 p-0 dark:divide-slate-800",children:u.map(x=>e.jsxs("div",{className:"flex items-start gap-3 px-[15px] py-3.5 sm:gap-3.5 sm:px-5 sm:py-[18px]",children:[e.jsx(it,{status:x.status}),e.jsxs("div",{className:"min-w-0 flex-1",children:[e.jsx("p",{className:"text-[13.5px] font-semibold text-slate-900 dark:text-slate-100 sm:text-[14.5px]",children:x.label}),x.detail&&e.jsx("p",{className:"mt-0.5 text-[12.5px] text-slate-600 dar
1k:text-slate-400 sm:text-[13.5px]",children:x.detail}),x.evidence&&x.evidence.length>0&&e.jsx("ul",{className:"mt-2 flex flex-col gap-1.5",children:x.evidence.map((D,L)=>e.jsx("li",{className:"truncate rounded-md bg-slate-50 px-2.5 py-1.5 font-mono text-xs text-slate-600 ring-1 ring-inset ring-slate-100 dark:bg-slate-800/60 dark:text-slate-300 dark:ring-slate-700",title:D,children:D},L))}),x.status!=="pass"&&x.recommendation&&e.jsxs("p",{className:"mt-2 flex items-start gap-1.5 text-[13px] text-slate-500 dark:text-slate-400",children:[e.jsx("span",{"aria-hidden":!0,children:"ð¡"}),e.jsx("span",{children:x.recommendation})]}),(x.status==="fail"||x.status==="warn")&&e.jsx(W,{auditId:r??"",code:x.id,pageUrl:l.url,personalized:!0})]}),e.jsx("div",{className:"shrink-0",children:e.jsx(K,{status:x.status})})]},x.id))})]},n))})]})}export{ft as PageDetailPage};
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.