1import{a as le,r as d,h as ie,j as e,H as re,d as ne,C as g,e as h,S as ce,B as f,L as de,l as O,m as D,n as S}from"./index-BMyAg9hy.js";import{B as j}from"./badge-_8MOXXPo.js";import{I as m}from"./input-CRYSpBFb.js";import{L as r}from"./label-5yW72X3K.js";import{T as U}from"./textarea-B5utAeN1.js";import{S as y,a as w,b as E,c as A,d as p}from"./select-BxR0mkAX.js";import{L as oe}from"./leaf-y9QIXRVL.js";import{A as xe}from"./arrow-left-CoVUXH0d.js";import{B as V}from"./bot-AMFLW7MP.js";import{C as me}from"./circle-check-BbuWxM-w.js";import{B as P}from"./ban-Dkm7zsC1.js";import{a as G,C as K}from"./circle-plus-D3Y_vi8O.js";import{G as F}from"./gauge-B6HOtL7r.js";import{H as ge}from"./history-CCrKTHz_.js";import{F as he}from"./file-text-BEniDNpA.js";import"./index-CajXXIGZ.js";import"./index-BfcOc_0r.js";import"./index-ljJPZBeP.js";import"./index-R7twjd1c.js";import"./index-BLzUTG1e.js";import"./chevron-down-BQFzcfVX.js";import"./check-_UILlSTY.js";import"./chevron-up-RFhyN0Ee.js";const Q=["APPROVED","LIMITED","QUARANTINED","BLOCKED","REVOKED"],$=["TRUSTED_INTERNAL","LIMITED_INTERNAL","APPROVED_EXTERNAL","UNTRUSTED","REVOKED"],pe=["INTERNAL","EXTERNAL"],ue=["PUBLIC","INTERNAL","CONFIDENTIAL","RESTRICTED","SECRET"],je=l=>{const n={APPROVED:"bg-emerald-500/20 text-emerald-300 border-emerald-500/40",LIMITED:"bg-cyan-500/20 text-cyan-300 border-cyan-500/40",QUARANTINED:"bg-amber-500/20 text-amber-300 border-amber-500/40",BLOCKED:"bg-red-500/20 text-red-300 border-red-500/40",REVOKED:"bg-gray-600/40 text-gray-300 border-gray-500/40"};return n[l]||n.BLOCKED},Ne=l=>{const n={TRUSTED_INTERNAL:"bg-emerald-500/20 text-emerald-300 border-emerald-500/40",LIMITED_INTERNAL:"bg-cyan-500/20 text-cyan-300 border-cyan-500/40",APPROVED_EXTERNAL:"bg-blue-500/20 text-blue-300 border-blue-500/40",UNTRUSTED:"bg-amber-500/20 text-amber-300 border-amber-500/40",REVOKED:"bg-gray-600/40 text-gray-300 border-gray-500/40"};return n[l]||n.UNTRUSTED},H=l=>{const n={ALLOW:"bg-emerald-500/20 text-emerald-300 border-emerald-500/40",DENY:"bg-red-500/20 text-red-300 border-red-500/40",REQUIRE_APPROVAL:"bg-amber-500/20 text-amber-300 border-amber-500/40",QUARANTINE:"bg-purple-500/20 text-purple-300 border-purple-500/40"};return n[l]||n.DENY},L=l=>l?new Date(l).toLocaleString("nl-NL",{dateStyle:"short",timeStyle:"short"}):"â",Fe=()=>{const{toast:l}=le(),[n,M]=d.useState("agents"),[N,I]=d.useState(!1),[v,z]=d.useState([]),[k,X]=d.useState([]),[R,q]=d.useState([]),[C,B]=d.useState(null),[t,o]=d.useState({agent_id:"",name:"",description:"",purpose:"",classification:"INTERNAL",trust_level:"UNTRUSTED",status:"",allowed_tools:"",allowed_actions:"",blocked_actions:"",allowed_data_classes:"",allowed_entities:""}),[i,b]=d.useState({agent_id:"cleo-orchestrator",action:"read_order_summaries",tool:"",data_class:"INTERNAL",purpose:"Eigenaarrapport samenstellen",task_id:""}),x=d.useCallback(async s=>{const{data:a,error:c}=await ie.functions.invoke("agent-fabric",{body:s});return c?(l({title:"Fout",description:c.message||"Agent Fabric verzoek mislukt.",variant:"destructive"}),null):(a&&a.success===!1&&l({title:"Afgewezen",description:a.error||"Actie niet toegestaan.",variant:"destructive"}),a)},[l]),_=d.useCallback(async()=>{I(!0);const s=await x({op:"list_agents"});s?.success&&z(s.agents||[]),I(!1)},[x]),T=d.useCallback(async()=>{const s=await x({op:"list_policy_decisions",limit:100});s?.success&&X(s.decisions||[])},[x]),u=d.useCallback(async()=>{const s=await x({op:"list_registry_audit",limit:100});s?.success&&q(s.audit||[])},[x]);d.useEffect(()=>{_(),T(),u()},[_,T,u]);const J=async()=>{if(!t.agent_id.trim()||!t.name.trim()){l({title:"agent_id en name vereist",variant:"destructive"});return}const s={op:"register_agent",agent_id:t.agent_id,name:t.name,description:t.description,purpose:t.purpose,classification:t.classification,trust_level:t.trust_level,status:t.status||void 0,allowed_tools:t.allowed_tools?t.allowed_tools.split(",").map(c=>c.trim()).filter(Boolean):[],allowed_actions:t.allowed_actions?t.allowed_actions.split(",").map(c=>c.trim()).filter(Boolean):[],blocked_actions:t.blocked_actions?t.blocked_actions.split(",").map(c=>
1c.trim()).filter(Boolean):[],allowed_data_classes:t.allowed_data_classes?t.allowed_data_classes.split(",").map(c=>c.trim()).filter(Boolean):[],allowed_entities:t.allowed_entities?t.allowed_entities.split(",").map(c=>c.trim()).filter(Boolean):[]},a=await x(s);a?.success&&(l({title:"Agent geregistreerd",description:`${a.agent.name} â ${a.agent.status}`}),o({agent_id:"",name:"",description:"",purpose:"",classification:"INTERNAL",trust_level:"UNTRUSTED",status:"",allowed_tools:"",allowed_actions:"",blocked_actions:"",allowed_data_classes:"",allowed_entities:""}),_(),u())},W=async(s,a)=>{(await x({op:"set_status",agent_id:s,status:a}))?.success&&(l({title:"Status bijgewerkt",description:`${s} â ${a}`}),_(),u())},Y=async(s,a)=>{(await x({op:"set_trust_level",agent_id:s,trust_level:a}))?.success&&(l({title:"Trust level bijgewerkt",description:`${s} â ${a}`}),_(),u())},Z=async s=>{(await x({op:"revoke_agent",agent_id:s,note:"Ingetrokken via eigenaarsconsole"}))?.success&&(l({title:"Agent ingetrokken",description:`${s} â REVOKED`}),_(),u())},ee=async()=>{B(null);const s=await x({op:"evaluate_policy",agent_id:i.agent_id,action:i.action||void 0,tool:i.tool||void 0,data_class:i.data_class||void 0,purpose:i.purpose,task_id:i.task_id||void 0});s?.success&&(B(s.decision),l({title:`Beleidsbeslissing: ${s.decision.result}`,description:s.decision.matched_rule}),T())},se=v.filter(s=>s.status==="APPROVED").length,ae=v.filter(s=>s.status==="QUARANTINED").length,te=v.filter(s=>s.status==="BLOCKED"||s.status==="REVOKED").length;return e.jsxs("div",{className:"container mx-auto px-4 py-10 max-w-6xl",children:[e.jsxs(re,{children:[e.jsx("title",{children:"Agent Garden â HWO Eigenaarsconsole"}),e.jsx("meta",{name:"description",content:"FABRIC-A: Agent Garden registry + centrale beleidsengine voor CLEO Agent Core."}),e.jsx("meta",{name:"robots",content:"noindex,nofollow"})]}),e.jsxs("div",{className:"flex items-center gap-3 mb-2",children:[e.jsx(oe,{className:"w-7 h-7 text-emerald-400"}),e.jsx("h1",{className:"text-3xl font-bold text-white futuristic-text-glow",children:"Agent Garden"}),e.jsx(j,{className:"bg-emerald-500/20 text-emerald-300 border-emerald-500/40",children:"FABRIC-A"})]}),e.jsxs("p",{className:"text-gray-400 mb-6",children:["Beveiligde agentregistry + centrale beleidsengine. Eén CLEO-intelligentie, interne eigenaarsgrens.",e.jsxs(ne,{to:"/admin/agent-core",className:"ml-3 text-cyan-300 hover:underline inline-flex items-center gap-1",children:[e.jsx(xe,{className:"w-4 h-4"})," Agent Core"]})]}),e.jsxs("div",{className:"grid grid-cols-2 md:grid-cols-4 gap-4 mb-6",children:[e.jsx(g,{className:"glassmorphism",children:e.jsxs(h,{className:"p-4 flex items-center gap-3",children:[e.jsx(V,{className:"w-6 h-6 text-cyan-400"}),e.jsxs("div",{children:[e.jsx("div",{className:"text-2xl font-bold text-white",children:v.length}),e.jsx("div",{className:"text-xs text-gray-400",children:"Geregistreerde agents"})]})]})}),e.jsx(g,{className:"glassmorphism",children:e.jsxs(h,{className:"p-4 flex items-center gap-3",children:[e.jsx(me,{className:"w-6 h-6 text-emerald-400"}),e.jsxs("div",{children:[e.jsx("div",{className:"text-2xl font-bold text-white",children:se}),e.jsx("div",{className:"text-xs text-gray-400",children:"Goedgekeurd"})]})]})}),e.jsx(g,{className:"glassmorphism",children:e.jsxs(h,{className:"p-4 flex items-center gap-3",children:[e.jsx(ce,{className:"w-6 h-6 text-amber-400"}),e.jsxs("div",{children:[e.jsx("div",{className:"text-2xl font-bold text-white",children:ae}),e.jsx("div",{className:"text-xs text-gray-400",children:"In quarantaine"})]})]})}),e.jsx(g,{className:"glassmorphism",children:e.jsxs(h,{className:"p-4 flex items-center gap-3",children:[e.jsx(P,{className:"w-6 h-6 text-red-400"}),e.jsxs("div",{children:[e.jsx("div",{className:"text-2xl font-bold text-white",children:te}),e.jsx("div",{className:"text-xs text-gray-400",children:"Geblokkeerd / ingetrokken"})]})]})})]}),e.jsx("div",{className:"flex flex-wrap gap-2 mb-6",children:[{id:"agents",label:"Registry",icon:V},{id:"register",label:"Registreren",icon:G},{id:"policy",label:"Beleidsengine",icon:F},{id:"decisions",label:"Beleidsbeslissingen",icon:K},{id:"audit",label:"Registry-audit",icon:ge}].map(s=>e.jsxs(f,{variant:n===s.id?"default":"outline",onClick:()=>M(s.id),className:n===s.id?"glow-effect":"border-cyan-500/40 text-cyan-300",children:[e.jsx(s.icon,{className:"w-4 h-4 mr-2"})," ",s.label]},s.id))}),N&&e.jsx("div",{className:"flex justify-center py-10",children:e.jsx(de,{className:"w-8 h-8 animate-spin text-cyan-400"})}),n==="agents"&&!N&&e.jsxs("div",{className:"space-y-3",children:[v.length===0&&e.jsx("p",{className:"text-gray-400",children:"Geen agents geregistreerd."}),v.map(s=>e.jsx(g,{className:"glassmorphism",children:e.jsx(h,{className:"p-4",children:e.jsxs("div",{className:"flex flex-wrap items-start justify-between gap-3",children:[e.jsxs("div",{className:"min-w-0 flex-1",children:[e.jsxs("div",{className:"flex items-center gap-2 flex-wrap",children:[e.jsx("span",{className:"font-semibold text-white",children:s.name}),e.jsx("code",{className:"text-xs text-cyan-300",children:s.agent_id}),e.jsx(j,{className:je(s.status),children:s.status}),e.jsx(j,{className:Ne(s.trust_level),children:s.trust_level}),e.jsx(j,{className:s.classification==="INTERNAL"?"bg-cyan-500/20 text-cyan-300 border-cyan-500/40":"bg-purple-500/20 text-purple-300 border-purple-500/40",children:s.classification})]}),s.description&&e.jsx("div",{className:"text-sm text-gray-300 mt-1",children:s.description}),e.jsxs("div",{className:"text-xs text-gray-400 mt-1",children:["v",s.version," · ",s.provider_model||"â"," · ",L(s.created_at)]}),e.jsxs("div",{className:"flex flex-wrap gap-1 mt-2",children:[(s.allowed_actions||[]).slice(0,6).map(a=>e.jsx("span",{className:"text-[10px] px-1.5 py-0.5 rounded bg-emerald-500/10 text-emerald-300 border border-emerald-500/20",children:a},a)),(s.allowed_actions||[]).length>6&&e.jsxs("span",{className:"text-[10px] text-gray-400",children:["+",(s.allowed_actions||[]).length-6," meer"]})]}),e.jsx("div",{className:"flex flex-wrap gap-1 mt-1",children:(s.allowed_data_classes||[]).map(a=>e.jsx("span",{className:"text-[10px] px-1.5 py-0.5 rounded bg-blue-500/10 text-blue-300 border border-blue-500/20",children:a},a))})]}),e.jsxs("div",{className:"flex flex-col gap-2 shrink-0",children:[e.jsxs(y,{value:"",onValueChange:a=>a&&W(s.agent_id,a),children:[e.jsx(w,{className:"w-44 border-cyan-500/40 text-cyan-300",children:e.jsx(E,{placeholder:"Status wijzigen"})}),e.jsx(A,{children:Q.map(a=>e.jsx(p,{value:a,children:a},a))})]}),e.jsxs(y,{value:"",onValueChange:a=>a&&Y(s.agent_id,a),children:[e.jsx(w,{className:"w-44 border-cyan-500/40 text-cyan-300",children:e.jsx(E,{placeholder:"Trust level"})}),e.jsx(A,{children:$.map(a=>e.jsx(p,{value:a,children:a},a))})]}),s.agent_id!=="cleo-orchestrator"&&e.jsxs(f,{onClick:()=>Z(s.agent_id),variant:"outline",className:"border-red-500/40 text-red-300",children:[e.jsx(P,{className:"w-4 h-4 mr-1"})," Intrekken"]})]})]})})},s.id)),e.jsxs("p",{className:"text-xs text-gray-500 mt-2 flex items-center gap-1",children:[e.jsx(O,{className:"w-3 h-3"}
1)," Onbekende agents worden standaard geblokkeerd. Externe agents defaulten naar QUARANTINED. Trust level negeert nooit een BLOCKED actie."]})]}),n==="register"&&!N&&e.jsxs(g,{className:"glassmorphism",children:[e.jsx(D,{children:e.jsxs(S,{className:"text-white flex items-center gap-2",children:[e.jsx(G,{className:"w-5 h-5 text-cyan-400"})," Nieuwe agent registreren"]})}),e.jsxs(h,{className:"space-y-3",children:[e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-3",children:[e.jsxs("div",{children:[e.jsx(r,{className:"text-gray-300",children:"Agent ID (handle)"}),e.jsx(m,{value:t.agent_id,onChange:s=>o({...t,agent_id:s.target.value}),placeholder:"bijv. sales-specialist"})]}),e.jsxs("div",{children:[e.jsx(r,{className:"text-gray-300",children:"Naam"}),e.jsx(m,{value:t.name,onChange:s=>o({...t,name:s.target.value}),placeholder:"Bijv. Sales Specialist"})]})]}),e.jsxs("div",{children:[e.jsx(r,{className:"text-gray-300",children:"Beschrijving"}),e.jsx(U,{value:t.description,onChange:s=>o({...t,description:s.target.value}),rows:2})]}),e.jsxs("div",{children:[e.jsx(r,{className:"text-gray-300",children:"Doel (purpose)"}),e.jsx(U,{value:t.purpose,onChange:s=>o({...t,purpose:s.target.value}),rows:2})]}),e.jsxs("div",{className:"grid grid-cols-2 md:grid-cols-4 gap-3",children:[e.jsxs("div",{children:[e.jsx(r,{className:"text-gray-300",children:"Classificatie"}),e.jsxs(y,{value:t.classification,onValueChange:s=>o({...t,classification:s}),children:[e.jsx(w,{children:e.jsx(E,{})}),e.jsx(A,{children:pe.map(s=>e.jsx(p,{value:s,children:s},s))})]})]}),e.jsxs("div",{children:[e.jsx(r,{className:"text-gray-300",children:"Trust level"}),e.jsxs(y,{value:t.trust_level,onValueChange:s=>o({...t,trust_level:s}),children:[e.jsx(w,{children:e.jsx(E,{})}),e.jsx(A,{children:$.map(s=>e.jsx(p,{value:s,children:s},s))})]})]}),e.jsxs("div",{children:[e.jsx(r,{className:"text-gray-300",children:"Status (leeg = veilige default)"}),e.jsxs(y,{value:t.status||"none",onValueChange:s=>o({...t,status:s==="none"?"":s}),children:[e.jsx(w,{children:e.jsx(E,{placeholder:"Default"})}),e.jsxs(A,{children:[e.jsx(p,{value:"none",children:"Default (externâQUARANTINE, internâBLOCKED)"}),Q.map(s=>e.jsx(p,{value:s,children:s},s))]})]})]}),e.jsx("div",{className:"flex items-end",children:e.jsx(f,{onClick:J,className:"glow-effect w-full",children:"Registreren"})})]}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-3",children:[e.jsxs("div",{children:[e.jsx(r,{className:"text-gray-300",children:"Allowed tools (komma-gescheiden)"}),e.jsx(m,{value:t.allowed_tools,onChange:s=>o({...t,allowed_tools:s.target.value}),placeholder:"agent-core, policy-engine"})]}),e.jsxs("div",{children:[e.jsx(r,{className:"text-gray-300",children:"Allowed actions (komma-gescheiden)"}),e.jsx(m,{value:t.allowed_actions,onChange:s=>o({...t,allowed_actions:s.target.value}),placeholder:"read_order_summaries, ..."})]}),e.jsxs("div",{children:[e.jsx(r,{className:"text-gray-300",children:"Blocked actions (komma-gescheiden)"}),e.jsx(m,{value:t.blocked_actions,onChange:s=>o({...t,blocked_actions:s.target.value}),placeholder:"money_transfer, ..."})]}),e.jsxs("div",{children:[e.jsx(r,{className:"text-gray-300",children:"Allowed data classes (komma-gescheiden)"}),e.jsx(m,{value:t.allowed_data_classes,onChange:s=>o({...t,allowed_data_classes:s.target.value}),placeholder:"PUBLIC, INTERNAL"})]})]}),e.jsxs("p",{className:"text-xs text-gray-500 flex items-center gap-1",children:[e.jsx(O,{className:"w-3 h-3"})," Veilige default: externe agents â QUARANTINED, interne agents â BLOCKED tot expliciet goedgekeurd."]})]})]}),n==="policy"&&!N&&e.jsxs("div",{className:"space-y-4",children:[e.jsxs(g,{className:"glassmorphism",children:[e.jsx(D,{children:e.jsxs(S,{className:"text-white flex items-center gap-2",children:[e.jsx(F,{className:"w-5 h-5 text-emerald-400"})," Centrale beleidsengine â evaluatie"]})}),e.jsxs(h,{className:"space-y-3",children:[e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-3",children:[e.jsxs("div",{children:[e.jsx(r,{className:"text-gray-300",children:"Agent ID"}),e.jsx(m,{value:i.agent_id,onChange:s=>b({...i,agent_id:s.target.value})})]}),e.jsxs("div",{children:[e.jsx(r,{className:"text-gray-300",children:"Action"}),e.jsx(m,{value:i.action,onChange:s=>b({...i,action:s.target.value}),placeholder:"read_order_summaries"})]}),e.jsxs("div",{children:[e.jsx(r,{className:"text-gray-300",children:"Tool (optioneel)"}
1),e.jsx(m,{value:i.tool,onChange:s=>b({...i,tool:s.target.value}),placeholder:"agent-core"})]}),e.jsxs("div",{children:[e.jsx(r,{className:"text-gray-300",children:"Data class"}),e.jsxs(y,{value:i.data_class||"none",onValueChange:s=>b({...i,data_class:s==="none"?"":s}),children:[e.jsx(w,{children:e.jsx(E,{})}),e.jsxs(A,{children:[e.jsx(p,{value:"none",children:"Geen (n.v.t.)"}),ue.map(s=>e.jsx(p,{value:s,children:s},s))]})]})]}),e.jsxs("div",{children:[e.jsx(r,{className:"text-gray-300",children:"Purpose"}),e.jsx(m,{value:i.purpose,onChange:s=>b({...i,purpose:s.target.value})})]}),e.jsxs("div",{children:[e.jsx(r,{className:"text-gray-300",children:"Task ID (optioneel)"}),e.jsx(m,{value:i.task_id,onChange:s=>b({...i,task_id:s.target.value})})]})]}),e.jsxs(f,{onClick:ee,className:"glow-effect",children:[e.jsx(K,{className:"w-4 h-4 mr-2"})," Beleid evalueren"]})]})]}),C&&e.jsxs(g,{className:"glassmorphism",children:[e.jsx(D,{children:e.jsxs(S,{className:"text-white flex items-center gap-2",children:[e.jsx(he,{className:"w-5 h-5 text-cyan-400"})," Beleidsbeslissing"]})}),e.jsxs(h,{className:"space-y-2",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(j,{className:H(C.result),children:C.result}),e.jsx("span",{className:"text-sm text-gray-300",children:C.reason})]}),e.jsx("pre",{className:"text-xs text-gray-200 bg-black/40 rounded-lg p-4 overflow-auto max-h-96 whitespace-pre-wrap break-words",children:JSON.stringify(C,null,2)})]})]})]}),n==="decisions"&&!N&&e.jsxs("div",{className:"space-y-2",children:[e.jsxs("div",{className:"flex justify-between items-center mb-2",children:[e.jsxs("span",{className:"text-gray-400 text-sm",children:[k.length," beslissingen"]}),e.jsx(f,{onClick:T,variant:"outline",className:"border-cyan-500/40 text-cyan-300",children:"Vernieuwen"})]}),k.length===0&&e.jsx("p",{className:"text-gray-400",children:"Geen beleidsbeslissingen."}),k.map(s=>{const a=s.details||{};return e.jsx(g,{className:"glassmorphism",children:e.jsxs(h,{className:"p-3",children:[e.jsxs("div",{className:"flex items-center gap-2 flex-wrap",children:[e.jsx(j,{className:H(s.permission_level),children:s.permission_level}),a.matched_rule&&e.jsx("code",{className:"text-xs text-cyan-300",children:a.matched_rule}),a.agent_id&&e.jsxs("span",{className:"text-xs text-gray-300",children:["agent: ",a.agent_id]}),s.action_name&&e.jsx("span",{className:"font-mono text-xs text-cyan-300",children:s.action_name}),e.jsx("span",{className:"text-xs text-gray-400 ml-auto",children:L(s.created_at)})]}),a.reason&&e.jsx("div",{className:"text-xs text-gray-300 mt-1",children:a.reason}),s.id&&e.jsxs("div",{className:"text-[10px] text-gray-500 mt-1",children:["audit_ref: ",s.id]})]})},s.id)})]}),n==="audit"&&!N&&e.jsxs("div",{className:"space-y-2",children:[e.jsxs("div",{className:"flex justify-between items-center mb-2",children:[e.jsxs("span",{className:"text-gray-400 text-sm",children:[R.length," gebeurtenissen"]}),e.jsx(f,{onClick:u,variant:"outline",className:"border-cyan-500/40 text-cyan-300",children:"Vernieuwen"})]}),R.length===0&&e.jsx("p",{className:"text-gray-400",children:"Geen registry-auditgebeurtenissen."}),R.map(s=>e.jsx(g,{className:"glassmorphism",children:e.jsxs(h,{className:"p-3",children:[e.jsxs("div",{className:"flex items-center gap-2 flex-wrap",children:[e.jsx(j,{className:"bg-cyan-500/20 text-cyan-300 border-cyan-500/40",children:s.event_type}),s.action_name&&e.jsx("span",{className:"font-mono text-xs text-cyan-300",children:s.action_name}),e.jsx("span",{className:"text-xs text-gray-400 ml-auto",children:L(s.created_at)})]}),s.details&&Object.keys(s.details).length>0&&e.jsx("pre",{className:"text-xs text-gray-300 mt-2 bg-black/30 rounded p-2 overflow-auto max-h-40 whitespace-pre-wrap break-words",children:JSON.stringify(s.details,null,2)})]})},s.id))]})]})};export{Fe 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.