@skill-map/cli 0.46.0 → 0.47.1
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.
- package/README.md +3 -3
- package/dist/cli.js +397 -162
- package/dist/index.js +26 -8
- package/dist/kernel/index.d.ts +31 -6
- package/dist/kernel/index.js +26 -8
- package/dist/migrations/001_initial.sql +16 -0
- package/dist/ui/{chunk-N3RUQDAR.js → chunk-3AKR33GE.js} +1 -1
- package/dist/ui/{chunk-RXQYLVSJ.js → chunk-3HLMBEDX.js} +1 -1
- package/dist/ui/{chunk-SF4FUT4U.js → chunk-7K36273M.js} +1 -1
- package/dist/ui/{chunk-S32E6ZCZ.js → chunk-CO2ZOUSD.js} +1 -1
- package/dist/ui/{chunk-F4RIBZ4P.js → chunk-CRWK2NFZ.js} +1 -1
- package/dist/ui/chunk-QCMLB44L.js +123 -0
- package/dist/ui/{chunk-EYBKZOMF.js → chunk-UIUGLD7F.js} +1 -1
- package/dist/ui/{chunk-ERUALZOV.js → chunk-UV3QRBRR.js} +1 -1
- package/dist/ui/{chunk-P4E74ZOS.js → chunk-WPUUCIS3.js} +11 -11
- package/dist/ui/{chunk-6AP364TB.js → chunk-XWU3YFSM.js} +1 -1
- package/dist/ui/{chunk-3YSNJXGB.js → chunk-YOF6HQCQ.js} +1 -1
- package/dist/ui/index.html +1 -1
- package/dist/ui/main-M4W7H6RY.js +4 -0
- package/migrations/001_initial.sql +16 -0
- package/package.json +2 -2
- package/dist/ui/chunk-L3JYFPSZ.js +0 -123
- package/dist/ui/main-NF5GO3JR.js +0 -4
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as st,c as lt,d as rt}from"./chunk-
|
|
1
|
+
import{a as st,c as lt,d as rt}from"./chunk-UV3QRBRR.js";import{A as Me,D as we,H as te,a as w,b as U,c as it,g as nt,i as ot,j as Ie,k as V,l as K,m as De,p as ze,q as ee,r as at,s as Oe,t as Ve,w as k}from"./chunk-WPUUCIS3.js";import{A as tt,C as Ee,O as J,a as Je,d as Le,h as Se,l as Be,m as Ae,p as Ue,r as Ke,u as re,v as Fe,x as et}from"./chunk-4SG4352Z.js";import{g as We}from"./chunk-EPBUSS3I.js";import{g as ye,j as xe,k as Ge,l as Te,m as ve,q as le}from"./chunk-VNA3TMIO.js";import{$ as je,$a as Ne,Ab as Q,Bb as X,Cb as Y,Db as S,Ga as Pe,Gb as M,Hb as fe,Ib as I,Ic as d,Jc as W,Ka as p,Kb as l,L as N,Lb as ge,M as ne,Mb as ae,Nb as he,O as de,Ob as Ze,Pb as m,Q as f,Qb as _,Ta as ke,Ub as $e,Vb as Qe,W as g,X as h,Xb as se,Y as F,Yb as b,Za as O,Zb as Xe,_a as oe,_b as Ye,ab as ue,bb as z,ca as y,cb as c,da as me,ha as _e,ic as Ce,kc as be,la as v,lb as L,mc as qe,ob as x,pb as T,ra as Re,rc as D,ub as s,uc as q,vb as u,wb as C,xb as E,yb as Z,yc as G,zb as $}from"./chunk-HAWX5WNM.js";import{a as P}from"./chunk-WCABR6TI.js";var yt=["data-p-icon","window-maximize"],ct=(()=>{class t extends Me{pathId;onInit(){this.pathId="url(#"+w()+")"}static \u0275fac=(()=>{let e;return function(i){return(e||(e=v(t)))(i||t)}})();static \u0275cmp=O({type:t,selectors:[["","data-p-icon","window-maximize"]],features:[z],attrs:yt,decls:5,vars:2,consts:[["fill-rule","evenodd","clip-rule","evenodd","d","M7 14H11.8C12.3835 14 12.9431 13.7682 13.3556 13.3556C13.7682 12.9431 14 12.3835 14 11.8V2.2C14 1.61652 13.7682 1.05694 13.3556 0.644365C12.9431 0.231785 12.3835 0 11.8 0H2.2C1.61652 0 1.05694 0.231785 0.644365 0.644365C0.231785 1.05694 0 1.61652 0 2.2V7C0 7.15913 0.063214 7.31174 0.175736 7.42426C0.288258 7.53679 0.44087 7.6 0.6 7.6C0.75913 7.6 0.911742 7.53679 1.02426 7.42426C1.13679 7.31174 1.2 7.15913 1.2 7V2.2C1.2 1.93478 1.30536 1.68043 1.49289 1.49289C1.68043 1.30536 1.93478 1.2 2.2 1.2H11.8C12.0652 1.2 12.3196 1.30536 12.5071 1.49289C12.6946 1.68043 12.8 1.93478 12.8 2.2V11.8C12.8 12.0652 12.6946 12.3196 12.5071 12.5071C12.3196 12.6946 12.0652 12.8 11.8 12.8H7C6.84087 12.8 6.68826 12.8632 6.57574 12.9757C6.46321 13.0883 6.4 13.2409 6.4 13.4C6.4 13.5591 6.46321 13.7117 6.57574 13.8243C6.68826 13.9368 6.84087 14 7 14ZM9.77805 7.42192C9.89013 7.534 10.0415 7.59788 10.2 7.59995C10.3585 7.59788 10.5099 7.534 10.622 7.42192C10.7341 7.30985 10.798 7.15844 10.8 6.99995V3.94242C10.8066 3.90505 10.8096 3.86689 10.8089 3.82843C10.8079 3.77159 10.7988 3.7157 10.7824 3.6623C10.756 3.55552 10.701 3.45698 10.622 3.37798C10.5099 3.2659 10.3585 3.20202 10.2 3.19995H7.00002C6.84089 3.19995 6.68828 3.26317 6.57576 3.37569C6.46324 3.48821 6.40002 3.64082 6.40002 3.79995C6.40002 3.95908 6.46324 4.11169 6.57576 4.22422C6.68828 4.33674 6.84089 4.39995 7.00002 4.39995H8.80006L6.19997 7.00005C6.10158 7.11005 6.04718 7.25246 6.04718 7.40005C6.04718 7.54763 6.10158 7.69004 6.19997 7.80005C6.30202 7.91645 6.44561 7.98824 6.59997 8.00005C6.75432 7.98824 6.89791 7.91645 6.99997 7.80005L9.60002 5.26841V6.99995C9.6021 7.15844 9.66598 7.30985 9.77805 7.42192ZM1.4 14H3.8C4.17066 13.9979 4.52553 13.8498 4.78763 13.5877C5.04973 13.3256 5.1979 12.9707 5.2 12.6V10.2C5.1979 9.82939 5.04973 9.47452 4.78763 9.21242C4.52553 8.95032 4.17066 8.80215 3.8 8.80005H1.4C1.02934 8.80215 0.674468 8.95032 0.412371 9.21242C0.150274 9.47452 0.00210008 9.82939 0 10.2V12.6C0.00210008 12.9707 0.150274 13.3256 0.412371 13.5877C0.674468 13.8498 1.02934 13.9979 1.4 14ZM1.25858 10.0586C1.29609 10.0211 1.34696 10 1.4 10H3.8C3.85304 10 3.90391 10.0211 3.94142 10.0586C3.97893 10.0961 4 10.147 4 10.2V12.6C4 12.6531 3.97893 12.704 3.94142 12.7415C3.90391 12.779 3.85304 12.8 3.8 12.8H1.4C1.34696 12.8 1.29609 12.779 1.25858 12.7415C1.22107 12.704 1.2 12.6531 1.2 12.6V10.2C1.2 10.147 1.22107 10.0961 1.25858 10.0586Z","fill","currentColor"],[3,"id"],["width","14","height","14","fill","white"]],template:function(n,i){n&1&&(F(),Z(0,"g"),Q(1,"path",0),$(),Z(2,"defs")(3,"clipPath",1),Q(4,"rect",2),$()()),n&2&&(L("clip-path",i.pathId),p(3),fe("id",i.pathId))},encapsulation:2})}return t})();var xt=["data-p-icon","window-minimize"],pt=(()=>{class t extends Me{pathId;onInit(){this.pathId="url(#"+w()+")"}static \u0275fac=(()=>{let e;return function(i){return(e||(e=v(t)))(i||t)}})();static \u0275cmp=O({type:t,selectors:[["","data-p-icon","window-minimize"]],features:[z],attrs:xt,decls:5,vars:2,consts:[["fill-rule","evenodd","clip-rule","evenodd","d","M11.8 0H2.2C1.61652 0 1.05694 0.231785 0.644365 0.644365C0.231785 1.05694 0 1.61652 0 2.2V7C0 7.15913 0.063214 7.31174 0.175736 7.42426C0.288258 7.53679 0.44087 7.6 0.6 7.6C0.75913 7.6 0.911742 7.53679 1.02426 7.42426C1.13679 7.31174 1.2 7.15913 1.2 7V2.2C1.2 1.93478 1.30536 1.68043 1.49289 1.49289C1.68043 1.30536 1.93478 1.2 2.2 1.2H11.8C12.0652 1.2 12.3196 1.30536 12.5071 1.49289C12.6946 1.68043 12.8 1.93478 12.8 2.2V11.8C12.8 12.0652 12.6946 12.3196 12.5071 12.5071C12.3196 12.6946 12.0652 12.8 11.8 12.8H7C6.84087 12.8 6.68826 12.8632 6.57574 12.9757C6.46321 13.0883 6.4 13.2409 6.4 13.4C6.4 13.5591 6.46321 13.7117 6.57574 13.8243C6.68826 13.9368 6.84087 14 7 14H11.8C12.3835 14 12.9431 13.7682 13.3556 13.3556C13.7682 12.9431 14 12.3835 14 11.8V2.2C14 1.61652 13.7682 1.05694 13.3556 0.644365C12.9431 0.231785 12.3835 0 11.8 0ZM6.368 7.952C6.44137 7.98326 6.52025 7.99958 6.6 8H9.8C9.95913 8 10.1117 7.93678 10.2243 7.82426C10.3368 7.71174 10.4 7.55913 10.4 7.4C10.4 7.24087 10.3368 7.08826 10.2243 6.97574C10.1117 6.86321 9.95913 6.8 9.8 6.8H8.048L10.624 4.224C10.73 4.11026 10.7877 3.95982 10.7849 3.80438C10.7822 3.64894 10.7192 3.50063 10.6093 3.3907C10.4994 3.28077 10.3511 3.2178 10.1956 3.21506C10.0402 3.21232 9.88974 3.27002 9.776 3.376L7.2 5.952V4.2C7.2 4.04087 7.13679 3.88826 7.02426 3.77574C6.91174 3.66321 6.75913 3.6 6.6 3.6C6.44087 3.6 6.28826 3.66321 6.17574 3.77574C6.06321 3.88826 6 4.04087 6 4.2V7.4C6.00042 7.47975 6.01674 7.55862 6.048 7.632C6.07656 7.70442 6.11971 7.7702 6.17475 7.82524C6.2298 7.88029 6.29558 7.92344 6.368 7.952ZM1.4 8.80005H3.8C4.17066 8.80215 4.52553 8.95032 4.78763 9.21242C5.04973 9.47452 5.1979 9.82939 5.2 10.2V12.6C5.1979 12.9707 5.04973 13.3256 4.78763 13.5877C4.52553 13.8498 4.17066 13.9979 3.8 14H1.4C1.02934 13.9979 0.674468 13.8498 0.412371 13.5877C0.150274 13.3256 0.00210008 12.9707 0 12.6V10.2C0.00210008 9.82939 0.150274 9.47452 0.412371 9.21242C0.674468 8.95032 1.02934 8.80215 1.4 8.80005ZM3.94142 12.7415C3.97893 12.704 4 12.6531 4 12.6V10.2C4 10.147 3.97893 10.0961 3.94142 10.0586C3.90391 10.0211 3.85304 10 3.8 10H1.4C1.34696 10 1.29609 10.0211 1.25858 10.0586C1.22107 10.0961 1.2 10.147 1.2 10.2V12.6C1.2 12.6531 1.22107 12.704 1.25858 12.7415C1.29609 12.779 1.34696 12.8 1.4 12.8H3.8C3.85304 12.8 3.90391 12.779 3.94142 12.7415Z","fill","currentColor"],[3,"id"],["width","14","height","14","fill","white"]],template:function(n,i){n&1&&(F(),Z(0,"g"),Q(1,"path",0),$(),Z(2,"defs")(3,"clipPath",1),Q(4,"rect",2),$()()),n&2&&(L("clip-path",i.pathId),p(3),fe("id",i.pathId))},encapsulation:2})}return t})();var dt=(()=>{class t extends ee{pFocusTrapDisabled=!1;platformId=f(Re);document=f(je);firstHiddenFocusableElement;lastHiddenFocusableElement;onInit(){le(this.platformId)&&!this.pFocusTrapDisabled&&!this.firstHiddenFocusableElement&&!this.lastHiddenFocusableElement&&this.createHiddenFocusableElements()}onChanges(e){e.pFocusTrapDisabled&&le(this.platformId)&&(e.pFocusTrapDisabled.currentValue?this.removeHiddenFocusableElements():this.createHiddenFocusableElements())}removeHiddenFocusableElements(){this.firstHiddenFocusableElement&&this.firstHiddenFocusableElement.parentNode&&this.firstHiddenFocusableElement.parentNode.removeChild(this.firstHiddenFocusableElement),this.lastHiddenFocusableElement&&this.lastHiddenFocusableElement.parentNode&&this.lastHiddenFocusableElement.parentNode.removeChild(this.lastHiddenFocusableElement)}getComputedSelector(e){return`:not(.p-hidden-focusable):not([data-p-hidden-focusable="true"])${e??""}`}createHiddenFocusableElements(){let n=i=>Ke("span",{class:"p-hidden-accessible p-hidden-focusable",tabindex:"0",role:"presentation","aria-hidden":!0,"data-p-hidden-accessible":!0,"data-p-hidden-focusable":!0,onFocus:i?.bind(this)});this.firstHiddenFocusableElement=n(this.onFirstHiddenElementFocus),this.lastHiddenFocusableElement=n(this.onLastHiddenElementFocus),this.firstHiddenFocusableElement.setAttribute("data-pc-section","firstfocusableelement"),this.lastHiddenFocusableElement.setAttribute("data-pc-section","lastfocusableelement"),this.el.nativeElement.prepend(this.firstHiddenFocusableElement),this.el.nativeElement.append(this.lastHiddenFocusableElement)}onFirstHiddenElementFocus(e){let{currentTarget:n,relatedTarget:i}=e,a=i===this.lastHiddenFocusableElement||!this.el.nativeElement?.contains(i)?et(n.parentElement,":not(.p-hidden-focusable)"):this.lastHiddenFocusableElement;Fe(a)}onLastHiddenElementFocus(e){let{currentTarget:n,relatedTarget:i}=e,a=i===this.firstHiddenFocusableElement||!this.el.nativeElement?.contains(i)?tt(n.parentElement,":not(.p-hidden-focusable)"):this.firstHiddenFocusableElement;Fe(a)}static \u0275fac=(()=>{let e;return function(i){return(e||(e=v(t)))(i||t)}})();static \u0275dir=Ne({type:t,selectors:[["","pFocusTrap",""]],inputs:{pFocusTrapDisabled:[2,"pFocusTrapDisabled","pFocusTrapDisabled",d]},features:[z]})}return t})();var mt=`
|
|
2
2
|
.p-dialog {
|
|
3
3
|
max-height: 90%;
|
|
4
4
|
transform: scale(1);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as ni}from"./chunk-
|
|
1
|
+
import{a as ni}from"./chunk-CO2ZOUSD.js";import{a as Xe,b as Yt,d as tt,e as ot,f as ii}from"./chunk-UV3QRBRR.js";import{A as Oe,B as Zt,C as et,F as Ke,H as it,I as Jt,S as nt,V as Xt,W as ei,X as ti,a as Ye,f as Kt,g as Qt,j as ve,k as D,l as Je,m as te,p as Y,q as le,t as qt,u as Gt,v as Wt,w as b,x as we,z as Ut}from"./chunk-WPUUCIS3.js";import{A as Rt,E as Le,G as pt,J as ze,N as Ht,Q as ut,R as $t,T as Ze,U as ye,V as Be,X as mt,b as Mt,ca as jt,d as Lt,k as zt,m as Bt,n as Dt,o as At,p as dt,u as Se,v as pe,w as Nt,x as Pt,y as Me}from"./chunk-4SG4352Z.js";import{g as Ft,i as Ue,j as Ie,k as $e,l as de,m as Z,q as je}from"./chunk-VNA3TMIO.js";import{$a as Ct,$b as ct,Ab as Ce,Bb as N,Cb as P,Db as O,Ga as bt,Gb as H,Hb as St,Ib as M,Ic as x,Jc as Pe,K as Ge,Ka as c,Kb as r,L as X,Lb as fe,M as ie,Mb as re,Nb as ge,O as q,Ob as Ae,Pb as u,Q as C,Qb as m,Ta as Te,Ub as oe,Vb as We,W as y,Wb as Ot,X as v,Xb as ke,Y as R,Yb as h,Za as z,Zb as xe,_a as ne,_b as Fe,ab as ee,bb as F,ca as _,cb as p,cc as Et,da as De,dc as Vt,ec as kt,ha as he,ic as U,ja as vt,jc as Ne,kc as B,la as T,lb as I,lc as _e,mb as xt,nb as It,ob as G,pb as W,rc as $,sb as wt,tb as Tt,ub as l,uc as ce,vb as f,wb as g,xb as Q,yb as at,yc as L,zb as rt}from"./chunk-HAWX5WNM.js";import{a as K,b as He}from"./chunk-WCABR6TI.js";var Ni=["data-p-icon","blank"],oi=(()=>{class t extends Oe{static \u0275fac=(()=>{let e;return function(n){return(e||(e=T(t)))(n||t)}})();static \u0275cmp=z({type:t,selectors:[["","data-p-icon","blank"]],features:[F],attrs:Ni,decls:1,vars:0,consts:[["width","1","height","1","fill","currentColor","fill-opacity","0"]],template:function(i,n){i&1&&(R(),Ce(0,"rect",0))},encapsulation:2})}return t})();var Pi=["data-p-icon","check"],si=(()=>{class t extends Oe{static \u0275fac=(()=>{let e;return function(n){return(e||(e=T(t)))(n||t)}})();static \u0275cmp=z({type:t,selectors:[["","data-p-icon","check"]],features:[F],attrs:Pi,decls:1,vars:0,consts:[["d","M4.86199 11.5948C4.78717 11.5923 4.71366 11.5745 4.64596 11.5426C4.57826 11.5107 4.51779 11.4652 4.46827 11.4091L0.753985 7.69483C0.683167 7.64891 0.623706 7.58751 0.580092 7.51525C0.536478 7.44299 0.509851 7.36177 0.502221 7.27771C0.49459 7.19366 0.506156 7.10897 0.536046 7.03004C0.565935 6.95111 0.613367 6.88 0.674759 6.82208C0.736151 6.76416 0.8099 6.72095 0.890436 6.69571C0.970973 6.67046 1.05619 6.66385 1.13966 6.67635C1.22313 6.68886 1.30266 6.72017 1.37226 6.76792C1.44186 6.81567 1.4997 6.8786 1.54141 6.95197L4.86199 10.2503L12.6397 2.49483C12.7444 2.42694 12.8689 2.39617 12.9932 2.40745C13.1174 2.41873 13.2343 2.47141 13.3251 2.55705C13.4159 2.64268 13.4753 2.75632 13.4938 2.87973C13.5123 3.00315 13.4888 3.1292 13.4271 3.23768L5.2557 11.4091C5.20618 11.4652 5.14571 11.5107 5.07801 11.5426C5.01031 11.5745 4.9368 11.5923 4.86199 11.5948Z","fill","currentColor"]],template:function(i,n){i&1&&(R(),Ce(0,"path",0))},encapsulation:2})}return t})();var Ri=["data-p-icon","chevron-down"],li=(()=>{class t extends Oe{static \u0275fac=(()=>{let e;return function(n){return(e||(e=T(t)))(n||t)}})();static \u0275cmp=z({type:t,selectors:[["","data-p-icon","chevron-down"]],features:[F],attrs:Ri,decls:1,vars:0,consts:[["d","M7.01744 10.398C6.91269 10.3985 6.8089 10.378 6.71215 10.3379C6.61541 10.2977 6.52766 10.2386 6.45405 10.1641L1.13907 4.84913C1.03306 4.69404 0.985221 4.5065 1.00399 4.31958C1.02276 4.13266 1.10693 3.95838 1.24166 3.82747C1.37639 3.69655 1.55301 3.61742 1.74039 3.60402C1.92777 3.59062 2.11386 3.64382 2.26584 3.75424L7.01744 8.47394L11.769 3.75424C11.9189 3.65709 12.097 3.61306 12.2748 3.62921C12.4527 3.64535 12.6199 3.72073 12.7498 3.84328C12.8797 3.96582 12.9647 4.12842 12.9912 4.30502C13.0177 4.48162 12.9841 4.662 12.8958 4.81724L7.58083 10.1322C7.50996 10.2125 7.42344 10.2775 7.32656 10.3232C7.22968 10.3689 7.12449 10.3944 7.01744 10.398Z","fill","currentColor"]],template:function(i,n){i&1&&(R(),Ce(0,"path",0))},encapsulation:2})}return t})();var Hi=["data-p-icon","search"],ai=(()=>{class t extends Oe{pathId;onInit(){this.pathId="url(#"+Ye()+")"}static \u0275fac=(()=>{let e;return function(n){return(e||(e=T(t)))(n||t)}})();static \u0275cmp=z({type:t,selectors:[["","data-p-icon","search"]],features:[F],attrs:Hi,decls:5,vars:2,consts:[["fill-rule","evenodd","clip-rule","evenodd","d","M2.67602 11.0265C3.6661 11.688 4.83011 12.0411 6.02086 12.0411C6.81149 12.0411 7.59438 11.8854 8.32483 11.5828C8.87005 11.357 9.37808 11.0526 9.83317 10.6803L12.9769 13.8241C13.0323 13.8801 13.0983 13.9245 13.171 13.9548C13.2438 13.985 13.3219 14.0003 13.4007 14C13.4795 14.0003 13.5575 13.985 13.6303 13.9548C13.7031 13.9245 13.7691 13.8801 13.8244 13.8241C13.9367 13.7116 13.9998 13.5592 13.9998 13.4003C13.9998 13.2414 13.9367 13.089 13.8244 12.9765L10.6807 9.8328C11.053 9.37773 11.3573 8.86972 11.5831 8.32452C11.8857 7.59408 12.0414 6.81119 12.0414 6.02056C12.0414 4.8298 11.6883 3.66579 11.0268 2.67572C10.3652 1.68564 9.42494 0.913972 8.32483 0.45829C7.22472 0.00260857 6.01418 -0.116618 4.84631 0.115686C3.67844 0.34799 2.60568 0.921393 1.76369 1.76338C0.921698 2.60537 0.348296 3.67813 0.115991 4.84601C-0.116313 6.01388 0.00291375 7.22441 0.458595 8.32452C0.914277 9.42464 1.68595 10.3649 2.67602 11.0265ZM3.35565 2.0158C4.14456 1.48867 5.07206 1.20731 6.02086 1.20731C7.29317 1.20731 8.51338 1.71274 9.41304 2.6124C10.3127 3.51206 10.8181 4.73226 10.8181 6.00457C10.8181 6.95337 10.5368 7.88088 10.0096 8.66978C9.48251 9.45868 8.73328 10.0736 7.85669 10.4367C6.98011 10.7997 6.01554 10.8947 5.08496 10.7096C4.15439 10.5245 3.2996 10.0676 2.62869 9.39674C1.95778 8.72583 1.50089 7.87104 1.31579 6.94046C1.13068 6.00989 1.22568 5.04532 1.58878 4.16874C1.95187 3.29215 2.56675 2.54292 3.35565 2.0158Z","fill","currentColor"],[3,"id"],["width","14","height","14","fill","white"]],template:function(i,n){i&1&&(R(),at(0,"g"),Ce(1,"path",0),rt(),at(2,"defs")(3,"clipPath",1),Ce(4,"rect",2),rt()()),i&2&&(I("clip-path",n.pathId),c(3),St("id",n.pathId))},encapsulation:2})}return t})();var ri=`
|
|
2
2
|
.p-message {
|
|
3
3
|
display: grid;
|
|
4
4
|
grid-template-rows: 1fr;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{U as k,Y as D,m as y,p as N,w as r,z as M}from"./chunk-
|
|
1
|
+
import{U as k,Y as D,m as y,p as N,w as r,z as M}from"./chunk-WPUUCIS3.js";import{$a as x,Ib as m,Ic as u,L as a,M as l,O as s,Q as o,Yb as b,_a as f,ab as g,bb as v,ic as I,ja as p,la as c,lb as h,uc as T,yc as i}from"./chunk-HAWX5WNM.js";var w=`
|
|
2
2
|
.p-inputtext {
|
|
3
3
|
font-family: inherit;
|
|
4
4
|
font-feature-settings: inherit;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{M as l,N as d,R as p}from"./chunk-
|
|
1
|
+
import{M as l,N as d,R as p}from"./chunk-WPUUCIS3.js";import{L as a,Q as s,ha as o,uc as r}from"./chunk-HAWX5WNM.js";import{a as c}from"./chunk-WCABR6TI.js";var S={triggerLabel:"Settings",triggerTooltip:"Settings",modalTitle:"Settings",closeLabel:"Close",sections:{plugins:"Plugins",general:"General",project:"Project",changelog:"Changelog",about:"About"},general:{heading:"General",intro:"Per-machine preferences.",loadErrorPrefix:"Could not load preferences:",saveErrorPrefix:"Could not save preferences:",toggles:{"updateCheck.enabled":{label:"Check for updates",description:"Check npm for newer @skill-map/cli releases."},telemetry:{label:"Send anonymous error & usage reports",description:"Report crashes and which features you use. No file contents or paths.",hint:"Restart sm for this to take effect."}},extraTheme:{label:"Theme",description:"Pick a specialty theme.",options:{none:{label:"None",description:"Use the topbar dark/light toggle."}}},storageHintLabel:"Settings are stored in:",storageHintPath:"~/.skill-map/settings.json"},project:{heading:"Project",introPrefix:"These settings apply only to this project and are saved in",introPath:".skill-map/settings.local.json",introSuffix:".",loadErrorPrefix:"Could not load project settings:",saveErrorPrefix:"Could not save project settings:",referencePathsLabel:"Folders for link validation",referencePathsDescription:"If your notes link to files outside this project, list those folders here. Skill-map checks them only to confirm the links work, nothing from these folders shows up in the map.",referencePathsPlaceholder:"~/Documents/research",commaForbidden:"Add one path at a time, without commas.",addPathLabel:"Add path",removePathLabel:"Remove",confirmDialogHeader:"Allow access to folders outside this project?",confirmDialogIntro:"This change lets the scan read files in:",confirmDialogAccept:"Allow access",confirmDialogReject:"Cancel",ignorePatternsLabel:"Ignored patterns",ignorePatternsDescriptionPrefix:"Patterns that exclude files and folders from the scan, stored in",ignorePatternsDescriptionFile:".skillmapignore",ignorePatternsDescriptionMiddle:"at the project root. Same syntax as",ignorePatternsDescriptionGitignore:".gitignore",ignorePatternsDescriptionSuffix:"(one pattern per line).",ignorePatternsPlaceholder:"secrets.md",ignorePatternEmpty:"Pattern cannot be empty or whitespace-only.",ignorePatternHasControlChar:"Pattern must be a single line without control characters.",ignorePatternDuplicate:"This pattern is already in the list.",addIgnorePatternLabel:"Add pattern",removeIgnorePatternLabel:"Remove",activeProviderLabel:"Active provider",activeProviderDescription:"Selects which provider sees this project. The map reflects how the chosen provider interprets your files.",activeProviderSourceAutodetect:"Auto-detected from your files (no value saved yet).",activeProviderSourceNone:"No provider detected. Install or enable a provider to start.",activeProviderDetectedPrefix:"Detected:",activeProviderEmptyOption:"(none)",activeProviderConfirmHeader:"Switch the active provider?",activeProviderConfirmIntro:"Switching will clear the persisted scan (nodes, links, issues). Jobs and history are kept. You will need to run `sm scan` after the switch.",activeProviderConfirmAccept:"Switch and clear scan",activeProviderConfirmReject:"Cancel",activeProviderSwitchedPrefix:"Lens switched. Cleared",activeProviderSwitchedSuffix:"scan table(s). Run `sm scan` to repopulate.",activeProviderSwitchedNoDb:"Lens switched. Run `sm scan` to populate the map under the new lens."},changelogHeading:"Changelog",changelogIntro:"What's new in skill-map. Each entry covers a release of @skill-map/cli (the CLI + bundled UI) and lists the user-facing changes plus the workspace(s) each one affects.",changelogEmpty:"No release notes yet. Future releases will populate this list automatically from the changesets shipped in each PR.",changelogInternalRelease:"Internal release. Focus on stability, infra, and refactors. No user-facing changes this time.",changelogAffectedPackages:"Affected packages",changelogFooterText:"Want the full changelog?",changelogFooterLinkLabel:"See it on GitHub \u2192",changelogFooterUrl:"https://github.com/crystian/skill-map/blob/main/src/CHANGELOG.md",aboutHeading:"About",aboutIntro:"Version information for the running CLI / server.",aboutCliLabel:"skill-map CLI",aboutSpecLabel:"Spec version",aboutSchemaLabel:"Schema version",aboutFolderLabel:"Project folder",aboutDbLabel:"Project DB",aboutDbValue:(e,i)=>e==="present"?i:`${e} \xB7 ${i}`,aboutLoading:"Loading\u2026",aboutUnknown:"-",aboutErrorPrefix:"Could not read health endpoint:",aboutLinksHeading:"Links",aboutWebsiteLabel:"Website",aboutGithubLabel:"GitHub",aboutWebsiteUrl:"https://skill-map.ai/",aboutGithubUrl:"https://github.com/crystian/skill-map",aboutStarHeading:"Enjoying skill-map?",aboutStarBody:"If it's useful to you, drop us a star on GitHub, it helps a lot and keeps the project alive.",aboutStarCta:"Star on GitHub",aboutStarA11y:"Open the skill-map repository on GitHub to give it a star",pluginsHeading:"Plugins",pluginsIntro:"Enable or disable installed plugins.",pluginsSearchPlaceholder:"Filter by name\u2026",pluginsSearchA11y:"Filter plugins by name",pluginsSearchEmpty:e=>`No plugins match "${e}".`,pluginsKindFilterAll:"All",pluginsKindFilterOptionA11y:(e,i)=>i?`Show only ${e} extensions`:"Show all kinds",pluginsSourceFilterOptionA11y:(e,i)=>i?`Show only ${e} plugins`:"Show all sources",pluginsFilterA11y:"Filter plugins by source and kind",pluginsFilterAllA11y:"Show every plugin (clear the source and kind filters)",pluginsProjectEmpty:"No project plugins yet. Drop one under .skill-map/plugins/ or create it with sm plugins create <id>.",unsavedChangesMessage:e=>e===1?'1 unsaved change. Click "Apply" to persist it.':`${e} unsaved changes. Click "Apply" to persist them.`,startsAsDisabledRowHint:"This plugin started disabled and is not loaded in memory. Restart `sm serve` for the change to take effect.",startsAsDisabledFooterHint:"Some plugins were disabled when the server started. Consider restarting `sm serve` so they take effect.",discardChanges:"Discard",applyAndClose:"Apply",discardA11y:"Discard pending plugin changes",applyA11y:"Apply pending plugin changes and refresh the map",confirmCloseTitle:"Apply pending changes?",confirmCloseBody:e=>e===1?"You have 1 unsaved change.":`You have ${e} unsaved changes.`,keepEditing:"Keep editing",sourceBuiltIn:"Built-in",sourceProject:"Project",enabledLabel:"Enabled",disabledLabel:"Disabled",lockedLabel:"Locked",lockedTooltip:"Locked by the host (cannot be toggled).",expandLabel:"Show extensions",collapseLabel:"Hide extensions",statusFailure:{"incompatible-spec":"Incompatible spec version","invalid-manifest":"Invalid manifest","load-error":"Failed to load","id-collision":"Plugin id collision"},loading:"Loading plugins\u2026",empty:"No plugins installed.",errorPrefix:"Could not load plugins:",toggleErrorPrefix:"Toggle failed:",a11y:{triggerLabel:"Open settings",pluginToggle:(e,i)=>i?`Enable plugin ${e}`:`Disable plugin ${e}`,extensionToggle:(e,i)=>i?`Enable ${e}`:`Disable ${e}`,pluginRow:e=>`Plugin ${e} row`,extensionRow:e=>`Extension ${e} row`}};var y="#9ca3af",k="#6b7280",A=(()=>{class e{_entries=o([]);providers=this._entries.asReadonly();index=r(()=>{let t=new Map;for(let n of this._entries())t.set(n.id,n);return t});ingest(t){if(!t)return;let n=[];for(let[b,v]of Object.entries(t))n.push(c({id:b},v));P(this._entries(),n)||this._entries.set(n)}lookup(t){return this.index().get(t)}cardChip(t){if(!t)return null;let n=this.lookup(t);return n?n.hideChip?null:u(n):g(t)}lensChip(t){if(!t)return null;let n=this.lookup(t);return n?u(n):g(t)}static \u0275fac=function(n){return new(n||e)};static \u0275prov=a({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();function u(e){let i={label:e.label,color:e.color};return e.colorDark!==void 0&&(i.colorDark=e.colorDark),i}function g(e){return{label:e,color:y,colorDark:k}}function P(e,i){if(e.length!==i.length)return!1;for(let t=0;t<e.length;t++)if(JSON.stringify(e[t])!==JSON.stringify(i[t]))return!1;return!0}var f={available:"Update available",copiedLabel:"Copied!",tooltip:e=>`v${e} is available. Click to copy the install command.`,copyCommand:"npm i -g @skill-map/cli@latest",copiedTooltip:"Copied! Paste it in your terminal.",npmLinkUrl:"https://www.npmjs.com/package/@skill-map/cli",npmLinkTooltip:"Open on npm",npmLinkA11y:"Open the @skill-map/cli package page on npm",a11yLabel:e=>`Update available: version ${e}, click to copy the install command`,versionLabel:e=>`v${e}`,versionTooltip:e=>`skill-map CLI v${e}`,versionA11yLabel:e=>`Running version ${e}`,fetchFailed:e=>`UpdateCheckService: fetch failed (${e})`};var R=(()=>{class e{dataSource=s(l);status=o(null);isOutdated=r(()=>this.status()?.isOutdated===!0);latest=r(()=>this.status()?.latest??null);current=r(()=>this.status()?.current??null);async load(){try{let t=await this.dataSource.getUpdateStatus();this.status.set(t)}catch(t){let n=t instanceof Error?t.message:String(t);console.warn(f.fetchFailed(n))}}static \u0275fac=function(n){return new(n||e)};static \u0275prov=a({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();var m={scanFailed:e=>`scan-trigger failed: ${e}`};var M=(()=>{class e{dataSource=s(l);loader=s(p);scanning=o(!1);scanError=o(null);async run(){if(!this.scanning()){this.scanning.set(!0),this.scanError.set(null);try{await this.dataSource.runScan(),await this.loader.load()}catch(t){let n=t instanceof d||t instanceof Error?t.message:String(t);this.scanError.set(n),console.warn(m.scanFailed(n))}finally{this.scanning.set(!1)}}}static \u0275fac=function(n){return new(n||e)};static \u0275prov=a({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();export{A as a,f as b,R as c,S as d,M as e};
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
import{a as Lt,c as Nt,d as y,e as Rt}from"./chunk-CRWK2NFZ.js";import{a as vt,b as xt,c as Pe,d as Ee,e as St}from"./chunk-3HLMBEDX.js";import{d as Pt,f as Et,g as Te}from"./chunk-VW2A6WZ3.js";import{e as Mt,f as Tt,g as Ot,h as It,l as Ft,m as jt,n as Dt,o as At,p as ce,q as de}from"./chunk-7K36273M.js";import{a as Oe,b as Ie}from"./chunk-CO2ZOUSD.js";import{e as wt,f as yt,g as kt}from"./chunk-UV3QRBRR.js";import{D as Se,E as re,M as X,N as U,S as Ct,T as Me,V as se,W as ae,X as le,c as oe,j as ye,k as ke,m as _t,p as ht,v as ft,w as _e,x as bt}from"./chunk-WPUUCIS3.js";import"./chunk-4SG4352Z.js";import"./chunk-EPBUSS3I.js";import{l as ut,m as mt}from"./chunk-VNA3TMIO.js";import{$b as p,Ab as ne,Db as at,Ga as nt,Gb as N,Ha as J,Hb as W,Ib as w,Ic as ze,Jc as pt,K as Qe,Ka as o,Kb as d,L as be,M as Ye,Nb as lt,O as Je,Ob as ct,Pb as ve,Q as k,Qb as xe,V as Ze,Vb as Ve,W as E,Wb as G,X as M,Xb as dt,Yb as me,Za as z,Zb as l,_a as it,_b as _,aa as et,ab as ot,ac as R,bb as rt,ca as tt,cb as K,ha as u,ic as ie,ja as B,kc as gt,la as Re,lb as b,ob as h,pb as f,qb as st,rb as q,rc as Ce,sb as A,tb as L,ub as m,uc as x,vb as c,wb as a,xb as O,xc as we,yb as v,yc as $,zb as C}from"./chunk-HAWX5WNM.js";import{a as H,b as Y}from"./chunk-WCABR6TI.js";function kn(t,r){if(t&1&&(v(0,"p",6),l(1),C()),t&2){let e=d();o(),R(" ",e.texts.aboutErrorPrefix," ",e.loadError()," ")}}var Vt=(()=>{class t{dataSource=k(X);updateCheck=k(Nt);theme=k(Te);visible=$.required();texts=y;health=u(null);loadError=u(null);markSrc=x(()=>this.theme.resolved()==="dark"?"skill-map-mark-light.svg":"skill-map-mark-dark.svg");cliVersion=x(()=>this.updateCheck.current()??this.health()?.implVersion??this.texts.aboutUnknown);specVersion=x(()=>this.health()?.specVersion??this.texts.aboutLoading);schemaVersion=x(()=>this.health()?.schemaVersion??this.texts.aboutLoading);cwd=x(()=>this.health()?.cwd??this.texts.aboutLoading);dbDisplay=x(()=>{let e=this.health();return e?this.texts.aboutDbValue(e.db,Sn(e.dbPath,e.cwd)):this.texts.aboutLoading});constructor(){B(()=>{this.visible()&&this.health()===null&&this.load()})}async load(){this.loadError.set(null);try{let e=await this.dataSource.health();this.health.set(e)}catch(e){let i=e instanceof U||e instanceof Error?e.message:String(e);this.loadError.set(i)}}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=z({type:t,selectors:[["sm-settings-about"]],inputs:{visible:[1,"visible"]},decls:57,vars:25,consts:[["aria-labelledby","settings-about-heading","data-testid","settings-about",1,"settings-about"],[1,"settings-about__header"],["alt","","aria-hidden","true","data-testid","settings-about-logo",1,"settings-about__logo",3,"src"],[1,"settings-about__heading-text"],["id","settings-about-heading",1,"settings-about__title"],[1,"settings-about__intro"],["data-testid","settings-about-error",1,"settings-about__error"],["target","_blank","rel","noopener noreferrer","data-testid","settings-about-star",1,"settings-about__star",3,"href"],["aria-hidden","true",1,"fa-solid","fa-star","settings-about__star-icon"],[1,"settings-about__star-text"],[1,"settings-about__star-heading"],[1,"settings-about__star-body"],[1,"settings-about__star-cta"],["aria-hidden","true",1,"fa-solid","fa-star"],[1,"settings-about__list"],[1,"settings-about__row"],[1,"settings-about__label"],[1,"settings-about__value"],["target","_blank","rel","noopener noreferrer","data-testid","settings-about-website",1,"settings-about__link",3,"href"],["target","_blank","rel","noopener noreferrer","data-testid","settings-about-github",1,"settings-about__link",3,"href"],["data-testid","settings-about-cli",1,"settings-about__value"],["data-testid","settings-about-spec",1,"settings-about__value"],["data-testid","settings-about-schema",1,"settings-about__value"],["data-testid","settings-about-cwd",1,"settings-about__value"],["data-testid","settings-about-db",1,"settings-about__value"]],template:function(i,n){i&1&&(v(0,"section",0)(1,"header",1),ne(2,"img",2),v(3,"div",3)(4,"h2",4),l(5),C(),v(6,"p",5),l(7),C()()(),h(8,kn,2,2,"p",6),v(9,"a",7),ne(10,"i",8),v(11,"span",9)(12,"span",10),l(13),C(),v(14,"span",11),l(15),C()(),v(16,"span",12),ne(17,"i",13),l(18),C()(),v(19,"dl",14)(20,"div",15)(21,"dt",16),l(22),C(),v(23,"dd",17)(24,"a",18),l(25),C()()(),v(26,"div",15)(27,"dt",16),l(28),C(),v(29,"dd",17)(30,"a",19),l(31),C()()(),v(32,"div",15)(33,"dt",16),l(34),C(),v(35,"dd",20),l(36),C()(),v(37,"div",15)(38,"dt",16),l(39),C(),v(40,"dd",21),l(41),C()(),v(42,"div",15)(43,"dt",16),l(44),C(),v(45,"dd",22),l(46),C()(),v(47,"div",15)(48,"dt",16),l(49),C(),v(50,"dd",23),l(51),C()(),v(52,"div",15)(53,"dt",16),l(54),C(),v(55,"dd",24),l(56),C()()()()),i&2&&(o(2),W("src",n.markSrc(),J),o(3),p(" ",n.texts.aboutHeading," "),o(2),_(n.texts.aboutIntro),o(),f(n.loadError()?8:-1),o(),W("href",n.texts.aboutGithubUrl,J),b("aria-label",n.texts.aboutStarA11y),o(4),_(n.texts.aboutStarHeading),o(2),_(n.texts.aboutStarBody),o(3),p(" ",n.texts.aboutStarCta," "),o(4),_(n.texts.aboutWebsiteLabel),o(2),W("href",n.texts.aboutWebsiteUrl,J),o(),_(n.texts.aboutWebsiteUrl),o(3),_(n.texts.aboutGithubLabel),o(2),W("href",n.texts.aboutGithubUrl,J),o(),_(n.texts.aboutGithubUrl),o(3),_(n.texts.aboutCliLabel),o(2),p(" ",n.cliVersion()," "),o(3),_(n.texts.aboutSpecLabel),o(2),p(" ",n.specVersion()," "),o(3),_(n.texts.aboutSchemaLabel),o(2),p(" ",n.schemaVersion()," "),o(3),_(n.texts.aboutFolderLabel),o(2),p(" ",n.cwd()," "),o(3),_(n.texts.aboutDbLabel),o(2),p(" ",n.dbDisplay()," "))},styles:["[_nghost-%COMP%]{display:block;height:100%;overflow-y:auto;padding:1.25rem 1.5rem}.settings-about[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.75rem}.settings-about__header[_ngcontent-%COMP%]{display:flex;align-items:center;gap:1rem}.settings-about__logo[_ngcontent-%COMP%]{width:64px;height:64px;flex-shrink:0}.settings-about__heading-text[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.25rem;min-width:0}.settings-about__title[_ngcontent-%COMP%]{font-size:1.15rem;font-weight:600;margin:0}.settings-about__intro[_ngcontent-%COMP%]{margin:0;color:var(--p-text-muted-color);font-size:.875rem}.settings-about__error[_ngcontent-%COMP%]{margin:0;padding:.5rem .75rem;border-radius:var(--p-border-radius);background:var(--p-message-error-background);color:var(--p-message-error-color);font-size:.875rem}.settings-about__list[_ngcontent-%COMP%]{margin:0;padding:0;display:flex;flex-direction:column;gap:.25rem}.settings-about__row[_ngcontent-%COMP%]{display:grid;grid-template-columns:180px 1fr;align-items:baseline;gap:.75rem;padding:.5rem .75rem;border-radius:var(--p-border-radius)}.settings-about__row[_ngcontent-%COMP%]:nth-child(odd){background:var(--p-content-hover-background)}.settings-about__label[_ngcontent-%COMP%]{margin:0;font-size:.875rem;color:var(--p-text-muted-color)}.settings-about__value[_ngcontent-%COMP%]{margin:0;font-family:var(--p-monospace-font-family);font-size:.875rem;word-break:break-all}.settings-about__link[_ngcontent-%COMP%]{color:var(--p-primary-color);text-decoration:none}.settings-about__link[_ngcontent-%COMP%]:hover, .settings-about__link[_ngcontent-%COMP%]:focus-visible{text-decoration:underline}.settings-about__star[_ngcontent-%COMP%]{--star-accent: #f4b400;display:flex;align-items:center;gap:.875rem;padding:.875rem 1rem;border-radius:var(--p-border-radius);border:1px solid color-mix(in oklab,var(--star-accent) 45%,transparent);background:color-mix(in oklab,var(--star-accent) 12%,transparent);color:var(--p-text-color);text-decoration:none;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .15s ease}.settings-about__star[_ngcontent-%COMP%]:hover, .settings-about__star[_ngcontent-%COMP%]:focus-visible{background:color-mix(in oklab,var(--star-accent) 22%,transparent);border-color:color-mix(in oklab,var(--star-accent) 70%,transparent);transform:translateY(-1px);outline:none}.app-dark[_nghost-%COMP%] .settings-about__star[_ngcontent-%COMP%], .app-dark [_nghost-%COMP%] .settings-about__star[_ngcontent-%COMP%]{background:color-mix(in oklab,var(--star-accent) 18%,transparent);border-color:color-mix(in oklab,var(--star-accent) 55%,transparent)}.app-dark[_nghost-%COMP%] .settings-about__star[_ngcontent-%COMP%]:hover, .app-dark [_nghost-%COMP%] .settings-about__star[_ngcontent-%COMP%]:hover, .app-dark[_nghost-%COMP%] .settings-about__star[_ngcontent-%COMP%]:focus-visible, .app-dark [_nghost-%COMP%] .settings-about__star[_ngcontent-%COMP%]:focus-visible{background:color-mix(in oklab,var(--star-accent) 30%,transparent);border-color:var(--star-accent)}.settings-about__star-icon[_ngcontent-%COMP%]{font-size:1.5rem;color:var(--star-accent);flex-shrink:0}.settings-about__star-text[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.125rem;flex:1;min-width:0}.settings-about__star-heading[_ngcontent-%COMP%]{font-weight:600;font-size:.95rem}.settings-about__star-body[_ngcontent-%COMP%]{font-size:.8125rem;color:var(--p-text-muted-color);line-height:1.4}.settings-about__star-cta[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border-radius:var(--sm-radius-pill);background:var(--star-accent);color:#1a1a1a;font-weight:600;font-size:.8125rem;white-space:nowrap;flex-shrink:0}.settings-about__star[_ngcontent-%COMP%]:hover .settings-about__star-cta[_ngcontent-%COMP%], .settings-about__star[_ngcontent-%COMP%]:focus-visible .settings-about__star-cta[_ngcontent-%COMP%]{background:color-mix(in oklab,var(--star-accent) 88%,white)}"],changeDetection:0})}return t})();function Sn(t,r){if(!t||!r)return t;let e=r.replace(/[/\\]+$/,"");return t.startsWith(e)?t.slice(e.length).replace(/^[/\\]+/,""):t}var Fe=(()=>{class t{ownerSig=u(null);dirtyCount=x(()=>{let e=this.ownerSig();return e?e.dirtyIds().size:0});register(e){this.ownerSig.set(e)}deregister(e){this.ownerSig()===e&&this.ownerSig.set(null)}async applyChanges(){let e=this.ownerSig();return e?e.applyChanges():{ok:!1}}discardChanges(){this.ownerSig()?.discardChanges()}static \u0275fac=function(i){return new(i||t)};static \u0275prov=be({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var zt={schemaVersion:1,entries:[{version:"0.47.1",date:"2026-05-31",kind:"internal",highlights:[]},{version:"0.47.0",date:"2026-05-31",kind:"user-facing",highlights:[{body:"skill-map now notices when your local DB schema is out of date (not just an older version): `sm scan` and `sm serve` offer to rebuild the cache, and read commands warn instead of failing with a confusing database error.",packages:["@skill-map/cli","@skill-map/spec"]},{body:"Settings \u2192 Plugins now has a unified filter bar (All, then Built-in / Project, then the kinds), so you can quickly isolate your project's own plugins and extensions from the built-ins.",packages:["@skill-map/cli"]},{body:"**Pick your tokenizer.** `tokenizer` in settings.json now selects the encoder for token counts: `cl100k_base` (default, GPT-4) or `o200k_base` (GPT-4o). Any other value is ignored with a warning. Changing it recomputes counts on the next scan.",packages:["@skill-map/cli","@skill-map/spec"]},{body:'When the dev server stops, the UI now shows a "connection lost" banner with a Reconnect button instead of failing silently, and it refreshes automatically once the connection is back.',packages:["@skill-map/cli"]}]},{version:"0.46.0",date:"2026-05-31",kind:"user-facing",highlights:[{body:"`sm scan` no longer glues the `Auto-detected activeProvider` notice onto the results line. The auto-detect message now prints on its own line, right above the scan summary.",packages:["@skill-map/cli"]},{body:"`sm plugins --help` (and `db`, `config`, `job`, and the other command groups) now print a tidy overview with a one-line description and a list of their subcommands, matching the look of `sm scan --help`, instead of a terse internal list.",packages:["@skill-map/cli","@skill-map/spec"]},{body:"**Config cleanup.** Several settings.json keys that never did anything (`i18n`, `providers`, `history`, `autoMigrate`, `scan.followSymlinks`, per-plugin `config` / `extensions`) were removed. If still present they are now ignored and reported with a warning on load.",packages:["@skill-map/cli","@skill-map/spec"]},{body:'`sm plugins list` / `show` and the Settings \u2192 Plugins UI now consistently say "plugin" instead of "bundle". The only place "bundle" remains is the name for toggling a whole plugin (all its extensions) at once.',packages:["@skill-map/cli","@skill-map/spec"]}]},{version:"0.45.1",date:"2026-05-30",kind:"internal",highlights:[]},{version:"0.45.0",date:"2026-05-30",kind:"user-facing",highlights:[{body:"`sm tutorial` can now target other agents: `--for agent-skills` (open-standard layout, used by Antigravity and OpenAI Codex) or `--for claude` (default). It now requires an empty directory: run it in a fresh folder, or pass `--force` to seed into the current one.",packages:["@skill-map/cli","@skill-map/spec"]}]},{version:"0.44.0",date:"2026-05-30",kind:"user-facing",highlights:[{body:"Under the Antigravity lens, `sm scan` now warns when a `.agents/skills` skill shadows a built-in `agy` slash command (e.g. a skill named `goal` collides with `/goal`), so you can rename it before the runtime silently ignores the file.",packages:["@skill-map/cli","@skill-map/spec"]},{body:"skill-map can now report crashes anonymously to help fix bugs, and it is OFF by default. Turn it on or off in Settings, or set `SKILL_MAP_TELEMETRY=0` to force it off. File contents, paths, and your settings are never sent.",packages:["@skill-map/cli","@skill-map/spec"]},{body:"skill-map can now share anonymous usage (which commands and views you use) to guide development, OFF by default. Toggle CLI usage, UI usage, and error reports independently in Settings, or set `SKILL_MAP_TELEMETRY=0` to force all off. Files and paths are never sent.",packages:["@skill-map/cli","@skill-map/spec"]}]},{version:"0.43.0",date:"2026-05-29",kind:"user-facing",highlights:[{body:"The skill-map website and in-app links (Settings, About and the demo banner) now point to **skill-map.ai** (previously skill-map.dev). Spec schema URLs are now `https://skill-map.ai/spec/v0/...`.",packages:["@skill-map/cli","@skill-map/spec","@skill-map/web"]},{body:"Claude skills and commands now show their `disallowed-tools` in the inspector. Tags come only from `.sm` sidecars now: the `sm list --tag-source` flag is removed and cards show a single tag style. Agent Skills `license` / `compatibility` / `metadata` fields are recognized.",packages:["@skill-map/cli","@skill-map/spec"]},{body:"After updating skill-map, the next `sm scan` rebuilds the local database when it was created by an older version (your `.sm` sidecar files are never touched). On a terminal it asks first; pass `--yes` to skip the prompt.",packages:["@skill-map/cli","@skill-map/spec"]}]},{version:"0.42.0",date:"2026-05-28",kind:"user-facing",highlights:[{body:"The lens picker in **Settings \u2192 Project** now lists exactly the providers installed in your project. The phantom **Gemini** and **Cursor** options are gone, and **OpenAI Codex** / **Antigravity** now show their correct name and colour on node cards.",packages:["@skill-map/cli","@skill-map/spec"]}]},{version:"0.41.0",date:"2026-05-27",kind:"user-facing",highlights:[{body:"New `--max-nodes <N>` on `sm scan` / `sm watch` / `sm serve` caps how many files the walker accepts (default 256, bidirectional). Past the limit, a persistent banner links to **Settings \u2192 Project** to trim `.skillmapignore`.",packages:["@skill-map/cli","@skill-map/spec"]},{body:"`sm -version` and `sm -help` now suggest `--version` / `--help` consistently, even from a directory with no skill-map project.",packages:["@skill-map/cli"]}]},{version:"0.40.1",date:"2026-05-26",kind:"user-facing",highlights:[{body:"Update chip copies the install command on click. Settings copy polished across General + Project. Path is now the second column in the list view. Filtered-empty views unified across List + Graph with a Reset button. Matrix theme retints dropdowns and toggle buttons.",packages:["@skill-map/cli"]}]},{version:"0.40.0",date:"2026-05-26",kind:"user-facing",highlights:[{body:"**Changelog tab is now bounded.** The Settings \u2192 Changelog tab shows the most recent 10 releases and links out to the full changelog on GitHub for older entries.",packages:["@skill-map/cli"]},{body:"Plugins no longer have a bundle-level switch; each extension toggles on its own. `sm plugins disable <bundle>` cascades across the bundle's extensions (multi-extension bundles need `--yes`). The kind filter narrows extensions inside matched bundles instead of leaking siblings.",packages:["@skill-map/cli","@skill-map/spec"]},{body:"**Cleaner Plugins view.** Settings \u2192 Plugins and `sm plugins show <bundle>` no longer print a per-extension version chip for built-in plugins (they all share the CLI version). External (user-authored) plugins are unchanged and still show per-extension semver.",packages:["@skill-map/cli"]},{body:'`sm scan` summary now splits findings per severity (`N errors \xB7 M warnings \xB7 K info`), colored and collapsed when zero. The graph view gains a third palette to filter cards with errors / warnings; the perf-HUD says "links" instead of "edges".',packages:["@skill-map/cli"]},{body:"**List view** is live. Click **List** in the topbar for a sortable, filterable table of every node (Kind, Name, Tags, Path, Tokens, Stability, Stale, Issues). Click a row to inspect on the graph. Graph card chips now share the same icons as the list.",packages:["@skill-map/cli"]},{body:'Graph cards drop the corner badge for routine warnings; count + tooltip stay on the footer chip. Broken refs now escalate `sm scan` to exit 1 (were exit 0). `sm init` prints the "no provider markers" advisory as a two-line yellow `\u26A0` block.',packages:["@skill-map/cli","@skill-map/spec"]},{body:'`sm check --analyzers <id>` now errors with the valid id list when mistyped, instead of silently saying "No issues." `/invoke` and `@mention` links from any markdown body now contribute to the target\'s `IN`. `sm plugins doctor` summary spells out its bundle + extension split.',packages:["@skill-map/cli","@skill-map/spec"]}]},{version:"0.39.0",date:"2026-05-25",kind:"user-facing",highlights:[{body:"Renamed `core/field-unknown` to `core/annotation-field-unknown` so the sidecar typo-guard rule groups with the other `core/annotation-*` rules. Update references in `settings.json` or `sm check --analyzers <id>` to the new name.",packages:["@skill-map/cli","@skill-map/spec"]},{body:"Renamed 14 built-in extension ids to a `<area>-<detail>` shape (e.g. `core/broken-ref` is now `core/reference-broken`). If you reference these by qualified id in `settings.json` or via `sm check --analyzers <id>`, update to the new names.",packages:["@skill-map/cli","@skill-map/spec"]},{body:"In dev builds the topbar and the `sm serve` banner now show only the `dev` marker instead of pairing it with the published version number.",packages:["@skill-map/cli"]},{body:"When a scan adds or removes nodes, the graph view animates the camera to frame the new layout, refreshes auto positions so nodes never land on top of each other, and keeps your manually-dragged pins where you put them.",packages:["@skill-map/cli"]},{body:"`sm` log lines now lead with a coloured glyph per level (`\u26A0 WARN`, `\u2715 ERROR`, `\u2139 INFO`) so advisories stand out from the rest of the output.",packages:["@skill-map/cli"]},{body:"In Settings, expanding a bundle plugin (claude, antigravity, openai, agent-skills) now shows the correct per-extension state and the toggles persist, the next scan honours them. `sm plugins list` reflects effective state too.",packages:["@skill-map/cli","@skill-map/spec"]},{body:"Plugins always list `core` first across CLI, BFF, and Settings; the project path stays visible in the topbar (truncated with `\u2026` on the LEFT so the project name reaches the eye); and the SPA reconnects on its own when `sm serve` restarts.",packages:["@skill-map/cli"]},{body:'`sm list` IN counts and the inspector\'s "Linked nodes \u2192 INCOMING" now include every `@mention` and `/invoke`, not just markdown links. `sm plugins doctor` no longer raises a spurious `claude/agent` warning on a clean install.',packages:["@skill-map/cli"]}]},{version:"0.38.0",date:"2026-05-24",kind:"user-facing",highlights:[{body:"`sm <verb> --json` now also suppresses info banners on stderr, keeping both streams clean for piping into `jq`.",packages:["@skill-map/cli"]}]},{version:"0.37.0",date:"2026-05-23",kind:"user-facing",highlights:[{body:"`sm scan` now warns once when provider markers on disk drifted since `activeProvider` was set (e.g. you added `.codex/` after picking the `claude` lens). Run `sm config set activeProvider <id>` to switch the lens, or ignore the warn and keep going, it never blocks the scan.",packages:["@skill-map/cli","@skill-map/spec"]},{body:"**Clearer CLI errors.** Errors from `sm serve`, `bump`, `db`, `plugins`, `refresh`, `list`, `watch`, `graph`, `hooks`, and `sidecar` now print a `\u2715` headline plus a dim hint on the next line. Fixes a `sm refresh` persist-failure that rendered `{{glyph}}` literally.",packages:["@skill-map/cli"]},{body:"`sm` now detects when the local `.skill-map/` DB was written by an incompatible CLI version: newer minor or different major refuses to open with a clear hint; older same-major prints a one-shot warning and continues. Defensive parse errors include the same hint.",packages:["@skill-map/cli"]},{body:'`sm init --force` now also resets the DB (was overwriting only the config files). Solves the "Failed to read scan rows" crash on the first auto-scan when re-initialising a project that already had a DB from an older CLI version.',packages:["@skill-map/cli"]},{body:"**Two scan-time bugs fixed.** Resolved `/slash` and `@mention` links now correctly land at confidence `1.0` (were stuck at the emit floor), and the markdown-link extractor no longer flags `[label](path)` shown inside backticks or fenced code blocks as broken references.",packages:["@skill-map/cli"]},{body:"Cross-provider files (e.g. a `.codex/agents/*.toml` while the lens is `claude`) are no longer claimed by the foreign provider. They surface as plain markdown / unclassified instead, matching how the agent itself would see them at runtime.",packages:["@skill-map/cli","@skill-map/spec"]},{body:"Card chips for incoming / outgoing links no longer count self-loops, so a node that links back to itself stops showing inflated 1 in / 1 out. The `core/self-loop` analyzer still surfaces the self-reference as a warning, only the misleading count goes away.",packages:["@skill-map/cli"]},{body:"**CLI + inspector polish.** `sm init` now prompts for the active lens when markers compete; `sm config set activeProvider` rejects unknown ids upfront; error blocks across the CLI gain a `\u2715` glyph + hint; the inspector hides self-loops and paints kinds in their canonical colour.",packages:["@skill-map/cli"]},{body:'**Inspector overhaul.** Links show numeric confidence, a Findings list, per-row issue chips, and per-site "Occurs at" lines. New "External references" section. Self-loops hidden by default. Two new analyzers flag redundant multi-form references and self-loops.',packages:["@skill-map/cli","@skill-map/spec"]},{body:"`sm scan` now warns when two extractors detect overlapping byte ranges. The graph keeps the winner; the issue panel explains which detection lost and why, so a markdown link wrapping an `@`-directive no longer looks like silent disappearing intent.",packages:["@skill-map/cli","@skill-map/spec"]}]},{version:"0.36.0",date:"2026-05-22",kind:"user-facing",highlights:[{body:"**Gemini CLI support retired.** Antigravity CLI projects (Google's May 2026 replacement) scan via the open-standard `.agents/skills/` paths under the existing `agent-skills` lens. Run `sm config set activeProvider antigravity` to flag a project as Antigravity-flavoured.",packages:["@skill-map/cli","@skill-map/spec"]},{body:"**Files whose name shadows a built-in are flagged.** A file like `.claude/commands/help.md` now emits a `warn` (Claude's runtime ignores it for its own `/help`), and incoming `/help` edges resolve to it at confidence `0.1` instead of `1.0`.",packages:["@skill-map/cli","@skill-map/spec"]}]}]};var Bt=zt;var En=(t,r)=>r.version;function Mn(t,r){if(t&1&&(v(0,"p",3),l(1),C()),t&2){let e=d();o(),p(" ",e.texts.changelogEmpty," ")}}function Tn(t,r){if(t&1&&(v(0,"p",12),l(1),C()),t&2){let e=d(3);o(),p(" ",e.texts.changelogInternalRelease," ")}}function On(t,r){if(t&1&&(v(0,"li",17),l(1),C()),t&2){let e=r.$implicit;o(),_(e)}}function In(t,r){if(t&1&&(v(0,"ul",16),A(1,On,2,1,"li",17,q),C()),t&2){let e=d().$implicit,i=d(4);b("aria-label",i.texts.changelogAffectedPackages),o(),L(e.packages)}}function Fn(t,r){if(t&1&&(v(0,"li",14),ne(1,"div",15),h(2,In,3,1,"ul",16),C()),t&2){let e=r.$implicit;o(),W("innerHTML",e.bodyHtml,nt),o(),f(e.packages.length?2:-1)}}function jn(t,r){if(t&1&&(v(0,"ul",13),A(1,Fn,3,2,"li",14,st),C()),t&2){let e=d().$implicit;o(),L(e.highlights)}}function Dn(t,r){if(t&1&&(v(0,"li",8)(1,"header",9)(2,"span",10),l(3),C(),v(4,"span",11),l(5),C()(),h(6,Tn,2,1,"p",12)(7,jn,3,0,"ul",13),C()),t&2){let e=r.$implicit;G("settings-changelog__entry--internal",e.kind==="internal"),b("data-testid","settings-changelog-entry-"+e.version),o(3),p("v",e.version),o(2),_(e.date),o(),f(e.kind==="internal"?6:7)}}function An(t,r){if(t&1&&(v(0,"ol",4),A(1,Dn,8,6,"li",7,En),C()),t&2){let e=d();o(),L(e.entries())}}var Ln=10,$t=(()=>{class t{markdown=k(St);texts=y;entries=u([]);hasEntries=x(()=>this.entries().length>0);ngOnInit(){this.renderAll()}async renderAll(){let e=[],i=Bt.entries.slice(0,Ln);for(let n of i){let s=[];for(let g of n.highlights)s.push({bodyHtml:await this.markdown.render(g.body),packages:g.packages});e.push({version:n.version,date:this.formatDate(n.date),kind:n.kind,highlights:s})}this.entries.set(e)}formatDate(e){let i=new Date(e+"T00:00:00Z");return Number.isNaN(i.getTime())?e:new Intl.DateTimeFormat("en-GB",{day:"numeric",month:"long",year:"numeric",timeZone:"UTC"}).format(i)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=z({type:t,selectors:[["sm-settings-changelog"]],decls:11,vars:7,consts:[["data-testid","settings-changelog",1,"settings-changelog"],["id","settings-changelog-heading",1,"settings-changelog__title"],[1,"settings-changelog__intro"],["data-testid","settings-changelog-empty",1,"settings-changelog__empty"],["role","list",1,"settings-changelog__list"],["data-testid","settings-changelog-footer",1,"settings-changelog__footer"],["target","_blank","rel","noopener noreferrer",1,"settings-changelog__footer-link",3,"href"],[1,"settings-changelog__entry",3,"settings-changelog__entry--internal"],[1,"settings-changelog__entry"],[1,"settings-changelog__entry-header"],[1,"settings-changelog__version"],[1,"settings-changelog__date"],[1,"settings-changelog__internal-body"],["role","list",1,"settings-changelog__highlights"],[1,"settings-changelog__highlight"],[1,"settings-changelog__highlight-body",3,"innerHTML"],["role","list",1,"settings-changelog__packages"],[1,"settings-changelog__package"]],template:function(i,n){i&1&&(v(0,"section",0)(1,"h2",1),l(2),C(),v(3,"p",2),l(4),C(),h(5,Mn,2,1,"p",3)(6,An,3,0,"ol",4),v(7,"p",5),l(8),v(9,"a",6),l(10),C()()()),i&2&&(b("aria-labelledby","settings-changelog-heading"),o(2),p(" ",n.texts.changelogHeading," "),o(2),_(n.texts.changelogIntro),o(),f(n.hasEntries()?6:5),o(3),p(" ",n.texts.changelogFooterText," "),o(),W("href",n.texts.changelogFooterUrl,J),o(),p(" ",n.texts.changelogFooterLinkLabel," "))},styles:["[_nghost-%COMP%]{display:block;height:100%;overflow-y:auto;padding:1.25rem 1.5rem}.settings-changelog__title[_ngcontent-%COMP%]{margin:0 0 .25rem;font-size:1.05rem;font-weight:600;color:var(--p-text-color)}.settings-changelog__intro[_ngcontent-%COMP%]{margin:0 0 1.25rem;font-size:.85rem;color:var(--sm-text-muted);line-height:1.5}.settings-changelog__empty[_ngcontent-%COMP%]{margin:1.5rem 0 0;font-size:.9rem;color:var(--sm-text-muted);font-style:italic}.settings-changelog__list[_ngcontent-%COMP%]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1.25rem}.settings-changelog__entry[_ngcontent-%COMP%]{border-left:2px solid var(--p-primary-color);padding:.25rem 0 .25rem .85rem}.settings-changelog__entry--internal[_ngcontent-%COMP%]{border-left-color:var(--sm-border)}.settings-changelog__entry-header[_ngcontent-%COMP%]{display:flex;align-items:baseline;gap:.6rem;margin-bottom:.45rem}.settings-changelog__version[_ngcontent-%COMP%]{font-family:var(--sm-font-mono);font-size:.95rem;font-weight:600;color:var(--p-text-color)}.settings-changelog__date[_ngcontent-%COMP%]{font-size:.78rem;color:var(--sm-text-muted)}.settings-changelog__internal-body[_ngcontent-%COMP%]{margin:0;font-size:.85rem;color:var(--sm-text-muted);font-style:italic}.settings-changelog__highlights[_ngcontent-%COMP%]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.7rem}.settings-changelog__highlight[_ngcontent-%COMP%]{font-size:.88rem;line-height:1.5;color:var(--p-text-color)}.settings-changelog__highlight-body[_ngcontent-%COMP%]{margin:0}[_nghost-%COMP%] .settings-changelog__highlight-body p{margin:0}[_nghost-%COMP%] .settings-changelog__highlight-body p+p{margin-top:.45rem}[_nghost-%COMP%] .settings-changelog__highlight-body code{font-family:var(--sm-font-mono);font-size:.82rem;padding:.05rem .3rem;border-radius:var(--sm-radius-sm);background:var(--sm-bg-hover);color:var(--p-text-color)}[_nghost-%COMP%] .settings-changelog__highlight-body a{color:var(--p-primary-color);text-decoration:underline}[_nghost-%COMP%] .settings-changelog__highlight-body strong{font-weight:600}.settings-changelog__packages[_ngcontent-%COMP%]{list-style:none;margin:.4rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.3rem}.settings-changelog__package[_ngcontent-%COMP%]{font-family:var(--sm-font-mono);font-size:.7rem;padding:.1rem .4rem;border-radius:var(--sm-radius-sm);background:var(--sm-bg-hover);color:var(--sm-text-muted);border:1px solid var(--sm-border);line-height:1.4}.settings-changelog__footer[_ngcontent-%COMP%]{margin:1.75rem 0 0;padding-top:1rem;border-top:1px solid var(--sm-border);font-size:.82rem;color:var(--sm-text-muted);text-align:center}.settings-changelog__footer-link[_ngcontent-%COMP%]{margin-left:.3rem;color:var(--p-primary-color);text-decoration:none;font-weight:500}.settings-changelog__footer-link[_ngcontent-%COMP%]:hover{text-decoration:underline}"],changeDetection:0})}return t})();var Gt=`
|
|
2
|
+
.p-toggleswitch {
|
|
3
|
+
display: inline-block;
|
|
4
|
+
width: dt('toggleswitch.width');
|
|
5
|
+
height: dt('toggleswitch.height');
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
.p-toggleswitch-input {
|
|
9
|
+
cursor: pointer;
|
|
10
|
+
appearance: none;
|
|
11
|
+
position: absolute;
|
|
12
|
+
top: 0;
|
|
13
|
+
inset-inline-start: 0;
|
|
14
|
+
width: 100%;
|
|
15
|
+
height: 100%;
|
|
16
|
+
padding: 0;
|
|
17
|
+
margin: 0;
|
|
18
|
+
opacity: 0;
|
|
19
|
+
z-index: 1;
|
|
20
|
+
outline: 0 none;
|
|
21
|
+
border-radius: dt('toggleswitch.border.radius');
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.p-toggleswitch-slider {
|
|
25
|
+
cursor: pointer;
|
|
26
|
+
width: 100%;
|
|
27
|
+
height: 100%;
|
|
28
|
+
border-width: dt('toggleswitch.border.width');
|
|
29
|
+
border-style: solid;
|
|
30
|
+
border-color: dt('toggleswitch.border.color');
|
|
31
|
+
background: dt('toggleswitch.background');
|
|
32
|
+
transition:
|
|
33
|
+
background dt('toggleswitch.transition.duration'),
|
|
34
|
+
color dt('toggleswitch.transition.duration'),
|
|
35
|
+
border-color dt('toggleswitch.transition.duration'),
|
|
36
|
+
outline-color dt('toggleswitch.transition.duration'),
|
|
37
|
+
box-shadow dt('toggleswitch.transition.duration');
|
|
38
|
+
border-radius: dt('toggleswitch.border.radius');
|
|
39
|
+
outline-color: transparent;
|
|
40
|
+
box-shadow: dt('toggleswitch.shadow');
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
.p-toggleswitch-handle {
|
|
44
|
+
position: absolute;
|
|
45
|
+
top: 50%;
|
|
46
|
+
display: flex;
|
|
47
|
+
justify-content: center;
|
|
48
|
+
align-items: center;
|
|
49
|
+
background: dt('toggleswitch.handle.background');
|
|
50
|
+
color: dt('toggleswitch.handle.color');
|
|
51
|
+
width: dt('toggleswitch.handle.size');
|
|
52
|
+
height: dt('toggleswitch.handle.size');
|
|
53
|
+
inset-inline-start: dt('toggleswitch.gap');
|
|
54
|
+
margin-block-start: calc(-1 * calc(dt('toggleswitch.handle.size') / 2));
|
|
55
|
+
border-radius: dt('toggleswitch.handle.border.radius');
|
|
56
|
+
transition:
|
|
57
|
+
background dt('toggleswitch.transition.duration'),
|
|
58
|
+
color dt('toggleswitch.transition.duration'),
|
|
59
|
+
inset-inline-start dt('toggleswitch.slide.duration'),
|
|
60
|
+
box-shadow dt('toggleswitch.slide.duration');
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
.p-toggleswitch.p-toggleswitch-checked .p-toggleswitch-slider {
|
|
64
|
+
background: dt('toggleswitch.checked.background');
|
|
65
|
+
border-color: dt('toggleswitch.checked.border.color');
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
.p-toggleswitch.p-toggleswitch-checked .p-toggleswitch-handle {
|
|
69
|
+
background: dt('toggleswitch.handle.checked.background');
|
|
70
|
+
color: dt('toggleswitch.handle.checked.color');
|
|
71
|
+
inset-inline-start: calc(dt('toggleswitch.width') - calc(dt('toggleswitch.handle.size') + dt('toggleswitch.gap')));
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
.p-toggleswitch:not(.p-disabled):has(.p-toggleswitch-input:hover) .p-toggleswitch-slider {
|
|
75
|
+
background: dt('toggleswitch.hover.background');
|
|
76
|
+
border-color: dt('toggleswitch.hover.border.color');
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
.p-toggleswitch:not(.p-disabled):has(.p-toggleswitch-input:hover) .p-toggleswitch-handle {
|
|
80
|
+
background: dt('toggleswitch.handle.hover.background');
|
|
81
|
+
color: dt('toggleswitch.handle.hover.color');
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
.p-toggleswitch:not(.p-disabled):has(.p-toggleswitch-input:hover).p-toggleswitch-checked .p-toggleswitch-slider {
|
|
85
|
+
background: dt('toggleswitch.checked.hover.background');
|
|
86
|
+
border-color: dt('toggleswitch.checked.hover.border.color');
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
.p-toggleswitch:not(.p-disabled):has(.p-toggleswitch-input:hover).p-toggleswitch-checked .p-toggleswitch-handle {
|
|
90
|
+
background: dt('toggleswitch.handle.checked.hover.background');
|
|
91
|
+
color: dt('toggleswitch.handle.checked.hover.color');
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
.p-toggleswitch:not(.p-disabled):has(.p-toggleswitch-input:focus-visible) .p-toggleswitch-slider {
|
|
95
|
+
box-shadow: dt('toggleswitch.focus.ring.shadow');
|
|
96
|
+
outline: dt('toggleswitch.focus.ring.width') dt('toggleswitch.focus.ring.style') dt('toggleswitch.focus.ring.color');
|
|
97
|
+
outline-offset: dt('toggleswitch.focus.ring.offset');
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
.p-toggleswitch.p-invalid > .p-toggleswitch-slider {
|
|
101
|
+
border-color: dt('toggleswitch.invalid.border.color');
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
.p-toggleswitch.p-disabled {
|
|
105
|
+
opacity: 1;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
.p-toggleswitch.p-disabled .p-toggleswitch-slider {
|
|
109
|
+
background: dt('toggleswitch.disabled.background');
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
.p-toggleswitch.p-disabled .p-toggleswitch-handle {
|
|
113
|
+
background: dt('toggleswitch.handle.disabled.background');
|
|
114
|
+
}
|
|
115
|
+
`;var Nn=["handle"],Rn=["input"],Vn=t=>({checked:t});function zn(t,r){t&1&&at(0)}function Bn(t,r){if(t&1&&K(0,zn,1,0,"ng-container",3),t&2){let e=d();m("ngTemplateOutlet",e.handleTemplate||e._handleTemplate)("ngTemplateOutletContext",gt(2,Vn,e.checked()))}}var $n=`
|
|
116
|
+
${Gt}
|
|
117
|
+
|
|
118
|
+
p-toggleswitch.ng-invalid.ng-dirty > .p-toggleswitch-slider {
|
|
119
|
+
border-color: dt('toggleswitch.invalid.border.color');
|
|
120
|
+
}
|
|
121
|
+
`,Gn={root:{position:"relative"}},Un={root:({instance:t})=>["p-toggleswitch p-component",{"p-toggleswitch p-component":!0,"p-toggleswitch-checked":t.checked(),"p-disabled":t.$disabled(),"p-invalid":t.invalid()}],input:"p-toggleswitch-input",slider:"p-toggleswitch-slider",handle:"p-toggleswitch-handle"},Ut=(()=>{class t extends _t{name="toggleswitch";style=$n;classes=Un;inlineStyles=Gn;static \u0275fac=(()=>{let e;return function(n){return(e||(e=Re(t)))(n||t)}})();static \u0275prov=be({token:t,factory:t.\u0275fac})}return t})();var Ht=new Je("TOGGLESWITCH_INSTANCE"),Hn={provide:Ct,useExisting:Qe(()=>ge),multi:!0},ge=(()=>{class t extends wt{componentName="ToggleSwitch";$pcToggleSwitch=k(Ht,{optional:!0,skipSelf:!0})??void 0;bindDirectiveInstance=k(_e,{self:!0});onAfterViewChecked(){this.bindDirectiveInstance.setAttrs(this.ptms(["host","root"]))}styleClass;tabindex;inputId;readonly;trueValue=!0;falseValue=!1;ariaLabel;size=$();ariaLabelledBy;autofocus;onChange=new tt;input;handleTemplate;_handleTemplate;focused=!1;_componentStyle=k(Ut);templates;onHostClick(e){this.onClick(e)}onAfterContentInit(){this.templates.forEach(e=>{e.getType()==="handle"?this._handleTemplate=e.template:this._handleTemplate=e.template})}onClick(e){!this.$disabled()&&!this.readonly&&(this.writeModelValue(this.checked()?this.falseValue:this.trueValue),this.onModelChange(this.modelValue()),this.onChange.emit({originalEvent:e,checked:this.modelValue()}),this.input.nativeElement.focus())}onFocus(){this.focused=!0}onBlur(){this.focused=!1,this.onModelTouched()}checked(){return this.modelValue()===this.trueValue}writeControlValue(e,i){i(e),this.cd.markForCheck()}get dataP(){return this.cn({checked:this.checked(),disabled:this.$disabled(),invalid:this.invalid()})}static \u0275fac=(()=>{let e;return function(n){return(e||(e=Re(t)))(n||t)}})();static \u0275cmp=z({type:t,selectors:[["p-toggleswitch"],["p-toggleSwitch"],["p-toggle-switch"]],contentQueries:function(i,n,s){if(i&1&<(s,Nn,4)(s,ye,4),i&2){let g;ve(g=xe())&&(n.handleTemplate=g.first),ve(g=xe())&&(n.templates=g)}},viewQuery:function(i,n){if(i&1&&ct(Rn,5),i&2){let s;ve(s=xe())&&(n.input=s.first)}},hostVars:7,hostBindings:function(i,n){i&1&&w("click",function(g){return n.onHostClick(g)}),i&2&&(b("data-p-checked",n.checked())("data-p-disabled",n.$disabled())("data-p",n.dataP),dt(n.sx("root")),me(n.cn(n.cx("root"),n.styleClass)))},inputs:{styleClass:"styleClass",tabindex:[2,"tabindex","tabindex",pt],inputId:"inputId",readonly:[2,"readonly","readonly",ze],trueValue:"trueValue",falseValue:"falseValue",ariaLabel:"ariaLabel",size:[1,"size"],ariaLabelledBy:"ariaLabelledBy",autofocus:[2,"autofocus","autofocus",ze]},outputs:{onChange:"onChange"},features:[ie([Hn,Ut,{provide:Ht,useExisting:t},{provide:ht,useExisting:t}]),ot([_e]),rt],decls:5,vars:22,consts:[["input",""],["type","checkbox","role","switch",3,"focus","blur","checked","pAutoFocus","pBind"],[3,"pBind"],[4,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(i,n){i&1&&(c(0,"input",1,0),w("focus",function(){return n.onFocus()})("blur",function(){return n.onBlur()}),a(),c(2,"div",2)(3,"div",2),h(4,Bn,1,4,"ng-container"),a()()),i&2&&(me(n.cx("input")),m("checked",n.checked())("pAutoFocus",n.autofocus)("pBind",n.ptm("input")),b("id",n.inputId)("required",n.required()?"":void 0)("disabled",n.$disabled()?"":void 0)("aria-checked",n.checked())("aria-labelledby",n.ariaLabelledBy)("aria-label",n.ariaLabel)("name",n.name())("tabindex",n.tabindex),o(2),me(n.cx("slider")),m("pBind",n.ptm("slider")),b("data-p",n.dataP),o(),me(n.cx("handle")),m("pBind",n.ptm("handle")),b("data-p",n.dataP),o(),f(n.handleTemplate||n._handleTemplate?4:-1))},dependencies:[mt,ut,ft,ke,bt,_e],encapsulation:2,changeDetection:0})}return t})(),je=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=it({type:t});static \u0275inj=Ye({imports:[ge,ke,ke]})}return t})();var Kn=(t,r)=>r.key;function qn(t,r){if(t&1&&(c(0,"p-message",3),l(1),a()),t&2){let e=d();m("closable",!1),o(),R(" ",e.texts.general.loadErrorPrefix," ",r," ")}}function Wn(t,r){if(t&1&&(c(0,"p-message",4),l(1),a()),t&2){let e=d();m("closable",!1),o(),R(" ",e.texts.general.saveErrorPrefix," ",r," ")}}function Xn(t,r){t&1&&(c(0,"div",15),l(1),a()),t&2&&(o(),_(r))}function Qn(t,r){if(t&1){let e=N();c(0,"li",6)(1,"div",8)(2,"div",9),l(3),a(),c(4,"div",10),l(5),a(),h(6,Xn,2,1,"div",15),a(),c(7,"p-toggleswitch",16),w("ngModelChange",function(n){let s=E(e).$implicit,g=d();return M(g.onToggle(s,n))}),a()()}if(t&2){let e,i=r.$implicit,n=d();b("data-testid","settings-general-row-"+i.key),o(3),_(n.toggleLabel(i.key)),o(2),p(" ",n.toggleDescription(i.key)," "),o(),f((e=n.toggleHint(i.key))?6:-1,e),o(),m("ngModel",n.valueOf(i))("disabled",n.loading()||n.isPending(i.key)||n.preferences()===null),b("data-testid","settings-general-toggle-"+i.key)}}function Yn(t,r){if(t&1&&(c(0,"span",17),l(1),a()),t&2){let e=r.$implicit;o(),p(" ",e.label," ")}}var Jn=[{key:"updateCheck.enabled",read:t=>t.updateCheck.enabled,patch:t=>({updateCheck:{enabled:t}})},{key:"telemetry",read:t=>t.telemetry.errorsEnabled&&t.telemetry.usageCliEnabled&&t.telemetry.usageUiEnabled,patch:t=>({telemetry:{errorsEnabled:t,usageCliEnabled:t,usageUiEnabled:t}})}],De="none";function Zn(t){return t===null?De:t}function ei(t){return t===De?null:t}var Qt=(()=>{class t{dataSource=k(X);themeService=k(Te);visible=$.required();texts=y;toggles=Jn;extraThemeOptions=[{value:De,label:y.general.extraTheme.options.none.label,description:y.general.extraTheme.options.none.description},...Et.map(e=>({value:e.id,label:e.label,description:e.description}))];extraThemeWire=x(()=>Zn(this.themeService.extraTheme()));loading=u(!1);loadError=u(null);saveError=u(null);preferences=u(null);pending=u(new Set);constructor(){B(()=>{this.visible()&&this.refresh()})}toggleLabel(e){return y.general.toggles[e].label}toggleDescription(e){return y.general.toggles[e].description}toggleHint(e){let i=y.general.toggles[e];return"hint"in i?i.hint:null}valueOf(e){let i=this.preferences();return i?e.read(i):!1}isPending(e){return this.pending().has(e)}onToggle(e,i){this.runToggle(e,i)}onExtraThemeChange(e){this.themeService.setExtraTheme(ei(e??De))}async refresh(){this.loading.set(!0),this.loadError.set(null),this.saveError.set(null);try{let e=await this.dataSource.getPreferences();this.preferences.set(e)}catch(e){this.loadError.set(qt(e)),this.preferences.set(null)}finally{this.loading.set(!1)}}async runToggle(e,i){if(this.pending().has(e.key))return;let n=new Set(this.pending());n.add(e.key),this.pending.set(n),this.saveError.set(null);try{let s=await this.dataSource.setPreferences(e.patch(i));this.preferences.set(s)}catch(s){this.saveError.set(qt(s))}finally{let s=new Set(this.pending());s.delete(e.key),this.pending.set(s)}}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=z({type:t,selectors:[["sm-settings-general"]],inputs:{visible:[1,"visible"]},decls:22,vars:12,consts:[["data-testid","settings-general",1,"settings-general"],["id","settings-general-heading",1,"settings-general__title"],[1,"settings-general__intro"],["severity","error","data-testid","settings-general-load-error",3,"closable"],["severity","error","data-testid","settings-general-save-error",3,"closable"],["role","list",1,"settings-general__list"],[1,"settings-general__row"],["data-testid","settings-general-row-extra-theme",1,"settings-general__row"],[1,"settings-general__row-text"],[1,"settings-general__row-label"],[1,"settings-general__row-description"],["optionLabel","label","optionValue","value","data-testid","settings-general-extra-theme",3,"ngModelChange","options","ngModel","allowEmpty"],["pTemplate","item"],["data-testid","settings-general-storage-hint",1,"settings-general__storage-hint"],[1,"settings-general__storage-hint-path"],[1,"settings-general__row-hint"],[3,"ngModelChange","ngModel","disabled"],["data-testid","settings-general-extra-theme-option"]],template:function(i,n){if(i&1&&(c(0,"section",0)(1,"h2",1),l(2),a(),c(3,"p",2),l(4),a(),h(5,qn,2,3,"p-message",3),h(6,Wn,2,3,"p-message",4),c(7,"ul",5),A(8,Qn,8,7,"li",6,Kn),c(10,"li",7)(11,"div",8)(12,"div",9),l(13),a(),c(14,"div",10),l(15),a()(),c(16,"p-selectbutton",11),w("ngModelChange",function(g){return n.onExtraThemeChange(g)}),K(17,Yn,2,1,"ng-template",12),a()()(),c(18,"p",13),l(19),c(20,"code",14),l(21),a()()()),i&2){let s,g;b("aria-labelledby","settings-general-heading"),o(2),p(" ",n.texts.general.heading," "),o(2),_(n.texts.general.intro),o(),f((s=n.loadError())?5:-1,s),o(),f((g=n.saveError())?6:-1,g),o(2),L(n.toggles),o(5),p(" ",n.texts.general.extraTheme.label," "),o(2),p(" ",n.texts.general.extraTheme.description," "),o(),m("options",n.extraThemeOptions)("ngModel",n.extraThemeWire())("allowEmpty",!1),o(3),p(" ",n.texts.general.storageHintLabel," "),o(2),_(n.texts.general.storageHintPath)}},dependencies:[le,se,ae,de,ce,ye,At,Dt,je,ge],styles:["[_nghost-%COMP%]{display:block;height:100%;overflow-y:auto;padding:1.25rem 1.5rem}.settings-general__title[_ngcontent-%COMP%]{margin:0 0 .25rem;font-size:1.05rem;font-weight:600;color:var(--p-text-color)}.settings-general__intro[_ngcontent-%COMP%]{margin:0 0 1.25rem;font-size:.85rem;color:var(--sm-text-muted);line-height:1.5}.settings-general__list[_ngcontent-%COMP%]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1rem}.settings-general__row[_ngcontent-%COMP%]{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:.85rem 1rem;border:1px solid var(--p-content-border-color);border-radius:.5rem;background:var(--p-content-background)}.settings-general__row-text[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.25rem;flex:1 1 auto;min-width:0}.settings-general__row[_ngcontent-%COMP%] p-toggleswitch[_ngcontent-%COMP%]{flex-shrink:0}.settings-general__row-label[_ngcontent-%COMP%]{font-size:.9rem;font-weight:600;color:var(--p-text-color)}.settings-general__row-description[_ngcontent-%COMP%]{font-size:.8rem;color:var(--sm-text-muted);line-height:1.45}.settings-general__row-hint[_ngcontent-%COMP%]{margin-top:.2rem;font-size:.75rem;font-style:italic;color:var(--sm-text-muted)}.settings-general__storage-hint[_ngcontent-%COMP%]{margin:2rem 0 0;font-size:.75rem;line-height:1.5;color:var(--sm-text-muted);opacity:.65}.settings-general__storage-hint-path[_ngcontent-%COMP%]{font-family:var(--p-monospace-font-family);font-size:.72rem;padding:.05rem .3rem;border-radius:.25rem;background:var(--p-content-background);border:1px solid var(--p-content-border-color)}"],changeDetection:0})}return t})();function qt(t){return t instanceof U||t instanceof Error?t.message:String(t)}var Ae={provider:"#7C3AED",extractor:"#A78BFA",analyzer:"#5FD17C",action:"#00C853",formatter:"#5BC0EB",hook:"#FFB627"};function Yt(t){let r=t.toLowerCase();return Ae[r]??"currentColor"}var Jt=["all",...Object.keys(Ae)],Zt=Object.keys(Ae),en=["all","built-in","project"],tn=["built-in","project"],Le=["core","claude","antigravity","openai","agent-skills"];function Q(t,r){return`${t}/${r}`}function Be(t){let r=new Map;for(let e of t)if(!Ne(e.status)&&e.extensions)for(let i of e.extensions)r.set(Q(e.id,i.id),i.enabled);return r}function $e(t){let r=t.target;return!r||typeof r.closest!="function"?!1:r.closest('label, button, input, [role="switch"], p-toggleswitch')!==null}function nn(t,r){if(ti(t,r))return[t];if(!t.extensions)return[];let e=t.extensions.filter(i=>ni(i,r));return e.length===0?[]:[Y(H({},t),{extensions:e})]}function on(t,r){if(!t.extensions)return[];let e=t.extensions.filter(i=>i.kind.toLowerCase()===r);return e.length===0?[]:[Y(H({},t),{extensions:e})]}function rn(t,r){return r==="all"?[t]:t.source===r?[t]:[]}function sn(t){if(t.locked)return[];if(!t.extensions)return[t];let r=t.extensions.filter(e=>!e.locked);return r.length===0?[]:[Y(H({},t),{extensions:r})]}function an(t){return t.slice().sort((e,i)=>{let n=Le.indexOf(e.id),s=Le.indexOf(i.id),g=n>=0?n:Le.length,S=s>=0?s:Le.length;return g!==S?g-S:e.id.localeCompare(i.id)}).map(e=>{if(!e.extensions)return e;let i=e.extensions.slice().sort((n,s)=>n.id.localeCompare(s.id));return Y(H({},e),{extensions:i})})}function ti(t,r){return!!(t.id.toLowerCase().includes(r)||t.description&&t.description.toLowerCase().includes(r))}function ni(t,r){return!!(t.id.toLowerCase().includes(r)||t.description&&t.description.toLowerCase().includes(r))}function Ne(t){return t==="incompatible-spec"||t==="invalid-manifest"||t==="load-error"||t==="id-collision"}function Ge(t){return t instanceof U||t instanceof Error?t.message:String(t)}function ln(t,r){return Ne(t.status)?r.statusFailure[t.status]??t.status:t.status==="enabled"?r.enabledLabel:r.disabledLabel}function cn(t,r){switch(t){case"built-in":return r.sourceBuiltIn;case"project":return r.sourceProject}}var Ue="sm.settings.plugins.collapsed",He="sm.settings.plugins.kind-filter",Ke="sm.settings.plugins.source-filter";function dn(){let t=null;try{t=localStorage.getItem(Ue)}catch{return new Set}if(!t)return new Set;let r;try{r=JSON.parse(t)}catch{return new Set}if(!Array.isArray(r))return new Set;let e=new Set;for(let i of r)typeof i=="string"&&i.length>0&&e.add(i);return e}function gn(t){try{if(t.size===0){localStorage.removeItem(Ue);return}localStorage.setItem(Ue,JSON.stringify([...t]))}catch{}}function pn(){let t=null;try{t=localStorage.getItem(He)}catch{return"all"}return t&&Jt.includes(t)?t:"all"}function un(t){try{if(t==="all"){localStorage.removeItem(He);return}localStorage.setItem(He,t)}catch{}}function mn(){let t=null;try{t=localStorage.getItem(Ke)}catch{return"all"}return t&&en.includes(t)?t:"all"}function _n(t){try{if(t==="all"){localStorage.removeItem(Ke);return}localStorage.setItem(Ke,t)}catch{}}function qe(){Ze(qe);let t=u(dn());B(()=>gn(t()));let r=i=>{let n=new Set(t());n.has(i)?n.delete(i):n.add(i),t.set(n)},e=i=>!t().has(i);return{collapsed:t.asReadonly(),toggleExpanded:r,isExpanded:e}}function hn(t){let r=u(""),e=x(()=>r().trim().length>0),i=u(pn()),n=x(()=>i()!=="all"),s=u(mn()),g=x(()=>s()!=="all"),S=x(()=>i()==="all"&&s()==="all");B(()=>un(i())),B(()=>_n(s()));let V=x(()=>an(t.plugins().flatMap(sn))),te=x(()=>{let F=r().trim().toLowerCase(),P=s(),I=i(),j=V();return P!=="all"&&(j=j.flatMap(D=>rn(D,P))),I!=="all"&&(j=j.flatMap(D=>on(D,I))),F.length>0&&(j=j.flatMap(D=>nn(D,F))),j});return{searchText:r,searchActive:e,kindFilter:i,setKindFilter:F=>{i.set(F)},toggleKindFilter:F=>{i.set(i()===F?"all":F)},isKindFilterActive:F=>i()===F,kindFilterActive:n,kindFilterChips:Zt,sourceFilter:s,setSourceFilter:F=>{s.set(F)},toggleSourceFilter:F=>{s.set(s()===F?"all":F)},isSourceFilterActive:F=>s()===F,sourceFilterActive:g,sourceFilterChips:tn,allFilterActive:S,resetFilters:()=>{i.set("all"),s.set("all")},visiblePlugins:V,filteredPlugins:te}}var ii=new Set(["claude","antigravity","openai","agent-skills","core"]),oi="external_plugin";function ri(t){let r=t.indexOf("/"),e=r>0?t.slice(0,r):t;return ii.has(e)?t:oi}function We(t){let r=new Set;for(let e of t)r.add(ri(e));return[...r].sort()}function fn(t){let r=u(!1),e=u(null),i=u(null),n=u([]),s=u(new Map),g=u(new Map),S=u(!1),V=x(()=>{let P=s(),I=g(),j=new Set;for(let[D,T]of I)P.get(D)!==T&&j.add(D);return j}),te=x(()=>V().size>0),pe=x(()=>n().some(P=>Ne(P.status))),ue=x(()=>{let P=g();for(let I of n()){if(I.startsAsDisabled!==!0)continue;let j=I.extensions??[];for(let D of j)if(P.get(Q(I.id,D.id))===!0)return!0}return!1});return{plugins:n,loading:r,loadError:e,toggleError:i,applying:S,hasFailureRows:pe,originalState:s,pendingState:g,dirtyIds:V,hasPendingChanges:te,restartRecommended:ue,pendingEnabled:P=>g().get(P)??!1,isDirty:P=>V().has(P),refresh:async()=>{r.set(!0),e.set(null),i.set(null);try{let P=await t.dataSource.listPlugins();n.set([...P.items]);let I=Be(P.items);s.set(I),g.set(new Map(I))}catch(P){e.set(Ge(P)),n.set([]),s.set(new Map),g.set(new Map)}finally{r.set(!1)}},onExtensionToggle:(P,I,j)=>{if(S())return;let D=Q(P,I.id),T=new Map(g());T.set(D,j),g.set(T)},applyChanges:async()=>{if(S())return{ok:!1};let P=V();if(P.size===0)return{ok:!1};let I=[],j=g();for(let T of P)I.push({id:T,enabled:j.get(T)??!1});S.set(!0),i.set(null);let D=!1;try{let T=await t.dataSource.applyPluginChanges(I);n.set([...T.items]);let Xe=Be(T.items);s.set(Xe),g.set(new Map(Xe)),t.scanTrigger.run(),D=!0}catch(T){i.set(Ge(T))}finally{S.set(!1)}return D&&Pt("plugin.apply",{enabled:We(I.filter(T=>T.enabled).map(T=>T.id)),disabled:We(I.filter(T=>!T.enabled).map(T=>T.id))}),{ok:D}},discardChanges:()=>{g.set(new Map(s())),i.set(null)}}}var bn=(t,r)=>r.id;function li(t,r){if(t&1&&l(0),t&2){let e=d();p(" ",e.texts.pluginsKindFilterAll," ")}}function ci(t,r){if(t&1&&l(0),t&2){let e=d().$implicit,i=d();p(" ",i.sourceLabel(e)," ")}}function di(t,r){if(t&1){let e=N();c(0,"p-togglebutton",19),w("ngModelChange",function(){let n=E(e).$implicit,s=d();return M(s.toggleSourceFilter(n))}),K(1,ci,1,1,"ng-template",null,0,Ce),a()}if(t&2){let e=r.$implicit,i=d();m("ngModel",i.isSourceFilterActive(e))("ariaLabel",i.texts.pluginsSourceFilterOptionA11y(e,!i.isSourceFilterActive(e))),b("data-testid","settings-plugins-source-chip-"+e)}}function gi(t,r){if(t&1&&l(0),t&2){let e=d().$implicit;p(" ",e," ")}}function pi(t,r){if(t&1){let e=N();c(0,"p-togglebutton",20),w("ngModelChange",function(){let n=E(e).$implicit,s=d();return M(s.toggleKindFilter(n))}),K(1,gi,1,1,"ng-template",null,0,Ce),a()}if(t&2){let e=r.$implicit,i=d();Ve("--kind-color",i.kindTint(e)),m("ngModel",i.isKindFilterActive(e))("ariaLabel",i.texts.pluginsKindFilterOptionA11y(e,!i.isKindFilterActive(e))),b("data-testid","settings-plugins-kind-chip-"+e)}}function ui(t,r){if(t&1&&(c(0,"p-message",14),l(1),a()),t&2){let e=d();m("closable",!1),o(),p(" ",e.texts.unsavedChangesMessage(e.dirtyIds().size)," ")}}function mi(t,r){if(t&1&&(c(0,"p",15),O(1,"i",21),l(2),a()),t&2){let e=d();o(2),p(" ",e.texts.loading," ")}}function _i(t,r){if(t&1&&(c(0,"p-message",16),l(1),a()),t&2){let e=d();m("closable",!1),o(),R(" ",e.texts.errorPrefix," ",e.loadError()," ")}}function hi(t,r){if(t&1&&(c(0,"p",17),l(1),a()),t&2){let e=d();o(),p(" ",e.texts.empty," ")}}function fi(t,r){if(t&1){let e=N();c(0,"p-message",25),w("onClose",function(){E(e);let n=d(2);return M(n.toggleError.set(null))}),l(1),a()}if(t&2){let e=d(2);m("closable",!0),o(),R(" ",e.texts.toggleErrorPrefix," ",e.toggleError()," ")}}function bi(t,r){if(t&1&&(c(0,"p",26),O(1,"i",28),l(2),a()),t&2){let e=d(3);o(2),p(" ",e.texts.pluginsSearchEmpty(e.searchText())," ")}}function vi(t,r){if(t&1&&(c(0,"p",27),O(1,"i",29),l(2),a()),t&2){let e=d(3);o(2),p(" ",e.texts.pluginsProjectEmpty," ")}}function xi(t,r){if(t&1&&h(0,bi,3,1,"p",26)(1,vi,3,1,"p",27),t&2){let e=d(2);f(e.searchActive()?0:e.sourceFilter()==="project"&&!e.kindFilterActive()?1:-1)}}function Ci(t,r){if(t&1){let e=N();c(0,"button",44),w("click",function(n){E(e);let s=d().$implicit;return d(2).toggleExpanded(s.id),M(n.stopPropagation())}),O(1,"i",45),a()}if(t&2){let e=d().$implicit,i=d(2);b("aria-expanded",i.isExpanded(e.id))("aria-label",i.isExpanded(e.id)?i.texts.collapseLabel:i.texts.expandLabel)("data-testid","settings-plugin-expand-"+e.id),o(),G("fa-chevron-down",i.isExpanded(e.id))("fa-chevron-right",!i.isExpanded(e.id))}}function wi(t,r){t&1&&O(0,"span",33)}function yi(t,r){if(t&1&&(c(0,"span",38),l(1),a()),t&2){let e=d().$implicit;o(),p("v",e.version)}}function ki(t,r){if(t&1&&(c(0,"span",39),O(1,"i",46),l(2),a()),t&2){let e=d().$implicit,i=d(2);m("title",i.texts.lockedTooltip),b("data-testid","settings-row-locked-"+e.id),o(2),p(" ",i.texts.lockedLabel," ")}}function Si(t,r){if(t&1&&(c(0,"p",40),l(1),a()),t&2){let e=d().$implicit;o(),_(e.description)}}function Pi(t,r){if(t&1&&(c(0,"span",41),l(1),a()),t&2){let e=d().$implicit;o(),_(e.reason)}}function Ei(t,r){if(t&1&&(c(0,"p",42),O(1,"i",47),l(2),a()),t&2){let e=d().$implicit,i=d(2);b("data-testid","settings-row-starts-disabled-"+e.id),o(2),p(" ",i.texts.startsAsDisabledRowHint," ")}}function Mi(t,r){if(t&1&&(c(0,"span",55),l(1),a()),t&2){let e=d().$implicit;o(),p("v",e.version)}}function Ti(t,r){if(t&1&&(c(0,"span",39),O(1,"i",46),l(2),a()),t&2){let e=d().$implicit,i=d(2).$implicit,n=d(2);m("title",n.texts.lockedTooltip),b("data-testid","settings-extrow-locked-"+i.id+"-"+e.id),o(2),p(" ",n.texts.lockedLabel," ")}}function Oi(t,r){if(t&1&&(c(0,"p",56),l(1),a()),t&2){let e=d().$implicit;o(),_(e.description)}}function Ii(t,r){if(t&1){let e=N();c(0,"li",49),w("click",function(n){let s=E(e).$implicit,g=d(2).$implicit,S=d(2);return M(S.onSubrowClick(g.id,s,n))})("keydown.enter",function(n){let s=E(e).$implicit,g=d(2).$implicit,S=d(2);return M(S.onSubrowClick(g.id,s,n))})("keydown.space",function(n){let s=E(e).$implicit,g=d(2).$implicit,S=d(2);return n.preventDefault(),M(S.onSubrowClick(g.id,s,n))}),c(1,"div",50)(2,"div",51),O(3,"span",52),c(4,"span",53),l(5),a(),c(6,"span",54),l(7),a(),h(8,Mi,2,1,"span",55),h(9,Ti,3,3,"span",39),a(),h(10,Oi,2,1,"p",56),a(),c(11,"p-toggleswitch",57),w("ngModelChange",function(n){let s=E(e).$implicit,g=d(2).$implicit,S=d(2);return M(S.onExtensionToggle(g.id,s,n))}),a()()}if(t&2){let e=r.$implicit,i=d(2).$implicit,n=d(2);G("is-clickable",n.extensionToggleInteractive(e))("is-dirty",n.isDirty(n.qualifiedExt(i.id,e.id))),b("aria-label",n.texts.a11y.extensionRow(n.qualifiedExt(i.id,e.id)))("data-testid","settings-extrow-"+i.id+"-"+e.id),o(3),G("settings-plugins__dirty-dot--visible",n.isDirty(n.qualifiedExt(i.id,e.id))),b("data-testid","settings-extrow-dirty-"+i.id+"-"+e.id),o(2),_(e.id),o(),Ve("--kind-color",n.kindTint(e.kind)),o(),_(e.kind),o(),f(i.source==="project"?8:-1),o(),f(e.locked?9:-1),o(),f(e.description?10:-1),o(),m("ngModel",n.pendingEnabled(n.qualifiedExt(i.id,e.id)))("disabled",n.applying()||!!e.locked)("ariaLabel",n.texts.a11y.extensionToggle(n.qualifiedExt(i.id,e.id),!n.pendingEnabled(n.qualifiedExt(i.id,e.id)))),b("data-testid","settings-ext-toggle-"+i.id+"-"+e.id)}}function Fi(t,r){if(t&1&&(c(0,"ul",43),A(1,Ii,12,20,"li",48,bn),a()),t&2){let e=d().$implicit;b("data-testid","settings-extensions-"+e.id),o(),L(e.extensions)}}function ji(t,r){if(t&1){let e=N();c(0,"li",30)(1,"div",31),w("click",function(n){let s=E(e).$implicit,g=d(2);return M(g.onRowClick(s,n))})("keydown.enter",function(n){let s=E(e).$implicit,g=d(2);return M(g.onRowClick(s,n))})("keydown.space",function(n){let s=E(e).$implicit,g=d(2);return n.preventDefault(),M(g.onRowClick(s,n))}),h(2,Ci,2,7,"button",32)(3,wi,1,0,"span",33),c(4,"div",34)(5,"div",35)(6,"span",36),l(7),a(),c(8,"span",37),l(9),a(),h(10,yi,2,1,"span",38),h(11,ki,3,3,"span",39),a(),h(12,Si,2,1,"p",40),h(13,Pi,2,1,"span",41),h(14,Ei,3,2,"p",42),a()(),h(15,Fi,3,1,"ul",43),a()}if(t&2){let e=r.$implicit,i=d(2);G("is-clickable",i.rowIsClickable(e)),b("data-testid","settings-row-"+e.id),o(),b("aria-label",i.texts.a11y.pluginRow(e.id)),o(),f(i.canExpandExtensions(e)?2:3),o(5),_(e.id),o(2),_(i.sourceLabel(e.source)),o(),f(e.source==="project"&&e.version?10:-1),o(),f(e.locked?11:-1),o(),f(e.description?12:-1),o(),f(e.reason?13:-1),o(),f(i.showStartsAsDisabledHint(e)?14:-1),o(),f(i.canExpandExtensions(e)&&i.isExpanded(e.id)?15:-1)}}function Di(t,r){if(t&1&&(h(0,fi,2,3,"p-message",22),h(1,xi,2,1),c(2,"ul",23),A(3,ji,16,13,"li",24,bn),a()),t&2){let e=d();f(e.toggleError()?0:-1),o(),f(e.filteredPlugins().length===0?1:-1),o(2),L(e.filteredPlugins())}}function Ai(t,r){if(t&1&&(c(0,"em",58),l(1),a()),t&2){let e=d(2);o(),p(" ",e.texts.startsAsDisabledFooterHint," ")}}function Li(t,r){if(t&1){let e=N();c(0,"footer",18),h(1,Ai,2,1,"em",58),c(2,"p-button",59),w("onClick",function(){E(e);let n=d();return M(n.discardChanges())}),a(),c(3,"p-button",60),w("onClick",function(){E(e);let n=d();return M(n.applyChanges())}),a()()}if(t&2){let e=d();o(),f(e.restartRecommended()?1:-1),o(),m("text",!0)("label",e.texts.discardChanges)("ariaLabel",e.texts.discardA11y)("disabled",e.applying()),o(),m("label",e.texts.applyAndClose)("ariaLabel",e.texts.applyA11y)("disabled",e.applying())("loading",e.applying())}}var vn=(()=>{class t{dataSource=k(X);scanTrigger=k(Rt);buffer=k(Fe);destroyRef=k(et);visible=$.required();applied=we();texts=y;pluginState=fn({dataSource:this.dataSource,scanTrigger:this.scanTrigger});plugins=this.pluginState.plugins;loading=this.pluginState.loading;loadError=this.pluginState.loadError;toggleError=this.pluginState.toggleError;applying=this.pluginState.applying;hasFailureRows=this.pluginState.hasFailureRows;originalState=this.pluginState.originalState;pendingState=this.pluginState.pendingState;dirtyIds=this.pluginState.dirtyIds;hasPendingChanges=this.pluginState.hasPendingChanges;restartRecommended=this.pluginState.restartRecommended;pluginCollapse=qe();collapsed=this.pluginCollapse.collapsed;pluginFilter=hn({plugins:this.plugins});searchText=this.pluginFilter.searchText;searchActive=this.pluginFilter.searchActive;kindFilter=this.pluginFilter.kindFilter;kindFilterActive=this.pluginFilter.kindFilterActive;kindFilterChips=this.pluginFilter.kindFilterChips;sourceFilter=this.pluginFilter.sourceFilter;sourceFilterActive=this.pluginFilter.sourceFilterActive;sourceFilterChips=this.pluginFilter.sourceFilterChips;allFilterActive=this.pluginFilter.allFilterActive;visiblePlugins=this.pluginFilter.visiblePlugins;filteredPlugins=this.pluginFilter.filteredPlugins;constructor(){B(()=>{this.visible()&&this.pluginState.refresh()});let e={dirtyIds:this.pluginState.dirtyIds,applyChanges:async()=>{let i=await this.pluginState.applyChanges();return i.ok&&this.applied.emit(),i},discardChanges:()=>this.pluginState.discardChanges()};this.buffer.register(e),this.destroyRef.onDestroy(()=>this.buffer.deregister(e))}toggleKindFilter(e){this.pluginFilter.toggleKindFilter(e)}isKindFilterActive(e){return this.pluginFilter.isKindFilterActive(e)}toggleSourceFilter(e){this.pluginFilter.toggleSourceFilter(e)}isSourceFilterActive(e){return this.pluginFilter.isSourceFilterActive(e)}resetFilters(){this.pluginFilter.resetFilters()}toggleExpanded(e){this.pluginCollapse.toggleExpanded(e)}isExpanded(e){return this.pluginCollapse.isExpanded(e)}pendingEnabled(e){return this.pluginState.pendingEnabled(e)}isDirty(e){return this.pluginState.isDirty(e)}showStartsAsDisabledHint(e){return!e.startsAsDisabled||!e.extensions?!1:e.extensions.some(i=>this.pendingEnabled(Q(e.id,i.id)))}onExtensionToggle(e,i,n){this.pluginState.onExtensionToggle(e,i,n)}async applyChanges(){(await this.pluginState.applyChanges()).ok&&this.applied.emit()}discardChanges(){this.pluginState.discardChanges()}canExpandExtensions(e){return(e.extensions?.length??0)>0}extensionToggleInteractive(e){return!e.locked}rowIsClickable(e){return this.canExpandExtensions(e)}onRowClick(e,i){$e(i)||this.canExpandExtensions(e)&&this.toggleExpanded(e.id)}onSubrowClick(e,i,n){if($e(n)||!this.extensionToggleInteractive(i))return;let s=Q(e,i.id);this.onExtensionToggle(e,i,!this.pendingEnabled(s))}statusLabel(e){return ln(e,this.texts)}sourceLabel(e){return cn(e,this.texts)}qualifiedExt(e,i){return Q(e,i)}kindTint(e){return Yt(e)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=z({type:t,selectors:[["sm-settings-plugins"]],inputs:{visible:[1,"visible"]},outputs:{applied:"applied"},decls:28,vars:11,consts:[["content",""],["aria-labelledby","settings-plugins-heading",1,"settings-plugins"],[1,"settings-plugins__scroll"],[1,"settings-plugins__header"],["id","settings-plugins-heading",1,"settings-plugins__title"],[1,"settings-plugins__intro"],["iconPosition","left",1,"settings-plugins__search"],["styleClass","fa-solid fa-magnifying-glass"],["pInputText","","type","text","data-testid","settings-plugins-search",3,"ngModelChange","placeholder","ngModel"],["role","group","data-testid","settings-plugins-filter",1,"settings-plugins__filter"],["styleClass","settings-plugins__source-chip is-all","data-testid","settings-plugins-filter-all",3,"ngModelChange","ngModel","ariaLabel"],["aria-hidden","true",1,"settings-plugins__filter-divider"],["styleClass","settings-plugins__source-chip",3,"ngModel","ariaLabel"],["styleClass","settings-plugins__kind-chip",3,"ngModel","--kind-color","ariaLabel"],["severity","warn","styleClass","settings-plugins__banner","data-testid","settings-banner-unsaved",3,"closable"],["data-testid","settings-loading",1,"settings-plugins__hint"],["severity","error","data-testid","settings-error",3,"closable"],["data-testid","settings-empty",1,"settings-plugins__hint"],["data-testid","settings-plugins-footer",1,"settings-plugins__footer"],["styleClass","settings-plugins__source-chip",3,"ngModelChange","ngModel","ariaLabel"],["styleClass","settings-plugins__kind-chip",3,"ngModelChange","ngModel","ariaLabel"],["aria-hidden","true",1,"fa-solid","fa-spinner","fa-spin"],["severity","error","data-testid","settings-toggle-error",3,"closable"],["role","list",1,"settings-plugins__list"],[1,"settings-plugins__row",3,"is-clickable"],["severity","error","data-testid","settings-toggle-error",3,"onClose","closable"],["data-testid","settings-search-empty",1,"settings-plugins__hint"],["data-testid","settings-project-empty",1,"settings-plugins__hint"],["aria-hidden","true",1,"fa-solid","fa-magnifying-glass"],["aria-hidden","true",1,"fa-solid","fa-folder-open"],[1,"settings-plugins__row"],["role","button","tabindex","0",1,"settings-plugins__row-main",3,"click","keydown.enter","keydown.space"],["type","button",1,"settings-plugins__expand"],["aria-hidden","true",1,"settings-plugins__expand-spacer"],[1,"settings-plugins__row-text"],[1,"settings-plugins__row-headline"],[1,"settings-plugins__row-id"],[1,"settings-plugins__row-source"],[1,"settings-plugins__row-version"],[1,"settings-plugins__row-locked",3,"title"],[1,"settings-plugins__row-description"],[1,"settings-plugins__row-reason"],[1,"settings-plugins__row-hint"],["role","list",1,"settings-plugins__sublist"],["type","button",1,"settings-plugins__expand",3,"click"],["aria-hidden","true",1,"fa-solid"],["aria-hidden","true",1,"fa-solid","fa-lock"],["aria-hidden","true",1,"fa-solid","fa-triangle-exclamation"],["role","button","tabindex","0",1,"settings-plugins__subrow",3,"is-clickable","is-dirty"],["role","button","tabindex","0",1,"settings-plugins__subrow",3,"click","keydown.enter","keydown.space"],[1,"settings-plugins__subrow-text"],[1,"settings-plugins__subrow-headline"],["aria-hidden","true",1,"settings-plugins__dirty-dot"],[1,"settings-plugins__subrow-id"],[1,"settings-plugins__subrow-kind"],[1,"settings-plugins__subrow-version"],[1,"settings-plugins__subrow-description"],[3,"ngModelChange","ngModel","disabled","ariaLabel"],["data-testid","settings-plugins-restart-hint",1,"settings-plugins__footer-hint"],["severity","secondary","data-testid","settings-plugins-discard",3,"onClick","text","label","ariaLabel","disabled"],["data-testid","settings-plugins-apply",3,"onClick","label","ariaLabel","disabled","loading"]],template:function(i,n){i&1&&(c(0,"section",1)(1,"div",2)(2,"header",3)(3,"h2",4),l(4),a(),c(5,"p",5),l(6),a()(),c(7,"p-iconfield",6),O(8,"p-inputicon",7),c(9,"input",8),w("ngModelChange",function(g){return n.searchText.set(g)}),a()(),c(10,"div",9)(11,"p-togglebutton",10),w("ngModelChange",function(){return n.resetFilters()}),K(12,li,1,1,"ng-template",null,0,Ce),a(),c(14,"span",11),l(15,"|"),a(),A(16,di,3,3,"p-togglebutton",12,q),c(18,"span",11),l(19,"|"),a(),A(20,pi,3,5,"p-togglebutton",13,q),a(),h(22,ui,2,2,"p-message",14),h(23,mi,3,1,"p",15)(24,_i,2,3,"p-message",16)(25,hi,2,1,"p",17)(26,Di,5,2),a(),h(27,Li,4,9,"footer",18),a()),i&2&&(o(4),p(" ",n.texts.pluginsHeading," "),o(2),_(n.texts.pluginsIntro),o(3),m("placeholder",n.texts.pluginsSearchPlaceholder)("ngModel",n.searchText()),b("aria-label",n.texts.pluginsSearchA11y),o(),b("aria-label",n.texts.pluginsFilterA11y),o(),m("ngModel",n.allFilterActive())("ariaLabel",n.texts.pluginsFilterAllA11y),o(5),L(n.sourceFilterChips),o(4),L(n.kindFilterChips),o(2),f(n.hasPendingChanges()?22:-1),o(),f(n.loading()?23:n.loadError()?24:n.plugins().length===0?25:26),o(4),f(n.hasPendingChanges()?27:-1))},dependencies:[le,Me,se,ae,re,Se,Tt,Mt,It,Ot,Ie,Oe,de,ce,kt,yt,je,ge],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;height:100%;overflow:hidden;--kind-color: var(--p-text-color)}.settings-plugins[_ngcontent-%COMP%]{display:flex;flex-direction:column;flex:1;min-height:0}.settings-plugins__scroll[_ngcontent-%COMP%]{flex:1;overflow-y:auto;padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:.75rem;min-height:0}.settings-plugins__header[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.25rem}.settings-plugins__title[_ngcontent-%COMP%]{font-size:1.15rem;font-weight:600;margin:0}.settings-plugins__intro[_ngcontent-%COMP%]{margin:0;color:var(--p-text-muted-color);font-size:.875rem}.settings-plugins__search[_ngcontent-%COMP%]{display:block;width:100%}.settings-plugins__search[_ngcontent-%COMP%] :where(input[_ngcontent-%COMP%]){width:100%}.settings-plugins__filter[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;align-items:center;gap:.375rem}.settings-plugins__kind-chip[_ngcontent-%COMP%], .settings-plugins__source-chip[_ngcontent-%COMP%]{--p-togglebutton-padding: .25rem .625rem;--p-togglebutton-content-padding: 0;--p-togglebutton-content-checked-background: transparent;--p-togglebutton-content-checked-shadow: none;--p-togglebutton-border-radius: var(--sm-radius-pill);--p-togglebutton-background: color-mix(in oklab, var(--chip-accent) 8%, transparent);--p-togglebutton-hover-background: color-mix(in oklab, var(--chip-accent) 18%, transparent);--p-togglebutton-checked-background: color-mix(in oklab, var(--chip-accent) 80%, transparent);--p-togglebutton-border-color: color-mix(in oklab, var(--chip-accent) 35%, transparent);--p-togglebutton-hover-border-color: color-mix(in oklab, var(--chip-accent) 55%, transparent);--p-togglebutton-checked-border-color: var(--chip-accent);--p-togglebutton-color: color-mix(in oklab, var(--chip-accent) 70%, var(--p-text-color));--p-togglebutton-hover-color: color-mix(in oklab, var(--chip-accent) 70%, var(--p-text-color));--p-togglebutton-checked-color: var(--p-surface-50);font-size:.75rem;font-weight:500;letter-spacing:.02em;text-transform:lowercase}.settings-plugins__kind-chip[_ngcontent-%COMP%]{--chip-accent: var(--kind-color)}.settings-plugins__source-chip[_ngcontent-%COMP%]{--chip-accent: var(--p-primary-color)}.settings-plugins__source-chip.is-all[_ngcontent-%COMP%]{--chip-accent: var(--p-text-muted-color)}.settings-plugins__filter-divider[_ngcontent-%COMP%]{align-self:center;color:var(--p-text-muted-color);-webkit-user-select:none;user-select:none}.app-dark[_nghost-%COMP%] .settings-plugins__kind-chip[_ngcontent-%COMP%], .app-dark [_nghost-%COMP%] .settings-plugins__kind-chip[_ngcontent-%COMP%], .app-dark[_nghost-%COMP%] .settings-plugins__source-chip[_ngcontent-%COMP%], .app-dark [_nghost-%COMP%] .settings-plugins__source-chip[_ngcontent-%COMP%]{--p-togglebutton-background: color-mix(in oklab, var(--chip-accent) 14%, transparent);--p-togglebutton-hover-background: color-mix(in oklab, var(--chip-accent) 26%, transparent);--p-togglebutton-checked-background: color-mix(in oklab, var(--chip-accent) 70%, transparent);--p-togglebutton-border-color: color-mix(in oklab, var(--chip-accent) 50%, transparent);--p-togglebutton-hover-border-color: color-mix(in oklab, var(--chip-accent) 70%, transparent);--p-togglebutton-color: color-mix(in oklab, var(--chip-accent) 80%, var(--p-text-color));--p-togglebutton-hover-color: color-mix(in oklab, var(--chip-accent) 80%, var(--p-text-color));--p-togglebutton-checked-color: var(--p-surface-900)}.settings-plugins__banner[_ngcontent-%COMP%]{display:block}.settings-plugins__banner-body[_ngcontent-%COMP%]{font-weight:400}.settings-plugins__hint[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem;margin:0;padding:1rem 0;color:var(--p-text-muted-color);font-size:.875rem}.settings-plugins__list[_ngcontent-%COMP%]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.25rem}.settings-plugins__row[_ngcontent-%COMP%]{border:1px solid var(--p-content-border-color);border-radius:var(--p-border-radius);background:var(--p-content-background);padding:.75rem .875rem;display:flex;flex-direction:column;gap:.5rem}.settings-plugins__row.is-clickable[_ngcontent-%COMP%]{cursor:pointer;transition:background .12s ease}.settings-plugins__row.is-clickable[_ngcontent-%COMP%]:hover{background:var(--p-content-hover-background)}.settings-plugins__row.is-failed[_ngcontent-%COMP%]{border-color:var(--p-message-error-border-color);background:var(--p-message-error-background)}.settings-plugins__row.is-extension-plugin[_ngcontent-%COMP%]{background:var(--p-content-background)}.settings-plugins__row-main[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.75rem}.settings-plugins__expand[_ngcontent-%COMP%], .settings-plugins__expand-spacer[_ngcontent-%COMP%]{width:1.75rem;height:1.75rem;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.settings-plugins__expand[_ngcontent-%COMP%]{border:none;background:transparent;cursor:pointer;color:var(--p-text-muted-color);border-radius:var(--p-border-radius)}.settings-plugins__expand[_ngcontent-%COMP%]:hover{color:var(--p-text-color);background:var(--p-content-hover-background)}.settings-plugins__row-text[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.125rem;flex:1;min-width:0}.settings-plugins__row-headline[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem .75rem;position:relative}.settings-plugins__row-id[_ngcontent-%COMP%]{font-weight:600;font-family:var(--p-monospace-font-family)}.settings-plugins__row-source[_ngcontent-%COMP%], .settings-plugins__row-version[_ngcontent-%COMP%], .settings-plugins__subrow-kind[_ngcontent-%COMP%], .settings-plugins__subrow-version[_ngcontent-%COMP%]{display:inline-flex;align-items:center;font-size:.7rem;font-weight:500;letter-spacing:.02em;padding:.125rem .5rem;border-radius:var(--sm-radius-pill);white-space:nowrap}.settings-plugins__row-version[_ngcontent-%COMP%], .settings-plugins__subrow-version[_ngcontent-%COMP%]{font-family:var(--p-monospace-font-family)}.settings-plugins__row-source[_ngcontent-%COMP%], .settings-plugins__row-version[_ngcontent-%COMP%], .settings-plugins__subrow-version[_ngcontent-%COMP%]{background:color-mix(in oklab,var(--p-text-color) 8%,transparent);border:1px solid color-mix(in oklab,var(--p-text-color) 18%,transparent);color:var(--p-text-color)}.app-dark[_nghost-%COMP%] .settings-plugins__row-source[_ngcontent-%COMP%], .app-dark [_nghost-%COMP%] .settings-plugins__row-source[_ngcontent-%COMP%], .app-dark[_nghost-%COMP%] .settings-plugins__row-version[_ngcontent-%COMP%], .app-dark [_nghost-%COMP%] .settings-plugins__row-version[_ngcontent-%COMP%], .app-dark[_nghost-%COMP%] .settings-plugins__subrow-version[_ngcontent-%COMP%], .app-dark [_nghost-%COMP%] .settings-plugins__subrow-version[_ngcontent-%COMP%]{background:color-mix(in oklab,var(--p-text-color) 14%,transparent);border-color:color-mix(in oklab,var(--p-text-color) 28%,transparent)}.settings-plugins__subrow-kind[_ngcontent-%COMP%]{background:color-mix(in oklab,var(--kind-color) 14%,transparent);border:1px solid color-mix(in oklab,var(--kind-color) 38%,transparent);color:color-mix(in oklab,var(--kind-color) 70%,var(--p-surface-900))}.app-dark[_nghost-%COMP%] .settings-plugins__subrow-kind[_ngcontent-%COMP%], .app-dark [_nghost-%COMP%] .settings-plugins__subrow-kind[_ngcontent-%COMP%]{background:color-mix(in oklab,var(--kind-color) 22%,transparent);border-color:color-mix(in oklab,var(--kind-color) 55%,transparent);color:color-mix(in oklab,var(--kind-color) 80%,var(--p-surface-50))}.settings-plugins__row-status[_ngcontent-%COMP%]{font-weight:500}.settings-plugins__row-locked[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:.25rem;font-size:.7rem;font-weight:500;letter-spacing:.02em;padding:.125rem .5rem;border-radius:var(--sm-radius-pill);white-space:nowrap;background:color-mix(in oklab,var(--p-message-warn-color) 14%,transparent);border:1px solid color-mix(in oklab,var(--p-message-warn-color) 35%,transparent);color:color-mix(in oklab,var(--p-message-warn-color) 70%,var(--p-surface-900))}.settings-plugins__row-locked[_ngcontent-%COMP%] > .pi[_ngcontent-%COMP%]{font-size:.7rem}.app-dark[_nghost-%COMP%] .settings-plugins__row-locked[_ngcontent-%COMP%], .app-dark [_nghost-%COMP%] .settings-plugins__row-locked[_ngcontent-%COMP%]{background:color-mix(in oklab,var(--p-message-warn-color) 22%,transparent);border-color:color-mix(in oklab,var(--p-message-warn-color) 55%,transparent);color:color-mix(in oklab,var(--p-message-warn-color) 85%,var(--p-surface-50))}.settings-plugins__row-description[_ngcontent-%COMP%]{margin:.25rem 0 0;font-size:.8125rem;line-height:1.4;color:var(--p-text-muted-color)}.settings-plugins__row-reason[_ngcontent-%COMP%]{font-size:.8125rem;color:var(--p-message-error-color);font-family:var(--p-monospace-font-family);margin-top:.25rem}.settings-plugins__sublist[_ngcontent-%COMP%]{list-style:none;margin:0;padding:.5rem 0 0 1.75rem;display:flex;flex-direction:column;gap:.25rem;border-top:1px dashed var(--p-content-border-color)}.settings-plugins__subrow[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.375rem .5rem;border-radius:var(--p-border-radius)}.settings-plugins__subrow.is-clickable[_ngcontent-%COMP%]{cursor:pointer;transition:background .12s ease}.settings-plugins__subrow.is-clickable[_ngcontent-%COMP%]:hover{background:var(--p-content-hover-background)}.settings-plugins__subrow-text[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.125rem;flex:1;min-width:0}.settings-plugins__subrow-headline[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem .75rem;position:relative}.settings-plugins__subrow-id[_ngcontent-%COMP%]{font-family:var(--p-monospace-font-family);font-size:.875rem}.settings-plugins__subrow-description[_ngcontent-%COMP%]{margin:.25rem 0 0;font-size:.75rem;line-height:1.4;color:var(--p-text-muted-color)}.settings-plugins__dirty-dot[_ngcontent-%COMP%]{position:absolute;left:-.75rem;top:50%;transform:translateY(-50%);width:.5rem;height:.5rem;border-radius:50%;background:var(--p-warn-color);visibility:hidden}.settings-plugins__dirty-dot--visible[_ngcontent-%COMP%]{visibility:visible}.settings-plugins__row-hint[_ngcontent-%COMP%]{display:flex;align-items:flex-start;gap:.5rem;margin:.25rem 0 0;font-size:.75rem;line-height:1.4;color:var(--p-warn-color)}.settings-plugins__row-hint[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{margin-top:.125rem}.settings-plugins__footer[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border-top:1px solid var(--p-content-border-color);background:var(--p-content-background)}.settings-plugins__footer-hint[_ngcontent-%COMP%]{font-style:italic;font-size:.75rem;line-height:1.4;color:var(--p-warn-color);margin-right:auto}"],changeDetection:0})}return t})();function Ri(t,r){if(t&1&&(c(0,"p-message",4),l(1),a()),t&2){let e=d();m("closable",!1),o(),R(" ",e.texts.project.loadErrorPrefix," ",r," ")}}function Vi(t,r){if(t&1&&(c(0,"p-message",5),l(1),a()),t&2){let e=d();m("closable",!1),o(),R(" ",e.texts.project.saveErrorPrefix," ",r," ")}}function zi(t,r){t&1&&(c(0,"p-message",6),l(1),a()),t&2&&(m("closable",!1),o(),p(" ",r," "))}function Bi(t,r){if(t&1&&(c(0,"span",12),l(1),a()),t&2){let e=d();o(),_(e.texts.project.activeProviderSourceAutodetect)}}function $i(t,r){if(t&1&&(c(0,"span",12),l(1),a()),t&2){let e=d();o(),_(e.texts.project.activeProviderSourceNone)}}function Gi(t,r){if(t&1&&(c(0,"span",12),l(1),a()),t&2){let e=d(),i=d();o(),R(" ",i.texts.project.activeProviderDetectedPrefix," ",e," ")}}function Ui(t,r){t&1&&h(0,Gi,2,2,"span",12),t&2&&f(r.length>0?0:-1)}function Hi(t,r){if(t&1&&(c(0,"p-message",15),l(1),a()),t&2){let e=d();m("closable",!1),o(),R(" ",e.texts.project.loadErrorPrefix," ",r," ")}}function Ki(t,r){if(t&1&&(c(0,"p-message",16),l(1),a()),t&2){let e=d();m("closable",!1),o(),R(" ",e.texts.project.saveErrorPrefix," ",r," ")}}function qi(t,r){if(t&1){let e=N();c(0,"li",19)(1,"span",27),l(2),a(),c(3,"p-button",28),w("onClick",function(){let n=E(e).$implicit,s=d();return M(s.onReferencePathRemove(n))}),a()()}if(t&2){let e=r.$implicit,i=d();o(2),_(e),o(),m("label",i.texts.project.removePathLabel)("outlined",!0)("disabled",i.isPending("scan.referencePaths")),b("data-testid","settings-project-reference-paths-remove")}}function Wi(t,r){if(t&1&&(c(0,"p-message",22),l(1),a()),t&2){let e=d();m("closable",!1),o(),R(" ",e.texts.project.loadErrorPrefix," ",r," ")}}function Xi(t,r){if(t&1&&(c(0,"p-message",23),l(1),a()),t&2){let e=d();m("closable",!1),o(),R(" ",e.texts.project.saveErrorPrefix," ",r," ")}}function Qi(t,r){if(t&1){let e=N();c(0,"li",19)(1,"span",27),l(2),a(),c(3,"p-button",28),w("onClick",function(){let n=E(e).$implicit,s=d();return M(s.onIgnorePatternRemove(n))}),a()()}if(t&2){let e=r.$implicit,i=d();o(2),_(e),o(),m("label",i.texts.project.removeIgnorePatternLabel)("outlined",!0)("disabled",i.isPending("ignore.patterns")),b("data-testid","settings-project-ignore-patterns-remove")}}var Yi=/[\n\r\x00-\x1F\x7F]/,xn=(()=>{class t{dataSource=k(X);confirmation=k(oe);providerRegistry=k(Lt);visible=$.required();texts=y;loading=u(!1);loadError=u(null);saveError=u(null);preferences=u(null);pending=u(new Set);newReferencePath=u("");referencePaths=x(()=>this.preferences()?.scan.referencePaths??[]);ignoreLoadError=u(null);ignoreSaveError=u(null);ignoreEnvelope=u(null);newIgnorePattern=u("");ignorePatterns=x(()=>this.ignoreEnvelope()?.patterns??[]);activeProviderEnvelope=u(null);activeProviderLoadError=u(null);activeProviderSaveError=u(null);activeProviderSwitchAnnouncement=u(null);providerOptions=x(()=>[{id:"",label:y.project.activeProviderEmptyOption},...this.providerRegistry.providers().map(e=>({id:e.id,label:e.label}))]);activeProviderValue=x(()=>this.activeProviderEnvelope()?.activeProvider??"");activeProviderDetectedLabel=x(()=>(this.activeProviderEnvelope()?.detected??[]).join(", "));activeProviderSource=x(()=>this.activeProviderEnvelope()?.source??"none");constructor(){B(()=>{this.visible()&&(this.refresh(),this.refreshIgnore(),this.refreshActiveProvider())})}isPending(e){return this.pending().has(e)}onReferencePathAdd(){let e=this.newReferencePath().trim();if(e.length===0)return;if(e.includes(",")){this.saveError.set(this.texts.project.commaForbidden);return}let i=[...this.referencePaths(),e];this.runPatch("scan.referencePaths",{scan:{referencePaths:i}}).then(n=>{n&&this.newReferencePath.set("")})}onReferencePathRemove(e){let i=this.referencePaths().filter(n=>n!==e);this.runPatch("scan.referencePaths",{scan:{referencePaths:[...i]}})}onIgnorePatternAdd(){let e=this.newIgnorePattern().trim();if(e.length===0){this.ignoreSaveError.set(this.texts.project.ignorePatternEmpty);return}if(Yi.test(e)){this.ignoreSaveError.set(this.texts.project.ignorePatternHasControlChar);return}let i=this.ignorePatterns();if(i.includes(e)){this.ignoreSaveError.set(this.texts.project.ignorePatternDuplicate);return}let n=[...i,e];this.runIgnorePatch({patterns:n}).then(s=>{s&&this.newIgnorePattern.set("")})}onIgnorePatternRemove(e){let i=this.ignorePatterns().filter(n=>n!==e);this.runIgnorePatch({patterns:[...i]})}onActiveProviderChange(e){e===""||e===this.activeProviderValue()||this.confirmActiveProviderSwitch(e,async()=>{await this.runActiveProviderSwitch(e)})}async refresh(){this.loading.set(!0),this.loadError.set(null),this.saveError.set(null);try{let e=await this.dataSource.getProjectPreferences();this.preferences.set(e)}catch(e){this.loadError.set(ee(e)),this.preferences.set(null)}finally{this.loading.set(!1)}}async refreshIgnore(){this.ignoreLoadError.set(null),this.ignoreSaveError.set(null);try{let e=await this.dataSource.getProjectIgnore();this.ignoreEnvelope.set(e)}catch(e){this.ignoreLoadError.set(ee(e)),this.ignoreEnvelope.set(null)}}async refreshActiveProvider(){this.activeProviderLoadError.set(null),this.activeProviderSaveError.set(null);try{let e=await this.dataSource.getActiveProvider();this.activeProviderEnvelope.set(e)}catch(e){this.activeProviderLoadError.set(ee(e)),this.activeProviderEnvelope.set(null)}}async runActiveProviderSwitch(e){this.activeProviderSaveError.set(null),this.activeProviderSwitchAnnouncement.set(null);try{let i=await this.dataSource.setActiveProvider(e);this.activeProviderEnvelope.set({activeProvider:i.activeProvider,detected:i.detected,source:i.source});let n=i.switch.dropped;if(n===null)this.activeProviderSwitchAnnouncement.set(this.texts.project.activeProviderSwitchedNoDb);else{let s=this.texts.project;this.activeProviderSwitchAnnouncement.set(`${s.activeProviderSwitchedPrefix} ${n.tableCount} ${s.activeProviderSwitchedSuffix}`)}}catch(i){this.activeProviderSaveError.set(ee(i))}}confirmActiveProviderSwitch(e,i){this.confirmation.confirm({header:this.texts.project.activeProviderConfirmHeader,message:this.texts.project.activeProviderConfirmIntro,acceptLabel:this.texts.project.activeProviderConfirmAccept,rejectLabel:this.texts.project.activeProviderConfirmReject,acceptButtonProps:{severity:"primary"},rejectButtonProps:{severity:"secondary"},accept:()=>{i()},reject:()=>{let n=this.activeProviderEnvelope();n&&this.activeProviderEnvelope.set(H({},n))}})}async runPatch(e,i){if(this.pending().has(e))return!1;let n=new Set(this.pending());n.add(e),this.pending.set(n),this.saveError.set(null);let s=!1;try{let g=await this.dataSource.setProjectPreferences(i);this.preferences.set(g),s=!0}catch(g){if(g instanceof U&&g.code==="confirm-required"){let S=g.paths??[];this.confirmDialog(S,async()=>{try{let V=await this.dataSource.setProjectPreferences(Y(H({},i),{confirm:!0}));this.preferences.set(V),this.newReferencePath.set("")}catch(V){this.saveError.set(ee(V))}})}else this.saveError.set(ee(g))}finally{let g=new Set(this.pending());g.delete(e),this.pending.set(g)}return s}async runIgnorePatch(e){let i="ignore.patterns";if(this.pending().has(i))return!1;let n=new Set(this.pending());n.add(i),this.pending.set(n),this.ignoreSaveError.set(null);let s=!1;try{let g=await this.dataSource.setProjectIgnore(e);this.ignoreEnvelope.set(g),s=!0}catch(g){this.ignoreSaveError.set(ee(g))}finally{let g=new Set(this.pending());g.delete(i),this.pending.set(g)}return s}confirmDialog(e,i){this.confirmation.confirm({header:y.project.confirmDialogHeader,message:y.project.confirmDialogIntro+`
|
|
122
|
+
`+e.map(n=>`\u2022 ${n}`).join(`
|
|
123
|
+
`),acceptLabel:y.project.confirmDialogAccept,rejectLabel:y.project.confirmDialogReject,acceptButtonProps:{severity:"primary"},rejectButtonProps:{severity:"secondary"},accept:()=>{i()}})}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=z({type:t,selectors:[["sm-settings-project"]],inputs:{visible:[1,"visible"]},features:[ie([oe])],decls:58,vars:36,consts:[["data-testid","settings-project",1,"settings-project"],["id","settings-project-heading",1,"settings-project__title"],[1,"settings-project__intro"],[1,"settings-project__intro-path"],["severity","error","data-testid","settings-project-active-provider-load-error",3,"closable"],["severity","error","data-testid","settings-project-active-provider-save-error",3,"closable"],["severity","info","data-testid","settings-project-active-provider-switch-announce",3,"closable"],["data-testid","settings-project-active-provider-row",1,"settings-project__list-row"],[1,"settings-project__row-text"],[1,"settings-project__row-label"],[1,"settings-project__row-description"],[1,"settings-project__row-meta"],[1,"settings-project__meta-line"],[1,"settings-project__add-row"],["optionLabel","label","optionValue","id","appendTo","body","data-testid","settings-project-active-provider-select",1,"settings-project__provider-select",3,"ngModelChange","options","ngModel"],["severity","error","data-testid","settings-project-load-error",3,"closable"],["severity","error","data-testid","settings-project-save-error",3,"closable"],["data-testid","settings-project-reference-paths-row",1,"settings-project__list-row"],["role","list",1,"settings-project__path-list"],[1,"settings-project__path-item"],["type","text","pInputText","","data-testid","settings-project-reference-paths-input",3,"ngModelChange","keydown.enter","ngModel","placeholder","disabled"],["severity","primary","size","small","data-testid","settings-project-reference-paths-add",3,"onClick","label","disabled"],["severity","error","data-testid","settings-project-ignore-load-error",3,"closable"],["severity","error","data-testid","settings-project-ignore-save-error",3,"closable"],["data-testid","settings-project-ignore-patterns-row",1,"settings-project__list-row"],["type","text","pInputText","","data-testid","settings-project-ignore-patterns-input",3,"ngModelChange","keydown.enter","ngModel","placeholder","disabled"],["severity","primary","size","small","data-testid","settings-project-ignore-patterns-add",3,"onClick","label","disabled"],[1,"settings-project__path-text"],["severity","secondary","size","small",3,"onClick","label","outlined","disabled"]],template:function(i,n){if(i&1&&(c(0,"section",0)(1,"h2",1),l(2),a(),c(3,"p",2),l(4),c(5,"code",3),l(6),a(),l(7),a(),h(8,Ri,2,3,"p-message",4),h(9,Vi,2,3,"p-message",5),h(10,zi,2,2,"p-message",6),c(11,"div",7)(12,"div",8)(13,"div",9),l(14),a(),c(15,"div",10),l(16),a(),c(17,"div",11),h(18,Bi,2,1,"span",12)(19,$i,2,1,"span",12),h(20,Ui,1,1),a()(),c(21,"div",13)(22,"p-select",14),w("ngModelChange",function(g){return n.onActiveProviderChange(g)}),a()()(),h(23,Hi,2,3,"p-message",15),h(24,Ki,2,3,"p-message",16),c(25,"div",17)(26,"div",8)(27,"div",9),l(28),a(),c(29,"div",10),l(30),a()(),c(31,"ul",18),A(32,qi,4,5,"li",19,q),a(),c(34,"div",13)(35,"input",20),w("ngModelChange",function(g){return n.newReferencePath.set(g)})("keydown.enter",function(){return n.onReferencePathAdd()}),a(),c(36,"p-button",21),w("onClick",function(){return n.onReferencePathAdd()}),a()()(),h(37,Wi,2,3,"p-message",22),h(38,Xi,2,3,"p-message",23),c(39,"div",24)(40,"div",8)(41,"div",9),l(42),a(),c(43,"div",10),l(44),c(45,"code",3),l(46),a(),l(47),c(48,"code",3),l(49),a(),l(50),a()(),c(51,"ul",18),A(52,Qi,4,5,"li",19,q),a(),c(54,"div",13)(55,"input",25),w("ngModelChange",function(g){return n.newIgnorePattern.set(g)})("keydown.enter",function(){return n.onIgnorePatternAdd()}),a(),c(56,"p-button",26),w("onClick",function(){return n.onIgnorePatternAdd()}),a()()(),O(57,"p-confirmdialog"),a()),i&2){let s,g,S,V,te,pe,ue,he,fe;b("aria-labelledby","settings-project-heading"),o(2),p(" ",n.texts.project.heading," "),o(2),p(" ",n.texts.project.introPrefix," "),o(2),_(n.texts.project.introPath),o(),p("",n.texts.project.introSuffix," "),o(),f((s=n.activeProviderLoadError())?8:-1,s),o(),f((g=n.activeProviderSaveError())?9:-1,g),o(),f((S=n.activeProviderSwitchAnnouncement())?10:-1,S),o(4),_(n.texts.project.activeProviderLabel),o(2),p(" ",n.texts.project.activeProviderDescription," "),o(2),f((V=n.activeProviderSource())==="autodetect"?18:V==="none"?19:-1),o(2),f((te=n.activeProviderDetectedLabel())?20:-1,te),o(2),m("options",n.providerOptions())("ngModel",n.activeProviderValue()),o(),f((pe=n.loadError())?23:-1,pe),o(),f((ue=n.saveError())?24:-1,ue),o(4),_(n.texts.project.referencePathsLabel),o(2),p(" ",n.texts.project.referencePathsDescription," "),o(2),L(n.referencePaths()),o(3),m("ngModel",n.newReferencePath())("placeholder",n.texts.project.referencePathsPlaceholder)("disabled",n.isPending("scan.referencePaths")),o(),m("label",n.texts.project.addPathLabel)("disabled",n.isPending("scan.referencePaths")||n.newReferencePath().trim().length===0),o(),f((he=n.ignoreLoadError())?37:-1,he),o(),f((fe=n.ignoreSaveError())?38:-1,fe),o(4),_(n.texts.project.ignorePatternsLabel),o(2),p(" ",n.texts.project.ignorePatternsDescriptionPrefix," "),o(2),_(n.texts.project.ignorePatternsDescriptionFile),o(),p(" ",n.texts.project.ignorePatternsDescriptionMiddle," "),o(2),_(n.texts.project.ignorePatternsDescriptionGitignore),o(),p(" ",n.texts.project.ignorePatternsDescriptionSuffix," "),o(2),L(n.ignorePatterns()),o(3),m("ngModel",n.newIgnorePattern())("placeholder",n.texts.project.ignorePatternsPlaceholder)("disabled",n.isPending("ignore.patterns")),o(),m("label",n.texts.project.addIgnorePatternLabel)("disabled",n.isPending("ignore.patterns")||n.newIgnorePattern().trim().length===0)}},dependencies:[le,Me,se,ae,re,Se,Ee,Pe,Ie,Oe,de,ce,jt,Ft],styles:["[_nghost-%COMP%]{display:block;height:100%;overflow-y:auto;padding:1.25rem 1.5rem}.settings-project__title[_ngcontent-%COMP%]{margin:0 0 .25rem;font-size:1.05rem;font-weight:600;color:var(--p-text-color)}.settings-project__intro[_ngcontent-%COMP%]{margin:0 0 1.25rem;font-size:.85rem;color:var(--sm-text-muted);line-height:1.5}.settings-project__intro-path[_ngcontent-%COMP%]{font-family:var(--p-monospace-font-family);font-size:.8rem;padding:.05rem .3rem;border-radius:.25rem;background:var(--p-content-background);border:1px solid var(--p-content-border-color)}[_nghost-%COMP%] p-message[_ngcontent-%COMP%]{display:block;margin-bottom:1rem}.settings-project__row[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1rem;border:1px solid var(--p-content-border-color);border-radius:.5rem;background:var(--p-content-background);margin-bottom:1rem}.settings-project__row[_ngcontent-%COMP%] > p-toggleswitch[_ngcontent-%COMP%]{flex:0 0 auto;align-self:center}.settings-project__list-row[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.75rem;padding:.85rem 1rem;border:1px solid var(--p-content-border-color);border-radius:.5rem;background:var(--p-content-background);margin-bottom:1rem}.settings-project__row-text[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.25rem;flex:1 1 auto;min-width:0}.settings-project__row-label[_ngcontent-%COMP%]{font-size:.9rem;font-weight:600;color:var(--p-text-color)}.settings-project__row-description[_ngcontent-%COMP%]{font-size:.8rem;color:var(--sm-text-muted);line-height:1.45}.settings-project__path-list[_ngcontent-%COMP%]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.settings-project__path-item[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.4rem .6rem;border-radius:.35rem;background:var(--p-content-hover-background)}.settings-project__path-text[_ngcontent-%COMP%]{font-family:var(--p-font-family-mono);font-size:.8rem;word-break:break-all;flex:1 1 auto}.settings-project__add-row[_ngcontent-%COMP%]{display:flex;gap:.5rem;align-items:center}.settings-project__add-row[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{flex:1 1 auto;font-family:var(--p-font-family-mono);font-size:.8rem}.settings-project__row-meta[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.15rem;font-size:.75rem;color:var(--p-text-muted-color)}.settings-project__meta-line[_ngcontent-%COMP%]{line-height:1.3}.settings-project__provider-select[_ngcontent-%COMP%]{flex:1 1 auto}.settings-project__provider-select[_ngcontent-%COMP%] .p-select[_ngcontent-%COMP%]{width:100%}"],changeDetection:0})}return t})();function ee(t){return t instanceof U||t instanceof Error?t.message:String(t)}var Ji=(t,r)=>r.id;function Zi(t,r){if(t&1){let e=N();c(0,"li")(1,"button",6),w("click",function(){let n=E(e).$implicit,s=d();return M(s.selectSection(n.id))}),c(2,"span",7),l(3),a()()()}if(t&2){let e=r.$implicit,i=d();o(),G("is-active",i.activeSection()===e.id),b("aria-current",i.activeSection()===e.id?"page":null)("data-testid","settings-nav-"+e.id),o(2),_(e.label)}}function eo(t,r){if(t&1){let e=N();c(0,"sm-settings-plugins",8),w("applied",function(){E(e);let n=d();return M(n.onPluginsApplied())}),a()}if(t&2){let e=d();m("visible",e.pluginsVisible())}}function to(t,r){if(t&1&&O(0,"sm-settings-general",5),t&2){let e=d();m("visible",e.generalVisible())}}function no(t,r){if(t&1&&O(0,"sm-settings-project",5),t&2){let e=d();m("visible",e.projectVisible())}}function io(t,r){if(t&1&&O(0,"sm-settings-about",5),t&2){let e=d();m("visible",e.aboutVisible())}}function oo(t,r){t&1&&O(0,"sm-settings-changelog")}var ro=[{id:"general",label:y.sections.general},{id:"project",label:y.sections.project},{id:"plugins",label:y.sections.plugins},{id:"changelog",label:y.sections.changelog},{id:"about",label:y.sections.about}],Ds=(()=>{class t{visible=$.required();visibleChange=we();confirmation=k(oe);buffer=k(Fe);texts=y;sections=ro;activeSection=u("plugins");pluginsVisible=x(()=>this.visible()&&this.activeSection()==="plugins");generalVisible=x(()=>this.visible()&&this.activeSection()==="general");projectVisible=x(()=>this.visible()&&this.activeSection()==="project");aboutVisible=x(()=>this.visible()&&this.activeSection()==="about");onVisibleChange(e){if(e){this.visibleChange.emit(!0);return}let i=this.buffer.dirtyCount();if(i===0){this.visibleChange.emit(!1);return}this.confirmation.confirm({header:this.texts.confirmCloseTitle,message:this.texts.confirmCloseBody(i),acceptLabel:this.texts.applyAndClose,rejectLabel:this.texts.discardChanges,acceptButtonProps:{severity:"primary"},rejectButtonProps:{severity:"secondary"},accept:()=>{this.buffer.applyChanges()},reject:()=>{this.buffer.discardChanges(),this.visibleChange.emit(!1)}})}selectSection(e){this.activeSection.set(e)}onPluginsApplied(){this.visibleChange.emit(!1)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=z({type:t,selectors:[["sm-settings-modal"]],inputs:{visible:[1,"visible"]},outputs:{visibleChange:"visibleChange"},features:[ie([oe])],decls:13,vars:10,consts:[["styleClass","settings-modal__dialog","contentStyleClass","settings-modal__content","data-testid","settings-modal",3,"visibleChange","visible","modal","draggable","resizable","closable","closeOnEscape","dismissableMask","header"],[1,"settings-modal__layout"],["data-testid","settings-modal-sidebar",1,"settings-modal__sidebar"],["role","list",1,"settings-modal__sidebar-list"],["data-testid","settings-modal-main",1,"settings-modal__main"],[3,"visible"],["type","button",1,"settings-modal__sidebar-item",3,"click"],[1,"settings-modal__sidebar-label"],[3,"applied","visible"]],template:function(i,n){if(i&1&&(c(0,"p-dialog",0),w("visibleChange",function(g){return n.onVisibleChange(g)}),c(1,"div",1)(2,"nav",2)(3,"ul",3),A(4,Zi,4,5,"li",null,Ji),a()(),c(6,"div",4),h(7,eo,1,1,"sm-settings-plugins",5)(8,to,1,1,"sm-settings-general",5)(9,no,1,1,"sm-settings-project",5)(10,io,1,1,"sm-settings-about",5)(11,oo,1,0,"sm-settings-changelog"),a()(),O(12,"p-confirmdialog"),a()),i&2){let s;m("visible",n.visible())("modal",!0)("draggable",!1)("resizable",!1)("closable",!0)("closeOnEscape",!0)("dismissableMask",!0)("header",n.texts.modalTitle),o(2),b("aria-label",n.texts.modalTitle),o(2),L(n.sections),o(3),f((s=n.activeSection())==="plugins"?7:s==="general"?8:s==="project"?9:s==="about"?10:s==="changelog"?11:-1)}},dependencies:[re,Ee,Pe,xt,vt,Vt,$t,Qt,vn,xn],styles:["[_nghost-%COMP%]{display:contents;--p-message-error-color: #fca5a5;--p-message-error-background: color-mix(in srgb, #ef4444 14%, transparent);--p-message-error-border-color: color-mix(in srgb, #ef4444 45%, transparent)}[_nghost-%COMP%] .settings-modal__dialog{width:1024px;height:720px;max-width:92vw;max-height:90vh}[_nghost-%COMP%] .settings-modal__content{padding:0;height:100%;display:flex;flex-direction:column;overflow:hidden}.settings-modal__layout[_ngcontent-%COMP%]{flex:1;display:grid;grid-template-columns:200px 1fr;min-height:0}.settings-modal__sidebar[_ngcontent-%COMP%]{border-right:1px solid var(--p-content-border-color);background:var(--p-content-background);padding:.5rem;overflow-y:auto}.settings-modal__sidebar-list[_ngcontent-%COMP%]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.125rem}.settings-modal__sidebar-item[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;padding:.5rem .75rem;border:none;border-radius:var(--p-border-radius);background:transparent;color:var(--p-text-color);font:inherit;text-align:left;cursor:pointer;transition:background .15s ease,color .15s ease}.settings-modal__sidebar-item[_ngcontent-%COMP%]:hover{background:var(--p-content-hover-background)}.settings-modal__sidebar-item.is-active[_ngcontent-%COMP%]{background:var(--p-highlight-background);color:var(--p-highlight-color)}.settings-modal__sidebar-label[_ngcontent-%COMP%]{flex:1;font-size:.9rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.settings-modal__main[_ngcontent-%COMP%]{min-width:0;min-height:0;overflow:hidden;display:flex;flex-direction:column}.settings-modal__main[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{flex:1;min-height:0}"],changeDetection:0})}return t})();export{Ds as SettingsModal};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{A as pe,R as de,a as se,j as G,k as C,l as le,m as U,p as Y,q as Z,w as g}from"./chunk-
|
|
1
|
+
import{A as pe,R as de,a as se,j as G,k as C,l as le,m as U,p as Y,q as Z,w as g}from"./chunk-WPUUCIS3.js";import{g as Q,j as K,l as H,m as q}from"./chunk-VNA3TMIO.js";import{Ab as ee,Bb as k,Cb as E,Gb as S,Ha as ne,Hb as ie,Ib as M,Ic as B,Ka as c,Kb as a,L as b,Lb as P,M as L,Mb as j,Nb as R,O as D,Pb as T,Q as m,Qb as w,Ub as oe,W as h,X as v,Xb as re,Y as V,Yb as l,Za as I,Zb as z,_a as A,_b as O,ab as N,bb as x,ca as W,cb as d,ic as $,la as y,lb as f,rc as ae,ub as r,uc as ce,vb as u,wb as _,xb as F,yb as X,zb as J}from"./chunk-HAWX5WNM.js";var Xe=(()=>{class e{loader=m(de);bySeverity=ce(()=>{let t=this.loader.scan(),i=new Set,n=new Set;if(!t)return{errors:i,warns:n};for(let o of t.issues){let p=o.severity==="error"?i:o.severity==="warn"?n:null;if(p)for(let ye of o.nodeIds)p.add(ye)}return{errors:i,warns:n}});static \u0275fac=function(i){return new(i||e)};static \u0275prov=b({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();var et={llm:{when:{label:"when",tooltip:"When to use (LLM-inferred)"},style:{label:"style",tooltip:"Interaction style (LLM-inferred)"},does:{label:"does",tooltip:"Capabilities (LLM-inferred)"},steps:{label:"steps",tooltip:"Recipe / ordered steps (LLM-inferred)"},pre:{label:"pre",tooltip:"Preconditions (LLM-inferred)"},out:{label:"out",tooltip:"Outputs / produced artifacts (LLM-inferred)"},fx:{label:"fx",tooltip:"Side effects (LLM-inferred)"},eg:{label:"eg",tooltip:"Invocation example (LLM-inferred)"},topics:{label:"topics",tooltip:"Topics covered (LLM-inferred)"},facts:{label:"facts",tooltip:"Key facts (LLM-inferred discrete claims)"}},meta:{model:"model",allowed:"allowed",tags:"tags"},stats:{errors:e=>`${e} error${e===1?"":"s"}`,warns:e=>`${e} warning${e===1?"":"s"}`,bytes:e=>`${e.toLocaleString("en-US")} bytes`,tokens:e=>`${e.toLocaleString("en-US")} tokens`},stability:{experimental:"experimental",deprecated:"deprecated"},sidecar:{staleBody:"Stale: body content changed since the last bump.",staleFrontmatter:"Stale: frontmatter changed since the last bump.",staleBoth:"Stale: body and frontmatter changed since the last bump."},tagOverflow:e=>`+${e} more`,ariaExpand:"Expand",ariaFavoriteAdd:"Add to favorites",ariaFavoriteRemove:"Remove from favorites",favoriteAddTooltip:"Mark as favorite",favoriteRemoveTooltip:"Unfavorite"};var me=`
|
|
2
2
|
.p-tag {
|
|
3
3
|
display: inline-flex;
|
|
4
4
|
align-items: center;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{A as Pe,C as He,S as je,Y as Ve,j as $e,k as W,m as K,p as w,q as ge,w as y,x as Y}from"./chunk-
|
|
1
|
+
import{A as Pe,C as He,S as je,Y as Ve,j as $e,k as W,m as K,p as w,q as ge,w as y,x as Y}from"./chunk-WPUUCIS3.js";import{I as xe,K as Q,P as ce,b as U,d as ue,fa as pe,g as Fe}from"./chunk-4SG4352Z.js";import{l as Se,m as G}from"./chunk-VNA3TMIO.js";import{$a as V,Ab as Ae,Db as le,Ib as Ne,Ic as L,Jc as we,K as Ee,Ka as O,Kb as k,Kc as de,L as x,Lb as Be,M as $,Mb as Oe,Nb as ke,O as B,Pb as z,Q as m,Qb as q,Y as Le,Yb as E,Za as D,Zb as Ie,_a as j,_b as _e,ab as R,bb as C,ca as De,cb as ne,ha as P,ic as I,ja as H,kc as re,la as b,lb as oe,ob as T,pb as A,tc as se,ub as N,uc as _,vb as ie,wb as ae,xb as Te,xc as u,yc as a}from"./chunk-HAWX5WNM.js";import{a as te}from"./chunk-WCABR6TI.js";var tt=["data-p-icon","times"],wt=(()=>{class t extends Pe{static \u0275fac=(()=>{let e;return function(o){return(e||(e=b(t)))(o||t)}})();static \u0275cmp=D({type:t,selectors:[["","data-p-icon","times"]],features:[C],attrs:tt,decls:1,vars:0,consts:[["d","M8.01186 7.00933L12.27 2.75116C12.341 2.68501 12.398 2.60524 12.4375 2.51661C12.4769 2.42798 12.4982 2.3323 12.4999 2.23529C12.5016 2.13827 12.4838 2.0419 12.4474 1.95194C12.4111 1.86197 12.357 1.78024 12.2884 1.71163C12.2198 1.64302 12.138 1.58893 12.0481 1.55259C11.9581 1.51625 11.8617 1.4984 11.7647 1.50011C11.6677 1.50182 11.572 1.52306 11.4834 1.56255C11.3948 1.60204 11.315 1.65898 11.2488 1.72997L6.99067 5.98814L2.7325 1.72997C2.59553 1.60234 2.41437 1.53286 2.22718 1.53616C2.03999 1.53946 1.8614 1.61529 1.72901 1.74767C1.59663 1.88006 1.5208 2.05865 1.5175 2.24584C1.5142 2.43303 1.58368 2.61419 1.71131 2.75116L5.96948 7.00933L1.71131 11.2675C1.576 11.403 1.5 11.5866 1.5 11.7781C1.5 11.9696 1.576 12.1532 1.71131 12.2887C1.84679 12.424 2.03043 12.5 2.2219 12.5C2.41338 12.5 2.59702 12.424 2.7325 12.2887L6.99067 8.03052L11.2488 12.2887C11.3843 12.424 11.568 12.5 11.7594 12.5C11.9509 12.5 12.1346 12.424 12.27 12.2887C12.4053 12.1532 12.4813 11.9696 12.4813 11.7781C12.4813 11.5866 12.4053 11.403 12.27 11.2675L8.01186 7.00933Z","fill","currentColor"]],template:function(n,o){n&1&&(Le(),Ae(0,"path",0))},encapsulation:2})}return t})();var nt=Object.defineProperty,Re=Object.getOwnPropertySymbols,ot=Object.prototype.hasOwnProperty,it=Object.prototype.propertyIsEnumerable,ze=(t,i,e)=>i in t?nt(t,i,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[i]=e,qe=(t,i)=>{for(var e in i||(i={}))ot.call(i,e)&&ze(t,e,i[e]);if(Re)for(var e of Re(i))it.call(i,e)&&ze(t,e,i[e]);return t},at=(t,i,e)=>new Promise((n,o)=>{var l=s=>{try{f(e.next(s))}catch(c){o(c)}},r=s=>{try{f(e.throw(s))}catch(c){o(c)}},f=s=>s.done?n(s.value):Promise.resolve(s.value).then(l,r);f((e=e.apply(t,i)).next())}),Z="animation",S="transition";function lt(t){return t?t.disabled||!!(t.safe&&xe()):!1}function rt(t,i){return t?qe(qe({},t),Object.entries(i).reduce((e,[n,o])=>{var l;return e[n]=(l=t[n])!=null?l:o,e},{})):i}function st(t){let{name:i,enterClass:e,leaveClass:n}=t||{};return{enter:{from:e?.from||`${i}-enter-from`,to:e?.to||`${i}-enter-to`,active:e?.active||`${i}-enter-active`},leave:{from:n?.from||`${i}-leave-from`,to:n?.to||`${i}-leave-to`,active:n?.active||`${i}-leave-active`}}}function dt(t){return{enter:{onBefore:t?.onBeforeEnter,onStart:t?.onEnter,onAfter:t?.onAfterEnter,onCancelled:t?.onEnterCancelled},leave:{onBefore:t?.onBeforeLeave,onStart:t?.onLeave,onAfter:t?.onAfterLeave,onCancelled:t?.onLeaveCancelled}}}function ut(t,i){let e=window.getComputedStyle(t),n=g=>{let M=e[`${g}Delay`],v=e[`${g}Duration`];return[M.split(", ").map(pe),v.split(", ").map(pe)]},[o,l]=n(S),[r,f]=n(Z),s=Math.max(...l.map((g,M)=>g+o[M])),c=Math.max(...f.map((g,M)=>g+r[M])),d,p=0,h=0;return i===S?s>0&&(d=S,p=s,h=l.length):i===Z?c>0&&(d=Z,p=c,h=f.length):(p=Math.max(s,c),d=p>0?s>c?S:Z:void 0,h=d?d===S?l.length:f.length:0),{type:d,timeout:p,count:h}}function J(t,i){return typeof t=="number"?t:typeof t=="object"&&t[i]!=null?t[i]:null}function ct(t,i=!0,e=!1){if(!i&&!e)return;let n=Fe(t);i&&ce(t,"--pui-motion-height",n.height+"px"),e&&ce(t,"--pui-motion-width",n.width+"px")}var pt={name:"p",safe:!0,disabled:!1,enter:!0,leave:!0,autoHeight:!0,autoWidth:!1};function he(t,i){if(!t)throw new Error("Element is required.");let e={},n=!1,o={},l=null,r={},f=d=>{if(Object.assign(e,rt(d,pt)),!e.enter&&!e.leave)throw new Error("Enter or leave must be true.");r=dt(e),n=lt(e),o=st(e),l=null},s=d=>at(null,null,function*(){l?.();let{onBefore:p,onStart:h,onAfter:g,onCancelled:M}=r[d]||{},v={element:t};if(n){p?.(v),h?.(v),g?.(v);return}let{from:me,active:be,to:Ce}=o[d]||{};return ct(t,e.autoHeight,e.autoWidth),p?.(v),U(t,me),U(t,be),t.offsetHeight,ue(t,me),U(t,Ce),h?.(v),new Promise(ye=>{let Xe=J(e.duration,d),Me=()=>{ue(t,[Ce,be]),l=null},et=()=>{Me(),g?.(v),ye()};l=()=>{Me(),M?.(v),ye()},ft(t,e.type,Xe,et)})});f(i);let c={enter:()=>e.enter?s("enter"):Promise.resolve(),leave:()=>e.leave?s("leave"):Promise.resolve(),cancel:()=>{l?.(),l=null},update:(d,p)=>{if(!d)throw new Error("Element is required.");t=d,c.cancel(),f(p)}};return e.appear&&c.enter(),c}var gt=0;function ft(t,i,e,n){let o=t._motionEndId=++gt,l=()=>{o===t._motionEndId&&n()};if(e!=null)return setTimeout(l,e);let{type:r,timeout:f,count:s}=ut(t,i);if(!r){n();return}let c=r+"end",d=0,p=()=>{t.removeEventListener(c,h,!0),l()},h=g=>{g.target===t&&++d>=s&&p()};t.addEventListener(c,h,{capture:!0,once:!0}),setTimeout(()=>{d<s&&p()},f+1)}var vt=["*"];function mt(t,i){t&1&&Oe(0)}var X=new WeakMap;function F(t,i){if(t)switch(X.has(t)||X.set(t,{display:t.style.display,visibility:t.style.visibility,maxHeight:t.style.maxHeight,overflow:t.style.overflow}),i){case"display":t.style.display="none";break;case"visibility":t.style.visibility="hidden",t.style.maxHeight="0",t.style.overflow="hidden";break}}function ee(t,i){if(!t)return;let e=X.get(t)??t.style;switch(i){case"display":t.style.display=e?.display||"";break;case"visibility":t.style.visibility=e?.visibility||"",t.style.maxHeight=e?.maxHeight||"",t.style.overflow=e?.overflow||"";break}X.delete(t)}var bt=`
|
|
2
2
|
.p-motion {
|
|
3
3
|
display: block;
|
|
4
4
|
}
|