actshield 0.9.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- actshield/__init__.py +439 -0
- actshield/__main__.py +46 -0
- actshield/agents/__init__.py +12 -0
- actshield/agents/agent.py +200 -0
- actshield/agents/identity.py +114 -0
- actshield/api/__init__.py +34 -0
- actshield/api/models.py +198 -0
- actshield/api/server.py +669 -0
- actshield/api/service.py +599 -0
- actshield/approval/__init__.py +15 -0
- actshield/approval/approval.py +164 -0
- actshield/cli/__init__.py +8 -0
- actshield/cli/graph.py +49 -0
- actshield/cli/main.py +802 -0
- actshield/cli/shell.py +406 -0
- actshield/cli/theme.py +110 -0
- actshield/client.py +757 -0
- actshield/config.py +88 -0
- actshield/context/__init__.py +14 -0
- actshield/context/context.py +161 -0
- actshield/context/provenance.py +108 -0
- actshield/context/taint.py +48 -0
- actshield/decisions/decision.py +74 -0
- actshield/delegation/__init__.py +11 -0
- actshield/delegation/authority.py +63 -0
- actshield/delegation/delegation.py +180 -0
- actshield/demo.py +139 -0
- actshield/doctor.py +94 -0
- actshield/drift/__init__.py +27 -0
- actshield/drift/drift_engine.py +149 -0
- actshield/drift/drift_models.py +63 -0
- actshield/evaluation/__init__.py +1 -0
- actshield/evaluation/cases/__init__.py +1 -0
- actshield/evaluation/eval_suite.py +254 -0
- actshield/forensics/__init__.py +53 -0
- actshield/forensics/access_graph.py +216 -0
- actshield/forensics/authority_graph.py +186 -0
- actshield/forensics/delegation_graph.py +119 -0
- actshield/forensics/explanation.py +254 -0
- actshield/forensics/models.py +488 -0
- actshield/forensics/queries.py +367 -0
- actshield/forensics/serializers.py +68 -0
- actshield/forensics/service.py +310 -0
- actshield/forensics/snapshots.py +174 -0
- actshield/gates/__init__.py +13 -0
- actshield/gates/gate_models.py +46 -0
- actshield/gates/security_gate.py +191 -0
- actshield/gateway/__init__.py +13 -0
- actshield/gateway/http.py +191 -0
- actshield/gateway/mcp.py +292 -0
- actshield/incidents/__init__.py +25 -0
- actshield/incidents/incident.py +94 -0
- actshield/incidents/incident_engine.py +163 -0
- actshield/incidents/incident_rules.py +116 -0
- actshield/incidents/incident_state.py +58 -0
- actshield/integrations/__init__.py +24 -0
- actshield/integrations/ai_secura.py +169 -0
- actshield/integrations/ai_secura_analysis.py +236 -0
- actshield/integrations/apiris.py +122 -0
- actshield/integrations/few_shot.py +104 -0
- actshield/integrations/ollama_adapter.py +538 -0
- actshield/integrations/prompts/__init__.py +1 -0
- actshield/integrations/prompts/examples/__init__.py +1 -0
- actshield/integrations/security_packet.py +82 -0
- actshield/llm_config.py +89 -0
- actshield/offensive/__init__.py +95 -0
- actshield/offensive/adaptive/__init__.py +22 -0
- actshield/offensive/adaptive/adaptive_engine.py +165 -0
- actshield/offensive/adaptive/attack_selector.py +51 -0
- actshield/offensive/adaptive/boundary_search.py +99 -0
- actshield/offensive/adaptive/campaign_memory.py +123 -0
- actshield/offensive/adaptive/feedback.py +84 -0
- actshield/offensive/adaptive/mutation_planner.py +57 -0
- actshield/offensive/attack.py +78 -0
- actshield/offensive/campaign.py +219 -0
- actshield/offensive/corpus.py +155 -0
- actshield/offensive/engine.py +466 -0
- actshield/offensive/evaluator.py +116 -0
- actshield/offensive/evidence.py +63 -0
- actshield/offensive/generator.py +128 -0
- actshield/offensive/mutation.py +101 -0
- actshield/offensive/results.py +77 -0
- actshield/offensive/safety.py +80 -0
- actshield/offensive/strategies/__init__.py +22 -0
- actshield/offensive/strategies/authority_escalation.py +100 -0
- actshield/offensive/strategies/base.py +34 -0
- actshield/offensive/strategies/context_manipulation.py +100 -0
- actshield/offensive/strategies/data_exfiltration.py +100 -0
- actshield/offensive/strategies/delegation_attacks.py +100 -0
- actshield/offensive/strategies/mcp_attacks.py +100 -0
- actshield/offensive/strategies/prompt_injection.py +100 -0
- actshield/offensive/strategies/tool_poisoning.py +100 -0
- actshield/offensive/target.py +113 -0
- actshield/offensive/vulnerable_target.py +121 -0
- actshield/persistence/__init__.py +18 -0
- actshield/persistence/siem.py +102 -0
- actshield/persistence/storage.py +240 -0
- actshield/policy/__init__.py +12 -0
- actshield/policy/evaluator.py +294 -0
- actshield/policy/intent.py +113 -0
- actshield/policy/policy.py +48 -0
- actshield/posture/__init__.py +26 -0
- actshield/posture/posture_engine.py +186 -0
- actshield/posture/posture_models.py +152 -0
- actshield/posture/posture_rules.py +137 -0
- actshield/providers/__init__.py +32 -0
- actshield/providers/anthropic_provider.py +146 -0
- actshield/providers/base.py +160 -0
- actshield/providers/gemini_provider.py +133 -0
- actshield/providers/null_provider.py +40 -0
- actshield/providers/ollama_provider.py +135 -0
- actshield/providers/openai_provider.py +142 -0
- actshield/providers/registry.py +244 -0
- actshield/py.typed +0 -0
- actshield/response/__init__.py +14 -0
- actshield/response/response_actions.py +39 -0
- actshield/response/response_audit.py +32 -0
- actshield/response/response_engine.py +139 -0
- actshield/risk/models.py +104 -0
- actshield/serve.py +117 -0
- actshield/static/404.html +1 -0
- actshield/static/__next.__PAGE__.txt +24 -0
- actshield/static/__next._full.txt +20 -0
- actshield/static/__next._tree.txt +4 -0
- actshield/static/_next/static/Yp_swxN-C9UoCRNOwkYnY/_buildManifest.js +11 -0
- actshield/static/_next/static/Yp_swxN-C9UoCRNOwkYnY/_clientMiddlewareManifest.js +1 -0
- actshield/static/_next/static/Yp_swxN-C9UoCRNOwkYnY/_ssgManifest.js +1 -0
- actshield/static/_next/static/chunks/09kny2eqjc2or.js +1 -0
- actshield/static/_next/static/chunks/0c1zba1u9whdp.js +1 -0
- actshield/static/_next/static/chunks/0cz1d0mv5g_q7.js +1 -0
- actshield/static/_next/static/chunks/0dbjjeg01x25o.js +1 -0
- actshield/static/_next/static/chunks/0duobs55ne238.js +1 -0
- actshield/static/_next/static/chunks/0iaz41l6068e4.js +1 -0
- actshield/static/_next/static/chunks/0mjhyv72x2idp.js +1 -0
- actshield/static/_next/static/chunks/0nelpqfu_ciq6.js +1 -0
- actshield/static/_next/static/chunks/0p1bci9ch797v.js +1 -0
- actshield/static/_next/static/chunks/0tld_ygho5tgm.js +1 -0
- actshield/static/_next/static/chunks/0w1-y7oni66j9.js +1 -0
- actshield/static/_next/static/chunks/10537zyl427zj.js +1 -0
- actshield/static/_next/static/chunks/11pc_jkl3aggn.js +1 -0
- actshield/static/_next/static/chunks/16k7nw0b3t8ys.js +1 -0
- actshield/static/_next/static/chunks/19mx3mg6lkumu.js +1 -0
- actshield/static/_next/static/chunks/1_8p47b-kxg2a.js +1 -0
- actshield/static/_next/static/chunks/1dszjozwfqegx.js +1 -0
- actshield/static/_next/static/chunks/1h43jcb90-m2r.js +22 -0
- actshield/static/_next/static/chunks/1ly04cvt_wh_j.js +1 -0
- actshield/static/_next/static/chunks/1odxrypuwuwp_.js +1 -0
- actshield/static/_next/static/chunks/1oes4c35qz5ku.js +1 -0
- actshield/static/_next/static/chunks/1ow883jl4ln-r.js +16 -0
- actshield/static/_next/static/chunks/1po7bna1as8tc.js +1 -0
- actshield/static/_next/static/chunks/1rsh0og8ifkzx.js +1 -0
- actshield/static/_next/static/chunks/1v0lwzv-859z_.js +1 -0
- actshield/static/_next/static/chunks/25iat2epwx25a.js +1 -0
- actshield/static/_next/static/chunks/25uvt4s2f39a4.js +1 -0
- actshield/static/_next/static/chunks/27t_qfc-3_lzs.js +1 -0
- actshield/static/_next/static/chunks/28bkmy8mez7gm.js +1 -0
- actshield/static/_next/static/chunks/2b6brmw_drw1p.js +1 -0
- actshield/static/_next/static/chunks/2fnhtxi4j6vge.js +1 -0
- actshield/static/_next/static/chunks/2p087eftxemg4.js +6 -0
- actshield/static/_next/static/chunks/2s8pao_z8pgtq.js +1 -0
- actshield/static/_next/static/chunks/2yj7ooc2c-zpg.js +1 -0
- actshield/static/_next/static/chunks/3-mrrr8udt5tk.js +1 -0
- actshield/static/_next/static/chunks/310vm2bl3xxpt.js +31 -0
- actshield/static/_next/static/chunks/35mvsv251jx1r.css +3 -0
- actshield/static/_next/static/chunks/370vf0oetlsx9.js +1 -0
- actshield/static/_next/static/chunks/3e-2m72tyo556.js +1 -0
- actshield/static/_next/static/chunks/3fntmmi971322.js +1 -0
- actshield/static/_next/static/chunks/3fzw-g0hycl2c.js +1 -0
- actshield/static/_next/static/chunks/3lopq3lhmcjxg.js +129 -0
- actshield/static/_next/static/chunks/3mpe2jejel0v2.css +1 -0
- actshield/static/_next/static/chunks/3t8o4f2lzr2sf.js +1 -0
- actshield/static/_next/static/chunks/3y-v1neyllne5.js +1 -0
- actshield/static/_next/static/chunks/43oiwy8mx6cs1.js +1 -0
- actshield/static/_next/static/chunks/turbopack-23wzuebcy_lxm.js +1 -0
- actshield/static/_next/static/media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2 +0 -0
- actshield/static/_next/static/media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2 +0 -0
- actshield/static/_next/static/media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2 +0 -0
- actshield/static/_next/static/media/5476f68d60460930-s.2uwcyprjm3xu3.woff2 +0 -0
- actshield/static/_next/static/media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2 +0 -0
- actshield/static/_next/static/media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2 +0 -0
- actshield/static/_next/static/media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2 +0 -0
- actshield/static/_next/static/media/favicon.2vob68tjqpejf.ico +0 -0
- actshield/static/_not-found/__next._full.txt +17 -0
- actshield/static/_not-found/__next._not-found/__PAGE__.txt +23 -0
- actshield/static/_not-found/__next._tree.txt +3 -0
- actshield/static/_not-found.html +1 -0
- actshield/static/_not-found.txt +17 -0
- actshield/static/access/matrix/__next._full.txt +24 -0
- actshield/static/access/matrix/__next._tree.txt +4 -0
- actshield/static/access/matrix/__next.access/matrix/__PAGE__.txt +30 -0
- actshield/static/access/matrix.html +1 -0
- actshield/static/access/matrix.txt +24 -0
- actshield/static/activity/__next._full.txt +22 -0
- actshield/static/activity/__next._tree.txt +4 -0
- actshield/static/activity/__next.activity/__PAGE__.txt +27 -0
- actshield/static/activity.html +1 -0
- actshield/static/activity.txt +22 -0
- actshield/static/agents/__next._full.txt +22 -0
- actshield/static/agents/__next._tree.txt +4 -0
- actshield/static/agents/__next.agents/__PAGE__.txt +27 -0
- actshield/static/agents.html +1 -0
- actshield/static/agents.txt +22 -0
- actshield/static/ai-secura/__next._full.txt +22 -0
- actshield/static/ai-secura/__next._tree.txt +4 -0
- actshield/static/ai-secura/__next.ai-secura/__PAGE__.txt +27 -0
- actshield/static/ai-secura.html +1 -0
- actshield/static/ai-secura.txt +22 -0
- actshield/static/api/__next._full.txt +22 -0
- actshield/static/api/__next._tree.txt +4 -0
- actshield/static/api/__next.api/__PAGE__.txt +27 -0
- actshield/static/api.html +15 -0
- actshield/static/api.txt +22 -0
- actshield/static/apiris/__next._full.txt +22 -0
- actshield/static/apiris/__next._tree.txt +4 -0
- actshield/static/apiris/__next.apiris/__PAGE__.txt +27 -0
- actshield/static/apiris.html +1 -0
- actshield/static/apiris.txt +22 -0
- actshield/static/attack-graph/__next._full.txt +23 -0
- actshield/static/attack-graph/__next._tree.txt +5 -0
- actshield/static/attack-graph/__next.attack-graph/__PAGE__.txt +28 -0
- actshield/static/attack-graph.html +2 -0
- actshield/static/attack-graph.txt +23 -0
- actshield/static/campaigns/__next._full.txt +22 -0
- actshield/static/campaigns/__next._tree.txt +4 -0
- actshield/static/campaigns/__next.campaigns/__PAGE__.txt +27 -0
- actshield/static/campaigns.html +1 -0
- actshield/static/campaigns.txt +22 -0
- actshield/static/context/__next._full.txt +22 -0
- actshield/static/context/__next._tree.txt +4 -0
- actshield/static/context/__next.context/__PAGE__.txt +27 -0
- actshield/static/context.html +1 -0
- actshield/static/context.txt +22 -0
- actshield/static/dashboard/__next._full.txt +22 -0
- actshield/static/dashboard/__next._tree.txt +4 -0
- actshield/static/dashboard/__next.dashboard/__PAGE__.txt +27 -0
- actshield/static/dashboard.html +1 -0
- actshield/static/dashboard.txt +22 -0
- actshield/static/delegations/__next._full.txt +22 -0
- actshield/static/delegations/__next._tree.txt +4 -0
- actshield/static/delegations/__next.delegations/__PAGE__.txt +27 -0
- actshield/static/delegations.html +1 -0
- actshield/static/delegations.txt +22 -0
- actshield/static/demo/__next._full.txt +22 -0
- actshield/static/demo/__next._tree.txt +4 -0
- actshield/static/demo/__next.demo/__PAGE__.txt +27 -0
- actshield/static/demo.html +1 -0
- actshield/static/demo.txt +22 -0
- actshield/static/drift/__next._full.txt +22 -0
- actshield/static/drift/__next._tree.txt +4 -0
- actshield/static/drift/__next.drift/__PAGE__.txt +27 -0
- actshield/static/drift.html +1 -0
- actshield/static/drift.txt +22 -0
- actshield/static/favicon.ico +0 -0
- actshield/static/file.svg +1 -0
- actshield/static/forensics/__next._full.txt +22 -0
- actshield/static/forensics/__next._tree.txt +4 -0
- actshield/static/forensics/__next.forensics/__PAGE__.txt +27 -0
- actshield/static/forensics.html +1 -0
- actshield/static/forensics.txt +22 -0
- actshield/static/globe.svg +1 -0
- actshield/static/incidents/__next._full.txt +22 -0
- actshield/static/incidents/__next._tree.txt +4 -0
- actshield/static/incidents/__next.incidents/__PAGE__.txt +27 -0
- actshield/static/incidents.html +1 -0
- actshield/static/incidents.txt +22 -0
- actshield/static/index.html +3 -0
- actshield/static/index.txt +20 -0
- actshield/static/logo.png +0 -0
- actshield/static/metrics/__next._full.txt +22 -0
- actshield/static/metrics/__next._tree.txt +4 -0
- actshield/static/metrics/__next.metrics/__PAGE__.txt +27 -0
- actshield/static/metrics.html +1 -0
- actshield/static/metrics.txt +22 -0
- actshield/static/next.svg +1 -0
- actshield/static/offensive/__next._full.txt +22 -0
- actshield/static/offensive/__next._tree.txt +4 -0
- actshield/static/offensive/__next.offensive/__PAGE__.txt +27 -0
- actshield/static/offensive.html +1 -0
- actshield/static/offensive.txt +22 -0
- actshield/static/policies/__next._full.txt +22 -0
- actshield/static/policies/__next._tree.txt +4 -0
- actshield/static/policies/__next.policies/__PAGE__.txt +27 -0
- actshield/static/policies.html +1 -0
- actshield/static/policies.txt +22 -0
- actshield/static/posture/__next._full.txt +22 -0
- actshield/static/posture/__next._tree.txt +4 -0
- actshield/static/posture/__next.posture/__PAGE__.txt +27 -0
- actshield/static/posture.html +1 -0
- actshield/static/posture.txt +22 -0
- actshield/static/regressions/__next._full.txt +22 -0
- actshield/static/regressions/__next._tree.txt +4 -0
- actshield/static/regressions/__next.regressions/__PAGE__.txt +27 -0
- actshield/static/regressions.html +1 -0
- actshield/static/regressions.txt +22 -0
- actshield/static/reports/__next._full.txt +22 -0
- actshield/static/reports/__next._tree.txt +4 -0
- actshield/static/reports/__next.reports/__PAGE__.txt +27 -0
- actshield/static/reports.html +1 -0
- actshield/static/reports.txt +22 -0
- actshield/static/resources/__next._full.txt +22 -0
- actshield/static/resources/__next._tree.txt +4 -0
- actshield/static/resources/__next.resources/__PAGE__.txt +27 -0
- actshield/static/resources.html +1 -0
- actshield/static/resources.txt +22 -0
- actshield/static/security-gates/__next._full.txt +22 -0
- actshield/static/security-gates/__next._tree.txt +4 -0
- actshield/static/security-gates/__next.security-gates/__PAGE__.txt +27 -0
- actshield/static/security-gates.html +1 -0
- actshield/static/security-gates.txt +22 -0
- actshield/static/settings/__next._full.txt +22 -0
- actshield/static/settings/__next._tree.txt +4 -0
- actshield/static/settings/__next.settings/__PAGE__.txt +27 -0
- actshield/static/settings.html +1 -0
- actshield/static/settings.txt +22 -0
- actshield/static/tasks/__next._full.txt +22 -0
- actshield/static/tasks/__next._tree.txt +4 -0
- actshield/static/tasks/__next.tasks/__PAGE__.txt +27 -0
- actshield/static/tasks.html +1 -0
- actshield/static/tasks.txt +22 -0
- actshield/static/threats/__next._full.txt +22 -0
- actshield/static/threats/__next._tree.txt +4 -0
- actshield/static/threats/__next.threats/__PAGE__.txt +27 -0
- actshield/static/threats.html +1 -0
- actshield/static/threats.txt +22 -0
- actshield/static/tools/__next._full.txt +22 -0
- actshield/static/tools/__next._tree.txt +4 -0
- actshield/static/tools/__next.tools/__PAGE__.txt +27 -0
- actshield/static/tools.html +1 -0
- actshield/static/tools.txt +22 -0
- actshield/static/traces/__next._full.txt +22 -0
- actshield/static/traces/__next._tree.txt +4 -0
- actshield/static/traces/__next.traces/__PAGE__.txt +27 -0
- actshield/static/traces.html +1 -0
- actshield/static/traces.txt +22 -0
- actshield/static/vercel.svg +1 -0
- actshield/static/window.svg +1 -0
- actshield/tasks/__init__.py +6 -0
- actshield/tasks/task.py +143 -0
- actshield/threatmodel/__init__.py +70 -0
- actshield/threatmodel/actors.py +210 -0
- actshield/threatmodel/analyzer.py +131 -0
- actshield/threatmodel/assets.py +167 -0
- actshield/threatmodel/boundaries.py +165 -0
- actshield/threatmodel/exporters.py +49 -0
- actshield/threatmodel/mitigations.py +209 -0
- actshield/threatmodel/models.py +80 -0
- actshield/threatmodel/report.py +341 -0
- actshield/threatmodel/scenarios.py +212 -0
- actshield/threatmodel/scoring.py +66 -0
- actshield/threatmodel/threats.py +387 -0
- actshield/tools/__init__.py +20 -0
- actshield/tools/interceptor.py +256 -0
- actshield/tools/tool.py +71 -0
- actshield/tracing/__init__.py +38 -0
- actshield/tracing/correlation.py +173 -0
- actshield/tracing/events.py +75 -0
- actshield/tracing/tracer.py +305 -0
- actshield/watch.py +129 -0
- actshield-0.9.0.dist-info/METADATA +57 -0
- actshield-0.9.0.dist-info/RECORD +366 -0
- actshield-0.9.0.dist-info/WHEEL +5 -0
- actshield-0.9.0.dist-info/entry_points.txt +4 -0
- actshield-0.9.0.dist-info/top_level.txt +2 -0
- agentguard/__init__.py +39 -0
- agentguard/__main__.py +8 -0
- agentguard/py.typed +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,68877,e=>{"use strict";var t=e.i(56420);let s={name:"arrow-right",size:24,node:[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]]};s.node;let r=(0,t.default)(s);e.s(["ArrowRight",0,r],68877)},89664,e=>{"use strict";var t=e.i(56420);let s={name:"check",size:24,node:[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]};s.node;let r=(0,t.default)(s);e.s(["Check",0,r],89664)},67927,56420,e=>{"use strict";var t=e.i(71645);let s=(...e)=>e.filter((e,t,s)=>!!e&&""!==e.trim()&&s.indexOf(e)===t).join(" ").trim(),r={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":2,"stroke-linecap":"round","stroke-linejoin":"round"},a=(0,t.createContext)({}),l=(0,t.forwardRef)(({color:e,size:l,width:n,height:i,strokeWidth:o,absoluteStrokeWidth:c,nonScalingStroke:d,className:u="",children:x,iconNode:p=[],icon:h={node:p,aliases:[],size:24},...m},f)=>{let{size:b=24,strokeWidth:g=2,absoluteStrokeWidth:y=!1,nonScalingStroke:v=!1,color:j="currentColor",className:N=""}=(0,t.useContext)(a)??{},w=!!x||(e=>{for(let t in e)if(t.startsWith("aria-")||"role"===t||"title"===t)return!0;return!1})(m),[k,A,C=[]]=function(e,t={}){return function(e,t={}){let a=t.attributeNames??{},l=e=>a[e]??e,n=e.size??e.width??r.width,i=e.size??e.height??r.height,o=e.aliases?.filter(e=>"string"==typeof e&&""!==e.trim()).map(e=>`lucide-${e}`)??[],c=[...e.name?[`lucide-${e.name}`]:[],...o],d=t.className?.split(" ").filter(Boolean)??[],u=!1===t.includeDefaultClasses?s(...d):s("lucide",...c,...d),x=t.absoluteStrokeWidth?Number(t.strokeWidth??r["stroke-width"])*Number(e.size??e.width??r.width)/Number(t.size??t.width??r.width):t.strokeWidth??r["stroke-width"];return["svg",{...Object.entries(r).reduce((e,[t,s])=>(e[l(t)]=s,e),{}),..."color"in t&&t.color&&{[l("stroke")]:t.color},..."size"in t&&null!=t.size&&{[l("width")]:t.size,[l("height")]:t.size},..."width"in t&&null!=t.width&&{[l("width")]:t.width},..."height"in t&&null!=t.height&&{[l("height")]:t.height},[l("stroke-width")]:x,...u&&{[l("class")]:u},[l("viewBox")]:`0 0 ${n} ${i}`,...!1===t.hasA11yProp?{[l("aria-hidden")]:"true"}:{},..."attributes"in t&&t.attributes},e.node.map(e=>{let[s,r,a]=e,n=t.nonScalingStroke?{[l("vector-effect")]:"non-scaling-stroke",...r}:r;return a?[s,n,a]:[s,n]})]}(e,{...t,attributeNames:{...t.attributeNames,class:"className","stroke-width":"strokeWidth","stroke-linecap":"strokeLinecap","stroke-linejoin":"strokeLinejoin","vector-effect":"vectorEffect"}})}(h,{color:e??j,width:n??l??b,height:i??l??b,strokeWidth:o??g,absoluteStrokeWidth:c??y,nonScalingStroke:d??v,className:s(N,u),hasA11yProp:w,attributes:m});return(0,t.createElement)(k,{ref:f,...A},[...C.map(([e,s])=>(0,t.createElement)(e,s)),...Array.isArray(x)?x:[x]])});function n(e,s=[],r=[]){let a,i="string"==typeof e?function(e,t,s=[]){if(null==t)throw Error("[lucide]: iconNode is required when icon name is used");return{name:e?.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),size:24,node:t,...s.length>0?{aliases:s}:{}}}(e,s,r):e,o=(0,t.forwardRef)(({className:e,...s},r)=>(0,t.createElement)(l,{ref:r,icon:i,className:e,...s}));return i.name&&(o.displayName=(a=(e=>{let t="",s=!1;for(let r of e){if("-"===r||"_"===r||r<=" "){s=t.length>0;continue}0===t.length?t+=r.toLowerCase():t+=s?r.toUpperCase():r,s=!1}return t})(i.name)).charAt(0).toUpperCase()+a.slice(1)),o}e.s(["default",0,n],56420);let i={name:"chevron-right",size:24,node:[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]};i.node;let o=n(i);e.s(["ChevronRight",0,o],67927)},51757,e=>{"use strict";var t=e.i(56420);let s={name:"circle-check",size:24,node:[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m16 9-5.5 5.5L8 12",key:"xofnsj"}]],aliases:["check-circle-2"]};s.node;let r=(0,t.default)(s);e.s(["CheckCircle2",0,r],51757)},8734,e=>{"use strict";var t=e.i(56420);let s={name:"copy",size:24,node:[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]};s.node;let r=(0,t.default)(s);e.s(["Copy",0,r],8734)},66595,e=>{"use strict";var t=e.i(56420);let s={name:"search",size:24,node:[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]};s.node;let r=(0,t.default)(s);e.s(["Search",0,r],66595)},82954,e=>{"use strict";var t=e.i(56420);let s={name:"shield",size:24,node:[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}]]};s.node;let r=(0,t.default)(s);e.s(["Shield",0,r],82954)},63676,e=>{"use strict";var t=e.i(56420);let s={name:"x",size:24,node:[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]};s.node;let r=(0,t.default)(s);e.s(["X",0,r],63676)},22016,(e,t,s)=>{"use strict";e.i(47167),Object.defineProperty(s,"__esModule",{value:!0});var r={default:function(){return b},useLinkStatus:function(){return y}};for(var a in r)Object.defineProperty(s,a,{enumerable:!0,get:r[a]});let l=e.r(90809),n=e.r(43476),i=l._(e.r(71645)),o=e.r(95057),c=e.r(8372),d=e.r(18581),u=e.r(18967),x=e.r(5550),p=e.r(88540),h=e.r(91949),m=e.r(73668),f=e.r(9396);function b(t){var s;let r,a,l,[b,y]=(0,i.useOptimistic)(h.IDLE_LINK_STATUS),v=(0,i.useRef)(null),{href:j,as:N,children:w,prefetch:k=null,passHref:A,replace:C,shallow:S,scroll:I,onClick:P,onMouseEnter:E,onTouchStart:R,legacyBehavior:O=!1,onNavigate:L,transitionTypes:z,ref:T,unstable_dynamicOnHover:M,...D}=t;r=w,O&&("string"==typeof r||"number"==typeof r)&&(r=(0,n.jsx)("a",{children:r}));let _=i.default.useContext(c.AppRouterContext),$=!1!==k,F=!1===k?"none":!0===k?"full":"auto",G="none"!==F?"auto"===F?f.FetchStrategy.PPR:f.FetchStrategy.Full:f.FetchStrategy.PPR,U="string"==typeof(s=N||j)?s:(0,o.formatUrl)(s);if(O){if(r?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});a=i.default.Children.only(r)}let B=O?a&&"object"==typeof a&&a.ref:T,V,K=i.default.useCallback(e=>(null!==_&&(v.current=(0,h.mountLinkInstance)(e,U,_,G,$,y,V)),()=>{v.current&&((0,h.unmountLinkForCurrentNavigation)(v.current),v.current=null),(0,h.unmountPrefetchableInstance)(e)}),[$,U,_,G,y,V]),W={ref:(0,d.useMergedRef)(K,B),onClick(t){O||"function"!=typeof P||P(t),O&&a.props&&"function"==typeof a.props.onClick&&a.props.onClick(t),!_||t.defaultPrevented||function(t,s,r,a,l,n,o,c="none"){if("u">typeof window){let d,{nodeName:u}=t.currentTarget;if("A"===u.toUpperCase()&&((d=t.currentTarget.getAttribute("target"))&&"_self"!==d||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,m.isLocalURL)(s)){a&&(t.preventDefault(),location.replace(s));return}if(t.preventDefault(),n){let e=!1;if(n({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:x}=e.r(99781);i.default.startTransition(()=>{x(s,a?"replace":"push",!1===l?p.ScrollBehavior.NoScroll:p.ScrollBehavior.Default,r.current,o,c)})}}(t,U,v,C,I,L,z,F)},onMouseEnter(e){O||"function"!=typeof E||E(e),O&&a.props&&"function"==typeof a.props.onMouseEnter&&a.props.onMouseEnter(e),_&&$&&(0,h.onNavigationIntent)(e.currentTarget,!0===M)},onTouchStart:function(e){O||"function"!=typeof R||R(e),O&&a.props&&"function"==typeof a.props.onTouchStart&&a.props.onTouchStart(e),_&&$&&(0,h.onNavigationIntent)(e.currentTarget,!0===M)}};return(0,u.isAbsoluteUrl)(U)?W.href=U:O&&!A&&("a"!==a.type||"href"in a.props)||(W.href=(0,x.addBasePath)(U)),l=O?i.default.cloneElement(a,W):(0,n.jsx)("a",{...D,...W,children:r}),(0,n.jsx)(g.Provider,{value:b,children:l})}let g=(0,i.createContext)(h.IDLE_LINK_STATUS),y=()=>(0,i.useContext)(g);("function"==typeof s.default||"object"==typeof s.default&&null!==s.default)&&void 0===s.default.__esModule&&(Object.defineProperty(s.default,"__esModule",{value:!0}),Object.assign(s.default,s),t.exports=s.default)},18581,(e,t,s)=>{"use strict";Object.defineProperty(s,"__esModule",{value:!0}),Object.defineProperty(s,"useMergedRef",{enumerable:!0,get:function(){return a}});let r=e.r(71645);function a(e,t){let s=(0,r.useRef)(null),a=(0,r.useRef)(null);return(0,r.useCallback)(r=>{if(null===r){let e=s.current;e&&(s.current=null,e());let t=a.current;t&&(a.current=null,t())}else e&&(s.current=l(e,r)),t&&(a.current=l(t,r))},[e,t])}function l(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let s=e(t);return"function"==typeof s?s:()=>e(null)}}("function"==typeof s.default||"object"==typeof s.default&&null!==s.default)&&void 0===s.default.__esModule&&(Object.defineProperty(s.default,"__esModule",{value:!0}),Object.assign(s.default,s),t.exports=s.default)},18967,(e,t,s)=>{"use strict";e.i(47167),Object.defineProperty(s,"__esModule",{value:!0});var r={DecodeError:function(){return b},MiddlewareNotFoundError:function(){return j},MissingStaticPage:function(){return v},NormalizeError:function(){return g},PageNotFoundError:function(){return y},SP:function(){return m},ST:function(){return f},WEB_VITALS:function(){return l},execOnce:function(){return n},getDisplayName:function(){return u},getLocationOrigin:function(){return c},getURL:function(){return d},isAbsoluteUrl:function(){return o},isResSent:function(){return x},loadGetInitialProps:function(){return h},normalizeRepeatedSlashes:function(){return p},stringifyError:function(){return N}};for(var a in r)Object.defineProperty(s,a,{enumerable:!0,get:r[a]});let l=["CLS","FCP","FID","INP","LCP","TTFB"];function n(e){let t,s=!1;return(...r)=>(s||(s=!0,t=e(...r)),t)}let i=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,o=e=>{let t=e.charCodeAt(0);return!!(t>=65&&t<=90||t>=97&&t<=122)&&i.test(e)};function c(){let{protocol:e,hostname:t,port:s}=window.location;return`${e}//${t}${s?":"+s:""}`}function d(){let{href:e}=window.location,t=c();return e.substring(t.length)}function u(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function x(e){return e.finished||e.headersSent}function p(e){let t=e.split("?");return t[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(t[1]?`?${t.slice(1).join("?")}`:"")}async function h(e,t){let s=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await h(t.Component,t.ctx)}:{};let r=await e.getInitialProps(t);if(s&&x(s))return r;if(!r)throw Object.defineProperty(Error(`"${u(e)}.getInitialProps()" should resolve to an object. But found "${r}" instead.`),"__NEXT_ERROR_CODE",{value:"E1025",enumerable:!1,configurable:!0});return r}let m="u">typeof performance,f=m&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class b extends Error{}class g extends Error{}class y extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message=`Cannot find module for page: ${e}`}}class v extends Error{constructor(e,t){super(),this.message=`Failed to load static file for page: ${e} ${t}`}}class j extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function N(e){return JSON.stringify({message:e.message,stack:e.stack})}},73668,(e,t,s)=>{"use strict";Object.defineProperty(s,"__esModule",{value:!0}),Object.defineProperty(s,"isLocalURL",{enumerable:!0,get:function(){return l}});let r=e.r(18967),a=e.r(52817);function l(e){if(!(0,r.isAbsoluteUrl)(e))return!0;try{let t=(0,r.getLocationOrigin)(),s=new URL(e,t);return s.origin===t&&(0,a.hasBasePath)(s.pathname)}catch(e){return!1}}},98183,(e,t,s)=>{"use strict";Object.defineProperty(s,"__esModule",{value:!0});var r={assign:function(){return o},searchParamsToUrlQuery:function(){return l},urlQueryToSearchParams:function(){return i}};for(var a in r)Object.defineProperty(s,a,{enumerable:!0,get:r[a]});function l(e){let t={};for(let[s,r]of e.entries()){let e=t[s];void 0===e?t[s]=r:Array.isArray(e)?e.push(r):t[s]=[e,r]}return t}function n(e){return"string"==typeof e?e:("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function i(e){let t=new URLSearchParams;for(let[s,r]of Object.entries(e))if(Array.isArray(r))for(let e of r)t.append(s,n(e));else t.set(s,n(r));return t}function o(e,...t){for(let s of t){for(let t of s.keys())e.delete(t);for(let[t,r]of s.entries())e.append(t,r)}return e}},95057,(e,t,s)=>{"use strict";e.i(47167),Object.defineProperty(s,"__esModule",{value:!0});var r={formatUrl:function(){return i},formatWithValidation:function(){return c},urlObjectKeys:function(){return o}};for(var a in r)Object.defineProperty(s,a,{enumerable:!0,get:r[a]});let l=e.r(90809)._(e.r(98183)),n=/https?|ftp|gopher|file/;function i(e){let{auth:t,hostname:s}=e,r=e.protocol||"",a=e.pathname||"",i=e.hash||"",o=e.query||"",c=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?c=t+e.host:s&&(c=t+(~s.indexOf(":")?`[${s}]`:s),e.port&&(c+=":"+e.port)),o&&"object"==typeof o&&(o=String(l.urlQueryToSearchParams(o)));let d=e.search||o&&`?${o}`||"";return r&&!r.endsWith(":")&&(r+=":"),e.slashes||(!r||n.test(r))&&!1!==c?(c="//"+(c||""),a&&"/"!==a[0]&&(a="/"+a)):c||(c=""),i&&"#"!==i[0]&&(i="#"+i),d&&"?"!==d[0]&&(d="?"+d),a=a.replace(/[?#]/g,encodeURIComponent),d=d.replace("#","%23"),`${r}${c}${a}${d}${i}`}let o=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function c(e){return i(e)}},52683,e=>{"use strict";var t=e.i(43476),s=e.i(71645),r=e.i(22016),a=e.i(82954),l=e.i(68877),n=e.i(51757),i=e.i(66595),o=e.i(89664),c=e.i(8734),d=e.i(67927),u=e.i(63676);let x=[{label:"Agent Security",desc:"Identity, delegation, authority bounds and access control",href:"/agents",group:"Capability"},{label:"Context Security",desc:"Provenance tracking, trust classification and taint propagation",href:"/context",group:"Capability"},{label:"MCP & Tool Security",desc:"Monitor and control external tools and MCP server interactions",href:"/tools",group:"Capability"},{label:"Threat Modeling",desc:"Map assets, trust boundaries, attack paths and threats",href:"/threats",group:"Capability"},{label:"AI Security",desc:"AI Secura semantic intent analysis and LLM reasoning",href:"/ai-secura",group:"Capability"},{label:"API Intelligence",desc:"APIRIS payload risk scoring and egress control",href:"/apiris",group:"Capability"},{label:"Forensics",desc:"Understand who, what, why and what actually executed",href:"/forensics",group:"Capability"},{label:"Offensive Validation",desc:"Attack your own security boundary and discover bypasses",href:"/campaigns",group:"Capability"},{label:"Security Gates",desc:"Validate security invariants before each deployment",href:"/security-gates",group:"Capability"},{label:"Command Center",desc:"Real-time security overview dashboard",href:"/dashboard",group:"Operate"},{label:"Agents Catalog",desc:"Registered agent profiles and trust levels",href:"/agents",group:"Operate"},{label:"Tasks Execution",desc:"Multi-agent task execution and sub-task monitoring",href:"/tasks",group:"Operate"},{label:"Tool & MCP Registry",desc:"External tool registry and MCP server governance",href:"/tools",group:"Operate"},{label:"Context Provenance",desc:"4-point execution state log and source taint tracking",href:"/context",group:"Operate"},{label:"Delegations",desc:"Authority delegation lineage and scope containment",href:"/delegations",group:"Operate"},{label:"Access Matrix",desc:"Agent × Resource access matrix with ALLOW/DENY indicators",href:"/access/matrix",group:"Operate"},{label:"Incidents",desc:"7-state incident lifecycle and containment workspace",href:"/incidents",group:"Investigate"},{label:"Trace Explorer",desc:"Causal execution trace with span-level decision evidence",href:"/traces",group:"Investigate"},{label:"Causal Forensics",desc:"Evidence-backed causal explanations and blast radius",href:"/forensics",group:"Investigate"},{label:"Activity Stream",desc:"Real-time live decision event stream with filters",href:"/activity",group:"Investigate"},{label:"Attack Graph",desc:"ReactFlow visual DAG of taint flow and intercept points",href:"/attack-graph",group:"Investigate"},{label:"Drift Detection",desc:"Behavioral drift anomaly detection vs baseline profiles",href:"/drift",group:"Investigate"},{label:"Offensive Campaigns",desc:"Automated adversarial mutation campaigns",href:"/campaigns",group:"Validate"},{label:"Regression Library",desc:"Replay regressions with before/after fix diffs",href:"/regressions",group:"Validate"},{label:"Security Gates",desc:"CI/CD release gate evaluation",href:"/security-gates",group:"Validate"},{label:"Attack Simulator",desc:"Step-through interactive attack simulation runner",href:"/demo",group:"Validate"},{label:"Security Posture",desc:"6-dimension posture scorecard and health grades",href:"/posture",group:"Analyze"},{label:"APIRIS Intelligence",desc:"API risk intelligence and payload anomaly scoring",href:"/apiris",group:"Analyze"},{label:"AI Secura Reasoning",desc:"Semantic intent analysis feed",href:"/ai-secura",group:"Analyze"},{label:"Telemetry Metrics",desc:"Decision volumes and enforcement latency percentiles",href:"/metrics",group:"Analyze"},{label:"Compliance Reports",desc:"Audit reports and forensic exports",href:"/reports",group:"Analyze"},{label:"Policies",desc:"Deterministic policy rules and predicates",href:"/policies",group:"System"},{label:"Resources",desc:"Protected databases, files and cloud sinks",href:"/resources",group:"System"},{label:"Settings",desc:"Zero-trust configuration and fail-safe modes",href:"/settings",group:"System"},{label:"API Documentation",desc:"REST API reference and OpenAPI schema",href:"/api",group:"System"}],p=[{label:"Overview",href:"/dashboard"},{label:"Security",href:"/policies"},{label:"Threat Model",href:"/threats"},{label:"Agents",href:"/agents"},{label:"Incidents",href:"/incidents"},{label:"Forensics",href:"/forensics"},{label:"Offensive Validation",href:"/campaigns"},{label:"Posture",href:"/posture"}],h=[{no:"01",title:"Agent Security",desc:"Identity, delegation, authority bounds and access control.",href:"/agents",group:"Protect"},{no:"02",title:"Context Security",desc:"Provenance tracking, trust classification and taint propagation.",href:"/context",group:"Protect"},{no:"03",title:"MCP & Tool Security",desc:"Monitor and control external tools and MCP server interactions.",href:"/tools",group:"Protect"},{no:"04",title:"Threat Modeling",desc:"Map assets, trust boundaries, attack paths and active threats.",href:"/threats",group:"Protect"},{no:"05",title:"AI Security",desc:"AI Secura semantic intent reasoning with pluggable LLM analysis.",href:"/ai-secura",group:"Analyze"},{no:"06",title:"API Intelligence",desc:"APIRIS payload risk scoring, schema validation and egress control.",href:"/apiris",group:"Analyze"},{no:"07",title:"Forensics",desc:"Understand who acted, what executed, why it was allowed, what actually ran.",href:"/forensics",group:"Investigate"},{no:"08",title:"Offensive Validation",desc:"Attack your own security boundary. Discover policy bypasses in local sandboxes.",href:"/campaigns",group:"Validate"},{no:"09",title:"Security Gates",desc:"Continuously validate security invariants before each deployment.",href:"/security-gates",group:"Validate"}],m=[{group:"Operate",no:"01",links:[{label:"Command Center",href:"/dashboard"},{label:"Agents",href:"/agents"},{label:"Tasks",href:"/tasks"},{label:"Tools & MCP",href:"/tools"},{label:"Context Provenance",href:"/context"},{label:"Delegations",href:"/delegations"}]},{group:"Investigate",no:"02",links:[{label:"Incidents",href:"/incidents"},{label:"Trace Explorer",href:"/traces"},{label:"Forensics",href:"/forensics"},{label:"Threat Model",href:"/threats"},{label:"Activity Stream",href:"/activity"},{label:"Attack Graph",href:"/attack-graph"}]},{group:"Validate",no:"03",links:[{label:"Offensive Campaigns",href:"/campaigns"},{label:"Attack Graph",href:"/attack-graph"},{label:"Regressions",href:"/regressions"},{label:"Security Gates",href:"/security-gates"},{label:"Strategy Coverage",href:"/offensive"},{label:"Attack Simulator",href:"/demo"}]},{group:"Analyze",no:"04",links:[{label:"Security Posture",href:"/posture"},{label:"Behavioral Drift",href:"/drift"},{label:"AI Secura",href:"/ai-secura"},{label:"APIRIS",href:"/apiris"},{label:"Telemetry Metrics",href:"/metrics"},{label:"Compliance Reports",href:"/reports"}]}],f=[{label:"Security Posture",value:"98/100",sub:"Grade A+",accent:"text-emerald-600"},{label:"Active Agents",value:"12",sub:"100% bound",accent:"text-slate-800"},{label:"Active Incidents",value:"2",sub:"Contained",accent:"text-amber-600"},{label:"Blocked Actions",value:"17",sub:"Last 24 h",accent:"text-red-600"},{label:"Unauthorized Executions",value:"0",sub:"Zero leaks",accent:"text-emerald-600"},{label:"Open Regressions",value:"0",sub:"All verified",accent:"text-emerald-600"}],b=[{step:"01",name:"OBSERVE",desc:"Captures tool invocations, prompts, MCP payloads and delegation requests in real-time."},{step:"02",name:"CORRELATE",desc:"Binds identity, active delegations, context provenance and taint tags."},{step:"03",name:"ANALYZE",desc:"Evaluates APIRIS structural risk and AI Secura semantic intent alignment."},{step:"04",name:"ENFORCE",desc:"Deterministic policy engine applies mathematical invariants to produce a verifiable verdict."}],g=["Capability","Operate","Investigate","Validate","Analyze","System"],y={Capability:"text-blue-700 bg-blue-50 border-blue-200",Operate:"text-slate-700 bg-slate-100 border-slate-200",Investigate:"text-amber-700 bg-amber-50 border-amber-200",Validate:"text-red-700 bg-red-50 border-red-200",Analyze:"text-purple-700 bg-purple-50 border-purple-200",System:"text-slate-600 bg-slate-50 border-slate-200"};function v({onClose:e}){let[a,l]=(0,s.useState)(""),[n,o]=(0,s.useState)(0),c=(0,s.useRef)(null);(0,s.useEffect)(()=>{c.current?.focus()},[]);let d=0===a.trim().length?x.slice(0,8):x.filter(e=>e.label.toLowerCase().includes(a.toLowerCase())||e.desc.toLowerCase().includes(a.toLowerCase())||e.group.toLowerCase().includes(a.toLowerCase())).slice(0,12),p={};for(let e of d)p[e.group]||(p[e.group]=[]),p[e.group].push(e);let h=g.flatMap(e=>p[e]??[]);(0,s.useEffect)(()=>{o(0)},[a]);let m=(0,s.useCallback)(t=>{"ArrowDown"===t.key&&(t.preventDefault(),o(e=>Math.min(e+1,h.length-1))),"ArrowUp"===t.key&&(t.preventDefault(),o(e=>Math.max(e-1,0))),"Escape"===t.key&&e(),"Enter"===t.key&&h[n]&&(window.location.href=h[n].href,e())},[h,n,e]);return(0,t.jsx)("div",{className:"fixed inset-0 z-[100] flex flex-col items-center pt-16 px-4",style:{background:"rgba(15,23,42,0.5)"},onClick:t=>{t.target===t.currentTarget&&e()},children:(0,t.jsxs)("div",{className:"w-full max-w-xl bg-white rounded-xl border border-slate-200 shadow-2xl overflow-hidden",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3 px-4 py-3 border-b border-slate-200",children:[(0,t.jsx)(i.Search,{size:15,className:"text-slate-400 shrink-0"}),(0,t.jsx)("input",{ref:c,value:a,onChange:e=>l(e.target.value),onKeyDown:m,placeholder:"Search pages, capabilities, settings…",className:"flex-1 text-sm text-slate-900 placeholder:text-slate-400 outline-none bg-transparent"}),a&&(0,t.jsx)("button",{onClick:()=>l(""),className:"text-slate-400 hover:text-slate-700",children:(0,t.jsx)(u.X,{size:13})}),(0,t.jsx)("kbd",{className:"text-[10px] font-mono bg-slate-100 border border-slate-200 text-slate-400 px-1.5 py-0.5 rounded",children:"ESC"})]}),(0,t.jsxs)("div",{className:"max-h-[400px] overflow-y-auto py-1",children:[0===h.length&&(0,t.jsxs)("div",{className:"px-4 py-6 text-center text-sm text-slate-400",children:["No results for “",a,"”"]}),g.map(s=>{let a=p[s];return a?.length?(0,t.jsxs)("div",{children:[(0,t.jsx)("div",{className:"px-4 py-1.5 text-[10px] font-bold uppercase tracking-widest text-slate-400",children:s}),a.map((a,l)=>{let i=h.indexOf(a);return(0,t.jsxs)(r.default,{href:a.href,onClick:e,className:`flex items-center gap-3 px-4 py-2.5 transition-colors ${i===n?"bg-blue-50":"hover:bg-slate-50"}`,children:[(0,t.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,t.jsx)("p",{className:"text-sm font-semibold text-slate-900 truncate",children:a.label}),(0,t.jsx)("p",{className:"text-xs text-slate-500 truncate",children:a.desc})]}),(0,t.jsx)("span",{className:`text-[10px] font-semibold px-1.5 py-0.5 rounded border shrink-0 ${y[s]}`,children:s})]},a.href+a.label)})]},s):null})]}),(0,t.jsxs)("div",{className:"px-4 py-2 border-t border-slate-100 flex items-center gap-4 text-[10px] font-mono text-slate-400",children:[(0,t.jsx)("span",{children:"↑↓ navigate"}),(0,t.jsx)("span",{children:"↵ open"}),(0,t.jsx)("span",{children:"esc close"})]})]})})}e.s(["default",0,function(){let[e,u]=(0,s.useState)(!1),[x,g]=(0,s.useState)(!1),[y,j]=(0,s.useState)(!1),N=(e,t)=>{navigator.clipboard.writeText(e),t(!0),setTimeout(()=>t(!1),2e3)};return(0,s.useEffect)(()=>{let e=e=>{(e.metaKey||e.ctrlKey)&&"k"===e.key&&(e.preventDefault(),u(!0))};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[]),(0,t.jsxs)("div",{className:"min-h-screen bg-white text-slate-900",style:{fontFamily:"Inter, system-ui, sans-serif"},children:[e&&(0,t.jsx)(v,{onClose:()=>u(!1)}),(0,t.jsx)("header",{className:"sticky top-0 z-50 bg-white border-b border-slate-200",children:(0,t.jsxs)("div",{className:"max-w-screen-xl mx-auto px-6 h-[52px] flex items-center justify-between gap-4",children:[(0,t.jsxs)("div",{className:"flex items-center gap-8 min-w-0",children:[(0,t.jsxs)(r.default,{href:"/",className:"flex items-center gap-2 shrink-0",children:[(0,t.jsx)("div",{className:"w-6 h-6 rounded bg-blue-600 flex items-center justify-center",children:(0,t.jsx)(a.Shield,{size:13,strokeWidth:2.5,className:"text-white"})}),(0,t.jsx)("span",{className:"text-sm font-bold tracking-tight",children:"AgentGuard"})]}),(0,t.jsx)("nav",{className:"hidden lg:flex items-center gap-0.5 text-[13px] font-medium text-slate-600 min-w-0 overflow-hidden",children:p.map(e=>(0,t.jsx)(r.default,{href:e.href,className:"whitespace-nowrap px-2.5 py-1.5 rounded hover:bg-slate-100 hover:text-slate-900 transition-colors",children:e.label},e.href))})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2 shrink-0",children:[(0,t.jsxs)("button",{onClick:()=>u(!0),className:"hidden md:flex items-center gap-2 h-8 px-3 rounded border border-slate-200 bg-slate-50 hover:bg-white hover:border-slate-300 text-xs text-slate-500 hover:text-slate-800 transition-colors w-48",children:[(0,t.jsx)(i.Search,{size:12}),(0,t.jsx)("span",{className:"flex-1 text-left",children:"Search…"}),(0,t.jsx)("kbd",{className:"text-[10px] font-mono bg-white border border-slate-200 text-slate-400 px-1 rounded",children:"⌘K"})]}),(0,t.jsx)(r.default,{href:"/api",className:"hidden md:block h-8 px-3 rounded text-[13px] font-medium text-slate-600 hover:text-slate-900 hover:bg-slate-100 transition-colors leading-8",children:"Documentation"}),(0,t.jsx)(r.default,{href:"/offensive",className:"hidden md:block h-8 px-3 rounded text-[13px] font-medium text-slate-600 hover:text-slate-900 hover:bg-slate-100 transition-colors leading-8",children:"CLI"}),(0,t.jsxs)(r.default,{href:"/dashboard",className:"h-8 px-4 rounded bg-blue-600 hover:bg-blue-700 text-white text-[13px] font-semibold transition-colors leading-8 flex items-center gap-1.5",children:["Dashboard ",(0,t.jsx)(l.ArrowRight,{size:12})]}),(0,t.jsxs)("div",{className:"hidden sm:flex items-center gap-1.5 h-8 px-2.5 rounded border border-slate-200 bg-slate-50 text-[11px] font-mono text-slate-600",children:[(0,t.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-emerald-500 shrink-0"}),"Production: Strict"]})]})]})}),(0,t.jsx)("section",{className:"border-b border-slate-200",children:(0,t.jsx)("div",{className:"max-w-screen-xl mx-auto px-6",children:(0,t.jsxs)("div",{className:"grid grid-cols-1 lg:grid-cols-[1fr_400px] gap-0 divide-y lg:divide-y-0 lg:divide-x divide-slate-200",children:[(0,t.jsxs)("div",{className:"py-14 pr-0 lg:pr-12",children:[(0,t.jsxs)("div",{className:"inline-flex items-center gap-1.5 text-[11px] font-mono font-semibold uppercase tracking-widest text-blue-700 bg-blue-50 border border-blue-200 px-2.5 py-1 rounded mb-6",children:[(0,t.jsx)(a.Shield,{size:11})," Enterprise AI Security Control Plane"]}),(0,t.jsx)("h1",{className:"text-[44px] font-bold tracking-tight leading-[1.1] text-slate-900",children:"AgentGuard"}),(0,t.jsx)("p",{className:"text-xl font-semibold text-slate-500 mt-2",children:"Security Control Plane for Autonomous AI"}),(0,t.jsx)("div",{className:"mt-6 pl-4 border-l-2 border-blue-500 space-y-1.5",children:["Observe agent actions.","Correlate identity, authority and context.","Analyze threats.","Enforce deterministic security boundaries."].map(e=>(0,t.jsx)("p",{className:"text-sm text-slate-600",children:e},e))}),(0,t.jsxs)("div",{className:"mt-8 flex flex-wrap gap-3",children:[(0,t.jsxs)(r.default,{href:"/dashboard",className:"inline-flex items-center gap-2 bg-blue-600 hover:bg-blue-700 text-white text-sm font-semibold px-5 py-2.5 rounded transition-colors",children:["Open Security Console ",(0,t.jsx)(l.ArrowRight,{size:14})]}),(0,t.jsx)(r.default,{href:"/threats",className:"inline-flex items-center gap-2 text-sm font-medium text-slate-700 hover:text-slate-900 px-4 py-2.5 rounded border border-slate-300 hover:border-slate-400 bg-white hover:bg-slate-50 transition-colors",children:"Explore Architecture"})]}),(0,t.jsxs)("div",{className:"mt-8 pt-6 border-t border-slate-100 flex flex-wrap gap-x-6 gap-y-2 text-[11px] font-mono text-slate-500",children:[(0,t.jsxs)("span",{className:"flex items-center gap-1.5 text-emerald-700 font-semibold",children:[(0,t.jsx)(n.CheckCircle2,{size:11})," Deterministic Engine NOMINAL"]}),(0,t.jsxs)("span",{children:["Mode: ",(0,t.jsx)("strong",{className:"text-slate-800",children:"STRICT"})]}),(0,t.jsxs)("span",{children:["P50: ",(0,t.jsx)("strong",{className:"text-slate-800",children:"1.4ms"})]}),(0,t.jsxs)("span",{children:["Bypasses: ",(0,t.jsx)("strong",{className:"text-slate-800",children:"0"})]}),(0,t.jsxs)("span",{children:["Tests: ",(0,t.jsx)("strong",{className:"text-slate-800",children:"243/243"})]})]})]}),(0,t.jsxs)("div",{className:"py-10 lg:pl-10 flex flex-col justify-center gap-6",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsx)("p",{className:"text-[11px] font-semibold uppercase tracking-widest text-slate-400",children:"Live Security Status"}),(0,t.jsxs)(r.default,{href:"/dashboard",className:"text-[11px] font-semibold text-blue-700 hover:text-blue-800 flex items-center gap-0.5",children:["Command Center ",(0,t.jsx)(d.ChevronRight,{size:10})]})]}),(0,t.jsx)("div",{className:"grid grid-cols-2 gap-3",children:f.map(e=>(0,t.jsxs)(r.default,{href:"/dashboard",className:"border border-slate-200 rounded-lg p-3 hover:border-slate-300 hover:bg-slate-50 transition-all",children:[(0,t.jsx)("p",{className:"text-[10px] uppercase font-semibold tracking-wider text-slate-400 mb-1.5 leading-tight",children:e.label}),(0,t.jsx)("p",{className:`text-2xl font-bold font-mono ${e.accent}`,children:e.value}),(0,t.jsx)("p",{className:"text-[10px] text-slate-400 mt-0.5",children:e.sub})]},e.label))}),(0,t.jsxs)("div",{className:"border border-slate-200 rounded-lg p-3",children:[(0,t.jsx)("p",{className:"text-[10px] font-semibold uppercase tracking-widest text-slate-400 mb-2",children:"Enforcement Pipeline"}),(0,t.jsx)("div",{className:"flex items-center gap-1.5 flex-wrap",children:["OBSERVE","CORRELATE","ANALYZE","ENFORCE"].map((e,r,a)=>(0,t.jsxs)(s.default.Fragment,{children:[(0,t.jsx)("span",{className:"text-[11px] font-mono font-bold text-blue-700 bg-blue-50 border border-blue-200 px-2 py-0.5 rounded",children:e}),r<a.length-1&&(0,t.jsx)("span",{className:"text-slate-300 text-xs",children:"→"})]},e))}),(0,t.jsx)("p",{className:"text-[10px] text-slate-400 mt-2",children:"Every action intercepted before execution"})]}),(0,t.jsx)("div",{className:"flex flex-wrap gap-2",children:["ALLOW","MONITOR","HITL","QUARANTINE","BLOCK","REVOKE"].map(e=>(0,t.jsx)("span",{className:`text-[10px] font-mono font-bold px-2 py-0.5 rounded border ${"ALLOW"===e?"bg-emerald-50 text-emerald-700 border-emerald-200":"BLOCK"===e||"REVOKE"===e?"bg-red-50 text-red-700 border-red-200":"HITL"===e?"bg-amber-50 text-amber-700 border-amber-200":"QUARANTINE"===e?"bg-orange-50 text-orange-700 border-orange-200":"bg-blue-50 text-blue-700 border-blue-200"}`,children:e},e))})]})]})})}),(0,t.jsx)("section",{className:"border-b border-slate-200 py-14",children:(0,t.jsxs)("div",{className:"max-w-screen-xl mx-auto px-6",children:[(0,t.jsxs)("div",{className:"flex items-end justify-between mb-6",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"text-[11px] font-semibold uppercase tracking-widest text-blue-700 mb-1",children:"Security Capabilities"}),(0,t.jsx)("h2",{className:"text-2xl font-bold tracking-tight text-slate-900",children:"Comprehensive Security Governance for Agentic Systems"})]}),(0,t.jsxs)(r.default,{href:"/dashboard",className:"hidden md:flex items-center gap-1 text-[13px] font-semibold text-blue-700 hover:text-blue-800",children:["Full Console ",(0,t.jsx)(l.ArrowRight,{size:13})]})]}),(0,t.jsx)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-px bg-slate-200 border border-slate-200 rounded-lg overflow-hidden",children:h.map(e=>(0,t.jsxs)(r.default,{href:e.href,className:"group bg-white flex items-start gap-4 px-5 py-4 hover:bg-slate-50 transition-colors",children:[(0,t.jsx)("span",{className:"text-[11px] font-mono font-bold text-slate-400 tabular-nums mt-0.5 shrink-0 w-5",children:e.no}),(0,t.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,t.jsx)("h3",{className:"text-sm font-bold text-slate-900 group-hover:text-blue-700 transition-colors",children:e.title}),(0,t.jsx)("span",{className:"text-[10px] font-semibold text-slate-400 bg-slate-100 border border-slate-200 px-1.5 py-0.5 rounded shrink-0",children:e.group})]}),(0,t.jsx)("p",{className:"text-xs text-slate-500 mt-0.5 leading-relaxed",children:e.desc})]}),(0,t.jsx)(d.ChevronRight,{size:13,className:"text-slate-300 group-hover:text-blue-500 mt-0.5 shrink-0 group-hover:translate-x-0.5 transition-all"})]},e.no))})]})}),(0,t.jsx)("section",{className:"bg-slate-50 border-b border-slate-200 py-14",children:(0,t.jsx)("div",{className:"max-w-screen-xl mx-auto px-6",children:(0,t.jsxs)("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-12",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"text-[11px] font-semibold uppercase tracking-widest text-blue-700 mb-1",children:"Architecture Workflow"}),(0,t.jsx)("h2",{className:"text-xl font-bold tracking-tight text-slate-900 mb-5",children:"How AgentGuard Works"}),(0,t.jsx)("div",{className:"space-y-3",children:b.map((e,s)=>(0,t.jsxs)("div",{className:"flex items-start gap-3",children:[(0,t.jsxs)("div",{className:"flex flex-col items-center shrink-0",children:[(0,t.jsx)("div",{className:"w-7 h-7 rounded-full border-2 border-blue-200 bg-blue-50 flex items-center justify-center",children:(0,t.jsx)("span",{className:"text-[10px] font-mono font-bold text-blue-700",children:e.step})}),s<b.length-1&&(0,t.jsx)("div",{className:"w-px h-5 bg-slate-200 my-1"})]}),(0,t.jsxs)("div",{className:"pb-4",children:[(0,t.jsx)("p",{className:"text-xs font-bold font-mono text-slate-900 tracking-wider",children:e.name}),(0,t.jsx)("p",{className:"text-xs text-slate-600 leading-relaxed mt-0.5",children:e.desc})]})]},e.step))}),(0,t.jsxs)("div",{className:"mt-4 p-3 bg-white border border-slate-200 rounded-lg",children:[(0,t.jsx)("p",{className:"text-[10px] font-semibold uppercase tracking-widest text-slate-400 mb-2",children:"Remediation Lifecycle"}),(0,t.jsx)("div",{className:"flex flex-wrap items-center gap-1.5",children:[{label:"Evidence",cls:"bg-slate-100 text-slate-700 border-slate-200"},null,{label:"Forensics",cls:"bg-slate-100 text-slate-700 border-slate-200"},null,{label:"Offensive Validation",cls:"bg-red-50 text-red-700 border-red-200"},null,{label:"Regression",cls:"bg-purple-50 text-purple-700 border-purple-200"},null,{label:"Secured Replay ✓",cls:"bg-emerald-50 text-emerald-700 border-emerald-200"}].map((e,s)=>null===e?(0,t.jsx)("span",{className:"text-slate-300 text-xs shrink-0",children:"→"},s):(0,t.jsx)("span",{className:`text-[10px] font-mono font-semibold px-2 py-0.5 rounded border ${e.cls}`,children:e.label},e.label))})]})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"text-[11px] font-semibold uppercase tracking-widest text-blue-700 mb-1",children:"System Architecture"}),(0,t.jsx)("h2",{className:"text-xl font-bold tracking-tight text-slate-900 mb-5",children:"Security Control Plane"}),(0,t.jsx)("div",{className:"space-y-0",children:[{label:"AI Agents",sub:"LangChain · AutoGen · CrewAI",tier:"source"},{label:"AgentGuard SDK",sub:"Identity / Authority / Context / Tools",tier:"sdk"},{label:"AI Secura + APIRIS",sub:"Semantic Risk + Payload Intelligence",tier:"analysis"},{label:"Deterministic Policy",sub:"Mathematical Invariants · Zero AI Override",tier:"policy"},{label:"Enforcement Decision",sub:"ALLOW · MONITOR · HITL · QUARANTINE · BLOCK · REVOKE",tier:"enforcement"},{label:"Evidence · Forensics · Incidents · Posture",sub:"Cryptographic proof chain · Auditable",tier:"output"}].map((e,s,r)=>(0,t.jsxs)("div",{children:[(0,t.jsx)("div",{className:`px-4 py-3 rounded border text-xs flex items-center justify-between gap-3 ${"source"===e.tier?"bg-white border-slate-200":"sdk"===e.tier?"bg-blue-50 border-blue-200":"analysis"===e.tier?"bg-purple-50 border-purple-200":"policy"===e.tier?"bg-slate-900 border-slate-800 text-white":"enforcement"===e.tier?"bg-red-50 border-red-200":"bg-emerald-50 border-emerald-200"}`,children:(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:`font-bold ${"policy"===e.tier?"text-emerald-400":"sdk"===e.tier?"text-blue-800":"analysis"===e.tier?"text-purple-800":"enforcement"===e.tier?"text-red-800":"output"===e.tier?"text-emerald-800":"text-slate-800"}`,children:e.label}),(0,t.jsx)("p",{className:`text-[11px] font-mono mt-0.5 ${"policy"===e.tier?"text-slate-400":"text-slate-500"}`,children:e.sub})]})}),s<r.length-1&&(0,t.jsx)("div",{className:"flex justify-center py-0.5",children:(0,t.jsx)("span",{className:"text-slate-400 text-xs",children:"↓"})})]},e.label))}),(0,t.jsx)("p",{className:"text-[11px] text-slate-500 mt-3 font-mono",children:"Invariant: AI Reasons → Policy Enforces. No AI model can override the deterministic engine."})]})]})})}),(0,t.jsx)("section",{className:"border-b border-slate-200 py-14",children:(0,t.jsxs)("div",{className:"max-w-screen-xl mx-auto px-6",children:[(0,t.jsxs)("div",{className:"mb-6",children:[(0,t.jsx)("p",{className:"text-[11px] font-semibold uppercase tracking-widest text-blue-700 mb-1",children:"Platform Launchpad"}),(0,t.jsx)("h2",{className:"text-2xl font-bold tracking-tight text-slate-900",children:"Choose Where to Go"}),(0,t.jsx)("p",{className:"text-sm text-slate-500 mt-1",children:"Direct entry into all operational, security, validation and analysis workspaces."})]}),(0,t.jsx)("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-0 border border-slate-200 rounded-lg overflow-hidden divide-y sm:divide-y-0 sm:divide-x divide-slate-200",children:m.map(e=>(0,t.jsxs)("div",{className:"bg-white",children:[(0,t.jsxs)("div",{className:"px-4 py-3 border-b border-slate-100 bg-slate-50 flex items-center justify-between",children:[(0,t.jsx)("span",{className:"text-[11px] font-bold uppercase tracking-widest text-slate-700",children:e.group}),(0,t.jsx)("span",{className:"text-[10px] font-mono text-slate-400",children:e.no})]}),(0,t.jsx)("div",{className:"p-1.5 space-y-0.5",children:e.links.map(e=>(0,t.jsxs)(r.default,{href:e.href,className:"flex items-center justify-between px-3 py-2 rounded text-[13px] text-slate-700 hover:bg-slate-50 hover:text-blue-700 transition-colors group",children:[(0,t.jsx)("span",{children:e.label}),(0,t.jsx)(d.ChevronRight,{size:11,className:"text-slate-300 group-hover:text-blue-500 shrink-0"})]},e.href))})]},e.group))})]})}),(0,t.jsx)("section",{className:"bg-white border-b border-slate-200 py-14",children:(0,t.jsx)("div",{className:"max-w-screen-xl mx-auto px-6",children:(0,t.jsxs)("div",{className:"grid grid-cols-1 lg:grid-cols-[1fr_380px] gap-12 items-start",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"text-[11px] font-semibold uppercase tracking-widest text-blue-700 mb-1",children:"Developer SDK"}),(0,t.jsx)("h2",{className:"text-2xl font-bold tracking-tight text-slate-900 mb-1",children:"Install AgentGuard"}),(0,t.jsx)("p",{className:"text-sm text-slate-500 mb-6",children:"Zero-dependency core. Install only what you need — extras are optional."}),(0,t.jsxs)("div",{className:"space-y-3 mb-6",children:[(0,t.jsxs)("div",{className:"bg-slate-950 rounded-lg border border-slate-800 overflow-hidden",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between px-4 py-2 border-b border-slate-800",children:[(0,t.jsx)("span",{className:"text-[11px] font-mono text-slate-400",children:"Core (zero deps)"}),(0,t.jsxs)("button",{onClick:()=>N("pip install agentguard",g),className:"flex items-center gap-1 text-[11px] font-mono text-slate-500 hover:text-white transition-colors",children:[x?(0,t.jsx)(o.Check,{size:11,className:"text-emerald-400"}):(0,t.jsx)(c.Copy,{size:11}),x?"Copied":"Copy"]})]}),(0,t.jsxs)("div",{className:"px-4 py-3 font-mono text-sm",children:[(0,t.jsx)("span",{className:"text-slate-500",children:"$ "}),(0,t.jsx)("span",{className:"text-emerald-400 font-semibold",children:"pip install agentguard"})]})]}),(0,t.jsxs)("div",{className:"bg-slate-950 rounded-lg border border-slate-800 overflow-hidden",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between px-4 py-2 border-b border-slate-800",children:[(0,t.jsx)("span",{className:"text-[11px] font-mono text-slate-400",children:"Initialize Control Plane"}),(0,t.jsxs)("button",{onClick:()=>N('from agentguard import AgentGuard\n\nguard = AgentGuard(mode="strict")',j),className:"flex items-center gap-1 text-[11px] font-mono text-slate-500 hover:text-white transition-colors",children:[y?(0,t.jsx)(o.Check,{size:11,className:"text-emerald-400"}):(0,t.jsx)(c.Copy,{size:11}),y?"Copied":"Copy"]})]}),(0,t.jsxs)("pre",{className:"px-4 py-3 font-mono text-sm leading-relaxed",children:[(0,t.jsx)("span",{className:"text-blue-400",children:"from"}),(0,t.jsx)("span",{className:"text-slate-300",children:" agentguard "}),(0,t.jsx)("span",{className:"text-blue-400",children:"import"}),(0,t.jsxs)("span",{className:"text-emerald-300",children:[" AgentGuard","\n\n"]}),(0,t.jsx)("span",{className:"text-slate-300",children:"guard = "}),(0,t.jsx)("span",{className:"text-yellow-300",children:"AgentGuard"}),(0,t.jsx)("span",{className:"text-slate-300",children:"(mode="}),(0,t.jsx)("span",{className:"text-orange-300",children:'"strict"'}),(0,t.jsx)("span",{className:"text-slate-300",children:")"})]})]})]}),(0,t.jsxs)("div",{className:"border border-slate-200 rounded-lg overflow-hidden mb-5",children:[(0,t.jsx)("div",{className:"px-4 py-2 bg-slate-50 border-b border-slate-200",children:(0,t.jsx)("p",{className:"text-[11px] font-mono font-semibold text-slate-600",children:"Optional Extras — install only what you need"})}),(0,t.jsx)("div",{className:"divide-y divide-slate-100",children:[{extra:"[server]",desc:"FastAPI + Uvicorn backend server",cmd:"pip install agentguard[server]"},{extra:"[dashboard]",desc:"Full dashboard + backend",cmd:"pip install agentguard[dashboard]"},{extra:"[openai]",desc:"OpenAI LLM provider integration",cmd:"pip install agentguard[openai]"},{extra:"[gemini]",desc:"Google Gemini integration",cmd:"pip install agentguard[gemini]"},{extra:"[anthropic]",desc:"Anthropic Claude integration",cmd:"pip install agentguard[anthropic]"},{extra:"[all]",desc:"All providers and server components",cmd:"pip install agentguard[all]"}].map(e=>(0,t.jsxs)("div",{className:"flex items-center gap-4 px-4 py-2.5",children:[(0,t.jsx)("code",{className:"text-[11px] font-mono font-semibold text-blue-700 bg-blue-50 border border-blue-200 px-2 py-0.5 rounded shrink-0",children:e.extra}),(0,t.jsx)("span",{className:"text-xs text-slate-500 flex-1",children:e.desc}),(0,t.jsx)("code",{className:"hidden md:block text-[11px] font-mono text-slate-500",children:e.cmd})]},e.extra))})]}),(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-3",children:[(0,t.jsxs)(r.default,{href:"/api",className:"inline-flex items-center gap-2 bg-blue-600 hover:bg-blue-700 text-white text-sm font-semibold px-4 py-2.5 rounded transition-colors",children:["Get Started ",(0,t.jsx)(l.ArrowRight,{size:13})]}),(0,t.jsx)(r.default,{href:"/api",className:"text-sm font-medium text-slate-600 hover:text-slate-900",children:"Read the SDK docs →"})]})]}),(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsx)("p",{className:"text-[11px] font-semibold uppercase tracking-widest text-slate-400 mb-4",children:"Also Available"}),[{label:"CLI",cmd:"agentguard",desc:"Run attack campaigns, inspect mutations and test gate criteria from terminal.",href:"/offensive",cta:"CLI Guide"},{label:"Dashboard",cmd:"agentguard serve",desc:"Launch the enterprise console and FastAPI backend on ports 3000 and 8000.",href:"/dashboard",cta:"Open Console"},{label:"REST API",cmd:"/api/v1/",desc:"Full OpenAPI spec for streaming events, evaluating actions and querying evidence.",href:"/api",cta:"API Reference"}].map(e=>(0,t.jsxs)("div",{className:"border border-slate-200 rounded-lg p-4 bg-white flex flex-col gap-3",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsx)("span",{className:"text-[11px] font-mono font-bold text-slate-700",children:e.label}),(0,t.jsx)("code",{className:"text-[11px] font-mono text-blue-700 bg-blue-50 border border-blue-200 px-2 py-0.5 rounded",children:e.cmd})]}),(0,t.jsx)("p",{className:"text-xs text-slate-500 leading-relaxed",children:e.desc}),(0,t.jsxs)(r.default,{href:e.href,className:"text-xs font-semibold text-blue-700 hover:text-blue-800 flex items-center gap-1",children:[e.cta," ",(0,t.jsx)(d.ChevronRight,{size:11})]})]},e.label))]})]})})}),(0,t.jsx)("section",{className:"bg-slate-900 py-12",children:(0,t.jsxs)("div",{className:"max-w-screen-xl mx-auto px-6 flex flex-col sm:flex-row items-center justify-between gap-6",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"text-lg font-bold text-white tracking-tight",children:"AgentGuard"}),(0,t.jsx)("p",{className:"text-sm text-slate-400 mt-1 max-w-md",children:"Security control for AI systems that can act."})]}),(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-3 shrink-0",children:[(0,t.jsxs)(r.default,{href:"/dashboard",className:"inline-flex items-center gap-2 bg-blue-600 hover:bg-blue-500 text-white text-sm font-semibold px-5 py-2.5 rounded transition-colors",children:["Open Security Console ",(0,t.jsx)(l.ArrowRight,{size:14})]}),(0,t.jsx)(r.default,{href:"/api",className:"inline-flex items-center gap-2 bg-slate-800 hover:bg-slate-700 text-slate-200 text-sm font-medium px-4 py-2.5 rounded border border-slate-700 transition-colors",children:"Read Documentation"})]})]})}),(0,t.jsx)("footer",{className:"bg-white border-t border-slate-200 py-4",children:(0,t.jsxs)("div",{className:"max-w-screen-xl mx-auto px-6 flex flex-col sm:flex-row items-center justify-between gap-3 text-[12px] text-slate-500",children:[(0,t.jsxs)("div",{className:"flex items-center gap-4",children:[(0,t.jsx)("span",{className:"font-semibold text-slate-800",children:"AgentGuard"}),(0,t.jsx)("span",{children:"v1.0.0"}),(0,t.jsx)("span",{children:"·"}),(0,t.jsx)("span",{children:"Enterprise Security Control Plane"})]}),(0,t.jsxs)("div",{className:"flex items-center gap-5",children:[[{label:"Documentation",href:"/api"},{label:"Security Gates",href:"/security-gates"},{label:"Posture",href:"/posture"},{label:"Settings",href:"/settings"}].map(e=>(0,t.jsx)(r.default,{href:e.href,className:"hover:text-slate-900 transition-colors",children:e.label},e.href)),(0,t.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,t.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-emerald-500"}),(0,t.jsx)("span",{className:"font-mono",children:"All Systems Operational"})]})]})]})})]})}])}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,79996,47238,e=>{"use strict";function t(e,t,r){e.prototype=t.prototype=r,r.constructor=e}function r(e,t){var r=Object.create(e.prototype);for(var a in t)r[a]=t[a];return r}function a(){}var n="\\s*([+-]?\\d+)\\s*",i="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",l="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",o=/^#([0-9a-f]{3,8})$/,s=RegExp(`^rgb\\(${n},${n},${n}\\)$`),u=RegExp(`^rgb\\(${l},${l},${l}\\)$`),c=RegExp(`^rgba\\(${n},${n},${n},${i}\\)$`),d=RegExp(`^rgba\\(${l},${l},${l},${i}\\)$`),f=RegExp(`^hsl\\(${i},${l},${l}\\)$`),p=RegExp(`^hsla\\(${i},${l},${l},${i}\\)$`),h={aliceblue:0xf0f8ff,antiquewhite:0xfaebd7,aqua:65535,aquamarine:8388564,azure:0xf0ffff,beige:0xf5f5dc,bisque:0xffe4c4,black:0,blanchedalmond:0xffebcd,blue:255,blueviolet:9055202,brown:0xa52a2a,burlywood:0xdeb887,cadetblue:6266528,chartreuse:8388352,chocolate:0xd2691e,coral:0xff7f50,cornflowerblue:6591981,cornsilk:0xfff8dc,crimson:0xdc143c,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:0xb8860b,darkgray:0xa9a9a9,darkgreen:25600,darkgrey:0xa9a9a9,darkkhaki:0xbdb76b,darkmagenta:9109643,darkolivegreen:5597999,darkorange:0xff8c00,darkorchid:0x9932cc,darkred:9109504,darksalmon:0xe9967a,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:0xff1493,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:0xb22222,floralwhite:0xfffaf0,forestgreen:2263842,fuchsia:0xff00ff,gainsboro:0xdcdcdc,ghostwhite:0xf8f8ff,gold:0xffd700,goldenrod:0xdaa520,gray:8421504,green:32768,greenyellow:0xadff2f,grey:8421504,honeydew:0xf0fff0,hotpink:0xff69b4,indianred:0xcd5c5c,indigo:4915330,ivory:0xfffff0,khaki:0xf0e68c,lavender:0xe6e6fa,lavenderblush:0xfff0f5,lawngreen:8190976,lemonchiffon:0xfffacd,lightblue:0xadd8e6,lightcoral:0xf08080,lightcyan:0xe0ffff,lightgoldenrodyellow:0xfafad2,lightgray:0xd3d3d3,lightgreen:9498256,lightgrey:0xd3d3d3,lightpink:0xffb6c1,lightsalmon:0xffa07a,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:0xb0c4de,lightyellow:0xffffe0,lime:65280,limegreen:3329330,linen:0xfaf0e6,magenta:0xff00ff,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:0xba55d3,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:0xc71585,midnightblue:1644912,mintcream:0xf5fffa,mistyrose:0xffe4e1,moccasin:0xffe4b5,navajowhite:0xffdead,navy:128,oldlace:0xfdf5e6,olive:8421376,olivedrab:7048739,orange:0xffa500,orangered:0xff4500,orchid:0xda70d6,palegoldenrod:0xeee8aa,palegreen:0x98fb98,paleturquoise:0xafeeee,palevioletred:0xdb7093,papayawhip:0xffefd5,peachpuff:0xffdab9,peru:0xcd853f,pink:0xffc0cb,plum:0xdda0dd,powderblue:0xb0e0e6,purple:8388736,rebeccapurple:6697881,red:0xff0000,rosybrown:0xbc8f8f,royalblue:4286945,saddlebrown:9127187,salmon:0xfa8072,sandybrown:0xf4a460,seagreen:3050327,seashell:0xfff5ee,sienna:0xa0522d,silver:0xc0c0c0,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:0xfffafa,springgreen:65407,steelblue:4620980,tan:0xd2b48c,teal:32896,thistle:0xd8bfd8,tomato:0xff6347,turquoise:4251856,violet:0xee82ee,wheat:0xf5deb3,white:0xffffff,whitesmoke:0xf5f5f5,yellow:0xffff00,yellowgreen:0x9acd32};function m(){return this.rgb().formatHex()}function y(){return this.rgb().formatRgb()}function v(e){var t,r;return e=(e+"").trim().toLowerCase(),(t=o.exec(e))?(r=t[1].length,t=parseInt(t[1],16),6===r?x(t):3===r?new E(t>>8&15|t>>4&240,t>>4&15|240&t,(15&t)<<4|15&t,1):8===r?b(t>>24&255,t>>16&255,t>>8&255,(255&t)/255):4===r?b(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|240&t,((15&t)<<4|15&t)/255):null):(t=s.exec(e))?new E(t[1],t[2],t[3],1):(t=u.exec(e))?new E(255*t[1]/100,255*t[2]/100,255*t[3]/100,1):(t=c.exec(e))?b(t[1],t[2],t[3],t[4]):(t=d.exec(e))?b(255*t[1]/100,255*t[2]/100,255*t[3]/100,t[4]):(t=f.exec(e))?O(t[1],t[2]/100,t[3]/100,1):(t=p.exec(e))?O(t[1],t[2]/100,t[3]/100,t[4]):h.hasOwnProperty(e)?x(h[e]):"transparent"===e?new E(NaN,NaN,NaN,0):null}function x(e){return new E(e>>16&255,e>>8&255,255&e,1)}function b(e,t,r,a){return a<=0&&(e=t=r=NaN),new E(e,t,r,a)}function g(e,t,r,n){var i;return 1==arguments.length?((i=e)instanceof a||(i=v(i)),i)?new E((i=i.rgb()).r,i.g,i.b,i.opacity):new E:new E(e,t,r,null==n?1:n)}function E(e,t,r,a){this.r=+e,this.g=+t,this.b=+r,this.opacity=+a}function A(){return`#${N(this.r)}${N(this.g)}${N(this.b)}`}function w(){let e=I(this.opacity);return`${1===e?"rgb(":"rgba("}${P(this.r)}, ${P(this.g)}, ${P(this.b)}${1===e?")":`, ${e})`}`}function I(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function P(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function N(e){return((e=P(e))<16?"0":"")+e.toString(16)}function O(e,t,r,a){return a<=0?e=t=r=NaN:r<=0||r>=1?e=t=NaN:t<=0&&(e=NaN),new S(e,t,r,a)}function k(e){if(e instanceof S)return new S(e.h,e.s,e.l,e.opacity);if(e instanceof a||(e=v(e)),!e)return new S;if(e instanceof S)return e;var t=(e=e.rgb()).r/255,r=e.g/255,n=e.b/255,i=Math.min(t,r,n),l=Math.max(t,r,n),o=NaN,s=l-i,u=(l+i)/2;return s?(o=t===l?(r-n)/s+(r<n)*6:r===l?(n-t)/s+2:(t-r)/s+4,s/=u<.5?l+i:2-l-i,o*=60):s=u>0&&u<1?0:o,new S(o,s,u,e.opacity)}function S(e,t,r,a){this.h=+e,this.s=+t,this.l=+r,this.opacity=+a}function j(e){return(e=(e||0)%360)<0?e+360:e}function C(e){return Math.max(0,Math.min(1,e||0))}function D(e,t,r){return(e<60?t+(r-t)*e/60:e<180?r:e<240?t+(r-t)*(240-e)/60:t)*255}t(a,v,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:m,formatHex:m,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return k(this).formatHsl()},formatRgb:y,toString:y}),t(E,g,r(a,{brighter(e){return e=null==e?1.4285714285714286:Math.pow(1.4285714285714286,e),new E(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=null==e?.7:Math.pow(.7,e),new E(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new E(P(this.r),P(this.g),P(this.b),I(this.opacity))},displayable(){return -.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:A,formatHex:A,formatHex8:function(){return`#${N(this.r)}${N(this.g)}${N(this.b)}${N((isNaN(this.opacity)?1:this.opacity)*255)}`},formatRgb:w,toString:w})),t(S,function(e,t,r,a){return 1==arguments.length?k(e):new S(e,t,r,null==a?1:a)},r(a,{brighter(e){return e=null==e?1.4285714285714286:Math.pow(1.4285714285714286,e),new S(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=null==e?.7:Math.pow(.7,e),new S(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,r=this.l,a=r+(r<.5?r:1-r)*t,n=2*r-a;return new E(D(e>=240?e-240:e+120,n,a),D(e,n,a),D(e<120?e+240:e-120,n,a),this.opacity)},clamp(){return new S(j(this.h),C(this.s),C(this.l),I(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let e=I(this.opacity);return`${1===e?"hsl(":"hsla("}${j(this.h)}, ${100*C(this.s)}%, ${100*C(this.l)}%${1===e?")":`, ${e})`}`}})),e.s(["default",0,v,"rgb",0,g],47238),e.s(["color",0,v],79996)},68593,e=>{"use strict";e.s(["default",0,function(e,t){return e*=1,t*=1,function(r){return e*(1-r)+t*r}}])},52491,e=>{"use strict";var t=e.i(68593);e.s(["interpolateNumber",()=>t.default])},65445,625,e=>{"use strict";var t=e.i(47238);function r(e,t,r,a,n){var i=e*e,l=i*e;return((1-3*e+3*i-l)*t+(4-6*i+3*l)*r+(1+3*e+3*i-3*l)*a+l*n)/6}let a=e=>()=>e;function n(e,t){var r=t-e;return r?function(t){return e+t*r}:a(isNaN(e)?t:e)}e.s(["default",0,a],625);let i=function e(r){var i,l=1==(i=+r)?n:function(e,t){var r,n,l;return t-e?(r=e,n=t,r=Math.pow(r,l=i),n=Math.pow(n,l)-r,l=1/l,function(e){return Math.pow(r+e*n,l)}):a(isNaN(e)?t:e)};function o(e,r){var a=l((e=(0,t.rgb)(e)).r,(r=(0,t.rgb)(r)).r),i=l(e.g,r.g),o=l(e.b,r.b),s=n(e.opacity,r.opacity);return function(t){return e.r=a(t),e.g=i(t),e.b=o(t),e.opacity=s(t),e+""}}return o.gamma=e,o}(1);function l(e){return function(r){var a,n,i=r.length,l=Array(i),o=Array(i),s=Array(i);for(a=0;a<i;++a)n=(0,t.rgb)(r[a]),l[a]=n.r||0,o[a]=n.g||0,s[a]=n.b||0;return l=e(l),o=e(o),s=e(s),n.opacity=1,function(e){return n.r=l(e),n.g=o(e),n.b=s(e),n+""}}}l(function(e){var t=e.length-1;return function(a){var n=a<=0?a=0:a>=1?(a=1,t-1):Math.floor(a*t),i=e[n],l=e[n+1],o=n>0?e[n-1]:2*i-l,s=n<t-1?e[n+2]:2*l-i;return r((a-n/t)*t,o,i,l,s)}}),l(function(e){var t=e.length;return function(a){var n=Math.floor(((a%=1)<0?++a:a)*t),i=e[(n+t-1)%t],l=e[n%t],o=e[(n+1)%t],s=e[(n+2)%t];return r((a-n/t)*t,i,l,o,s)}}),e.s(["default",0,i],65445)},35204,e=>{"use strict";var t=e.i(68593),r=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,a=RegExp(r.source,"g");e.s(["default",0,function(e,n){var i,l,o,s,u,c=r.lastIndex=a.lastIndex=0,d=-1,f=[],p=[];for(e+="",n+="";(o=r.exec(e))&&(s=a.exec(n));)(u=s.index)>c&&(u=n.slice(c,u),f[d]?f[d]+=u:f[++d]=u),(o=o[0])===(s=s[0])?f[d]?f[d]+=s:f[++d]=s:(f[++d]=null,p.push({i:d,x:(0,t.default)(o,s)})),c=a.lastIndex;return c<n.length&&(u=n.slice(c),f[d]?f[d]+=u:f[++d]=u),f.length<2?p[0]?(i=p[0].x,function(e){return i(e)+""}):(l=n,function(){return l}):(n=p.length,function(e){for(var t,r=0;r<n;++r)f[(t=p[r]).i]=t.x(e);return f.join("")})}])},1725,237,e=>{"use strict";e.s(["Area",()=>eN,"computeArea",()=>eP],237);var t=e.i(71645),r=e.i(25949),a=e.i(33369),n=["axis"],i=(0,t.forwardRef)((e,i)=>t.createElement(a.CartesianChart,{chartName:"AreaChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:n,tooltipPayloadSearcher:r.arrayTooltipSearcher,categoricalChartProps:e,ref:i}));e.s(["AreaChart",0,i],1725);var l=t,o=e.i(7670),s=e.i(97865),u=e.i(69212),c=e.i(86031),d=e.i(94395),f=e.i(79812),p=e.i(81977),h=e.i(41818),m=e.i(844),y=e.i(59798),v=e.i(61849),x=e.i(61764),b=e.i(46710),g=e.i(92860),E=e.i(91526),A=e.i(77320),w=e.i(42221),I=(e,t,r)=>(0,x.selectAxisWithScale)(e,"xAxis",(0,w.selectXAxisIdFromGraphicalItemId)(e,t),r),P=(e,t,r)=>(0,x.selectTicksOfGraphicalItem)(e,"xAxis",(0,w.selectXAxisIdFromGraphicalItemId)(e,t),r),N=(e,t,r)=>(0,x.selectAxisWithScale)(e,"yAxis",(0,w.selectYAxisIdFromGraphicalItemId)(e,t),r),O=(e,t,r)=>(0,x.selectTicksOfGraphicalItem)(e,"yAxis",(0,w.selectYAxisIdFromGraphicalItemId)(e,t),r),k=(0,v.createSelector)([b.selectChartLayout,I,N,P,O],(e,t,r,a,n)=>(0,f.isCategoricalAxis)(e,"xAxis")?(0,f.getBandSizeOfAxis)(t,a,!1):(0,f.getBandSizeOfAxis)(r,n,!1)),S=(0,v.createSelector)([x.selectUnfilteredCartesianItems,(e,t)=>t],(e,t)=>e.filter(e=>"area"===e.type).find(e=>e.id===t)),j=e=>{var t=(0,b.selectChartLayout)(e);return(0,f.isCategoricalAxis)(t,"xAxis")?"yAxis":"xAxis"},C=(e,t,r)=>(0,x.selectStackGroups)(e,j(e),"yAxis"===j(e)?(0,w.selectYAxisIdFromGraphicalItemId)(e,t):(0,w.selectXAxisIdFromGraphicalItemId)(e,t),r),D=(0,v.createSelector)([S,C],(e,t)=>{if(null!=e&&null!=t){var r,a=e.stackId,n=(0,E.getStackSeriesIdentifier)(e);if(null!=a&&null!=n){var i=null==(r=t[a])?void 0:r.stackedData,l=null==i?void 0:i.find(e=>e.key===n);if(null!=l)return l.map(e=>[e[0],e[1]])}}}),$=(0,v.createSelector)([S,C],(e,t)=>{if(null!=e&&null!=e.stackId&&null!=t){var r=t[e.stackId];if(null!=r)return r.graphicalItems.map(e=>e.dataKey).filter(d.isNotNil)}}),M=(0,v.createSelector)([b.selectChartLayout,I,N,P,O,D,g.selectChartDataWithIndexesIfNotInPanoramaPosition3,k,S,A.selectChartBaseValue,$],(e,t,r,a,n,i,l,o,s,u,c)=>{var d,f=l.chartData,p=l.dataStartIndex,h=l.dataEndIndex;if(null!=s&&("horizontal"===e||"vertical"===e)&&null!=t&&null!=r&&null!=a&&null!=n&&0!==a.length&&0!==n.length&&null!=o){var m=s.data;if(null!=(d=m&&m.length>0?m:null==f?void 0:f.slice(p,h+1)))return eP({layout:e,xAxis:t,yAxis:r,xAxisTicks:a,yAxisTicks:n,dataStartIndex:p,areaSettings:s,stackedData:i,displayedData:d,chartBaseValue:u,bandSize:o,stackDataKeys:c})}}),L=e.i(75337),T=e.i(75502),R=e.i(95146),W=e.i(27241),B=e.i(30174),K=e.i(8436),z=e.i(63567),F=e.i(51883),V=e.i(52734),G=e.i(15549),H=e.i(91187),q=e.i(57999),U=e.i(81583),Z=e.i(43404),X=e.i(18519),Y=e.i(29601),J=e.i(18457),Q=e.i(20135),_=e.i(72733),ee=e.i(22075),et=e.i(8191),er=["animationElapsedTime","isAnimating","isEntrance","layout","isRange","stroke","connectNulls"],ea=["id","baseLine"];function en(){return(en=Object.assign.bind()).apply(null,arguments)}function ei(e,t){if(null==e)return{};var r,a,n=function(e,t){if(null==e)return{};var r={};for(var a in e)if(({}).hasOwnProperty.call(e,a)){if(-1!==t.indexOf(a))continue;r[a]=e[a]}return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(a=0;a<i.length;a++)r=i[a],-1===t.indexOf(r)&&({}).propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function el(e){var r,a,n=e.alpha,i=e.baseLine,l=e.points,o=e.strokeWidth,s=null==(r=l[0])?void 0:r.x,u=null==(a=l[l.length-1])?void 0:a.x;if(!(0,ee.isWellBehavedNumber)(s)||!(0,ee.isWellBehavedNumber)(u))return null;var c=n*Math.abs(s-u),f=Math.max(...l.map(e=>e.y||0));return((0,d.isNumber)(i)?f=Math.max(i,f):i&&Array.isArray(i)&&i.length&&(f=Math.max(...i.map(e=>e.y||0),f)),(0,d.isNumber)(f))?t.createElement("rect",{x:s<u?s:s-c,y:0,width:c,height:Math.floor(f+(o?parseInt("".concat(o),10):1))}):null}function eo(e){var r,a,n=e.alpha,i=e.baseLine,l=e.points,o=e.strokeWidth,s=null==(r=l[0])?void 0:r.y,u=null==(a=l[l.length-1])?void 0:a.y;if(!(0,ee.isWellBehavedNumber)(s)||!(0,ee.isWellBehavedNumber)(u))return null;var c=n*Math.abs(s-u),f=Math.max(...l.map(e=>e.x||0));return((0,d.isNumber)(i)?f=Math.max(i,f):i&&Array.isArray(i)&&i.length&&(f=Math.max(...i.map(e=>e.x||0),f)),(0,d.isNumber)(f))?t.createElement("rect",{x:0,y:s<u?s:s-c,width:f+(o?parseInt("".concat(o),10):1),height:Math.floor(c)}):null}function es(e){var r=e.alpha,a=e.layout,n=e.points,i=e.baseLine,l=e.strokeWidth;return"vertical"===a?t.createElement(eo,{alpha:r,points:n,baseLine:i,strokeWidth:l}):t.createElement(el,{alpha:r,points:n,baseLine:i,strokeWidth:l})}var eu=["id"],ec=["activeDot","animationBegin","animationDuration","animationEasing","connectNulls","dot","fill","fillOpacity","hide","isAnimationActive","legendType","stroke","xAxisId","yAxisId"];function ed(){return(ed=Object.assign.bind()).apply(null,arguments)}function ef(e,t){if(null==e)return{};var r,a,n=function(e,t){if(null==e)return{};var r={};for(var a in e)if(({}).hasOwnProperty.call(e,a)){if(-1!==t.indexOf(a))continue;r[a]=e[a]}return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(a=0;a<i.length;a++)r=i[a],-1===t.indexOf(r)&&({}).propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function ep(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function eh(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ep(Object(r),!0).forEach(function(t){var a,n,i;a=e,n=t,i=r[t],(n=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var a=r.call(e,t||"default");if("object"!=typeof a)return a;throw TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(n))in a?Object.defineProperty(a,n,{value:i,enumerable:!0,configurable:!0,writable:!0}):a[n]=i}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ep(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var em={activeDot:!0,animationBegin:0,animationDuration:1500,animationEasing:"ease",animationMatchBy:K.matchByIndex,animationInterpolateFn:(e,t)=>null==e?[]:1===t?e.flatMap(e=>"removed"===e.status?[]:[e.next]):e.flatMap(e=>"matched"===e.status?[eh(eh({},e.next),{},{x:(0,d.interpolate)(e.prev.x,e.next.x,t),y:(0,d.interpolate)(e.prev.y,e.next.y,t)})]:"added"===e.status?[e.next]:[]),connectNulls:!1,dot:!1,fill:"#3182bd",fillOpacity:.6,hide:!1,isAnimationActive:"auto",legendType:"line",stroke:"#3182bd",strokeWidth:1,type:"linear",label:!1,shape:function(e){var r,a=e.animationElapsedTime,n=void 0===a?1:a,i=e.isAnimating,l=e.isEntrance,o=e.layout,u=e.isRange,c=e.stroke,d=e.connectNulls,f=ei(e,er),p="vertical"===o?"vertical":"horizontal",h=null!=d&&d,m=(0,et.useId)(),y=f.id,v=f.baseLine,x=ei(f,ea),b=(0,q.svgPropertiesNoEvents)(x),g=t.createElement(_.Curve,en({},f,{id:y,baseLine:v,connectNulls:h,stroke:"none",className:"recharts-area-area",layout:p})),E="none"!==c&&t.createElement(_.Curve,en({},b,{className:"recharts-area-curve",layout:p,type:f.type,connectNulls:h,fill:"none",stroke:c,points:f.points})),A="none"!==c&&u&&Array.isArray(v)&&t.createElement(_.Curve,en({},b,{className:"recharts-area-curve",layout:p,type:f.type,connectNulls:h,fill:"none",stroke:c,points:v}));return void 0!==l&&l&&(void 0!==i&&i||n<1)?t.createElement(s.Layer,null,t.createElement("defs",null,t.createElement("clipPath",{id:m},t.createElement(es,{alpha:n,points:null!=(r=f.points)?r:[],baseLine:v,layout:p,strokeWidth:f.strokeWidth}))),t.createElement(s.Layer,{clipPath:"url(#".concat(m,")")},g,E,A)):t.createElement(t.Fragment,null,g,E,A)},xAxisId:0,yAxisId:0,zIndex:J.DefaultZIndexes.area};function ey(e,t){return e&&"none"!==e?e:t}var ev=l.memo(e=>{var t=e.dataKey,r=e.data,a=e.stroke,n=e.strokeWidth,i=e.fill,o=e.name,s=e.hide,u=e.unit,c=e.formatter,p=e.tooltipType,h=e.id,y={dataDefinedOnItem:r,getPosition:d.noop,settings:{stroke:a,strokeWidth:n,fill:i,dataKey:t,nameKey:void 0,name:(0,f.getTooltipNameProp)(o,t),hide:s,type:p,color:ey(a,i),unit:u,formatter:c,graphicalItemId:h}};return l.createElement(m.SetTooltipEntrySettings,{tooltipEntrySettings:y})});function ex(e){var t=e.clipPathId,r=e.points,a=e.props,n=a.needClip,i=a.dot,o=a.dataKey,s=(0,q.svgPropertiesNoEvents)(a);return l.createElement(c.Dots,{points:r,dot:i,className:"recharts-area-dots",dotClassName:"recharts-area-dot",dataKey:o,baseProps:s,needClip:n,clipPathId:t})}function eb(e){var t=e.showLabels,r=e.children,a=e.points.map(e=>{var t,r,a={x:null!=(t=e.x)?t:0,y:null!=(r=e.y)?r:0,width:0,lowerWidth:0,upperWidth:0,height:0};return eh(eh({},a),{},{value:e.value,payload:e.payload,parentViewBox:void 0,viewBox:a,fill:void 0})});return l.createElement(u.CartesianLabelListContextProvider,{value:t?a:void 0},r)}function eg(e){var t=e.points,r=e.baseLine,a=e.needClip,n=e.clipPathId,i=e.props,o=e.animationElapsedTime,u=e.isAnimating,c=e.isEntrance,d=i.layout,f=i.type,p=i.stroke,h=i.connectNulls,m=i.isRange,y=i.shape,v=i.id,x=ef(i,eu),b=eh(eh({},(0,Z.svgPropertiesAndEvents)(x)),{},{id:v,points:t,connectNulls:h,type:f,baseLine:r,layout:d,stroke:p,isRange:m,animationElapsedTime:o,isAnimating:u,isEntrance:c});return l.createElement(l.Fragment,null,(null==t?void 0:t.length)>1&&l.createElement(s.Layer,{clipPath:a?"url(#clipPath-".concat(n,")"):void 0},l.createElement(X.Shape,{option:y,DefaultShape:em.shape,shapeProps:b})),l.createElement(ex,{points:t,props:x,clipPathId:n}))}function eE(e){var t,r=e.needClip,a=e.clipPathId,n=e.props,i=e.previousPointsRef,o=e.previousBaselineRef,s=n.points,c=n.baseLine,f=n.isAnimationActive,p=n.animationBegin,h=n.animationDuration,m=n.animationEasing,y=n.animationMatchBy,v=n.animationInterpolateFn,x=(0,l.useMemo)(()=>({points:s,baseLine:c}),[s,c]),g=(0,z.useAnimationStartSnapshot)(x,o),E=(0,b.useCartesianChartLayout)(),A=(0,B.useAnimationCallbacks)(n.onAnimationStart,n.onAnimationEnd),w=A.isAnimating,I=A.handleAnimationStart,P=A.handleAnimationEnd,N=g.startValue;return null==E?null:(t=Array.isArray(c)&&Array.isArray(N)?(0,K.matchAnimationItems)(N,c,y):Array.isArray(c)?(0,K.matchAnimationItems)(null,c,y):null,l.createElement(B.AnimatedItems,{animationInput:x,animationIdPrefix:"recharts-area-",items:s,previousItemsRef:i,isAnimationActive:f,animationBegin:p,animationDuration:h,animationEasing:m,onAnimationStart:I,onAnimationEnd:P,animationInterpolateFn:v,animationMatchBy:y,layout:E},(e,i,o)=>{var f;return f=1===i?c:Array.isArray(c)?v(t,i,E):o?c:function(e,t,r){if((0,d.isNumber)(e)){var a=(0,d.isNumber)(t)?t:void 0;return(0,d.interpolate)(a,e,r)}if((0,d.isNullish)(e)||(0,d.isNan)(e)){var n=(0,d.isNumber)(t)?t:void 0;return(0,d.interpolate)(n,0,r)}return e}(c,N,i),g.syncStepValue(f,i),l.createElement(eb,{showLabels:!w,points:s},n.children,l.createElement(eg,{points:e,baseLine:f,needClip:r,clipPathId:a,props:n,animationElapsedTime:i,isAnimating:w||i<1,isEntrance:o}),l.createElement(u.LabelListFromLabelProp,{label:n.label}))}))}function eA(e){var t=e.needClip,r=e.clipPathId,a=e.props,n=(0,l.useRef)(null),i=(0,l.useRef)();return l.createElement(eE,{needClip:t,clipPathId:r,props:a,previousPointsRef:n,previousBaselineRef:i})}class ew extends l.PureComponent{render(){var e=this.props,t=e.hide,r=e.dot,a=e.points,n=e.className,i=e.top,u=e.left,c=e.needClip,d=e.xAxisId,f=e.yAxisId,m=e.width,v=e.height,x=e.id,b=e.baseLine,g=e.zIndex;if(t)return null;var E=(0,o.clsx)("recharts-area",n),A=(0,U.getRadiusAndStrokeWidthFromDot)(r),w=A.r,I=A.strokeWidth,P=(0,p.isClipDot)(r),N=2*w+I,O=c?"url(#clipPath-".concat(P?"":"dots-").concat(x,")"):void 0;return l.createElement(Y.ZIndexLayer,{zIndex:g},l.createElement(s.Layer,{className:E},c&&l.createElement("defs",null,l.createElement(y.GraphicalItemClipPath,{clipPathId:x,xAxisId:d,yAxisId:f}),!P&&l.createElement("clipPath",{id:"clipPath-dots-".concat(x)},l.createElement("rect",{x:u-N/2,y:i-N/2,width:m+N,height:v+N}))),l.createElement(eA,{needClip:c,clipPathId:x,props:this.props})),l.createElement(h.ActivePoints,{points:a,mainColor:ey(this.props.stroke,this.props.fill),itemDataKey:this.props.dataKey,activeDot:this.props.activeDot,clipPath:O}),this.props.isRange&&Array.isArray(b)&&l.createElement(h.ActivePoints,{points:b,mainColor:ey(this.props.stroke,this.props.fill),itemDataKey:this.props.dataKey,activeDot:this.props.activeDot,clipPath:O}))}}function eI(e){var t,r=e.activeDot,a=e.animationBegin,n=e.animationDuration,i=e.animationEasing,o=e.connectNulls,s=e.dot,u=e.fill,c=e.fillOpacity,d=e.hide,f=e.isAnimationActive,p=e.legendType,h=e.stroke,m=e.xAxisId,v=e.yAxisId,x=ef(e,ec),g=(0,b.useChartLayout)(),E=(0,T.useChartName)(),A=(0,y.useNeedsClip)(m,v).needClip,w=(0,L.useIsPanorama)(),I=null!=(t=(0,W.useAppSelector)(t=>M(t,e.id,w)))?t:{},P=I.points,N=I.isRange,O=I.baseLine,k=(0,V.usePlotArea)();if("horizontal"!==g&&"vertical"!==g||null==k||"AreaChart"!==E&&"ComposedChart"!==E)return null;var S=k.height,j=k.width,C=k.x,D=k.y;return P&&P.length?l.createElement(ew,ed({},x,{activeDot:r,animationBegin:a,animationDuration:n,animationEasing:i,baseLine:O,connectNulls:o,dot:s,fill:u,fillOpacity:c,height:S,hide:d,layout:g,isAnimationActive:f,isRange:N,legendType:p,needClip:A,points:P,stroke:h,width:j,left:C,top:D,xAxisId:m,yAxisId:v})):null}function eP(e){var t,r=e.areaSettings,a=r.connectNulls,n=r.baseValue,i=r.dataKey,l=e.stackedData,o=e.layout,s=e.chartBaseValue,u=e.xAxis,c=e.yAxis,p=e.displayedData,h=e.dataStartIndex,m=e.xAxisTicks,y=e.yAxisTicks,v=e.bandSize,x=e.stackDataKeys,b=l&&l.length,g=((e,t,r,a,n)=>{var i=null!=r?r:t;if((0,d.isNumber)(i))return i;var l="horizontal"===e?n:a,o=l.scale.domain();if("number"===l.type){var s=Math.max(o[0],o[1]),u=Math.min(o[0],o[1]);return"dataMin"===i?u:"dataMax"===i||s<0?s:Math.max(Math.min(o[0],o[1]),0)}return"dataMin"===i?o[0]:"dataMax"===i?o[1]:o[0]})(o,s,n,u,c),E="horizontal"===o,A=!1,w=p.map((e,t)=>{if(b)s=l[h+t];else{var r,n,o,s,d,p=(0,f.getValueByDataKey)(e,i);Array.isArray(p)?(s=p,A=!0):s=[g,p]}var w=null!=(r=null==(n=s)?void 0:n[1])?r:null,I=(0,f.getValueByDataKey)(e,i),P=b&&null==I&&null!=x&&x.length>0&&x.every(t=>null==(0,f.getValueByDataKey)(e,t)),N=null==w||b&&!a&&null==I||P;return E?{x:(0,f.getCateCoordinateOfLine)({axis:u,ticks:m,bandSize:v,entry:e,index:t}),y:N?null:null!=(d=c.scale.map(w))?d:null,value:s,payload:e}:{x:N?null:null!=(o=u.scale.map(w))?o:null,y:(0,f.getCateCoordinateOfLine)({axis:c,ticks:y,bandSize:v,entry:e,index:t}),value:s,payload:e}});return t=b||A?w.map(e=>{var t,r,a=Array.isArray(e.value)?e.value[0]:null;return E?{x:e.x,y:null!=a&&null!=e.y&&null!=(r=c.scale.map(a))?r:null,payload:e.payload}:{x:null!=a&&null!=(t=u.scale.map(a))?t:null,y:e.y,payload:e.payload}}):E?c.scale.map(g):u.scale.map(g),{points:w,baseLine:null!=t?t:0,isRange:A}}var eN=l.memo(function(e){var t=(0,F.resolveDefaultProps)(e,em),r=(0,L.useIsPanorama)();return l.createElement(G.RegisterGraphicalItemId,{id:t.id,type:"area"},e=>{var a,n,i,o,s;return l.createElement(l.Fragment,null,l.createElement(R.SetLegendPayload,{legendPayload:(a=t.dataKey,n=t.name,i=t.stroke,o=t.fill,s=t.legendType,[{inactive:t.hide,dataKey:a,type:s,color:ey(i,o),value:(0,f.getTooltipNameProp)(n,a),payload:t}])}),l.createElement(ev,{dataKey:t.dataKey,data:t.data,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,unit:t.unit,formatter:t.formatter,tooltipType:t.tooltipType,id:e}),l.createElement(H.SetCartesianGraphicalItem,{type:"area",id:e,data:t.data,dataKey:t.dataKey,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,stackId:(0,f.getNormalizedStackId)(t.stackId),hide:t.hide,barSize:void 0,baseValue:t.baseValue,isPanorama:r,connectNulls:t.connectNulls}),l.createElement(eI,ed({},t,{id:e})))})},Q.propsAreEqual);eN.displayName="Area"},86031,38279,41818,e=>{"use strict";var t=e.i(71645),r=e.i(7670),a=e.i(73393),n=e.i(57999),i=e.i(94395);function l(){return(l=Object.assign.bind()).apply(null,arguments)}var o=e=>{var o=e.cx,s=e.cy,u=e.r,c=e.className,d=(0,r.clsx)("recharts-dot",c);return(0,i.isNumber)(o)&&(0,i.isNumber)(s)&&(0,i.isNumber)(u)?t.createElement("circle",l({},(0,n.svgPropertiesNoEvents)(e),(0,a.adaptEventHandlers)(e),{className:d,cx:o,cy:s,r:u})):null};e.s(["Dot",0,o],38279);var s=e.i(97865),u=e.i(81977),c=e.i(43404),d=e.i(29601),f=e.i(18457),p=["points"];function h(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function m(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?h(Object(r),!0).forEach(function(t){var a,n,i;a=e,n=t,i=r[t],(n=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var a=r.call(e,t||"default");if("object"!=typeof a)return a;throw TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(n))in a?Object.defineProperty(a,n,{value:i,enumerable:!0,configurable:!0,writable:!0}):a[n]=i}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):h(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function y(){return(y=Object.assign.bind()).apply(null,arguments)}function v(e){var a=e.option,n=e.dotProps,i=e.className;if((0,t.isValidElement)(a))return(0,t.cloneElement)(a,n);if("function"==typeof a)return a(n);var l=(0,r.clsx)(i,"boolean"!=typeof a?a.className:""),s=null!=n?n:{},u=(s.points,function(e,t){if(null==e)return{};var r,a,n=function(e,t){if(null==e)return{};var r={};for(var a in e)if(({}).hasOwnProperty.call(e,a)){if(-1!==t.indexOf(a))continue;r[a]=e[a]}return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(a=0;a<i.length;a++)r=i[a],-1===t.indexOf(r)&&({}).propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}(s,p));return t.createElement(o,y({},u,{className:l}))}e.s(["Dots",0,function(e){var r=e.points,a=e.dot,n=e.className,i=e.dotClassName,l=e.dataKey,o=e.baseProps,p=e.needClip,h=e.clipPathId,x=e.zIndex,b=void 0===x?f.DefaultZIndexes.scatter:x;if(null==r||!a&&1!==r.length)return null;var g=(0,u.isClipDot)(a),E=(0,c.svgPropertiesAndEventsFromUnknown)(a),A=r.map((e,n)=>{var s,u,c=m(m(m({r:3},o),E),{},{index:n,cx:null!=(s=e.x)?s:void 0,cy:null!=(u=e.y)?u:void 0,dataKey:l,value:e.value,payload:e.payload,points:r});return t.createElement(v,{key:"dot-".concat(n),option:a,dotProps:c,className:i})}),w={};return p&&null!=h&&(w.clipPath="url(#clipPath-".concat(g?"":"dots-").concat(h,")")),t.createElement(d.ZIndexLayer,{zIndex:b},t.createElement(s.Layer,y({className:n},w),A))}],86031);var x=e.i(27241),b=e.i(76735),g=e.i(52734);function E(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function A(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?E(Object(r),!0).forEach(function(t){var a,n,i;a=e,n=t,i=r[t],(n=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var a=r.call(e,t||"default");if("object"!=typeof a)return a;throw TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(n))in a?Object.defineProperty(a,n,{value:i,enumerable:!0,configurable:!0,writable:!0}):a[n]=i}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):E(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var w=e=>{var r,i=e.point,l=e.childIndex,u=e.mainColor,c=e.activeDot,d=e.dataKey,f=e.clipPath;if(!1===c||null==i.x||null==i.y)return null;var p=A(A(A({},{index:l,dataKey:d,cx:i.x,cy:i.y,r:4,fill:null!=u?u:"none",strokeWidth:2,stroke:"#fff",payload:i.payload,value:i.value}),(0,n.svgPropertiesNoEventsFromUnknown)(c)),(0,a.adaptEventHandlers)(c));return r=(0,t.isValidElement)(c)?(0,t.cloneElement)(c,p):"function"==typeof c?c(p):t.createElement(o,p),t.createElement(s.Layer,{className:"recharts-active-dot",clipPath:f},r)};e.s(["ActivePoints",0,function(e){var r=e.points,a=e.mainColor,n=e.activeDot,l=e.itemDataKey,o=e.clipPath,s=e.zIndex,u=void 0===s?f.DefaultZIndexes.activeDot:s,c=(0,x.useAppSelector)(b.selectActiveTooltipIndex),p=(0,g.useActiveTooltipDataPoints)();if(null==r||null==p)return null;var h=r.find(e=>p.includes(e.payload));return(0,i.isNullish)(h)?null:t.createElement(d.ZIndexLayer,{zIndex:u},t.createElement(w,{point:h,childIndex:Number(c),mainColor:a,dataKey:l,activeDot:n,clipPath:o}))}],41818)},81583,e=>{"use strict";var t=e.i(57999);e.s(["getRadiusAndStrokeWidthFromDot",0,function(e){var r=(0,t.svgPropertiesNoEventsFromUnknown)(e);if(null!=r){var a=r.r,n=r.strokeWidth,i=Number(a),l=Number(n);return(Number.isNaN(i)||i<0)&&(i=3),(Number.isNaN(l)||l<0)&&(l=2),{r:i,strokeWidth:l}}return{r:3,strokeWidth:2}}])},55838,(e,t,r)=>{"use strict";var a=e.r(71645),n="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},i=a.useState,l=a.useEffect,o=a.useLayoutEffect,s=a.useDebugValue;function u(e){var t=e.getSnapshot;e=e.value;try{var r=t();return!n(e,r)}catch(e){return!0}}var c="u"<typeof window||void 0===window.document||void 0===window.document.createElement?function(e,t){return t()}:function(e,t){var r=t(),a=i({inst:{value:r,getSnapshot:t}}),n=a[0].inst,c=a[1];return o(function(){n.value=r,n.getSnapshot=t,u(n)&&c({inst:n})},[e,r,t]),l(function(){return u(n)&&c({inst:n}),e(function(){u(n)&&c({inst:n})})},[e]),s(r),r};r.useSyncExternalStore=void 0!==a.useSyncExternalStore?a.useSyncExternalStore:c},2239,(e,t,r)=>{"use strict";e.i(47167),t.exports=e.r(55838)},52822,(e,t,r)=>{"use strict";var a=e.r(71645),n=e.r(2239),i="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},l=n.useSyncExternalStore,o=a.useRef,s=a.useEffect,u=a.useMemo,c=a.useDebugValue;r.useSyncExternalStoreWithSelector=function(e,t,r,a,n){var d=o(null);if(null===d.current){var f={hasValue:!1,value:null};d.current=f}else f=d.current;var p=l(e,(d=u(function(){function e(e){if(!s){if(s=!0,l=e,e=a(e),void 0!==n&&f.hasValue){var t=f.value;if(n(t,e))return o=t}return o=e}if(t=o,i(l,e))return t;var r=a(e);return void 0!==n&&n(t,r)?(l=e,t):(l=e,o=r)}var l,o,s=!1,u=void 0===r?null:r;return[function(){return e(t())},null===u?void 0:function(){return e(u())}]},[t,r,a,n]))[0],d[1]);return s(function(){f.hasValue=!0,f.value=p},[p]),c(p),p}},30224,(e,t,r)=>{"use strict";e.i(47167),t.exports=e.r(52822)}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,63676,e=>{"use strict";var s=e.i(56420);let t={name:"x",size:24,node:[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]};t.node;let l=(0,s.default)(t);e.s(["X",0,l],63676)},12464,e=>{"use strict";var s=e.i(43476),t=e.i(71645),l=e.i(47925),a=e.i(37757),r=e.i(68442),i=e.i(32471),d=e.i(49744),o=e.i(3469);let n=[{tool_id:"tool_read_db",name:"read_db",protocol:"MCP",server:"internal-mcp-server",risk_level:"HIGH",allowed_agents:["orchestrator_v2","data_agent"],blocked_agents:["escalation_agent","external_caller"],calls_24h:47,blocked_calls_24h:3,last_used:"2026-09-19T09:12:00Z",apiris_score:.72,description:"Read from internal database tables via MCP bridge"},{tool_id:"tool_upload_s3",name:"upload_s3",protocol:"HTTP",server:"aws-s3-gateway",risk_level:"CRITICAL",allowed_agents:[],blocked_agents:["all"],calls_24h:0,blocked_calls_24h:2,last_used:null,apiris_score:.95,description:"Upload data to external S3 buckets — egress control required",flags:["EXTERNAL_EGRESS","UNTRUSTED_DESTINATION"]},{tool_id:"tool_send_email",name:"send_email",protocol:"HTTP",server:"email-api-gateway",risk_level:"CRITICAL",allowed_agents:[],blocked_agents:["all"],calls_24h:0,blocked_calls_24h:1,last_used:null,apiris_score:.91,description:"Send email via external API — data exfiltration risk",flags:["EXTERNAL_EGRESS"]},{tool_id:"tool_read_file",name:"read_file",protocol:"LOCAL",server:"local-fs",risk_level:"MEDIUM",allowed_agents:["orchestrator_v2","analyst_agent"],blocked_agents:["data_agent","escalation_agent"],calls_24h:12,blocked_calls_24h:0,last_used:"2026-09-19T08:02:00Z",apiris_score:.38,description:"Read local files within allowed workspace sandbox paths"},{tool_id:"tool_generate_summary",name:"generate_summary",protocol:"LOCAL",server:"internal-llm",risk_level:"LOW",allowed_agents:["orchestrator_v2","analyst_agent","report_agent"],blocked_agents:[],calls_24h:34,blocked_calls_24h:0,last_used:"2026-09-19T11:05:00Z",apiris_score:.12,description:"LLM summarization — read-only processing, no external egress"},{tool_id:"tool_external_mcp",name:"external_mcp_tool",protocol:"MCP",server:"untrusted-external-mcp",risk_level:"CRITICAL",allowed_agents:[],blocked_agents:["all"],calls_24h:0,blocked_calls_24h:1,last_used:null,apiris_score:.98,description:"Untrusted external MCP server — prompt injection source detected",flags:["PROMPT_INJECTION_SOURCE","UNTRUSTED_SERVER"]}],c={CRITICAL:"bg-red-50 text-red-700 border-red-200 font-semibold",HIGH:"bg-amber-50 text-amber-700 border-amber-200 font-medium",MEDIUM:"bg-blue-50 text-blue-700 border-blue-200",LOW:"bg-slate-50 text-slate-700 border-slate-200"},x={MCP:"bg-purple-50 text-purple-700 border-purple-200",HTTP:"bg-blue-50 text-blue-700 border-blue-200",LOCAL:"bg-slate-50 text-slate-700 border-slate-200"};e.s(["default",0,function(){let[e,m]=(0,t.useState)(""),[h,b]=(0,t.useState)("ALL"),[p,u]=(0,t.useState)("ALL"),[g,f]=(0,t.useState)(null),v=n.filter(e=>"CRITICAL"===e.risk_level).length,j=n.reduce((e,s)=>e+s.blocked_calls_24h,0),_=(n.reduce((e,s)=>e+s.apiris_score,0)/n.length).toFixed(2),N=n.filter(s=>{let t=s.name.toLowerCase().includes(e.toLowerCase())||s.server.toLowerCase().includes(e.toLowerCase())||s.description.toLowerCase().includes(e.toLowerCase()),l="ALL"===h||s.protocol===h,a="ALL"===p||s.risk_level===p;return t&&l&&a}),w=[{key:"name",header:"Tool & Server",render:e=>(0,s.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,s.jsx)("div",{className:"w-7 h-7 rounded-md bg-slate-100 flex items-center justify-center text-slate-600 border border-slate-200",children:(0,s.jsx)(l.Wrench,{size:13})}),(0,s.jsxs)("div",{children:[(0,s.jsx)("div",{className:"font-mono text-xs font-semibold text-slate-900",children:e.name}),(0,s.jsx)("div",{className:"text-[11px] text-slate-500 font-mono",children:e.server})]})]})},{key:"protocol",header:"Protocol",width:"100px",render:e=>(0,s.jsx)("span",{className:`text-[11px] font-mono px-2 py-0.5 rounded border ${x[e.protocol]}`,children:e.protocol})},{key:"risk_level",header:"Risk Level",width:"110px",render:e=>(0,s.jsx)("span",{className:`text-[11px] px-2 py-0.5 rounded border ${c[e.risk_level]}`,children:e.risk_level})},{key:"apiris_score",header:"APIRIS Risk",width:"120px",render:e=>(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)("div",{className:"w-12 bg-slate-100 rounded-full h-1.5 overflow-hidden",children:(0,s.jsx)("div",{className:`h-full ${e.apiris_score>.7?"bg-red-500":e.apiris_score>.3?"bg-amber-500":"bg-emerald-500"}`,style:{width:`${100*e.apiris_score}%`}})}),(0,s.jsx)("span",{className:"font-mono text-xs text-slate-700",children:e.apiris_score.toFixed(2)})]})},{key:"calls_24h",header:"Calls (24h)",width:"110px",render:e=>(0,s.jsx)("span",{className:"font-mono text-xs text-slate-700",children:e.calls_24h})},{key:"blocked_calls_24h",header:"Blocked",width:"100px",render:e=>(0,s.jsx)("span",{className:`font-mono text-xs font-semibold ${e.blocked_calls_24h>0?"text-red-700":"text-slate-400"}`,children:e.blocked_calls_24h})}];return(0,s.jsxs)("div",{className:"p-8 space-y-6 max-w-7xl mx-auto",children:[(0,s.jsx)(a.PageHeader,{title:"Tool & MCP Registry",subtitle:"Registered MCP servers, HTTP tools, local utilities, and automated APIRIS risk scoring",badge:"Tool Governance"}),(0,s.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-4 gap-4",children:[(0,s.jsx)(r.MetricCard,{label:"Registered Tools",value:n.length}),(0,s.jsx)(r.MetricCard,{label:"Critical Risk Tools",value:v,status:v>0?"BLOCK":"ALLOW"}),(0,s.jsx)(r.MetricCard,{label:"APIRIS Avg Risk",value:_}),(0,s.jsx)(r.MetricCard,{label:"Blocked Invocations",value:j,status:j>0?"BLOCK":"ALLOW"})]}),(0,s.jsxs)("div",{className:"bg-white border border-slate-200 rounded-lg p-5 shadow-xs space-y-4",children:[(0,s.jsx)(i.FilterBar,{searchQuery:e,onSearchChange:m,searchPlaceholder:"Search tools by name, server, or description...",filters:[{key:"protocol",label:"Protocol",options:[{label:"All Protocols",value:"ALL"},{label:"MCP",value:"MCP"},{label:"HTTP",value:"HTTP"},{label:"LOCAL",value:"LOCAL"}],value:h,onChange:b},{key:"risk",label:"Risk Level",options:[{label:"All Risks",value:"ALL"},{label:"Critical",value:"CRITICAL"},{label:"High",value:"HIGH"},{label:"Medium",value:"MEDIUM"},{label:"Low",value:"LOW"}],value:p,onChange:u}],activeCount:"ALL"!==h||"ALL"!==p||e?1:0,onReset:()=>{m(""),b("ALL"),u("ALL")}}),(0,s.jsx)(d.DataTable,{columns:w,data:N,keyField:"tool_id",onRowClick:e=>f(e),emptyMessage:"No tools matched your filter criteria."})]}),(0,s.jsx)(o.DetailDrawer,{isOpen:!!g,onClose:()=>f(null),title:g?g.name:"",subtitle:g?`Protocol: ${g.protocol} • Server: ${g.server}`:"",badge:g?(0,s.jsx)("span",{className:`text-xs px-2 py-0.5 rounded border ${c[g.risk_level]}`,children:g.risk_level}):null,children:g&&(0,s.jsxs)("div",{className:"space-y-6",children:[(0,s.jsxs)("div",{className:"bg-slate-50 border border-slate-200 rounded-lg p-3.5 space-y-2",children:[(0,s.jsx)("div",{className:"text-[11px] font-semibold uppercase tracking-wider text-slate-500",children:"Functionality & Scope"}),(0,s.jsx)("p",{className:"text-xs text-slate-800 leading-relaxed",children:g.description})]}),g.flags&&g.flags.length>0&&(0,s.jsxs)("div",{children:[(0,s.jsx)("div",{className:"text-[11px] font-semibold uppercase tracking-wider text-red-600 mb-2",children:"Security Flags"}),(0,s.jsx)("div",{className:"flex flex-wrap gap-1.5",children:g.flags.map(e=>(0,s.jsxs)("span",{className:"font-mono text-xs px-2 py-0.5 rounded bg-red-50 text-red-800 border border-red-200 font-semibold",children:["⚠ ",e]},e))})]}),(0,s.jsxs)("div",{children:[(0,s.jsx)("div",{className:"text-[11px] font-semibold uppercase tracking-wider text-slate-500 mb-2",children:"APIRIS Structural Risk Score"}),(0,s.jsxs)("div",{className:"bg-white border border-slate-200 rounded-lg p-3 space-y-2",children:[(0,s.jsxs)("div",{className:"flex justify-between items-center text-xs",children:[(0,s.jsx)("span",{className:"text-slate-600",children:"Calculated Risk Index"}),(0,s.jsxs)("span",{className:"font-mono font-bold text-slate-900",children:[g.apiris_score.toFixed(2)," / 1.00"]})]}),(0,s.jsx)("div",{className:"w-full bg-slate-100 rounded-full h-2 overflow-hidden",children:(0,s.jsx)("div",{className:`h-full ${g.apiris_score>.7?"bg-red-500":g.apiris_score>.3?"bg-amber-500":"bg-emerald-500"}`,style:{width:`${100*g.apiris_score}%`}})})]})]}),(0,s.jsxs)("div",{children:[(0,s.jsx)("div",{className:"text-[11px] font-semibold uppercase tracking-wider text-slate-500 mb-2",children:"Agent Authorization"}),(0,s.jsxs)("div",{className:"space-y-3",children:[(0,s.jsxs)("div",{className:"bg-white border border-slate-200 rounded-lg p-3",children:[(0,s.jsx)("div",{className:"text-[10px] text-slate-500 uppercase font-medium mb-1.5",children:"Permitted Agents"}),g.allowed_agents.length>0?(0,s.jsx)("div",{className:"flex flex-wrap gap-1.5",children:g.allowed_agents.map(e=>(0,s.jsx)("span",{className:"font-mono text-xs px-2 py-0.5 rounded bg-blue-50 text-blue-800 border border-blue-200 font-medium",children:e},e))}):(0,s.jsx)("span",{className:"text-xs text-slate-400 italic",children:"None (All callers blocked)"})]}),(0,s.jsxs)("div",{className:"bg-white border border-slate-200 rounded-lg p-3",children:[(0,s.jsx)("div",{className:"text-[10px] text-slate-500 uppercase font-medium mb-1.5",children:"Explicitly Blocked"}),(0,s.jsx)("div",{className:"flex flex-wrap gap-1.5",children:g.blocked_agents.map(e=>(0,s.jsx)("span",{className:"font-mono text-xs px-2 py-0.5 rounded bg-red-50 text-red-800 border border-red-200",children:e},e))})]})]})]})]})})]})}])},49744,e=>{"use strict";var s=e.i(43476),t=e.i(71645),l=e.i(56420);let a={name:"chevron-left",size:24,node:[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]};a.node;let r=(0,l.default)(a);var i=e.i(67927);let d={name:"inbox",size:24,node:[["polyline",{points:"22 12 16 12 14 15 10 15 8 12 2 12",key:"o97t9d"}],["path",{d:"M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z",key:"oot6mr"}]]};d.node;let o=(0,l.default)(d);e.s(["DataTable",0,function({columns:e,data:l,keyExtractor:a,keyField:d,onRowClick:n,selectedKey:c,emptyMessage:x="No records found",emptySubtext:m="Try adjusting your filters or search query.",pageSize:h=15,isLoading:b=!1}){let[p,u]=t.default.useState(1),g=Math.max(1,Math.ceil(l.length/h)),f=l.slice((p-1)*h,p*h);return t.default.useEffect(()=>{u(1)},[l.length]),(0,s.jsxs)("div",{className:"bg-white border border-slate-200 rounded-lg shadow-sm overflow-hidden flex flex-col",children:[(0,s.jsx)("div",{className:"overflow-x-auto",children:(0,s.jsxs)("table",{className:"w-full text-left border-collapse text-xs",children:[(0,s.jsx)("thead",{children:(0,s.jsx)("tr",{className:"bg-slate-50 border-b border-slate-200",children:e.map(e=>(0,s.jsx)("th",{style:{width:e.width},className:`px-3.5 py-2.5 font-semibold text-slate-600 uppercase tracking-wider text-[10px] ${"right"===e.align?"text-right":"center"===e.align?"text-center":"text-left"}`,children:e.header},e.key))})}),(0,s.jsx)("tbody",{className:"divide-y divide-slate-100",children:b?(0,s.jsx)("tr",{children:(0,s.jsxs)("td",{colSpan:e.length,className:"py-12 text-center text-slate-400",children:[(0,s.jsx)("div",{className:"inline-block animate-spin rounded-full h-5 w-5 border-2 border-slate-300 border-t-sky-600 mb-2"}),(0,s.jsx)("div",{className:"text-xs",children:"Loading telemetry records…"})]})}):0===f.length?(0,s.jsx)("tr",{children:(0,s.jsxs)("td",{colSpan:e.length,className:"py-12 text-center",children:[(0,s.jsx)(o,{size:28,className:"mx-auto text-slate-300 mb-2"}),(0,s.jsx)("div",{className:"text-sm font-semibold text-slate-700",children:x}),(0,s.jsx)("div",{className:"text-xs text-slate-400 mt-0.5",children:m})]})}):f.map((t,l)=>{let r=a?a(t,l):d&&t[d]?String(t[d]):String(t.id||t.key||l),i=c===r;return(0,s.jsx)("tr",{onClick:()=>n&&n(t),className:`transition-colors ${i?"bg-sky-50/80 font-medium":"hover:bg-slate-50/80"} ${n?"cursor-pointer":""}`,children:e.map(e=>{let a=t[e.key],r=e.render?e.render(t,l):a;return(0,s.jsx)("td",{className:`px-3.5 py-2.5 text-slate-700 ${e.mono?"font-mono text-[11px]":""} ${"right"===e.align?"text-right":"center"===e.align?"text-center":"text-left"}`,children:r},e.key)})},r)})})]})}),l.length>h&&(0,s.jsxs)("div",{className:"px-4 py-2.5 border-t border-slate-200 bg-slate-50 flex items-center justify-between text-xs text-slate-500",children:[(0,s.jsxs)("div",{children:["Showing ",(0,s.jsx)("span",{className:"font-medium text-slate-800",children:(p-1)*h+1})," to"," ",(0,s.jsx)("span",{className:"font-medium text-slate-800",children:Math.min(p*h,l.length)})," ","of ",(0,s.jsx)("span",{className:"font-medium text-slate-800",children:l.length})," records"]}),(0,s.jsxs)("div",{className:"flex items-center gap-1",children:[(0,s.jsx)("button",{onClick:()=>u(e=>Math.max(1,e-1)),disabled:1===p,className:"p-1 rounded border border-slate-200 bg-white text-slate-600 disabled:opacity-40 disabled:cursor-not-allowed hover:bg-slate-50 transition-colors",children:(0,s.jsx)(r,{size:14})}),(0,s.jsxs)("span",{className:"px-2 font-mono text-[11px]",children:[p," / ",g]}),(0,s.jsx)("button",{onClick:()=>u(e=>Math.min(g,e+1)),disabled:p===g,className:"p-1 rounded border border-slate-200 bg-white text-slate-600 disabled:opacity-40 disabled:cursor-not-allowed hover:bg-slate-50 transition-colors",children:(0,s.jsx)(i.ChevronRight,{size:14})})]})]})]})}],49744)},3469,e=>{"use strict";var s=e.i(43476),t=e.i(63676);e.s(["DetailDrawer",0,function({isOpen:e,onClose:l,title:a,subtitle:r,badge:i,children:d,footer:o,width:n="w-full md:w-[480px]"}){return e?(0,s.jsxs)("div",{className:"fixed inset-y-0 right-0 z-50 flex",children:[(0,s.jsx)("div",{className:"fixed inset-0 bg-slate-900/20 backdrop-blur-[1px] transition-opacity",onClick:l}),(0,s.jsxs)("div",{className:`relative ${n} bg-white shadow-2xl border-l border-slate-200 flex flex-col h-full z-10 transition-transform`,children:[(0,s.jsxs)("div",{className:"px-5 py-4 border-b border-slate-200 flex items-start justify-between gap-3 bg-slate-50/50",children:[(0,s.jsxs)("div",{children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)("h2",{className:"text-base font-semibold text-slate-900 truncate",children:a}),i]}),r&&(0,s.jsx)("p",{className:"text-xs text-slate-500 font-mono mt-0.5 truncate",children:r})]}),(0,s.jsx)("button",{onClick:l,className:"p-1 rounded-md text-slate-400 hover:text-slate-700 hover:bg-slate-100 transition-colors",children:(0,s.jsx)(t.X,{size:18})})]}),(0,s.jsx)("div",{className:"flex-1 overflow-y-auto p-5 space-y-5 text-sm text-slate-700",children:d}),o&&(0,s.jsx)("div",{className:"px-5 py-3 border-t border-slate-200 bg-slate-50 flex items-center justify-end gap-2",children:o})]})]}):null}])},32471,e=>{"use strict";var s=e.i(43476),t=e.i(66595),l=e.i(95925);e.s(["FilterBar",0,function({searchQuery:e,onSearchChange:a,searchPlaceholder:r="Search records…",dropdowns:i,filters:d,onReset:o,activeCount:n,totalCount:c,actions:x}){let m=d||i;return(0,s.jsxs)("div",{className:"bg-white border border-slate-200 rounded-lg p-3 mb-4 shadow-sm flex flex-col md:flex-row md:items-center justify-between gap-3",children:[(0,s.jsxs)("div",{className:"flex flex-wrap items-center gap-2.5 flex-1",children:[a&&(0,s.jsxs)("div",{className:"relative flex-1 min-w-[200px] max-w-sm",children:[(0,s.jsx)(t.Search,{size:14,className:"absolute left-2.5 top-1/2 -translate-y-1/2 text-slate-400"}),(0,s.jsx)("input",{type:"text",value:e??"",onChange:e=>a(e.target.value),placeholder:r,className:"w-full pl-8 pr-3 py-1.5 text-xs bg-slate-50 border border-slate-200 rounded-md text-slate-800 placeholder:text-slate-400 focus:bg-white focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500 transition-all"})]}),m&&m.map(e=>(0,s.jsx)("div",{className:"flex items-center gap-1.5",children:(0,s.jsx)("select",{value:e.value,onChange:s=>e.onChange(s.target.value),className:"text-xs bg-slate-50 border border-slate-200 rounded-md px-2.5 py-1.5 text-slate-700 font-medium focus:bg-white focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500 transition-all cursor-pointer",children:e.options.map(e=>(0,s.jsx)("option",{value:e.value,children:e.label},e.value))})},e.key||e.name||e.label)),o&&(0,s.jsxs)("button",{onClick:o,className:"flex items-center gap-1 text-xs text-slate-500 hover:text-slate-800 px-2 py-1.5 rounded hover:bg-slate-100 transition-colors",title:"Reset Filters",children:[(0,s.jsx)(l.RotateCcw,{size:12}),(0,s.jsx)("span",{children:"Reset"})]})]}),(0,s.jsxs)("div",{className:"flex items-center gap-3 self-end md:self-auto text-xs text-slate-500",children:[void 0!==c&&(0,s.jsx)("span",{className:"font-mono text-slate-600",children:void 0!==n&&n!==c?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("strong",{className:"text-slate-900",children:n})," of ",c]}):(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("strong",{className:"text-slate-900",children:c})," total"]})}),x]})]})}])},68442,e=>{"use strict";var s=e.i(43476);e.s(["MetricCard",0,function({label:e,value:t,subtext:l,trend:a,status:r="neutral",icon:i,badge:d}){return(0,s.jsxs)("div",{className:`bg-white rounded-lg border border-slate-200 p-4 shadow-sm ${{healthy:"border-l-4 border-l-emerald-500",warning:"border-l-4 border-l-amber-500",critical:"border-l-4 border-l-red-500",neutral:"border-l-4 border-l-slate-300"}["ALLOW"===r||"MONITOR"===r||"healthy"===r?"healthy":"HITL"===r||"warning"===r?"warning":"BLOCK"===r||"critical"===r?"critical":"neutral"]} flex flex-col justify-between`,children:[(0,s.jsxs)("div",{className:"flex items-center justify-between gap-2 mb-2",children:[(0,s.jsx)("span",{className:"text-[11px] font-medium tracking-wider uppercase text-slate-500",children:e}),i&&(0,s.jsx)(i,{size:16,className:"text-slate-400"}),d&&(0,s.jsx)("span",{className:"text-[10px] font-semibold px-1.5 py-0.5 rounded bg-slate-100 text-slate-700",children:d})]}),(0,s.jsxs)("div",{className:"flex items-baseline justify-between gap-2 mt-1",children:[(0,s.jsx)("div",{className:"text-2xl font-bold tracking-tight text-slate-900 font-mono",children:t}),a&&(0,s.jsx)("span",{className:`text-xs font-medium ${a.isNeutral?"text-slate-500":a.isPositive?"text-emerald-700":"text-red-700"}`,children:a.value})]}),l&&(0,s.jsx)("div",{className:"mt-2 text-xs text-slate-500 truncate",children:l})]})}])},37757,e=>{"use strict";var s=e.i(43476),t=e.i(71645),l=e.i(22016),a=e.i(67927);e.s(["PageHeader",0,function({title:e,description:r,subtitle:i,breadcrumbs:d,actions:o,badge:n}){let c=r||i;return(0,s.jsxs)("div",{className:"mb-6 pb-4 border-b border-slate-200",children:[d&&d.length>0&&(0,s.jsx)("nav",{className:"flex items-center gap-1.5 text-xs text-slate-500 mb-2",children:d.map((e,r)=>{let i=r===d.length-1;return(0,s.jsxs)(t.default.Fragment,{children:[r>0&&(0,s.jsx)(a.ChevronRight,{size:12,className:"text-slate-400"}),e.href&&!i?(0,s.jsx)(l.default,{href:e.href,className:"hover:text-slate-800 transition-colors",children:e.label}):(0,s.jsx)("span",{className:i?"text-slate-900 font-medium":"",children:e.label})]},r)})}),(0,s.jsxs)("div",{className:"flex flex-col sm:flex-row sm:items-center sm:justify-between gap-3",children:[(0,s.jsxs)("div",{children:[(0,s.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,s.jsx)("h1",{className:"text-xl font-semibold text-slate-900 tracking-tight",children:e}),n&&(0,s.jsx)("div",{children:n})]}),c&&(0,s.jsx)("p",{className:"mt-1 text-xs text-slate-500 max-w-3xl leading-relaxed",children:c})]}),o&&(0,s.jsx)("div",{className:"flex items-center gap-2 flex-shrink-0",children:o})]})]})}])}]);
|