PageSourceSearch

https://llredac.fr/static/js/840.7559e674.chunk.js

js llredac.fr collected 2026-10-07 17:00:01 UTC 16,920 bytes, 1 lines download raw bytes

1"use strict";(globalThis.webpackChunkfrontend=globalThis.webpackChunkfrontend||[]).push([[840],{9840(e,s,t){t.r(s),t.d(s,{default:()=>q});var a=t(5043),i=t(6930),l=t(9570),r=t(6446),n=t(9490),c=t(5685),o=t(7063),d=t(4467),m=t(3390),x=t(2264),h=t(4528),u=t(9194),p=t(6328),g=t(522),b=t(6391),j=t(4989),N=t(1042),w=t(4449),f=t(5073),y=t(6087),v=t(5892),A=t(8924),P=t(8712),S=t(4580),k=t(866),E=t(7259),O=t(461),_=t(4663),R=t(1872),z=t(4507),D=t(9193),T=t(5094),F=t(5923),C=t(579);const I="https://llredac.fr",$=({score:e})=>{const s=()=>e>=80?"#22c55e":e>=60?"#eab308":e>=40?"#f97316":"#ef4444",t=2*Math.PI*45,a=t-e/100*t;return(0,C.jsxs)("div",{className:"relative w-40 h-40 mx-auto",children:[(0,C.jsxs)("svg",{className:"w-full h-full transform -rotate-90",children:[(0,C.jsx)("circle",{cx:"80",cy:"80",r:"45",stroke:"#1f2937",strokeWidth:"10",fill:"none"}),(0,C.jsx)(r.P.circle,{cx:"80",cy:"80",r:"45",stroke:s(),strokeWidth:"10",fill:"none",strokeLinecap:"round",initial:{strokeDashoffset:t},animate:{strokeDashoffset:a},transition:{duration:1,ease:"easeOut"},style:{strokeDasharray:t}})]}),(0,C.jsxs)("div",{className:"absolute inset-0 flex flex-col items-center justify-center",children:[(0,C.jsx)(r.P.span,{className:"text-4xl font-bold text-white",initial:{opacity:0,scale:.5},animate:{opacity:1,scale:1},transition:{delay:.5},children:e}),(0,C.jsx)("span",{className:"text-sm text-gray-400",children:"/100"}),(0,C.jsx)("span",{className:"text-sm font-medium",style:{color:s()},children:e>=80?"Excellent":e>=60?"Bon":e>=40?"Moyen":"Faible"})]})]})},L=({name:e,icon:s,data:t,isExpanded:a,onToggle:i})=>{var n;const c=e=>{switch(e){case"good":return(0,C.jsx)(N.r,{weight:"fill",className:"w-5 h-5 text-green-500"});case"warning":return(0,C.jsx)(T.N,{weight:"fill",className:"w-5 h-5 text-yellow-500"});case"error":return(0,C.jsx)(F.J,{weight:"fill",className:"w-5 h-5 text-red-500"});default:return(0,C.jsx)(S.R,{weight:"fill",className:"w-5 h-5 text-blue-500"})}},o=t.max_score>0?Math.round(t.score/t.max_score*100):0,d=o>=70?"text-green-500":o>=40?"text-yellow-500":"text-red-500";return(0,C.jsxs)("div",{className:"bg-white/5 border border-white/10 rounded-xl overflow-hidden",children:[(0,C.jsxs)("button",{onClick:i,className:"w-full flex items-center justify-between p-4 hover:bg-white/5 transition-colors",children:[(0,C.jsxs)("div",{className:"flex items-center gap-3",children:[(0,C.jsx)("div",{className:"p-2 bg-lime/10 rounded-lg",children:(0,C.jsx)(s,{weight:"duotone",className:"w-5 h-5 text-lime"})}),(0,C.jsx)("span",{className:"font-medium text-white",children:e})]}),(0,C.jsxs)("div",{className:"flex items-center gap-3",children:[(0,C.jsxs)("span",{className:`font-bold ${d}`,children:[t.score,"/",t.max_score]}),a?(0,C.jsx)(j.Z,{className:"w-5 h-5 text-gray-400"}):(0,C.jsx)(b.a,{className:"w-5 h-5 text-gray-400"})]})]}),(0,C.jsx)(l.N,{children:a&&(0,C.jsx)(r.P.div,{initial:{height:0,opacity:0},animate:{height:"auto",opacity:1},exit:{height:0,opacity:0},transition:{duration:.2},className:"overflow-hidden",children:(0,C.jsx)("div",{className:"px-4 pb-4 space-y-2",children:null===(n=t.items)||void 0===n?void 0:n.map((e,s)=>(0,C.jsxs)("div",{className:"flex items-start gap-3 p-3 bg-black/20 rounded-lg",children:[c(e.status),(0,C.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,C.jsx)("div",{className:"flex items-center gap-2",children:(0,C.jsx)("span",{className:"font-medium text-white text-sm",children:e.name})}),(0,C.jsx)("p",{className:"text-gray-400 text-sm mt-0.5",children:e.message}),e.value&&e.value!==e.name&&(0,C.jsx)("p",{className:"text-gray-500 text-xs mt-1 truncate",title:e.value,children:e.value})]})]},s))})})})]})},U=({issue:e})=>e.locked?(0,C.jsxs)("div",{className:"flex items-center gap-3 p-3 bg-lime/5 border border-lime/20 rounded-lg",children:[(0,C.jsx)(O.c,{weight:"fill",className:"w-5 h-5 text-lime"}),(0,C.jsx)("span",{className:"text-lime text-sm",children:e.text})]}):(0,C.jsxs)("div",{className:"flex items-start gap-3 p-3 bg-white/5 rounded-lg",children:[(0,C.jsx)("div",{className:"mt-0.5",children:(e=>{const s={high:"bg-red-500/20 text-red-400 border-red-500/30",medium:"bg-yellow-500/20 text-yellow-400 border-yellow-500/30",low:"bg-blue-500/20 text-blue-400 border-blue-500/30",info:"bg-gray-500/20 text-gray-400 border-gray-500/30"};return(0,C.jsx)("span",{className:`px-2 py-0.5 text-xs rounded-full border ${s[e]||s.info}`,children:{high:"Critique",medium:"Important",low:"Mineur",info:"Info"}[e]||e})})(e.priority)}),(0,C.jsx)("p",{className:"text-gray-300 text-sm flex-1",children:e.text})]});function q(){var e;const{t:s,i18n:t}=(0,i.Bd)(),{user:l,token:b}=(0,h.A)(),[j,S]=(0,a.useState)(""),[T,F]=(0,a.useState)(!1),[q,H]=(0,a.useState)(null),[B,M]=(0,a.useState)(""),[G,W]=(0,a.useState)({}),[V,J]=(0,a.useState)(null),[Q,Z]=(0,a.useState)(!1),K=null===(e=t.language)||void 0===e?void 0:e.startsWith("fr"),X={meta:{name:"Meta Tags",icon:v.i},headings:{name:"Structure (H1-H3)",icon:w.C},content:{name:"Contenu",icon:v.i},images:{name:"Images",icon:P._},links:{name:"Liens",icon:E.N},technical:{name:"Technique",icon:A.q},social:{name:"Open Graph",icon:R.s},schema:{name:"Schema.org",icon:w.C}};(0,a.useEffect)(()=>{Y(),(0,u.gO)("SEO Audit Tool","tool")},[]);const Y=async()=>{try{const e=b?{Authorization:`Bearer ${b}`}:{},s=await o.A.get(`${I}/api/seo-audit/remaining`,{headers:e});J(s.data)}catch(e){console.error("Error checking remaining audits:",e)}};return(0,C.jsxs)(d.A,{children:[(0,C.jsxs)(n.mg,{children:[(0,C.jsxs)("title",{children:[K?"Audit SEO Gratuit - Analysez votre site":"Free SEO Audit - Analyze your website"," | llredac"]}),(0,C.jsx)("meta",{name:"description",content:K?"Analysez gratuitement le SEO de votre site web. Obtenez un score SEO, identifiez les probl\xe8mes et recevez des recommandations pour am\xe9liorer votre r\xe9f\xe9rencement.":"Analyze your website's SEO for free. Get an SEO score, identify issues and receive recommendations to improve your search rankings."})]}),(0,C.jsx)("div",{className:"min-h-screen bg-dark pt-20 pb-16",children:(0,C.jsxs)("div",{className:"max-w-4xl mx-auto px-4 sm:px-6 lg:px-8",children:[(0,C.jsxs)(r.P.div,{initial:{opacity:0,y:20}
1,animate:{opacity:1,y:0},className:"text-center mb-12",children:[(0,C.jsxs)("div",{className:"inline-flex items-center gap-2 px-4 py-2 bg-lime/10 rounded-full text-lime text-sm mb-6",children:[(0,C.jsx)(_.e,{weight:"bold",className:"w-4 h-4"}),K?"Outil gratuit":"Free tool"]}),(0,C.jsxs)("h1",{className:"text-4xl md:text-5xl font-bold text-white mb-4 font-outfit",children:[K?"Audit SEO":"SEO Audit",(0,C.jsxs)("span",{className:"text-lime",children:[" ",K?"Gratuit":"Tool"]})]}),(0,C.jsx)("p",{className:"text-gray-400 text-lg max-w-2xl mx-auto",children:K?"Analysez n'importe quelle page web et obtenez un rapport SEO complet avec des recommandations d'am\xe9lioration.":"Analyze any web page and get a complete SEO report with improvement recommendations."}),V&&!V.is_premium&&(0,C.jsxs)("div",{className:"mt-4 inline-flex items-center gap-2 px-3 py-1.5 bg-white/5 rounded-full text-sm",children:[(0,C.jsx)("span",{className:"text-gray-400",children:K?"Audits restants ce mois:":"Remaining audits this month:"}),(0,C.jsxs)("span",{className:"font-bold "+(V.remaining>0?"text-lime":"text-red-400"),children:[V.remaining,"/",V.total]})]}),(null===V||void 0===V?void 0:V.is_premium)&&(0,C.jsxs)("div",{className:"mt-4 inline-flex items-center gap-2 px-3 py-1.5 bg-lime/10 rounded-full text-sm text-lime",children:[(0,C.jsx)(f.O,{weight:"fill",className:"w-4 h-4"}),K?"Audits illimit\xe9s (Premium)":"Unlimited audits (Premium)"]})]}),(0,C.jsx)(r.P.form,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},transition:{delay:.1},onSubmit:async e=>{if(e.preventDefault(),j.trim()){F(!0),M(""),H(null);try{const e=b?{Authorization:`Bearer ${b}`}:{},s=await o.A.post(`${I}/api/seo-audit`,{url:j.trim()},{headers:e});if(s.data.success){H(s.data);const e={};Object.keys(s.data.categories||{}).slice(0,3).forEach(s=>{e[s]=!0}),W(e),(0,u._N)({source:"seo_audit",content_name:j})}else M(s.data.error||"Erreur lors de l'audit");Y()}catch(l){var s,t,a,i;M((null===(s=l.response)||void 0===s||null===(t=s.data)||void 0===t?void 0:t.detail)||(null===(a=l.response)||void 0===a||null===(i=a.data)||void 0===i?void 0:i.error)||"Erreur de connexion")}finally{F(!1)}}},className:"mb-12",children:(0,C.jsxs)("div",{className:"flex gap-3",children:[(0,C.jsxs)("div",{className:"flex-1 relative",children:[(0,C.jsx)(A.q,{className:"absolute left-4 top-1/2 -translate-y-1/2 w-5 h-5 text-gray-500"}),(0,C.jsx)(x.p,{type:"text",value:j,onChange:e=>S(e.target.value),placeholder:K?"Entrez l'URL \xe0 analyser (ex: example.com)":"Enter URL to analyze (e.g. example.com)",className:"pl-12 h-14 bg-white/5 border-white/10 text-white text-lg",disabled:T})]}),(0,C.jsx)(m.$,{type:"submit",disabled:T||!j.trim(),className:"h-14 px-8 bg-lime text-black hover:bg-lime/90 font-semibold text-lg",children:T?(0,C.jsx)(D.y,{className:"w-5 h-5 animate-spin"}):(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(_.e,{weight:"bold",className:"w-5 h-5 mr-2"}),K?"Analyser":"Analyze"]})})]})}),B&&(0,C.jsxs)(r.P.div,{initial:{opacity:0}
1,animate:{opacity:1},className:"mb-8 p-4 bg-red-500/10 border border-red-500/20 rounded-xl text-red-400 text-center",children:[B,B.includes("Limite")&&(0,C.jsx)(c.N_,{to:"/pricing",className:"block mt-2 text-lime hover:underline",children:K?"Passez \xe0 Premium pour des audits illimit\xe9s \u2192":"Upgrade to Premium for unlimited audits \u2192"})]}),q&&q.success&&(0,C.jsxs)(r.P.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},className:"space-y-8",children:[(0,C.jsx)("div",{className:"bg-gradient-to-br from-white/5 to-white/[0.02] border border-white/10 rounded-2xl p-8",children:(0,C.jsxs)("div",{className:"grid md:grid-cols-2 gap-8 items-center",children:[(0,C.jsxs)("div",{className:"text-center md:text-left",children:[(0,C.jsx)("h2",{className:"text-2xl font-bold text-white mb-2",children:K?"R\xe9sultat de l'audit":"Audit Result"}),(0,C.jsx)("p",{className:"text-gray-400 text-sm mb-4 truncate",title:q.url,children:q.url}),(0,C.jsx)("p",{className:"text-gray-300 mb-4",children:q.summary}),q.is_premium?(0,C.jsxs)(m.$,{onClick:async()=>{if(q&&q.success&&q.is_premium){Z(!0);try{const e=await o.A.post(`${I}/api/seo-audit/pdf`,{url:q.url},{headers:{Authorization:`Bearer ${b}`},responseType:"blob"}),s=new Blob([e.data],{type:"application/pdf"}),t=window.URL.createObjectURL(s),a=document.createElement("a");a.href=t,a.download=`audit-seo-${q.url.replace(/https?:\/\//,"").replace(/\//g,"-").slice(0,30)}.pdf`,document.body.appendChild(a),a.click(),a.remove(),window.URL.revokeObjectURL(t),p.oR.success(K?"PDF t\xe9l\xe9charg\xe9 !":"PDF downloaded!")}catch(t){var e,s;p.oR.error((null===(e=t.response)||void 0===e||null===(s=e.data)||void 0===s?void 0:s.detail)||(K?"Erreur de t\xe9l\xe9chargement":"Download error"))}finally{Z(!1)}}else p.oR.error(K?"Le rapport PDF est r\xe9serv\xe9 aux utilisateurs Premium":"PDF report is for Premium users only")},disabled:Q,className:"bg-white/10 hover:bg-white/20 text-white border border-white/20",children:[Q?(0,C.jsx)(D.y,{className:"w-4 h-4 animate-spin mr-2"}):(0,C.jsx)(y.T,{weight:"bold",className:"w-4 h-4 mr-2"}),K?"T\xe9l\xe9charger le rapport PDF":"Download PDF Report"]}):(0,C.jsxs)("div",{className:"flex items-center gap-2 text-gray-500 text-sm",children:[(0,C.jsx)(O.c,{className:"w-4 h-4"}),K?"Rapport PDF (Premium)":"PDF Report (Premium)"]})]}),(0,C.jsx)($,{score:q.score})]})}),(0,C.jsxs)("div",{className:"space-y-3",children:[(0,C.jsx)("h3",{className:"text-xl font-bold text-white mb-4",children:K?"Analyse d\xe9taill\xe9e":"Detailed Analysis"}),Object.entries(q.categories||{}).map(([e,s])=>{const t=X[e];return t?(0,C.jsx)(L,{name:t.name,icon:t.icon,data:s,isExpanded:G[e],onToggle:()=>(e=>{W(s=>({...s,[e]:!s[e]}))})(e)},e):null})]}),q.issues&&q.issues.length>0&&(0,C.jsxs)("div",{className:"space-y-3",children:[(0,C.jsxs)("h3",{className:"text-xl font-bold text-white mb-4",children:[K?"Probl\xe8mes d\xe9tect\xe9s":"Issues Found",(0,C.jsxs)("span",{className:"text-gray-500 text-base font-normal ml-2",children:["(",q.issues.length,")"]})]}),(0,C.jsx)("div",{className:"space-y-2",children:q.issues.map((e,s)=>(0,C.jsx)(U,{issue:e},s))})]}),!q.is_premium&&q.upgrade_message&&(0,C.jsx)(r.P.div,{initial:{opacity:0}
1,animate:{opacity:1},className:"bg-gradient-to-r from-lime/10 to-lime/5 border border-lime/20 rounded-2xl p-6",children:(0,C.jsxs)("div",{className:"flex items-start gap-4",children:[(0,C.jsx)("div",{className:"p-3 bg-lime/20 rounded-xl",children:(0,C.jsx)(f.O,{weight:"fill",className:"w-6 h-6 text-lime"})}),(0,C.jsxs)("div",{className:"flex-1",children:[(0,C.jsx)("h4",{className:"text-lg font-bold text-white mb-2",children:K?"D\xe9bloquez le rapport complet":"Unlock Full Report"}),(0,C.jsx)("p",{className:"text-gray-400 mb-4",children:q.upgrade_message}),(0,C.jsxs)("ul",{className:"space-y-2 mb-4",children:[(0,C.jsxs)("li",{className:"flex items-center gap-2 text-gray-300 text-sm",children:[(0,C.jsx)(N.r,{weight:"fill",className:"w-4 h-4 text-lime"}),K?"Audits illimit\xe9s":"Unlimited audits"]}),(0,C.jsxs)("li",{className:"flex items-center gap-2 text-gray-300 text-sm",children:[(0,C.jsx)(N.r,{weight:"fill",className:"w-4 h-4 text-lime"}),K?"Recommandations IA personnalis\xe9es":"Personalized AI recommendations"]}),(0,C.jsxs)("li",{className:"flex items-center gap-2 text-gray-300 text-sm",children:[(0,C.jsx)(N.r,{weight:"fill",className:"w-4 h-4 text-lime"}),K?"Export PDF du rapport":"PDF report export"]}),(0,C.jsxs)("li",{className:"flex items-center gap-2 text-gray-300 text-sm",children:[(0,C.jsx)(N.r,{weight:"fill",className:"w-4 h-4 text-lime"}),K?"Suggestions d'articles pour am\xe9liorer le SEO":"Article suggestions to improve SEO"]})]}),(0,C.jsx)(c.N_,{to:"/pricing",children:(0,C.jsxs)(m.$,{className:"bg-lime text-black hover:bg-lime/90",children:[K?"Voir les plans":"View Plans",(0,C.jsx)(g.Q,{weight:"bold",className:"w-4 h-4 ml-2"})]})})]})]})}),q.is_premium&&q.recommendations&&q.recommendations.length>0&&(0,C.jsxs)("div",{className:"space-y-3",children:[(0,C.jsxs)("h3",{className:"text-xl font-bold text-white mb-4 flex items-center gap-2",children:[(0,C.jsx)(z.R,{weight:"fill",className:"w-5 h-5 text-lime"}),K?"Recommandations IA":"AI Recommendations"]}),(0,C.jsx)("div",{className:"space-y-2",children:q.recommendations.map((e,s)=>(0,C.jsxs)("div",{className:"flex items-start gap-3 p-4 bg-lime/5 border border-lime/10 rounded-xl",children:[(0,C.jsx)(k.l,{weight:"fill",className:"w-5 h-5 text-lime mt-0.5"}),(0,C.jsx)("p",{className:"text-gray-300",children:e})]},s))})]}),q.is_premium&&q.ai_suggestions&&q.ai_suggestions.length>0&&(0,C.jsxs)("div",{className:"space-y-3",children:[(0,C.jsx)("h3",{className:"text-xl font-bold text-white mb-4",children:K?"Actions sugg\xe9r\xe9es":"Suggested Actions"}),(0,C.jsx)("div",{className:"grid gap-4 sm:grid-cols-2",children:q.ai_suggestions.map((e,s)=>(0,C.jsx)(c.N_,{to:"/generator",className:"block p-4 bg-white/5 border border-white/10 rounded-xl hover:border-lime/30 transition-colors group",children:(0,C.jsxs)("div",{className:"flex items-start gap-3",children:[(0,C.jsx)("div",{className:"p-2 bg-lime/10 rounded-lg group-hover:bg-lime/20 transition-colors",children:(0,C.jsx)(z.R,{weight:"fill",className:"w-5 h-5 text-lime"})}),(0,C.jsxs)("div",{children:[(0,C.jsx)("h4",{className:"font-medium text-white group-hover:text-lime transition-colors",children:e.title}),(0,C.jsx)("p",{className:"text-gray-400 text-sm mt-1",children:e.description})]})]})},s))})]})]}),!q&&!T&&(0,C.jsxs)(r.P.div,{initial:{opacity:0}
1,animate:{opacity:1},transition:{delay:.2},className:"mt-16",children:[(0,C.jsx)("h2",{className:"text-2xl font-bold text-white text-center mb-8",children:K?"Ce que nous analysons":"What We Analyze"}),(0,C.jsx)("div",{className:"grid gap-4 sm:grid-cols-2 lg:grid-cols-4",children:[{icon:v.i,title:"Meta Tags",desc:"Title, description, canonical"},{icon:w.C,title:"Structure",desc:K?"Hi\xe9rarchie H1-H6":"H1-H6 hierarchy"},{icon:P._,title:"Images",desc:K?"Alt tags, optimisation":"Alt tags, optimization"},{icon:E.N,title:"Liens",desc:K?"Internes et externes":"Internal and external"},{icon:A.q,title:"Technique",desc:K?"HTTPS, viewport, langue":"HTTPS, viewport, language"},{icon:R.s,title:"Open Graph",desc:K?"Partage social":"Social sharing"},{icon:w.C,title:"Schema.org",desc:K?"Donn\xe9es structur\xe9es":"Structured data"},{icon:k.l,title:"Score",desc:K?"Note globale /100":"Overall score /100"}].map((e,s)=>(0,C.jsxs)("div",{className:"p-4 bg-white/5 border border-white/10 rounded-xl",children:[(0,C.jsx)(e.icon,{weight:"duotone",className:"w-8 h-8 text-lime mb-3"}),(0,C.jsx)("h3",{className:"font-semibold text-white mb-1",children:e.title}),(0,C.jsx)("p",{className:"text-gray-400 text-sm",children:e.desc})]},s))})]})]})})]})}}}]);

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.