@skill-map/cli 0.45.1 → 0.47.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli/tutorial/sm-master/SKILL.md +29 -29
- package/dist/cli/tutorial/sm-master/references/fixture-templates.md +18 -13
- package/dist/cli/tutorial/sm-master/references/tour-authoring.md +35 -40
- package/dist/cli/tutorial/sm-master/references/tour-plugins.md +32 -32
- package/dist/cli/tutorial/sm-master/references/tour-settings.md +156 -75
- package/dist/cli/tutorial/sm-tutorial/SKILL.md +3 -3
- package/dist/cli.js +998 -458
- package/dist/conformance/index.js +4 -1
- package/dist/index.js +67 -22
- package/dist/kernel/index.d.ts +93 -13
- package/dist/kernel/index.js +67 -22
- package/dist/migrations/001_initial.sql +23 -0
- package/dist/ui/chunk-22CKFAEU.js +1 -0
- package/dist/ui/chunk-3AKR33GE.js +1 -0
- package/dist/ui/{chunk-QNTAOR2L.js → chunk-3HLMBEDX.js} +1 -1
- package/dist/ui/{chunk-T3IVIRRJ.js → chunk-7K36273M.js} +1 -1
- package/dist/ui/{chunk-MFLFIA7C.js → chunk-CO2ZOUSD.js} +1 -1
- package/dist/ui/{chunk-2RAE3FAN.js → chunk-CRWK2NFZ.js} +1 -1
- package/dist/ui/{chunk-VGPYYAVI.js → chunk-EPBUSS3I.js} +1 -1
- package/dist/ui/chunk-HAWX5WNM.js +4 -0
- package/dist/ui/{chunk-QDUSFOBE.js → chunk-K365TVPA.js} +1 -1
- package/dist/ui/chunk-PO2VZMOB.js +123 -0
- package/dist/ui/{chunk-X227ITGS.js → chunk-RT7E4S5B.js} +1 -1
- package/dist/ui/{chunk-5AD5ZV4I.js → chunk-UIUGLD7F.js} +1 -1
- package/dist/ui/{chunk-IYM26L3O.js → chunk-UV3QRBRR.js} +1 -1
- package/dist/ui/chunk-VNA3TMIO.js +1 -0
- package/dist/ui/{chunk-F7I6KMHX.js → chunk-VW2A6WZ3.js} +1 -1
- package/dist/ui/{chunk-A7PRWMQD.js → chunk-WPUUCIS3.js} +11 -11
- package/dist/ui/{chunk-MS6B7344.js → chunk-XWU3YFSM.js} +7 -7
- package/dist/ui/{chunk-I5AX4U2N.js → chunk-YOF6HQCQ.js} +1 -1
- package/dist/ui/chunk-ZZJ7XWDX.js +1 -0
- package/dist/ui/index.html +1 -1
- package/dist/ui/main-55GYZX6C.js +4 -0
- package/migrations/001_initial.sql +23 -0
- package/package.json +2 -2
- package/dist/cli.js.map +0 -1
- package/dist/conformance/index.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/kernel/index.js.map +0 -1
- package/dist/ui/chunk-27WQPOXP.js +0 -1
- package/dist/ui/chunk-555ST76V.js +0 -1
- package/dist/ui/chunk-PZQHB7GS.js +0 -4
- package/dist/ui/chunk-ZIGUUDUX.js +0 -123
- package/dist/ui/main-KMSUFJ6Y.js +0 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
import{$ as S,L as h,Q as A,ha as l,
|
|
1
|
+
import{$ as S,L as h,Q as A,ha as l,uc as p}from"./chunk-HAWX5WNM.js";var j=new Set(["stale-body","stale-frontmatter","stale-both"]);function y(t){return t?j.has(t.status??null):!1}function d(t){let s=t.metadata;return s&&typeof s=="object"&&!Array.isArray(s)?s:null}function Z(t){if(!t)return null;let s=t.sidecar?.annotations;if(s&&typeof s.version=="number")return`v${s.version}`;let e=d(t.frontmatter)?.version;return typeof e=="string"&&e.length>0?`v${e}`:null}function v(t){if(!t)return null;let e=t.sidecar?.annotations?.stability;if(e==="stable"||e==="experimental"||e==="deprecated")return e;let i=d(t.frontmatter)?.stability;return i==="stable"||i==="experimental"||i==="deprecated"?i:null}function Y(t){if(!t)return[];let s=t.frontmatter,e=[];if(t.kind==="agent"&&Array.isArray(s.tools))for(let i of s.tools)typeof i=="string"&&i.length>0&&e.push(i);if(t.kind==="skill"||t.kind==="command"){let i=s["allowed-tools"];if(Array.isArray(i))for(let n of i)typeof n=="string"&&n.length>0&&e.push(n);else typeof i=="string"&&i.length>0&&e.push(i)}return e}function q(t){return y(t?.sidecar)}function b(t){if(!t)return null;let e=t.sidecar?.annotations?.supersededBy;if(typeof e=="string"&&e.length>0)return e;let i=d(t.frontmatter)?.supersededBy;return typeof i=="string"&&i.length>0?i:null}function T(t){if(!t)return[];let e=t.sidecar?.annotations?.tags;if(Array.isArray(e))return e.filter(n=>typeof n=="string"&&n.length>0);let i=d(t.frontmatter)?.tags;return Array.isArray(i)?i.filter(n=>typeof n=="string"&&n.length>0):[]}function Q(t,s){switch(t?.sidecar?.status){case"stale-body":return s.staleBody;case"stale-frontmatter":return s.staleFrontmatter;case"stale-both":return s.staleBoth;default:return""}}function ee(t){return t<1e3?`${t}`:t<1e4?`${(t/1e3).toFixed(1).replace(/\.0$/,"")}k`:`${Math.round(t/1e3)}k`}function te(t){let s=new Date(t);if(isNaN(s.getTime()))return t;let e=Date.now()-s.getTime(),i=Math.floor(e/1e3);if(i<60)return"just now";let n=Math.floor(i/60);if(n<60)return`${n} minute${n===1?"":"s"} ago`;let r=Math.floor(n/60);if(r<24)return`${r} hour${r===1?"":"s"} ago`;let a=Math.floor(r/24);if(a<30)return`${a} day${a===1?"":"s"} ago`;let o=Math.floor(a/30);if(o<12)return`${o} month${o===1?"":"s"} ago`;let c=Math.floor(a/365);return`${c} year${c===1?"":"s"} ago`}var ae=["stable","experimental","deprecated"],O=["invokes","references","mentions","supersedes"],le=(()=>{class t{_searchText=l("");_selectedKinds=l([]);_kindToggleExplicitEmpty=l(!1);_selectedStabilities=l([]);_hasIssuesOnly=l(!1);_staleOnly=l(!1);_favoritesOnly=l(!1);_selectedLinkKinds=l([]);_severityErrorActive=l(!1);_severityWarnActive=l(!1);searchText=this._searchText.asReadonly();selectedKinds=this._selectedKinds.asReadonly();selectedStabilities=this._selectedStabilities.asReadonly();hasIssuesOnly=this._hasIssuesOnly.asReadonly();staleOnly=this._staleOnly.asReadonly();favoritesOnly=this._favoritesOnly.asReadonly();selectedLinkKinds=this._selectedLinkKinds.asReadonly();severityErrorActive=this._severityErrorActive.asReadonly();severityWarnActive=this._severityWarnActive.asReadonly();kindToggleExplicitEmpty=this._kindToggleExplicitEmpty.asReadonly();isActive=p(()=>this._searchText().trim().length>0||this._selectedKinds().length>0||this._kindToggleExplicitEmpty()||this._selectedStabilities().length>0||this._hasIssuesOnly()||this._staleOnly()||this._favoritesOnly()||this._selectedLinkKinds().length>0||this._severityErrorActive()||this._severityWarnActive());setSearchText(e){this._searchText.set(e)}setKinds(e){this._kindToggleExplicitEmpty.set(!1),this._selectedKinds.set([...e])}toggleKind(e,i){let n=this._selectedKinds(),r=i,o=this._kindToggleExplicitEmpty()?new Set:n.length===0?new Set(r):new Set(n);o.has(e)?o.delete(e):o.add(e),o.size===r.length?(this._selectedKinds.set([]),this._kindToggleExplicitEmpty.set(!1)):o.size===0?(this._selectedKinds.set([]),this._kindToggleExplicitEmpty.set(!0)):(this._selectedKinds.set([...o]),this._kindToggleExplicitEmpty.set(!1))}isKindActive(e){if(this._kindToggleExplicitEmpty())return!1;let i=this._selectedKinds();return i.length===0?!0:i.includes(e)}setStabilities(e){this._selectedStabilities.set([...e])}setHasIssuesOnly(e){this._hasIssuesOnly.set(e)}setStaleOnly(e){this._staleOnly.set(e)}setFavoritesOnly(e){this._favoritesOnly.set(e)}setLinkKinds(e){this._selectedLinkKinds.set([...e])}toggleLinkKind(e){let i=this._selectedLinkKinds(),n=i.length===0?new Set(O):new Set(i);n.has(e)?n.delete(e):n.add(e),n.size===O.length?this._selectedLinkKinds.set([]):this._selectedLinkKinds.set([...n])}isLinkKindActive(e){let i=this._selectedLinkKinds();return i.length===0?!0:i.includes(e)}toggleSeverity(e){e==="error"?this._severityErrorActive.set(!this._severityErrorActive()):this._severityWarnActive.set(!this._severityWarnActive())}isSeverityActive(e){return e==="error"?this._severityErrorActive():this._severityWarnActive()}setSeverityFilters(e){let i=new Set(e);this._severityErrorActive.set(i.has("error")),this._severityWarnActive.set(i.has("warn"))}reset(){this._searchText.set(""),this._selectedKinds.set([]),this._kindToggleExplicitEmpty.set(!1),this._selectedStabilities.set([]),this._hasIssuesOnly.set(!1),this._staleOnly.set(!1),this._favoritesOnly.set(!1),this._selectedLinkKinds.set([]),this._severityErrorActive.set(!1),this._severityWarnActive.set(!1)}apply(e,i){let n=this.searchText().trim().toLowerCase(),r=this.selectedKinds(),a=this._kindToggleExplicitEmpty(),o=this.selectedStabilities(),c=this.hasIssuesOnly(),D=this.staleOnly(),w=this.favoritesOnly(),x=this._severityErrorActive(),E=this._severityWarnActive(),R=(x||E)&&i!==void 0;return e.filter(f=>{if(n){let u=T(f).join(" ");if(![f.path,f.frontmatter.name??"",f.frontmatter.description??"",u].join(" ").toLowerCase().includes(n))return!1}if(a||r.length>0&&!r.includes(f.kind))return!1;if(o.length>0){let u=v(f);if(!u||!o.includes(u))return!1}return!(c&&!W(f,i)||D&&!y(f.sidecar)||w&&f.isFavorite!==!0||R&&(x&&!i.errors.has(f.path)||E&&!i.warns.has(f.path)))})}static \u0275fac=function(i){return new(i||t)};static \u0275prov=h({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function W(t,s){return!!(v(t)==="deprecated"||b(t)!==null||s&&(s.errors.has(t.path)||s.warns.has(t.path)))}function _(t){let s=t.normalize("NFD");return s=s.replace(new RegExp("\\p{Mn}+","gu"),""),s=s.toLowerCase(),s=s.replace(/[-_\s]+/g," "),s=s.replace(/\s+/g," "),s.trim()}function fe(t){let s=new Map;return F(t,s),P(t,s),s}function F(t,s){for(let e of t){let i=I(e);if(i===null)continue;let n=_(i);s.has(n)||s.set(n,e.path)}}function P(t,s){for(let e of t){if(I(e)!==null)continue;let i=H(e.path);if(i.length===0)continue;let n=_(i);s.has(n)||s.set(n,e.path)}}function I(t){let s=t.frontmatter?.name;return typeof s!="string"||s.length===0?null:s}function H(t){let s=t.split("/").filter(i=>i.length>0);if(s.length===0)return t;let e=s[s.length-1];return e==="SKILL.md"&&s.length>=2?s[s.length-2]:e.replace(/\.md$/,"")}function de(t,s,e){let i=t.charAt(0);if(i!=="/"&&i!=="@")return t;let n=s!==null?s.replace(/^[/@]/,"").trim():_(t.slice(1));return e.get(n)??t}var $={invalidHex:t=>`deriveTints: invalid hex color "${t}" (expected #RRGGBB)`};function g(t,s,e){return[Math.round(t[0]+(s[0]-t[0])*e),Math.round(t[1]+(s[1]-t[1])*e),Math.round(t[2]+(s[2]-t[2])*e)]}function z(t){let s=/^#([0-9a-f]{6})$/i.exec(t);if(!s)throw new Error($.invalidHex(t));let e=parseInt(s[1],16);return[e>>16&255,e>>8&255,e&255]}function m([t,s,e]){let i=n=>Math.max(0,Math.min(255,n)).toString(16).padStart(2,"0");return`#${i(t)}${i(s)}${i(e)}`}var K=[255,255,255],N=[0,0,0];function k(t,s){let e=z(t);return s==="light"?{bg:m(g(e,K,.85)),fg:m(g(e,N,.5))}:{bg:m(g(e,N,.7)),fg:m(g(e,K,.6))}}var C=/^[a-zA-Z][a-zA-Z0-9_-]{0,63}$/,L=/^#[0-9a-f]{6}$/i,ke=(()=>{class t{doc=A(S);_entries=l([]);kinds=this._entries.asReadonly();index=p(()=>{let e=new Map;for(let i of this._entries())e.set(i.name,i);return e});ingest(e){if(!e)return;let i=[];for(let[r,a]of Object.entries(e)){if(!C.test(r))continue;let o=a.providers[a.primaryProviderId];if(!o)continue;let c={name:r,primaryProviderId:a.primaryProviderId,providers:a.providers,label:o.label,color:o.color};o.colorDark!==void 0&&(c.colorDark=o.colorDark),o.emoji!==void 0&&(c.emoji=o.emoji),o.icon!==void 0&&(c.icon=o.icon),i.push(c)}let n=this._entries();V(n,i)||(this._entries.set(i),this.applyCssVars())}lookup(e){return this.index().get(e)}labelOf(e){return this.lookup(e)?.label??e}colorOf(e,i="light"){let n=this.lookup(e);return n?i==="dark"?n.colorDark??n.color:n.color:"#9ca3af"}iconOf(e){return this.lookup(e)?.icon}emojiOf(e){return this.lookup(e)?.emoji}providersOf(e){return this.lookup(e)?.providers}applyCssVars(){if(!this.doc.head)return;let e=U(this.doc),i=[],n=[];for(let r of this._entries()){if(!L.test(r.color))continue;let a=r.colorDark??r.color;if(L.test(a))try{let o=k(r.color,"light"),c=k(a,"dark");i.push(`--sm-kind-${r.name}: ${r.color};`),i.push(`--sm-kind-${r.name}-bg: ${o.bg};`),i.push(`--sm-kind-${r.name}-fg: ${o.fg};`),n.push(`--sm-kind-${r.name}: ${a};`),n.push(`--sm-kind-${r.name}-bg: ${c.bg};`),n.push(`--sm-kind-${r.name}-fg: ${c.fg};`)}catch{continue}}e.textContent=`:root { ${i.join(" ")} } .app-dark { ${n.join(" ")} }`}static \u0275fac=function(i){return new(i||t)};static \u0275prov=h({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),M="sm-kind-vars";function U(t){let s=t.getElementById(M);return s||(s=t.createElement("style"),s.id=M,t.head.appendChild(s)),s}function V(t,s){if(t.length!==s.length)return!1;for(let e=0;e<t.length;e++){let i=t[e],n=s[e];if(i.name!==n.name||i.primaryProviderId!==n.primaryProviderId||JSON.stringify(i.providers)!==JSON.stringify(n.providers))return!1}return!0}export{y as a,Z as b,v as c,Y as d,q as e,b as f,T as g,Q as h,ee as i,te as j,ae as k,O as l,le as m,ke as n,fe as o,H as p,de as q};
|
|
@@ -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.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 tm,b as nm,c as rm,d as om,e as im,i as sm}from"./chunk-
|
|
1
|
+
import{a as tm,b as nm,c as rm,d as om,e as im,i as sm}from"./chunk-ZZJ7XWDX.js";import{b as em}from"./chunk-EPBUSS3I.js";import"./chunk-VNA3TMIO.js";import{$a as Zd,G as Ra,H as fl,L as pl,M as Kd,P as dl,Ta as Xd,_a as Qd,a as Vd,na as Jd,v as va}from"./chunk-HAWX5WNM.js";import{a as p,b as E,d as qt,f as Yd}from"./chunk-WCABR6TI.js";var b=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__;var C=globalThis;var Pt="10.55.0";function pt(){return pr(C),C}function pr(e){let t=e.__SENTRY__=e.__SENTRY__||{};return t.version=t.version||Pt,t[Pt]=t[Pt]||{}}function sn(e,t,n=C){let r=n.__SENTRY__=n.__SENTRY__||{},o=r[Pt]=r[Pt]||{};return o[e]||(o[e]=t())}var dr=["debug","info","warn","error","log","assert","trace"],Wy="Sentry Logger ",Wr={};function Fe(e){if(!("console"in C))return e();let t=C.console,n={},r=Object.keys(Wr);r.forEach(o=>{let i=Wr[o];n[o]=t[o],t[o]=i});try{return e()}finally{r.forEach(o=>{t[o]=n[o]})}}function jy(){_l().enabled=!0}function zy(){_l().enabled=!1}function am(){return _l().enabled}function qy(...e){ml("log",...e)}function Yy(...e){ml("warn",...e)}function Vy(...e){ml("error",...e)}function ml(e,...t){b&&am()&&Fe(()=>{C.console[e](`${Wy}[${e}]:`,...t)})}function _l(){return b?sn("loggerSettings",()=>({enabled:!1})):{enabled:!1}}var h={enable:jy,disable:zy,isEnabled:am,log:qy,warn:Yy,error:Vy};var cm=/\(error: (.*)\)/,um=/captureMessage|captureException/;function zi(...e){let t=e.sort((n,r)=>n[0]-r[0]).map(n=>n[1]);return(n,r=0,o=0)=>{let i=[],s=n.split(`
|
|
2
2
|
`);for(let a=r;a<s.length;a++){let c=s[a];c.length>1024&&(c=c.slice(0,1024));let u=cm.test(c)?c.replace(cm,"$1"):c;if(!u.includes("Error: ")){for(let f of t){let l=f(u);if(l){i.push(l);break}}if(i.length>=50+o)break}}return gl(i.slice(o))}}function Ca(e){return Array.isArray(e)?zi(...e):e}function gl(e){if(!e.length)return[];let t=Array.from(e);return/sentryWrapped/.test(Na(t).function||"")&&t.pop(),t.reverse(),um.test(Na(t).function||"")&&(t.pop(),um.test(Na(t).function||"")&&t.pop()),t.slice(0,50).map(n=>E(p({},n),{filename:n.filename||Na(t).filename,function:n.function||"?"}))}function Na(e){return e[e.length-1]||{}}var hl="<anonymous>";function dt(e){try{return!e||typeof e!="function"?hl:e.name||hl}catch{return hl}}function jr(e){let t=e.exception;if(t){let n=[];try{return t.values.forEach(r=>{r.stacktrace.frames&&n.push(...r.stacktrace.frames)}),n}catch{return}}}function lm(e){let t=e?.startsWith("file://")?e.slice(7):e;return t?.match(/\/[A-Z]:/)&&(t=t.slice(1)),t}var qi={},fm={};function rt(e,t){return qi[e]=qi[e]||[],qi[e].push(t),()=>{let n=qi[e];if(n){let r=n.indexOf(t);r!==-1&&n.splice(r,1)}}}function ot(e,t){if(!fm[e]){fm[e]=!0;try{t()}catch(n){b&&h.error(`Error while instrumenting ${e}`,n)}}}function $e(e,t){let n=e&&qi[e];if(n)for(let r of n)try{r(t)}catch(o){b&&h.error(`Error while triggering instrumentation handler.
|
|
3
3
|
Type: ${e}
|
|
4
4
|
Name: ${dt(r)}
|
|
@@ -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
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{$ as D,$a as d,Ec as M,Fc as Z,Gc as Y,I as b,Ic as F,Jc as T,L as c,La as j,M as k,O as g,Oa as z,P as f,Q as o,Qa as L,Sa as C,Ta as u,Ua as y,Va as V,Vb as W,Xa as G,_ as E,_a as H,aa as x,d as N,ka as p,na as m,ta as $,ua as I,wa as U}from"./chunk-HAWX5WNM.js";var K=null;function w(){return K}function ae(n){K??=n}var R=class{},A=(()=>{class n{historyGo(e){throw new Error("")}static \u0275fac=function(t){return new(t||n)};static \u0275prov=c({token:n,factory:()=>o(X),providedIn:"platform"})}return n})();var X=(()=>{class n extends A{_location;_history;_doc=o(D);constructor(){super(),this._location=window.location,this._history=window.history}getBaseHrefFromDOM(){return w().getBaseHref(this._doc)}onPopState(e){let t=w().getGlobalEventTarget(this._doc,"window");return t.addEventListener("popstate",e,!1),()=>t.removeEventListener("popstate",e)}onHashChange(e){let t=w().getGlobalEventTarget(this._doc,"window");return t.addEventListener("hashchange",e,!1),()=>t.removeEventListener("hashchange",e)}get href(){return this._location.href}get protocol(){return this._location.protocol}get hostname(){return this._location.hostname}get port(){return this._location.port}get pathname(){return this._location.pathname}get search(){return this._location.search}get hash(){return this._location.hash}set pathname(e){this._location.pathname=e}pushState(e,t,i){this._history.pushState(e,t,i)}replaceState(e,t,i){this._history.replaceState(e,t,i)}forward(){this._history.forward()}back(){this._history.back()}historyGo(e=0){this._history.go(e)}getState(){return this._history.state}static \u0275fac=function(t){return new(t||n)};static \u0275prov=c({token:n,factory:()=>new n,providedIn:"platform"})}return n})();function Q(n,r){return n?r?n.endsWith("/")?r.startsWith("/")?n+r.slice(1):n+r:r.startsWith("/")?n+r:`${n}/${r}`:n:r}function q(n){let r=n.search(/#|\?|$/);return n[r-1]==="/"?n.slice(0,r-1)+n.slice(r):n}function l(n){return n&&n[0]!=="?"?`?${n}`:n}var S=(()=>{class n{historyGo(e){throw new Error("")}static \u0275fac=function(t){return new(t||n)};static \u0275prov=c({token:n,factory:()=>o(ce),providedIn:"root"})}return n})(),ue=new g(""),ce=(()=>{class n extends S{_platformLocation;_baseHref;_removeListenerFns=[];constructor(e,t){super(),this._platformLocation=e,this._baseHref=t??this._platformLocation.getBaseHrefFromDOM()??o(D).location?.origin??""}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(e){this._removeListenerFns.push(this._platformLocation.onPopState(e),this._platformLocation.onHashChange(e))}getBaseHref(){return this._baseHref}prepareExternalUrl(e){return Q(this._baseHref,e)}path(e=!1){let t=this._platformLocation.pathname+l(this._platformLocation.search),i=this._platformLocation.hash;return i&&e?`${t}${i}`:t}pushState(e,t,i,s){let a=this.prepareExternalUrl(i+l(s));this._platformLocation.pushState(e,t,a)}replaceState(e,t,i,s){let a=this.prepareExternalUrl(i+l(s));this._platformLocation.replaceState(e,t,a)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(e=0){this._platformLocation.historyGo?.(e)}static \u0275fac=function(t){return new(t||n)(f(A),f(ue,8))};static \u0275prov=c({token:n,factory:n.\u0275fac,providedIn:"root"})}return n})();var ee=(()=>{class n{_subject=new N;_basePath;_locationStrategy;_urlChangeListeners=[];_urlChangeSubscription=null;constructor(e){this._locationStrategy=e;let t=this._locationStrategy.getBaseHref();this._basePath=fe(q(J(t))),this._locationStrategy.onPopState(i=>{this._subject.next({url:this.path(!0),pop:!0,state:i.state,type:i.type})})}ngOnDestroy(){this._urlChangeSubscription?.unsubscribe(),this._urlChangeListeners=[]}path(e=!1){return this.normalize(this._locationStrategy.path(e))}getState(){return this._locationStrategy.getState()}isCurrentPathEqualTo(e,t=""){return this.path()==this.normalize(e+l(t))}normalize(e){return n.stripTrailingSlash(le(this._basePath,J(e)))}prepareExternalUrl(e){return e&&e[0]!=="/"&&(e="/"+e),this._locationStrategy.prepareExternalUrl(e)}go(e,t="",i=null){this._locationStrategy.pushState(i,"",e,t),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+l(t)),i)}replaceState(e,t="",i=null){this._locationStrategy.replaceState(i,"",e,t),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+l(t)),i)}forward(){this._locationStrategy.forward()}back(){this._locationStrategy.back()}historyGo(e=0){this._locationStrategy.historyGo?.(e)}onUrlChange(e){return this._urlChangeListeners.push(e),this._urlChangeSubscription??=this.subscribe(t=>{this._notifyUrlChangeListeners(t.url,t.state)}),()=>{let t=this._urlChangeListeners.indexOf(e);this._urlChangeListeners.splice(t,1),this._urlChangeListeners.length===0&&(this._urlChangeSubscription?.unsubscribe(),this._urlChangeSubscription=null)}}_notifyUrlChangeListeners(e="",t){this._urlChangeListeners.forEach(i=>i(e,t))}subscribe(e,t,i){return this._subject.subscribe({next:e,error:t??void 0,complete:i??void 0})}static normalizeQueryParams=l;static joinWithSlash=Q;static stripTrailingSlash=q;static \u0275fac=function(t){return new(t||n)(f(S))};static \u0275prov=c({token:n,factory:()=>de(),providedIn:"root"})}return n})();function de(){return new ee(f(S))}function le(n,r){if(!n||!r.startsWith(n))return r;let e=r.substring(n.length);return e===""||["/",";","?","#"].includes(e[0])?e:r}function J(n){return n.replace(/\/index.html$/,"")}function fe(n){if(new RegExp("^(https?:)?//").test(n)){let[,e]=n.split(/\/\/[^\/]+/);return e}return n}var P=/\s+/,te=[],ge=(()=>{class n{_ngEl;_renderer;initialClasses=te;rawClass;stateMap=new Map;constructor(e,t){this._ngEl=e,this._renderer=t}set klass(e){this.initialClasses=e!=null?e.trim().split(P):te}set ngClass(e){this.rawClass=typeof e=="string"?e.trim().split(P):e}ngDoCheck(){for(let t of this.initialClasses)this._updateState(t,!0);let e=this.rawClass;if(Array.isArray(e)||e instanceof Set)for(let t of e)this._updateState(t,!0);else if(e!=null)for(let t of Object.keys(e))this._updateState(t,!!e[t]);this._applyStateDiff()}_updateState(e,t){let i=this.stateMap.get(e);i!==void 0?(i.enabled!==t&&(i.changed=!0,i.enabled=t),i.touched=!0):this.stateMap.set(e,{enabled:t,changed:!0,touched:!0})}_applyStateDiff(){for(let e of this.stateMap){let t=e[0],i=e[1];i.changed?(this._toggleClass(t,i.enabled),i.changed=!1):i.touched||(i.enabled&&this._toggleClass(t,!1),this.stateMap.delete(t)),i.touched=!1}}_toggleClass(e,t){e=e.trim(),e.length>0&&e.split(P).forEach(i=>{t?this._renderer.addClass(this._ngEl.nativeElement,i):this._renderer.removeClass(this._ngEl.nativeElement,i)})}static \u0275fac=function(t){return new(t||n)(u(m),u(C))};static \u0275dir=d({type:n,selectors:[["","ngClass",""]],inputs:{klass:[0,"class","klass"],ngClass:"ngClass"}})}return n})(),De=(()=>{class n{_viewContainerRef;ngComponentOutlet=null;ngComponentOutletInputs;ngComponentOutletInjector;ngComponentOutletEnvironmentInjector;ngComponentOutletContent;ngComponentOutletNgModule;_componentRef;_moduleRef;_inputsUsed=new Map;get componentInstance(){return this._componentRef?.instance??null}constructor(e){this._viewContainerRef=e}_needToReCreateNgModuleInstance(e){return e.ngComponentOutletNgModule!==void 0}_needToReCreateComponentInstance(e){return e.ngComponentOutlet!==void 0||e.ngComponentOutletContent!==void 0||e.ngComponentOutletInjector!==void 0||e.ngComponentOutletEnvironmentInjector!==void 0||this._needToReCreateNgModuleInstance(e)}ngOnChanges(e){if(this._needToReCreateComponentInstance(e)&&(this._viewContainerRef.clear(),this._inputsUsed.clear(),this._componentRef=void 0,this.ngComponentOutlet)){let t=this.ngComponentOutletInjector||this._viewContainerRef.parentInjector;this._needToReCreateNgModuleInstance(e)&&(this._moduleRef?.destroy(),this.ngComponentOutletNgModule?this._moduleRef=G(this.ngComponentOutletNgModule,pe(t)):this._moduleRef=void 0),this._componentRef=this._viewContainerRef.createComponent(this.ngComponentOutlet,{injector:t,ngModuleRef:this._moduleRef,projectableNodes:this.ngComponentOutletContent,environmentInjector:this.ngComponentOutletEnvironmentInjector})}}ngDoCheck(){if(this._componentRef){if(this.ngComponentOutletInputs)for(let e of Object.keys(this.ngComponentOutletInputs))this._inputsUsed.set(e,!0);this._applyInputStateDiff(this._componentRef)}}ngOnDestroy(){this._moduleRef?.destroy()}_applyInputStateDiff(e){for(let[t,i]of this._inputsUsed)i?(e.setInput(t,this.ngComponentOutletInputs[t]),this._inputsUsed.set(t,!1)):(e.setInput(t,void 0),this._inputsUsed.delete(t))}static \u0275fac=function(t){return new(t||n)(u(y))};static \u0275dir=d({type:n,selectors:[["","ngComponentOutlet",""]],inputs:{ngComponentOutlet:"ngComponentOutlet",ngComponentOutletInputs:"ngComponentOutletInputs",ngComponentOutletInjector:"ngComponentOutletInjector",ngComponentOutletEnvironmentInjector:"ngComponentOutletEnvironmentInjector",ngComponentOutletContent:"ngComponentOutletContent",ngComponentOutletNgModule:"ngComponentOutletNgModule"},exportAs:["ngComponentOutlet"],features:[p]})}return n})();function pe(n){return n.get(V).injector}var _=class{$implicit;ngForOf;index;count;constructor(r,e,t,i){this.$implicit=r,this.ngForOf=e,this.index=t,this.count=i}get first(){return this.index===0}get last(){return this.index===this.count-1}get even(){return this.index%2===0}get odd(){return!this.even}},re=(()=>{class n{_viewContainer;_template;_differs;set ngForOf(e){this._ngForOf=e,this._ngForOfDirty=!0}set ngForTrackBy(e){this._trackByFn=e}get ngForTrackBy(){return this._trackByFn}_ngForOf=null;_ngForOfDirty=!0;_differ=null;_trackByFn;constructor(e,t,i){this._viewContainer=e,this._template=t,this._differs=i}set ngForTemplate(e){e&&(this._template=e)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;let e=this._ngForOf;!this._differ&&e&&(this._differ=this._differs.find(e).create(this.ngForTrackBy))}if(this._differ){let e=this._differ.diff(this._ngForOf);e&&this._applyChanges(e)}}_applyChanges(e){let t=this._viewContainer;e.forEachOperation((i,s,a)=>{if(i.previousIndex==null)t.createEmbeddedView(this._template,new _(i.item,this._ngForOf,-1,-1),a===null?void 0:a);else if(a==null)t.remove(s===null?void 0:s);else if(s!==null){let h=t.get(s);t.move(h,a),ne(h,i)}});for(let i=0,s=t.length;i<s;i++){let h=t.get(i).context;h.index=i,h.count=s,h.ngForOf=this._ngForOf}e.forEachIdentityChange(i=>{let s=t.get(i.currentIndex);ne(s,i)})}static ngTemplateContextGuard(e,t){return!0}static \u0275fac=function(t){return new(t||n)(u(y),u(L),u(Z))};static \u0275dir=d({type:n,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"}})}return n})();function ne(n,r){n.context.$implicit=r.item}var me=(()=>{class n{_viewContainer;_context=new v;_thenTemplateRef=null;_elseTemplateRef=null;_thenViewRef=null;_elseViewRef=null;constructor(e,t){this._viewContainer=e,this._thenTemplateRef=t}set ngIf(e){this._context.$implicit=this._context.ngIf=e,this._updateView()}set ngIfThen(e){ie(e,!1),this._thenTemplateRef=e,this._thenViewRef=null,this._updateView()}set ngIfElse(e){ie(e,!1),this._elseTemplateRef=e,this._elseViewRef=null,this._updateView()}_updateView(){this._context.$implicit?this._thenViewRef||(this._viewContainer.clear(),this._elseViewRef=null,this._thenTemplateRef&&(this._thenViewRef=this._viewContainer.createEmbeddedView(this._thenTemplateRef,this._context))):this._elseViewRef||(this._viewContainer.clear(),this._thenViewRef=null,this._elseTemplateRef&&(this._elseViewRef=this._viewContainer.createEmbeddedView(this._elseTemplateRef,this._context)))}static ngIfUseIfTypeGuard;static ngTemplateGuard_ngIf;static ngTemplateContextGuard(e,t){return!0}static \u0275fac=function(t){return new(t||n)(u(y),u(L))};static \u0275dir=d({type:n,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"}})}return n})(),v=class{$implicit=null;ngIf=null};function ie(n,r){if(n&&!n.createEmbeddedView)throw new b(2020,!1)}var Ce=(()=>{class n{_ngEl;_differs;_renderer;_ngStyle=null;_differ=null;constructor(e,t,i){this._ngEl=e,this._differs=t,this._renderer=i}set ngStyle(e){this._ngStyle=e,!this._differ&&e&&(this._differ=this._differs.find(e).create())}ngDoCheck(){if(this._differ){let e=this._differ.diff(this._ngStyle);e&&this._applyChanges(e)}}_setStyle(e,t){let[i,s]=e.split("."),a=i.indexOf("-")===-1?void 0:j.DashCase;t!=null?this._renderer.setStyle(this._ngEl.nativeElement,i,s?`${t}${s}`:t,a):this._renderer.removeStyle(this._ngEl.nativeElement,i,a)}_applyChanges(e){e.forEachRemovedItem(t=>this._setStyle(t.key,null)),e.forEachAddedItem(t=>this._setStyle(t.key,t.currentValue)),e.forEachChangedItem(t=>this._setStyle(t.key,t.currentValue))}static \u0275fac=function(t){return new(t||n)(u(m),u(Y),u(C))};static \u0275dir=d({type:n,selectors:[["","ngStyle",""]],inputs:{ngStyle:"ngStyle"}})}return n})(),ye=(()=>{class n{_viewContainerRef;_viewRef=null;ngTemplateOutletContext=null;ngTemplateOutlet=null;ngTemplateOutletInjector=null;injector=o(E);constructor(e){this._viewContainerRef=e}ngOnChanges(e){if(this._shouldRecreateView(e)){let t=this._viewContainerRef;if(this._viewRef&&t.remove(t.indexOf(this._viewRef)),!this.ngTemplateOutlet){this._viewRef=null;return}let i=this._createContextForwardProxy();this._viewRef=t.createEmbeddedView(this.ngTemplateOutlet,i,{injector:this._getInjector()})}}_getInjector(){return this.ngTemplateOutletInjector==="outlet"?this.injector:this.ngTemplateOutletInjector??void 0}_shouldRecreateView(e){return!!e.ngTemplateOutlet||!!e.ngTemplateOutletInjector}_createContextForwardProxy(){return new Proxy({},{set:(e,t,i)=>this.ngTemplateOutletContext?Reflect.set(this.ngTemplateOutletContext,t,i):!1,get:(e,t,i)=>{if(this.ngTemplateOutletContext)return Reflect.get(this.ngTemplateOutletContext,t,i)}})}static \u0275fac=function(t){return new(t||n)(u(y))};static \u0275dir=d({type:n,selectors:[["","ngTemplateOutlet",""]],inputs:{ngTemplateOutletContext:"ngTemplateOutletContext",ngTemplateOutlet:"ngTemplateOutlet",ngTemplateOutletInjector:"ngTemplateOutletInjector"},features:[p]})}return n})();var Fe=(()=>{class n{static \u0275fac=function(t){return new(t||n)};static \u0275mod=H({type:n});static \u0275inj=k({})}return n})();function Ee(n,r){r=encodeURIComponent(r);for(let e of n.split(";")){let t=e.indexOf("="),[i,s]=t==-1?[e,""]:[e.slice(0,t),e.slice(t+1)];if(i.trim()===r)return decodeURIComponent(s)}return null}var B=class{};var we="browser",Ae="server";function Mn(n){return n===we}function Tn(n){return n===Ae}var oe=n=>n.src,Se=new g("",{factory:()=>oe});var se=/^((\s*\d+w\s*(,|$)){1,})$/;var _e=[1,2],ve=640;var be=1920,Ie=1080;var Rn=(()=>{class n{imageLoader=o(Se);config=Le(o(I));renderer=o(C);imgElement=o(m).nativeElement;injector=o(E);destroyRef=o(x);lcpObserver;_renderedSrc=null;ngSrc;ngSrcset;sizes;width;height;decoding;loading;priority=!1;loaderParams;disableOptimizedSrcset=!1;fill=!1;placeholder;placeholderConfig;src;srcset;constructor(){this.destroyRef.onDestroy(()=>{this.renderer.removeAttribute(this.imgElement,"loading")})}ngOnInit(){z("NgOptimizedImage"),this.placeholder&&this.removePlaceholderOnLoad(this.imgElement),this.setHostAttributes()}setHostAttributes(){this.fill?this.sizes||="100vw":(this.setHostAttribute("width",this.width.toString()),this.setHostAttribute("height",this.height.toString())),this.setHostAttribute("loading",this.getLoadingBehavior()),this.setHostAttribute("fetchpriority",this.getFetchPriority()),this.setHostAttribute("decoding",this.getDecoding()),this.setHostAttribute("ng-img","true");let e=this.updateSrcAndSrcset();this.sizes?this.getLoadingBehavior()==="lazy"?this.setHostAttribute("sizes","auto, "+this.sizes):this.setHostAttribute("sizes",this.sizes):this.ngSrcset&&se.test(this.ngSrcset)&&this.getLoadingBehavior()==="lazy"&&this.setHostAttribute("sizes","auto, 100vw")}ngOnChanges(e){if(e.ngSrc&&!e.ngSrc.isFirstChange()){let t=this._renderedSrc;this.updateSrcAndSrcset(!0)}}getAspectRatio(){return this.width&&this.height&&this.height!==0?this.width/this.height:null}callImageLoader(e){let t=e;this.loaderParams&&(t.loaderParams=this.loaderParams);let i=this.getAspectRatio();return i!==null&&t.width&&(t.height=Math.round(t.width/i)),this.imageLoader(t)}getLoadingBehavior(){return!this.priority&&this.loading!==void 0?this.loading:this.priority?"eager":"lazy"}getFetchPriority(){return this.priority?"high":"auto"}getDecoding(){return this.priority?"sync":this.decoding??"auto"}getRewrittenSrc(){if(!this._renderedSrc){let e={src:this.ngSrc};this._renderedSrc=this.callImageLoader(e)}return this._renderedSrc}getRewrittenSrcset(){let e=se.test(this.ngSrcset);return this.ngSrcset.split(",").filter(i=>i!=="").map(i=>{i=i.trim();let s=e?parseFloat(i):parseFloat(i)*this.width;return`${this.callImageLoader({src:this.ngSrc,width:s})} ${i}`}).join(", ")}getAutomaticSrcset(){return this.sizes?this.getResponsiveSrcset():this.getFixedSrcset()}getResponsiveSrcset(){let{breakpoints:e}=this.config,t=e;return this.sizes?.trim()==="100vw"&&(t=e.filter(s=>s>=ve)),t.map(s=>`${this.callImageLoader({src:this.ngSrc,width:s})} ${s}w`).join(", ")}updateSrcAndSrcset(e=!1){e&&(this._renderedSrc=null);let t=this.getRewrittenSrc();this.setHostAttribute("src",t);let i;return this.ngSrcset?i=this.getRewrittenSrcset():this.shouldGenerateAutomaticSrcset()&&(i=this.getAutomaticSrcset()),i&&this.setHostAttribute("srcset",i),i}getFixedSrcset(){return _e.map(t=>`${this.callImageLoader({src:this.ngSrc,width:this.width*t})} ${t}x`).join(", ")}shouldGenerateAutomaticSrcset(){let e=!1;return this.sizes||(e=this.width>be||this.height>Ie),!this.disableOptimizedSrcset&&!this.srcset&&this.imageLoader!==oe&&!e}generatePlaceholder(e){let{placeholderResolution:t}=this.config;return e===!0?`url(${this.callImageLoader({src:this.ngSrc,width:t,isPlaceholder:!0})})`:typeof e=="string"?`url(${e})`:null}shouldBlurPlaceholder(e){return!e||!e.hasOwnProperty("blur")?!0:!!e.blur}removePlaceholderOnLoad(e){let t=()=>{let a=this.injector.get(M);i(),s(),this.placeholder=!1,a.markForCheck()},i=this.renderer.listen(e,"load",t),s=this.renderer.listen(e,"error",t);this.destroyRef.onDestroy(()=>{i(),s()}),Me(e,t)}setHostAttribute(e,t){this.renderer.setAttribute(this.imgElement,e,t)}static \u0275fac=function(t){return new(t||n)};static \u0275dir=d({type:n,selectors:[["img","ngSrc",""]],hostVars:18,hostBindings:function(t,i){t&2&&W("position",i.fill?"absolute":null)("width",i.fill?"100%":null)("height",i.fill?"100%":null)("inset",i.fill?"0":null)("background-size",i.placeholder?"cover":null)("background-position",i.placeholder?"50% 50%":null)("background-repeat",i.placeholder?"no-repeat":null)("background-image",i.placeholder?i.generatePlaceholder(i.placeholder):null)("filter",i.placeholder&&i.shouldBlurPlaceholder(i.placeholderConfig)?"blur(15px)":null)},inputs:{ngSrc:[2,"ngSrc","ngSrc",Te],ngSrcset:"ngSrcset",sizes:"sizes",width:[2,"width","width",T],height:[2,"height","height",T],decoding:"decoding",loading:"loading",priority:[2,"priority","priority",F],loaderParams:"loaderParams",disableOptimizedSrcset:[2,"disableOptimizedSrcset","disableOptimizedSrcset",F],fill:[2,"fill","fill",F],placeholder:[2,"placeholder","placeholder",Re],placeholderConfig:"placeholderConfig",src:"src",srcset:"srcset"},features:[p]})}return n})();function Le(n){let r={};return n.breakpoints&&(r.breakpoints=n.breakpoints.sort((e,t)=>e-t)),Object.assign({},$,n,r)}function Me(n,r){n.complete&&n.naturalWidth&&r()}function Te(n){return typeof n=="string"?n:U(n)}function Re(n){return typeof n=="string"&&n!=="true"&&n!=="false"&&n!==""?n:F(n)}export{w as a,ae as b,R as c,A as d,S as e,ee as f,ge as g,De as h,re as i,me as j,Ce as k,ye as l,Fe as m,Ee as n,B as o,we as p,Mn as q,Tn as r,Rn as s};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{$ as E,L as g,Q as f,aa as y,ha as c,ja as x,
|
|
1
|
+
import{$ as E,L as g,Q as f,aa as y,ha as c,ja as x,uc as _}from"./chunk-HAWX5WNM.js";var L="https://bb9dce0fd2cb4ab27ac0475aa394aeb4@o4511475590037504.ingest.de.sentry.io/4511475725959248",u="phc_vMX3PcNeDsacWNg2hYEbKVXDijSWcjKFzabCkzU7RNEr",b="https://eu.i.posthog.com";var D="<HOME>",O=["server_name","user"],A=[/[A-Za-z]:[\\/]Users[\\/][^\\/\s:*?"<>|]+/g,/\/(?:home|Users)\/[^/\s:]+/g,/\/root(?=\/|\b)/g];function v(t){let o=t;for(let e of A)o=o.replace(e,D);return o}function T(t){let o=m(t);if(o!==null&&typeof o=="object"&&!Array.isArray(o)){let e=o;for(let r of O)r in e&&delete e[r]}return o}function m(t){if(typeof t=="string")return v(t);if(Array.isArray(t))return t.map(o=>m(o));if(t!==null&&typeof t=="object"){let o={};for(let[e,r]of Object.entries(t))o[e]=m(r);return o}return t}var k=!1,i=null;async function K(t){if(k||u===""||!t.consentEnabled||t.distinctId===null)return;let{default:o}=await import("./chunk-P3SNMV4X.js");o.init(u,{api_host:b,autocapture:!1,capture_pageview:!1,capture_pageleave:!1,disable_session_recording:!0,person_profiles:"identified_only",bootstrap:{distinctID:t.distinctId},before_send:e=>e===null?null:T(e)}),i=o,k=!0}function F(t,o={}){i!==null&&i.capture(t,o)}function V(t){i!==null&&i.register(t)}var h=[{id:"matrix",htmlClass:"app-matrix",forcesDark:!0,favicon:"favicon-matrix.svg",fontHref:"https://fonts.googleapis.com/css2?family=JetBrains+Mono&display=swap",fontLinkId:"sm-matrix-font",label:"Matrix",description:"Cyber-green retint on the dark palette."}];function l(t){return t?h.find(o=>o.id===t)??null:null}var S="skill-map.ui.theme",p="skill-map.ui.extra-theme",M="app-dark",P="dark",I="(prefers-color-scheme: dark)",R="favicon.svg",U='link[rel="icon"][type="image/svg+xml"]',W=(()=>{class t{doc=f(E);destroyRef=f(y);mode=c(this.readInitialMode());extraTheme=c(this.readInitialExtra());systemPrefersDark=c(this.readSystemPref());resolved=_(()=>{let e=this.mode();return e==="auto"?this.systemPrefersDark()?"dark":"light":e});constructor(){this.subscribeToSystemPref(),x(()=>{let e=this.extraTheme(),r=l(e),a=this.resolved()==="dark"||r?.forcesDark===!0,d=this.doc.documentElement;d.classList.toggle(M,a),d.classList.toggle(P,a);for(let n of h)d.classList.toggle(n.htmlClass,r?.id===n.id);this.applyFavicon(r?.favicon??R),r&&this.ensureExtraThemeFont(r);try{let n=this.doc.defaultView?.localStorage;n?.setItem(S,this.mode()),r===null?n?.removeItem(p):n?.setItem(p,r.id)}catch{}})}toggle(){this.extraTheme()!==null&&this.extraTheme.set(null),this.mode.update(e=>e==="auto"?"light":e==="light"?"dark":"auto")}set(e){this.mode.set(e)}setExtraTheme(e){this.extraTheme.set(l(e)?.id??null)}readInitialMode(){try{let e=this.doc.defaultView?.localStorage.getItem(S);if(e==="auto"||e==="light"||e==="dark")return e}catch{}return"auto"}readInitialExtra(){try{let e=this.doc.defaultView?.localStorage.getItem(p);return l(e)?.id??null}catch{return null}}readSystemPref(){try{return this.doc.defaultView?.matchMedia(I).matches??!1}catch{return!1}}ensureExtraThemeFont(e){if(!e.fontHref||!e.fontLinkId||this.doc.getElementById(e.fontLinkId))return;let r=this.doc.head;if(!r)return;let s=this.doc.createElement("link");s.id=e.fontLinkId,s.rel="stylesheet",s.href=e.fontHref,r.appendChild(s)}applyFavicon(e){let r=this.doc.querySelector(U);r&&r.getAttribute("href")!==e&&r.setAttribute("href",e)}subscribeToSystemPref(){let e=this.doc.defaultView;if(!e||typeof e.matchMedia!="function")return;let r=e.matchMedia(I),s=a=>{this.systemPrefersDark.set(a.matches)};r.addEventListener("change",s),this.destroyRef.onDestroy(()=>r.removeEventListener("change",s))}static \u0275fac=function(r){return new(r||t)};static \u0275prov=g({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();export{L as a,T as b,K as c,F as d,V as e,h as f,W as g};
|