@skill-map/cli 0.61.5 → 0.62.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/dist/cli/tutorial/sm-tutorial/references/_core.md +8 -1
  2. package/dist/cli/tutorial/sm-tutorial/references/_manifest.json +1 -11
  3. package/dist/cli/tutorial/sm-tutorial/references/_manifest.yml +1 -3
  4. package/dist/cli/tutorial/sm-tutorial/references/part-authoring.md +43 -76
  5. package/dist/cli/tutorial/sm-tutorial/references/part-plugins.md +14 -9
  6. package/dist/cli/tutorial/sm-tutorial/references/part-settings.md +10 -58
  7. package/dist/cli.js +1346 -479
  8. package/dist/index.js +368 -96
  9. package/dist/kernel/index.d.ts +232 -25
  10. package/dist/kernel/index.js +368 -96
  11. package/dist/migrations/001_initial.sql +18 -8
  12. package/dist/ui/{chunk-4N3NRZEH.js → chunk-276RLZR4.js} +1 -1
  13. package/dist/ui/{chunk-MGWGV4VD.js → chunk-34ZZDYNQ.js} +1 -1
  14. package/dist/ui/chunk-56CBK7LB.js +1 -0
  15. package/dist/ui/{chunk-OVVTCPBJ.js → chunk-7ANZW2OI.js} +1 -1
  16. package/dist/ui/chunk-BJ6X6WBO.js +4 -0
  17. package/dist/ui/{chunk-5SSKJ7AM.js → chunk-BOVJVOLH.js} +1 -1
  18. package/dist/ui/{chunk-GKQA75EF.js → chunk-CJURGJTN.js} +1 -1
  19. package/dist/ui/chunk-CM4YB7L4.js +2 -0
  20. package/dist/ui/{chunk-Q4PXVDJA.js → chunk-CZSLV6YD.js} +1 -1
  21. package/dist/ui/{chunk-7X3DZNG4.js → chunk-DLYJHLJX.js} +2 -2
  22. package/dist/ui/chunk-ECKRC6XD.js +1843 -0
  23. package/dist/ui/{chunk-JTCIY3SL.js → chunk-FC22ZJQZ.js} +1 -1
  24. package/dist/ui/{chunk-FRUHVCND.js → chunk-FYATUDAH.js} +1 -1
  25. package/dist/ui/chunk-HLHEDNSJ.js +3 -0
  26. package/dist/ui/chunk-IYC5ZW4L.js +2 -0
  27. package/dist/ui/{chunk-MBBJJEUX.js → chunk-JZ2YF7EL.js} +1 -1
  28. package/dist/ui/{chunk-HQ6M2HXK.js → chunk-LPDD2DHE.js} +1 -1
  29. package/dist/ui/{chunk-I52OQIZQ.js → chunk-NC3HOVDG.js} +1 -1
  30. package/dist/ui/{chunk-N6MUHKWR.js → chunk-UTRZTB6V.js} +1 -1
  31. package/dist/ui/chunk-VHEFRMK3.js +1 -0
  32. package/dist/ui/chunk-Y2Z26SRI.js +1 -0
  33. package/dist/ui/index.html +1 -1
  34. package/dist/ui/main-CBZBFVUW.js +4 -0
  35. package/migrations/001_initial.sql +18 -8
  36. package/package.json +2 -2
  37. package/dist/ui/chunk-6NYH7LND.js +0 -3
  38. package/dist/ui/chunk-7VUEZZFJ.js +0 -1
  39. package/dist/ui/chunk-AKKFFP7Y.js +0 -1
  40. package/dist/ui/chunk-L34EUS75.js +0 -2
  41. package/dist/ui/chunk-UTGLW5ON.js +0 -1843
  42. package/dist/ui/chunk-ZYPXVXYF.js +0 -4
  43. package/dist/ui/main-OTDMPZHD.js +0 -4
@@ -1,4 +1,4 @@
1
- import{a as Kt,l as It,p as ot,q as Yt}from"./chunk-MGWGV4VD.js";import{Bc as wt,Fc as x,Gb as Ee,Gc as st,Ha as ye,Hb as Tt,J as Wt,K as m,Kb as X,L as N,Lb as J,N as w,Na as ve,P as p,Pa as Q,Q as me,Qa as C,Ra as _e,Vb as Se,Wa as W,Wb as De,X as ge,Xa as L,Xb as z,Ya as v,Z as Gt,Za as At,_ as j,_a as E,ba as Et,ca as St,cb as be,d as U,db as Ce,ga as y,h as pe,hc as V,ia as I,ja as Dt,ka as g,kb as ht,la as $,n as he,pa as nt,s as fe,sc as G,tc as D,vc as S,xb as jt,yb as zt,zb as qt}from"./chunk-ZYPXVXYF.js";import{$ as Be,B as Fe,C as B,Ca as Jt,Da as Ft,E as Xt,Fa as lt,Ja as _,L as Re,M as xe,O as Pe,S as ke,T as gt,U as He,V as Vt,Y as q,Z as Nt,_ as rt,a as ft,aa as Ue,b as Ae,c as Te,d as mt,da as Lt,e as we,ea as P,f as Ie,h as Oe,ha as at,i as Me,j as Ve,m as k,p as Zt,q as Ne,r as Ot,s as Le,u as Mt,y as Qt}from"./chunk-4SG4352Z.js";import{a as c,b as R,d as ue}from"./chunk-WCABR6TI.js";function K(...i){if(i){let n=[];for(let t=0;t<i.length;t++){let e=i[t];if(!e)continue;let s=typeof e;if(s==="string"||s==="number")n.push(e);else if(s==="object"){let o=Array.isArray(e)?[K(...e)]:Object.entries(e).map(([r,a])=>a?r:void 0);n=o.length?n.concat(o.filter(r=>!!r)):n}}return n.join(" ").trim()}}var Li=Object.defineProperty,$e=Object.getOwnPropertySymbols,Fi=Object.prototype.hasOwnProperty,Ri=Object.prototype.propertyIsEnumerable,We=(i,n,t)=>n in i?Li(i,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[n]=t,Ge=(i,n)=>{for(var t in n||(n={}))Fi.call(n,t)&&We(i,t,n[t]);if($e)for(var t of $e(n))Ri.call(n,t)&&We(i,t,n[t]);return i};function je(...i){if(i){let n=[];for(let t=0;t<i.length;t++){let e=i[t];if(!e)continue;let s=typeof e;if(s==="string"||s==="number")n.push(e);else if(s==="object"){let o=Array.isArray(e)?[je(...e)]:Object.entries(e).map(([r,a])=>a?r:void 0);n=o.length?n.concat(o.filter(r=>!!r)):n}}return n.join(" ").trim()}}function xi(i){return typeof i=="function"&&"call"in i&&"apply"in i}function Pi({skipUndefined:i=!1},...n){return n?.reduce((t,e={})=>{for(let s in e){let o=e[s];if(!(i&&o===void 0))if(s==="style")t.style=Ge(Ge({},t.style),e.style);else if(s==="class"||s==="className")t[s]=je(t[s],e[s]);else if(xi(o)){let r=t[s];t[s]=r?(...a)=>{r(...a),o(...a)}:o}else t[s]=o}return t},{})}function te(...i){return Pi({skipUndefined:!1},...i)}var Rt={};function ct(i="pui_id_"){return Object.hasOwn(Rt,i)||(Rt[i]=0),Rt[i]++,`${i}${Rt[i]}`}var ze=["*"],ki=(function(i){return i[i.ACCEPT=0]="ACCEPT",i[i.REJECT=1]="REJECT",i[i.CANCEL=2]="CANCEL",i})(ki||{}),xn=(()=>{class i{requireConfirmationSource=new U;acceptConfirmationSource=new U;requireConfirmation$=this.requireConfirmationSource.asObservable();accept=this.acceptConfirmationSource.asObservable();confirm(t){return this.requireConfirmationSource.next(t),this}close(){return this.requireConfirmationSource.next(null),this}onAccept(){this.acceptConfirmationSource.next(null)}static \u0275fac=function(e){return new(e||i)};static \u0275prov=m({token:i,factory:i.\u0275fac})}return i})();var A=(()=>{class i{static STARTS_WITH="startsWith";static CONTAINS="contains";static NOT_CONTAINS="notContains";static ENDS_WITH="endsWith";static EQUALS="equals";static NOT_EQUALS="notEquals";static IN="in";static LESS_THAN="lt";static LESS_THAN_OR_EQUAL_TO="lte";static GREATER_THAN="gt";static GREATER_THAN_OR_EQUAL_TO="gte";static BETWEEN="between";static IS="is";static IS_NOT="isNot";static BEFORE="before";static AFTER="after";static DATE_IS="dateIs";static DATE_IS_NOT="dateIsNot";static DATE_BEFORE="dateBefore";static DATE_AFTER="dateAfter"}return i})(),Pn=(()=>{class i{static AND="and";static OR="or"}return i})(),kn=(()=>{class i{filter(t,e,s,o,r){let a=[];if(t)for(let l of t)for(let d of e){let u=He(l,d);if(this.filters[o](u,s,r)){a.push(l);break}}return a}filters={startsWith:(t,e,s)=>{if(e==null||e.trim()==="")return!0;if(t==null)return!1;let o=P(e.toString()).toLocaleLowerCase(s);return P(t.toString()).toLocaleLowerCase(s).slice(0,o.length)===o},contains:(t,e,s)=>{if(e==null||typeof e=="string"&&e.trim()==="")return!0;if(t==null)return!1;let o=P(e.toString()).toLocaleLowerCase(s);return P(t.toString()).toLocaleLowerCase(s).indexOf(o)!==-1},notContains:(t,e,s)=>{if(e==null||typeof e=="string"&&e.trim()==="")return!0;if(t==null)return!1;let o=P(e.toString()).toLocaleLowerCase(s);return P(t.toString()).toLocaleLowerCase(s).indexOf(o)===-1},endsWith:(t,e,s)=>{if(e==null||e.trim()==="")return!0;if(t==null)return!1;let o=P(e.toString()).toLocaleLowerCase(s),r=P(t.toString()).toLocaleLowerCase(s);return r.indexOf(o,r.length-o.length)!==-1},equals:(t,e,s)=>e==null||typeof e=="string"&&e.trim()===""?!0:t==null?!1:t.getTime&&e.getTime?t.getTime()===e.getTime():t==e?!0:P(t.toString()).toLocaleLowerCase(s)==P(e.toString()).toLocaleLowerCase(s),notEquals:(t,e,s)=>e==null||typeof e=="string"&&e.trim()===""?!1:t==null?!0:t.getTime&&e.getTime?t.getTime()!==e.getTime():t==e?!1:P(t.toString()).toLocaleLowerCase(s)!=P(e.toString()).toLocaleLowerCase(s),in:(t,e)=>{if(e==null||e.length===0)return!0;for(let s=0;s<e.length;s++)if(Vt(t,e[s]))return!0;return!1},between:(t,e)=>e==null||e[0]==null||e[1]==null?!0:t==null?!1:t.getTime?e[0].getTime()<=t.getTime()&&t.getTime()<=e[1].getTime():e[0]<=t&&t<=e[1],lt:(t,e,s)=>e==null?!0:t==null?!1:t.getTime&&e.getTime?t.getTime()<e.getTime():t<e,lte:(t,e,s)=>e==null?!0:t==null?!1:t.getTime&&e.getTime?t.getTime()<=e.getTime():t<=e,gt:(t,e,s)=>e==null?!0:t==null?!1:t.getTime&&e.getTime?t.getTime()>e.getTime():t>e,gte:(t,e,s)=>e==null?!0:t==null?!1:t.getTime&&e.getTime?t.getTime()>=e.getTime():t>=e,is:(t,e,s)=>this.filters.equals(t,e,s),isNot:(t,e,s)=>this.filters.notEquals(t,e,s),before:(t,e,s)=>this.filters.lt(t,e,s),after:(t,e,s)=>this.filters.gt(t,e,s),dateIs:(t,e)=>e==null?!0:t==null?!1:t.toDateString()===e.toDateString(),dateIsNot:(t,e)=>e==null?!0:t==null?!1:t.toDateString()!==e.toDateString(),dateBefore:(t,e)=>e==null?!0:t==null?!1:t.getTime()<e.getTime(),dateAfter:(t,e)=>e==null?!0:t==null?!1:(t.setHours(0,0,0,0),t.getTime()>e.getTime())};register(t,e){this.filters[t]=e}static \u0275fac=function(e){return new(e||i)};static \u0275prov=m({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var Hn=(()=>{class i{clickSource=new U;parentDragSource=new U;clickObservable=this.clickSource.asObservable();parentDragObservable=this.parentDragSource.asObservable();add(t){t&&this.clickSource.next(t)}emitParentDrag(t){this.parentDragSource.next(t)}static \u0275fac=function(e){return new(e||i)};static \u0275prov=m({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var Bn=(()=>{class i{static \u0275fac=function(e){return new(e||i)};static \u0275cmp=W({type:i,selectors:[["p-header"]],standalone:!1,ngContentSelectors:ze,decls:1,vars:0,template:function(e,s){e&1&&(X(),J(0))},encapsulation:2})}return i})(),Un=(()=>{class i{static \u0275fac=function(e){return new(e||i)};static \u0275cmp=W({type:i,selectors:[["p-footer"]],standalone:!1,ngContentSelectors:ze,decls:1,vars:0,template:function(e,s){e&1&&(X(),J(0))},encapsulation:2})}return i})(),$n=(()=>{class i{template;type;name;constructor(t){this.template=t}getType(){return this.name}static \u0275fac=function(e){return new(e||i)(C(ve))};static \u0275dir=v({type:i,selectors:[["","pTemplate",""]],inputs:{type:"type",name:[0,"pTemplate","name"]}})}return i})(),Wn=(()=>{class i{static \u0275fac=function(e){return new(e||i)};static \u0275mod=L({type:i});static \u0275inj=N({imports:[It]})}return i})(),Gn=(()=>{class i{static STARTS_WITH="startsWith";static CONTAINS="contains";static NOT_CONTAINS="notContains";static ENDS_WITH="endsWith";static EQUALS="equals";static NOT_EQUALS="notEquals";static NO_FILTER="noFilter";static LT="lt";static LTE="lte";static GT="gt";static GTE="gte";static IS="is";static IS_NOT="isNot";static BEFORE="before";static AFTER="after";static CLEAR="clear";static APPLY="apply";static MATCH_ALL="matchAll";static MATCH_ANY="matchAny";static ADD_RULE="addRule";static REMOVE_RULE="removeRule";static ACCEPT="accept";static REJECT="reject";static CHOOSE="choose";static UPLOAD="upload";static CANCEL="cancel";static PENDING="pending";static FILE_SIZE_TYPES="fileSizeTypes";static DAY_NAMES="dayNames";static DAY_NAMES_SHORT="dayNamesShort";static DAY_NAMES_MIN="dayNamesMin";static MONTH_NAMES="monthNames";static MONTH_NAMES_SHORT="monthNamesShort";static FIRST_DAY_OF_WEEK="firstDayOfWeek";static TODAY="today";static WEEK_HEADER="weekHeader";static WEAK="weak";static MEDIUM="medium";static STRONG="strong";static PASSWORD_PROMPT="passwordPrompt";static EMPTY_MESSAGE="emptyMessage";static EMPTY_FILTER_MESSAGE="emptyFilterMessage";static SHOW_FILTER_MENU="showFilterMenu";static HIDE_FILTER_MENU="hideFilterMenu";static SELECTION_MESSAGE="selectionMessage";static ARIA="aria";static SELECT_COLOR="selectColor";static BROWSE_FILES="browseFiles"}return i})();var ti=(()=>{class i{_renderer;_elementRef;onChange=t=>{};onTouched=()=>{};constructor(t,e){this._renderer=t,this._elementRef=e}setProperty(t,e){this._renderer.setProperty(this._elementRef.nativeElement,t,e)}registerOnTouched(t){this.onTouched=t}registerOnChange(t){this.onChange=t}setDisabledState(t){this.setProperty("disabled",t)}static \u0275fac=function(e){return new(e||i)(C(Q),C($))};static \u0275dir=v({type:i})}return i})(),Hi=(()=>{class i extends ti{static \u0275fac=(()=>{let t;return function(s){return(t||(t=g(i)))(s||i)}})();static \u0275dir=v({type:i,features:[E]})}return i})(),ei=new w("");var Bi={provide:ei,useExisting:Wt(()=>ii),multi:!0};function Ui(){let i=Kt()?Kt().getUserAgent():"";return/android (\d+)/.test(i.toLowerCase())}var $i=new w(""),ii=(()=>{class i extends ti{_compositionMode;_composing=!1;constructor(t,e,s){super(t,e),this._compositionMode=s,this._compositionMode==null&&(this._compositionMode=!Ui())}writeValue(t){let e=t??"";this.setProperty("value",e)}_handleInput(t){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(t)}_compositionStart(){this._composing=!0}_compositionEnd(t){this._composing=!1,this._compositionMode&&this.onChange(t)}static \u0275fac=function(e){return new(e||i)(C(Q),C($),C($i,8))};static \u0275dir=v({type:i,selectors:[["input","formControlName","",3,"type","checkbox"],["textarea","formControlName",""],["input","formControl","",3,"type","checkbox"],["textarea","formControl",""],["input","ngModel","",3,"type","checkbox"],["textarea","ngModel",""],["","ngDefaultControl",""]],hostBindings:function(e,s){e&1&&Tt("input",function(r){return s._handleInput(r.target.value)})("blur",function(){return s.onTouched()})("compositionstart",function(){return s._compositionStart()})("compositionend",function(r){return s._compositionEnd(r.target.value)})},standalone:!1,features:[V([Bi]),E]})}return i})();var Wi=new w(""),Gi=new w("");function ni(i){return i!=null}function si(i){return be(i)?pe(i):i}function oi(i){let n={};return i.forEach(t=>{n=t!=null?c(c({},n),t):n}),Object.keys(n).length===0?null:n}function ri(i,n){return n.map(t=>t(i))}function ji(i){return!i.validate}function ai(i){return i.map(n=>ji(n)?n:t=>n.validate(t))}function zi(i){if(!i)return null;let n=i.filter(ni);return n.length==0?null:function(t){return oi(ri(t,n))}}function li(i){return i!=null?zi(ai(i)):null}function qi(i){if(!i)return null;let n=i.filter(ni);return n.length==0?null:function(t){let e=ri(t,n).map(si);return fe(e).pipe(he(oi))}}function ci(i){return i!=null?qi(ai(i)):null}function qe(i,n){return i===null?[n]:Array.isArray(i)?[...i,n]:[i,n]}function Ki(i){return i._rawValidators}function Yi(i){return i._rawAsyncValidators}function ee(i){return i?Array.isArray(i)?i:[i]:[]}function Pt(i,n){return Array.isArray(i)?i.includes(n):i===n}function Ke(i,n){let t=ee(n);return ee(i).forEach(s=>{Pt(t,s)||t.push(s)}),t}function Ye(i,n){return ee(n).filter(t=>!Pt(i,t))}var kt=class{get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}_composedValidatorFn;_composedAsyncValidatorFn;_rawValidators=[];_rawAsyncValidators=[];_setValidators(n){this._rawValidators=n||[],this._composedValidatorFn=li(this._rawValidators)}_setAsyncValidators(n){this._rawAsyncValidators=n||[],this._composedAsyncValidatorFn=ci(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_onDestroyCallbacks=[];_registerOnDestroy(n){this._onDestroyCallbacks.push(n)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(n=>n()),this._onDestroyCallbacks=[]}reset(n=void 0){this.control?.reset(n)}hasError(n,t){return this.control?this.control.hasError(n,t):!1}getError(n,t){return this.control?this.control.getError(n,t):null}},ie=class extends kt{name;get formDirective(){return null}get path(){return null}},tt=class extends kt{_parent=null;name=null;valueAccessor=null},ne=class{_cd;constructor(n){this._cd=n}get isTouched(){return this._cd?.control?._touched?.(),!!this._cd?.control?.touched}get isUntouched(){return!!this._cd?.control?.untouched}get isPristine(){return this._cd?.control?._pristine?.(),!!this._cd?.control?.pristine}get isDirty(){return!!this._cd?.control?.dirty}get isValid(){return this._cd?.control?._status?.(),!!this._cd?.control?.valid}get isInvalid(){return!!this._cd?.control?.invalid}get isPending(){return!!this._cd?.control?.pending}get isSubmitted(){return this._cd?._submitted?.(),!!this._cd?.submitted}};var ps=(()=>{class i extends ne{constructor(t){super(t)}static \u0275fac=function(e){return new(e||i)(C(tt,2))};static \u0275dir=v({type:i,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(e,s){e&2&&Se("ng-untouched",s.isUntouched)("ng-touched",s.isTouched)("ng-pristine",s.isPristine)("ng-dirty",s.isDirty)("ng-valid",s.isValid)("ng-invalid",s.isInvalid)("ng-pending",s.isPending)},standalone:!1,features:[E]})}return i})();var yt="VALID",xt="INVALID",dt="PENDING",vt="DISABLED",et=class{},Ht=class extends et{value;source;constructor(n,t){super(),this.value=n,this.source=t}},_t=class extends et{pristine;source;constructor(n,t){super(),this.pristine=n,this.source=t}},bt=class extends et{touched;source;constructor(n,t){super(),this.touched=n,this.source=t}},ut=class extends et{status;source;constructor(n,t){super(),this.status=n,this.source=t}};var se=class extends et{source;constructor(n){super(),this.source=n}};function Zi(i){return(Bt(i)?i.validators:i)||null}function Qi(i){return Array.isArray(i)?li(i):i||null}function Xi(i,n){return(Bt(n)?n.asyncValidators:i)||null}function Ji(i){return Array.isArray(i)?ci(i):i||null}function Bt(i){return i!=null&&!Array.isArray(i)&&typeof i=="object"}var oe=class{_pendingDirty=!1;_hasOwnPendingAsyncValidator=null;_pendingTouched=!1;_onCollectionChange=()=>{};_updateOn;_parent=null;_asyncValidationSubscription;_composedValidatorFn;_composedAsyncValidatorFn;_rawValidators;_rawAsyncValidators;value;constructor(n,t){this._assignValidators(n),this._assignAsyncValidators(t)}get validator(){return this._composedValidatorFn}set validator(n){this._rawValidators=this._composedValidatorFn=n}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(n){this._rawAsyncValidators=this._composedAsyncValidatorFn=n}get parent(){return this._parent}get status(){return G(this.statusReactive)}set status(n){G(()=>this.statusReactive.set(n))}_status=D(()=>this.statusReactive());statusReactive=y(void 0);get valid(){return this.status===yt}get invalid(){return this.status===xt}get pending(){return this.status===dt}get disabled(){return this.status===vt}get enabled(){return this.status!==vt}errors;get pristine(){return G(this.pristineReactive)}set pristine(n){G(()=>this.pristineReactive.set(n))}_pristine=D(()=>this.pristineReactive());pristineReactive=y(!0);get dirty(){return!this.pristine}get touched(){return G(this.touchedReactive)}set touched(n){G(()=>this.touchedReactive.set(n))}_touched=D(()=>this.touchedReactive());touchedReactive=y(!1);get untouched(){return!this.touched}_events=new U;events=this._events.asObservable();valueChanges;statusChanges;get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(n){this._assignValidators(n)}setAsyncValidators(n){this._assignAsyncValidators(n)}addValidators(n){this.setValidators(Ke(n,this._rawValidators))}addAsyncValidators(n){this.setAsyncValidators(Ke(n,this._rawAsyncValidators))}removeValidators(n){this.setValidators(Ye(n,this._rawValidators))}removeAsyncValidators(n){this.setAsyncValidators(Ye(n,this._rawAsyncValidators))}hasValidator(n){return Pt(this._rawValidators,n)}hasAsyncValidator(n){return Pt(this._rawAsyncValidators,n)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(n={}){let t=this.touched===!1;this.touched=!0;let e=n.sourceControl??this;n.onlySelf||this._parent?.markAsTouched(R(c({},n),{sourceControl:e})),t&&n.emitEvent!==!1&&this._events.next(new bt(!0,e))}markAllAsDirty(n={}){this.markAsDirty({onlySelf:!0,emitEvent:n.emitEvent,sourceControl:this}),this._forEachChild(t=>t.markAllAsDirty(n))}markAllAsTouched(n={}){this.markAsTouched({onlySelf:!0,emitEvent:n.emitEvent,sourceControl:this}),this._forEachChild(t=>t.markAllAsTouched(n))}markAsUntouched(n={}){let t=this.touched===!0;this.touched=!1,this._pendingTouched=!1;let e=n.sourceControl??this;this._forEachChild(s=>{s.markAsUntouched({onlySelf:!0,emitEvent:n.emitEvent,sourceControl:e})}),n.onlySelf||this._parent?._updateTouched(n,e),t&&n.emitEvent!==!1&&this._events.next(new bt(!1,e))}markAsDirty(n={}){let t=this.pristine===!0;this.pristine=!1;let e=n.sourceControl??this;n.onlySelf||this._parent?.markAsDirty(R(c({},n),{sourceControl:e})),t&&n.emitEvent!==!1&&this._events.next(new _t(!1,e))}markAsPristine(n={}){let t=this.pristine===!1;this.pristine=!0,this._pendingDirty=!1;let e=n.sourceControl??this;this._forEachChild(s=>{s.markAsPristine({onlySelf:!0,emitEvent:n.emitEvent})}),n.onlySelf||this._parent?._updatePristine(n,e),t&&n.emitEvent!==!1&&this._events.next(new _t(!0,e))}markAsPending(n={}){this.status=dt;let t=n.sourceControl??this;n.emitEvent!==!1&&(this._events.next(new ut(this.status,t)),this.statusChanges.emit(this.status)),n.onlySelf||this._parent?.markAsPending(R(c({},n),{sourceControl:t}))}disable(n={}){let t=this._parentMarkedDirty(n.onlySelf);this.status=vt,this.errors=null,this._forEachChild(s=>{s.disable(R(c({},n),{onlySelf:!0}))}),this._updateValue();let e=n.sourceControl??this;n.emitEvent!==!1&&(this._events.next(new Ht(this.value,e)),this._events.next(new ut(this.status,e)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(R(c({},n),{skipPristineCheck:t}),this),this._onDisabledChange.forEach(s=>s(!0))}enable(n={}){let t=this._parentMarkedDirty(n.onlySelf);this.status=yt,this._forEachChild(e=>{e.enable(R(c({},n),{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:n.emitEvent}),this._updateAncestors(R(c({},n),{skipPristineCheck:t}),this),this._onDisabledChange.forEach(e=>e(!1))}_updateAncestors(n,t){n.onlySelf||(this._parent?.updateValueAndValidity(n),n.skipPristineCheck||this._parent?._updatePristine({},t),this._parent?._updateTouched({},t))}setParent(n){this._parent=n}getRawValue(){return this.value}updateValueAndValidity(n={}){if(this._setInitialStatus(),this._updateValue(),this.enabled){let e=this._cancelExistingSubscription();this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===yt||this.status===dt)&&this._runAsyncValidator(e,n.emitEvent)}let t=n.sourceControl??this;n.emitEvent!==!1&&(this._events.next(new Ht(this.value,t)),this._events.next(new ut(this.status,t)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),n.onlySelf||this._parent?.updateValueAndValidity(R(c({},n),{sourceControl:t}))}_updateTreeValidity(n={emitEvent:!0}){this._forEachChild(t=>t._updateTreeValidity(n)),this.updateValueAndValidity({onlySelf:!0,emitEvent:n.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?vt:yt}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(n,t){if(this.asyncValidator){this.status=dt,this._hasOwnPendingAsyncValidator={emitEvent:t!==!1,shouldHaveEmitted:n!==!1};let e=si(this.asyncValidator(this));this._asyncValidationSubscription=e.subscribe(s=>{this._hasOwnPendingAsyncValidator=null,this.setErrors(s,{emitEvent:t,shouldHaveEmitted:n})})}}_cancelExistingSubscription(){if(this._asyncValidationSubscription){this._asyncValidationSubscription.unsubscribe();let n=(this._hasOwnPendingAsyncValidator?.emitEvent||this._hasOwnPendingAsyncValidator?.shouldHaveEmitted)??!1;return this._hasOwnPendingAsyncValidator=null,n}return!1}setErrors(n,t={}){this.errors=n,this._updateControlsErrors(t.emitEvent!==!1,this,t.shouldHaveEmitted)}get(n){let t=n;return t==null||(Array.isArray(t)||(t=t.split(".")),t.length===0)?null:t.reduce((e,s)=>e&&e._find(s),this)}getError(n,t){let e=t?this.get(t):this;return e?.errors?e.errors[n]:null}hasError(n,t){return!!this.getError(n,t)}get root(){let n=this;for(;n._parent;)n=n._parent;return n}_updateControlsErrors(n,t,e){this.status=this._calculateStatus(),n&&this.statusChanges.emit(this.status),(n||e)&&this._events.next(new ut(this.status,t)),this._parent&&this._parent._updateControlsErrors(n,t,e)}_initObservables(){this.valueChanges=new Et,this.statusChanges=new Et}_calculateStatus(){return this._allControlsDisabled()?vt:this.errors?xt:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(dt)?dt:this._anyControlsHaveStatus(xt)?xt:yt}_anyControlsHaveStatus(n){return this._anyControls(t=>t.status===n)}_anyControlsDirty(){return this._anyControls(n=>n.dirty)}_anyControlsTouched(){return this._anyControls(n=>n.touched)}_updatePristine(n,t){let e=!this._anyControlsDirty(),s=this.pristine!==e;this.pristine=e,n.onlySelf||this._parent?._updatePristine(n,t),s&&this._events.next(new _t(this.pristine,t))}_updateTouched(n={},t){this.touched=this._anyControlsTouched(),this._events.next(new bt(this.touched,t)),n.onlySelf||this._parent?._updateTouched(n,t)}_onDisabledChange=[];_registerOnCollectionChange(n){this._onCollectionChange=n}_setUpdateStrategy(n){Bt(n)&&n.updateOn!=null&&(this._updateOn=n.updateOn)}_parentMarkedDirty(n){return!n&&!!this._parent?.dirty&&!this._parent._anyControlsDirty()}_find(n){return null}_assignValidators(n){this._rawValidators=Array.isArray(n)?n.slice():n,this._composedValidatorFn=Qi(this._rawValidators)}_assignAsyncValidators(n){this._rawAsyncValidators=Array.isArray(n)?n.slice():n,this._composedAsyncValidatorFn=Ji(this._rawAsyncValidators)}};var di=new w("",{factory:()=>re}),re="always";function tn(i,n){return[...n.path,i]}function en(i,n,t=re){sn(i,n),n.valueAccessor.writeValue(i.value),(i.disabled||t==="always")&&n.valueAccessor.setDisabledState?.(i.disabled),on(i,n),an(i,n),rn(i,n),nn(i,n)}function Ze(i,n){i.forEach(t=>{t.registerOnValidatorChange&&t.registerOnValidatorChange(n)})}function nn(i,n){if(n.valueAccessor.setDisabledState){let t=e=>{n.valueAccessor.setDisabledState(e)};i.registerOnDisabledChange(t),n._registerOnDestroy(()=>{i._unregisterOnDisabledChange(t)})}}function sn(i,n){let t=Ki(i);n.validator!==null?i.setValidators(qe(t,n.validator)):typeof t=="function"&&i.setValidators([t]);let e=Yi(i);n.asyncValidator!==null?i.setAsyncValidators(qe(e,n.asyncValidator)):typeof e=="function"&&i.setAsyncValidators([e]);let s=()=>i.updateValueAndValidity();Ze(n._rawValidators,s),Ze(n._rawAsyncValidators,s)}function on(i,n){n.valueAccessor.registerOnChange(t=>{i._pendingValue=t,i._pendingChange=!0,i._pendingDirty=!0,i.updateOn==="change"&&ui(i,n)})}function rn(i,n){n.valueAccessor.registerOnTouched(()=>{i._pendingTouched=!0,i.updateOn==="blur"&&i._pendingChange&&ui(i,n),i.updateOn!=="submit"&&i.markAsTouched()})}function ui(i,n){i._pendingDirty&&i.markAsDirty(),i.setValue(i._pendingValue,{emitModelToViewChange:!1}),n.viewToModelUpdate(i._pendingValue),i._pendingChange=!1}function an(i,n){let t=(e,s)=>{n.valueAccessor.writeValue(e),s&&n.viewToModelUpdate(e)};i.registerOnChange(t),n._registerOnDestroy(()=>{i._unregisterOnChange(t)})}function ln(i,n){if(!i.hasOwnProperty("model"))return!1;let t=i.model;return t.isFirstChange()?!0:!Object.is(n,t.currentValue)}function cn(i){return Object.getPrototypeOf(i.constructor)===Hi}function dn(i,n){if(!n)return null;Array.isArray(n);let t,e,s;return n.forEach(o=>{o.constructor===ii?t=o:cn(o)?e=o:s=o}),s||e||t||null}function Qe(i,n){let t=i.indexOf(n);t>-1&&i.splice(t,1)}function Xe(i){return typeof i=="object"&&i!==null&&Object.keys(i).length===2&&"value"in i&&"disabled"in i}var un=class extends oe{defaultValue=null;_onChange=[];_pendingValue;_pendingChange=!1;constructor(n=null,t,e){super(Zi(t),Xi(e,t)),this._applyFormState(n),this._setUpdateStrategy(t),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),Bt(t)&&(t.nonNullable||t.initialValueIsDefault)&&(Xe(n)?this.defaultValue=n.value:this.defaultValue=n)}setValue(n,t={}){this.value=this._pendingValue=n,this._onChange.length&&t.emitModelToViewChange!==!1&&this._onChange.forEach(e=>e(this.value,t.emitViewToModelChange!==!1)),this.updateValueAndValidity(t)}patchValue(n,t={}){this.setValue(n,t)}reset(n=this.defaultValue,t={}){this._applyFormState(n),this.markAsPristine(t),this.markAsUntouched(t),this.setValue(this.value,t),t.overwriteDefaultValue&&(this.defaultValue=this.value),this._pendingChange=!1,t?.emitEvent!==!1&&this._events.next(new se(this))}_updateValue(){}_anyControls(n){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(n){this._onChange.push(n)}_unregisterOnChange(n){Qe(this._onChange,n)}registerOnDisabledChange(n){this._onDisabledChange.push(n)}_unregisterOnDisabledChange(n){Qe(this._onDisabledChange,n)}_forEachChild(n){}_syncPendingControls(){return this.updateOn==="submit"&&(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),this._pendingChange)?(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),!0):!1}_applyFormState(n){Xe(n)?(this.value=this._pendingValue=n.value,n.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=n}};var pn={provide:tt,useExisting:Wt(()=>hn)},Je=Promise.resolve(),hn=(()=>{class i extends tt{_changeDetectorRef;callSetDisabledState;control=new un;static ngAcceptInputType_isDisabled;_registered=!1;viewModel;name="";isDisabled;model;options;update=new Et;constructor(t,e,s,o,r,a){super(),this._changeDetectorRef=r,this.callSetDisabledState=a,this._parent=t,this._setValidators(e),this._setAsyncValidators(s),this.valueAccessor=dn(this,o)}ngOnChanges(t){if(this._checkForErrors(),!this._registered||"name"in t){if(this._registered&&(this._checkName(),this.formDirective)){let e=t.name.previousValue;this.formDirective.removeControl({name:e,path:this._getPath(e)})}this._setUpControl()}"isDisabled"in t&&this._updateDisabled(t),ln(t,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective?.removeControl(this)}get path(){return this._getPath(this.name)}get formDirective(){return this._parent?this._parent.formDirective:null}viewToModelUpdate(t){this.viewModel=t,this.update.emit(t)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&this.options.updateOn!=null&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!!(this.options&&this.options.standalone)}_setUpStandalone(){en(this.control,this,this.callSetDisabledState),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._checkName()}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),!this._isStandalone()&&this.name}_updateValue(t){Je.then(()=>{this.control.setValue(t,{emitViewToModelChange:!1}),this._changeDetectorRef?.markForCheck()})}_updateDisabled(t){let e=t.isDisabled.currentValue,s=e!==0&&x(e);Je.then(()=>{s&&!this.control.disabled?this.control.disable():!s&&this.control.disabled&&this.control.enable(),this._changeDetectorRef?.markForCheck()})}_getPath(t){return this._parent?tn(t,this._parent):[t]}static \u0275fac=function(e){return new(e||i)(C(ie,9),C(Wi,10),C(Gi,10),C(ei,10),C(wt,8),C(di,8))};static \u0275dir=v({type:i,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"],options:[0,"ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],standalone:!1,features:[V([pn]),E,Dt]})}return i})();var fn=(()=>{class i{static \u0275fac=function(e){return new(e||i)};static \u0275mod=L({type:i});static \u0275inj=N({})}return i})();var fs=(()=>{class i{static withConfig(t){return{ngModule:i,providers:[{provide:di,useValue:t.callSetDisabledState??re}]}}static \u0275fac=function(e){return new(e||i)};static \u0275mod=L({type:i});static \u0275inj=N({imports:[fn]})}return i})();var pi=`
1
+ import{a as Kt,l as It,p as ot,q as Yt}from"./chunk-34ZZDYNQ.js";import{$ as Be,B as Fe,C as B,Ca as Jt,Da as Ft,E as Xt,Fa as lt,Ja as _,L as Re,M as xe,O as Pe,S as ke,T as gt,U as He,V as Vt,Y as q,Z as Nt,_ as rt,a as ft,aa as Ue,b as Ae,c as Te,d as mt,da as Lt,e as we,ea as P,f as Ie,h as Oe,ha as at,i as Me,j as Ve,m as k,p as Zt,q as Ne,r as Ot,s as Le,u as Mt,y as Qt}from"./chunk-4SG4352Z.js";import{$a as v,Ab as jt,Bb as zt,Cb as qt,Ec as wt,Ic as x,J as Wt,Ja as ye,Jb as Ee,Jc as st,K as m,Kb as Tt,L as N,N as w,Nb as X,Ob as J,P as p,Pa as ve,Q as me,Ra as Q,Sa as C,Ua as _e,X as ge,Yb as Se,Z as Gt,Za as W,Zb as De,_ as j,_a as L,_b as z,ab as At,ba as Et,bb as E,ca as St,d as U,fb as be,ga as y,gb as Ce,h as pe,ja as I,ka as Dt,kc as V,la as g,ma as $,n as he,nb as ht,qa as nt,s as fe,vc as G,wc as D,yc as S}from"./chunk-BJ6X6WBO.js";import{a as c,b as R,d as ue}from"./chunk-WCABR6TI.js";function K(...i){if(i){let n=[];for(let t=0;t<i.length;t++){let e=i[t];if(!e)continue;let s=typeof e;if(s==="string"||s==="number")n.push(e);else if(s==="object"){let o=Array.isArray(e)?[K(...e)]:Object.entries(e).map(([r,a])=>a?r:void 0);n=o.length?n.concat(o.filter(r=>!!r)):n}}return n.join(" ").trim()}}var Li=Object.defineProperty,$e=Object.getOwnPropertySymbols,Fi=Object.prototype.hasOwnProperty,Ri=Object.prototype.propertyIsEnumerable,We=(i,n,t)=>n in i?Li(i,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[n]=t,Ge=(i,n)=>{for(var t in n||(n={}))Fi.call(n,t)&&We(i,t,n[t]);if($e)for(var t of $e(n))Ri.call(n,t)&&We(i,t,n[t]);return i};function je(...i){if(i){let n=[];for(let t=0;t<i.length;t++){let e=i[t];if(!e)continue;let s=typeof e;if(s==="string"||s==="number")n.push(e);else if(s==="object"){let o=Array.isArray(e)?[je(...e)]:Object.entries(e).map(([r,a])=>a?r:void 0);n=o.length?n.concat(o.filter(r=>!!r)):n}}return n.join(" ").trim()}}function xi(i){return typeof i=="function"&&"call"in i&&"apply"in i}function Pi({skipUndefined:i=!1},...n){return n?.reduce((t,e={})=>{for(let s in e){let o=e[s];if(!(i&&o===void 0))if(s==="style")t.style=Ge(Ge({},t.style),e.style);else if(s==="class"||s==="className")t[s]=je(t[s],e[s]);else if(xi(o)){let r=t[s];t[s]=r?(...a)=>{r(...a),o(...a)}:o}else t[s]=o}return t},{})}function te(...i){return Pi({skipUndefined:!1},...i)}var Rt={};function ct(i="pui_id_"){return Object.hasOwn(Rt,i)||(Rt[i]=0),Rt[i]++,`${i}${Rt[i]}`}var ze=["*"],ki=(function(i){return i[i.ACCEPT=0]="ACCEPT",i[i.REJECT=1]="REJECT",i[i.CANCEL=2]="CANCEL",i})(ki||{}),xn=(()=>{class i{requireConfirmationSource=new U;acceptConfirmationSource=new U;requireConfirmation$=this.requireConfirmationSource.asObservable();accept=this.acceptConfirmationSource.asObservable();confirm(t){return this.requireConfirmationSource.next(t),this}close(){return this.requireConfirmationSource.next(null),this}onAccept(){this.acceptConfirmationSource.next(null)}static \u0275fac=function(e){return new(e||i)};static \u0275prov=m({token:i,factory:i.\u0275fac})}return i})();var A=(()=>{class i{static STARTS_WITH="startsWith";static CONTAINS="contains";static NOT_CONTAINS="notContains";static ENDS_WITH="endsWith";static EQUALS="equals";static NOT_EQUALS="notEquals";static IN="in";static LESS_THAN="lt";static LESS_THAN_OR_EQUAL_TO="lte";static GREATER_THAN="gt";static GREATER_THAN_OR_EQUAL_TO="gte";static BETWEEN="between";static IS="is";static IS_NOT="isNot";static BEFORE="before";static AFTER="after";static DATE_IS="dateIs";static DATE_IS_NOT="dateIsNot";static DATE_BEFORE="dateBefore";static DATE_AFTER="dateAfter"}return i})(),Pn=(()=>{class i{static AND="and";static OR="or"}return i})(),kn=(()=>{class i{filter(t,e,s,o,r){let a=[];if(t)for(let l of t)for(let d of e){let u=He(l,d);if(this.filters[o](u,s,r)){a.push(l);break}}return a}filters={startsWith:(t,e,s)=>{if(e==null||e.trim()==="")return!0;if(t==null)return!1;let o=P(e.toString()).toLocaleLowerCase(s);return P(t.toString()).toLocaleLowerCase(s).slice(0,o.length)===o},contains:(t,e,s)=>{if(e==null||typeof e=="string"&&e.trim()==="")return!0;if(t==null)return!1;let o=P(e.toString()).toLocaleLowerCase(s);return P(t.toString()).toLocaleLowerCase(s).indexOf(o)!==-1},notContains:(t,e,s)=>{if(e==null||typeof e=="string"&&e.trim()==="")return!0;if(t==null)return!1;let o=P(e.toString()).toLocaleLowerCase(s);return P(t.toString()).toLocaleLowerCase(s).indexOf(o)===-1},endsWith:(t,e,s)=>{if(e==null||e.trim()==="")return!0;if(t==null)return!1;let o=P(e.toString()).toLocaleLowerCase(s),r=P(t.toString()).toLocaleLowerCase(s);return r.indexOf(o,r.length-o.length)!==-1},equals:(t,e,s)=>e==null||typeof e=="string"&&e.trim()===""?!0:t==null?!1:t.getTime&&e.getTime?t.getTime()===e.getTime():t==e?!0:P(t.toString()).toLocaleLowerCase(s)==P(e.toString()).toLocaleLowerCase(s),notEquals:(t,e,s)=>e==null||typeof e=="string"&&e.trim()===""?!1:t==null?!0:t.getTime&&e.getTime?t.getTime()!==e.getTime():t==e?!1:P(t.toString()).toLocaleLowerCase(s)!=P(e.toString()).toLocaleLowerCase(s),in:(t,e)=>{if(e==null||e.length===0)return!0;for(let s=0;s<e.length;s++)if(Vt(t,e[s]))return!0;return!1},between:(t,e)=>e==null||e[0]==null||e[1]==null?!0:t==null?!1:t.getTime?e[0].getTime()<=t.getTime()&&t.getTime()<=e[1].getTime():e[0]<=t&&t<=e[1],lt:(t,e,s)=>e==null?!0:t==null?!1:t.getTime&&e.getTime?t.getTime()<e.getTime():t<e,lte:(t,e,s)=>e==null?!0:t==null?!1:t.getTime&&e.getTime?t.getTime()<=e.getTime():t<=e,gt:(t,e,s)=>e==null?!0:t==null?!1:t.getTime&&e.getTime?t.getTime()>e.getTime():t>e,gte:(t,e,s)=>e==null?!0:t==null?!1:t.getTime&&e.getTime?t.getTime()>=e.getTime():t>=e,is:(t,e,s)=>this.filters.equals(t,e,s),isNot:(t,e,s)=>this.filters.notEquals(t,e,s),before:(t,e,s)=>this.filters.lt(t,e,s),after:(t,e,s)=>this.filters.gt(t,e,s),dateIs:(t,e)=>e==null?!0:t==null?!1:t.toDateString()===e.toDateString(),dateIsNot:(t,e)=>e==null?!0:t==null?!1:t.toDateString()!==e.toDateString(),dateBefore:(t,e)=>e==null?!0:t==null?!1:t.getTime()<e.getTime(),dateAfter:(t,e)=>e==null?!0:t==null?!1:(t.setHours(0,0,0,0),t.getTime()>e.getTime())};register(t,e){this.filters[t]=e}static \u0275fac=function(e){return new(e||i)};static \u0275prov=m({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var Hn=(()=>{class i{clickSource=new U;parentDragSource=new U;clickObservable=this.clickSource.asObservable();parentDragObservable=this.parentDragSource.asObservable();add(t){t&&this.clickSource.next(t)}emitParentDrag(t){this.parentDragSource.next(t)}static \u0275fac=function(e){return new(e||i)};static \u0275prov=m({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var Bn=(()=>{class i{static \u0275fac=function(e){return new(e||i)};static \u0275cmp=W({type:i,selectors:[["p-header"]],standalone:!1,ngContentSelectors:ze,decls:1,vars:0,template:function(e,s){e&1&&(X(),J(0))},encapsulation:2})}return i})(),Un=(()=>{class i{static \u0275fac=function(e){return new(e||i)};static \u0275cmp=W({type:i,selectors:[["p-footer"]],standalone:!1,ngContentSelectors:ze,decls:1,vars:0,template:function(e,s){e&1&&(X(),J(0))},encapsulation:2})}return i})(),$n=(()=>{class i{template;type;name;constructor(t){this.template=t}getType(){return this.name}static \u0275fac=function(e){return new(e||i)(C(ve))};static \u0275dir=v({type:i,selectors:[["","pTemplate",""]],inputs:{type:"type",name:[0,"pTemplate","name"]}})}return i})(),Wn=(()=>{class i{static \u0275fac=function(e){return new(e||i)};static \u0275mod=L({type:i});static \u0275inj=N({imports:[It]})}return i})(),Gn=(()=>{class i{static STARTS_WITH="startsWith";static CONTAINS="contains";static NOT_CONTAINS="notContains";static ENDS_WITH="endsWith";static EQUALS="equals";static NOT_EQUALS="notEquals";static NO_FILTER="noFilter";static LT="lt";static LTE="lte";static GT="gt";static GTE="gte";static IS="is";static IS_NOT="isNot";static BEFORE="before";static AFTER="after";static CLEAR="clear";static APPLY="apply";static MATCH_ALL="matchAll";static MATCH_ANY="matchAny";static ADD_RULE="addRule";static REMOVE_RULE="removeRule";static ACCEPT="accept";static REJECT="reject";static CHOOSE="choose";static UPLOAD="upload";static CANCEL="cancel";static PENDING="pending";static FILE_SIZE_TYPES="fileSizeTypes";static DAY_NAMES="dayNames";static DAY_NAMES_SHORT="dayNamesShort";static DAY_NAMES_MIN="dayNamesMin";static MONTH_NAMES="monthNames";static MONTH_NAMES_SHORT="monthNamesShort";static FIRST_DAY_OF_WEEK="firstDayOfWeek";static TODAY="today";static WEEK_HEADER="weekHeader";static WEAK="weak";static MEDIUM="medium";static STRONG="strong";static PASSWORD_PROMPT="passwordPrompt";static EMPTY_MESSAGE="emptyMessage";static EMPTY_FILTER_MESSAGE="emptyFilterMessage";static SHOW_FILTER_MENU="showFilterMenu";static HIDE_FILTER_MENU="hideFilterMenu";static SELECTION_MESSAGE="selectionMessage";static ARIA="aria";static SELECT_COLOR="selectColor";static BROWSE_FILES="browseFiles"}return i})();var ti=(()=>{class i{_renderer;_elementRef;onChange=t=>{};onTouched=()=>{};constructor(t,e){this._renderer=t,this._elementRef=e}setProperty(t,e){this._renderer.setProperty(this._elementRef.nativeElement,t,e)}registerOnTouched(t){this.onTouched=t}registerOnChange(t){this.onChange=t}setDisabledState(t){this.setProperty("disabled",t)}static \u0275fac=function(e){return new(e||i)(C(Q),C($))};static \u0275dir=v({type:i})}return i})(),Hi=(()=>{class i extends ti{static \u0275fac=(()=>{let t;return function(s){return(t||(t=g(i)))(s||i)}})();static \u0275dir=v({type:i,features:[E]})}return i})(),ei=new w("");var Bi={provide:ei,useExisting:Wt(()=>ii),multi:!0};function Ui(){let i=Kt()?Kt().getUserAgent():"";return/android (\d+)/.test(i.toLowerCase())}var $i=new w(""),ii=(()=>{class i extends ti{_compositionMode;_composing=!1;constructor(t,e,s){super(t,e),this._compositionMode=s,this._compositionMode==null&&(this._compositionMode=!Ui())}writeValue(t){let e=t??"";this.setProperty("value",e)}_handleInput(t){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(t)}_compositionStart(){this._composing=!0}_compositionEnd(t){this._composing=!1,this._compositionMode&&this.onChange(t)}static \u0275fac=function(e){return new(e||i)(C(Q),C($),C($i,8))};static \u0275dir=v({type:i,selectors:[["input","formControlName","",3,"type","checkbox"],["textarea","formControlName",""],["input","formControl","",3,"type","checkbox"],["textarea","formControl",""],["input","ngModel","",3,"type","checkbox"],["textarea","ngModel",""],["","ngDefaultControl",""]],hostBindings:function(e,s){e&1&&Tt("input",function(r){return s._handleInput(r.target.value)})("blur",function(){return s.onTouched()})("compositionstart",function(){return s._compositionStart()})("compositionend",function(r){return s._compositionEnd(r.target.value)})},standalone:!1,features:[V([Bi]),E]})}return i})();var Wi=new w(""),Gi=new w("");function ni(i){return i!=null}function si(i){return be(i)?pe(i):i}function oi(i){let n={};return i.forEach(t=>{n=t!=null?c(c({},n),t):n}),Object.keys(n).length===0?null:n}function ri(i,n){return n.map(t=>t(i))}function ji(i){return!i.validate}function ai(i){return i.map(n=>ji(n)?n:t=>n.validate(t))}function zi(i){if(!i)return null;let n=i.filter(ni);return n.length==0?null:function(t){return oi(ri(t,n))}}function li(i){return i!=null?zi(ai(i)):null}function qi(i){if(!i)return null;let n=i.filter(ni);return n.length==0?null:function(t){let e=ri(t,n).map(si);return fe(e).pipe(he(oi))}}function ci(i){return i!=null?qi(ai(i)):null}function qe(i,n){return i===null?[n]:Array.isArray(i)?[...i,n]:[i,n]}function Ki(i){return i._rawValidators}function Yi(i){return i._rawAsyncValidators}function ee(i){return i?Array.isArray(i)?i:[i]:[]}function Pt(i,n){return Array.isArray(i)?i.includes(n):i===n}function Ke(i,n){let t=ee(n);return ee(i).forEach(s=>{Pt(t,s)||t.push(s)}),t}function Ye(i,n){return ee(n).filter(t=>!Pt(i,t))}var kt=class{get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}_composedValidatorFn;_composedAsyncValidatorFn;_rawValidators=[];_rawAsyncValidators=[];_setValidators(n){this._rawValidators=n||[],this._composedValidatorFn=li(this._rawValidators)}_setAsyncValidators(n){this._rawAsyncValidators=n||[],this._composedAsyncValidatorFn=ci(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_onDestroyCallbacks=[];_registerOnDestroy(n){this._onDestroyCallbacks.push(n)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(n=>n()),this._onDestroyCallbacks=[]}reset(n=void 0){this.control?.reset(n)}hasError(n,t){return this.control?this.control.hasError(n,t):!1}getError(n,t){return this.control?this.control.getError(n,t):null}},ie=class extends kt{name;get formDirective(){return null}get path(){return null}},tt=class extends kt{_parent=null;name=null;valueAccessor=null},ne=class{_cd;constructor(n){this._cd=n}get isTouched(){return this._cd?.control?._touched?.(),!!this._cd?.control?.touched}get isUntouched(){return!!this._cd?.control?.untouched}get isPristine(){return this._cd?.control?._pristine?.(),!!this._cd?.control?.pristine}get isDirty(){return!!this._cd?.control?.dirty}get isValid(){return this._cd?.control?._status?.(),!!this._cd?.control?.valid}get isInvalid(){return!!this._cd?.control?.invalid}get isPending(){return!!this._cd?.control?.pending}get isSubmitted(){return this._cd?._submitted?.(),!!this._cd?.submitted}};var ps=(()=>{class i extends ne{constructor(t){super(t)}static \u0275fac=function(e){return new(e||i)(C(tt,2))};static \u0275dir=v({type:i,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(e,s){e&2&&Se("ng-untouched",s.isUntouched)("ng-touched",s.isTouched)("ng-pristine",s.isPristine)("ng-dirty",s.isDirty)("ng-valid",s.isValid)("ng-invalid",s.isInvalid)("ng-pending",s.isPending)},standalone:!1,features:[E]})}return i})();var yt="VALID",xt="INVALID",dt="PENDING",vt="DISABLED",et=class{},Ht=class extends et{value;source;constructor(n,t){super(),this.value=n,this.source=t}},_t=class extends et{pristine;source;constructor(n,t){super(),this.pristine=n,this.source=t}},bt=class extends et{touched;source;constructor(n,t){super(),this.touched=n,this.source=t}},ut=class extends et{status;source;constructor(n,t){super(),this.status=n,this.source=t}};var se=class extends et{source;constructor(n){super(),this.source=n}};function Zi(i){return(Bt(i)?i.validators:i)||null}function Qi(i){return Array.isArray(i)?li(i):i||null}function Xi(i,n){return(Bt(n)?n.asyncValidators:i)||null}function Ji(i){return Array.isArray(i)?ci(i):i||null}function Bt(i){return i!=null&&!Array.isArray(i)&&typeof i=="object"}var oe=class{_pendingDirty=!1;_hasOwnPendingAsyncValidator=null;_pendingTouched=!1;_onCollectionChange=()=>{};_updateOn;_parent=null;_asyncValidationSubscription;_composedValidatorFn;_composedAsyncValidatorFn;_rawValidators;_rawAsyncValidators;value;constructor(n,t){this._assignValidators(n),this._assignAsyncValidators(t)}get validator(){return this._composedValidatorFn}set validator(n){this._rawValidators=this._composedValidatorFn=n}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(n){this._rawAsyncValidators=this._composedAsyncValidatorFn=n}get parent(){return this._parent}get status(){return G(this.statusReactive)}set status(n){G(()=>this.statusReactive.set(n))}_status=D(()=>this.statusReactive());statusReactive=y(void 0);get valid(){return this.status===yt}get invalid(){return this.status===xt}get pending(){return this.status===dt}get disabled(){return this.status===vt}get enabled(){return this.status!==vt}errors;get pristine(){return G(this.pristineReactive)}set pristine(n){G(()=>this.pristineReactive.set(n))}_pristine=D(()=>this.pristineReactive());pristineReactive=y(!0);get dirty(){return!this.pristine}get touched(){return G(this.touchedReactive)}set touched(n){G(()=>this.touchedReactive.set(n))}_touched=D(()=>this.touchedReactive());touchedReactive=y(!1);get untouched(){return!this.touched}_events=new U;events=this._events.asObservable();valueChanges;statusChanges;get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(n){this._assignValidators(n)}setAsyncValidators(n){this._assignAsyncValidators(n)}addValidators(n){this.setValidators(Ke(n,this._rawValidators))}addAsyncValidators(n){this.setAsyncValidators(Ke(n,this._rawAsyncValidators))}removeValidators(n){this.setValidators(Ye(n,this._rawValidators))}removeAsyncValidators(n){this.setAsyncValidators(Ye(n,this._rawAsyncValidators))}hasValidator(n){return Pt(this._rawValidators,n)}hasAsyncValidator(n){return Pt(this._rawAsyncValidators,n)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(n={}){let t=this.touched===!1;this.touched=!0;let e=n.sourceControl??this;n.onlySelf||this._parent?.markAsTouched(R(c({},n),{sourceControl:e})),t&&n.emitEvent!==!1&&this._events.next(new bt(!0,e))}markAllAsDirty(n={}){this.markAsDirty({onlySelf:!0,emitEvent:n.emitEvent,sourceControl:this}),this._forEachChild(t=>t.markAllAsDirty(n))}markAllAsTouched(n={}){this.markAsTouched({onlySelf:!0,emitEvent:n.emitEvent,sourceControl:this}),this._forEachChild(t=>t.markAllAsTouched(n))}markAsUntouched(n={}){let t=this.touched===!0;this.touched=!1,this._pendingTouched=!1;let e=n.sourceControl??this;this._forEachChild(s=>{s.markAsUntouched({onlySelf:!0,emitEvent:n.emitEvent,sourceControl:e})}),n.onlySelf||this._parent?._updateTouched(n,e),t&&n.emitEvent!==!1&&this._events.next(new bt(!1,e))}markAsDirty(n={}){let t=this.pristine===!0;this.pristine=!1;let e=n.sourceControl??this;n.onlySelf||this._parent?.markAsDirty(R(c({},n),{sourceControl:e})),t&&n.emitEvent!==!1&&this._events.next(new _t(!1,e))}markAsPristine(n={}){let t=this.pristine===!1;this.pristine=!0,this._pendingDirty=!1;let e=n.sourceControl??this;this._forEachChild(s=>{s.markAsPristine({onlySelf:!0,emitEvent:n.emitEvent})}),n.onlySelf||this._parent?._updatePristine(n,e),t&&n.emitEvent!==!1&&this._events.next(new _t(!0,e))}markAsPending(n={}){this.status=dt;let t=n.sourceControl??this;n.emitEvent!==!1&&(this._events.next(new ut(this.status,t)),this.statusChanges.emit(this.status)),n.onlySelf||this._parent?.markAsPending(R(c({},n),{sourceControl:t}))}disable(n={}){let t=this._parentMarkedDirty(n.onlySelf);this.status=vt,this.errors=null,this._forEachChild(s=>{s.disable(R(c({},n),{onlySelf:!0}))}),this._updateValue();let e=n.sourceControl??this;n.emitEvent!==!1&&(this._events.next(new Ht(this.value,e)),this._events.next(new ut(this.status,e)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(R(c({},n),{skipPristineCheck:t}),this),this._onDisabledChange.forEach(s=>s(!0))}enable(n={}){let t=this._parentMarkedDirty(n.onlySelf);this.status=yt,this._forEachChild(e=>{e.enable(R(c({},n),{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:n.emitEvent}),this._updateAncestors(R(c({},n),{skipPristineCheck:t}),this),this._onDisabledChange.forEach(e=>e(!1))}_updateAncestors(n,t){n.onlySelf||(this._parent?.updateValueAndValidity(n),n.skipPristineCheck||this._parent?._updatePristine({},t),this._parent?._updateTouched({},t))}setParent(n){this._parent=n}getRawValue(){return this.value}updateValueAndValidity(n={}){if(this._setInitialStatus(),this._updateValue(),this.enabled){let e=this._cancelExistingSubscription();this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===yt||this.status===dt)&&this._runAsyncValidator(e,n.emitEvent)}let t=n.sourceControl??this;n.emitEvent!==!1&&(this._events.next(new Ht(this.value,t)),this._events.next(new ut(this.status,t)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),n.onlySelf||this._parent?.updateValueAndValidity(R(c({},n),{sourceControl:t}))}_updateTreeValidity(n={emitEvent:!0}){this._forEachChild(t=>t._updateTreeValidity(n)),this.updateValueAndValidity({onlySelf:!0,emitEvent:n.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?vt:yt}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(n,t){if(this.asyncValidator){this.status=dt,this._hasOwnPendingAsyncValidator={emitEvent:t!==!1,shouldHaveEmitted:n!==!1};let e=si(this.asyncValidator(this));this._asyncValidationSubscription=e.subscribe(s=>{this._hasOwnPendingAsyncValidator=null,this.setErrors(s,{emitEvent:t,shouldHaveEmitted:n})})}}_cancelExistingSubscription(){if(this._asyncValidationSubscription){this._asyncValidationSubscription.unsubscribe();let n=(this._hasOwnPendingAsyncValidator?.emitEvent||this._hasOwnPendingAsyncValidator?.shouldHaveEmitted)??!1;return this._hasOwnPendingAsyncValidator=null,n}return!1}setErrors(n,t={}){this.errors=n,this._updateControlsErrors(t.emitEvent!==!1,this,t.shouldHaveEmitted)}get(n){let t=n;return t==null||(Array.isArray(t)||(t=t.split(".")),t.length===0)?null:t.reduce((e,s)=>e&&e._find(s),this)}getError(n,t){let e=t?this.get(t):this;return e?.errors?e.errors[n]:null}hasError(n,t){return!!this.getError(n,t)}get root(){let n=this;for(;n._parent;)n=n._parent;return n}_updateControlsErrors(n,t,e){this.status=this._calculateStatus(),n&&this.statusChanges.emit(this.status),(n||e)&&this._events.next(new ut(this.status,t)),this._parent&&this._parent._updateControlsErrors(n,t,e)}_initObservables(){this.valueChanges=new Et,this.statusChanges=new Et}_calculateStatus(){return this._allControlsDisabled()?vt:this.errors?xt:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(dt)?dt:this._anyControlsHaveStatus(xt)?xt:yt}_anyControlsHaveStatus(n){return this._anyControls(t=>t.status===n)}_anyControlsDirty(){return this._anyControls(n=>n.dirty)}_anyControlsTouched(){return this._anyControls(n=>n.touched)}_updatePristine(n,t){let e=!this._anyControlsDirty(),s=this.pristine!==e;this.pristine=e,n.onlySelf||this._parent?._updatePristine(n,t),s&&this._events.next(new _t(this.pristine,t))}_updateTouched(n={},t){this.touched=this._anyControlsTouched(),this._events.next(new bt(this.touched,t)),n.onlySelf||this._parent?._updateTouched(n,t)}_onDisabledChange=[];_registerOnCollectionChange(n){this._onCollectionChange=n}_setUpdateStrategy(n){Bt(n)&&n.updateOn!=null&&(this._updateOn=n.updateOn)}_parentMarkedDirty(n){return!n&&!!this._parent?.dirty&&!this._parent._anyControlsDirty()}_find(n){return null}_assignValidators(n){this._rawValidators=Array.isArray(n)?n.slice():n,this._composedValidatorFn=Qi(this._rawValidators)}_assignAsyncValidators(n){this._rawAsyncValidators=Array.isArray(n)?n.slice():n,this._composedAsyncValidatorFn=Ji(this._rawAsyncValidators)}};var di=new w("",{factory:()=>re}),re="always";function tn(i,n){return[...n.path,i]}function en(i,n,t=re){sn(i,n),n.valueAccessor.writeValue(i.value),(i.disabled||t==="always")&&n.valueAccessor.setDisabledState?.(i.disabled),on(i,n),an(i,n),rn(i,n),nn(i,n)}function Ze(i,n){i.forEach(t=>{t.registerOnValidatorChange&&t.registerOnValidatorChange(n)})}function nn(i,n){if(n.valueAccessor.setDisabledState){let t=e=>{n.valueAccessor.setDisabledState(e)};i.registerOnDisabledChange(t),n._registerOnDestroy(()=>{i._unregisterOnDisabledChange(t)})}}function sn(i,n){let t=Ki(i);n.validator!==null?i.setValidators(qe(t,n.validator)):typeof t=="function"&&i.setValidators([t]);let e=Yi(i);n.asyncValidator!==null?i.setAsyncValidators(qe(e,n.asyncValidator)):typeof e=="function"&&i.setAsyncValidators([e]);let s=()=>i.updateValueAndValidity();Ze(n._rawValidators,s),Ze(n._rawAsyncValidators,s)}function on(i,n){n.valueAccessor.registerOnChange(t=>{i._pendingValue=t,i._pendingChange=!0,i._pendingDirty=!0,i.updateOn==="change"&&ui(i,n)})}function rn(i,n){n.valueAccessor.registerOnTouched(()=>{i._pendingTouched=!0,i.updateOn==="blur"&&i._pendingChange&&ui(i,n),i.updateOn!=="submit"&&i.markAsTouched()})}function ui(i,n){i._pendingDirty&&i.markAsDirty(),i.setValue(i._pendingValue,{emitModelToViewChange:!1}),n.viewToModelUpdate(i._pendingValue),i._pendingChange=!1}function an(i,n){let t=(e,s)=>{n.valueAccessor.writeValue(e),s&&n.viewToModelUpdate(e)};i.registerOnChange(t),n._registerOnDestroy(()=>{i._unregisterOnChange(t)})}function ln(i,n){if(!i.hasOwnProperty("model"))return!1;let t=i.model;return t.isFirstChange()?!0:!Object.is(n,t.currentValue)}function cn(i){return Object.getPrototypeOf(i.constructor)===Hi}function dn(i,n){if(!n)return null;Array.isArray(n);let t,e,s;return n.forEach(o=>{o.constructor===ii?t=o:cn(o)?e=o:s=o}),s||e||t||null}function Qe(i,n){let t=i.indexOf(n);t>-1&&i.splice(t,1)}function Xe(i){return typeof i=="object"&&i!==null&&Object.keys(i).length===2&&"value"in i&&"disabled"in i}var un=class extends oe{defaultValue=null;_onChange=[];_pendingValue;_pendingChange=!1;constructor(n=null,t,e){super(Zi(t),Xi(e,t)),this._applyFormState(n),this._setUpdateStrategy(t),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),Bt(t)&&(t.nonNullable||t.initialValueIsDefault)&&(Xe(n)?this.defaultValue=n.value:this.defaultValue=n)}setValue(n,t={}){this.value=this._pendingValue=n,this._onChange.length&&t.emitModelToViewChange!==!1&&this._onChange.forEach(e=>e(this.value,t.emitViewToModelChange!==!1)),this.updateValueAndValidity(t)}patchValue(n,t={}){this.setValue(n,t)}reset(n=this.defaultValue,t={}){this._applyFormState(n),this.markAsPristine(t),this.markAsUntouched(t),this.setValue(this.value,t),t.overwriteDefaultValue&&(this.defaultValue=this.value),this._pendingChange=!1,t?.emitEvent!==!1&&this._events.next(new se(this))}_updateValue(){}_anyControls(n){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(n){this._onChange.push(n)}_unregisterOnChange(n){Qe(this._onChange,n)}registerOnDisabledChange(n){this._onDisabledChange.push(n)}_unregisterOnDisabledChange(n){Qe(this._onDisabledChange,n)}_forEachChild(n){}_syncPendingControls(){return this.updateOn==="submit"&&(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),this._pendingChange)?(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),!0):!1}_applyFormState(n){Xe(n)?(this.value=this._pendingValue=n.value,n.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=n}};var pn={provide:tt,useExisting:Wt(()=>hn)},Je=Promise.resolve(),hn=(()=>{class i extends tt{_changeDetectorRef;callSetDisabledState;control=new un;static ngAcceptInputType_isDisabled;_registered=!1;viewModel;name="";isDisabled;model;options;update=new Et;constructor(t,e,s,o,r,a){super(),this._changeDetectorRef=r,this.callSetDisabledState=a,this._parent=t,this._setValidators(e),this._setAsyncValidators(s),this.valueAccessor=dn(this,o)}ngOnChanges(t){if(this._checkForErrors(),!this._registered||"name"in t){if(this._registered&&(this._checkName(),this.formDirective)){let e=t.name.previousValue;this.formDirective.removeControl({name:e,path:this._getPath(e)})}this._setUpControl()}"isDisabled"in t&&this._updateDisabled(t),ln(t,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective?.removeControl(this)}get path(){return this._getPath(this.name)}get formDirective(){return this._parent?this._parent.formDirective:null}viewToModelUpdate(t){this.viewModel=t,this.update.emit(t)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&this.options.updateOn!=null&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!!(this.options&&this.options.standalone)}_setUpStandalone(){en(this.control,this,this.callSetDisabledState),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._checkName()}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),!this._isStandalone()&&this.name}_updateValue(t){Je.then(()=>{this.control.setValue(t,{emitViewToModelChange:!1}),this._changeDetectorRef?.markForCheck()})}_updateDisabled(t){let e=t.isDisabled.currentValue,s=e!==0&&x(e);Je.then(()=>{s&&!this.control.disabled?this.control.disable():!s&&this.control.disabled&&this.control.enable(),this._changeDetectorRef?.markForCheck()})}_getPath(t){return this._parent?tn(t,this._parent):[t]}static \u0275fac=function(e){return new(e||i)(C(ie,9),C(Wi,10),C(Gi,10),C(ei,10),C(wt,8),C(di,8))};static \u0275dir=v({type:i,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"],options:[0,"ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],standalone:!1,features:[V([pn]),E,Dt]})}return i})();var fn=(()=>{class i{static \u0275fac=function(e){return new(e||i)};static \u0275mod=L({type:i});static \u0275inj=N({})}return i})();var fs=(()=>{class i{static withConfig(t){return{ngModule:i,providers:[{provide:di,useValue:t.callSetDisabledState??re}]}}static \u0275fac=function(e){return new(e||i)};static \u0275mod=L({type:i});static \u0275inj=N({imports:[fn]})}return i})();var pi=`
2
2
  *,
3
3
  ::before,
4
4
  ::after {
@@ -1 +1 @@
1
- import{c as l,d,h as p}from"./chunk-7VUEZZFJ.js";import{K as r,P as s,ga as o,tc as a}from"./chunk-ZYPXVXYF.js";import{a as c}from"./chunk-WCABR6TI.js";var S={triggerLabel:"Settings",triggerTooltip:"Settings",modalTitle:"Settings",closeLabel:"Close",sections:{plugins:"Plugins",general:"General",project:"Project",changelog:"Changelog",about:"About"},general:{heading:"General",intro:"Per-machine preferences.",loadErrorPrefix:"Could not load preferences:",saveErrorPrefix:"Could not save preferences:",toggles:{"updateCheck.enabled":{label:"Check for updates",description:"Check npm for newer @skill-map/cli releases."},telemetry:{label:"Send anonymous error & usage reports",description:"Report crashes and which features you use. No file contents or paths.",hint:"Restart sm for this to take effect."}},extraTheme:{label:"Theme",description:"Pick a specialty theme.",options:{none:{label:"None",description:"Use the topbar dark/light toggle."}}},storageHintLabel:"Settings are stored in:",storageHintPath:"~/.skill-map/settings.json"},project:{heading:"Project",introPrefix:"These settings apply only to this project and are saved in",introPath:".skill-map/settings.local.json",introSuffix:".",loadErrorPrefix:"Could not load project settings:",saveErrorPrefix:"Could not save project settings:",sidecarWritersLabel:"Allow sidecar writers",sidecarWritersDescription:"Lets actions create or edit the `.sm` annotation files next to your notes (version, tags, stability). Turn this off for a shared project to keep those files out of the repo: the setting is saved in the committed settings.json, so it applies to the whole team and cannot be overridden locally.",referencePathsLabel:"Folders for link validation",referencePathsDescription:"If your notes link to files outside this project, list those folders here. Skill-map checks them only to confirm the links work, nothing from these folders shows up in the map.",referencePathsPlaceholder:"~/Documents/research",referencePathsInputAriaLabel:"New folder path",commaForbidden:"Add one path at a time, without commas.",addPathLabel:"Add path",removePathLabel:"Remove",confirmDialogHeader:"Allow access to folders outside this project?",confirmDialogIntro:"This change lets the scan read files in:",confirmDialogAccept:"Allow access",confirmDialogReject:"Cancel",ignorePatternsLabel:"Ignored patterns",ignorePatternsDescriptionPrefix:"Patterns that exclude files and folders from the scan, stored in",ignorePatternsDescriptionFile:".skillmapignore",ignorePatternsDescriptionMiddle:"at the project root. Same syntax as",ignorePatternsDescriptionGitignore:".gitignore",ignorePatternsDescriptionSuffix:"(one pattern per line).",ignorePatternsPlaceholder:"secrets.md",ignorePatternsInputAriaLabel:"New ignore pattern",ignorePatternEmpty:"Pattern cannot be empty or whitespace-only.",ignorePatternHasControlChar:"Pattern must be a single line without control characters.",ignorePatternDuplicate:"This pattern is already in the list.",addIgnorePatternLabel:"Add pattern",removeIgnorePatternLabel:"Remove",activeProviderLabel:"Active provider",activeProviderDescription:"Selects which provider sees this project. The map reflects how the chosen provider interprets your files.",activeProviderSourceAutodetect:"Auto-detected from your files (no value saved yet).",activeProviderSourceNone:"No provider detected. Install or enable a provider to start.",activeProviderDetectedPrefix:"Detected:",activeProviderEmptyOption:"(none)",activeProviderDisabledSuffix:"(disabled)",activeProviderComingSoonSuffix:"(coming soon)",activeProviderConfirmHeader:"Switch the active provider?",activeProviderConfirmIntro:"Switching will clear the persisted scan (nodes, links, issues). Jobs and history are kept. You will need to run `sm scan` after the switch.",activeProviderConfirmAccept:"Switch and clear scan",activeProviderConfirmReject:"Cancel",activeProviderSwitchedPrefix:"Lens switched. Cleared",activeProviderSwitchedSuffix:"scan table(s). Run `sm scan` to repopulate.",activeProviderSwitchedNoDb:"Lens switched. Run `sm scan` to populate the map under the new lens."},changelogHeading:"Changelog",changelogIntro:"What's new in skill-map. Each entry covers a release of @skill-map/cli (the CLI + bundled UI) and lists the user-facing changes plus the workspace(s) each one affects.",changelogEmpty:"No release notes yet. Future releases will populate this list automatically from the changesets shipped in each PR.",changelogInternalRelease:"Internal release. Focus on stability, infra, and refactors. No user-facing changes this time.",changelogAffectedPackages:"Affected packages",changelogFooterText:"Want the full changelog?",changelogFooterLinkLabel:"See it on GitHub \u2192",changelogFooterUrl:"https://github.com/crystian/skill-map/blob/main/src/CHANGELOG.md",aboutHeading:"About",aboutIntro:"Version information for the running CLI / server.",aboutCliLabel:"skill-map CLI",aboutSpecLabel:"Spec version",aboutSchemaLabel:"Schema version",aboutFolderLabel:"Project folder",aboutDbLabel:"Project DB",aboutDbValue:(e,n)=>e==="present"?n:`${e} \xB7 ${n}`,aboutLoading:"Loading\u2026",aboutUnknown:"-",aboutErrorPrefix:"Could not read health endpoint:",aboutLinksHeading:"Links",aboutWebsiteLabel:"Website",aboutGithubLabel:"GitHub",aboutWebsiteUrl:"https://skill-map.ai/",aboutGithubUrl:"https://github.com/crystian/skill-map",aboutStarHeading:"Enjoying skill-map?",aboutStarBody:"If it's useful to you, drop us a star on GitHub, it helps a lot and keeps the project alive.",aboutStarCta:"Star on GitHub",aboutStarA11y:"Open the skill-map repository on GitHub to give it a star",pluginsHeading:"Plugins",pluginsIntro:"Enable or disable installed plugins.",pluginsSearchPlaceholder:"Filter by name\u2026",pluginsSearchA11y:"Filter plugins by name",pluginsSearchEmpty:e=>`No plugins match "${e}".`,pluginsKindFilterAll:"All",pluginsKindFilterOptionA11y:(e,n)=>n?`Show only ${e} extensions`:"Show all kinds",pluginsSourceFilterOptionA11y:(e,n)=>n?`Show only ${e} plugins`:"Show all sources",pluginsFilterA11y:"Filter plugins by source and kind",pluginsFilterAllA11y:"Show every plugin (clear the source and kind filters)",pluginsProjectEmpty:"No project plugins yet. Drop one under .skill-map/plugins/ or create it with sm plugins create <id>.",unsavedChangesMessage:e=>e===1?'1 unsaved change. Click "Apply" to persist it.':`${e} unsaved changes. Click "Apply" to persist them.`,startsAsDisabledRowHint:"This plugin started disabled and is not loaded in memory. Restart `sm serve` for the change to take effect.",startsAsDisabledFooterHint:"Some plugins were disabled when the server started. Consider restarting `sm serve` so they take effect.",discardChanges:"Discard",applyAndClose:"Apply",discardA11y:"Discard pending changes",applyA11y:"Apply pending changes and refresh the map",applyErrorPrefix:"Could not apply changes:",confirmCloseTitle:"Apply pending changes?",confirmCloseBody:e=>e===1?"You have 1 unsaved change.":`You have ${e} unsaved changes.`,keepEditing:"Keep editing",sourceBuiltIn:"Built-in",sourceProject:"Project",enabledLabel:"Enabled",disabledLabel:"Disabled",lockedLabel:"Locked",lockedTooltip:"Locked by the host (cannot be toggled).",expandLabel:"Show extensions",collapseLabel:"Hide extensions",stability:{experimental:"experimental",beta:"beta",deprecated:"deprecated",tooltip:"Lifecycle stage declared by the extension manifest."},runtimeErrors:{badge:e=>e===1?"1 runtime error":`${e} runtime errors`,badgeTooltip:"This plugin loaded fine, but some of its contributions were rejected during the last scan. Expand for details.",expandLabel:"Show runtime errors",collapseLabel:"Hide runtime errors",extensionPrefix:"Extension:",slotPrefix:"Slot:",contributionPrefix:"Contribution:",a11y:{toggle:(e,n)=>`Runtime errors for plugin ${e} (${n})`}},pluginSection:{navLabel:e=>e,intro:"Configure this plugin's options. Changes apply when you click Apply.",formA11y:e=>`Settings for ${e}`,sectionA11y:e=>`Settings for plugin ${e}`},statusFailure:{"incompatible-spec":"Incompatible spec version","invalid-manifest":"Invalid manifest","load-error":"Failed to load","id-collision":"Plugin id collision"},loading:"Loading plugins\u2026",empty:"No plugins installed.",errorPrefix:"Could not load plugins:",toggleErrorPrefix:"Toggle failed:",a11y:{triggerLabel:"Open settings",pluginToggle:(e,n)=>n?`Enable plugin ${e}`:`Disable plugin ${e}`,extensionToggle:(e,n)=>n?`Enable ${e}`:`Disable ${e}`,pluginRow:e=>`Plugin ${e} row`,extensionRow:e=>`Extension ${e} row`}};var y="#9ca3af",P="#6b7280",A=(()=>{class e{_entries=o([]);providers=this._entries.asReadonly();index=a(()=>{let t=new Map;for(let i of this._entries())t.set(i.id,i);return t});ingest(t){if(!t)return;let i=[];for(let[b,v]of Object.entries(t))i.push(c({id:b},v));k(this._entries(),i)||this._entries.set(i)}lookup(t){return this.index().get(t)}cardChip(t){if(!t)return null;let i=this.lookup(t);return i?i.hideChip?null:u(i):g(t)}lensChip(t){if(!t)return null;let i=this.lookup(t);return i?u(i):g(t)}static \u0275fac=function(i){return new(i||e)};static \u0275prov=r({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();function u(e){let n={label:e.label,color:e.color};return e.colorDark!==void 0&&(n.colorDark=e.colorDark),n}function g(e){return{label:e,color:y,colorDark:P}}function k(e,n){if(e.length!==n.length)return!1;for(let t=0;t<e.length;t++)if(JSON.stringify(e[t])!==JSON.stringify(n[t]))return!1;return!0}var f={available:"Update available",copiedLabel:"Copied!",tooltip:e=>`v${e} is available. Click to copy the install command.`,copyCommand:"npm i -g @skill-map/cli@latest",copiedTooltip:"Copied! Paste it in your terminal.",npmLinkUrl:"https://www.npmjs.com/package/@skill-map/cli",npmLinkTooltip:"Open on npm",npmLinkA11y:"Open the @skill-map/cli package page on npm",a11yLabel:e=>`Update available: version ${e}, click to copy the install command`,versionLabel:e=>`v${e}`,versionTooltip:e=>`skill-map CLI v${e}`,versionA11yLabel:e=>`Running version ${e}`,fetchFailed:e=>`UpdateCheckService: fetch failed (${e})`};var R=(()=>{class e{dataSource=s(l);status=o(null);isOutdated=a(()=>this.status()?.isOutdated===!0);latest=a(()=>this.status()?.latest??null);current=a(()=>this.status()?.current??null);async load(){try{let t=await this.dataSource.getUpdateStatus();this.status.set(t)}catch(t){let i=t instanceof Error?t.message:String(t);console.warn(f.fetchFailed(i))}}static \u0275fac=function(i){return new(i||e)};static \u0275prov=r({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();var m={scanFailed:e=>`scan-trigger failed: ${e}`};var M=(()=>{class e{dataSource=s(l);loader=s(p);scanning=o(!1);scanError=o(null);async run(){if(!this.scanning()){this.scanning.set(!0),this.scanError.set(null);try{await this.dataSource.runScan(),await this.loader.load()}catch(t){let i=t instanceof d||t instanceof Error?t.message:String(t);this.scanError.set(i),console.warn(m.scanFailed(i))}finally{this.scanning.set(!1)}}}static \u0275fac=function(i){return new(i||e)};static \u0275prov=r({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();export{A as a,f as b,R as c,S as d,M as e};
1
+ import{c as l,d,i as p}from"./chunk-IYC5ZW4L.js";import{K as r,P as s,ga as o,wc as a}from"./chunk-BJ6X6WBO.js";import{a as c}from"./chunk-WCABR6TI.js";var S={triggerLabel:"Settings",triggerTooltip:"Settings",modalTitle:"Settings",closeLabel:"Close",sections:{plugins:"Plugins",general:"General",project:"Project",changelog:"Changelog",about:"About"},general:{heading:"General",intro:"Per-machine preferences.",loadErrorPrefix:"Could not load preferences:",saveErrorPrefix:"Could not save preferences:",toggles:{"updateCheck.enabled":{label:"Check for updates",description:"Check npm for newer @skill-map/cli releases."},telemetry:{label:"Send anonymous error & usage reports",description:"Report crashes and which features you use. No file contents or paths.",hint:"Restart sm for this to take effect."}},extraTheme:{label:"Theme",description:"Pick a specialty theme.",options:{none:{label:"None",description:"Use the topbar dark/light toggle."}}},storageHintLabel:"Settings are stored in:",storageHintPath:"~/.skill-map/settings.json"},project:{heading:"Project",introPrefix:"These settings apply only to this project and are saved in",introPath:".skill-map/settings.local.json",introSuffix:".",loadErrorPrefix:"Could not load project settings:",saveErrorPrefix:"Could not save project settings:",sidecarWritersLabel:"Allow sidecar writers",sidecarWritersDescription:"Lets actions create or edit the `.sm` annotation files next to your notes (version, tags, stability). Turn this off for a shared project to keep those files out of the repo: the setting is saved in the committed settings.json, so it applies to the whole team and cannot be overridden locally.",referencePathsLabel:"Folders for link validation",referencePathsDescription:"If your notes link to files outside this project, list those folders here. Skill-map checks them only to confirm the links work, nothing from these folders shows up in the map.",referencePathsPlaceholder:"~/Documents/research",referencePathsInputAriaLabel:"New folder path",commaForbidden:"Add one path at a time, without commas.",addPathLabel:"Add path",removePathLabel:"Remove",confirmDialogHeader:"Allow access to folders outside this project?",confirmDialogIntro:"This change lets the scan read files in:",confirmDialogAccept:"Allow access",confirmDialogReject:"Cancel",ignorePatternsLabel:"Ignored patterns",ignorePatternsDescriptionPrefix:"Patterns that exclude files and folders from the scan, stored in",ignorePatternsDescriptionFile:".skillmapignore",ignorePatternsDescriptionMiddle:"at the project root. Same syntax as",ignorePatternsDescriptionGitignore:".gitignore",ignorePatternsDescriptionSuffix:"(one pattern per line).",ignorePatternsPlaceholder:"secrets.md",ignorePatternsInputAriaLabel:"New ignore pattern",ignorePatternEmpty:"Pattern cannot be empty or whitespace-only.",ignorePatternHasControlChar:"Pattern must be a single line without control characters.",ignorePatternDuplicate:"This pattern is already in the list.",addIgnorePatternLabel:"Add pattern",removeIgnorePatternLabel:"Remove",activeProviderLabel:"Active provider",activeProviderDescription:"Selects which provider sees this project. The map reflects how the chosen provider interprets your files.",activeProviderSourceAutodetect:"Auto-detected from your files (no value saved yet).",activeProviderSourceNone:"No provider detected. Install or enable a provider to start.",activeProviderDetectedPrefix:"Detected:",activeProviderEmptyOption:"(none)",activeProviderDisabledSuffix:"(disabled)",activeProviderComingSoonSuffix:"(coming soon)",activeProviderConfirmHeader:"Switch the active provider?",activeProviderConfirmIntro:"Switching will clear the persisted scan (nodes, links, issues). Jobs and history are kept. You will need to run `sm scan` after the switch.",activeProviderConfirmAccept:"Switch and clear scan",activeProviderConfirmReject:"Cancel",activeProviderSwitchedPrefix:"Lens switched. Cleared",activeProviderSwitchedSuffix:"scan table(s). Run `sm scan` to repopulate.",activeProviderSwitchedNoDb:"Lens switched. Run `sm scan` to populate the map under the new lens."},changelogHeading:"Changelog",changelogIntro:"What's new in skill-map. Each entry covers a release of @skill-map/cli (the CLI + bundled UI) and lists the user-facing changes plus the workspace(s) each one affects.",changelogEmpty:"No release notes yet. Future releases will populate this list automatically from the changesets shipped in each PR.",changelogInternalRelease:"Internal release. Focus on stability, infra, and refactors. No user-facing changes this time.",changelogAffectedPackages:"Affected packages",changelogFooterText:"Want the full changelog?",changelogFooterLinkLabel:"See it on GitHub \u2192",changelogFooterUrl:"https://github.com/crystian/skill-map/blob/main/src/CHANGELOG.md",aboutHeading:"About",aboutIntro:"Version information for the running CLI / server.",aboutCliLabel:"skill-map CLI",aboutSpecLabel:"Spec version",aboutSchemaLabel:"Schema version",aboutFolderLabel:"Project folder",aboutDbLabel:"Project DB",aboutDbValue:(e,n)=>e==="present"?n:`${e} \xB7 ${n}`,aboutLoading:"Loading\u2026",aboutUnknown:"-",aboutErrorPrefix:"Could not read health endpoint:",aboutLinksHeading:"Links",aboutWebsiteLabel:"Website",aboutGithubLabel:"GitHub",aboutWebsiteUrl:"https://skill-map.ai/",aboutGithubUrl:"https://github.com/crystian/skill-map",aboutStarHeading:"Enjoying skill-map?",aboutStarBody:"If it's useful to you, drop us a star on GitHub, it helps a lot and keeps the project alive.",aboutStarCta:"Star on GitHub",aboutStarA11y:"Open the skill-map repository on GitHub to give it a star",pluginsHeading:"Plugins",pluginsIntro:"Enable or disable installed plugins.",pluginsSearchPlaceholder:"Filter by name\u2026",pluginsSearchA11y:"Filter plugins by name",pluginsSearchEmpty:e=>`No plugins match "${e}".`,pluginsKindFilterAll:"All",pluginsKindFilterOptionA11y:(e,n)=>n?`Show only ${e} extensions`:"Show all kinds",pluginsSourceFilterOptionA11y:(e,n)=>n?`Show only ${e} plugins`:"Show all sources",pluginsFilterA11y:"Filter plugins by source and kind",pluginsFilterAllA11y:"Show every plugin (clear the source and kind filters)",pluginsProjectEmpty:"No project plugins yet. Drop one under .skill-map/plugins/ or create it with sm plugins create <id>.",unsavedChangesMessage:e=>e===1?'1 unsaved change. Click "Apply" to persist it.':`${e} unsaved changes. Click "Apply" to persist them.`,startsAsDisabledRowHint:"This plugin started disabled and is not loaded in memory. Restart `sm serve` for the change to take effect.",startsAsDisabledFooterHint:"Some plugins were disabled when the server started. Consider restarting `sm serve` so they take effect.",discardChanges:"Discard",applyAndClose:"Apply",discardA11y:"Discard pending changes",applyA11y:"Apply pending changes and refresh the map",applyErrorPrefix:"Could not apply changes:",confirmCloseTitle:"Apply pending changes?",confirmCloseBody:e=>e===1?"You have 1 unsaved change.":`You have ${e} unsaved changes.`,keepEditing:"Keep editing",sourceBuiltIn:"Built-in",sourceProject:"Project",enabledLabel:"Enabled",disabledLabel:"Disabled",lockedLabel:"Locked",lockedTooltip:"Locked by the host (cannot be toggled).",expandLabel:"Show extensions",collapseLabel:"Hide extensions",stability:{experimental:"experimental",beta:"beta",deprecated:"deprecated",tooltip:"Lifecycle stage declared by the extension manifest."},runtimeErrors:{badge:e=>e===1?"1 runtime error":`${e} runtime errors`,badgeTooltip:"This plugin loaded fine, but some of its contributions were rejected during the last scan. Expand for details.",expandLabel:"Show runtime errors",collapseLabel:"Hide runtime errors",extensionPrefix:"Extension:",slotPrefix:"Slot:",contributionPrefix:"Contribution:",a11y:{toggle:(e,n)=>`Runtime errors for plugin ${e} (${n})`}},pluginSection:{navLabel:e=>e,intro:"Configure this plugin's options. Changes apply when you click Apply.",formA11y:e=>`Settings for ${e}`,sectionA11y:e=>`Settings for plugin ${e}`},statusFailure:{"incompatible-spec":"Incompatible spec version","invalid-manifest":"Invalid manifest","load-error":"Failed to load","id-collision":"Plugin id collision"},loading:"Loading plugins\u2026",empty:"No plugins installed.",errorPrefix:"Could not load plugins:",toggleErrorPrefix:"Toggle failed:",a11y:{triggerLabel:"Open settings",pluginToggle:(e,n)=>n?`Enable plugin ${e}`:`Disable plugin ${e}`,extensionToggle:(e,n)=>n?`Enable ${e}`:`Disable ${e}`,pluginRow:e=>`Plugin ${e} row`,extensionRow:e=>`Extension ${e} row`}};var y="#9ca3af",P="#6b7280",A=(()=>{class e{_entries=o([]);providers=this._entries.asReadonly();index=a(()=>{let t=new Map;for(let i of this._entries())t.set(i.id,i);return t});ingest(t){if(!t)return;let i=[];for(let[b,v]of Object.entries(t))i.push(c({id:b},v));k(this._entries(),i)||this._entries.set(i)}lookup(t){return this.index().get(t)}cardChip(t){if(!t)return null;let i=this.lookup(t);return i?i.hideChip?null:u(i):g(t)}lensChip(t){if(!t)return null;let i=this.lookup(t);return i?u(i):g(t)}static \u0275fac=function(i){return new(i||e)};static \u0275prov=r({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();function u(e){let n={label:e.label,color:e.color};return e.colorDark!==void 0&&(n.colorDark=e.colorDark),n}function g(e){return{label:e,color:y,colorDark:P}}function k(e,n){if(e.length!==n.length)return!1;for(let t=0;t<e.length;t++)if(JSON.stringify(e[t])!==JSON.stringify(n[t]))return!1;return!0}var f={available:"Update available",copiedLabel:"Copied!",tooltip:e=>`v${e} is available. Click to copy the install command.`,copyCommand:"npm i -g @skill-map/cli@latest",copiedTooltip:"Copied! Paste it in your terminal.",npmLinkUrl:"https://www.npmjs.com/package/@skill-map/cli",npmLinkTooltip:"Open on npm",npmLinkA11y:"Open the @skill-map/cli package page on npm",a11yLabel:e=>`Update available: version ${e}, click to copy the install command`,versionLabel:e=>`v${e}`,versionTooltip:e=>`skill-map CLI v${e}`,versionA11yLabel:e=>`Running version ${e}`,fetchFailed:e=>`UpdateCheckService: fetch failed (${e})`};var R=(()=>{class e{dataSource=s(l);status=o(null);isOutdated=a(()=>this.status()?.isOutdated===!0);latest=a(()=>this.status()?.latest??null);current=a(()=>this.status()?.current??null);async load(){try{let t=await this.dataSource.getUpdateStatus();this.status.set(t)}catch(t){let i=t instanceof Error?t.message:String(t);console.warn(f.fetchFailed(i))}}static \u0275fac=function(i){return new(i||e)};static \u0275prov=r({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();var m={scanFailed:e=>`scan-trigger failed: ${e}`};var M=(()=>{class e{dataSource=s(l);loader=s(p);scanning=o(!1);scanError=o(null);async run(){if(!this.scanning()){this.scanning.set(!0),this.scanError.set(null);try{await this.dataSource.runScan(),await this.loader.load()}catch(t){let i=t instanceof d||t instanceof Error?t.message:String(t);this.scanError.set(i),console.warn(m.scanFailed(i))}finally{this.scanning.set(!1)}}}static \u0275fac=function(i){return new(i||e)};static \u0275prov=r({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();export{A as a,f as b,R as c,S as d,M as e};
@@ -1,4 +1,4 @@
1
- import{b as Ue}from"./chunk-JTCIY3SL.js";import{h as Ge,n as Ke,o as Je}from"./chunk-4N3NRZEH.js";import{D as qe,E as ge,F as fe,J as N,N as ie,a as F,g as Ye,j as Qe,k as ee,l as he,m as je,v as We,w as te,x as Y}from"./chunk-HQ6M2HXK.js";import{f as Be,i as He,j as Oe,k as Ae,l as Pe,p as X}from"./chunk-MGWGV4VD.js";import{$a as p,Ab as P,Bb as R,Cb as $,Fb as L,Fc as c,Gb as W,Gc as K,Ha as r,Hb as S,Jb as l,K as be,Kb as Ie,L as ne,Lb as le,Mb as we,N as xe,Nb as Me,Ob as h,P as b,Pb as g,Tb as De,Ub as ke,V as m,W as _,Wa as V,Wb as re,X as z,Xa as oe,Xb as C,Ya as ze,Yb as Le,Za as Ee,Zb as Se,_ as ye,_a as I,ba as E,ca as ve,ga as j,hc as Fe,jc as Ve,ka as x,kb as y,nb as ae,ob as se,pa as Te,qc as q,tb as a,tc as G,ub as u,vb as f,vc as U,wb as B,xb as H,yb as O,zb as A}from"./chunk-ZYPXVXYF.js";import{A as Xe,C as J,O as ue,a as Re,d as de,h as pe,l as ce,m as me,p as Ne,r as Ze,v as _e,x as $e}from"./chunk-4SG4352Z.js";import{a as k}from"./chunk-WCABR6TI.js";var rt=["data-p-icon","window-maximize"],et=(()=>{class t extends ie{pathId;onInit(){this.pathId="url(#"+F()+")"}static \u0275fac=(()=>{let e;return function(n){return(e||(e=x(t)))(n||t)}})();static \u0275cmp=V({type:t,selectors:[["","data-p-icon","window-maximize"]],features:[I],attrs:rt,decls:5,vars:2,consts:[["fill-rule","evenodd","clip-rule","evenodd","d","M7 14H11.8C12.3835 14 12.9431 13.7682 13.3556 13.3556C13.7682 12.9431 14 12.3835 14 11.8V2.2C14 1.61652 13.7682 1.05694 13.3556 0.644365C12.9431 0.231785 12.3835 0 11.8 0H2.2C1.61652 0 1.05694 0.231785 0.644365 0.644365C0.231785 1.05694 0 1.61652 0 2.2V7C0 7.15913 0.063214 7.31174 0.175736 7.42426C0.288258 7.53679 0.44087 7.6 0.6 7.6C0.75913 7.6 0.911742 7.53679 1.02426 7.42426C1.13679 7.31174 1.2 7.15913 1.2 7V2.2C1.2 1.93478 1.30536 1.68043 1.49289 1.49289C1.68043 1.30536 1.93478 1.2 2.2 1.2H11.8C12.0652 1.2 12.3196 1.30536 12.5071 1.49289C12.6946 1.68043 12.8 1.93478 12.8 2.2V11.8C12.8 12.0652 12.6946 12.3196 12.5071 12.5071C12.3196 12.6946 12.0652 12.8 11.8 12.8H7C6.84087 12.8 6.68826 12.8632 6.57574 12.9757C6.46321 13.0883 6.4 13.2409 6.4 13.4C6.4 13.5591 6.46321 13.7117 6.57574 13.8243C6.68826 13.9368 6.84087 14 7 14ZM9.77805 7.42192C9.89013 7.534 10.0415 7.59788 10.2 7.59995C10.3585 7.59788 10.5099 7.534 10.622 7.42192C10.7341 7.30985 10.798 7.15844 10.8 6.99995V3.94242C10.8066 3.90505 10.8096 3.86689 10.8089 3.82843C10.8079 3.77159 10.7988 3.7157 10.7824 3.6623C10.756 3.55552 10.701 3.45698 10.622 3.37798C10.5099 3.2659 10.3585 3.20202 10.2 3.19995H7.00002C6.84089 3.19995 6.68828 3.26317 6.57576 3.37569C6.46324 3.48821 6.40002 3.64082 6.40002 3.79995C6.40002 3.95908 6.46324 4.11169 6.57576 4.22422C6.68828 4.33674 6.84089 4.39995 7.00002 4.39995H8.80006L6.19997 7.00005C6.10158 7.11005 6.04718 7.25246 6.04718 7.40005C6.04718 7.54763 6.10158 7.69004 6.19997 7.80005C6.30202 7.91645 6.44561 7.98824 6.59997 8.00005C6.75432 7.98824 6.89791 7.91645 6.99997 7.80005L9.60002 5.26841V6.99995C9.6021 7.15844 9.66598 7.30985 9.77805 7.42192ZM1.4 14H3.8C4.17066 13.9979 4.52553 13.8498 4.78763 13.5877C5.04973 13.3256 5.1979 12.9707 5.2 12.6V10.2C5.1979 9.82939 5.04973 9.47452 4.78763 9.21242C4.52553 8.95032 4.17066 8.80215 3.8 8.80005H1.4C1.02934 8.80215 0.674468 8.95032 0.412371 9.21242C0.150274 9.47452 0.00210008 9.82939 0 10.2V12.6C0.00210008 12.9707 0.150274 13.3256 0.412371 13.5877C0.674468 13.8498 1.02934 13.9979 1.4 14ZM1.25858 10.0586C1.29609 10.0211 1.34696 10 1.4 10H3.8C3.85304 10 3.90391 10.0211 3.94142 10.0586C3.97893 10.0961 4 10.147 4 10.2V12.6C4 12.6531 3.97893 12.704 3.94142 12.7415C3.90391 12.779 3.85304 12.8 3.8 12.8H1.4C1.34696 12.8 1.29609 12.779 1.25858 12.7415C1.22107 12.704 1.2 12.6531 1.2 12.6V10.2C1.2 10.147 1.22107 10.0961 1.25858 10.0586Z","fill","currentColor"],[3,"id"],["width","14","height","14","fill","white"]],template:function(i,n){i&1&&(z(),H(0,"g"),A(1,"path",0),O(),H(2,"defs")(3,"clipPath",1),A(4,"rect",2),O()()),i&2&&(y("clip-path",n.pathId),r(3),W("id",n.pathId))},encapsulation:2})}return t})();var dt=["data-p-icon","window-minimize"],tt=(()=>{class t extends ie{pathId;onInit(){this.pathId="url(#"+F()+")"}static \u0275fac=(()=>{let e;return function(n){return(e||(e=x(t)))(n||t)}})();static \u0275cmp=V({type:t,selectors:[["","data-p-icon","window-minimize"]],features:[I],attrs:dt,decls:5,vars:2,consts:[["fill-rule","evenodd","clip-rule","evenodd","d","M11.8 0H2.2C1.61652 0 1.05694 0.231785 0.644365 0.644365C0.231785 1.05694 0 1.61652 0 2.2V7C0 7.15913 0.063214 7.31174 0.175736 7.42426C0.288258 7.53679 0.44087 7.6 0.6 7.6C0.75913 7.6 0.911742 7.53679 1.02426 7.42426C1.13679 7.31174 1.2 7.15913 1.2 7V2.2C1.2 1.93478 1.30536 1.68043 1.49289 1.49289C1.68043 1.30536 1.93478 1.2 2.2 1.2H11.8C12.0652 1.2 12.3196 1.30536 12.5071 1.49289C12.6946 1.68043 12.8 1.93478 12.8 2.2V11.8C12.8 12.0652 12.6946 12.3196 12.5071 12.5071C12.3196 12.6946 12.0652 12.8 11.8 12.8H7C6.84087 12.8 6.68826 12.8632 6.57574 12.9757C6.46321 13.0883 6.4 13.2409 6.4 13.4C6.4 13.5591 6.46321 13.7117 6.57574 13.8243C6.68826 13.9368 6.84087 14 7 14H11.8C12.3835 14 12.9431 13.7682 13.3556 13.3556C13.7682 12.9431 14 12.3835 14 11.8V2.2C14 1.61652 13.7682 1.05694 13.3556 0.644365C12.9431 0.231785 12.3835 0 11.8 0ZM6.368 7.952C6.44137 7.98326 6.52025 7.99958 6.6 8H9.8C9.95913 8 10.1117 7.93678 10.2243 7.82426C10.3368 7.71174 10.4 7.55913 10.4 7.4C10.4 7.24087 10.3368 7.08826 10.2243 6.97574C10.1117 6.86321 9.95913 6.8 9.8 6.8H8.048L10.624 4.224C10.73 4.11026 10.7877 3.95982 10.7849 3.80438C10.7822 3.64894 10.7192 3.50063 10.6093 3.3907C10.4994 3.28077 10.3511 3.2178 10.1956 3.21506C10.0402 3.21232 9.88974 3.27002 9.776 3.376L7.2 5.952V4.2C7.2 4.04087 7.13679 3.88826 7.02426 3.77574C6.91174 3.66321 6.75913 3.6 6.6 3.6C6.44087 3.6 6.28826 3.66321 6.17574 3.77574C6.06321 3.88826 6 4.04087 6 4.2V7.4C6.00042 7.47975 6.01674 7.55862 6.048 7.632C6.07656 7.70442 6.11971 7.7702 6.17475 7.82524C6.2298 7.88029 6.29558 7.92344 6.368 7.952ZM1.4 8.80005H3.8C4.17066 8.80215 4.52553 8.95032 4.78763 9.21242C5.04973 9.47452 5.1979 9.82939 5.2 10.2V12.6C5.1979 12.9707 5.04973 13.3256 4.78763 13.5877C4.52553 13.8498 4.17066 13.9979 3.8 14H1.4C1.02934 13.9979 0.674468 13.8498 0.412371 13.5877C0.150274 13.3256 0.00210008 12.9707 0 12.6V10.2C0.00210008 9.82939 0.150274 9.47452 0.412371 9.21242C0.674468 8.95032 1.02934 8.80215 1.4 8.80005ZM3.94142 12.7415C3.97893 12.704 4 12.6531 4 12.6V10.2C4 10.147 3.97893 10.0961 3.94142 10.0586C3.90391 10.0211 3.85304 10 3.8 10H1.4C1.34696 10 1.29609 10.0211 1.25858 10.0586C1.22107 10.0961 1.2 10.147 1.2 10.2V12.6C1.2 12.6531 1.22107 12.704 1.25858 12.7415C1.29609 12.779 1.34696 12.8 1.4 12.8H3.8C3.85304 12.8 3.90391 12.779 3.94142 12.7415Z","fill","currentColor"],[3,"id"],["width","14","height","14","fill","white"]],template:function(i,n){i&1&&(z(),H(0,"g"),A(1,"path",0),O(),H(2,"defs")(3,"clipPath",1),A(4,"rect",2),O()()),i&2&&(y("clip-path",n.pathId),r(3),W("id",n.pathId))},encapsulation:2})}return t})();var it=(()=>{class t extends te{pFocusTrapDisabled=!1;platformId=b(Te);document=b(ye);firstHiddenFocusableElement;lastHiddenFocusableElement;onInit(){X(this.platformId)&&!this.pFocusTrapDisabled&&!this.firstHiddenFocusableElement&&!this.lastHiddenFocusableElement&&this.createHiddenFocusableElements()}onChanges(e){e.pFocusTrapDisabled&&X(this.platformId)&&(e.pFocusTrapDisabled.currentValue?this.removeHiddenFocusableElements():this.createHiddenFocusableElements())}removeHiddenFocusableElements(){this.firstHiddenFocusableElement&&this.firstHiddenFocusableElement.parentNode&&this.firstHiddenFocusableElement.parentNode.removeChild(this.firstHiddenFocusableElement),this.lastHiddenFocusableElement&&this.lastHiddenFocusableElement.parentNode&&this.lastHiddenFocusableElement.parentNode.removeChild(this.lastHiddenFocusableElement)}getComputedSelector(e){return`:not(.p-hidden-focusable):not([data-p-hidden-focusable="true"])${e??""}`}createHiddenFocusableElements(){let i=n=>Ze("span",{class:"p-hidden-accessible p-hidden-focusable",tabindex:"0",role:"presentation","aria-hidden":!0,"data-p-hidden-accessible":!0,"data-p-hidden-focusable":!0,onFocus:n?.bind(this)});this.firstHiddenFocusableElement=i(this.onFirstHiddenElementFocus),this.lastHiddenFocusableElement=i(this.onLastHiddenElementFocus),this.firstHiddenFocusableElement.setAttribute("data-pc-section","firstfocusableelement"),this.lastHiddenFocusableElement.setAttribute("data-pc-section","lastfocusableelement"),this.el.nativeElement.prepend(this.firstHiddenFocusableElement),this.el.nativeElement.append(this.lastHiddenFocusableElement)}onFirstHiddenElementFocus(e){let{currentTarget:i,relatedTarget:n}=e,o=n===this.lastHiddenFocusableElement||!this.el.nativeElement?.contains(n)?$e(i.parentElement,":not(.p-hidden-focusable)"):this.lastHiddenFocusableElement;_e(o)}onLastHiddenElementFocus(e){let{currentTarget:i,relatedTarget:n}=e,o=n===this.firstHiddenFocusableElement||!this.el.nativeElement?.contains(n)?Xe(i.parentElement,":not(.p-hidden-focusable)"):this.firstHiddenFocusableElement;_e(o)}static \u0275fac=(()=>{let e;return function(n){return(e||(e=x(t)))(n||t)}})();static \u0275dir=ze({type:t,selectors:[["","pFocusTrap",""]],inputs:{pFocusTrapDisabled:[2,"pFocusTrapDisabled","pFocusTrapDisabled",c]},features:[I]})}return t})();var nt=`
1
+ import{b as Ue}from"./chunk-FC22ZJQZ.js";import{h as Ge,n as Ke,o as Je}from"./chunk-276RLZR4.js";import{D as qe,E as ge,F as fe,J as N,N as ie,a as F,g as Ye,j as Qe,k as ee,l as he,m as je,v as We,w as te,x as Y}from"./chunk-LPDD2DHE.js";import{f as Be,i as He,j as Oe,k as Ae,l as Pe,p as X}from"./chunk-34ZZDYNQ.js";import{A as Xe,C as J,O as ue,a as Re,d as de,h as pe,l as ce,m as me,p as Ne,r as Ze,v as _e,x as $e}from"./chunk-4SG4352Z.js";import{$a as ze,$b as Le,Ab as H,Bb as O,Cb as A,Db as P,Eb as R,Fb as $,Ib as L,Ic as c,Ja as r,Jb as W,Jc as K,K as be,Kb as S,L as ne,Mb as l,N as xe,Nb as Ie,Ob as le,P as b,Pb as we,Qb as Me,Rb as h,Sb as g,V as m,W as _,Wb as De,X as z,Xb as ke,Za as V,Zb as re,_ as ye,_a as oe,_b as C,ab as Ee,ac as Se,ba as E,bb as I,ca as ve,cb as p,ga as j,kc as Fe,la as x,mc as Ve,nb as y,qa as Te,qb as ae,rb as se,tc as q,wb as a,wc as G,xb as u,yb as f,yc as U,zb as B}from"./chunk-BJ6X6WBO.js";import{a as k}from"./chunk-WCABR6TI.js";var rt=["data-p-icon","window-maximize"],et=(()=>{class t extends ie{pathId;onInit(){this.pathId="url(#"+F()+")"}static \u0275fac=(()=>{let e;return function(n){return(e||(e=x(t)))(n||t)}})();static \u0275cmp=V({type:t,selectors:[["","data-p-icon","window-maximize"]],features:[I],attrs:rt,decls:5,vars:2,consts:[["fill-rule","evenodd","clip-rule","evenodd","d","M7 14H11.8C12.3835 14 12.9431 13.7682 13.3556 13.3556C13.7682 12.9431 14 12.3835 14 11.8V2.2C14 1.61652 13.7682 1.05694 13.3556 0.644365C12.9431 0.231785 12.3835 0 11.8 0H2.2C1.61652 0 1.05694 0.231785 0.644365 0.644365C0.231785 1.05694 0 1.61652 0 2.2V7C0 7.15913 0.063214 7.31174 0.175736 7.42426C0.288258 7.53679 0.44087 7.6 0.6 7.6C0.75913 7.6 0.911742 7.53679 1.02426 7.42426C1.13679 7.31174 1.2 7.15913 1.2 7V2.2C1.2 1.93478 1.30536 1.68043 1.49289 1.49289C1.68043 1.30536 1.93478 1.2 2.2 1.2H11.8C12.0652 1.2 12.3196 1.30536 12.5071 1.49289C12.6946 1.68043 12.8 1.93478 12.8 2.2V11.8C12.8 12.0652 12.6946 12.3196 12.5071 12.5071C12.3196 12.6946 12.0652 12.8 11.8 12.8H7C6.84087 12.8 6.68826 12.8632 6.57574 12.9757C6.46321 13.0883 6.4 13.2409 6.4 13.4C6.4 13.5591 6.46321 13.7117 6.57574 13.8243C6.68826 13.9368 6.84087 14 7 14ZM9.77805 7.42192C9.89013 7.534 10.0415 7.59788 10.2 7.59995C10.3585 7.59788 10.5099 7.534 10.622 7.42192C10.7341 7.30985 10.798 7.15844 10.8 6.99995V3.94242C10.8066 3.90505 10.8096 3.86689 10.8089 3.82843C10.8079 3.77159 10.7988 3.7157 10.7824 3.6623C10.756 3.55552 10.701 3.45698 10.622 3.37798C10.5099 3.2659 10.3585 3.20202 10.2 3.19995H7.00002C6.84089 3.19995 6.68828 3.26317 6.57576 3.37569C6.46324 3.48821 6.40002 3.64082 6.40002 3.79995C6.40002 3.95908 6.46324 4.11169 6.57576 4.22422C6.68828 4.33674 6.84089 4.39995 7.00002 4.39995H8.80006L6.19997 7.00005C6.10158 7.11005 6.04718 7.25246 6.04718 7.40005C6.04718 7.54763 6.10158 7.69004 6.19997 7.80005C6.30202 7.91645 6.44561 7.98824 6.59997 8.00005C6.75432 7.98824 6.89791 7.91645 6.99997 7.80005L9.60002 5.26841V6.99995C9.6021 7.15844 9.66598 7.30985 9.77805 7.42192ZM1.4 14H3.8C4.17066 13.9979 4.52553 13.8498 4.78763 13.5877C5.04973 13.3256 5.1979 12.9707 5.2 12.6V10.2C5.1979 9.82939 5.04973 9.47452 4.78763 9.21242C4.52553 8.95032 4.17066 8.80215 3.8 8.80005H1.4C1.02934 8.80215 0.674468 8.95032 0.412371 9.21242C0.150274 9.47452 0.00210008 9.82939 0 10.2V12.6C0.00210008 12.9707 0.150274 13.3256 0.412371 13.5877C0.674468 13.8498 1.02934 13.9979 1.4 14ZM1.25858 10.0586C1.29609 10.0211 1.34696 10 1.4 10H3.8C3.85304 10 3.90391 10.0211 3.94142 10.0586C3.97893 10.0961 4 10.147 4 10.2V12.6C4 12.6531 3.97893 12.704 3.94142 12.7415C3.90391 12.779 3.85304 12.8 3.8 12.8H1.4C1.34696 12.8 1.29609 12.779 1.25858 12.7415C1.22107 12.704 1.2 12.6531 1.2 12.6V10.2C1.2 10.147 1.22107 10.0961 1.25858 10.0586Z","fill","currentColor"],[3,"id"],["width","14","height","14","fill","white"]],template:function(i,n){i&1&&(z(),H(0,"g"),A(1,"path",0),O(),H(2,"defs")(3,"clipPath",1),A(4,"rect",2),O()()),i&2&&(y("clip-path",n.pathId),r(3),W("id",n.pathId))},encapsulation:2})}return t})();var dt=["data-p-icon","window-minimize"],tt=(()=>{class t extends ie{pathId;onInit(){this.pathId="url(#"+F()+")"}static \u0275fac=(()=>{let e;return function(n){return(e||(e=x(t)))(n||t)}})();static \u0275cmp=V({type:t,selectors:[["","data-p-icon","window-minimize"]],features:[I],attrs:dt,decls:5,vars:2,consts:[["fill-rule","evenodd","clip-rule","evenodd","d","M11.8 0H2.2C1.61652 0 1.05694 0.231785 0.644365 0.644365C0.231785 1.05694 0 1.61652 0 2.2V7C0 7.15913 0.063214 7.31174 0.175736 7.42426C0.288258 7.53679 0.44087 7.6 0.6 7.6C0.75913 7.6 0.911742 7.53679 1.02426 7.42426C1.13679 7.31174 1.2 7.15913 1.2 7V2.2C1.2 1.93478 1.30536 1.68043 1.49289 1.49289C1.68043 1.30536 1.93478 1.2 2.2 1.2H11.8C12.0652 1.2 12.3196 1.30536 12.5071 1.49289C12.6946 1.68043 12.8 1.93478 12.8 2.2V11.8C12.8 12.0652 12.6946 12.3196 12.5071 12.5071C12.3196 12.6946 12.0652 12.8 11.8 12.8H7C6.84087 12.8 6.68826 12.8632 6.57574 12.9757C6.46321 13.0883 6.4 13.2409 6.4 13.4C6.4 13.5591 6.46321 13.7117 6.57574 13.8243C6.68826 13.9368 6.84087 14 7 14H11.8C12.3835 14 12.9431 13.7682 13.3556 13.3556C13.7682 12.9431 14 12.3835 14 11.8V2.2C14 1.61652 13.7682 1.05694 13.3556 0.644365C12.9431 0.231785 12.3835 0 11.8 0ZM6.368 7.952C6.44137 7.98326 6.52025 7.99958 6.6 8H9.8C9.95913 8 10.1117 7.93678 10.2243 7.82426C10.3368 7.71174 10.4 7.55913 10.4 7.4C10.4 7.24087 10.3368 7.08826 10.2243 6.97574C10.1117 6.86321 9.95913 6.8 9.8 6.8H8.048L10.624 4.224C10.73 4.11026 10.7877 3.95982 10.7849 3.80438C10.7822 3.64894 10.7192 3.50063 10.6093 3.3907C10.4994 3.28077 10.3511 3.2178 10.1956 3.21506C10.0402 3.21232 9.88974 3.27002 9.776 3.376L7.2 5.952V4.2C7.2 4.04087 7.13679 3.88826 7.02426 3.77574C6.91174 3.66321 6.75913 3.6 6.6 3.6C6.44087 3.6 6.28826 3.66321 6.17574 3.77574C6.06321 3.88826 6 4.04087 6 4.2V7.4C6.00042 7.47975 6.01674 7.55862 6.048 7.632C6.07656 7.70442 6.11971 7.7702 6.17475 7.82524C6.2298 7.88029 6.29558 7.92344 6.368 7.952ZM1.4 8.80005H3.8C4.17066 8.80215 4.52553 8.95032 4.78763 9.21242C5.04973 9.47452 5.1979 9.82939 5.2 10.2V12.6C5.1979 12.9707 5.04973 13.3256 4.78763 13.5877C4.52553 13.8498 4.17066 13.9979 3.8 14H1.4C1.02934 13.9979 0.674468 13.8498 0.412371 13.5877C0.150274 13.3256 0.00210008 12.9707 0 12.6V10.2C0.00210008 9.82939 0.150274 9.47452 0.412371 9.21242C0.674468 8.95032 1.02934 8.80215 1.4 8.80005ZM3.94142 12.7415C3.97893 12.704 4 12.6531 4 12.6V10.2C4 10.147 3.97893 10.0961 3.94142 10.0586C3.90391 10.0211 3.85304 10 3.8 10H1.4C1.34696 10 1.29609 10.0211 1.25858 10.0586C1.22107 10.0961 1.2 10.147 1.2 10.2V12.6C1.2 12.6531 1.22107 12.704 1.25858 12.7415C1.29609 12.779 1.34696 12.8 1.4 12.8H3.8C3.85304 12.8 3.90391 12.779 3.94142 12.7415Z","fill","currentColor"],[3,"id"],["width","14","height","14","fill","white"]],template:function(i,n){i&1&&(z(),H(0,"g"),A(1,"path",0),O(),H(2,"defs")(3,"clipPath",1),A(4,"rect",2),O()()),i&2&&(y("clip-path",n.pathId),r(3),W("id",n.pathId))},encapsulation:2})}return t})();var it=(()=>{class t extends te{pFocusTrapDisabled=!1;platformId=b(Te);document=b(ye);firstHiddenFocusableElement;lastHiddenFocusableElement;onInit(){X(this.platformId)&&!this.pFocusTrapDisabled&&!this.firstHiddenFocusableElement&&!this.lastHiddenFocusableElement&&this.createHiddenFocusableElements()}onChanges(e){e.pFocusTrapDisabled&&X(this.platformId)&&(e.pFocusTrapDisabled.currentValue?this.removeHiddenFocusableElements():this.createHiddenFocusableElements())}removeHiddenFocusableElements(){this.firstHiddenFocusableElement&&this.firstHiddenFocusableElement.parentNode&&this.firstHiddenFocusableElement.parentNode.removeChild(this.firstHiddenFocusableElement),this.lastHiddenFocusableElement&&this.lastHiddenFocusableElement.parentNode&&this.lastHiddenFocusableElement.parentNode.removeChild(this.lastHiddenFocusableElement)}getComputedSelector(e){return`:not(.p-hidden-focusable):not([data-p-hidden-focusable="true"])${e??""}`}createHiddenFocusableElements(){let i=n=>Ze("span",{class:"p-hidden-accessible p-hidden-focusable",tabindex:"0",role:"presentation","aria-hidden":!0,"data-p-hidden-accessible":!0,"data-p-hidden-focusable":!0,onFocus:n?.bind(this)});this.firstHiddenFocusableElement=i(this.onFirstHiddenElementFocus),this.lastHiddenFocusableElement=i(this.onLastHiddenElementFocus),this.firstHiddenFocusableElement.setAttribute("data-pc-section","firstfocusableelement"),this.lastHiddenFocusableElement.setAttribute("data-pc-section","lastfocusableelement"),this.el.nativeElement.prepend(this.firstHiddenFocusableElement),this.el.nativeElement.append(this.lastHiddenFocusableElement)}onFirstHiddenElementFocus(e){let{currentTarget:i,relatedTarget:n}=e,o=n===this.lastHiddenFocusableElement||!this.el.nativeElement?.contains(n)?$e(i.parentElement,":not(.p-hidden-focusable)"):this.lastHiddenFocusableElement;_e(o)}onLastHiddenElementFocus(e){let{currentTarget:i,relatedTarget:n}=e,o=n===this.firstHiddenFocusableElement||!this.el.nativeElement?.contains(n)?Xe(i.parentElement,":not(.p-hidden-focusable)"):this.firstHiddenFocusableElement;_e(o)}static \u0275fac=(()=>{let e;return function(n){return(e||(e=x(t)))(n||t)}})();static \u0275dir=ze({type:t,selectors:[["","pFocusTrap",""]],inputs:{pFocusTrapDisabled:[2,"pFocusTrapDisabled","pFocusTrapDisabled",c]},features:[I]})}return t})();var nt=`
2
2
  .p-dialog {
3
3
  max-height: 90%;
4
4
  transform: scale(1);
@@ -0,0 +1 @@
1
+ import{c as a}from"./chunk-JZ2YF7EL.js";import"./chunk-276RLZR4.js";import"./chunk-LPDD2DHE.js";import"./chunk-34ZZDYNQ.js";import"./chunk-4SG4352Z.js";import"./chunk-BJ6X6WBO.js";import"./chunk-WCABR6TI.js";export{a as InputTypeControl};
@@ -0,0 +1 @@
1
+ var r=(function(s){return s[s.State=0]="State",s[s.Transition=1]="Transition",s[s.Sequence=2]="Sequence",s[s.Group=3]="Group",s[s.Animate=4]="Animate",s[s.Keyframes=5]="Keyframes",s[s.Style=6]="Style",s[s.Trigger=7]="Trigger",s[s.Reference=8]="Reference",s[s.AnimateChild=9]="AnimateChild",s[s.AnimateRef=10]="AnimateRef",s[s.Query=11]="Query",s[s.Stagger=12]="Stagger",s})(r||{}),_="*";function a(s,t){return{type:r.Trigger,name:s,definitions:t,options:{}}}function c(s,t=null){return{type:r.Animate,styles:t,timings:s}}function y(s,t=null){return{type:r.Sequence,steps:s,options:t}}function F(s){return{type:r.Style,styles:s,offset:null}}function S(s,t,e=null){return{type:r.Transition,expr:s,animation:t,options:e}}var l=class{_onDoneFns=[];_onStartFns=[];_onDestroyFns=[];_originalOnDoneFns=[];_originalOnStartFns=[];_started=!1;_destroyed=!1;_finished=!1;_position=0;parentPlayer=null;totalTime;constructor(t=0,e=0){this.totalTime=t+e}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(t=>t()),this._onDoneFns=[])}onStart(t){this._originalOnStartFns.push(t),this._onStartFns.push(t)}onDone(t){this._originalOnDoneFns.push(t),this._onDoneFns.push(t)}onDestroy(t){this._onDestroyFns.push(t)}hasStarted(){return this._started}init(){}play(){this.hasStarted()||(this._onStart(),this.triggerMicrotask()),this._started=!0}triggerMicrotask(){queueMicrotask(()=>this._onFinish())}_onStart(){this._onStartFns.forEach(t=>t()),this._onStartFns=[]}pause(){}restart(){}finish(){this._onFinish()}destroy(){this._destroyed||(this._destroyed=!0,this.hasStarted()||this._onStart(),this.finish(),this._onDestroyFns.forEach(t=>t()),this._onDestroyFns=[])}reset(){this._started=!1,this._finished=!1,this._onStartFns=this._originalOnStartFns,this._onDoneFns=this._originalOnDoneFns}setPosition(t){this._position=this.totalTime?t*this.totalTime:1}getPosition(){return this.totalTime?this._position/this.totalTime:1}triggerCallback(t){let e=t=="start"?this._onStartFns:this._onDoneFns;e.forEach(n=>n()),e.length=0}},u=class{_onDoneFns=[];_onStartFns=[];_finished=!1;_started=!1;_destroyed=!1;_onDestroyFns=[];parentPlayer=null;totalTime=0;players;constructor(t){this.players=t;let e=0,n=0,o=0,h=this.players.length;h==0?queueMicrotask(()=>this._onFinish()):this.players.forEach(i=>{i.onDone(()=>{++e==h&&this._onFinish()}),i.onDestroy(()=>{++n==h&&this._onDestroy()}),i.onStart(()=>{++o==h&&this._onStart()})}),this.totalTime=this.players.reduce((i,f)=>Math.max(i,f.totalTime),0)}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(t=>t()),this._onDoneFns=[])}init(){this.players.forEach(t=>t.init())}onStart(t){this._onStartFns.push(t)}_onStart(){this.hasStarted()||(this._started=!0,this._onStartFns.forEach(t=>t()),this._onStartFns=[])}onDone(t){this._onDoneFns.push(t)}onDestroy(t){this._onDestroyFns.push(t)}hasStarted(){return this._started}play(){this.parentPlayer||this.init(),this._onStart(),this.players.forEach(t=>t.play())}pause(){this.players.forEach(t=>t.pause())}restart(){this.players.forEach(t=>t.restart())}finish(){this._onFinish(),this.players.forEach(t=>t.finish())}destroy(){this._onDestroy()}_onDestroy(){this._destroyed||(this._destroyed=!0,this._onFinish(),this.players.forEach(t=>t.destroy()),this._onDestroyFns.forEach(t=>t()),this._onDestroyFns=[])}reset(){this.players.forEach(t=>t.reset()),this._destroyed=!1,this._finished=!1,this._started=!1}setPosition(t){let e=t*this.totalTime;this.players.forEach(n=>{let o=n.totalTime?Math.min(1,e/n.totalTime):1;n.setPosition(o)})}getPosition(){let t=this.players.reduce((e,n)=>e===null||n.totalTime>e.totalTime?n:e,null);return t!=null?t.getPosition():0}beforeDestroy(){this.players.forEach(t=>{t.beforeDestroy&&t.beforeDestroy()})}triggerCallback(t){let e=t=="start"?this._onStartFns:this._onDoneFns;e.forEach(n=>n()),e.length=0}},g="!";export{r as a,_ as b,a as c,c as d,y as e,F as f,S as g,l as h,u as i,g as j};
@@ -36,5 +36,5 @@
36
36
  <style>:root{--ff-white:#ffffff;--ff-black:#000000;--ff-gray-0:#ffffff;--ff-gray-25:#fcfcfc;--ff-gray-50:#f8f8f7;--ff-gray-75:#f2f2f0;--ff-gray-100:#e9e9e6;--ff-gray-150:#dcdcd7;--ff-gray-200:#c9c9c1;--ff-gray-300:#afafa5;--ff-gray-400:#8d8d81;--ff-gray-500:#69695f;--ff-gray-600:#505048;--ff-gray-700:#3c3c36;--ff-gray-800:#272722;--ff-gray-900:#1b1b18;--ff-gray-950:#141412;--ff-gray-1000:#0f0f0d;--ff-alpha-black-04:rgba(15, 15, 13, .04);--ff-alpha-black-06:rgba(15, 15, 13, .06);--ff-alpha-black-08:rgba(15, 15, 13, .08);--ff-alpha-black-10:rgba(15, 15, 13, .1);--ff-alpha-black-12:rgba(15, 15, 13, .12);--ff-alpha-black-15:rgba(15, 15, 13, .15);--ff-alpha-black-20:rgba(15, 15, 13, .2);--ff-alpha-black-30:rgba(15, 15, 13, .3);--ff-alpha-black-40:rgba(15, 15, 13, .4);--ff-alpha-black-60:rgba(15, 15, 13, .6);--ff-alpha-white-04:rgba(255, 255, 255, .04);--ff-alpha-white-06:rgba(255, 255, 255, .06);--ff-alpha-white-08:rgba(255, 255, 255, .08);--ff-alpha-white-10:rgba(255, 255, 255, .1);--ff-alpha-white-12:rgba(255, 255, 255, .12);--ff-alpha-white-15:rgba(255, 255, 255, .15);--ff-alpha-white-20:rgba(255, 255, 255, .2);--ff-alpha-white-30:rgba(255, 255, 255, .3);--ff-alpha-white-40:rgba(255, 255, 255, .4);--ff-alpha-white-60:rgba(255, 255, 255, .6);--ff-blue-100:#e8f2ff;--ff-blue-200:#bad8ff;--ff-blue-300:#7db7ff;--ff-blue-400:#4176ff;--ff-blue-500:#2759db;--ff-blue-600:#1b3f9e;--ff-green-100:#e7f7ef;--ff-green-300:#71c795;--ff-green-400:#2b9b5f;--ff-green-500:#1e7748;--ff-yellow-100:#fff5de;--ff-yellow-300:#e1b354;--ff-yellow-400:#bb8121;--ff-yellow-500:#916112;--ff-red-100:#feeceb;--ff-red-300:#e48d85;--ff-red-400:#c55245;--ff-red-500:#9e3a2f;--ff-radius-4:4px;--ff-radius-6:6px;--ff-radius-pill:999px;--ff-font-family-sans:"Inter", ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--ff-font-family-mono:ui-monospace, "SFMono-Regular", "Menlo", "Monaco", "Consolas", "Liberation Mono", "Courier New", monospace;--ff-font-size-xs:12px;--ff-font-size-sm:14px;--ff-font-size-md:16px;--ff-font-size-lg:18px;--ff-shadow-1:0 1px 2px rgba(15, 15, 13, .05), 0 8px 20px rgba(15, 15, 13, .04);--ff-shadow-2:0 10px 28px rgba(15, 15, 13, .08), 0 3px 10px rgba(15, 15, 13, .05);--ff-shadow-3:0 18px 48px rgba(15, 15, 13, .12), 0 6px 16px rgba(15, 15, 13, .08)}:root{--ff-color-surface-page:var(--ff-gray-25);--ff-color-surface-canvas:var(--ff-gray-25);--ff-color-surface-card:var(--ff-white);--ff-color-surface-group:rgba(65, 118, 255, .14);--ff-color-surface-group-active:rgba(65, 118, 255, .2);--ff-color-surface-muted:var(--ff-gray-50);--ff-color-surface-soft:var(--ff-gray-75);--ff-color-surface-accent-soft:rgba(65, 118, 255, .1);--ff-color-border-default:var(--ff-alpha-black-12);--ff-color-border-subtle:var(--ff-alpha-black-08);--ff-color-border-strong:var(--ff-alpha-black-20);--ff-color-border-accent:var(--ff-blue-500);--ff-color-text-primary:var(--ff-gray-800);--ff-color-text-secondary:var(--ff-gray-500);--ff-color-text-tertiary:var(--ff-gray-400);--ff-color-text-inverse:var(--ff-white);--ff-color-accent:var(--ff-blue-500);--ff-color-accent-strong:var(--ff-blue-600);--ff-color-success:var(--ff-green-400);--ff-color-warning:var(--ff-yellow-400);--ff-color-danger:var(--ff-red-400);--ff-color-disabled-surface:var(--ff-gray-100);--ff-color-disabled-border:var(--ff-alpha-black-10);--ff-color-disabled-text:var(--ff-gray-300);--ff-color-selection-fill:rgba(65, 118, 255, .12);--ff-color-selection-stroke:rgba(65, 118, 255, .28);--ff-color-grid:var(--ff-alpha-black-08);--ff-color-grid-strong:var(--ff-alpha-black-15);--ff-color-connector-connected:var(--ff-blue-500);--ff-color-connection:var(--ff-gray-600);--ff-color-connection-muted:var(--ff-gray-300);--ff-color-connection-hover:var(--ff-alpha-black-12);--ff-color-grouping-drop-target-border:var(--ff-gray-800);--ff-color-grouping-drop-target-border-active:var(--ff-gray-800);--ff-color-waypoint-fill:var(--ff-white);--ff-color-waypoint-stroke:var(--ff-blue-500);--ff-color-waypoint-candidate-fill:var(--ff-white);--ff-color-waypoint-candidate-stroke:var(--ff-green-400);--ff-color-minimap-surface:var(--ff-white);--ff-color-minimap-node:var(--ff-gray-700);--ff-color-minimap-view:rgba(65, 118, 255, .14);--ff-color-magnetic-line:var(--ff-blue-500);--ff-color-magnetic-rect-fill:rgba(65, 118, 255, .08);--ff-color-magnetic-rect-border:rgba(65, 118, 255, .24);--ff-radius-node:var(--ff-radius-4);--ff-radius-group:var(--ff-radius-4);--ff-radius-control:var(--ff-radius-4);--ff-radius-socket-square:var(--ff-radius-6);--ff-radius-pill:var(--ff-radius-pill);--ff-font-sans:var(--ff-font-family-sans);--ff-font-mono:var(--ff-font-family-mono);--ff-font-size-body:var(--ff-font-size-sm);--ff-font-size-label:var(--ff-font-size-xs);--ff-shadow-surface:var(--ff-shadow-1);--ff-shadow-floating:var(--ff-shadow-2)}:root{--ff-flow-background-color:var(--ff-color-surface-page);--ff-flow-text-color:var(--ff-color-text-primary);--ff-flow-font-family:var(--ff-font-sans);--ff-flow-font-size:var(--ff-font-size-body);--ff-canvas-background-color:var(--ff-color-surface-canvas);--ff-node-background-color:var(--ff-color-surface-card);--ff-node-background-color-inverse:var(--ff-color-text-primary);--ff-node-border-color:var(--ff-color-border-default);--ff-node-border-color-selected:var(--ff-color-border-accent);--ff-node-color:var(--ff-color-text-primary);--ff-node-border-radius:var(--ff-radius-node);--ff-node-shadow:var(--ff-shadow-surface);--ff-node-shadow-selected:var(--ff-shadow-floating);--ff-node-width:120px;--ff-node-min-height:56px;--ff-node-padding:24px;--ff-group-background-color:var(--ff-color-surface-group);--ff-group-background-color-active:var(--ff-color-surface-group-active);--ff-group-border-color:var(--ff-color-border-subtle);--ff-group-border-color-selected:var(--ff-color-border-accent);--ff-group-border-color-active:var(--ff-color-border-accent);--ff-group-color:var(--ff-color-text-secondary);--ff-group-border-radius:var(--ff-radius-group);--ff-group-min-width:180px;--ff-group-min-height:120px;--ff-group-padding:24px;--ff-grouping-drop-target-border-color:var(--ff-color-grouping-drop-target-border);--ff-grouping-drop-target-border-style:dashed;--ff-grouping-drop-target-border-width:1px;--ff-grouping-drop-target-border-color-active:var(--ff-color-grouping-drop-target-border-active);--ff-grouping-drop-target-border-style-active:dashed;--ff-grouping-drop-target-border-width-active:2px;--ff-handle-background-color:var(--ff-color-surface-card);--ff-handle-border-color:var(--ff-color-border-strong);--ff-handle-color:var(--ff-color-text-secondary);--ff-handle-size:12px;--ff-handle-radius:var(--ff-radius-control);--ff-rotate-handle-size:16px;--ff-connector-background-color:var(--ff-color-surface-card);--ff-connector-border-color:var(--ff-color-border-default);--ff-connector-connected-color:var(--ff-color-connector-connected);--ff-connector-accent-color:var(--ff-color-accent);--ff-connector-disabled-color:var(--ff-color-disabled-surface);--ff-connector-disabled-border-color:var(--ff-color-disabled-border);--ff-connector-size:16px;--ff-connector-node-ring-color:var(--ff-canvas-background-color);--ff-outlet-background-color:var(--ff-color-surface-muted);--ff-outlet-border-color:var(--ff-color-border-default);--ff-outlet-color:var(--ff-color-accent);--ff-outlet-disabled-background-color:var(--ff-color-disabled-surface);--ff-outlet-disabled-border-color:var(--ff-color-disabled-border);--ff-outlet-disabled-color:var(--ff-color-disabled-text);--ff-outlet-border-radius:var(--ff-radius-pill);--ff-outlet-padding-y:6px;--ff-outlet-padding-x:12px;--ff-connection-color:var(--ff-color-connection);--ff-snap-connection-color:var(--ff-color-connection-muted);--ff-connection-hover-color:var(--ff-color-connection-hover);--ff-connection-selected-color:var(--ff-color-accent);--ff-connection-label-color:var(--ff-color-text-secondary);--ff-connection-content-color:var(--ff-node-color);--ff-connection-content-background-color:var(--ff-node-background-color);--ff-connection-content-border-color:var(--ff-node-border-color);--ff-connection-content-border-color-selected:var(--ff-connection-selected-color);--ff-connection-content-border-radius:var(--ff-node-border-radius);--ff-connection-content-font-size:13px;--ff-connection-content-padding-y:2px;--ff-connection-content-padding-x:8px;--ff-connection-width:2px;--ff-connection-hit-width:14px;--ff-connection-drag-handle-fill:var(--ff-color-surface-card);--ff-connection-drag-handle-stroke:var(--ff-color-accent);--ff-marker-color:var(--ff-connection-color);--ff-waypoint-fill:var(--ff-color-waypoint-fill);--ff-waypoint-stroke:var(--ff-color-waypoint-stroke);--ff-waypoint-candidate-fill:var(--ff-color-waypoint-candidate-fill);--ff-waypoint-candidate-stroke:var(--ff-color-waypoint-candidate-stroke);--ff-background-line-color:var(--ff-color-grid);--ff-background-dot-color:var(--ff-color-grid-strong);--ff-selection-area-color:var(--ff-color-selection-fill);--ff-selection-area-border-color:var(--ff-color-selection-stroke);--ff-minimap-background-color:var(--ff-color-minimap-surface);--ff-minimap-border-color:var(--ff-color-border-default);--ff-minimap-node-color:var(--ff-color-minimap-node);--ff-minimap-node-selected-color:var(--ff-color-accent);--ff-minimap-view-color:var(--ff-color-minimap-view);--ff-minimap-view-border-color:var(--ff-color-selection-stroke);--ff-minimap-border-radius:var(--ff-radius-node);--ff-minimap-shadow:var(--ff-shadow-floating);--ff-magnetic-line-color:var(--ff-color-magnetic-line);--ff-magnetic-rect-fill:var(--ff-color-magnetic-rect-fill);--ff-magnetic-rect-border-color:var(--ff-color-magnetic-rect-border);--ff-external-item-background-color:var(--ff-color-surface-card);--ff-external-item-border-color:var(--ff-color-border-default);--ff-external-item-color:var(--ff-color-text-primary);--ff-external-item-disabled-color:var(--ff-color-disabled-text);--ff-external-item-disabled-background-color:var(--ff-color-disabled-surface);--ff-external-item-border-radius:var(--ff-radius-node);--ff-external-item-shadow:var(--ff-shadow-surface);--ff-external-item-preview-shadow:var(--ff-shadow-floating);--ff-external-item-placeholder-background-color:var(--ff-color-surface-soft);--ff-external-item-placeholder-border-color:var(--ff-color-border-subtle)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}:root{--fa-family-brands:"Font Awesome 7 Brands";--fa-font-brands:normal 400 1em/1 var(--fa-family-brands)}:root{--fa-font-regular:normal 400 1em/1 var(--fa-family-classic)}:root{--fa-family-classic:"Font Awesome 7 Free";--fa-font-solid:normal 900 1em/1 var(--fa-family-classic);--fa-style-family-classic:var(--fa-family-classic)}:root{--sm-font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--sm-font-display-brand:"Geist", system-ui, sans-serif;--sm-radius-sm:3px;--sm-radius-md:4px;--sm-radius-lg:.5rem;--sm-radius-xl:.65rem;--sm-radius-pill:999px;--sm-violet-50:#F5F3FF;--sm-violet-100:#EDE9FE;--sm-violet-200:#DDD6FE;--sm-violet-300:#C4B5FD;--sm-violet-400:#A78BFA;--sm-violet-500:#8B5CF6;--sm-violet-600:#7C3AED;--sm-violet-700:#6D28D9;--sm-violet-800:#4C1D95;--sm-violet-900:#2E1065}html,body{margin:0;padding:0;height:100dvh;overflow:hidden;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--sm-bg-page);color:var(--p-text-color)}*,*:before,*:after{box-sizing:border-box}*{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--p-text-color) 30%,transparent) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background-color:color-mix(in srgb,var(--p-text-color) 25%,transparent);border-radius:var(--sm-radius-pill);border:2px solid transparent;background-clip:padding-box}*::-webkit-scrollbar-thumb:hover{background-color:color-mix(in srgb,var(--p-text-color) 45%,transparent)}:root{--sm-bg-page:#f8fafc;--sm-bg-content:#ffffff;--sm-bg-hover:#f1f5f9;--sm-border:#e2e8f0;--sm-nav-active-bg:#eff6ff;--sm-edge-invokes:#b8843a;--sm-edge-invokes-active:#f59e0b;--sm-edge-references:#7daa90;--sm-edge-references-active:#10b981;--sm-edge-points:#8f7cb8;--sm-edge-points-active:#7c3aed;--sm-edge-mentions:#6fa2c0;--sm-edge-mentions-active:#0ea5e9;--sm-edge-neutral:#6b7280;--sm-link-in-bg:#e0e7ff;--sm-link-in-fg:#3730a3;--sm-link-out-bg:#fef3c7;--sm-link-out-fg:#92400e;--sm-severity-info:#1e3a8a;--sm-severity-success:#065f46;--sm-severity-warn:#ca8a04;--sm-severity-error:#991b1b;--sm-severity-info-bg:rgba(219, 234, 254, .35);--sm-severity-success-bg:rgba(209, 250, 229, .35);--sm-severity-warn-bg:rgba(254, 243, 199, .35);--sm-severity-error-bg:rgba(254, 226, 226, .35);--sm-stat-tokens-bg:rgba(59, 130, 246, .14);--sm-stat-bytes-bg:rgba(245, 158, 11, .16);--sm-hl-comment:#6e7781;--sm-hl-keyword:#cf222e;--sm-hl-string:#0a3069;--sm-hl-number:#0550ae;--sm-hl-title:#8250df;--sm-hl-attr:#0550ae;--sm-hl-built-in:#953800;--sm-hl-meta:#6e7781;--sm-hl-addition:#116329;--sm-hl-deletion:#82071e;--sm-accent-fg:#ffffff;--sm-shadow-topbar:0 1px 2px rgba(0, 0, 0, .03);--sm-shadow-eventlog:0 -4px 16px rgba(0, 0, 0, .08);--sm-shadow-floating:0 4px 14px rgba(0, 0, 0, .08);--sm-shadow-card:0 1px 2px rgba(0, 0, 0, .05);--sm-shadow-card-hover:0 3px 12px rgba(0, 0, 0, .12);--sm-shadow-panel:0 4px 24px rgba(0, 0, 0, .12)}</style><link rel="stylesheet" href="styles-I4ULXD3V.css" media="print" onload="this.media='all'"><noscript><link rel="stylesheet" href="styles-I4ULXD3V.css"></noscript></head>
37
37
  <body>
38
38
  <sm-root></sm-root>
39
- <link rel="modulepreload" href="chunk-I52OQIZQ.js"><link rel="modulepreload" href="chunk-L34EUS75.js"><link rel="modulepreload" href="chunk-Q4PXVDJA.js"><link rel="modulepreload" href="chunk-7VUEZZFJ.js"><link rel="modulepreload" href="chunk-7X3DZNG4.js"><link rel="modulepreload" href="chunk-JTCIY3SL.js"><link rel="modulepreload" href="chunk-HQ6M2HXK.js"><link rel="modulepreload" href="chunk-MGWGV4VD.js"><link rel="modulepreload" href="chunk-ZYPXVXYF.js"><link rel="modulepreload" href="chunk-4SG4352Z.js"><script src="main-OTDMPZHD.js" type="module"></script></body>
39
+ <link rel="modulepreload" href="chunk-CM4YB7L4.js"><link rel="modulepreload" href="chunk-CZSLV6YD.js"><link rel="modulepreload" href="chunk-NC3HOVDG.js"><link rel="modulepreload" href="chunk-IYC5ZW4L.js"><link rel="modulepreload" href="chunk-DLYJHLJX.js"><link rel="modulepreload" href="chunk-FC22ZJQZ.js"><link rel="modulepreload" href="chunk-LPDD2DHE.js"><link rel="modulepreload" href="chunk-34ZZDYNQ.js"><link rel="modulepreload" href="chunk-4SG4352Z.js"><link rel="modulepreload" href="chunk-BJ6X6WBO.js"><script src="main-CBZBFVUW.js" type="module"></script></body>
40
40
  </html>
@@ -0,0 +1,4 @@
1
+ import{D as ht,E as fe,F as ft,G as vt,H as bt,I as ie,J as yt,f as pt,j as mt,k as gt,u as J,v as ut,w as Z}from"./chunk-CM4YB7L4.js";import{b as qe,f as et,g as tt,h as le,i as nt,j as it,k as rt}from"./chunk-CZSLV6YD.js";import{a as K,b as M,c as ge,d as Ct,e as kt}from"./chunk-NC3HOVDG.js";import{a as ct,c as ne,d as h,f as N,g as dt,h as F,i as V,k as _t}from"./chunk-IYC5ZW4L.js";import{a as He,b as We,c as Qe,d as G,e as Ye,f as Ge,g as Ze}from"./chunk-DLYJHLJX.js";import{b as pe,c as me}from"./chunk-FC22ZJQZ.js";import{C as lt,K as ce,L as de,n as ot,o as st,u as at}from"./chunk-LPDD2DHE.js";import{r as Xe}from"./chunk-34ZZDYNQ.js";import"./chunk-4SG4352Z.js";import{$ as Ee,$b as g,Ab as U,Bb as Y,Cb as te,Dc as Ke,H as Pe,Ha as oe,Ib as A,Ja as l,K as R,Kb as T,Lb as se,Mb as f,N as Se,Na as Fe,O as Q,P as s,Q as Me,Qa as $e,Ta as Le,V as O,W as I,Xb as Ue,Yb as Ve,Z as Re,Za as D,_ as Te,_b as Je,ac as _,bc as S,ca as Oe,da as Ie,db as je,f as we,fa as Ae,ga as B,gb as ee,ha as De,ja as re,jb as ze,kb as Be,m as W,nb as y,qb as x,ra as Ne,rb as w,wb as b,wc as d,xb as c,xc as ae,yb as p,zb as P}from"./chunk-BJ6X6WBO.js";import{a as ke,b as xe}from"./chunk-WCABR6TI.js";var Zt="@",qt=(()=>{class t{doc;delegate;zone;animationType;moduleImpl;_rendererFactoryPromise=null;scheduler=null;injector=s(Re);loadingSchedulerFn=s(en,{optional:!0});_engine;constructor(e,r,i,o,a){this.doc=e,this.delegate=r,this.zone=i,this.animationType=o,this.moduleImpl=a}ngOnDestroy(){this._engine?.flush()}loadImpl(){let e=()=>this.moduleImpl??import("./chunk-56CBK7LB.js").then(i=>i),r;return this.loadingSchedulerFn?r=this.loadingSchedulerFn(e):r=e(),r.catch(i=>{throw new Pe(5300,!1)}).then(({\u0275createEngine:i,\u0275AnimationRendererFactory:o})=>{this._engine=i(this.animationType,this.doc);let a=new o(this.delegate,this._engine,this.zone);return this.delegate=a,a})}createRenderer(e,r){let i=this.delegate.createRenderer(e,r);if(i.\u0275type===0)return i;typeof i.throwOnSyntheticProps=="boolean"&&(i.throwOnSyntheticProps=!1);let o=new ve(i);return r?.data?.animation&&!this._rendererFactoryPromise&&(this._rendererFactoryPromise=this.loadImpl()),this._rendererFactoryPromise?.then(a=>{let u=a.createRenderer(e,r);o.use(u),this.scheduler??=this.injector.get(De,null,{optional:!0}),this.scheduler?.notify(10)}).catch(a=>{o.use(i)}),o}begin(){this.delegate.begin?.()}end(){this.delegate.end?.()}whenRenderingDone(){return this.delegate.whenRenderingDone?.()??Promise.resolve()}componentReplaced(e){this._engine?.flush(),this.delegate.componentReplaced?.(e)}static \u0275fac=function(r){Le()};static \u0275prov=R({token:t,factory:t.\u0275fac})}return t})(),ve=class{delegate;replay=[];\u0275type=1;constructor(n){this.delegate=n}use(n){if(this.delegate=n,this.replay!==null){for(let e of this.replay)e(n);this.replay=null}}get data(){return this.delegate.data}destroy(){this.replay=null,this.delegate.destroy()}createElement(n,e){return this.delegate.createElement(n,e)}createComment(n){return this.delegate.createComment(n)}createText(n){return this.delegate.createText(n)}get destroyNode(){return this.delegate.destroyNode}appendChild(n,e){this.delegate.appendChild(n,e)}insertBefore(n,e,r,i){this.delegate.insertBefore(n,e,r,i)}removeChild(n,e,r,i){this.delegate.removeChild(n,e,r,i)}selectRootElement(n,e){return this.delegate.selectRootElement(n,e)}parentNode(n){return this.delegate.parentNode(n)}nextSibling(n){return this.delegate.nextSibling(n)}setAttribute(n,e,r,i){this.delegate.setAttribute(n,e,r,i)}removeAttribute(n,e,r){this.delegate.removeAttribute(n,e,r)}addClass(n,e){this.delegate.addClass(n,e)}removeClass(n,e){this.delegate.removeClass(n,e)}setStyle(n,e,r,i){this.delegate.setStyle(n,e,r,i)}removeStyle(n,e,r){this.delegate.removeStyle(n,e,r)}setProperty(n,e,r){this.shouldReplay(e)&&this.replay.push(i=>i.setProperty(n,e,r)),this.delegate.setProperty(n,e,r)}setValue(n,e){this.delegate.setValue(n,e)}listen(n,e,r,i){return this.shouldReplay(e)&&this.replay.push(o=>o.listen(n,e,r,i)),this.delegate.listen(n,e,r,i)}shouldReplay(n){return this.replay!==null&&n.startsWith(Zt)}},en=new Se("");function xt(t="animations"){return Fe("NgAsyncAnimations"),Me([{provide:$e,useFactory:()=>new qt(s(Te),s(He),s(Oe),t)},{provide:Ne,useValue:t==="noop"?"NoopAnimations":"BrowserAnimations"}])}var be="skill-map",j={brand:be,beta:"BETA - do not use in production",betaDemo:"BETA",devChip:"dev",devChipTooltip:"BFF launched from a local checkout (not the npm install).",devChipA11y:"Development build: BFF is running from a local checkout.",lensChipTooltip:t=>`Active lens: ${t}. The map reflects how ${t} interprets your files.`,lensChipA11y:t=>`Active provider lens: ${t}.`,nav:{searchLabel:"Search nodes by name or tag",searchTooltip:"Search",searchPlaceholder:"Search by name or tag...",searchAriaLabel:"Search nodes by name or tag",searchClearLabel:"Clear search"},actions:{},badge:{nodes:"nodes",mapInfo:(t,n)=>{let e=`Run scan
2
+ ${t.toLocaleString()} nodes \xB7 ${n.raw.toLocaleString()} links`;if(n.raw===n.drawn)return e;let r=[],i=n.brokenSource+n.brokenTarget;return i>0&&r.push(`${i} broken`),n.selfLoops>0&&r.push(`${n.selfLoops} self-loop${n.selfLoops===1?"":"s"}`),n.duplicates>0&&r.push(`${n.duplicates} duplicate${n.duplicates===1?"":"s"}`),`${e}
3
+ ${n.drawn.toLocaleString()} drawn (${r.join(", ")})`},mapInfoA11y:(t,n)=>`Map contains ${t} nodes and ${n.raw} links; ${n.drawn} drawn on the canvas`},a11y:{viewSwitcher:"View switcher"},viewportWarning:{title:"Looks like you're on a small screen",subtitle:"skill-map is built for desktop",body:"The map and inspector need room to breathe. Pop this open on a screen at least 768px wide. See you there."},documentTitle:(t,n)=>{let e=t?`${t} - ${be}`:be;return n?`${e} v${n}`:e}};var wt=[{path:"",pathMatch:"full",loadComponent:()=>import("./chunk-ECKRC6XD.js").then(t=>t.WorkspaceView),title:j.brand},{path:"intentional-fail",loadComponent:()=>import("./chunk-CJURGJTN.js").then(t=>t.IntentionalFail)},{path:"**",redirectTo:""}];var z={errors:{unknownMode:t=>`SKILL_MAP_MODE: unknown value "${t}"`,restPrefix:t=>`BFF error [${t}]: `,malformedResponse:"BFF returned a malformed response",demoFetchFailed:(t,n)=>`Demo bundle fetch failed for "${t}": ${n}`,demoParseFailed:(t,n)=>`Demo bundle parse failed for "${t}": ${n}`,graphFormatNotInDemo:t=>`Graph format "${t}" is not bundled in demo mode (only "ascii").`}};function ue(t){let n=new TextEncoder().encode(t),e="";for(let r=0;r<n.length;r++)e+=String.fromCharCode(n[r]);return btoa(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}var m="/api",Pt=(()=>{class t{http;ws;kindRegistry;providerRegistry;contributionsRegistry;constructor(e,r,i,o,a){this.http=e??s(G),this.ws=r??s(F),this.kindRegistry=i??s(J),this.contributionsRegistry=o??s(Z),this.providerRegistry=a??s(K)}async health(){return this.getJson(`${m}/health`)}async loadScan(){let[e]=await Promise.all([this.getJson(`${m}/scan`),this.listNodes({limit:0}).catch(()=>null)]);return e}async loadScanMeta(){return this.getJson(`${m}/scan?meta=1`)}async loadFolders(){let e=await this.getJson(`${m}/folders`);return this.ingestRegistry(e.kindRegistry),this.ingestContributionsRegistry(e.contributionsRegistry),this.ingestProviderRegistry(e.providerRegistry),e.items}async loadBranch(e=[],r){let i=new URLSearchParams;for(let a of e)a&&i.append("path",a);r!==void 0&&i.set("limit",String(r));let o=i.toString();return this.getJson(`${m}/branch${o?`?${o}`:""}`)}async runScan(){return this.patchJson(`${m}/scan`,{},"POST")}async listNodes(e={}){let r=tn(e),i=await this.getJson(`${m}/nodes${r}`);return this.ingestRegistry(i.kindRegistry),this.ingestContributionsRegistry(i.contributionsRegistry),this.ingestProviderRegistry(i.providerRegistry),i}async getNode(e,r={}){let i=ue(e),o=r.includeBody?"?include=body":"";try{let a=await this.getJson(`${m}/nodes/${i}${o}`);return this.ingestRegistry(a.kindRegistry),this.ingestContributionsRegistry(a.contributionsRegistry),this.ingestProviderRegistry(a.providerRegistry),a}catch(a){if(a instanceof h&&a.code==="not-found")return null;throw a}}async listLinks(e={}){let r=nn(e),i=await this.getJson(`${m}/links${r}`);return this.ingestRegistry(i.kindRegistry),this.ingestContributionsRegistry(i.contributionsRegistry),this.ingestProviderRegistry(i.providerRegistry),i}async listIssues(e={}){let r=rn(e),i=await this.getJson(`${m}/issues${r}`);return this.ingestRegistry(i.kindRegistry),this.ingestContributionsRegistry(i.contributionsRegistry),this.ingestProviderRegistry(i.providerRegistry),i}async loadGraph(e="ascii"){let r=`${m}/graph?format=${encodeURIComponent(e)}`;try{return await W(this.http.get(r,{responseType:"text"}))}catch(i){throw this.translateError(i)}}async loadConfig(){let e=await this.getJson(`${m}/config`);return this.ingestRegistry(e.kindRegistry),this.ingestContributionsRegistry(e.contributionsRegistry),this.ingestProviderRegistry(e.providerRegistry),e.value}async listPlugins(){let e=await this.getJson(`${m}/plugins`);return this.ingestRegistry(e.kindRegistry),this.ingestContributionsRegistry(e.contributionsRegistry),this.ingestProviderRegistry(e.providerRegistry),e}async setPluginEnabled(e,r){let i=await this.patchJson(`${m}/plugins/${encodeURIComponent(e)}`,{enabled:r});return this.ingestRegistry(i.kindRegistry),this.ingestContributionsRegistry(i.contributionsRegistry),this.ingestProviderRegistry(i.providerRegistry),i}async setPluginExtensionEnabled(e,r,i){let o=await this.patchJson(`${m}/plugins/${encodeURIComponent(e)}/extensions/${encodeURIComponent(r)}`,{enabled:i});return this.ingestRegistry(o.kindRegistry),this.ingestContributionsRegistry(o.contributionsRegistry),this.ingestProviderRegistry(o.providerRegistry),o}async applyPluginChanges(e){let r=await this.patchJson(`${m}/plugins`,{changes:e});return this.ingestRegistry(r.kindRegistry),this.ingestContributionsRegistry(r.contributionsRegistry),this.ingestProviderRegistry(r.providerRegistry),r}async getPreferences(){return await this.getJson(`${m}/preferences`)}async setPreferences(e){return await this.patchJson(`${m}/preferences`,e)}async getProjectPreferences(){return await this.getJson(`${m}/project-preferences`)}async setProjectPreferences(e){return await this.patchJson(`${m}/project-preferences`,e)}async getProjectIgnore(){return await this.getJson(`${m}/project-ignore`)}async setProjectIgnore(e){return await this.patchJson(`${m}/project-ignore`,e)}async getActiveProvider(){return await this.getJson(`${m}/active-provider`)}async setActiveProvider(e){return await this.patchJson(`${m}/active-provider`,{activeProvider:e})}async setFavorite(e){let r=ue(e);try{await W(this.http.put(`${m}/favorites/${r}`,null))}catch(i){throw this.translateError(i)}}async unsetFavorite(e){let r=ue(e);try{await W(this.http.delete(`${m}/favorites/${r}`))}catch(i){throw this.translateError(i)}}async bumpSidecar(e,r={}){let i={nodePath:e};return r.force!==void 0&&(i.force=r.force),r.confirm!==void 0&&(i.confirm=r.confirm),this.patchJson(`${m}/sidecar/bump`,i,"POST")}async dispatchAction(e,r,i={}){let o=e.split("/").map(encodeURIComponent).join("/"),a={nodePath:r};return i.input!==void 0&&(a.input=i.input),i.confirm!==void 0&&(a.confirm=i.confirm),i.always!==void 0&&(a.always=i.always),this.patchJson(`${m}/actions/${o}`,a,"POST")}async getUpdateStatus(){return this.getJson(`${m}/update-status`)}async getRegisteredAnnotations(){return(await this.getJson(`${m}/annotations/registered`)).items}ingestRegistry(e){e&&this.kindRegistry.ingest(e)}ingestProviderRegistry(e){e&&this.providerRegistry.ingest(e)}ingestContributionsRegistry(e){this.contributionsRegistry.setRegistry(e)}async lookupContribution(e,r,i){let o=new URLSearchParams({path:i});try{return(await this.getJson(`${m}/contributions/${encodeURIComponent(e)}/${encodeURIComponent(r)}?${o.toString()}`)).items[0]??null}catch{return null}}events(){return this.ws.events$}async getJson(e){try{return await W(this.http.get(e))}catch(r){throw this.translateError(r)}}async patchJson(e,r,i="PATCH"){try{let o=i==="POST"?this.http.post(e,r):this.http.patch(e,r);return await W(o)}catch(o){throw this.translateError(o)}}translateError(e){if(e instanceof h)return e;if(e instanceof Qe){let i=on(e.error);return i?new h(i.error.code,i.error.message,i.error.details):new h("internal",e.message||z.errors.malformedResponse)}let r=e instanceof Error?e.message:String(e);return new h("internal",r)}static \u0275fac=function(r){return new(r||t)(Q(G),Q(F),Q(J),Q(Z),Q(K))};static \u0275prov=R({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function tn(t){let n=new URLSearchParams;t.kind&&t.kind.length>0&&n.set("kind",t.kind.join(",")),t.hasIssues!==void 0&&n.set("hasIssues",String(t.hasIssues)),t.path&&n.set("path",t.path),t.limit!==void 0&&n.set("limit",String(t.limit)),t.offset!==void 0&&n.set("offset",String(t.offset));let e=n.toString();return e?`?${e}`:""}function nn(t){let n=new URLSearchParams;t.kind&&t.kind.length>0&&n.set("kind",t.kind.join(",")),t.from&&n.set("from",t.from),t.to&&n.set("to",t.to);let e=n.toString();return e?`?${e}`:""}function rn(t){let n=new URLSearchParams;t.severity&&n.set("severity",t.severity),t.analyzerId&&n.set("analyzerId",t.analyzerId),t.node&&n.set("node",t.node),t.nodes&&t.nodes.length>0&&n.set("nodes",t.nodes.join(","));let e=n.toString();return e?`?${e}`:""}function on(t){if(typeof t!="object"||t===null)return null;let n=t;if(n.ok!==!1)return null;let e=n.error;if(typeof e!="object"||e===null)return null;let r=e;return typeof r.code!="string"||typeof r.message!="string"?null:{ok:!1,error:{code:r.code,message:r.message,details:r.details}}}var sn="data.json",an="data.meta.json",he=class{fetchImpl;metaPromise=null;dataPromise=null;kindRegistry;providerRegistry;contributionsRegistry;constructor(n=globalThis.fetch.bind(globalThis),e,r,i){this.fetchImpl=n,this.kindRegistry=e??s(J),this.providerRegistry=r??s(K),this.contributionsRegistry=i??s(Z)}async health(){return(await this.loadMeta()).health}async loadScan(){let[n,e]=await Promise.all([this.loadData(),this.loadMeta()]);return this.kindRegistry.ingest(e.nodes.kindRegistry),this.providerRegistry.ingest(e.nodes.providerRegistry),this.primeContributionsRegistry(e),n}async loadScanMeta(){let n=await this.loadScan();return xe(ke({},n),{nodes:[],links:[],issues:[]})}async loadFolders(){let n=await this.loadScan(),e=new Map,r=new Map;for(let i of n.issues){let o=i.severity==="error"?e:i.severity==="warn"?r:null;if(o)for(let a of i.nodeIds)o.set(a,(o.get(a)??0)+1)}return n.nodes.map(i=>({path:i.path,kind:i.kind,linksInCount:i.linksInCount,linksOutCount:i.linksOutCount,tokensTotal:i.tokens?.total??null,modifiedAtMs:i.modifiedAtMs??null,errorCount:e.get(i.path)??0,warnCount:r.get(i.path)??0,sidecarStatus:i.sidecar?.status??null}))}async loadBranch(n=[],e){let r=await this.loadScan(),i=n.filter(k=>k!==""),o=k=>i.length===0||i.some(H=>k===H||k.startsWith(`${H}/`)),a=r.nodes.filter(k=>o(k.path)).sort((k,H)=>k.path.localeCompare(H.path)),u=a.length,C=e!==void 0&&e>0?e:u,v=a.slice(0,C),E=new Set(v.map(k=>k.path)),L=r.links.filter(k=>E.has(k.source)&&E.has(k.target)),Gt=r.issues.filter(k=>k.nodeIds.some(H=>E.has(H)));return{schemaVersion:"1",kind:"branch",branch:{paths:[...i],total:u,rendered:v.length,truncated:u>C,cap:C},nodes:v,links:L,issues:Gt}}primeContributionsRegistry(n){this.contributionsRegistry.setRegistry(n.contributionsRegistry)}async listNodes(n={}){let e=await this.loadMeta();if(ln(n))return this.kindRegistry.ingest(e.nodes.kindRegistry),this.providerRegistry.ingest(e.nodes.providerRegistry),this.primeContributionsRegistry(e),e.nodes;let r=await this.loadData(),i=r.issues,o=r.nodes;if(n.kind&&n.kind.length>0){let E=new Set(n.kind);o=o.filter(L=>E.has(L.kind))}if(n.path){let E=pn(n.path);o=o.filter(L=>E.test(L.path))}if(n.hasIssues===!0){let E=St(i);o=o.filter(L=>E.has(L.path))}else if(n.hasIssues===!1){let E=St(i);o=o.filter(L=>!E.has(L.path))}let a=o.length,u=n.offset??0,C=n.limit??1e3,v=o.slice(u,u+C);return this.kindRegistry.ingest(e.nodes.kindRegistry),this.providerRegistry.ingest(e.nodes.providerRegistry),this.primeContributionsRegistry(e),{schemaVersion:"1",kind:"nodes",items:v,filters:{kind:n.kind??null,hasIssues:n.hasIssues??null,path:n.path?[n.path]:null},counts:{total:a,returned:v.length,page:{offset:u,limit:C}},kindRegistry:e.nodes.kindRegistry,providerRegistry:e.nodes.providerRegistry}}async getNode(n,e={}){let[r,i]=await Promise.all([this.loadData(),this.loadMeta()]),o=r.nodes.find(v=>v.path===n);if(!o)return null;let a=r.links.filter(v=>v.target===n),u=r.links.filter(v=>v.source===n),C=r.issues.filter(v=>v.nodeIds.includes(n));return this.kindRegistry.ingest(i.nodes.kindRegistry),this.providerRegistry.ingest(i.nodes.providerRegistry),this.primeContributionsRegistry(i),{schemaVersion:"1",kind:"node",item:o,links:{incoming:a,outgoing:u},issues:C,kindRegistry:i.nodes.kindRegistry,providerRegistry:i.nodes.providerRegistry}}async listLinks(n={}){let e=await this.loadMeta();if(cn(n))return this.kindRegistry.ingest(e.links.kindRegistry),this.providerRegistry.ingest(e.links.providerRegistry),this.primeContributionsRegistry(e),e.links;let i=(await this.loadData()).links;if(n.kind&&n.kind.length>0){let o=new Set(n.kind);i=i.filter(a=>o.has(a.kind))}return n.from&&(i=i.filter(o=>o.source===n.from)),n.to&&(i=i.filter(o=>o.target===n.to)),this.kindRegistry.ingest(e.links.kindRegistry),this.providerRegistry.ingest(e.links.providerRegistry),this.primeContributionsRegistry(e),{schemaVersion:"1",kind:"links",items:i,filters:{kind:n.kind??null,from:n.from??null,to:n.to??null},counts:{total:i.length,returned:i.length},kindRegistry:e.links.kindRegistry,providerRegistry:e.links.providerRegistry}}async listIssues(n={}){let e=await this.loadMeta();if(dn(n))return this.kindRegistry.ingest(e.issues.kindRegistry),this.providerRegistry.ingest(e.issues.providerRegistry),this.primeContributionsRegistry(e),e.issues;let i=(await this.loadData()).issues;if(n.severity&&(i=i.filter(o=>o.severity===n.severity)),n.analyzerId&&(i=i.filter(o=>o.analyzerId===n.analyzerId)),n.node&&(i=i.filter(o=>o.nodeIds.includes(n.node))),n.nodes&&n.nodes.length>0){let o=new Set(n.nodes);i=i.filter(a=>a.nodeIds.some(u=>o.has(u)))}return this.kindRegistry.ingest(e.issues.kindRegistry),this.providerRegistry.ingest(e.issues.providerRegistry),this.primeContributionsRegistry(e),{schemaVersion:"1",kind:"issues",items:i,filters:{severity:n.severity??null,analyzerId:n.analyzerId??null,node:n.node??null,nodes:n.nodes&&n.nodes.length>0?[...n.nodes]:null},counts:{total:i.length,returned:i.length},kindRegistry:e.issues.kindRegistry,providerRegistry:e.issues.providerRegistry}}async loadGraph(n="ascii"){if(n!=="ascii")throw new h("bad-query",z.errors.graphFormatNotInDemo(n));return(await this.loadMeta()).graph.ascii}async loadConfig(){let n=await this.loadMeta();return this.kindRegistry.ingest(n.config.kindRegistry),this.providerRegistry.ingest(n.config.providerRegistry),this.primeContributionsRegistry(n),n.config.value}async listPlugins(){let n=await this.loadMeta();return this.kindRegistry.ingest(n.plugins.kindRegistry),this.providerRegistry.ingest(n.plugins.providerRegistry),this.primeContributionsRegistry(n),n.plugins}async setFavorite(n){throw new h("demo-readonly","Favorites are not available in demo mode (static bundle is immutable).")}async unsetFavorite(n){throw new h("demo-readonly","Favorites are not available in demo mode (static bundle is immutable).")}async setPluginEnabled(n,e){throw new h("demo-readonly","Plugin toggles are not available in demo mode (static bundle is immutable).")}async setPluginExtensionEnabled(n,e,r){throw new h("demo-readonly","Plugin toggles are not available in demo mode (static bundle is immutable).")}async applyPluginChanges(n){throw new h("demo-readonly","Plugin toggles are not available in demo mode (static bundle is immutable).")}async runScan(){throw new h("demo-readonly","Manual scan is not available in demo mode (static bundle is immutable).")}async getPreferences(){return{updateCheck:{enabled:!0},telemetry:{errorsEnabled:!1,usageCliEnabled:!1,usageUiEnabled:!1,anonymousId:null,environment:"prod"}}}async setPreferences(n){throw new h("demo-readonly","Preference toggles are not available in demo mode (static bundle is immutable).")}async getProjectPreferences(){return{allowSidecarWriters:!0,scan:{referencePaths:[]}}}async setProjectPreferences(n){throw new h("demo-readonly","Project preferences are not available in demo mode (static bundle is immutable).")}async getProjectIgnore(){return{patterns:[]}}async setProjectIgnore(n){throw new h("demo-readonly","Ignore patterns are not available in demo mode (static bundle is immutable).")}async getActiveProvider(){return{activeProvider:null,detected:[],source:"none",selectable:[]}}async setActiveProvider(n){throw new h("demo-readonly","Active provider lens is not available in demo mode (static bundle is immutable).")}async lookupContribution(){return null}async bumpSidecar(n,e={}){throw new h("demo-readonly","Sidecar bump is not available in demo mode (static bundle is immutable).")}async dispatchAction(n,e,r={}){throw new h("demo-readonly","Actions are not available in demo mode (static bundle is immutable).")}async getUpdateStatus(){return{current:(await this.loadMeta()).health.implVersion,latest:null,isOutdated:!1,checkedAt:null,shownAt:null}}async getRegisteredAnnotations(){return[]}events(){return we}loadMeta(){return this.metaPromise||(this.metaPromise=this.fetchJson(an)),this.metaPromise}loadData(){return this.dataPromise||(this.dataPromise=this.fetchJson(sn)),this.dataPromise}async fetchJson(n){let e;try{e=await this.fetchImpl(n)}catch(r){let i=r instanceof Error?r.message:String(r);throw new h("internal",z.errors.demoFetchFailed(n,i))}if(!e.ok)throw new h("internal",z.errors.demoFetchFailed(n,`HTTP ${e.status}`));try{return await e.json()}catch(r){let i=r instanceof Error?r.message:String(r);throw new h("internal",z.errors.demoParseFailed(n,i))}}};function ln(t){return!(t.kind&&t.kind.length>0||t.hasIssues!==void 0||t.path||t.offset!==void 0&&t.offset!==0||t.limit!==void 0)}function cn(t){return!(t.kind&&t.kind.length>0||t.from||t.to)}function dn(t){return!(t.severity||t.analyzerId||t.node||t.nodes&&t.nodes.length>0)}function St(t){let n=new Set;for(let e of t)for(let r of e.nodeIds)n.add(r);return n}function pn(t){let e=t.replace(/[.+^${}()|[\]\\]/g,"\\$&").replace(/\*/g,".*").replace(/\?/g,".");return new RegExp(`^${e}$`)}function Mt(){let t=s(N);if(t==="live")return new Pt(s(G),s(F));if(t==="demo")return new he;let n=t;throw new Error(z.errors.unknownMode(String(n)))}var Rt="search",Tt="kinds",Et="linkKinds",Ot="favoritesOnly",It="severities",mn=["error","warn"],At=(()=>{class t{filters=s(gt);router=s(nt);activatedRoute=s(et);kindRegistry=s(J);destroyRef=s(Ee);suppressUrlReadback=!1;constructor(){this.applyUrlToFilters(this.currentParams()),this.router.events.pipe(ct(this.destroyRef)).subscribe(e=>{if(e instanceof qe){if(this.suppressUrlReadback)return;this.applyUrlToFilters(this.currentParams())}}),re(()=>{let e=this.computeQueryParams();this.writeQueryParams(e)})}currentParams(){let e=this.router.parseUrl(this.router.url),r=new URLSearchParams;for(let[i,o]of Object.entries(e.queryParams))Array.isArray(o)?r.set(i,o.join(",")):o!=null&&r.set(i,String(o));return this.activatedRoute,r}applyUrlToFilters(e){let r=e.get(Rt)??"";r!==this.filters.searchText()&&this.filters.setSearchText(r);let i=gn(e.get(Tt),this.kindRegistry.kinds().map(v=>v.name));_e(i,this.filters.selectedKinds())||this.filters.setKinds(i);let o=e.get(Ot)==="true";o!==this.filters.favoritesOnly()&&this.filters.setFavoritesOnly(o);let a=un(e.get(Et));_e(a,this.filters.selectedLinkKinds())||this.filters.setLinkKinds(a);let u=hn(e.get(It)),C=[];this.filters.severityErrorActive()&&C.push("error"),this.filters.severityWarnActive()&&C.push("warn"),_e(u,C)||this.filters.setSeverityFilters(u)}computeQueryParams(){let e=this.filters.searchText().trim(),r=this.filters.selectedKinds(),i=this.filters.selectedLinkKinds(),o=this.filters.favoritesOnly(),a=[];return this.filters.severityErrorActive()&&a.push("error"),this.filters.severityWarnActive()&&a.push("warn"),{[Rt]:e.length>0?e:null,[Tt]:r.length>0?r.join(","):null,[Et]:i.length>0?i.join(","):null,[Ot]:o?"true":null,[It]:a.length>0?a.join(","):null}}writeQueryParams(e){let r=this.currentParams(),i=new Map(Object.entries(e)),o=!1;for(let[a,u]of i)if((r.get(a)??null)!==u){o=!0;break}o&&(this.suppressUrlReadback=!0,this.router.navigate([],{relativeTo:this.activatedRoute,queryParams:e,queryParamsHandling:"merge",replaceUrl:!0}).finally(()=>{setTimeout(()=>{this.suppressUrlReadback=!1},0)}))}static \u0275fac=function(r){return new(r||t)};static \u0275prov=R({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function gn(t,n){if(!t)return[];let e=new Set(n);return t.split(",").map(r=>r.trim()).filter(r=>e.has(r))}function un(t){if(!t)return[];let n=new Set(mt);return t.split(",").map(e=>e.trim()).filter(e=>n.has(e))}function hn(t){if(!t)return[];let n=new Set(mn);return t.split(",").map(e=>e.trim()).filter(e=>n.has(e))}function _e(t,n){if(t.length!==n.length)return!1;for(let e=0;e<t.length;e++)if(t[e]!==n[e])return!1;return!0}var Dt={healthFailed:t=>`ProjectInfoService: /api/health probe failed (${t})`};var q=(()=>{class t{dataSource=s(ne);status=B(null);cwd=d(()=>this.status()?.cwd??null);implVersion=d(()=>this.status()?.implVersion??null);dev=d(()=>this.status()?.dev===!0);activeProviderState=B(null);activeProvider=d(()=>this.activeProviderState());async load(){try{let e=await this.dataSource.health();this.status.set(e)}catch(e){let r=e instanceof Error?e.message:String(e);console.warn(Dt.healthFailed(r))}await this.reloadActiveProvider()}async reloadActiveProvider(){try{let e=await this.dataSource.getActiveProvider();this.activeProviderState.set(e.activeProvider)}catch{}}static \u0275fac=function(r){return new(r||t)};static \u0275prov=R({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var Ft=(()=>{class t extends le{title=s(Ze);projectInfo=s(q);constructor(){super(),re(()=>{let e=Nt(this.projectInfo.cwd()),r=this.projectInfo.implVersion();this.title.setTitle(j.documentTitle(e,r))})}updateTitle(e){let r=Nt(this.projectInfo.cwd()),i=this.projectInfo.implVersion();this.title.setTitle(j.documentTitle(r,i))}static \u0275fac=function(r){return new(r||t)};static \u0275prov=R({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function Nt(t){if(!t)return null;let n=t.replace(/[\\/]+$/,"");if(!n||n===".")return null;let e=Math.max(n.lastIndexOf("/"),n.lastIndexOf("\\"));return(e>=0?n.slice(e+1):n)||null}var ye=!1,Ce=null;async function $t(t){if(ye||fe===""||!t.consentEnabled)return;let n=await import("./chunk-7ANZW2OI.js");n.init({dsn:fe,release:t.release??void 0,environment:t.environment,integrations:e=>e.filter(r=>r.name!=="BrowserSession"),tracesSampleRate:0,sendDefaultPii:!1,allowUrls:[/^https?:\/\/(localhost|127\.0\.0\.1)(:\d+)?\//],beforeSend:e=>ft(e)}),Ce=n,ye=!0}function Lt(t){!ye||Ce===null||Ce.captureException(t)}var jt=(()=>{class t{handleError(e){console.error(e),Lt(e)}static \u0275fac=function(r){return new(r||t)};static \u0275prov=R({token:t,factory:t.\u0275fac})}return t})();function fn(...t){for(let n of t)Promise.resolve(n.load())}var zt={providers:[Ae(),{provide:Ie,useClass:jt},it(wt,rt()),{provide:le,useClass:Ft},Ye(Ge()),xt(),st({}),ee(async()=>{let t=s(ot),[{default:n},{definePreset:e}]=await Promise.all([import("./chunk-43S72FTV.js"),import("./chunk-5ITZXW3A.js")]),r=e(n,{semantic:{primary:{50:"#F5F3FF",100:"#EDE9FE",200:"#DDD6FE",300:"#C4B5FD",400:"#A78BFA",500:"#8B5CF6",600:"#7C3AED",700:"#6D28D9",800:"#4C1D95",900:"#2E1065",950:"#1E0A4D"}}});t.setThemeConfig({theme:{preset:r,options:{darkModeSelector:".app-dark"}}})}),{provide:N,useFactory:dt},{provide:ne,useFactory:Mt},ee(async()=>{let t=s(ne),n=s(ie);try{let[e,r]=await Promise.all([t.getPreferences(),t.health()]);await Promise.all([$t({consentEnabled:e.telemetry.errorsEnabled,release:r.implVersion?`skill-map-cli@${r.implVersion}`:null,environment:e.telemetry.environment}),vt({consentEnabled:e.telemetry.usageUiEnabled,distinctId:e.telemetry.anonymousId})]),bt({environment:e.telemetry.environment}),n.syncTheme()}catch{}}),ee(()=>{fn(s(V),s(ge),s(q))}),ee(()=>{s(At),s(ut),s(ie)})]};var X={toggleToAuto:"Switch to auto theme (follow system)",toggleToLight:"Switch to light theme",toggleToDark:"Switch to dark theme",currentAuto:"Auto theme (follows system)",currentLight:"Light theme",currentDark:"Dark theme"};var Bt={body:"You are viewing a static demo of skill-map's UI. Install it:",installCommand:"npm i -g @skill-map/cli",homeCta:"\u2190 Back to skill-map.ai",homeHref:"/",dismissAria:"Dismiss demo banner"};function bn(t,n){if(t&1){let e=A();c(0,"div",0),P(1,"span",1),c(2,"p",2),g(3),c(4,"code",3),g(5),p()(),c(6,"a",4),g(7),p(),c(8,"p-button",5),T("onClick",function(){O(e);let i=f();return I(i.dismiss())}),p()()}if(t&2){let e=f();l(3),S(" ",e.texts.body," "),l(2),_(e.texts.installCommand),l(),b("href",e.texts.homeHref,oe),l(),_(e.texts.homeCta),l(),b("ariaLabel",e.texts.dismissAria)("text",!0)("rounded",!0)}}var Ut="sm.demoBannerDismissed",Vt=(()=>{class t{mode=s(N);texts=Bt;dismissed=B(this.readDismissed());visible=d(()=>this.mode==="demo"&&!this.dismissed());dismiss(){this.dismissed.set(!0);try{globalThis.localStorage?.setItem(Ut,"1")}catch{}}readDismissed(){if(this.mode!=="demo")return!0;try{return globalThis.localStorage?.getItem(Ut)==="1"}catch{return!1}}static \u0275fac=function(r){return new(r||t)};static \u0275cmp=D({type:t,selectors:[["sm-demo-banner"]],decls:1,vars:1,consts:[["role","status","data-testid","demo-banner",1,"demo-banner"],["aria-hidden","true",1,"demo-banner__icon","fa-solid","fa-circle-info"],[1,"demo-banner__body"],["data-testid","demo-banner-install",1,"demo-banner__cmd"],["data-testid","demo-banner-home",1,"demo-banner__home",3,"href"],["icon","fa-solid fa-xmark","severity","secondary","size","small","data-testid","demo-banner-dismiss",3,"onClick","ariaLabel","text","rounded"]],template:function(r,i){r&1&&x(0,bn,9,7,"div",0),r&2&&w(i.visible()?0:-1)},dependencies:[me,pe],styles:["[_nghost-%COMP%]{display:block}.demo-banner[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;border-bottom:1px solid var(--p-content-border-color);background:var(--p-highlight-background);color:var(--p-text-color);font-size:.875rem}.demo-banner__icon[_ngcontent-%COMP%]{font-size:1.1rem;color:var(--p-primary-color)}.demo-banner__body[_ngcontent-%COMP%]{flex:1 1 auto;margin:0;line-height:1.4}.demo-banner__cmd[_ngcontent-%COMP%]{font-family:var(--sm-font-mono);background:var(--p-content-background);border:1px solid var(--p-content-border-color);border-radius:var(--sm-radius-md);padding:.05rem .4rem;font-size:.85em;margin-left:.25rem}.demo-banner__home[_ngcontent-%COMP%]{color:var(--p-primary-color);font-weight:500;text-decoration:none;white-space:nowrap}.demo-banner__home[_ngcontent-%COMP%]:hover, .demo-banner__home[_ngcontent-%COMP%]:focus-visible{text-decoration:underline}"],changeDetection:0})}return t})();var Jt={body:t=>`The scan hit its ceiling of ${t} ${t===1?"file":"files"}; some files were dropped from the corpus. Trim .skillmapignore or raise --max-scan.`,cta:"Edit .skillmapignore",ctaAria:"Open Settings to edit ignored patterns"};function _n(t,n){if(t&1){let e=A();U(0,"div",0),te(1,"span",1),U(2,"p",2),g(3),Y(),U(4,"button",3),se("click",function(){O(e);let i=f();return I(i.onCta())}),g(5),Y()()}if(t&2){let e=f();l(3),S(" ",e.state().body," "),l(),y("aria-label",e.texts.ctaAria),l(),S(" ",e.texts.cta," ")}}var Kt=(()=>{class t{loader=s(V);texts=Jt;openSettings=ae();state=d(()=>{let e=this.loader.scanMeta();if(!e||e.scanTruncated!==!0)return{visible:!1,body:""};let r=e.scanCeiling;return r===void 0?{visible:!1,body:""}:{visible:!0,body:this.texts.body(r)}});visible=d(()=>this.state().visible);onCta(){this.openSettings.emit()}static \u0275fac=function(r){return new(r||t)};static \u0275cmp=D({type:t,selectors:[["sm-oversized-banner"]],outputs:{openSettings:"openSettings"},decls:1,vars:1,consts:[["role","status","data-testid","oversized-banner",1,"oversized-banner"],["aria-hidden","true",1,"oversized-banner__icon","fa-solid","fa-triangle-exclamation"],["data-testid","oversized-banner-body",1,"oversized-banner__body"],["type","button","data-testid","oversized-banner-cta",1,"oversized-banner__cta",3,"click"]],template:function(r,i){r&1&&x(0,_n,6,3,"div",0),r&2&&w(i.visible()?0:-1)},styles:["[_nghost-%COMP%]{display:block}.oversized-banner[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;border-bottom:1px solid var(--p-content-border-color);font-size:.875rem;background:var(--sm-severity-warn-bg);color:var(--sm-severity-warn)}.oversized-banner__icon[_ngcontent-%COMP%]{font-size:1.1rem;color:var(--sm-severity-warn)}.oversized-banner__body[_ngcontent-%COMP%]{flex:1 1 auto;margin:0;line-height:1.4}.oversized-banner__cta[_ngcontent-%COMP%]{flex:0 0 auto;background:transparent;color:inherit;border:1px solid currentColor;padding:.25rem .75rem;border-radius:var(--p-border-radius);font:inherit;font-size:.8125rem;font-weight:500;cursor:pointer;transition:background .15s ease}.oversized-banner__cta[_ngcontent-%COMP%]:hover, .oversized-banner__cta[_ngcontent-%COMP%]:focus-visible{background:color-mix(in srgb,currentColor 12%,transparent)}.oversized-banner__cta[_ngcontent-%COMP%]:focus-visible{outline:2px solid currentColor;outline-offset:2px}"],changeDetection:0})}return t})();var Xt={headline:t=>`${t} ${t===1?"file":"files"} skipped, ${t===1?"it exceeds":"they exceed"} the max file size.`,more:"...",seeConsole:"See the full list in the console.",cta:"Open Project settings",ctaAria:"Open Settings to adjust the max file size or ignore patterns"};function Cn(t,n){if(t&1&&(c(0,"span",4),g(1),p()),t&2){let e=f(2);b("pTooltip",e.state().tooltip),l(),_(e.texts.more)}}function kn(t,n){if(t&1){let e=A();c(0,"div",0),P(1,"span",1),c(2,"p",2),g(3),c(4,"span",3),g(5),p(),x(6,Cn,2,2,"span",4),p(),c(7,"button",5),T("click",function(){O(e);let i=f();return I(i.onCta())}),g(8),p()()}if(t&2){let e=f();l(3),S(" ",e.texts.headline(e.state().count)," "),l(2),S(" ",e.state().first," "),l(),w(e.state().hasMore?6:-1),l(),y("aria-label",e.texts.ctaAria),l(),S(" ",e.texts.cta," ")}}var xn=5,Ht=(()=>{class t{loader=s(V);texts=Xt;openSettings=ae();state=d(()=>{let e=this.loader.scanMeta(),r=e?.oversizedFiles??[],i=e?.stats?.filesOversized??r.length;if(i<=0)return{visible:!1,count:0,first:"",hasMore:!1,tooltip:""};let o=r[0]?this.describe(r[0]):"",a=i>1,u="";if(a){let C=r.slice(1);i-1>xn?u=this.texts.seeConsole:u=C.map(v=>this.describe(v)).join(`
4
+ `)}return{visible:!0,count:i,first:o,hasMore:a,tooltip:u}});visible=d(()=>this.state().visible);describe(e){return`${e.path.split("/").pop()??e.path} (${pt(e.bytes)})`}onCta(){this.openSettings.emit()}static \u0275fac=function(r){return new(r||t)};static \u0275cmp=D({type:t,selectors:[["sm-skipped-files-banner"]],outputs:{openSettings:"openSettings"},decls:1,vars:1,consts:[["role","status","data-testid","skipped-files-banner",1,"skipped-files-banner"],["aria-hidden","true",1,"skipped-files-banner__icon","fa-solid","fa-triangle-exclamation"],["data-testid","skipped-files-banner-body",1,"skipped-files-banner__body"],["data-testid","skipped-files-banner-first",1,"skipped-files-banner__first"],["data-testid","skipped-files-banner-more",1,"skipped-files-banner__more",3,"pTooltip"],["type","button","data-testid","skipped-files-banner-cta",1,"skipped-files-banner__cta",3,"click"]],template:function(r,i){r&1&&x(0,kn,9,5,"div",0),r&2&&w(i.visible()?0:-1)},dependencies:[de,ce],styles:["[_nghost-%COMP%]{display:block}.skipped-files-banner[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;border-bottom:1px solid var(--p-content-border-color);font-size:.875rem;background:var(--sm-severity-warn-bg);color:var(--sm-severity-warn)}.skipped-files-banner__icon[_ngcontent-%COMP%]{font-size:1.1rem;color:var(--sm-severity-warn)}.skipped-files-banner__body[_ngcontent-%COMP%]{flex:1 1 auto;margin:0;line-height:1.4}.skipped-files-banner__first[_ngcontent-%COMP%]{font-weight:600}.skipped-files-banner__more[_ngcontent-%COMP%]{font-weight:600;cursor:help}.skipped-files-banner__cta[_ngcontent-%COMP%]{flex:0 0 auto;background:transparent;color:inherit;border:1px solid currentColor;padding:.25rem .75rem;border-radius:var(--p-border-radius);font:inherit;font-size:.8125rem;font-weight:500;cursor:pointer;transition:background .15s ease}.skipped-files-banner__cta[_ngcontent-%COMP%]:hover, .skipped-files-banner__cta[_ngcontent-%COMP%]:focus-visible{background:color-mix(in srgb,currentColor 12%,transparent)}.skipped-files-banner__cta[_ngcontent-%COMP%]:focus-visible{outline:2px solid currentColor;outline-offset:2px}"],changeDetection:0})}return t})();var Wt={body:"Connection to the server was lost. Live updates are paused.",reconnectCta:"Reconnect",reconnectAria:"Retry the connection to the server"};function wn(t,n){if(t&1){let e=A();U(0,"div",0),te(1,"span",1),U(2,"p",2),g(3),Y(),U(4,"button",3),se("click",function(){O(e);let i=f();return I(i.reconnect())}),te(5,"span",4),g(6),Y()()}if(t&2){let e=f();l(3),_(e.texts.body),l(),y("aria-label",e.texts.reconnectAria),l(2),S(" ",e.texts.reconnectCta," ")}}var Qt=(()=>{class t{mode=s(N);ws=s(F);texts=Wt;visible=d(()=>this.mode==="live"&&this.ws.connectionState()==="lost");reconnect(){this.ws.reconnect()}static \u0275fac=function(r){return new(r||t)};static \u0275cmp=D({type:t,selectors:[["sm-connection-banner"]],decls:1,vars:1,consts:[["role","alert","data-testid","connection-banner",1,"connection-banner"],["aria-hidden","true",1,"connection-banner__icon","fa-solid","fa-plug-circle-xmark"],[1,"connection-banner__body"],["type","button","data-testid","connection-banner-reconnect",1,"connection-banner__cta",3,"click"],["aria-hidden","true",1,"fa-solid","fa-rotate-right"]],template:function(r,i){r&1&&x(0,wn,7,3,"div",0),r&2&&w(i.visible()?0:-1)},styles:["[_nghost-%COMP%]{display:block}.connection-banner[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;border-bottom:1px solid var(--p-content-border-color);background:var(--sm-severity-error-bg);color:var(--sm-severity-error);font-size:.875rem}.connection-banner__icon[_ngcontent-%COMP%]{font-size:1.1rem;color:var(--sm-severity-error)}.connection-banner__body[_ngcontent-%COMP%]{flex:1 1 auto;margin:0;line-height:1.4}.connection-banner__cta[_ngcontent-%COMP%]{flex:0 0 auto;display:inline-flex;align-items:center;gap:.4rem;background:transparent;color:inherit;border:1px solid currentColor;padding:.25rem .75rem;border-radius:var(--p-border-radius);font:inherit;font-size:.8125rem;font-weight:500;cursor:pointer;transition:background .15s ease}.connection-banner__cta[_ngcontent-%COMP%]:hover, .connection-banner__cta[_ngcontent-%COMP%]:focus-visible{background:color-mix(in srgb,currentColor 12%,transparent)}.connection-banner__cta[_ngcontent-%COMP%]:focus-visible{outline:2px solid currentColor;outline-offset:2px}"],changeDetection:0})}return t})();var Pn=()=>[import("./chunk-HLHEDNSJ.js").then(t=>t.SettingsModal)];function Sn(t,n){if(t&1&&(c(0,"span",11),g(1),p()),t&2){let e=f();b("pTooltip",e.versionTooltip()),y("aria-label",e.texts.devChipA11y),l(),_(e.texts.devChip)}}function Mn(t,n){if(t&1&&(c(0,"span",12),g(1),p()),t&2){let e=f();b("pTooltip",e.versionTooltip()),y("aria-label",e.versionA11y()),l(),_(e.versionLabel())}}function Rn(t,n){if(t&1&&(c(0,"span",24),g(1),p()),t&2){let e=n,r=f();Ue("--provider-color",e.color)("--provider-color-dark",e.colorDark??e.color),b("pTooltip",r.texts.lensChipTooltip(e.label)),y("aria-label",r.texts.lensChipA11y(e.label)),l(),_(e.label)}}function Tn(t,n){if(t&1){let e=A();c(0,"button",25),T("click",function(){O(e);let i=f();return I(i.copyUpdateCommand())}),P(1,"i",26),c(2,"span"),g(3),p()(),c(4,"a",27),P(5,"i",28),p()}if(t&2){let e=f();b("pTooltip",e.updateChipTooltip()),y("aria-label",e.updateChipA11y()),l(),Je(e.updateChipIcon()),l(2),_(e.updateChipText()),l(),b("href",e.npmLinkUrl,oe)("pTooltip",e.npmLinkTooltip),y("aria-label",e.npmLinkA11y)}}function En(t,n){if(t&1&&(c(0,"p",15)(1,"bdi",29),g(2),p()()),t&2){let e=n;y("title",e),l(2),_(e)}}function On(t,n){if(t&1){let e=A();c(0,"sm-settings-modal",30),T("visibleChange",function(i){O(e);let o=f();return I(o.onSettingsVisibleChange(i))}),p()}if(t&2){let e=f();b("visible",e.settingsOpen())}}var Yt=(()=>{class t{loader=s(V);theme=s(_t);projectInfo=s(q);providerRegistry=s(K);scanTrigger=s(kt);wsEvents=s(F);usageTracker=s(ie);updateCheck=s(ge);texts=j;isDemo=s(N)==="demo";settingsTexts=Ct;settingsOpen=B(!1);openSettings(){this.settingsOpen.set(!0),this.usageTracker.trackFeature("settings")}onSettingsVisibleChange(e){this.settingsOpen.set(e),e||this.projectInfo.reloadActiveProvider()}scanning=d(()=>this.scanTrigger.scanning()||this.wsEvents.scanActive());scanError=this.scanTrigger.scanError;triggerScan(){return this.scanTrigger.run()}updateChipCopied=B(!1);updateChipText=d(()=>this.updateChipCopied()?M.copiedLabel:M.available);updateChipIcon=d(()=>this.updateChipCopied()?"pi pi-check":"pi pi-download");updateChipTooltip=d(()=>this.updateChipCopied()?M.copiedTooltip:M.tooltip(this.updateCheck.latest()??""));updateChipA11y=d(()=>M.a11yLabel(this.updateCheck.latest()??""));npmLinkUrl=M.npmLinkUrl;npmLinkTooltip=M.npmLinkTooltip;npmLinkA11y=M.npmLinkA11y;async copyUpdateCommand(){try{await navigator.clipboard.writeText(M.copyCommand),this.updateChipCopied.set(!0),setTimeout(()=>this.updateChipCopied.set(!1),2e3)}catch{}}versionLabel=d(()=>M.versionLabel(this.updateCheck.current()??""));versionTooltip=d(()=>M.versionTooltip(this.updateCheck.current()??""));versionA11y=d(()=>M.versionA11yLabel(this.updateCheck.current()??""));isDevBuild=this.projectInfo.dev;lensChip=d(()=>this.providerRegistry.lensChip(this.projectInfo.activeProvider()));count=this.loader.count;linkAnalysis=d(()=>yt(this.loader.nodes(),this.loader.scan()));linkCount=d(()=>this.linkAnalysis().raw);mapInfoTooltip=d(()=>j.badge.mapInfo(this.count(),this.linkAnalysis()));mapInfoA11y=d(()=>j.badge.mapInfoA11y(this.count(),this.linkAnalysis()));rootLabel=d(()=>{let e=this.projectInfo.cwd();if(e&&e!==".")return e;let r=this.loader.scan()?.roots??[];if(r.length===0)return"";let i=r[0].replace(/[\\/]+$/,"");return!i||i==="."?"":i});isDevMode=Ke();themeMode=this.theme.mode;markSrc=d(()=>this.theme.extraTheme()==="matrix"?"skill-map-mark-matrix.svg":this.theme.resolved()==="dark"?"skill-map-mark-light.svg":"skill-map-mark-dark.svg");themeIcon=d(()=>{switch(this.themeMode()){case"auto":return"pi pi-desktop";case"light":return"pi pi-sun";case"dark":return"fa-regular fa-moon"}});themeLabel=d(()=>{switch(this.themeMode()){case"auto":return X.toggleToLight;case"light":return X.toggleToDark;case"dark":return X.toggleToAuto}});themeTooltip=d(()=>{switch(this.themeMode()){case"auto":return X.currentAuto;case"light":return X.currentLight;case"dark":return X.currentDark}});toggleTheme(){this.theme.toggle()}static \u0275fac=function(r){return new(r||t)};static \u0275cmp=D({type:t,selectors:[["sm-root"]],decls:39,vars:28,consts:[["role","alert","data-testid","viewport-warning",1,"viewport-warning"],[1,"viewport-warning__card"],["aria-hidden","true",1,"fa-solid","fa-desktop","viewport-warning__icon"],[1,"viewport-warning__title"],[1,"viewport-warning__subtitle"],[1,"viewport-warning__body"],["data-testid","shell",1,"shell"],[3,"openSettings"],["data-testid","shell-topbar",1,"shell__topbar"],[1,"shell__brand"],["width","32","height","32","priority","","alt","","aria-hidden","true",1,"shell__brand-mark",3,"ngSrc"],["tooltipPosition","bottom","data-testid","shell-dev",1,"shell__dev",3,"pTooltip"],["tooltipPosition","bottom","data-testid","shell-version",1,"shell__version",3,"pTooltip"],["tooltipPosition","bottom","data-testid","shell-lens",1,"shell__lens",3,"--provider-color","--provider-color-dark","pTooltip"],[1,"shell__beta"],["data-testid","shell-root-label",1,"shell__tag"],["data-testid","shell-nav",1,"shell__nav"],["slot","topbar.nav.start",3,"node"],[1,"shell__actions"],["type","button","tooltipPosition","bottom","data-testid","shell-refresh",1,"shell__refresh",3,"click","pTooltip","disabled"],["aria-hidden","true",1,"pi","pi-sync"],["tooltipPosition","left","severity","secondary","size","small","data-testid","action-theme-toggle",3,"onClick","icon","ariaLabel","pTooltip","text","rounded"],["icon","pi pi-sliders-h","tooltipPosition","left","severity","secondary","size","small","data-testid","action-settings",3,"onClick","ariaLabel","pTooltip","text","rounded"],[1,"shell__main"],["tooltipPosition","bottom","data-testid","shell-lens",1,"shell__lens",3,"pTooltip"],["type","button","tooltipPosition","bottom","data-testid","shell-update-chip",1,"shell__update-chip",3,"click","pTooltip"],["aria-hidden","true"],["target","_blank","rel","noopener noreferrer","tooltipPosition","bottom","data-testid","shell-update-npm-link",1,"shell__update-npm-link",3,"href","pTooltip"],["aria-hidden","true",1,"pi","pi-external-link"],["dir","ltr"],[3,"visibleChange","visible"]],template:function(r,i){if(r&1&&(c(0,"div",0)(1,"div",1),P(2,"i",2),c(3,"h2",3),g(4),p(),c(5,"p",4),g(6),p(),c(7,"p",5),g(8),p()()(),c(9,"div",6),P(10,"sm-demo-banner"),c(11,"sm-oversized-banner",7),T("openSettings",function(){return i.openSettings()}),p(),c(12,"sm-skipped-files-banner",7),T("openSettings",function(){return i.openSettings()}),p(),P(13,"sm-connection-banner"),c(14,"header",8)(15,"div",9),P(16,"img",10),c(17,"div")(18,"h1"),g(19),x(20,Sn,2,3,"span",11)(21,Mn,2,3,"span",12),x(22,Rn,2,7,"span",13),c(23,"span",14),g(24),p(),x(25,Tn,6,8),p(),x(26,En,3,2,"p",15),p()(),c(27,"nav",16),P(28,"sm-view-contributions-host",17),p(),c(29,"div",18)(30,"button",19),T("click",function(){return i.triggerScan()}),P(31,"i",20),p(),c(32,"p-button",21),T("onClick",function(){return i.toggleTheme()}),p(),c(33,"p-button",22),T("onClick",function(){return i.openSettings()}),p()()(),c(34,"main",23),P(35,"router-outlet"),p(),je(36,On,1,1),ze(37,36,Pn),p()),r&2){let o,a,u;l(4),_(i.texts.viewportWarning.title),l(2),_(i.texts.viewportWarning.subtitle),l(2),_(i.texts.viewportWarning.body),l(8),b("ngSrc",i.markSrc()),l(3),S(" ",i.texts.brand," "),l(),w(i.isDevBuild()?20:(o=i.updateCheck.current())?21:-1,o),l(2),w((a=i.lensChip())?22:-1,a),l(),y("aria-label",i.isDemo?i.texts.betaDemo:i.texts.beta),l(),_(i.isDemo?i.texts.betaDemo:i.texts.beta),l(),w(i.updateCheck.isOutdated()&&!i.isDevMode?25:-1),l(),w((u=i.rootLabel())?26:-1,u),l(),y("aria-label",i.texts.a11y.viewSwitcher),l(),b("node",null),l(2),Ve("is-spinning",i.scanning()),b("pTooltip",i.mapInfoTooltip())("disabled",i.scanning()),y("aria-label",i.mapInfoA11y()),l(2),b("icon",i.themeIcon())("ariaLabel",i.themeLabel())("pTooltip",i.themeTooltip())("text",!0)("rounded",!0),l(),b("ariaLabel",i.settingsTexts.a11y.triggerLabel)("pTooltip",i.settingsTexts.triggerTooltip)("text",!0)("rounded",!0),l(4),Be(i.settingsOpen())}},dependencies:[tt,me,pe,lt,de,ce,at,Xe,Vt,Kt,Ht,Qt,ht],styles:['[_nghost-%COMP%]{display:block;height:100dvh;--shell-topbar-bg: #FFFFFF;--shell-topbar-border: var(--sm-violet-100);--shell-topbar-text: var(--sm-violet-800);--shell-topbar-text-strong: var(--sm-violet-900);--shell-topbar-text-muted: var(--sm-violet-600);--shell-topbar-hover-bg: color-mix(in srgb, var(--sm-violet-500) 10%, transparent);--shell-topbar-active-bg: var(--sm-violet-100);--shell-topbar-active-text: var(--sm-violet-800);--shell-topbar-badge-bg: var(--sm-violet-100)}.app-dark[_nghost-%COMP%], .app-dark [_nghost-%COMP%]{--shell-topbar-bg: #1A1B22;--shell-topbar-border: color-mix(in srgb, var(--sm-violet-300) 8%, transparent);--shell-topbar-text: var(--sm-violet-100);--shell-topbar-text-strong: var(--sm-violet-100);--shell-topbar-text-muted: var(--sm-violet-300);--shell-topbar-hover-bg: color-mix(in srgb, var(--sm-violet-400) 12%, transparent);--shell-topbar-active-bg: color-mix(in srgb, var(--sm-violet-500) 22%, transparent);--shell-topbar-active-text: var(--sm-violet-100);--shell-topbar-badge-bg: color-mix(in srgb, var(--sm-violet-500) 14%, transparent)}.shell[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100dvh}.shell__topbar[_ngcontent-%COMP%]{display:flex;align-items:center;gap:1rem;padding:.75rem 1.5rem;background:color-mix(in srgb,var(--shell-topbar-bg) 85%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--shell-topbar-border);color:var(--shell-topbar-text)}.shell__brand[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.75rem}.shell__brand-mark[_ngcontent-%COMP%]{width:2rem;height:2rem;display:block}.shell__brand[_ngcontent-%COMP%] h1[_ngcontent-%COMP%]{margin:0;font-size:1.05rem;font-weight:600;letter-spacing:-.01em;color:var(--shell-topbar-text-strong)}.shell__beta[_ngcontent-%COMP%]{font-family:var(--sm-font-display-brand);font-weight:600;font-size:10px;line-height:1;letter-spacing:.06em;text-transform:uppercase;color:#ad322b;background:#ad322b14;border-radius:var(--sm-radius-sm);padding:4px 8px;margin-left:8px;-webkit-user-select:none;user-select:none;display:inline-block;vertical-align:middle;white-space:nowrap}.app-dark[_nghost-%COMP%] .shell__beta[_ngcontent-%COMP%], .app-dark [_nghost-%COMP%] .shell__beta[_ngcontent-%COMP%]{color:#e07570;background:#cf464024}.shell__version[_ngcontent-%COMP%]{display:inline-block;margin-left:6px;padding:2px 6px;border-radius:var(--sm-radius-sm);font-family:var(--sm-font-mono);font-size:11px;line-height:1;font-weight:500;letter-spacing:.02em;color:var(--p-text-muted-color);background:var(--p-content-hover-background);vertical-align:middle;-webkit-user-select:text;user-select:text}.shell__dev[_ngcontent-%COMP%]{display:inline-block;margin-left:6px;padding:2px 8px;border-radius:var(--sm-radius-sm);font-family:var(--sm-font-display-brand);font-size:10px;line-height:1;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#8a5a00;background:#d69e2e29;vertical-align:middle;-webkit-user-select:none;user-select:none}.app-dark[_nghost-%COMP%] .shell__dev[_ngcontent-%COMP%], .app-dark [_nghost-%COMP%] .shell__dev[_ngcontent-%COMP%]{color:#fbd38d;background:#d69e2e38}.shell__lens[_ngcontent-%COMP%]{display:inline-block;margin-left:6px;padding:2px 8px;border-radius:var(--sm-radius-sm);font-size:11px;line-height:1;font-weight:600;letter-spacing:.02em;color:var(--provider-color);background:color-mix(in srgb,var(--provider-color) 14%,transparent);vertical-align:middle;-webkit-user-select:none;user-select:none}.app-dark[_nghost-%COMP%] .shell__lens[_ngcontent-%COMP%], .app-dark [_nghost-%COMP%] .shell__lens[_ngcontent-%COMP%]{color:var(--provider-color-dark);background:color-mix(in srgb,var(--provider-color-dark) 24%,transparent)}.shell__update-chip[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:4px;margin-left:8px;padding:3px 8px;font-family:inherit;font-size:11px;line-height:1;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--p-primary-color);background:var(--p-primary-50);border:1px solid var(--p-primary-200);border-radius:var(--sm-radius-pill);text-decoration:none;cursor:pointer;transition:background-color .12s ease,color .12s ease;vertical-align:middle}.shell__update-chip[_ngcontent-%COMP%]:hover, .shell__update-chip[_ngcontent-%COMP%]:focus-visible{background:var(--p-primary-100);color:var(--p-primary-700)}.shell__update-chip[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:12px;transform:translateY(1px)}.app-dark[_nghost-%COMP%] .shell__update-chip[_ngcontent-%COMP%], .app-dark [_nghost-%COMP%] .shell__update-chip[_ngcontent-%COMP%]{color:var(--p-primary-300);background:#ffffff0a;border-color:var(--p-primary-700)}.shell__update-npm-link[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;margin-left:4px;padding:3px 4px;color:var(--p-primary-color);text-decoration:none;border-radius:var(--sm-radius-pill);transition:color .12s ease,background-color .12s ease;vertical-align:middle}.shell__update-npm-link[_ngcontent-%COMP%]:hover, .shell__update-npm-link[_ngcontent-%COMP%]:focus-visible{color:var(--p-primary-700);background:var(--p-primary-50)}.shell__update-npm-link[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:12px;transform:translateY(1px)}.app-dark[_nghost-%COMP%] .shell__update-npm-link[_ngcontent-%COMP%], .app-dark [_nghost-%COMP%] .shell__update-npm-link[_ngcontent-%COMP%]{color:var(--p-primary-300)}.app-dark[_nghost-%COMP%] .shell__update-npm-link[_ngcontent-%COMP%]:hover, .app-dark [_nghost-%COMP%] .shell__update-npm-link[_ngcontent-%COMP%]:hover, .app-dark[_nghost-%COMP%] .shell__update-npm-link[_ngcontent-%COMP%]:focus-visible, .app-dark [_nghost-%COMP%] .shell__update-npm-link[_ngcontent-%COMP%]:focus-visible{color:var(--p-primary-200);background:#ffffff0a}.shell__tag[_ngcontent-%COMP%]{margin:.35rem 0 0;font-size:.72rem;color:var(--shell-topbar-text-muted);letter-spacing:.02em;text-transform:uppercase;max-width:40rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;direction:rtl}.shell__nav[_ngcontent-%COMP%]{display:flex;gap:.25rem;margin-left:auto}.shell__nav[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{padding:.5rem .9rem;border-radius:.5rem;font-size:.9rem;font-weight:500;color:var(--shell-topbar-text-muted);transition:background .15s ease,color .15s ease}.shell__nav[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:hover{background:var(--shell-topbar-hover-bg);color:var(--shell-topbar-text-strong)}.shell__nav[_ngcontent-%COMP%] a.is-active[_ngcontent-%COMP%]{background:var(--shell-topbar-active-bg);color:var(--shell-topbar-active-text)}.shell__search[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:.25rem;position:relative}.shell__nav-search[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;padding:0;border:none;border-radius:.5rem;background:transparent;color:var(--shell-topbar-text-muted);cursor:pointer;transition:background .15s ease,color .15s ease,opacity .15s ease}.shell__nav-search[_ngcontent-%COMP%]:hover{background:var(--shell-topbar-hover-bg);color:var(--shell-topbar-text-strong)}.shell__search.is-open[_ngcontent-%COMP%] .shell__nav-search[_ngcontent-%COMP%]{color:var(--shell-topbar-text-strong)}.shell__nav-search[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:.95rem}.shell__search.has-query[_ngcontent-%COMP%]:not(.is-open) .shell__nav-search[_ngcontent-%COMP%]{position:relative;color:var(--shell-topbar-text-strong)}.shell__search.has-query[_ngcontent-%COMP%]:not(.is-open) .shell__nav-search[_ngcontent-%COMP%]:after{content:"";position:absolute;top:.45rem;right:.45rem;width:6px;height:6px;border-radius:50%;background:var(--p-primary-color)}.shell__search-input[_ngcontent-%COMP%]{width:240px;height:2.25rem}.shell__search-clear[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;width:1.6rem;height:1.6rem;padding:0;border:none;border-radius:50%;background:transparent;color:var(--shell-topbar-text-muted);cursor:pointer;line-height:1}.shell__search-clear[_ngcontent-%COMP%]:hover{background:var(--shell-topbar-hover-bg);color:var(--shell-topbar-text-strong)}.shell__search-clear[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:.7rem}.shell__actions[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.75rem;--p-button-text-secondary-color: var(--shell-topbar-text-muted);--p-button-text-secondary-hover-color: var(--shell-topbar-text-strong);--p-button-text-secondary-hover-background: var(--shell-topbar-hover-bg);--p-button-text-secondary-active-color: var(--shell-topbar-text-strong);--p-button-text-secondary-active-background: var(--shell-topbar-hover-bg)}.shell__refresh[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:none;border-radius:var(--sm-radius-pill);background:transparent;color:var(--shell-topbar-text-muted);cursor:pointer;transition:background .15s ease,color .15s ease}.shell__refresh[_ngcontent-%COMP%]:hover:not(:disabled), .shell__refresh[_ngcontent-%COMP%]:focus-visible:not(:disabled){background:var(--shell-topbar-hover-bg);color:var(--shell-topbar-text-strong);outline:none}.shell__refresh[_ngcontent-%COMP%]:disabled{cursor:progress;opacity:.7}.shell__refresh[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:1rem}.shell__refresh.is-spinning[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_shell-refresh-spin 1s linear infinite}@keyframes _ngcontent-%COMP%_shell-refresh-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.shell__main[_ngcontent-%COMP%]{flex:1;min-height:0;overflow-y:auto;width:100%}@media(max-width:1280px){.shell__topbar[_ngcontent-%COMP%]{gap:1rem;padding:.5rem 1rem}.shell__tag[_ngcontent-%COMP%]{max-width:26rem}.shell__nav[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{padding:.4rem .7rem;font-size:.85rem}}.viewport-warning[_ngcontent-%COMP%]{display:none}@media(max-width:767px){.viewport-warning[_ngcontent-%COMP%]{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:var(--sm-bg-content)}.viewport-warning__card[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.85rem;max-width:22rem}.viewport-warning__icon[_ngcontent-%COMP%]{font-size:3rem;color:var(--p-primary-color);margin-bottom:.25rem}.viewport-warning__title[_ngcontent-%COMP%]{margin:0;font-size:1.35rem;font-weight:700;color:var(--p-text-color);line-height:1.25}.viewport-warning__subtitle[_ngcontent-%COMP%]{margin:0;font-size:1rem;font-weight:500;color:var(--p-primary-color);line-height:1.35}.viewport-warning__body[_ngcontent-%COMP%]{margin:0;color:var(--p-text-muted-color);line-height:1.5;font-size:.9rem}.shell[_ngcontent-%COMP%]{display:none}}'],changeDetection:0})}return t})();We(Yt,zt).catch(t=>console.error(t));
@@ -289,14 +289,24 @@ CREATE TABLE scan_meta (
289
289
  stats_files_walked INTEGER NOT NULL,
290
290
  stats_files_skipped INTEGER NOT NULL,
291
291
  stats_duration_ms INTEGER NOT NULL,
292
- -- Node-cap envelope (see spec/cli-contract.md §Scan, `scan.maxNodes` setting
293
- -- and `--max-nodes` flag). `recommended_node_limit` is the effective default
294
- -- (from `scan.maxNodes`) that produced this scan; the UI raises a persistent
295
- -- "oversized graph" banner when `stats_files_walked >= recommended_node_limit`.
296
- -- `override_max_nodes` is the per-invocation override (when `--max-nodes <N>`
297
- -- was passed) or NULL when the value above came from the setting.
298
- recommended_node_limit INTEGER NOT NULL,
299
- override_max_nodes INTEGER,
292
+ -- Scan-ceiling vs render-cap envelope (see spec/cli-contract.md §Scan).
293
+ -- Two independent knobs:
294
+ -- - `scan_ceiling` is the effective WALK-INTAKE ceiling that produced
295
+ -- this scan (`scan.maxScan` setting, default 50000, or the
296
+ -- `--max-scan <N>` override). The walker walks, parses, analyzes, and
297
+ -- reference-validates the full corpus up to this number, so references
298
+ -- resolve across the whole project regardless of how many nodes the
299
+ -- map renders.
300
+ -- - `scan_truncated` is 1 when the walker reached `scan_ceiling` and
301
+ -- dropped files (in stable provider-walker order), 0 otherwise. The UI
302
+ -- raises a persistent banner pointing at the `.skillmapignore` editor.
303
+ -- - `max_render_nodes` is the effective MAP RENDER cap (`scan.maxNodes`
304
+ -- setting, default 256, or the `--max-nodes <N>` override). Pure
305
+ -- metadata: it does NOT bound the walk, only the graph projection the
306
+ -- UI draws onto the canvas.
307
+ scan_ceiling INTEGER NOT NULL,
308
+ scan_truncated INTEGER NOT NULL DEFAULT 0,
309
+ max_render_nodes INTEGER NOT NULL,
300
310
  -- File-size skip envelope (see spec/cli-contract.md §Scan, `scan.maxFileSizeBytes`
301
311
  -- setting, default 1 MiB). `files_oversized` is the count of files the walker
302
312
  -- skipped before reading because they exceeded the limit (= `stats.filesOversized`);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skill-map/cli",
3
- "version": "0.61.5",
3
+ "version": "0.62.1",
4
4
  "description": "skill-map reference implementation — kernel + CLI + adapters.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -61,7 +61,7 @@
61
61
  "smol-toml": "1.6.1",
62
62
  "typanion": "3.14.0",
63
63
  "ws": "8.21.0",
64
- "@skill-map/spec": "0.55.1"
64
+ "@skill-map/spec": "0.56.0"
65
65
  },
66
66
  "devDependencies": {
67
67
  "@eslint/js": "10.0.1",