@skill-map/cli 0.49.0 → 0.50.0

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.
@@ -30,5 +30,5 @@
30
30
  <style>:root{--ff-white:#ffffff;--ff-black:#000000;--ff-gray-0:#ffffff;--ff-gray-25:#fcfcfc;--ff-gray-50:#f8f8f7;--ff-gray-75:#f2f2f0;--ff-gray-100:#e9e9e6;--ff-gray-150:#dcdcd7;--ff-gray-200:#c9c9c1;--ff-gray-300:#afafa5;--ff-gray-400:#8d8d81;--ff-gray-500:#69695f;--ff-gray-600:#505048;--ff-gray-700:#3c3c36;--ff-gray-800:#272722;--ff-gray-900:#1b1b18;--ff-gray-950:#141412;--ff-gray-1000:#0f0f0d;--ff-alpha-black-04:rgba(15, 15, 13, .04);--ff-alpha-black-06:rgba(15, 15, 13, .06);--ff-alpha-black-08:rgba(15, 15, 13, .08);--ff-alpha-black-10:rgba(15, 15, 13, .1);--ff-alpha-black-12:rgba(15, 15, 13, .12);--ff-alpha-black-15:rgba(15, 15, 13, .15);--ff-alpha-black-20:rgba(15, 15, 13, .2);--ff-alpha-black-30:rgba(15, 15, 13, .3);--ff-alpha-black-40:rgba(15, 15, 13, .4);--ff-alpha-black-60:rgba(15, 15, 13, .6);--ff-alpha-white-04:rgba(255, 255, 255, .04);--ff-alpha-white-06:rgba(255, 255, 255, .06);--ff-alpha-white-08:rgba(255, 255, 255, .08);--ff-alpha-white-10:rgba(255, 255, 255, .1);--ff-alpha-white-12:rgba(255, 255, 255, .12);--ff-alpha-white-15:rgba(255, 255, 255, .15);--ff-alpha-white-20:rgba(255, 255, 255, .2);--ff-alpha-white-30:rgba(255, 255, 255, .3);--ff-alpha-white-40:rgba(255, 255, 255, .4);--ff-alpha-white-60:rgba(255, 255, 255, .6);--ff-blue-100:#e8f2ff;--ff-blue-200:#bad8ff;--ff-blue-300:#7db7ff;--ff-blue-400:#4176ff;--ff-blue-500:#2759db;--ff-blue-600:#1b3f9e;--ff-green-100:#e7f7ef;--ff-green-300:#71c795;--ff-green-400:#2b9b5f;--ff-green-500:#1e7748;--ff-yellow-100:#fff5de;--ff-yellow-300:#e1b354;--ff-yellow-400:#bb8121;--ff-yellow-500:#916112;--ff-red-100:#feeceb;--ff-red-300:#e48d85;--ff-red-400:#c55245;--ff-red-500:#9e3a2f;--ff-radius-4:4px;--ff-radius-6:6px;--ff-radius-pill:999px;--ff-font-family-sans:"Inter", ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--ff-font-family-mono:ui-monospace, "SFMono-Regular", "Menlo", "Monaco", "Consolas", "Liberation Mono", "Courier New", monospace;--ff-font-size-xs:12px;--ff-font-size-sm:14px;--ff-font-size-md:16px;--ff-font-size-lg:18px;--ff-shadow-1:0 1px 2px rgba(15, 15, 13, .05), 0 8px 20px rgba(15, 15, 13, .04);--ff-shadow-2:0 10px 28px rgba(15, 15, 13, .08), 0 3px 10px rgba(15, 15, 13, .05);--ff-shadow-3:0 18px 48px rgba(15, 15, 13, .12), 0 6px 16px rgba(15, 15, 13, .08)}:root{--ff-color-surface-page:var(--ff-gray-25);--ff-color-surface-canvas:var(--ff-gray-25);--ff-color-surface-card:var(--ff-white);--ff-color-surface-group:rgba(65, 118, 255, .14);--ff-color-surface-group-active:rgba(65, 118, 255, .2);--ff-color-surface-muted:var(--ff-gray-50);--ff-color-surface-soft:var(--ff-gray-75);--ff-color-surface-accent-soft:rgba(65, 118, 255, .1);--ff-color-border-default:var(--ff-alpha-black-12);--ff-color-border-subtle:var(--ff-alpha-black-08);--ff-color-border-strong:var(--ff-alpha-black-20);--ff-color-border-accent:var(--ff-blue-500);--ff-color-text-primary:var(--ff-gray-800);--ff-color-text-secondary:var(--ff-gray-500);--ff-color-text-tertiary:var(--ff-gray-400);--ff-color-text-inverse:var(--ff-white);--ff-color-accent:var(--ff-blue-500);--ff-color-accent-strong:var(--ff-blue-600);--ff-color-success:var(--ff-green-400);--ff-color-warning:var(--ff-yellow-400);--ff-color-danger:var(--ff-red-400);--ff-color-disabled-surface:var(--ff-gray-100);--ff-color-disabled-border:var(--ff-alpha-black-10);--ff-color-disabled-text:var(--ff-gray-300);--ff-color-selection-fill:rgba(65, 118, 255, .12);--ff-color-selection-stroke:rgba(65, 118, 255, .28);--ff-color-grid:var(--ff-alpha-black-08);--ff-color-grid-strong:var(--ff-alpha-black-15);--ff-color-connector-connected:var(--ff-blue-500);--ff-color-connection:var(--ff-gray-600);--ff-color-connection-muted:var(--ff-gray-300);--ff-color-connection-hover:var(--ff-alpha-black-12);--ff-color-grouping-drop-target-border:var(--ff-gray-800);--ff-color-grouping-drop-target-border-active:var(--ff-gray-800);--ff-color-waypoint-fill:var(--ff-white);--ff-color-waypoint-stroke:var(--ff-blue-500);--ff-color-waypoint-candidate-fill:var(--ff-white);--ff-color-waypoint-candidate-stroke:var(--ff-green-400);--ff-color-minimap-surface:var(--ff-white);--ff-color-minimap-node:var(--ff-gray-700);--ff-color-minimap-view:rgba(65, 118, 255, .14);--ff-color-magnetic-line:var(--ff-blue-500);--ff-color-magnetic-rect-fill:rgba(65, 118, 255, .08);--ff-color-magnetic-rect-border:rgba(65, 118, 255, .24);--ff-radius-node:var(--ff-radius-4);--ff-radius-group:var(--ff-radius-4);--ff-radius-control:var(--ff-radius-4);--ff-radius-socket-square:var(--ff-radius-6);--ff-radius-pill:var(--ff-radius-pill);--ff-font-sans:var(--ff-font-family-sans);--ff-font-mono:var(--ff-font-family-mono);--ff-font-size-body:var(--ff-font-size-sm);--ff-font-size-label:var(--ff-font-size-xs);--ff-shadow-surface:var(--ff-shadow-1);--ff-shadow-floating:var(--ff-shadow-2)}:root{--ff-flow-background-color:var(--ff-color-surface-page);--ff-flow-text-color:var(--ff-color-text-primary);--ff-flow-font-family:var(--ff-font-sans);--ff-flow-font-size:var(--ff-font-size-body);--ff-canvas-background-color:var(--ff-color-surface-canvas);--ff-node-background-color:var(--ff-color-surface-card);--ff-node-background-color-inverse:var(--ff-color-text-primary);--ff-node-border-color:var(--ff-color-border-default);--ff-node-border-color-selected:var(--ff-color-border-accent);--ff-node-color:var(--ff-color-text-primary);--ff-node-border-radius:var(--ff-radius-node);--ff-node-shadow:var(--ff-shadow-surface);--ff-node-shadow-selected:var(--ff-shadow-floating);--ff-node-width:120px;--ff-node-min-height:56px;--ff-node-padding:24px;--ff-group-background-color:var(--ff-color-surface-group);--ff-group-background-color-active:var(--ff-color-surface-group-active);--ff-group-border-color:var(--ff-color-border-subtle);--ff-group-border-color-selected:var(--ff-color-border-accent);--ff-group-border-color-active:var(--ff-color-border-accent);--ff-group-color:var(--ff-color-text-secondary);--ff-group-border-radius:var(--ff-radius-group);--ff-group-min-width:180px;--ff-group-min-height:120px;--ff-group-padding:24px;--ff-grouping-drop-target-border-color:var(--ff-color-grouping-drop-target-border);--ff-grouping-drop-target-border-style:dashed;--ff-grouping-drop-target-border-width:1px;--ff-grouping-drop-target-border-color-active:var(--ff-color-grouping-drop-target-border-active);--ff-grouping-drop-target-border-style-active:dashed;--ff-grouping-drop-target-border-width-active:2px;--ff-handle-background-color:var(--ff-color-surface-card);--ff-handle-border-color:var(--ff-color-border-strong);--ff-handle-color:var(--ff-color-text-secondary);--ff-handle-size:12px;--ff-handle-radius:var(--ff-radius-control);--ff-rotate-handle-size:16px;--ff-connector-background-color:var(--ff-color-surface-card);--ff-connector-border-color:var(--ff-color-border-default);--ff-connector-connected-color:var(--ff-color-connector-connected);--ff-connector-accent-color:var(--ff-color-accent);--ff-connector-disabled-color:var(--ff-color-disabled-surface);--ff-connector-disabled-border-color:var(--ff-color-disabled-border);--ff-connector-size:16px;--ff-connector-node-ring-color:var(--ff-canvas-background-color);--ff-outlet-background-color:var(--ff-color-surface-muted);--ff-outlet-border-color:var(--ff-color-border-default);--ff-outlet-color:var(--ff-color-accent);--ff-outlet-disabled-background-color:var(--ff-color-disabled-surface);--ff-outlet-disabled-border-color:var(--ff-color-disabled-border);--ff-outlet-disabled-color:var(--ff-color-disabled-text);--ff-outlet-border-radius:var(--ff-radius-pill);--ff-outlet-padding-y:6px;--ff-outlet-padding-x:12px;--ff-connection-color:var(--ff-color-connection);--ff-snap-connection-color:var(--ff-color-connection-muted);--ff-connection-hover-color:var(--ff-color-connection-hover);--ff-connection-selected-color:var(--ff-color-accent);--ff-connection-label-color:var(--ff-color-text-secondary);--ff-connection-content-color:var(--ff-node-color);--ff-connection-content-background-color:var(--ff-node-background-color);--ff-connection-content-border-color:var(--ff-node-border-color);--ff-connection-content-border-color-selected:var(--ff-connection-selected-color);--ff-connection-content-border-radius:var(--ff-node-border-radius);--ff-connection-content-font-size:13px;--ff-connection-content-padding-y:2px;--ff-connection-content-padding-x:8px;--ff-connection-width:2px;--ff-connection-hit-width:14px;--ff-connection-drag-handle-fill:var(--ff-color-surface-card);--ff-connection-drag-handle-stroke:var(--ff-color-accent);--ff-marker-color:var(--ff-connection-color);--ff-waypoint-fill:var(--ff-color-waypoint-fill);--ff-waypoint-stroke:var(--ff-color-waypoint-stroke);--ff-waypoint-candidate-fill:var(--ff-color-waypoint-candidate-fill);--ff-waypoint-candidate-stroke:var(--ff-color-waypoint-candidate-stroke);--ff-background-line-color:var(--ff-color-grid);--ff-background-dot-color:var(--ff-color-grid-strong);--ff-selection-area-color:var(--ff-color-selection-fill);--ff-selection-area-border-color:var(--ff-color-selection-stroke);--ff-minimap-background-color:var(--ff-color-minimap-surface);--ff-minimap-border-color:var(--ff-color-border-default);--ff-minimap-node-color:var(--ff-color-minimap-node);--ff-minimap-node-selected-color:var(--ff-color-accent);--ff-minimap-view-color:var(--ff-color-minimap-view);--ff-minimap-view-border-color:var(--ff-color-selection-stroke);--ff-minimap-border-radius:var(--ff-radius-node);--ff-minimap-shadow:var(--ff-shadow-floating);--ff-magnetic-line-color:var(--ff-color-magnetic-line);--ff-magnetic-rect-fill:var(--ff-color-magnetic-rect-fill);--ff-magnetic-rect-border-color:var(--ff-color-magnetic-rect-border);--ff-external-item-background-color:var(--ff-color-surface-card);--ff-external-item-border-color:var(--ff-color-border-default);--ff-external-item-color:var(--ff-color-text-primary);--ff-external-item-disabled-color:var(--ff-color-disabled-text);--ff-external-item-disabled-background-color:var(--ff-color-disabled-surface);--ff-external-item-border-radius:var(--ff-radius-node);--ff-external-item-shadow:var(--ff-shadow-surface);--ff-external-item-preview-shadow:var(--ff-shadow-floating);--ff-external-item-placeholder-background-color:var(--ff-color-surface-soft);--ff-external-item-placeholder-border-color:var(--ff-color-border-subtle)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}:root{--fa-family-brands:"Font Awesome 7 Brands";--fa-font-brands:normal 400 1em/1 var(--fa-family-brands)}:root{--fa-font-regular:normal 400 1em/1 var(--fa-family-classic)}:root{--fa-family-classic:"Font Awesome 7 Free";--fa-font-solid:normal 900 1em/1 var(--fa-family-classic);--fa-style-family-classic:var(--fa-family-classic)}:root{--sm-font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--sm-font-display-brand:"Geist", system-ui, sans-serif;--sm-radius-sm:3px;--sm-radius-md:4px;--sm-radius-lg:.5rem;--sm-radius-pill:999px;--sm-violet-50:#F5F3FF;--sm-violet-100:#EDE9FE;--sm-violet-200:#DDD6FE;--sm-violet-300:#C4B5FD;--sm-violet-400:#A78BFA;--sm-violet-500:#8B5CF6;--sm-violet-600:#7C3AED;--sm-violet-700:#6D28D9;--sm-violet-800:#4C1D95;--sm-violet-900:#2E1065}html,body{margin:0;padding:0;height:100dvh;overflow:hidden;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--sm-bg-page);color:var(--p-text-color)}*,*:before,*:after{box-sizing:border-box}*{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--p-text-color) 30%,transparent) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background-color:color-mix(in srgb,var(--p-text-color) 25%,transparent);border-radius:var(--sm-radius-pill);border:2px solid transparent;background-clip:padding-box}*::-webkit-scrollbar-thumb:hover{background-color:color-mix(in srgb,var(--p-text-color) 45%,transparent)}:root{--sm-bg-page:#f8fafc;--sm-bg-content:#ffffff;--sm-bg-hover:#f1f5f9;--sm-border:#e2e8f0;--sm-nav-active-bg:#eff6ff;--sm-edge-invokes:#b8843a;--sm-edge-invokes-active:#f59e0b;--sm-edge-references:#7daa90;--sm-edge-references-active:#10b981;--sm-edge-mentions:#6fa2c0;--sm-edge-mentions-active:#0ea5e9;--sm-edge-supersedes:#9ca3af;--sm-edge-supersedes-active:#4b5563;--sm-edge-neutral:#6b7280;--sm-link-in-bg:#e0e7ff;--sm-link-in-fg:#3730a3;--sm-link-out-bg:#fef3c7;--sm-link-out-fg:#92400e;--sm-severity-info:#1e3a8a;--sm-severity-success:#065f46;--sm-severity-warn:#ca8a04;--sm-severity-error:#991b1b;--sm-severity-info-bg:rgba(219, 234, 254, .35);--sm-severity-success-bg:rgba(209, 250, 229, .35);--sm-severity-warn-bg:rgba(254, 243, 199, .35);--sm-severity-error-bg:rgba(254, 226, 226, .35);--sm-stat-tokens-bg:rgba(59, 130, 246, .14);--sm-stat-bytes-bg:rgba(245, 158, 11, .16);--sm-accent-fg:#ffffff;--sm-shadow-topbar:0 1px 2px rgba(0, 0, 0, .03);--sm-shadow-eventlog:0 -4px 16px rgba(0, 0, 0, .08);--sm-shadow-floating:0 4px 14px rgba(0, 0, 0, .08);--sm-shadow-card:0 1px 2px rgba(0, 0, 0, .05);--sm-shadow-card-hover:0 3px 12px rgba(0, 0, 0, .12)}</style><link rel="stylesheet" href="styles-HWRPHKTJ.css" media="print" onload="this.media='all'"><noscript><link rel="stylesheet" href="styles-HWRPHKTJ.css"></noscript></head>
31
31
  <body>
32
32
  <sm-root></sm-root>
33
- <link rel="modulepreload" href="chunk-QKL5B4RS.js"><link rel="modulepreload" href="chunk-MO37AU3M.js"><link rel="modulepreload" href="chunk-7EVKMO5A.js"><link rel="modulepreload" href="chunk-4SG4352Z.js"><link rel="modulepreload" href="chunk-OUNBYGMY.js"><link rel="modulepreload" href="chunk-FDJ5FDGM.js"><link rel="modulepreload" href="chunk-NV5DRQPL.js"><link rel="modulepreload" href="chunk-WCABR6TI.js"><script src="main-EVGVBPDA.js" type="module"></script></body>
33
+ <link rel="modulepreload" href="chunk-OYCCFH2S.js"><link rel="modulepreload" href="chunk-FQQYWQV6.js"><link rel="modulepreload" href="chunk-DOWLJNMD.js"><link rel="modulepreload" href="chunk-4SG4352Z.js"><link rel="modulepreload" href="chunk-AEA5GIA7.js"><link rel="modulepreload" href="chunk-WMGW2UAL.js"><link rel="modulepreload" href="chunk-VJ57LHDR.js"><link rel="modulepreload" href="chunk-WCABR6TI.js"><script src="main-YSSSF5GW.js" type="module"></script></body>
34
34
  </html>
@@ -1,4 +1,4 @@
1
- import{a as J,b as w,c as pe,d as ot,e as st}from"./chunk-QKL5B4RS.js";import{A as qe,B as ee,C as rt,i as Xe,k as He,l as We,m as Ye,o as V,y as Ze,z as ce}from"./chunk-MO37AU3M.js";import{$ as fe,C as Ke,K as se,L as ae,R as le,S as de,T as Qe,V as q,W as h,X as j,Y as Ge,Z as U,_ as B,aa as et,ba as tt,da as nt,fa as it,n as Be,o as Ve,u as Je}from"./chunk-7EVKMO5A.js";import"./chunk-4SG4352Z.js";import{b as $e,f as Ne,g as ze,h as oe,i as Fe,k as je,l as Ue}from"./chunk-OUNBYGMY.js";import{m as Oe,n as Ee,o as Ie,p as Y,q as Ae,r as De,s as Le}from"./chunk-FDJ5FDGM.js";import{$ as Ce,Cc as Re,Fb as E,Ga as ne,Hb as M,Ib as ie,Ja as a,Jb as v,K as A,O as H,P as s,Ub as Me,V as R,Vb as he,W as O,Xb as Te,Ya as D,Yb as u,Zb as y,_b as P,cb as Pe,da as ke,f as ye,fa as xe,fb as G,ga as z,ia as te,ib as we,jb as Se,kb as b,m as X,nb as C,ob as k,tb as _,tc as c,ub as l,vb as p,wb as x,wc as re,xb as F,yb as W,zb as Z}from"./chunk-NV5DRQPL.js";import"./chunk-WCABR6TI.js";var ve="skill-map",L={brand:ve,alpha:"ALPHA - do not use in production",devChip:"dev",devChipTooltip:"BFF launched from a local checkout (not the npm install).",devChipA11y:"Development build: BFF is running from a local checkout.",lensChipTooltip:t=>`Active lens: ${t}. The map reflects how ${t} interprets your files.`,lensChipA11y:t=>`Active provider lens: ${t}.`,nav:{searchLabel:"Search nodes by name or tag",searchTooltip:"Search",searchPlaceholder:"Search by name or tag...",searchAriaLabel:"Search nodes by name or tag",searchClearLabel:"Clear search"},actions:{},badge:{nodes:"nodes",mapInfo:(t,n)=>{let e=`Run scan
1
+ import{a as B,b as w,c as pe,d as rt,e as ot}from"./chunk-OYCCFH2S.js";import{A as ee,B as it,i as Xe,k as He,l as We,w as U,x as Ge,y as ce,z as Ze}from"./chunk-FQQYWQV6.js";import{$ as he,C as Ke,K as se,L as ae,R as le,S as de,T as Qe,V as q,W as h,X as z,Y as Ye,Z as F,_ as j,aa as qe,ba as et,da as tt,fa as nt,n as Be,o as Ve,u as Je}from"./chunk-DOWLJNMD.js";import"./chunk-4SG4352Z.js";import{b as $e,f as Ne,g as ze,h as oe,i as Fe,j as je,k as Ue}from"./chunk-AEA5GIA7.js";import{l as Oe,m as Ee,n as Ie,o as Q,p as Ae,q as De,r as Le}from"./chunk-WMGW2UAL.js";import{$ as Ce,Db as O,Fa as ne,Fb as S,Gb as ie,Ha as a,Hb as f,K as E,O as H,P as s,Sb as Me,Tb as ue,V as T,Vb as Te,W as R,Wa as I,Wb as g,Xb as _,Yb as P,ab as Pe,da as ke,db as G,f as ye,fa as xe,ga as $,gb as we,hb as Se,ia as te,ib as v,lb as C,m as X,mb as k,rb as b,rc as c,sb as d,sc as re,tb as p,ub as x,vb as N,wb as W,xb as Z,yc as Re}from"./chunk-VJ57LHDR.js";import"./chunk-WCABR6TI.js";var fe="skill-map",A={brand:fe,alpha:"ALPHA - do not use in production",devChip:"dev",devChipTooltip:"BFF launched from a local checkout (not the npm install).",devChipA11y:"Development build: BFF is running from a local checkout.",lensChipTooltip:t=>`Active lens: ${t}. The map reflects how ${t} interprets your files.`,lensChipA11y:t=>`Active provider lens: ${t}.`,nav:{searchLabel:"Search nodes by name or tag",searchTooltip:"Search",searchPlaceholder:"Search by name or tag...",searchAriaLabel:"Search nodes by name or tag",searchClearLabel:"Clear search"},actions:{},badge:{nodes:"nodes",mapInfo:(t,n)=>{let e=`Run scan
2
2
  ${t.toLocaleString()} nodes \xB7 ${n.raw.toLocaleString()} links`;if(n.raw===n.drawn)return e;let i=[],r=n.brokenSource+n.brokenTarget;return r>0&&i.push(`${r} broken`),n.selfLoops>0&&i.push(`${n.selfLoops} self-loop${n.selfLoops===1?"":"s"}`),n.duplicates>0&&i.push(`${n.duplicates} duplicate${n.duplicates===1?"":"s"}`),`${e}
3
- ${n.drawn.toLocaleString()} drawn (${i.join(", ")})`},mapInfoA11y:(t,n)=>`Map contains ${t} nodes and ${n.raw} links; ${n.drawn} drawn on the canvas`},a11y:{viewSwitcher:"View switcher"},viewportWarning:{title:"Looks like you're on a small screen",subtitle:"skill-map is built for desktop",body:"The map and inspector need room to breathe. Pop this open on a screen at least 768px wide. See you there."},documentTitle:(t,n)=>{let e=t?`${t} - ${ve}`:ve;return n?`${e} v${n}`:e}};var at=[{path:"",pathMatch:"full",loadComponent:()=>import("./chunk-YRBZKMG6.js").then(t=>t.WorkspaceView),title:L.brand},{path:"intentional-fail",loadComponent:()=>import("./chunk-YV7KWLC4.js").then(t=>t.IntentionalFail)},{path:"**",redirectTo:""}];var $={errors:{unknownMode:t=>`SKILL_MAP_MODE: unknown value "${t}"`,restPrefix:t=>`BFF error [${t}]: `,malformedResponse:"BFF returned a malformed response",demoFetchFailed:(t,n)=>`Demo bundle fetch failed for "${t}": ${n}`,demoParseFailed:(t,n)=>`Demo bundle parse failed for "${t}": ${n}`,graphFormatNotInDemo:t=>`Graph format "${t}" is not bundled in demo mode (only "ascii").`}};function me(t){let n=new TextEncoder().encode(t),e="";for(let i=0;i<n.length;i++)e+=String.fromCharCode(n[i]);return btoa(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}var m="/api",lt=(()=>{class t{http;ws;kindRegistry;providerRegistry;contributionsRegistry;constructor(e,i,r,o,d){this.http=e??s(Y),this.ws=i??s(U),this.kindRegistry=r??s(V),this.contributionsRegistry=o??s(ce),this.providerRegistry=d??s(J)}async health(){return this.getJson(`${m}/health`)}async loadScan(){let[e]=await Promise.all([this.getJson(`${m}/scan`),this.listNodes({limit:0}).catch(()=>null)]);return e}async runScan(){return this.patchJson(`${m}/scan`,{},"POST")}async listNodes(e={}){let i=zt(e),r=await this.getJson(`${m}/nodes${i}`);return this.ingestRegistry(r.kindRegistry),this.ingestContributionsRegistry(r.contributionsRegistry),this.ingestProviderRegistry(r.providerRegistry),r}async getNode(e,i={}){let r=me(e),o=i.includeBody?"?include=body":"";try{let d=await this.getJson(`${m}/nodes/${r}${o}`);return this.ingestRegistry(d.kindRegistry),this.ingestContributionsRegistry(d.contributionsRegistry),this.ingestProviderRegistry(d.providerRegistry),d}catch(d){if(d instanceof h&&d.code==="not-found")return null;throw d}}async listLinks(e={}){let i=Ft(e),r=await this.getJson(`${m}/links${i}`);return this.ingestRegistry(r.kindRegistry),this.ingestContributionsRegistry(r.contributionsRegistry),this.ingestProviderRegistry(r.providerRegistry),r}async listIssues(e={}){let i=jt(e),r=await this.getJson(`${m}/issues${i}`);return this.ingestRegistry(r.kindRegistry),this.ingestContributionsRegistry(r.contributionsRegistry),this.ingestProviderRegistry(r.providerRegistry),r}async loadGraph(e="ascii"){let i=`${m}/graph?format=${encodeURIComponent(e)}`;try{return await X(this.http.get(i,{responseType:"text"}))}catch(r){throw this.translateError(r)}}async loadConfig(){let e=await this.getJson(`${m}/config`);return this.ingestRegistry(e.kindRegistry),this.ingestContributionsRegistry(e.contributionsRegistry),this.ingestProviderRegistry(e.providerRegistry),e.value}async listPlugins(){let e=await this.getJson(`${m}/plugins`);return this.ingestRegistry(e.kindRegistry),this.ingestContributionsRegistry(e.contributionsRegistry),this.ingestProviderRegistry(e.providerRegistry),e}async setPluginEnabled(e,i){let r=await this.patchJson(`${m}/plugins/${encodeURIComponent(e)}`,{enabled:i});return this.ingestRegistry(r.kindRegistry),this.ingestContributionsRegistry(r.contributionsRegistry),this.ingestProviderRegistry(r.providerRegistry),r}async setPluginExtensionEnabled(e,i,r){let o=await this.patchJson(`${m}/plugins/${encodeURIComponent(e)}/extensions/${encodeURIComponent(i)}`,{enabled:r});return this.ingestRegistry(o.kindRegistry),this.ingestContributionsRegistry(o.contributionsRegistry),this.ingestProviderRegistry(o.providerRegistry),o}async applyPluginChanges(e){let i=await this.patchJson(`${m}/plugins`,{changes:e});return this.ingestRegistry(i.kindRegistry),this.ingestContributionsRegistry(i.contributionsRegistry),this.ingestProviderRegistry(i.providerRegistry),i}async getPreferences(){return await this.getJson(`${m}/preferences`)}async setPreferences(e){return await this.patchJson(`${m}/preferences`,e)}async getProjectPreferences(){return await this.getJson(`${m}/project-preferences`)}async setProjectPreferences(e){return await this.patchJson(`${m}/project-preferences`,e)}async getProjectIgnore(){return await this.getJson(`${m}/project-ignore`)}async setProjectIgnore(e){return await this.patchJson(`${m}/project-ignore`,e)}async getActiveProvider(){return await this.getJson(`${m}/active-provider`)}async setActiveProvider(e){return await this.patchJson(`${m}/active-provider`,{activeProvider:e})}async setFavorite(e){let i=me(e);try{await X(this.http.put(`${m}/favorites/${i}`,null))}catch(r){throw this.translateError(r)}}async unsetFavorite(e){let i=me(e);try{await X(this.http.delete(`${m}/favorites/${i}`))}catch(r){throw this.translateError(r)}}async bumpSidecar(e,i={}){let r={nodePath:e};return i.force!==void 0&&(r.force=i.force),i.confirm!==void 0&&(r.confirm=i.confirm),this.patchJson(`${m}/sidecar/bump`,r,"POST")}async getUpdateStatus(){return this.getJson(`${m}/update-status`)}async getRegisteredAnnotations(){return(await this.getJson(`${m}/annotations/registered`)).items}ingestRegistry(e){e&&this.kindRegistry.ingest(e)}ingestProviderRegistry(e){e&&this.providerRegistry.ingest(e)}ingestContributionsRegistry(e){this.contributionsRegistry.setRegistry(e)}async lookupContribution(e,i,r){let o=new URLSearchParams({path:r});try{return(await this.getJson(`${m}/contributions/${encodeURIComponent(e)}/${encodeURIComponent(i)}?${o.toString()}`)).items[0]??null}catch{return null}}events(){return this.ws.events$}async getJson(e){try{return await X(this.http.get(e))}catch(i){throw this.translateError(i)}}async patchJson(e,i,r="PATCH"){try{let o=r==="POST"?this.http.post(e,i):this.http.patch(e,i);return await X(o)}catch(o){throw this.translateError(o)}}translateError(e){if(e instanceof h)return e;if(e instanceof Ie){let r=Ut(e.error);return r?new h(r.error.code,r.error.message,r.error.details):new h("internal",e.message||$.errors.malformedResponse)}let i=e instanceof Error?e.message:String(e);return new h("internal",i)}static \u0275fac=function(i){return new(i||t)(H(Y),H(U),H(V),H(ce),H(J))};static \u0275prov=A({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function zt(t){let n=new URLSearchParams;t.kind&&t.kind.length>0&&n.set("kind",t.kind.join(",")),t.hasIssues!==void 0&&n.set("hasIssues",String(t.hasIssues)),t.path&&n.set("path",t.path),t.limit!==void 0&&n.set("limit",String(t.limit)),t.offset!==void 0&&n.set("offset",String(t.offset));let e=n.toString();return e?`?${e}`:""}function Ft(t){let n=new URLSearchParams;t.kind&&t.kind.length>0&&n.set("kind",t.kind.join(",")),t.from&&n.set("from",t.from),t.to&&n.set("to",t.to);let e=n.toString();return e?`?${e}`:""}function jt(t){let n=new URLSearchParams;t.severity&&n.set("severity",t.severity),t.analyzerId&&n.set("analyzerId",t.analyzerId),t.node&&n.set("node",t.node),t.nodes&&t.nodes.length>0&&n.set("nodes",t.nodes.join(","));let e=n.toString();return e?`?${e}`:""}function Ut(t){if(typeof t!="object"||t===null)return null;let n=t;if(n.ok!==!1)return null;let e=n.error;if(typeof e!="object"||e===null)return null;let i=e;return typeof i.code!="string"||typeof i.message!="string"?null:{ok:!1,error:{code:i.code,message:i.message,details:i.details}}}var Bt="data.json",Vt="data.meta.json",ge=class{fetchImpl;metaPromise=null;dataPromise=null;kindRegistry;providerRegistry;constructor(n=globalThis.fetch.bind(globalThis),e,i){this.fetchImpl=n,this.kindRegistry=e??s(V),this.providerRegistry=i??s(J)}async health(){return(await this.loadMeta()).health}async loadScan(){let[n,e]=await Promise.all([this.loadData(),this.loadMeta()]);return this.kindRegistry.ingest(e.nodes.kindRegistry),this.providerRegistry.ingest(e.nodes.providerRegistry),n}async listNodes(n={}){let e=await this.loadMeta();if(Jt(n))return this.kindRegistry.ingest(e.nodes.kindRegistry),this.providerRegistry.ingest(e.nodes.providerRegistry),e.nodes;let i=await this.loadData(),r=i.issues,o=i.nodes;if(n.kind&&n.kind.length>0){let I=new Set(n.kind);o=o.filter(T=>I.has(T.kind))}if(n.path){let I=Ht(n.path);o=o.filter(T=>I.test(T.path))}if(n.hasIssues===!0){let I=dt(r);o=o.filter(T=>I.has(T.path))}else if(n.hasIssues===!1){let I=dt(r);o=o.filter(T=>!I.has(T.path))}let d=o.length,g=n.offset??0,S=n.limit??1e3,f=o.slice(g,g+S);return this.kindRegistry.ingest(e.nodes.kindRegistry),this.providerRegistry.ingest(e.nodes.providerRegistry),{schemaVersion:"1",kind:"nodes",items:f,filters:{kind:n.kind??null,hasIssues:n.hasIssues??null,path:n.path?[n.path]:null},counts:{total:d,returned:f.length,page:{offset:g,limit:S}},kindRegistry:e.nodes.kindRegistry,providerRegistry:e.nodes.providerRegistry}}async getNode(n,e={}){let[i,r]=await Promise.all([this.loadData(),this.loadMeta()]),o=i.nodes.find(f=>f.path===n);if(!o)return null;let d=i.links.filter(f=>f.target===n),g=i.links.filter(f=>f.source===n),S=i.issues.filter(f=>f.nodeIds.includes(n));return this.kindRegistry.ingest(r.nodes.kindRegistry),this.providerRegistry.ingest(r.nodes.providerRegistry),{schemaVersion:"1",kind:"node",item:o,links:{incoming:d,outgoing:g},issues:S,kindRegistry:r.nodes.kindRegistry,providerRegistry:r.nodes.providerRegistry}}async listLinks(n={}){let e=await this.loadMeta();if(Kt(n))return this.kindRegistry.ingest(e.links.kindRegistry),this.providerRegistry.ingest(e.links.providerRegistry),e.links;let r=(await this.loadData()).links;if(n.kind&&n.kind.length>0){let o=new Set(n.kind);r=r.filter(d=>o.has(d.kind))}return n.from&&(r=r.filter(o=>o.source===n.from)),n.to&&(r=r.filter(o=>o.target===n.to)),this.kindRegistry.ingest(e.links.kindRegistry),this.providerRegistry.ingest(e.links.providerRegistry),{schemaVersion:"1",kind:"links",items:r,filters:{kind:n.kind??null,from:n.from??null,to:n.to??null},counts:{total:r.length,returned:r.length},kindRegistry:e.links.kindRegistry,providerRegistry:e.links.providerRegistry}}async listIssues(n={}){let e=await this.loadMeta();if(Xt(n))return this.kindRegistry.ingest(e.issues.kindRegistry),this.providerRegistry.ingest(e.issues.providerRegistry),e.issues;let r=(await this.loadData()).issues;if(n.severity&&(r=r.filter(o=>o.severity===n.severity)),n.analyzerId&&(r=r.filter(o=>o.analyzerId===n.analyzerId)),n.node&&(r=r.filter(o=>o.nodeIds.includes(n.node))),n.nodes&&n.nodes.length>0){let o=new Set(n.nodes);r=r.filter(d=>d.nodeIds.some(g=>o.has(g)))}return this.kindRegistry.ingest(e.issues.kindRegistry),this.providerRegistry.ingest(e.issues.providerRegistry),{schemaVersion:"1",kind:"issues",items:r,filters:{severity:n.severity??null,analyzerId:n.analyzerId??null,node:n.node??null,nodes:n.nodes&&n.nodes.length>0?[...n.nodes]:null},counts:{total:r.length,returned:r.length},kindRegistry:e.issues.kindRegistry,providerRegistry:e.issues.providerRegistry}}async loadGraph(n="ascii"){if(n!=="ascii")throw new h("bad-query",$.errors.graphFormatNotInDemo(n));return(await this.loadMeta()).graph.ascii}async loadConfig(){let n=await this.loadMeta();return this.kindRegistry.ingest(n.config.kindRegistry),this.providerRegistry.ingest(n.config.providerRegistry),n.config.value}async listPlugins(){let n=await this.loadMeta();return this.kindRegistry.ingest(n.plugins.kindRegistry),this.providerRegistry.ingest(n.plugins.providerRegistry),n.plugins}async setFavorite(n){throw new h("demo-readonly","Favorites are not available in demo mode (static bundle is immutable).")}async unsetFavorite(n){throw new h("demo-readonly","Favorites are not available in demo mode (static bundle is immutable).")}async setPluginEnabled(n,e){throw new h("demo-readonly","Plugin toggles are not available in demo mode (static bundle is immutable).")}async setPluginExtensionEnabled(n,e,i){throw new h("demo-readonly","Plugin toggles are not available in demo mode (static bundle is immutable).")}async applyPluginChanges(n){throw new h("demo-readonly","Plugin toggles are not available in demo mode (static bundle is immutable).")}async runScan(){throw new h("demo-readonly","Manual scan is not available in demo mode (static bundle is immutable).")}async getPreferences(){return{updateCheck:{enabled:!0},telemetry:{errorsEnabled:!1,usageCliEnabled:!1,usageUiEnabled:!1,anonymousId:null,environment:"prod"}}}async setPreferences(n){throw new h("demo-readonly","Preference toggles are not available in demo mode (static bundle is immutable).")}async getProjectPreferences(){return{scan:{referencePaths:[]}}}async setProjectPreferences(n){throw new h("demo-readonly","Project preferences are not available in demo mode (static bundle is immutable).")}async getProjectIgnore(){return{patterns:[]}}async setProjectIgnore(n){throw new h("demo-readonly","Ignore patterns are not available in demo mode (static bundle is immutable).")}async getActiveProvider(){return{activeProvider:null,detected:[],source:"none"}}async setActiveProvider(n){throw new h("demo-readonly","Active provider lens is not available in demo mode (static bundle is immutable).")}async lookupContribution(){return null}async bumpSidecar(n,e={}){throw new h("demo-readonly","Sidecar bump is not available in demo mode (static bundle is immutable).")}async getUpdateStatus(){return{current:(await this.loadMeta()).health.implVersion,latest:null,isOutdated:!1,checkedAt:null,shownAt:null}}async getRegisteredAnnotations(){return[]}events(){return ye}loadMeta(){return this.metaPromise||(this.metaPromise=this.fetchJson(Vt)),this.metaPromise}loadData(){return this.dataPromise||(this.dataPromise=this.fetchJson(Bt)),this.dataPromise}async fetchJson(n){let e;try{e=await this.fetchImpl(n)}catch(i){let r=i instanceof Error?i.message:String(i);throw new h("internal",$.errors.demoFetchFailed(n,r))}if(!e.ok)throw new h("internal",$.errors.demoFetchFailed(n,`HTTP ${e.status}`));try{return await e.json()}catch(i){let r=i instanceof Error?i.message:String(i);throw new h("internal",$.errors.demoParseFailed(n,r))}}};function Jt(t){return!(t.kind&&t.kind.length>0||t.hasIssues!==void 0||t.path||t.offset!==void 0&&t.offset!==0||t.limit!==void 0)}function Kt(t){return!(t.kind&&t.kind.length>0||t.from||t.to)}function Xt(t){return!(t.severity||t.analyzerId||t.node||t.nodes&&t.nodes.length>0)}function dt(t){let n=new Set;for(let e of t)for(let i of e.nodeIds)n.add(i);return n}function Ht(t){let e=t.replace(/[.+^${}()|[\]\\]/g,"\\$&").replace(/\*/g,".*").replace(/\?/g,".");return new RegExp(`^${e}$`)}function ct(){let t=s(j);if(t==="live")return new lt(s(Y),s(U));if(t==="demo")return new ge;let n=t;throw new Error($.errors.unknownMode(String(n)))}var pt="search",mt="kinds",gt="linkKinds",ut="stabilities",ht="hasIssues",ft="staleOnly",vt="favoritesOnly",bt="severities",Wt=["error","warn"],_t=(()=>{class t{filters=s(Ye);router=s(Fe);activatedRoute=s(Ne);kindRegistry=s(V);destroyRef=s(Ce);suppressUrlReadback=!1;constructor(){this.applyUrlToFilters(this.currentParams()),this.router.events.pipe(Qe(this.destroyRef)).subscribe(e=>{if(e instanceof $e){if(this.suppressUrlReadback)return;this.applyUrlToFilters(this.currentParams())}}),te(()=>{let e=this.computeQueryParams();this.writeQueryParams(e)})}currentParams(){let e=this.router.parseUrl(this.router.url),i=new URLSearchParams;for(let[r,o]of Object.entries(e.queryParams))Array.isArray(o)?i.set(r,o.join(",")):o!=null&&i.set(r,String(o));return this.activatedRoute,i}applyUrlToFilters(e){let i=e.get(pt)??"";i!==this.filters.searchText()&&this.filters.setSearchText(i);let r=Yt(e.get(mt),this.kindRegistry.kinds().map(Nt=>Nt.name));ue(r,this.filters.selectedKinds())||this.filters.setKinds(r);let o=Qt(e.get(ut));ue(o,this.filters.selectedStabilities())||this.filters.setStabilities(o);let d=e.get(ht)==="true";d!==this.filters.hasIssuesOnly()&&this.filters.setHasIssuesOnly(d);let g=e.get(ft)==="true";g!==this.filters.staleOnly()&&this.filters.setStaleOnly(g);let S=e.get(vt)==="true";S!==this.filters.favoritesOnly()&&this.filters.setFavoritesOnly(S);let f=Gt(e.get(gt));ue(f,this.filters.selectedLinkKinds())||this.filters.setLinkKinds(f);let I=Zt(e.get(bt)),T=[];this.filters.severityErrorActive()&&T.push("error"),this.filters.severityWarnActive()&&T.push("warn"),ue(I,T)||this.filters.setSeverityFilters(I)}computeQueryParams(){let e=this.filters.searchText().trim(),i=this.filters.selectedKinds(),r=this.filters.selectedLinkKinds(),o=this.filters.selectedStabilities(),d=this.filters.hasIssuesOnly(),g=this.filters.staleOnly(),S=this.filters.favoritesOnly(),f=[];return this.filters.severityErrorActive()&&f.push("error"),this.filters.severityWarnActive()&&f.push("warn"),{[pt]:e.length>0?e:null,[mt]:i.length>0?i.join(","):null,[gt]:r.length>0?r.join(","):null,[ut]:o.length>0?o.join(","):null,[ht]:d?"true":null,[ft]:g?"true":null,[vt]:S?"true":null,[bt]:f.length>0?f.join(","):null}}writeQueryParams(e){let i=this.currentParams(),r=new Map(Object.entries(e)),o=!1;for(let[d,g]of r)if((i.get(d)??null)!==g){o=!0;break}o&&(this.suppressUrlReadback=!0,this.router.navigate([],{relativeTo:this.activatedRoute,queryParams:e,queryParamsHandling:"merge",replaceUrl:!0}).finally(()=>{setTimeout(()=>{this.suppressUrlReadback=!1},0)}))}static \u0275fac=function(i){return new(i||t)};static \u0275prov=A({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function Yt(t,n){if(!t)return[];let e=new Set(n);return t.split(",").map(i=>i.trim()).filter(i=>e.has(i))}function Qt(t){if(!t)return[];let n=new Set(He);return t.split(",").map(e=>e.trim()).filter(e=>n.has(e))}function Gt(t){if(!t)return[];let n=new Set(We);return t.split(",").map(e=>e.trim()).filter(e=>n.has(e))}function Zt(t){if(!t)return[];let n=new Set(Wt);return t.split(",").map(e=>e.trim()).filter(e=>n.has(e))}function ue(t,n){if(t.length!==n.length)return!1;for(let e=0;e<t.length;e++)if(t[e]!==n[e])return!1;return!0}var yt={healthFailed:t=>`ProjectInfoService: /api/health probe failed (${t})`};var Q=(()=>{class t{dataSource=s(q);status=z(null);cwd=c(()=>this.status()?.cwd??null);implVersion=c(()=>this.status()?.implVersion??null);dev=c(()=>this.status()?.dev===!0);activeProviderState=z(null);activeProvider=c(()=>this.activeProviderState());async load(){try{let e=await this.dataSource.health();this.status.set(e)}catch(e){let i=e instanceof Error?e.message:String(e);console.warn(yt.healthFailed(i))}await this.reloadActiveProvider()}async reloadActiveProvider(){try{let e=await this.dataSource.getActiveProvider();this.activeProviderState.set(e.activeProvider)}catch{}}static \u0275fac=function(i){return new(i||t)};static \u0275prov=A({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var kt=(()=>{class t extends oe{title=s(Le);projectInfo=s(Q);constructor(){super(),te(()=>{let e=Ct(this.projectInfo.cwd()),i=this.projectInfo.implVersion();this.title.setTitle(L.documentTitle(e,i))})}updateTitle(e){let i=Ct(this.projectInfo.cwd()),r=this.projectInfo.implVersion();this.title.setTitle(L.documentTitle(i,r))}static \u0275fac=function(i){return new(i||t)};static \u0275prov=A({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function Ct(t){if(!t)return null;let n=t.replace(/[\\/]+$/,"");if(!n||n===".")return null;let e=Math.max(n.lastIndexOf("/"),n.lastIndexOf("\\"));return(e>=0?n.slice(e+1):n)||null}var be=!1,_e=null;async function xt(t){if(be||fe===""||!t.consentEnabled)return;let n=await import("./chunk-YA64YJXF.js");n.init({dsn:fe,release:t.release??void 0,environment:t.environment,integrations:e=>e.filter(i=>i.name!=="BrowserSession"),tracesSampleRate:0,sendDefaultPii:!1,allowUrls:[/^https?:\/\/(localhost|127\.0\.0\.1)(:\d+)?\//],beforeSend:e=>et(e)}),_e=n,be=!0}function Pt(t){!be||_e===null||_e.captureException(t)}var wt=(()=>{class t{handleError(e){console.error(e),Pt(e)}static \u0275fac=function(i){return new(i||t)};static \u0275prov=A({token:t,factory:t.\u0275fac})}return t})();function qt(...t){for(let n of t)Promise.resolve(n.load())}var St={providers:[xe(),{provide:ke,useClass:wt},je(at,Ue()),{provide:oe,useClass:kt},Ae(De()),Ve({}),G(async()=>{let t=s(Be),[{default:n},{definePreset:e}]=await Promise.all([import("./chunk-43S72FTV.js"),import("./chunk-5ITZXW3A.js")]),i=e(n,{semantic:{primary:{50:"#F5F3FF",100:"#EDE9FE",200:"#DDD6FE",300:"#C4B5FD",400:"#A78BFA",500:"#8B5CF6",600:"#7C3AED",700:"#6D28D9",800:"#4C1D95",900:"#2E1065",950:"#1E0A4D"}}});t.setThemeConfig({theme:{preset:i,options:{darkModeSelector:".app-dark"}}})}),{provide:j,useFactory:Ge},{provide:q,useFactory:ct},G(async()=>{let t=s(q),n=s(ee);try{let[e,i]=await Promise.all([t.getPreferences(),t.health()]);await Promise.all([xt({consentEnabled:e.telemetry.errorsEnabled,release:i.implVersion?`skill-map-cli@${i.implVersion}`:null,environment:e.telemetry.environment}),tt({consentEnabled:e.telemetry.usageUiEnabled,distinctId:e.telemetry.anonymousId})]),nt({environment:e.telemetry.environment}),n.syncTheme()}catch{}}),G(()=>{qt(s(B),s(pe),s(Q))}),G(()=>{s(_t),s(Ze),s(ee)})]};var K={toggleToAuto:"Switch to auto theme (follow system)",toggleToLight:"Switch to light theme",toggleToDark:"Switch to dark theme",currentAuto:"Auto theme (follows system)",currentLight:"Light theme",currentDark:"Dark theme"};var Mt={body:"You are viewing a static demo of skill-map's UI. Install it:",installCommand:"npm i -g @skill-map/cli",homeCta:"\u2190 Back to skill-map.ai",homeHref:"/",dismissAria:"Dismiss demo banner"};function tn(t,n){if(t&1){let e=E();l(0,"div",0),x(1,"span",1),l(2,"p",2),u(3),l(4,"code",3),u(5),p()(),l(6,"a",4),u(7),p(),l(8,"p-button",5),M("onClick",function(){R(e);let r=v();return O(r.dismiss())}),p()()}if(t&2){let e=v();a(3),P(" ",e.texts.body," "),a(2),y(e.texts.installCommand),a(),_("href",e.texts.homeHref,ne),a(),y(e.texts.homeCta),a(),_("ariaLabel",e.texts.dismissAria)("text",!0)("rounded",!0)}}var Tt="sm.demoBannerDismissed",Rt=(()=>{class t{mode=s(j);texts=Mt;dismissed=z(this.readDismissed());visible=c(()=>this.mode==="demo"&&!this.dismissed());dismiss(){this.dismissed.set(!0);try{globalThis.localStorage?.setItem(Tt,"1")}catch{}}readDismissed(){if(this.mode!=="demo")return!0;try{return globalThis.localStorage?.getItem(Tt)==="1"}catch{return!1}}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=D({type:t,selectors:[["sm-demo-banner"]],decls:1,vars:1,consts:[["role","status","data-testid","demo-banner",1,"demo-banner"],["aria-hidden","true",1,"demo-banner__icon","fa-solid","fa-circle-info"],[1,"demo-banner__body"],["data-testid","demo-banner-install",1,"demo-banner__cmd"],["data-testid","demo-banner-home",1,"demo-banner__home",3,"href"],["icon","fa-solid fa-xmark","severity","secondary","size","small","data-testid","demo-banner-dismiss",3,"onClick","ariaLabel","text","rounded"]],template:function(i,r){i&1&&C(0,tn,9,7,"div",0),i&2&&k(r.visible()?0:-1)},dependencies:[de,le],styles:["[_nghost-%COMP%]{display:block}.demo-banner[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;border-bottom:1px solid var(--p-content-border-color);background:var(--p-highlight-background);color:var(--p-text-color);font-size:.875rem}.demo-banner__icon[_ngcontent-%COMP%]{font-size:1.1rem;color:var(--p-primary-color)}.demo-banner__body[_ngcontent-%COMP%]{flex:1 1 auto;margin:0;line-height:1.4}.demo-banner__cmd[_ngcontent-%COMP%]{font-family:var(--sm-font-mono);background:var(--p-content-background);border:1px solid var(--p-content-border-color);border-radius:var(--sm-radius-md);padding:.05rem .4rem;font-size:.85em;margin-left:.25rem}.demo-banner__home[_ngcontent-%COMP%]{color:var(--p-primary-color);font-weight:500;text-decoration:none;white-space:nowrap}.demo-banner__home[_ngcontent-%COMP%]:hover, .demo-banner__home[_ngcontent-%COMP%]:focus-visible{text-decoration:underline}"],changeDetection:0})}return t})();var Ot={bodyAtLimit:(t,n)=>`Your graph has ${t} ${t===1?"node":"nodes"}, at the recommended limit of ${n}. Past this point the map gets hard to read and analyzer signal degrades.`,bodyOverLimit:(t,n,e)=>`Your graph has ${t} nodes, over the recommended limit of ${n} (currently allowed via --max-nodes ${e}). Past this point the map gets hard to read and analyzer signal degrades.`,bodyCapped:(t,n,e)=>`Scan capped at ${n} ${n===1?"node":"nodes"} (${e==="override"?"--max-nodes":"scan.maxNodes"}). The walker stopped at ${t} ${t===1?"file":"files"}, additional files were dropped. The map and analyzers only see what made it through.`,cta:"Edit .skillmapignore",ctaAria:"Open Settings to edit ignored patterns"};function nn(t,n){if(t&1){let e=E();F(0,"div",0),Z(1,"span",1),F(2,"p",2),u(3),W(),F(4,"button",3),ie("click",function(){R(e);let r=v();return O(r.onCta())}),u(5),W()()}if(t&2){let e=v();b("data-mode",e.state().mode),a(3),P(" ",e.state().body," "),a(),b("aria-label",e.texts.ctaAria),a(),P(" ",e.texts.cta," ")}}var Et=(()=>{class t{loader=s(B);texts=Ot;openSettings=re();state=c(()=>{let e=this.loader.scan();if(!e)return{mode:"hidden",body:""};let i=e.recommendedNodeLimit;if(i===void 0)return{mode:"hidden",body:""};let r=e.overrideMaxNodes??null,o=r??i,d=e.stats.filesWalked,g=e.stats.nodesCount;return d>o?{mode:"capped",body:this.texts.bodyCapped(d,o,r!==null?"override":"setting")}:g<i?{mode:"hidden",body:""}:r!==null&&g>i?{mode:"overLimit",body:this.texts.bodyOverLimit(g,i,r)}:{mode:"atLimit",body:this.texts.bodyAtLimit(g,i)}});visible=c(()=>this.state().mode!=="hidden");onCta(){this.openSettings.emit()}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=D({type:t,selectors:[["sm-oversized-banner"]],outputs:{openSettings:"openSettings"},decls:1,vars:1,consts:[["role","status","data-testid","oversized-banner",1,"oversized-banner"],["aria-hidden","true",1,"oversized-banner__icon","fa-solid","fa-triangle-exclamation"],["data-testid","oversized-banner-body",1,"oversized-banner__body"],["type","button","data-testid","oversized-banner-cta",1,"oversized-banner__cta",3,"click"]],template:function(i,r){i&1&&C(0,nn,6,4,"div",0),i&2&&k(r.visible()?0:-1)},styles:["[_nghost-%COMP%]{display:block}.oversized-banner[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;border-bottom:1px solid var(--p-content-border-color);font-size:.875rem}.oversized-banner[data-mode=capped][_ngcontent-%COMP%]{background:var(--sm-severity-error-bg);color:var(--sm-severity-error)}.oversized-banner[data-mode=overLimit][_ngcontent-%COMP%], .oversized-banner[data-mode=atLimit][_ngcontent-%COMP%]{background:var(--sm-severity-warn-bg);color:var(--sm-severity-warn)}.oversized-banner__icon[_ngcontent-%COMP%]{font-size:1.1rem}.oversized-banner[data-mode=capped][_ngcontent-%COMP%] .oversized-banner__icon[_ngcontent-%COMP%]{color:var(--sm-severity-error)}.oversized-banner[data-mode=overLimit][_ngcontent-%COMP%] .oversized-banner__icon[_ngcontent-%COMP%], .oversized-banner[data-mode=atLimit][_ngcontent-%COMP%] .oversized-banner__icon[_ngcontent-%COMP%]{color:var(--sm-severity-warn)}.oversized-banner__body[_ngcontent-%COMP%]{flex:1 1 auto;margin:0;line-height:1.4}.oversized-banner__cta[_ngcontent-%COMP%]{flex:0 0 auto;background:transparent;color:inherit;border:1px solid currentColor;padding:.25rem .75rem;border-radius:var(--p-border-radius);font:inherit;font-size:.8125rem;font-weight:500;cursor:pointer;transition:background .15s ease}.oversized-banner__cta[_ngcontent-%COMP%]:hover, .oversized-banner__cta[_ngcontent-%COMP%]:focus-visible{background:color-mix(in srgb,currentColor 12%,transparent)}.oversized-banner__cta[_ngcontent-%COMP%]:focus-visible{outline:2px solid currentColor;outline-offset:2px}"],changeDetection:0})}return t})();var It={headline:t=>`${t} ${t===1?"file":"files"} skipped, ${t===1?"it exceeds":"they exceed"} the max file size.`,more:"...",seeConsole:"See the full list in the console.",cta:"Open Project settings",ctaAria:"Open Settings to adjust the max file size or ignore patterns"};function on(t,n){if(t&1&&(l(0,"span",4),u(1),p()),t&2){let e=v(2);_("pTooltip",e.state().tooltip),a(),y(e.texts.more)}}function sn(t,n){if(t&1){let e=E();l(0,"div",0),x(1,"span",1),l(2,"p",2),u(3),l(4,"span",3),u(5),p(),C(6,on,2,2,"span",4),p(),l(7,"button",5),M("click",function(){R(e);let r=v();return O(r.onCta())}),u(8),p()()}if(t&2){let e=v();a(3),P(" ",e.texts.headline(e.state().count)," "),a(2),P(" ",e.state().first," "),a(),k(e.state().hasMore?6:-1),a(),b("aria-label",e.texts.ctaAria),a(),P(" ",e.texts.cta," ")}}var an=5,At=(()=>{class t{loader=s(B);texts=It;openSettings=re();state=c(()=>{let e=this.loader.scan(),i=e?.oversizedFiles??[],r=e?.stats?.filesOversized??i.length;if(r<=0)return{visible:!1,count:0,first:"",hasMore:!1,tooltip:""};let o=i[0]?this.describe(i[0]):"",d=r>1,g="";if(d){let S=i.slice(1);r-1>an?g=this.texts.seeConsole:g=S.map(f=>this.describe(f)).join(`
4
- `)}return{visible:!0,count:r,first:o,hasMore:d,tooltip:g}});visible=c(()=>this.state().visible);describe(e){return`${e.path.split("/").pop()??e.path} (${Xe(e.bytes)})`}onCta(){this.openSettings.emit()}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=D({type:t,selectors:[["sm-skipped-files-banner"]],outputs:{openSettings:"openSettings"},decls:1,vars:1,consts:[["role","status","data-testid","skipped-files-banner",1,"skipped-files-banner"],["aria-hidden","true",1,"skipped-files-banner__icon","fa-solid","fa-triangle-exclamation"],["data-testid","skipped-files-banner-body",1,"skipped-files-banner__body"],["data-testid","skipped-files-banner-first",1,"skipped-files-banner__first"],["data-testid","skipped-files-banner-more",1,"skipped-files-banner__more",3,"pTooltip"],["type","button","data-testid","skipped-files-banner-cta",1,"skipped-files-banner__cta",3,"click"]],template:function(i,r){i&1&&C(0,sn,9,5,"div",0),i&2&&k(r.visible()?0:-1)},dependencies:[ae,se],styles:["[_nghost-%COMP%]{display:block}.skipped-files-banner[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;border-bottom:1px solid var(--p-content-border-color);font-size:.875rem;background:var(--sm-severity-warn-bg);color:var(--sm-severity-warn)}.skipped-files-banner__icon[_ngcontent-%COMP%]{font-size:1.1rem;color:var(--sm-severity-warn)}.skipped-files-banner__body[_ngcontent-%COMP%]{flex:1 1 auto;margin:0;line-height:1.4}.skipped-files-banner__first[_ngcontent-%COMP%]{font-weight:600}.skipped-files-banner__more[_ngcontent-%COMP%]{font-weight:600;cursor:help}.skipped-files-banner__cta[_ngcontent-%COMP%]{flex:0 0 auto;background:transparent;color:inherit;border:1px solid currentColor;padding:.25rem .75rem;border-radius:var(--p-border-radius);font:inherit;font-size:.8125rem;font-weight:500;cursor:pointer;transition:background .15s ease}.skipped-files-banner__cta[_ngcontent-%COMP%]:hover, .skipped-files-banner__cta[_ngcontent-%COMP%]:focus-visible{background:color-mix(in srgb,currentColor 12%,transparent)}.skipped-files-banner__cta[_ngcontent-%COMP%]:focus-visible{outline:2px solid currentColor;outline-offset:2px}"],changeDetection:0})}return t})();var Dt={body:"Connection to the server was lost. Live updates are paused.",reconnectCta:"Reconnect",reconnectAria:"Retry the connection to the server"};function ln(t,n){if(t&1){let e=E();F(0,"div",0),Z(1,"span",1),F(2,"p",2),u(3),W(),F(4,"button",3),ie("click",function(){R(e);let r=v();return O(r.reconnect())}),Z(5,"span",4),u(6),W()()}if(t&2){let e=v();a(3),y(e.texts.body),a(),b("aria-label",e.texts.reconnectAria),a(2),P(" ",e.texts.reconnectCta," ")}}var Lt=(()=>{class t{mode=s(j);ws=s(U);texts=Dt;visible=c(()=>this.mode==="live"&&this.ws.connectionState()==="lost");reconnect(){this.ws.reconnect()}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=D({type:t,selectors:[["sm-connection-banner"]],decls:1,vars:1,consts:[["role","alert","data-testid","connection-banner",1,"connection-banner"],["aria-hidden","true",1,"connection-banner__icon","fa-solid","fa-plug-circle-xmark"],[1,"connection-banner__body"],["type","button","data-testid","connection-banner-reconnect",1,"connection-banner__cta",3,"click"],["aria-hidden","true",1,"fa-solid","fa-rotate-right"]],template:function(i,r){i&1&&C(0,ln,7,3,"div",0),i&2&&k(r.visible()?0:-1)},styles:["[_nghost-%COMP%]{display:block}.connection-banner[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;border-bottom:1px solid var(--p-content-border-color);background:var(--sm-severity-error-bg);color:var(--sm-severity-error);font-size:.875rem}.connection-banner__icon[_ngcontent-%COMP%]{font-size:1.1rem;color:var(--sm-severity-error)}.connection-banner__body[_ngcontent-%COMP%]{flex:1 1 auto;margin:0;line-height:1.4}.connection-banner__cta[_ngcontent-%COMP%]{flex:0 0 auto;display:inline-flex;align-items:center;gap:.4rem;background:transparent;color:inherit;border:1px solid currentColor;padding:.25rem .75rem;border-radius:var(--p-border-radius);font:inherit;font-size:.8125rem;font-weight:500;cursor:pointer;transition:background .15s ease}.connection-banner__cta[_ngcontent-%COMP%]:hover, .connection-banner__cta[_ngcontent-%COMP%]:focus-visible{background:color-mix(in srgb,currentColor 12%,transparent)}.connection-banner__cta[_ngcontent-%COMP%]:focus-visible{outline:2px solid currentColor;outline-offset:2px}"],changeDetection:0})}return t})();var dn=()=>[import("./chunk-LBYK5DLL.js").then(t=>t.SettingsModal)];function cn(t,n){if(t&1&&(l(0,"span",11),u(1),p()),t&2){let e=v();_("pTooltip",e.versionTooltip()),b("aria-label",e.texts.devChipA11y),a(),y(e.texts.devChip)}}function pn(t,n){if(t&1&&(l(0,"span",12),u(1),p()),t&2){let e=v();_("pTooltip",e.versionTooltip()),b("aria-label",e.versionA11y()),a(),y(e.versionLabel())}}function mn(t,n){if(t&1&&(l(0,"span",24),u(1),p()),t&2){let e=n,i=v();Me("--provider-color",e.color)("--provider-color-dark",e.colorDark??e.color),_("pTooltip",i.texts.lensChipTooltip(e.label)),b("aria-label",i.texts.lensChipA11y(e.label)),a(),y(e.label)}}function gn(t,n){if(t&1){let e=E();l(0,"button",25),M("click",function(){R(e);let r=v();return O(r.copyUpdateCommand())}),x(1,"i",26),l(2,"span"),u(3),p()(),l(4,"a",27),x(5,"i",28),p()}if(t&2){let e=v();_("pTooltip",e.updateChipTooltip()),b("aria-label",e.updateChipA11y()),a(),Te(e.updateChipIcon()),a(2),y(e.updateChipText()),a(),_("href",e.npmLinkUrl,ne)("pTooltip",e.npmLinkTooltip),b("aria-label",e.npmLinkA11y)}}function un(t,n){if(t&1&&(l(0,"p",15)(1,"bdi",29),u(2),p()()),t&2){let e=n;b("title",e),a(2),y(e)}}function hn(t,n){if(t&1){let e=E();l(0,"sm-settings-modal",30),M("visibleChange",function(r){R(e);let o=v();return O(o.onSettingsVisibleChange(r))}),p()}if(t&2){let e=v();_("visible",e.settingsOpen())}}var $t=(()=>{class t{loader=s(B);theme=s(it);projectInfo=s(Q);providerRegistry=s(J);scanTrigger=s(st);usageTracker=s(ee);updateCheck=s(pe);texts=L;settingsTexts=ot;settingsOpen=z(!1);openSettings(){this.settingsOpen.set(!0),this.usageTracker.trackFeature("settings")}onSettingsVisibleChange(e){this.settingsOpen.set(e),e||this.projectInfo.reloadActiveProvider()}scanning=this.scanTrigger.scanning;scanError=this.scanTrigger.scanError;triggerScan(){return this.scanTrigger.run()}updateChipCopied=z(!1);updateChipText=c(()=>this.updateChipCopied()?w.copiedLabel:w.available);updateChipIcon=c(()=>this.updateChipCopied()?"pi pi-check":"pi pi-download");updateChipTooltip=c(()=>this.updateChipCopied()?w.copiedTooltip:w.tooltip(this.updateCheck.latest()??""));updateChipA11y=c(()=>w.a11yLabel(this.updateCheck.latest()??""));npmLinkUrl=w.npmLinkUrl;npmLinkTooltip=w.npmLinkTooltip;npmLinkA11y=w.npmLinkA11y;async copyUpdateCommand(){try{await navigator.clipboard.writeText(w.copyCommand),this.updateChipCopied.set(!0),setTimeout(()=>this.updateChipCopied.set(!1),2e3)}catch{}}versionLabel=c(()=>w.versionLabel(this.updateCheck.current()??""));versionTooltip=c(()=>w.versionTooltip(this.updateCheck.current()??""));versionA11y=c(()=>w.versionA11yLabel(this.updateCheck.current()??""));isDevBuild=this.projectInfo.dev;lensChip=c(()=>this.providerRegistry.lensChip(this.projectInfo.activeProvider()));count=this.loader.count;linkAnalysis=c(()=>rt(this.loader.nodes(),this.loader.scan()));linkCount=c(()=>this.linkAnalysis().raw);mapInfoTooltip=c(()=>L.badge.mapInfo(this.count(),this.linkAnalysis()));mapInfoA11y=c(()=>L.badge.mapInfoA11y(this.count(),this.linkAnalysis()));rootLabel=c(()=>{let e=this.projectInfo.cwd();if(e&&e!==".")return e;let i=this.loader.scan()?.roots??[];if(i.length===0)return"";let r=i[0].replace(/[\\/]+$/,"");return!r||r==="."?"":r});isDevMode=Re();themeMode=this.theme.mode;markSrc=c(()=>this.theme.extraTheme()==="matrix"?"skill-map-mark-matrix.svg":this.theme.resolved()==="dark"?"skill-map-mark-light.svg":"skill-map-mark-dark.svg");themeIcon=c(()=>{switch(this.themeMode()){case"auto":return"pi pi-desktop";case"light":return"pi pi-sun";case"dark":return"fa-regular fa-moon"}});themeLabel=c(()=>{switch(this.themeMode()){case"auto":return K.toggleToLight;case"light":return K.toggleToDark;case"dark":return K.toggleToAuto}});themeTooltip=c(()=>{switch(this.themeMode()){case"auto":return K.currentAuto;case"light":return K.currentLight;case"dark":return K.currentDark}});toggleTheme(){this.theme.toggle()}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=D({type:t,selectors:[["sm-root"]],decls:39,vars:30,consts:[["role","alert","data-testid","viewport-warning",1,"viewport-warning"],[1,"viewport-warning__card"],["aria-hidden","true",1,"fa-solid","fa-desktop","viewport-warning__icon"],[1,"viewport-warning__title"],[1,"viewport-warning__subtitle"],[1,"viewport-warning__body"],["data-testid","shell",1,"shell"],[3,"openSettings"],["data-testid","shell-topbar",1,"shell__topbar"],[1,"shell__brand"],["width","32","height","32","priority","","alt","","aria-hidden","true",1,"shell__brand-mark",3,"ngSrc"],["tooltipPosition","bottom","data-testid","shell-dev",1,"shell__dev",3,"pTooltip"],["tooltipPosition","bottom","data-testid","shell-version",1,"shell__version",3,"pTooltip"],["tooltipPosition","bottom","data-testid","shell-lens",1,"shell__lens",3,"--provider-color","--provider-color-dark","pTooltip"],[1,"shell__alpha"],["data-testid","shell-root-label",1,"shell__tag"],["data-testid","shell-nav",1,"shell__nav"],["slot","topbar.nav.start",3,"node"],[1,"shell__actions"],["type","button","tooltipPosition","bottom","data-testid","shell-refresh",1,"shell__refresh",3,"click","pTooltip","disabled"],["aria-hidden","true",1,"pi","pi-sync"],["severity","secondary","size","small","data-testid","action-theme-toggle",3,"onClick","icon","ariaLabel","pTooltip","text","rounded"],["icon","pi pi-sliders-h","severity","secondary","size","small","data-testid","action-settings",3,"onClick","ariaLabel","pTooltip","text","rounded"],[1,"shell__main"],["tooltipPosition","bottom","data-testid","shell-lens",1,"shell__lens",3,"pTooltip"],["type","button","tooltipPosition","bottom","data-testid","shell-update-chip",1,"shell__update-chip",3,"click","pTooltip"],["aria-hidden","true"],["target","_blank","rel","noopener noreferrer","tooltipPosition","bottom","data-testid","shell-update-npm-link",1,"shell__update-npm-link",3,"href","pTooltip"],["aria-hidden","true",1,"pi","pi-external-link"],["dir","ltr"],[3,"visibleChange","visible"]],template:function(i,r){if(i&1&&(l(0,"div",0)(1,"div",1),x(2,"i",2),l(3,"h2",3),u(4),p(),l(5,"p",4),u(6),p(),l(7,"p",5),u(8),p()()(),l(9,"div",6),x(10,"sm-demo-banner"),l(11,"sm-oversized-banner",7),M("openSettings",function(){return r.openSettings()}),p(),l(12,"sm-skipped-files-banner",7),M("openSettings",function(){return r.openSettings()}),p(),x(13,"sm-connection-banner"),l(14,"header",8)(15,"div",9),x(16,"img",10),l(17,"div")(18,"h1"),u(19),C(20,cn,2,3,"span",11)(21,pn,2,3,"span",12),C(22,mn,2,7,"span",13),l(23,"span",14),u(24),p(),C(25,gn,6,8),p(),C(26,un,3,2,"p",15),p()(),l(27,"nav",16),x(28,"sm-view-contributions-host",17),p(),l(29,"div",18)(30,"button",19),M("click",function(){return r.triggerScan()}),x(31,"i",20),p(),l(32,"p-button",21),M("onClick",function(){return r.toggleTheme()}),p(),l(33,"p-button",22),M("onClick",function(){return r.openSettings()}),p()()(),l(34,"main",23),x(35,"router-outlet"),p(),Pe(36,hn,1,1),we(37,36,dn),p()),i&2){let o,d,g;a(4),y(r.texts.viewportWarning.title),a(2),y(r.texts.viewportWarning.subtitle),a(2),y(r.texts.viewportWarning.body),a(8),_("ngSrc",r.markSrc()),a(3),P(" ",r.texts.brand," "),a(),k(r.isDevBuild()?20:(o=r.updateCheck.current())?21:-1,o),a(2),k((d=r.lensChip())?22:-1,d),a(),b("aria-label",r.texts.alpha),a(),y(r.texts.alpha),a(),k(r.updateCheck.isOutdated()&&!r.isDevMode?25:-1),a(),k((g=r.rootLabel())?26:-1,g),a(),b("aria-label",r.texts.a11y.viewSwitcher),a(),_("node",null),a(2),he("is-spinning",r.scanning()),_("pTooltip",r.mapInfoTooltip())("disabled",r.scanning()),b("aria-label",r.mapInfoA11y()),a(),he("pi-spin",r.scanning()),a(),_("icon",r.themeIcon())("ariaLabel",r.themeLabel())("pTooltip",r.themeTooltip())("text",!0)("rounded",!0),a(),_("ariaLabel",r.settingsTexts.a11y.triggerLabel)("pTooltip",r.settingsTexts.triggerTooltip)("text",!0)("rounded",!0),a(4),Se(r.settingsOpen())}},dependencies:[ze,de,le,Ke,ae,se,Je,Oe,Rt,Et,At,Lt,qe],styles:['[_nghost-%COMP%]{display:block;height:100dvh;--shell-topbar-bg: #FFFFFF;--shell-topbar-border: var(--sm-violet-100);--shell-topbar-text: var(--sm-violet-800);--shell-topbar-text-strong: var(--sm-violet-900);--shell-topbar-text-muted: var(--sm-violet-600);--shell-topbar-hover-bg: color-mix(in srgb, var(--sm-violet-500) 10%, transparent);--shell-topbar-active-bg: var(--sm-violet-100);--shell-topbar-active-text: var(--sm-violet-800);--shell-topbar-badge-bg: var(--sm-violet-100)}.app-dark[_nghost-%COMP%], .app-dark [_nghost-%COMP%]{--shell-topbar-bg: #1A1B22;--shell-topbar-border: color-mix(in srgb, var(--sm-violet-300) 8%, transparent);--shell-topbar-text: var(--sm-violet-100);--shell-topbar-text-strong: var(--sm-violet-100);--shell-topbar-text-muted: var(--sm-violet-300);--shell-topbar-hover-bg: color-mix(in srgb, var(--sm-violet-400) 12%, transparent);--shell-topbar-active-bg: color-mix(in srgb, var(--sm-violet-500) 22%, transparent);--shell-topbar-active-text: var(--sm-violet-100);--shell-topbar-badge-bg: color-mix(in srgb, var(--sm-violet-500) 14%, transparent)}.shell[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100dvh}.shell__topbar[_ngcontent-%COMP%]{display:flex;align-items:center;gap:1rem;padding:.75rem 1.5rem;background:color-mix(in srgb,var(--shell-topbar-bg) 85%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--shell-topbar-border);color:var(--shell-topbar-text)}.shell__brand[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.75rem}.shell__brand-mark[_ngcontent-%COMP%]{width:2rem;height:2rem;display:block}.shell__brand[_ngcontent-%COMP%] h1[_ngcontent-%COMP%]{margin:0;font-size:1.05rem;font-weight:600;letter-spacing:-.01em;color:var(--shell-topbar-text-strong)}.shell__alpha[_ngcontent-%COMP%]{font-family:var(--sm-font-display-brand);font-weight:600;font-size:10px;line-height:1;letter-spacing:.06em;text-transform:uppercase;color:#ad322b;background:#ad322b14;border-radius:var(--sm-radius-sm);padding:4px 8px;margin-left:8px;-webkit-user-select:none;user-select:none;display:inline-block;vertical-align:middle;white-space:nowrap}.app-dark[_nghost-%COMP%] .shell__alpha[_ngcontent-%COMP%], .app-dark [_nghost-%COMP%] .shell__alpha[_ngcontent-%COMP%]{color:#e07570;background:#cf464024}.shell__version[_ngcontent-%COMP%]{display:inline-block;margin-left:6px;padding:2px 6px;border-radius:var(--sm-radius-sm);font-family:var(--p-monospace-font-family);font-size:11px;line-height:1;font-weight:500;letter-spacing:.02em;color:var(--p-text-muted-color);background:var(--p-content-hover-background);vertical-align:middle;-webkit-user-select:text;user-select:text}.shell__dev[_ngcontent-%COMP%]{display:inline-block;margin-left:6px;padding:2px 8px;border-radius:var(--sm-radius-sm);font-family:var(--sm-font-display-brand);font-size:10px;line-height:1;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#8a5a00;background:#d69e2e29;vertical-align:middle;-webkit-user-select:none;user-select:none}.app-dark[_nghost-%COMP%] .shell__dev[_ngcontent-%COMP%], .app-dark [_nghost-%COMP%] .shell__dev[_ngcontent-%COMP%]{color:#fbd38d;background:#d69e2e38}.shell__lens[_ngcontent-%COMP%]{display:inline-block;margin-left:6px;padding:2px 8px;border-radius:var(--sm-radius-sm);font-size:11px;line-height:1;font-weight:600;letter-spacing:.02em;color:var(--provider-color);background:color-mix(in srgb,var(--provider-color) 14%,transparent);vertical-align:middle;-webkit-user-select:none;user-select:none}.app-dark[_nghost-%COMP%] .shell__lens[_ngcontent-%COMP%], .app-dark [_nghost-%COMP%] .shell__lens[_ngcontent-%COMP%]{color:var(--provider-color-dark);background:color-mix(in srgb,var(--provider-color-dark) 24%,transparent)}.shell__update-chip[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:4px;margin-left:8px;padding:3px 8px;font-family:inherit;font-size:11px;line-height:1;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--p-primary-color);background:var(--p-primary-50);border:1px solid var(--p-primary-200);border-radius:var(--sm-radius-pill);text-decoration:none;cursor:pointer;transition:background-color .12s ease,color .12s ease;vertical-align:middle}.shell__update-chip[_ngcontent-%COMP%]:hover, .shell__update-chip[_ngcontent-%COMP%]:focus-visible{background:var(--p-primary-100);color:var(--p-primary-700)}.shell__update-chip[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:12px;transform:translateY(1px)}.app-dark[_nghost-%COMP%] .shell__update-chip[_ngcontent-%COMP%], .app-dark [_nghost-%COMP%] .shell__update-chip[_ngcontent-%COMP%]{color:var(--p-primary-300);background:#ffffff0a;border-color:var(--p-primary-700)}.shell__update-npm-link[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;margin-left:4px;padding:3px 4px;color:var(--p-primary-color);text-decoration:none;border-radius:var(--sm-radius-pill);transition:color .12s ease,background-color .12s ease;vertical-align:middle}.shell__update-npm-link[_ngcontent-%COMP%]:hover, .shell__update-npm-link[_ngcontent-%COMP%]:focus-visible{color:var(--p-primary-700);background:var(--p-primary-50)}.shell__update-npm-link[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:12px;transform:translateY(1px)}.app-dark[_nghost-%COMP%] .shell__update-npm-link[_ngcontent-%COMP%], .app-dark [_nghost-%COMP%] .shell__update-npm-link[_ngcontent-%COMP%]{color:var(--p-primary-300)}.app-dark[_nghost-%COMP%] .shell__update-npm-link[_ngcontent-%COMP%]:hover, .app-dark [_nghost-%COMP%] .shell__update-npm-link[_ngcontent-%COMP%]:hover, .app-dark[_nghost-%COMP%] .shell__update-npm-link[_ngcontent-%COMP%]:focus-visible, .app-dark [_nghost-%COMP%] .shell__update-npm-link[_ngcontent-%COMP%]:focus-visible{color:var(--p-primary-200);background:#ffffff0a}.shell__tag[_ngcontent-%COMP%]{margin:.35rem 0 0;font-size:.72rem;color:var(--shell-topbar-text-muted);letter-spacing:.02em;text-transform:uppercase;max-width:40rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;direction:rtl}.shell__nav[_ngcontent-%COMP%]{display:flex;gap:.25rem;margin-left:auto}.shell__nav[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{padding:.5rem .9rem;border-radius:.5rem;font-size:.9rem;font-weight:500;color:var(--shell-topbar-text-muted);transition:background .15s ease,color .15s ease}.shell__nav[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:hover{background:var(--shell-topbar-hover-bg);color:var(--shell-topbar-text-strong)}.shell__nav[_ngcontent-%COMP%] a.is-active[_ngcontent-%COMP%]{background:var(--shell-topbar-active-bg);color:var(--shell-topbar-active-text)}.shell__search[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:.25rem;position:relative}.shell__nav-search[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;padding:0;border:none;border-radius:.5rem;background:transparent;color:var(--shell-topbar-text-muted);cursor:pointer;transition:background .15s ease,color .15s ease,opacity .15s ease}.shell__nav-search[_ngcontent-%COMP%]:hover{background:var(--shell-topbar-hover-bg);color:var(--shell-topbar-text-strong)}.shell__search.is-open[_ngcontent-%COMP%] .shell__nav-search[_ngcontent-%COMP%]{color:var(--shell-topbar-text-strong)}.shell__nav-search[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:.95rem}.shell__search.has-query[_ngcontent-%COMP%]:not(.is-open) .shell__nav-search[_ngcontent-%COMP%]{position:relative;color:var(--shell-topbar-text-strong)}.shell__search.has-query[_ngcontent-%COMP%]:not(.is-open) .shell__nav-search[_ngcontent-%COMP%]:after{content:"";position:absolute;top:.45rem;right:.45rem;width:6px;height:6px;border-radius:50%;background:var(--p-primary-color)}.shell__search-input[_ngcontent-%COMP%]{width:240px;height:2.25rem}.shell__search-clear[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;width:1.6rem;height:1.6rem;padding:0;border:none;border-radius:50%;background:transparent;color:var(--shell-topbar-text-muted);cursor:pointer;line-height:1}.shell__search-clear[_ngcontent-%COMP%]:hover{background:var(--shell-topbar-hover-bg);color:var(--shell-topbar-text-strong)}.shell__search-clear[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:.7rem}.shell__actions[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.75rem;--p-button-text-secondary-color: var(--shell-topbar-text-muted);--p-button-text-secondary-hover-color: var(--shell-topbar-text-strong);--p-button-text-secondary-hover-background: var(--shell-topbar-hover-bg);--p-button-text-secondary-active-color: var(--shell-topbar-text-strong);--p-button-text-secondary-active-background: var(--shell-topbar-hover-bg)}.shell__refresh[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:none;border-radius:var(--sm-radius-pill);background:transparent;color:var(--shell-topbar-text-muted);cursor:pointer;transition:background .15s ease,color .15s ease}.shell__refresh[_ngcontent-%COMP%]:hover:not(:disabled), .shell__refresh[_ngcontent-%COMP%]:focus-visible:not(:disabled){background:var(--shell-topbar-hover-bg);color:var(--shell-topbar-text-strong);outline:none}.shell__refresh[_ngcontent-%COMP%]:disabled{cursor:progress;opacity:.7}.shell__refresh[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:1rem}.shell__main[_ngcontent-%COMP%]{flex:1;min-height:0;overflow-y:auto;width:100%}@media(max-width:1280px){.shell__topbar[_ngcontent-%COMP%]{gap:1rem;padding:.5rem 1rem}.shell__tag[_ngcontent-%COMP%]{max-width:26rem}.shell__nav[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{padding:.4rem .7rem;font-size:.85rem}}.viewport-warning[_ngcontent-%COMP%]{display:none}@media(max-width:767px){.viewport-warning[_ngcontent-%COMP%]{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:var(--sm-bg-content)}.viewport-warning__card[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.85rem;max-width:22rem}.viewport-warning__icon[_ngcontent-%COMP%]{font-size:3rem;color:var(--p-primary-color);margin-bottom:.25rem}.viewport-warning__title[_ngcontent-%COMP%]{margin:0;font-size:1.35rem;font-weight:700;color:var(--p-text-color);line-height:1.25}.viewport-warning__subtitle[_ngcontent-%COMP%]{margin:0;font-size:1rem;font-weight:500;color:var(--p-primary-color);line-height:1.35}.viewport-warning__body[_ngcontent-%COMP%]{margin:0;color:var(--p-text-muted-color);line-height:1.5;font-size:.9rem}.shell[_ngcontent-%COMP%]{display:none}}'],changeDetection:0})}return t})();Ee($t,St).catch(t=>console.error(t));
3
+ ${n.drawn.toLocaleString()} drawn (${i.join(", ")})`},mapInfoA11y:(t,n)=>`Map contains ${t} nodes and ${n.raw} links; ${n.drawn} drawn on the canvas`},a11y:{viewSwitcher:"View switcher"},viewportWarning:{title:"Looks like you're on a small screen",subtitle:"skill-map is built for desktop",body:"The map and inspector need room to breathe. Pop this open on a screen at least 768px wide. See you there."},documentTitle:(t,n)=>{let e=t?`${t} - ${fe}`:fe;return n?`${e} v${n}`:e}};var st=[{path:"",pathMatch:"full",loadComponent:()=>import("./chunk-WWHD2PMO.js").then(t=>t.WorkspaceView),title:A.brand},{path:"intentional-fail",loadComponent:()=>import("./chunk-WQMZOINB.js").then(t=>t.IntentionalFail)},{path:"**",redirectTo:""}];var D={errors:{unknownMode:t=>`SKILL_MAP_MODE: unknown value "${t}"`,restPrefix:t=>`BFF error [${t}]: `,malformedResponse:"BFF returned a malformed response",demoFetchFailed:(t,n)=>`Demo bundle fetch failed for "${t}": ${n}`,demoParseFailed:(t,n)=>`Demo bundle parse failed for "${t}": ${n}`,graphFormatNotInDemo:t=>`Graph format "${t}" is not bundled in demo mode (only "ascii").`}};function me(t){let n=new TextEncoder().encode(t),e="";for(let i=0;i<n.length;i++)e+=String.fromCharCode(n[i]);return btoa(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}var m="/api",at=(()=>{class t{http;ws;kindRegistry;providerRegistry;contributionsRegistry;constructor(e,i,r,o,l){this.http=e??s(Q),this.ws=i??s(F),this.kindRegistry=r??s(U),this.contributionsRegistry=o??s(ce),this.providerRegistry=l??s(B)}async health(){return this.getJson(`${m}/health`)}async loadScan(){let[e]=await Promise.all([this.getJson(`${m}/scan`),this.listNodes({limit:0}).catch(()=>null)]);return e}async runScan(){return this.patchJson(`${m}/scan`,{},"POST")}async listNodes(e={}){let i=At(e),r=await this.getJson(`${m}/nodes${i}`);return this.ingestRegistry(r.kindRegistry),this.ingestContributionsRegistry(r.contributionsRegistry),this.ingestProviderRegistry(r.providerRegistry),r}async getNode(e,i={}){let r=me(e),o=i.includeBody?"?include=body":"";try{let l=await this.getJson(`${m}/nodes/${r}${o}`);return this.ingestRegistry(l.kindRegistry),this.ingestContributionsRegistry(l.contributionsRegistry),this.ingestProviderRegistry(l.providerRegistry),l}catch(l){if(l instanceof h&&l.code==="not-found")return null;throw l}}async listLinks(e={}){let i=Dt(e),r=await this.getJson(`${m}/links${i}`);return this.ingestRegistry(r.kindRegistry),this.ingestContributionsRegistry(r.contributionsRegistry),this.ingestProviderRegistry(r.providerRegistry),r}async listIssues(e={}){let i=Lt(e),r=await this.getJson(`${m}/issues${i}`);return this.ingestRegistry(r.kindRegistry),this.ingestContributionsRegistry(r.contributionsRegistry),this.ingestProviderRegistry(r.providerRegistry),r}async loadGraph(e="ascii"){let i=`${m}/graph?format=${encodeURIComponent(e)}`;try{return await X(this.http.get(i,{responseType:"text"}))}catch(r){throw this.translateError(r)}}async loadConfig(){let e=await this.getJson(`${m}/config`);return this.ingestRegistry(e.kindRegistry),this.ingestContributionsRegistry(e.contributionsRegistry),this.ingestProviderRegistry(e.providerRegistry),e.value}async listPlugins(){let e=await this.getJson(`${m}/plugins`);return this.ingestRegistry(e.kindRegistry),this.ingestContributionsRegistry(e.contributionsRegistry),this.ingestProviderRegistry(e.providerRegistry),e}async setPluginEnabled(e,i){let r=await this.patchJson(`${m}/plugins/${encodeURIComponent(e)}`,{enabled:i});return this.ingestRegistry(r.kindRegistry),this.ingestContributionsRegistry(r.contributionsRegistry),this.ingestProviderRegistry(r.providerRegistry),r}async setPluginExtensionEnabled(e,i,r){let o=await this.patchJson(`${m}/plugins/${encodeURIComponent(e)}/extensions/${encodeURIComponent(i)}`,{enabled:r});return this.ingestRegistry(o.kindRegistry),this.ingestContributionsRegistry(o.contributionsRegistry),this.ingestProviderRegistry(o.providerRegistry),o}async applyPluginChanges(e){let i=await this.patchJson(`${m}/plugins`,{changes:e});return this.ingestRegistry(i.kindRegistry),this.ingestContributionsRegistry(i.contributionsRegistry),this.ingestProviderRegistry(i.providerRegistry),i}async getPreferences(){return await this.getJson(`${m}/preferences`)}async setPreferences(e){return await this.patchJson(`${m}/preferences`,e)}async getProjectPreferences(){return await this.getJson(`${m}/project-preferences`)}async setProjectPreferences(e){return await this.patchJson(`${m}/project-preferences`,e)}async getProjectIgnore(){return await this.getJson(`${m}/project-ignore`)}async setProjectIgnore(e){return await this.patchJson(`${m}/project-ignore`,e)}async getActiveProvider(){return await this.getJson(`${m}/active-provider`)}async setActiveProvider(e){return await this.patchJson(`${m}/active-provider`,{activeProvider:e})}async setFavorite(e){let i=me(e);try{await X(this.http.put(`${m}/favorites/${i}`,null))}catch(r){throw this.translateError(r)}}async unsetFavorite(e){let i=me(e);try{await X(this.http.delete(`${m}/favorites/${i}`))}catch(r){throw this.translateError(r)}}async bumpSidecar(e,i={}){let r={nodePath:e};return i.force!==void 0&&(r.force=i.force),i.confirm!==void 0&&(r.confirm=i.confirm),this.patchJson(`${m}/sidecar/bump`,r,"POST")}async getUpdateStatus(){return this.getJson(`${m}/update-status`)}async getRegisteredAnnotations(){return(await this.getJson(`${m}/annotations/registered`)).items}ingestRegistry(e){e&&this.kindRegistry.ingest(e)}ingestProviderRegistry(e){e&&this.providerRegistry.ingest(e)}ingestContributionsRegistry(e){this.contributionsRegistry.setRegistry(e)}async lookupContribution(e,i,r){let o=new URLSearchParams({path:r});try{return(await this.getJson(`${m}/contributions/${encodeURIComponent(e)}/${encodeURIComponent(i)}?${o.toString()}`)).items[0]??null}catch{return null}}events(){return this.ws.events$}async getJson(e){try{return await X(this.http.get(e))}catch(i){throw this.translateError(i)}}async patchJson(e,i,r="PATCH"){try{let o=r==="POST"?this.http.post(e,i):this.http.patch(e,i);return await X(o)}catch(o){throw this.translateError(o)}}translateError(e){if(e instanceof h)return e;if(e instanceof Ie){let r=$t(e.error);return r?new h(r.error.code,r.error.message,r.error.details):new h("internal",e.message||D.errors.malformedResponse)}let i=e instanceof Error?e.message:String(e);return new h("internal",i)}static \u0275fac=function(i){return new(i||t)(H(Q),H(F),H(U),H(ce),H(B))};static \u0275prov=E({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function At(t){let n=new URLSearchParams;t.kind&&t.kind.length>0&&n.set("kind",t.kind.join(",")),t.hasIssues!==void 0&&n.set("hasIssues",String(t.hasIssues)),t.path&&n.set("path",t.path),t.limit!==void 0&&n.set("limit",String(t.limit)),t.offset!==void 0&&n.set("offset",String(t.offset));let e=n.toString();return e?`?${e}`:""}function Dt(t){let n=new URLSearchParams;t.kind&&t.kind.length>0&&n.set("kind",t.kind.join(",")),t.from&&n.set("from",t.from),t.to&&n.set("to",t.to);let e=n.toString();return e?`?${e}`:""}function Lt(t){let n=new URLSearchParams;t.severity&&n.set("severity",t.severity),t.analyzerId&&n.set("analyzerId",t.analyzerId),t.node&&n.set("node",t.node),t.nodes&&t.nodes.length>0&&n.set("nodes",t.nodes.join(","));let e=n.toString();return e?`?${e}`:""}function $t(t){if(typeof t!="object"||t===null)return null;let n=t;if(n.ok!==!1)return null;let e=n.error;if(typeof e!="object"||e===null)return null;let i=e;return typeof i.code!="string"||typeof i.message!="string"?null:{ok:!1,error:{code:i.code,message:i.message,details:i.details}}}var Nt="data.json",zt="data.meta.json",ge=class{fetchImpl;metaPromise=null;dataPromise=null;kindRegistry;providerRegistry;constructor(n=globalThis.fetch.bind(globalThis),e,i){this.fetchImpl=n,this.kindRegistry=e??s(U),this.providerRegistry=i??s(B)}async health(){return(await this.loadMeta()).health}async loadScan(){let[n,e]=await Promise.all([this.loadData(),this.loadMeta()]);return this.kindRegistry.ingest(e.nodes.kindRegistry),this.providerRegistry.ingest(e.nodes.providerRegistry),n}async listNodes(n={}){let e=await this.loadMeta();if(Ft(n))return this.kindRegistry.ingest(e.nodes.kindRegistry),this.providerRegistry.ingest(e.nodes.providerRegistry),e.nodes;let i=await this.loadData(),r=i.issues,o=i.nodes;if(n.kind&&n.kind.length>0){let V=new Set(n.kind);o=o.filter(J=>V.has(J.kind))}if(n.path){let V=Bt(n.path);o=o.filter(J=>V.test(J.path))}if(n.hasIssues===!0){let V=lt(r);o=o.filter(J=>V.has(J.path))}else if(n.hasIssues===!1){let V=lt(r);o=o.filter(J=>!V.has(J.path))}let l=o.length,u=n.offset??0,M=n.limit??1e3,y=o.slice(u,u+M);return this.kindRegistry.ingest(e.nodes.kindRegistry),this.providerRegistry.ingest(e.nodes.providerRegistry),{schemaVersion:"1",kind:"nodes",items:y,filters:{kind:n.kind??null,hasIssues:n.hasIssues??null,path:n.path?[n.path]:null},counts:{total:l,returned:y.length,page:{offset:u,limit:M}},kindRegistry:e.nodes.kindRegistry,providerRegistry:e.nodes.providerRegistry}}async getNode(n,e={}){let[i,r]=await Promise.all([this.loadData(),this.loadMeta()]),o=i.nodes.find(y=>y.path===n);if(!o)return null;let l=i.links.filter(y=>y.target===n),u=i.links.filter(y=>y.source===n),M=i.issues.filter(y=>y.nodeIds.includes(n));return this.kindRegistry.ingest(r.nodes.kindRegistry),this.providerRegistry.ingest(r.nodes.providerRegistry),{schemaVersion:"1",kind:"node",item:o,links:{incoming:l,outgoing:u},issues:M,kindRegistry:r.nodes.kindRegistry,providerRegistry:r.nodes.providerRegistry}}async listLinks(n={}){let e=await this.loadMeta();if(jt(n))return this.kindRegistry.ingest(e.links.kindRegistry),this.providerRegistry.ingest(e.links.providerRegistry),e.links;let r=(await this.loadData()).links;if(n.kind&&n.kind.length>0){let o=new Set(n.kind);r=r.filter(l=>o.has(l.kind))}return n.from&&(r=r.filter(o=>o.source===n.from)),n.to&&(r=r.filter(o=>o.target===n.to)),this.kindRegistry.ingest(e.links.kindRegistry),this.providerRegistry.ingest(e.links.providerRegistry),{schemaVersion:"1",kind:"links",items:r,filters:{kind:n.kind??null,from:n.from??null,to:n.to??null},counts:{total:r.length,returned:r.length},kindRegistry:e.links.kindRegistry,providerRegistry:e.links.providerRegistry}}async listIssues(n={}){let e=await this.loadMeta();if(Ut(n))return this.kindRegistry.ingest(e.issues.kindRegistry),this.providerRegistry.ingest(e.issues.providerRegistry),e.issues;let r=(await this.loadData()).issues;if(n.severity&&(r=r.filter(o=>o.severity===n.severity)),n.analyzerId&&(r=r.filter(o=>o.analyzerId===n.analyzerId)),n.node&&(r=r.filter(o=>o.nodeIds.includes(n.node))),n.nodes&&n.nodes.length>0){let o=new Set(n.nodes);r=r.filter(l=>l.nodeIds.some(u=>o.has(u)))}return this.kindRegistry.ingest(e.issues.kindRegistry),this.providerRegistry.ingest(e.issues.providerRegistry),{schemaVersion:"1",kind:"issues",items:r,filters:{severity:n.severity??null,analyzerId:n.analyzerId??null,node:n.node??null,nodes:n.nodes&&n.nodes.length>0?[...n.nodes]:null},counts:{total:r.length,returned:r.length},kindRegistry:e.issues.kindRegistry,providerRegistry:e.issues.providerRegistry}}async loadGraph(n="ascii"){if(n!=="ascii")throw new h("bad-query",D.errors.graphFormatNotInDemo(n));return(await this.loadMeta()).graph.ascii}async loadConfig(){let n=await this.loadMeta();return this.kindRegistry.ingest(n.config.kindRegistry),this.providerRegistry.ingest(n.config.providerRegistry),n.config.value}async listPlugins(){let n=await this.loadMeta();return this.kindRegistry.ingest(n.plugins.kindRegistry),this.providerRegistry.ingest(n.plugins.providerRegistry),n.plugins}async setFavorite(n){throw new h("demo-readonly","Favorites are not available in demo mode (static bundle is immutable).")}async unsetFavorite(n){throw new h("demo-readonly","Favorites are not available in demo mode (static bundle is immutable).")}async setPluginEnabled(n,e){throw new h("demo-readonly","Plugin toggles are not available in demo mode (static bundle is immutable).")}async setPluginExtensionEnabled(n,e,i){throw new h("demo-readonly","Plugin toggles are not available in demo mode (static bundle is immutable).")}async applyPluginChanges(n){throw new h("demo-readonly","Plugin toggles are not available in demo mode (static bundle is immutable).")}async runScan(){throw new h("demo-readonly","Manual scan is not available in demo mode (static bundle is immutable).")}async getPreferences(){return{updateCheck:{enabled:!0},telemetry:{errorsEnabled:!1,usageCliEnabled:!1,usageUiEnabled:!1,anonymousId:null,environment:"prod"}}}async setPreferences(n){throw new h("demo-readonly","Preference toggles are not available in demo mode (static bundle is immutable).")}async getProjectPreferences(){return{scan:{referencePaths:[]}}}async setProjectPreferences(n){throw new h("demo-readonly","Project preferences are not available in demo mode (static bundle is immutable).")}async getProjectIgnore(){return{patterns:[]}}async setProjectIgnore(n){throw new h("demo-readonly","Ignore patterns are not available in demo mode (static bundle is immutable).")}async getActiveProvider(){return{activeProvider:null,detected:[],source:"none"}}async setActiveProvider(n){throw new h("demo-readonly","Active provider lens is not available in demo mode (static bundle is immutable).")}async lookupContribution(){return null}async bumpSidecar(n,e={}){throw new h("demo-readonly","Sidecar bump is not available in demo mode (static bundle is immutable).")}async getUpdateStatus(){return{current:(await this.loadMeta()).health.implVersion,latest:null,isOutdated:!1,checkedAt:null,shownAt:null}}async getRegisteredAnnotations(){return[]}events(){return ye}loadMeta(){return this.metaPromise||(this.metaPromise=this.fetchJson(zt)),this.metaPromise}loadData(){return this.dataPromise||(this.dataPromise=this.fetchJson(Nt)),this.dataPromise}async fetchJson(n){let e;try{e=await this.fetchImpl(n)}catch(i){let r=i instanceof Error?i.message:String(i);throw new h("internal",D.errors.demoFetchFailed(n,r))}if(!e.ok)throw new h("internal",D.errors.demoFetchFailed(n,`HTTP ${e.status}`));try{return await e.json()}catch(i){let r=i instanceof Error?i.message:String(i);throw new h("internal",D.errors.demoParseFailed(n,r))}}};function Ft(t){return!(t.kind&&t.kind.length>0||t.hasIssues!==void 0||t.path||t.offset!==void 0&&t.offset!==0||t.limit!==void 0)}function jt(t){return!(t.kind&&t.kind.length>0||t.from||t.to)}function Ut(t){return!(t.severity||t.analyzerId||t.node||t.nodes&&t.nodes.length>0)}function lt(t){let n=new Set;for(let e of t)for(let i of e.nodeIds)n.add(i);return n}function Bt(t){let e=t.replace(/[.+^${}()|[\]\\]/g,"\\$&").replace(/\*/g,".*").replace(/\?/g,".");return new RegExp(`^${e}$`)}function dt(){let t=s(z);if(t==="live")return new at(s(Q),s(F));if(t==="demo")return new ge;let n=t;throw new Error(D.errors.unknownMode(String(n)))}var ct="search",pt="kinds",mt="linkKinds",gt="favoritesOnly",ut="severities",Vt=["error","warn"],ht=(()=>{class t{filters=s(We);router=s(Fe);activatedRoute=s(Ne);kindRegistry=s(U);destroyRef=s(Ce);suppressUrlReadback=!1;constructor(){this.applyUrlToFilters(this.currentParams()),this.router.events.pipe(Qe(this.destroyRef)).subscribe(e=>{if(e instanceof $e){if(this.suppressUrlReadback)return;this.applyUrlToFilters(this.currentParams())}}),te(()=>{let e=this.computeQueryParams();this.writeQueryParams(e)})}currentParams(){let e=this.router.parseUrl(this.router.url),i=new URLSearchParams;for(let[r,o]of Object.entries(e.queryParams))Array.isArray(o)?i.set(r,o.join(",")):o!=null&&i.set(r,String(o));return this.activatedRoute,i}applyUrlToFilters(e){let i=e.get(ct)??"";i!==this.filters.searchText()&&this.filters.setSearchText(i);let r=Jt(e.get(pt),this.kindRegistry.kinds().map(y=>y.name));ve(r,this.filters.selectedKinds())||this.filters.setKinds(r);let o=e.get(gt)==="true";o!==this.filters.favoritesOnly()&&this.filters.setFavoritesOnly(o);let l=Kt(e.get(mt));ve(l,this.filters.selectedLinkKinds())||this.filters.setLinkKinds(l);let u=Xt(e.get(ut)),M=[];this.filters.severityErrorActive()&&M.push("error"),this.filters.severityWarnActive()&&M.push("warn"),ve(u,M)||this.filters.setSeverityFilters(u)}computeQueryParams(){let e=this.filters.searchText().trim(),i=this.filters.selectedKinds(),r=this.filters.selectedLinkKinds(),o=this.filters.favoritesOnly(),l=[];return this.filters.severityErrorActive()&&l.push("error"),this.filters.severityWarnActive()&&l.push("warn"),{[ct]:e.length>0?e:null,[pt]:i.length>0?i.join(","):null,[mt]:r.length>0?r.join(","):null,[gt]:o?"true":null,[ut]:l.length>0?l.join(","):null}}writeQueryParams(e){let i=this.currentParams(),r=new Map(Object.entries(e)),o=!1;for(let[l,u]of r)if((i.get(l)??null)!==u){o=!0;break}o&&(this.suppressUrlReadback=!0,this.router.navigate([],{relativeTo:this.activatedRoute,queryParams:e,queryParamsHandling:"merge",replaceUrl:!0}).finally(()=>{setTimeout(()=>{this.suppressUrlReadback=!1},0)}))}static \u0275fac=function(i){return new(i||t)};static \u0275prov=E({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function Jt(t,n){if(!t)return[];let e=new Set(n);return t.split(",").map(i=>i.trim()).filter(i=>e.has(i))}function Kt(t){if(!t)return[];let n=new Set(He);return t.split(",").map(e=>e.trim()).filter(e=>n.has(e))}function Xt(t){if(!t)return[];let n=new Set(Vt);return t.split(",").map(e=>e.trim()).filter(e=>n.has(e))}function ve(t,n){if(t.length!==n.length)return!1;for(let e=0;e<t.length;e++)if(t[e]!==n[e])return!1;return!0}var ft={healthFailed:t=>`ProjectInfoService: /api/health probe failed (${t})`};var Y=(()=>{class t{dataSource=s(q);status=$(null);cwd=c(()=>this.status()?.cwd??null);implVersion=c(()=>this.status()?.implVersion??null);dev=c(()=>this.status()?.dev===!0);activeProviderState=$(null);activeProvider=c(()=>this.activeProviderState());async load(){try{let e=await this.dataSource.health();this.status.set(e)}catch(e){let i=e instanceof Error?e.message:String(e);console.warn(ft.healthFailed(i))}await this.reloadActiveProvider()}async reloadActiveProvider(){try{let e=await this.dataSource.getActiveProvider();this.activeProviderState.set(e.activeProvider)}catch{}}static \u0275fac=function(i){return new(i||t)};static \u0275prov=E({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var bt=(()=>{class t extends oe{title=s(Le);projectInfo=s(Y);constructor(){super(),te(()=>{let e=vt(this.projectInfo.cwd()),i=this.projectInfo.implVersion();this.title.setTitle(A.documentTitle(e,i))})}updateTitle(e){let i=vt(this.projectInfo.cwd()),r=this.projectInfo.implVersion();this.title.setTitle(A.documentTitle(i,r))}static \u0275fac=function(i){return new(i||t)};static \u0275prov=E({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function vt(t){if(!t)return null;let n=t.replace(/[\\/]+$/,"");if(!n||n===".")return null;let e=Math.max(n.lastIndexOf("/"),n.lastIndexOf("\\"));return(e>=0?n.slice(e+1):n)||null}var be=!1,_e=null;async function _t(t){if(be||he===""||!t.consentEnabled)return;let n=await import("./chunk-BV323KTK.js");n.init({dsn:he,release:t.release??void 0,environment:t.environment,integrations:e=>e.filter(i=>i.name!=="BrowserSession"),tracesSampleRate:0,sendDefaultPii:!1,allowUrls:[/^https?:\/\/(localhost|127\.0\.0\.1)(:\d+)?\//],beforeSend:e=>qe(e)}),_e=n,be=!0}function yt(t){!be||_e===null||_e.captureException(t)}var Ct=(()=>{class t{handleError(e){console.error(e),yt(e)}static \u0275fac=function(i){return new(i||t)};static \u0275prov=E({token:t,factory:t.\u0275fac})}return t})();function Ht(...t){for(let n of t)Promise.resolve(n.load())}var kt={providers:[xe(),{provide:ke,useClass:Ct},je(st,Ue()),{provide:oe,useClass:bt},Ae(De()),Ve({}),G(async()=>{let t=s(Be),[{default:n},{definePreset:e}]=await Promise.all([import("./chunk-43S72FTV.js"),import("./chunk-5ITZXW3A.js")]),i=e(n,{semantic:{primary:{50:"#F5F3FF",100:"#EDE9FE",200:"#DDD6FE",300:"#C4B5FD",400:"#A78BFA",500:"#8B5CF6",600:"#7C3AED",700:"#6D28D9",800:"#4C1D95",900:"#2E1065",950:"#1E0A4D"}}});t.setThemeConfig({theme:{preset:i,options:{darkModeSelector:".app-dark"}}})}),{provide:z,useFactory:Ye},{provide:q,useFactory:dt},G(async()=>{let t=s(q),n=s(ee);try{let[e,i]=await Promise.all([t.getPreferences(),t.health()]);await Promise.all([_t({consentEnabled:e.telemetry.errorsEnabled,release:i.implVersion?`skill-map-cli@${i.implVersion}`:null,environment:e.telemetry.environment}),et({consentEnabled:e.telemetry.usageUiEnabled,distinctId:e.telemetry.anonymousId})]),tt({environment:e.telemetry.environment}),n.syncTheme()}catch{}}),G(()=>{Ht(s(j),s(pe),s(Y))}),G(()=>{s(ht),s(Ge),s(ee)})]};var K={toggleToAuto:"Switch to auto theme (follow system)",toggleToLight:"Switch to light theme",toggleToDark:"Switch to dark theme",currentAuto:"Auto theme (follows system)",currentLight:"Light theme",currentDark:"Dark theme"};var xt={body:"You are viewing a static demo of skill-map's UI. Install it:",installCommand:"npm i -g @skill-map/cli",homeCta:"\u2190 Back to skill-map.ai",homeHref:"/",dismissAria:"Dismiss demo banner"};function Qt(t,n){if(t&1){let e=O();d(0,"div",0),x(1,"span",1),d(2,"p",2),g(3),d(4,"code",3),g(5),p()(),d(6,"a",4),g(7),p(),d(8,"p-button",5),S("onClick",function(){T(e);let r=f();return R(r.dismiss())}),p()()}if(t&2){let e=f();a(3),P(" ",e.texts.body," "),a(2),_(e.texts.installCommand),a(),b("href",e.texts.homeHref,ne),a(),_(e.texts.homeCta),a(),b("ariaLabel",e.texts.dismissAria)("text",!0)("rounded",!0)}}var Pt="sm.demoBannerDismissed",wt=(()=>{class t{mode=s(z);texts=xt;dismissed=$(this.readDismissed());visible=c(()=>this.mode==="demo"&&!this.dismissed());dismiss(){this.dismissed.set(!0);try{globalThis.localStorage?.setItem(Pt,"1")}catch{}}readDismissed(){if(this.mode!=="demo")return!0;try{return globalThis.localStorage?.getItem(Pt)==="1"}catch{return!1}}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=I({type:t,selectors:[["sm-demo-banner"]],decls:1,vars:1,consts:[["role","status","data-testid","demo-banner",1,"demo-banner"],["aria-hidden","true",1,"demo-banner__icon","fa-solid","fa-circle-info"],[1,"demo-banner__body"],["data-testid","demo-banner-install",1,"demo-banner__cmd"],["data-testid","demo-banner-home",1,"demo-banner__home",3,"href"],["icon","fa-solid fa-xmark","severity","secondary","size","small","data-testid","demo-banner-dismiss",3,"onClick","ariaLabel","text","rounded"]],template:function(i,r){i&1&&C(0,Qt,9,7,"div",0),i&2&&k(r.visible()?0:-1)},dependencies:[de,le],styles:["[_nghost-%COMP%]{display:block}.demo-banner[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;border-bottom:1px solid var(--p-content-border-color);background:var(--p-highlight-background);color:var(--p-text-color);font-size:.875rem}.demo-banner__icon[_ngcontent-%COMP%]{font-size:1.1rem;color:var(--p-primary-color)}.demo-banner__body[_ngcontent-%COMP%]{flex:1 1 auto;margin:0;line-height:1.4}.demo-banner__cmd[_ngcontent-%COMP%]{font-family:var(--sm-font-mono);background:var(--p-content-background);border:1px solid var(--p-content-border-color);border-radius:var(--sm-radius-md);padding:.05rem .4rem;font-size:.85em;margin-left:.25rem}.demo-banner__home[_ngcontent-%COMP%]{color:var(--p-primary-color);font-weight:500;text-decoration:none;white-space:nowrap}.demo-banner__home[_ngcontent-%COMP%]:hover, .demo-banner__home[_ngcontent-%COMP%]:focus-visible{text-decoration:underline}"],changeDetection:0})}return t})();var St={bodyAtLimit:(t,n)=>`Your graph has ${t} ${t===1?"node":"nodes"}, at the recommended limit of ${n}. Past this point the map gets hard to read and analyzer signal degrades.`,bodyOverLimit:(t,n,e)=>`Your graph has ${t} nodes, over the recommended limit of ${n} (currently allowed via --max-nodes ${e}). Past this point the map gets hard to read and analyzer signal degrades.`,bodyCapped:(t,n,e)=>`Scan capped at ${n} ${n===1?"node":"nodes"} (${e==="override"?"--max-nodes":"scan.maxNodes"}). The walker stopped at ${t} ${t===1?"file":"files"}, additional files were dropped. The map and analyzers only see what made it through.`,cta:"Edit .skillmapignore",ctaAria:"Open Settings to edit ignored patterns"};function Yt(t,n){if(t&1){let e=O();N(0,"div",0),Z(1,"span",1),N(2,"p",2),g(3),W(),N(4,"button",3),ie("click",function(){T(e);let r=f();return R(r.onCta())}),g(5),W()()}if(t&2){let e=f();v("data-mode",e.state().mode),a(3),P(" ",e.state().body," "),a(),v("aria-label",e.texts.ctaAria),a(),P(" ",e.texts.cta," ")}}var Mt=(()=>{class t{loader=s(j);texts=St;openSettings=re();state=c(()=>{let e=this.loader.scan();if(!e)return{mode:"hidden",body:""};let i=e.recommendedNodeLimit;if(i===void 0)return{mode:"hidden",body:""};let r=e.overrideMaxNodes??null,o=r??i,l=e.stats.filesWalked,u=e.stats.nodesCount;return l>o?{mode:"capped",body:this.texts.bodyCapped(l,o,r!==null?"override":"setting")}:u<i?{mode:"hidden",body:""}:r!==null&&u>i?{mode:"overLimit",body:this.texts.bodyOverLimit(u,i,r)}:{mode:"atLimit",body:this.texts.bodyAtLimit(u,i)}});visible=c(()=>this.state().mode!=="hidden");onCta(){this.openSettings.emit()}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=I({type:t,selectors:[["sm-oversized-banner"]],outputs:{openSettings:"openSettings"},decls:1,vars:1,consts:[["role","status","data-testid","oversized-banner",1,"oversized-banner"],["aria-hidden","true",1,"oversized-banner__icon","fa-solid","fa-triangle-exclamation"],["data-testid","oversized-banner-body",1,"oversized-banner__body"],["type","button","data-testid","oversized-banner-cta",1,"oversized-banner__cta",3,"click"]],template:function(i,r){i&1&&C(0,Yt,6,4,"div",0),i&2&&k(r.visible()?0:-1)},styles:["[_nghost-%COMP%]{display:block}.oversized-banner[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;border-bottom:1px solid var(--p-content-border-color);font-size:.875rem}.oversized-banner[data-mode=capped][_ngcontent-%COMP%]{background:var(--sm-severity-error-bg);color:var(--sm-severity-error)}.oversized-banner[data-mode=overLimit][_ngcontent-%COMP%], .oversized-banner[data-mode=atLimit][_ngcontent-%COMP%]{background:var(--sm-severity-warn-bg);color:var(--sm-severity-warn)}.oversized-banner__icon[_ngcontent-%COMP%]{font-size:1.1rem}.oversized-banner[data-mode=capped][_ngcontent-%COMP%] .oversized-banner__icon[_ngcontent-%COMP%]{color:var(--sm-severity-error)}.oversized-banner[data-mode=overLimit][_ngcontent-%COMP%] .oversized-banner__icon[_ngcontent-%COMP%], .oversized-banner[data-mode=atLimit][_ngcontent-%COMP%] .oversized-banner__icon[_ngcontent-%COMP%]{color:var(--sm-severity-warn)}.oversized-banner__body[_ngcontent-%COMP%]{flex:1 1 auto;margin:0;line-height:1.4}.oversized-banner__cta[_ngcontent-%COMP%]{flex:0 0 auto;background:transparent;color:inherit;border:1px solid currentColor;padding:.25rem .75rem;border-radius:var(--p-border-radius);font:inherit;font-size:.8125rem;font-weight:500;cursor:pointer;transition:background .15s ease}.oversized-banner__cta[_ngcontent-%COMP%]:hover, .oversized-banner__cta[_ngcontent-%COMP%]:focus-visible{background:color-mix(in srgb,currentColor 12%,transparent)}.oversized-banner__cta[_ngcontent-%COMP%]:focus-visible{outline:2px solid currentColor;outline-offset:2px}"],changeDetection:0})}return t})();var Tt={headline:t=>`${t} ${t===1?"file":"files"} skipped, ${t===1?"it exceeds":"they exceed"} the max file size.`,more:"...",seeConsole:"See the full list in the console.",cta:"Open Project settings",ctaAria:"Open Settings to adjust the max file size or ignore patterns"};function Zt(t,n){if(t&1&&(d(0,"span",4),g(1),p()),t&2){let e=f(2);b("pTooltip",e.state().tooltip),a(),_(e.texts.more)}}function qt(t,n){if(t&1){let e=O();d(0,"div",0),x(1,"span",1),d(2,"p",2),g(3),d(4,"span",3),g(5),p(),C(6,Zt,2,2,"span",4),p(),d(7,"button",5),S("click",function(){T(e);let r=f();return R(r.onCta())}),g(8),p()()}if(t&2){let e=f();a(3),P(" ",e.texts.headline(e.state().count)," "),a(2),P(" ",e.state().first," "),a(),k(e.state().hasMore?6:-1),a(),v("aria-label",e.texts.ctaAria),a(),P(" ",e.texts.cta," ")}}var en=5,Rt=(()=>{class t{loader=s(j);texts=Tt;openSettings=re();state=c(()=>{let e=this.loader.scan(),i=e?.oversizedFiles??[],r=e?.stats?.filesOversized??i.length;if(r<=0)return{visible:!1,count:0,first:"",hasMore:!1,tooltip:""};let o=i[0]?this.describe(i[0]):"",l=r>1,u="";if(l){let M=i.slice(1);r-1>en?u=this.texts.seeConsole:u=M.map(y=>this.describe(y)).join(`
4
+ `)}return{visible:!0,count:r,first:o,hasMore:l,tooltip:u}});visible=c(()=>this.state().visible);describe(e){return`${e.path.split("/").pop()??e.path} (${Xe(e.bytes)})`}onCta(){this.openSettings.emit()}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=I({type:t,selectors:[["sm-skipped-files-banner"]],outputs:{openSettings:"openSettings"},decls:1,vars:1,consts:[["role","status","data-testid","skipped-files-banner",1,"skipped-files-banner"],["aria-hidden","true",1,"skipped-files-banner__icon","fa-solid","fa-triangle-exclamation"],["data-testid","skipped-files-banner-body",1,"skipped-files-banner__body"],["data-testid","skipped-files-banner-first",1,"skipped-files-banner__first"],["data-testid","skipped-files-banner-more",1,"skipped-files-banner__more",3,"pTooltip"],["type","button","data-testid","skipped-files-banner-cta",1,"skipped-files-banner__cta",3,"click"]],template:function(i,r){i&1&&C(0,qt,9,5,"div",0),i&2&&k(r.visible()?0:-1)},dependencies:[ae,se],styles:["[_nghost-%COMP%]{display:block}.skipped-files-banner[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;border-bottom:1px solid var(--p-content-border-color);font-size:.875rem;background:var(--sm-severity-warn-bg);color:var(--sm-severity-warn)}.skipped-files-banner__icon[_ngcontent-%COMP%]{font-size:1.1rem;color:var(--sm-severity-warn)}.skipped-files-banner__body[_ngcontent-%COMP%]{flex:1 1 auto;margin:0;line-height:1.4}.skipped-files-banner__first[_ngcontent-%COMP%]{font-weight:600}.skipped-files-banner__more[_ngcontent-%COMP%]{font-weight:600;cursor:help}.skipped-files-banner__cta[_ngcontent-%COMP%]{flex:0 0 auto;background:transparent;color:inherit;border:1px solid currentColor;padding:.25rem .75rem;border-radius:var(--p-border-radius);font:inherit;font-size:.8125rem;font-weight:500;cursor:pointer;transition:background .15s ease}.skipped-files-banner__cta[_ngcontent-%COMP%]:hover, .skipped-files-banner__cta[_ngcontent-%COMP%]:focus-visible{background:color-mix(in srgb,currentColor 12%,transparent)}.skipped-files-banner__cta[_ngcontent-%COMP%]:focus-visible{outline:2px solid currentColor;outline-offset:2px}"],changeDetection:0})}return t})();var Ot={body:"Connection to the server was lost. Live updates are paused.",reconnectCta:"Reconnect",reconnectAria:"Retry the connection to the server"};function tn(t,n){if(t&1){let e=O();N(0,"div",0),Z(1,"span",1),N(2,"p",2),g(3),W(),N(4,"button",3),ie("click",function(){T(e);let r=f();return R(r.reconnect())}),Z(5,"span",4),g(6),W()()}if(t&2){let e=f();a(3),_(e.texts.body),a(),v("aria-label",e.texts.reconnectAria),a(2),P(" ",e.texts.reconnectCta," ")}}var Et=(()=>{class t{mode=s(z);ws=s(F);texts=Ot;visible=c(()=>this.mode==="live"&&this.ws.connectionState()==="lost");reconnect(){this.ws.reconnect()}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=I({type:t,selectors:[["sm-connection-banner"]],decls:1,vars:1,consts:[["role","alert","data-testid","connection-banner",1,"connection-banner"],["aria-hidden","true",1,"connection-banner__icon","fa-solid","fa-plug-circle-xmark"],[1,"connection-banner__body"],["type","button","data-testid","connection-banner-reconnect",1,"connection-banner__cta",3,"click"],["aria-hidden","true",1,"fa-solid","fa-rotate-right"]],template:function(i,r){i&1&&C(0,tn,7,3,"div",0),i&2&&k(r.visible()?0:-1)},styles:["[_nghost-%COMP%]{display:block}.connection-banner[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;border-bottom:1px solid var(--p-content-border-color);background:var(--sm-severity-error-bg);color:var(--sm-severity-error);font-size:.875rem}.connection-banner__icon[_ngcontent-%COMP%]{font-size:1.1rem;color:var(--sm-severity-error)}.connection-banner__body[_ngcontent-%COMP%]{flex:1 1 auto;margin:0;line-height:1.4}.connection-banner__cta[_ngcontent-%COMP%]{flex:0 0 auto;display:inline-flex;align-items:center;gap:.4rem;background:transparent;color:inherit;border:1px solid currentColor;padding:.25rem .75rem;border-radius:var(--p-border-radius);font:inherit;font-size:.8125rem;font-weight:500;cursor:pointer;transition:background .15s ease}.connection-banner__cta[_ngcontent-%COMP%]:hover, .connection-banner__cta[_ngcontent-%COMP%]:focus-visible{background:color-mix(in srgb,currentColor 12%,transparent)}.connection-banner__cta[_ngcontent-%COMP%]:focus-visible{outline:2px solid currentColor;outline-offset:2px}"],changeDetection:0})}return t})();var nn=()=>[import("./chunk-BO5IS3EQ.js").then(t=>t.SettingsModal)];function rn(t,n){if(t&1&&(d(0,"span",11),g(1),p()),t&2){let e=f();b("pTooltip",e.versionTooltip()),v("aria-label",e.texts.devChipA11y),a(),_(e.texts.devChip)}}function on(t,n){if(t&1&&(d(0,"span",12),g(1),p()),t&2){let e=f();b("pTooltip",e.versionTooltip()),v("aria-label",e.versionA11y()),a(),_(e.versionLabel())}}function sn(t,n){if(t&1&&(d(0,"span",24),g(1),p()),t&2){let e=n,i=f();Me("--provider-color",e.color)("--provider-color-dark",e.colorDark??e.color),b("pTooltip",i.texts.lensChipTooltip(e.label)),v("aria-label",i.texts.lensChipA11y(e.label)),a(),_(e.label)}}function an(t,n){if(t&1){let e=O();d(0,"button",25),S("click",function(){T(e);let r=f();return R(r.copyUpdateCommand())}),x(1,"i",26),d(2,"span"),g(3),p()(),d(4,"a",27),x(5,"i",28),p()}if(t&2){let e=f();b("pTooltip",e.updateChipTooltip()),v("aria-label",e.updateChipA11y()),a(),Te(e.updateChipIcon()),a(2),_(e.updateChipText()),a(),b("href",e.npmLinkUrl,ne)("pTooltip",e.npmLinkTooltip),v("aria-label",e.npmLinkA11y)}}function ln(t,n){if(t&1&&(d(0,"p",15)(1,"bdi",29),g(2),p()()),t&2){let e=n;v("title",e),a(2),_(e)}}function dn(t,n){if(t&1){let e=O();d(0,"sm-settings-modal",30),S("visibleChange",function(r){T(e);let o=f();return R(o.onSettingsVisibleChange(r))}),p()}if(t&2){let e=f();b("visible",e.settingsOpen())}}var It=(()=>{class t{loader=s(j);theme=s(nt);projectInfo=s(Y);providerRegistry=s(B);scanTrigger=s(ot);usageTracker=s(ee);updateCheck=s(pe);texts=A;settingsTexts=rt;settingsOpen=$(!1);openSettings(){this.settingsOpen.set(!0),this.usageTracker.trackFeature("settings")}onSettingsVisibleChange(e){this.settingsOpen.set(e),e||this.projectInfo.reloadActiveProvider()}scanning=this.scanTrigger.scanning;scanError=this.scanTrigger.scanError;triggerScan(){return this.scanTrigger.run()}updateChipCopied=$(!1);updateChipText=c(()=>this.updateChipCopied()?w.copiedLabel:w.available);updateChipIcon=c(()=>this.updateChipCopied()?"pi pi-check":"pi pi-download");updateChipTooltip=c(()=>this.updateChipCopied()?w.copiedTooltip:w.tooltip(this.updateCheck.latest()??""));updateChipA11y=c(()=>w.a11yLabel(this.updateCheck.latest()??""));npmLinkUrl=w.npmLinkUrl;npmLinkTooltip=w.npmLinkTooltip;npmLinkA11y=w.npmLinkA11y;async copyUpdateCommand(){try{await navigator.clipboard.writeText(w.copyCommand),this.updateChipCopied.set(!0),setTimeout(()=>this.updateChipCopied.set(!1),2e3)}catch{}}versionLabel=c(()=>w.versionLabel(this.updateCheck.current()??""));versionTooltip=c(()=>w.versionTooltip(this.updateCheck.current()??""));versionA11y=c(()=>w.versionA11yLabel(this.updateCheck.current()??""));isDevBuild=this.projectInfo.dev;lensChip=c(()=>this.providerRegistry.lensChip(this.projectInfo.activeProvider()));count=this.loader.count;linkAnalysis=c(()=>it(this.loader.nodes(),this.loader.scan()));linkCount=c(()=>this.linkAnalysis().raw);mapInfoTooltip=c(()=>A.badge.mapInfo(this.count(),this.linkAnalysis()));mapInfoA11y=c(()=>A.badge.mapInfoA11y(this.count(),this.linkAnalysis()));rootLabel=c(()=>{let e=this.projectInfo.cwd();if(e&&e!==".")return e;let i=this.loader.scan()?.roots??[];if(i.length===0)return"";let r=i[0].replace(/[\\/]+$/,"");return!r||r==="."?"":r});isDevMode=Re();themeMode=this.theme.mode;markSrc=c(()=>this.theme.extraTheme()==="matrix"?"skill-map-mark-matrix.svg":this.theme.resolved()==="dark"?"skill-map-mark-light.svg":"skill-map-mark-dark.svg");themeIcon=c(()=>{switch(this.themeMode()){case"auto":return"pi pi-desktop";case"light":return"pi pi-sun";case"dark":return"fa-regular fa-moon"}});themeLabel=c(()=>{switch(this.themeMode()){case"auto":return K.toggleToLight;case"light":return K.toggleToDark;case"dark":return K.toggleToAuto}});themeTooltip=c(()=>{switch(this.themeMode()){case"auto":return K.currentAuto;case"light":return K.currentLight;case"dark":return K.currentDark}});toggleTheme(){this.theme.toggle()}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=I({type:t,selectors:[["sm-root"]],decls:39,vars:30,consts:[["role","alert","data-testid","viewport-warning",1,"viewport-warning"],[1,"viewport-warning__card"],["aria-hidden","true",1,"fa-solid","fa-desktop","viewport-warning__icon"],[1,"viewport-warning__title"],[1,"viewport-warning__subtitle"],[1,"viewport-warning__body"],["data-testid","shell",1,"shell"],[3,"openSettings"],["data-testid","shell-topbar",1,"shell__topbar"],[1,"shell__brand"],["width","32","height","32","priority","","alt","","aria-hidden","true",1,"shell__brand-mark",3,"ngSrc"],["tooltipPosition","bottom","data-testid","shell-dev",1,"shell__dev",3,"pTooltip"],["tooltipPosition","bottom","data-testid","shell-version",1,"shell__version",3,"pTooltip"],["tooltipPosition","bottom","data-testid","shell-lens",1,"shell__lens",3,"--provider-color","--provider-color-dark","pTooltip"],[1,"shell__alpha"],["data-testid","shell-root-label",1,"shell__tag"],["data-testid","shell-nav",1,"shell__nav"],["slot","topbar.nav.start",3,"node"],[1,"shell__actions"],["type","button","tooltipPosition","bottom","data-testid","shell-refresh",1,"shell__refresh",3,"click","pTooltip","disabled"],["aria-hidden","true",1,"pi","pi-sync"],["severity","secondary","size","small","data-testid","action-theme-toggle",3,"onClick","icon","ariaLabel","pTooltip","text","rounded"],["icon","pi pi-sliders-h","severity","secondary","size","small","data-testid","action-settings",3,"onClick","ariaLabel","pTooltip","text","rounded"],[1,"shell__main"],["tooltipPosition","bottom","data-testid","shell-lens",1,"shell__lens",3,"pTooltip"],["type","button","tooltipPosition","bottom","data-testid","shell-update-chip",1,"shell__update-chip",3,"click","pTooltip"],["aria-hidden","true"],["target","_blank","rel","noopener noreferrer","tooltipPosition","bottom","data-testid","shell-update-npm-link",1,"shell__update-npm-link",3,"href","pTooltip"],["aria-hidden","true",1,"pi","pi-external-link"],["dir","ltr"],[3,"visibleChange","visible"]],template:function(i,r){if(i&1&&(d(0,"div",0)(1,"div",1),x(2,"i",2),d(3,"h2",3),g(4),p(),d(5,"p",4),g(6),p(),d(7,"p",5),g(8),p()()(),d(9,"div",6),x(10,"sm-demo-banner"),d(11,"sm-oversized-banner",7),S("openSettings",function(){return r.openSettings()}),p(),d(12,"sm-skipped-files-banner",7),S("openSettings",function(){return r.openSettings()}),p(),x(13,"sm-connection-banner"),d(14,"header",8)(15,"div",9),x(16,"img",10),d(17,"div")(18,"h1"),g(19),C(20,rn,2,3,"span",11)(21,on,2,3,"span",12),C(22,sn,2,7,"span",13),d(23,"span",14),g(24),p(),C(25,an,6,8),p(),C(26,ln,3,2,"p",15),p()(),d(27,"nav",16),x(28,"sm-view-contributions-host",17),p(),d(29,"div",18)(30,"button",19),S("click",function(){return r.triggerScan()}),x(31,"i",20),p(),d(32,"p-button",21),S("onClick",function(){return r.toggleTheme()}),p(),d(33,"p-button",22),S("onClick",function(){return r.openSettings()}),p()()(),d(34,"main",23),x(35,"router-outlet"),p(),Pe(36,dn,1,1),we(37,36,nn),p()),i&2){let o,l,u;a(4),_(r.texts.viewportWarning.title),a(2),_(r.texts.viewportWarning.subtitle),a(2),_(r.texts.viewportWarning.body),a(8),b("ngSrc",r.markSrc()),a(3),P(" ",r.texts.brand," "),a(),k(r.isDevBuild()?20:(o=r.updateCheck.current())?21:-1,o),a(2),k((l=r.lensChip())?22:-1,l),a(),v("aria-label",r.texts.alpha),a(),_(r.texts.alpha),a(),k(r.updateCheck.isOutdated()&&!r.isDevMode?25:-1),a(),k((u=r.rootLabel())?26:-1,u),a(),v("aria-label",r.texts.a11y.viewSwitcher),a(),b("node",null),a(2),ue("is-spinning",r.scanning()),b("pTooltip",r.mapInfoTooltip())("disabled",r.scanning()),v("aria-label",r.mapInfoA11y()),a(),ue("pi-spin",r.scanning()),a(),b("icon",r.themeIcon())("ariaLabel",r.themeLabel())("pTooltip",r.themeTooltip())("text",!0)("rounded",!0),a(),b("ariaLabel",r.settingsTexts.a11y.triggerLabel)("pTooltip",r.settingsTexts.triggerTooltip)("text",!0)("rounded",!0),a(4),Se(r.settingsOpen())}},dependencies:[ze,de,le,Ke,ae,se,Je,Oe,wt,Mt,Rt,Et,Ze],styles:['[_nghost-%COMP%]{display:block;height:100dvh;--shell-topbar-bg: #FFFFFF;--shell-topbar-border: var(--sm-violet-100);--shell-topbar-text: var(--sm-violet-800);--shell-topbar-text-strong: var(--sm-violet-900);--shell-topbar-text-muted: var(--sm-violet-600);--shell-topbar-hover-bg: color-mix(in srgb, var(--sm-violet-500) 10%, transparent);--shell-topbar-active-bg: var(--sm-violet-100);--shell-topbar-active-text: var(--sm-violet-800);--shell-topbar-badge-bg: var(--sm-violet-100)}.app-dark[_nghost-%COMP%], .app-dark [_nghost-%COMP%]{--shell-topbar-bg: #1A1B22;--shell-topbar-border: color-mix(in srgb, var(--sm-violet-300) 8%, transparent);--shell-topbar-text: var(--sm-violet-100);--shell-topbar-text-strong: var(--sm-violet-100);--shell-topbar-text-muted: var(--sm-violet-300);--shell-topbar-hover-bg: color-mix(in srgb, var(--sm-violet-400) 12%, transparent);--shell-topbar-active-bg: color-mix(in srgb, var(--sm-violet-500) 22%, transparent);--shell-topbar-active-text: var(--sm-violet-100);--shell-topbar-badge-bg: color-mix(in srgb, var(--sm-violet-500) 14%, transparent)}.shell[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100dvh}.shell__topbar[_ngcontent-%COMP%]{display:flex;align-items:center;gap:1rem;padding:.75rem 1.5rem;background:color-mix(in srgb,var(--shell-topbar-bg) 85%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--shell-topbar-border);color:var(--shell-topbar-text)}.shell__brand[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.75rem}.shell__brand-mark[_ngcontent-%COMP%]{width:2rem;height:2rem;display:block}.shell__brand[_ngcontent-%COMP%] h1[_ngcontent-%COMP%]{margin:0;font-size:1.05rem;font-weight:600;letter-spacing:-.01em;color:var(--shell-topbar-text-strong)}.shell__alpha[_ngcontent-%COMP%]{font-family:var(--sm-font-display-brand);font-weight:600;font-size:10px;line-height:1;letter-spacing:.06em;text-transform:uppercase;color:#ad322b;background:#ad322b14;border-radius:var(--sm-radius-sm);padding:4px 8px;margin-left:8px;-webkit-user-select:none;user-select:none;display:inline-block;vertical-align:middle;white-space:nowrap}.app-dark[_nghost-%COMP%] .shell__alpha[_ngcontent-%COMP%], .app-dark [_nghost-%COMP%] .shell__alpha[_ngcontent-%COMP%]{color:#e07570;background:#cf464024}.shell__version[_ngcontent-%COMP%]{display:inline-block;margin-left:6px;padding:2px 6px;border-radius:var(--sm-radius-sm);font-family:var(--p-monospace-font-family);font-size:11px;line-height:1;font-weight:500;letter-spacing:.02em;color:var(--p-text-muted-color);background:var(--p-content-hover-background);vertical-align:middle;-webkit-user-select:text;user-select:text}.shell__dev[_ngcontent-%COMP%]{display:inline-block;margin-left:6px;padding:2px 8px;border-radius:var(--sm-radius-sm);font-family:var(--sm-font-display-brand);font-size:10px;line-height:1;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#8a5a00;background:#d69e2e29;vertical-align:middle;-webkit-user-select:none;user-select:none}.app-dark[_nghost-%COMP%] .shell__dev[_ngcontent-%COMP%], .app-dark [_nghost-%COMP%] .shell__dev[_ngcontent-%COMP%]{color:#fbd38d;background:#d69e2e38}.shell__lens[_ngcontent-%COMP%]{display:inline-block;margin-left:6px;padding:2px 8px;border-radius:var(--sm-radius-sm);font-size:11px;line-height:1;font-weight:600;letter-spacing:.02em;color:var(--provider-color);background:color-mix(in srgb,var(--provider-color) 14%,transparent);vertical-align:middle;-webkit-user-select:none;user-select:none}.app-dark[_nghost-%COMP%] .shell__lens[_ngcontent-%COMP%], .app-dark [_nghost-%COMP%] .shell__lens[_ngcontent-%COMP%]{color:var(--provider-color-dark);background:color-mix(in srgb,var(--provider-color-dark) 24%,transparent)}.shell__update-chip[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:4px;margin-left:8px;padding:3px 8px;font-family:inherit;font-size:11px;line-height:1;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--p-primary-color);background:var(--p-primary-50);border:1px solid var(--p-primary-200);border-radius:var(--sm-radius-pill);text-decoration:none;cursor:pointer;transition:background-color .12s ease,color .12s ease;vertical-align:middle}.shell__update-chip[_ngcontent-%COMP%]:hover, .shell__update-chip[_ngcontent-%COMP%]:focus-visible{background:var(--p-primary-100);color:var(--p-primary-700)}.shell__update-chip[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:12px;transform:translateY(1px)}.app-dark[_nghost-%COMP%] .shell__update-chip[_ngcontent-%COMP%], .app-dark [_nghost-%COMP%] .shell__update-chip[_ngcontent-%COMP%]{color:var(--p-primary-300);background:#ffffff0a;border-color:var(--p-primary-700)}.shell__update-npm-link[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;margin-left:4px;padding:3px 4px;color:var(--p-primary-color);text-decoration:none;border-radius:var(--sm-radius-pill);transition:color .12s ease,background-color .12s ease;vertical-align:middle}.shell__update-npm-link[_ngcontent-%COMP%]:hover, .shell__update-npm-link[_ngcontent-%COMP%]:focus-visible{color:var(--p-primary-700);background:var(--p-primary-50)}.shell__update-npm-link[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:12px;transform:translateY(1px)}.app-dark[_nghost-%COMP%] .shell__update-npm-link[_ngcontent-%COMP%], .app-dark [_nghost-%COMP%] .shell__update-npm-link[_ngcontent-%COMP%]{color:var(--p-primary-300)}.app-dark[_nghost-%COMP%] .shell__update-npm-link[_ngcontent-%COMP%]:hover, .app-dark [_nghost-%COMP%] .shell__update-npm-link[_ngcontent-%COMP%]:hover, .app-dark[_nghost-%COMP%] .shell__update-npm-link[_ngcontent-%COMP%]:focus-visible, .app-dark [_nghost-%COMP%] .shell__update-npm-link[_ngcontent-%COMP%]:focus-visible{color:var(--p-primary-200);background:#ffffff0a}.shell__tag[_ngcontent-%COMP%]{margin:.35rem 0 0;font-size:.72rem;color:var(--shell-topbar-text-muted);letter-spacing:.02em;text-transform:uppercase;max-width:40rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;direction:rtl}.shell__nav[_ngcontent-%COMP%]{display:flex;gap:.25rem;margin-left:auto}.shell__nav[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{padding:.5rem .9rem;border-radius:.5rem;font-size:.9rem;font-weight:500;color:var(--shell-topbar-text-muted);transition:background .15s ease,color .15s ease}.shell__nav[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:hover{background:var(--shell-topbar-hover-bg);color:var(--shell-topbar-text-strong)}.shell__nav[_ngcontent-%COMP%] a.is-active[_ngcontent-%COMP%]{background:var(--shell-topbar-active-bg);color:var(--shell-topbar-active-text)}.shell__search[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:.25rem;position:relative}.shell__nav-search[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;padding:0;border:none;border-radius:.5rem;background:transparent;color:var(--shell-topbar-text-muted);cursor:pointer;transition:background .15s ease,color .15s ease,opacity .15s ease}.shell__nav-search[_ngcontent-%COMP%]:hover{background:var(--shell-topbar-hover-bg);color:var(--shell-topbar-text-strong)}.shell__search.is-open[_ngcontent-%COMP%] .shell__nav-search[_ngcontent-%COMP%]{color:var(--shell-topbar-text-strong)}.shell__nav-search[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:.95rem}.shell__search.has-query[_ngcontent-%COMP%]:not(.is-open) .shell__nav-search[_ngcontent-%COMP%]{position:relative;color:var(--shell-topbar-text-strong)}.shell__search.has-query[_ngcontent-%COMP%]:not(.is-open) .shell__nav-search[_ngcontent-%COMP%]:after{content:"";position:absolute;top:.45rem;right:.45rem;width:6px;height:6px;border-radius:50%;background:var(--p-primary-color)}.shell__search-input[_ngcontent-%COMP%]{width:240px;height:2.25rem}.shell__search-clear[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;width:1.6rem;height:1.6rem;padding:0;border:none;border-radius:50%;background:transparent;color:var(--shell-topbar-text-muted);cursor:pointer;line-height:1}.shell__search-clear[_ngcontent-%COMP%]:hover{background:var(--shell-topbar-hover-bg);color:var(--shell-topbar-text-strong)}.shell__search-clear[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:.7rem}.shell__actions[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.75rem;--p-button-text-secondary-color: var(--shell-topbar-text-muted);--p-button-text-secondary-hover-color: var(--shell-topbar-text-strong);--p-button-text-secondary-hover-background: var(--shell-topbar-hover-bg);--p-button-text-secondary-active-color: var(--shell-topbar-text-strong);--p-button-text-secondary-active-background: var(--shell-topbar-hover-bg)}.shell__refresh[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:none;border-radius:var(--sm-radius-pill);background:transparent;color:var(--shell-topbar-text-muted);cursor:pointer;transition:background .15s ease,color .15s ease}.shell__refresh[_ngcontent-%COMP%]:hover:not(:disabled), .shell__refresh[_ngcontent-%COMP%]:focus-visible:not(:disabled){background:var(--shell-topbar-hover-bg);color:var(--shell-topbar-text-strong);outline:none}.shell__refresh[_ngcontent-%COMP%]:disabled{cursor:progress;opacity:.7}.shell__refresh[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:1rem}.shell__main[_ngcontent-%COMP%]{flex:1;min-height:0;overflow-y:auto;width:100%}@media(max-width:1280px){.shell__topbar[_ngcontent-%COMP%]{gap:1rem;padding:.5rem 1rem}.shell__tag[_ngcontent-%COMP%]{max-width:26rem}.shell__nav[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{padding:.4rem .7rem;font-size:.85rem}}.viewport-warning[_ngcontent-%COMP%]{display:none}@media(max-width:767px){.viewport-warning[_ngcontent-%COMP%]{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:var(--sm-bg-content)}.viewport-warning__card[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.85rem;max-width:22rem}.viewport-warning__icon[_ngcontent-%COMP%]{font-size:3rem;color:var(--p-primary-color);margin-bottom:.25rem}.viewport-warning__title[_ngcontent-%COMP%]{margin:0;font-size:1.35rem;font-weight:700;color:var(--p-text-color);line-height:1.25}.viewport-warning__subtitle[_ngcontent-%COMP%]{margin:0;font-size:1rem;font-weight:500;color:var(--p-primary-color);line-height:1.35}.viewport-warning__body[_ngcontent-%COMP%]{margin:0;color:var(--p-text-muted-color);line-height:1.5;font-size:.9rem}.shell[_ngcontent-%COMP%]{display:none}}'],changeDetection:0})}return t})();Ee(It,kt).catch(t=>console.error(t));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skill-map/cli",
3
- "version": "0.49.0",
3
+ "version": "0.50.0",
4
4
  "description": "skill-map reference implementation — kernel + CLI + adapters.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -61,7 +61,7 @@
61
61
  "smol-toml": "1.6.1",
62
62
  "typanion": "3.14.0",
63
63
  "ws": "8.21.0",
64
- "@skill-map/spec": "0.45.0"
64
+ "@skill-map/spec": "0.45.1"
65
65
  },
66
66
  "devDependencies": {
67
67
  "@eslint/js": "10.0.1",
@@ -1 +0,0 @@
1
- import{K as Y,L as X,T as _t,ca as $e,da as yt,fa as xt}from"./chunk-7EVKMO5A.js";import{b as ht,i as Ce}from"./chunk-OUNBYGMY.js";import{e as vt}from"./chunk-FDJ5FDGM.js";import{$ as st,Cb as dt,Fb as ut,Ib as pt,Ja as f,Jb as y,K as Z,N as it,P as q,Ub as ft,V as ot,Vb as ee,W as rt,Xb as Ae,Ya as A,Yb as C,Zb as k,_ as at,_b as we,bb as lt,ga as K,ia as be,ic as mt,jc as gt,kb as S,nb as N,ob as E,pb as ct,rb as H,sb as G,tb as F,tc as g,ub as D,vb as P,wb as se,xb as T,xc as O,yb as M,zb as ce}from"./chunk-NV5DRQPL.js";import{d as nt}from"./chunk-WCABR6TI.js";var Mn=new Set(["stale-body","stale-frontmatter","stale-both"]);function Te(e){return e?Mn.has(e.status??null):!1}function ge(e){let n=e.metadata;return n&&typeof n=="object"&&!Array.isArray(n)?n:null}function Ji(e){if(!e)return null;let n=e.sidecar?.annotations;if(n&&typeof n.version=="number")return`v${n.version}`;let t=ge(e.frontmatter)?.version;return typeof t=="string"&&t.length>0?`v${t}`:null}function Le(e){if(!e)return null;let t=e.sidecar?.annotations?.stability;if(t==="stable"||t==="experimental"||t==="deprecated")return t;let i=ge(e.frontmatter)?.stability;return i==="stable"||i==="experimental"||i==="deprecated"?i:null}function Zi(e){if(!e)return[];let n=e.frontmatter,t=[];if(e.kind==="agent"&&Array.isArray(n.tools))for(let i of n.tools)typeof i=="string"&&i.length>0&&t.push(i);if(e.kind==="skill"||e.kind==="command"){let i=n["allowed-tools"];if(Array.isArray(i))for(let o of i)typeof o=="string"&&o.length>0&&t.push(o);else typeof i=="string"&&i.length>0&&t.push(i)}return t}function eo(e){return Te(e?.sidecar)}function bt(e){if(!e)return null;let t=e.sidecar?.annotations?.supersededBy;if(typeof t=="string"&&t.length>0)return t;let i=ge(e.frontmatter)?.supersededBy;return typeof i=="string"&&i.length>0?i:null}function wt(e){if(!e)return[];let t=e.sidecar?.annotations?.tags;if(Array.isArray(t))return t.filter(o=>typeof o=="string"&&o.length>0);let i=ge(e.frontmatter)?.tags;return Array.isArray(i)?i.filter(o=>typeof o=="string"&&o.length>0):[]}function to(e,n){switch(e?.sidecar?.status){case"stale-body":return n.staleBody;case"stale-frontmatter":return n.staleFrontmatter;case"stale-both":return n.staleBoth;default:return""}}function no(e){return e<1e3?`${e}`:e<1e4?`${(e/1e3).toFixed(1).replace(/\.0$/,"")}k`:`${Math.round(e/1e3)}k`}function io(e){let n=new Date(e);if(isNaN(n.getTime()))return e;let t=Date.now()-n.getTime(),i=Math.floor(t/1e3);if(i<60)return"just now";let o=Math.floor(i/60);if(o<60)return`${o} minute${o===1?"":"s"} ago`;let r=Math.floor(o/60);if(r<24)return`${r} hour${r===1?"":"s"} ago`;let s=Math.floor(r/24);if(s<30)return`${s} day${s===1?"":"s"} ago`;let a=Math.floor(s/30);if(a<12)return`${a} month${a===1?"":"s"} ago`;let c=Math.floor(s/365);return`${c} year${c===1?"":"s"} ago`}var co=["stable","experimental","deprecated"],Ct=["invokes","references","mentions","supersedes"],uo=(()=>{class e{_searchText=K("");_selectedKinds=K([]);_kindToggleExplicitEmpty=K(!1);_selectedStabilities=K([]);_hasIssuesOnly=K(!1);_staleOnly=K(!1);_favoritesOnly=K(!1);_selectedLinkKinds=K([]);_severityErrorActive=K(!1);_severityWarnActive=K(!1);searchText=this._searchText.asReadonly();selectedKinds=this._selectedKinds.asReadonly();selectedStabilities=this._selectedStabilities.asReadonly();hasIssuesOnly=this._hasIssuesOnly.asReadonly();staleOnly=this._staleOnly.asReadonly();favoritesOnly=this._favoritesOnly.asReadonly();selectedLinkKinds=this._selectedLinkKinds.asReadonly();severityErrorActive=this._severityErrorActive.asReadonly();severityWarnActive=this._severityWarnActive.asReadonly();kindToggleExplicitEmpty=this._kindToggleExplicitEmpty.asReadonly();isActive=g(()=>this._searchText().trim().length>0||this._selectedKinds().length>0||this._kindToggleExplicitEmpty()||this._selectedStabilities().length>0||this._hasIssuesOnly()||this._staleOnly()||this._favoritesOnly()||this._selectedLinkKinds().length>0||this._severityErrorActive()||this._severityWarnActive());setSearchText(t){this._searchText.set(t)}setKinds(t){this._kindToggleExplicitEmpty.set(!1),this._selectedKinds.set([...t])}toggleKind(t,i){let o=this._selectedKinds(),r=i,a=this._kindToggleExplicitEmpty()?new Set:o.length===0?new Set(r):new Set(o);a.has(t)?a.delete(t):a.add(t),a.size===r.length?(this._selectedKinds.set([]),this._kindToggleExplicitEmpty.set(!1)):a.size===0?(this._selectedKinds.set([]),this._kindToggleExplicitEmpty.set(!0)):(this._selectedKinds.set([...a]),this._kindToggleExplicitEmpty.set(!1))}isKindActive(t){if(this._kindToggleExplicitEmpty())return!1;let i=this._selectedKinds();return i.length===0?!0:i.includes(t)}setStabilities(t){this._selectedStabilities.set([...t])}setHasIssuesOnly(t){this._hasIssuesOnly.set(t)}setStaleOnly(t){this._staleOnly.set(t)}setFavoritesOnly(t){this._favoritesOnly.set(t)}setLinkKinds(t){this._selectedLinkKinds.set([...t])}toggleLinkKind(t){let i=this._selectedLinkKinds(),o=i.length===0?new Set(Ct):new Set(i);o.has(t)?o.delete(t):o.add(t),o.size===Ct.length?this._selectedLinkKinds.set([]):this._selectedLinkKinds.set([...o])}isLinkKindActive(t){let i=this._selectedLinkKinds();return i.length===0?!0:i.includes(t)}toggleSeverity(t){t==="error"?this._severityErrorActive.set(!this._severityErrorActive()):this._severityWarnActive.set(!this._severityWarnActive())}isSeverityActive(t){return t==="error"?this._severityErrorActive():this._severityWarnActive()}setSeverityFilters(t){let i=new Set(t);this._severityErrorActive.set(i.has("error")),this._severityWarnActive.set(i.has("warn"))}reset(){this._searchText.set(""),this._selectedKinds.set([]),this._kindToggleExplicitEmpty.set(!1),this._selectedStabilities.set([]),this._hasIssuesOnly.set(!1),this._staleOnly.set(!1),this._favoritesOnly.set(!1),this._selectedLinkKinds.set([]),this._severityErrorActive.set(!1),this._severityWarnActive.set(!1)}apply(t,i){let o=this.searchText().trim().toLowerCase(),r=this.selectedKinds(),s=this._kindToggleExplicitEmpty(),a=this.selectedStabilities(),c=this.hasIssuesOnly(),l=this.staleOnly(),m=this.favoritesOnly(),_=this._severityErrorActive(),h=this._severityWarnActive(),u=(_||h)&&i!==void 0;return t.filter(x=>{if(o){let p=wt(x).join(" ");if(![x.path,x.frontmatter.name??"",x.frontmatter.description??"",p].join(" ").toLowerCase().includes(o))return!1}if(s||r.length>0&&!r.includes(x.kind))return!1;if(a.length>0){let p=Le(x);if(!p||!a.includes(p))return!1}return!(c&&!kn(x,i)||l&&!Te(x.sidecar)||m&&x.isFavorite!==!0||u&&(_&&!i.errors.has(x.path)||h&&!i.warns.has(x.path)))})}static \u0275fac=function(i){return new(i||e)};static \u0275prov=Z({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();function kn(e,n){return!!(Le(e)==="deprecated"||bt(e)!==null||n&&(n.errors.has(e.path)||n.warns.has(e.path)))}var Nn=(()=>{class e{router=q(Ce);open(t){this.router.navigate(["/"],{queryParams:{path:t}})}static \u0275fac=function(i){return new(i||e)};static \u0275prov=Z({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})(),Tt=new it("NODE_OPEN_INTENT",{providedIn:"root",factory:()=>q(Nn)});var Me="sm-debug-slots",En="debug-slots",In="is-debug-slots",Mt=(()=>{class e{visible=K(!1);constructor(){this.visible.set(this.resolveInitial()),be(()=>{let t=this.visible();document.documentElement.classList.toggle(In,t)})}toggle(){let t=!this.visible();this.visible.set(t);try{localStorage.setItem(Me,t?"1":"0")}catch{}}resolveInitial(){let i=new URLSearchParams(window.location.search).get(En);if(i==="1"||i==="true"){try{localStorage.setItem(Me,"1")}catch{}return!0}if(i==="0"||i==="false"){try{localStorage.setItem(Me,"0")}catch{}return!1}try{return localStorage.getItem(Me)==="1"}catch{return!1}}static \u0275fac=function(i){return new(i||e)};static \u0275prov=Z({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();var kt=(()=>{class e{registry=K({});setRegistry(t){t&&this.registry.set(t)}get(t){return this.registry()[t]}all(){return this.registry()}static \u0275fac=function(i){return new(i||e)};static \u0275prov=Z({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();function Q(e){return typeof e=="object"&&e!==null}function oe(e,n){return Q(e)&&Array.isArray(e[n])}function ke(e,n){return Q(e)&&typeof e[n]=="string"}var V={panelHeader:"Plugin contributions",panelCount:e=>`${e} contribution${e===1?"":"s"}`,emptyDefault:"No contributions for this node.",rendererInvalid:"Contribution data failed schema validation.",rendererUnknownSlot:e=>`Unknown slot: ${e}. Update the UI to a newer catalog version.`,overflowBadge:e=>`+${e}`,overflowTooltip:e=>`Hidden: ${e}`,recordsCell:{boolTrue:"yes",boolFalse:"no"}};var Sn=(e,n)=>n.label;function On(e,n){if(e&1&&(T(0,"h5",1),C(1),M()),e&2){let t=y();f(),k(t.label())}}function Dn(e,n){if(e&1&&(T(0,"p",2),C(1),M()),e&2){let t=y();f(),k(t.emptyText())}}function Pn(e,n){if(e&1&&(T(0,"li",4)(1,"span",5),C(2),M(),T(3,"span",6),ce(4,"span",7),M(),T(5,"span",8),C(6),M()()),e&2){let t=n.$implicit,i=y(2);S("title",t.tooltip??""),f(2),k(t.label),f(2),ft("width",i.percent(t.value),"%"),f(2),k(t.value)}}function An(e,n){if(e&1&&(T(0,"ul",3),H(1,Pn,7,5,"li",4,Sn),M()),e&2){let t=y();f(),G(t.entries())}}var Nt=(()=>{class e{inputs=O.required();typed=g(()=>{let t=this.inputs().payload;return Q(t)?oe(t,"entries")?t:{entries:[]}:{entries:[]}});entries=g(()=>this.typed().entries??[]);label=g(()=>this.inputs().label);emptyText=g(()=>this.inputs().emptyText??V.emptyDefault);maxValue=g(()=>this.entries().reduce((i,o)=>o.value>i?o.value:i,0));percent(t){let i=this.maxValue();return i===0?0:Math.round(t/i*100)}static \u0275fac=function(i){return new(i||e)};static \u0275cmp=A({type:e,selectors:[["sm-node-breakdown"]],inputs:{inputs:[1,"inputs"]},decls:4,vars:3,consts:[[1,"vc-breakdown"],[1,"vc-breakdown__header"],[1,"vc-breakdown__empty"],[1,"vc-breakdown__rows"],[1,"vc-breakdown__row"],[1,"vc-breakdown__label"],[1,"vc-breakdown__bar-track"],["aria-hidden","true",1,"vc-breakdown__bar"],[1,"vc-breakdown__value"]],template:function(i,o){i&1&&(T(0,"section",0),N(1,On,2,1,"h5",1),N(2,Dn,2,1,"p",2)(3,An,3,0,"ul",3),M()),i&2&&(S("data-testid","renderer-node-breakdown"),f(),E(o.label()?1:-1),f(),E(o.entries().length===0?2:3))},styles:[".vc-breakdown__header[_ngcontent-%COMP%]{font-size:.85rem;color:var(--p-surface-700);margin:0 0 .5rem}.vc-breakdown__rows[_ngcontent-%COMP%]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.25rem}.vc-breakdown__row[_ngcontent-%COMP%]{display:grid;grid-template-columns:minmax(4rem,.4fr) 1fr 3rem;align-items:center;gap:.5rem;font-size:.85rem}.vc-breakdown__label[_ngcontent-%COMP%]{color:var(--p-surface-700);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vc-breakdown__bar-track[_ngcontent-%COMP%]{background:var(--p-surface-100);border-radius:var(--sm-radius-md);height:.625rem;overflow:hidden}.vc-breakdown__bar[_ngcontent-%COMP%]{display:block;height:100%;background:var(--p-primary-500)}.vc-breakdown__value[_ngcontent-%COMP%]{text-align:right;color:var(--p-surface-600)}.vc-breakdown__empty[_ngcontent-%COMP%]{color:var(--p-surface-500);font-size:.85rem;margin:0}"],changeDetection:0})}return e})();function $n(e,n){if(e&1&&(T(0,"span",1),C(1),M()),e&2){let t=y(),i=y();Ae(i.hostClass()),f(),k(t.text)}}function Ln(e,n){if(e&1&&ce(0,"i",1),e&2){let t=y(),i=y();Ae(i.hostClass()+" "+t.cls)}}function Fn(e,n){e&1&&N(0,$n,2,3,"span",0)(1,Ln,1,2,"i",0),e&2&&E(n.kind==="emoji"?0:1)}function Rn(e){if(!e)return null;let n=e.trim();if(n.length===0)return null;let t=n.codePointAt(0)??0;if(!(t>=65&&t<=90||t>=97&&t<=122))return{kind:"emoji",text:n};if(/^pi pi-[a-z0-9-]+$/.test(n))return{kind:"pi",cls:n};if(/^pi-[a-z0-9-]+$/.test(n))return{kind:"pi",cls:`pi ${n}`};if(/^fa-(?:solid|regular|brands) fa-[a-z0-9-]+$/.test(n))return{kind:"fa",cls:n};if(/^fa-[a-z0-9-]+$/.test(n)){let o=n.slice(3);return o==="solid"||o==="regular"||o==="brands"||o.includes("fa-")?null:{kind:"fa",cls:`fa-solid ${n}`}}return null}var le=(()=>{class e{icon=O(void 0);hostClass=O("");resolved=g(()=>{let t=this.icon(),i=Rn(t);return t&&!i&&console.warn(`[sm-icon] Invalid icon string "${t}". Expected emoji, pi-foo, pi pi-foo, fa-{solid|regular|brands} fa-foo, or fa-foo.`),i});static \u0275fac=function(i){return new(i||e)};static \u0275cmp=A({type:e,selectors:[["sm-icon"]],inputs:{icon:[1,"icon"],hostClass:[1,"hostClass"]},decls:1,vars:1,consts:[["aria-hidden","true",3,"class"],["aria-hidden","true"]],template:function(i,o){if(i&1&&N(0,Fn,2,1),i&2){let r;E((r=o.resolved())?0:-1,r)}},styles:["[_nghost-%COMP%] i[_ngcontent-%COMP%], [_nghost-%COMP%] span[_ngcontent-%COMP%]{font-size:inherit;line-height:inherit}[_nghost-%COMP%] i[_ngcontent-%COMP%]{transform:translateY(1px)}"],changeDetection:0})}return e})();function jn(e,n){if(e&1&&(D(0,"span",3),C(1),P()),e&2){let t=y();S("aria-label",t.ariaLabel()),f(),k(t.value())}}var ve=(()=>{class e{inputs=O.required();typed=g(()=>{let t=this.inputs().payload;return typeof t!="object"||t===null?{value:0}:t});value=g(()=>this.typed().value);icon=g(()=>this.inputs().icon);severity=g(()=>this.typed().severity);resolvedTooltip=g(()=>this.typed().tooltip??this.inputs().tooltip??"");ariaLabel=g(()=>this.inputs().label??"");static \u0275fac=function(i){return new(i||e)};static \u0275cmp=A({type:e,selectors:[["sm-node-counter"]],inputs:{inputs:[1,"inputs"]},decls:4,vars:12,consts:[[1,"vc-counter",3,"pTooltip"],[1,"vc-counter__icon"],[3,"icon"],[1,"vc-counter__value"]],template:function(i,o){i&1&&(D(0,"span",0)(1,"span",1),se(2,"sm-icon",2),P(),N(3,jn,2,2,"span",3),P()),i&2&&(ee("vc-counter--info",o.severity()==="info")("vc-counter--warn",o.severity()==="warn")("vc-counter--success",o.severity()==="success")("vc-counter--danger",o.severity()==="danger"),F("pTooltip",o.resolvedTooltip()),S("data-testid","renderer-node-counter"),f(2),F("icon",o.icon()),f(),E(o.value()>0?3:-1))},dependencies:[X,Y,le],styles:[".vc-counter[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:.3rem;line-height:1}.vc-counter__icon[_ngcontent-%COMP%]{font-size:.6rem;line-height:1;display:block}.vc-counter__value[_ngcontent-%COMP%]{font-weight:600;color:var(--p-text-color);line-height:1;display:block}.vc-counter--info[_ngcontent-%COMP%], .vc-counter--info[_ngcontent-%COMP%] .vc-counter__value[_ngcontent-%COMP%]{color:var(--sm-severity-info)}.vc-counter--warn[_ngcontent-%COMP%]{color:var(--sm-severity-warn);opacity:.85}.vc-counter--warn[_ngcontent-%COMP%] .vc-counter__value[_ngcontent-%COMP%]{color:var(--sm-severity-warn)}.vc-counter--success[_ngcontent-%COMP%], .vc-counter--success[_ngcontent-%COMP%] .vc-counter__value[_ngcontent-%COMP%]{color:var(--sm-severity-success)}.vc-counter--danger[_ngcontent-%COMP%]{color:var(--sm-severity-error);opacity:.85}.vc-counter--danger[_ngcontent-%COMP%] .vc-counter__value[_ngcontent-%COMP%]{color:var(--sm-severity-error)}"],changeDetection:0})}return e})();var zn=(e,n)=>n.key;function Bn(e,n){if(e&1&&(D(0,"h5",1),C(1),P()),e&2){let t=y();f(),k(t.label())}}function Kn(e,n){if(e&1&&(D(0,"p",2),C(1),P()),e&2){let t=y();f(),k(t.emptyText())}}function Vn(e,n){if(e&1&&(D(0,"dt",4),C(1),P(),D(2,"dd"),C(3),P()),e&2){let t=n.$implicit,i=y(2);F("pTooltip",t.tooltip??""),f(),k(t.key),f(2),k(i.formatValue(t.value))}}function Un(e,n){if(e&1&&(D(0,"dl",3),H(1,Vn,4,3,null,null,zn),P()),e&2){let t=y();f(),G(t.entries())}}var Et=(()=>{class e{inputs=O.required();typed=g(()=>{let t=this.inputs().payload;return Q(t)?oe(t,"entries")?t:{entries:[]}:{entries:[]}});entries=g(()=>this.typed().entries??[]);label=g(()=>this.inputs().label);emptyText=g(()=>this.inputs().emptyText??V.emptyDefault);formatValue(t){return t==null?"\xB7":typeof t=="boolean"?t?"true":"false":String(t)}static \u0275fac=function(i){return new(i||e)};static \u0275cmp=A({type:e,selectors:[["sm-node-key-values"]],inputs:{inputs:[1,"inputs"]},decls:4,vars:3,consts:[[1,"vc-kv"],[1,"vc-kv__header"],[1,"vc-kv__empty"],[1,"vc-kv__list"],[3,"pTooltip"]],template:function(i,o){i&1&&(D(0,"section",0),N(1,Bn,2,1,"h5",1),N(2,Kn,2,1,"p",2)(3,Un,3,0,"dl",3),P()),i&2&&(S("data-testid","renderer-node-key-values"),f(),E(o.label()?1:-1),f(),E(o.entries().length===0?2:3))},dependencies:[X,Y],styles:[".vc-kv__header[_ngcontent-%COMP%]{font-size:.85rem;color:var(--p-surface-700);margin:0 0 .5rem}.vc-kv__list[_ngcontent-%COMP%]{display:grid;grid-template-columns:minmax(6rem,max-content) 1fr;gap:.25rem .75rem;margin:0;font-size:.85rem}.vc-kv__list[_ngcontent-%COMP%] dt[_ngcontent-%COMP%]{color:var(--p-surface-600);font-weight:500}.vc-kv__list[_ngcontent-%COMP%] dd[_ngcontent-%COMP%]{color:var(--p-surface-800);margin:0;word-break:break-word}.vc-kv__empty[_ngcontent-%COMP%]{color:var(--p-surface-500);font-size:.85rem;margin:0}"],changeDetection:0})}return e})();var Hn=(e,n)=>n.path;function Gn(e,n){if(e&1&&(T(0,"h5",1),C(1),M()),e&2){let t=y();f(),k(t.label())}}function Wn(e,n){if(e&1&&(T(0,"p",2),C(1),M()),e&2){let t=y();f(),k(t.emptyText())}}function qn(e,n){if(e&1&&(T(0,"span",5),C(1),M()),e&2){let t=y().$implicit;f(),k(t.kind)}}function Yn(e,n){if(e&1){let t=ut();T(0,"li")(1,"button",4),pt("click",function(){let o=ot(t).$implicit,r=y(2);return rt(r.onOpenPath(o.path))}),N(2,qn,2,1,"span",5),T(3,"span",6),C(4),M()()()}if(e&2){let t=n.$implicit;f(2),E(t.kind?2:-1),f(2),k(t.label??t.path)}}function Xn(e,n){if(e&1&&(T(0,"ul",3),H(1,Yn,5,2,"li",null,Hn),M()),e&2){let t=y();f(),G(t.entries())}}var It=(()=>{class e{openIntent=q(Tt);inputs=O.required();typed=g(()=>{let t=this.inputs().payload;return Q(t)?oe(t,"entries")?t:{entries:[]}:{entries:[]}});entries=g(()=>this.typed().entries??[]);label=g(()=>this.inputs().label);emptyText=g(()=>this.inputs().emptyText??V.emptyDefault);onOpenPath(t){this.openIntent.open(t)}static \u0275fac=function(i){return new(i||e)};static \u0275cmp=A({type:e,selectors:[["sm-node-link-list"]],inputs:{inputs:[1,"inputs"]},decls:4,vars:3,consts:[[1,"vc-links"],[1,"vc-links__header"],[1,"vc-links__empty"],[1,"vc-links__list"],["type","button",1,"vc-links__btn",3,"click"],[1,"vc-links__kind"],[1,"vc-links__label"]],template:function(i,o){i&1&&(T(0,"section",0),N(1,Gn,2,1,"h5",1),N(2,Wn,2,1,"p",2)(3,Xn,3,0,"ul",3),M()),i&2&&(S("data-testid","renderer-node-link-list"),f(),E(o.label()?1:-1),f(),E(o.entries().length===0?2:3))},styles:[".vc-links__header[_ngcontent-%COMP%]{font-size:.85rem;color:var(--p-surface-700);margin:0 0 .5rem}.vc-links__list[_ngcontent-%COMP%]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.125rem;font-size:.85rem}.vc-links__btn[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:.5rem;background:transparent;border:0;padding:.25rem .5rem;border-radius:var(--sm-radius-md);color:var(--p-primary-600);cursor:pointer;text-align:left;width:100%}.vc-links__btn[_ngcontent-%COMP%]:hover{background:var(--p-surface-100)}.vc-links__kind[_ngcontent-%COMP%]{color:var(--p-surface-500);font-family:var(--p-font-family-mono);font-size:.75rem}.vc-links__label[_ngcontent-%COMP%]{word-break:break-all}.vc-links__empty[_ngcontent-%COMP%]{color:var(--p-surface-500);font-size:.85rem;margin:0}"],changeDetection:0})}return e})();var St=(e,n)=>n.key;function Qn(e,n){if(e&1&&(T(0,"h5",1),C(1),M()),e&2){let t=y();f(),k(t.label())}}function Jn(e,n){if(e&1&&(T(0,"p",2),C(1),M()),e&2){let t=y();f(),k(t.emptyText())}}function Zn(e,n){if(e&1&&(T(0,"th"),C(1),M()),e&2){let t=n.$implicit;f(),k(t.label)}}function ei(e,n){if(e&1&&ce(0,"i",4),e&2){let t=y(4);S("aria-label",t.texts.boolTrue)}}function ti(e,n){if(e&1&&ce(0,"i",5),e&2){let t=y(4);S("aria-label",t.texts.boolFalse)}}function ni(e,n){}function ii(e,n){if(e&1&&C(0),e&2){let t=y().$implicit,i=y().$implicit,o=y(2);we(" ",o.cellText(i[t.key])," ")}}function oi(e,n){if(e&1&&(T(0,"td"),N(1,ei,1,1,"i",4)(2,ti,1,1,"i",5)(3,ni,0,0)(4,ii,1,1),M()),e&2){let t,i=n.$implicit,o=y().$implicit,r=y(2);f(),E((t=r.cellKind(o[i.key]))==="bool-true"?1:t==="bool-false"?2:t==="empty"?3:4)}}function ri(e,n){if(e&1&&(T(0,"tr"),H(1,oi,5,1,"td",null,St),M()),e&2){let t=y(2);f(),G(t.columns())}}function ai(e,n){if(e&1&&(T(0,"table",3)(1,"thead")(2,"tr"),H(3,Zn,2,1,"th",null,St),M()(),T(5,"tbody"),H(6,ri,3,0,"tr",null,ct),M()()),e&2){let t=y();f(3),G(t.columns()),f(3),G(t.rows())}}var Ot=(()=>{class e{inputs=O.required();typed=g(()=>{let t=this.inputs().payload;return Q(t)?!oe(t,"columns")||!oe(t,"rows")?{columns:[],rows:[]}:t:{columns:[],rows:[]}});columns=g(()=>this.typed().columns??[]);rows=g(()=>this.typed().rows??[]);label=g(()=>this.inputs().label);emptyText=g(()=>this.inputs().emptyText??V.emptyDefault);texts=V.recordsCell;cellKind(t){return t==null?"empty":typeof t=="boolean"?t?"bool-true":"bool-false":"text"}cellText(t){return t==null?"":String(t)}static \u0275fac=function(i){return new(i||e)};static \u0275cmp=A({type:e,selectors:[["sm-node-records"]],inputs:{inputs:[1,"inputs"]},decls:4,vars:3,consts:[[1,"vc-records"],[1,"vc-records__header"],[1,"vc-records__empty"],[1,"vc-records__table"],["role","img",1,"pi","pi-check","vc-records__bool","vc-records__bool--true"],["role","img",1,"pi","pi-minus","vc-records__bool","vc-records__bool--false"]],template:function(i,o){i&1&&(T(0,"section",0),N(1,Qn,2,1,"h5",1),N(2,Jn,2,1,"p",2)(3,ai,8,0,"table",3),M()),i&2&&(S("data-testid","renderer-node-records"),f(),E(o.label()?1:-1),f(),E(o.rows().length===0?2:3))},styles:[".vc-records__header[_ngcontent-%COMP%]{font-size:.85rem;color:var(--p-surface-700);margin:0 0 .5rem}.vc-records__table[_ngcontent-%COMP%]{width:100%;border-collapse:collapse;font-size:.85rem}.vc-records__table[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{text-align:left;padding:.25rem .5rem;border-bottom:1px solid var(--p-surface-200);color:var(--p-surface-700);font-weight:600}.vc-records__table[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{padding:.25rem .5rem;border-bottom:1px solid var(--p-surface-100);color:var(--p-surface-800);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:16rem}.vc-records__empty[_ngcontent-%COMP%]{color:var(--p-surface-500);font-size:.85rem;margin:0}.vc-records__bool[_ngcontent-%COMP%]{font-size:.9rem;line-height:1}.vc-records__bool--true[_ngcontent-%COMP%]{color:var(--p-primary-color)}.vc-records__bool--false[_ngcontent-%COMP%]{color:var(--p-text-muted-color)}"],changeDetection:0})}return e})();function si(e,n){if(e&1&&(T(0,"h5",1),C(1),M()),e&2){let t=y();f(),k(t.label())}}function li(e,n){if(e&1&&(T(0,"p",2),C(1),M()),e&2){let t=y();f(),k(t.emptyText())}}function ci(e,n){if(e&1&&(T(0,"pre",3),C(1),M()),e&2){let t=y();f(),k(t.markdown())}}var Dt=(()=>{class e{inputs=O.required();typed=g(()=>{let t=this.inputs().payload;return Q(t)?ke(t,"markdown")?t:{markdown:""}:{markdown:""}});markdown=g(()=>this.typed().markdown??"");label=g(()=>this.inputs().label);emptyText=g(()=>this.inputs().emptyText??V.emptyDefault);static \u0275fac=function(i){return new(i||e)};static \u0275cmp=A({type:e,selectors:[["sm-node-markdown"]],inputs:{inputs:[1,"inputs"]},decls:4,vars:3,consts:[[1,"vc-markdown"],[1,"vc-markdown__header"],[1,"vc-markdown__empty"],[1,"vc-markdown__body"]],template:function(i,o){i&1&&(T(0,"section",0),N(1,si,2,1,"h5",1),N(2,li,2,1,"p",2)(3,ci,2,1,"pre",3),M()),i&2&&(S("data-testid","renderer-node-markdown"),f(),E(o.label()?1:-1),f(),E(o.markdown()?3:2))},styles:[".vc-markdown__header[_ngcontent-%COMP%]{font-size:.85rem;color:var(--p-surface-700);margin:0 0 .5rem}.vc-markdown__body[_ngcontent-%COMP%]{font-size:.85rem;color:var(--p-surface-800);background:var(--p-surface-50);padding:.5rem;border-radius:var(--sm-radius-md);white-space:pre-wrap;word-break:break-word;margin:0;max-height:12rem;overflow:auto}.vc-markdown__empty[_ngcontent-%COMP%]{color:var(--p-surface-500);font-size:.85rem;margin:0}"],changeDetection:0})}return e})();function di(e,n){if(e&1&&(D(0,"span",1),C(1),P()),e&2){let t=y();f(),k(t.icon())}}var Pt=(()=>{class e{inputs=O.required();typed=g(()=>{let t=this.inputs().payload;return typeof t!="object"||t===null?{label:""}:t});label=g(()=>this.typed().label||"");icon=g(()=>this.inputs().icon);severity=g(()=>this.typed().severity);resolvedTooltip=g(()=>this.typed().tooltip??this.inputs().tooltip??"");static \u0275fac=function(i){return new(i||e)};static \u0275cmp=A({type:e,selectors:[["sm-node-tag"]],inputs:{inputs:[1,"inputs"]},decls:4,vars:12,consts:[[1,"vc-tag",3,"pTooltip"],["aria-hidden","true",1,"vc-tag__icon"],[1,"vc-tag__label"]],template:function(i,o){i&1&&(D(0,"span",0),N(1,di,2,1,"span",1),D(2,"span",2),C(3),P()()),i&2&&(ee("vc-tag--info",o.severity()==="info")("vc-tag--warn",o.severity()==="warn")("vc-tag--success",o.severity()==="success")("vc-tag--danger",o.severity()==="danger"),F("pTooltip",o.resolvedTooltip()),S("data-testid","renderer-node-tag"),f(),E(o.icon()?1:-1),f(2),k(o.label()))},dependencies:[X,Y],styles:[".vc-tag[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:.3rem;line-height:1}.vc-tag__icon[_ngcontent-%COMP%]{font-size:.85em;line-height:1;display:block}.vc-tag__label[_ngcontent-%COMP%]{font-weight:500;line-height:1;display:block}.vc-tag--info[_ngcontent-%COMP%]{background:var(--sm-severity-info-bg);color:var(--sm-severity-info);padding:.1rem .4rem;border-radius:var(--sm-radius-sm)}.vc-tag--warn[_ngcontent-%COMP%]{background:var(--sm-severity-warn-bg);color:var(--sm-severity-warn);padding:.1rem .4rem;border-radius:var(--sm-radius-sm)}.vc-tag--success[_ngcontent-%COMP%]{background:var(--sm-severity-success-bg);color:var(--sm-severity-success);padding:.1rem .4rem;border-radius:var(--sm-radius-sm)}.vc-tag--danger[_ngcontent-%COMP%]{background:var(--sm-severity-error-bg);color:var(--sm-severity-error);padding:.1rem .4rem;border-radius:var(--sm-radius-sm)}"],changeDetection:0})}return e})();var ui=()=>[],At=(e,n)=>n.label;function pi(e,n){if(e&1&&(T(0,"h5",1),C(1),M()),e&2){let t=y();f(),k(t.label())}}function fi(e,n){if(e&1&&(T(0,"p",2),C(1),M()),e&2){let t=y();f(),k(t.emptyText())}}function mi(e,n){if(e&1&&(T(0,"span",5),C(1),M()),e&2){let t=y().$implicit;f(),k(t.marker)}}function gi(e,n){if(e&1&&(T(0,"span",5),C(1),M()),e&2){let t=y().$implicit;f(),k(t.marker)}}function vi(e,n){if(e&1&&(T(0,"li",4),N(1,gi,2,1,"span",5),T(2,"span",6),C(3),M()()),e&2){let t=n.$implicit;S("title",t.tooltip??""),f(),E(t.marker?1:-1),f(2),k(t.label)}}function hi(e,n){if(e&1&&(T(0,"ul",7),H(1,vi,4,3,"li",4,At),M()),e&2){let t=y().$implicit;f(),G(t.children)}}function _i(e,n){if(e&1&&(T(0,"li",4),N(1,mi,2,1,"span",5),T(2,"span",6),C(3),M(),N(4,hi,3,0,"ul",7),M()),e&2){let t=n.$implicit;S("title",t.tooltip??""),f(),E(t.marker?1:-1),f(2),k(t.label),f(),E(t.children&&t.children.length>0?4:-1)}}function yi(e,n){if(e&1&&(T(0,"ul",3),H(1,_i,5,4,"li",4,At),M()),e&2){let t=y();f(),G(t.root().children??mt(0,ui))}}var $t=(()=>{class e{inputs=O.required();root=g(()=>{let t=this.inputs().payload;return Q(t)?ke(t,"label")?t.children!==void 0&&!Array.isArray(t.children)?{label:""}:t:{label:""}:{label:""}});rootIsEmpty=g(()=>{let t=this.root();return!t.children||t.children.length===0});label=g(()=>this.inputs().label);emptyText=g(()=>this.inputs().emptyText??V.emptyDefault);static \u0275fac=function(i){return new(i||e)};static \u0275cmp=A({type:e,selectors:[["sm-node-tree"]],inputs:{inputs:[1,"inputs"]},decls:4,vars:3,consts:[[1,"vc-tree"],[1,"vc-tree__header"],[1,"vc-tree__empty"],["role","tree",1,"vc-tree__list"],["role","treeitem"],["aria-hidden","true",1,"vc-tree__marker"],[1,"vc-tree__label"],["role","group",1,"vc-tree__list"]],template:function(i,o){i&1&&(T(0,"section",0),N(1,pi,2,1,"h5",1),N(2,fi,2,1,"p",2)(3,yi,3,1,"ul",3),M()),i&2&&(S("data-testid","renderer-node-tree"),f(),E(o.label()?1:-1),f(),E(o.rootIsEmpty()?2:3))},styles:[".vc-tree__header[_ngcontent-%COMP%]{font-size:.85rem;color:var(--p-surface-700);margin:0 0 .5rem}.vc-tree__list[_ngcontent-%COMP%]{list-style:none;padding-left:1rem;margin:0;font-size:.85rem}.vc-tree__list[_ngcontent-%COMP%] > li[_ngcontent-%COMP%]{padding:.125rem 0}.vc-tree__marker[_ngcontent-%COMP%]{margin-right:.25rem;opacity:.7}.vc-tree__label[_ngcontent-%COMP%]{color:var(--p-surface-800)}.vc-tree__empty[_ngcontent-%COMP%]{color:var(--p-surface-500);font-size:.85rem;margin:0}"],changeDetection:0})}return e})();function xi(e,n){if(e&1&&(D(0,"span",2),C(1),P()),e&2){let t=y();f(),k(t.formattedCount())}}var Lt=(()=>{class e{inputs=O.required();typed=g(()=>{let t=this.inputs().payload;return typeof t!="object"||t===null?{}:t});icon=g(()=>this.typed().icon??this.inputs().icon);severity=g(()=>this.typed().severity);count=g(()=>this.typed().count??null);resolvedTooltip=g(()=>this.typed().tooltip??this.inputs().tooltip??"");formattedCount=g(()=>{let t=this.count();return t===null?"":t>=99?"99+":String(t)});static \u0275fac=function(i){return new(i||e)};static \u0275cmp=A({type:e,selectors:[["sm-node-alert"]],inputs:{inputs:[1,"inputs"]},decls:3,vars:12,consts:[[1,"vc-alert",3,"pTooltip"],["hostClass","vc-alert__icon",3,"icon"],[1,"vc-alert__count"]],template:function(i,o){i&1&&(D(0,"span",0),se(1,"sm-icon",1),N(2,xi,2,1,"span",2),P()),i&2&&(ee("vc-alert--info",o.severity()==="info")("vc-alert--warn",o.severity()==="warn")("vc-alert--success",o.severity()==="success")("vc-alert--danger",o.severity()==="danger"),F("pTooltip",o.resolvedTooltip()),S("data-testid","renderer-node-alert"),f(),F("icon",o.icon()),f(),E(o.count()!==null?2:-1))},dependencies:[X,Y,le],styles:[".vc-alert[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;gap:.125rem;min-width:1.1rem;min-height:1.1rem;font-size:.85rem;color:var(--p-surface-700)}.vc-alert--info[_ngcontent-%COMP%]{color:var(--sm-severity-info)}.vc-alert--warn[_ngcontent-%COMP%]{color:var(--sm-severity-warn)}.vc-alert--success[_ngcontent-%COMP%]{color:var(--sm-severity-success)}.vc-alert--danger[_ngcontent-%COMP%]{color:var(--sm-severity-error)}"],changeDetection:0})}return e})();var Ft=(()=>{class e{inputs=O.required();typed=g(()=>{let t=this.inputs().payload;return typeof t!="object"||t===null?{}:t});icon=g(()=>this.typed().icon??this.inputs().icon);severity=g(()=>this.typed().severity);resolvedTooltip=g(()=>this.typed().tooltip??this.inputs().tooltip??"");ariaLabel=g(()=>this.inputs().label??"");static \u0275fac=function(i){return new(i||e)};static \u0275cmp=A({type:e,selectors:[["sm-node-icon"]],inputs:{inputs:[1,"inputs"]},decls:2,vars:12,consts:[[1,"vc-icon",3,"pTooltip"],["hostClass","vc-icon__glyph",3,"icon"]],template:function(i,o){i&1&&(D(0,"span",0),se(1,"sm-icon",1),P()),i&2&&(ee("vc-icon--info",o.severity()==="info")("vc-icon--warn",o.severity()==="warn")("vc-icon--success",o.severity()==="success")("vc-icon--danger",o.severity()==="danger"),F("pTooltip",o.resolvedTooltip()),S("aria-label",o.ariaLabel())("data-testid","renderer-node-icon"),f(),F("icon",o.icon()))},dependencies:[X,Y,le],styles:[".vc-icon[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;line-height:1;width:22px;height:22px}.vc-icon__glyph[_ngcontent-%COMP%]{font-size:.7rem;line-height:1;display:block}.vc-icon--info[_ngcontent-%COMP%]{color:var(--sm-severity-info)}.vc-icon--warn[_ngcontent-%COMP%]{color:var(--sm-severity-warn)}.vc-icon--success[_ngcontent-%COMP%]{color:var(--sm-severity-success)}.vc-icon--danger[_ngcontent-%COMP%]{color:var(--sm-severity-error)}"],changeDetection:0})}return e})();function bi(e,n){if(e&1&&(D(0,"span",3),C(1),P()),e&2){let t=y();f(),k(t.label())}}var Rt=(()=>{class e{inputs=O.required();typed=g(()=>{let t=this.inputs().payload;return typeof t!="object"||t===null?{value:""}:t});value=g(()=>String(this.typed().value??""));label=g(()=>this.typed().label??this.inputs().label);icon=g(()=>this.inputs().icon);severity=g(()=>this.typed().severity);resolvedTooltip=g(()=>this.typed().tooltip??this.inputs().tooltip??"");static \u0275fac=function(i){return new(i||e)};static \u0275cmp=A({type:e,selectors:[["sm-scope-stat"]],inputs:{inputs:[1,"inputs"]},decls:5,vars:13,consts:[[1,"vc-stat",3,"pTooltip"],["hostClass","vc-stat__icon",3,"icon"],[1,"vc-stat__value"],[1,"vc-stat__label"]],template:function(i,o){i&1&&(D(0,"span",0),se(1,"sm-icon",1),D(2,"span",2),C(3),P(),N(4,bi,2,1,"span",3),P()),i&2&&(ee("vc-stat--info",o.severity()==="info")("vc-stat--warn",o.severity()==="warn")("vc-stat--success",o.severity()==="success")("vc-stat--danger",o.severity()==="danger"),F("pTooltip",o.resolvedTooltip()),S("data-testid","renderer-scope-stat"),f(),F("icon",o.icon()),f(2),k(o.value()),f(),E(o.label()?4:-1))},dependencies:[X,Y,le],styles:[".vc-stat[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:.25rem;padding:.125rem .5rem;border-radius:.75rem;font-size:.85rem;background:var(--p-surface-100);color:var(--p-surface-800)}.vc-stat__label[_ngcontent-%COMP%]{color:var(--p-surface-500);font-size:.8rem}.vc-stat--info[_ngcontent-%COMP%]{background:var(--p-blue-100);color:var(--p-blue-700)}.vc-stat--warn[_ngcontent-%COMP%]{background:var(--p-yellow-100);color:var(--p-yellow-800)}.vc-stat--success[_ngcontent-%COMP%]{background:var(--p-green-100);color:var(--p-green-700)}.vc-stat--danger[_ngcontent-%COMP%]{background:var(--p-red-100);color:var(--p-red-700)}"],changeDetection:0})}return e})();var Fe={"card.title.right":Ft,"card.subtitle.left":ve,"card.footer.left":ve,"card.footer.right":ve,"graph.node.alert":Lt,"inspector.header.badge.counter":ve,"inspector.header.badge.tag":Pt,"inspector.body.panel.breakdown":Nt,"inspector.body.panel.records":Ot,"inspector.body.panel.tree":$t,"inspector.body.panel.key-values":Et,"inspector.body.panel.link-list":It,"inspector.body.panel.markdown":Dt,"topbar.nav.start":Rt};function jt(e){return e in Fe}var de={"topbar.nav.start":{id:"topbar.nav.start",cardinality:"multi",maxItems:3,order:"alphabetical",strategy:"append"},"inspector.header.badge.counter":{id:"inspector.header.badge.counter",cardinality:"multi",maxItems:4,order:"alphabetical",strategy:"append"},"inspector.header.badge.tag":{id:"inspector.header.badge.tag",cardinality:"multi",maxItems:4,order:"alphabetical",strategy:"append"},"inspector.body.panel.breakdown":{id:"inspector.body.panel.breakdown",cardinality:"multi",maxItems:50,order:"alphabetical",strategy:"append"},"inspector.body.panel.records":{id:"inspector.body.panel.records",cardinality:"multi",maxItems:50,order:"alphabetical",strategy:"append"},"inspector.body.panel.tree":{id:"inspector.body.panel.tree",cardinality:"multi",maxItems:50,order:"alphabetical",strategy:"append"},"inspector.body.panel.key-values":{id:"inspector.body.panel.key-values",cardinality:"multi",maxItems:50,order:"alphabetical",strategy:"append"},"inspector.body.panel.link-list":{id:"inspector.body.panel.link-list",cardinality:"multi",maxItems:50,order:"alphabetical",strategy:"append"},"inspector.body.panel.markdown":{id:"inspector.body.panel.markdown",cardinality:"multi",maxItems:50,order:"alphabetical",strategy:"append"},"card.footer.left":{id:"card.footer.left",cardinality:"multi",maxItems:5,order:"priority",strategy:"append",respectSeverity:!0},"card.footer.right":{id:"card.footer.right",cardinality:"multi",maxItems:5,order:"priority",strategy:"append",respectSeverity:!0},"card.subtitle.left":{id:"card.subtitle.left",cardinality:"multi",maxItems:3,order:"priority",strategy:"append",respectSeverity:!0},"card.title.right":{id:"card.title.right",cardinality:"multi",maxItems:2,order:"priority",strategy:"append",respectSeverity:!0},"graph.node.alert":{id:"graph.node.alert",cardinality:"multi",maxItems:1,order:"severity",strategy:"append",showOverflowBadge:!1}};var wi=e=>({inputs:e}),Ci=(e,n)=>n.qualifiedId;function Ti(e,n){e&1&&dt(0)}function Mi(e,n){if(e&1&&(D(0,"span",1),lt(1,Ti,1,0,"ng-container",3),P()),e&2){let t=n.$implicit,i=y(2);S("data-testid","contribution-"+t.qualifiedId.replaceAll("/","-")),f(),F("ngComponentOutlet",i.rendererFor(t.slot))("ngComponentOutletInputs",gt(3,wi,t.rendererInputs))}}function ki(e,n){if(e&1&&(D(0,"span",2),C(1),P()),e&2){let t=y(2);F("pTooltip",t.overflowTooltip()),f(),we(" ",t.overflowBadge()," ")}}function Ni(e,n){if(e&1&&(D(0,"span",0),H(1,Mi,2,5,"span",1,Ci),N(3,ki,2,2,"span",2),P()),e&2){let t=y();S("data-testid","view-contributions-host-"+t.testidSuffix()),f(),G(t.visible()),f(2),E(t.overflowCount()>0&&t.showOverflowBadge()?3:-1)}}var ua=(()=>{class e{slot=O.required();node=O(null);debugSlots=q(Mt);debugVisible=this.debugSlots.visible;testidSuffix=g(()=>this.slot().replaceAll(".","-"));registry=q(kt);dispatched=g(()=>{let t=this.node();if(!t)return[];let i=t.contributions??[];if(i.length===0)return[];let o=this.slot(),r=i.filter(s=>s.slot===o).filter(s=>jt(s.slot));return this.sortBySlotOrder(r,o).map(s=>({qualifiedId:`${s.pluginId}/${s.extensionId}/${s.contributionId}`,slot:s.slot,rendererInputs:this.buildInputs(s,o)}))});visible=g(()=>{let t=this.dispatched(),i=de[this.slot()].maxItems;return t.slice(0,i)});overflowCount=g(()=>{let t=this.dispatched(),i=de[this.slot()].maxItems;return Math.max(0,t.length-i)});showOverflowBadge=g(()=>de[this.slot()].showOverflowBadge!==!1);overflowBadge=g(()=>V.overflowBadge(this.overflowCount()));overflowTooltip=g(()=>{let t=this.dispatched(),i=de[this.slot()].maxItems,o=t.slice(i).map(r=>r.qualifiedId).join(", ");return V.overflowTooltip(o)});rendererFor(t){return Fe[t]}buildInputs(t,i){let o=`${t.pluginId}/${t.extensionId}/${t.contributionId}`,r=this.registry.get(o),s=de[i].respectSeverity!==!1,a=t.payload;if(!s&&typeof a=="object"&&a!==null&&"severity"in a){let l=a,{severity:m}=l;a=nt(l,["severity"])}let c={pluginId:t.pluginId,extensionId:t.extensionId,contributionId:t.contributionId,payload:a};return r?.label&&(c.label=r.label),r?.tooltip&&(c.tooltip=r.tooltip),r?.icon&&(c.icon=r.icon),r?.emptyText&&(c.emptyText=r.emptyText),c}sortBySlotOrder(t,i){let o=de[i].order;return o==="fifo"?t.slice():o==="priority"?t.slice().sort((r,s)=>{let a=this.priorityFor(r),c=this.priorityFor(s);return a!==c?a-c:Re(r,s)}):o==="severity"?t.slice().sort((r,s)=>{let a=zt(r),c=zt(s);return a!==c?c-a:Re(r,s)}):t.slice().sort(Re)}priorityFor(t){let i=`${t.pluginId}/${t.extensionId}/${t.contributionId}`;return this.registry.get(i)?.priority??100}static \u0275fac=function(i){return new(i||e)};static \u0275cmp=A({type:e,selectors:[["sm-view-contributions-host"]],hostVars:3,hostBindings:function(i,o){i&2&&(S("data-debug-slot",o.debugVisible()?o.slot():null),ee("sm-debug-slot",o.debugVisible()))},inputs:{slot:[1,"slot"],node:[1,"node"]},decls:1,vars:1,consts:[[1,"vch"],[1,"vch__slot"],["data-testid","view-contributions-host-overflow",1,"vch__overflow",3,"pTooltip"],[4,"ngComponentOutlet","ngComponentOutletInputs"]],template:function(i,o){i&1&&N(0,Ni,4,2,"span",0),i&2&&E(o.visible().length>0||o.overflowCount()>0?0:-1)},dependencies:[vt,X,Y],styles:[".vch[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:.7rem;flex-wrap:wrap}.vch__slot[_ngcontent-%COMP%]{display:inline-flex}.vch__overflow[_ngcontent-%COMP%]{display:inline-flex;align-items:center;padding:.125rem .5rem;border-radius:.75rem;background:var(--p-surface-100);color:var(--p-surface-600);font-size:.8rem;cursor:default}"],changeDetection:0})}return e})();function Re(e,n){let t=`${e.pluginId}/${e.extensionId}/${e.contributionId}`,i=`${n.pluginId}/${n.extensionId}/${n.contributionId}`;return t<i?-1:t>i?1:0}function zt(e){let n=e.payload;if(typeof n!="object"||n===null)return 0;switch(n.severity){case"danger":return 4;case"warn":return 3;case"info":return 2;case"success":return 1;default:return 0}}var xa=(()=>{class e{router=q(Ce);theme=q(xt);destroyRef=q(st);constructor(){this.router.events.pipe(_t(this.destroyRef)).subscribe(t=>{if(t instanceof ht){let i=Ei(t.urlAfterRedirects);i!==null&&$e(`ui.view.${i}`)}}),be(()=>this.syncTheme())}trackFeature(t){$e(`ui.feature.${t}`)}syncTheme(){yt({theme_base:this.theme.resolved(),theme_extra:this.theme.extraTheme()??"none"})}static \u0275fac=function(i){return new(i||e)};static \u0275prov=Z({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();function Ei(e){let n=e.split("?")[0]??"";return n==="/"||n.startsWith("/map")?"map":n.startsWith("/files")?"files":null}function je(e,n){var t,i=1;e==null&&(e=0),n==null&&(n=0);function o(){var r,s=t.length,a,c=0,l=0;for(r=0;r<s;++r)a=t[r],c+=a.x,l+=a.y;for(c=(c/s-e)*i,l=(l/s-n)*i,r=0;r<s;++r)a=t[r],a.x-=c,a.y-=l}return o.initialize=function(r){t=r},o.x=function(r){return arguments.length?(e=+r,o):e},o.y=function(r){return arguments.length?(n=+r,o):n},o.strength=function(r){return arguments.length?(i=+r,o):i},o}function Bt(e){let n=+this._x.call(null,e),t=+this._y.call(null,e);return Kt(this.cover(n,t),n,t,e)}function Kt(e,n,t,i){if(isNaN(n)||isNaN(t))return e;var o,r=e._root,s={data:i},a=e._x0,c=e._y0,l=e._x1,m=e._y1,_,h,u,x,p,d,v,b;if(!r)return e._root=s,e;for(;r.length;)if((p=n>=(_=(a+l)/2))?a=_:l=_,(d=t>=(h=(c+m)/2))?c=h:m=h,o=r,!(r=r[v=d<<1|p]))return o[v]=s,e;if(u=+e._x.call(null,r.data),x=+e._y.call(null,r.data),n===u&&t===x)return s.next=r,o?o[v]=s:e._root=s,e;do o=o?o[v]=new Array(4):e._root=new Array(4),(p=n>=(_=(a+l)/2))?a=_:l=_,(d=t>=(h=(c+m)/2))?c=h:m=h;while((v=d<<1|p)===(b=(x>=h)<<1|u>=_));return o[b]=r,o[v]=s,e}function Vt(e){var n,t,i=e.length,o,r,s=new Array(i),a=new Array(i),c=1/0,l=1/0,m=-1/0,_=-1/0;for(t=0;t<i;++t)isNaN(o=+this._x.call(null,n=e[t]))||isNaN(r=+this._y.call(null,n))||(s[t]=o,a[t]=r,o<c&&(c=o),o>m&&(m=o),r<l&&(l=r),r>_&&(_=r));if(c>m||l>_)return this;for(this.cover(c,l).cover(m,_),t=0;t<i;++t)Kt(this,s[t],a[t],e[t]);return this}function Ut(e,n){if(isNaN(e=+e)||isNaN(n=+n))return this;var t=this._x0,i=this._y0,o=this._x1,r=this._y1;if(isNaN(t))o=(t=Math.floor(e))+1,r=(i=Math.floor(n))+1;else{for(var s=o-t||1,a=this._root,c,l;t>e||e>=o||i>n||n>=r;)switch(l=(n<i)<<1|e<t,c=new Array(4),c[l]=a,a=c,s*=2,l){case 0:o=t+s,r=i+s;break;case 1:t=o-s,r=i+s;break;case 2:o=t+s,i=r-s;break;case 3:t=o-s,i=r-s;break}this._root&&this._root.length&&(this._root=a)}return this._x0=t,this._y0=i,this._x1=o,this._y1=r,this}function Ht(){var e=[];return this.visit(function(n){if(!n.length)do e.push(n.data);while(n=n.next)}),e}function Gt(e){return arguments.length?this.cover(+e[0][0],+e[0][1]).cover(+e[1][0],+e[1][1]):isNaN(this._x0)?void 0:[[this._x0,this._y0],[this._x1,this._y1]]}function B(e,n,t,i,o){this.node=e,this.x0=n,this.y0=t,this.x1=i,this.y1=o}function Wt(e,n,t){var i,o=this._x0,r=this._y0,s,a,c,l,m=this._x1,_=this._y1,h=[],u=this._root,x,p;for(u&&h.push(new B(u,o,r,m,_)),t==null?t=1/0:(o=e-t,r=n-t,m=e+t,_=n+t,t*=t);x=h.pop();)if(!(!(u=x.node)||(s=x.x0)>m||(a=x.y0)>_||(c=x.x1)<o||(l=x.y1)<r))if(u.length){var d=(s+c)/2,v=(a+l)/2;h.push(new B(u[3],d,v,c,l),new B(u[2],s,v,d,l),new B(u[1],d,a,c,v),new B(u[0],s,a,d,v)),(p=(n>=v)<<1|e>=d)&&(x=h[h.length-1],h[h.length-1]=h[h.length-1-p],h[h.length-1-p]=x)}else{var b=e-+this._x.call(null,u.data),I=n-+this._y.call(null,u.data),w=b*b+I*I;if(w<t){var $=Math.sqrt(t=w);o=e-$,r=n-$,m=e+$,_=n+$,i=u.data}}return i}function qt(e){if(isNaN(m=+this._x.call(null,e))||isNaN(_=+this._y.call(null,e)))return this;var n,t=this._root,i,o,r,s=this._x0,a=this._y0,c=this._x1,l=this._y1,m,_,h,u,x,p,d,v;if(!t)return this;if(t.length)for(;;){if((x=m>=(h=(s+c)/2))?s=h:c=h,(p=_>=(u=(a+l)/2))?a=u:l=u,n=t,!(t=t[d=p<<1|x]))return this;if(!t.length)break;(n[d+1&3]||n[d+2&3]||n[d+3&3])&&(i=n,v=d)}for(;t.data!==e;)if(o=t,!(t=t.next))return this;return(r=t.next)&&delete t.next,o?(r?o.next=r:delete o.next,this):n?(r?n[d]=r:delete n[d],(t=n[0]||n[1]||n[2]||n[3])&&t===(n[3]||n[2]||n[1]||n[0])&&!t.length&&(i?i[v]=t:this._root=t),this):(this._root=r,this)}function Yt(e){for(var n=0,t=e.length;n<t;++n)this.remove(e[n]);return this}function Xt(){return this._root}function Qt(){var e=0;return this.visit(function(n){if(!n.length)do++e;while(n=n.next)}),e}function Jt(e){var n=[],t,i=this._root,o,r,s,a,c;for(i&&n.push(new B(i,this._x0,this._y0,this._x1,this._y1));t=n.pop();)if(!e(i=t.node,r=t.x0,s=t.y0,a=t.x1,c=t.y1)&&i.length){var l=(r+a)/2,m=(s+c)/2;(o=i[3])&&n.push(new B(o,l,m,a,c)),(o=i[2])&&n.push(new B(o,r,m,l,c)),(o=i[1])&&n.push(new B(o,l,s,a,m)),(o=i[0])&&n.push(new B(o,r,s,l,m))}return this}function Zt(e){var n=[],t=[],i;for(this._root&&n.push(new B(this._root,this._x0,this._y0,this._x1,this._y1));i=n.pop();){var o=i.node;if(o.length){var r,s=i.x0,a=i.y0,c=i.x1,l=i.y1,m=(s+c)/2,_=(a+l)/2;(r=o[0])&&n.push(new B(r,s,a,m,_)),(r=o[1])&&n.push(new B(r,m,a,c,_)),(r=o[2])&&n.push(new B(r,s,_,m,l)),(r=o[3])&&n.push(new B(r,m,_,c,l))}t.push(i)}for(;i=t.pop();)e(i.node,i.x0,i.y0,i.x1,i.y1);return this}function en(e){return e[0]}function tn(e){return arguments.length?(this._x=e,this):this._x}function nn(e){return e[1]}function on(e){return arguments.length?(this._y=e,this):this._y}function ue(e,n,t){var i=new ze(n??en,t??nn,NaN,NaN,NaN,NaN);return e==null?i:i.addAll(e)}function ze(e,n,t,i,o,r){this._x=e,this._y=n,this._x0=t,this._y0=i,this._x1=o,this._y1=r,this._root=void 0}function rn(e){for(var n={data:e.data},t=n;e=e.next;)t=t.next={data:e.data};return n}var W=ue.prototype=ze.prototype;W.copy=function(){var e=new ze(this._x,this._y,this._x0,this._y0,this._x1,this._y1),n=this._root,t,i;if(!n)return e;if(!n.length)return e._root=rn(n),e;for(t=[{source:n,target:e._root=new Array(4)}];n=t.pop();)for(var o=0;o<4;++o)(i=n.source[o])&&(i.length?t.push({source:i,target:n.target[o]=new Array(4)}):n.target[o]=rn(i));return e};W.add=Bt;W.addAll=Vt;W.cover=Ut;W.data=Ht;W.extent=Gt;W.find=Wt;W.remove=qt;W.removeAll=Yt;W.root=Xt;W.size=Qt;W.visit=Jt;W.visitAfter=Zt;W.x=tn;W.y=on;function L(e){return function(){return e}}function ne(e){return(e()-.5)*1e-6}function Ii(e){return e.x+e.vx}function Si(e){return e.y+e.vy}function Be(e){var n,t,i,o=1,r=1;typeof e!="function"&&(e=L(e==null?1:+e));function s(){for(var l,m=n.length,_,h,u,x,p,d,v=0;v<r;++v)for(_=ue(n,Ii,Si).visitAfter(a),l=0;l<m;++l)h=n[l],p=t[h.index],d=p*p,u=h.x+h.vx,x=h.y+h.vy,_.visit(b);function b(I,w,$,U,J){var R=I.data,te=I.r,j=p+te;if(R){if(R.index>h.index){var re=u-R.x-R.vx,ae=x-R.y-R.vy,ie=re*re+ae*ae;ie<j*j&&(re===0&&(re=ne(i),ie+=re*re),ae===0&&(ae=ne(i),ie+=ae*ae),ie=(j-(ie=Math.sqrt(ie)))/ie*o,h.vx+=(re*=ie)*(j=(te*=te)/(d+te)),h.vy+=(ae*=ie)*j,R.vx-=re*(j=1-j),R.vy-=ae*j)}return}return w>u+j||U<u-j||$>x+j||J<x-j}}function a(l){if(l.data)return l.r=t[l.data.index];for(var m=l.r=0;m<4;++m)l[m]&&l[m].r>l.r&&(l.r=l[m].r)}function c(){if(n){var l,m=n.length,_;for(t=new Array(m),l=0;l<m;++l)_=n[l],t[_.index]=+e(_,l,n)}}return s.initialize=function(l,m){n=l,i=m,c()},s.iterations=function(l){return arguments.length?(r=+l,s):r},s.strength=function(l){return arguments.length?(o=+l,s):o},s.radius=function(l){return arguments.length?(e=typeof l=="function"?l:L(+l),c(),s):e},s}function Oi(e){return e.index}function an(e,n){var t=e.get(n);if(!t)throw new Error("node not found: "+n);return t}function Ke(e){var n=Oi,t=_,i,o=L(30),r,s,a,c,l,m=1;e==null&&(e=[]);function _(d){return 1/Math.min(a[d.source.index],a[d.target.index])}function h(d){for(var v=0,b=e.length;v<m;++v)for(var I=0,w,$,U,J,R,te,j;I<b;++I)w=e[I],$=w.source,U=w.target,J=U.x+U.vx-$.x-$.vx||ne(l),R=U.y+U.vy-$.y-$.vy||ne(l),te=Math.sqrt(J*J+R*R),te=(te-r[I])/te*d*i[I],J*=te,R*=te,U.vx-=J*(j=c[I]),U.vy-=R*j,$.vx+=J*(j=1-j),$.vy+=R*j}function u(){if(s){var d,v=s.length,b=e.length,I=new Map(s.map(($,U)=>[n($,U,s),$])),w;for(d=0,a=new Array(v);d<b;++d)w=e[d],w.index=d,typeof w.source!="object"&&(w.source=an(I,w.source)),typeof w.target!="object"&&(w.target=an(I,w.target)),a[w.source.index]=(a[w.source.index]||0)+1,a[w.target.index]=(a[w.target.index]||0)+1;for(d=0,c=new Array(b);d<b;++d)w=e[d],c[d]=a[w.source.index]/(a[w.source.index]+a[w.target.index]);i=new Array(b),x(),r=new Array(b),p()}}function x(){if(s)for(var d=0,v=e.length;d<v;++d)i[d]=+t(e[d],d,e)}function p(){if(s)for(var d=0,v=e.length;d<v;++d)r[d]=+o(e[d],d,e)}return h.initialize=function(d,v){s=d,l=v,u()},h.links=function(d){return arguments.length?(e=d,u(),h):e},h.id=function(d){return arguments.length?(n=d,h):n},h.iterations=function(d){return arguments.length?(m=+d,h):m},h.strength=function(d){return arguments.length?(t=typeof d=="function"?d:L(+d),x(),h):t},h.distance=function(d){return arguments.length?(o=typeof d=="function"?d:L(+d),p(),h):o},h}var Di={value:()=>{}};function ln(){for(var e=0,n=arguments.length,t={},i;e<n;++e){if(!(i=arguments[e]+"")||i in t||/[\s.]/.test(i))throw new Error("illegal type: "+i);t[i]=[]}return new Ne(t)}function Ne(e){this._=e}function Pi(e,n){return e.trim().split(/^|\s+/).map(function(t){var i="",o=t.indexOf(".");if(o>=0&&(i=t.slice(o+1),t=t.slice(0,o)),t&&!n.hasOwnProperty(t))throw new Error("unknown type: "+t);return{type:t,name:i}})}Ne.prototype=ln.prototype={constructor:Ne,on:function(e,n){var t=this._,i=Pi(e+"",t),o,r=-1,s=i.length;if(arguments.length<2){for(;++r<s;)if((o=(e=i[r]).type)&&(o=Ai(t[o],e.name)))return o;return}if(n!=null&&typeof n!="function")throw new Error("invalid callback: "+n);for(;++r<s;)if(o=(e=i[r]).type)t[o]=sn(t[o],e.name,n);else if(n==null)for(o in t)t[o]=sn(t[o],e.name,null);return this},copy:function(){var e={},n=this._;for(var t in n)e[t]=n[t].slice();return new Ne(e)},call:function(e,n){if((o=arguments.length-2)>0)for(var t=new Array(o),i=0,o,r;i<o;++i)t[i]=arguments[i+2];if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(r=this._[e],i=0,o=r.length;i<o;++i)r[i].value.apply(n,t)},apply:function(e,n,t){if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(var i=this._[e],o=0,r=i.length;o<r;++o)i[o].value.apply(n,t)}};function Ai(e,n){for(var t=0,i=e.length,o;t<i;++t)if((o=e[t]).name===n)return o.value}function sn(e,n,t){for(var i=0,o=e.length;i<o;++i)if(e[i].name===n){e[i]=Di,e=e.slice(0,i).concat(e.slice(i+1));break}return t!=null&&e.push({name:n,value:t}),e}var Ve=ln;var me=0,_e=0,he=0,dn=1e3,Ee,ye,Ie=0,pe=0,Se=0,xe=typeof performance=="object"&&performance.now?performance:Date,un=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function Ge(){return pe||(un($i),pe=xe.now()+Se)}function $i(){pe=0}function Ue(){this._call=this._time=this._next=null}Ue.prototype=Oe.prototype={constructor:Ue,restart:function(e,n,t){if(typeof e!="function")throw new TypeError("callback is not a function");t=(t==null?Ge():+t)+(n==null?0:+n),!this._next&&ye!==this&&(ye?ye._next=this:Ee=this,ye=this),this._call=e,this._time=t,He()},stop:function(){this._call&&(this._call=null,this._time=1/0,He())}};function Oe(e,n,t){var i=new Ue;return i.restart(e,n,t),i}function pn(){Ge(),++me;for(var e=Ee,n;e;)(n=pe-e._time)>=0&&e._call.call(void 0,n),e=e._next;--me}function cn(){pe=(Ie=xe.now())+Se,me=_e=0;try{pn()}finally{me=0,Fi(),pe=0}}function Li(){var e=xe.now(),n=e-Ie;n>dn&&(Se-=n,Ie=e)}function Fi(){for(var e,n=Ee,t,i=1/0;n;)n._call?(i>n._time&&(i=n._time),e=n,n=n._next):(t=n._next,n._next=null,n=e?e._next=t:Ee=t);ye=e,He(i)}function He(e){if(!me){_e&&(_e=clearTimeout(_e));var n=e-pe;n>24?(e<1/0&&(_e=setTimeout(cn,e-xe.now()-Se)),he&&(he=clearInterval(he))):(he||(Ie=xe.now(),he=setInterval(Li,dn)),me=1,un(cn))}}function fn(){let e=1;return()=>(e=(1664525*e+1013904223)%4294967296)/4294967296}function mn(e){return e.x}function gn(e){return e.y}var Ri=10,ji=Math.PI*(3-Math.sqrt(5));function We(e){var n,t=1,i=.001,o=1-Math.pow(i,1/300),r=0,s=.6,a=new Map,c=Oe(_),l=Ve("tick","end"),m=fn();e==null&&(e=[]);function _(){h(),l.call("tick",n),t<i&&(c.stop(),l.call("end",n))}function h(p){var d,v=e.length,b;p===void 0&&(p=1);for(var I=0;I<p;++I)for(t+=(r-t)*o,a.forEach(function(w){w(t)}),d=0;d<v;++d)b=e[d],b.fx==null?b.x+=b.vx*=s:(b.x=b.fx,b.vx=0),b.fy==null?b.y+=b.vy*=s:(b.y=b.fy,b.vy=0);return n}function u(){for(var p=0,d=e.length,v;p<d;++p){if(v=e[p],v.index=p,v.fx!=null&&(v.x=v.fx),v.fy!=null&&(v.y=v.fy),isNaN(v.x)||isNaN(v.y)){var b=Ri*Math.sqrt(.5+p),I=p*ji;v.x=b*Math.cos(I),v.y=b*Math.sin(I)}(isNaN(v.vx)||isNaN(v.vy))&&(v.vx=v.vy=0)}}function x(p){return p.initialize&&p.initialize(e,m),p}return u(),n={tick:h,restart:function(){return c.restart(_),n},stop:function(){return c.stop(),n},nodes:function(p){return arguments.length?(e=p,u(),a.forEach(x),n):e},alpha:function(p){return arguments.length?(t=+p,n):t},alphaMin:function(p){return arguments.length?(i=+p,n):i},alphaDecay:function(p){return arguments.length?(o=+p,n):+o},alphaTarget:function(p){return arguments.length?(r=+p,n):r},velocityDecay:function(p){return arguments.length?(s=1-p,n):1-s},randomSource:function(p){return arguments.length?(m=p,a.forEach(x),n):m},force:function(p,d){return arguments.length>1?(d==null?a.delete(p):a.set(p,x(d)),n):a.get(p)},find:function(p,d,v){var b=0,I=e.length,w,$,U,J,R;for(v==null?v=1/0:v*=v,b=0;b<I;++b)J=e[b],w=p-J.x,$=d-J.y,U=w*w+$*$,U<v&&(R=J,v=U);return R},on:function(p,d){return arguments.length>1?(l.on(p,d),n):l.on(p)}}}function qe(){var e,n,t,i,o=L(-30),r,s=1,a=1/0,c=.81;function l(u){var x,p=e.length,d=ue(e,mn,gn).visitAfter(_);for(i=u,x=0;x<p;++x)n=e[x],d.visit(h)}function m(){if(e){var u,x=e.length,p;for(r=new Array(x),u=0;u<x;++u)p=e[u],r[p.index]=+o(p,u,e)}}function _(u){var x=0,p,d,v=0,b,I,w;if(u.length){for(b=I=w=0;w<4;++w)(p=u[w])&&(d=Math.abs(p.value))&&(x+=p.value,v+=d,b+=d*p.x,I+=d*p.y);u.x=b/v,u.y=I/v}else{p=u,p.x=p.data.x,p.y=p.data.y;do x+=r[p.data.index];while(p=p.next)}u.value=x}function h(u,x,p,d){if(!u.value)return!0;var v=u.x-n.x,b=u.y-n.y,I=d-x,w=v*v+b*b;if(I*I/c<w)return w<a&&(v===0&&(v=ne(t),w+=v*v),b===0&&(b=ne(t),w+=b*b),w<s&&(w=Math.sqrt(s*w)),n.vx+=v*u.value*i/w,n.vy+=b*u.value*i/w),!0;if(u.length||w>=a)return;(u.data!==n||u.next)&&(v===0&&(v=ne(t),w+=v*v),b===0&&(b=ne(t),w+=b*b),w<s&&(w=Math.sqrt(s*w)));do u.data!==n&&(I=r[u.data.index]*i/w,n.vx+=v*I,n.vy+=b*I);while(u=u.next)}return l.initialize=function(u,x){e=u,t=x,m()},l.strength=function(u){return arguments.length?(o=typeof u=="function"?u:L(+u),m(),l):o},l.distanceMin=function(u){return arguments.length?(s=u*u,l):Math.sqrt(s)},l.distanceMax=function(u){return arguments.length?(a=u*u,l):Math.sqrt(a)},l.theta=function(u){return arguments.length?(c=u*u,l):Math.sqrt(c)},l}function Ye(e){var n=L(.1),t,i,o;typeof e!="function"&&(e=L(e==null?0:+e));function r(a){for(var c=0,l=t.length,m;c<l;++c)m=t[c],m.vx+=(o[c]-m.x)*i[c]*a}function s(){if(t){var a,c=t.length;for(i=new Array(c),o=new Array(c),a=0;a<c;++a)i[a]=isNaN(o[a]=+e(t[a],a,t))?0:+n(t[a],a,t)}}return r.initialize=function(a){t=a,s()},r.strength=function(a){return arguments.length?(n=typeof a=="function"?a:L(+a),s(),r):n},r.x=function(a){return arguments.length?(e=typeof a=="function"?a:L(+a),s(),r):e},r}function Xe(e){var n=L(.1),t,i,o;typeof e!="function"&&(e=L(e==null?0:+e));function r(a){for(var c=0,l=t.length,m;c<l;++c)m=t[c],m.vy+=(o[c]-m.y)*i[c]*a}function s(){if(t){var a,c=t.length;for(i=new Array(c),o=new Array(c),a=0;a<c;++a)i[a]=isNaN(o[a]=+e(t[a],a,t))?0:+n(t[a],a,t)}}return r.initialize=function(a){t=a,s()},r.strength=function(a){return arguments.length?(n=typeof a=="function"?a:L(+a),s(),r):n},r.y=function(a){return arguments.length?(e=typeof a=="function"?a:L(+a),s(),r):e},r}function Qe(e){let n=e.normalize("NFD");return n=n.replace(new RegExp("\\p{Mn}+","gu"),""),n=n.toLowerCase(),n=n.replace(/[-_\s]+/g," "),n=n.replace(/\s+/g," "),n.trim()}function Je(e){let n=new Map;return zi(e,n),Bi(e,n),n}function zi(e,n){for(let t of e){let i=vn(t);if(i===null)continue;let o=Qe(i);n.has(o)||n.set(o,t.path)}}function Bi(e,n){for(let t of e){if(vn(t)!==null)continue;let i=Ki(t.path);if(i.length===0)continue;let o=Qe(i);n.has(o)||n.set(o,t.path)}}function vn(e){let n=e.frontmatter?.name;return typeof n!="string"||n.length===0?null:n}function Ki(e){let n=e.split("/").filter(i=>i.length>0);if(n.length===0)return e;let t=n[n.length-1];return t==="SKILL.md"&&n.length>=2?n[n.length-2]:t.replace(/\.md$/,"")}function Ze(e,n,t){let i=e.charAt(0);if(i!=="/"&&i!=="@")return e;let o=n!==null?n.replace(/^[/@]/,"").trim():Qe(e.slice(1));return t.get(o)??e}var Vi=["network-simplex","longest-path","force"];function Rs(e){return e!=="force"}var Ui=["TOP_BOTTOM","BOTTOM_TOP","LEFT_RIGHT","RIGHT_LEFT"];var hn={compact:{nodeGap:40,layerGap:56},normal:{nodeGap:64,layerGap:96},spacious:{nodeGap:96,layerGap:144}},js="network-simplex",zs="TOP_BOTTOM",Bs="normal";function Ks(e){return typeof e=="string"&&Vi.includes(e)}function Vs(e){return typeof e=="string"&&Ui.includes(e)}var et=260,_n=120;function Xs(e,n){let t=n?.links??[],i=new Set(e.map(_=>_.path)),o=Je(e),r=new Set,s=0,a=0,c=0,l=0,m=0;for(let _ of t){if(!i.has(_.source)){s++;continue}let h=Ze(_.target,_.trigger?.normalizedTrigger??null,o);if(!i.has(h)){a++;continue}if(_.source===h){c++;continue}let u=yn(_.kind,_.source,h);if(r.has(u)){l++;continue}r.add(u),m++}return{raw:t.length,drawn:m,brokenSource:s,brokenTarget:a,selfLoops:c,duplicates:l}}function Qs(e,n){let t=e.map(o=>o.path).sort(),i=n.map(o=>o.id).sort();return`${t.length}|${t.join(",")}|${i.length}|${i.join(",")}`}function Js(e,n){let t=new Set(e.map(l=>l.path)),i=Je(e),o=new Map,r=n?.links??[];for(let l of r){if(!t.has(l.source))continue;let m=Ze(l.target,l.trigger?.normalizedTrigger??null,i);if(!t.has(m)||l.source===m)continue;let _=yn(l.kind,l.source,m),h=typeof l.confidence=="number"?l.confidence:.6,u=o.get(_);u?h>u.confidence&&(u.confidence=h):o.set(_,{id:_,from:l.source,to:m,kind:l.kind,confidence:h})}let s=[...o.values()],a=new Map;for(let l of e)a.set(l.path,l);let c=new Map;for(let l of n?.nodes??[])c.set(l.path,l);return{nodesByPath:a,apiNodesByPath:c,edges:s}}async function Zs(e,n,t,i){let o={width:et,height:_n},r=n.map(m=>({id:m.path,size:o})),s=t.map(m=>({source:m.from,target:m.to})),a=hn[i.spacing],c=await e.calculate(r,s,{algorithm:i.algorithm,direction:i.direction,nodeGap:a.nodeGap,layerGap:a.layerGap}),l=new Map;for(let{id:m,position:_}of c.nodes)l.set(m,{x:_.x,y:_.y});return l}function el(e,n){let t=e.map(a=>({id:a.path})),i=n.map(a=>({source:a.from,target:a.to})),o=We(t).force("link",Ke(i).id(a=>a.id).distance(90).strength(1)).force("charge",qe().strength(-200)).force("center",je(0,0)).force("x",Ye(0).strength(.06)).force("y",Xe(0).strength(.06)).force("collide",Be(et/2+12)).stop(),r=400;for(let a=0;a<r;a++)o.tick();let s=new Map;for(let a of t)s.set(a.id,{x:(a.x??0)-et/2,y:(a.y??0)-_n/2});return s}function tl(e,n,t,i=null){let o=e.edges.filter(c=>n.has(c.from)&&n.has(c.to)&&(i===null||i.has(c.kind))),r=new Map,s=new Map;for(let c of o)r.set(c.from,(r.get(c.from)??0)+1),s.set(c.to,(s.get(c.to)??0)+1);let a=[];for(let c of n){let l=e.nodesByPath.get(c);if(!l)continue;let m=e.apiNodesByPath.get(c),_=t.get(c),h=e.positions.get(c)??{x:0,y:0},u=_?{x:_.x,y:_.y}:h;a.push({id:c,path:c,view:l,kind:l.kind,position:u,stats:{linksIn:s.get(c)??0,linksOut:r.get(c)??0,bytesTotal:m?.bytes.total,tokensTotal:m?.tokens?.total,externalRefsCount:m?.externalRefsCount},summary:Hi(l)})}return{nodes:a,edges:o}}function Hi(e){let n={injectionDetected:!1,contentQuality:"clean"},t=(e.frontmatter.description??e.frontmatter.name??"").trim();return{kind:"markdown",confidence:.6,safety:n,whatItCovers:t||`${e.kind} entry`,topics:[],keyFacts:[]}}function yn(e,n,t){return`${e}:${n}::${t}`}var xn={invalidHex:e=>`deriveTints: invalid hex color "${e}" (expected #RRGGBB)`};function De(e,n,t){return[Math.round(e[0]+(n[0]-e[0])*t),Math.round(e[1]+(n[1]-e[1])*t),Math.round(e[2]+(n[2]-e[2])*t)]}function Gi(e){let n=/^#([0-9a-f]{6})$/i.exec(e);if(!n)throw new Error(xn.invalidHex(e));let t=parseInt(n[1],16);return[t>>16&255,t>>8&255,t&255]}function Pe([e,n,t]){let i=o=>Math.max(0,Math.min(255,o)).toString(16).padStart(2,"0");return`#${i(e)}${i(n)}${i(t)}`}var bn=[255,255,255],wn=[0,0,0];function tt(e,n){let t=Gi(e);return n==="light"?{bg:Pe(De(t,bn,.85)),fg:Pe(De(t,wn,.5))}:{bg:Pe(De(t,wn,.7)),fg:Pe(De(t,bn,.6))}}var Wi=/^[a-zA-Z][a-zA-Z0-9_-]{0,63}$/,Cn=/^#[0-9a-f]{6}$/i,dl=(()=>{class e{doc=q(at);_entries=K([]);kinds=this._entries.asReadonly();index=g(()=>{let t=new Map;for(let i of this._entries())t.set(i.name,i);return t});ingest(t){if(!t)return;let i=[];for(let[r,s]of Object.entries(t)){if(!Wi.test(r))continue;let a=s.providers[s.primaryProviderId];if(!a)continue;let c={name:r,primaryProviderId:s.primaryProviderId,providers:s.providers,label:a.label,color:a.color};a.colorDark!==void 0&&(c.colorDark=a.colorDark),a.emoji!==void 0&&(c.emoji=a.emoji),a.icon!==void 0&&(c.icon=a.icon),i.push(c)}let o=this._entries();Yi(o,i)||(this._entries.set(i),this.applyCssVars())}lookup(t){return this.index().get(t)}labelOf(t){return this.lookup(t)?.label??t}colorOf(t,i="light"){let o=this.lookup(t);return o?i==="dark"?o.colorDark??o.color:o.color:"#9ca3af"}iconOf(t){return this.lookup(t)?.icon}emojiOf(t){return this.lookup(t)?.emoji}providersOf(t){return this.lookup(t)?.providers}applyCssVars(){if(!this.doc.head)return;let t=qi(this.doc),i=[],o=[];for(let r of this._entries()){if(!Cn.test(r.color))continue;let s=r.colorDark??r.color;if(Cn.test(s))try{let a=tt(r.color,"light"),c=tt(s,"dark");i.push(`--sm-kind-${r.name}: ${r.color};`),i.push(`--sm-kind-${r.name}-bg: ${a.bg};`),i.push(`--sm-kind-${r.name}-fg: ${a.fg};`),o.push(`--sm-kind-${r.name}: ${s};`),o.push(`--sm-kind-${r.name}-bg: ${c.bg};`),o.push(`--sm-kind-${r.name}-fg: ${c.fg};`)}catch{continue}}t.textContent=`:root { ${i.join(" ")} } .app-dark { ${o.join(" ")} }`}static \u0275fac=function(i){return new(i||e)};static \u0275prov=Z({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})(),Tn="sm-kind-vars";function qi(e){let n=e.getElementById(Tn);return n||(n=e.createElement("style"),n.id=Tn,e.head.appendChild(n)),n}function Yi(e,n){if(e.length!==n.length)return!1;for(let t=0;t<e.length;t++){let i=e[t],o=n[t];if(i.name!==o.name||i.primaryProviderId!==o.primaryProviderId||JSON.stringify(i.providers)!==JSON.stringify(o.providers))return!1}return!0}export{Te as a,Ji as b,Le as c,Zi as d,eo as e,bt as f,wt as g,to as h,no as i,io as j,co as k,Ct as l,uo as m,Tt as n,dl as o,Ki as p,Vi as q,Rs as r,Ui as s,js as t,zs as u,Bs as v,Ks as w,Vs as x,Mt as y,kt as z,ua as A,xa as B,Xs as C,Qs as D,Js as E,Zs as F,el as G,tl as H};