1import{e as q,r as g,j as e,G as S,k as T,y as w,aO as u,q as v}from"./index-CzMEFmtw.js";import{P as Q,a as W,C as x}from"./ui-BklIU2Vp.js";import{M as K}from"./MediaPicker-D2IJuFJa.js";import{P as H}from"./plus-DZqQktxt.js";import{E}from"./external-link-DRUqUc_B.js";import{S as V}from"./save-Bu384Y2v.js";import{T as z}from"./trash-2-gzkfqCHP.js";import{I as J}from"./image-DUijihr1.js";import{T as X}from"./triangle-alert-BAXlYilG.js";import{C as Y}from"./copy-CpyZTpI_.js";import"./file-video-DCRmgGhD.js";import"./upload-C1EWCH4L.js";/** 2 * @license lucide-react v0.462.0 - ISC 3 * 4 * This source code is licensed under the ISC license. 5 * See the LICENSE file in the root directory of this source tree. 6 */const L=q("Info",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]]),y="https://healthserve.ae",_=[{group:"Main pages",routes:[{path:"/",label:"Homepage"},{path:"/about",label:"About Us"},{path:"/contact",label:"Contact"},{path:"/careers",label:"Careers"},{path:"/book-consultation",label:"Book Consultation"},{path:"/eligibility-checker",label:"Eligibility Checker"},{path:"/german-nursing-program",label:"German Nursing Program"},{path:"/mcq-packages",label:"MCQ Packages"},{path:"/webinars",label:"Webinars"},{path:"/blog",label:"Blog"}]},{group:"Licensing services",routes:[{path:"/services/gcc-licensing",label:"GCC Licensing"},{path:"/services/dha-licensing",label:"DHA Licensing"},{path:"/services/moh-licensing",label:"MOH Licensing"},{path:"/services/doh-haad-licensing",label:"DOH / HAAD Licensing"},{path:"/services/dataflow-assistance",label:"Dataflow Assistance"},{path:"/services/prometric-assistance",label:"Prometric Assistance"}]},{group:"Facility licensing",routes:[{path:"/services/facility-licensing",label:"Facility Licensing"},{path:"/services/medical-center-setup",label:"Medical Center Setup"},{path:"/services/clinic-licensing",label:"Clinic Licensing"},{path:"/services/home-healthcare-licensing",label:"Home Healthcare Licensing"}]},{group:"Training",routes:[{path:"/training",label:"Training Overview"},{path:"/training/acls",label:"ACLS"},{path:"/training/pals",label:"PALS"},{path:"/training/bls-aha",label:"BLS (AHA)"},{path:"/training/bls-ashi",label:"BLS (ASHI)"},{path:"/training/cna",label:"CNA"},{path:"/training/cphq",label:"CPHQ"},{path:"/training/cpps",label:"CPPS"},{path:"/training/first-aid",label:"First Aid"},{path:"/training/infection-control",label:"Infection Control"}]}],$=_.flatMap(s=>s.routes),F=s=>{var a;return((a=$.find(o=>o.path===s))==null?void 0:a.label)??s};function he(){const[s,a]=g.useState([]),[o,h]=g.useState(!0),[l,d]=g.useState(null),[m,p]=g.useState(""),[i,P]=g.useState(""),[C,R]=g.useState("pages");async function N(){h(!0);const{data:t,error:r}=await w.from("page_seo").select("*").order("route");r&&u.error(r.message),a(t??[]),h(!1)}g.useEffect(()=>{N()},[]);const G=g.useMemo(()=>{if(!m)return s;const t=m.toLowerCase();return s.filter(r=>r.route.toLowerCase().includes(t)||F(r.route).toLowerCase().includes(t))},[m,s]),b=s.find(t=>t.id===l)??null;async function O(t){const{error:r}=await w.from("page_seo").update({title:t.title||null,description:t.description||null,og_image:t.og_image||null,canonical:t.canonical||null,robots:t.robots||null,keywords:t.keywords||null}).eq("id",t.id);if(r)return u.error(r.message);u.success("SEO saved â live on the site now"),N()}async function B(t){if(!t.startsWith("/"))return u.error("Route must start with /");const{data:r,error:c}=await w.from("page_seo").insert({route:t}).select().single();if(c)return u.error(c.message);P(""),await N(),d(r.id)}async function I(t){if(!confirm(`Clear SEO for ${t.route}? Page will fall back to defaults.`))return;const{error:r}=await w.from("page_seo").delete().eq("id",t.id);if(r)return u.error(r.message);d(null),N()}function D(t,r){b&&a(c=>c.map(n=>n.id===b.id?{...n,[t]:r}:n))}const U=new Set(s.map(t=>t.route));return e.jsxs(Q,{children:[e.jsx(W,{title:"SEO & Search Appearance",description:"Control how each page appears in Google, on social shares, and to search crawlers. Changes go live instantly â no republish needed."}),e.jsx("div",{className:"flex gap-1 mb-4 bg-gray-100 p-1 rounded-xl w-fit",children:[{id:"pages",label:"Pages",icon:S},{id:"sitewide",label:"Sitewide settings",icon:L}].map(t=>e.jsxs("button",{onClick:()=>R(t.id),className:`inline-flex items-center gap-2 px-4 h-9 rounded-lg text-sm font-semibold transition ${C===t.id?"bg-white shadow-sm text-gray-900":"text-gray-600 hover:text-gray-900"}`,children:[e.jsx(t.icon,{className:"w-4 h-4"})," ",t.label]},t.id))}),C==="sitewide"&&e.jsx(ee,{}),C==="pages"&&e.jsx(e.Fragment,{children:e.jsxs("div",{className:"grid grid-cols-[300px_1fr] gap-4",children:[e.jsxs(x,{className:"p-3 h-fit",children:[e.jsxs("div",{className:"relative mb-3",children:[e.jsx(T,{className:"w-4 h-4 text-gray-400 absolute left-3 top-1/2 -translate-y-1/2"}),e.jsx("input",{placeholder:"Search pagesâ¦",value:m,onChange:t=>p(t.target.value),className:"w-full h-9 pl-9 pr-3 border border-gray-200 rounded-lg text-sm"})]}),e.jsxs("div",{className:"space-y-4 max-h-[65vh] overflow-y-auto pr-1",children:[o&&e.jsx("div",{className:"text-sm text-gray-500 p-2",children:"Loadingâ¦"}),_.map(t=>{const r=G.filter(n=>t.routes.some(A=>A.path===n.route)),c=t.routes.filter(n=>!U.has(n.path)&&(!m||n.label.toLowerCase().includes(m.toLowerCase())||n.path.includes(m)));return!r.length&&!c.length?null:e.jsxs("div",{children:[e.jsx("div",{className:"text-[10px] font-bold tracking-wider text-gray-400 uppercase mb-1.5 px-1",children:t.group}),e.jsxs("div",{className:"space-y-0.5",children:[r.map(n=>{const A=M(n);return e.jsxs("button",{onClick:()=>
6d(n.id),className:`w-full text-left px-3 py-2 rounded-lg text-sm transition ${l===n.id?"bg-[#F9A01B]/10 ring-1 ring-[#F9A01B]/30":"hover:bg-gray-50"}`,children:[e.jsxs("div",{className:"flex items-center justify-between gap-2",children:[e.jsx("div",{className:"font-semibold text-gray-900 truncate",children:F(n.route)}),e.jsx("span",{className:`w-1.5 h-1.5 rounded-full flex-shrink-0 ${A.dot}`})]}),e.jsx("div",{className:"text-xs text-gray-500 truncate",children:n.title||"No title set"})]},n.id)}),c.map(n=>e.jsxs("button",{onClick:()=>B(n.path),className:"w-full text-left px-3 py-2 rounded-lg text-sm hover:bg-gray-50 border border-dashed border-gray-200 opacity-70 hover:opacity-100",children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx("div",{className:"font-medium text-gray-700 truncate",children:n.label}),e.jsx(H,{className:"w-3.5 h-3.5 text-gray-400"})]}),e.jsx("div",{className:"text-xs text-gray-400 truncate",children:"Not configured â click to add"})]},n.path))]})]},t.group)}),(()=>{const t=new Set($.map(c=>c.path)),r=G.filter(c=>!t.has(c.route));return r.length?e.jsxs("div",{children:[e.jsx("div",{className:"text-[10px] font-bold tracking-wider text-gray-400 uppercase mb-1.5 px-1",children:"Custom routes"}),e.jsx("div",{className:"space-y-0.5",children:r.map(c=>e.jsxs("button",{onClick:()=>d(c.id),className:`w-full text-left px-3 py-2 rounded-lg text-sm ${l===c.id?"bg-[#F9A01B]/10 ring-1 ring-[#F9A01B]/30":"hover:bg-gray-50"}`,children:[e.jsx("div",{className:"font-mono text-xs text-gray-700 truncate",children:c.route}),e.jsx("div",{className:"text-xs text-gray-500 truncate",children:c.title||"No title set"})]},c.id))})]}):null})()]}),e.jsxs("div",{className:"mt-3 pt-3 border-t border-gray-100",children:[e.jsx("div",{className:"text-[10px] font-bold tracking-wider text-gray-400 uppercase mb-1.5",children:"Add custom route"}),e.jsxs("div",{className:"flex gap-1.5",children:[e.jsx("input",{placeholder:"/custom-path",value:i,onChange:t=>P(t.target.value),className:"flex-1 h-8 px-2 border border-gray-200 rounded-md text-xs"}),e.jsxs("button",{onClick:()=>B(i),disabled:!i,className:"inline-flex items-center gap-1 h-8 px-2 rounded-md bg-[#F9A01B] text-white text-xs font-semibold disabled:opacity-50",children:[e.jsx(H,{className:"w-3 h-3"})," Add"]})]})]})]}),e.jsx("div",{className:"space-y-4",children:b?e.jsx(Z,{row:b,onChange:D,onSave:()=>O(b),onDelete:()=>I(b)}):e.jsxs(x,{className:"p-16 text-center",children:[e.jsx(S,{className:"w-12 h-12 text-gray-300 mx-auto mb-3"}),e.jsx("div",{className:"text-lg font-semibold text-gray-900 mb-1",children:"Pick a page to edit its SEO"}),e.jsx("div",{className:"text-sm text-gray-500 max-w-md mx-auto",children:"Choose any page on the left. You'll see a live Google preview, a social share preview, and friendly checks that guide you to a great result."})]})})]})})]})}function Z({row:s,onChange:a,onSave:o,onDelete:h}){const l=s.title||"",d=s.description||"",m=s.canonical||`${y}${s.route}`,p=M(s);return e.jsxs(e.Fragment,{children:[e.jsx(x,{className:"p-4",children:e.jsxs("div",{className:"flex items-start justify-between gap-4",children:[e.jsxs("div",{className:"min-w-0",children:[e.jsx("div",{className:"text-lg font-bold text-gray-900",children:F(s.route)}),e.jsxs("div",{className:"flex items-center gap-1.5 mt-1",children:[e.jsx("span",{className:"font-mono text-xs text-gray-500 truncate",children:s.route}),e.jsx("a",{href:s.route,target:"_blank",rel:"noreferrer",className:"text-gray-400 hover:text-[#F9A01B]",children:e.jsx(E,{className:"w-3 h-3"})})]})]}),e.jsxs("div",{className:"flex items-center gap-2 flex-shrink-0",children:[e.jsxs("div",{className:`inline-flex items-center gap-1.5 px-3 h-9 rounded-lg text-xs font-semibold ${p.pill}`,children:[e.jsx("span",{className:`w-1.5 h-1.5 rounded-full ${p.dot}`})," ",p.label]}),e.jsxs("button",{onClick:o,className:"inline-flex items-center gap-1.5 h-9 px-4 rounded-lg bg-[#F9A01B] text-white text-sm font-semibold hover:bg-[#e68a0a] shadow-sm",children:[e.jsx(V,{className:"w-4 h-4"})," Save changes"]}),e.jsx("button",{onClick:h,title:"Clear SEO for this page",className:"inline-flex items-center justify-center h-9 w-9 rounded-lg border border-red-200 text-red-600 hover:bg-red-50",children:e.jsx(z,{className:"w-4 h-4"})})]})]})}),e.jsxs(x,{className:"p-5",children:[e.jsx(f,{icon:T,title:"Google search preview",hint:"How your page looks in Google results"}),e.jsxs("div",{className:"mt-3 p-4 bg-white rounded-xl border border-gray-100 max-w-2xl",children:[e.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[e.jsx("div",{className:"w-6 h-6 rounded-full bg-gradient-to-br from-[#F9A01B] to-[#2CC5F4] flex-shrink-0"}),e.jsxs("div",{className:"text-xs",children:[e.jsx("div",{className:"text-gray-900 font-medium",children:"Healthserve"}),e.jsx("div",{className:"text-gray-500",children:m.replace("https://","")})]})]}),e.jsx("div",{className:"text-[#1a0dab] text-xl font-normal hover:underline cursor-pointer leading-snug mt-1",children:l||"Set a title to preview your listing"}),e.jsx("div",{className:"text-sm text-gray-700 leading-normal mt-1",children:d||e.jsx("span",{className:"text-gray-400 italic",children:"Set a meta de
6scription to preview it here."})})]})]}),e.jsxs(x,{className:"p-5",children:[e.jsx(f,{icon:L,title:"Page metadata",hint:"These are the essentials â Google and other search engines read these"}),e.jsxs("div",{className:"space-y-4 mt-4",children:[e.jsx(j,{label:"Page title",help:"Appears as the blue clickable headline in Google. Keep it under 60 characters so it doesn't get cut off. Include your main keyword and brand.",example:'e.g. "DHA Licensing in Dubai â Fast Approval | Healthserve"',value:l,len:l.length,softMax:60,hardMax:80,children:e.jsx("input",{value:l,maxLength:80,onChange:i=>a("title",i.target.value),className:"w-full h-10 px-3 border border-gray-200 rounded-lg text-sm focus:border-[#F9A01B] focus:ring-1 focus:ring-[#F9A01B] outline-none"})}),e.jsx(j,{label:"Meta description",help:"The short paragraph shown under the title in Google. Aim for 120â160 characters. Write like an ad â describe the benefit and invite a click.",example:'e.g. "Get your DHA license in Dubai fast. Expert consultants, document prep, exam booking. Trusted by 2,800+ healthcare pros. Free eligibility check."',value:d,len:d.length,softMax:160,hardMax:200,children:e.jsx("textarea",{value:d,maxLength:200,rows:3,onChange:i=>a("description",i.target.value),className:"w-full px-3 py-2 border border-gray-200 rounded-lg text-sm focus:border-[#F9A01B] focus:ring-1 focus:ring-[#F9A01B] outline-none resize-none"})}),e.jsx(j,{label:"Keywords (optional)",help:"A few comma-separated terms this page is about. Modern search engines mostly ignore this, but it's still useful for internal tooling.",example:"e.g. dha license, dubai healthcare license, medical license uae",children:e.jsx("input",{value:s.keywords||"",onChange:i=>a("keywords",i.target.value),className:"w-full h-10 px-3 border border-gray-200 rounded-lg text-sm"})})]})]}),e.jsxs(x,{className:"p-5",children:[e.jsx(f,{icon:J,title:"Social share appearance",hint:"How this page looks when shared on WhatsApp, LinkedIn, Facebook, etc."}),e.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-[1fr_320px] gap-6 mt-4",children:[e.jsxs("div",{children:[e.jsx("label",{className:"text-sm font-semibold text-gray-800 block mb-1",children:"Share image (1200 Ã 630 px)"}),e.jsx("div",{className:"text-xs text-gray-500 mb-2",children:"This image appears in link previews. If you leave it blank, we'll use the sitewide default."}),e.jsx(K,{value:s.og_image||"",onChange:i=>
6a("og_image",i||null),accept:"image",label:"Choose share image"})]}),e.jsxs("div",{children:[e.jsx("div",{className:"text-xs font-semibold text-gray-500 uppercase mb-2",children:"Preview"}),e.jsxs("div",{className:"rounded-xl overflow-hidden border border-gray-200 bg-white",children:[s.og_image?e.jsx("img",{src:s.og_image,alt:"",className:"w-full aspect-[1200/630] object-cover"}):e.jsx("div",{className:"w-full aspect-[1200/630] bg-gradient-to-br from-[#F9A01B]/10 to-[#2CC5F4]/10 flex items-center justify-center text-gray-400 text-xs",children:"No share image"}),e.jsxs("div",{className:"p-3",children:[e.jsx("div",{className:"text-[10px] uppercase tracking-wider text-gray-400",children:"healthserve.ae"}),e.jsx("div",{className:"text-sm font-semibold text-gray-900 line-clamp-2 mt-0.5",children:l||"Page title"}),e.jsx("div",{className:"text-xs text-gray-500 line-clamp-2 mt-0.5",children:d||"Meta description shows here"})]})]})]})]})]}),e.jsxs("details",{className:"group",children:[e.jsx("summary",{className:"cursor-pointer list-none",children:e.jsxs(x,{className:"p-4 flex items-center justify-between hover:border-gray-300 transition",children:[e.jsxs("div",{children:[e.jsx("div",{className:"text-sm font-semibold text-gray-900",children:"Advanced options"}),e.jsx("div",{className:"text-xs text-gray-500",children:"Canonical URL & search-engine indexing rules"})]}),e.jsx("div",{className:"text-xs text-gray-400 group-open:hidden",children:"Show"}),e.jsx("div",{className:"text-xs text-gray-400 hidden group-open:block",children:"Hide"})]})}),e.jsxs(x,{className:"p-5 mt-2 space-y-4",children:[e.jsx(j,{label:"Canonical URL",help:"The 'official' URL for this page. Usually leave blank â we automatically use https://healthserve.ae plus the route. Only fill this if the same content lives at multiple URLs and you want Google to prefer one.",example:`e.g. ${y}${s.route}`,children:e.jsx("input",{value:s.canonical||"",onChange:i=>a("canonical",i.target.value),placeholder:`${y}${s.route}`,className:"w-full h-10 px-3 border border-gray-200 rounded-lg text-sm font-mono"})}),e.jsx(j,{label:"Search engine visibility",help:"Controls whether Google can list this page and follow its links. 99% of the time you want the first option.",children:e.jsx("div",{className:"grid grid-cols-2 gap-2",children:[{v:"index,follow",label:"Public",desc:"Show in Google, follow links (default)"},{v:"noindex,follow",label:"Hidden from Google",desc:"Don't list in search, but crawl links"},{v:"index,nofollow",label:"Public, ignore links",desc:"List page, don't follow its links"},{v:"noindex,nofollow",label:"Fully private",desc:"Hide completely from search engines"}].map(i=>e.jsxs("button",{onClick:()=>a("robots",i.v),className:`text-left p-3 rounded-lg border transition ${(s.robots||"index,follow")===i.v?"border-[#F9A01B] bg-[#F9A01B]/5 ring-1 ring-[#F9A01B]/20":"border-gray-200 hover:border-gray-300"}`,children:[e.jsx("div",{className:"text-sm font-semibold text-gray-900",children:i.label}),e.jsx("div",{className:"text-xs text-gray-500 mt-0.5",children:i.desc})]},i.v))})})]})]})]})}function ee(){const s=a=>{navigator.clipboard.writeText(a),u.success("Copied")};return e.jsxs("div",{className:"space-y-4",children:[e.jsxs(x,{className:"p-5",children:[e.jsx(f,{icon:S,title:"Site identity",hint:"These live on every page automatically"}),e.jsxs("div",{className:"grid md:grid-cols-2 gap-3 mt-4 text-sm",children:[e.jsx(k,{label:"Primary domain",value:"https://healthserve.ae",onCopy:s}),e.jsx(k,{label:"Google Search Console",value:"Verified â",muted:!0}),e.jsx(k,{label:"Sitemap",value:`${y}/sitemap.xml`,onCopy:s,openable:!0}),e.jsx(k,{label:"Robots file",value:`${y}/robots.txt`,onCopy:s,openable:!0})]})]}),e.jsxs(x,{className:"p-5",children:[e.jsx(f,{icon:L,title:"Analytics & tracking",hint:"Active tracking pixels"}),e.jsx("div",{className:"grid md:grid-cols-3 gap-3 mt-4",children:[{name:"Google Analytics 4",id:"G-EL0018RQ7K"},{name:"Google Tag Manager",id:"GTM-P8QJVVX"},{name:"Meta Pixel",id:"2471484263314284"}].map(a=>e.jsxs("div",{className:"p-3 rounded-lg border border-gray-100 bg-gray-50",children:[e.jsxs("div",{className:"flex items-center gap-1.5 text-xs font-semibold text-emerald-600",children:[e.jsx(v,{className:"w-3.5 h-3.5"})," Active"]}),e.jsx("div",{className:"text-sm font-semibold text-gray-900 mt-1",children:a.name}),e.jsx("div",{className:"text-xs text-gray-500 font-mono truncate",children:a.id})]},a.id))})]}),e.jsxs(x,{className:"p-5",children:[e.jsx(f,{icon:X,title:"SEO tips",hint:"Quick wins for your site"}),e.jsxs("ul",{className:"mt-3 space-y-2 text-sm text-gray-700",children:[e.jsxs("li",{className:"flex gap-2",children:[e.jsx(v,{className:"w-4 h-4 text-emerald-500 flex-shrink-0 mt-0.5"})," Give every service page a unique 50â60 char title and 120â160 char description."]}),e.jsxs("li",{className:"flex gap-2",children:[e.jsx(v,{className:"w-4 h-4 text-emerald-500 flex-shrink-0 mt-0.5"})," Add a share image (1200Ã630) so WhatsApp/LinkedIn previews look premium."]}),e.jsxs("li",{className:"flex gap-2",children:[e.jsx(v,{className:"w-4 h-4 text-emerald-500 flex-shrink-0 mt-0.5"}),' Use the actual keyword users type into Google â e.g. "DHA license Dubai", not "healthcare authority services".']}),e.jsxs("li",{className:"flex gap-2",children:[e.jsx(v,{className:"w-4 h-4 text-emerald-500 flex-shrink-0 mt-0.5"})," Publish blog posts regularly â every post is a new page Google can rank."]})]})]})]})}function k({label:s,value:a,onCopy:o,openable:h,muted:l}){return e.jsxs("div",{className:"p-3 rounded-lg border border-gray-100 bg-gray-50",children:[e.jsx("div",{className:"text-[10px] font-bold uppercase tracking-wider text-gray-500",children:s}),e.jsxs("div",{className:"flex items-center gap-2 mt-1",children:[e.jsx("div",{className:`text-sm font-mono truncate flex-1 ${l?"text-emerald-700":"text-gray-900"}`,children:a}),o&&e.jsx("button",{onClick:()=>o(a),className:"text-gray-400 hover:text-[#F9A01B]",title:"Copy",children:e.jsx(Y,{className:"w-3.5 h-3.5"})}),h&&e.jsx("a",{href:a,target:"_blank",rel:"noreferrer",className:"text-gray-400 hover:text-[#F9A01B]",title:"Open",children:e.jsx(E,{className:"w-3.5 h-3.5"})})]})]})}function f({icon:s,title:a,hint:o}){return e.jsxs("div",{className:"flex items-start gap-3",children:[e.jsx("div",{className:"w-9 h-9 rounded-lg bg-gradient-to-br from-[#F9A01B]/10 to-[#2CC5F4]/10 flex items-center justify-center flex-shrink-0",children:e.jsx(s,{className:"w-4 h-4 text-[#F9A01B]"})}),e.jsxs("div",{children:[e.jsx("div",{className:"text-base font-bold text-gray-900",children:a}),o&&e.jsx("div",{className:"text-xs text-gray-500 mt-0.5",children:o})]})]})}function j({label:s,help:a,example:o,value:h,len:l,softMax:d,hardMax:m,children:p}){const i=d&&l!==void 0?l===0?{c:"text-gray-400",msg:"empty"}:l<d*.6?{c:"text-amber-600",msg:"a bit short"}:l<=d?{c:"text-emerald-600",msg:"great length"}:{c:"text-red-500",msg:"may be truncated"}:null;return e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center justify-between mb-1",children:[e.jsx("label",{className:"text-sm font-semibold text-gray-800",children:s}),d&&l!==void 0&&e.jsxs("span",{className:`text-[11px] font-semibold ${i==null?void 0:i.c}`,children:[l,"/",d," · ",i==null?void 0:i.msg]})]}),a&&e.jsx("div",{className:"text-xs text-gray-500 mb-2 leading-relaxed",children:a}),p,o&&e.jsx("div",{className:"text-[11px] text-gray-400 mt-1.5 italic",children:o})]})}function M(s){const a=(s.title||"").length,o=(s.description||"").length,h=!!s.og_image;let l=0;return a>=30&&a<=60?l+=2:a>0&&(l+=1),o>=120&&o<=160?l+=2:o>0&&(l+=1),h&&(l+=1),l>=4?{label:"Great",pill:"bg-emerald-50 text-emerald-700",dot:"bg-emerald-500"}:l>
6=2?{label:"Needs work",pill:"bg-amber-50 text-amber-700",dot:"bg-amber-500"}:{label:"Not set",pill:"bg-gray-100 text-gray-600",dot:"bg-gray-400"}}export{he 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.