@skill-map/cli 0.28.0 → 0.29.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/dist/cli/tutorial/sm-tutorial.md +94 -20
  2. package/dist/cli.js +1408 -1193
  3. package/dist/cli.js.map +1 -1
  4. package/dist/index.js +116 -99
  5. package/dist/index.js.map +1 -1
  6. package/dist/kernel/index.d.ts +903 -1004
  7. package/dist/kernel/index.js +116 -99
  8. package/dist/kernel/index.js.map +1 -1
  9. package/dist/ui/chunk-3SI3TVER.js +7 -0
  10. package/dist/ui/{chunk-4GTCV7V4.js → chunk-47OZB7LR.js} +1 -1
  11. package/dist/ui/{chunk-JMP2LDMI.js → chunk-5JBW2LUN.js} +1 -1
  12. package/dist/ui/chunk-BL7KARTN.js +317 -0
  13. package/dist/ui/chunk-DMSZOXER.js +1 -0
  14. package/dist/ui/{chunk-Y7MXGXU3.js → chunk-DZBSELHN.js} +1 -1
  15. package/dist/ui/chunk-EFKSD7PT.js +123 -0
  16. package/dist/ui/{chunk-Z2667C3S.js → chunk-FEPH4VNB.js} +1 -1
  17. package/dist/ui/{chunk-PY2R7LHN.js → chunk-FQOZBFJ5.js} +1 -1
  18. package/dist/ui/{chunk-WOLLYGGL.js → chunk-KJQEO6P3.js} +1 -1
  19. package/dist/ui/{chunk-VO6NF24F.js → chunk-LS2NXZQZ.js} +1 -1
  20. package/dist/ui/{chunk-J3YWUNFO.js → chunk-LTQTJU54.js} +1 -1
  21. package/dist/ui/{chunk-6BG7PBUN.js → chunk-NGIFGXW7.js} +1 -1
  22. package/dist/ui/{chunk-5W6J6H76.js → chunk-SBCO7ZSP.js} +1 -1
  23. package/dist/ui/chunk-VB56BUGO.js +1 -0
  24. package/dist/ui/{chunk-UXCAEDR6.js → chunk-VDQLDTTR.js} +1 -1
  25. package/dist/ui/{chunk-AD7RBRD3.js → chunk-WJLIYGWJ.js} +5 -5
  26. package/dist/ui/index.html +2 -2
  27. package/dist/ui/{main-TZL26MZU.js → main-LGW7AYEA.js} +2 -2
  28. package/dist/ui/{styles-IKG3B6AM.css → styles-CDN434T2.css} +1 -1
  29. package/package.json +10 -7
  30. package/dist/ui/chunk-BGDH7CDV.js +0 -1
  31. package/dist/ui/chunk-H2J55DNK.js +0 -7
  32. package/dist/ui/chunk-Q7L6LLAK.js +0 -1
  33. package/dist/ui/chunk-VH5GRUT7.js +0 -255
  34. package/dist/ui/chunk-XCUOAV77.js +0 -123
@@ -0,0 +1,317 @@
1
+ import{c as mn}from"./chunk-KJQEO6P3.js";import{a as ba,b as Bi,c as wa,d as Sa,e as _0,f as y0,g as v0}from"./chunk-FEPH4VNB.js";import{b as Y_,e as da,f as X_,j as Ze,k as We,l as u0,m as va,n as Ca,o as xa,p as f0,q as p0,r as h0,s as ih,t as Po,u as ki,w as m0,x as Oi}from"./chunk-FQOZBFJ5.js";import{c as ga,d as _a,e as g0}from"./chunk-WJLIYGWJ.js";import{c as c0,d as d0,h as Ni,i as Ri,j as Ai,m as Fi,n as Li}from"./chunk-LS2NXZQZ.js";import{$ as mt,$a as Hn,$b as Wn,Aa as ve,Ab as W_,Ba as Ie,Bc as Ei,Eb as yt,Fb as Xe,Fc as i0,Gb as ne,Gc as o0,Hb as be,Hc as r0,Ib as jn,Ic as un,J as C,Jb as Qt,Jc as fn,K as xi,Ka as $,Lc as ua,M as he,N as bi,Na as P,O as u,Oa as M,Oc as fa,Pc as pa,Qa as Te,Qb as Un,R as V_,Ra as ee,S as cn,Sa as te,Sb as Lt,T as G,Ta as D,Tb as k,Tc as s0,U as H,Ua as h,V as it,Va as m,Vc as Bt,W as Yp,Wa as B,Wb as Ve,Wc as ha,X as ut,Xa as K,Xb as F,Y as Qr,Ya as Y,Yb as Be,Z as ot,Za as dn,Zb as sa,_a as Gn,_b as eh,aa as Vn,ab as Ii,bb as ia,bd as Pi,cb as oa,cc as Ce,cd as Mi,da as U,db as de,dc as et,ea as pe,eb as Qp,fa as wi,fb as W,fd as ma,g as S,ga as ie,gd as Di,hb as g,hd as l0,ia as Le,ib as Xt,id as pn,ja as Jr,jb as Ae,jd as nh,ka as G_,kb as ra,la as Xp,mb as St,mc as $_,md as ya,n as z_,na as ea,nb as It,nc as K_,nd as hn,oa as l,ob as Jp,oc as ca,pa as H_,pb as Ot,pc as Ti,qa as j_,qb as gt,qc as ln,ra as U_,rb as Zt,sa as Zp,sb as _t,ta,tb as se,u as q_,ub as aa,vb as Fe,wa as Z,wb as y,xa as Si,xb as b,ya as ke,yb as Ue,za as na,zb as Eo}from"./chunk-LTQTJU54.js";import{C as th,Da as a0,I as e0,K as t0,W as n0,b as Z_,k as Q_,p as la,u as J_}from"./chunk-3SI3TVER.js";import{a as ae,b as Yt,c as Ci,e as _,g as QD}from"./chunk-VB56BUGO.js";var iv=_((cne,nv)=>{"use strict";function vL(){this.__data__=[],this.size=0}nv.exports=vL});var si=_((dne,ov)=>{"use strict";function CL(t,n){return t===n||t!==t&&n!==n}ov.exports=CL});var yr=_((lne,rv)=>{"use strict";var xL=si();function bL(t,n){for(var e=t.length;e--;)if(xL(t[e][0],n))return e;return-1}rv.exports=bL});var sv=_((une,av)=>{"use strict";var wL=yr(),SL=Array.prototype,IL=SL.splice;function TL(t){var n=this.__data__,e=wL(n,t);if(e<0)return!1;var i=n.length-1;return e==i?n.pop():IL.call(n,e,1),--this.size,!0}av.exports=TL});var dv=_((fne,cv)=>{"use strict";var EL=yr();function PL(t){var n=this.__data__,e=EL(n,t);return e<0?void 0:n[e][1]}cv.exports=PL});var uv=_((pne,lv)=>{"use strict";var ML=yr();function DL(t){return ML(this.__data__,t)>-1}lv.exports=DL});var pv=_((hne,fv)=>{"use strict";var kL=yr();function OL(t,n){var e=this.__data__,i=kL(e,t);return i<0?(++this.size,e.push([t,n])):e[i][1]=n,this}fv.exports=OL});var vr=_((mne,hv)=>{"use strict";var NL=iv(),RL=sv(),AL=dv(),FL=uv(),LL=pv();function so(t){var n=-1,e=t==null?0:t.length;for(this.clear();++n<e;){var i=t[n];this.set(i[0],i[1])}}so.prototype.clear=NL;so.prototype.delete=RL;so.prototype.get=AL;so.prototype.has=FL;so.prototype.set=LL;hv.exports=so});var gv=_((gne,mv)=>{"use strict";var BL=vr();function zL(){this.__data__=new BL,this.size=0}mv.exports=zL});var yv=_((_ne,_v)=>{"use strict";function qL(t){var n=this.__data__,e=n.delete(t);return this.size=n.size,e}_v.exports=qL});var Cv=_((yne,vv)=>{"use strict";function VL(t){return this.__data__.get(t)}vv.exports=VL});var bv=_((vne,xv)=>{"use strict";function GL(t){return this.__data__.has(t)}xv.exports=GL});var Fm=_((Cne,wv)=>{"use strict";var HL=typeof global=="object"&&global&&global.Object===Object&&global;wv.exports=HL});var Pt=_((xne,Sv)=>{"use strict";var jL=Fm(),UL=typeof self=="object"&&self&&self.Object===Object&&self,WL=jL||UL||Function("return this")();Sv.exports=WL});var ci=_((bne,Iv)=>{"use strict";var $L=Pt(),KL=$L.Symbol;Iv.exports=KL});var Mv=_((wne,Pv)=>{"use strict";var Tv=ci(),Ev=Object.prototype,YL=Ev.hasOwnProperty,XL=Ev.toString,Cr=Tv?Tv.toStringTag:void 0;function ZL(t){var n=YL.call(t,Cr),e=t[Cr];try{t[Cr]=void 0;var i=!0}catch{}var o=XL.call(t);return i&&(n?t[Cr]=e:delete t[Cr]),o}Pv.exports=ZL});var kv=_((Sne,Dv)=>{"use strict";var QL=Object.prototype,JL=QL.toString;function e3(t){return JL.call(t)}Dv.exports=e3});var Mn=_((Ine,Rv)=>{"use strict";var Ov=ci(),t3=Mv(),n3=kv(),i3="[object Null]",o3="[object Undefined]",Nv=Ov?Ov.toStringTag:void 0;function r3(t){return t==null?t===void 0?o3:i3:Nv&&Nv in Object(t)?t3(t):n3(t)}Rv.exports=r3});var Ct=_((Tne,Av)=>{"use strict";function a3(t){var n=typeof t;return t!=null&&(n=="object"||n=="function")}Av.exports=a3});var co=_((Ene,Fv)=>{"use strict";var s3=Mn(),c3=Ct(),d3="[object AsyncFunction]",l3="[object Function]",u3="[object GeneratorFunction]",f3="[object Proxy]";function p3(t){if(!c3(t))return!1;var n=s3(t);return n==l3||n==u3||n==d3||n==f3}Fv.exports=p3});var Bv=_((Pne,Lv)=>{"use strict";var h3=Pt(),m3=h3["__core-js_shared__"];Lv.exports=m3});var Vv=_((Mne,qv)=>{"use strict";var Lm=Bv(),zv=(function(){var t=/[^.]+$/.exec(Lm&&Lm.keys&&Lm.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""})();function g3(t){return!!zv&&zv in t}qv.exports=g3});var Bm=_((Dne,Gv)=>{"use strict";var _3=Function.prototype,y3=_3.toString;function v3(t){if(t!=null){try{return y3.call(t)}catch{}try{return t+""}catch{}}return""}Gv.exports=v3});var jv=_((kne,Hv)=>{"use strict";var C3=co(),x3=Vv(),b3=Ct(),w3=Bm(),S3=/[\\^$.*+?()[\]{}|]/g,I3=/^\[object .+?Constructor\]$/,T3=Function.prototype,E3=Object.prototype,P3=T3.toString,M3=E3.hasOwnProperty,D3=RegExp("^"+P3.call(M3).replace(S3,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function k3(t){if(!b3(t)||x3(t))return!1;var n=C3(t)?D3:I3;return n.test(w3(t))}Hv.exports=k3});var Wv=_((One,Uv)=>{"use strict";function O3(t,n){return t?.[n]}Uv.exports=O3});var Dn=_((Nne,$v)=>{"use strict";var N3=jv(),R3=Wv();function A3(t,n){var e=R3(t,n);return N3(e)?e:void 0}$v.exports=A3});var Ff=_((Rne,Kv)=>{"use strict";var F3=Dn(),L3=Pt(),B3=F3(L3,"Map");Kv.exports=B3});var xr=_((Ane,Yv)=>{"use strict";var z3=Dn(),q3=z3(Object,"create");Yv.exports=q3});var Qv=_((Fne,Zv)=>{"use strict";var Xv=xr();function V3(){this.__data__=Xv?Xv(null):{},this.size=0}Zv.exports=V3});var eC=_((Lne,Jv)=>{"use strict";function G3(t){var n=this.has(t)&&delete this.__data__[t];return this.size-=n?1:0,n}Jv.exports=G3});var nC=_((Bne,tC)=>{"use strict";var H3=xr(),j3="__lodash_hash_undefined__",U3=Object.prototype,W3=U3.hasOwnProperty;function $3(t){var n=this.__data__;if(H3){var e=n[t];return e===j3?void 0:e}return W3.call(n,t)?n[t]:void 0}tC.exports=$3});var oC=_((zne,iC)=>{"use strict";var K3=xr(),Y3=Object.prototype,X3=Y3.hasOwnProperty;function Z3(t){var n=this.__data__;return K3?n[t]!==void 0:X3.call(n,t)}iC.exports=Z3});var aC=_((qne,rC)=>{"use strict";var Q3=xr(),J3="__lodash_hash_undefined__";function eB(t,n){var e=this.__data__;return this.size+=this.has(t)?0:1,e[t]=Q3&&n===void 0?J3:n,this}rC.exports=eB});var cC=_((Vne,sC)=>{"use strict";var tB=Qv(),nB=eC(),iB=nC(),oB=oC(),rB=aC();function lo(t){var n=-1,e=t==null?0:t.length;for(this.clear();++n<e;){var i=t[n];this.set(i[0],i[1])}}lo.prototype.clear=tB;lo.prototype.delete=nB;lo.prototype.get=iB;lo.prototype.has=oB;lo.prototype.set=rB;sC.exports=lo});var uC=_((Gne,lC)=>{"use strict";var dC=cC(),aB=vr(),sB=Ff();function cB(){this.size=0,this.__data__={hash:new dC,map:new(sB||aB),string:new dC}}lC.exports=cB});var pC=_((Hne,fC)=>{"use strict";function dB(t){var n=typeof t;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?t!=="__proto__":t===null}fC.exports=dB});var br=_((jne,hC)=>{"use strict";var lB=pC();function uB(t,n){var e=t.__data__;return lB(n)?e[typeof n=="string"?"string":"hash"]:e.map}hC.exports=uB});var gC=_((Une,mC)=>{"use strict";var fB=br();function pB(t){var n=fB(this,t).delete(t);return this.size-=n?1:0,n}mC.exports=pB});var yC=_((Wne,_C)=>{"use strict";var hB=br();function mB(t){return hB(this,t).get(t)}_C.exports=mB});var CC=_(($ne,vC)=>{"use strict";var gB=br();function _B(t){return gB(this,t).has(t)}vC.exports=_B});var bC=_((Kne,xC)=>{"use strict";var yB=br();function vB(t,n){var e=yB(this,t),i=e.size;return e.set(t,n),this.size+=e.size==i?0:1,this}xC.exports=vB});var Lf=_((Yne,wC)=>{"use strict";var CB=uC(),xB=gC(),bB=yC(),wB=CC(),SB=bC();function uo(t){var n=-1,e=t==null?0:t.length;for(this.clear();++n<e;){var i=t[n];this.set(i[0],i[1])}}uo.prototype.clear=CB;uo.prototype.delete=xB;uo.prototype.get=bB;uo.prototype.has=wB;uo.prototype.set=SB;wC.exports=uo});var IC=_((Xne,SC)=>{"use strict";var IB=vr(),TB=Ff(),EB=Lf(),PB=200;function MB(t,n){var e=this.__data__;if(e instanceof IB){var i=e.__data__;if(!TB||i.length<PB-1)return i.push([t,n]),this.size=++e.size,this;e=this.__data__=new EB(i)}return e.set(t,n),this.size=e.size,this}SC.exports=MB});var wr=_((Zne,TC)=>{"use strict";var DB=vr(),kB=gv(),OB=yv(),NB=Cv(),RB=bv(),AB=IC();function fo(t){var n=this.__data__=new DB(t);this.size=n.size}fo.prototype.clear=kB;fo.prototype.delete=OB;fo.prototype.get=NB;fo.prototype.has=RB;fo.prototype.set=AB;TC.exports=fo});var Bf=_((Qne,EC)=>{"use strict";function FB(t,n){for(var e=-1,i=t==null?0:t.length;++e<i&&n(t[e],e,t)!==!1;);return t}EC.exports=FB});var zm=_((Jne,PC)=>{"use strict";var LB=Dn(),BB=(function(){try{var t=LB(Object,"defineProperty");return t({},"",{}),t}catch{}})();PC.exports=BB});var Sr=_((eie,DC)=>{"use strict";var MC=zm();function zB(t,n,e){n=="__proto__"&&MC?MC(t,n,{configurable:!0,enumerable:!0,value:e,writable:!0}):t[n]=e}DC.exports=zB});var Ir=_((tie,kC)=>{"use strict";var qB=Sr(),VB=si(),GB=Object.prototype,HB=GB.hasOwnProperty;function jB(t,n,e){var i=t[n];(!(HB.call(t,n)&&VB(i,e))||e===void 0&&!(n in t))&&qB(t,n,e)}kC.exports=jB});var po=_((nie,OC)=>{"use strict";var UB=Ir(),WB=Sr();function $B(t,n,e,i){var o=!e;e||(e={});for(var r=-1,a=n.length;++r<a;){var s=n[r],c=i?i(e[s],t[s],s,e,t):void 0;c===void 0&&(c=t[s]),o?WB(e,s,c):UB(e,s,c)}return e}OC.exports=$B});var RC=_((iie,NC)=>{"use strict";function KB(t,n){for(var e=-1,i=Array(t);++e<t;)i[e]=n(e);return i}NC.exports=KB});var At=_((oie,AC)=>{"use strict";function YB(t){return t!=null&&typeof t=="object"}AC.exports=YB});var LC=_((rie,FC)=>{"use strict";var XB=Mn(),ZB=At(),QB="[object Arguments]";function JB(t){return ZB(t)&&XB(t)==QB}FC.exports=JB});var ho=_((aie,qC)=>{"use strict";var BC=LC(),ez=At(),zC=Object.prototype,tz=zC.hasOwnProperty,nz=zC.propertyIsEnumerable,iz=BC((function(){return arguments})())?BC:function(t){return ez(t)&&tz.call(t,"callee")&&!nz.call(t,"callee")};qC.exports=iz});var je=_((sie,VC)=>{"use strict";var oz=Array.isArray;VC.exports=oz});var HC=_((cie,GC)=>{"use strict";function rz(){return!1}GC.exports=rz});var di=_((Tr,mo)=>{"use strict";var az=Pt(),sz=HC(),WC=typeof Tr=="object"&&Tr&&!Tr.nodeType&&Tr,jC=WC&&typeof mo=="object"&&mo&&!mo.nodeType&&mo,cz=jC&&jC.exports===WC,UC=cz?az.Buffer:void 0,dz=UC?UC.isBuffer:void 0,lz=dz||sz;mo.exports=lz});var Er=_((die,$C)=>{"use strict";var uz=9007199254740991,fz=/^(?:0|[1-9]\d*)$/;function pz(t,n){var e=typeof t;return n=n??uz,!!n&&(e=="number"||e!="symbol"&&fz.test(t))&&t>-1&&t%1==0&&t<n}$C.exports=pz});var zf=_((lie,KC)=>{"use strict";var hz=9007199254740991;function mz(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=hz}KC.exports=mz});var XC=_((uie,YC)=>{"use strict";var gz=Mn(),_z=zf(),yz=At(),vz="[object Arguments]",Cz="[object Array]",xz="[object Boolean]",bz="[object Date]",wz="[object Error]",Sz="[object Function]",Iz="[object Map]",Tz="[object Number]",Ez="[object Object]",Pz="[object RegExp]",Mz="[object Set]",Dz="[object String]",kz="[object WeakMap]",Oz="[object ArrayBuffer]",Nz="[object DataView]",Rz="[object Float32Array]",Az="[object Float64Array]",Fz="[object Int8Array]",Lz="[object Int16Array]",Bz="[object Int32Array]",zz="[object Uint8Array]",qz="[object Uint8ClampedArray]",Vz="[object Uint16Array]",Gz="[object Uint32Array]",Ne={};Ne[Rz]=Ne[Az]=Ne[Fz]=Ne[Lz]=Ne[Bz]=Ne[zz]=Ne[qz]=Ne[Vz]=Ne[Gz]=!0;Ne[vz]=Ne[Cz]=Ne[Oz]=Ne[xz]=Ne[Nz]=Ne[bz]=Ne[wz]=Ne[Sz]=Ne[Iz]=Ne[Tz]=Ne[Ez]=Ne[Pz]=Ne[Mz]=Ne[Dz]=Ne[kz]=!1;function Hz(t){return yz(t)&&_z(t.length)&&!!Ne[gz(t)]}YC.exports=Hz});var Pr=_((fie,ZC)=>{"use strict";function jz(t){return function(n){return t(n)}}ZC.exports=jz});var qf=_((Mr,go)=>{"use strict";var Uz=Fm(),QC=typeof Mr=="object"&&Mr&&!Mr.nodeType&&Mr,Dr=QC&&typeof go=="object"&&go&&!go.nodeType&&go,Wz=Dr&&Dr.exports===QC,qm=Wz&&Uz.process,$z=(function(){try{var t=Dr&&Dr.require&&Dr.require("util").types;return t||qm&&qm.binding&&qm.binding("util")}catch{}})();go.exports=$z});var _o=_((pie,tx)=>{"use strict";var Kz=XC(),Yz=Pr(),JC=qf(),ex=JC&&JC.isTypedArray,Xz=ex?Yz(ex):Kz;tx.exports=Xz});var Vm=_((hie,nx)=>{"use strict";var Zz=RC(),Qz=ho(),Jz=je(),eq=di(),tq=Er(),nq=_o(),iq=Object.prototype,oq=iq.hasOwnProperty;function rq(t,n){var e=Jz(t),i=!e&&Qz(t),o=!e&&!i&&eq(t),r=!e&&!i&&!o&&nq(t),a=e||i||o||r,s=a?Zz(t.length,String):[],c=s.length;for(var d in t)(n||oq.call(t,d))&&!(a&&(d=="length"||o&&(d=="offset"||d=="parent")||r&&(d=="buffer"||d=="byteLength"||d=="byteOffset")||tq(d,c)))&&s.push(d);return s}nx.exports=rq});var kr=_((mie,ix)=>{"use strict";var aq=Object.prototype;function sq(t){var n=t&&t.constructor,e=typeof n=="function"&&n.prototype||aq;return t===e}ix.exports=sq});var Gm=_((gie,ox)=>{"use strict";function cq(t,n){return function(e){return t(n(e))}}ox.exports=cq});var ax=_((_ie,rx)=>{"use strict";var dq=Gm(),lq=dq(Object.keys,Object);rx.exports=lq});var Vf=_((yie,sx)=>{"use strict";var uq=kr(),fq=ax(),pq=Object.prototype,hq=pq.hasOwnProperty;function mq(t){if(!uq(t))return fq(t);var n=[];for(var e in Object(t))hq.call(t,e)&&e!="constructor"&&n.push(e);return n}sx.exports=mq});var Ht=_((vie,cx)=>{"use strict";var gq=co(),_q=zf();function yq(t){return t!=null&&_q(t.length)&&!gq(t)}cx.exports=yq});var nn=_((Cie,dx)=>{"use strict";var vq=Vm(),Cq=Vf(),xq=Ht();function bq(t){return xq(t)?vq(t):Cq(t)}dx.exports=bq});var ux=_((xie,lx)=>{"use strict";var wq=po(),Sq=nn();function Iq(t,n){return t&&wq(n,Sq(n),t)}lx.exports=Iq});var px=_((bie,fx)=>{"use strict";function Tq(t){var n=[];if(t!=null)for(var e in Object(t))n.push(e);return n}fx.exports=Tq});var mx=_((wie,hx)=>{"use strict";var Eq=Ct(),Pq=kr(),Mq=px(),Dq=Object.prototype,kq=Dq.hasOwnProperty;function Oq(t){if(!Eq(t))return Mq(t);var n=Pq(t),e=[];for(var i in t)i=="constructor"&&(n||!kq.call(t,i))||e.push(i);return e}hx.exports=Oq});var kn=_((Sie,gx)=>{"use strict";var Nq=Vm(),Rq=mx(),Aq=Ht();function Fq(t){return Aq(t)?Nq(t,!0):Rq(t)}gx.exports=Fq});var yx=_((Iie,_x)=>{"use strict";var Lq=po(),Bq=kn();function zq(t,n){return t&&Lq(n,Bq(n),t)}_x.exports=zq});var Hm=_((Or,yo)=>{"use strict";var qq=Pt(),bx=typeof Or=="object"&&Or&&!Or.nodeType&&Or,vx=bx&&typeof yo=="object"&&yo&&!yo.nodeType&&yo,Vq=vx&&vx.exports===bx,Cx=Vq?qq.Buffer:void 0,xx=Cx?Cx.allocUnsafe:void 0;function Gq(t,n){if(n)return t.slice();var e=t.length,i=xx?xx(e):new t.constructor(e);return t.copy(i),i}yo.exports=Gq});var jm=_((Tie,wx)=>{"use strict";function Hq(t,n){var e=-1,i=t.length;for(n||(n=Array(i));++e<i;)n[e]=t[e];return n}wx.exports=Hq});var Um=_((Eie,Sx)=>{"use strict";function jq(t,n){for(var e=-1,i=t==null?0:t.length,o=0,r=[];++e<i;){var a=t[e];n(a,e,t)&&(r[o++]=a)}return r}Sx.exports=jq});var Wm=_((Pie,Ix)=>{"use strict";function Uq(){return[]}Ix.exports=Uq});var Gf=_((Mie,Ex)=>{"use strict";var Wq=Um(),$q=Wm(),Kq=Object.prototype,Yq=Kq.propertyIsEnumerable,Tx=Object.getOwnPropertySymbols,Xq=Tx?function(t){return t==null?[]:(t=Object(t),Wq(Tx(t),function(n){return Yq.call(t,n)}))}:$q;Ex.exports=Xq});var Mx=_((Die,Px)=>{"use strict";var Zq=po(),Qq=Gf();function Jq(t,n){return Zq(t,Qq(t),n)}Px.exports=Jq});var Hf=_((kie,Dx)=>{"use strict";function eV(t,n){for(var e=-1,i=n.length,o=t.length;++e<i;)t[o+e]=n[e];return t}Dx.exports=eV});var Nr=_((Oie,kx)=>{"use strict";var tV=Gm(),nV=tV(Object.getPrototypeOf,Object);kx.exports=nV});var $m=_((Nie,Ox)=>{"use strict";var iV=Hf(),oV=Nr(),rV=Gf(),aV=Wm(),sV=Object.getOwnPropertySymbols,cV=sV?function(t){for(var n=[];t;)iV(n,rV(t)),t=oV(t);return n}:aV;Ox.exports=cV});var Rx=_((Rie,Nx)=>{"use strict";var dV=po(),lV=$m();function uV(t,n){return dV(t,lV(t),n)}Nx.exports=uV});var Km=_((Aie,Ax)=>{"use strict";var fV=Hf(),pV=je();function hV(t,n,e){var i=n(t);return pV(t)?i:fV(i,e(t))}Ax.exports=hV});var Ym=_((Fie,Fx)=>{"use strict";var mV=Km(),gV=Gf(),_V=nn();function yV(t){return mV(t,_V,gV)}Fx.exports=yV});var Bx=_((Lie,Lx)=>{"use strict";var vV=Km(),CV=$m(),xV=kn();function bV(t){return vV(t,xV,CV)}Lx.exports=bV});var qx=_((Bie,zx)=>{"use strict";var wV=Dn(),SV=Pt(),IV=wV(SV,"DataView");zx.exports=IV});var Gx=_((zie,Vx)=>{"use strict";var TV=Dn(),EV=Pt(),PV=TV(EV,"Promise");Vx.exports=PV});var Xm=_((qie,Hx)=>{"use strict";var MV=Dn(),DV=Pt(),kV=MV(DV,"Set");Hx.exports=kV});var Ux=_((Vie,jx)=>{"use strict";var OV=Dn(),NV=Pt(),RV=OV(NV,"WeakMap");jx.exports=RV});var ui=_((Gie,Qx)=>{"use strict";var Zm=qx(),Qm=Ff(),Jm=Gx(),eg=Xm(),tg=Ux(),Zx=Mn(),vo=Bm(),Wx="[object Map]",AV="[object Object]",$x="[object Promise]",Kx="[object Set]",Yx="[object WeakMap]",Xx="[object DataView]",FV=vo(Zm),LV=vo(Qm),BV=vo(Jm),zV=vo(eg),qV=vo(tg),li=Zx;(Zm&&li(new Zm(new ArrayBuffer(1)))!=Xx||Qm&&li(new Qm)!=Wx||Jm&&li(Jm.resolve())!=$x||eg&&li(new eg)!=Kx||tg&&li(new tg)!=Yx)&&(li=function(t){var n=Zx(t),e=n==AV?t.constructor:void 0,i=e?vo(e):"";if(i)switch(i){case FV:return Xx;case LV:return Wx;case BV:return $x;case zV:return Kx;case qV:return Yx}return n});Qx.exports=li});var eb=_((Hie,Jx)=>{"use strict";var VV=Object.prototype,GV=VV.hasOwnProperty;function HV(t){var n=t.length,e=new t.constructor(n);return n&&typeof t[0]=="string"&&GV.call(t,"index")&&(e.index=t.index,e.input=t.input),e}Jx.exports=HV});var ng=_((jie,tb)=>{"use strict";var jV=Pt(),UV=jV.Uint8Array;tb.exports=UV});var jf=_((Uie,ib)=>{"use strict";var nb=ng();function WV(t){var n=new t.constructor(t.byteLength);return new nb(n).set(new nb(t)),n}ib.exports=WV});var rb=_((Wie,ob)=>{"use strict";var $V=jf();function KV(t,n){var e=n?$V(t.buffer):t.buffer;return new t.constructor(e,t.byteOffset,t.byteLength)}ob.exports=KV});var sb=_(($ie,ab)=>{"use strict";var YV=/\w*$/;function XV(t){var n=new t.constructor(t.source,YV.exec(t));return n.lastIndex=t.lastIndex,n}ab.exports=XV});var fb=_((Kie,ub)=>{"use strict";var cb=ci(),db=cb?cb.prototype:void 0,lb=db?db.valueOf:void 0;function ZV(t){return lb?Object(lb.call(t)):{}}ub.exports=ZV});var ig=_((Yie,pb)=>{"use strict";var QV=jf();function JV(t,n){var e=n?QV(t.buffer):t.buffer;return new t.constructor(e,t.byteOffset,t.length)}pb.exports=JV});var mb=_((Xie,hb)=>{"use strict";var eG=jf(),tG=rb(),nG=sb(),iG=fb(),oG=ig(),rG="[object Boolean]",aG="[object Date]",sG="[object Map]",cG="[object Number]",dG="[object RegExp]",lG="[object Set]",uG="[object String]",fG="[object Symbol]",pG="[object ArrayBuffer]",hG="[object DataView]",mG="[object Float32Array]",gG="[object Float64Array]",_G="[object Int8Array]",yG="[object Int16Array]",vG="[object Int32Array]",CG="[object Uint8Array]",xG="[object Uint8ClampedArray]",bG="[object Uint16Array]",wG="[object Uint32Array]";function SG(t,n,e){var i=t.constructor;switch(n){case pG:return eG(t);case rG:case aG:return new i(+t);case hG:return tG(t,e);case mG:case gG:case _G:case yG:case vG:case CG:case xG:case bG:case wG:return oG(t,e);case sG:return new i;case cG:case uG:return new i(t);case dG:return nG(t);case lG:return new i;case fG:return iG(t)}}hb.exports=SG});var og=_((Zie,_b)=>{"use strict";var IG=Ct(),gb=Object.create,TG=(function(){function t(){}return function(n){if(!IG(n))return{};if(gb)return gb(n);t.prototype=n;var e=new t;return t.prototype=void 0,e}})();_b.exports=TG});var rg=_((Qie,yb)=>{"use strict";var EG=og(),PG=Nr(),MG=kr();function DG(t){return typeof t.constructor=="function"&&!MG(t)?EG(PG(t)):{}}yb.exports=DG});var Cb=_((Jie,vb)=>{"use strict";var kG=ui(),OG=At(),NG="[object Map]";function RG(t){return OG(t)&&kG(t)==NG}vb.exports=RG});var Sb=_((eoe,wb)=>{"use strict";var AG=Cb(),FG=Pr(),xb=qf(),bb=xb&&xb.isMap,LG=bb?FG(bb):AG;wb.exports=LG});var Tb=_((toe,Ib)=>{"use strict";var BG=ui(),zG=At(),qG="[object Set]";function VG(t){return zG(t)&&BG(t)==qG}Ib.exports=VG});var Db=_((noe,Mb)=>{"use strict";var GG=Tb(),HG=Pr(),Eb=qf(),Pb=Eb&&Eb.isSet,jG=Pb?HG(Pb):GG;Mb.exports=jG});var ag=_((ioe,Rb)=>{"use strict";var UG=wr(),WG=Bf(),$G=Ir(),KG=ux(),YG=yx(),XG=Hm(),ZG=jm(),QG=Mx(),JG=Rx(),e4=Ym(),t4=Bx(),n4=ui(),i4=eb(),o4=mb(),r4=rg(),a4=je(),s4=di(),c4=Sb(),d4=Ct(),l4=Db(),u4=nn(),f4=kn(),p4=1,h4=2,m4=4,kb="[object Arguments]",g4="[object Array]",_4="[object Boolean]",y4="[object Date]",v4="[object Error]",Ob="[object Function]",C4="[object GeneratorFunction]",x4="[object Map]",b4="[object Number]",Nb="[object Object]",w4="[object RegExp]",S4="[object Set]",I4="[object String]",T4="[object Symbol]",E4="[object WeakMap]",P4="[object ArrayBuffer]",M4="[object DataView]",D4="[object Float32Array]",k4="[object Float64Array]",O4="[object Int8Array]",N4="[object Int16Array]",R4="[object Int32Array]",A4="[object Uint8Array]",F4="[object Uint8ClampedArray]",L4="[object Uint16Array]",B4="[object Uint32Array]",Me={};Me[kb]=Me[g4]=Me[P4]=Me[M4]=Me[_4]=Me[y4]=Me[D4]=Me[k4]=Me[O4]=Me[N4]=Me[R4]=Me[x4]=Me[b4]=Me[Nb]=Me[w4]=Me[S4]=Me[I4]=Me[T4]=Me[A4]=Me[F4]=Me[L4]=Me[B4]=!0;Me[v4]=Me[Ob]=Me[E4]=!1;function Uf(t,n,e,i,o,r){var a,s=n&p4,c=n&h4,d=n&m4;if(e&&(a=o?e(t,i,o,r):e(t)),a!==void 0)return a;if(!d4(t))return t;var f=a4(t);if(f){if(a=i4(t),!s)return ZG(t,a)}else{var p=n4(t),v=p==Ob||p==C4;if(s4(t))return XG(t,s);if(p==Nb||p==kb||v&&!o){if(a=c||v?{}:r4(t),!s)return c?JG(t,YG(a,t)):QG(t,KG(a,t))}else{if(!Me[p])return o?t:{};a=o4(t,p,s)}}r||(r=new UG);var x=r.get(t);if(x)return x;r.set(t,a),l4(t)?t.forEach(function(E){a.add(Uf(E,n,e,E,t,r))}):c4(t)&&t.forEach(function(E,O){a.set(O,Uf(E,n,e,O,t,r))});var w=d?c?t4:e4:c?f4:u4,T=f?void 0:w(t);return WG(T||t,function(E,O){T&&(O=E,E=t[O]),$G(a,O,Uf(E,n,e,O,t,r))}),a}Rb.exports=Uf});var Fb=_((ooe,Ab)=>{"use strict";var z4=ag(),q4=4;function V4(t){return z4(t,q4)}Ab.exports=V4});var Wf=_((roe,Lb)=>{"use strict";function G4(t){return function(){return t}}Lb.exports=G4});var zb=_((aoe,Bb)=>{"use strict";function H4(t){return function(n,e,i){for(var o=-1,r=Object(n),a=i(n),s=a.length;s--;){var c=a[t?s:++o];if(e(r[c],c,r)===!1)break}return n}}Bb.exports=H4});var $f=_((soe,qb)=>{"use strict";var j4=zb(),U4=j4();qb.exports=U4});var Kf=_((coe,Vb)=>{"use strict";var W4=$f(),$4=nn();function K4(t,n){return t&&W4(t,n,$4)}Vb.exports=K4});var Hb=_((doe,Gb)=>{"use strict";var Y4=Ht();function X4(t,n){return function(e,i){if(e==null)return e;if(!Y4(e))return t(e,i);for(var o=e.length,r=n?o:-1,a=Object(e);(n?r--:++r<o)&&i(a[r],r,a)!==!1;);return e}}Gb.exports=X4});var Rr=_((loe,jb)=>{"use strict";var Z4=Kf(),Q4=Hb(),J4=Q4(Z4);jb.exports=J4});var On=_((uoe,Ub)=>{"use strict";function eH(t){return t}Ub.exports=eH});var sg=_((foe,Wb)=>{"use strict";var tH=On();function nH(t){return typeof t=="function"?t:tH}Wb.exports=nH});var cg=_((poe,$b)=>{"use strict";var iH=Bf(),oH=Rr(),rH=sg(),aH=je();function sH(t,n){var e=aH(t)?iH:oH;return e(t,rH(n))}$b.exports=sH});var dg=_((hoe,Kb)=>{"use strict";Kb.exports=cg()});var Xb=_((moe,Yb)=>{"use strict";var cH=Rr();function dH(t,n){var e=[];return cH(t,function(i,o,r){n(i,o,r)&&e.push(i)}),e}Yb.exports=dH});var Qb=_((goe,Zb)=>{"use strict";var lH="__lodash_hash_undefined__";function uH(t){return this.__data__.set(t,lH),this}Zb.exports=uH});var ew=_((_oe,Jb)=>{"use strict";function fH(t){return this.__data__.has(t)}Jb.exports=fH});var lg=_((yoe,tw)=>{"use strict";var pH=Lf(),hH=Qb(),mH=ew();function Yf(t){var n=-1,e=t==null?0:t.length;for(this.__data__=new pH;++n<e;)this.add(t[n])}Yf.prototype.add=Yf.prototype.push=hH;Yf.prototype.has=mH;tw.exports=Yf});var iw=_((voe,nw)=>{"use strict";function gH(t,n){for(var e=-1,i=t==null?0:t.length;++e<i;)if(n(t[e],e,t))return!0;return!1}nw.exports=gH});var ug=_((Coe,ow)=>{"use strict";function _H(t,n){return t.has(n)}ow.exports=_H});var fg=_((xoe,rw)=>{"use strict";var yH=lg(),vH=iw(),CH=ug(),xH=1,bH=2;function wH(t,n,e,i,o,r){var a=e&xH,s=t.length,c=n.length;if(s!=c&&!(a&&c>s))return!1;var d=r.get(t),f=r.get(n);if(d&&f)return d==n&&f==t;var p=-1,v=!0,x=e&bH?new yH:void 0;for(r.set(t,n),r.set(n,t);++p<s;){var w=t[p],T=n[p];if(i)var E=a?i(T,w,p,n,t,r):i(w,T,p,t,n,r);if(E!==void 0){if(E)continue;v=!1;break}if(x){if(!vH(n,function(O,A){if(!CH(x,A)&&(w===O||o(w,O,e,i,r)))return x.push(A)})){v=!1;break}}else if(!(w===T||o(w,T,e,i,r))){v=!1;break}}return r.delete(t),r.delete(n),v}rw.exports=wH});var sw=_((boe,aw)=>{"use strict";function SH(t){var n=-1,e=Array(t.size);return t.forEach(function(i,o){e[++n]=[o,i]}),e}aw.exports=SH});var Xf=_((woe,cw)=>{"use strict";function IH(t){var n=-1,e=Array(t.size);return t.forEach(function(i){e[++n]=i}),e}cw.exports=IH});var pw=_((Soe,fw)=>{"use strict";var dw=ci(),lw=ng(),TH=si(),EH=fg(),PH=sw(),MH=Xf(),DH=1,kH=2,OH="[object Boolean]",NH="[object Date]",RH="[object Error]",AH="[object Map]",FH="[object Number]",LH="[object RegExp]",BH="[object Set]",zH="[object String]",qH="[object Symbol]",VH="[object ArrayBuffer]",GH="[object DataView]",uw=dw?dw.prototype:void 0,pg=uw?uw.valueOf:void 0;function HH(t,n,e,i,o,r,a){switch(e){case GH:if(t.byteLength!=n.byteLength||t.byteOffset!=n.byteOffset)return!1;t=t.buffer,n=n.buffer;case VH:return!(t.byteLength!=n.byteLength||!r(new lw(t),new lw(n)));case OH:case NH:case FH:return TH(+t,+n);case RH:return t.name==n.name&&t.message==n.message;case LH:case zH:return t==n+"";case AH:var s=PH;case BH:var c=i&DH;if(s||(s=MH),t.size!=n.size&&!c)return!1;var d=a.get(t);if(d)return d==n;i|=kH,a.set(t,n);var f=EH(s(t),s(n),i,o,r,a);return a.delete(t),f;case qH:if(pg)return pg.call(t)==pg.call(n)}return!1}fw.exports=HH});var gw=_((Ioe,mw)=>{"use strict";var hw=Ym(),jH=1,UH=Object.prototype,WH=UH.hasOwnProperty;function $H(t,n,e,i,o,r){var a=e&jH,s=hw(t),c=s.length,d=hw(n),f=d.length;if(c!=f&&!a)return!1;for(var p=c;p--;){var v=s[p];if(!(a?v in n:WH.call(n,v)))return!1}var x=r.get(t),w=r.get(n);if(x&&w)return x==n&&w==t;var T=!0;r.set(t,n),r.set(n,t);for(var E=a;++p<c;){v=s[p];var O=t[v],A=n[v];if(i)var V=a?i(A,O,v,n,t,r):i(O,A,v,t,n,r);if(!(V===void 0?O===A||o(O,A,e,i,r):V)){T=!1;break}E||(E=v=="constructor")}if(T&&!E){var q=t.constructor,X=n.constructor;q!=X&&"constructor"in t&&"constructor"in n&&!(typeof q=="function"&&q instanceof q&&typeof X=="function"&&X instanceof X)&&(T=!1)}return r.delete(t),r.delete(n),T}mw.exports=$H});var Sw=_((Toe,ww)=>{"use strict";var hg=wr(),KH=fg(),YH=pw(),XH=gw(),_w=ui(),yw=je(),vw=di(),ZH=_o(),QH=1,Cw="[object Arguments]",xw="[object Array]",Zf="[object Object]",JH=Object.prototype,bw=JH.hasOwnProperty;function e5(t,n,e,i,o,r){var a=yw(t),s=yw(n),c=a?xw:_w(t),d=s?xw:_w(n);c=c==Cw?Zf:c,d=d==Cw?Zf:d;var f=c==Zf,p=d==Zf,v=c==d;if(v&&vw(t)){if(!vw(n))return!1;a=!0,f=!1}if(v&&!f)return r||(r=new hg),a||ZH(t)?KH(t,n,e,i,o,r):YH(t,n,c,e,i,o,r);if(!(e&QH)){var x=f&&bw.call(t,"__wrapped__"),w=p&&bw.call(n,"__wrapped__");if(x||w){var T=x?t.value():t,E=w?n.value():n;return r||(r=new hg),o(T,E,e,i,r)}}return v?(r||(r=new hg),XH(t,n,e,i,o,r)):!1}ww.exports=e5});var mg=_((Eoe,Ew)=>{"use strict";var t5=Sw(),Iw=At();function Tw(t,n,e,i,o){return t===n?!0:t==null||n==null||!Iw(t)&&!Iw(n)?t!==t&&n!==n:t5(t,n,e,i,Tw,o)}Ew.exports=Tw});var Mw=_((Poe,Pw)=>{"use strict";var n5=wr(),i5=mg(),o5=1,r5=2;function a5(t,n,e,i){var o=e.length,r=o,a=!i;if(t==null)return!r;for(t=Object(t);o--;){var s=e[o];if(a&&s[2]?s[1]!==t[s[0]]:!(s[0]in t))return!1}for(;++o<r;){s=e[o];var c=s[0],d=t[c],f=s[1];if(a&&s[2]){if(d===void 0&&!(c in t))return!1}else{var p=new n5;if(i)var v=i(d,f,c,t,n,p);if(!(v===void 0?i5(f,d,o5|r5,i,p):v))return!1}}return!0}Pw.exports=a5});var gg=_((Moe,Dw)=>{"use strict";var s5=Ct();function c5(t){return t===t&&!s5(t)}Dw.exports=c5});var Ow=_((Doe,kw)=>{"use strict";var d5=gg(),l5=nn();function u5(t){for(var n=l5(t),e=n.length;e--;){var i=n[e],o=t[i];n[e]=[i,o,d5(o)]}return n}kw.exports=u5});var _g=_((koe,Nw)=>{"use strict";function f5(t,n){return function(e){return e==null?!1:e[t]===n&&(n!==void 0||t in Object(e))}}Nw.exports=f5});var Aw=_((Ooe,Rw)=>{"use strict";var p5=Mw(),h5=Ow(),m5=_g();function g5(t){var n=h5(t);return n.length==1&&n[0][2]?m5(n[0][0],n[0][1]):function(e){return e===t||p5(e,t,n)}}Rw.exports=g5});var fi=_((Noe,Fw)=>{"use strict";var _5=Mn(),y5=At(),v5="[object Symbol]";function C5(t){return typeof t=="symbol"||y5(t)&&_5(t)==v5}Fw.exports=C5});var Qf=_((Roe,Lw)=>{"use strict";var x5=je(),b5=fi(),w5=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,S5=/^\w*$/;function I5(t,n){if(x5(t))return!1;var e=typeof t;return e=="number"||e=="symbol"||e=="boolean"||t==null||b5(t)?!0:S5.test(t)||!w5.test(t)||n!=null&&t in Object(n)}Lw.exports=I5});var qw=_((Aoe,zw)=>{"use strict";var Bw=Lf(),T5="Expected a function";function yg(t,n){if(typeof t!="function"||n!=null&&typeof n!="function")throw new TypeError(T5);var e=function(){var i=arguments,o=n?n.apply(this,i):i[0],r=e.cache;if(r.has(o))return r.get(o);var a=t.apply(this,i);return e.cache=r.set(o,a)||r,a};return e.cache=new(yg.Cache||Bw),e}yg.Cache=Bw;zw.exports=yg});var Gw=_((Foe,Vw)=>{"use strict";var E5=qw(),P5=500;function M5(t){var n=E5(t,function(i){return e.size===P5&&e.clear(),i}),e=n.cache;return n}Vw.exports=M5});var jw=_((Loe,Hw)=>{"use strict";var D5=Gw(),k5=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,O5=/\\(\\)?/g,N5=D5(function(t){var n=[];return t.charCodeAt(0)===46&&n.push(""),t.replace(k5,function(e,i,o,r){n.push(o?r.replace(O5,"$1"):i||e)}),n});Hw.exports=N5});var Ar=_((Boe,Uw)=>{"use strict";function R5(t,n){for(var e=-1,i=t==null?0:t.length,o=Array(i);++e<i;)o[e]=n(t[e],e,t);return o}Uw.exports=R5});var Zw=_((zoe,Xw)=>{"use strict";var Ww=ci(),A5=Ar(),F5=je(),L5=fi(),B5=1/0,$w=Ww?Ww.prototype:void 0,Kw=$w?$w.toString:void 0;function Yw(t){if(typeof t=="string")return t;if(F5(t))return A5(t,Yw)+"";if(L5(t))return Kw?Kw.call(t):"";var n=t+"";return n=="0"&&1/t==-B5?"-0":n}Xw.exports=Yw});var vg=_((qoe,Qw)=>{"use strict";var z5=Zw();function q5(t){return t==null?"":z5(t)}Qw.exports=q5});var Fr=_((Voe,Jw)=>{"use strict";var V5=je(),G5=Qf(),H5=jw(),j5=vg();function U5(t,n){return V5(t)?t:G5(t,n)?[t]:H5(j5(t))}Jw.exports=U5});var Co=_((Goe,eS)=>{"use strict";var W5=fi(),$5=1/0;function K5(t){if(typeof t=="string"||W5(t))return t;var n=t+"";return n=="0"&&1/t==-$5?"-0":n}eS.exports=K5});var Lr=_((Hoe,tS)=>{"use strict";var Y5=Fr(),X5=Co();function Z5(t,n){n=Y5(n,t);for(var e=0,i=n.length;t!=null&&e<i;)t=t[X5(n[e++])];return e&&e==i?t:void 0}tS.exports=Z5});var iS=_((joe,nS)=>{"use strict";var Q5=Lr();function J5(t,n,e){var i=t==null?void 0:Q5(t,n);return i===void 0?e:i}nS.exports=J5});var rS=_((Uoe,oS)=>{"use strict";function ej(t,n){return t!=null&&n in Object(t)}oS.exports=ej});var Cg=_((Woe,aS)=>{"use strict";var tj=Fr(),nj=ho(),ij=je(),oj=Er(),rj=zf(),aj=Co();function sj(t,n,e){n=tj(n,t);for(var i=-1,o=n.length,r=!1;++i<o;){var a=aj(n[i]);if(!(r=t!=null&&e(t,a)))break;t=t[a]}return r||++i!=o?r:(o=t==null?0:t.length,!!o&&rj(o)&&oj(a,o)&&(ij(t)||nj(t)))}aS.exports=sj});var xg=_(($oe,sS)=>{"use strict";var cj=rS(),dj=Cg();function lj(t,n){return t!=null&&dj(t,n,cj)}sS.exports=lj});var dS=_((Koe,cS)=>{"use strict";var uj=mg(),fj=iS(),pj=xg(),hj=Qf(),mj=gg(),gj=_g(),_j=Co(),yj=1,vj=2;function Cj(t,n){return hj(t)&&mj(n)?gj(_j(t),n):function(e){var i=fj(e,t);return i===void 0&&i===n?pj(e,t):uj(n,i,yj|vj)}}cS.exports=Cj});var bg=_((Yoe,lS)=>{"use strict";function xj(t){return function(n){return n?.[t]}}lS.exports=xj});var fS=_((Xoe,uS)=>{"use strict";var bj=Lr();function wj(t){return function(n){return bj(n,t)}}uS.exports=wj});var hS=_((Zoe,pS)=>{"use strict";var Sj=bg(),Ij=fS(),Tj=Qf(),Ej=Co();function Pj(t){return Tj(t)?Sj(Ej(t)):Ij(t)}pS.exports=Pj});var jt=_((Qoe,mS)=>{"use strict";var Mj=Aw(),Dj=dS(),kj=On(),Oj=je(),Nj=hS();function Rj(t){return typeof t=="function"?t:t==null?kj:typeof t=="object"?Oj(t)?Dj(t[0],t[1]):Mj(t):Nj(t)}mS.exports=Rj});var wg=_((Joe,gS)=>{"use strict";var Aj=Um(),Fj=Xb(),Lj=jt(),Bj=je();function zj(t,n){var e=Bj(t)?Aj:Fj;return e(t,Lj(n,3))}gS.exports=zj});var yS=_((ere,_S)=>{"use strict";var qj=Object.prototype,Vj=qj.hasOwnProperty;function Gj(t,n){return t!=null&&Vj.call(t,n)}_S.exports=Gj});var Sg=_((tre,vS)=>{"use strict";var Hj=yS(),jj=Cg();function Uj(t,n){return t!=null&&jj(t,n,Hj)}vS.exports=Uj});var xS=_((nre,CS)=>{"use strict";var Wj=Vf(),$j=ui(),Kj=ho(),Yj=je(),Xj=Ht(),Zj=di(),Qj=kr(),Jj=_o(),eU="[object Map]",tU="[object Set]",nU=Object.prototype,iU=nU.hasOwnProperty;function oU(t){if(t==null)return!0;if(Xj(t)&&(Yj(t)||typeof t=="string"||typeof t.splice=="function"||Zj(t)||Jj(t)||Kj(t)))return!t.length;var n=$j(t);if(n==eU||n==tU)return!t.size;if(Qj(t))return!Wj(t).length;for(var e in t)if(iU.call(t,e))return!1;return!0}CS.exports=oU});var Ig=_((ire,bS)=>{"use strict";function rU(t){return t===void 0}bS.exports=rU});var Tg=_((ore,wS)=>{"use strict";var aU=Rr(),sU=Ht();function cU(t,n){var e=-1,i=sU(t)?Array(t.length):[];return aU(t,function(o,r,a){i[++e]=n(o,r,a)}),i}wS.exports=cU});var Eg=_((rre,SS)=>{"use strict";var dU=Ar(),lU=jt(),uU=Tg(),fU=je();function pU(t,n){var e=fU(t)?dU:uU;return e(t,lU(n,3))}SS.exports=pU});var TS=_((are,IS)=>{"use strict";function hU(t,n,e,i){var o=-1,r=t==null?0:t.length;for(i&&r&&(e=t[++o]);++o<r;)e=n(e,t[o],o,t);return e}IS.exports=hU});var PS=_((sre,ES)=>{"use strict";function mU(t,n,e,i,o){return o(t,function(r,a,s){e=i?(i=!1,r):n(e,r,a,s)}),e}ES.exports=mU});var Pg=_((cre,MS)=>{"use strict";var gU=TS(),_U=Rr(),yU=jt(),vU=PS(),CU=je();function xU(t,n,e){var i=CU(t)?gU:vU,o=arguments.length<3;return i(t,yU(n,4),e,o,_U)}MS.exports=xU});var kS=_((dre,DS)=>{"use strict";var bU=Mn(),wU=je(),SU=At(),IU="[object String]";function TU(t){return typeof t=="string"||!wU(t)&&SU(t)&&bU(t)==IU}DS.exports=TU});var NS=_((lre,OS)=>{"use strict";var EU=bg(),PU=EU("length");OS.exports=PU});var AS=_((ure,RS)=>{"use strict";var MU="\\ud800-\\udfff",DU="\\u0300-\\u036f",kU="\\ufe20-\\ufe2f",OU="\\u20d0-\\u20ff",NU=DU+kU+OU,RU="\\ufe0e\\ufe0f",AU="\\u200d",FU=RegExp("["+AU+MU+NU+RU+"]");function LU(t){return FU.test(t)}RS.exports=LU});var jS=_((fre,HS)=>{"use strict";var LS="\\ud800-\\udfff",BU="\\u0300-\\u036f",zU="\\ufe20-\\ufe2f",qU="\\u20d0-\\u20ff",VU=BU+zU+qU,GU="\\ufe0e\\ufe0f",HU="["+LS+"]",Mg="["+VU+"]",Dg="\\ud83c[\\udffb-\\udfff]",jU="(?:"+Mg+"|"+Dg+")",BS="[^"+LS+"]",zS="(?:\\ud83c[\\udde6-\\uddff]){2}",qS="[\\ud800-\\udbff][\\udc00-\\udfff]",UU="\\u200d",VS=jU+"?",GS="["+GU+"]?",WU="(?:"+UU+"(?:"+[BS,zS,qS].join("|")+")"+GS+VS+")*",$U=GS+VS+WU,KU="(?:"+[BS+Mg+"?",Mg,zS,qS,HU].join("|")+")",FS=RegExp(Dg+"(?="+Dg+")|"+KU+$U,"g");function YU(t){for(var n=FS.lastIndex=0;FS.test(t);)++n;return n}HS.exports=YU});var WS=_((pre,US)=>{"use strict";var XU=NS(),ZU=AS(),QU=jS();function JU(t){return ZU(t)?QU(t):XU(t)}US.exports=JU});var KS=_((hre,$S)=>{"use strict";var eW=Vf(),tW=ui(),nW=Ht(),iW=kS(),oW=WS(),rW="[object Map]",aW="[object Set]";function sW(t){if(t==null)return 0;if(nW(t))return iW(t)?oW(t):t.length;var n=tW(t);return n==rW||n==aW?t.size:eW(t).length}$S.exports=sW});var XS=_((mre,YS)=>{"use strict";var cW=Bf(),dW=og(),lW=Kf(),uW=jt(),fW=Nr(),pW=je(),hW=di(),mW=co(),gW=Ct(),_W=_o();function yW(t,n,e){var i=pW(t),o=i||hW(t)||_W(t);if(n=uW(n,4),e==null){var r=t&&t.constructor;o?e=i?new r:[]:gW(t)?e=mW(r)?dW(fW(t)):{}:e={}}return(o?cW:lW)(t,function(a,s,c){return n(e,a,s,c)}),e}YS.exports=yW});var eI=_((gre,JS)=>{"use strict";var ZS=ci(),vW=ho(),CW=je(),QS=ZS?ZS.isConcatSpreadable:void 0;function xW(t){return CW(t)||vW(t)||!!(QS&&t&&t[QS])}JS.exports=xW});var Jf=_((_re,nI)=>{"use strict";var bW=Hf(),wW=eI();function tI(t,n,e,i,o){var r=-1,a=t.length;for(e||(e=wW),o||(o=[]);++r<a;){var s=t[r];n>0&&e(s)?n>1?tI(s,n-1,e,i,o):bW(o,s):i||(o[o.length]=s)}return o}nI.exports=tI});var oI=_((yre,iI)=>{"use strict";function SW(t,n,e){switch(e.length){case 0:return t.call(n);case 1:return t.call(n,e[0]);case 2:return t.call(n,e[0],e[1]);case 3:return t.call(n,e[0],e[1],e[2])}return t.apply(n,e)}iI.exports=SW});var kg=_((vre,aI)=>{"use strict";var IW=oI(),rI=Math.max;function TW(t,n,e){return n=rI(n===void 0?t.length-1:n,0),function(){for(var i=arguments,o=-1,r=rI(i.length-n,0),a=Array(r);++o<r;)a[o]=i[n+o];o=-1;for(var s=Array(n+1);++o<n;)s[o]=i[o];return s[n]=e(a),IW(t,this,s)}}aI.exports=TW});var dI=_((Cre,cI)=>{"use strict";var EW=Wf(),sI=zm(),PW=On(),MW=sI?function(t,n){return sI(t,"toString",{configurable:!0,enumerable:!1,value:EW(n),writable:!0})}:PW;cI.exports=MW});var uI=_((xre,lI)=>{"use strict";var DW=800,kW=16,OW=Date.now;function NW(t){var n=0,e=0;return function(){var i=OW(),o=kW-(i-e);if(e=i,o>0){if(++n>=DW)return arguments[0]}else n=0;return t.apply(void 0,arguments)}}lI.exports=NW});var Og=_((bre,fI)=>{"use strict";var RW=dI(),AW=uI(),FW=AW(RW);fI.exports=FW});var Br=_((wre,pI)=>{"use strict";var LW=On(),BW=kg(),zW=Og();function qW(t,n){return zW(BW(t,n,LW),t+"")}pI.exports=qW});var Ng=_((Sre,hI)=>{"use strict";function VW(t,n,e,i){for(var o=t.length,r=e+(i?1:-1);i?r--:++r<o;)if(n(t[r],r,t))return r;return-1}hI.exports=VW});var gI=_((Ire,mI)=>{"use strict";function GW(t){return t!==t}mI.exports=GW});var yI=_((Tre,_I)=>{"use strict";function HW(t,n,e){for(var i=e-1,o=t.length;++i<o;)if(t[i]===n)return i;return-1}_I.exports=HW});var CI=_((Ere,vI)=>{"use strict";var jW=Ng(),UW=gI(),WW=yI();function $W(t,n,e){return n===n?WW(t,n,e):jW(t,UW,e)}vI.exports=$W});var bI=_((Pre,xI)=>{"use strict";var KW=CI();function YW(t,n){var e=t==null?0:t.length;return!!e&&KW(t,n,0)>-1}xI.exports=YW});var SI=_((Mre,wI)=>{"use strict";function XW(t,n,e){for(var i=-1,o=t==null?0:t.length;++i<o;)if(e(n,t[i]))return!0;return!1}wI.exports=XW});var TI=_((Dre,II)=>{"use strict";function ZW(){}II.exports=ZW});var PI=_((kre,EI)=>{"use strict";var Rg=Xm(),QW=TI(),JW=Xf(),e$=1/0,t$=Rg&&1/JW(new Rg([,-0]))[1]==e$?function(t){return new Rg(t)}:QW;EI.exports=t$});var DI=_((Ore,MI)=>{"use strict";var n$=lg(),i$=bI(),o$=SI(),r$=ug(),a$=PI(),s$=Xf(),c$=200;function d$(t,n,e){var i=-1,o=i$,r=t.length,a=!0,s=[],c=s;if(e)a=!1,o=o$;else if(r>=c$){var d=n?null:a$(t);if(d)return s$(d);a=!1,o=r$,c=new n$}else c=n?[]:s;e:for(;++i<r;){var f=t[i],p=n?n(f):f;if(f=e||f!==0?f:0,a&&p===p){for(var v=c.length;v--;)if(c[v]===p)continue e;n&&c.push(p),s.push(f)}else o(c,p,e)||(c!==s&&c.push(p),s.push(f))}return s}MI.exports=d$});var Ag=_((Nre,kI)=>{"use strict";var l$=Ht(),u$=At();function f$(t){return u$(t)&&l$(t)}kI.exports=f$});var NI=_((Rre,OI)=>{"use strict";var p$=Jf(),h$=Br(),m$=DI(),g$=Ag(),_$=h$(function(t){return m$(p$(t,1,g$,!0))});OI.exports=_$});var AI=_((Are,RI)=>{"use strict";var y$=Ar();function v$(t,n){return y$(n,function(e){return t[e]})}RI.exports=v$});var Fg=_((Fre,FI)=>{"use strict";var C$=AI(),x$=nn();function b$(t){return t==null?[]:C$(t,x$(t))}FI.exports=b$});var xt=_((Lre,LI)=>{"use strict";var ep;if(typeof Ci=="function")try{ep={clone:Fb(),constant:Wf(),each:dg(),filter:wg(),has:Sg(),isArray:je(),isEmpty:xS(),isFunction:co(),isUndefined:Ig(),keys:nn(),map:Eg(),reduce:Pg(),size:KS(),transform:XS(),union:NI(),values:Fg()}}catch{}ep||(ep=window._);LI.exports=ep});var tp=_((zre,VI)=>{"use strict";var oe=xt();VI.exports=le;var w$="\0",pi="\0",BI="";function le(t){this._isDirected=oe.has(t,"directed")?t.directed:!0,this._isMultigraph=oe.has(t,"multigraph")?t.multigraph:!1,this._isCompound=oe.has(t,"compound")?t.compound:!1,this._label=void 0,this._defaultNodeLabelFn=oe.constant(void 0),this._defaultEdgeLabelFn=oe.constant(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[pi]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}le.prototype._nodeCount=0;le.prototype._edgeCount=0;le.prototype.isDirected=function(){return this._isDirected};le.prototype.isMultigraph=function(){return this._isMultigraph};le.prototype.isCompound=function(){return this._isCompound};le.prototype.setGraph=function(t){return this._label=t,this};le.prototype.graph=function(){return this._label};le.prototype.setDefaultNodeLabel=function(t){return oe.isFunction(t)||(t=oe.constant(t)),this._defaultNodeLabelFn=t,this};le.prototype.nodeCount=function(){return this._nodeCount};le.prototype.nodes=function(){return oe.keys(this._nodes)};le.prototype.sources=function(){var t=this;return oe.filter(this.nodes(),function(n){return oe.isEmpty(t._in[n])})};le.prototype.sinks=function(){var t=this;return oe.filter(this.nodes(),function(n){return oe.isEmpty(t._out[n])})};le.prototype.setNodes=function(t,n){var e=arguments,i=this;return oe.each(t,function(o){e.length>1?i.setNode(o,n):i.setNode(o)}),this};le.prototype.setNode=function(t,n){return oe.has(this._nodes,t)?(arguments.length>1&&(this._nodes[t]=n),this):(this._nodes[t]=arguments.length>1?n:this._defaultNodeLabelFn(t),this._isCompound&&(this._parent[t]=pi,this._children[t]={},this._children[pi][t]=!0),this._in[t]={},this._preds[t]={},this._out[t]={},this._sucs[t]={},++this._nodeCount,this)};le.prototype.node=function(t){return this._nodes[t]};le.prototype.hasNode=function(t){return oe.has(this._nodes,t)};le.prototype.removeNode=function(t){var n=this;if(oe.has(this._nodes,t)){var e=function(i){n.removeEdge(n._edgeObjs[i])};delete this._nodes[t],this._isCompound&&(this._removeFromParentsChildList(t),delete this._parent[t],oe.each(this.children(t),function(i){n.setParent(i)}),delete this._children[t]),oe.each(oe.keys(this._in[t]),e),delete this._in[t],delete this._preds[t],oe.each(oe.keys(this._out[t]),e),delete this._out[t],delete this._sucs[t],--this._nodeCount}return this};le.prototype.setParent=function(t,n){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(oe.isUndefined(n))n=pi;else{n+="";for(var e=n;!oe.isUndefined(e);e=this.parent(e))if(e===t)throw new Error("Setting "+n+" as parent of "+t+" would create a cycle");this.setNode(n)}return this.setNode(t),this._removeFromParentsChildList(t),this._parent[t]=n,this._children[n][t]=!0,this};le.prototype._removeFromParentsChildList=function(t){delete this._children[this._parent[t]][t]};le.prototype.parent=function(t){if(this._isCompound){var n=this._parent[t];if(n!==pi)return n}};le.prototype.children=function(t){if(oe.isUndefined(t)&&(t=pi),this._isCompound){var n=this._children[t];if(n)return oe.keys(n)}else{if(t===pi)return this.nodes();if(this.hasNode(t))return[]}};le.prototype.predecessors=function(t){var n=this._preds[t];if(n)return oe.keys(n)};le.prototype.successors=function(t){var n=this._sucs[t];if(n)return oe.keys(n)};le.prototype.neighbors=function(t){var n=this.predecessors(t);if(n)return oe.union(n,this.successors(t))};le.prototype.isLeaf=function(t){var n;return this.isDirected()?n=this.successors(t):n=this.neighbors(t),n.length===0};le.prototype.filterNodes=function(t){var n=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});n.setGraph(this.graph());var e=this;oe.each(this._nodes,function(r,a){t(a)&&n.setNode(a,r)}),oe.each(this._edgeObjs,function(r){n.hasNode(r.v)&&n.hasNode(r.w)&&n.setEdge(r,e.edge(r))});var i={};function o(r){var a=e.parent(r);return a===void 0||n.hasNode(a)?(i[r]=a,a):a in i?i[a]:o(a)}return this._isCompound&&oe.each(n.nodes(),function(r){n.setParent(r,o(r))}),n};le.prototype.setDefaultEdgeLabel=function(t){return oe.isFunction(t)||(t=oe.constant(t)),this._defaultEdgeLabelFn=t,this};le.prototype.edgeCount=function(){return this._edgeCount};le.prototype.edges=function(){return oe.values(this._edgeObjs)};le.prototype.setPath=function(t,n){var e=this,i=arguments;return oe.reduce(t,function(o,r){return i.length>1?e.setEdge(o,r,n):e.setEdge(o,r),r}),this};le.prototype.setEdge=function(){var t,n,e,i,o=!1,r=arguments[0];typeof r=="object"&&r!==null&&"v"in r?(t=r.v,n=r.w,e=r.name,arguments.length===2&&(i=arguments[1],o=!0)):(t=r,n=arguments[1],e=arguments[3],arguments.length>2&&(i=arguments[2],o=!0)),t=""+t,n=""+n,oe.isUndefined(e)||(e=""+e);var a=zr(this._isDirected,t,n,e);if(oe.has(this._edgeLabels,a))return o&&(this._edgeLabels[a]=i),this;if(!oe.isUndefined(e)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(t),this.setNode(n),this._edgeLabels[a]=o?i:this._defaultEdgeLabelFn(t,n,e);var s=S$(this._isDirected,t,n,e);return t=s.v,n=s.w,Object.freeze(s),this._edgeObjs[a]=s,zI(this._preds[n],t),zI(this._sucs[t],n),this._in[n][a]=s,this._out[t][a]=s,this._edgeCount++,this};le.prototype.edge=function(t,n,e){var i=arguments.length===1?Lg(this._isDirected,arguments[0]):zr(this._isDirected,t,n,e);return this._edgeLabels[i]};le.prototype.hasEdge=function(t,n,e){var i=arguments.length===1?Lg(this._isDirected,arguments[0]):zr(this._isDirected,t,n,e);return oe.has(this._edgeLabels,i)};le.prototype.removeEdge=function(t,n,e){var i=arguments.length===1?Lg(this._isDirected,arguments[0]):zr(this._isDirected,t,n,e),o=this._edgeObjs[i];return o&&(t=o.v,n=o.w,delete this._edgeLabels[i],delete this._edgeObjs[i],qI(this._preds[n],t),qI(this._sucs[t],n),delete this._in[n][i],delete this._out[t][i],this._edgeCount--),this};le.prototype.inEdges=function(t,n){var e=this._in[t];if(e){var i=oe.values(e);return n?oe.filter(i,function(o){return o.v===n}):i}};le.prototype.outEdges=function(t,n){var e=this._out[t];if(e){var i=oe.values(e);return n?oe.filter(i,function(o){return o.w===n}):i}};le.prototype.nodeEdges=function(t,n){var e=this.inEdges(t,n);if(e)return e.concat(this.outEdges(t,n))};function zI(t,n){t[n]?t[n]++:t[n]=1}function qI(t,n){--t[n]||delete t[n]}function zr(t,n,e,i){var o=""+n,r=""+e;if(!t&&o>r){var a=o;o=r,r=a}return o+BI+r+BI+(oe.isUndefined(i)?w$:i)}function S$(t,n,e,i){var o=""+n,r=""+e;if(!t&&o>r){var a=o;o=r,r=a}var s={v:o,w:r};return i&&(s.name=i),s}function Lg(t,n){return zr(t,n.v,n.w,n.name)}});var HI=_((qre,GI)=>{"use strict";GI.exports="2.1.8"});var UI=_((Vre,jI)=>{"use strict";jI.exports={Graph:tp(),version:HI()}});var $I=_((Gre,WI)=>{"use strict";var Ut=xt(),I$=tp();WI.exports={write:T$,read:M$};function T$(t){var n={options:{directed:t.isDirected(),multigraph:t.isMultigraph(),compound:t.isCompound()},nodes:E$(t),edges:P$(t)};return Ut.isUndefined(t.graph())||(n.value=Ut.clone(t.graph())),n}function E$(t){return Ut.map(t.nodes(),function(n){var e=t.node(n),i=t.parent(n),o={v:n};return Ut.isUndefined(e)||(o.value=e),Ut.isUndefined(i)||(o.parent=i),o})}function P$(t){return Ut.map(t.edges(),function(n){var e=t.edge(n),i={v:n.v,w:n.w};return Ut.isUndefined(n.name)||(i.name=n.name),Ut.isUndefined(e)||(i.value=e),i})}function M$(t){var n=new I$(t.options).setGraph(t.value);return Ut.each(t.nodes,function(e){n.setNode(e.v,e.value),e.parent&&n.setParent(e.v,e.parent)}),Ut.each(t.edges,function(e){n.setEdge({v:e.v,w:e.w,name:e.name},e.value)}),n}});var YI=_((Hre,KI)=>{"use strict";var np=xt();KI.exports=D$;function D$(t){var n={},e=[],i;function o(r){np.has(n,r)||(n[r]=!0,i.push(r),np.each(t.successors(r),o),np.each(t.predecessors(r),o))}return np.each(t.nodes(),function(r){i=[],o(r),i.length&&e.push(i)}),e}});var Bg=_((jre,ZI)=>{"use strict";var XI=xt();ZI.exports=Mt;function Mt(){this._arr=[],this._keyIndices={}}Mt.prototype.size=function(){return this._arr.length};Mt.prototype.keys=function(){return this._arr.map(function(t){return t.key})};Mt.prototype.has=function(t){return XI.has(this._keyIndices,t)};Mt.prototype.priority=function(t){var n=this._keyIndices[t];if(n!==void 0)return this._arr[n].priority};Mt.prototype.min=function(){if(this.size()===0)throw new Error("Queue underflow");return this._arr[0].key};Mt.prototype.add=function(t,n){var e=this._keyIndices;if(t=String(t),!XI.has(e,t)){var i=this._arr,o=i.length;return e[t]=o,i.push({key:t,priority:n}),this._decrease(o),!0}return!1};Mt.prototype.removeMin=function(){this._swap(0,this._arr.length-1);var t=this._arr.pop();return delete this._keyIndices[t.key],this._heapify(0),t.key};Mt.prototype.decrease=function(t,n){var e=this._keyIndices[t];if(n>this._arr[e].priority)throw new Error("New priority is greater than current priority. Key: "+t+" Old: "+this._arr[e].priority+" New: "+n);this._arr[e].priority=n,this._decrease(e)};Mt.prototype._heapify=function(t){var n=this._arr,e=2*t,i=e+1,o=t;e<n.length&&(o=n[e].priority<n[o].priority?e:o,i<n.length&&(o=n[i].priority<n[o].priority?i:o),o!==t&&(this._swap(t,o),this._heapify(o)))};Mt.prototype._decrease=function(t){for(var n=this._arr,e=n[t].priority,i;t!==0&&(i=t>>1,!(n[i].priority<e));)this._swap(t,i),t=i};Mt.prototype._swap=function(t,n){var e=this._arr,i=this._keyIndices,o=e[t],r=e[n];e[t]=r,e[n]=o,i[r.key]=t,i[o.key]=n}});var zg=_((Ure,QI)=>{"use strict";var k$=xt(),O$=Bg();QI.exports=R$;var N$=k$.constant(1);function R$(t,n,e,i){return A$(t,String(n),e||N$,i||function(o){return t.outEdges(o)})}function A$(t,n,e,i){var o={},r=new O$,a,s,c=function(d){var f=d.v!==a?d.v:d.w,p=o[f],v=e(d),x=s.distance+v;if(v<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+d+" Weight: "+v);x<p.distance&&(p.distance=x,p.predecessor=a,r.decrease(f,x))};for(t.nodes().forEach(function(d){var f=d===n?0:Number.POSITIVE_INFINITY;o[d]={distance:f},r.add(d,f)});r.size()>0&&(a=r.removeMin(),s=o[a],s.distance!==Number.POSITIVE_INFINITY);)i(a).forEach(c);return o}});var eT=_((Wre,JI)=>{"use strict";var F$=zg(),L$=xt();JI.exports=B$;function B$(t,n,e){return L$.transform(t.nodes(),function(i,o){i[o]=F$(t,o,n,e)},{})}});var qg=_(($re,nT)=>{"use strict";var tT=xt();nT.exports=z$;function z$(t){var n=0,e=[],i={},o=[];function r(a){var s=i[a]={onStack:!0,lowlink:n,index:n++};if(e.push(a),t.successors(a).forEach(function(f){tT.has(i,f)?i[f].onStack&&(s.lowlink=Math.min(s.lowlink,i[f].index)):(r(f),s.lowlink=Math.min(s.lowlink,i[f].lowlink))}),s.lowlink===s.index){var c=[],d;do d=e.pop(),i[d].onStack=!1,c.push(d);while(a!==d);o.push(c)}}return t.nodes().forEach(function(a){tT.has(i,a)||r(a)}),o}});var oT=_((Kre,iT)=>{"use strict";var q$=xt(),V$=qg();iT.exports=G$;function G$(t){return q$.filter(V$(t),function(n){return n.length>1||n.length===1&&t.hasEdge(n[0],n[0])})}});var aT=_((Yre,rT)=>{"use strict";var H$=xt();rT.exports=U$;var j$=H$.constant(1);function U$(t,n,e){return W$(t,n||j$,e||function(i){return t.outEdges(i)})}function W$(t,n,e){var i={},o=t.nodes();return o.forEach(function(r){i[r]={},i[r][r]={distance:0},o.forEach(function(a){r!==a&&(i[r][a]={distance:Number.POSITIVE_INFINITY})}),e(r).forEach(function(a){var s=a.v===r?a.w:a.v,c=n(a);i[r][s]={distance:c,predecessor:r}})}),o.forEach(function(r){var a=i[r];o.forEach(function(s){var c=i[s];o.forEach(function(d){var f=c[r],p=a[d],v=c[d],x=f.distance+p.distance;x<v.distance&&(v.distance=x,v.predecessor=p.predecessor)})})}),i}});var Vg=_((Xre,cT)=>{"use strict";var qr=xt();cT.exports=sT;sT.CycleException=ip;function sT(t){var n={},e={},i=[];function o(r){if(qr.has(e,r))throw new ip;qr.has(n,r)||(e[r]=!0,n[r]=!0,qr.each(t.predecessors(r),o),delete e[r],i.push(r))}if(qr.each(t.sinks(),o),qr.size(n)!==t.nodeCount())throw new ip;return i}function ip(){}ip.prototype=new Error});var uT=_((Zre,lT)=>{"use strict";var dT=Vg();lT.exports=$$;function $$(t){try{dT(t)}catch(n){if(n instanceof dT.CycleException)return!1;throw n}return!0}});var Gg=_((Qre,pT)=>{"use strict";var op=xt();pT.exports=K$;function K$(t,n,e){op.isArray(n)||(n=[n]);var i=(t.isDirected()?t.successors:t.neighbors).bind(t),o=[],r={};return op.each(n,function(a){if(!t.hasNode(a))throw new Error("Graph does not have node: "+a);fT(t,a,e==="post",r,i,o)}),o}function fT(t,n,e,i,o,r){op.has(i,n)||(i[n]=!0,e||r.push(n),op.each(o(n),function(a){fT(t,a,e,i,o,r)}),e&&r.push(n))}});var mT=_((Jre,hT)=>{"use strict";var Y$=Gg();hT.exports=X$;function X$(t,n){return Y$(t,n,"post")}});var _T=_((eae,gT)=>{"use strict";var Z$=Gg();gT.exports=Q$;function Q$(t,n){return Z$(t,n,"pre")}});var CT=_((tae,vT)=>{"use strict";var yT=xt(),J$=tp(),e6=Bg();vT.exports=t6;function t6(t,n){var e=new J$,i={},o=new e6,r;function a(c){var d=c.v===r?c.w:c.v,f=o.priority(d);if(f!==void 0){var p=n(c);p<f&&(i[d]=r,o.decrease(d,p))}}if(t.nodeCount()===0)return e;yT.each(t.nodes(),function(c){o.add(c,Number.POSITIVE_INFINITY),e.setNode(c)}),o.decrease(t.nodes()[0],0);for(var s=!1;o.size()>0;){if(r=o.removeMin(),yT.has(i,r))e.setEdge(r,i[r]);else{if(s)throw new Error("Input graph is not connected: "+t);s=!0}t.nodeEdges(r).forEach(a)}return e}});var bT=_((nae,xT)=>{"use strict";xT.exports={components:YI(),dijkstra:zg(),dijkstraAll:eT(),findCycles:oT(),floydWarshall:aT(),isAcyclic:uT(),postorder:mT(),preorder:_T(),prim:CT(),tarjan:qg(),topsort:Vg()}});var IT=_((iae,ST)=>{"use strict";var wT=UI();ST.exports={Graph:wT.Graph,json:$I(),alg:bT(),version:wT.version}});var Dt=_((oae,TT)=>{"use strict";var rp;if(typeof Ci=="function")try{rp=IT()}catch{}rp||(rp=window.graphlib);TT.exports=rp});var PT=_((aae,ET)=>{"use strict";var n6=ag(),i6=1,o6=4;function r6(t){return n6(t,i6|o6)}ET.exports=r6});var Vr=_((sae,MT)=>{"use strict";var a6=si(),s6=Ht(),c6=Er(),d6=Ct();function l6(t,n,e){if(!d6(e))return!1;var i=typeof n;return(i=="number"?s6(e)&&c6(n,e.length):i=="string"&&n in e)?a6(e[n],t):!1}MT.exports=l6});var OT=_((cae,kT)=>{"use strict";var u6=Br(),f6=si(),p6=Vr(),h6=kn(),DT=Object.prototype,m6=DT.hasOwnProperty,g6=u6(function(t,n){t=Object(t);var e=-1,i=n.length,o=i>2?n[2]:void 0;for(o&&p6(n[0],n[1],o)&&(i=1);++e<i;)for(var r=n[e],a=h6(r),s=-1,c=a.length;++s<c;){var d=a[s],f=t[d];(f===void 0||f6(f,DT[d])&&!m6.call(t,d))&&(t[d]=r[d])}return t});kT.exports=g6});var RT=_((dae,NT)=>{"use strict";var _6=jt(),y6=Ht(),v6=nn();function C6(t){return function(n,e,i){var o=Object(n);if(!y6(n)){var r=_6(e,3);n=v6(n),e=function(s){return r(o[s],s,o)}}var a=t(n,e,i);return a>-1?o[r?n[a]:a]:void 0}}NT.exports=C6});var FT=_((lae,AT)=>{"use strict";var x6=/\s/;function b6(t){for(var n=t.length;n--&&x6.test(t.charAt(n)););return n}AT.exports=b6});var BT=_((uae,LT)=>{"use strict";var w6=FT(),S6=/^\s+/;function I6(t){return t&&t.slice(0,w6(t)+1).replace(S6,"")}LT.exports=I6});var GT=_((fae,VT)=>{"use strict";var T6=BT(),zT=Ct(),E6=fi(),qT=NaN,P6=/^[-+]0x[0-9a-f]+$/i,M6=/^0b[01]+$/i,D6=/^0o[0-7]+$/i,k6=parseInt;function O6(t){if(typeof t=="number")return t;if(E6(t))return qT;if(zT(t)){var n=typeof t.valueOf=="function"?t.valueOf():t;t=zT(n)?n+"":n}if(typeof t!="string")return t===0?t:+t;t=T6(t);var e=M6.test(t);return e||D6.test(t)?k6(t.slice(2),e?2:8):P6.test(t)?qT:+t}VT.exports=O6});var Hg=_((pae,jT)=>{"use strict";var N6=GT(),HT=1/0,R6=17976931348623157e292;function A6(t){if(!t)return t===0?t:0;if(t=N6(t),t===HT||t===-HT){var n=t<0?-1:1;return n*R6}return t===t?t:0}jT.exports=A6});var WT=_((hae,UT)=>{"use strict";var F6=Hg();function L6(t){var n=F6(t),e=n%1;return n===n?e?n-e:n:0}UT.exports=L6});var KT=_((mae,$T)=>{"use strict";var B6=Ng(),z6=jt(),q6=WT(),V6=Math.max;function G6(t,n,e){var i=t==null?0:t.length;if(!i)return-1;var o=e==null?0:q6(e);return o<0&&(o=V6(i+o,0)),B6(t,z6(n,3),o)}$T.exports=G6});var XT=_((gae,YT)=>{"use strict";var H6=RT(),j6=KT(),U6=H6(j6);YT.exports=U6});var jg=_((_ae,ZT)=>{"use strict";var W6=Jf();function $6(t){var n=t==null?0:t.length;return n?W6(t,1):[]}ZT.exports=$6});var JT=_((yae,QT)=>{"use strict";var K6=$f(),Y6=sg(),X6=kn();function Z6(t,n){return t==null?t:K6(t,Y6(n),X6)}QT.exports=Z6});var t1=_((vae,e1)=>{"use strict";function Q6(t){var n=t==null?0:t.length;return n?t[n-1]:void 0}e1.exports=Q6});var i1=_((Cae,n1)=>{"use strict";var J6=Sr(),e8=Kf(),t8=jt();function n8(t,n){var e={};return n=t8(n,3),e8(t,function(i,o,r){J6(e,o,n(i,o,r))}),e}n1.exports=n8});var ap=_((xae,o1)=>{"use strict";var i8=fi();function o8(t,n,e){for(var i=-1,o=t.length;++i<o;){var r=t[i],a=n(r);if(a!=null&&(s===void 0?a===a&&!i8(a):e(a,s)))var s=a,c=r}return c}o1.exports=o8});var a1=_((bae,r1)=>{"use strict";function r8(t,n){return t>n}r1.exports=r8});var c1=_((wae,s1)=>{"use strict";var a8=ap(),s8=a1(),c8=On();function d8(t){return t&&t.length?a8(t,c8,s8):void 0}s1.exports=d8});var Ug=_((Sae,d1)=>{"use strict";var l8=Sr(),u8=si();function f8(t,n,e){(e!==void 0&&!u8(t[n],e)||e===void 0&&!(n in t))&&l8(t,n,e)}d1.exports=f8});var f1=_((Iae,u1)=>{"use strict";var p8=Mn(),h8=Nr(),m8=At(),g8="[object Object]",_8=Function.prototype,y8=Object.prototype,l1=_8.toString,v8=y8.hasOwnProperty,C8=l1.call(Object);function x8(t){if(!m8(t)||p8(t)!=g8)return!1;var n=h8(t);if(n===null)return!0;var e=v8.call(n,"constructor")&&n.constructor;return typeof e=="function"&&e instanceof e&&l1.call(e)==C8}u1.exports=x8});var Wg=_((Tae,p1)=>{"use strict";function b8(t,n){if(!(n==="constructor"&&typeof t[n]=="function")&&n!="__proto__")return t[n]}p1.exports=b8});var m1=_((Eae,h1)=>{"use strict";var w8=po(),S8=kn();function I8(t){return w8(t,S8(t))}h1.exports=I8});var x1=_((Pae,C1)=>{"use strict";var g1=Ug(),T8=Hm(),E8=ig(),P8=jm(),M8=rg(),_1=ho(),y1=je(),D8=Ag(),k8=di(),O8=co(),N8=Ct(),R8=f1(),A8=_o(),v1=Wg(),F8=m1();function L8(t,n,e,i,o,r,a){var s=v1(t,e),c=v1(n,e),d=a.get(c);if(d){g1(t,e,d);return}var f=r?r(s,c,e+"",t,n,a):void 0,p=f===void 0;if(p){var v=y1(c),x=!v&&k8(c),w=!v&&!x&&A8(c);f=c,v||x||w?y1(s)?f=s:D8(s)?f=P8(s):x?(p=!1,f=T8(c,!0)):w?(p=!1,f=E8(c,!0)):f=[]:R8(c)||_1(c)?(f=s,_1(s)?f=F8(s):(!N8(s)||O8(s))&&(f=M8(c))):p=!1}p&&(a.set(c,f),o(f,c,i,r,a),a.delete(c)),g1(t,e,f)}C1.exports=L8});var S1=_((Mae,w1)=>{"use strict";var B8=wr(),z8=Ug(),q8=$f(),V8=x1(),G8=Ct(),H8=kn(),j8=Wg();function b1(t,n,e,i,o){t!==n&&q8(n,function(r,a){if(o||(o=new B8),G8(r))V8(t,n,a,e,b1,i,o);else{var s=i?i(j8(t,a),r,a+"",t,n,o):void 0;s===void 0&&(s=r),z8(t,a,s)}},H8)}w1.exports=b1});var T1=_((Dae,I1)=>{"use strict";var U8=Br(),W8=Vr();function $8(t){return U8(function(n,e){var i=-1,o=e.length,r=o>1?e[o-1]:void 0,a=o>2?e[2]:void 0;for(r=t.length>3&&typeof r=="function"?(o--,r):void 0,a&&W8(e[0],e[1],a)&&(r=o<3?void 0:r,o=1),n=Object(n);++i<o;){var s=e[i];s&&t(n,s,i,r)}return n})}I1.exports=$8});var P1=_((kae,E1)=>{"use strict";var K8=S1(),Y8=T1(),X8=Y8(function(t,n,e){K8(t,n,e)});E1.exports=X8});var $g=_((Oae,M1)=>{"use strict";function Z8(t,n){return t<n}M1.exports=Z8});var k1=_((Nae,D1)=>{"use strict";var Q8=ap(),J8=$g(),eK=On();function tK(t){return t&&t.length?Q8(t,eK,J8):void 0}D1.exports=tK});var N1=_((Rae,O1)=>{"use strict";var nK=ap(),iK=jt(),oK=$g();function rK(t,n){return t&&t.length?nK(t,iK(n,2),oK):void 0}O1.exports=rK});var A1=_((Aae,R1)=>{"use strict";var aK=Pt(),sK=function(){return aK.Date.now()};R1.exports=sK});var B1=_((Fae,L1)=>{"use strict";var cK=Ir(),dK=Fr(),lK=Er(),F1=Ct(),uK=Co();function fK(t,n,e,i){if(!F1(t))return t;n=dK(n,t);for(var o=-1,r=n.length,a=r-1,s=t;s!=null&&++o<r;){var c=uK(n[o]),d=e;if(c==="__proto__"||c==="constructor"||c==="prototype")return t;if(o!=a){var f=s[c];d=i?i(f,c,s):void 0,d===void 0&&(d=F1(f)?f:lK(n[o+1])?[]:{})}cK(s,c,d),s=s[c]}return t}L1.exports=fK});var q1=_((Lae,z1)=>{"use strict";var pK=Lr(),hK=B1(),mK=Fr();function gK(t,n,e){for(var i=-1,o=n.length,r={};++i<o;){var a=n[i],s=pK(t,a);e(s,a)&&hK(r,mK(a,t),s)}return r}z1.exports=gK});var G1=_((Bae,V1)=>{"use strict";var _K=q1(),yK=xg();function vK(t,n){return _K(t,n,function(e,i){return yK(t,i)})}V1.exports=vK});var j1=_((zae,H1)=>{"use strict";var CK=jg(),xK=kg(),bK=Og();function wK(t){return bK(xK(t,void 0,CK),t+"")}H1.exports=wK});var W1=_((qae,U1)=>{"use strict";var SK=G1(),IK=j1(),TK=IK(function(t,n){return t==null?{}:SK(t,n)});U1.exports=TK});var K1=_((Vae,$1)=>{"use strict";var EK=Math.ceil,PK=Math.max;function MK(t,n,e,i){for(var o=-1,r=PK(EK((n-t)/(e||1)),0),a=Array(r);r--;)a[i?r:++o]=t,t+=e;return a}$1.exports=MK});var X1=_((Gae,Y1)=>{"use strict";var DK=K1(),kK=Vr(),Kg=Hg();function OK(t){return function(n,e,i){return i&&typeof i!="number"&&kK(n,e,i)&&(e=i=void 0),n=Kg(n),e===void 0?(e=n,n=0):e=Kg(e),i=i===void 0?n<e?1:-1:Kg(i),DK(n,e,i,t)}}Y1.exports=OK});var Q1=_((Hae,Z1)=>{"use strict";var NK=X1(),RK=NK();Z1.exports=RK});var eE=_((jae,J1)=>{"use strict";function AK(t,n){var e=t.length;for(t.sort(n);e--;)t[e]=t[e].value;return t}J1.exports=AK});var iE=_((Uae,nE)=>{"use strict";var tE=fi();function FK(t,n){if(t!==n){var e=t!==void 0,i=t===null,o=t===t,r=tE(t),a=n!==void 0,s=n===null,c=n===n,d=tE(n);if(!s&&!d&&!r&&t>n||r&&a&&c&&!s&&!d||i&&a&&c||!e&&c||!o)return 1;if(!i&&!r&&!d&&t<n||d&&e&&o&&!i&&!r||s&&e&&o||!a&&o||!c)return-1}return 0}nE.exports=FK});var rE=_((Wae,oE)=>{"use strict";var LK=iE();function BK(t,n,e){for(var i=-1,o=t.criteria,r=n.criteria,a=o.length,s=e.length;++i<a;){var c=LK(o[i],r[i]);if(c){if(i>=s)return c;var d=e[i];return c*(d=="desc"?-1:1)}}return t.index-n.index}oE.exports=BK});var sE=_(($ae,aE)=>{"use strict";var Yg=Ar(),zK=Lr(),qK=jt(),VK=Tg(),GK=eE(),HK=Pr(),jK=rE(),UK=On(),WK=je();function $K(t,n,e){n.length?n=Yg(n,function(r){return WK(r)?function(a){return zK(a,r.length===1?r[0]:r)}:r}):n=[UK];var i=-1;n=Yg(n,HK(qK));var o=VK(t,function(r,a,s){var c=Yg(n,function(d){return d(r)});return{criteria:c,index:++i,value:r}});return GK(o,function(r,a){return jK(r,a,e)})}aE.exports=$K});var lE=_((Kae,dE)=>{"use strict";var KK=Jf(),YK=sE(),XK=Br(),cE=Vr(),ZK=XK(function(t,n){if(t==null)return[];var e=n.length;return e>1&&cE(t,n[0],n[1])?n=[]:e>2&&cE(n[0],n[1],n[2])&&(n=[n[0]]),YK(t,KK(n,1),[])});dE.exports=ZK});var fE=_((Yae,uE)=>{"use strict";var QK=vg(),JK=0;function eY(t){var n=++JK;return QK(t)+n}uE.exports=eY});var hE=_((Xae,pE)=>{"use strict";function tY(t,n,e){for(var i=-1,o=t.length,r=n.length,a={};++i<o;){var s=i<r?n[i]:void 0;e(a,t[i],s)}return a}pE.exports=tY});var gE=_((Zae,mE)=>{"use strict";var nY=Ir(),iY=hE();function oY(t,n){return iY(t||[],n||[],nY)}mE.exports=oY});var Re=_((Qae,_E)=>{"use strict";var sp;if(typeof Ci=="function")try{sp={cloneDeep:PT(),constant:Wf(),defaults:OT(),each:dg(),filter:wg(),find:XT(),flatten:jg(),forEach:cg(),forIn:JT(),has:Sg(),isUndefined:Ig(),last:t1(),map:Eg(),mapValues:i1(),max:c1(),merge:P1(),min:k1(),minBy:N1(),now:A1(),pick:W1(),range:Q1(),reduce:Pg(),sortBy:lE(),uniqueId:fE(),values:Fg(),zipObject:gE()}}catch{}sp||(sp=window._);_E.exports=sp});var CE=_((ese,vE)=>{"use strict";vE.exports=cp;function cp(){var t={};t._next=t._prev=t,this._sentinel=t}cp.prototype.dequeue=function(){var t=this._sentinel,n=t._prev;if(n!==t)return yE(n),n};cp.prototype.enqueue=function(t){var n=this._sentinel;t._prev&&t._next&&yE(t),t._next=n._next,n._next._prev=t,n._next=t,t._prev=n};cp.prototype.toString=function(){for(var t=[],n=this._sentinel,e=n._prev;e!==n;)t.push(JSON.stringify(e,rY)),e=e._prev;return"["+t.join(", ")+"]"};function yE(t){t._prev._next=t._next,t._next._prev=t._prev,delete t._next,delete t._prev}function rY(t,n){if(t!=="_next"&&t!=="_prev")return n}});var bE=_((tse,xE)=>{"use strict";var on=Re(),aY=Dt().Graph,sY=CE();xE.exports=dY;var cY=on.constant(1);function dY(t,n){if(t.nodeCount()<=1)return[];var e=uY(t,n||cY),i=lY(e.graph,e.buckets,e.zeroIdx);return on.flatten(on.map(i,function(o){return t.outEdges(o.v,o.w)}),!0)}function lY(t,n,e){for(var i=[],o=n[n.length-1],r=n[0],a;t.nodeCount();){for(;a=r.dequeue();)Xg(t,n,e,a);for(;a=o.dequeue();)Xg(t,n,e,a);if(t.nodeCount()){for(var s=n.length-2;s>0;--s)if(a=n[s].dequeue(),a){i=i.concat(Xg(t,n,e,a,!0));break}}}return i}function Xg(t,n,e,i,o){var r=o?[]:void 0;return on.forEach(t.inEdges(i.v),function(a){var s=t.edge(a),c=t.node(a.v);o&&r.push({v:a.v,w:a.w}),c.out-=s,Zg(n,e,c)}),on.forEach(t.outEdges(i.v),function(a){var s=t.edge(a),c=a.w,d=t.node(c);d.in-=s,Zg(n,e,d)}),t.removeNode(i.v),r}function uY(t,n){var e=new aY,i=0,o=0;on.forEach(t.nodes(),function(s){e.setNode(s,{v:s,in:0,out:0})}),on.forEach(t.edges(),function(s){var c=e.edge(s.v,s.w)||0,d=n(s),f=c+d;e.setEdge(s.v,s.w,f),o=Math.max(o,e.node(s.v).out+=d),i=Math.max(i,e.node(s.w).in+=d)});var r=on.range(o+i+3).map(function(){return new sY}),a=i+1;return on.forEach(e.nodes(),function(s){Zg(r,a,e.node(s))}),{graph:e,buckets:r,zeroIdx:a}}function Zg(t,n,e){e.out?e.in?t[e.out-e.in+n].enqueue(e):t[t.length-1].enqueue(e):t[0].enqueue(e)}});var SE=_((nse,wE)=>{"use strict";var hi=Re(),fY=bE();wE.exports={run:pY,undo:mY};function pY(t){var n=t.graph().acyclicer==="greedy"?fY(t,e(t)):hY(t);hi.forEach(n,function(i){var o=t.edge(i);t.removeEdge(i),o.forwardName=i.name,o.reversed=!0,t.setEdge(i.w,i.v,o,hi.uniqueId("rev"))});function e(i){return function(o){return i.edge(o).weight}}}function hY(t){var n=[],e={},i={};function o(r){hi.has(i,r)||(i[r]=!0,e[r]=!0,hi.forEach(t.outEdges(r),function(a){hi.has(e,a.w)?n.push(a):o(a.w)}),delete e[r])}return hi.forEach(t.nodes(),o),n}function mY(t){hi.forEach(t.edges(),function(n){var e=t.edge(n);if(e.reversed){t.removeEdge(n);var i=e.forwardName;delete e.reversed,delete e.forwardName,t.setEdge(n.w,n.v,e,i)}})}});var ct=_((ise,PE)=>{"use strict";var ge=Re(),IE=Dt().Graph;PE.exports={addDummyNode:TE,simplify:gY,asNonCompoundGraph:_Y,successorWeights:yY,predecessorWeights:vY,intersectRect:CY,buildLayerMatrix:xY,normalizeRanks:bY,removeEmptyRanks:wY,addBorderNode:SY,maxRank:EE,partition:IY,time:TY,notime:EY};function TE(t,n,e,i){var o;do o=ge.uniqueId(i);while(t.hasNode(o));return e.dummy=n,t.setNode(o,e),o}function gY(t){var n=new IE().setGraph(t.graph());return ge.forEach(t.nodes(),function(e){n.setNode(e,t.node(e))}),ge.forEach(t.edges(),function(e){var i=n.edge(e.v,e.w)||{weight:0,minlen:1},o=t.edge(e);n.setEdge(e.v,e.w,{weight:i.weight+o.weight,minlen:Math.max(i.minlen,o.minlen)})}),n}function _Y(t){var n=new IE({multigraph:t.isMultigraph()}).setGraph(t.graph());return ge.forEach(t.nodes(),function(e){t.children(e).length||n.setNode(e,t.node(e))}),ge.forEach(t.edges(),function(e){n.setEdge(e,t.edge(e))}),n}function yY(t){var n=ge.map(t.nodes(),function(e){var i={};return ge.forEach(t.outEdges(e),function(o){i[o.w]=(i[o.w]||0)+t.edge(o).weight}),i});return ge.zipObject(t.nodes(),n)}function vY(t){var n=ge.map(t.nodes(),function(e){var i={};return ge.forEach(t.inEdges(e),function(o){i[o.v]=(i[o.v]||0)+t.edge(o).weight}),i});return ge.zipObject(t.nodes(),n)}function CY(t,n){var e=t.x,i=t.y,o=n.x-e,r=n.y-i,a=t.width/2,s=t.height/2;if(!o&&!r)throw new Error("Not possible to find intersection inside of the rectangle");var c,d;return Math.abs(r)*a>Math.abs(o)*s?(r<0&&(s=-s),c=s*o/r,d=s):(o<0&&(a=-a),c=a,d=a*r/o),{x:e+c,y:i+d}}function xY(t){var n=ge.map(ge.range(EE(t)+1),function(){return[]});return ge.forEach(t.nodes(),function(e){var i=t.node(e),o=i.rank;ge.isUndefined(o)||(n[o][i.order]=e)}),n}function bY(t){var n=ge.min(ge.map(t.nodes(),function(e){return t.node(e).rank}));ge.forEach(t.nodes(),function(e){var i=t.node(e);ge.has(i,"rank")&&(i.rank-=n)})}function wY(t){var n=ge.min(ge.map(t.nodes(),function(r){return t.node(r).rank})),e=[];ge.forEach(t.nodes(),function(r){var a=t.node(r).rank-n;e[a]||(e[a]=[]),e[a].push(r)});var i=0,o=t.graph().nodeRankFactor;ge.forEach(e,function(r,a){ge.isUndefined(r)&&a%o!==0?--i:i&&ge.forEach(r,function(s){t.node(s).rank+=i})})}function SY(t,n,e,i){var o={width:0,height:0};return arguments.length>=4&&(o.rank=e,o.order=i),TE(t,"border",o,n)}function EE(t){return ge.max(ge.map(t.nodes(),function(n){var e=t.node(n).rank;if(!ge.isUndefined(e))return e}))}function IY(t,n){var e={lhs:[],rhs:[]};return ge.forEach(t,function(i){n(i)?e.lhs.push(i):e.rhs.push(i)}),e}function TY(t,n){var e=ge.now();try{return n()}finally{console.log(t+" time: "+(ge.now()-e)+"ms")}}function EY(t,n){return n()}});var kE=_((ose,DE)=>{"use strict";var ME=Re(),PY=ct();DE.exports={run:MY,undo:kY};function MY(t){t.graph().dummyChains=[],ME.forEach(t.edges(),function(n){DY(t,n)})}function DY(t,n){var e=n.v,i=t.node(e).rank,o=n.w,r=t.node(o).rank,a=n.name,s=t.edge(n),c=s.labelRank;if(r!==i+1){t.removeEdge(n);var d,f,p;for(p=0,++i;i<r;++p,++i)s.points=[],f={width:0,height:0,edgeLabel:s,edgeObj:n,rank:i},d=PY.addDummyNode(t,"edge",f,"_d"),i===c&&(f.width=s.width,f.height=s.height,f.dummy="edge-label",f.labelpos=s.labelpos),t.setEdge(e,d,{weight:s.weight},a),p===0&&t.graph().dummyChains.push(d),e=d;t.setEdge(e,o,{weight:s.weight},a)}}function kY(t){ME.forEach(t.graph().dummyChains,function(n){var e=t.node(n),i=e.edgeLabel,o;for(t.setEdge(e.edgeObj,i);e.dummy;)o=t.successors(n)[0],t.removeNode(n),i.points.push({x:e.x,y:e.y}),e.dummy==="edge-label"&&(i.x=e.x,i.y=e.y,i.width=e.width,i.height=e.height),n=o,e=t.node(n)})}});var Gr=_((rse,OE)=>{"use strict";var dp=Re();OE.exports={longestPath:OY,slack:NY};function OY(t){var n={};function e(i){var o=t.node(i);if(dp.has(n,i))return o.rank;n[i]=!0;var r=dp.min(dp.map(t.outEdges(i),function(a){return e(a.w)-t.edge(a).minlen}));return(r===Number.POSITIVE_INFINITY||r===void 0||r===null)&&(r=0),o.rank=r}dp.forEach(t.sources(),e)}function NY(t,n){return t.node(n.w).rank-t.node(n.v).rank-t.edge(n).minlen}});var Qg=_((ase,NE)=>{"use strict";var lp=Re(),RY=Dt().Graph,up=Gr().slack;NE.exports=AY;function AY(t){var n=new RY({directed:!1}),e=t.nodes()[0],i=t.nodeCount();n.setNode(e,{});for(var o,r;FY(n,t)<i;)o=LY(n,t),r=n.hasNode(o.v)?up(t,o):-up(t,o),BY(n,t,r);return n}function FY(t,n){function e(i){lp.forEach(n.nodeEdges(i),function(o){var r=o.v,a=i===r?o.w:r;!t.hasNode(a)&&!up(n,o)&&(t.setNode(a,{}),t.setEdge(i,a,{}),e(a))})}return lp.forEach(t.nodes(),e),t.nodeCount()}function LY(t,n){return lp.minBy(n.edges(),function(e){if(t.hasNode(e.v)!==t.hasNode(e.w))return up(n,e)})}function BY(t,n,e){lp.forEach(t.nodes(),function(i){n.node(i).rank+=e})}});var VE=_((sse,qE)=>{"use strict";var rn=Re(),zY=Qg(),qY=Gr().slack,VY=Gr().longestPath,GY=Dt().alg.preorder,HY=Dt().alg.postorder,jY=ct().simplify;qE.exports=mi;mi.initLowLimValues=e_;mi.initCutValues=Jg;mi.calcCutValue=AE;mi.leaveEdge=LE;mi.enterEdge=BE;mi.exchangeEdges=zE;function mi(t){t=jY(t),VY(t);var n=zY(t);e_(n),Jg(n,t);for(var e,i;e=LE(n);)i=BE(n,t,e),zE(n,t,e,i)}function Jg(t,n){var e=HY(t,t.nodes());e=e.slice(0,e.length-1),rn.forEach(e,function(i){UY(t,n,i)})}function UY(t,n,e){var i=t.node(e),o=i.parent;t.edge(e,o).cutvalue=AE(t,n,e)}function AE(t,n,e){var i=t.node(e),o=i.parent,r=!0,a=n.edge(e,o),s=0;return a||(r=!1,a=n.edge(o,e)),s=a.weight,rn.forEach(n.nodeEdges(e),function(c){var d=c.v===e,f=d?c.w:c.v;if(f!==o){var p=d===r,v=n.edge(c).weight;if(s+=p?v:-v,$Y(t,e,f)){var x=t.edge(e,f).cutvalue;s+=p?-x:x}}}),s}function e_(t,n){arguments.length<2&&(n=t.nodes()[0]),FE(t,{},1,n)}function FE(t,n,e,i,o){var r=e,a=t.node(i);return n[i]=!0,rn.forEach(t.neighbors(i),function(s){rn.has(n,s)||(e=FE(t,n,e,s,i))}),a.low=r,a.lim=e++,o?a.parent=o:delete a.parent,e}function LE(t){return rn.find(t.edges(),function(n){return t.edge(n).cutvalue<0})}function BE(t,n,e){var i=e.v,o=e.w;n.hasEdge(i,o)||(i=e.w,o=e.v);var r=t.node(i),a=t.node(o),s=r,c=!1;r.lim>a.lim&&(s=a,c=!0);var d=rn.filter(n.edges(),function(f){return c===RE(t,t.node(f.v),s)&&c!==RE(t,t.node(f.w),s)});return rn.minBy(d,function(f){return qY(n,f)})}function zE(t,n,e,i){var o=e.v,r=e.w;t.removeEdge(o,r),t.setEdge(i.v,i.w,{}),e_(t),Jg(t,n),WY(t,n)}function WY(t,n){var e=rn.find(t.nodes(),function(o){return!n.node(o).parent}),i=GY(t,e);i=i.slice(1),rn.forEach(i,function(o){var r=t.node(o).parent,a=n.edge(o,r),s=!1;a||(a=n.edge(r,o),s=!0),n.node(o).rank=n.node(r).rank+(s?a.minlen:-a.minlen)})}function $Y(t,n,e){return t.hasEdge(n,e)}function RE(t,n,e){return e.low<=n.lim&&n.lim<=e.lim}});var UE=_((cse,jE)=>{"use strict";var KY=Gr(),HE=KY.longestPath,YY=Qg(),XY=VE();jE.exports=ZY;function ZY(t){switch(t.graph().ranker){case"network-simplex":GE(t);break;case"tight-tree":JY(t);break;case"longest-path":QY(t);break;default:GE(t)}}var QY=HE;function JY(t){HE(t),YY(t)}function GE(t){XY(t)}});var $E=_((dse,WE)=>{"use strict";var t_=Re();WE.exports=e7;function e7(t){var n=n7(t);t_.forEach(t.graph().dummyChains,function(e){for(var i=t.node(e),o=i.edgeObj,r=t7(t,n,o.v,o.w),a=r.path,s=r.lca,c=0,d=a[c],f=!0;e!==o.w;){if(i=t.node(e),f){for(;(d=a[c])!==s&&t.node(d).maxRank<i.rank;)c++;d===s&&(f=!1)}if(!f){for(;c<a.length-1&&t.node(d=a[c+1]).minRank<=i.rank;)c++;d=a[c]}t.setParent(e,d),e=t.successors(e)[0]}})}function t7(t,n,e,i){var o=[],r=[],a=Math.min(n[e].low,n[i].low),s=Math.max(n[e].lim,n[i].lim),c,d;c=e;do c=t.parent(c),o.push(c);while(c&&(n[c].low>a||s>n[c].lim));for(d=c,c=i;(c=t.parent(c))!==d;)r.push(c);return{path:o.concat(r.reverse()),lca:d}}function n7(t){var n={},e=0;function i(o){var r=e;t_.forEach(t.children(o),i),n[o]={low:r,lim:e++}}return t_.forEach(t.children(),i),n}});var XE=_((lse,YE)=>{"use strict";var an=Re(),n_=ct();YE.exports={run:i7,cleanup:a7};function i7(t){var n=n_.addDummyNode(t,"root",{},"_root"),e=o7(t),i=an.max(an.values(e))-1,o=2*i+1;t.graph().nestingRoot=n,an.forEach(t.edges(),function(a){t.edge(a).minlen*=o});var r=r7(t)+1;an.forEach(t.children(),function(a){KE(t,n,o,r,i,e,a)}),t.graph().nodeRankFactor=o}function KE(t,n,e,i,o,r,a){var s=t.children(a);if(!s.length){a!==n&&t.setEdge(n,a,{weight:0,minlen:e});return}var c=n_.addBorderNode(t,"_bt"),d=n_.addBorderNode(t,"_bb"),f=t.node(a);t.setParent(c,a),f.borderTop=c,t.setParent(d,a),f.borderBottom=d,an.forEach(s,function(p){KE(t,n,e,i,o,r,p);var v=t.node(p),x=v.borderTop?v.borderTop:p,w=v.borderBottom?v.borderBottom:p,T=v.borderTop?i:2*i,E=x!==w?1:o-r[a]+1;t.setEdge(c,x,{weight:T,minlen:E,nestingEdge:!0}),t.setEdge(w,d,{weight:T,minlen:E,nestingEdge:!0})}),t.parent(a)||t.setEdge(n,c,{weight:0,minlen:o+r[a]})}function o7(t){var n={};function e(i,o){var r=t.children(i);r&&r.length&&an.forEach(r,function(a){e(a,o+1)}),n[i]=o}return an.forEach(t.children(),function(i){e(i,1)}),n}function r7(t){return an.reduce(t.edges(),function(n,e){return n+t.edge(e).weight},0)}function a7(t){var n=t.graph();t.removeNode(n.nestingRoot),delete n.nestingRoot,an.forEach(t.edges(),function(e){var i=t.edge(e);i.nestingEdge&&t.removeEdge(e)})}});var JE=_((use,QE)=>{"use strict";var i_=Re(),s7=ct();QE.exports=c7;function c7(t){function n(e){var i=t.children(e),o=t.node(e);if(i.length&&i_.forEach(i,n),i_.has(o,"minRank")){o.borderLeft=[],o.borderRight=[];for(var r=o.minRank,a=o.maxRank+1;r<a;++r)ZE(t,"borderLeft","_bl",e,o,r),ZE(t,"borderRight","_br",e,o,r)}}i_.forEach(t.children(),n)}function ZE(t,n,e,i,o,r){var a={width:0,height:0,rank:r,borderType:n},s=o[n][r-1],c=s7.addDummyNode(t,"border",a,e);o[n][r]=c,t.setParent(c,i),s&&t.setEdge(s,c,{weight:1})}});var iP=_((fse,nP)=>{"use strict";var Wt=Re();nP.exports={adjust:d7,undo:l7};function d7(t){var n=t.graph().rankdir.toLowerCase();(n==="lr"||n==="rl")&&tP(t)}function l7(t){var n=t.graph().rankdir.toLowerCase();(n==="bt"||n==="rl")&&u7(t),(n==="lr"||n==="rl")&&(f7(t),tP(t))}function tP(t){Wt.forEach(t.nodes(),function(n){eP(t.node(n))}),Wt.forEach(t.edges(),function(n){eP(t.edge(n))})}function eP(t){var n=t.width;t.width=t.height,t.height=n}function u7(t){Wt.forEach(t.nodes(),function(n){o_(t.node(n))}),Wt.forEach(t.edges(),function(n){var e=t.edge(n);Wt.forEach(e.points,o_),Wt.has(e,"y")&&o_(e)})}function o_(t){t.y=-t.y}function f7(t){Wt.forEach(t.nodes(),function(n){r_(t.node(n))}),Wt.forEach(t.edges(),function(n){var e=t.edge(n);Wt.forEach(e.points,r_),Wt.has(e,"x")&&r_(e)})}function r_(t){var n=t.x;t.x=t.y,t.y=n}});var rP=_((pse,oP)=>{"use strict";var sn=Re();oP.exports=p7;function p7(t){var n={},e=sn.filter(t.nodes(),function(s){return!t.children(s).length}),i=sn.max(sn.map(e,function(s){return t.node(s).rank})),o=sn.map(sn.range(i+1),function(){return[]});function r(s){if(!sn.has(n,s)){n[s]=!0;var c=t.node(s);o[c.rank].push(s),sn.forEach(t.successors(s),r)}}var a=sn.sortBy(e,function(s){return t.node(s).rank});return sn.forEach(a,r),o}});var sP=_((hse,aP)=>{"use strict";var Nn=Re();aP.exports=h7;function h7(t,n){for(var e=0,i=1;i<n.length;++i)e+=m7(t,n[i-1],n[i]);return e}function m7(t,n,e){for(var i=Nn.zipObject(e,Nn.map(e,function(d,f){return f})),o=Nn.flatten(Nn.map(n,function(d){return Nn.sortBy(Nn.map(t.outEdges(d),function(f){return{pos:i[f.w],weight:t.edge(f).weight}}),"pos")}),!0),r=1;r<e.length;)r<<=1;var a=2*r-1;r-=1;var s=Nn.map(new Array(a),function(){return 0}),c=0;return Nn.forEach(o.forEach(function(d){var f=d.pos+r;s[f]+=d.weight;for(var p=0;f>0;)f%2&&(p+=s[f+1]),f=f-1>>1,s[f]+=d.weight;c+=d.weight*p})),c}});var lP=_((mse,dP)=>{"use strict";var cP=Re();dP.exports=g7;function g7(t,n){return cP.map(n,function(e){var i=t.inEdges(e);if(i.length){var o=cP.reduce(i,function(r,a){var s=t.edge(a),c=t.node(a.v);return{sum:r.sum+s.weight*c.order,weight:r.weight+s.weight}},{sum:0,weight:0});return{v:e,barycenter:o.sum/o.weight,weight:o.weight}}else return{v:e}})}});var fP=_((gse,uP)=>{"use strict";var bt=Re();uP.exports=_7;function _7(t,n){var e={};bt.forEach(t,function(o,r){var a=e[o.v]={indegree:0,in:[],out:[],vs:[o.v],i:r};bt.isUndefined(o.barycenter)||(a.barycenter=o.barycenter,a.weight=o.weight)}),bt.forEach(n.edges(),function(o){var r=e[o.v],a=e[o.w];!bt.isUndefined(r)&&!bt.isUndefined(a)&&(a.indegree++,r.out.push(e[o.w]))});var i=bt.filter(e,function(o){return!o.indegree});return y7(i)}function y7(t){var n=[];function e(r){return function(a){a.merged||(bt.isUndefined(a.barycenter)||bt.isUndefined(r.barycenter)||a.barycenter>=r.barycenter)&&v7(r,a)}}function i(r){return function(a){a.in.push(r),--a.indegree===0&&t.push(a)}}for(;t.length;){var o=t.pop();n.push(o),bt.forEach(o.in.reverse(),e(o)),bt.forEach(o.out,i(o))}return bt.map(bt.filter(n,function(r){return!r.merged}),function(r){return bt.pick(r,["vs","i","barycenter","weight"])})}function v7(t,n){var e=0,i=0;t.weight&&(e+=t.barycenter*t.weight,i+=t.weight),n.weight&&(e+=n.barycenter*n.weight,i+=n.weight),t.vs=n.vs.concat(t.vs),t.barycenter=e/i,t.weight=i,t.i=Math.min(n.i,t.i),n.merged=!0}});var mP=_((_se,hP)=>{"use strict";var Hr=Re(),C7=ct();hP.exports=x7;function x7(t,n){var e=C7.partition(t,function(f){return Hr.has(f,"barycenter")}),i=e.lhs,o=Hr.sortBy(e.rhs,function(f){return-f.i}),r=[],a=0,s=0,c=0;i.sort(b7(!!n)),c=pP(r,o,c),Hr.forEach(i,function(f){c+=f.vs.length,r.push(f.vs),a+=f.barycenter*f.weight,s+=f.weight,c=pP(r,o,c)});var d={vs:Hr.flatten(r,!0)};return s&&(d.barycenter=a/s,d.weight=s),d}function pP(t,n,e){for(var i;n.length&&(i=Hr.last(n)).i<=e;)n.pop(),t.push(i.vs),e++;return e}function b7(t){return function(n,e){return n.barycenter<e.barycenter?-1:n.barycenter>e.barycenter?1:t?e.i-n.i:n.i-e.i}}});var yP=_((yse,_P)=>{"use strict";var Rn=Re(),w7=lP(),S7=fP(),I7=mP();_P.exports=gP;function gP(t,n,e,i){var o=t.children(n),r=t.node(n),a=r?r.borderLeft:void 0,s=r?r.borderRight:void 0,c={};a&&(o=Rn.filter(o,function(w){return w!==a&&w!==s}));var d=w7(t,o);Rn.forEach(d,function(w){if(t.children(w.v).length){var T=gP(t,w.v,e,i);c[w.v]=T,Rn.has(T,"barycenter")&&E7(w,T)}});var f=S7(d,e);T7(f,c);var p=I7(f,i);if(a&&(p.vs=Rn.flatten([a,p.vs,s],!0),t.predecessors(a).length)){var v=t.node(t.predecessors(a)[0]),x=t.node(t.predecessors(s)[0]);Rn.has(p,"barycenter")||(p.barycenter=0,p.weight=0),p.barycenter=(p.barycenter*p.weight+v.order+x.order)/(p.weight+2),p.weight+=2}return p}function T7(t,n){Rn.forEach(t,function(e){e.vs=Rn.flatten(e.vs.map(function(i){return n[i]?n[i].vs:i}),!0)})}function E7(t,n){Rn.isUndefined(t.barycenter)?(t.barycenter=n.barycenter,t.weight=n.weight):(t.barycenter=(t.barycenter*t.weight+n.barycenter*n.weight)/(t.weight+n.weight),t.weight+=n.weight)}});var CP=_((vse,vP)=>{"use strict";var jr=Re(),P7=Dt().Graph;vP.exports=M7;function M7(t,n,e){var i=D7(t),o=new P7({compound:!0}).setGraph({root:i}).setDefaultNodeLabel(function(r){return t.node(r)});return jr.forEach(t.nodes(),function(r){var a=t.node(r),s=t.parent(r);(a.rank===n||a.minRank<=n&&n<=a.maxRank)&&(o.setNode(r),o.setParent(r,s||i),jr.forEach(t[e](r),function(c){var d=c.v===r?c.w:c.v,f=o.edge(d,r),p=jr.isUndefined(f)?0:f.weight;o.setEdge(d,r,{weight:t.edge(c).weight+p})}),jr.has(a,"minRank")&&o.setNode(r,{borderLeft:a.borderLeft[n],borderRight:a.borderRight[n]}))}),o}function D7(t){for(var n;t.hasNode(n=jr.uniqueId("_root")););return n}});var bP=_((Cse,xP)=>{"use strict";var k7=Re();xP.exports=O7;function O7(t,n,e){var i={},o;k7.forEach(e,function(r){for(var a=t.parent(r),s,c;a;){if(s=t.parent(a),s?(c=i[s],i[s]=a):(c=o,o=a),c&&c!==a){n.setEdge(c,a);return}a=s}})}});var EP=_((xse,TP)=>{"use strict";var An=Re(),N7=rP(),R7=sP(),A7=yP(),F7=CP(),L7=bP(),B7=Dt().Graph,wP=ct();TP.exports=z7;function z7(t){var n=wP.maxRank(t),e=SP(t,An.range(1,n+1),"inEdges"),i=SP(t,An.range(n-1,-1,-1),"outEdges"),o=N7(t);IP(t,o);for(var r=Number.POSITIVE_INFINITY,a,s=0,c=0;c<4;++s,++c){q7(s%2?e:i,s%4>=2),o=wP.buildLayerMatrix(t);var d=R7(t,o);d<r&&(c=0,a=An.cloneDeep(o),r=d)}IP(t,a)}function SP(t,n,e){return An.map(n,function(i){return F7(t,i,e)})}function q7(t,n){var e=new B7;An.forEach(t,function(i){var o=i.graph().root,r=A7(i,o,e,n);An.forEach(r.vs,function(a,s){i.node(a).order=s}),L7(i,e,r.vs)})}function IP(t,n){An.forEach(n,function(e){An.forEach(e,function(i,o){t.node(i).order=o})})}});var LP=_((bse,FP)=>{"use strict";var re=Re(),V7=Dt().Graph,G7=ct();FP.exports={positionX:U7,findType1Conflicts:PP,findType2Conflicts:MP,addConflict:a_,hasConflict:DP,verticalAlignment:kP,horizontalCompaction:OP,alignCoordinates:RP,findSmallestWidthAlignment:NP,balance:AP};function PP(t,n){var e={};function i(o,r){var a=0,s=0,c=o.length,d=re.last(r);return re.forEach(r,function(f,p){var v=H7(t,f),x=v?t.node(v).order:c;(v||f===d)&&(re.forEach(r.slice(s,p+1),function(w){re.forEach(t.predecessors(w),function(T){var E=t.node(T),O=E.order;(O<a||x<O)&&!(E.dummy&&t.node(w).dummy)&&a_(e,T,w)})}),s=p+1,a=x)}),r}return re.reduce(n,i),e}function MP(t,n){var e={};function i(r,a,s,c,d){var f;re.forEach(re.range(a,s),function(p){f=r[p],t.node(f).dummy&&re.forEach(t.predecessors(f),function(v){var x=t.node(v);x.dummy&&(x.order<c||x.order>d)&&a_(e,v,f)})})}function o(r,a){var s=-1,c,d=0;return re.forEach(a,function(f,p){if(t.node(f).dummy==="border"){var v=t.predecessors(f);v.length&&(c=t.node(v[0]).order,i(a,d,p,s,c),d=p,s=c)}i(a,d,a.length,c,r.length)}),a}return re.reduce(n,o),e}function H7(t,n){if(t.node(n).dummy)return re.find(t.predecessors(n),function(e){return t.node(e).dummy})}function a_(t,n,e){if(n>e){var i=n;n=e,e=i}var o=t[n];o||(t[n]=o={}),o[e]=!0}function DP(t,n,e){if(n>e){var i=n;n=e,e=i}return re.has(t[n],e)}function kP(t,n,e,i){var o={},r={},a={};return re.forEach(n,function(s){re.forEach(s,function(c,d){o[c]=c,r[c]=c,a[c]=d})}),re.forEach(n,function(s){var c=-1;re.forEach(s,function(d){var f=i(d);if(f.length){f=re.sortBy(f,function(T){return a[T]});for(var p=(f.length-1)/2,v=Math.floor(p),x=Math.ceil(p);v<=x;++v){var w=f[v];r[d]===d&&c<a[w]&&!DP(e,d,w)&&(r[w]=d,r[d]=o[d]=o[w],c=a[w])}}})}),{root:o,align:r}}function OP(t,n,e,i,o){var r={},a=j7(t,n,e,o),s=o?"borderLeft":"borderRight";function c(p,v){for(var x=a.nodes(),w=x.pop(),T={};w;)T[w]?p(w):(T[w]=!0,x.push(w),x=x.concat(v(w))),w=x.pop()}function d(p){r[p]=a.inEdges(p).reduce(function(v,x){return Math.max(v,r[x.v]+a.edge(x))},0)}function f(p){var v=a.outEdges(p).reduce(function(w,T){return Math.min(w,r[T.w]-a.edge(T))},Number.POSITIVE_INFINITY),x=t.node(p);v!==Number.POSITIVE_INFINITY&&x.borderType!==s&&(r[p]=Math.max(r[p],v))}return c(d,a.predecessors.bind(a)),c(f,a.successors.bind(a)),re.forEach(i,function(p){r[p]=r[e[p]]}),r}function j7(t,n,e,i){var o=new V7,r=t.graph(),a=W7(r.nodesep,r.edgesep,i);return re.forEach(n,function(s){var c;re.forEach(s,function(d){var f=e[d];if(o.setNode(f),c){var p=e[c],v=o.edge(p,f);o.setEdge(p,f,Math.max(a(t,d,c),v||0))}c=d})}),o}function NP(t,n){return re.minBy(re.values(n),function(e){var i=Number.NEGATIVE_INFINITY,o=Number.POSITIVE_INFINITY;return re.forIn(e,function(r,a){var s=$7(t,a)/2;i=Math.max(r+s,i),o=Math.min(r-s,o)}),i-o})}function RP(t,n){var e=re.values(n),i=re.min(e),o=re.max(e);re.forEach(["u","d"],function(r){re.forEach(["l","r"],function(a){var s=r+a,c=t[s],d;if(c!==n){var f=re.values(c);d=a==="l"?i-re.min(f):o-re.max(f),d&&(t[s]=re.mapValues(c,function(p){return p+d}))}})})}function AP(t,n){return re.mapValues(t.ul,function(e,i){if(n)return t[n.toLowerCase()][i];var o=re.sortBy(re.map(t,i));return(o[1]+o[2])/2})}function U7(t){var n=G7.buildLayerMatrix(t),e=re.merge(PP(t,n),MP(t,n)),i={},o;re.forEach(["u","d"],function(a){o=a==="u"?n:re.values(n).reverse(),re.forEach(["l","r"],function(s){s==="r"&&(o=re.map(o,function(p){return re.values(p).reverse()}));var c=(a==="u"?t.predecessors:t.successors).bind(t),d=kP(t,o,e,c),f=OP(t,o,d.root,d.align,s==="r");s==="r"&&(f=re.mapValues(f,function(p){return-p})),i[a+s]=f})});var r=NP(t,i);return RP(i,r),AP(i,t.graph().align)}function W7(t,n,e){return function(i,o,r){var a=i.node(o),s=i.node(r),c=0,d;if(c+=a.width/2,re.has(a,"labelpos"))switch(a.labelpos.toLowerCase()){case"l":d=-a.width/2;break;case"r":d=a.width/2;break}if(d&&(c+=e?d:-d),d=0,c+=(a.dummy?n:t)/2,c+=(s.dummy?n:t)/2,c+=s.width/2,re.has(s,"labelpos"))switch(s.labelpos.toLowerCase()){case"l":d=s.width/2;break;case"r":d=-s.width/2;break}return d&&(c+=e?d:-d),d=0,c}}function $7(t,n){return t.node(n).width}});var qP=_((wse,zP)=>{"use strict";var Ur=Re(),BP=ct(),K7=LP().positionX;zP.exports=Y7;function Y7(t){t=BP.asNonCompoundGraph(t),X7(t),Ur.forEach(K7(t),function(n,e){t.node(e).x=n})}function X7(t){var n=BP.buildLayerMatrix(t),e=t.graph().ranksep,i=0;Ur.forEach(n,function(o){var r=Ur.max(Ur.map(o,function(a){return t.node(a).height}));Ur.forEach(o,function(a){t.node(a).y=i+r/2}),i+=r+e})}});var WP=_((Sse,UP)=>{"use strict";var ce=Re(),VP=SE(),GP=kE(),Z7=UE(),Q7=ct().normalizeRanks,J7=$E(),e9=ct().removeEmptyRanks,HP=XE(),t9=JE(),jP=iP(),n9=EP(),i9=qP(),Fn=ct(),o9=Dt().Graph;UP.exports=r9;function r9(t,n){var e=n&&n.debugTiming?Fn.time:Fn.notime;e("layout",function(){var i=e(" buildLayoutGraph",function(){return g9(t)});e(" runLayout",function(){a9(i,e)}),e(" updateInputGraph",function(){s9(t,i)})})}function a9(t,n){n(" makeSpaceForEdgeLabels",function(){_9(t)}),n(" removeSelfEdges",function(){T9(t)}),n(" acyclic",function(){VP.run(t)}),n(" nestingGraph.run",function(){HP.run(t)}),n(" rank",function(){Z7(Fn.asNonCompoundGraph(t))}),n(" injectEdgeLabelProxies",function(){y9(t)}),n(" removeEmptyRanks",function(){e9(t)}),n(" nestingGraph.cleanup",function(){HP.cleanup(t)}),n(" normalizeRanks",function(){Q7(t)}),n(" assignRankMinMax",function(){v9(t)}),n(" removeEdgeLabelProxies",function(){C9(t)}),n(" normalize.run",function(){GP.run(t)}),n(" parentDummyChains",function(){J7(t)}),n(" addBorderSegments",function(){t9(t)}),n(" order",function(){n9(t)}),n(" insertSelfEdges",function(){E9(t)}),n(" adjustCoordinateSystem",function(){jP.adjust(t)}),n(" position",function(){i9(t)}),n(" positionSelfEdges",function(){P9(t)}),n(" removeBorderNodes",function(){I9(t)}),n(" normalize.undo",function(){GP.undo(t)}),n(" fixupEdgeLabelCoords",function(){w9(t)}),n(" undoCoordinateSystem",function(){jP.undo(t)}),n(" translateGraph",function(){x9(t)}),n(" assignNodeIntersects",function(){b9(t)}),n(" reversePoints",function(){S9(t)}),n(" acyclic.undo",function(){VP.undo(t)})}function s9(t,n){ce.forEach(t.nodes(),function(e){var i=t.node(e),o=n.node(e);i&&(i.x=o.x,i.y=o.y,n.children(e).length&&(i.width=o.width,i.height=o.height))}),ce.forEach(t.edges(),function(e){var i=t.edge(e),o=n.edge(e);i.points=o.points,ce.has(o,"x")&&(i.x=o.x,i.y=o.y)}),t.graph().width=n.graph().width,t.graph().height=n.graph().height}var c9=["nodesep","edgesep","ranksep","marginx","marginy"],d9={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},l9=["acyclicer","ranker","rankdir","align"],u9=["width","height"],f9={width:0,height:0},p9=["minlen","weight","width","height","labeloffset"],h9={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},m9=["labelpos"];function g9(t){var n=new o9({multigraph:!0,compound:!0}),e=c_(t.graph());return n.setGraph(ce.merge({},d9,s_(e,c9),ce.pick(e,l9))),ce.forEach(t.nodes(),function(i){var o=c_(t.node(i));n.setNode(i,ce.defaults(s_(o,u9),f9)),n.setParent(i,t.parent(i))}),ce.forEach(t.edges(),function(i){var o=c_(t.edge(i));n.setEdge(i,ce.merge({},h9,s_(o,p9),ce.pick(o,m9)))}),n}function _9(t){var n=t.graph();n.ranksep/=2,ce.forEach(t.edges(),function(e){var i=t.edge(e);i.minlen*=2,i.labelpos.toLowerCase()!=="c"&&(n.rankdir==="TB"||n.rankdir==="BT"?i.width+=i.labeloffset:i.height+=i.labeloffset)})}function y9(t){ce.forEach(t.edges(),function(n){var e=t.edge(n);if(e.width&&e.height){var i=t.node(n.v),o=t.node(n.w),r={rank:(o.rank-i.rank)/2+i.rank,e:n};Fn.addDummyNode(t,"edge-proxy",r,"_ep")}})}function v9(t){var n=0;ce.forEach(t.nodes(),function(e){var i=t.node(e);i.borderTop&&(i.minRank=t.node(i.borderTop).rank,i.maxRank=t.node(i.borderBottom).rank,n=ce.max(n,i.maxRank))}),t.graph().maxRank=n}function C9(t){ce.forEach(t.nodes(),function(n){var e=t.node(n);e.dummy==="edge-proxy"&&(t.edge(e.e).labelRank=e.rank,t.removeNode(n))})}function x9(t){var n=Number.POSITIVE_INFINITY,e=0,i=Number.POSITIVE_INFINITY,o=0,r=t.graph(),a=r.marginx||0,s=r.marginy||0;function c(d){var f=d.x,p=d.y,v=d.width,x=d.height;n=Math.min(n,f-v/2),e=Math.max(e,f+v/2),i=Math.min(i,p-x/2),o=Math.max(o,p+x/2)}ce.forEach(t.nodes(),function(d){c(t.node(d))}),ce.forEach(t.edges(),function(d){var f=t.edge(d);ce.has(f,"x")&&c(f)}),n-=a,i-=s,ce.forEach(t.nodes(),function(d){var f=t.node(d);f.x-=n,f.y-=i}),ce.forEach(t.edges(),function(d){var f=t.edge(d);ce.forEach(f.points,function(p){p.x-=n,p.y-=i}),ce.has(f,"x")&&(f.x-=n),ce.has(f,"y")&&(f.y-=i)}),r.width=e-n+a,r.height=o-i+s}function b9(t){ce.forEach(t.edges(),function(n){var e=t.edge(n),i=t.node(n.v),o=t.node(n.w),r,a;e.points?(r=e.points[0],a=e.points[e.points.length-1]):(e.points=[],r=o,a=i),e.points.unshift(Fn.intersectRect(i,r)),e.points.push(Fn.intersectRect(o,a))})}function w9(t){ce.forEach(t.edges(),function(n){var e=t.edge(n);if(ce.has(e,"x"))switch((e.labelpos==="l"||e.labelpos==="r")&&(e.width-=e.labeloffset),e.labelpos){case"l":e.x-=e.width/2+e.labeloffset;break;case"r":e.x+=e.width/2+e.labeloffset;break}})}function S9(t){ce.forEach(t.edges(),function(n){var e=t.edge(n);e.reversed&&e.points.reverse()})}function I9(t){ce.forEach(t.nodes(),function(n){if(t.children(n).length){var e=t.node(n),i=t.node(e.borderTop),o=t.node(e.borderBottom),r=t.node(ce.last(e.borderLeft)),a=t.node(ce.last(e.borderRight));e.width=Math.abs(a.x-r.x),e.height=Math.abs(o.y-i.y),e.x=r.x+e.width/2,e.y=i.y+e.height/2}}),ce.forEach(t.nodes(),function(n){t.node(n).dummy==="border"&&t.removeNode(n)})}function T9(t){ce.forEach(t.edges(),function(n){if(n.v===n.w){var e=t.node(n.v);e.selfEdges||(e.selfEdges=[]),e.selfEdges.push({e:n,label:t.edge(n)}),t.removeEdge(n)}})}function E9(t){var n=Fn.buildLayerMatrix(t);ce.forEach(n,function(e){var i=0;ce.forEach(e,function(o,r){var a=t.node(o);a.order=r+i,ce.forEach(a.selfEdges,function(s){Fn.addDummyNode(t,"selfedge",{width:s.label.width,height:s.label.height,rank:a.rank,order:r+ ++i,e:s.e,label:s.label},"_se")}),delete a.selfEdges})})}function P9(t){ce.forEach(t.nodes(),function(n){var e=t.node(n);if(e.dummy==="selfedge"){var i=t.node(e.e.v),o=i.x+i.width/2,r=i.y,a=e.x-o,s=i.height/2;t.setEdge(e.e,e.label),t.removeNode(n),e.label.points=[{x:o+2*a/3,y:r-s},{x:o+5*a/6,y:r-s},{x:o+a,y:r},{x:o+5*a/6,y:r+s},{x:o+2*a/3,y:r+s}],e.label.x=e.x,e.label.y=e.y}})}function s_(t,n){return ce.mapValues(ce.pick(t,n),Number)}function c_(t){var n={};return ce.forEach(t,function(e,i){n[i.toLowerCase()]=e}),n}});var KP=_((Ise,$P)=>{"use strict";var fp=Re(),M9=ct(),D9=Dt().Graph;$P.exports={debugOrdering:k9};function k9(t){var n=M9.buildLayerMatrix(t),e=new D9({compound:!0,multigraph:!0}).setGraph({});return fp.forEach(t.nodes(),function(i){e.setNode(i,{label:i}),e.setParent(i,"layer"+t.node(i).rank)}),fp.forEach(t.edges(),function(i){e.setEdge(i.v,i.w,{},i.name)}),fp.forEach(n,function(i,o){var r="layer"+o;e.setNode(r,{rank:"same"}),fp.reduce(i,function(a,s){return e.setEdge(a,s,{style:"invis"}),s})}),e}});var XP=_((Tse,YP)=>{"use strict";YP.exports="0.8.5"});var QP=_((Ese,ZP)=>{"use strict";ZP.exports={graphlib:Dt(),layout:WP(),debug:KP(),util:{time:ct().time,notime:ct().notime},version:XP()}});var C0=`
2
+ .p-popover {
3
+ margin-block-start: dt('popover.gutter');
4
+ background: dt('popover.background');
5
+ color: dt('popover.color');
6
+ border: 1px solid dt('popover.border.color');
7
+ border-radius: dt('popover.border.radius');
8
+ box-shadow: dt('popover.shadow');
9
+ will-change: transform;
10
+ }
11
+
12
+ .p-popover-content {
13
+ padding: dt('popover.content.padding');
14
+ }
15
+
16
+ .p-popover-flipped {
17
+ margin-block-start: calc(dt('popover.gutter') * -1);
18
+ margin-block-end: dt('popover.gutter');
19
+ }
20
+
21
+ .p-popover:after,
22
+ .p-popover:before {
23
+ bottom: 100%;
24
+ left: calc(dt('popover.arrow.offset') + dt('popover.arrow.left'));
25
+ content: ' ';
26
+ height: 0;
27
+ width: 0;
28
+ position: absolute;
29
+ pointer-events: none;
30
+ }
31
+
32
+ .p-popover:after {
33
+ border-width: calc(dt('popover.gutter') - 2px);
34
+ margin-left: calc(-1 * (dt('popover.gutter') - 2px));
35
+ border-style: solid;
36
+ border-color: transparent;
37
+ border-bottom-color: dt('popover.background');
38
+ }
39
+
40
+ .p-popover:before {
41
+ border-width: dt('popover.gutter');
42
+ margin-left: calc(-1 * dt('popover.gutter'));
43
+ border-style: solid;
44
+ border-color: transparent;
45
+ border-bottom-color: dt('popover.border.color');
46
+ }
47
+
48
+ .p-popover-flipped:after,
49
+ .p-popover-flipped:before {
50
+ bottom: auto;
51
+ top: 100%;
52
+ }
53
+
54
+ .p-popover.p-popover-flipped:after {
55
+ border-bottom-color: transparent;
56
+ border-top-color: dt('popover.background');
57
+ }
58
+
59
+ .p-popover.p-popover-flipped:before {
60
+ border-bottom-color: transparent;
61
+ border-top-color: dt('popover.border.color');
62
+ }
63
+ `;var tk=["content"],nk=["*"],ik=t=>({closeCallback:t});function ok(t,n){}function rk(t,n){t&1&&Ie(0,ok,0,0,"ng-template")}function ak(t,n){if(t&1){let e=de();h(0,"div",1),W("click",function(o){G(e);let r=g();return H(r.onOverlayClick(o))})("pMotionOnEnter",function(o){G(e);let r=g();return H(r.onAnimationStart(o))})("pMotionOnAfterLeave",function(){G(e);let o=g();return H(o.onAnimationEnd())}),h(1,"div",2),W("click",function(o){G(e);let r=g();return H(r.onContentClick(o))})("mousedown",function(o){G(e);let r=g();return H(r.onContentClick(o))}),Ae(2),Ie(3,rk,1,0,null,3),m()()}if(t&2){let e=g();aa(e.sx("root")),Fe(e.cn(e.cx("root"),e.styleClass)),D("pBind",e.ptm("root"))("ngStyle",e.style)("pMotion",e.overlayVisible)("pMotionAppear",!0)("pMotionOptions",e.computedMotionOptions()),$("aria-modal",e.overlayVisible)("aria-label",e.ariaLabel)("aria-labelledBy",e.ariaLabelledBy),l(),Fe(e.cx("content")),D("pBind",e.ptm("content")),l(2),D("ngTemplateOutlet",e.contentTemplate||e._contentTemplate)("ngTemplateOutletContext",Qt(17,ik,e.onCloseClick.bind(e)))}}var sk={root:()=>({position:"absolute"})},ck={root:"p-popover p-component",content:"p-popover-content"},x0=(()=>{class t extends ua{name="popover";style=C0;classes=ck;inlineStyles=sk;static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275prov=C({token:t,factory:t.\u0275fac})}return t})(),b0=new he("POPOVER_INSTANCE"),oh=(()=>{class t extends pa{componentName="Popover";$pcPopover=u(b0,{optional:!0,skipSelf:!0})??void 0;bindDirectiveInstance=u(Bt,{self:!0});onAfterViewChecked(){this.bindDirectiveInstance.setAttrs(this.ptm("host"))}ariaLabel;ariaLabelledBy;dismissable=!0;style;styleClass;appendTo=F("body");autoZIndex=!0;ariaCloseLabel;baseZIndex=0;focusOnShow=!0;showTransitionOptions=".12s cubic-bezier(0, 0, 0.2, 1)";hideTransitionOptions=".1s linear";motionOptions=F(void 0);computedMotionOptions=k(()=>ae(ae({},this.ptm("motion")),this.motionOptions()));onShow=new mt;onHide=new mt;$appendTo=k(()=>this.appendTo()||this.config.overlayAppendTo());container;overlayVisible=!1;render=!1;selfClick=!1;documentClickListener;target;willHide;scrollHandler;documentResizeListener;contentTemplate;templates;_contentTemplate;destroyCallback;overlayEventListener;overlaySubscription;_componentStyle=u(x0);zone=u(Vn);overlayService=u(i0);onAfterContentInit(){this.templates.forEach(e=>{e.getType()==="content"&&(this._contentTemplate=e.template)})}bindDocumentClickListener(){if(ln(this.platformId)&&!this.documentClickListener){let e=e0()?"touchstart":"click",i=this.el?this.el.nativeElement.ownerDocument:this.document;this.documentClickListener=this.renderer.listen(i,e,o=>{this.dismissable&&(!this.container?.contains(o.target)&&this.target!==o.target&&!this.target.contains(o.target)&&!this.selfClick&&this.hide(),this.selfClick=!1,this.cd.markForCheck())})}}unbindDocumentClickListener(){this.documentClickListener&&(this.documentClickListener(),this.documentClickListener=null,this.selfClick=!1)}toggle(e,i){this.overlayVisible?(this.hasTargetChanged(e,i)&&(this.destroyCallback=()=>{this.show(null,i||e.currentTarget||e.target)}),this.hide()):this.show(e,i)}show(e,i){i&&e&&e.stopPropagation(),this.container&&!this.overlayVisible&&(this.container=null),this.target=i||e.currentTarget||e.target,this.overlayVisible=!0,this.render=!0,this.cd.markForCheck()}onOverlayClick(e){this.overlayService.add({originalEvent:e,target:this.el.nativeElement}),this.selfClick=!0}onContentClick(e){let i=e.target;this.selfClick=e.offsetX<i.clientWidth&&e.offsetY<i.clientHeight}hasTargetChanged(e,i){return this.target!=null&&this.target!==(i||e.currentTarget||e.target)}appendOverlay(){this.$appendTo()&&this.$appendTo()!=="self"&&(this.$appendTo()==="body"?la(this.document.body,this.container):la(this.$appendTo(),this.container))}restoreAppend(){this.container&&this.$appendTo()&&this.$appendTo()!=="self"&&la(this.el.nativeElement,this.container)}setZIndex(){this.autoZIndex&&ma.set("overlay",this.container,this.baseZIndex+this.config.zIndex.overlay)}align(){if(this.target&&this.container){Q_(this.container,this.target,!1);let e=th(this.container),i=th(this.target),o=this.document.defaultView?.getComputedStyle(this.container).getPropertyValue("border-radius"),r=0;e.left<i.left&&(r=i.left-e.left-parseFloat(o)*2),this.container.style.setProperty(a0("popover.arrow.left").name,`${r}px`),e.top<i.top&&(this.container.setAttribute("data-p-popover-flipped","true"),!this.$unstyled()&&Z_(this.container,"p-popover-flipped"))}}onAnimationStart(e){this.container=e.element,this.container?.setAttribute(this.$attrSelector,""),this.appendOverlay(),this.align(),this.setZIndex(),this.bindDocumentClickListener(),this.bindDocumentResizeListener(),this.bindScrollListener(),this.focusOnShow&&this.focus(),this.overlayEventListener=i=>{this.container&&this.container.contains(i.target)&&(this.selfClick=!0)},this.overlaySubscription=this.overlayService.clickObservable.subscribe(this.overlayEventListener),this.onShow.emit(null)}onAnimationEnd(){this.overlayVisible||(this.destroyCallback&&(this.destroyCallback(),this.destroyCallback=null),this.overlaySubscription&&this.overlaySubscription.unsubscribe(),this.autoZIndex&&ma.clear(this.container),this.onContainerDestroy(),this.onHide.emit({}),this.render=!1,this.container=null)}focus(){let e=J_(this.container,"[autofocus]");e&&this.zone.runOutsideAngular(()=>{setTimeout(()=>e.focus(),5)})}hide(){this.overlayVisible=!1,this.cd.markForCheck()}onCloseClick(e){this.hide(),e.preventDefault()}onEscapeKeydown(e){this.hide()}onWindowResize(){this.overlayVisible&&!t0()&&this.hide()}bindDocumentResizeListener(){if(ln(this.platformId)&&!this.documentResizeListener){let e=this.document.defaultView;this.documentResizeListener=this.renderer.listen(e,"resize",this.onWindowResize.bind(this))}}unbindDocumentResizeListener(){this.documentResizeListener&&(this.documentResizeListener(),this.documentResizeListener=null)}bindScrollListener(){ln(this.platformId)&&(this.scrollHandler||(this.scrollHandler=new s0(this.target,()=>{this.overlayVisible&&this.hide()})),this.scrollHandler.bindScrollListener())}unbindScrollListener(){this.scrollHandler&&this.scrollHandler.unbindScrollListener()}onContainerDestroy(){this.cd.destroyed||(this.target=null),this.unbindDocumentClickListener(),this.unbindDocumentResizeListener(),this.unbindScrollListener()}onDestroy(){this.scrollHandler&&(this.scrollHandler.destroy(),this.scrollHandler=null),this.container&&this.autoZIndex&&ma.clear(this.container),this.cd.destroyed||(this.target=null),this.destroyCallback=null,this.container&&(this.restoreAppend(),this.onContainerDestroy()),this.overlaySubscription&&this.overlaySubscription.unsubscribe()}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275cmp=Z({type:t,selectors:[["p-popover"]],contentQueries:function(i,o,r){if(i&1&&ra(r,tk,4)(r,un,4),i&2){let a;St(a=It())&&(o.contentTemplate=a.first),St(a=It())&&(o.templates=a)}},hostBindings:function(i,o){i&1&&W("keydown.escape",function(a){return o.onEscapeKeydown(a)},ea)},inputs:{ariaLabel:"ariaLabel",ariaLabelledBy:"ariaLabelledBy",dismissable:[2,"dismissable","dismissable",Ce],style:"style",styleClass:"styleClass",appendTo:[1,"appendTo"],autoZIndex:[2,"autoZIndex","autoZIndex",Ce],ariaCloseLabel:"ariaCloseLabel",baseZIndex:[2,"baseZIndex","baseZIndex",et],focusOnShow:[2,"focusOnShow","focusOnShow",Ce],showTransitionOptions:"showTransitionOptions",hideTransitionOptions:"hideTransitionOptions",motionOptions:[1,"motionOptions"]},outputs:{onShow:"onShow",onHide:"onHide"},features:[be([x0,{provide:b0,useExisting:t},{provide:fa,useExisting:t}]),na([Bt]),ve],ngContentSelectors:nk,decls:1,vars:1,consts:[["role","dialog","pMotionName","p-anchored-overlay",3,"pBind","class","style","ngStyle","pMotion","pMotionAppear","pMotionOptions"],["role","dialog","pMotionName","p-anchored-overlay",3,"click","pMotionOnEnter","pMotionOnAfterLeave","pBind","ngStyle","pMotion","pMotionAppear","pMotionOptions"],[3,"click","mousedown","pBind"],[4,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(i,o){i&1&&(Xt(),P(0,ak,4,19,"div",0)),i&2&&M(o.render?0:-1)},dependencies:[Ti,ca,K_,fn,Bt,d0,c0],encapsulation:2,changeDetection:0})}return t})(),w0=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=Si({type:t});static \u0275inj=xi({imports:[oh,fn,fn]})}return t})();var $n=class{constructor(n,e,i,o,r){this.center=n,this.radiusX=e,this.radiusY=i,this.startAngle=o,this.endAngle=r}},L=class t{static castToPoint(n){return n||t.initialize()}static initialize(n=0,e=0){return{x:n,y:e}}static copy(n){return t.initialize(n.x,n.y)}static isEqual(n,e){return n.x===e.x&&n.y===e.y}static sum(n,e){return{x:n.x+e.x,y:n.y+e.y}}static sub(n,e){return{x:n.x-e.x,y:n.y-e.y}}static div(n,e){return{x:n.x/e,y:n.y/e}}static mult(n,e){return{x:n.x*e,y:n.y*e}}static interpolatePoints(n,e,i){let o=1-i;return t.initialize(n.x*o+e.x*i,n.y*o+e.y*i)}static roundTo(n,e){let i=Math.trunc(n.x/e),o=Math.trunc(n.y/e);return{x:i*e,y:o*e}}static hypotenuse(n,e){let i=e.x-n.x,o=e.y-n.y;return Math.abs(Math.sqrt(i*i+o*o))}static distance(n,e){let i=n.x-e.x,o=n.y-e.y;return Math.sqrt(i*i+o*o)}static getMinimum(n,e){return t.initialize(Math.min(n.x,e.x),Math.min(n.y,e.y))}static getMaximum(n,e){return t.initialize(Math.max(n.x,e.x),Math.max(n.y,e.y))}static matrixTransform(n,e){let i=t.initialize(n.x,n.y),o=e.getScreenCTM();if(o){let r=e.createSVGPoint();r.x=n.x,r.y=n.y,i=r.matrixTransform(o.inverse())}return i}static elementTransform(n,e){let i=t.initialize(n.x,n.y),o=e.getBoundingClientRect();return i=t.sub(i,t.initialize(o.left,o.top)),i}},Q=class t{constructor(n=0,e=0){this.x=n,this.y=e}static fromPoint(n){return new t(n.x,n.y)}add(n){let e=L.sum(this,n);return t.fromPoint(e)}sub(n){let e=L.sub(this,n);return t.fromPoint(e)}subNumber(n){let e=L.sub(this,new t(n,n));return t.fromPoint(e)}div(n){let e=L.div(this,n);return t.fromPoint(e)}mult(n){let e=L.mult(this,n);return t.fromPoint(e)}matrixTransform(n){let e=L.matrixTransform(this,n);return t.fromPoint(e)}elementTransform(n){let e=L.elementTransform(this,n);return t.fromPoint(e)}},Mo=class{static initialize(n=L.initialize(),e=L.initialize()){return{point1:n,point2:e}}static copy(n){return{point1:n.point1,point2:n.point2}}static hypotenuse(n){return Math.sqrt(Math.pow(n.point1.x-n.point2.x,2)+Math.pow(n.point1.y-n.point2.y,2))}},Kn=class{constructor(n,e){this.point1=n,this.point2=e}},j=class t{static initialize(n=0,e=0,i=0,o=0){i<0&&(n=n+i,i=-i),o<0&&(e=e+o,o=-o);let r=L.initialize(n+i/2,e+o/2);return{x:n,y:e,width:i,height:o,gravityCenter:r}}static copy(n){return t.initialize(n.x,n.y,n.width,n.height)}static fromElement(n){let{x:e,y:i,width:o,height:r}=n.getBoundingClientRect();return t.initialize(e,i,o,r)}static isIncludePoint(n,e){return e.x>=t.left(n)&&e.x<=t.right(n)&&e.y>=t.top(n)&&e.y<=t.bottom(n)}static intersectionWithRect(n,e){return!(n.x+n.width<e.x||e.x+e.width<n.x||n.y+n.height<e.y||e.y+e.height<n.y)}static left(n){return n.x}static top(n){return n.y}static right(n){return n.x+n.width}static bottom(n){return n.y+n.height}static addPoint(n,e){let i=t.copy(n);return i.x+=e.x,i.y+=e.y,this.initialize(i.x,i.y,i.width,i.height)}static mult(n,e){let i=t.copy(n);return i.x*=e,i.y*=e,i.width*=e,i.height*=e,this.initialize(i.x,i.y,i.width,i.height)}static div(n,e){let i=t.copy(n);return i.x/=e,i.y/=e,i.width/=e,i.height/=e,this.initialize(i.x,i.y,i.width,i.height)}static addPointToSize(n,e){let i=t.copy(n);return i.width+=e.x,i.height+=e.y,this.initialize(i.x,i.y,i.width,i.height)}static union(n){return!n||n.length===0?null:n.reduce((e,i)=>{let o=Math.min(e.x,i.x),r=Math.min(e.y,i.y),a=Math.max(e.x+e.width,i.x+i.width),s=Math.max(e.y+e.height,i.y+i.height);return t.initialize(o,r,a-o,s-r)},n[0])}static elementTransform(n,e){let i=e.getBoundingClientRect(),o=L.sub(n,L.initialize(i.left,i.top));return t.initialize(o.x,o.y,n.width,n.height)}static updateIsNotFinite(n){return!Number.isFinite(n.width)||!Number.isFinite(n.height)||!Number.isFinite(n.x)||!Number.isFinite(n.y)?t.initialize(0,0,0,0):n}};function S0(t,n){let e=Math.max(t.width,n),i=Math.max(t.height,n),o=(e-t.width)/2,r=(i-t.height)/2;return j.initialize(t.x-o,t.y-r,e,i)}function ah(t,n){t=j.updateIsNotFinite(t),n.setAttribute("x",t.x.toString()),n.setAttribute("y",t.y.toString()),n.setAttribute("width",t.width.toString()),n.setAttribute("height",t.height.toString())}function I0(t,n){t=j.updateIsNotFinite(t),n.setAttribute("viewBox",`${t.x} ${t.y} ${t.width} ${t.height}`)}var Ge=class t{constructor(n=0,e=0,i=0,o=0,r=0,a=0,s=0,c=0){this.x=n,this.y=e,this.width=i,this.height=o,this.radius1=r,this.radius2=a,this.radius3=s,this.radius4=c,this.gravityCenter=L.initialize(),this.gravityCenter=this.calculateGravityCenter(this)}calculateGravityCenter(n){return new Q(n.x+n.width/2,n.y+n.height/2)}static fromRect(n){return new t(n.x,n.y,n.width,n.height)}static fromRoundedRect(n){return new t(n.x,n.y,n.width,n.height,n.radius1,n.radius2,n.radius3,n.radius4)}static fromCenter(n,e,i){return new t(n.gravityCenter.x-e/2,n.gravityCenter.y-i/2,e,i,n.radius1,n.radius2,n.radius3,n.radius4)}static fromPoint(n){return new t(n.x,n.y)}addPoint(n){let e=t.fromRoundedRect(this);return e.x+=n.x,e.y+=n.y,e.gravityCenter=this.calculateGravityCenter(e),e}},at=class t{static initialize(n=0,e=0){return{width:n,height:e}}static isEqual(n,e){return n.width===e.width&&n.height===e.height}static offsetFromElement(n){if(n instanceof SVGGraphicsElement){let e=n.getBBox();return t.initialize(e.width,e.height)}else if(n instanceof HTMLElement)return t.initialize(n.offsetWidth,n.offsetHeight)}};function lk(){return{position:L.initialize(),scaledPosition:L.initialize(),scale:1,rotate:0}}function uk(t){let n;if(t){t=t.replace("matrix(",""),t=t.replace(")","");let e=t.split(" ");n={position:{x:Number(e[4]),y:Number(e[5])},scaledPosition:L.initialize(),scale:Number(e[0]),rotate:0}}return n}var gn=class{static toString(n){let e=L.sum(n.position,n.scaledPosition);return`matrix(${n.scale}, 0, 0, ${n.scale}, ${e.x}, ${e.y})`}static fromString(n){return uk(n)}static default(){return lk()}},ft=class t{static initialize(n=0,e=0){return L.initialize(n,e)}static fromPoints(n,e){return t.initialize(e.x-n.x,e.y-n.y)}static vectorLength(n){return Math.sqrt(t.magnitudeSquared(n))}static magnitudeSquared(n){return n.x*n.x+n.y*n.y}static dotProduct(n,e){return n.x*e.x+n.y*e.y}static crossProduct(n,e){return n.x*e.y-n.y*e.x}static subtract(n,e){return t.initialize(n.x-e.x,n.y-e.y)}static add(n,e){return t.initialize(n.x+e.x,n.y+e.y)}static scale(n,e){return t.initialize(n.x*e,n.y*e)}static angle(n,e){let i=Math.acos(Math.max(-1,Math.min(t.dotProduct(n,e)/(t.vectorLength(n)*t.vectorLength(e)),1)));return t.crossProduct(n,e)<0?-i:i}},rh=class{static parseRoundedRect(n){let e=Math.PI*.5,i=n.x,o=n.y,r=n.x+n.width,a=n.y+n.height,s=n.x+n.radius1,c=n.y+n.radius1,d=n.x+n.width-n.radius2,f=n.y+n.radius2,p=n.x+n.width-n.radius3,v=n.y+n.height-n.radius3,x=n.x+n.radius4,w=n.y+n.height-n.radius4;return[new $n({x:s,y:c},n.radius1,n.radius1,2*e,3*e),new Kn({x:s,y:o},{x:d,y:o}),new $n({x:d,y:f},n.radius2,n.radius2,3*e,4*e),new Kn({x:r,y:f},{x:r,y:v}),new $n({x:p,y:v},n.radius3,n.radius3,0,e),new Kn({x:p,y:a},{x,y:a}),new $n({x,y:w},n.radius4,n.radius4,e,2*e),new Kn({x:i,y:w},{x:i,y:c})]}},zi=class{static getRoundedRectIntersections(n,e,i){let o=rh.parseRoundedRect(i);for(let r of o)if(r instanceof $n){let a=this.intersectArcWithLine(r,n,e);if(a.length>0)return a}else if(r instanceof Kn){let a=this.intersectLineSegments(n,e,r.point1,r.point2);if(a)return[a]}return[]}static getRoundedRectIntersectionsWithSVGPath(n,e){let i=n.getTotalLength(),o=[];for(let r=0;r<=i;r+=1){let a=n.getPointAtLength(r);o.push({x:a.x,y:a.y})}for(let r=1;r<o.length;r++){let a=this.getRoundedRectIntersections(o[r-1],o[r],e);if(a.length>0)return a}return[]}static intersectArcWithLine(n,e,i){return this.filterPointsWithinArc(this.findEllipseLineIntersections(n.center,n.radiusX,n.radiusY,e,i),n)}static intersectLineSegments(n,e,i,o){let r=e.x-n.x,a=e.y-n.y,s=o.x-i.x,c=o.y-i.y,d=(-a*(n.x-i.x)+r*(n.y-i.y))/(-s*a+r*c),f=(s*(n.y-i.y)-c*(n.x-i.x))/(-s*a+r*c);return d>=0&&d<=1&&f>=0&&f<=1?{x:n.x+f*r,y:n.y+f*a}:null}static filterPointsWithinArc(n,e){let{center:i,startAngle:o,endAngle:r}=e;if(n.length===0)return n;r<o&&([o,r]=[r,o]),(o<0||r<0)&&(o+=2*Math.PI,r+=2*Math.PI);let a=[];for(let s of n){let c=this.normalizeAngle(ft.angle(ft.initialize(1,0),ft.initialize(s.x-i.x,s.y-i.y)));c<o&&(c+=2*Math.PI),o<=c&&c<=r&&a.push(s)}return a}static normalizeAngle(n){let e=n%(2*Math.PI);return e<0?e+2*Math.PI:e}static findEllipseLineIntersections(n,e,i,o,r){let a=ft.initialize(o.x,o.y),s=ft.fromPoints(o,r),c=ft.initialize(n.x,n.y),d=ft.subtract(a,c),f=ft.initialize(s.x/(e*e),s.y/(i*i)),p=ft.initialize(d.x/(e*e),d.y/(i*i)),v=ft.dotProduct(s,f),x=ft.dotProduct(s,p),w=ft.dotProduct(d,p)-1,T=x*x-v*w;return T<0?[]:this.calculateIntersectionPoints(T,v,x,o,r)}static calculateIntersectionPoints(n,e,i,o,r){let a=[];if(n>0){let s=Math.sqrt(n),c=(-i-s)/e,d=(-i+s)/e;c>=0&&c<=1&&a.push(L.interpolatePoints(o,r,c)),d>=0&&d<=1&&a.push(L.interpolatePoints(o,r,d))}else{let s=-i/e;s>=0&&s<=1&&a.push(L.interpolatePoints(o,r,s))}return a}};var sh=class{handle(n,e){let i=!0;if(this.validator&&(i=e.get(this.validator).handle(n)),!!i)return e.get(this.execution).handle(n)}execute(n,e){return e.get(this.execution).handle(n)}setValidator(n){this.validator=n}setExecution(n){this.execution=n}},R=class t{constructor(){this._injector=u(ut)}static registerPipeline(n,e,i){if(!n||!n.fToken)throw new Error("Type must have a fToken static property.");let o=this.pipelines.get(n.fToken)||new sh;i?o.setValidator(e):o.setExecution(e),this.pipelines.set(n.fToken,o)}send(n){let e=t.pipelines.get(n.constructor.fToken);if(e)return e.handle(n,this._injector);throw new Error("Handler not registered for request type.")}execute(n){return t.pipelines.get(n.constructor.fToken).execute(n,this._injector)}};R.pipelines=new Map;R.\u0275fac=function(n){return new(n||R)};R.\u0275prov=C({token:R,factory:R.\u0275fac});function I(t){return function(n){R.registerPipeline(t,n,!1)}}var fk=(()=>{class t{setItem(e,i){localStorage.setItem(e,i)}getItem(e){return localStorage.getItem(e)}removeItem(e){localStorage.removeItem(e)}clear(){localStorage.clear()}static \u0275fac=function(i){return new(i||t)};static \u0275prov=C({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),pk=(()=>{class t{storage={};setItem(e,i){this.storage[e]=i}getItem(e){return this.storage[e]||null}removeItem(e){delete this.storage[e]}clear(){this.storage={}}static \u0275fac=function(i){return new(i||t)};static \u0275prov=C({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),hk=new he("F_LOCAL_STORAGE",{providedIn:"root",factory:()=>ln(u(Jr))?u(fk):u(pk)}),mk=(()=>{class t{getComputedStyle(e){return window.getComputedStyle(e)}get innerWidth(){return window.innerWidth}get innerHeight(){return window.innerHeight}get pageXOffset(){return window.pageXOffset}get pageYOffset(){return window.pageYOffset}isMediaQuery(e){return window.matchMedia(e).matches}requestAnimationFrame(e){return window.requestAnimationFrame(e)}get location(){return window.location}open(e,i,o){window.open(e,i,o)}static \u0275fac=function(i){return new(i||t)};static \u0275prov=C({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),gk=(()=>{class t{getComputedStyle(e){return new Proxy({getPropertyValue:i=>"0"},{get:(i,o)=>o==="getPropertyValue"?i.getPropertyValue:"0"})}get innerWidth(){return 0}get innerHeight(){return 0}get pageXOffset(){return 0}get pageYOffset(){return 0}isMediaQuery(e){return!1}requestAnimationFrame(e){return setTimeout(e,0)}get location(){return{href:"",pathname:"",search:"",hash:"",origin:""}}open(e,i,o){}static \u0275fac=function(i){return new(i||t)};static \u0275prov=C({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),_k=new he("F_WINDOW",{providedIn:"root",factory:()=>ln(u(Jr))?u(mk):u(gk)}),_n=(function(t){return t.MAC_OS="macos",t.IOS="ios",t.WINDOWS="windows",t.ANDROID="android",t.LINUX="linux",t})(_n||{}),ch;try{ch=typeof Intl<"u"&&Intl.v8BreakIterator}catch{ch=!1}var dh=(()=>{class t{_platformId;isBrowser=!1;EDGE=this.isBrowser&&/(edge)/i.test(navigator.userAgent);TRIDENT=this.isBrowser&&/(msie|trident)/i.test(navigator.userAgent);BLINK=this.isBrowser&&!!(window.chrome||ch)&&typeof CSS<"u"&&!this.EDGE&&!this.TRIDENT;WEBKIT=this.isBrowser&&/AppleWebKit/i.test(navigator.userAgent)&&!this.BLINK&&!this.EDGE&&!this.TRIDENT;IOS=this.isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!("MSStream"in window);FIREFOX=this.isBrowser&&/(firefox|minefield)/i.test(navigator.userAgent);ANDROID=this.isBrowser&&/android/i.test(navigator.userAgent)&&!this.TRIDENT;SAFARI=this.isBrowser&&/safari/i.test(navigator.userAgent)&&this.WEBKIT;constructor(e){this._platformId=e,this.isBrowser=this._platformId?ln(this._platformId):typeof document=="object"&&!!document}getOS(){let e=navigator.userAgent.toLowerCase(),i=/(macintosh|macintel|macppc|mac68k|macos)/i,o=/(win32|win64|windows|wince)/i,r;return i.test(e)?r=_n.MAC_OS:this.IOS?r=_n.IOS:o.test(e)?r=_n.WINDOWS:this.ANDROID?r=_n.ANDROID:!r&&/linux/.test(e)&&(r=_n.LINUX),r}static \u0275fac=function(i){return new(i||t)(bi(Jr))};static \u0275prov=C({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),He=(()=>{class t{injectedDocument;windowService;localStorageService;platformService;constructor(e,i,o,r){this.injectedDocument=e,this.windowService=i,this.localStorageService=o,this.platformService=r}isBrowser(){return this.platformService.isBrowser}get window(){return this.windowService}get localStorage(){return this.localStorageService}get document(){return this.injectedDocument}toPixels(e,i,o,r){if(e.endsWith("px"))return parseFloat(e);if(e.endsWith("%")){let a=parseFloat(e)/100;return Math.max(i,o)*a}else{if(e.endsWith("em"))return parseFloat(e)*parseFloat(r);if(e.endsWith("rem"))return parseFloat(e)*parseFloat(getComputedStyle(this.document.documentElement).fontSize);if(e.endsWith("vh")){let a=this.window.innerHeight/100;return parseFloat(e)*a}else if(e.endsWith("vw")){let a=this.window.innerWidth/100;return parseFloat(e)*a}}return parseFloat(e)||0}static \u0275fac=function(i){return new(i||t)(bi(Qr),bi(_k),bi(hk),bi(dh))};static \u0275prov=C({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function lh(t,n){return t.reduce((e,i)=>[...e,...n(i)],[])}function uh(t){let n=t.cloneNode(!0),e=n.querySelectorAll("[id]"),i=t.nodeName.toLowerCase();n.removeAttribute("id");for(let o=0;o<e.length;o++)e[o].removeAttribute("id");return i==="canvas"?P0(t,n):(i==="input"||i==="select"||i==="textarea")&&E0(t,n),T0("canvas",t,n,P0),T0("input, textarea, select",t,n,E0),n}function T0(t,n,e,i){let o=n.querySelectorAll(t);if(o.length){let r=e.querySelectorAll(t);for(let a=0;a<o.length;a++)i(o[a],r[a])}}var yk=0;function E0(t,n){n.type!=="file"&&(n.value=t.value),n.type==="radio"&&n.name&&(n.name=`mat-clone-${n.name}-${yk++}`)}function P0(t,n){let e=n.getContext("2d");if(e)try{e.drawImage(t,0,0)}catch{}}function fh(t,n,e){for(let i in n)if(n.hasOwnProperty(i)){let o=n[i];o?t.setProperty(i,o,e?.has(i)?"important":""):t.removeProperty(i)}return t}function M0(t){fh(t.style,{"touch-action":"none","-webkit-user-drag":"none","-webkit-tap-highlight-color":"transparent","user-select":"none","-ms-user-select":"none","-webkit-user-select":"none","-moz-user-select":"none"})}function D0(t,n,e){return vk(t,e).dataset[n]}function vk(t,n){return t.closest(n)}function ph(t,n){let e=t.rootNodes;if(e.length===1&&e[0].nodeType===n.ELEMENT_NODE)return e[0];let i=n.createElement("div");return e.forEach(o=>i.appendChild(o)),i}function Do(t,n){let e=Ck(t,n);return!!e&&!e.classList.contains(n+"-disabled")}function Ck(t,n){return t.closest(n)}function Jt(t){return t.match(/^[a-zA-Z_]/)||(t="_"+t),t.replace(/[^a-zA-Z0-9_\-:.]/g,"_")}function qi(t,n,e){let i=e[t.toUpperCase()]||xk(e,t.toLowerCase());if(i===void 0)throw new Error(`Unknown ${n}: ${t}. Accepted values: ${Object.keys(e).join(", ")}`);return i}function xk(t,n){return Object.keys(t).find(e=>t[e]===n)}var bk=["markerElement"],wk=["fConnectionGradientRenderer",""],Sk=["f-connection-path",""],Ik=["fConnectionSelection",""],Tk=["f-connection-drag-handle-start",""],Ek=["f-connection-drag-handle-end",""],Pk=["defs"],Mk=["*"],Dk=["fGroupsContainer"],kk=["fNodesContainer"],Ok=["fConnectionsContainer"],Nk=[[["","fGroup",""],["","fGroups",""]],[["f-snap-connection"]],[["f-connection"],["","fConnections",""]],[["f-connection-for-create"]],[["","fNode",""],["","fNodes",""]]],Rk=["[fGroup], [fGroups]","f-snap-connection","f-connection, [fConnections]","f-connection-for-create","[fNode], [fNodes]"],Ak=[[["svg","fMarker",""]],[["f-connection-marker-circle"],["f-connection-marker-arrow"]],[["f-connection-gradient"]],[["f-connection-waypoints"]],[["","fConnectionContent",""]]],Fk=["svg[fMarker]","f-connection-marker-circle, f-connection-marker-arrow","f-connection-gradient","f-connection-waypoints","[fConnectionContent]"];function Lk(t,n){t&1&&(it(),B(0,"linearGradient",3)),t&2&&D("fConnectionGradientRendererFor",n)}function Bk(t,n){t&1&&(it(),B(0,"circle",6))}function zk(t,n){t&1&&Ae(0,4)}var qk="[_nghost-%COMP%]{display:block;position:absolute;left:0;top:0;width:100%;height:100%;overflow:hidden;pointer-events:none;-webkit-user-select:none;user-select:none}",Vk=[[["","fDefinitions",""]],[["f-background"]],[["f-line-alignment"]],[["f-canvas"]],[["f-selection-area"]],"*"],Gk=["[fDefinitions]","f-background","f-line-alignment","f-canvas","f-selection-area","*"],yh=new he("F_BACKGROUND_PATTERN"),Xd=class{fPattern;static fToken=Symbol("AddPatternToBackgroundRequest");constructor(n){this.fPattern=n}},Ui=class{_items=[];_byId=new Map;get(n){return this._byId.get(n)}require(n){let e=this._byId.get(n);if(!e)throw new Error(`${this.kind} not found: ${n}`);return e}has(n){return this._byId.has(n)}getAll(){return this._items}size(){return this._items.length}add(n){let e=n.fId();if(this._byId.has(e))throw new Error(`${this.kind} already exists: ${e}`);this._items.push(n),this._byId.set(e,n)}addMany(n){for(let e of n)this.add(e)}remove(n){let e=n.fId(),i=this._byId.get(e);if(!i)return!1;this._byId.delete(e);let o=this._items.indexOf(i);return o>=0&&this._items.splice(o,1),!0}removeById(n){let e=this._byId.get(n);if(!e)return;this._byId.delete(n);let i=this._items.indexOf(e);return i>=0&&this._items.splice(i,1),e}clear(){this._items.length=0,this._byId.clear()}};function Yn(t){return{name:t}}var vh=class{_instances=new Map;get(n){return this._instances.get(n.name)}require(n){let e=this.get(n);if(!e)throw new Error(`Instance not found: ${n.name}`);return e}has(n){return this._instances.has(n.name)}add(n,e){if(this._instances.has(n.name))throw new Error(`${n.name} already exists`);this._instances.set(n.name,e)}remove(n){if(!this._instances.has(n.name))throw new Error(`${n.name} does not exist`);return this._instances.delete(n.name),!0}clear(){this._instances.clear()}},Oo=class extends Ui{kind;constructor(n){super(),this.kind=n}},Ch=class extends Ui{kind="Connection Marker"},xh=class extends Ui{kind="Connection";_instancesForCreate;_instancesForSnap;getForSnap(){return this._instancesForSnap}getForCreate(){return this._instancesForCreate}addForCreate(n){this._instancesForCreate=n}addForSnap(n){this._instancesForSnap=n}removeInstanceForCreate(){this._instancesForCreate=void 0}removeInstanceForSnap(){this._instancesForSnap=void 0}},bh=class extends Ui{kind="Node"},Gi=class{notifyOnSubscribe;static fToken=Symbol("ListenConnectionsChangesRequest");constructor(n=!0){this.notifyOnSubscribe=n}};function Hk(){return t=>{let n=null,e=null,i=()=>{n!==null&&cancelAnimationFrame(n),e!==null&&cancelAnimationFrame(e),n=e=null};return{callback:()=>{i(),n=requestAnimationFrame(()=>{n=null,e=requestAnimationFrame(()=>{e=null,t()})})},cleanup:i}}}function jk(){return t=>{let n=null;return{callback:()=>{n!==null&&cancelAnimationFrame(n),n=requestAnimationFrame(()=>{n=null,t()})},cleanup:()=>{n!==null&&cancelAnimationFrame(n),n=null}}}}function Zd(t){return n=>{let e=null;return{callback:()=>{e!==null&&clearTimeout(e),e=setTimeout(()=>{e=null,n()},t)},cleanup:()=>{e!==null&&clearTimeout(e),e=null}}}}var Tt=class{_listeners=new Set;notify(){this._listeners.forEach(n=>n())}listen(n){return this._listeners.add(n),()=>this.stop(n)}stop(n){this._listeners.delete(n)}},wh=class extends Tt{_htmlElement;_observer=new ResizeObserver(()=>this.notify());_isObserving=!1;constructor(n){super(),this._htmlElement=n}listen(n){return this._isObserving||(this._observer.observe(this._htmlElement),this._isObserving=!0),super.listen(n)}stop(n){super.stop(n),this._listeners.size===0&&this._disconnect()}_disconnect(){this._observer.unobserve(this._htmlElement),this._observer.disconnect(),this._isObserving=!1}},qt=class t{_channels=[];_operators=[];constructor(...n){this._channels=[...n]}pipe(...n){let e=new t(...this._channels);return e._operators=[...this._operators,...n],e}listen(n,e){let i=e,o=[],r=[],a=[];for(let p of[...this._operators].reverse()){let v=p(i);i=v.callback,v.cleanup&&o.push(v.cleanup),v.onSubscribe&&r.push(v.onSubscribe),v.setTeardown&&a.push(v.setTeardown)}let s=this._channels.map(p=>p.listen(()=>i())),c=null,d=!1,f=()=>{d||(d=!0,c?.(),c=null,s.forEach(p=>p()),o.forEach(p=>p()))};a.slice().reverse().forEach(p=>p(f)),r.slice().reverse().forEach(p=>p(i)),c=n.onDestroy(f)}};function Pf(){return t=>{let n=!0;return{callback:t,onSubscribe:e=>{queueMicrotask(()=>{n&&e()})},cleanup:()=>{n=!1}}}}function k0(){return t=>{let n=!1,e=null;return{setTeardown:i=>e=i,callback:()=>{if(!n){n=!0;try{t()}finally{e?.()}}}}}}var Uk=(()=>{let t=class Ea{_store=u(N);handle({notifyOnSubscribe:e}){return e?new qt(this._store.connectionsChanges$).pipe(Pf(),Zd(1)):new qt(this._store.connectionsChanges$).pipe(Zd(1))}static \u0275fac=function(i){return new(i||Ea)};static \u0275prov=C({token:Ea,factory:Ea.\u0275fac})};return t=S([I(Gi)],t),t})(),Sh=class{static fToken=Symbol("ListenNodesChangesRequest")},Wk=(()=>{let t=class Pa{_store=u(N);handle(e){return new qt(this._store.nodesChanges$)}static \u0275fac=function(i){return new(i||Pa)};static \u0275prov=C({token:Pa,factory:Pa.\u0275fac})};return t=S([I(Sh)],t),t})(),Qd=class{static fToken=Symbol("ListenTransformChangesRequest")},$k=(()=>{let t=class Ma{_store=u(N);handle(e){return new qt(this._store.transformChanges$,this._store.connectionsChanges$,this._store.nodesChanges$)}static \u0275fac=function(i){return new(i||Ma)};static \u0275prov=C({token:Ma,factory:Ma.\u0275fac})};return t=S([I(Qd)],t),t})(),Xn=class{static fToken=Symbol("EmitConnectionsChangesRequest")},Kk=(()=>{let t=class Da{_store=u(N);handle(e){this._store.emitConnectionChanges()}static \u0275fac=function(i){return new(i||Da)};static \u0275prov=C({token:Da,factory:Da.\u0275fac})};return t=S([I(Xn)],t),t})(),xn=class{static fToken=Symbol("NotifyTransformChangedRequest")},N=(()=>{class t{transformChanges$=new Tt;viewportAnimationChanges$=new Tt;connectionsChanges$=new Tt;_connectionsRevision=0;connectionsRenderedChanges$=new Tt;_connectionsRenderedRevision=0;_connectionsRenderedNodesRevision=0;_viewportAnimationCount=0;nodesChanges$=new Tt;_nodesRevision=0;progressiveRenderChanges$=new Tt;_pendingProgressiveRenderCount=0;get connectionsRevision(){return this._connectionsRevision}get connectionsRenderedRevision(){return this._connectionsRenderedRevision}get connectionsRenderedNodesRevision(){return this._connectionsRenderedNodesRevision}get nodesRevision(){return this._nodesRevision}get hasPendingProgressiveRender(){return this._pendingProgressiveRenderCount>0}get isViewportAnimating(){return this._viewportAnimationCount>0}get flowHost(){return this.fFlow?.hostElement}fFlow;fCanvas;get transform(){return this.fCanvas?.transform}nodes=new bh;connections=new xh;connectionMarkers=new Ch;outputs=new Oo("Output");inputs=new Oo("Input");outlets=new Oo("Outlet");instances=new vh;fDraggable;emitNodeChanges(){this._nodesRevision++,this.nodesChanges$.notify()}emitConnectionChanges(){this._connectionsRevision++,this.connectionsChanges$.notify()}completeConnectionsRender(e,i){e<this._connectionsRenderedRevision||e===this._connectionsRenderedRevision&&i<=this._connectionsRenderedNodesRevision||(this._connectionsRenderedRevision=Math.min(e,this._connectionsRevision),this._connectionsRenderedNodesRevision=i,this.connectionsRenderedChanges$.notify())}beginProgressiveRender(){this._pendingProgressiveRenderCount++,this.progressiveRenderChanges$.notify()}endProgressiveRender(){this._pendingProgressiveRenderCount&&(this._pendingProgressiveRenderCount--,this.progressiveRenderChanges$.notify())}transformChanged(){this.transformChanges$.notify()}beginViewportAnimation(){this._viewportAnimationCount++,this.viewportAnimationChanges$.notify()}endViewportAnimation(){this._viewportAnimationCount&&(this._viewportAnimationCount--,this.viewportAnimationChanges$.notify())}static \u0275fac=function(i){return new(i||t)};static \u0275prov=C({token:t,factory:t.\u0275fac})}return t})(),Pe={MAGNETIC_LINES:Yn("magnetic-lines"),MAGNETIC_RECTS:Yn("magnetic-rects"),ZOOM:Yn("zoom-controls"),BACKGROUND:Yn("background"),SELECTION_AREA:Yn("selection-area"),MINIMAP:Yn("minimap"),AUTO_PAN:Yn("auto-pan")},Yk=(()=>{let t=class ka{_store=u(N);handle(e){this._store.transformChanged()}static \u0275fac=function(i){return new(i||ka)};static \u0275prov=C({token:ka,factory:ka.\u0275fac})};return t=S([I(xn)],t),t})(),bn=class{key;instance;static fToken=Symbol("RegisterPluginInstanceRequest");constructor(n,e){this.key=n,this.instance=e}},Xk=(()=>{let t=class Oa{_store=u(N);handle({key:e,instance:i}){this._store.instances.add(e,i)}static \u0275fac=function(i){return new(i||Oa)};static \u0275prov=C({token:Oa,factory:Oa.\u0275fac})};return t=S([I(bn)],t),t})(),wn=class{key;static fToken=Symbol("RemovePluginInstanceRequest");constructor(n){this.key=n}},Zk=(()=>{let t=class Na{_store=u(N);handle({key:e}){this._store.instances.remove(e)}static \u0275fac=function(i){return new(i||Na)};static \u0275prov=C({token:Na,factory:Na.\u0275fac})};return t=S([I(wn)],t),t})(),Qk=[N,Wk,Uk,$k,Kk,Yk,Xk,Zk],Jk=0,eO=(()=>{let t=class Ra{_store=u(N);_browser=u(He);get _backgroundElement(){return this._store.instances.get(Pe.BACKGROUND)?.hostElement}handle(e){let i=this._getPatterns(e.fPattern?.hostElement);if(!i?.length)return;let o=ji("defs",this._browser);if(e.fPattern?.hostElement.remove(),i.forEach(r=>{o.append(r)}),i.length){this._backgroundElement?.firstChild?.appendChild(o),i[i.length-1].id="f-background-pattern-"+Jk++;let r=i[i.length-1].id,a=ji("rect",this._browser);a.setAttribute("fill","url(#"+r+")"),a.setAttribute("width","100%"),a.setAttribute("height","100%"),this._backgroundElement?.firstChild?.appendChild(a);let s=this._store.fCanvas?.transform||gn.default();e.fPattern?.setTransform(s)}}_getPatterns(e){return Array.from(e?.getElementsByTagName("pattern")||[])}static \u0275fac=function(i){return new(i||Ra)};static \u0275prov=C({token:Ra,factory:Ra.\u0275fac})};return t=S([I(Xd)],t),t})(),No=class{fTransform;static fToken=Symbol("SetBackgroundTransformRequest");constructor(n){this.fTransform=n}},tO=(()=>{let t=class Aa{_store=u(N);handle(e){this._store.instances.get(Pe.BACKGROUND)?.setTransform(e.fTransform)}static \u0275fac=function(i){return new(i||Aa)};static \u0275prov=C({token:Aa,factory:Aa.\u0275fac})};return t=S([I(No)],t),t})(),nO=[eO,tO],Jd=class{instance;static fToken=Symbol("AddCanvasToStoreRequest");constructor(n){this.instance=n}},iO=(()=>{let t=class Fa{_store=u(N);handle({instance:e}){this._store.fCanvas=e}static \u0275fac=function(i){return new(i||Fa)};static \u0275prov=C({token:Fa,factory:Fa.\u0275fac})};return t=S([I(Jd)],t),t})(),el=class{id;animated;static fToken=Symbol("CenterGroupOrNodeRequest");constructor(n,e){this.id=n,this.animated=e}},oO=(()=>{let t=class La{_store=u(N);_mediator=u(R);get _transform(){return this._store.transform}handle({id:e,animated:i}){let o=this._store.nodes.get(e);o&&(this._toCenter(this._getNodeRect(o),this._getFlowRect(),o._position),this._mediator.execute(new Wi(i,Zn.VIEWPORT_ONLY)))}_toCenter(e,i,o){this._transform.scaledPosition=L.initialize(),this._transform.position=L.initialize((i.width-e.width)/2-o.x*this._transform.scale,(i.height-e.height)/2-o.y*this._transform.scale)}_getNodeRect(e){return j.fromElement(e.hostElement)}_getFlowRect(){return j.fromElement(this._store.flowHost)}static \u0275fac=function(i){return new(i||La)};static \u0275prov=C({token:La,factory:La.\u0275fac})};return t=S([I(el)],t),t})(),tl=class{toCenter;animated;static fToken=Symbol("FitToFlowRequest");constructor(n,e){this.toCenter=n,this.animated=e}},rO=(()=>{let t=class Ba{_store=u(N);get _transform(){return this._store.transform}_mediator=u(R);handle({toCenter:e,animated:i}){let o=this._mediator.execute(new Ji)||j.initialize();o.width===0||o.height===0||(this.fitToParent(o,j.fromElement(this._store.flowHost),this._store.nodes.getAll().map(r=>r._position),e),this._mediator.execute(new Wi(i,Zn.VIEWPORT_ONLY)))}fitToParent(e,i,o,r){this._transform.scaledPosition=L.initialize(),this._transform.position=this._getZeroPositionWithoutScale(o);let a=e.width/this._transform.scale+r.x,s=e.height/this._transform.scale+r.y;(a>i.width||s>i.height||a<i.width&&s<i.height)&&(this._transform.scale=Math.min(i.width/a,i.height/s));let c=(i.width-a*this._transform.scale)/2-this._transform.position.x*this._transform.scale,d=(i.height-s*this._transform.scale)/2-this._transform.position.y*this._transform.scale;this._transform.position=L.initialize(c+r.x/2*this._transform.scale,d+r.y/2*this._transform.scale)}_getZeroPositionWithoutScale(e){let i=e.length?Math.min(...e.map(r=>r.x)):0,o=e.length?Math.min(...e.map(r=>r.y)):0;return L.initialize(i,o)}static \u0275fac=function(i){return new(i||Ba)};static \u0275prov=C({token:Ba,factory:Ba.\u0275fac})};return t=S([I(tl)],t),t})(),nl=class{transform;position;static fToken=Symbol("InputCanvasPositionRequest");constructor(n,e){this.transform=n,this.position=e}},aO=(()=>{let t=class za{_store=u(N);handle({transform:e,position:i}){i&&(L.isEqual(this._calculateTransformPosition(e),i)||(e.position=i,e.scaledPosition=L.initialize(),this._store.fCanvas?.redraw()))}_calculateTransformPosition(e){return L.sum(e.position,e.scaledPosition)}static \u0275fac=function(i){return new(i||za)};static \u0275prov=C({token:za,factory:za.\u0275fac})};return t=S([I(nl)],t),t})(),il=class{transform;scale;static fToken=Symbol("InputCanvasScaleRequest");constructor(n,e){this.transform=n,this.scale=e}},sO=(()=>{let t=class qa{_store=u(N);handle(e){!e.scale&&e.scale!==0||(e.transform.scale=e.scale,this._store.fCanvas?.redraw())}static \u0275fac=function(i){return new(i||qa)};static \u0275prov=C({token:qa,factory:qa.\u0275fac})};return t=S([I(il)],t),t})(),Zn=(function(t){return t.VIEWPORT_ONLY="VIEWPORT_ONLY",t.WITH_CONNECTION_CHANGES="WITH_CONNECTION_CHANGES",t})(Zn||{}),Wi=class{animated;context;static fToken=Symbol("RedrawCanvasWithAnimationRequest");constructor(n,e=Zn.WITH_CONNECTION_CHANGES){this.animated=n,this.context=e}};function oy(t,n){let e=i=>{i.propertyName==="transform"&&(t.removeEventListener("transitionend",e),n(i))};t.addEventListener("transitionend",e)}var cO=(()=>{let t=class Va{_store=u(N);get _canvas(){return this._store.fCanvas}handle(e){e.animated?this._redrawWithAnimation(e.context):this._redraw(e.context),this._canvas?.emitCanvasChangeEvent()}_redrawWithAnimation(e){this._store.beginViewportAnimation(),this._canvas?.redrawWithAnimation(),oy(this._canvas.hostElement,()=>{this._store.endViewportAnimation(),e===Zn.WITH_CONNECTION_CHANGES&&this._store.emitConnectionChanges()})}_redraw(e){this._canvas?.redraw(),e===Zn.WITH_CONNECTION_CHANGES&&this._store.emitConnectionChanges()}static \u0275fac=function(i){return new(i||Va)};static \u0275prov=C({token:Va,factory:Va.\u0275fac})};return t=S([I(Wi)],t),t})(),ol=class{static fToken=Symbol("RemoveCanvasFromStoreRequest")},dO=(()=>{let t=class Ga{_store=u(N);handle(e){this._store.fCanvas=void 0}static \u0275fac=function(i){return new(i||Ga)};static \u0275prov=C({token:Ga,factory:Ga.\u0275fac})};return t=S([I(ol)],t),t})(),rl=class{static fToken=Symbol("ResetScaleRequest")},lO=(()=>{let t=class Ha{_store=u(N);get _transform(){return this._store.transform}handle(e){this._transform.scale=1,this._transform.scaledPosition=L.initialize()}static \u0275fac=function(i){return new(i||Ha)};static \u0275prov=C({token:Ha,factory:Ha.\u0275fac})};return t=S([I(rl)],t),t})(),al=class{animated;static fToken=Symbol("ResetScaleAndCenterRequest");constructor(n){this.animated=n}},uO=(()=>{let t=class ja{_mediator=u(R);_store=u(N);get _transform(){return this._store.transform}handle({animated:e}){let i=this._mediator.execute(new Ji)||j.initialize();i.width===0||i.height===0||(this._oneToOneCentering(i,j.fromElement(this._store.flowHost),this._store.nodes.getAll().map(o=>o._position)),this._mediator.execute(new Wi(e,Zn.VIEWPORT_ONLY)))}_oneToOneCentering(e,i,o){this._transform.scaledPosition=L.initialize(),this._transform.position=this._getZeroPositionWithoutScale(o);let r=(i.width-e.width/this._transform.scale)/2-this._transform.position.x,a=(i.height-e.height/this._transform.scale)/2-this._transform.position.y;this._transform.scale=1,this._transform.position=L.initialize(r,a)}_getZeroPositionWithoutScale(e){let i=e.length?Math.min(...e.map(r=>r.x)):0,o=e.length?Math.min(...e.map(r=>r.y)):0;return L.initialize(i,o)}static \u0275fac=function(i){return new(i||ja)};static \u0275prov=C({token:ja,factory:ja.\u0275fac})};return t=S([I(al)],t),t})(),sl=class{scale;toPosition;static fToken=Symbol("UpdateScaleRequest");constructor(n,e){this.scale=n,this.toPosition=e}},fO=(()=>{let t=class Ua{_store=u(N);get _transform(){return this._store.transform}handle({scale:e,toPosition:i}){if(e===this._transform.scale)return;let o=L.sum(this._transform.scaledPosition,this._transform.position),r=i.x-(i.x-o.x)*e/this._transform.scale,a=i.y-(i.y-o.y)*e/this._transform.scale;this._transform.scale=e,this._transform.scaledPosition=L.sub(L.initialize(r,a),this._transform.position)}static \u0275fac=function(i){return new(i||Ua)};static \u0275prov=C({token:Ua,factory:Ua.\u0275fac})};return t=S([I(sl)],t),t})(),pO=[iO,oO,rO,aO,sO,cO,dO,lO,uO,fO],Ih=class{connection;static fToken=Symbol("AddConnectionForCreateToStoreRequest");constructor(n){this.connection=n}},hO=(()=>{let t=class Wa{_store=u(N);handle({connection:e}){this._store.connections.addForCreate(e)}static \u0275fac=function(i){return new(i||Wa)};static \u0275prov=C({token:Wa,factory:Wa.\u0275fac})};return t=S([I(Ih)],t),t})(),cl=class{instance;static fToken=Symbol("AddConnectionMarkerToStoreRequest");constructor(n){this.instance=n}},mO=(()=>{let t=class $a{_store=u(N);handle({instance:e}){this._store.connectionMarkers.add(e),this._store.emitNodeChanges()}static \u0275fac=function(i){return new(i||$a)};static \u0275prov=C({token:$a,factory:$a.\u0275fac})};return t=S([I(cl)],t),t})(),dl=class{connection;static fToken=Symbol("AddConnectionToStoreRequest");constructor(n){this.connection=n}},gO=(()=>{let t=class Ka{_store=u(N);handle({connection:e}){this._store.connections.add(e),this._store.emitConnectionChanges()}static \u0275fac=function(i){return new(i||Ka)};static \u0275prov=C({token:Ka,factory:Ka.\u0275fac})};return t=S([I(dl)],t),t})(),Th=class{connection;static fToken=Symbol("AddSnapConnectionToStoreRequest");constructor(n){this.connection=n}},_O=(()=>{let t=class Ya{_store=u(N);handle({connection:e}){this._store.connections.addForSnap(e)}static \u0275fac=function(i){return new(i||Ya)};static \u0275prov=C({token:Ya,factory:Ya.\u0275fac})};return t=S([I(Th)],t),t})(),$i=class{connection;static fToken=Symbol("CreateConnectionMarkersRequest");constructor(n){this.connection=n}},O0=new he("F_CONNECTION_CONTENT");var ll=class t{points;cumulativeLengths;segmentTangents;totalLength;constructor(n){let e=t._removeConsecutiveDuplicates(n);if(e.length<2){this.points=[{x:0,y:0},{x:1,y:0}],this.cumulativeLengths=[0,1],this.segmentTangents=[{x:1,y:0}],this.totalLength=1;return}this.points=e;let i=this.points.length,o=i-1,r=new Array(i).fill(0),a=new Array(o),s=0;for(let c=0;c<o;c++){let d=this.points[c+1].x-this.points[c].x,f=this.points[c+1].y-this.points[c].y,p=Math.hypot(d,f),v=p?d/p:1,x=p?f/p:0;a[c]={x:v,y:x},s+=p,r[c+1]=s}this.cumulativeLengths=r,this.segmentTangents=a,this.totalLength=s||1}static from(n){return new t(n.map(e=>({x:e.x,y:e.y})))}static _removeConsecutiveDuplicates(n){let e=[];for(let i of n){let o=e[e.length-1];(!o||o.x!==i.x||o.y!==i.y)&&e.push({x:i.x,y:i.y})}return e}},Eh=class t{_polyline;constructor(n=[]){this._polyline=new ll(n)}updatePoints(n){return this._polyline=new ll(n),this._polyline.totalLength}calculateTotalLength(n){return this.updatePoints(n)}get totalLength(){return this._polyline.totalLength}getPointAtProgress(n){let{points:e,cumulativeLengths:i,segmentTangents:o,totalLength:r}=this._polyline,s=t._clamp(n,0,1)*r,c=.5;if(s<=c)return{point:e[0],tangent:o[0]??{x:1,y:0},atEdge:!0};if(r-s<=c){let A=e.length-1;return{point:e[A],tangent:o[A-1]??{x:1,y:0},atEdge:!0}}let d=t._findRightIndex(i,s),f=Math.max(1,d),p=i[f-1],v=i[f],x=t._safeRatio(s-p,v-p),w=e[f-1],T=e[f],E={x:t._lerp(w.x,T.x,x),y:t._lerp(w.y,T.y,x)},O=o[f-1]??{x:1,y:0};return{point:E,tangent:O,atEdge:!1}}getPointAtLength(n){return this.getPointAtProgress(n)}getPointAtDistance(n){let e=this._polyline.totalLength?n/this._polyline.totalLength:0;return this.getPointAtProgress(e)}static _findRightIndex(n,e){let i=0,o=n.length-1;for(;i<o;){let r=i+o>>1;n[r]<e?i=r+1:o=r}return i}static _lerp(n,e,i){return n+(e-n)*i}static _clamp(n,e,i){return n<e?e:n>i?i:n}static _safeRatio(n,e){let i=Math.abs(e)<1e-6?1e-6:e;return n/i}},ry=(function(t){return t.NONE="none",t.ALONG="along",t})(ry||{}),Ph=class{compute(n,e){let i=this._clamp01(e.position()),{point:o,tangent:r}=n.getPointAtLength(i),a={x:-r.y,y:r.x},s=e.offset()??0,c=o.x+a.x*s,d=o.y+a.y*s,p=this._sizeAlongDirection(e.hostElement,r)*.5,v=i*n.totalLength,x=n.totalLength-v,w=this._applyEdgeGuard(c,d,r,v,x,p),T=this._calculateContentRotation(e.align(),r);return{position:w,rotationDeg:T}}_clamp01(n){return n<=0?0:n>=1?1:n}_applyEdgeGuard(n,e,i,o,r,a){if(o<=a){let s=a-o;return{x:n+i.x*s,y:e+i.y*s}}if(r<=a){let s=a-r;return{x:n-i.x*s,y:e-i.y*s}}return{x:n,y:e}}_sizeAlongDirection(n,e){let i=j.fromElement(n);return Math.abs(e.x)*i.width+Math.abs(e.y)*i.height}_normalize180(n){let e=(n+180)%360;return e<0&&(e+=360),e-180}_keepUpright(n){let e=this._normalize180(n);return e>90?e-=180:e<-90&&(e+=180),e}_calculateContentRotation(n,e){let i=0;return n===ry.ALONG&&(i=Math.atan2(e.y,e.x)*180/Math.PI,i=this._keepUpright(i)),i}},Mh=class{_placement;constructor(n=new Ph){this._placement=n}layout(n,e){let i=new Eh(n),o=i.totalLength;for(let r of e){let{position:a,rotationDeg:s}=this._placement.compute(i,r);r.hostElement.style.transform=this._createTransformString(a,s)}return o}_createTransformString(n,e){return`translate3d(${n.x}px, ${n.y}px, 0) translate(-50%, -50%) rotate(${e}deg)`}};var N0=new he("F_CONNECTION_WAYPOINTS");function ay(t,n,e){return(t.x-n.x)**2+(t.y-n.y)**2<=e**2}function yO(t,n){let e=t.fWaypoints(),i=e?.radius()||8;return e?.candidates().find(o=>ay(n,o,i))}function vO(t,n){let e=t.fWaypoints(),i=e?.radius()||8;return e?.waypoints().find(o=>ay(n,o,i))}function CO(t,n){for(let e of t){let i=vO(e,n);if(i&&e.fWaypoints()?.visibility())return{connection:e,waypoint:i};let o=yO(e,n);if(o&&e.fWaypoints()?.visibility())return{connection:e,candidate:o}}}var Mf=new he("F_CONNECTION_COMPONENTS_PARENT");var xe=(function(t){return t.START="f-connection-marker-start",t.END="f-connection-marker-end",t.SELECTED_START="f-connection-selected-marker-start",t.SELECTED_END="f-connection-selected-marker-end",t.START_ALL_STATES="f-connection-marker-start-all-states",t.END_ALL_STATES="f-connection-marker-end-all-states",t})(xe||{}),ul=new he("F_CONNECTION_MARKER"),xO=0,fl=class{fId=U(`f-marker-${xO++}`);hostElement=u(Le).nativeElement};function sy(t,n=xe.START){if(typeof t!="string")return n;let e=t.trim().toLowerCase();return e?bO(e)??n:n}function bO(t){switch(t){case"start":case"f-connection-marker-start":return xe.START;case"end":case"f-connection-marker-end":return xe.END;case"selected-start":case"f-connection-selected-marker-start":return xe.SELECTED_START;case"selected-end":case"f-connection-selected-marker-end":return xe.SELECTED_END;case"start-all-states":case"f-connection-marker-start-all-states":case"start-all":case"all-start":return xe.START_ALL_STATES;case"end-all-states":case"f-connection-marker-end-all-states":case"end-all":case"all-end":return xe.END_ALL_STATES;default:return null}}var cy=(()=>{class t extends fl{_markerElement=Be.required("markerElement");_type=F(xe.END_ALL_STATES,{alias:"type",transform:e=>sy(e,xe.END_ALL_STATES)});get markerElement(){return this._markerElement().nativeElement}width=6;height=7;refX=5.5;refY=3.5;get type(){return this._type()}orient="auto";markerUnits="strokeWidth";static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275cmp=Z({type:t,selectors:[["f-connection-marker-arrow"]],viewQuery:function(i,o){i&1&&Ot(o._markerElement,bk,5),i&2&&gt()},hostAttrs:[1,"f-component",2,"display","none"],inputs:{_type:[1,"type","_type"]},features:[be([{provide:ul,useExisting:t}]),ve],decls:3,vars:0,consts:[["markerElement",""],["viewBox","0 0 6 6",1,"f-marker"],["d","M0,0 L6,3 0,6Z"]],template:function(i,o){i&1&&(it(),K(0,"svg",1,0),dn(2,"path",2),Y())},encapsulation:2})}return t})();var dy=(()=>{class t extends fl{_mediator=u(R);markerElement=this.hostElement;width=0;height=0;refX=0;refY=0;type=xe.START;orient="auto";markerUnits="strokeWidth";ngOnInit(){this.hostElement.style.display="none",this._mediator.execute(new cl(this))}ngOnDestroy(){this._mediator.execute(new Al(this))}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275dir=ke({type:t,selectors:[["svg","fMarker",""]],hostAttrs:[1,"f-component","f-marker"],inputs:{width:"width",height:"height",refX:"refX",refY:"refY",type:[2,"type","type",e=>sy(e,xe.START)],orient:"orient",markerUnits:"markerUnits"},standalone:!1,features:[be([{provide:ul,useExisting:t}]),ve]})}return t})(),vn=(function(t){return t.FIXED="fixed",t.FIXED_CENTER="fixed_center",t.FLOATING="floating",t})(vn||{}),Ee=(function(t){return t.DEFAULT="default",t.TOP="top",t.BOTTOM="bottom",t.LEFT="left",t.RIGHT="right",t.CALCULATE="calculate",t.CALCULATE_HORIZONTAL="calculate_horizontal",t.CALCULATE_VERTICAL="calculate_vertical",t})(Ee||{});function wO({sourceRect:t,targetRect:n}){return{point1:t.gravityCenter,point2:n.gravityCenter}}var z=(function(t){return t.LEFT="left",t.TOP="top",t.RIGHT="right",t.BOTTOM="bottom",t.CALCULATE="calculate",t.CALCULATE_HORIZONTAL="calculate_horizontal",t.CALCULATE_VERTICAL="calculate_vertical",t.AUTO="auto",t})(z||{}),Vi=(function(t){return t.SEGMENT="segment",t.STRAIGHT="straight",t.BEZIER="bezier",t.ADAPTIVE_CURVE="adaptive-curve",t})(Vi||{});function SO({sourceRect:t,sourceConnectableSide:n,targetRect:e,targetConnectableSide:i}){return{point1:R0(t,n===z.AUTO?z.BOTTOM:n),point2:R0(e,i===z.AUTO?z.TOP:i)}}function R0(t,n){switch(n){case z.TOP:return{x:t.x+t.width/2,y:t.y};case z.BOTTOM:return{x:t.x+t.width/2,y:t.y+t.height};case z.LEFT:return{x:t.x,y:t.y+t.height/2};case z.RIGHT:return{x:t.x+t.width,y:t.y+t.height/2};default:throw new Error(`Unknown side: ${n}`)}}function ly(t,n,e,i){if(!i||!i.rotationDeg)return zi.getRoundedRectIntersections(t,n,e)[0];let o=Xa(t,-i.rotationDeg,i.pivot),r=Xa(n,-i.rotationDeg,i.pivot),a=IO(e,-i.rotationDeg,i.pivot),s=zi.getRoundedRectIntersections(o,r,a)[0];return s?Xa(s,i.rotationDeg,i.pivot):void 0}function IO(t,n,e){let i=Xa(TO(t),n,e);return new Ge(i.x-t.width/2,i.y-t.height/2,t.width,t.height,t.radius1,t.radius2,t.radius3,t.radius4)}function TO(t){return{x:t.x+t.width/2,y:t.y+t.height/2}}function Xa(t,n,e){let i=t.x-e.x,o=t.y-e.y,r=n*Math.PI/180,a=Math.cos(r),s=Math.sin(r);return{x:i*a-o*s+e.x,y:i*s+o*a+e.y}}function EO({sourceRect:t,targetRect:n,sourceRotationContext:e,targetRotationContext:i}){return DO(PO(t,n,e),MO(t,n,i),t,n)}function PO(t,n,e){return ly(t.gravityCenter,n.gravityCenter,t,e)}function MO(t,n,e){return ly(n.gravityCenter,t.gravityCenter,n,e)}function DO(t,n,e,i){return{point1:t||e.gravityCenter,point2:n||i.gravityCenter}}var Ia=.5,kO={[vn.FLOATING]:EO,[vn.FIXED_CENTER]:wO,[vn.FIXED]:SO},ro=(()=>{class t{handle(e){let i=this._calculateDirectionalVectors(e.sourceRect.gravityCenter.x,e.sourceRect.gravityCenter.y,e.targetRect.gravityCenter.x,e.targetRect.gravityCenter.y),o=this._determineSourceSide(e,i),r=this._determineTargetSide(e,i);return e.connection._applyResolvedSidesToConnection(o,r),this._getBehaviorHandler(e.connection.fBehavior)({sourceRect:e.sourceRect,targetRect:e.targetRect,sourceConnectableSide:o,targetConnectableSide:r,sourceRotationContext:e.sourceRotationContext,targetRotationContext:e.targetRotationContext})}_calculateDirectionalVectors(e,i,o,r){let a=o-e,s=r-i;return{sourceToTargetX:a,sourceToTargetY:s,targetToSourceX:-a,targetToSourceY:-s}}_determineSourceSide(e,i){return this._resolveConnectableSide(e.connection.fOutputSide(),i.sourceToTargetX,i.sourceToTargetY,e.sourceConnectableSide)}_determineTargetSide(e,i){return this._resolveConnectableSide(e.connection.fInputSide(),i.targetToSourceX,i.targetToSourceY,e.targetConnectableSide)}_resolveConnectableSide(e,i,o,r){if(e===Ee.DEFAULT)return r;let a=Math.abs(i),s=Math.abs(o);if(a<Ia&&s<Ia)return r;let d=a>=s;switch(e){case Ee.CALCULATE:return d?i>=0?z.RIGHT:z.LEFT:o>=0?z.BOTTOM:z.TOP;case Ee.CALCULATE_HORIZONTAL:return a<Ia?r:i>=0?z.RIGHT:z.LEFT;case Ee.CALCULATE_VERTICAL:return s<Ia?r:o>=0?z.BOTTOM:z.TOP;case Ee.TOP:return z.TOP;case Ee.BOTTOM:return z.BOTTOM;case Ee.LEFT:return z.LEFT;case Ee.RIGHT:return z.RIGHT;default:return r}}_getBehaviorHandler(e){let i=kO[e];if(!i)throw new Error(`[Behavior] No handler for behavior: ${e}`);return i}static \u0275fac=function(i){return new(i||t)};static \u0275prov=C({token:t,factory:t.\u0275fac})}return t})(),Rt=class{sourceRect;targetRect;connection;sourceConnectableSide;targetConnectableSide;sourceRotationContext;targetRotationContext;constructor(n,e,i,o,r,a,s){this.sourceRect=n,this.targetRect=e,this.connection=i,this.sourceConnectableSide=o,this.targetConnectableSide=r,this.sourceRotationContext=a,this.targetRotationContext=s}};function Df(t,n,e){return[t,...e??[],n]}function OO(t,n){let e=Math.abs(n.x-t.x)/2,i=n.x<t.x?n.x+e:n.x-e,o=Math.abs(n.y-t.y)/2,r=n.y<t.y?n.y+o:n.y-o;return{x:i,y:r}}function NO(t,n=32){let e=new Array(n+1);e[0]=ae({},t[0]);for(let i=1;i<=n;i++)e[i]=uy(t[0],t[1],t[2],t[3],i/n);return e}function uy(t,n,e,i,o){let r=1-o,a=o*o,s=r*r,c=s*r,d=a*o;return{x:c*t.x+3*s*o*n.x+3*r*a*e.x+d*i.x,y:c*t.y+3*s*o*n.y+3*r*a*e.y+d*i.y}}function fy(t){return t.map(n=>uy(n.p0,n.c1,n.c2,n.p3,.5))}function RO(t){if(t.length<2)throw new Error("Polylines must be at least two points");let n=AO(t);return n<=0?[ae({},t[0])]:[FO(t,n/2)]}function AO(t){let n=0;for(let e=0;e<t.length-1;e++)n+=py(t[e],t[e+1]);return n}function FO(t,n){let e=0;for(let o=0;o<t.length-1;o++){let r=t[o],a=t[o+1],s=py(r,a);if(!(s<=0)){if(e+s>=n){let c=(n-e)/s;return{x:r.x+(a.x-r.x)*c,y:r.y+(a.y-r.y)*c}}e+=s}}let i=t[t.length-1];return{x:i.x,y:i.y}}function py(t,n){return Math.hypot(n.x-t.x,n.y-t.y)}function LO(t){let n=[];for(let e of t)for(let i of e){let o=n[n.length-1];(!o||o.x!==i.x||o.y!==i.y)&&n.push(i)}return n}function hy(t){if(!t.length)return"";let n=`M ${t[0].p0.x} ${t[0].p0.y}`;for(let e=0;e<t.length;e++){let i=t[e],o=e===t.length-1,r=o?i.p3.x+2e-4:i.p3.x,a=o?i.p3.y+2e-4:i.p3.y;n+=` C ${i.c1.x} ${i.c1.y}, ${i.c2.x} ${i.c2.y}, ${r} ${a}`}return n}function my(t,n=16){if(!t.length)return[];let e=[];for(let i=0;i<t.length;i++){let o=t[i],r=NO([o.p0,o.c1,o.c2,o.p3],n);i>0&&r.shift(),e.push(...r)}return e}function BO(t,n=1e-6){let e=t.length;if(e<=2)return t;let i=[];i.push(t[0]);for(let r=1;r<e;r++){let a=t[r],s=i[i.length-1];(Math.abs(a.x-s.x)>n||Math.abs(a.y-s.y)>n)&&i.push(a)}if(i.length<=2)return i;let o=[];o.push(i[0]);for(let r=1;r<i.length-1;r++){let a=o[o.length-1],s=i[r],c=i[r+1],d=Math.abs(a.x-s.x)<=n&&Math.abs(s.x-c.x)<=n,f=Math.abs(a.y-s.y)<=n&&Math.abs(s.y-c.y)<=n;!d&&!f&&o.push(s)}return o.push(i[i.length-1]),o}var Dh=class t{static _dir(n){switch(n){case z.LEFT:return{x:-1,y:0};case z.RIGHT:return{x:1,y:0};case z.TOP:return{x:0,y:-1};case z.BOTTOM:return{x:0,y:1};case z.AUTO:return{x:0,y:0}}return{x:0,y:0}}static _isHorizontal(n){return n===z.LEFT||n===z.RIGHT}static _handleLength(n,e,i,o){let r=Math.abs(e.x-n.x),a=Math.abs(e.y-n.y),s=Math.hypot(r,a),c=i===z.AUTO?Math.max(r,a):this._isHorizontal(i)?r:a,d=Math.max(8,o),f=o+.5*s,p=o*1.05+c*.3;return Math.min(f,Math.max(d,p))}static _softControl(n,e,i,o){let r=this._dir(n),a=i.x-e.x,s=i.y-e.y,c=Math.hypot(a,s)||1,d=a/c,f=s/c;if(n===z.AUTO)return{x:e.x+d*o,y:e.y+f*o};let p=r.x*d+r.y*f,v=.12,x=Math.max(0,-p)*.08,w=Math.min(.2,v+x),T=r.x*(1-w)+d*w,E=r.y*(1-w)+f*w,O=Math.hypot(T,E)||1;return{x:e.x+T/O*o,y:e.y+E/O*o}}handle({source:n,sourceSide:e,target:i,targetSide:o,offset:r,waypoints:a}){let s=Math.max(0,r??0),c=Df(n,i,a),d=[];for(let p=0;p<c.length-1;p++){let v=c[p],x=c[p+1],w=t._handleLength(v,x,e,s),T=t._handleLength(x,v,o,s),E=t._softControl(e,v,x,w),O=t._softControl(o,x,v,T);d.push({p0:v,c1:E,c2:O,p3:x,chainIndex:p})}let f=my(d,12);return{path:hy(d),secondPoint:d[0]?.c1??n,penultimatePoint:d[d.length-1]?.c2??i,points:f,candidates:fy(d)}}},kh=class{handle({source:n,sourceSide:e,target:i,targetSide:o,offset:r,waypoints:a}){let s=Df(n,i,a),c=[];for(let f=0;f<s.length-1;f++){let p=s[f],v=s[f+1],x=A0(e,p,v,r??0),w=A0(o,v,p,r??0);c.push({p0:p,c1:x,c2:w,p3:v,chainIndex:f})}let d=my(c,12);return{path:hy(c),secondPoint:c[0]?.c1??n,penultimatePoint:c[c.length-1]?.c2??i,points:d,candidates:fy(c)}}};function A0(t,n,e,i){let o={x:n.x,y:n.y};switch(t){case z.LEFT:o.x-=Ta(n.x-e.x,i);break;case z.RIGHT:o.x+=Ta(e.x-n.x,i);break;case z.TOP:o.y-=Ta(n.y-e.y,i);break;case z.BOTTOM:o.y+=Ta(e.y-n.y,i);break;case z.AUTO:break}return o}function Ta(t,n){return t>=n?t:n*Math.sqrt(n-t)}function zO(t){let{axis:n,source:e,target:i,sourceSide:o,targetSide:r,sourceGap:a,targetGap:s,sourceDir:c,targetDir:d,currentDir:f,offset:p,sourceGapOffset:v,targetGapOffset:x}=t,w=qO(a,s),T=VO(n,c,f,w);return o===r?GO(n,e,i,p,c,f,a,s,v,x):T=HO(n,c,d,a,s,w,T),T}function qO(t,n){return{sourceTarget:[{x:t.x,y:n.y}],targetSource:[{x:n.x,y:t.y}]}}function VO(t,n,e,i){return t==="x"?n.x===e?i.targetSource:i.sourceTarget:n.y===e?i.sourceTarget:i.targetSource}function GO(t,n,e,i,o,r,a,s,c,d){let f=Math.abs(n[t]-e[t]);if(f>i)return;let p=Math.min(i-1,i-f);p<=0||(o[t]===r?c[t]=(a[t]>n[t]?-1:1)*p:d[t]=(s[t]>e[t]?-1:1)*p)}function HO(t,n,e,i,o,r,a){let s=t==="x"?"y":"x",c=n[t]===e[s],d=i[s]>o[s],f=i[s]<o[s];return n[t]===1&&(!c&&d||c&&f)||n[t]!==1&&(!c&&f||c&&d)?t==="x"?r.sourceTarget:r.targetSource:a}var ko=1e-6,F0=2e-4,jO=.75;function UO(t,n){let e=t.length,i=[];i.push(`M ${t[0].x} ${t[0].y}`);for(let r=1;r<e-1;r++)i.push(WO(t[r-1],t[r],t[r+1],n));let o=t[e-1];return i.push(`L ${o.x+F0} ${o.y+F0}`),i.join(" ")}function WO(t,n,e,i){let o=n.x,r=n.y;if(i<=0)return`L ${o} ${r}`;let a=Math.abs(t.x-o)<=ko&&Math.abs(o-e.x)<=ko,s=Math.abs(t.y-r)<=ko&&Math.abs(r-e.y)<=ko;if(a||s)return`L ${o} ${r}`;let c=Math.hypot(o-t.x,r-t.y),d=Math.hypot(e.x-o,e.y-r),f=Math.min(c*.5,d*.5,i);if(f<jO)return`L ${o} ${r}`;if(Math.abs(t.y-r)<=ko){let E=t.x<e.x?-1:1,O=t.y<e.y?1:-1,A=o+f*E,V=r+f*O;return`L ${A} ${r} Q ${o} ${r} ${o} ${V}`}let v=t.x<e.x?1:-1,x=t.y<e.y?-1:1,w=r+f*x,T=o+f*v;return`L ${o} ${w} Q ${o} ${r} ${T} ${r}`}var L0={[z.LEFT]:L.initialize(-1,0),[z.RIGHT]:L.initialize(1,0),[z.TOP]:L.initialize(0,-1),[z.BOTTOM]:L.initialize(0,1),[z.AUTO]:L.initialize(0,0)},Oh=class{handle({source:n,sourceSide:e,target:i,targetSide:o,waypoints:r,offset:a,radius:s}){let c=Df(n,i,r),d=[],f=[];for(let w=0;w<c.length-1;w++){let T=c[w],E=c[w+1],O=this._getPathPoints(T,e,E,o,a??0);d.push(O),f.push(...RO(O))}let p=BO(LO(d)),v=p.length>1?p[p.length-2]:n,x=p.length>1?p[1]:i;return{path:UO(p,s??0),penultimatePoint:v,secondPoint:x,points:p,candidates:f}}_getPathPoints(n,e,i,o,r){let a=L0[e],s=L0[o],c={x:n.x+a.x*r,y:n.y+a.y*r},d={x:i.x+s.x*r,y:i.y+s.y*r},f=this._getDirection(c,e,d),p=f.x!==0?"x":"y",v=f[p],x=[],w=L.initialize(),T=L.initialize(),E=OO(n,i);if(a[p]*s[p]===-1){let O=[{x:E.x,y:c.y},{x:E.x,y:d.y}],A=[{x:c.x,y:E.y},{x:d.x,y:E.y}];a[p]===v?x=p==="x"?O:A:x=p==="x"?A:O}else x=zO({axis:p,source:n,target:i,sourceSide:e,targetSide:o,sourceGap:c,targetGap:d,sourceDir:a,targetDir:s,currentDir:v,offset:r,sourceGapOffset:w,targetGapOffset:T});return[n,{x:c.x+w.x,y:c.y+w.y},...x,{x:d.x+T.x,y:d.y+T.y},i]}_getDirection(n,e,i){return e===z.LEFT||e===z.RIGHT?n.x<i.x?L.initialize(1,0):L.initialize(-1,0):n.y<i.y?L.initialize(0,1):L.initialize(0,-1)}},B0=2e-4,Nh=class{handle(n){let e=Df(n.source,n.target,n.waypoints),i=e.length,o=e[0],r=`M ${o.x} ${o.y}`,a=new Array(i-1);for(let s=0;s<i-1;s++){let c=e[s],d=e[s+1],f=s===i-2,p=f?d.x+B0:d.x,v=f?d.y+B0:d.y;r+=` L ${p} ${v}`,a[s]={x:(c.x+d.x)*.5,y:(c.y+d.y)*.5}}return{path:r,candidates:a,points:e,secondPoint:e[1]??n.target,penultimatePoint:e[i-2]??n.source}}},$O=new he("F_CONNECTION_BUILDERS"),gy=(()=>{class t{_builtinBuilders={[Vi.STRAIGHT]:new Nh,[Vi.BEZIER]:new kh,[Vi.ADAPTIVE_CURVE]:new Dh,[Vi.SEGMENT]:new Oh};_providedBuilders;_builders;constructor(){this._providedBuilders=u($O,{optional:!0})||{},this._builders=ae(ae({},this._builtinBuilders),this._providedBuilders)}handle({type:e,payload:i}){let o=this._builders[e];if(!o)throw this._createBuilderNotFoundError(e);return o.handle(i)}_createBuilderNotFoundError(e){let i=Object.keys(this._builtinBuilders).sort(),o=Object.keys(this._providedBuilders).sort(),r=Object.keys(this._builders).sort(),a=i.filter(c=>c in this._providedBuilders).sort(),s=[`Connection Builder Error: builder type "${e}" not found.`,`Registered types: ${r.length?r.join(", "):"(none)"}`,`Built-in types: ${i.length?i.join(", "):"(none)"}`,`Provided (F_CONNECTION_BUILDERS) types: ${o.length?o.join(", "):"(none)"}`,a.length?`Overridden built-ins: ${a.join(", ")}`:null,"Tip: ensure you pass a valid Connection Type or provide a builder via F_CONNECTION_BUILDERS."].filter(Boolean);return new Error(s.join(`
64
+ `))}static \u0275fac=function(i){return new(i||t)};static \u0275prov=C({token:t,factory:t.\u0275fac})}return t})();function KO(t,n,e){return Jt("connection_"+t+n+e)}function YO(t,n,e){return Jt("connection_for_selection_"+t+n+e)}function _y(t){return Jt("connection_gradient_"+t)}function XO(t){return`url(#${_y(t)})`}var ZO=(()=>{class t{_connection=u(Mf);_hostElement=u(Le).nativeElement;_injector=u(ut);_hostAttributes=new Map;_startColor;_endColor;gradientId=k(()=>_y(this._connection.fId()));ngOnInit(){this._listenColorChanges()}_listenColorChanges(){pe(()=>{this.gradient().fStartColor(),this.gradient().fEndColor(),Lt(()=>{this._updateGradient()})},{injector:this._injector})}get stop1Element(){return this._hostElement.children.item(0)}get stop2Element(){return this._hostElement.children.item(1)}redraw(e){let i=e.point2.x-e.point1.x,o=e.point2.y-e.point1.y,r=Math.sqrt(i*i+o*o)||.01,a=new Q(.5-.5*i/r,.5-.5*o/r);this._setHostAttribute("x1",a.x.toString()),this._setHostAttribute("y1",a.y.toString());let s=new Q(.5+.5*i/r,.5+.5*o/r);this._setHostAttribute("x2",s.x.toString()),this._setHostAttribute("y2",s.y.toString()),this._updateGradient()}_updateGradient(){let e=this.gradient();this._setFromColor(e.fStartColor()),this._setToColor(e.fEndColor())}_setFromColor(e){let i=e||"transparent";this._startColor!==i&&(this._startColor=i,this.stop1Element.setAttribute("stop-color",i),this.stop1Element.style.setProperty("stop-color",i))}_setToColor(e){let i=e||"transparent";this._endColor!==i&&(this._endColor=i,this.stop2Element.setAttribute("stop-color",i),this.stop2Element.style.setProperty("stop-color",i))}_setHostAttribute(e,i){this._hostAttributes.get(e)!==i&&(this._hostAttributes.set(e,i),this._hostElement.setAttribute(e,i))}static \u0275fac=function(i){return new(i||t)};static \u0275dir=ke({type:t,standalone:!1})}return t})(),Rh=(()=>{class t extends ZO{gradient=F.required({alias:"fConnectionGradientRendererFor"});static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275cmp=Z({type:t,selectors:[["linearGradient","fConnectionGradientRenderer",""]],hostVars:1,hostBindings:function(i,o){i&2&&$("id",o.gradientId())},inputs:{gradient:[1,"fConnectionGradientRendererFor","gradient"]},features:[ve],attrs:wk,decls:3,vars:0,consts:[[0,"xmlns","svg","http://www.w3.org/2000/svg"],["offset","0%"],["offset","100%"]],template:function(i,o){i&1&&(ia(0,0),it(),dn(1,"stop",1)(2,"stop",2),oa())},encapsulation:2,changeDetection:0})}return t})(),z0=new he("F_CONNECTION_GRADIENT");var Ah=new he("F_CONNECTION_PATH"),Fh=class{hostElement=u(Le).nativeElement},QO=(()=>{class t extends Fh{_connection=u(Mf);useGradient=F(!1);linkToGradient=k(()=>this.useGradient()?XO(this._connection.fId()):null);get fPathId(){return this._connection.fId()}get attrConnectionId(){return KO(this._connection.fId(),this._connection.fOutputId(),this._connection.fInputId())}initialize(){this.deselect()}setPath(e){this.hostElement.setAttribute("d",`${e}`)}select(){this.hostElement.setAttribute("marker-start",`url(#${tN(this._connection.fId())})`),this.hostElement.setAttribute("marker-end",`url(#${nN(this._connection.fId())})`)}deselect(){this.hostElement.setAttribute("marker-start",`url(#${JO(this._connection.fId())})`),this.hostElement.setAttribute("marker-end",`url(#${eN(this._connection.fId())})`)}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275cmp=Z({type:t,selectors:[["path","f-connection-path",""]],hostAttrs:[1,"f-component","f-connection-path"],hostVars:4,hostBindings:function(i,o){i&2&&($("id",o.attrConnectionId)("data-f-path-id",o.fPathId),_t("stroke",o.linkToGradient()))},inputs:{useGradient:[1,"useGradient"]},standalone:!1,features:[be([{provide:Ah,useExisting:t}]),ve],attrs:Sk,decls:0,vars:0,template:function(i,o){},styles:["[_nghost-%COMP%]{fill:none;pointer-events:stroke}"],changeDetection:0})}return t})();function JO(t){return Jt(`f-connection-marker-start-${t}`)}function eN(t){return Jt(`f-connection-marker-end-${t}`)}function tN(t){return Jt(`f-connection-selected-marker-start-${t}`)}function nN(t){return Jt(`f-connection-selected-marker-end-${t}`)}var Lh=new he("F_CONNECTION_SELECTION"),Bh=class{hostElement=u(Le).nativeElement},iN=(()=>{class t extends Bh{_connection=u(Mf);get connectionForSelectionId(){return YO(this._connection.fId(),this._connection.fOutputId(),this._connection.fInputId())}setPath(e){this.hostElement.setAttribute("d",`${e}`)}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275cmp=Z({type:t,selectors:[["path","fConnectionSelection",""]],hostAttrs:[1,"f-component","f-connection-selection"],hostVars:1,hostBindings:function(i,o){i&2&&$("id",o.connectionForSelectionId)},standalone:!1,features:[be([{provide:Lh,useExisting:t}]),ve],attrs:Ik,decls:0,vars:0,template:function(i,o){},styles:["[_nghost-%COMP%]{fill:none;pointer-events:stroke}"],changeDetection:0})}return t})(),zh=new he("F_CONNECTION_DRAG_HANDLE_END"),qh=new he("F_CONNECTION_DRAG_HANDLE_START"),pl=class{hostElement=u(Le).nativeElement;point=L.initialize();class="f-connection-drag-handle";calculateCircleCenter(n,e,i){let o={x:e.x-n.x,y:e.y-n.y},r=Math.sqrt(o.x*o.x+o.y*o.y)||1,a={x:o.x/r,y:o.y/r},s={x:a.x*i,y:a.y*i};return{x:e.x-s.x,y:e.y-s.y}}},oN=(()=>{class t extends pl{redraw(e,i){this.point=this.calculateCircleCenter(e,i,8),this.hostElement.setAttribute("cx",this.point.x.toString()),this.hostElement.setAttribute("cy",this.point.y.toString())}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275cmp=Z({type:t,selectors:[["circle","f-connection-drag-handle-start",""]],hostVars:2,hostBindings:function(i,o){i&2&&Fe(o.class)},standalone:!1,features:[be([{provide:qh,useExisting:t}]),ve],attrs:Tk,decls:0,vars:0,template:function(i,o){},encapsulation:2,changeDetection:0})}return t})(),rN=(()=>{class t extends pl{redraw(e,i){this.point=this.calculateCircleCenter(e,i,8),this.hostElement.setAttribute("cx",this.point.x.toString()),this.hostElement.setAttribute("cy",this.point.y.toString())}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275cmp=Z({type:t,selectors:[["circle","f-connection-drag-handle-end",""]],hostVars:2,hostBindings:function(i,o){i&2&&Fe(o.class)},standalone:!1,features:[be([{provide:zh,useExisting:t}]),ve],attrs:Ek,decls:0,vars:0,template:function(i,o){},encapsulation:2,changeDetection:0})}return t})(),hh="f-selected";function yy(t){return class extends t{fId=U("");fSelectionDisabled=U(!1);unmarkAsSelected(){this.unmarkChildrenAsSelected?.(),this.hostElement.classList.remove(hh)}markAsSelected(){this.markChildrenAsSelected?.(),this.isSelected()||this.hostElement.classList.add(hh)}isSelected(){return this.hostElement.classList.contains(hh)}markChildrenAsSelected(){}unmarkChildrenAsSelected(){}constructor(...n){super(...n)}}}function aN(t){return class extends t{show(){this.hostElement.style.display="unset"}hide(){this.hostElement.style.display="none"}constructor(...n){super(...n)}}}var sN=yy(aN(class{hostElement;constructor(t){this.hostElement=t}})),cN=(()=>{class t extends sN{_fConnectionBuilder=u(gy);path="";line=Mo.initialize();fReassignableStart=U(!1);fDraggingDisabled=U(!1);fSelectionDisabled=U(!1);fDefs=Be.required("defs");fPath=Be.required(Ah);fDragHandleStart=Be(qh);fDragHandleEnd=Be.required(zh);fSelection=Be.required(Lh);fContents=eh(O0,{descendants:!0});fMarkers=eh(ul,{descendants:!0});fGradient=sa(z0);_fGradientRenderer=Be(Rh);fWaypoints=sa(N0);fInputSide=U(Ee.DEFAULT);_contentLayoutEngine=new Mh;_sourceSide=z.AUTO;fOutputSide=U(Ee.DEFAULT);_targetSide=z.AUTO;_penultimatePoint=L.initialize();_secondPoint=L.initialize();constructor(){super(u(Le).nativeElement)}initialize(){this.redraw(),this.isSelected()?this.markChildrenAsSelected():this.unmarkChildrenAsSelected()}isContains(e){return(this.hostElement.firstChild?.lastChild).contains(e)||Array.from(this.fContents()?.values()??[]).some(i=>i.hostElement?.contains(e))||this.fWaypoints()?.hostElement?.contains(e)}setLine({point1:e,point2:i}){this.line=Mo.initialize(e,i);let{path:o,points:r,penultimatePoint:a,secondPoint:s,candidates:c}=this._getPathResult(e,i);this.path=o,this._penultimatePoint=a||e,this._secondPoint=s||i,this.fWaypoints()?.candidates.set(c||[]),this._contentLayoutEngine.layout(r||[],this._contents())}_contents(){return Array.from(this.fContents()?.values()??[])}_getPathResult(e,i){return this._fConnectionBuilder.handle({type:this.fType,payload:{source:e,sourceSide:this._sourceSide,target:i,targetSide:this._targetSide,radius:this.fRadius,offset:this.fOffset,waypoints:this.fWaypoints()?.waypoints()||[]}})}markChildrenAsSelected(){this.fPath().select()}unmarkChildrenAsSelected(){this.fPath().deselect()}redraw(){this.fPath().setPath(this.path),this.fSelection().setPath(this.path),this.fDragHandleEnd().redraw(this._penultimatePoint,this.line.point2),this.fDragHandleStart()?.redraw(this._secondPoint,this.line.point1),this._fGradientRenderer()?.redraw(this.line)}getResolvedSides(){return{sourceSide:this._sourceSide,targetSide:this._targetSide}}_applyResolvedSidesToConnection(e,i){this._sourceSide=e,this._targetSide=i}static \u0275fac=function(i){return new(i||t)};static \u0275dir=ke({type:t,contentQueries:function(i,o,r){i&1&&Jp(r,o.fContents,O0,5)(r,o.fMarkers,ul,5)(r,o.fGradient,z0,5)(r,o.fWaypoints,N0,5),i&2&&gt(4)},viewQuery:function(i,o){i&1&&Ot(o.fDefs,Pk,5)(o.fPath,Ah,5)(o.fDragHandleStart,qh,5)(o.fDragHandleEnd,zh,5)(o.fSelection,Lh,5)(o._fGradientRenderer,Rh,5),i&2&&gt(6)},standalone:!1,features:[ve]})}return t})(),dN=(()=>{let t=class Za{_browser=u(He);_markerCache=new WeakMap;handle({connection:e}){let i=this._findConnectionMarkers(e),o=e.fDefs();if(!o)return!1;let r=lN(i),a=this._markerCache.get(e);if(a?.signature===r&&a.defsElement===o.nativeElement)return!1;let s=Cy("defs",this._browser);return i.forEach(c=>{vy(c.type).forEach(d=>{let f=uN(d,c,e.fId(),this._browser),p=c.markerElement.cloneNode(!0);p.setAttribute("height",`${c.height}`),p.setAttribute("width",`${c.width}`),p.removeAttribute("markerUnits"),p.style.display="unset",f.append(p),s.append(f)})}),o.nativeElement.innerHTML=s.innerHTML,this._markerCache.set(e,{signature:r,defsElement:o.nativeElement}),this._makeSafariCompatible(e),!0}_findConnectionMarkers(e){return Array.from(e.fMarkers()??[])}_makeSafariCompatible(e){e.fPath().hostElement.replaceWith(e.fPath().hostElement)}static \u0275fac=function(i){return new(i||Za)};static \u0275prov=C({token:Za,factory:Za.\u0275fac})};return t=S([I($i)],t),t})();function lN(t){return t.map(n=>[...vy(n.type),n.width,n.height,n.refX,n.refY,n.orient,n.markerUnits,n.markerElement.outerHTML].join("|")).join("||")}function uN(t,n,e,i){let o=Cy("marker",i);return o.setAttribute("id",Jt(t+"-"+e)),o.setAttribute("markerHeight",`${n.height}`),o.setAttribute("markerWidth",`${n.width}`),o.setAttribute("orient",`${n.orient}`),o.setAttribute("refX",`${n.refX}`),o.setAttribute("refY",`${n.refY}`),o.setAttribute("markerUnits",`${n.markerUnits}`),o}function vy(t){switch(t){case xe.START:return[xe.START];case xe.END:return[xe.END];case xe.SELECTED_START:return[xe.SELECTED_START];case xe.SELECTED_END:return[xe.SELECTED_END];case xe.START_ALL_STATES:return[xe.START,xe.SELECTED_START];case xe.END_ALL_STATES:return[xe.END,xe.SELECTED_END];default:return[]}}function Cy(t,n){return n.document.createElementNS("http://www.w3.org/2000/svg",t)}var kf=(()=>{class t{renderTicket=0;_connectedInPreviousRender=new Set;beginRender(){return++this.renderTicket}resetConnectedConnectors(){for(let e of this._connectedInPreviousRender)e.resetConnected();this._connectedInPreviousRender.clear()}trackConnectedConnectors(e,i){this._connectedInPreviousRender.add(e),this._connectedInPreviousRender.add(i)}static \u0275fac=function(i){return new(i||t)};static \u0275prov=C({token:t,factory:t.\u0275fac})}return t})(),fN=String.raw`
65
+ const EPSILON = 0.5;
66
+
67
+ addEventListener('message', (event) => {
68
+ const data = event?.data;
69
+ const requestId = data?.requestId;
70
+ const items = Array.isArray(data?.items) ? data.items : [];
71
+
72
+ try {
73
+ const results = items.map((item) => calculateItem(item));
74
+ postMessage({ requestId, results });
75
+ } catch (error) {
76
+ const message = error instanceof Error ? error.message : 'Connection worker failed.';
77
+ postMessage({ requestId, error: message });
78
+ }
79
+ });
80
+
81
+ function calculateItem(item) {
82
+ const sourceCenterX = item.sourceRect.x + item.sourceRect.width / 2;
83
+ const sourceCenterY = item.sourceRect.y + item.sourceRect.height / 2;
84
+ const targetCenterX = item.targetRect.x + item.targetRect.width / 2;
85
+ const targetCenterY = item.targetRect.y + item.targetRect.height / 2;
86
+
87
+ const sourceSide = resolveConnectableSide(
88
+ item.outputSide,
89
+ targetCenterX - sourceCenterX,
90
+ targetCenterY - sourceCenterY,
91
+ item.sourceConnectableSide,
92
+ );
93
+
94
+ const targetSide = resolveConnectableSide(
95
+ item.inputSide,
96
+ sourceCenterX - targetCenterX,
97
+ sourceCenterY - targetCenterY,
98
+ item.targetConnectableSide,
99
+ );
100
+
101
+ if (item.behavior === 'fixed_center') {
102
+ return {
103
+ originalIndex: item.originalIndex,
104
+ supported: true,
105
+ sourceSide,
106
+ targetSide,
107
+ line: {
108
+ point1: { x: sourceCenterX, y: sourceCenterY },
109
+ point2: { x: targetCenterX, y: targetCenterY },
110
+ },
111
+ };
112
+ }
113
+
114
+ if (item.sourceRotation || item.targetRotation) {
115
+ return { originalIndex: item.originalIndex, supported: false };
116
+ }
117
+
118
+ if (item.behavior !== 'fixed') {
119
+ if (item.behavior !== 'floating') {
120
+ return { originalIndex: item.originalIndex, supported: false };
121
+ }
122
+
123
+ if (hasRoundedCorners(item.sourceRect) || hasRoundedCorners(item.targetRect)) {
124
+ return { originalIndex: item.originalIndex, supported: false };
125
+ }
126
+
127
+ return {
128
+ originalIndex: item.originalIndex,
129
+ supported: true,
130
+ sourceSide,
131
+ targetSide,
132
+ line: buildFloatingLine(item.sourceRect, item.targetRect),
133
+ };
134
+ }
135
+
136
+ const line = buildFixedLine(item.sourceRect, item.targetRect, sourceSide, targetSide);
137
+ if (!line) {
138
+ return { originalIndex: item.originalIndex, supported: false };
139
+ }
140
+
141
+ return {
142
+ originalIndex: item.originalIndex,
143
+ supported: true,
144
+ sourceSide,
145
+ targetSide,
146
+ line,
147
+ };
148
+ }
149
+
150
+ function resolveConnectableSide(requestedSide, deltaX, deltaY, fallbackSide) {
151
+ if (requestedSide === 'default') {
152
+ return fallbackSide;
153
+ }
154
+
155
+ const absX = Math.abs(deltaX);
156
+ const absY = Math.abs(deltaY);
157
+ const nearZero = absX < EPSILON && absY < EPSILON;
158
+
159
+ if (nearZero) {
160
+ return fallbackSide;
161
+ }
162
+
163
+ const horizontalDominant = absX >= absY;
164
+
165
+ switch (requestedSide) {
166
+ case 'calculate':
167
+ return horizontalDominant ? (deltaX >= 0 ? 'right' : 'left') : deltaY >= 0 ? 'bottom' : 'top';
168
+
169
+ case 'calculate_horizontal':
170
+ if (absX < EPSILON) {
171
+ return fallbackSide;
172
+ }
173
+
174
+ return deltaX >= 0 ? 'right' : 'left';
175
+
176
+ case 'calculate_vertical':
177
+ if (absY < EPSILON) {
178
+ return fallbackSide;
179
+ }
180
+
181
+ return deltaY >= 0 ? 'bottom' : 'top';
182
+
183
+ case 'top':
184
+ case 'bottom':
185
+ case 'left':
186
+ case 'right':
187
+ return requestedSide;
188
+
189
+ default:
190
+ return fallbackSide;
191
+ }
192
+ }
193
+
194
+ function buildFixedLine(sourceRect, targetRect, sourceSide, targetSide) {
195
+ const sourceAnchor = sourceSide === 'auto' ? 'bottom' : sourceSide;
196
+ const targetAnchor = targetSide === 'auto' ? 'top' : targetSide;
197
+
198
+ const point1 = getSidePoint(sourceRect, sourceAnchor);
199
+ const point2 = getSidePoint(targetRect, targetAnchor);
200
+
201
+ if (!point1 || !point2) {
202
+ return null;
203
+ }
204
+
205
+ return { point1, point2 };
206
+ }
207
+
208
+ function buildFloatingLine(sourceRect, targetRect) {
209
+ const sourceCenter = getRectCenter(sourceRect);
210
+ const targetCenter = getRectCenter(targetRect);
211
+
212
+ return {
213
+ point1: getRectBorderIntersection(sourceRect, sourceCenter, targetCenter),
214
+ point2: getRectBorderIntersection(targetRect, targetCenter, sourceCenter),
215
+ };
216
+ }
217
+
218
+ function hasRoundedCorners(rect) {
219
+ return !!(rect.radius1 || rect.radius2 || rect.radius3 || rect.radius4);
220
+ }
221
+
222
+ function getRectCenter(rect) {
223
+ return {
224
+ x: rect.x + rect.width / 2,
225
+ y: rect.y + rect.height / 2,
226
+ };
227
+ }
228
+
229
+ function getRectBorderIntersection(rect, from, to) {
230
+ const halfWidth = rect.width / 2;
231
+ const halfHeight = rect.height / 2;
232
+ const center = getRectCenter(rect);
233
+
234
+ const dx = to.x - from.x;
235
+ const dy = to.y - from.y;
236
+
237
+ if (Math.abs(dx) < EPSILON && Math.abs(dy) < EPSILON) {
238
+ return center;
239
+ }
240
+
241
+ const scaleX = Math.abs(dx) < EPSILON ? Number.POSITIVE_INFINITY : halfWidth / Math.abs(dx);
242
+ const scaleY = Math.abs(dy) < EPSILON ? Number.POSITIVE_INFINITY : halfHeight / Math.abs(dy);
243
+ const scale = Math.min(scaleX, scaleY);
244
+
245
+ return {
246
+ x: center.x + dx * scale,
247
+ y: center.y + dy * scale,
248
+ };
249
+ }
250
+
251
+ function getSidePoint(rect, side) {
252
+ const centerX = rect.x + rect.width / 2;
253
+ const centerY = rect.y + rect.height / 2;
254
+
255
+ switch (side) {
256
+ case 'top':
257
+ return { x: centerX, y: rect.y };
258
+
259
+ case 'right':
260
+ return { x: rect.x + rect.width, y: centerY };
261
+
262
+ case 'bottom':
263
+ return { x: centerX, y: rect.y + rect.height };
264
+
265
+ case 'left':
266
+ return { x: rect.x, y: centerY };
267
+
268
+ default:
269
+ return null;
270
+ }
271
+ }
272
+ `.trim();function xy(t){return!!by(t)}function by(t){let n=t,e=n?.Blob,i=n?.Worker,o=n?.URL;return!e||!i||typeof o?.createObjectURL!="function"||typeof o.revokeObjectURL!="function"?null:{blobCtor:e,workerCtor:i,urlApi:o}}function pN(t){let n=new t.blobCtor([fN],{type:"text/javascript"});return t.urlApi.createObjectURL(n)}function wy(t,n){if(!t)return;let e=n??(typeof URL>"u"?null:URL);typeof e?.revokeObjectURL=="function"&&e.revokeObjectURL(t)}var ri=(()=>{class t{worker=null;workerUrl=null;nextRequestId=0;isDisabled=!1;pending=new Map;resetRuntime(e){this.pending.forEach(i=>i.reject(e)),this.pending.clear(),this.worker?.terminate(),this.worker=null,wy(this.workerUrl),this.workerUrl=null}dispose(){this.resetRuntime(new Error("Connection worker was destroyed."))}static \u0275fac=function(i){return new(i||t)};static \u0275prov=C({token:t,factory:t.\u0275fac})}return t})(),hl=class{connection;line;static fToken=Symbol("ApplyConnectionRenderRequest");constructor(n,e){this.connection=n,this.line=e}},hN=(()=>{let t=class Qa{_mediator=u(R);_renderCache=new WeakMap;handle({connection:e,line:i}){!this._mediator.execute(new $i(e))&&!this._shouldRender(e,i)||(e.setLine(i),e.initialize())}_shouldRender(e,i){let o=e.fPath().hostElement,r=this._createConnectionRenderSignature(e,i),a=this._renderCache.get(e);return a?.signature===r&&a.pathElement===o?!1:(this._renderCache.set(e,{signature:r,pathElement:o}),!0)}_createConnectionRenderSignature(e,i){let{sourceSide:o,targetSide:r}=e.getResolvedSides();return[e.fBehavior,e.fType,e.fRadius,e.fOffset,e.fReassignableStart(),this._serializeContents([...e.fContents()||[]]),o,r,this._serializePoint(i.point1),this._serializePoint(i.point2),this._serializeWaypoints(e.fWaypoints()?.waypoints()||[])].join("|")}_serializePoint(e){return`${e.x}:${e.y}`}_serializeWaypoints(e){return e.map(this._serializePoint).join(";")}_serializeContents(e){return e.map(i=>[i.position(),i.offset(),i.align()].join(":")).join(";")}static \u0275fac=function(i){return new(i||Qa)};static \u0275prov=C({token:Qa,factory:Qa.\u0275fac})};return t=S([I(hl)],t),t})(),ml=class{source;target;static fToken=Symbol("MarkConnectionConnectorsAsConnectedRequest");constructor(n,e){this.source=n,this.target=e}},mN=(()=>{let t=class Ja{_state=u(kf);handle({source:e,target:i}){e.setConnected(i),i.setConnected(e),this._state.trackConnectedConnectors(e,i)}static \u0275fac=function(i){return new(i||Ja)};static \u0275prov=C({token:Ja,factory:Ja.\u0275fac})};return t=S([I(ml)],t),t})(),Sn=class{element;cache;static fToken=Symbol("GetNormalizedConnectorRectRequest");constructor(n,e=!0){this.element=n,this.cache=e}},gN={enabled:!1},Vt=new he("F_CACHE_OPTIONS",{providedIn:"root",factory:()=>ae({},gN)});var gl=class{id;nodeId;kind;element;static fToken=Symbol("RegisterFCacheConnectorRequest");constructor(n,e,i,o){this.id=n,this.nodeId=e,this.kind=i,this.element=o}},Gt=(()=>{class t{nodeEntries=new Map;nodeIdByElement=new WeakMap;connectorEntries=new Map;connectorKeysByNodeId=new Map;connectorKeyByElement=new WeakMap;static \u0275fac=function(i){return new(i||t)};static \u0275prov=C({token:t,factory:t.\u0275fac})}return t})(),Vh=class{key;id;kind;nodeId;element;rect;constructor(n,e,i,o,r,a){this.key=n,this.id=e,this.kind=i,this.nodeId=o,this.element=r,this.rect=a}},Ro=class{static build(n,e){return`${n}:${e}`}},Gh=class{id;element;reference;rect;constructor(n,e,i,o){this.id=n,this.element=e,this.reference=i,this.rect=o}},Ki=class{nodeId;reason;static fToken=Symbol("InvalidateFCacheNodeRequest");constructor(n,e="manual"){this.nodeId=n,this.reason=e}},_N=(()=>{let t=class es{_store=u(Gt);_options=u(Vt);handle({nodeId:e,reason:i}){if(!this._options.enabled)return;let o=this._store.nodeEntries.get(e);if(!o)return;o.rect=void 0;let r=this._store.connectorKeysByNodeId.get(e);if(r?.size)for(let a of r){let s=this._store.connectorEntries.get(a);s&&(s.rect=void 0)}}static \u0275fac=function(i){return new(i||es)};static \u0275prov=C({token:es,factory:es.\u0275fac})};return t=S([I(Ki)],t),t})(),_l=class{id;element;reference;static fToken=Symbol("RegisterFCacheNodeRequest");constructor(n,e,i){this.id=n,this.element=e,this.reference=i}},yN=(()=>{let t=class ts{_store=u(Gt);_options=u(Vt);handle({id:e,element:i,reference:o}){if(!this._options.enabled)return;let r=new Gh(e,i,o);this._store.nodeEntries.set(e,r),this._store.nodeIdByElement.set(i,e),this._store.connectorKeysByNodeId.set(e,this._store.connectorKeysByNodeId.get(e)??new Set)}static \u0275fac=function(i){return new(i||ts)};static \u0275prov=C({token:ts,factory:ts.\u0275fac})};return t=S([I(_l)],t),t})(),yl=class{id;static fToken=Symbol("UnregisterFCacheNodeRequest");constructor(n){this.id=n}},vN=(()=>{let t=class ns{_store=u(Gt);_mediator=u(R);_options=u(Vt);handle({id:e}){if(!this._options.enabled)return;let i=this._store.nodeEntries.get(e);if(!i)return;this._store.nodeEntries.delete(e),this._store.nodeIdByElement.delete(i.element);let o=Array.from(this._store.connectorKeysByNodeId.get(e)??[]);for(let r of o){let a=this._store.connectorEntries.get(r);a&&this._mediator.execute(new Ao(a.id,a.kind))}this._store.connectorKeysByNodeId.delete(e)}static \u0275fac=function(i){return new(i||ns)};static \u0275prov=C({token:ns,factory:ns.\u0275fac})};return t=S([I(yl)],t),t})(),CN=(()=>{let t=class is{_store=u(Gt);_mediator=u(R);_options=u(Vt);handle({id:e,nodeId:i,kind:o,element:r}){if(!this._options.enabled)return;let a=Ro.build(e,o),s=this._store.connectorEntries.get(a);s&&(this._detachConnectorFromNode(s.key,s.nodeId),this._store.connectorKeyByElement.delete(s.element));let c=new Vh(a,e,o,i,r);this._store.connectorEntries.set(a,c),this._store.connectorKeyByElement.set(r,a);let d=this._store.connectorKeysByNodeId.get(i)??new Set;d.add(a),this._store.connectorKeysByNodeId.set(i,d),this._mediator.execute(new Ki(i,"connector-registered"))}_detachConnectorFromNode(e,i){let o=this._store.connectorKeysByNodeId.get(i);o&&(o.delete(e),o.size||this._store.connectorKeysByNodeId.delete(i))}static \u0275fac=function(i){return new(i||is)};static \u0275prov=C({token:is,factory:is.\u0275fac})};return t=S([I(gl)],t),t})(),Ao=class{connectorId;kind;static fToken=Symbol("UnregisterFCacheConnectorRequest");constructor(n,e){this.connectorId=n,this.kind=e}},xN=(()=>{let t=class os{_store=u(Gt);_mediator=u(R);_options=u(Vt);handle({connectorId:e,kind:i}){if(!this._options.enabled)return;let o=Ro.build(e,i),r=this._store.connectorEntries.get(o);r&&(this._store.connectorEntries.delete(o),this._store.connectorKeyByElement.delete(r.element),this._detachConnectorFromNode(o,r.nodeId),this._store.nodeEntries.has(r.nodeId)&&this._mediator.execute(new Ki(r.nodeId,"connector-unregistered")))}_detachConnectorFromNode(e,i){let o=this._store.connectorKeysByNodeId.get(i);o&&(o.delete(e),o.size||this._store.connectorKeysByNodeId.delete(i))}static \u0275fac=function(i){return new(i||os)};static \u0275prov=C({token:os,factory:os.\u0275fac})};return t=S([I(Ao)],t),t})(),Yi=class{element;static fToken=Symbol("GetCachedFCacheRectRequest");constructor(n){this.element=n}},bN=(()=>{let t=class rs{_store=u(Gt);_options=u(Vt);handle({element:e}){if(!this._options.enabled)return;let i=this._store.nodeIdByElement.get(e);if(i){let r=this._store.nodeEntries.get(i)?.rect;if(r)return r}let o=this._store.connectorKeyByElement.get(e);if(o)return this._store.connectorEntries.get(o)?.rect??void 0}static \u0275fac=function(i){return new(i||rs)};static \u0275prov=C({token:rs,factory:rs.\u0275fac})};return t=S([I(Yi)],t),t})(),Qn=class{connectorId;kind;rect;static fToken=Symbol("SetFCacheConnectorRectRequest");constructor(n,e,i){this.connectorId=n,this.kind=e,this.rect=i}},wN=(()=>{let t=class as{_store=u(Gt);_options=u(Vt);handle({connectorId:e,kind:i,rect:o}){if(!this._options.enabled)return;let r=Ro.build(e,i),a=this._store.connectorEntries.get(r);a&&(a.rect=Ge.fromRoundedRect(o))}static \u0275fac=function(i){return new(i||as)};static \u0275prov=C({token:as,factory:as.\u0275fac})};return t=S([I(Qn)],t),t})(),Jn=class{nodeId;rect;static fToken=Symbol("SetFCacheNodeRectRequest");constructor(n,e){this.nodeId=n,this.rect=e}},SN=(()=>{let t=class ss{_store=u(Gt);_options=u(Vt);handle({nodeId:e,rect:i}){if(!this._options.enabled)return;let o=this._store.nodeEntries.get(e);if(!o)return;let r=o.rect;o.rect=j.initialize(i.x,i.y,i.width,i.height),r&&this._updateConnectorRectsByNodeRect(e,r,o.rect)}_updateConnectorRectsByNodeRect(e,i,o){let r=this._store.connectorKeysByNodeId.get(e);if(!r?.size)return;let a=o.x-i.x,s=o.y-i.y,c=i.width!==0,d=i.height!==0,f=c?o.width/i.width:1,p=d?o.height/i.height:1;for(let v of r){let x=this._store.connectorEntries.get(v);if(!x?.rect)continue;let w=x.rect,T=w.gravityCenter,E=c?o.x+(T.x-i.x)*f:T.x+a,O=d?o.y+(T.y-i.y)*p:T.y+s;x.rect=new Ge(E-w.width/2,O-w.height/2,w.width,w.height,w.radius1,w.radius2,w.radius3,w.radius4)}}static \u0275fac=function(i){return new(i||ss)};static \u0275prov=C({token:ss,factory:ss.\u0275fac})};return t=S([I(Jn)],t),t})(),Fo=class{element;rect;static fToken=Symbol("UpdateFCacheRectByElementRequest");constructor(n,e){this.element=n,this.rect=e}},IN=(()=>{let t=class cs{_store=u(Gt);_options=u(Vt);handle({element:e,rect:i}){if(!this._options.enabled)return;let o=this._store.nodeIdByElement.get(e);if(o){let s=this._store.nodeEntries.get(o);s&&(s.rect=i);return}let r=this._store.connectorKeyByElement.get(e);if(!r)return;let a=this._store.connectorEntries.get(r);a&&(a.rect=i)}static \u0275fac=function(i){return new(i||cs)};static \u0275prov=C({token:cs,factory:cs.\u0275fac})};return t=S([I(Fo)],t),t})(),TN=[Gt,yN,vN,_N,CN,xN,bN,SN,wN,IN];function ao(t,n,e){return n?Q.fromPoint(t).elementTransform(n).sub(e.scaledPosition).sub(e.position).div(e.scale):Q.fromPoint(t)}function Sy(){return{min:{x:-1/0,y:-1/0},max:{x:1/0,y:1/0}}}function Xi(t){return t?`${t}`:void 0}var EN=(()=>{let t=class ds{_store=u(N);_mediator=u(R);_browser=u(He);get _transform(){return this._store.transform}handle({element:e,cache:i}){let o=this._mediator.execute(new Yi(e));if(o&&i)return o;let r=this._getElementRoundedRect(e),a=this._normalizePosition(r),s=this._unscaleSize(r),c=this._getUnscaledRect(a,s,r),d=this._getOffsetSize(e,s),f=Ge.fromCenter(c,d.width,d.height);return this._mediator.execute(new Fo(e,f)),f}_getElementRoundedRect(e){return this._getRoundedRect(j.fromElement(e),e,this._getComputedStyle(e))}_getRoundedRect(e,i,o){let[r,a,s,c]=this._normalizeCircularBorderRadii(e.width,e.height,[this._getSystemRadius(o.borderTopLeftRadius,i,o.fontSize),this._getSystemRadius(o.borderTopRightRadius,i,o.fontSize),this._getSystemRadius(o.borderBottomRightRadius,i,o.fontSize),this._getSystemRadius(o.borderBottomLeftRadius,i,o.fontSize)]);return new Ge(e.x,e.y,e.width,e.height,r,a,s,c)}_getComputedStyle(e){return this._browser.window.getComputedStyle(e)}_toPixels(e,i,o){return this._browser.toPixels(e,i.clientWidth,i.clientHeight,o)||0}_getSystemRadius(e,i,o){return this._toPixels(e,i,o)*this._transform.scale}_normalizeCircularBorderRadii(e,i,o){let[r,a,s,c]=o.map(f=>Math.max(0,f)),d=Math.min(1,this._getRadiusScaleFactor(e,r+a),this._getRadiusScaleFactor(i,a+s),this._getRadiusScaleFactor(e,s+c),this._getRadiusScaleFactor(i,c+r));return[r*d,a*d,s*d,c*d]}_getRadiusScaleFactor(e,i){return i<=0?1:e<=0?0:e/i}_normalizePosition(e){return ao(e,this._store.flowHost,this._transform)}_unscaleSize(e){return at.initialize(e.width/this._transform.scale,e.height/this._transform.scale)}_getUnscaledRect(e,i,o){return new Ge(e.x,e.y,i.width,i.height,this._unscaleRadius(o.radius1),this._unscaleRadius(o.radius2),this._unscaleRadius(o.radius3),this._unscaleRadius(o.radius4))}_unscaleRadius(e){return e/this._transform.scale}_getOffsetSize(e,i){return at.offsetFromElement(e)||i}static \u0275fac=function(i){return new(i||ds)};static \u0275prov=C({token:ds,factory:ds.\u0275fac})};return t=S([I(Sn)],t),t})(),vl=class{connector;cache;static fToken=Symbol("ResolveConnectionEndpointRectRequest");constructor(n,e){this.connector=n,this.cache=e}},PN=(()=>{let t=class ls{_mediator=u(R);handle({connector:e,cache:i}){let o=this._buildCacheKey(e),r=i.get(o)??this._calculateRect(e);return i.set(o,r),r}_buildCacheKey(e){return`${e.kind}::${e.fId()}`}_calculateRect(e){return this._mediator.execute(new Sn(e.hostElement))}static \u0275fac=function(i){return new(i||ls)};static \u0275prov=C({token:ls,factory:ls.\u0275fac})};return t=S([I(vl)],t),t})(),Cl=class{connection;static fToken=Symbol("ResolveConnectionEndpointsRequest");constructor(n){this.connection=n}},MN=(()=>{let t=class us{_store=u(N);handle({connection:e}){let i=this._store.outputs.get(e.fOutputId()),o=this._store.inputs.get(e.fInputId());return!i||!o?null:{source:i,target:o}}static \u0275fac=function(i){return new(i||us)};static \u0275prov=C({token:us,factory:us.\u0275fac})};return t=S([I(Cl)],t),t})(),Lo=class{connection;cache;static fToken=Symbol("ResolveConnectionGeometryRequest");constructor(n,e){this.connection=n,this.cache=e}},DN=(()=>{let t=class fs{_mediator=u(R);handle({connection:e,cache:i}){let o=this._resolveConnectionEndpoints(e);return o?Yt(ae({},o),{sourceRect:this._resolveEndpointRect(o.source,i),targetRect:this._resolveEndpointRect(o.target,i)}):null}_resolveConnectionEndpoints(e){return this._mediator.execute(new Cl(e))}_resolveEndpointRect(e,i){return this._mediator.execute(new vl(e,i))}static \u0275fac=function(i){return new(i||fs)};static \u0275prov=C({token:fs,factory:fs.\u0275fac})};return t=S([I(Lo)],t),t})(),ze=class{element;static fToken=Symbol("GetNormalizedElementRectRequest");constructor(n){this.element=n}},kN=(()=>{let t=class ps{_store=u(N);_mediator=u(R);get _transform(){return this._store.transform}handle({element:e}){let i=this._mediator.execute(new Yi(e));if(i)return i;let o=j.fromElement(e),r=this._normalizePosition(o),a=this._unscaleSize(o),s=this._getUnscaledRect(r,a),c=this._getOffsetSize(e,a),d=this._fromCenter(s,c.width,c.height);return this._mediator.execute(new Fo(e,d)),d}_fromCenter(e,i,o){return j.initialize(e.gravityCenter.x-i/2,e.gravityCenter.y-o/2,i,o)}_normalizePosition(e){return ao(e,this._store.flowHost,this._transform)}_unscaleSize(e){return at.initialize(e.width/this._transform.scale,e.height/this._transform.scale)}_getUnscaledRect(e,i){return new Ge(e.x,e.y,i.width,i.height)}_getOffsetSize(e,i){return at.offsetFromElement(e)||i}static \u0275fac=function(i){return new(i||ps)};static \u0275prov=C({token:ps,factory:ps.\u0275fac})};return t=S([I(ze)],t),t})(),tn=class{connector;static fToken=Symbol("ResolveConnectionEndpointRotationContextRequest");constructor(n){this.connector=n}},ON=(()=>{let t=class hs{_store=u(N);_mediator=u(R);handle({connector:e}){if(!e)return;let i=this._store.nodes.get(e.fNodeId);if(!i||!i._rotate)return;let o=this._mediator.execute(new ze(i.hostElement));return{rotationDeg:i._rotate,pivot:o.gravityCenter}}static \u0275fac=function(i){return new(i||hs)};static \u0275prov=C({token:hs,factory:hs.\u0275fac})};return t=S([I(tn)],t),t})(),xl=class{connection;geometry;static fToken=Symbol("BuildConnectionLineRequest");constructor(n,e){this.connection=n,this.geometry=e}},NN=(()=>{let t=class ms{_mediator=u(R);_connectionBehaviour=u(ro);handle({connection:e,geometry:i}){return this._connectionBehaviour.handle(new Rt(i.sourceRect,i.targetRect,e,i.source.fConnectableSide,i.target.fConnectableSide,this._resolveRotationContext(i.source),this._resolveRotationContext(i.target)))}_resolveRotationContext(e){return this._mediator.execute(new tn(e))}static \u0275fac=function(i){return new(i||ms)};static \u0275prov=C({token:ms,factory:ms.\u0275fac})};return t=S([I(xl)],t),t})(),Bo=class{connection;source;target;line;static fToken=Symbol("RenderConnectionWithLineRequest");constructor(n,e,i,o){this.connection=n,this.source=e,this.target=i,this.line=o}},RN=(()=>{let t=class gs{_mediator=u(R);handle({connection:e,source:i,target:o,line:r}){this._mediator.execute(new ml(i,o)),this._mediator.execute(new hl(e,r))}static \u0275fac=function(i){return new(i||gs)};static \u0275prov=C({token:gs,factory:gs.\u0275fac})};return t=S([I(Bo)],t),t})(),zo=class{connection;geometry;static fToken=Symbol("RenderConnectionFromGeometryRequest");constructor(n,e){this.connection=n,this.geometry=e}},AN=(()=>{let t=class _s{_mediator=u(R);handle({connection:e,geometry:i}){let o=this._mediator.execute(new xl(e,i));this._mediator.execute(new Bo(e,i.source,i.target,o))}static \u0275fac=function(i){return new(i||_s)};static \u0275prov=C({token:_s,factory:_s.\u0275fac})};return t=S([I(zo)],t),t})(),bl=class{connection;cache;static fToken=Symbol("RenderConnectionRequest");constructor(n,e){this.connection=n,this.cache=e}},FN=(()=>{let t=class ys{_mediator=u(R);handle({connection:e,cache:i}){let o=this._mediator.execute(new Lo(e,i));o&&this._mediator.execute(new zo(e,o))}static \u0275fac=function(i){return new(i||ys)};static \u0275prov=C({token:ys,factory:ys.\u0275fac})};return t=S([I(bl)],t),t})(),ei=class{session;static fToken=Symbol("IsConnectionRedrawCurrentRequest");constructor(n){this.session=n}},LN=(()=>{let t=class vs{_store=u(N);_state=u(kf);handle({session:e}){return e.renderTicket===this._state.renderTicket&&e.nodesRevision===this._store.nodesRevision}static \u0275fac=function(i){return new(i||vs)};static \u0275prov=C({token:vs,factory:vs.\u0275fac})};return t=S([I(ei)],t),t})(),qo=class{session;static fToken=Symbol("CompleteConnectionRedrawRequest");constructor(n){this.session=n}},BN=(()=>{let t=class Cs{_mediator=u(R);_store=u(N);handle({session:e}){this._mediator.execute(new ei(e))&&this._store.completeConnectionsRender(e.connectionsRevision,e.nodesRevision)}static \u0275fac=function(i){return new(i||Cs)};static \u0275prov=C({token:Cs,factory:Cs.\u0275fac})};return t=S([I(qo)],t),t})(),wl=class{batchItem;result;static fToken=Symbol("ApplyConnectionWorkerResultRequest");constructor(n,e){this.batchItem=n,this.result=e}},zN=(()=>{let t=class xs{_mediator=u(R);handle({batchItem:e,result:i}){if(e){if(!this._isSupportedWorkerResult(i)){this._fallbackToMainThread(e);return}try{e.connection._applyResolvedSidesToConnection(i.sourceSide,i.targetSide),this._mediator.execute(new Bo(e.connection,e.geometry.source,e.geometry.target,i.line))}catch{this._fallbackToMainThread(e)}}}_fallbackToMainThread(e){this._mediator.execute(new zo(e.connection,e.geometry))}_isSupportedWorkerResult(e){return!!(e?.supported&&e.sourceSide&&e.targetSide&&e.line)}static \u0275fac=function(i){return new(i||xs)};static \u0275prov=C({token:xs,factory:xs.\u0275fac})};return t=S([I(wl)],t),t})(),Cn=class{connections;cache;startIndex;session;batchItems;workerResults;static fToken=Symbol("RunConnectionRedrawSliceRequest");constructor(n,e,i,o,r,a){this.connections=n,this.cache=e,this.startIndex=i,this.session=o,this.batchItems=r,this.workerResults=a}},qN=500,VN=6,GN=(()=>{let t=class bs{_mediator=u(R);_browser=u(He);handle({connections:e,cache:i,startIndex:o,session:r,batchItems:a,workerResults:s}){if(!this._isCurrent(r))return;let c=this._now(),d=o,f=0;for(;d<e.length&&f<qN&&this._isWithinSliceBudget(c);){let p=e[d];if(a?this._mediator.execute(new wl(a[d]??null,s?.[d])):this._mediator.execute(new bl(p,i)),d++,f++,!this._isCurrent(r))return}if(d>=e.length){this._mediator.execute(new qo(r));return}this._requestAnimationFrame(()=>this._mediator.execute(new Cn(e,i,d,r,a,s)))}_isCurrent(e){return this._mediator.execute(new ei(e))}_requestAnimationFrame(e){let i=this._browser.document.defaultView;if(!i){e();return}i.requestAnimationFrame(e)}_now(){let e=this._browser.document.defaultView?.performance;return e?e.now():Date.now()}_isWithinSliceBudget(e){return this._browser.isBrowser()?this._now()-e<VN:!0}static \u0275fac=function(i){return new(i||bs)};static \u0275prov=C({token:bs,factory:bs.\u0275fac})};return t=S([I(Cn)],t),t})(),Sl=class{static fToken=Symbol("StartConnectionRedrawRequest")},HN=(()=>{let t=class ws{_store=u(N);_state=u(kf);handle(e){return this._state.resetConnectedConnectors(),{renderTicket:this._state.beginRender(),connectionsRevision:this._store.connectionsRevision,nodesRevision:this._store.nodesRevision}}static \u0275fac=function(i){return new(i||ws)};static \u0275prov=C({token:ws,factory:ws.\u0275fac})};return t=S([I(Sl)],t),t})(),Vo=class{static fToken=Symbol("RedrawConnectionsRequest")},Il=class{connectionCount;static fToken=Symbol("ShouldUseConnectionWorkerRequest");constructor(n){this.connectionCount=n}},Go=class{static fToken=Symbol("IsConnectionWorkerEnabledRequest")},jN=(()=>{let t=class Ss{_browser=u(He);_state=u(ri);handle(e){if(this._state.isDisabled||!this._isWorkerAvailable())return!1;let i=this._browser.document.defaultView;return xy(i)}_isWorkerAvailable(){return this._browser.isBrowser()}static \u0275fac=function(i){return new(i||Ss)};static \u0275prov=C({token:Ss,factory:Ss.\u0275fac})};return t=S([I(Go)],t),t})(),UN=(()=>{let t=class Is{_mediator=u(R);handle({connectionCount:e}){return e>0&&this._mediator.execute(new Go)}static \u0275fac=function(i){return new(i||Is)};static \u0275prov=C({token:Is,factory:Is.\u0275fac})};return t=S([I(Il)],t),t})(),Tl=class{connection;geometry;originalIndex;static fToken=Symbol("BuildConnectionWorkerPayloadItemRequest");constructor(n,e,i){this.connection=n,this.geometry=e,this.originalIndex=i}},WN=(()=>{let t=class Ts{_store=u(N);handle({connection:e,geometry:i,originalIndex:o}){let{source:r,target:a,sourceRect:s,targetRect:c}=i;return{originalIndex:o,behavior:e.fBehavior,outputSide:e.fOutputSide(),inputSide:e.fInputSide(),sourceConnectableSide:r.fConnectableSide,targetConnectableSide:a.fConnectableSide,sourceRotation:this._store.nodes.get(r.fNodeId)?._rotate||0,targetRotation:this._store.nodes.get(a.fNodeId)?._rotate||0,sourceRect:{x:s.x,y:s.y,width:s.width,height:s.height,radius1:s.radius1,radius2:s.radius2,radius3:s.radius3,radius4:s.radius4},targetRect:{x:c.x,y:c.y,width:c.width,height:c.height,radius1:c.radius1,radius2:c.radius2,radius3:c.radius3,radius4:c.radius4}}}static \u0275fac=function(i){return new(i||Ts)};static \u0275prov=C({token:Ts,factory:Ts.\u0275fac})};return t=S([I(Tl)],t),t})(),El=class{connections;cache;static fToken=Symbol("BuildConnectionWorkerBatchRequest");constructor(n,e){this.connections=n,this.cache=e}},$N=(()=>{let t=class Es{_mediator=u(R);handle({connections:e,cache:i}){let o=new Array(e.length),r=[];for(let a=0;a<e.length;a++){let s=this._buildBatchItem(e[a],i,a);o[a]=s,s&&r.push(s.payload)}return{items:o,payload:r}}_buildBatchItem(e,i,o){let r=this._mediator.execute(new Lo(e,i));return r?{connection:e,geometry:r,payload:this._mediator.execute(new Tl(e,r,o))}:null}static \u0275fac=function(i){return new(i||Es)};static \u0275prov=C({token:Es,factory:Es.\u0275fac})};return t=S([I(El)],t),t})(),Pl=class{error;static fToken=Symbol("DisableConnectionWorkerRequest");constructor(n){this.error=n}},Ho=class{error;static fToken=Symbol("ResetConnectionWorkerRuntimeRequest");constructor(n){this.error=n}},KN=(()=>{let t=class Ps{_state=u(ri);handle({error:e}){this._state.resetRuntime(e)}static \u0275fac=function(i){return new(i||Ps)};static \u0275prov=C({token:Ps,factory:Ps.\u0275fac})};return t=S([I(Ho)],t),t})(),YN=(()=>{let t=class Ms{_state=u(ri);_mediator=u(R);handle({error:e}){this._state.isDisabled=!0,this._mediator.execute(new Ho(e))}static \u0275fac=function(i){return new(i||Ms)};static \u0275prov=C({token:Ms,factory:Ms.\u0275fac})};return t=S([I(Pl)],t),t})(),Ml=class{message;static fToken=Symbol("HandleConnectionWorkerMessageRequest");constructor(n){this.message=n}},XN=(()=>{let t=class Ds{_state=u(ri);handle({message:e}){if(!e||typeof e.requestId!="number")return;let i=this._state.pending.get(e.requestId);if(i){if(this._state.pending.delete(e.requestId),e.error){i.reject(new Error(e.error));return}i.resolve(e.results??[])}}static \u0275fac=function(i){return new(i||Ds)};static \u0275prov=C({token:Ds,factory:Ds.\u0275fac})};return t=S([I(Ml)],t),t})(),Dl=class{static fToken=Symbol("EnsureConnectionWorkerRequest")},ZN=(()=>{let t=class ks{_browser=u(He);_state=u(ri);_mediator=u(R);handle(e){if(this._state.worker)return this._state.worker;let i=this._browser.document.defaultView;if(!xy(i))return null;let o=by(i);if(!o)return null;let r=pN(o);try{let a=new o.workerCtor(r,{name:"f-flow-connection-worker"});return a.onmessage=s=>{this._mediator.execute(new Ml(s.data))},a.onerror=()=>{this._resetWorkerAfterRuntimeError(new Error("Connection worker runtime error."))},a.onmessageerror=()=>{this._resetWorkerAfterRuntimeError(new Error("Connection worker message deserialization error."))},this._state.workerUrl=r,this._state.worker=a,a}catch(a){return wy(r,o.urlApi),this._disableWorker(a instanceof Error?a:new Error("Connection worker initialization failed.")),null}}_disableWorker(e){this._mediator.execute(new Pl(e))}_resetWorkerAfterRuntimeError(e){this._mediator.execute(new Ho(e))}static \u0275fac=function(i){return new(i||ks)};static \u0275prov=C({token:ks,factory:ks.\u0275fac})};return t=S([I(Dl)],t),t})(),kl=class{payload;static fToken=Symbol("RunConnectionWorkerRequest");constructor(n){this.payload=n}},QN=(()=>{let t=class Os{_state=u(ri);_mediator=u(R);handle({payload:e}){if(!e.length)return Promise.resolve([]);if(!this._mediator.execute(new Go))return Promise.reject(new Error("Connection worker is disabled."));this._interruptPendingRequests();let i=this._mediator.execute(new Dl);if(!i)return Promise.reject(new Error("Unable to initialize connection worker."));let o=++this._state.nextRequestId;return new Promise((r,a)=>{this._state.pending.set(o,{resolve:r,reject:a});try{i.postMessage({requestId:o,items:e})}catch(s){this._state.pending.delete(o),a(s instanceof Error?s:new Error("Unknown error while posting message to connection worker."))}})}_interruptPendingRequests(){if(!this._state.pending.size)return;let e=new Error("Connection worker request was superseded by a newer redraw.");this._state.pending.forEach(i=>i.reject(e)),this._state.pending.clear()}static \u0275fac=function(i){return new(i||Os)};static \u0275prov=C({token:Os,factory:Os.\u0275fac})};return t=S([I(kl)],t),t})(),Ol=class{batch;static fToken=Symbol("RunConnectionWorkerBatchRequest");constructor(n){this.batch=n}},JN=(()=>{let t=class Ns{_mediator=u(R);handle({batch:e}){return e.payload.length?this._mediator.execute(new kl(e.payload)):Promise.resolve([])}static \u0275fac=function(i){return new(i||Ns)};static \u0275prov=C({token:Ns,factory:Ns.\u0275fac})};return t=S([I(Ol)],t),t})(),Nl=class{connections;cache;session;static fToken=Symbol("StartConnectionWorkerRedrawRequest");constructor(n,e,i){this.connections=n,this.cache=e,this.session=i}},eR=(()=>{let t=class Rs{_mediator=u(R);handle({connections:e,cache:i,session:o}){let r=this._mediator.execute(new El(e,i));if(!r.payload.length){this._mediator.execute(new Cn(e,i,0,o,r.items));return}this._mediator.execute(new Ol(r)).then(a=>{this._mediator.execute(new ei(o))&&this._mediator.execute(new Cn(e,i,0,o,r.items,this._alignWorkerResults(a,e.length)))}).catch(()=>{this._mediator.execute(new ei(o))&&this._mediator.execute(new Cn(e,i,0,o,r.items))})}_alignWorkerResults(e,i){let o=new Array(i);for(let r of e){let a=r.originalIndex;a<0||a>=i||(o[a]=r)}return o}static \u0275fac=function(i){return new(i||Rs)};static \u0275prov=C({token:Rs,factory:Rs.\u0275fac})};return t=S([I(Nl)],t),t})(),tR=(()=>{let t=class As{_mediator=u(R);_store=u(N);handle(e){let i=this._mediator.execute(new Sl);this._createMarkersForCreate(),this._createMarkersForSnap();let o=[...this._store.connections.getAll()],r=new Map;if(!o.length){this._mediator.execute(new qo(i));return}this._shouldUseConnectionWorker(o.length)?this._redrawUsingWorker(o,r,i):this._redrawWithoutWorker(o,r,i)}_createMarkersForCreate(){let e=this._store.connections.getForCreate();e&&this._mediator.execute(new $i(e))}_createMarkersForSnap(){let e=this._store.connections.getForSnap();e&&this._mediator.execute(new $i(e))}_shouldUseConnectionWorker(e){return this._mediator.execute(new Il(e))}_redrawUsingWorker(e,i,o){this._mediator.execute(new Nl(e,i,o))}_redrawWithoutWorker(e,i,o){this._mediator.execute(new Cn(e,i,0,o))}static \u0275fac=function(i){return new(i||As)};static \u0275prov=C({token:As,factory:As.\u0275fac})};return t=S([I(Vo)],t),t})(),Hh=class{static fToken=Symbol("RemoveConnectionForCreateFromStoreRequest")},nR=(()=>{let t=class Fs{_store=u(N);handle(e){this._store.connections.removeInstanceForCreate()}static \u0275fac=function(i){return new(i||Fs)};static \u0275prov=C({token:Fs,factory:Fs.\u0275fac})};return t=S([I(Hh)],t),t})(),Rl=class{connection;static fToken=Symbol("RemoveConnectionFromStoreRequest");constructor(n){this.connection=n}},iR=(()=>{let t=class Ls{_store=u(N);handle({connection:e}){this._store.connections.remove(e),this._store.emitConnectionChanges()}static \u0275fac=function(i){return new(i||Ls)};static \u0275prov=C({token:Ls,factory:Ls.\u0275fac})};return t=S([I(Rl)],t),t})(),Al=class{instance;static fToken=Symbol("RemoveConnectionMarkerFromStoreRequest");constructor(n){this.instance=n}},oR=(()=>{let t=class Bs{_store=u(N);handle({instance:e}){this._store.connectionMarkers.remove(e),this._store.emitNodeChanges()}static \u0275fac=function(i){return new(i||Bs)};static \u0275prov=C({token:Bs,factory:Bs.\u0275fac})};return t=S([I(Al)],t),t})(),jh=class{waypointIndex;connectionId;static fToken=Symbol("RemoveConnectionWaypointRequest");constructor(n,e){this.waypointIndex=n,this.connectionId=e}},Fl=class{static fToken=Symbol("EmitEndDragSequenceEventRequest")},rR=(()=>{let t=class zs{_store=u(N);_dragSession=u(J);handle(e){this._store.flowHost.classList.remove($e.DRAG_AND_DROP.DRAGGING),this._dragSession.reset(),this._emitEvent()}_emitEvent(){this._store.fDraggable?.fDragEnded?.emit()}static \u0275fac=function(i){return new(i||zs)};static \u0275prov=C({token:zs,factory:zs.\u0275fac})};return t=S([I(Fl)],t),t})(),Ll=class{static fToken=Symbol("EmitStartDragSequenceEventRequest")},aR=(()=>{let t=class qs{_mediator=u(R);_store=u(N);_dragContext=u(J);handle(e){this._dragContext.draggableItems.length>0&&(this._store.flowHost.classList.add($e.DRAG_AND_DROP.DRAGGING),this._mediator.execute(new jo),this._emitDragStarted())}_emitDragStarted(){let e=this._dragContext.draggableItems[0].getEvent();this._store.fDraggable?.fDragStarted?.emit(new Hl(e.kind,e.data?ae({},e.data):void 0,e.fEventType))}static \u0275fac=function(i){return new(i||qs)};static \u0275prov=C({token:qs,factory:qs.\u0275fac})};return t=S([I(Ll)],t),t})(),jo=class{static fToken=Symbol("EmitSelectionChangeEventRequest")},ti=class{_event;_target;get originalEvent(){return this._event}get targetElement(){return this._target||this.originalEvent.target}get touchEvent(){return this._event}get touches(){return this.touchEvent.touches}constructor(n,e){this._event=n,this._target=e}setTarget(n){this._target=n}preventDefault(){this.originalEvent.preventDefault()}get isEventInLockedContext(){return this.targetElement.closest("[fLockedContext]")!==null}},Bl=class extends ti{constructor(n,e){super(n,e)}isMouseLeftButton(){return this.originalEvent.button===0}isMouseRightButton(){return this.originalEvent.buttons===2}getPosition(){return{x:this.originalEvent.clientX,y:this.originalEvent.clientY}}},Uh=class extends ti{constructor(n,e){super(n,e)}isMouseLeftButton(){let n=this.originalEvent;return n.pointerType==="mouse"&&n.button===0||n.pointerType==="touch"}isMouseRightButton(){let n=this.originalEvent;return n.pointerType==="mouse"&&n.button===2||n.pointerType==="touch"}getPosition(){let n=this.originalEvent;return{x:n.clientX,y:n.clientY}}getPointerType(){return this.originalEvent.pointerType}getPointerId(){return this.originalEvent.pointerId}},Wh=class extends ti{constructor(n){super(n)}isMouseLeftButton(){return!0}isMouseRightButton(){return!1}getPosition(){let n=this.originalEvent.touches;return{x:n[0].clientX,y:n[0].clientY}}},$h=class extends ti{constructor(n,e){super(n,e)}isMouseLeftButton(){return!0}isMouseRightButton(){return!1}getPosition(){let n=this.originalEvent.targetTouches[0];return{x:n.clientX,y:n.clientY}}},we=(()=>{class t{static _isSupported;static _isPassiveEventListenerSupported(){if(t._isSupported==null&&typeof window<"u")try{window.addEventListener("test",t.emptyListener,{passive:!0}),t._isSupported=!0}catch{t._isSupported=!1}return t._isSupported}static _passiveEventListener(e){return t._isPassiveEventListenerSupported()?e:!!e.capture}static activeListener(){return t._passiveEventListener({passive:!1})}static passiveListener(){return t._passiveEventListener({passive:!0})}static activeCaptureListener(){return t._passiveEventListener({passive:!1,capture:!0})}static emptyListener(){return()=>{}}}return t})(),sR=800,Kh=class{_document=u(Qr);_ngZone=u(Vn,{optional:!0});_mouseListeners=we.emptyListener();_touchListeners=we.emptyListener();_startListeners=we.emptyListener();isSyntheticEvent(n){return!!this._lastTouchEventTime&&this._lastTouchEventTime+sR>Date.now()}_lastTouchEventTime=0;isDragStarted=!1;_dragStartThreshold=3;_dragStartDelay=0;_dragStartTime=0;_dragStartPosition={x:0,y:0};_moveHandler=this._checkDragSequenceToStart;_pointerDownElement=null;_onMouseDown=n=>{let e=this.isSyntheticEvent(n),i=dR(n),o=new Bl(n);if(e||i||this.disabled||this.isDragStarted)return;this._pointerDownElement=o.targetElement,this.onPointerDown(o)&&(this._dragStartTime=Date.now(),this._dragStartPosition=o.getPosition(),this._ngZone?.runOutsideAngular(()=>{this._listen("selectstart",this._onSelectStart,we.activeListener()),this._listen("mousemove",this._onMouseMove),this._listen("pointerup",this._onPointerUpEvent),this._listen("pointercancel",this._onPointerUpEvent,we.activeCaptureListener()),this._listen("contextmenu",this._preventDuringDrag,we.activeCaptureListener())}),this._mouseListeners=()=>{this._unlisten("selectstart",this._onSelectStart,we.activeListener()),this._unlisten("mousemove",this._onMouseMove),this._unlisten("pointerup",this._onPointerUpEvent),this._unlisten("pointercancel",this._onPointerUpEvent,we.activeCaptureListener()),this._unlisten("contextmenu",this._preventDuringDrag,we.activeCaptureListener())})};_onTouchDown=n=>{let e=lR(n),i=new Wh(n);if(e||this.disabled||this.isDragStarted)return;this._pointerDownElement=i.targetElement,this.onPointerDown(i)&&(this._dragStartTime=Date.now(),this._dragStartPosition=i.getPosition(),this._ngZone?.runOutsideAngular(()=>{this._listen("selectstart",this._onSelectStart,we.activeListener()),this._listen("touchmove",this._onTouchMove),this._listen("pointerup",this._onPointerUpEvent),this._listen("pointercancel",this._onPointerUpEvent,we.activeCaptureListener()),this._listen("contextmenu",this._preventDuringDrag,we.activeCaptureListener())}),this._touchListeners=()=>{this._unlisten("selectstart",this._onSelectStart,we.activeListener()),this._unlisten("touchmove",this._onTouchMove),this._unlisten("pointerup",this._onPointerUpEvent),this._unlisten("pointercancel",this._onPointerUpEvent,we.activeCaptureListener()),this._unlisten("contextmenu",this._preventDuringDrag,we.activeCaptureListener())})};_onSelectStart=n=>{this.onSelect(n)};_onMouseMove=n=>{this._moveHandler(new Bl(n))};_onTouchMove=n=>{this._moveHandler(new $h(n))};_checkDragSequenceToStart(n){let e=n.getPosition();if(!this.isDragStarted&&this._pointerDownElement){n.setTarget(this._pointerDownElement);let i=Math.abs(e.x-this._dragStartPosition.x),o=Math.abs(e.y-this._dragStartPosition.y);if(i+o>=this._dragStartThreshold){if(!(Date.now()>=this._dragStartTime+this._dragStartDelay)){this._endDragSequence();return}n.preventDefault(),this.prepareDragSequence(n),this.isDragStarted=!0,this._moveHandler=this.onPointerMove,cR(n.originalEvent)&&(this._lastTouchEventTime=Date.now())}}}_onPointerUpEvent=n=>{this.isDragStarted&&this.onPointerUp(new Uh(n)),this._endDragSequence()};_endDragSequence(){this.isDragStarted=!1,this._pointerDownElement=null,this._moveHandler=this._checkDragSequenceToStart,this._mouseListeners(),this._mouseListeners=we.emptyListener(),this._touchListeners(),this._touchListeners=we.emptyListener(),this.finalizeDragSequence()}subscribe(){this.unsubscribe(),this._ngZone?.runOutsideAngular(()=>{this._listen("mousedown",this._onMouseDown,we.activeListener()),this._listen("touchstart",this._onTouchDown,we.passiveListener())}),this._startListeners=()=>{this._unlisten("mousedown",this._onMouseDown,we.activeListener()),this._unlisten("touchstart",this._onTouchDown,we.passiveListener())}}unsubscribe(){this._startListeners(),this._startListeners=we.emptyListener(),this._touchListeners(),this._touchListeners=we.emptyListener(),this._mouseListeners(),this._mouseListeners=we.emptyListener()}_listen(n,e,i){this._document.addEventListener(n,e,i)}_unlisten(n,e,i){this._document.removeEventListener(n,e,i)}_preventDuringDrag=n=>{this.isDragStarted&&n.preventDefault()}};function cR(t){return t.type[0]==="t"}function dR(t){return t.buttons===0||t.offsetX===0&&t.offsetY===0}function lR(t){let n=t.touches&&t.touches[0]||t.changedTouches&&t.changedTouches[0];return!!n&&n.identifier===-1&&(n.radiusX==null||n.radiusX===1)&&(n.radiusY==null||n.radiusY===1)}var Yh=class extends ti{_position;_isMouseLeftButton;_isMouseRightButton;constructor(n){super(n.originalEvent,n.targetElement),this._position=n.getPosition(),this._isMouseLeftButton=n.isMouseLeftButton(),this._isMouseRightButton=n.isMouseRightButton()}isMouseLeftButton(){return this._isMouseLeftButton}isMouseRightButton(){return this._isMouseRightButton}getPosition(){return ae({},this._position)}};function uR(t){return new Yh(t)}var J=(()=>{class t{selectedItems=[];isSelectedChanged=!1;onPointerDownScale=1;onPointerDownPosition=new Q(0,0);draggableItems=[];autoPanFrameId=null;lastPointerEvent=null;lastPointerPosition=null;isAutoPanCanvasMoved=!1;reset(){for(let e of this.draggableItems)try{e.destroy?.()}catch{console.error(`Error while destroying drag handler of type ${e.type}`)}this.draggableItems=[],this.onPointerDownScale=1,this.onPointerDownPosition=new Q(0,0),this.autoPanFrameId=null,this.lastPointerEvent=null,this.lastPointerPosition=null,this.isAutoPanCanvasMoved=!1}markSelectionAsChanged(){this.isSelectedChanged=!0}rememberPointerEvent(e){this.lastPointerEvent=uR(e),this.lastPointerPosition=this.lastPointerEvent.getPosition()}isEmpty(){return!this.draggableItems.length}static \u0275fac=function(i){return new(i||t)};static \u0275prov=C({token:t,factory:t.\u0275fac})}return t})(),Xh=class{nodeIds;groupIds;connectionIds;get fNodeIds(){return this.nodeIds}get fGroupIds(){return this.groupIds}get fConnectionIds(){return this.connectionIds}constructor(n,e,i){this.nodeIds=n,this.groupIds=e,this.connectionIds=i}},fR=(()=>{let t=class Vs{_mediator=u(R);_store=u(N);_dragSession=u(J);handle(e){this._dragSession.isSelectedChanged&&(this._emitSelectionChange(this._getSelection()),this._dragSession.isSelectedChanged=!1,this._mediator.execute(new xn))}_getSelection(){return this._mediator.execute(new pr)}_emitSelectionChange(e){this._store.fDraggable?.fSelectionChange.emit(new Xh(e.fNodeIds,e.fGroupIds,e.fConnectionIds))}static \u0275fac=function(i){return new(i||Vs)};static \u0275prov=C({token:Vs,factory:Vs.\u0275fac})};return t=S([I(jo)],t),t})(),Zh=class{nodeOrGroup;static fToken=Symbol("GetNormalizedParentNodeRectRequest");constructor(n){this.nodeOrGroup=n}},pR=(()=>{let t=class Gs{_store=u(N);_mediator=u(R);handle({nodeOrGroup:e}){let i=j.initialize(-1/0,-1/0,1/0,1/0),o=this._getNode(e.fParentId());return o&&(i=this._getParentRect(o)),i}_getNode(e){return this._store.nodes.get(e)}_getParentRect(e){let i=this._getNodeRect(e),o=this._getNodePadding(e,i);return j.initialize(i.x+o[0],i.y+o[1],i.width-o[0]-o[2],i.height-o[1]-o[3])}_getNodeRect(e){return this._mediator.execute(new ze(e.hostElement))}_getNodePadding(e,i){return this._mediator.execute(new ii(e,i))}static \u0275fac=function(i){return new(i||Gs)};static \u0275prov=C({token:Gs,factory:Gs.\u0275fac})};return t=S([I(Zh)],t),t})(),Qh=class{fParentNodes;fDraggedNodes;static fToken=Symbol("IsArrayHasParentNodeRequest");constructor(n,e){this.fParentNodes=n,this.fDraggedNodes=e}},hR=(()=>{let t=class Hs{handle(e){return this._isParentNodeInArray(this._getParentNodeIds(e.fParentNodes),e.fDraggedNodes)}_getParentNodeIds(e){return e.map(i=>i.fId())}_isParentNodeInArray(e,i){return i.some(o=>e.includes(o.fId()))}static \u0275fac=function(i){return new(i||Hs)};static \u0275prov=C({token:Hs,factory:Hs.\u0275fac})};return t=S([I(Qh)],t),t})(),Jh=class{fNodeId;fConnectionIds;constructor(n,e){this.fNodeId=n,this.fConnectionIds=e}},zl=class extends Jh{nodeId;connectionIds;constructor(n,e){super(n,e),this.nodeId=n,this.connectionIds=e}},ql=class{nodeOrGroup;static fToken=Symbol("DetectConnectionsUnderDragNodeRequest");constructor(n){this.nodeOrGroup=n}},mR=(()=>{let t=class js{_mediator=u(R);_store=u(N);handle({nodeOrGroup:e}){let i=this._collectConnectableConnectorIds(e,"source"),o=this._collectConnectableConnectorIds(e,"target");if(!i.size||!o.size)return;let r=this._collectAttachedConnectionIds(i,o),a=this._collectConnectionsUnderNode(e),s=[];for(let c of a){let d=c.fId();r.has(d)||s.push(d)}s.length&&(this._store.fDraggable?.fNodeIntersectedWithConnections.emit(new zl(e.fId(),s)),this._store.fDraggable?.fNodeConnectionsIntersection.emit(new zl(e.fId(),s)))}_collectConnectableConnectorIds(e,i){let o=i==="source"?this._store.outputs.getAll():this._store.inputs.getAll(),r=new Set;for(let a of o)a.canBeConnected&&e.isContains(a.hostElement)&&r.add(a.fId());return r}_collectAttachedConnectionIds(e,i){let o=new Set;for(let r of this._store.connections.getAll())(e.has(r.fOutputId())||i.has(r.fInputId()))&&o.add(r.fId());return o}_collectConnectionsUnderNode(e){let i=this._mediator.execute(new Sn(e.hostElement,!1)),o=[];for(let r of this._store.connections.getAll())this._hasIntersection(r,i)&&o.push(r);return o}_hasIntersection(e,i){return zi.getRoundedRectIntersectionsWithSVGPath(e.fPath().hostElement,i).length>0}static \u0275fac=function(i){return new(i||js)};static \u0275prov=C({token:js,factory:js.\u0275fac})};return t=S([I(ql)],t),t})(),gR=[aR,rR,fR,pR,hR,mR],_R=new Set(["create-connection","reassign-connection","drag-node"]),yR=new Set(["selection-area"]),vR=new Set(["assign-to-container"]);function Iy(t){let n=null;for(let e of t){if(vR.has(e))continue;let i=_R.has(e)?"rebase":yR.has(e)?"direct":null;if(!i)return null;if(!n){n=i;continue}if(n!==i)return null}return n}function Ty(t,n,e,i,o){return L.initialize(q0(t.x,n.left,n.right,e,i,o),q0(t.y,n.top,n.bottom,e,i,o))}function q0(t,n,e,i,o,r){let a=Math.max(0,i),s=Math.max(0,o);if(!a||!s)return 0;if(t<=n+a){let c=G0((n+a-t)/a,0,1);return V0(c,s,r)}if(t>=e-a){let c=G0((t-(e-a))/a,0,1);return-V0(c,s,r)}return 0}function CR(t,n,e){let i=e||1;return Q.fromPoint(t).add(Q.fromPoint(n).div(i))}function V0(t,n,e){return e?n*t:n}function G0(t,n,e){return Math.max(n,Math.min(e,t))}var Vl=class{static fToken=Symbol("RunAutoPanFrameRequest")},In=class{static fToken=Symbol("StopAutoPanRequest")},xR=(()=>{let t=class Us{_store=u(N);_dragContext=u(J);handle(e){this._dragContext.autoPanFrameId!==null&&(cancelAnimationFrame(this._dragContext.autoPanFrameId),this._dragContext.autoPanFrameId=null),this._dragContext.isAutoPanCanvasMoved&&(this._store.fCanvas?.emitCanvasChangeEvent(),this._dragContext.isAutoPanCanvasMoved=!1)}static \u0275fac=function(i){return new(i||Us)};static \u0275prov=C({token:Us,factory:Us.\u0275fac})};return t=S([I(In)],t),t})(),Uo=class{static fToken=Symbol("SyncAutoPanRequest")},bR=(()=>{let t=class Ws{_mediator=u(R);_store=u(N);_dragContext=u(J);handle(e){if(!this._canAutoPan()||!this._hasAutoPanDelta()){this._mediator.execute(new In);return}this._dragContext.autoPanFrameId===null&&(this._dragContext.autoPanFrameId=requestAnimationFrame(()=>{this._dragContext.autoPanFrameId=null,this._mediator.execute(new Vl)}))}_canAutoPan(){return!!this._store.fFlow&&!!this._store.fCanvas&&!!this._store.fDraggable?.isDragStarted&&!!this._autoPan()&&!!this._getAutoPanMode()&&this._edgeThreshold()>0&&this._speed()>0}_hasAutoPanDelta(){let e=this._getAutoPanDelta();return!!e.x||!!e.y}_getAutoPanDelta(){let e=this._dragContext.lastPointerPosition,i=this._store.fFlow?.hostElement;return!e||!i?L.initialize():Ty(e,i.getBoundingClientRect(),this._edgeThreshold(),this._speed(),this._acceleration())}_getAutoPanMode(){return Iy(this._dragContext.draggableItems.map(e=>e.getEvent().kind))}_edgeThreshold(){return Math.max(0,this._autoPan()?.fEdgeThreshold()??0)}_speed(){return Math.max(0,this._autoPan()?.fSpeed()??0)}_acceleration(){return!!this._autoPan()?.fAcceleration()}_autoPan(){return this._store.instances.get(Pe.AUTO_PAN)}static \u0275fac=function(i){return new(i||Ws)};static \u0275prov=C({token:Ws,factory:Ws.\u0275fac})};return t=S([I(Uo)],t),t})(),wR=(()=>{let t=class $s{_mediator=u(R);_store=u(N);_dragContext=u(J);handle(e){let i=this._getAutoPanMode();if(!this._canAutoPan(i)){this._mediator.execute(new In);return}let o=this._getAutoPanDelta();if(!o.x&&!o.y){this._mediator.execute(new In);return}this._applyCanvasDelta(o,i),this._replayLastPointerMove(),this._mediator.execute(new Uo)}_applyCanvasDelta(e,i){let o=this._store.transform;i==="rebase"&&(this._dragContext.onPointerDownPosition=CR(this._dragContext.onPointerDownPosition,e,this._dragContext.onPointerDownScale||o.scale||1)),o.position=Q.fromPoint(o.position).add(e),this._store.fCanvas?.redraw(),this._dragContext.isAutoPanCanvasMoved=!0}_replayLastPointerMove(){let e=this._dragContext.lastPointerEvent;if(!e)return;let i=this._getPointerPositionInCanvas(e).div(this._dragContext.onPointerDownScale).sub(this._dragContext.onPointerDownPosition);this._dragContext.draggableItems.forEach(o=>{o.onPointerMove(ae({},i),e)})}_getPointerPositionInCanvas(e){return Q.fromPoint(e.getPosition()).elementTransform(this._store.flowHost)}_canAutoPan(e){return!!this._store.fFlow&&!!this._store.fCanvas&&!!this._store.fDraggable?.isDragStarted&&!!this._autoPan()&&!!e&&this._edgeThreshold()>0&&this._speed()>0}_getAutoPanMode(){return Iy(this._dragContext.draggableItems.map(e=>e.getEvent().kind))}_getAutoPanDelta(){let e=this._dragContext.lastPointerPosition,i=this._store.fFlow?.hostElement;return!e||!i?L.initialize():Ty(e,i.getBoundingClientRect(),this._edgeThreshold(),this._speed(),this._acceleration())}_edgeThreshold(){return Math.max(0,this._autoPan()?.fEdgeThreshold()??0)}_speed(){return Math.max(0,this._autoPan()?.fSpeed()??0)}_acceleration(){return!!this._autoPan()?.fAcceleration()}_autoPan(){return this._store.instances.get(Pe.AUTO_PAN)}static \u0275fac=function(i){return new(i||$s)};static \u0275prov=C({token:$s,factory:$s.\u0275fac})};return t=S([I(Vl)],t),t})(),SR=[bR,wR,xR],Gl=class{event;static fToken=Symbol("DragCanvasFinalizeRequest");constructor(n){this.event=n}},Hl=class{kind;data;fEventType;get fData(){return this.data}constructor(n,e,i){this.kind=n,this.data=e,this.fEventType=i??n}},st=class{data(){}_features=[];getEvent(){return new Hl(this.kind,this.data(),this.type)}attachFeature(n){this._features.push(n)}featuresPrepare(n){for(let e of this._features)e.onPrepare?.(n)}featuresMove(n,e){for(let i of this._features)i.onMove?.(n,e)}featuresFinalize(n,e){for(let i of this._features)i.onFinalize?.(n,e)}featuresEnd(n){for(let e of this._features)e.onEnd?.(n)}},jl=class{_isConnected=!1;get isConnected(){return this._isConnected}toConnector=[];isSelfConnectable=!0;fConnectableSide=z.AUTO;userFConnectableSide=z.AUTO;isContains(n){return this.hostElement.contains(n)}setConnected(n){this._isConnected=!0,this.toConnector.push(n)}resetConnected(){this._isConnected=!1,this.toConnector=[]}},IR=new he("F_NODE_INPUT"),TR=(()=>{class t extends jl{kind="input";get canBeConnected(){return!this.disabled()&&(this.multiple()?!0:!this.isConnected)}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275dir=ke({type:t,standalone:!1,features:[ve]})}return t})(),zt=(function(t){return t.LEFT="left",t.LEFT_TOP="left-top",t.TOP="top",t.RIGHT_TOP="right-top",t.RIGHT="right",t.RIGHT_BOTTOM="right-bottom",t.BOTTOM="bottom",t.LEFT_BOTTOM="left-bottom",t})(zt||{});function ER(t){return Do(t,".f-rotate-handle")}var Ey=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275dir=ke({type:t,selectors:[["","fDragHandle",""]],hostAttrs:[1,"f-drag-handle","f-component"],standalone:!1})}return t})(),Of=new he("F_NODE"),PR=yy(class{hostElement;constructor(t){this.hostElement=t}}),Ul=class extends PR{_injector=u(ut);renderer=u(U_);browser=u(He);stateChanges=new Tt;_position=L.initialize();_rotate=0;_size;connectors=[];positionChanges(){pe(()=>{let n=this.position();Lt(()=>{L.isEqual(this._position,n)||(this._position=n,this.redraw(),this.refresh())})},{injector:this._injector})}sizeChanges(){pe(()=>{let n=this.size();Lt(()=>{this._isSizeEqual(n)||(this._size=n,this.redraw(),this.refresh())})},{injector:this._injector})}rotateChanges(){pe(()=>{let n=this.rotate();Lt(()=>{this._rotate!==n&&(this._rotate=n,this.redraw(),this.refresh())})},{injector:this._injector})}parentChanges(){pe(()=>{this.fParentId(),this.fIncludePadding(),this.fAutoSizeToFitChildren(),Lt(()=>this.refresh())},{injector:this._injector})}_isSizeEqual(n){return this._size?.width===n?.width&&this._size?.height===n?.height}isContains(n){return this.hostElement.contains(n)}redraw(){this._size&&(this.setStyle("width",""+this._size.width+"px"),this.setStyle("height",""+this._size.height+"px")),this.setStyle("transform",`translate(${this._position.x}px,${this._position.y}px) rotate(${this._rotate}deg)`)}resetSize(){this.removeStyle("width"),this.removeStyle("height")}updatePosition(n){this._position=n}updateRotate(n){this._rotate=n}updateSize(n){this._size=n}setClass(n){this.hostElement.classList.add(n)}removeClass(n){this.hostElement.classList.remove(n)}addConnector(n){this.connectors.push(n),this.refresh()}removeConnector(n){let e=this.connectors.indexOf(n);e!==-1&&this.connectors.splice(e,1),this.refresh()}},MR=0,DR=3,em=(()=>{class t extends Ul{_debounceTimer=null;_destroyRef=u(ot);_mediator=u(R);fId=F(`f-group-${MR++}`,{alias:"fGroupId"});fParentId=F(null,{alias:"fGroupParentId"});position=Wn(L.initialize(),{alias:"fGroupPosition"});size=F(void 0,{alias:"fGroupSize"});sizeChange=Ve({alias:"fGroupSizeChange"});rotate=Wn(0,{alias:"fGroupRotate"});fConnectOnNode=F(!0,{transform:Ce});fMinimapClass=F([]);fDraggingDisabled=F(!1,{alias:"fGroupDraggingDisabled",transform:Ce});fSelectionDisabled=F(!1,{alias:"fGroupSelectionDisabled",transform:Ce});fIncludePadding=F(!0,{transform:Ce});fAutoExpandOnChildHit=F(!1,{transform:Ce});fAutoSizeToFitChildren=F(!1,{transform:Ce});constructor(e){super(e.nativeElement),super.positionChanges(),super.sizeChanges(),super.rotateChanges(),super.parentChanges()}ngOnInit(){super.redraw(),this._mediator.execute(new ar(this))}setStyle(e,i){this.renderer.setStyle(this.hostElement,e,i)}removeStyle(e){this.renderer.removeStyle(this.hostElement,e)}redraw(){super.redraw(),this._mediator.execute(new xn),this._updateConnectorsSides()}_updateConnectorsSides(){this.connectors.length&&(this._debounceTimer&&clearTimeout(this._debounceTimer),this._debounceTimer=setTimeout(()=>this._calculateNodeConnectorsConnectableSides(),DR))}_calculateNodeConnectorsConnectableSides(){this._mediator.execute(new Qi(this))}ngAfterViewInit(){this.browser.isBrowser()&&this._listenStateSizeChanges()}_listenStateSizeChanges(){this._mediator.execute(new cr(this,this._destroyRef))}refresh(){this.stateChanges.notify()}ngOnDestroy(){this._mediator.execute(new dr(this))}static \u0275fac=function(i){return new(i||t)(Zp(Le))};static \u0275dir=ke({type:t,selectors:[["","fGroup",""]],hostAttrs:[1,"f-group","f-component"],hostVars:5,hostBindings:function(i,o){i&2&&($("data-f-group-id",o.fId()),se("f-group-dragging-disabled",o.fDraggingDisabled())("f-group-selection-disabled",o.fSelectionDisabled()))},inputs:{fId:[1,"fGroupId","fId"],fParentId:[1,"fGroupParentId","fParentId"],position:[1,"fGroupPosition","position"],size:[1,"fGroupSize","size"],rotate:[1,"fGroupRotate","rotate"],fConnectOnNode:[1,"fConnectOnNode"],fMinimapClass:[1,"fMinimapClass"],fDraggingDisabled:[1,"fGroupDraggingDisabled","fDraggingDisabled"],fSelectionDisabled:[1,"fGroupSelectionDisabled","fSelectionDisabled"],fIncludePadding:[1,"fIncludePadding"],fAutoExpandOnChildHit:[1,"fAutoExpandOnChildHit"],fAutoSizeToFitChildren:[1,"fAutoSizeToFitChildren"]},outputs:{position:"fGroupPositionChange",sizeChange:"fGroupSizeChange",rotate:"fGroupRotateChange"},exportAs:["fComponent"],standalone:!1,features:[be([{provide:Of,useExisting:t}]),ve]})}return t})(),H0=0,kR=3,Nf=(()=>{class t extends Ul{_debounceTimer=null;_destroyRef=u(ot);_mediator=u(R);fId=F(`f-node-${H0++}`,{alias:"fNodeId",transform:e=>Xi(e)||`f-node-${H0++}`});fParentId=F(null,{alias:"fNodeParentId"});position=Wn(L.initialize(),{alias:"fNodePosition"});size=F(void 0,{alias:"fNodeSize"});sizeChange=Ve({alias:"fNodeSizeChange"});rotate=Wn(0,{alias:"fNodeRotate"});fConnectOnNode=F(!0,{transform:Ce});fMinimapClass=F([]);fDraggingDisabled=F(!1,{alias:"fNodeDraggingDisabled",transform:Ce});fSelectionDisabled=F(!1,{alias:"fNodeSelectionDisabled",transform:Ce});fIncludePadding=F(!0,{transform:Ce});fAutoExpandOnChildHit=F(!1,{transform:Ce});fAutoSizeToFitChildren=F(!1,{transform:Ce});constructor(e){super(e.nativeElement),super.positionChanges(),super.sizeChanges(),super.rotateChanges(),super.parentChanges()}ngOnInit(){super.redraw(),this._mediator.execute(new ar(this))}setStyle(e,i){this.renderer.setStyle(this.hostElement,e,i)}removeStyle(e){this.renderer.removeStyle(this.hostElement,e)}redraw(){super.redraw(),this._mediator.execute(new xn),this._updateConnectorsSides()}_updateConnectorsSides(){this.connectors.length&&(this._debounceTimer&&clearTimeout(this._debounceTimer),this._debounceTimer=setTimeout(()=>this._calculateNodeConnectorsConnectableSides(),kR))}_calculateNodeConnectorsConnectableSides(){this._mediator.execute(new Qi(this))}ngAfterViewInit(){this.browser.isBrowser()&&this._listenStateSizeChanges()}_listenStateSizeChanges(){this._mediator.execute(new cr(this,this._destroyRef))}refresh(){this.stateChanges.notify()}ngOnDestroy(){this._mediator.execute(new dr(this))}static \u0275fac=function(i){return new(i||t)(Zp(Le))};static \u0275dir=ke({type:t,selectors:[["","fNode",""]],hostAttrs:[1,"f-node","f-component"],hostVars:5,hostBindings:function(i,o){i&2&&($("data-f-node-id",o.fId()),se("f-node-dragging-disabled",o.fDraggingDisabled())("f-node-selection-disabled",o.fSelectionDisabled()))},inputs:{fId:[1,"fNodeId","fId"],fParentId:[1,"fNodeParentId","fParentId"],position:[1,"fNodePosition","position"],size:[1,"fNodeSize","size"],rotate:[1,"fNodeRotate","rotate"],fConnectOnNode:[1,"fConnectOnNode"],fMinimapClass:[1,"fMinimapClass"],fDraggingDisabled:[1,"fNodeDraggingDisabled","fDraggingDisabled"],fSelectionDisabled:[1,"fNodeSelectionDisabled","fSelectionDisabled"],fIncludePadding:[1,"fIncludePadding"],fAutoExpandOnChildHit:[1,"fAutoExpandOnChildHit"],fAutoSizeToFitChildren:[1,"fAutoSizeToFitChildren"]},outputs:{position:"fNodePositionChange",sizeChange:"fNodeSizeChange",rotate:"fNodeRotateChange"},exportAs:["fComponent"],standalone:!1,features:[be([{provide:Of,useExisting:t}]),ve]})}return t})();function OR(t){return!!t.closest("[fNode]")}var j0=0,Py=(()=>{class t extends TR{hostElement=u(Le).nativeElement;_mediator=u(R);_node=u(Of);fId=F(`f-node-input-${j0++}`,{alias:"fInputId",transform:e=>Xi(e)||`f-node-input-${j0++}`});category=F(void 0,{alias:"fInputCategory",transform:Xi});multiple=F(!0,{alias:"fInputMultiple",transform:Ce});disabled=F(!1,{alias:"fInputDisabled",transform:Ce});userFConnectableSide=z.AUTO;get fNodeId(){return this._node.fId()}get fNodeHost(){return this._node.hostElement}ngOnInit(){this._mediator.execute(new ir(this)),this._node.addConnector(this)}ngOnChanges(e){e.userFConnectableSide&&this._node.refresh()}setConnected(e){super.setConnected(e),this.hostElement.classList.toggle($e.CONNECTOR.INPUT_CONNECTED,!0),this.hostElement.classList.toggle($e.CONNECTOR.INPUT_NOT_CONNECTABLE,!this.canBeConnected)}resetConnected(){super.resetConnected(),this.hostElement.classList.toggle($e.CONNECTOR.INPUT_CONNECTED,!1),this.hostElement.classList.toggle($e.CONNECTOR.INPUT_NOT_CONNECTABLE,!this.canBeConnected)}ngOnDestroy(){this._node.removeConnector(this),this._mediator.execute(new lr(this))}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275dir=ke({type:t,selectors:[["","fNodeInput",""]],hostAttrs:[1,"f-component","f-node-input"],hostVars:5,hostBindings:function(i,o){i&2&&($("data-f-input-id",o.fId()),se("f-node-input-multiple",o.multiple)("f-node-input-disabled",o.disabled()))},inputs:{fId:[1,"fInputId","fId"],category:[1,"fInputCategory","category"],multiple:[1,"fInputMultiple","multiple"],disabled:[1,"fInputDisabled","disabled"],userFConnectableSide:[2,"fInputConnectableSide","userFConnectableSide",e=>qi(e,"fInputConnectableSide",z)]},exportAs:["fNodeInput"],standalone:!1,features:[be([{provide:IR,useExisting:t}]),ve,wi]})}return t})(),NR=(()=>{class t extends jl{get hasConnectionLimits(){return!!this.canBeConnectedInputs&&this.canBeConnectedInputs.length>0}canConnectTo(e){return[e.fId(),e.category()].some(o=>o&&this.canBeConnectedInputs?.includes(o))}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275dir=ke({type:t,standalone:!1,features:[ve]})}return t})();function My(t){return!!t.closest("[fNodeOutlet]")}var RR=new he("F_NODE_OUTPUT"),AR=(()=>{class t extends NR{kind="output";get canBeConnected(){return!this.disabled()&&(this.multiple()?!0:!this.isConnected)}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275dir=ke({type:t,standalone:!1,features:[ve]})}return t})();function Dy(t){return!!t.closest("[fNodeOutput]")}var U0=0,ky=(()=>{class t extends AR{hostElement=u(Le).nativeElement;_mediator=u(R);_node=u(Of);fId=F(`f-node-output-${U0++}`,{alias:"fOutputId",transform:e=>Xi(e)||`f-node-output-${U0++}`});multiple=F(!1,{alias:"fOutputMultiple",transform:Ce});disabled=F(!1,{alias:"fOutputDisabled",transform:Ce});userFConnectableSide=z.AUTO;isSelfConnectable=!0;canBeConnectedInputs=[];get fNodeId(){return this._node.fId()}get fNodeHost(){return this._node.hostElement}ngOnInit(){this._mediator.execute(new ir(this)),this._node.addConnector(this)}ngOnChanges(e){e.userFConnectableSide&&this._node.refresh()}setConnected(e){super.setConnected(e),this.hostElement.classList.toggle($e.CONNECTOR.OUTPUT_CONNECTED,!0),this.hostElement.classList.toggle($e.CONNECTOR.OUTPUT_NOT_CONNECTABLE,!this.canBeConnected)}resetConnected(){super.resetConnected(),this.hostElement.classList.toggle($e.CONNECTOR.OUTPUT_CONNECTED,!1),this.hostElement.classList.toggle($e.CONNECTOR.OUTPUT_NOT_CONNECTABLE,!this.canBeConnected)}ngOnDestroy(){this._node.removeConnector(this),this._mediator.execute(new lr(this))}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275dir=ke({type:t,selectors:[["","fNodeOutput",""]],hostAttrs:[1,"f-component","f-node-output"],hostVars:7,hostBindings:function(i,o){i&2&&($("data-f-output-id",o.fId()),se("f-node-output-multiple",o.multiple)("f-node-output-disabled",o.disabled())("f-node-output-self-connectable",o.isSelfConnectable))},inputs:{fId:[1,"fOutputId","fId"],multiple:[1,"fOutputMultiple","multiple"],disabled:[1,"fOutputDisabled","disabled"],userFConnectableSide:[2,"fOutputConnectableSide","userFConnectableSide",e=>qi(e,"fOutputConnectableSide",z)],isSelfConnectable:"isSelfConnectable",canBeConnectedInputs:[0,"fCanBeConnectedInputs","canBeConnectedInputs"]},exportAs:["fNodeOutput"],standalone:!1,features:[be([{provide:RR,useExisting:t}]),ve,wi]})}return t})();var Wl=class{event;static fToken=Symbol("CreateConnectionFinalizeRequest");constructor(n){this.event=n}},Wo=class{outlet;static fToken=Symbol("ResolveConnectableOutputForOutletRequest");constructor(n){this.outlet=n}},FR=(()=>{let t=class Ks{_store=u(N);handle({outlet:e}){let i=this._findOwnerNode(e);if(!i)throw new Error("The fOutlet must belong to an fNode");let o=this._findFirstConnectableOutputInNode(i);if(!o)throw new Error("Outlet requires at least one connectable output in the same node.");return o}_findOwnerNode(e){let i=e.hostElement;return this._store.nodes.getAll().find(o=>o.isContains(i))}_findFirstConnectableOutputInNode(e){return this._store.outputs.getAll().find(i=>e.isContains(i.hostElement)&&i.canBeConnected)}static \u0275fac=function(i){return new(i||Ks)};static \u0275prov=C({token:Ks,factory:Ks.\u0275fac})};return t=S([I(Wo)],t),t})(),tm=class{sourceId;targetId;dropPosition;fOutputId;fInputId;fDropPosition;constructor(n,e,i){this.sourceId=n,this.targetId=e,this.dropPosition=i,this.fOutputId=n,this.fInputId=e,this.fDropPosition=i}},$l=(()=>{class t extends st{type="create-connection";kind="create-connection";data(){return{fOutputOrOutletId:this._sourceRef.connector.fId()}}_result=u(En);_mediator=u(R);_connectionBehaviour=u(ro);_store=u(N);get _connection(){return this._store.connections.getForCreate()}get _snapConnection(){return this._store.connections.getForSnap()}_targets=[];_sourceRef;_pointerDown=new Ge;initialize(e,i){this._sourceRef=this._mediator.execute(new vt(e)),this._pointerDown=Ge.fromRect(j.initialize(i.x,i.y))}prepareDragSequence(){this._collectAndMarkTargets(),this._initSnapConnection(),this._initCreateConnection(),this._connection.show(),this.onPointerMove(L.initialize()),this._result.setData({toConnectorRect:this._pointerDown,canBeConnectedInputs:this._targets,fOutputId:this._sourceRef.connector.fId()})}_collectAndMarkTargets(){this._targets=this._mediator.execute(new rr(this._sourceRef.connector,this._sourceRef.rect.gravityCenter)),this._mediator.execute(new to(this._targets.map(e=>e.connector)))}_initSnapConnection(){this._snapConnection&&(this._snapConnection.fOutputId.set(this._sourceRef.connector.fId()),this._snapConnection.initialize())}_initCreateConnection(){this._connection.fOutputId.set(this._sourceRef.connector.fId()),this._connection.initialize()}onPointerMove(e){let i=this._pointerDown.addPoint(e),o=this._findClosestTarget(i),r=o?.connector.fConnectableSide||z.TOP;this._drawCreateConnection(i,r);let a=this._snapConnection;if(!a)return;let s=o&&o.distance<a.fSnapThreshold?o:void 0;this._drawSnapConnection(s)}_findClosestTarget(e){return this._mediator.execute(new ni(e,this._targets))}_drawCreateConnection(e,i){let o=this._connectionBehaviour.handle(new Rt(this._sourceRef.rect,e,this._connection,this._sourceRef.connector.fConnectableSide,i,this._resolveRotationContext(this._sourceRef.connector)));this._connection.setLine(o),this._connection.redraw()}_drawSnapConnection(e){let i=this._snapConnection;if(!i)return;if(!e){i.hide();return}let o=this._connectionBehaviour.handle(new Rt(this._sourceRef.rect,e.rect,i,this._sourceRef.connector.fConnectableSide,e.connector.fConnectableSide,this._resolveRotationContext(this._sourceRef.connector),this._resolveRotationContext(e.connector)));i.show(),i.setLine(o),i.redraw()}onPointerUp(){this._connection.redraw(),this._connection.hide(),this._snapConnection?.hide(),this._mediator.execute(new no(this._targets.map(e=>e.connector)))}_resolveRotationContext(e){return this._mediator.execute(new tn(e))}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275prov=C({token:t,factory:t.\u0275fac})}return t})(),LR=(()=>{let t=class Ys{_result=u(En);_mediator=u(R);_store=u(N);_dragContext=u(J);get _dragHandler(){return this._dragContext.draggableItems[0]}handle(e){this._isValid()&&(this._emitEvent(e.event),this._dragHandler.onPointerUp())}_isValid(){return this._dragContext.draggableItems.some(e=>e instanceof $l)}_getTargetOutput(e){if(!e)throw new Error(`Output with fOutputId ${this._result.getData().fOutputId} not found. Make sure there is no f-connection to a non-existent fOutput.`);return My(e.hostElement)?this._mediator.execute(new Wo(e)):e}_getOutput(){return this._store.outputs.get(this._result.getData().fOutputId)}_getOutlet(){return this._store.outlets.get(this._result.getData().fOutputId)}_emitEvent(e){this._store.fDraggable?.fCreateConnection.emit(new tm(this._getTargetOutput(this._getOutput()||this._getOutlet()).fId(),this._getInputUnderPointer(e)?.fId(),e.getPosition()))}_getInputUnderPointer(e){return this._mediator.execute(new or(e.getPosition(),this._result.getData().canBeConnectedInputs))}static \u0275fac=function(i){return new(i||Ys)};static \u0275prov=C({token:Ys,factory:Ys.\u0275fac})};return t=S([I(Wl)],t),t})(),$o=class{eventPosition;source;static fToken=Symbol("CreateConnectionCreateDragHandlerRequest");constructor(n,e){this.eventPosition=n,this.source=e}},BR=(()=>{let t=class Xs{_store=u(N);_dragContext=u(J);_dragInjector=u(tt);get _transform(){return this._store.transform}handle({source:e,eventPosition:i}){this._dragContext.onPointerDownScale=this._transform.scale;let o=this._toFlowSpace(i);this._dragContext.onPointerDownPosition=o;let r=this._toCanvasSpace(o),a=this._dragInjector.get($l);a.initialize(e,r),this._dragContext.draggableItems=[a]}_toFlowSpace(e){return Q.fromPoint(e).elementTransform(this._store.flowHost).div(this._transform.scale)}_toCanvasSpace(e){return Q.fromPoint(e).mult(this._transform.scale).sub(this._transform.position).sub(this._transform.scaledPosition).div(this._transform.scale)}static \u0275fac=function(i){return new(i||Xs)};static \u0275prov=C({token:Xs,factory:Xs.\u0275fac})};return t=S([I($o)],t),t})(),Kl=class{event;node;static fToken=Symbol("CreateConnectionFromOutletPreparationRequest");constructor(n,e){this.event=n,this.node=e}},zR=(()=>{let t=class Zs{_mediator=u(R);_store=u(N);handle({event:e,node:i}){let o=this._findOutlet(i);if(!o||(o.setOutputs(this._getOutputs(i)),!o.canBeConnected))return;let r=o.isConnectionFromOutlet?o:this._resolveOutput(o);!r||!r.canBeConnected||this._startDrag(e.getPosition(),r)}_findOutlet(e){return this._store.outlets.getAll().find(i=>e.isContains(i.hostElement))}_getOutputs(e){return this._store.outputs.getAll().filter(i=>e.isContains(i.hostElement))}_resolveOutput(e){return this._mediator.execute(new Wo(e))}_startDrag(e,i){this._mediator.execute(new $o(e,i))}static \u0275fac=function(i){return new(i||Zs)};static \u0275prov=C({token:Zs,factory:Zs.\u0275fac})};return t=S([I(Kl)],t),t})(),Yl=class{event;node;static fToken=Symbol("CreateConnectionFromOutputPreparationRequest");constructor(n,e){this.event=n,this.node=e}},qR=(()=>{let t=class Qs{_mediator=u(R);_store=u(N);handle({event:e,node:i}){if(!Dy(e.targetElement)||this._hasOutlet(i))return;let o=this._findOutput(e.targetElement);!o||!o.canBeConnected||this._startDrag(e.getPosition(),o)}_hasOutlet(e){return this._store.outlets.getAll().some(i=>e.isContains(i.hostElement))}_findOutput(e){return this._store.outputs.getAll().find(i=>i.hostElement.contains(e))}_startDrag(e,i){this._mediator.execute(new $o(e,i))}static \u0275fac=function(i){return new(i||Qs)};static \u0275prov=C({token:Qs,factory:Qs.\u0275fac})};return t=S([I(Yl)],t),t})(),Xl=class{event;fTrigger;static fToken=Symbol("CreateConnectionPreparationRequest");constructor(n,e){this.event=n,this.fTrigger=e}},VR=(()=>{let t=class Js{_mediator=u(R);_store=u(N);_dragContext=u(J);handle({event:e,fTrigger:i}){if(!this._isValidConditions()||!this._isValidTrigger(e,i))return;let o=My(e.targetElement),r=!o&&Dy(e.targetElement);if(!o&&!r)return;let a=this._findOwnerNode(e.targetElement);a&&(o?this._mediator.execute(new Kl(e,a)):this._mediator.execute(new Yl(e,a)))}_findOwnerNode(e){return this._store.nodes.getAll().find(i=>i.isContains(e))}_isValidConditions(){return this._dragContext.isEmpty()&&!!this._store.connections.getForCreate()}_isValidTrigger(e,i){return Et(e.originalEvent,i)}static \u0275fac=function(i){return new(i||Js)};static \u0275prov=C({token:Js,factory:Js.\u0275fac})};return t=S([I(Xl)],t),t})(),Zl=class{event;static fToken=Symbol("ReassignConnectionFinalizeRequest");constructor(n){this.event=n}},nm=class{connectionId;endpoint;previousSourceId;nextSourceId;previousTargetId;nextTargetId;dropPosition;isSourceReassign;isTargetReassign;oldSourceId;newSourceId;oldTargetId;newTargetId;dropPoint;constructor(n,e,i,o,r,a,s){this.connectionId=n,this.endpoint=e,this.previousSourceId=i,this.nextSourceId=o,this.previousTargetId=r,this.nextTargetId=a,this.dropPosition=s,this.isSourceReassign=e==="source",this.isTargetReassign=e==="target",this.oldSourceId=i,this.newSourceId=o,this.oldTargetId=r,this.newTargetId=a,this.dropPoint=s}},GR=(()=>{let t=class ec{_dragResult=u(En);_mediator=u(R);_store=u(N);_dragContext=u(J);get _dragDirective(){return this._store.fDraggable}handle({event:e}){let i=this._findReassignHandler();i&&(this._emitIfChanged(e),i.onPointerUp())}_findReassignHandler(){return this._dragContext.draggableItems.find(i=>i.getEvent().fEventType==="reassign-connection")}_emitIfChanged(e){let i=this._dragResult.getData(),o=this._findConnectableConnector(e,i.candidates);o&&!this._isReassignedToDifferentConnector(i,o)||this._dragDirective.fReassignConnection.emit(this._buildEvent(i,e,o))}_findConnectableConnector(e,i){return this._mediator.execute(new or(e.getPosition(),i))}_isReassignedToDifferentConnector(e,i){let o=e.connection;return e.draggedEnd==="target"?o.fInputId()!==i.fId():o.fOutputId()!==i.fId()}_buildEvent(e,i,o){let r=e.connection;return new nm(r.fId(),e.draggedEnd,r.fOutputId(),e.draggedEnd==="source"?o?.fId():void 0,r.fInputId(),e.draggedEnd==="target"?o?.fId():void 0,i.getPosition())}static \u0275fac=function(i){return new(i||ec)};static \u0275prov=C({token:ec,factory:ec.\u0275fac})};return t=S([I(Zl)],t),t})(),Ql=class{event;fTrigger;static fToken=Symbol("ReassignConnectionPreparationRequest");constructor(n,e){this.event=n,this.fTrigger=e}};function HR(t,n){return Oy(t,n)||jR(t,n)}function Oy(t,n){return t.fDragHandleEnd()?.point&&Ny(n,t.fDragHandleEnd().point)&&!t.fDraggingDisabled()}function jR(t,n){return!!t.fDragHandleStart()?.point&&Ny(n,t.fDragHandleStart().point)&&!t.fDraggingDisabled()&&t.fReassignableStart()}function Ny(t,n){return(t.x-n.x)**2+(t.y-n.y)**2<=8**2}function Ry(t,n){return t&&t.distance<n.fSnapThreshold?t:void 0}function Jl(t){return Ge.fromRect(j.initialize(t.x,t.y))}var im=class{_mediator;_behaviour;_connection;_sourceRef;_targetRef;_candidates=[];_snap;_anchorRect;get _source(){return this._sourceRef.connector}get _target(){return this._targetRef.connector}constructor(n,e,i,o,r){this._mediator=n,this._behaviour=e,this._connection=i,this._sourceRef=o,this._targetRef=r,this._anchorRect=Jl(this._connection.line.point1)}candidates(){return this._candidates}collectAndMarkCandidates(){this._candidates=this._mediator.execute(new nf(this._target,this._targetRef.rect.gravityCenter)),this._candidates.some(n=>n.connector.fId()===this._source.fId())||this._candidates.push(this._sourceRef),this._mediator.execute(new to(this._candidates.map(n=>n.connector)))}setSnapConnection(n){this._snap=n,n&&(n.fInputId.set(this._connection.fInputId()),n.initialize())}onPointerMove(n){let e=this._anchorRect.addPoint(n),i=this._findClosest(e.gravityCenter),o=i?.connector.fConnectableSide??this._source.fConnectableSide;this._draw(e,o);let r=this._snap;r&&this._drawSnap(Ry(i,r))}_findClosest(n){return this._mediator.execute(new ni(n,this._candidates))}_draw(n,e){let i=this._behaviour.handle(new Rt(n,this._targetRef.rect,this._connection,e,this._targetRef.connector.fConnectableSide,void 0,this._resolveRotationContext(this._targetRef.connector)));this._connection.setLine(i),this._connection.redraw()}_drawSnap(n){let e=this._snap;if(!e)return;if(!n){e.hide();return}let i=this._behaviour.handle(new Rt(n.rect,this._targetRef.rect,e,n.connector.fConnectableSide,this._target.fConnectableSide,this._resolveRotationContext(n.connector),this._resolveRotationContext(this._targetRef.connector)));e.show(),e.setLine(i),e.redraw()}onPointerUp(){this._draw(this._anchorRect,this._sourceRef.connector.fConnectableSide),this._snap?.hide(),this._mediator.execute(new no(this._candidates.map(n=>n.connector)))}_resolveRotationContext(n){return this._mediator.execute(new tn(n))}},om=class{_mediator;_behaviour;_connection;_sourceRef;_targetRef;_candidates=[];_snap;_anchorRect;get _source(){return this._sourceRef.connector}get _target(){return this._targetRef.connector}constructor(n,e,i,o,r){this._mediator=n,this._behaviour=e,this._connection=i,this._sourceRef=o,this._targetRef=r,this._anchorRect=Jl(this._connection.line.point2)}candidates(){return this._candidates}collectAndMarkCandidates(){this._candidates=this._mediator.execute(new rr(this._source,this._sourceRef.rect.gravityCenter));let n=this._connection.fInputId();n&&!this._candidates.some(e=>e.connector.fId()===n)&&this._candidates.push(this._targetRef),this._mediator.execute(new to(this._candidates.map(e=>e.connector)))}setSnapConnection(n){this._snap=n,n&&(n.fOutputId.set(this._connection.fOutputId()),n.initialize())}onPointerMove(n){let e=this._anchorRect.addPoint(n),i=this._findClosest(e.gravityCenter),o=i?.connector.fConnectableSide??this._target.fConnectableSide;this._draw(e,o);let r=this._snap;r&&this._drawSnap(Ry(i,r))}onPointerUp(){this._draw(this._anchorRect,this._targetRef.connector.fConnectableSide),this._snap?.hide(),this._mediator.execute(new no(this._candidates.map(n=>n.connector)))}_findClosest(n){return this._mediator.execute(new ni(n,this._candidates))}_draw(n,e){let i=this._behaviour.handle(new Rt(this._sourceRef.rect,n,this._connection,this._source.fConnectableSide,e,this._resolveRotationContext(this._sourceRef.connector),void 0));this._connection.setLine(i),this._connection.redraw()}_drawSnap(n){let e=this._snap;if(!e)return;if(!n){e.hide();return}let i=this._behaviour.handle(new Rt(this._sourceRef.rect,n.rect,e,this._source.fConnectableSide,n.connector.fConnectableSide,this._resolveRotationContext(this._sourceRef.connector),this._resolveRotationContext(n.connector)));e.show(),e.setLine(i),e.redraw()}_resolveRotationContext(n){return this._mediator.execute(new tn(n))}},rm=(()=>{class t extends st{type="reassign-connection";kind="reassign-connection";data(){return{fConnectionId:this._connection.fId()}}_result=u(En);_mediator=u(R);_connectionBehaviour=u(ro);_store=u(N);get _snapConnection(){return this._store.connections.getForSnap()}_connection;_draggedEnd;_sourceRef;_targetRef;_reassignHandler;initialize(e,i){this._connection=e,this._draggedEnd=i?"target":"source",this._sourceRef=this._mediator.execute(new vt(this._store.outputs.require(this._connection.fOutputId()))),this._targetRef=this._mediator.execute(new vt(this._store.inputs.require(this._connection.fInputId()))),this._reassignHandler=this._draggedEnd==="target"?this._createTargetHandler():this._createSourceHandler()}_createSourceHandler(){return new im(this._mediator,this._connectionBehaviour,this._connection,this._sourceRef,this._targetRef)}_createTargetHandler(){return new om(this._mediator,this._connectionBehaviour,this._connection,this._sourceRef,this._targetRef)}prepareDragSequence(){this._reassignHandler.collectAndMarkCandidates(),this._reassignHandler.setSnapConnection(this._snapConnection),this._result.setData({draggedEnd:this._draggedEnd,sourceAnchorRect:Jl(this._connection.line.point1),targetAnchorRect:Jl(this._connection.line.point2),candidates:this._reassignHandler.candidates(),connection:this._connection})}onPointerMove(e){this._reassignHandler.onPointerMove(e)}onPointerUp(){this._reassignHandler.onPointerUp()}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275prov=C({token:t,factory:t.\u0275fac})}return t})(),UR=(()=>{let t=class tc{_mediator=u(R);_store=u(N);_dragContext=u(J);_dragInjector=u(tt);get _canvas(){return this._store.fCanvas}get _transform(){return this._store.transform}get _connections(){return this._store.connections.getAll()}handle(e){if(!this._dragContext.isEmpty()||!this._isValidTrigger(e))return;let i=ao(e.event.getPosition(),this._store.flowHost,this._transform),o=this._findConnectionAt(i);o&&(this._capturePointerDown(e),this._startDrag(o,i),queueMicrotask(()=>this._bringToFront(o)))}_findConnectionAt(e){return this._connections.find(i=>HR(i,e))}_capturePointerDown(e){this._dragContext.onPointerDownScale=this._transform.scale,this._dragContext.onPointerDownPosition=Q.fromPoint(e.event.getPosition()).elementTransform(this._store.flowHost).div(this._transform.scale)}_startDrag(e,i){let o=this._dragInjector.get(rm);o.initialize(e,Oy(e,i)),this._dragContext.draggableItems=[o]}_isValidTrigger(e){return Et(e.event.originalEvent,e.fTrigger)}_bringToFront(e){this._mediator.execute(new oi(e,this._canvas.fConnectionsContainer().nativeElement))}static \u0275fac=function(i){return new(i||tc)};static \u0275prov=C({token:tc,factory:tc.\u0275fac})};return t=S([I(Ql)],t),t})(),eu=class{event;static fToken=Symbol("DragConnectionWaypointFinalizeRequest");constructor(n){this.event=n}},tu=class{connectionId;waypoints;constructor(n,e){this.connectionId=n,this.waypoints=e}},nu=(()=>{class t extends st{type="move-connection-waypoint";kind="drag-connection-waypoint";_store=u(N);_point;_pick;get _waypointsComponent(){return this._pick?.connection.fWaypoints()}get _connection(){return this._pick?.connection}setPick(e){this._pick=e}prepareDragSequence(){this._pick?.candidate?(this._point=ae({},this._pick.candidate),this._waypointsComponent.insert(this._pick.candidate)):this._pick?.waypoint&&(this._point=ae({},this._pick.waypoint),this._waypointsComponent.select(this._pick.waypoint)),this._redrawConnection()}onPointerMove(e){this._waypointsComponent.move(L.sum(this._point,e)),this._redrawConnection()}onPointerUp(){this._waypointsComponent.update(),this._store.fDraggable?.fConnectionWaypointsChanged.emit(this._eventFromPick())}_redrawConnection(){this._connection.setLine(this._connection.line),this._connection.redraw()}_eventFromPick(){return new tu(this._connection.fId(),this._connection.fWaypoints()?.waypoints()||[])}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275prov=C({token:t,factory:t.\u0275fac})}return t})(),WR=(()=>{let t=class nc{_dragContext=u(J);get _fDragHandler(){return this._dragContext.draggableItems[0]}handle(e){this._isDroppedConnectionReassignEvent()&&this._fDragHandler.onPointerUp()}_isDroppedConnectionReassignEvent(){return this._dragContext.draggableItems.some(e=>e instanceof nu)}static \u0275fac=function(i){return new(i||nc)};static \u0275prov=C({token:nc,factory:nc.\u0275fac})};return t=S([I(eu)],t),t})(),iu=class{event;fTrigger;static fToken=Symbol("DragConnectionWaypointPreparationRequest");constructor(n,e){this.event=n,this.fTrigger=e}},$R=(()=>{let t=class ic{_mediator=u(R);_store=u(N);_dragContext=u(J);_dragInjector=u(tt);get _canvas(){return this._store.fCanvas}get _transform(){return this._canvas.transform}get _flowHost(){return this._store.flowHost}get _connections(){return this._store.connections.getAll()}handle(e){let i=ao(e.event.getPosition(),this._flowHost,this._transform),o=this._pickControlPoint(i);if(!o||!this._isValidTrigger(e))return;let r=this._dragInjector.get(nu);r.setPick(o),this._dragContext.onPointerDownScale=this._transform.scale,this._dragContext.onPointerDownPosition=Q.fromPoint(e.event.getPosition()).elementTransform(this._flowHost).div(this._transform.scale),this._dragContext.draggableItems=[r],queueMicrotask(()=>this._updateConnectionLayer(o.connection))}_pickControlPoint(e){if(this._dragContext.isEmpty())return CO(this._connections,e)}_isValidTrigger(e){return Et(e.event.originalEvent,e.fTrigger)}_updateConnectionLayer(e){this._mediator.execute(new oi(e,this._canvas.fConnectionsContainer().nativeElement))}static \u0275fac=function(i){return new(i||ic)};static \u0275prov=C({token:ic,factory:ic.\u0275fac})};return t=S([I(iu)],t),t})(),KR=[LR,BR,zR,FR,qR,VR,GR,UR,$R,WR],ou=class{event;static fToken=Symbol("DropToGroupFinalizeRequest");constructor(n){this.event=n}},YR=1,Ko=(()=>{class t extends st{type="move-node-to-parent";kind="assign-to-container";_store=u(N);_dragSession=u(J);get _transform(){return this._store.transform}_candidateGroups=[];_debounceTimer=null;_activeTarget=null;get activeTarget(){return this._activeTarget}initialize(e){this._candidateGroups=e}prepareDragSequence(){for(let{node:e}of this._candidateGroups)e.hostElement.classList.add($e.GROUPING.DROP_ACTIVE)}onPointerMove(e){this._debounceTimer&&clearTimeout(this._debounceTimer),this._debounceTimer=setTimeout(()=>this._updateActiveTarget(e),YR)}onPointerUp(){this._clearActiveTarget();for(let{node:e}of this._candidateGroups)e.hostElement.classList.remove($e.GROUPING.DROP_ACTIVE);this._debounceTimer&&(clearTimeout(this._debounceTimer),this._debounceTimer=null)}_updateActiveTarget(e){let i=this._getPointerInFlow(e),o=this._findTargetUnderPointer(i);o?this._setActiveTarget(o):this._clearActiveTarget()}_getPointerInFlow(e){let i=Q.fromPoint(this._dragSession.onPointerDownPosition).add(e),o=Q.fromPoint(this._transform.position).add(this._transform.scaledPosition).div(this._transform.scale);return i.sub(o)}_findTargetUnderPointer(e){return this._candidateGroups.find(i=>j.isIncludePoint(i.rect,e))}_setActiveTarget(e){this._activeTarget?.node!==e.node&&(this._clearActiveTarget(),this._activeTarget=e,e.node.setClass($e.GROUPING.OVER_BOUNDARY))}_clearActiveTarget(){this._activeTarget?.node.removeClass($e.GROUPING.OVER_BOUNDARY),this._activeTarget=null}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275prov=C({token:t,factory:t.\u0275fac})}return t})(),ru=class{nodesAndGroups;static fToken=Symbol("CreateDragNodeHierarchyRequest");constructor(n){this.nodesAndGroups=n}},am=class{rootHandlers;participants;constructor(n,e){this.rootHandlers=n,this.participants=e}},sm=class{fNodeIds;constructor(n){this.fNodeIds=n}},Nm="move-node",Rm="drag-node";function XR(t){return t.getEvent().kind===Rm||t.getEvent().fEventType===Nm}var Tn=(()=>{class t extends st{type=Nm;kind=Rm;data(){return new sm(this.items.map(e=>e.nodeOrGroup.fId()))}_magneticLines=null;_magneticRects=null;items;roots;initialize(e,i){this.items=e,this.roots=i}setMagneticLines(e){this._magneticLines=e}setMagneticRects(e){this._magneticRects=e}calculateMagneticLinesGuides(e){return this.calculateMagneticSnaps(e).lines}calculateMagneticSnaps(e){this._previewRoots(e);let i=this._rootsUnionRect();return{lines:this._magneticLines?._computeGuides(i),rects:this._magneticRects?._computeRects(i)}}prepareDragSequence(){for(let e of this.roots)e.prepareDragSequence()}onPointerMove(e){this._previewRoots(e);let i=this._rootsUnionRect();this._magneticLines?.scheduleRender(i),this._magneticRects?.scheduleRender(i)}onPointerUp(){for(let e of this.roots)e.onPointerUp();this._magneticLines?.clearGuides(),this._magneticRects?.clearGuides(),requestAnimationFrame(()=>this._refreshDraggedNodes())}_previewRoots(e){for(let i of this.roots)i.onPointerMove(e)}_rootsUnionRect(){let e=null;for(let i of this.roots){let o=i.getLastRect();e=e?j.union([e,o]):o}return e??j.initialize()}_refreshDraggedNodes(){for(let{nodeOrGroup:e}of this.roots)e.refresh()}destroy(){for(let e of this.roots??[])e.destroy?.()}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275prov=C({token:t,factory:t.\u0275fac})}return t})(),au=class{_limits;_quantizeStep;constructor(n,e=.5){this._limits=n,this._quantizeStep=e}applyInto(n,e){let{min:i,max:o}=this._limits,r=this._clamp(n.x,i.x,o.x),a=this._clamp(n.y,i.y,o.y),s=n.x-r,c=n.y-a,d=this._quantizeSigned(s,this._quantizeStep),f=this._quantizeSigned(c,this._quantizeStep);e.value.x=r,e.value.y=a,e.edges.left=d<0,e.edges.right=d>0,e.edges.top=f<0,e.edges.bottom=f>0,e.overflow.x=Math.abs(d),e.overflow.y=Math.abs(f)}_quantizeSigned(n,e){if(e<=0||n===0)return 0;let i=n/e;return(n>0?Math.ceil(i):Math.floor(i))*e}_clamp(n,e,i){return Math.min(Math.max(n,e),i)}},cm=class{_pointerDown;_vCellSize;_hCellSize;_snapWhileDragging;constructor(n,e){this._pointerDown=e,this._vCellSize=n.vCellSize(),this._hCellSize=n.hCellSize(),this._snapWhileDragging=n.fCellSizeWhileDragging()}snap(n,e){let i=e||this._snapWhileDragging;return this._strategies[+i](n)}_strategies={0:this._noSnap.bind(this),1:this._snapWithCellSize.bind(this)};_snapWithCellSize(n){return{x:this._snapToGrid(this._pointerDown.x+n.x,this._hCellSize)-this._pointerDown.x,y:this._snapToGrid(this._pointerDown.y+n.y,this._vCellSize)-this._pointerDown.y}}_noSnap(n){return n}_snapToGrid(n,e){return Math.round(n/e)*e}};function W0(){return{value:{x:0,y:0},overflow:{x:0,y:0},edges:{left:!1,right:!1,top:!1,bottom:!1}}}var dm=class{_snapper;_hardClamp;_hardResult=W0();_softClamps=[];_softResults=[];constructor(n,e,i){let o=n.get(N).fDraggable;this._snapper=new cm(o,e),this._hardClamp=new au(i.hard,.5);for(let r of i.soft)this._softClamps.push(new au(r.limits,.5)),this._softResults.push(W0())}apply(n,e=!1){let i=this._snapper.snap(n,e);this._hardClamp.applyInto(i,this._hardResult);let o={x:this._hardResult.value.x,y:this._hardResult.value.y};for(let r=0;r<this._softClamps.length;r++)this._softClamps[r].applyInto(o,this._softResults[r]);return{hardDelta:o,soft:this._softResults}}finalize(n){return this.apply(n,!0)}};function $0(t,n,e){let{x:i,y:o,width:r,height:a}=t;return e.right&&n.x>0&&(r+=n.x),e.left&&n.x>0&&(i-=n.x,r+=n.x),e.bottom&&n.y>0&&(a+=n.y),e.top&&n.y>0&&(o-=n.y,a+=n.y),j.initialize(i,o,r,a)}var lm=class extends st{_injector;nodeOrGroup;children;sourceConnectionHandlers;targetConnectionHandlers;type=Nm;kind=Rm;_startPosition=L.initialize();_startRect=j.initialize();_applyConstraints=n=>n;_lastSoftResults=[];_deltaConstraints;_constraints;_lastPosition=L.initialize();_softParentConnectionHandlers=[];_mediator;constructor(n,e,i=[],o=[],r=[]){super(),this._injector=n,this.nodeOrGroup=e,this.children=i,this.sourceConnectionHandlers=o,this.targetConnectionHandlers=r,this._mediator=n.get(R),this._startRect=this._mediator.execute(new ze(e.hostElement)),this._startPosition=ae({},e._position)}setConstraints(n){this._constraints=n,this._deltaConstraints=new dm(this._injector,this._startPosition,n),this._applyConstraints=e=>{let i=this._deltaConstraints.apply(e);return this._applySoftExpansions(i.soft),i.hardDelta}}setSoftParentConnectionHandlers(n){this._softParentConnectionHandlers=n}finalizeConstraints(){this._applyConstraints=n=>{let e=this._deltaConstraints.finalize(n);return this._applySoftExpansions(e.soft),e.hardDelta}}getLastRect(){return j.initialize(this._lastPosition.x,this._lastPosition.y,this._startRect.width,this._startRect.height)}prepareDragSequence(){for(let n of this.children)n.prepareDragSequence();this.nodeOrGroup.hostElement.classList.add($e.DRAG_AND_DROP.DRAGGING)}onPointerMove(n){let e=this._applyConstraints(n);for(let i of this.children)i.onPointerMove(e);this._redraw(this._startPlus(e));for(let i of this.sourceConnectionHandlers)i.setSourceDelta(e);for(let i of this.targetConnectionHandlers)i.setTargetDelta(e)}onPointerUp(){for(let n of this.children)n.onPointerUp();this.nodeOrGroup.position.set(this.nodeOrGroup._position),this.nodeOrGroup.hostElement.classList.remove($e.DRAG_AND_DROP.DRAGGING),this._emitExpandedEvent()}_startPlus(n){return L.sum(this._startPosition,n)}_redraw(n){this._lastPosition=n,this.nodeOrGroup.updatePosition(n),this._mediator.execute(new Jn(this.nodeOrGroup.fId(),j.initialize(n.x,n.y,this._startRect.width,this._startRect.height))),this.nodeOrGroup.redraw()}_applySoftExpansions(n){this._lastSoftResults=n;for(let e=0;e<n.length;e++){let i=n[e],o=this._constraints.soft[e],r=$0(o.boundingRect,i.overflow,i.edges);this._commitParentRect(o.nodeOrGroup,r)&&this._updateParentConnectionHandlers(e)}}_commitParentRect(n,e){let i=n._position.x!==e.x||n._position.y!==e.y||n._size?.width!==e.width||n._size?.height!==e.height;return n.updateSize({width:e.width,height:e.height}),n.updatePosition({x:e.x,y:e.y}),this._mediator.execute(new Jn(n.fId(),e)),n.redraw(),i}_updateParentConnectionHandlers(n){let e=this._softParentConnectionHandlers[n];if(!e)return;let i=new Map;for(let o of e.source){let r=this._readConnectorRect(o.connector,i);o.handler.setSourceDelta(this._buildDelta(o.baselineRect,r))}for(let o of e.target){let r=this._readConnectorRect(o.connector,i);o.handler.setTargetDelta(this._buildDelta(o.baselineRect,r))}}_readConnectorRect(n,e){let i=`${n.kind}::${n.fId()}`,o=e.get(i);if(o)return o;let r=this._mediator.execute(new vt(n)).rect;return e.set(i,r),r}_buildDelta(n,e){return L.initialize(e.x-n.x,e.y-n.y)}_emitExpandedEvent(){for(let n=0;n<this._lastSoftResults.length;n++){let e=this._lastSoftResults[n];if(!e.overflow.x&&!e.overflow.y)continue;let i=this._constraints.soft[n],o=$0(i.boundingRect,e.overflow,e.edges);i.nodeOrGroup.sizeChange.emit(o)}}destroy(){for(let n of this.children)n.destroy?.();this.children=[],this.sourceConnectionHandlers=[],this.targetConnectionHandlers=[],this._lastSoftResults=[],this._applyConstraints=n=>n,this._softParentConnectionHandlers=[]}},ZR=(()=>{let t=class oc{_injector=u(ut);handle({nodesAndGroups:e}){let i=this._createHandlerByNodeId(e),o=this._linkParentsAndCollectRoots(e,i);return new am(o,Array.from(i.values()))}_createHandlerByNodeId(e){let i=new Map;for(let o of e)i.set(o.fId(),new lm(this._injector,o));return i}_linkParentsAndCollectRoots(e,i){let o=[];for(let r of e){let a=i.get(r.fId());if(!a)continue;let s=r.fParentId(),c=s?i.get(s):void 0;c?c.children.push(a):o.push(a)}return o}static \u0275fac=function(i){return new(i||oc)};static \u0275prov=C({token:oc,factory:oc.\u0275fac})};return t=S([I(ru)],t),t})(),su=class{nodeOrGroup;static fToken=Symbol("BuildDragNodeConstraintsRequest");constructor(n){this.nodeOrGroup=n}},Yo=class{nodeOrGroup;childrenPaddings;static fToken=Symbol("ReadNodeBoundsWithPaddingsRequest");constructor(n,e){this.nodeOrGroup=n,this.childrenPaddings=e}},um=class{nodeOrGroup;boundingRect;innerRect;paddings;constructor(n,e,i,o){this.nodeOrGroup=n,this.boundingRect=e,this.innerRect=i,this.paddings=o}},QR=(()=>{let t=class rc{_mediator=u(R);handle({nodeOrGroup:e,childrenPaddings:i}){let o=this._readBoundingRect(e),r=this._readOwnPaddings(e,o),a=[r[0]+i[0],r[1]+i[1],r[2]+i[2],r[3]+i[3]],s=j.initialize(o.x+a[0],o.y+a[1],o.width-a[0]-a[2],o.height-a[1]-a[3]);return new um(e,o,s,a)}_readBoundingRect(e){return this._mediator.execute(new ze(e.hostElement))}_readOwnPaddings(e,i){return this._mediator.execute(new ii(e,i))}static \u0275fac=function(i){return new(i||rc)};static \u0275prov=C({token:rc,factory:rc.\u0275fac})};return t=S([I(Yo)],t),t})(),JR=(()=>{let t=class ac{_mediator=u(R);handle({nodeOrGroup:e}){let i=this._readCurrentRect(e),o=this._readParentsChain(e);return this._buildConstraints(o,i)}_readCurrentRect(e){return this._mediator.execute(new ze(e.hostElement))}_readParentsChain(e){return this._mediator.execute(new eo(e))??[]}_buildConstraints(e,i){let o=[],r=Sy(),a=[0,0,0,0];for(let s of e){let c=this._readParentBounds(s,a);a=c.paddings;let d=this._calculateDifference(c.innerRect,i);if(this._isAutoExpand(s))o.push(this._makeSoftLimit(s,c.boundingRect,d));else{r=d;break}}return{soft:o,hard:r}}_readParentBounds(e,i){return this._mediator.execute(new Yo(e,i))}_calculateDifference(e,i){return{min:this._calculateMinimumDifference(e,i),max:this._calculateMaximumDifference(e,i)}}_calculateMinimumDifference(e,i){return L.initialize(e.x-i.x,e.y-i.y)}_calculateMaximumDifference(e,i){return L.initialize(e.x+e.width-(i.x+i.width),e.y+e.height-(i.y+i.height))}_isAutoExpand(e){return e.fAutoExpandOnChildHit()}_makeSoftLimit(e,i,o){return{nodeOrGroup:e,boundingRect:i,initialSize:e._size,limits:o}}static \u0275fac=function(i){return new(i||ac)};static \u0275prov=C({token:ac,factory:ac.\u0275fac})};return t=S([I(su)],t),t})(),cu=class{rootHandlers;participants;static fToken=Symbol("CreateDragNodeHandlerRequest");constructor(n,e){this.rootHandlers=n,this.participants=e}},du=class{dragHandler;constraints;handlerPool;static fToken=Symbol("AttachSoftParentConnectionDragHandlersToNodeRequest");constructor(n,e,i){this.dragHandler=n,this.constraints=e,this.handlerPool=i}},Xo=class{_mediator=u(R);_store=u(N);_behaviour=u(ro);_source;_target;_sourceRef;_targetRef;_sourceDelta=L.initialize();_targetDelta=L.initialize();connection;initialize(n){this.connection=n,this._source=this._store.outputs.require(this.connection.fOutputId()),this._target=this._store.inputs.require(this.connection.fInputId()),this._sourceRef=this._readRectRef(this._source),this._targetRef=this._readRectRef(this._target)}setSourceDelta(n){this._sourceDelta=n,this._mediator.execute(new Qn(this._source.fId(),this._source.kind,this._withDelta(this._sourceRef.rect,n)))}setTargetDelta(n){this._targetDelta=n,this._mediator.execute(new Qn(this._target.fId(),this._target.kind,this._withDelta(this._targetRef.rect,n)))}redraw(){let n=this._buildLine();this.connection.setLine(n),this.connection.redraw()}_buildLine(){let n=Ge.fromRoundedRect(this._sourceRef.rect).addPoint(this._sourceDelta),e=Ge.fromRoundedRect(this._targetRef.rect).addPoint(this._targetDelta);return this._behaviour.handle(new Rt(n,e,this.connection,this._sourceRef.connector.fConnectableSide,this._targetRef.connector.fConnectableSide,this._resolveRotationContext(this._sourceRef.connector),this._resolveRotationContext(this._targetRef.connector)))}_readRectRef(n){return this._mediator.execute(new vt(n))}_withDelta(n,e){return Ge.fromRoundedRect(n).addPoint(e)}_resolveRotationContext(n){return this._mediator.execute(new tn(n))}},Zo=(()=>{class t extends Xo{setSourceDelta(e){super.setSourceDelta(e),super.redraw()}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275prov=C({token:t,factory:t.\u0275fac})}return t})(),Qo=(()=>{class t extends Xo{_sourceUpdated=!1;_targetUpdated=!1;setSourceDelta(e){super.setSourceDelta(e),this._sourceUpdated=!0,this._redrawIfReady()}setTargetDelta(e){super.setTargetDelta(e),this._targetUpdated=!0,this._redrawIfReady()}_redrawIfReady(){!this._sourceUpdated||!this._targetUpdated||(this._sourceUpdated=!1,this._targetUpdated=!1,this.redraw())}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275prov=C({token:t,factory:t.\u0275fac})}return t})(),Jo=(()=>{class t extends Xo{setTargetDelta(e){super.setTargetDelta(e),this.redraw()}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275prov=C({token:t,factory:t.\u0275fac})}return t})(),e2=(()=>{let t=class sc{_store=u(N);_mediator=u(R);_dragInjector=u(tt);handle({dragHandler:e,constraints:i,handlerPool:o}){let r=i.soft.map(a=>this._buildParentConnectionHandlers(a.nodeOrGroup,o));e.setSoftParentConnectionHandlers(r)}_buildParentConnectionHandlers(e,i){let o=this._store.outputs.getAll().filter(f=>f.fNodeId===e.fId()),r=this._store.inputs.getAll().filter(f=>f.fNodeId===e.fId());if(!o.length&&!r.length)return{source:[],target:[]};let a=new Set(o.map(f=>f.fId())),s=new Set(r.map(f=>f.fId())),c=new Map,d={source:[],target:[]};for(let f of this._store.connections.getAll()){let p=a.has(f.fOutputId()),v=s.has(f.fInputId());if(!p&&!v)continue;let x=this._getExistingConnectionHandler(i,f);if(x||(x=this._createConnectionHandler(f,p,v),i.push(x)),p){let w=this._store.outputs.require(f.fOutputId());d.source.push({handler:x,connector:w,baselineRect:this._readConnectorRect(w,c)})}if(v){let w=this._store.inputs.require(f.fInputId());d.target.push({handler:x,connector:w,baselineRect:this._readConnectorRect(w,c)})}}return d}_getExistingConnectionHandler(e,i){return e.find(o=>o.connection.fId()===i.fId())}_createConnectionHandler(e,i,o){let r;return i&&o?r=this._dragInjector.createInstance(Qo):i?r=this._dragInjector.createInstance(Zo):r=this._dragInjector.createInstance(Jo),r.initialize(e),r}_readConnectorRect(e,i){let o=`${e.kind}::${e.fId()}`,r=i.get(o);if(r)return r;let a=this._mediator.execute(new vt(e)).rect;return i.set(o,a),a}static \u0275fac=function(i){return new(i||sc)};static \u0275prov=C({token:sc,factory:sc.\u0275fac})};return t=S([I(du)],t),t})(),t2=(()=>{let t=class cc{_dragInjector=u(tt);_mediator=u(R);handle({rootHandlers:e,participants:i}){let o=this._collectConnectionHandlers(i);this._applyConstraintsToRoots(e,o);let r=this._dragInjector.createInstance(Tn);return r.initialize(i,e),r}_applyConstraintsToRoots(e,i){for(let o of e){let r=this._calculateConstraints(o.nodeOrGroup);o.setConstraints(r),this._attachSoftParentConnectionHandlers(o,r,i)}}_collectConnectionHandlers(e){let i=new Map;for(let o of e){for(let r of o.sourceConnectionHandlers)i.set(r.connection.fId(),r);for(let r of o.targetConnectionHandlers)i.set(r.connection.fId(),r)}return Array.from(i.values())}_attachSoftParentConnectionHandlers(e,i,o){this._mediator.execute(new du(e,i,o))}_calculateConstraints(e){return this._mediator.execute(new su(e))}static \u0275fac=function(i){return new(i||cc)};static \u0275prov=C({token:cc,factory:cc.\u0275fac})};return t=S([I(cu)],t),t})(),lu=class{dragHandler;sourceIds;handlerPool;static fToken=Symbol("AttachTargetConnectionDragHandlersToNodeRequest");constructor(n,e,i){this.dragHandler=n,this.sourceIds=e,this.handlerPool=i}},n2=(()=>{let t=class dc{_store=u(N);_dragInjector=u(tt);get _connections(){return this._store.connections.getAll()}handle(e){this._getInputConnections(e.dragHandler.nodeOrGroup).forEach(i=>{this._createAndSetConnectionToNodeHandler(i,e)})}_getInputConnections(e){let i=new Set(this._getNodeInputIds(e));return this._connections.filter(o=>i.has(o.fInputId()))}_getNodeInputIds(e){return this._store.inputs.getAll().filter(i=>e.isContains(i.hostElement)).map(i=>i.fId())}_createAndSetConnectionToNodeHandler(e,i){let o=this._getExistingConnectionHandler(i.handlerPool,e);o||(o=this._createConnectionHandler(i.sourceIds,e),i.handlerPool.push(o)),i.dragHandler.targetConnectionHandlers.push(o)}_getExistingConnectionHandler(e,i){return e.find(o=>o.connection.fId()===i.fId())}_createConnectionHandler(e,i){let o;return e.includes(i.fOutputId())?o=this._dragInjector.createInstance(Qo):o=this._dragInjector.createInstance(Jo),o.initialize(i),o}static \u0275fac=function(i){return new(i||dc)};static \u0275prov=C({token:dc,factory:dc.\u0275fac})};return t=S([I(lu)],t),t})(),uu=class{dragHandler;targetIds;handlerPool;static fToken=Symbol("AttachSourceConnectionDragHandlersToNodeRequest");constructor(n,e,i){this.dragHandler=n,this.targetIds=e,this.handlerPool=i}},i2=(()=>{let t=class lc{_store=u(N);_dragInjector=u(tt);get _connections(){return this._store.connections.getAll()}handle(e){this._getOutputConnections(e.dragHandler.nodeOrGroup).forEach(i=>{this._createAndSetConnectionToNodeHandler(i,e)})}_getOutputConnections(e){let i=new Set(this._getNodeOutputIds(e));return this._connections.filter(o=>i.has(o.fOutputId()))}_getNodeOutputIds(e){return this._store.outputs.getAll().filter(i=>e.isContains(i.hostElement)).map(i=>i.fId())}_createAndSetConnectionToNodeHandler(e,i){let o=this._getExistingConnectionHandler(i.handlerPool,e);o||(o=this._createConnectionHandler(i.targetIds,e),i.handlerPool.push(o)),i.dragHandler.sourceConnectionHandlers.push(o)}_getExistingConnectionHandler(e,i){return e.find(o=>o.connection.fId()===i.fId())}_createConnectionHandler(e,i){let o;return e.includes(i.fInputId())?o=this._dragInjector.createInstance(Qo):o=this._dragInjector.createInstance(Zo),o.initialize(i),o}static \u0275fac=function(i){return new(i||lc)};static \u0275prov=C({token:lc,factory:lc.\u0275fac})};return t=S([I(uu)],t),t})(),fu=class{nodeOrGroup;static fToken=Symbol("AttachDragNodeHandlerFromSelectionRequest");constructor(n){this.nodeOrGroup=n}},o2=(()=>{let t=class uc{_mediator=u(R);_store=u(N);_dragSession=u(J);handle({nodeOrGroup:e}){let i=this._collectSelected(e),o=this._withDeepChildren(i),r=this._mediator.execute(new ru(o)),a=this._collectSourceConnectorIds(o),s=this._collectTargetConnectorIds(o);return this._attachConnectionHandlers(r.participants,a,s),this._mediator.execute(new cu(r.rootHandlers,r.participants))}_collectSelected(e){let i=[];for(let o of this._dragSession.selectedItems){let r=this._findNodeByHost(o.hostElement);r&&i.push(r)}return e&&!i.includes(e)&&i.push(e),i}_findNodeByHost(e){return this._store.nodes.getAll().find(i=>i.isContains(e))}_withDeepChildren(e){let i=[];for(let o of e){i.push(o);let r=this._mediator.execute(new oo(o.fId()));i.push(...r)}return i}_collectSourceConnectorIds(e){return lh(e,i=>this._store.outputs.getAll().filter(o=>o.fNodeId===i.fId()).map(o=>o.fId()))}_collectTargetConnectorIds(e){return lh(e,i=>this._store.inputs.getAll().filter(o=>o.fNodeId===i.fId()).map(o=>o.fId()))}_attachConnectionHandlers(e,i,o){let r=[];for(let a of e)this._mediator.execute(new uu(a,o,r)),this._mediator.execute(new lu(a,i,r))}static \u0275fac=function(i){return new(i||uc)};static \u0275prov=C({token:uc,factory:uc.\u0275fac})};return t=S([I(fu)],t),t})(),r2=[ZR,JR,t2,n2,i2,e2,QR,o2];function a2(t,n,e=10){let i=n.x,o=n.y,r=i+n.width,a=o+n.height,s=n.gravityCenter.x,c=n.gravityCenter.y,d,f,p=1/0,v,x,w=1/0,T=(O,A)=>{let V=A<0?-A:A;V<=e&&V<p&&(p=V,d=O,f=A)},E=(O,A)=>{let V=A<0?-A:A;V<=e&&V<w&&(w=V,v=O,x=A)};for(let O=0;O<t.length;O++){let A=t[O],V=A.x,q=A.y,X=V+A.width,ue=q+A.height,qe=A.gravityCenter.x,ye=A.gravityCenter.y;T(V,i-V),T(X,i-X),T(qe,s-qe),T(V,r-V),T(X,r-X),E(q,o-q),E(ue,o-ue),E(ye,c-ye),E(q,a-q),E(ue,a-ue)}return{x:{guide:d,delta:f},y:{guide:v,delta:x}}}var K0=["left","top","width","height"],pu=class{_element;constructor(n,e,i="f-line"){this._element=n.document.createElement("div"),this._element.classList.add(i),this._element.style.position="absolute",this._element.style.display="none",e.appendChild(this._element)}show(){this._element.style.display="block"}hide(){this._element.style.display="none"}render(n){for(let e of K0){let i=n[e];i!=null&&(this._element.style[e]=`${i}px`)}}clearRect(){for(let n of K0)this._element.style.removeProperty(n)}destroy(){this._element.remove()}},fm=class{_horizontal;_vertical;constructor(n,e){this._horizontal=new pu(n,e),this._vertical=new pu(n,e),this._horizontal.hide(),this._vertical.hide()}drawVerticalLine(n,e,i){this._vertical.show(),this._vertical.render({left:n*i.scale+i.position.x+i.scaledPosition.x,top:0,width:1,height:e.height})}drawHorizontalLine(n,e,i){this._horizontal.show(),this._horizontal.render({left:0,top:n*i.scale+i.position.y+i.scaledPosition.y,width:e.width,height:1})}hideVertical(){this._vertical.hide()}hideHorizontal(){this._horizontal.hide()}hideAll(){this._vertical.hide(),this._horizontal.hide()}destroy(){this._vertical.destroy(),this._horizontal.destroy()}},hu=class{static fToken=Symbol("MagneticLinesPreparationRequest")},s2=(()=>{let t=class fc{_mediator=u(R);_store=u(N);_browser=u(He);_injector=u(ut);_dragSession=u(J);_renderer;handle(e){let i=this._store.instances.get(Pe.MAGNETIC_LINES);if(!i)return;let o=this._dragSession.draggableItems.find(r=>r instanceof Tn);o&&o.setMagneticLines(new pm(this._injector,this._renderer??this._createRenderer(i),this._flowHostSize(),this._notDraggedRects(this._draggedNodes(o.items))))}_draggedNodes(e){return e.map(i=>i.nodeOrGroup)}_flowHostSize(){return this._store.flowHost.getBoundingClientRect()}_createRenderer({hostElement:e}){return this._renderer=new fm(this._browser,e),this._renderer}_notDraggedRects(e){let i=new Set(e);return this._store.nodes.getAll().filter(r=>!i.has(r)).map(r=>this._mediator.execute(new ze(r.hostElement)))}static \u0275fac=function(i){return new(i||fc)};static \u0275prov=C({token:fc,factory:fc.\u0275fac})};return t=S([I(hu)],t),t})(),pm=class{_renderer;_size;_rects;_timerId=null;_canvasTransform;_alignThreshold=10;constructor(n,e,i,o){this._renderer=e,this._size=i,this._rects=o;let r=n.get(N);this._alignThreshold=r.instances.require(Pe.MAGNETIC_LINES).threshold(),this._canvasTransform=r.transform}scheduleRender(n){this._timerId&&clearTimeout(this._timerId),this._timerId=setTimeout(()=>this._renderGuides(this._computeGuides(n)),15)}_renderGuides(n){this._renderVertical(n),this._renderHorizontal(n)}_renderVertical(n){n.x.guide!==void 0?this._renderer.drawVerticalLine(n.x.guide,this._size,this._canvasTransform):this._renderer.hideVertical()}_renderHorizontal(n){n.y.guide!==void 0?this._renderer.drawHorizontalLine(n.y.guide,this._size,this._canvasTransform):this._renderer.hideHorizontal()}_computeGuides(n){return a2(this._rects,n,this._alignThreshold)}clearGuides(){this._renderer.hideAll(),this._timerId&&(clearTimeout(this._timerId),this._timerId=null)}},Y0=["top","center","bottom"],X0=["left","center","right"];function c2(t,n,e=10,i=10){let o=n.x,r=n.y,a=o+n.width,s=r+n.height,c=n.gravityCenter.x,d=n.gravityCenter.y,f=d2(t,n,o,r,a,s,c,d,e,i),p=l2(t,n,o,r,a,s,c,d,e,i);return f&&(!p||f.absDelta<=p.absDelta)?{axis:"x",delta:f.delta,gap:f.gap,rects:f.rects,alignMode:f.alignMode,crossDelta:f.crossDelta}:p?{axis:"y",delta:p.delta,gap:p.gap,rects:p.rects,alignMode:p.alignMode,crossDelta:p.crossDelta}:{rects:[]}}function d2(t,n,e,i,o,r,a,s,c,d){let f=1/0,p,v=0,x,w=[],T=0,E=[],O=[],A=[];for(let V=0;V<Y0.length;V++){let q=V===0?i:V===1?s:r;E.length=0,O.length=0,A.length=0;let X=1/0,ue=-1/0,qe=0,ye=1/0,Je=1/0;for(let Se=0;Se<t.length;Se++){let me=t[Se],So=V===0?me.y:V===1?me.gravityCenter.y:me.y+me.height,Kp=q-So,Kt=Hi(Kp);if(Kt>c)continue;E.push(Se),O.push(me.x),A.push(me.x+me.width);let Io=me.y,To=me.y+me.height;Io<X&&(X=Io),To>ue&&(ue=To),(Kt<ye||Kt===ye&&Se<Je)&&(ye=Kt,qe=So,Je=Se)}let fe=E.length;if(fe<2)continue;Ay(E,O,A);let _e=0;for(;_e<fe&&O[_e]<=a;)_e++;let nt=_e>0&&_e<fe,De,pt;nt?(De=_e-1,pt=_e):_e<=0?(De=0,pt=1):(De=fe-2,pt=fe-1);let ht=O[pt]-A[De];if(ht<0)continue;let Ye;if(nt){Ye=A[De]+ht;let Se=Ye+n.width,me=O[pt]-Se;if(Hi(me-ht)>d)continue}else _e<=0?Ye=O[0]-ht-n.width:Ye=A[fe-1]+ht;let wo=e-Ye,qn=Hi(wo);if(qn>d||qn>=f)continue;let kt=u2(E,O,A,X,ue);if(nt){let Se=Ye,me=Ye+n.width;kt.push({left:A[De],top:X,width:Se-A[De],height:ue-X}),kt.push({left:me,top:X,width:O[pt]-me,height:ue-X})}else if(_e<=0){let Se=Ye+n.width;kt.push({left:Se,top:X,width:O[0]-Se,height:ue-X})}else kt.push({left:A[fe-1],top:X,width:Ye-A[fe-1],height:ue-X});let $p=q-qe;f=qn,p=wo,v=ht,x=Y0[V],w=kt,T=$p}if(!(p===void 0||x===void 0))return{delta:p,absDelta:f,gap:v,rects:w,alignMode:x,crossDelta:T}}function l2(t,n,e,i,o,r,a,s,c,d){let f=1/0,p,v=0,x,w=[],T=0,E=[],O=[],A=[];for(let V=0;V<X0.length;V++){let q=V===0?e:V===1?a:o;E.length=0,O.length=0,A.length=0;let X=1/0,ue=-1/0,qe=0,ye=1/0,Je=1/0;for(let Se=0;Se<t.length;Se++){let me=t[Se],So=V===0?me.x:V===1?me.gravityCenter.x:me.x+me.width,Kp=q-So,Kt=Hi(Kp);if(Kt>c)continue;E.push(Se),O.push(me.y),A.push(me.y+me.height);let Io=me.x,To=me.x+me.width;Io<X&&(X=Io),To>ue&&(ue=To),(Kt<ye||Kt===ye&&Se<Je)&&(ye=Kt,qe=So,Je=Se)}let fe=E.length;if(fe<2)continue;Ay(E,O,A);let _e=0;for(;_e<fe&&O[_e]<=s;)_e++;let nt=_e>0&&_e<fe,De,pt;nt?(De=_e-1,pt=_e):_e<=0?(De=0,pt=1):(De=fe-2,pt=fe-1);let ht=O[pt]-A[De];if(ht<0)continue;let Ye;if(nt){Ye=A[De]+ht;let Se=Ye+n.height,me=O[pt]-Se;if(Hi(me-ht)>d)continue}else _e<=0?Ye=O[0]-ht-n.height:Ye=A[fe-1]+ht;let wo=i-Ye,qn=Hi(wo);if(qn>d||qn>=f)continue;let kt=f2(E,O,A,X,ue);if(nt){let Se=Ye,me=Ye+n.height;kt.push({left:X,top:A[De],width:ue-X,height:Se-A[De]}),kt.push({left:X,top:me,width:ue-X,height:O[pt]-me})}else if(_e<=0){let Se=Ye+n.height;kt.push({left:X,top:Se,width:ue-X,height:O[0]-Se})}else kt.push({left:X,top:A[fe-1],width:ue-X,height:Ye-A[fe-1]});let $p=q-qe;f=qn,p=wo,v=ht,x=X0[V],w=kt,T=$p}if(!(p===void 0||x===void 0))return{delta:p,absDelta:f,gap:v,rects:w,alignMode:x,crossDelta:T}}function u2(t,n,e,i,o){let r=[],a=o-i;for(let s=0;s<t.length-1;s++){let c=n[s+1]-e[s];c<0||r.push({left:e[s],top:i,width:c,height:a})}return r}function f2(t,n,e,i,o){let r=[],a=o-i;for(let s=0;s<t.length-1;s++){let c=n[s+1]-e[s];c<0||r.push({left:i,top:e[s],width:a,height:c})}return r}function Ay(t,n,e){for(let i=1;i<n.length;i++){let o=n[i],r=e[i],a=t[i],s=i-1;for(;s>=0;){let c=n[s],d=t[s];if(c<o||c===o&&d<a)break;n[s+1]=c,e[s+1]=e[s],t[s+1]=d,s--}n[s+1]=o,e[s+1]=r,t[s+1]=a}}function Hi(t){return t<0?-t:t}var hm=class{_element;_isVisible=!1;_left=Number.NaN;_top=Number.NaN;_width=Number.NaN;_height=Number.NaN;constructor(n,e,i="f-rect"){this._element=n.document.createElement("div"),this._element.classList.add(i);let o=this._element.style;o.position="absolute",o.display="none",o.boxSizing="border-box",o.pointerEvents="none",e.appendChild(this._element)}show(){this._isVisible||(this._isVisible=!0,this._element.style.display="block")}hide(){this._isVisible&&(this._isVisible=!1,this._element.style.display="none")}render(n,e,i,o){let r=this._element.style;n!==this._left&&(this._left=n,r.left=n+"px"),e!==this._top&&(this._top=e,r.top=e+"px"),i!==this._width&&(this._width=i,r.width=i+"px"),o!==this._height&&(this._height=o,r.height=o+"px")}clearRect(){this._left=Number.NaN,this._top=Number.NaN,this._width=Number.NaN,this._height=Number.NaN;let n=this._element.style;n.removeProperty("left"),n.removeProperty("top"),n.removeProperty("width"),n.removeProperty("height")}destroy(){this._element.remove()}},mm=class{_browser;_hostElement;_className;_pool=[];_activeCount=0;constructor(n,e,i="f-rect"){this._browser=n,this._hostElement=e,this._className=i}draw(n,e){let i=e.scale,o=e.position.x+e.scaledPosition.x,r=e.position.y+e.scaledPosition.y;for(let a=0;a<n.length;a++){let s=this._getOrCreate(a),c=n[a];s.show(),s.render(c.left*i+o,c.top*i+r,c.width*i,c.height*i)}for(let a=n.length;a<this._activeCount;a++)this._pool[a].hide();this._activeCount=n.length}hideAll(){for(let n=0;n<this._activeCount;n++)this._pool[n].hide();this._activeCount=0}destroy(){for(let n of this._pool)n.destroy();this._pool.length=0,this._activeCount=0}_getOrCreate(n){if(n<this._pool.length)return this._pool[n];let e=new hm(this._browser,this._hostElement,this._className);return this._pool.push(e),e}},mu=class{static fToken=Symbol("MagneticRectsPreparationRequest")},p2=(()=>{let t=class pc{_mediator=u(R);_store=u(N);_browser=u(He);_injector=u(ut);_dragSession=u(J);_renderer;handle(e){let i=this._store.instances.get(Pe.MAGNETIC_RECTS);if(!i)return;let o=this._dragSession.draggableItems.find(r=>r instanceof Tn);o&&o.setMagneticRects(new gm(this._injector,this._getRenderer(i),this._notDraggedRects(this._draggedNodes(o.items))))}_draggedNodes(e){return e.map(i=>i.nodeOrGroup)}_getRenderer(e){return this._renderer||(this._renderer=new mm(this._browser,e.hostElement)),this._renderer?.destroy(),this._renderer}_notDraggedRects(e){let i=new Set(e);return this._store.nodes.getAll().filter(r=>!i.has(r)).map(r=>this._mediator.execute(new ze(r.hostElement)))}static \u0275fac=function(i){return new(i||pc)};static \u0275prov=C({token:pc,factory:pc.\u0275fac})};return t=S([I(mu)],t),t})(),gm=class{_renderer;_rects;_timerId=null;_canvasTransform;_alignThreshold=10;_spacingThreshold=10;constructor(n,e,i){this._renderer=e,this._rects=i;let o=n.get(N),r=o.instances.require(Pe.MAGNETIC_RECTS);this._alignThreshold=r.alignThreshold(),this._spacingThreshold=r.spacingThreshold(),this._canvasTransform=o.transform}scheduleRender(n){this._timerId&&clearTimeout(this._timerId),this._timerId=setTimeout(()=>this._renderRects(this._computeRects(n)),15)}_renderRects(n){if(n.axis!==void 0&&n.delta!==void 0&&n.rects.length>0){this._renderer.draw(n.rects,this._canvasTransform);return}this._renderer.hideAll()}_computeRects(n){return c2(this._rects,n,this._alignThreshold,this._spacingThreshold)}clearGuides(){this._renderer.hideAll(),this._timerId&&(clearTimeout(this._timerId),this._timerId=null)}},gu=class{event;static fToken=Symbol("DragNodeFinalizeRequest");constructor(n){this.event=n}},_m=class{nodes;fNodes;constructor(n){this.nodes=n,this.fNodes=n}},h2=(()=>{let t=class hc{_mediator=u(R);_store=u(N);_dragSession=u(J);_dragHandler;handle({event:e}){if(this._dragHandler=this._getDragHandler(),!this._dragHandler)return;let i=this._buildDragDelta(e.getPosition()),o=this._dragHandler.calculateMagneticSnaps(i),r=this._applySnapToDelta(i,o.lines,o.rects);this._finalizeMove(this._dragHandler,r),this._emitNodeIntersectIfNeeded(this._dragHandler)}_getDragHandler(){return this._dragSession.draggableItems.find(XR)}_buildDragDelta(e){return Q.fromPoint(e).elementTransform(this._store.flowHost).div(this._dragSession.onPointerDownScale).sub(this._dragSession.onPointerDownPosition)}_applySnapToDelta(e,i,o){let r=e.x,a=e.y;return i&&(r=this._hasLineSnapValue(i.x)?e.x-(i.x.delta||0):r,a=this._hasLineSnapValue(i.y)?e.y-(i.y.delta||0):a),this._hasRectSnapValue(o)&&(o.axis==="x"?(r=e.x-o.delta,a=e.y-(o.crossDelta??0)):(a=e.y-o.delta,r=e.x-(o.crossDelta??0))),{x:r,y:a}}_hasLineSnapValue(e){return e.guide!==void 0&&e.guide!==null}_hasRectSnapValue(e){return!!e&&e.axis!==void 0&&e.delta!==void 0}_finalizeMove(e,i){for(let o of e.roots)o.finalizeConstraints();e.onPointerMove(i),e.onPointerUp?.(),this._store.fDraggable?.fMoveNodes.emit(this._buildMoveNodesEvent(e))}_buildMoveNodesEvent(e){let i=e.getEvent(),a=((i.data??i.fData)?.fNodeIds??[]).map(s=>({id:s,position:this._store.nodes.get(s)?._position}));return new _m(a)}_emitNodeIntersectIfNeeded(e){if(!this._isDraggedJustOneNode(e)||!this._store.fDraggable?.fEmitOnNodeIntersect)return;let i=e.roots[0].nodeOrGroup;queueMicrotask(()=>this._mediator.execute(new ql(i)))}_isDraggedJustOneNode(e){return e.roots.length===1}static \u0275fac=function(i){return new(i||hc)};static \u0275prov=C({token:hc,factory:hc.\u0275fac})};return t=S([I(gu)],t),t})(),_u=class{event;trigger;static fToken=Symbol("DragNodePreparationRequest");constructor(n,e){this.event=n,this.trigger=e}},m2=(()=>{let t=class mc{_mediator=u(R);_store=u(N);_dragSession=u(J);handle({event:e,trigger:i}){if(!this._canStartDrag(e,i))return;let o=this._findDraggableNode(e.targetElement);o&&(this._storePointerDownContext(e),this._dragSession.draggableItems=[this._buildDragNodeHandler(o)],this._mediator.execute(new hu),this._mediator.execute(new mu))}_canStartDrag(e,i){return this._dragSession.isEmpty()&&this._isDragHandle(e.targetElement)&&Et(e.originalEvent,i)}_isDragHandle(e){return Do(e,".f-drag-handle")}_findDraggableNode(e){let i=this._store.nodes.getAll();for(let o of i)if(!o.fDraggingDisabled()&&o.isContains(e))return o}_storePointerDownContext(e){this._dragSession.onPointerDownScale=this._store.transform.scale,this._dragSession.onPointerDownPosition=Q.fromPoint(e.getPosition()).elementTransform(this._store.flowHost).div(this._store.transform.scale)}_buildDragNodeHandler(e){return(e.fSelectionDisabled()||!e.isSelected())&&queueMicrotask(()=>{this._mediator.execute(new io(e))}),this._mediator.execute(new fu(e))}static \u0275fac=function(i){return new(i||mc)};static \u0275prov=C({token:mc,factory:mc.\u0275fac})};return t=S([I(_u)],t),t})(),g2=[...r2,s2,p2,h2,m2],ym=class{targetGroupId;nodeIds;dropPosition;fTargetNode;fNodes;fDropPosition;constructor(n,e,i){this.targetGroupId=n,this.nodeIds=e,this.dropPosition=i,this.fTargetNode=n,this.fNodes=e,this.fDropPosition=i}},_2=(()=>{let t=class gc{_dragSession=u(J);_store=u(N);handle({event:e}){let i=this._findDropHandler();if(!i)return;let o=i.activeTarget?.node;o&&this._emitDropToGroupEvent(o.fId(),e),i.onPointerUp?.()}_findDropHandler(){return this._dragSession.draggableItems.find(e=>e instanceof Ko)}_emitDropToGroupEvent(e,i){this._store.fDraggable?.fDropToGroup.emit(new ym(e,this._getTopLevelDraggedIds(),i.getPosition()))}_getTopLevelDraggedIds(){let i=this._getMoveSummaryHandler().items.map(a=>a.nodeOrGroup),o=new Set(i.map(a=>a.fId())),r=[];for(let a of i){let s=a.fParentId();(!s||!o.has(s))&&r.push(a.fId())}return r}_getMoveSummaryHandler(){let e=this._dragSession.draggableItems.find(i=>i instanceof Tn);if(!e)throw new Error("DropToGroup requires DragNodeHandler.");return e}static \u0275fac=function(i){return new(i||gc)};static \u0275prov=C({token:gc,factory:gc.\u0275fac})};return t=S([I(ou)],t),t})(),yu=class{event;static fToken=Symbol("DropToGroupPreparationRequest");constructor(n){this.event=n}},vu=class{candidates;static fToken=Symbol("SortDropCandidatesByLayerRequest");constructor(n){this.candidates=n}},y2=(()=>{let t=class _c{handle({candidates:e}){let i=e.map((o,r)=>({candidate:o,index:r}));return i.sort((o,r)=>{let a=this._compareDomOrder(o.candidate.node.hostElement,r.candidate.node.hostElement);return a!==0?-a:o.index-r.index}),i.map(o=>o.candidate)}_compareDomOrder(e,i){if(e===i)return 0;let o=e.compareDocumentPosition(i);if((o&Node.DOCUMENT_POSITION_FOLLOWING)!==0)return-1;if((o&Node.DOCUMENT_POSITION_PRECEDING)!==0)return 1;if(o&Node.DOCUMENT_POSITION_DISCONNECTED){let r=e.getBoundingClientRect?.()??{top:0,left:0},a=i.getBoundingClientRect?.()??{top:0,left:0};return r.top!==a.top?r.top<a.top?-1:1:r.left!==a.left?r.left<a.left?-1:1:0}return 0}static \u0275fac=function(i){return new(i||_c)};static \u0275prov=C({token:_c,factory:_c.\u0275fac})};return t=S([I(vu)],t),t})(),vm=class{_onPointerDown;_limit;_vCellSize;_hCellSize;_adjustCellSize;constructor(n,e,i){this._onPointerDown=e,this._limit=i;let o=n.get(N);this._vCellSize=o.fDraggable.vCellSize(),this._hCellSize=o.fDraggable.hCellSize(),this._adjustCellSize=o.fDraggable.fCellSizeWhileDragging()}limit(n){let{min:e,max:i}=this._limit,{x:o,y:r}=this._cellSizeStrategies[+this._adjustCellSize](n);return{x:this._clamp(o,e.x,i.x),y:this._clamp(r,e.y,i.y)}}_cellSizeStrategies={0:this._skipCellSize.bind(this),1:this._applyCellSize.bind(this)};_applyCellSize(n){return{x:this._snapToGrid(this._onPointerDown.x+n.x,this._hCellSize)-this._onPointerDown.x,y:this._snapToGrid(this._onPointerDown.y+n.y,this._vCellSize)-this._onPointerDown.y}}_skipCellSize(n){return n}_clamp(n,e,i){return Math.min(Math.max(n,e),i)}_snapToGrid(n,e){return Math.round(n/e)*e}},Cu=class{externalItem;static fToken=Symbol("DragExternalItemCreatePlaceholderRequest");constructor(n){this.externalItem=n}},v2=(()=>{let t=class yc{_browser=u(He);_containerRef=u(ta);handle({externalItem:e}){let{hostElement:i,placeholder:o}=e,r=o(),a=r?this._fromTemplate(r):this._fromHost(i);return a.classList.add("f-external-item-placeholder"),a.style.pointerEvents="none",a}_fromTemplate(e){return ph(this._createViewRef(e),this._browser.document)}_fromHost(e){return uh(e)}_createViewRef(e){let i=this._containerRef.createEmbeddedView(e);return i.detectChanges(),i}static \u0275fac=function(i){return new(i||yc)};static \u0275prov=C({token:yc,factory:yc.\u0275fac})};return t=S([I(Cu)],t),t})(),xu=class{externalItem;static fToken=Symbol("DragExternalItemCreatePreviewRequest");constructor(n){this.externalItem=n}},C2=(()=>{let t=class vc{_browser=u(He);_containerRef=u(ta);handle({externalItem:e}){let{hostElement:i,preview:o}=e,r=o(),a=r?this._fromTemplate(r):this._fromHost(i);return this._setPreviewStyles(a),M0(a),a.classList.add("f-external-item-preview"),a}_fromTemplate(e){return ph(this._createViewRef(e),this._browser.document)}_fromHost(e){return uh(e)}_createViewRef(e){let i=this._containerRef.createEmbeddedView(e);return i.detectChanges(),i}_setPreviewStyles(e){fh(e.style,{"pointer-events":"none",margin:"showPopover"in e?"0 auto 0 0":"0",position:"fixed",top:"0",left:"0","z-index":"1000"},new Set(["position"]))}static \u0275fac=function(i){return new(i||vc)};static \u0275prov=C({token:vc,factory:vc.\u0275fac})};return t=S([I(xu)],t),t})(),bu=class{event;static fToken=Symbol("DragExternalItemFinalizeRequest");constructor(n){this.event=n}},Cm=class{externalItemRect;data;targetContainerId;dropPosition;rect;fTargetNode;fDropPosition;constructor(n,e,i,o){this.externalItemRect=n,this.data=e,this.targetContainerId=i,this.dropPosition=o,this.rect=n,this.fTargetNode=i,this.fDropPosition=o}},x2="external-item",b2="drag-external-item";function w2(t){return t.getEvent().kind===b2||t.getEvent().fEventType===x2}var S2=(()=>{let t=class Cc{_result=u(En);_mediator=u(R);_store=u(N);_dragSession=u(J);_browser=u(He);get _createNodeEmitter(){return this._store.fDraggable?.fCreateNode}handle(e){let i=this._findExternalItemHandler();if(!i)return;let o=this._getDestinationNodeOrGroupId();this._emitEvent(this._getElementsFromPoint(e.event.getPosition()),o,e.event.getPosition()),i.onPointerUp(),this._dragSession.draggableItems=[]}_findExternalItemHandler(){return this._dragSession.draggableItems.find(e=>w2(e))}_getDestinationNodeOrGroupId(){let e=this._getDropToGroupHandler(),i=e.activeTarget?.node.fId();return e.onPointerUp?.(),i}_getDropToGroupHandler(){let e=this._dragSession.draggableItems.find(i=>i instanceof Ko);if(!e)throw new Error("NodeDragToParentDragHandler not found");return e}_getElementsFromPoint(e){return this._browser.document.elementsFromPoint(e.x,e.y).filter(i=>!i.closest(".f-external-item")&&!i.closest(".f-external-item-preview"))}_emitEvent(e,i,o){this._isPointerInCanvasRect(e)&&this._createNodeEmitter?.emit(new Cm(this._getPreviewRect(),this._result.getData().externalItem.data(),i,i?o:void 0))}_isPointerInCanvasRect(e){return e.length?this._store.flowHost.contains(e[0]):!1}_getPreviewRect(){return this._mediator.execute(new ze(this._result.getData().preview))}static \u0275fac=function(i){return new(i||Cc)};static \u0275prov=C({token:Cc,factory:Cc.\u0275fac})};return t=S([I(bu)],t),t})(),xm=class{data;constructor(n){this.data=n}},wu=class extends st{_externalItem;_pointerDownClientPosition;type="external-item";kind="drag-external-item";data(){return new xm(this._externalItem.data())}_result;_mediator;_browser;_store;_previewEl;_placeholderEl;_startRect=j.initialize();_pointerDownRect=j.initialize();_absoluteOffsetFromFlow=L.initialize();_grabOffsetFromPointer=L.initialize();_originalParent;_originalNextSibling;_originalDisplay;_applyConstraints=n=>n;constructor(n,e,i){super(),this._externalItem=e,this._pointerDownClientPosition=i,this._store=n.get(N),this._result=n.get(En),this._mediator=n.get(R),this._browser=n.get(He),this._originalDisplay=this._host.style.display,this._initConstraints(n)}get _host(){return this._externalItem.hostElement}get _overlayRoot(){return this._browser.document.fullscreenElement??this._browser.document.body}get _transform(){return this._store.transform}_initConstraints(n){this._startRect=this._getStartRect();let e=new vm(n,this._startRect,Sy());this._applyConstraints=i=>e.limit(i)}_getStartRect(){return this._mediator.execute(new ze(this._externalItem.hostElement))}prepareDragSequence(){this._pointerDownRect=this._readAbsoluteRect(this._host),this._absoluteOffsetFromFlow=Q.fromPoint(this._pointerDownRect).sub(this._toAbsolutePoint(this._startRect)),this._grabOffsetFromPointer=this._clientToAbsolute(this._pointerDownClientPosition).sub(this._pointerDownRect),this._rememberOriginalPlacement(),this._previewEl=this._createPreview(),this._placeholderEl=this._createPlaceholder(),this._placePreviewIntoOverlay(),this._swapOriginalWithPlaceholderAndMoveOriginalIntoOverlay(),this._result.setData({preview:this._previewEl,externalItem:this._externalItem})}_rememberOriginalPlacement(){let n=this._host.parentNode;if(!n){this._originalParent=void 0,this._originalNextSibling=null;return}this._originalParent=n,this._originalNextSibling=this._host.nextSibling}_createPreview(){let n=this._mediator.execute(new xu(this._externalItem));return this._externalItem.previewMatchSize()&&this._matchSize(n,this._pointerDownRect),n.style.transform=Z0(this._pointerDownRect),n}_createPlaceholder(){return this._mediator.execute(new Cu(this._externalItem))}_placePreviewIntoOverlay(){this._overlayRoot.appendChild(this._previewEl)}_swapOriginalWithPlaceholderAndMoveOriginalIntoOverlay(){let n=this._originalParent,e=this._placeholderEl;if(!n||!e)return;let i=n.replaceChild(e,this._host);this._overlayRoot.appendChild(i),this._host.style.display="none"}onPointerMove(n,e){if(!this._previewEl)return;let i=this._resolveDeltaFromPointer(n,e),o=this._applyConstraints(i),r=Q.fromPoint(this._startRect).add(o),a=this._toAbsolutePoint(r).add(this._absoluteOffsetFromFlow);this._previewEl.style.transform=Z0(a)}onPointerUp(){this._previewEl&&this._previewEl.parentNode&&this._previewEl.parentNode.removeChild(this._previewEl),this._restoreOriginalInParent(),this._host.style.display=this._originalDisplay||"block",this._previewEl=void 0,this._placeholderEl=void 0,this._originalParent=void 0,this._originalNextSibling=null}_restoreOriginalInParent(){let n=this._originalParent,e=this._placeholderEl;if(!(!n||!e)){if(e.parentNode===n){n.replaceChild(this._host,e);return}this._originalNextSibling&&this._originalNextSibling.parentNode===n?n.insertBefore(this._host,this._originalNextSibling):n.appendChild(this._host)}}_matchSize(n,e){n.style.width=`${e.width}px`,n.style.height=`${e.height}px`}_readAbsoluteRect(n){let e=n.getBoundingClientRect(),i=this._browser.window.pageYOffset||this._browser.document.documentElement.scrollTop,o=this._browser.window.pageXOffset||this._browser.document.documentElement.scrollLeft;return j.initialize(e.left+o,e.top+i,e.width,e.height)}_toAbsolutePoint(n){let e=Q.fromPoint(this._transform.position).add(this._transform.scaledPosition);return Q.fromPoint(n).mult(this._transform.scale).add(e).add(this._getFlowHostAbsolutePosition())}_resolveDeltaFromPointer(n,e){let i=e?.getPosition();if(!i)return n;let o=this._clientToAbsolute(i).sub(this._grabOffsetFromPointer),r=this._toFlowPoint(o);return Q.fromPoint(r).sub(this._startRect)}_toFlowPoint(n){let e=this._getFlowHostAbsolutePosition(),i=Q.fromPoint(this._transform.position).add(this._transform.scaledPosition);return Q.fromPoint(n).sub(e).sub(i).div(this._transform.scale)}_getFlowHostAbsolutePosition(){let n=this._store.flowHost.getBoundingClientRect(),e=this._browser.window.pageYOffset||this._browser.document.documentElement.scrollTop,i=this._browser.window.pageXOffset||this._browser.document.documentElement.scrollLeft;return L.initialize(n.left+i,n.top+e)}_clientToAbsolute(n){let e=this._browser.window.pageYOffset||this._browser.document.documentElement.scrollTop,i=this._browser.window.pageXOffset||this._browser.document.documentElement.scrollLeft;return Q.fromPoint(n).add(L.initialize(i,e))}};function Z0({x:t,y:n}){return`translate3d(${Math.round(t)}px, ${Math.round(n)}px, 0)`}var Su=class{event;fTrigger;static fToken=Symbol("DragExternalItemPreparationRequest");constructor(n,e){this.event=n,this.fTrigger=e}};function I2(t){return!!t.closest?.("[fExternalItem]")}function T2(t){return t.closest("[fExternalItem]")}var E2=(()=>{class t{_byHost=new Map;_items=U([]);items=k(()=>this._items());getByElement(e){let i=T2(e);return i?this._byHost.get(i):void 0}getByHost(e){return this._byHost.get(e)}register(e){let i=e.hostElement,o=this._byHost.get(i);o!==e&&(o&&o!==e&&this._byHost.delete(i),this._byHost.set(i,e),this._sync())}remove(e){let i=e.hostElement;this._byHost.get(i)===e&&(this._byHost.delete(i),this._sync())}_sync(){this._items.set([...this._byHost.values()])}static \u0275fac=function(i){return new(i||t)};static \u0275prov=C({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var P2=(()=>{let t=class xc{_apiService=u(E2);_dragSession=u(J);_store=u(N);_injector=u(ut);get _flowHost(){return this._store.flowHost}get _transform(){return this._store.transform}handle({event:e,fTrigger:i}){if(!this._dragSession.isEmpty()||!Et(e.originalEvent,i))return;let o=this._resolveExternalItem(e.targetElement);if(!o||o.disabled())return;let r=this._transform.scale??1;this._dragSession.onPointerDownScale=r,this._dragSession.onPointerDownPosition=Q.fromPoint(e.getPosition()).elementTransform(this._flowHost).div(r),this._dragSession.draggableItems=[new wu(this._injector,o,e.getPosition())]}_resolveExternalItem(e){return this._apiService.getByElement(e)}static \u0275fac=function(i){return new(i||xc)};static \u0275prov=C({token:xc,factory:xc.\u0275fac})};return t=S([I(Su)],t),t})(),Iu=class{event;static fToken=Symbol("PreventDefaultIsExternalItemRequest");constructor(n){this.event=n}},M2=(()=>{let t=class bc{handle(e){this._isTargetItemExternal(e.event)&&e.event.preventDefault()}_isTargetItemExternal(e){let i=this._isExternalItem(e.target),o=this._isExternalItem(e.target.parentNode);return i||o}_isExternalItem(e){let i=!1;try{i=I2(e)}catch{}return i}static \u0275fac=function(i){return new(i||bc)};static \u0275prov=C({token:bc,factory:bc.\u0275fac})};return t=S([I(Iu)],t),t})(),D2=[v2,C2,S2,P2,M2],k2=(()=>{let t=class wc{_mediator=u(R);_dragContext=u(J);_store=u(N);_dragInjector=u(tt);get _allNodes(){return this._store.nodes.getAll()}handle({event:e}){if(!this._canPrepare())return;let i=this._allNodes.find(a=>a.isContains(e.targetElement));if(!i&&!this._hasExternalDrag())throw new Error("Drag target node not found");let o=this._sortedTargetsForDrop();if(i){let a=i.fParentId(),s=this._mediator.execute(new tf(a));s.length&&(o=o.filter(c=>s.includes(c.node.fId())))}let r=this._dragInjector.get(Ko);r.initialize(o),this._dragContext.draggableItems.push(r)}_canPrepare(){return this._hasMoveDrag()||this._hasExternalDrag()}_hasMoveDrag(){return this._dragContext.draggableItems.some(e=>e instanceof Tn)}_hasExternalDrag(){return this._dragContext.draggableItems.some(e=>e instanceof wu)}_sortedTargetsForDrop(){let e=this._getDraggedNodes(),i=e.some(s=>s instanceof em),o=this._withParents(e),a=this._eligibleTargets(o,i).map(s=>{let c=this._mediator.execute(new ze(s.hostElement));return{node:s,rect:c}});return this._mediator.execute(new vu(a))}_getDraggedNodes(){let e=this._dragContext.draggableItems.find(i=>i instanceof Tn);return e?e.items.map(i=>i.nodeOrGroup):[]}_withParents(e){return e.reduce((i,o)=>{i.push(o);let r=this._mediator.execute(new eo(o));return i.push(...r),i},[])}_eligibleTargets(e,i){let o=this._allNodes.filter(r=>!e.includes(r));return i?o.filter(r=>r instanceof em):o}static \u0275fac=function(i){return new(i||wc)};static \u0275prov=C({token:wc,factory:wc.\u0275fac})};return t=S([I(yu)],t),t})(),O2=[y2,k2,_2],Tu=class{event;static fToken=Symbol("PinchToZoomFinalizeRequest");constructor(n){this.event=n}},N2=.5,Eu=(()=>{class t extends st{type="pinch-to-zoom";kind="pinch-to-zoom";_store=u(N);get _flowHost(){return this._store.flowHost}get _canvas(){return this._store.fCanvas}get _zoomComponent(){return this._store.instances.require(Pe.ZOOM)}_startDistance=null;_startScale=null;_touches;initialize(e){this._touches=e}prepareDragSequence(){let e=Q0(this._touches);e!=null&&(this._startDistance=e,this._startScale=this._canvas.transform.scale)}onPointerMove(e,i){if(i.touches.length!==2||this._startDistance==null||this._startScale==null)return;let o=Q0(i.touches),r=R2(i.touches);if(o==null||r==null){this._reset();return}if(Math.abs(o-this._startDistance)<N2)return;i.preventDefault();let a=o/this._startDistance,s=this._clamp(this._startScale*a);this._canvas.setScale(s,this._castPositionToFlow(r)),this._canvas.redraw()}_clamp(e){return Math.max(this._zoomComponent.minimum,Math.min(e,this._zoomComponent.maximum))}_castPositionToFlow(e){return Q.fromPoint(e).elementTransform(this._flowHost)}_reset(){this._startScale=null,this._startDistance=null}onPointerUp(){this._reset(),this._canvas.emitCanvasChangeEvent()}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275prov=C({token:t,factory:t.\u0275fac})}return t})();function R2(t){if(t.length!==2)return null;let n=t[0],e=t[1];return L.initialize((n.clientX+e.clientX)/2,(n.clientY+e.clientY)/2)}function Q0(t){if(t.length!==2)return null;let n=t[0],e=t[1];return Math.hypot(e.clientX-n.clientX,e.clientY-n.clientY)}var A2=(()=>{let t=class Sc{_dragSession=u(J);handle(e){if(this._hasPinchZoomHandler())for(let i of this._dragSession.draggableItems)i.onPointerUp?.()}_hasPinchZoomHandler(){return this._dragSession.draggableItems.some(e=>e instanceof Eu)}static \u0275fac=function(i){return new(i||Sc)};static \u0275prov=C({token:Sc,factory:Sc.\u0275fac})};return t=S([I(Tu)],t),t})(),Pu=class{event;static fToken=Symbol("PinchToZoomPreparationRequest");constructor(n){this.event=n}},F2=(()=>{let t=class Ic{_dragInjector=u(tt);_store=u(N);_dragSession=u(J);handle({event:e}){this._canStart(e)&&(this._dragSession.onPointerDownScale=1,this._dragSession.onPointerDownPosition=new Q,this._dragSession.draggableItems=[this._getHandler(e)])}_canStart(e){return this._dragSession.isEmpty()&&e.touches?.length===2&&!e.isEventInLockedContext&&this._hasZoomComponent()}_hasZoomComponent(){return this._store.instances.has(Pe.ZOOM)}_getHandler(e){let i=this._dragInjector.get(Eu);return i.initialize(e.touches),i}static \u0275fac=function(i){return new(i||Ic)};static \u0275prov=C({token:Ic,factory:Ic.\u0275fac})};return t=S([I(Pu)],t),t})(),L2=[F2,A2],Mu=class{event;static fToken=Symbol("SelectionAreaFinalizeRequest");constructor(n){this.event=n}},B2=(()=>{let t=class Tc{_dragSession=u(J);handle(e){this._isValid()&&this._dragSession.draggableItems.forEach(i=>{i.onPointerUp?.()})}_isValid(){return this._dragSession.draggableItems.some(e=>e.getEvent().kind==="selection-area")}static \u0275fac=function(i){return new(i||Tc)};static \u0275prov=C({token:Tc,factory:Tc.\u0275fac})};return t=S([I(Mu)],t),t})(),bm=(()=>{class t extends st{type="selection-area";kind="selection-area";_store=u(N);_dragSession=u(J);_mediator=u(R);_canBeSelected=[];_selectedByMove=[];get _transform(){return this._store.transform}get _canvasPosition(){return Q.fromPoint(this._transform.position).add(this._transform.scaledPosition)}get _instance(){return this._store.instances.require(Pe.SELECTION_AREA)}prepareDragSequence(){this._canBeSelected=this._mediator.execute(new mf),this._show(),this._draw(j.initialize(this._dragSession.onPointerDownPosition.x,this._dragSession.onPointerDownPosition.y))}onPointerMove(e){let i=Q.fromPoint(e).add(this._dragSession.onPointerDownPosition),o=this._getMinimumPoint(this._dragSession.onPointerDownPosition,i),r=Math.abs(e.x),a=Math.abs(e.y),s=j.initialize(o.x,o.y,r,a);this._draw(s),this._selectedByMove=[],this._canBeSelected.forEach(c=>{c.element.unmarkAsSelected();let d=j.addPoint(j.mult(c.fRect,this._transform.scale),this._canvasPosition);j.intersectionWithRect(d,s)&&(c.element.markAsSelected(),this._selectedByMove.push(c.element))}),this._mediator.execute(new xn)}_getMinimumPoint(e,i){return L.initialize(Math.min(e.x,i.x),Math.min(e.y,i.y))}onPointerUp(){this._hide(),this._dragSession.selectedItems.push(...this._selectedByMove),this._selectedByMove.length>0&&(this._dragSession.isSelectedChanged=!0)}_draw(e){let i=this._instance.hostElement.style;i.left=e.x+"px",i.top=e.y+"px",i.width=e.width+"px",i.height=e.height+"px"}_show(){this._instance.hostElement.style.display="block"}_hide(){this._instance.hostElement.style.display="none"}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275prov=C({token:t,factory:t.\u0275fac})}return t})(),Du=class{event;static fToken=Symbol("SelectionAreaPreparationRequest");constructor(n){this.event=n}},z2=(()=>{let t=class Ec{_store=u(N);_dragSession=u(J);_dragInjector=u(tt);get _instance(){return this._store.instances.get(Pe.SELECTION_AREA)}handle(e){this._isValid(e)&&(this._dragSession.onPointerDownScale=1,this._dragSession.onPointerDownPosition=Q.fromPoint(e.event.getPosition()).elementTransform(this._store.flowHost),this._dragSession.draggableItems=[this._dragInjector.createInstance(bm)])}_isValid(e){return!!this._instance&&this._dragSession.isEmpty()&&Et(e.event.originalEvent,this._instance.fTrigger)}static \u0275fac=function(i){return new(i||Ec)};static \u0275prov=C({token:Ec,factory:Ec.\u0275fac})};return t=S([I(Du)],t),t})(),q2=[z2,B2],ku=class{rect;childrenBounds;static fToken=Symbol("ApplyChildResizeConstraintsRequest");constructor(n,e){this.rect=n,this.childrenBounds=e}},V2=(()=>{let t=class Pc{handle({rect:e,childrenBounds:i}){i&&this._apply(e,i)}_apply(e,i){this._restrictLeft(e,i),this._restrictTop(e,i),this._restrictRight(e,i),this._restrictBottom(e,i),e.width=Math.max(0,e.width),e.height=Math.max(0,e.height)}_restrictLeft(e,i){let o=e.x-i.x;o>0&&(e.x-=o,e.width+=o)}_restrictTop(e,i){let o=e.y-i.y;o>0&&(e.y-=o,e.height+=o)}_restrictRight(e,i){let o=i.x+i.width;e.x+e.width<=o&&(e.width=o-e.x)}_restrictBottom(e,i){let o=i.y+i.height;e.y+e.height<=o&&(e.height=o-e.y)}static \u0275fac=function(i){return new(i||Pc)};static \u0275prov=C({token:Pc,factory:Pc.\u0275fac})};return t=S([I(ku)],t),t})(),Ou=class{rect;limits;static fToken=Symbol("ApplyParentResizeConstraintsRequest");constructor(n,e){this.rect=n,this.limits=e}},G2=(()=>{let t=class Mc{_mediator=u(R);handle({rect:e,limits:i}){this._applyResizeConstraints(e,i)}_applyResizeConstraints(e,i){if(!i)return;let o=this._clampedCopyForCalculation(e,i);this._applySoftParentExpansions(o,i.softLimits),i.hardLimit&&this._clampRectToInner(e,i.hardLimit.innerRect)}_clampedCopyForCalculation(e,i){let o=ae({},e);return i.hardLimit&&this._clampRectToInner(o,i.hardLimit.innerRect),o}_clampRectToInner(e,i){if(e.x<i.x){let a=i.x-e.x;e.x+=a,e.width-=a}if(e.y<i.y){let a=i.y-e.y;e.y+=a,e.height-=a}let o=i.x+i.width;e.x+e.width>o&&(e.width=o-e.x);let r=i.y+i.height;e.y+e.height>r&&(e.height=r-e.y),e.width=Math.max(0,e.width),e.height=Math.max(0,e.height)}_applySoftParentExpansions(e,i){if(i?.length)for(let o of i)this._expandParentFromOriginalIfOverflow(e,o)}_expandParentFromOriginalIfOverflow(e,i){let o=i.innerRect,r=i.boundingRect,a=this._computeOverflow(o,e);if(!this._hasOverflow(a)){this._applyParentRect(i,r);return}let s=this._buildExpandedParentRect(r,a);this._applyParentRect(i,s)}_hasOverflow(e){return!!(e.left||e.top||e.right||e.bottom)}_computeOverflow(e,i){let o=Math.max(0,e.x-i.x),r=Math.max(0,e.y-i.y),a=Math.max(0,i.x+i.width-(e.x+e.width)),s=Math.max(0,i.y+i.height-(e.y+e.height));return{left:o,top:r,right:a,bottom:s}}_buildExpandedParentRect(e,i){let o=ae({},e);return i.left&&(o.x=e.x-i.left,o.width=e.width+i.left),i.top&&(o.y=e.y-i.top,o.height=e.height+i.top),i.right&&(o.width=(o.width??e.width)+i.right),i.bottom&&(o.height=(o.height??e.height)+i.bottom),o}_applyParentRect(e,i){e.nodeOrGroup.updatePosition(i),e.nodeOrGroup.updateSize(i),this._mediator.execute(new Jn(e.nodeOrGroup.fId(),i)),e.nodeOrGroup.redraw()}static \u0275fac=function(i){return new(i||Mc)};static \u0275prov=C({token:Mc,factory:Mc.\u0275fac})};return t=S([I(Ou)],t),t})(),Nu=class{originalRect;difference;handleType;minimumSize;static fToken=Symbol("CalculateChangedRectFromDifferenceRequest");constructor(n,e,i,o){this.originalRect=n,this.difference=e,this.handleType=i,this.minimumSize=o}},J0={[zt.LEFT]:{x:-1,y:0},[zt.LEFT_TOP]:{x:-1,y:-1},[zt.TOP]:{x:0,y:-1},[zt.RIGHT_TOP]:{x:1,y:-1},[zt.RIGHT]:{x:1,y:0},[zt.RIGHT_BOTTOM]:{x:1,y:1},[zt.BOTTOM]:{x:0,y:1},[zt.LEFT_BOTTOM]:{x:-1,y:1}},H2=(()=>{let t=class Dc{handle({originalRect:e,difference:i,handleType:o,minimumSize:r}){let a=this._changeSizeInRect(e,i,J0[o],r);return this._changePosition(e,i,J0[o],a)}_changeSizeInRect(e,i,o,r){let a=e.width+o.x*i.x,s=e.height+o.y*i.y,c=0,d=0;return a<0&&(c=a,a=Math.abs(a)),a<r.width&&(o.x===-1&&(c+=a-r.width),a=r.width),s<0&&(d=s,s=Math.abs(s)),s<r.height&&(o.y===-1&&(d+=s-r.height),s=r.height),j.initialize(c,d,a,s)}_changePosition(e,i,o,r){let a=e.x+(o.x===-1?i.x:0)+r.x,s=e.y+(o.y===-1?i.y:0)+r.y;return j.initialize(a,s,r.width,r.height)}static \u0275fac=function(i){return new(i||Dc)};static \u0275prov=C({token:Dc,factory:Dc.\u0275fac})};return t=S([I(Nu)],t),t})(),Ru=class{nodeOrGroup;paddings;static fToken=Symbol("CalculateDirectChildrenUnionRectRequest");constructor(n,e){this.nodeOrGroup=n,this.paddings=e}},j2=(()=>{let t=class kc{_mediator=u(R);_store=u(N);get _allNodesAndGroups(){return this._store.nodes.getAll()}handle({nodeOrGroup:e,paddings:i}){let o=j.union(this._calculateDirectChildren(e.fId()).map(r=>this._normalizeRect(r)));return o?this._concatRectWithParentPadding(o,i):null}_calculateDirectChildren(e){return this._allNodesAndGroups.filter(i=>i.fParentId()===e)}_normalizeRect(e){return this._mediator.execute(new ze(e.hostElement))}_concatRectWithParentPadding(e,i){return j.initialize(e.x-i[0],e.y-i[1],e.width+i[0]+i[2],e.height+i[1]+i[3])}static \u0275fac=function(i){return new(i||kc)};static \u0275prov=C({token:kc,factory:kc.\u0275fac})};return t=S([I(Ru)],t),t})(),er=class{nodeOrGroup;rect;static fToken=Symbol("CalculateResizeLimitsRequest");constructor(n,e){this.nodeOrGroup=n,this.rect=e}},U2=(()=>{let t=class Oc{_mediator=u(R);handle({nodeOrGroup:e,rect:i}){let o=this._getParentsChain(e),r=this._calculateNodePaddings(e,i);return{limits:this._buildSoftHardLimits(o),childrenBounds:this._getNormalizedChildrenBounds(e,r),minimumSize:at.initialize(r[0]+r[2],r[1]+r[3])}}_calculateNodePaddings(e,i){return this._mediator.execute(new ii(e,i))}_getNormalizedChildrenBounds(e,i){return this._mediator.execute(new Ru(e,i))}_getParentsChain(e){return this._mediator.execute(new eo(e))??[]}_buildSoftHardLimits(e){let i=[],o,r=[0,0,0,0];for(let a of e){let s=this._getParentInfo(a,r);if(r=s.paddings,this._isAutoExpand(a))i.push(this._makeLimit(a,s));else{o=this._makeLimit(a,s);break}}return{softLimits:i,hardLimit:o}}_getParentInfo(e,i){return this._mediator.execute(new Yo(e,i))}_isAutoExpand(e){return e.fAutoExpandOnChildHit()}_makeLimit(e,{boundingRect:i,innerRect:o}){return{nodeOrGroup:e,boundingRect:i,innerRect:o}}static \u0275fac=function(i){return new(i||Oc)};static \u0275prov=C({token:Oc,factory:Oc.\u0275fac})};return t=S([I(er)],t),t})(),Au=class{event;static fToken=Symbol("ResizeNodeFinalizeRequest");constructor(n){this.event=n}},Fy="node-resize",Ly="resize-node";function W2(t){return t.getEvent().kind===Ly||t.getEvent().fEventType===Fy}var $2=(()=>{let t=class Nc{_dragSession=u(J);handle(e){this._isNodeResizeHandler()&&this._dragSession.draggableItems.forEach(i=>i.onPointerUp?.())}_isNodeResizeHandler(){return this._dragSession.draggableItems.some(e=>W2(e))}static \u0275fac=function(i){return new(i||Nc)};static \u0275prov=C({token:Nc,factory:Nc.\u0275fac})};return t=S([I(Au)],t),t})(),wm=class{fNodeId;constructor(n){this.fNodeId=n}},Sm=(()=>{class t extends st{type=Fy;kind=Ly;data(){return new wm(this._nodeOrGroup.fId())}_mediator=u(R);_baselineRect;_constraints;_lastRect=null;_nodeOrGroup;_handleType;_nodeConnections={source:[],target:[]};_softParentConnections=[];initialize(e,i){this._nodeOrGroup=e,this._handleType=i}setNodeConnectionHandlers(e){this._nodeConnections=e}setSoftParentConnectionHandlers(e){this._softParentConnections=e}prepareDragSequence(){this._baselineRect=this._readBaselineRect(),this._constraints=this._buildConstraints(this._baselineRect),this._lastRect=this._baselineRect}onPointerMove(e){let i=this._calcNextRect(e);this._applyConstraints(i),this._commitRect(i),this._applyConnectionHandlers(this._nodeConnections);for(let o of this._softParentConnections)this._applyConnectionHandlers(o);this._lastRect=i}onPointerUp(){let e=this._lastRect??this._fallbackRectFromModel();this._nodeOrGroup.sizeChange.emit(e),requestAnimationFrame(()=>this._nodeOrGroup.refresh())}_readBaselineRect(){return this._mediator.execute(new ze(this._nodeOrGroup.hostElement))}_buildConstraints(e){return this._mediator.execute(new er(this._nodeOrGroup,e))}_calcNextRect(e){return this._mediator.execute(new Nu(this._baselineRect,e,this._handleType,this._constraints.minimumSize))}_applyConstraints(e){this._mediator.execute(new ku(e,this._constraints.childrenBounds)),this._mediator.execute(new Ou(e,this._constraints.limits))}_commitRect(e){this._nodeOrGroup.updatePosition({x:e.x,y:e.y}),this._nodeOrGroup.updateSize({width:e.width,height:e.height}),this._mediator.execute(new Jn(this._nodeOrGroup.fId(),e)),this._nodeOrGroup.redraw()}_fallbackRectFromModel(){return j.initialize(this._nodeOrGroup._position.x,this._nodeOrGroup._position.y,this._nodeOrGroup._size?.width,this._nodeOrGroup._size?.height)}_applyConnectionHandlers(e){if(!e.source.length&&!e.target.length)return;let i=new Map;for(let o of e.source){let r=this._readConnectorRect(o.connector,i);o.handler.setSourceRect(r)}for(let o of e.target){let r=this._readConnectorRect(o.connector,i);o.handler.setTargetRect(r)}}_readConnectorRect(e,i){let o=`${e.kind}::${e.fId()}`,r=i.get(o);if(r)return r;let a=this._mediator.execute(new Sn(e.hostElement,!1));return i.set(o,a),a}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275prov=C({token:t,factory:t.\u0275fac})}return t})(),tr=class{_mediator=u(R);_store=u(N);_behaviour=u(ro);_source;_target;_sourceRef;_targetRef;_sourceRect;_targetRect;connection;initialize(n){this.connection=n,this._source=this._store.outputs.require(this.connection.fOutputId()),this._target=this._store.inputs.require(this.connection.fInputId()),this._sourceRef=this._readRectRef(this._source),this._targetRef=this._readRectRef(this._target),this._sourceRect=Ge.fromRoundedRect(this._sourceRef.rect),this._targetRect=Ge.fromRoundedRect(this._targetRef.rect)}setSourceRect(n){this._sourceRect=Ge.fromRoundedRect(n),this._mediator.execute(new Qn(this._source.fId(),this._source.kind,this._sourceRect))}setTargetRect(n){this._targetRect=Ge.fromRoundedRect(n),this._mediator.execute(new Qn(this._target.fId(),this._target.kind,this._targetRect))}redraw(){let n=this._buildLine();this.connection.setLine(n),this.connection.redraw()}_buildLine(){let n=Ge.fromRoundedRect(this._sourceRect),e=Ge.fromRoundedRect(this._targetRect);return this._behaviour.handle(new Rt(n,e,this.connection,this._sourceRef.connector.fConnectableSide,this._targetRef.connector.fConnectableSide,this._resolveRotationContext(this._sourceRef.connector),this._resolveRotationContext(this._targetRef.connector)))}_readRectRef(n){return{connector:n,rect:this._mediator.execute(new Sn(n.hostElement,!1))}}_resolveRotationContext(n){return this._mediator.execute(new tn(n))}},K2=(()=>{class t extends tr{_sourceUpdated=!1;_targetUpdated=!1;setSourceRect(e){super.setSourceRect(e),this._sourceUpdated=!0,this._redrawIfReady()}setTargetRect(e){super.setTargetRect(e),this._targetUpdated=!0,this._redrawIfReady()}_redrawIfReady(){!this._sourceUpdated||!this._targetUpdated||(this._sourceUpdated=!1,this._targetUpdated=!1,super.redraw())}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275prov=C({token:t,factory:t.\u0275fac})}return t})(),Y2=(()=>{class t extends tr{setSourceRect(e){super.setSourceRect(e),super.redraw()}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275prov=C({token:t,factory:t.\u0275fac})}return t})(),X2=(()=>{class t extends tr{setTargetRect(e){super.setTargetRect(e),super.redraw()}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275prov=C({token:t,factory:t.\u0275fac})}return t})(),Fu=class{event;fTrigger;static fToken=Symbol("ResizeNodePreparationRequest");constructor(n,e){this.event=n,this.fTrigger=e}},Lu=class{handler;nodeOrGroup;static fToken=Symbol("AttachResizeConnectionDragHandlersToNodeRequest");constructor(n,e){this.handler=n,this.nodeOrGroup=e}},Z2=(()=>{let t=class Rc{_store=u(N);_mediator=u(R);_dragInjector=u(tt);handle({handler:e,nodeOrGroup:i}){let o=this._readSoftParents(i),r=[i,...o],a=this._collectSourceConnectorIds(r),s=this._collectTargetConnectorIds(r),c=new Map;e.setNodeConnectionHandlers(this._buildConnectionHandlersForNode(i,a,s,c)),e.setSoftParentConnectionHandlers(o.map(d=>this._buildConnectionHandlersForNode(d,a,s,c)))}_readSoftParents(e){let i=this._mediator.execute(new ze(e.hostElement));return this._mediator.execute(new er(e,i)).limits.softLimits.map(r=>r.nodeOrGroup)}_collectSourceConnectorIds(e){let i=new Set(e.map(o=>o.fId()));return new Set(this._store.outputs.getAll().filter(o=>i.has(o.fNodeId)).map(o=>o.fId()))}_collectTargetConnectorIds(e){let i=new Set(e.map(o=>o.fId()));return new Set(this._store.inputs.getAll().filter(o=>i.has(o.fNodeId)).map(o=>o.fId()))}_buildConnectionHandlersForNode(e,i,o,r){let a=this._store.outputs.getAll().filter(p=>p.fNodeId===e.fId()),s=this._store.inputs.getAll().filter(p=>p.fNodeId===e.fId());if(!a.length&&!s.length)return{source:[],target:[]};let c=new Set(a.map(p=>p.fId())),d=new Set(s.map(p=>p.fId())),f={source:[],target:[]};for(let p of this._store.connections.getAll()){let v=c.has(p.fOutputId()),x=d.has(p.fInputId());if(!v&&!x)continue;let w=r.get(p.fId())??this._createConnectionHandler(p,i,o);if(r.set(p.fId(),w),v){let T=this._store.outputs.require(p.fOutputId());f.source.push({handler:w,connector:T})}if(x){let T=this._store.inputs.require(p.fInputId());f.target.push({handler:w,connector:T})}}return f}_createConnectionHandler(e,i,o){let r=i.has(e.fOutputId()),a=o.has(e.fInputId()),s=r&&a?this._dragInjector.createInstance(K2):r?this._dragInjector.createInstance(Y2):this._dragInjector.createInstance(X2);return s.initialize(e),s}static \u0275fac=function(i){return new(i||Rc)};static \u0275prov=C({token:Rc,factory:Rc.\u0275fac})};return t=S([I(Lu)],t),t})(),Q2=(()=>{let t=class Ac{_mediator=u(R);_store=u(N);_dragSession=u(J);_dragInjector=u(tt);get _transform(){return this._store.transform}handle({event:e,fTrigger:i}){if(!this._dragSession.isEmpty()||!this._isResizeHandle(e.targetElement)||!Et(e.originalEvent,i))return;let o=this._findResizableNode(e.targetElement);if(!o)return;this._selectBeforeResize(o);let r=this._transform.scale??1;this._dragSession.onPointerDownScale=r,this._dragSession.onPointerDownPosition=Q.fromPoint(e.getPosition()).elementTransform(this._store.flowHost).div(r);let a=this._dragInjector.createInstance(Sm);a.initialize(o,this._readResizeHandleType(e.targetElement)),this._mediator.execute(new Lu(a,o)),this._dragSession.draggableItems=[a]}_isResizeHandle(e){return Do(e,".f-resize-handle")}_findResizableNode(e){let i=this._store.nodes.getAll().find(o=>o.isContains(e));if(i)return i.fDraggingDisabled()?void 0:i}_selectBeforeResize(e){queueMicrotask(()=>{this._mediator.execute(new io(e))})}_readResizeHandleType(e){let i=D0(e,"fResizeHandleType",".f-resize-handle");return zt[i]}static \u0275fac=function(i){return new(i||Ac)};static \u0275prov=C({token:Ac,factory:Ac.\u0275fac})};return t=S([I(Fu)],t),t})(),J2=[V2,G2,H2,j2,U2,Z2,$2,Q2],Bu=class{event;static fToken=Symbol("RotateNodeFinalizeRequest");constructor(n){this.event=n}},By="node-rotate",zy="rotate-node";function eA(t){return t.getEvent().kind===zy||t.getEvent().fEventType===By}var tA=(()=>{let t=class Fc{_dragSession=u(J);handle(e){this._isValid()&&this._dragSession.draggableItems.forEach(i=>{i.onPointerUp?.()})}_isValid(){return this._dragSession.draggableItems.some(e=>eA(e))}static \u0275fac=function(i){return new(i||Fc)};static \u0275prov=C({token:Fc,factory:Fc.\u0275fac})};return t=S([I(Bu)],t),t})(),zu=class{event;fTrigger;static fToken=Symbol("RotateNodePreparationRequest");constructor(n,e){this.event=n,this.fTrigger=e}},Im=class{fNodeId;constructor(n){this.fNodeId=n}};function nA(t,n,e){let{x:i,y:o}=iA(t,n,e),r=i-t.x,a=o-t.y;return{x:r,y:a}}function iA(t,n,e){let i=t.x-e.x,o=t.y-e.y,r=n*Math.PI/180,a=Math.cos(r),s=Math.sin(r),c=i*a-o*s,d=i*s+o*a,f=c+e.x,p=d+e.y;return{x:f,y:p}}var Tm=(()=>{class t extends st{type=By;kind=zy;data(){return new Im(this._nodeOrGroup.fId())}_store=u(N);_mediator=u(R);_dragSession=u(J);_nodeOrGroup;_sourceConnections;_targetConnections;_startRotation=0;_nodeRect;_nodeCenter;_pointerDownInFlow;_rotationOffsetDeg=0;get _transform(){return this._store.transform}initialize(e,i,o){this._nodeOrGroup=e,this._sourceConnections=i,this._targetConnections=o,this._startRotation=this._nodeOrGroup._rotate}prepareDragSequence(){this._nodeRect=this._readNodeRect(),this._nodeCenter=this._nodeRect.gravityCenter,this._pointerDownInFlow=this._calculatePointerDownInFlow();let e=this._angleDeg(this._pointerDownInFlow);this._rotationOffsetDeg=e-this._startRotation}onPointerMove(e){let i=L.sum(this._pointerDownInFlow,e),r=this._angleDeg(i)-this._rotationOffsetDeg;this._applyRotation(r);let a=r-this._startRotation;for(let s of this._sourceConnections)s.connection.setSourceDelta(this._deltaAfterRotation(s.connector,a));for(let s of this._targetConnections)s.connection.setTargetDelta(this._deltaAfterRotation(s.connector,a))}onPointerUp(){this._nodeOrGroup.rotate.set(this._nodeOrGroup._rotate),this._nodeOrGroup.refresh()}_readNodeRect(){return this._mediator.execute(new ze(this._nodeOrGroup.hostElement))}_calculatePointerDownInFlow(){return L.sub(this._dragSession.onPointerDownPosition,L.sum(this._transform.position,this._transform.scaledPosition))}_angleDeg(e){return Math.atan2(e.y-this._nodeCenter.y,e.x-this._nodeCenter.x)*(180/Math.PI)}_applyRotation(e){this._nodeOrGroup.updateRotate(e),this._nodeOrGroup.redraw()}_deltaAfterRotation(e,i){return nA(e,i,this._nodeCenter)}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275prov=C({token:t,factory:t.\u0275fac})}return t})(),oA=(()=>{let t=class Lc{_mediator=u(R);_store=u(N);_dragContext=u(J);_dragInjector=u(tt);get _transform(){return this._store.transform}handle(e){if(!this._isPreparationAllowed(e))return;let i=this._findRotatableNode(e.event.targetElement);if(!i)return;this._selectBeforeRotate(i);let o=this._transform.scale;this._dragContext.onPointerDownScale=o,this._dragContext.onPointerDownPosition=Q.fromPoint(e.event.getPosition()).elementTransform(this._store.flowHost).div(o);let r=this._dragInjector.createInstance(Tm);r.initialize(i,this._buildOutputConnectionHandlers(i),this._buildInputConnectionHandlers(i)),this._dragContext.draggableItems=[r]}_isPreparationAllowed({event:e,fTrigger:i}){return this._dragContext.isEmpty()&&ER(e.targetElement)&&Et(e.originalEvent,i)}_findRotatableNode(e){for(let i of this._store.nodes.getAll())if(!i.fDraggingDisabled()&&i.isContains(e))return i}_selectBeforeRotate(e){queueMicrotask(()=>{this._mediator.execute(new io(e))})}_buildInputConnectionHandlers(e){return this._mediator.execute(new Uu(e)).map(i=>{let o=this._store.inputs.require(i.fInputId()),r=this._mediator.execute(new vt(o)),a=this._dragInjector.get(Jo);return a.initialize(i),{connection:a,connector:r.rect.gravityCenter}})}_buildOutputConnectionHandlers(e){return this._mediator.execute(new ef(e)).map(i=>{let o=this._store.outputs.require(i.fOutputId()),r=this._mediator.execute(new vt(o)),a=this._dragInjector.get(Zo);return a.initialize(i),{connection:a,connector:r.rect.gravityCenter}})}static \u0275fac=function(i){return new(i||Lc)};static \u0275prov=C({token:Lc,factory:Lc.\u0275fac})};return t=S([I(zu)],t),t})(),rA=[tA,oA],nr=class{flowRect;canvasPosition;eventPoint;minimap;static fToken=Symbol("CalculateFlowPointFromMinimapPointRequest");constructor(n,e,i,o){this.flowRect=n,this.canvasPosition=e,this.eventPoint=i,this.minimap=o}},aA=(()=>{let t=class Bc{_store=u(N);get _canvasScale(){return this._store.transform.scale||1}handle(e){return L.sub(e.canvasPosition,L.sub(this._getPositionInViewBox(e.eventPoint,e.minimap),this._getNormalizedFlowCenter(e.flowRect)))}_getNormalizedFlowCenter(e){return Q.fromPoint(e.gravityCenter).sub(e)}_getPositionInViewBox(e,i){let o=this.normalizeEventPoint(e,i);return L.sum(o,j.mult(i.viewBox,this._canvasScale))}normalizeEventPoint(e,i){return this._getEventPointInMinimap(e,i).mult(i.scale).mult(this._canvasScale)}_getEventPointInMinimap(e,i){return Q.fromPoint(e).elementTransform(i.element)}static \u0275fac=function(i){return new(i||Bc)};static \u0275prov=C({token:Bc,factory:Bc.\u0275fac})};return t=S([I(nr)],t),t})(),qu=class{event;static fToken=Symbol("DragMinimapFinalizeRequest");constructor(n){this.event=n}},sA=(()=>{let t=class zc{_dragSession=u(J);handle(e){this._isValid()&&this._dragSession.draggableItems.forEach(i=>{i.onPointerUp?.()})}_isValid(){return this._dragSession.draggableItems.some(cA)}static \u0275fac=function(i){return new(i||zc)};static \u0275prov=C({token:zc,factory:zc.\u0275fac})};return t=S([I(qu)],t),t})(),qy="minimap",Vy="minimap";function cA(t){return t.getEvent().kind===Vy||t.getEvent().fEventType===qy}var Em=(()=>{class t extends st{type=qy;kind=Vy;_store=u(N);_mediator=u(R);_lastDelta=null;_flowRect;_startCanvasPosition;_eventPoint;_minimap;initialize(e,i,o,r){this._flowRect=e,this._startCanvasPosition=i,this._eventPoint=o,this._minimap=r}prepareDragSequence(){this._store.fCanvas?.hostElement.classList.add("f-scaled-animate")}onPointerMove(e){this._lastDelta&&this._isSamePoint(e,this._lastDelta)||(this._lastDelta=e,this._store.fCanvas?.setPosition(this._getNewPosition(Q.fromPoint(this._eventPoint).add(e))),this._store.fCanvas?.redraw())}_isSamePoint(e,i){return e.x===i.x&&e.y===i.y}_getNewPosition(e){return this._mediator.execute(new nr(this._flowRect,this._startCanvasPosition,e,this._minimap))}onPointerUp(){this._store.fCanvas?.hostElement.classList.remove("f-scaled-animate"),this._store.fCanvas?.emitCanvasChangeEvent()}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275prov=C({token:t,factory:t.\u0275fac})}return t})(),Vu=class{event;static fToken=Symbol("DragMinimapPreparationRequest");constructor(n){this.event=n}},dA=(()=>{let t=class qc{_store=u(N);_mediator=u(R);_dragSession=u(J);_dragInjector=u(tt);get _canvas(){return this._store.fCanvas}get _flowHost(){return this._store.flowHost}handle({event:e}){if(!this._isValid(e))return;let i=this._store.instances.require(Pe.MINIMAP).state,o=e.getPosition(),r=Q.fromPoint(this._store.transform.position),a=j.fromElement(this._flowHost);this._canvas.setPosition(this._calculateCanvasPosition(a,o,i)),this._canvas.redraw(),this._canvas.emitCanvasChangeEvent(),this._dragSession.onPointerDownScale=1,this._dragSession.onPointerDownPosition=Q.fromPoint(o).elementTransform(this._flowHost);let s=this._dragInjector.createInstance(Em);s.initialize(a,r,o,i),this._dragSession.draggableItems=[s]}_isValid(e){return!(!this._dragSession.isEmpty()||!this._flowHost.contains(e.targetElement)||!e.targetElement.closest(".f-minimap")||!this._store.instances.get(Pe.MINIMAP))}_calculateCanvasPosition(e,i,o){return this._mediator.execute(new nr(e,Q.fromPoint(this._canvas.transform.position),i,o))}static \u0275fac=function(i){return new(i||qc)};static \u0275prov=C({token:qc,factory:qc.\u0275fac})};return t=S([I(Vu)],t),t})(),lA=[aA,sA,dA];function uA(t){return!!t&&typeof t.destroy=="function"}var tt=(()=>{class t{_injector=u(ut);_dragInjector=null;_created=[];create(){this._dragInjector=ut.create({providers:[{provide:Gu,useClass:Gu},{provide:nu,useClass:nu},{provide:$l,useClass:$l},{provide:rm,useClass:rm},{provide:Ko,useClass:Ko},{provide:Zo,useClass:Zo},{provide:Jo,useClass:Jo},{provide:Qo,useClass:Qo},{provide:Tn,useClass:Tn},{provide:Eu,useClass:Eu},{provide:bm,useClass:bm},{provide:Sm,useClass:Sm},{provide:Tm,useClass:Tm},{provide:Em,useClass:Em}],parent:this._injector}),this._created=[]}get(e){if(!this._dragInjector)throw new Error("DragHandlerInjector has not been created. Call create() before using get().");return this._dragInjector.get(e)}createInstance(e){if(!this._dragInjector)throw new Error("DragHandlerInjector is not created");let i=V_(this._dragInjector,()=>new e);return this._created.push(i),i}destroy(){for(let e of this._created)uA(e)&&e.destroy();this._created=[],this._dragInjector?.destroy?.(),this._dragInjector=null}static \u0275fac=function(i){return new(i||t)};static \u0275prov=C({token:t,factory:t.\u0275fac})}return t})(),En=(()=>{class t{_data;setData(e){this._data=ae(ae({},this._data),e)}getData(){return this._data}clear(){this._data=void 0}static \u0275fac=function(i){return new(i||t)};static \u0275prov=C({token:t,factory:t.\u0275fac})}return t})(),ey="f-canvas-dragging",ty="canvas-dragging",Gu=(()=>{class t extends st{type="canvas-move";kind="drag-canvas";_store=u(N);_onPointerDownPosition=L.initialize();constructor(){super(),this._store.fCanvas?.hostElement.classList.add(ey,ty)}prepareDragSequence(){this._onPointerDownPosition=this._store.transform.position}onPointerMove(e){this._store.fCanvas?.setPosition(Q.fromPoint(this._onPointerDownPosition).add(e)),this._store.fCanvas?.redraw()}onPointerUp(){this._store.fCanvas?.emitCanvasChangeEvent(),this._store.fCanvas?.hostElement.classList.remove(ey,ty)}static \u0275fac=function(i){return new(i||t)};static \u0275prov=C({token:t,factory:t.\u0275fac})}return t})(),fA=(()=>{let t=class Vc{_dragContext=u(J);handle(e){this._isValid()&&this._dragContext.draggableItems.forEach(i=>i.onPointerUp?.())}_isValid(){return this._dragContext.draggableItems.some(e=>e instanceof Gu)}static \u0275fac=function(i){return new(i||Vc)};static \u0275prov=C({token:Vc,factory:Vc.\u0275fac})};return t=S([I(Gl)],t),t})(),Hu=class{event;fTrigger;static fToken=Symbol("DragCanvasPreparationRequest");constructor(n,e){this.event=n,this.fTrigger=e}},pA=(()=>{let t=class Gc{_store=u(N);_dragContext=u(J);_dragInjector=u(tt);handle({event:e,fTrigger:i}){!this._isValid(e)||!this._isValidTrigger(e,i)||(this._dragContext.onPointerDownScale=1,this._dragContext.onPointerDownPosition=Q.fromPoint(e.getPosition()).elementTransform(this._store.flowHost),this._dragContext.draggableItems=[this._dragInjector.get(Gu)])}_isValid(e){return this._dragContext.isEmpty()&&(this._isBackgroundElement(e.targetElement)||this._isDragOnHost(e.targetElement))}_isBackgroundElement(e){return this._store.instances.get(Pe.BACKGROUND)?.hostElement.contains(e)}_isDragOnHost(e){return this._store.flowHost.contains(e)&&!this._getNode(e)}_getNode(e){let i=this._store.nodes.getAll().find(o=>o.isContains(e));return i&&i.fDraggingDisabled()&&(i=void 0),i}_isValidTrigger(e,i){return Et(e.originalEvent,i)}static \u0275fac=function(i){return new(i||Gc)};static \u0275prov=C({token:Gc,factory:Gc.\u0275fac})};return t=S([I(Hu)],t),t})(),hA=[fA,pA],ju=class{event;trigger;static fToken=Symbol("SelectByPointerRequest");constructor(n,e){this.event=n,this.trigger=e}},mA=(()=>{let t=class Hc{_mediator=u(R);_store=u(N);_dragSession=u(J);handle({event:e,trigger:i}){if(!this._isSelectionAllowed(e))return;let o=this._resolveSelectable(e.targetElement);this._deferRaiseLayerFor(o),Et(e.originalEvent,i)?this._applyToggleSelect(o):this._applySingleSelect(o)}_isSelectionAllowed(e){return this._store.flowHost.contains(e.targetElement)&&this._dragSession.isEmpty()}_resolveSelectable(e){return this._findNodeOrGroupAt(e)??this._findConnectionAt(e)}_findNodeOrGroupAt(e){return this._store.nodes.getAll().find(i=>i.isContains(e))}_findConnectionAt(e){return this._store.connections.getAll().find(i=>i.isContains(e))}_deferRaiseLayerFor(e){e&&queueMicrotask(()=>{this._mediator.execute(new oi(e,e.hostElement.parentElement))})}_applySingleSelect(e){if(!e||e.fSelectionDisabled()){this._clearSelection();return}e.isSelected()||(this._clearSelection(),this._select(e))}_applyToggleSelect(e){!e||e.fSelectionDisabled()||(e.isSelected()?this._deselect(e):this._select(e))}_clearSelection(){if(this._dragSession.selectedItems.length){for(let e of this._dragSession.selectedItems)e.unmarkAsSelected();this._dragSession.markSelectionAsChanged(),this._dragSession.selectedItems=[]}}_select(e){this._dragSession.selectedItems.push(e),e.markAsSelected(),this._dragSession.markSelectionAsChanged()}_deselect(e){let i=this._dragSession.selectedItems.indexOf(e);i>=0&&this._dragSession.selectedItems.splice(i,1),e.unmarkAsSelected(),this._dragSession.markSelectionAsChanged()}static \u0275fac=function(i){return new(i||Hc)};static \u0275prov=C({token:Hc,factory:Hc.\u0275fac})};return t=S([I(ju)],t),t})(),gA=[mA];var Pm=class extends Kh{hostElement=u(Le).nativeElement};function _A(t){return Do(t,".f-drag-blocker")}var Gy=(()=>{class t extends Pm{_result=u(En);_mediator=u(R);_platform=u(dh);disabled=!1;fMultiSelectTrigger=e=>this._platform.getOS()===_n.MAC_OS?e.metaKey:e.ctrlKey;fReassignConnectionTrigger=Nt;fCreateConnectionTrigger=Nt;fConnectionWaypointsTrigger=F(Nt);fMoveControlPointTrigger=Nt;fNodeResizeTrigger=Nt;fNodeRotateTrigger=Nt;fNodeMoveTrigger=Nt;fCanvasMoveTrigger=Nt;fExternalItemTrigger=Nt;fSelectionChange=new mt;fNodeIntersectedWithConnections=new mt;fNodeConnectionsIntersection=Ve();fEmitOnNodeIntersect=!1;fCreateNode=new mt;fMoveNodes=new mt;fReassignConnection=new mt;fCreateConnection=new mt;fConnectionWaypointsChanged=Ve();fDropToGroup=new mt;vCellSize=F(1,{transform:e=>et(e,1)});hCellSize=F(1,{transform:e=>et(e,1)});fCellSizeWhileDragging=F(!1,{transform:e=>Ce(e)});fDragStarted=new mt;fDragEnded=new mt;_dragHandlerInjector=u(tt);ngOnInit(){this._mediator.execute(new Ku(this))}ngAfterViewInit(){super.subscribe()}onPointerDown(e){if(_A(e.targetElement))return!1;this._dragHandlerInjector.create(),this._result.clear(),this._mediator.execute(new Xu),this._mediator.execute(new Du(e)),this._mediator.execute(new Vu(e)),this._mediator.execute(new Pu(e)),this._mediator.execute(new ju(e,this.fMultiSelectTrigger)),this._mediator.execute(new Ql(e,this.fReassignConnectionTrigger)),this._mediator.execute(new Xl(e,this.fCreateConnectionTrigger)),this._mediator.execute(new iu(e,this.fConnectionWaypointsTrigger()));let i=e.isMouseLeftButton();return i||this.finalizeDragSequence(),i}prepareDragSequence(e){this._mediator.execute(new Fu(e,this.fNodeResizeTrigger)),this._mediator.execute(new zu(e,this.fNodeRotateTrigger)),this._mediator.execute(new _u(e,this.fNodeMoveTrigger)),this._mediator.execute(new Su(e,this.fExternalItemTrigger)),this._mediator.execute(new yu(e)),this._mediator.execute(new Hu(e,this.fCanvasMoveTrigger)),this._mediator.execute(new Zu)}onSelect(e){this._mediator.execute(new Iu(e))}onPointerMove(e){this._mediator.execute(new Yu(e))}onPointerUp(e){this._mediator.execute(new qu(e)),this._mediator.execute(new Mu(e)),this._mediator.execute(new Zl(e)),this._mediator.execute(new Wl(e)),this._mediator.execute(new Au(e)),this._mediator.execute(new Bu(e)),this._mediator.execute(new gu(e)),this._mediator.execute(new bu(e)),this._mediator.execute(new ou(e)),this._mediator.execute(new Gl(e)),this._mediator.execute(new Tu(e)),this._mediator.execute(new eu(e)),this._mediator.execute(new Fl)}finalizeDragSequence(){this._mediator.execute(new In),this._mediator.execute(new jo),this._result.clear(),this._dragHandlerInjector.destroy()}ngOnDestroy(){this._mediator.execute(new In),this._mediator.execute(new Qu),super.unsubscribe()}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275dir=ke({type:t,selectors:[["f-flow","fDraggable",""]],inputs:{disabled:[2,"fDraggableDisabled","disabled",Ce],fMultiSelectTrigger:"fMultiSelectTrigger",fReassignConnectionTrigger:"fReassignConnectionTrigger",fCreateConnectionTrigger:"fCreateConnectionTrigger",fConnectionWaypointsTrigger:[1,"fConnectionWaypointsTrigger"],fMoveControlPointTrigger:"fMoveControlPointTrigger",fNodeResizeTrigger:"fNodeResizeTrigger",fNodeRotateTrigger:"fNodeRotateTrigger",fNodeMoveTrigger:"fNodeMoveTrigger",fCanvasMoveTrigger:"fCanvasMoveTrigger",fExternalItemTrigger:"fExternalItemTrigger",fEmitOnNodeIntersect:[2,"fEmitOnNodeIntersect","fEmitOnNodeIntersect",Ce],vCellSize:[1,"vCellSize"],hCellSize:[1,"hCellSize"],fCellSizeWhileDragging:[1,"fCellSizeWhileDragging"]},outputs:{fSelectionChange:"fSelectionChange",fNodeIntersectedWithConnections:"fNodeIntersectedWithConnections",fNodeConnectionsIntersection:"fNodeConnectionsIntersection",fCreateNode:"fCreateNode",fMoveNodes:"fMoveNodes",fReassignConnection:"fReassignConnection",fCreateConnection:"fCreateConnection",fConnectionWaypointsChanged:"fConnectionWaypointsChanged",fDropToGroup:"fDropToGroup",fDragStarted:"fDragStarted",fDragEnded:"fDragEnded"},exportAs:["fDraggable"],standalone:!1,features:[be([En,tt]),ve]})}return t})(),yA=[...hA,...KR,...gR,...gA,...D2,...SR,...lA,...g2,...O2,...J2,...rA,...q2,...L2],vA=(()=>{let t=class jc{_store=u(N);handle({waypointIndex:e,connectionId:i}){let o=this._store.connections.require(i),r=o.fWaypoints()?.waypoints().slice();if(!r)throw new Error("Connection waypoints not found");r.splice(e,1),o.fWaypoints()?.waypoints.set(r),this._store.fDraggable?.fConnectionWaypointsChanged.emit(this._changeEvent(o))}_changeEvent(e){return new tu(e.fId(),e.fWaypoints()?.waypoints()||[])}static \u0275fac=function(i){return new(i||jc)};static \u0275prov=C({token:jc,factory:jc.\u0275fac})};return t=S([I(jh)],t),t})(),Mm=class{static fToken=Symbol("RemoveSnapConnectionFromStoreRequest")},CA=(()=>{let t=class Uc{_store=u(N);handle(e){this._store.connections.removeInstanceForSnap()}static \u0275fac=function(i){return new(i||Uc)};static \u0275prov=C({token:Uc,factory:Uc.\u0275fac})};return t=S([I(Mm)],t),t})(),xA=[kf,ri,hO,mO,gO,_O,dN,zN,hN,NN,$N,WN,BN,YN,ZN,XN,LN,jN,mN,tR,FN,AN,RN,PN,ON,MN,DN,KN,GN,QN,JN,UN,HN,eR,nR,iR,oR,CA,vA],ir=class{instance;static fToken=Symbol("AddConnectorToStoreRequest");constructor(n){this.instance=n}},bA=(()=>{let t=class Wc{_store=u(N);_mediator=u(R);handle({instance:e}){switch(e.kind){case"input":this._addInput(e);break;case"output":this._addOutput(e);break;case"outlet":this._addOutlet(e);break;default:throw new Error(`Unknown connector kind: ${e.kind}`)}}_addInput(e){this._store.inputs.add(e),this._store.emitNodeChanges(),this._geometryRegister(e)}_addOutput(e){this._store.outputs.add(e),this._store.emitNodeChanges(),this._geometryRegister(e)}_addOutlet(e){this._store.outlets.add(e),this._store.emitNodeChanges(),this._geometryRegister(e)}_geometryRegister(e){this._mediator.execute(new gl(e.fId(),e.fNodeId,e.kind,e.hostElement))}static \u0275fac=function(i){return new(i||Wc)};static \u0275prov=C({token:Wc,factory:Wc.\u0275fac})};return t=S([I(ir)],t),t})(),ni=class{position;connectorRefs;static fToken=Symbol("CalculateClosestConnectorRequest");constructor(n,e){this.position=n,this.connectorRefs=e}},wA=(()=>{let t=class $c{handle({position:e,connectorRefs:i}){let o,r=1/0;for(let a of i){let s=this._distanceToRect(e,a.rect);s<r&&(r=s,o=a)}return o?Yt(ae({},o),{distance:r}):void 0}_distanceToRect(e,{x:i,y:o,width:r,height:a}){let s=this._clamp(e.x,i,i+r),c=this._clamp(e.y,o,o+a),d=e.x-s,f=e.y-c;return Math.sqrt(d*d+f*f)}_clamp(e,i,o){return Math.max(i,Math.min(o,e))}static \u0275fac=function(i){return new(i||$c)};static \u0275prov=C({token:$c,factory:$c.\u0275fac})};return t=S([I(ni)],t),t})(),or=class{pointerPosition;connectableConnectors;static fToken=Symbol("FindConnectableConnectorUsingPriorityAndPositionRequest");constructor(n,e){this.pointerPosition=n,this.connectableConnectors=e}},SA=(()=>{let t=class Kc{_mediator=u(R);_store=u(N);_browser=u(He);get _transform(){return this._store.transform}get _flowHost(){return this._store.flowHost}get _fNodes(){return this._store.nodes.getAll()}get _snapConnection(){return this._store.connections.getForSnap()}handle(e){let i=this._findConnectorAtPosition(e);return i.length>0?i[0]:void 0}_findConnectorAtPosition(e){let i=[];i.push(...this._filterConnectorsThatLocatedAtPosition(e));let o=this._isSnapConnectionEnabledAndHasClosestConnector(e);o&&i.unshift(o.connector);let r=this._getFirstConnectableConnectorOfNodeAtPosition(e);return r&&i.push(r),i}_filterConnectorsThatLocatedAtPosition(e){return e.connectableConnectors.filter(i=>j.isIncludePoint(i.rect,this._calculatePointerInFlow(e.pointerPosition))).map(i=>i.connector)}_calculatePointerInFlow(e){return ao(e,this._flowHost,this._transform)}_isSnapConnectionEnabledAndHasClosestConnector(e){if(!this._snapConnection)return;let i=this._mediator.execute(new ni(this._calculatePointerInFlow(e.pointerPosition),e.connectableConnectors));return this._isValidClosestInput(i)?i:void 0}_isValidClosestInput(e){return!!e&&e.distance<this._snapConnection.fSnapThreshold}_getFirstConnectableConnectorOfNodeAtPosition(e){return this._getElementsFromPoint(e.pointerPosition).map(i=>this._findConnectableNode(i)).filter(i=>!!i).map(i=>this._findFirstConnectableConnectorOfNode(e.connectableConnectors,i)).find(i=>!!i)}_getElementsFromPoint(e){return this._browser.document.elementsFromPoint(e.x,e.y)}_findConnectableNode(e){return this._fNodes.find(i=>i.isContains(e)&&i.fConnectOnNode())}_findFirstConnectableConnectorOfNode(e,i){return e.find(o=>o.connector.fNodeId===i.fId())?.connector}static \u0275fac=function(i){return new(i||Kc)};static \u0275prov=C({token:Kc,factory:Kc.\u0275fac})};return t=S([I(or)],t),t})(),rr=class{source;pointer;static fToken=Symbol("CalculateTargetConnectorsToConnectRequest");constructor(n,e){this.source=n,this.pointer=e}},vt=class{connector;static fToken=Symbol("GetConnectorRectReferenceRequest");constructor(n){this.connector=n}},IA=(()=>{let t=class Yc{_mediator=u(R);handle({connector:e}){return{connector:e,rect:this._getRect(e)}}_getRect(e){return this._mediator.execute(new Sn(e.hostElement))}static \u0275fac=function(i){return new(i||Yc)};static \u0275prov=C({token:Yc,factory:Yc.\u0275fac})};return t=S([I(vt)],t),t})(),ar=class{nodeOrGroup;static fToken=Symbol("AddNodeToStoreRequest");constructor(n){this.nodeOrGroup=n}},TA=(()=>{let t=class Xc{_store=u(N);_mediator=u(R);handle({nodeOrGroup:e}){this._store.nodes.add(e),this._mediator.execute(new _l(e.fId(),e.hostElement,e)),this._store.emitNodeChanges()}static \u0275fac=function(i){return new(i||Xc)};static \u0275prov=C({token:Xc,factory:Xc.\u0275fac})};return t=S([I(ar)],t),t})(),Uu=class{nodeOrGroup;static fToken=Symbol("CalculateInputConnectionsRequest");constructor(n){this.nodeOrGroup=n}},EA=(()=>{let t=class Zc{_store=u(N);handle({nodeOrGroup:e}){let i=this._collectInputIds(e);return this._collectConnections(i)}_collectInputIds(e){let i=new Set,o=this._store.inputs.getAll();for(let r of o)e.isContains(r.hostElement)&&i.add(r.fId());return i}_collectConnections(e){let i=[],o=this._store.connections.getAll();for(let r of o)e.has(r.fInputId())&&i.push(r);return i}static \u0275fac=function(i){return new(i||Zc)};static \u0275prov=C({token:Zc,factory:Zc.\u0275fac})};return t=S([I(Uu)],t),t})(),Zi=class{connector;pointerPosition;static fToken=Symbol("CalculateConnectableSideByConnectedPositionsRequest");constructor(n,e){this.connector=n,this.pointerPosition=e}},ny=2,rt=(function(t){return t[t.NONE=0]="NONE",t[t.LEFT=1]="LEFT",t[t.RIGHT=2]="RIGHT",t[t.TOP=4]="TOP",t[t.BOTTOM=8]="BOTTOM",t[t.ALL=15]="ALL",t})(rt||{});function PA(t,n,e,i,o){let r=MA(o),a=e-t,s=i-n,c=DA(a,s);return kA(c,r)?c:OA(a,s,r,c)}function MA(t){if(!t||t.length===0)return rt.ALL;let n=rt.NONE;for(let e=0;e<t.length;e++)switch(t[e]){case z.LEFT:n|=rt.LEFT;break;case z.RIGHT:n|=rt.RIGHT;break;case z.TOP:n|=rt.TOP;break;case z.BOTTOM:n|=rt.BOTTOM;break}return n||rt.ALL}function DA(t,n){let e=t<0?-t:t,i=n<0?-n:n;return e-i>ny?t<0?z.LEFT:z.RIGHT:(i-e>ny,n<0?z.TOP:z.BOTTOM)}function kA(t,n){switch(t){case z.LEFT:return(n&rt.LEFT)!==0;case z.RIGHT:return(n&rt.RIGHT)!==0;case z.TOP:return(n&rt.TOP)!==0;case z.BOTTOM:return(n&rt.BOTTOM)!==0;default:return!0}}function OA(t,n,e,i){let o=i,r=-1/0;if(e&rt.RIGHT){let a=t;a>r&&(r=a,o=z.RIGHT)}if(e&rt.LEFT){let a=-t;a>r&&(r=a,o=z.LEFT)}if(e&rt.BOTTOM){let a=n;a>r&&(r=a,o=z.BOTTOM)}if(e&rt.TOP){let a=-n;a>r&&(r=a,o=z.TOP)}return o}function Wu(t){return t===z.CALCULATE||t===z.CALCULATE_HORIZONTAL||t===z.CALCULATE_VERTICAL}var NA={[z.CALCULATE]:[z.TOP,z.BOTTOM,z.LEFT,z.RIGHT],[z.CALCULATE_HORIZONTAL]:[z.LEFT,z.RIGHT],[z.CALCULATE_VERTICAL]:[z.TOP,z.BOTTOM]},RA=(()=>{let t=class Qc{_mediator=u(R);handle({connector:e,pointerPosition:i}){let o=e.userFConnectableSide,r=this._getConnectorRect(e.hostElement).gravityCenter,a=this._accumulateConnectedCenters(e.hostElement,e.toConnector,i),s=a.sumX/a.count,c=a.sumY/a.count;return PA(r.x,r.y,s,c,NA[o])}_accumulateConnectedCenters(e,i,o){let r=o?.x||0,a=o?.y||0,s=o?1:0;if(i&&i.length)for(let c=0;c<i.length;c++){let d=i[c].hostElement;if(d===e)continue;let f=this._getConnectorRect(d).gravityCenter;r+=f.x,a+=f.y,s++}return{sumX:r,sumY:a,count:s}}_getConnectorRect(e){return this._mediator.execute(new ze(e))}static \u0275fac=function(i){return new(i||Qc)};static \u0275prov=C({token:Qc,factory:Qc.\u0275fac})};return t=S([I(Zi)],t),t})(),$u=class{connector;static fToken=Symbol("CalculateConnectableSideByInternalPositionRequest");constructor(n){this.connector=n}},Ku=class{fComponent;static fToken=Symbol("AddDndToStoreRequest");constructor(n){this.fComponent=n}},AA=(()=>{let t=class Jc{_store=u(N);handle(e){this._store.fDraggable=e.fComponent}static \u0275fac=function(i){return new(i||Jc)};static \u0275prov=C({token:Jc,factory:Jc.\u0275fac})};return t=S([I(Ku)],t),t})(),Yu=class{event;static fToken=Symbol("OnPointerMoveRequest");constructor(n){this.event=n}},FA=(()=>{let t=class ed{_mediator=u(R);_store=u(N);get _hostElement(){return this._store.fDraggable?.hostElement}_dragContext=u(J);handle({event:e}){this._dragContext.rememberPointerEvent(e),this._setDifferenceToDraggableItems(this._getDifferenceBetweenPointerAndPointerDown(e),e),this._mediator.execute(new Uo)}_setDifferenceToDraggableItems(e,i){this._dragContext.draggableItems.forEach(o=>{o.onPointerMove(ae({},e),i)})}_getDifferenceBetweenPointerAndPointerDown(e){return this._getPointerPositionInCanvas(e).div(this._dragContext.onPointerDownScale).sub(this._dragContext.onPointerDownPosition)}_getPointerPositionInCanvas(e){return Q.fromPoint(e.getPosition()).elementTransform(this._hostElement)}static \u0275fac=function(i){return new(i||ed)};static \u0275prov=C({token:ed,factory:ed.\u0275fac})};return t=S([I(Yu)],t),t})(),Xu=class{static fToken=Symbol("InitializeDragSequenceRequest")},LA=(()=>{let t=class td{_dragContext=u(J);handle(e){this._dragContext.reset()}static \u0275fac=function(i){return new(i||td)};static \u0275prov=C({token:td,factory:td.\u0275fac})};return t=S([I(Xu)],t),t})(),Pn=class{static fToken=Symbol("IsDragStartedRequest")},BA=(()=>{let t=class nd{_store=u(N);handle(e){return!!this._store.fDraggable?.isDragStarted}static \u0275fac=function(i){return new(i||nd)};static \u0275prov=C({token:nd,factory:nd.\u0275fac})};return t=S([I(Pn)],t),t})(),Zu=class{static fToken=Symbol("PrepareDragSequenceRequest")},zA=(()=>{let t=class id{_mediator=u(R);_dragContext=u(J);handle(e){this._callPrepareDragSequence(),this._mediator.execute(new Ll)}_callPrepareDragSequence(){this._dragContext.draggableItems.forEach(e=>e.prepareDragSequence?.())}static \u0275fac=function(i){return new(i||id)};static \u0275prov=C({token:id,factory:id.\u0275fac})};return t=S([I(Zu)],t),t})(),Qu=class{static fToken=Symbol("RemoveDndFromStoreRequest")},qA=(()=>{let t=class od{_store=u(N);handle(e){this._store.fDraggable=void 0}static \u0275fac=function(i){return new(i||od)};static \u0275prov=C({token:od,factory:od.\u0275fac})};return t=S([I(Qu)],t),t})(),VA=[AA,FA,LA,zA,BA,qA],GA=new he("CONNECTABLE_SIDE_EPSILON"),HA=(()=>{let t=class rd{_mediator=u(R);_lastSide=new WeakMap;_epsilon=Math.max(0,u(GA,{optional:!0})??2);handle({connector:e}){if(this._isDragging()){let o=this._lastSide.get(e);if(o!==void 0)return o;let r=this._getSideByDelta(e.hostElement,e.fNodeHost,e);return this._lastSide.set(e,r),r}let i=this._getSideByDelta(e.hostElement,e.fNodeHost,e);return this._lastSide.set(e,i),i}_getSideByDelta(e,i,o){let r=j.fromElement(e),a=i.getBoundingClientRect(),s=r.gravityCenter.x,c=r.gravityCenter.y,d=s-a.left,f=a.right-s,p=c-a.top,v=a.bottom-c,x=0,w=d,T=[d,f,p,v];for(let A=1;A<4;A++){let V=T[A];V<w&&(w=V,x=A)}let E=x===0?z.LEFT:x===1?z.RIGHT:x===2?z.TOP:z.BOTTOM,O=this._lastSide.get(o);if(O!==void 0&&O!==E){let A=O===z.LEFT?0:O===z.RIGHT?1:O===z.TOP?2:3;(A===0?d:A===1?f:A===2?p:v)-w<=this._epsilon&&(E=O)}return E}_isDragging(){return this._mediator.execute(new Pn)}static \u0275fac=function(i){return new(i||rd)};static \u0275prov=C({token:rd,factory:rd.\u0275fac})};return t=S([I($u)],t),t})(),Qi=class{nodeOrGroup;static fToken=Symbol("CalculateConnectorsConnectableSidesRequest");constructor(n){this.nodeOrGroup=n}},jA=(()=>{let t=class ad{_mediator=u(R);handle({nodeOrGroup:e}){let i=e.connectors,o=i.length;for(let a=0;a<o;a++){let s=i[a];s.fConnectableSide=this._resolveSideForConnectorFast(s)}let r=new Set;for(let a=0;a<o;a++){let c=i[a].toConnector;if(c&&c.length)for(let d=0,f=c.length;d<f;d++){let p=c[d],v=p.userFConnectableSide;Wu(v)&&r.add(p)}}r.size>0&&r.forEach(a=>{a.fConnectableSide=this._calculateByConnectedPositions(a)})}_resolveSideForConnectorFast(e){let i=e.userFConnectableSide;return i===z.AUTO?this._mediator.execute(new $u(e)):Wu(i)?this._calculateByConnectedPositions(e):i}_calculateByConnectedPositions(e){return this._mediator.execute(new Zi(e))}static \u0275fac=function(i){return new(i||ad)};static \u0275prov=C({token:ad,factory:ad.\u0275fac})};return t=S([I(Qi)],t),t})(),Ji=class{static fToken=Symbol("CalculateNodesBoundingBoxRequest")},UA=(()=>{let t=class sd{_store=u(N);handle(e){return j.union(this._nodesRects())}_nodesRects(){return this._store.nodes.getAll().map(e=>j.fromElement(e.hostElement))}static \u0275fac=function(i){return new(i||sd)};static \u0275prov=C({token:sd,factory:sd.\u0275fac})};return t=S([I(Ji)],t),t})(),Ju=class{fNodes;static fToken=Symbol("CalculateNodesBoundingBoxNormalizedPositionRequest");constructor(n){this.fNodes=n}},WA=(()=>{let t=class cd{_store=u(N);_mediator=u(R);handle(e){return j.union(this._getNodesRects(e.fNodes||this._store.nodes.getAll()))}_getNodesRects(e){return e.map(i=>this._getNodeRect(i))}_getNodeRect(e){let i=this._mediator.execute(new Yi(e.hostElement));if(i)return this._getElementRect(e,i);let o=this._mediator.execute(new ze(e.hostElement));return this._getElementRect(e,o)}_getElementRect(e,i){return j.initialize(e._position.x,e._position.y,i.width,i.height)}static \u0275fac=function(i){return new(i||cd)};static \u0275prov=C({token:cd,factory:cd.\u0275fac})};return t=S([I(Ju)],t),t})(),ef=class{nodeOrGroup;static fToken=Symbol("CalculateOutputConnectionsRequest");constructor(n){this.nodeOrGroup=n}},$A=(()=>{let t=class dd{_store=u(N);handle({nodeOrGroup:e}){let i=this._collectOutputIds(e);return this._collectConnections(i)}_collectOutputIds(e){let i=new Set,o=this._store.outputs.getAll();for(let r of o)e.isContains(r.hostElement)&&i.add(r.fId());return i}_collectConnections(e){let i=[],o=this._store.connections.getAll();for(let r of o)e.has(r.fOutputId())&&i.push(r);return i}static \u0275fac=function(i){return new(i||dd)};static \u0275prov=C({token:dd,factory:dd.\u0275fac})};return t=S([I(ef)],t),t})(),sr=class{nodeOrGroup;static fToken=Symbol("FitToChildNodesAndGroupsRequest");constructor(n){this.nodeOrGroup=n}},ii=class{fNode;rect;static fToken=Symbol("GetNodePaddingRequest");constructor(n,e){this.fNode=n,this.rect=e}},KA=(()=>{let t=class ld{_browser=u(He);handle(e){return e.fNode.fIncludePadding()?this._getPaddingData(e.fNode,e.rect):[0,0,0,0]}_getPaddingData(e,i){let o=this._browser.window.getComputedStyle(e.hostElement);return[this._browser.toPixels(o.paddingLeft,i.width,i.height,o.fontSize),this._browser.toPixels(o.paddingTop,i.width,i.height,o.fontSize),this._browser.toPixels(o.paddingRight,i.width,i.height,o.fontSize),this._browser.toPixels(o.paddingBottom,i.width,i.height,o.fontSize)]}static \u0275fac=function(i){return new(i||ld)};static \u0275prov=C({token:ld,factory:ld.\u0275fac})};return t=S([I(ii)],t),t})(),YA=(()=>{let t=class ud{_mediator=u(R);_store=u(N);get _nodes(){return this._store.nodes.getAll()}handle({nodeOrGroup:e}){if(e.fAutoSizeToFitChildren()){let r=this._calculateDirectChildren(e);if(r.length){let a=this._boundingRect(e),s=this._calculateChildrenBounding(r,this._paddings(e,a));e.updatePosition(s),e.updateSize(s),e.redraw()}}let i=e.fParentId();if(!i)return;let o=this._nodes.find(r=>r.fId()===i);o&&this._mediator.execute(new sr(o))}_calculateDirectChildren(e){return this._nodes.filter(i=>i.fParentId()===e.fId())}_unionRect(e){return j.union(e.map(i=>this._boundingRect(i)))||j.initialize()}_boundingRect(e){return this._mediator.execute(new ze(e.hostElement))}_paddings(e,i){return this._mediator.execute(new ii(e,i))}_calculateChildrenBounding(e,[i,o,r,a]){let s=this._unionRect(e);return s=j.initialize(s.x-i,s.y-o,s.width+i+r,s.height+o+a),s}static \u0275fac=function(i){return new(i||ud)};static \u0275prov=C({token:ud,factory:ud.\u0275fac})};return t=S([I(sr)],t),t})(),tf=class{id;static fToken=Symbol("GetChildNodeIdsRequest");constructor(n){this.id=n}},XA=(()=>{let t=class fd{_store=u(N);get _allNodesAndGroups(){return this._store.nodes.getAll()}handle(e){if(!e.id)return[];let i=new Set,o=[];return this._collectDescendants(e.id,o,i),o}_collectDescendants(e,i,o){if(o.has(e))throw new Error(`Circular reference detected in the node hierarchy. Node id: ${e}`);o.add(e);let r=this._allNodesAndGroups.filter(a=>a.fParentId()===e).map(a=>a.fId());i.push(...r);for(let a of r)this._collectDescendants(a,i,o)}static \u0275fac=function(i){return new(i||fd)};static \u0275prov=C({token:fd,factory:fd.\u0275fac})};return t=S([I(tf)],t),t})(),eo=class{nodeOrGroup;static fToken=Symbol("GetParentNodesRequest");constructor(n){this.nodeOrGroup=n}},ZA=(()=>{let t=class pd{_store=u(N);handle({nodeOrGroup:e}){return this._getParentNodes(e,new Set,[])}_getParentNodes(e,i,o){if(i.has(e.fId()))throw new Error("Circular reference detected in the node hierarchy. Node id: "+e.fId());i.add(e.fId());let r=this._store.nodes.get(e.fParentId());return r?(o.push(r),this._getParentNodes(r,i,o)):o}static \u0275fac=function(i){return new(i||pd)};static \u0275prov=C({token:pd,factory:pd.\u0275fac})};return t=S([I(eo)],t),t})(),cr=class{nodeOrGroup;destroyRef;static fToken=Symbol("UpdateNodeWhenStateOrSizeChangedRequest");constructor(n,e){this.nodeOrGroup=n,this.destroyRef=e}},QA=(()=>{let t=class hd{_mediator=u(R);handle({nodeOrGroup:e,destroyRef:i}){let{hostElement:o,stateChanges:r}=e;new qt(new wh(o),r).listen(i,()=>{this._mediator.execute(new Xn),this._isDragging()||(this._mediator.execute(new Ki(e.fId(),"UpdateNodeWhenStateOrSizeChanged")),this._mediator.execute(new Qi(e)),this._mediator.execute(new sr(e)))})}_isDragging(){return this._mediator.execute(new Pn)}static \u0275fac=function(i){return new(i||hd)};static \u0275prov=C({token:hd,factory:hd.\u0275fac})};return t=S([I(cr)],t),t})(),dr=class{instance;static fToken=Symbol("RemoveNodeFromStoreRequest");constructor(n){this.instance=n}},JA=(()=>{let t=class md{_store=u(N);_mediator=u(R);handle({instance:e}){this._store.nodes.remove(e),this._mediator.execute(new yl(e.fId())),this._store.emitNodeChanges()}static \u0275fac=function(i){return new(i||md)};static \u0275prov=C({token:md,factory:md.\u0275fac})};return t=S([I(dr)],t),t})(),eF=[TA,RA,HA,EA,jA,UA,WA,$A,YA,XA,KA,ZA,QA,JA],tF=(()=>{let t=class gd{_mediator=u(R);_store=u(N);get _targets(){return this._store.inputs.getAll()}handle({source:e,pointer:i}){let o=this._getConnectableTargets(e),r=[];for(let a of o)r.push(this._mediator.execute(new vt(a)));return this._scheduleApplyCalculatedSides(r,i),r}_getConnectableTargets(e){if(e.hasConnectionLimits)return this._targets.filter(o=>e.canConnectTo(o));let i=this._targets.filter(o=>o.canBeConnected);return e.isSelfConnectable||(i=i.filter(o=>o.fNodeId!==e.fNodeId)),i}_scheduleApplyCalculatedSides(e,i){queueMicrotask(()=>this._applyCalculatedConnectableSides(e,i))}_applyCalculatedConnectableSides(e,i){for(let{connector:o}of e)Wu(o.userFConnectableSide)&&(o.fConnectableSide=this._calculateByConnectedPositions(o,i))}_calculateByConnectedPositions(e,i){return this._mediator.execute(new Zi(e,i))}static \u0275fac=function(i){return new(i||gd)};static \u0275prov=C({token:gd,factory:gd.\u0275fac})};return t=S([I(rr)],t),t})(),nf=class{target;pointer;static fToken=Symbol("CalculateSourceConnectorsToConnectRequest");constructor(n,e){this.target=n,this.pointer=e}},nF=(()=>{let t=class _d{_mediator=u(R);_store=u(N);get _sources(){return this._store.outputs.getAll()}handle({target:e,pointer:i}){let o=this._getConnectableSources(e),r=[];for(let a of o)r.push(this._mediator.execute(new vt(a)));return this._scheduleApplyCalculatedSides(r,i),r}_getConnectableSources(e){return this._sources.filter(i=>{let o=i.canBeConnected;return o&&i.hasConnectionLimits&&(o=i.canConnectTo(e)),o})}_scheduleApplyCalculatedSides(e,i){queueMicrotask(()=>this._applyCalculatedConnectableSides(e,i))}_applyCalculatedConnectableSides(e,i){for(let{connector:o}of e)Wu(o.userFConnectableSide)&&(o.fConnectableSide=this._calculateByConnectedPositions(o,i))}_calculateByConnectedPositions(e,i){return this._mediator.execute(new Zi(e,i))}static \u0275fac=function(i){return new(i||_d)};static \u0275prov=C({token:_d,factory:_d.\u0275fac})};return t=S([I(nf)],t),t})(),to=class{connectors;static fToken=Symbol("MarkConnectableConnectorsRequest");constructor(n){this.connectors=n}},$e={DRAG_AND_DROP:{DRAGGING:"f-dragging",CONNECTIONS_DRAGGING:"f-connections-dragging"},GROUPING:{OVER_BOUNDARY:"f-grouping-over-boundary",DROP_ACTIVE:"f-grouping-drop-active"},CONNECTOR:{OUTPUT_CONNECTED:"f-node-output-connected",OUTPUT_NOT_CONNECTABLE:"f-node-output-not-connectable",INPUT_CONNECTED:"f-node-input-connected",INPUT_NOT_CONNECTABLE:"f-node-input-not-connectable",CONNECTABLE:"f-connector-connectable"}},iF=(()=>{let t=class yd{_store=u(N);handle({connectors:e}){this._store.flowHost.classList.add($e.DRAG_AND_DROP.CONNECTIONS_DRAGGING),e.forEach(i=>this._markConnector(i))}_markConnector({hostElement:e}){e.classList.add($e.CONNECTOR.CONNECTABLE)}static \u0275fac=function(i){return new(i||yd)};static \u0275prov=C({token:yd,factory:yd.\u0275fac})};return t=S([I(to)],t),t})(),lr=class{instance;static fToken=Symbol("RemoveConnectorFromStoreRequest");constructor(n){this.instance=n}},oF=(()=>{let t=class vd{_store=u(N);_mediator=u(R);handle({instance:e}){switch(e.kind){case"input":this._removeInput(e);break;case"output":this._removeOutput(e);break;case"outlet":this._removeOutlet(e);break;default:throw new Error(`Unknown connector kind: ${e.kind}`)}}_removeInput(e){this._store.inputs.removeById(e.fId()),this._store.emitNodeChanges(),this._geometryUnregister(e)}_removeOutput(e){this._store.outputs.removeById(e.fId()),this._store.emitNodeChanges(),this._geometryUnregister(e)}_removeOutlet(e){this._store.outlets.removeById(e.fId()),this._store.emitNodeChanges(),this._geometryUnregister(e)}_geometryUnregister(e){this._mediator.execute(new Ao(e.fId(),e.kind))}static \u0275fac=function(i){return new(i||vd)};static \u0275prov=C({token:vd,factory:vd.\u0275fac})};return t=S([I(lr)],t),t})(),no=class{connectors;static fToken=Symbol("UnmarkConnectableConnectorsRequest");constructor(n){this.connectors=n}},rF=(()=>{let t=class Cd{_store=u(N);handle({connectors:e}){this._store.flowHost.classList.remove($e.DRAG_AND_DROP.CONNECTIONS_DRAGGING),e.forEach(i=>this._unmarkConnector(i))}_unmarkConnector({hostElement:e}){e.classList.remove($e.CONNECTOR.CONNECTABLE)}static \u0275fac=function(i){return new(i||Cd)};static \u0275prov=C({token:Cd,factory:Cd.\u0275fac})};return t=S([I(no)],t),t})(),aF=[bA,oF,wA,SA,nF,tF,IA,iF,rF],of=class{instance;static fToken=Symbol("AddFlowToStoreRequest");constructor(n){this.instance=n}},ai=(function(t){return t.TOP_BOTTOM="TOP_BOTTOM",t.BOTTOM_TOP="BOTTOM_TOP",t.LEFT_RIGHT="LEFT_RIGHT",t.RIGHT_LEFT="RIGHT_LEFT",t})(ai||{}),yn=(function(t){return t.MANUAL="manual",t.AUTO="auto",t})(yn||{});function sF(t){let n=[...t.nodes.map(iy),...t.groups.map(iy)],e=new Set(t.nodes.map(s=>s.id)),i=new Set(t.groups.map(s=>s.id)),o=new Map,r=new Map;for(let s of[...t.nodes,...t.groups]){for(let c of s.fOutputs)o.set(c.id,s.id);for(let c of s.fInputs)r.set(c.id,s.id)}let a=t.connections.reduce((s,c)=>{let d=o.get(c.fOutputId),f=r.get(c.fInputId);return!d||!f||s.push({source:d,target:f}),s},[]);return{nodes:n,connections:a,nodeIds:e,groupIds:i}}function iy(t){return{id:t.id,size:t.measuredSize?ae({},t.measuredSize):t.size?ae({},t.size):void 0}}var cF=1,Rf=(()=>{class t{_destroyRef=u(ot);_flows=new Map;_engine;constructor(){this._destroyRef.onDestroy(()=>{Array.from(this._flows.keys()).forEach(e=>this.unregisterFlow(e)),this._engine=void 0})}attachEngine(e){this._engine=e}registerFlow(e,i){let o=e.fId();this.unregisterFlow(o);let r={flow:e,store:i,nodeSignature:this._buildNodeSignature(i),connectionSignature:this._buildConnectionSignature(i),timeoutId:null,raf1:null,raf2:null,unsubs:[],runId:0,isApplying:!1};r.unsubs.push(i.nodesChanges$.listen(()=>this._handleNodesChanges(o)),i.connectionsChanges$.listen(()=>this._handleConnectionsChanges(o))),this._flows.set(o,r),this._engine?.getMode()===yn.AUTO&&this._scheduleRelayout(o)}unregisterFlow(e){let i=this._flows.get(e);i&&(i.unsubs.forEach(o=>o()),this._clearScheduledWork(i),this._flows.delete(e))}handleModeChanged(e){if(e===yn.AUTO)for(let i of this._flows.keys())this._scheduleRelayout(i)}async relayout(e){if(this._engine){if(e){let i=this._flows.get(e);i&&await this._relayoutRegisteredFlow(e,i);return}for(let[i,o]of this._flows.entries())await this._relayoutRegisteredFlow(i,o)}}_handleNodesChanges(e){let i=this._flows.get(e);if(!i||i.isApplying)return;let o=this._buildNodeSignature(i.store);o!==i.nodeSignature&&(i.nodeSignature=o,this._scheduleRelayout(e))}_handleConnectionsChanges(e){let i=this._flows.get(e);if(!i||i.isApplying)return;let o=this._buildConnectionSignature(i.store);o!==i.connectionSignature&&(i.connectionSignature=o,this._scheduleRelayout(e))}_scheduleRelayout(e){let i=this._flows.get(e);!i||!this._engine||this._engine.getMode()!==yn.AUTO||(i.timeoutId!==null&&clearTimeout(i.timeoutId),this._cancelAnimationFrames(i),i.timeoutId=setTimeout(()=>{i.timeoutId=null,this._runAfterNextPaint(i,()=>{this._relayoutFlowIfReady(e)})},cF))}async _relayoutFlowIfReady(e){let i=this._flows.get(e);if(!(!i||!this._engine||this._engine.getMode()!==yn.AUTO)){if(i.store.hasPendingProgressiveRender){this._scheduleRelayout(e);return}await this._relayoutRegisteredFlow(e,i)}}async _relayoutRegisteredFlow(e,i){if(!this._engine)return;let o=sF(i.flow.getState({measuredSize:!0})),r=++i.runId,a=await this._engine.calculate(o.nodes,o.connections,{flowId:e,mode:this._engine.getMode()}),s=this._flows.get(e);if(!(!s||s.runId!==r||!this._applyPositions(s.store,a.nodes).length)){s.isApplying=!0;try{s.flow.redraw(),this._emitWriteback(e,a.nodes,o.nodeIds,o.groupIds)}finally{queueMicrotask(()=>{let d=this._flows.get(e);d&&(d.isApplying=!1)})}}}_emitWriteback(e,i,o,r){let a=this._engine?.getWriteback();a&&a({flowId:e,nodes:i.filter(s=>o.has(s.id)),groups:i.filter(s=>r.has(s.id))})}_applyPositions(e,i){return i.filter(o=>{let r=e.nodes.get(o.id);return!r||L.isEqual(r._position,o.position)?!1:(r.position.set(ae({},o.position)),!0)})}_buildNodeSignature(e){return e.nodes.getAll().map(i=>i.fId()).sort().join("|")}_buildConnectionSignature(e){return e.connections.getAll().map(i=>`${i.fId()}:${i.fOutputId()}:${i.fInputId()}`).sort().join("|")}_runAfterNextPaint(e,i){if(this._cancelAnimationFrames(e),typeof requestAnimationFrame!="function"){i();return}e.raf1=requestAnimationFrame(()=>{e.raf1=null,e.raf2=requestAnimationFrame(()=>{e.raf2=null,i()})})}_clearScheduledWork(e){e.timeoutId!==null&&(clearTimeout(e.timeoutId),e.timeoutId=null),this._cancelAnimationFrames(e)}_cancelAnimationFrames(e){e.raf1!==null&&typeof cancelAnimationFrame=="function"&&(cancelAnimationFrame(e.raf1),e.raf1=null),e.raf2!==null&&typeof cancelAnimationFrame=="function"&&(cancelAnimationFrame(e.raf2),e.raf2=null)}static \u0275fac=function(i){return new(i||t)};static \u0275prov=C({token:t,factory:t.\u0275fac})}return t})(),Hy=new he("F_LAYOUT_OPTIONS");function jy(t,n){return t.reduce((e,i)=>{let o=n.get(i.id);return o&&e.push({id:i.id,position:o}),e},[])}var dF=new he("F_LAYOUT"),rf=class{_controller=u(Rf);_config=u(Hy,{optional:!0})??{};_interactiveOptions;_mode;_writeback;_defaultOptions;interactiveOptions;constructor(n){this._mode=this._config.mode??yn.MANUAL,this._writeback=this._config.writeback??null,this._defaultOptions=this.mergeOptions(n,this._config.options),this._interactiveOptions=U(this.mergeOptions(this._defaultOptions,{})),this.interactiveOptions=k(()=>this.mergeOptions(this._interactiveOptions(),{})),this._controller.attachEngine(this)}setMode(n){this._mode=n,this._controller.handleModeChanged(n)}getMode(){return this._mode}setWriteback(n){this._writeback=n}getWriteback(){return this._writeback}setInteractiveOptions(n){this._interactiveOptions.set(this.mergeOptions(this._interactiveOptions(),n))}relayout(n){return this._controller.relayout(n)}getProviderConfig(){return ae({},this._config)}resolveLayoutOptions(n){let e=ae({},n??{});return delete e.flowId,delete e.mode,this.mergeOptions(this._interactiveOptions(),e)}};function Uy(t,n){return[Rf,t,{provide:dF,useExisting:t},{provide:Hy,useValue:n??{}}]}var lF=(()=>{let t=class xd{_store=u(N);_layoutController=u(Rf,{optional:!0});handle({instance:e}){this._store.fFlow=e,this._layoutController?.registerFlow(e,this._store)}static \u0275fac=function(i){return new(i||xd)};static \u0275prov=C({token:xd,factory:xd.\u0275fac})};return t=S([I(of)],t),t})(),af=class{static fToken=Symbol("GetFlowRequest")},uF=(()=>{let t=class bd{_store=u(N);handle(e){let i=this._store.fFlow;if(!i)throw new Error("Flow not found in store");return i}static \u0275fac=function(i){return new(i||bd)};static \u0275prov=C({token:bd,factory:bd.\u0275fac})};return t=S([I(af)],t),t})(),sf=class{static fToken=Symbol("CalculateConnectionsStateRequest")},fF=(()=>{let t=class wd{_store=u(N);handle(e){return this._store.connections.getAll().map(this._mapToConnectionState)}_mapToConnectionState(e){return{id:e.fId(),fOutputId:e.fOutputId(),fInputId:e.fInputId(),fType:e.fType,fBehavior:e.fBehavior,isSelected:e.isSelected(),waypoints:e.fWaypoints()?.waypoints()||[],fInputSide:e.fInputSide(),fOutputSide:e.fOutputSide()}}static \u0275fac=function(i){return new(i||wd)};static \u0275prov=C({token:wd,factory:wd.\u0275fac})};return t=S([I(sf)],t),t})(),ur=class{component;measuredSize;static fToken=Symbol("CalculateNodesStateRequest");constructor(n,e=!1){this.component=n,this.measuredSize=e}},pF=(()=>{let t=class Sd{_store=u(N);_mediator=u(R);handle({component:e,measuredSize:i}){return this._store.nodes.getAll().filter(o=>o instanceof e).map(o=>{let r=i?this._mediator.execute(new ze(o.hostElement)):null;return{id:o.fId(),parentId:o.fParentId()??void 0,position:ae({},o._position),size:o._size?ae({},o._size):void 0,measuredSize:r?{width:r.width,height:r.height}:void 0,rotate:o._rotate,fOutputs:this._getOutputs(o.hostElement),fInputs:this._getInputs(o.hostElement),isSelected:o.isSelected()}})}_getOutputs(e){return this._store.outputs.getAll().filter(i=>e.contains(i.hostElement)).map(i=>({id:i.fId(),fConnectableSide:i.fConnectableSide}))}_getInputs(e){return this._store.inputs.getAll().filter(i=>e.contains(i.hostElement)).map(i=>({id:i.fId(),fConnectableSide:i.fConnectableSide}))}static \u0275fac=function(i){return new(i||Sd)};static \u0275prov=C({token:Sd,factory:Sd.\u0275fac})};return t=S([I(ur)],t),t})(),cf=class{measuredSize;static fToken=Symbol("CalculateFlowStateRequest");constructor(n=!1){this.measuredSize=n}},hF=(()=>{let t=class Id{_mediator=u(R);_store=u(N);get _canvas(){return this._store.fCanvas}get _transform(){return this._canvas.transform}get _canvasPosition(){return L.sum(this._transform.position,this._transform.scaledPosition)}handle({measuredSize:e}){return{position:this._canvasPosition,scale:this._canvas.transform.scale,nodes:this._mediator.execute(new ur(Nf,e)),groups:this._mediator.execute(new ur(em,e)),connections:this._mediator.execute(new sf)}}static \u0275fac=function(i){return new(i||Id)};static \u0275prov=C({token:Id,factory:Id.\u0275fac})};return t=S([I(cf)],t),t})(),mF=[hF,pF,fF],df=class{instance;static fToken=Symbol("RemoveFlowFromStoreRequest");constructor(n){this.instance=n}},gF=(()=>{let t=class Td{_store=u(N);_layoutController=u(Rf,{optional:!0});handle({instance:e}){this._layoutController?.unregisterFlow(e.fId()),this._store.fFlow=void 0}static \u0275fac=function(i){return new(i||Td)};static \u0275prov=C({token:Td,factory:Td.\u0275fac})};return t=S([I(df)],t),t})(),Af=(()=>{class t{isNodesRendered=!1;isFullRendered=!1;static \u0275fac=function(i){return new(i||t)};static \u0275prov=C({token:t,factory:t.\u0275fac})}return t})(),lf=class{static fToken=Symbol("NotifyNodesRenderedRequest")},Am=new he("F_FLOW"),Dm=class{},_F=(()=>{let t=class Ed{_state=u(Af);_fFlow=u(Am);handle(e){this._state.isNodesRendered||(this._state.isNodesRendered=!0,this._fFlow.fNodesRendered.emit(this._fFlow.fId()))}static \u0275fac=function(i){return new(i||Ed)};static \u0275prov=C({token:Ed,factory:Ed.\u0275fac})};return t=S([I(lf)],t),t})(),uf=class{static fToken=Symbol("NotifyFullRenderedRequest")},yF=(()=>{let t=class Pd{_state=u(Af);_fFlow=u(Am);handle(e){this._state.isFullRendered||(this._state.isFullRendered=!0,this._fFlow.fFullRendered.emit(this._fFlow.fId()),this._fFlow.fLoaded.emit(this._fFlow.fId()))}static \u0275fac=function(i){return new(i||Pd)};static \u0275prov=C({token:Pd,factory:Pd.\u0275fac})};return t=S([I(uf)],t),t})(),fr=class{targetConnectionsRevision;targetNodesRevision;callback;destroyRef;static fToken=Symbol("WaitForConnectionsRenderedRequest");constructor(n,e,i,o){this.targetConnectionsRevision=n,this.targetNodesRevision=e,this.callback=i,this.destroyRef=o}},vF=(()=>{let t=class Md{_store=u(N);handle({targetConnectionsRevision:e,targetNodesRevision:i,callback:o,destroyRef:r}){if(this._store.connectionsRenderedRevision>=e&&this._store.connectionsRenderedNodesRevision>=i){o();return}let a=this._store.connectionsRenderedChanges$.listen(()=>{this._store.connectionsRenderedRevision<e||this._store.connectionsRenderedNodesRevision<i||(a(),o())});r.onDestroy(a)}static \u0275fac=function(i){return new(i||Md)};static \u0275prov=C({token:Md,factory:Md.\u0275fac})};return t=S([I(fr)],t),t})(),ff=class{static fToken=Symbol("ResetRenderLifecycleRequest")},CF=(()=>{let t=class Dd{_state=u(Af);handle(e){this._state.isNodesRendered=!1,this._state.isFullRendered=!1}static \u0275fac=function(i){return new(i||Dd)};static \u0275prov=C({token:Dd,factory:Dd.\u0275fac})};return t=S([I(ff)],t),t})(),pf=class{destroyRef;static fToken=Symbol("QueueConnectionRedrawRequest");constructor(n){this.destroyRef=n}},Wy=(()=>{class t{isWaitingForViewportAnimation=!1;pendingRedraw=!1;static \u0275fac=function(i){return new(i||t)};static \u0275prov=C({token:t,factory:t.\u0275fac})}return t})(),xF=(()=>{let t=class kd{_state=u(Wy);_store=u(N);_mediator=u(R);handle(e){if(this._state.pendingRedraw=!0,this._state.isWaitingForViewportAnimation)return;this._state.isWaitingForViewportAnimation=!0;let i=this._store.viewportAnimationChanges$.listen(()=>{if(this._store.isViewportAnimating)return;let o=this._state.pendingRedraw;i(),this._state.isWaitingForViewportAnimation=!1,this._state.pendingRedraw=!1,o&&this._mediator.execute(new Vo)});e.destroyRef.onDestroy(i)}static \u0275fac=function(i){return new(i||kd)};static \u0275prov=C({token:kd,factory:kd.\u0275fac})};return t=S([I(pf)],t),t})(),bF=[lF,uF,...mF,gF,Af,_F,yF,vF,CF,Wy,xF],hf=class{static fToken=Symbol("ClearSelectionRequest")},wF=(()=>{let t=class Od{_dragContext=u(J);handle(e){this._dragContext.selectedItems.forEach(i=>i.unmarkAsSelected()),this._dragContext.selectedItems=[],this._dragContext.isSelectedChanged=!0}static \u0275fac=function(i){return new(i||Od)};static \u0275prov=C({token:Od,factory:Od.\u0275fac})};return t=S([I(hf)],t),t})(),mf=class{static fToken=Symbol("CalculateSelectableItemsRequest")},SF=(()=>{let t=class Nd{_mediator=u(R);_store=u(N);_dragContext=u(J);get _nodes(){return this._store.nodes.getAll()}get _connections(){return this._store.connections.getAll()}handle(){return[...this._nodeRects(),...this._connectionRects()].filter(e=>!this._dragContext.selectedItems.includes(e.element))}_nodeRects(){return this._nodes.filter(e=>!e.fSelectionDisabled()).map(e=>({element:e,fRect:this._mediator.execute(new ze(e.hostElement))}))}_connectionRects(){return this._connections.filter(e=>!e.fSelectionDisabled()).map(e=>({element:e,fRect:this._mediator.execute(new ze(e.boundingElement))}))}static \u0275fac=function(i){return new(i||Nd)};static \u0275prov=C({token:Nd,factory:Nd.\u0275fac})};return t=S([I(mf)],t),t})(),pr=class{static fToken=Symbol("GetCurrentSelectionRequest")},IF=(()=>{let t=class Rd{_dragContext=u(J);handle(){return{fNodeIds:this._getSelectedNodes(),fGroupIds:this._getSelectedGroups(),fConnectionIds:this._getSelectedConnections()}}_getSelectedNodes(){return this._dragContext.selectedItems.filter(e=>e.hostElement.classList.contains("f-node")).map(e=>e.hostElement.dataset.fNodeId)}_getSelectedGroups(){return this._dragContext.selectedItems.filter(e=>e.hostElement.classList.contains("f-group")).map(e=>e.hostElement.dataset.fGroupId)}_getSelectedConnections(){return this._dragContext.selectedItems.filter(e=>!e.hostElement.classList.contains("f-node")&&!e.hostElement.classList.contains("f-group")).map(e=>e.hostElement.id)}static \u0275fac=function(i){return new(i||Rd)};static \u0275prov=C({token:Rd,factory:Rd.\u0275fac})};return t=S([I(pr)],t),t})(),gf=class{nodes;connections;isSelectedChanged;static fToken=Symbol("SelectRequest");constructor(n,e,i=!0){this.nodes=n,this.connections=e,this.isSelectedChanged=i}},TF=(()=>{let t=class Ad{_dragContext=u(J);_store=u(N);handle(e){this._dragContext.selectedItems.forEach(i=>{i.unmarkAsSelected()}),this._dragContext.selectedItems=[],e.nodes.forEach(i=>{let o=this._store.nodes.get(i);o&&(o.markAsSelected(),this._dragContext.selectedItems.push(o))}),e.connections.forEach(i=>{let o=this._store.connections.get(i);o&&(o.markAsSelected(),this._dragContext.selectedItems.push(o))}),this._dragContext.isSelectedChanged=e.isSelectedChanged}static \u0275fac=function(i){return new(i||Ad)};static \u0275prov=C({token:Ad,factory:Ad.\u0275fac})};return t=S([I(gf)],t),t})(),_f=class{static fToken=Symbol("SelectAllRequest")},EF=(()=>{let t=class Fd{_dragSession=u(J);_store=u(N);handle(e){this._dragSession.selectedItems.forEach(i=>{i.unmarkAsSelected()}),this._dragSession.selectedItems=[],this._store.nodes.getAll().forEach(i=>{i.markAsSelected(),this._dragSession.selectedItems.push(i)}),this._store.connections.getAll().forEach(i=>{i.markAsSelected(),this._dragSession.selectedItems.push(i)}),this._dragSession.isSelectedChanged=!0}static \u0275fac=function(i){return new(i||Fd)};static \u0275prov=C({token:Fd,factory:Fd.\u0275fac})};return t=S([I(_f)],t),t})(),io=class{nodeOrGroup;static fToken=Symbol("SelectAndUpdateNodeLayerRequest");constructor(n){this.nodeOrGroup=n}},yf=class{fItemsContainer;allElements;elementsThatShouldBeInFront;targetIndex;static fToken=Symbol("MoveFrontElementsBeforeTargetElementRequest");constructor(n,e,i,o){this.fItemsContainer=n,this.allElements=e,this.elementsThatShouldBeInFront=i,this.targetIndex=o}},PF=(()=>{let t=class Ld{handle(e){let i=[];for(let o=e.targetIndex+1;o<e.allElements.length;o++){let r=e.allElements[o];e.elementsThatShouldBeInFront.includes(r)||i.push(r)}i.forEach(o=>{e.fItemsContainer.removeChild(o),e.fItemsContainer.insertBefore(o,e.allElements[e.targetIndex])})}static \u0275fac=function(i){return new(i||Ld)};static \u0275prov=C({token:Ld,factory:Ld.\u0275fac})};return t=S([I(yf)],t),t})(),oi=class{item;itemContainer;static fToken=Symbol("UpdateItemAndChildrenLayersRequest");constructor(n,e){this.item=n,this.itemContainer=e}},oo=class{nodeOrGroupId;static fToken=Symbol("GetDeepChildrenNodesAndGroupsRequest");constructor(n){this.nodeOrGroupId=n}},MF=(()=>{let t=class Bd{_store=u(N);handle({nodeOrGroupId:e}){return this._getChildrenNodes(e)}_getChildrenNodes(e,i=new Set){if(i.has(e))throw new Error("Circular reference detected in the node hierarchy. Node id: "+e);i.add(e);let o=this._store.nodes.getAll().filter(r=>r.fParentId()===e);return o.reduce((r,a)=>r.concat(this._getChildrenNodes(a.fId(),i)),o)}static \u0275fac=function(i){return new(i||Bd)};static \u0275prov=C({token:Bd,factory:Bd.\u0275fac})};return t=S([I(oo)],t),t})(),DF=(()=>{let t=class zd{_store=u(N);_mediator=u(R);get _canvas(){return this._store.fCanvas}get _groupsContainer(){return this._canvas.fGroupsContainer().nativeElement}get _nodesContainer(){return this._canvas.fNodesContainer().nativeElement}get _connectionsContainer(){return this._canvas.fConnectionsContainer().nativeElement}handle(e){switch(e.itemContainer){case this._groupsContainer:this._handleGroup(e);break;case this._nodesContainer:this._handleNode(e);break;case this._connectionsContainer:this._handleConnection(e);break;default:throw new Error("Unknown container")}}_handleGroup(e){let i=this._getChildrenNodesAndGroups(e.item.fId()),o=this._getChildrenGroups(i);this._updateLayers(this._groupsContainer,e.item.hostElement,o);let r=this._getChildrenNodes(i);r.length&&this._updateLayers(this._nodesContainer,r[0],r)}_handleNode(e){let i=this._getChildrenNodesAndGroups(e.item.fId()),o=this._getChildrenNodes(i);this._updateLayers(e.itemContainer,e.item.hostElement,o)}_handleConnection(e){this._updateLayers(e.itemContainer,e.item.hostElement,[])}_updateLayers(e,i,o){let r=Array.from(e.children),a=r.findIndex(s=>s===i);this._isAnythingNeedToBeMoved(r,a,o)&&this._mediator.execute(new yf(e,r,o,a))}_isAnythingNeedToBeMoved(e,i,o){for(let r=i+1;r<e.length;r++)if(!o.includes(e[r]))return!0;return!1}_getChildrenGroups(e){let i=Array.from(this._groupsContainer.children);return e.filter(o=>this._groupsContainer.contains(o)).sort((o,r)=>i.indexOf(o)-i.indexOf(r))}_getChildrenNodes(e){let i=Array.from(this._nodesContainer.children);return e.filter(o=>this._nodesContainer.contains(o)).sort((o,r)=>i.indexOf(o)-i.indexOf(r))}_getChildrenNodesAndGroups(e){return this._mediator.execute(new oo(e)).map(i=>i.hostElement)}static \u0275fac=function(i){return new(i||zd)};static \u0275prov=C({token:zd,factory:zd.\u0275fac})};return t=S([I(oi)],t),t})(),kF=(()=>{let t=class qd{_dragSession=u(J);_mediator=u(R);handle({nodeOrGroup:e}){this._selectNodeIfNotSelected(e),this._mediator.execute(new oi(e,e.hostElement.parentElement))}_selectNodeIfNotSelected(e){e.fSelectionDisabled()||this._dragSession.selectedItems.includes(e)||(this._dragSession.selectedItems.push(e),e.markAsSelected(),this._dragSession.isSelectedChanged=!0)}static \u0275fac=function(i){return new(i||qd)};static \u0275prov=C({token:qd,factory:qd.\u0275fac})};return t=S([I(io)],t),t})(),OF=[wF,SF,IF,TF,EF,kF],vf=class{static fToken=Symbol("ResetZoomRequest")},NF=(()=>{let t=class Vd{_store=u(N);get _canvas(){return this._store.fCanvas}handle(e){this._canvas.resetScale(),this._canvas.redraw(),this._canvas.emitCanvasChangeEvent()}static \u0275fac=function(i){return new(i||Vd)};static \u0275prov=C({token:Vd,factory:Vd.\u0275fac})};return t=S([I(vf)],t),t})(),Cf=class{position;step;direction;animate;static fToken=Symbol("SetZoomRequest");constructor(n,e,i,o=!1){this.position=n,this.step=e,this.direction=i,this.animate=o}},RF=new Set(["drag-node","drag-external-item","resize-node","rotate-node","create-connection","reassign-connection","drag-connection-waypoint","assign-to-container"]),AF=new Set(["drag-canvas","selection-area"]),FF=(()=>{let t=class Gd{_mediator=u(R);_store=u(N);_dragContext=u(J,{optional:!0});get _flowHost(){return this._store.flowHost}get _canvas(){return this._store.fCanvas}get _zoomComponent(){return this._store.instances.get(Pe.ZOOM)}get _isDragStarted(){return this._mediator.execute(new Pn)}handle(e){if(!this._zoomComponent)return;let i=this._canvas.transform.scale,o=this._clamp(i+e.step*e.direction);if(o===i)return;let r=this._castPositionToFlow(e.position);if(this._isDragStarted){let a=this._getDragZoomMode();if(a==="blocked")return;a==="rebase"&&this._rebaseDragContext(r,o)}this._canvas.setScale(o,r),e.animate?this._canvas.redrawWithAnimation():this._canvas.redraw(),this._canvas.emitCanvasChangeEvent()}_clamp(e){return Math.max(this._zoomComponent?.minimum||1,Math.min(e,this._zoomComponent?.maximum||1))}_castPositionToFlow(e){return Q.fromPoint(e).elementTransform(this._flowHost)}_getDragZoomMode(){if(this._dragContext?.isEmpty())return"blocked";let e=!1;for(let i of this._dragContext?.draggableItems??[]){let o=i.getEvent().kind;if(RF.has(o)){e=!0;continue}if(!AF.has(o))return"blocked"}return e?"rebase":"direct"}_rebaseDragContext(e,i){if(!this._dragContext)return;let o=this._dragContext.onPointerDownScale;if(!o||o===i){this._dragContext.onPointerDownScale=i;return}let r=1/i-1/o;this._dragContext.onPointerDownPosition=Q.fromPoint(this._dragContext.onPointerDownPosition).add(Q.fromPoint(e).mult(r)),this._dragContext.onPointerDownScale=i}static \u0275fac=function(i){return new(i||Gd)};static \u0275prov=C({token:Gd,factory:Gd.\u0275fac})};return t=S([I(Cf)],t),t})(),LF=[NF,FF],xf=class{static fToken=Symbol("MinimapDrawNodesRequest")},BF=(()=>{let t=class Hd{_browser=u(He);_store=u(N);handle(e){let i=this._store.fFlow,o=this._store.fCanvas;return!i||!o?[]:this._store.nodes.getAll().map(a=>this._renderNode(a,i,o))}_renderNode(e,i,o){let r=ji("rect",this._browser);ah(this._nodeRect(e,i,o),r);let a=e instanceof Nf;return r.classList.add("f-component",a?"f-minimap-node":"f-minimap-group"),r.classList.add(...this._minimapClasses(e)),e.isSelected()&&r.classList.add("f-selected"),r}_nodeRect(e,i,o){let r=j.elementTransform(j.fromElement(e.hostElement),i.hostElement);return j.div(r,o.transform.scale)}_minimapClasses(e){let i=e.fMinimapClass();return Array.isArray(i)?i:[i]}static \u0275fac=function(i){return new(i||Hd)};static \u0275prov=C({token:Hd,factory:Hd.\u0275fac})};return t=S([I(xf)],t),t})(),bf=class{svg;minSize;static fToken=Symbol("MinimapCalculateViewportRequest");constructor(n,e){this.svg=n,this.minSize=e}},zF=(()=>{let t=class jd{_mediator=u(R);_store=u(N);handle({svg:e,minSize:i}){let o=this._store.fFlow,r=this._store.fCanvas;if(!o||!r)return{scale:1,viewBox:j.initialize(0,0,0,0)};let a=this._contentRectInMinimapSpace(o,r,i),s=this._minimapRectInFlowSpace(e,o),c=this._viewportScale(a,s),d=this._viewportViewBox(a,s,c);return{scale:c,viewBox:d}}_contentRectInMinimapSpace(e,i,o){let r=this._nodesBoundingBox(),a=j.elementTransform(r,e.hostElement),s=j.div(a,i.transform.scale);return S0(s,o)}_nodesBoundingBox(){return this._mediator.execute(new Ji)??j.initialize(0,0,0,0)}_minimapRectInFlowSpace(e,i){return j.elementTransform(j.fromElement(e),i.hostElement)}_viewportScale(e,i){let o=i.width||1,r=i.height||1;return Math.max(e.width/o,e.height/r)}_viewportViewBox(e,i,o){let r=this._viewportSize(i,o),a=e.x-(r.width-e.width)/2,s=e.y-(r.height-e.height)/2;return j.initialize(a,s,r.width,r.height)}_viewportSize(e,i){return at.initialize(e.width*i||0,e.height*i||0)}static \u0275fac=function(i){return new(i||jd)};static \u0275prov=C({token:jd,factory:jd.\u0275fac})};return t=S([I(bf)],t),t})(),wf=class{static fToken=Symbol("MinimapCalculateViewRectRequest")},qF=(()=>{let t=class Ud{_store=u(N);handle(e){let i=this._store.fFlow,o=this._store.fCanvas;if(!i||!o)return j.initialize();let r=j.div(j.fromElement(i.hostElement),o.transform.scale);return r.x=0,r.y=0,r}static \u0275fac=function(i){return new(i||Ud)};static \u0275prov=C({token:Ud,factory:Ud.\u0275fac})};return t=S([I(wf)],t),t})(),Sf=class{element;scale;viewBox;constructor(n,e=1,i=j.initialize(0,0,0,0)){this.element=n,this.scale=e,this.viewBox=i}},VF=[BF,zF,qF],If=class{position;static fToken=Symbol("GetNormalizedPointRequest");constructor(n){this.position=n}},GF=(()=>{let t=class Wd{_store=u(N);handle({position:e}){return ao(e,this._store.flowHost,this._store.transform)}static \u0275fac=function(i){return new(i||Wd)};static \u0275prov=C({token:Wd,factory:Wd.\u0275fac})};return t=S([I(If)],t),t})(),Tf=class{static fToken=Symbol("SortNodeLayersRequest")},HF=(()=>{let t=class $d{_store=u(N);_mediator=u(R);_browser=u(He);get _canvas(){return this._store.fCanvas}get _groupsContainer(){return this._canvas.fGroupsContainer().nativeElement}get _nodesContainer(){return this._canvas.fNodesContainer().nativeElement}get _fNodeElements(){return Array.from(this._nodesContainer.children)}handle(e){this._getGroups().forEach(i=>{this._moveChildrenNodes(this._getSortedChildrenNodes(i))})}_getGroups(){return this._store.nodes.getAll().filter(e=>this._groupsContainer.contains(e.hostElement))}_getSortedChildrenNodes(e){let i=this._fNodeElements;return this._getChildrenNodes(e.fId()).sort((o,r)=>i.indexOf(o)-i.indexOf(r))}_getChildrenNodes(e){return this._mediator.execute(new oo(e)).filter(i=>this._nodesContainer.contains(i.hostElement)).map(i=>i.hostElement)}_moveChildrenNodes(e){let i=this._browser.document.createDocumentFragment();e.forEach(o=>{i.appendChild(o)}),this._nodesContainer.appendChild(i)}static \u0275fac=function(i){return new(i||$d)};static \u0275prov=C({token:$d,factory:$d.\u0275fac})};return t=S([I(Tf)],t),t})(),hr=class{itemsContainer;static fToken=Symbol("SortItemsByParentRequest");constructor(n){this.itemsContainer=n}},jF=(()=>{let t=class Kd{_store=u(N);_browser=u(He);handle({itemsContainer:e}){let i=Array.from(e.children);if(i.length<2)return;let o=this._buildPositions(i),r=this._store.nodes.getAll().filter(c=>e.contains(c.hostElement));if(r.length<2||!r.some(c=>!!c.fParentId()))return;let a=this._buildChildrenByParentId(r),s=new Map;for(let c of r){let d=this._getSortedChildrenBeforeParent(e,o,c,a,s);d.length&&this._moveBeforeNextSibling(e,d,c.hostElement.nextElementSibling)}}_buildPositions(e){let i=new Map;for(let o=0;o<e.length;o++)i.set(e[o],o);return i}_getSortedChildrenBeforeParent(e,i,o,r,a){let s=i.get(o.hostElement);if(s===void 0)return[];let c=this._getDeepChildren(o.fId(),r,a);if(!c.length)return[];let d=[];for(let f of c){let p=f.hostElement;if(!e.contains(p))continue;let v=i.get(p);v===void 0||v>=s||d.push(p)}return d.sort((f,p)=>(i.get(f)??0)-(i.get(p)??0)),d}_buildChildrenByParentId(e){let i=new Map;for(let o of e){let r=o.fParentId();if(!r)continue;let a=i.get(r)??[];a.push(o),i.set(r,a)}return i}_getDeepChildren(e,i,o){let r=o.get(e);if(r)return r;let a=[],s=[...i.get(e)??[]],c=new Set([e]);for(;s.length;){let d=s.pop();if(!d)continue;let f=d.fId();if(c.has(f))continue;c.add(f),a.push(d);let p=i.get(f);p?.length&&s.push(...p)}return o.set(e,a),a}_moveBeforeNextSibling(e,i,o){let r=this._browser.document.createDocumentFragment();for(let a of i)r.appendChild(a);e.insertBefore(r,o)}static \u0275fac=function(i){return new(i||Kd)};static \u0275prov=C({token:Kd,factory:Kd.\u0275fac})};return t=S([I(hr)],t),t})(),Ef=class{static fToken=Symbol("SortItemLayersRequest")},UF=(()=>{let t=class Yd{_store=u(N);_mediator=u(R);get _canvas(){return this._store.fCanvas}handle(e){if(!this._canvas)return;let i=this._store.nodes.getAll();i.length<2||!i.some(o=>!!o.fParentId())||(this._mediator.execute(new hr(this._canvas.fGroupsContainer().nativeElement)),this._mediator.execute(new Tf),this._mediator.execute(new hr(this._canvas.fNodesContainer().nativeElement)))}static \u0275fac=function(i){return new(i||Yd)};static \u0275prov=C({token:Yd,factory:Yd.\u0275fac})};return t=S([I(Ef)],t),t})();function ji(t,n){return n.document.createElementNS("http://www.w3.org/2000/svg",t)}function Et(t,n){return n(t)}function Nt(t){return!0}function WF(){return/android|iPad|iPhone|iPod/i.test(navigator.userAgent||navigator.vendor||window.opera)}var $F=[...pO,...xA,...nO,...aF,...VA,...bF,...eF,...OF,...LF,...VF,...TN,MF,EN,kN,GF,UF,jF,HF,DF,PF],KF=0,$y=(()=>{class t{_destroyRef=u(ot);_elementReference=u(Le);_fBrowser=u(He);_stateChanges=new Tt;get hostElement(){return this._elementReference.nativeElement}id=F(`f-pattern-${KF++}`);vColor=F("rgba(0,0,0,0.1)");hColor=F("rgba(0,0,0,0.1)");vSize=F(20,{transform:et});hSize=F(20,{transform:et});_transform=gn.default();_position=L.initialize();_size=at.initialize(this.hSize(),this.vSize());_pattern;_vLine;_hLine;constructor(){this._createPattern()}_createPattern(){this._pattern=ji("pattern",this._fBrowser),this._pattern.setAttribute("patternUnits","userSpaceOnUse"),this.hostElement.appendChild(this._pattern),this._vLine=ji("line",this._fBrowser),this._pattern.appendChild(this._vLine),this._hLine=ji("line",this._fBrowser),this._pattern.appendChild(this._hLine)}ngOnInit(){this._listenStateChanges()}_listenStateChanges(){new qt(this._stateChanges).pipe(Pf()).listen(this._destroyRef,()=>this._redraw())}ngOnChanges(e){(e.vSize||e.hSize||e.vColor||e.hColor)&&this._refresh()}_redraw(){this._calculatePattern(),this._redrawPattern(),this._redrawLine(this._vLine,this.vColor(),this._size.width,0,this._size.width,this._size.height),this._redrawLine(this._hLine,this.hColor(),0,this._size.height,this._size.width,this._size.height)}_calculatePattern(){this._position.x=this._transform.position.x+this._transform.scaledPosition.x,this._position.y=this._transform.position.y+this._transform.scaledPosition.y,this._size=at.initialize(this.hSize()*this._transform.scale,this.vSize()*this._transform.scale)}_redrawPattern(){this._pattern.setAttribute("x",`${this._position.x}`),this._pattern.setAttribute("y",`${this._position.y}`),this._pattern.setAttribute("width",`${this._size.width}`),this._pattern.setAttribute("height",`${this._size.height}`)}_redrawLine(e,i,o,r,a,s){e.setAttribute("stroke",`${i}`),e.setAttribute("x1",`${o}`),e.setAttribute("x2",`${a}`),e.setAttribute("y1",`${r}`),e.setAttribute("y2",`${s}`)}setTransform(e){this._transform=e,this._refresh()}_refresh(){this._stateChanges.notify()}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=Z({type:t,selectors:[["f-rect-pattern"]],hostVars:1,hostBindings:function(i,o){i&2&&$("id",o.id)},inputs:{id:[1,"id"],vColor:[1,"vColor"],hColor:[1,"hColor"],vSize:[1,"vSize"],hSize:[1,"hSize"]},features:[be([{provide:yh,useExisting:t}]),wi],decls:0,vars:0,template:function(i,o){},encapsulation:2,changeDetection:0})}return t})();var YF=new he("F_BACKGROUND"),XF=(()=>{class t{hostElement=u(Le).nativeElement;static \u0275fac=function(i){return new(i||t)};static \u0275dir=ke({type:t,standalone:!1})}return t})(),Ky=(()=>{class t extends XF{_mediator=u(R);fBackgroundPattern=sa(yh);ngOnInit(){this._mediator.execute(new bn(Pe.BACKGROUND,this))}ngAfterContentInit(){this._mediator.execute(new Xd(this.fBackgroundPattern()))}setTransform(e){this.fBackgroundPattern()?.setTransform(e)}ngOnDestroy(){this._mediator.execute(new wn(Pe.BACKGROUND))}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275cmp=Z({type:t,selectors:[["f-background"]],contentQueries:function(i,o,r){i&1&&Jp(r,o.fBackgroundPattern,yh,5),i&2&&gt()},hostAttrs:[1,"f-component","f-background"],features:[be([{provide:YF,useExisting:t}]),ve],ngContentSelectors:Mk,decls:2,vars:0,template:function(i,o){i&1&&(Xt(),it(),K(0,"svg"),Ae(1),Y())},styles:["[_nghost-%COMP%]{position:absolute;width:100%;height:100%;left:0;top:0;transform-origin:0 0;pointer-events:none}[_nghost-%COMP%] svg[_ngcontent-%COMP%]{width:100%;height:100%}"],changeDetection:0})}return t})();var km=class{position;scale;constructor(n,e){this.position=n,this.scale=e}},ZF=new he("F_CANVAS"),QF=(()=>{class t{transform=gn.default();_fCanvasChange=new Tt;destroyRef=u(ot);getPosition(){return this.transform.position}setPosition(e){this.transform.position=e}emitCanvasChangeEvent(){this._fCanvasChange.notify()}subscribeOnCanvasChange(){new qt(this._fCanvasChange).pipe(Zd(this.debounce())).listen(this.destroyRef,()=>{this.fCanvasChange.emit(new km(L.sum(this.transform.position,this.transform.scaledPosition),this.transform.scale))})}static \u0275fac=function(i){return new(i||t)};static \u0275dir=ke({type:t,standalone:!1})}return t})(),mr=(()=>{class t extends QF{_mediator=u(R);_componentsStore=u(N);_elementReference=u(Le);_injector=u(ut);_flowId;fCanvasChange=Ve();position=F(L.initialize(),{transform:L.castToPoint});scale=F(1,{transform:et});debounceTime=F(0,{transform:et});debounce=k(()=>this.debounceTime()<0?0:this.debounceTime());get hostElement(){return this._elementReference.nativeElement}fGroupsContainer=Be.required("fGroupsContainer");fNodesContainer=Be.required("fNodesContainer");fConnectionsContainer=Be.required("fConnectionsContainer");get flowId(){return this._flowId||""}ngOnInit(){this._flowId=this._mediator.execute(new af).fId(),this._mediator.execute(new Jd(this)),this._positionChange(),this._scaleChange(),super.subscribeOnCanvasChange()}_positionChange(){pe(()=>{this._mediator.execute(new nl(this.transform,this.position()))},{injector:this._injector})}_scaleChange(){pe(()=>{this._mediator.execute(new il(this.transform,this.scale()))},{injector:this._injector})}redraw(){this._mediator.execute(new No(this.transform)),this.hostElement.style.removeProperty("transition"),this.hostElement.style.transform=gn.toString(this.transform),this._mediator.execute(new xn)}redrawWithAnimation(){this._mediator.execute(new No(this.transform)),this.hostElement.style.transition=`transform ${WF()?80:150}ms ease-in-out`,this.hostElement.style.transform=gn.toString(this.transform),oy(this.hostElement,()=>this.redraw())}centerGroupOrNode(e,i=!0){this._afterRedraw(()=>{this._mediator.execute(new el(e,i))})}fitToScreen(e=L.initialize(),i=!0){this._afterRedraw(()=>{this._mediator.execute(new tl(e,i))})}resetScaleAndCenter(e=!0){this._afterRedraw(()=>{this._mediator.execute(new al(e))})}getScale(){return this.transform.scale||1}setScale(e,i=L.initialize()){this._mediator.execute(new sl(e,i))}resetScale(){this._mediator.execute(new rl)}ngOnDestroy(){this._mediator.execute(new ol)}_afterRedraw(e){this._mediator.execute(new fr(this._componentsStore.connectionsRevision,this._componentsStore.nodesRevision,()=>H_(e,{injector:this._injector}),this.destroyRef))}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275cmp=Z({type:t,selectors:[["f-canvas"]],viewQuery:function(i,o){i&1&&Ot(o.fGroupsContainer,Dk,5)(o.fNodesContainer,kk,5)(o.fConnectionsContainer,Ok,5),i&2&&gt(3)},hostAttrs:[1,"f-component","f-canvas"],inputs:{position:[1,"position"],scale:[1,"scale"],debounceTime:[1,"debounceTime"]},outputs:{fCanvasChange:"fCanvasChange"},features:[be([{provide:ZF,useExisting:t}]),ve],ngContentSelectors:Rk,decls:12,vars:0,consts:[["fGroupsContainer",""],["fConnectionsContainer",""],["fNodesContainer",""],[1,"f-connections-container"]],template:function(i,o){i&1&&(Xt(Nk),ia(0),K(1,"div",null,0),Ae(3),Y(),K(4,"div",3,1),Ae(6,1),Ae(7,2),Ae(8,3),Y(),K(9,"div",null,2),Ae(11,4),Y(),oa())},styles:["[_nghost-%COMP%]{position:absolute;overflow:visible;width:100%;height:100%;left:0;top:0;transform-origin:0 0;pointer-events:none}.f-canvas-dragging[_nghost-%COMP%], .canvas-dragging[_nghost-%COMP%]{transform:translateZ(0)}.f-connections-container[_ngcontent-%COMP%]{position:absolute;z-index:2}"],changeDetection:0})}return t})();var JF=0,Yy=(()=>{class t extends cN{fId=F(`f-connection-${JF++}`,{alias:"fConnectionId"});fOutputId=F("",{transform:e=>Xi(e)||""});fInputId=F("",{transform:e=>Xi(e)||""});fRadius=8;fOffset=12;fBehavior=vn.FIXED;fType=Vi.STRAIGHT;fSelectionDisabled=F(!1,{transform:Ce});fReassignableStart=F(!1,{transform:Ce});fDraggingDisabled=F(!1,{alias:"fReassignDisabled",transform:Ce});fInputSide=F(Ee.DEFAULT,{transform:e=>qi(e,"fInputSide",Ee)});fOutputSide=F(Ee.DEFAULT,{transform:e=>qi(e,"fOutputSide",Ee)});get boundingElement(){return this.fPath().hostElement}_mediator=u(R);ngOnInit(){this._mediator.execute(new dl(this))}ngOnChanges(){this._mediator.execute(new Xn)}ngOnDestroy(){this._mediator.execute(new Rl(this))}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275cmp=Z({type:t,selectors:[["f-connection"]],hostAttrs:[1,"f-component","f-connection"],hostVars:5,hostBindings:function(i,o){i&2&&($("id",o.fId()),se("f-connection-selection-disabled",o.fSelectionDisabled())("f-connection-reassign-disabled",o.fDraggingDisabled()))},inputs:{fId:[1,"fConnectionId","fId"],fOutputId:[1,"fOutputId"],fInputId:[1,"fInputId"],fRadius:[2,"fRadius","fRadius",et],fOffset:[2,"fOffset","fOffset",et],fBehavior:[2,"fBehavior","fBehavior",e=>qi(e,"fBehavior",vn)],fType:"fType",fSelectionDisabled:[1,"fSelectionDisabled"],fReassignableStart:[1,"fReassignableStart"],fDraggingDisabled:[1,"fReassignDisabled","fDraggingDisabled"],fInputSide:[1,"fInputSide"],fOutputSide:[1,"fOutputSide"]},exportAs:["fComponent"],standalone:!1,features:[be([{provide:Mf,useExisting:t}]),ve,wi],ngContentSelectors:Fk,decls:15,vars:6,consts:[["defs",""],["xmlns","http://www.w3.org/2000/svg"],[1,"f-connection-group"],["fConnectionGradientRenderer","",3,"fConnectionGradientRendererFor"],["fConnectionSelection",""],["f-connection-path","",3,"useGradient"],["f-connection-drag-handle-start","","r","8"],["f-connection-drag-handle-end","","r","8"]],template:function(i,o){if(i&1&&(Xt(Ak),it(),h(0,"svg",1),B(1,"defs",null,0),Ae(3),h(4,"g",2),P(5,Lk,1,1,":svg:linearGradient",3),B(6,"path",4),h(7,"g"),B(8,"path",5),P(9,Bk,1,0,":svg:circle",6),B(10,"circle",7),m()()(),Ae(11,1),Ae(12,2),Ae(13,3),P(14,zk,1,0)),i&2){let r;l(5),M((r=o.fGradient())?5:-1,r),l(),$("d",o.path),l(2),D("useGradient",!!o.fGradient()),$("d",o.path),l(),M(o.fReassignableStart()?9:-1),l(5),M(o.fContents().length?14:-1)}},dependencies:[Rh,oN,rN,QO,iN],styles:["[_nghost-%COMP%]{pointer-events:none}[_nghost-%COMP%] svg[_ngcontent-%COMP%]{display:block;vertical-align:middle;overflow:visible!important;position:absolute}[_nghost-%COMP%] svg[_ngcontent-%COMP%] .f-connection-group[_ngcontent-%COMP%]{pointer-events:all}[_nghost-%COMP%] .f-connection-content[_ngcontent-%COMP%]{pointer-events:all}"],changeDetection:0})}return t})();var eL=new he("F_MAGNETIC_LINES"),tL=(()=>{class t{hostElement=u(Le).nativeElement;static \u0275fac=function(i){return new(i||t)};static \u0275dir=ke({type:t,standalone:!1})}return t})();var Xy=(()=>{class t extends tL{threshold=F(10,{transform:et,alias:"fAlignThreshold"});_mediator=u(R);ngOnInit(){this._mediator.execute(new bn(Pe.MAGNETIC_LINES,this))}ngOnDestroy(){this._mediator.execute(new wn(Pe.MAGNETIC_LINES))}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275cmp=Z({type:t,selectors:[["f-line-alignment"]],hostAttrs:[1,"f-line-alignment","f-component"],inputs:{threshold:[1,"fAlignThreshold","threshold"]},exportAs:["fComponent"],standalone:!1,features:[be([{provide:eL,useExisting:t}]),ve],decls:0,vars:0,template:function(i,o){},styles:[qk]})}return t})();var mh=(()=>{class t{fMinSize=F(1e3);_mediator=u(R);hostElement=u(Le).nativeElement;model=new Sf(this.hostElement);redraw(){let{scale:e,viewBox:i}=this._mediator.execute(new bf(this.hostElement,this.fMinSize()));this.model=new Sf(this.hostElement,e,i),I0(i,this.hostElement)}static \u0275fac=function(i){return new(i||t)};static \u0275dir=ke({type:t,selectors:[["svg","fMinimapFlow",""]],inputs:{fMinSize:[1,"fMinSize"]}})}return t})(),gh=(()=>{class t{_mediator=u(R);_elementRef=u(Le);hostElement=this._elementRef.nativeElement;redraw(){this.clear();let e=this._elementRef.nativeElement.ownerDocument.createDocumentFragment();this._mediator.execute(new xf).forEach(i=>{e.appendChild(i)}),this.hostElement.appendChild(e)}clear(){this.hostElement.replaceChildren()}static \u0275fac=function(i){return new(i||t)};static \u0275dir=ke({type:t,selectors:[["g","fMinimapCanvas",""]]})}return t})(),_h=(()=>{class t{_mediator=u(R);hostElement=u(Le).nativeElement;redraw(){ah(this._mediator.execute(new wf),this.hostElement)}static \u0275fac=function(i){return new(i||t)};static \u0275dir=ke({type:t,selectors:[["rect","fMinimapView",""]],hostAttrs:[1,"f-component","f-minimap-view"]})}return t})(),nL=new he("F_MINIMAP_BASE"),iL=(()=>{class t{hostElement=u(Le).nativeElement;static \u0275fac=function(i){return new(i||t)};static \u0275dir=ke({type:t,standalone:!1})}return t})(),Zy=(()=>{class t extends iL{_destroyRef=u(ot);_mediator=u(R);_browser=u(He);_store=u(N);_canvas=Be.required(gh);_flow=Be.required(mh);_minimapView=Be.required(_h);fMinSize=F(1e3);fNodeRenderLimit=F(1500,{transform:et});get state(){return this._flow().model}ngOnInit(){this._mediator.execute(new bn(Pe.MINIMAP,this))}ngAfterViewInit(){this._listenTransformChanges()}_listenTransformChanges(){this._mediator.execute(new Qd).pipe(Pf(),jk()).listen(this._destroyRef,()=>{this._redraw()})}_redraw(){if(this._browser.isBrowser()){if(this._isOverNodeRenderLimit()){this._canvas().clear();return}this._flow().redraw(),this._minimapView().redraw(),this._canvas().redraw()}}_isOverNodeRenderLimit(){let e=this.fNodeRenderLimit();return e>0&&this._store.nodes.size()>e}ngOnDestroy(){this._mediator.execute(new wn(Pe.MINIMAP))}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275cmp=Z({type:t,selectors:[["f-minimap"]],viewQuery:function(i,o){i&1&&Ot(o._canvas,gh,5)(o._flow,mh,5)(o._minimapView,_h,5),i&2&&gt(3)},hostAttrs:[1,"f-component","f-minimap"],inputs:{fMinSize:[1,"fMinSize"],fNodeRenderLimit:[1,"fNodeRenderLimit"]},exportAs:["fComponent"],features:[be([{provide:nL,useExisting:t}]),ve],decls:3,vars:1,consts:[["fMinimapFlow","","width","100%","height","100%","fLockedContext","",3,"fMinSize"],["fMinimapCanvas",""],["fMinimapView","","x","0","y","0","width","100%","height","100%","stroke","none"]],template:function(i,o){i&1&&(it(),h(0,"svg",0),B(1,"g",1)(2,"rect",2),m()),i&2&&D("fMinSize",o.fMinSize())},dependencies:[mh,gh,_h],styles:["[_nghost-%COMP%]{display:block;position:absolute}[_nghost-%COMP%] svg[_ngcontent-%COMP%]{overflow:hidden}"],changeDetection:0})}return t})();var oL=(()=>{class t{hostElement=u(Le).nativeElement;initialize(){this.hostElement.style.display="none"}static \u0275fac=function(i){return new(i||t)};static \u0275dir=ke({type:t,standalone:!1})}return t})(),Qy=(()=>{class t extends oL{_mediator=u(R);fTrigger=e=>e.shiftKey;ngOnInit(){this._mediator.execute(new bn(Pe.SELECTION_AREA,this)),super.initialize()}ngOnDestroy(){this._mediator.execute(new wn(Pe.SELECTION_AREA))}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275cmp=Z({type:t,selectors:[["f-selection-area"]],hostAttrs:[1,"f-selection-area","f-component"],inputs:{fTrigger:"fTrigger"},features:[ve],decls:0,vars:0,template:function(i,o){},styles:["[_nghost-%COMP%]{position:absolute}"]})}return t})();var rL=0,aL=120,gr=(()=>{class t extends Dm{_destroyRef=u(ot);_mediator=u(R);_browser=u(He);_componentsStore=u(N);_cache=u(Vt);_injector=u(ut);fId=F(`f-flow-${rL++}`,{alias:"fFlowId"});fCache=F(!1,{transform:Ce});hostElement=u(Le).nativeElement;fNodesRendered=Ve();fFullRendered=Ve();fLoaded=Ve();ngOnInit(){this._mediator.execute(new of(this)),this._listenCacheChanges()}ngAfterContentInit(){this._browser.isBrowser()&&(this._listenNodesChanges(),this._listenConnectionsChanges())}_listenCacheChanges(){pe(()=>{this._cache.enabled=this.fCache()},{injector:this._injector})}_listenNodesChanges(){new qt(this._componentsStore.nodesChanges$,this._componentsStore.progressiveRenderChanges$).pipe(Pf(),Zd(aL),Hk()).listen(this._destroyRef,()=>{this._mediator.execute(new Pn)||this._componentsStore.hasPendingProgressiveRender||(this._mediator.execute(new Ef),this._mediator.execute(new lf),this._mediator.execute(new fr(this._componentsStore.connectionsRevision+1,this._componentsStore.nodesRevision,()=>this._mediator.execute(new uf),this._destroyRef)),this._mediator.execute(new Xn))})}_listenConnectionsChanges(){this._mediator.execute(new Gi).listen(this._destroyRef,()=>{if(!this._mediator.execute(new Pn)){if(this._componentsStore.isViewportAnimating){this._mediator.execute(new pf(this._destroyRef));return}this._mediator.execute(new Vo)}})}redraw(){this._mediator.execute(new Xn)}reset(){this._mediator.execute(new ff)}getNodesBoundingBox(){return this._mediator.execute(new Ju)}getSelection(){return this._mediator.execute(new pr)}getPositionInFlow(e){return this._mediator.execute(new If(e))}getState(e){return this._mediator.execute(new cf(e?.measuredSize??!1))}selectAll(){this._mediator.execute(new Gi).pipe(k0()).listen(this._destroyRef,()=>{this._mediator.execute(new _f)})}select(e,i,o=!0){this._mediator.execute(new Gi).pipe(k0()).listen(this._destroyRef,()=>{this._mediator.execute(new gf(e,i,o))})}clearSelection(){this._mediator.execute(new hf)}ngOnDestroy(){this._mediator.execute(new df(this))}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275cmp=Z({type:t,selectors:[["f-flow"]],hostAttrs:[1,"f-component","f-flow"],hostVars:1,hostBindings:function(i,o){i&2&&$("id",o.fId())},inputs:{fId:[1,"fFlowId","fId"],fCache:[1,"fCache"]},outputs:{fNodesRendered:"fNodesRendered",fFullRendered:"fFullRendered",fLoaded:"fLoaded"},features:[be([R,...Qk,gy,ro,...$F,J,...yA,{provide:Am,useExisting:t}]),ve],ngContentSelectors:Gk,decls:7,vars:0,template:function(i,o){i&1&&(Xt(Vk),ia(0),Ae(1),Ae(2,1),Ae(3,2),Ae(4,3),Ae(5,4),Ae(6,5),oa())},styles:["[_nghost-%COMP%]{display:block;position:relative;width:100%;height:100%;overflow:hidden;pointer-events:all;-webkit-user-select:none;user-select:none;touch-action:none} .f-connection-content{position:absolute;left:0;top:0;inline-size:max-content;pointer-events:all;transform-origin:50% 50%} .f-node, .f-group{position:absolute!important;transform-origin:center;-webkit-user-select:none;user-select:none;pointer-events:all;left:0!important;top:0!important;box-sizing:border-box} .f-group{z-index:1} .f-connection-content{z-index:3} .f-node{z-index:4}.hidden[_ngcontent-%COMP%]{opacity:0}"],changeDetection:0})}return t})();var Jy=(()=>{class t{fVirtualForOf=[];fVirtualForTrackBy;_vc=u(ta);_tpl=u(j_);_zone=u(Vn);_componentsStore=u(N,{optional:!0});_views=[];_rafId=null;_isProgressiveRenderActive=!1;ngOnChanges(e){e.fVirtualForOf&&(this._reset(),this._renderProgressively())}ngOnDestroy(){this._reset()}_reset(){this._rafId!==null&&(cancelAnimationFrame(this._rafId),this._rafId=null),this._finishProgressiveRender(),this._vc.clear(),this._views.length=0}_renderProgressively(){let i=0;this._startProgressiveRender(),this._zone.runOutsideAngular(()=>{let o=()=>{let r=performance.now();for(;i<this.fVirtualForOf.length&&performance.now()-r<10;){let a=this.fVirtualForOf[i],s=this._vc.createEmbeddedView(this._tpl,{$implicit:a,index:i});this._views.push(s),i++}if(i<this.fVirtualForOf.length){this._rafId=requestAnimationFrame(o);return}this._rafId=null,this._finishProgressiveRender()};this._rafId=requestAnimationFrame(o)})}_startProgressiveRender(){this._isProgressiveRenderActive||(this._isProgressiveRenderActive=!0,this._componentsStore?.beginProgressiveRender())}_finishProgressiveRender(){this._isProgressiveRenderActive&&(this._isProgressiveRenderActive=!1,this._componentsStore?.endProgressiveRender())}static \u0275fac=function(i){return new(i||t)};static \u0275dir=ke({type:t,selectors:[["","fVirtualFor","","fVirtualForOf",""]],inputs:{fVirtualForOf:"fVirtualForOf",fVirtualForTrackBy:"fVirtualForTrackBy"},features:[wi]})}return t})();var en=(function(t){return t[t.ZOOM_IN=1]="ZOOM_IN",t[t.ZOOM_OUT=-1]="ZOOM_OUT",t})(en||{}),sL=new he("F_ZOOM"),Om=class{},cL=.1,dL=1,lL=.5,uL=60,fL=.5;function pL(t){return Math.abs(t.deltaY)>=Math.abs(t.deltaX)?t.deltaY:t.deltaX}function hL(t,n,e){return mL(t)?_L(n,e):gL(n,e)}function mL(t){return(t.ctrlKey||t.metaKey)&&t.deltaMode===WheelEvent.DOM_DELTA_PIXEL}function gL(t,n){let e=Math.abs(t)/100,i=ev(e,cL,dL);return n*i}function _L(t,n){if(Math.abs(t)<lL)return 0;let e=Math.abs(t)/uL,i=ev(e,0,fL);return n*i}function ev(t,n,e){return Math.max(n,Math.min(e,t))}var _r=(()=>{class t extends Om{_mediator=u(R);_injector=u(ut);_store=u(N);_triggersListener=we.emptyListener();isEnabled=F(!1,{alias:"fZoom",transform:Ce});fWheelTrigger=Nt;fDblClickTrigger=Nt;minimum=.1;maximum=4;step=.1;dblClickStep=.5;get _flowHost(){return this._store.flowHost}get _canvas(){return this._store.fCanvas}ngOnInit(){this._mediator.execute(new bn(Pe.ZOOM,this))}ngAfterViewInit(){this._listenZoomEnabledChanges()}_listenZoomEnabledChanges(){pe(()=>{this.isEnabled(),Lt(()=>this._listenTriggers())},{injector:this._injector})}_listenTriggers(){this._flowHost&&(this._disposeListeners(),this.isEnabled()&&(this._listen("wheel",this._onWheel,we.activeListener()),this._listen("dblclick",this._onDoubleClick),this._triggersListener=()=>{this._unlisten("wheel",this._onWheel,we.activeListener()),this._unlisten("dblclick",this._onDoubleClick)}))}_onWheel=e=>{if(!Et(e,this.fWheelTrigger)||(e.preventDefault(),e.target?.closest("[fLockedContext]")))return;let o=pL(e);if(o===0)return;let r=this._normalizeWheelStep(e,o);r!==0&&this.setZoom(L.initialize(e.clientX,e.clientY),r,this._calculateDirection(o),!1)};_normalizeWheelStep(e,i){return hL(e,i,this.step)}_calculateDirection(e){return e>0?en.ZOOM_OUT:en.ZOOM_IN}_onDoubleClick=e=>{if(!Et(e,this.fDblClickTrigger))return;e.preventDefault();let i=e.target;OR(i)||i?.closest("[fLockedContext]")||this.setZoom(L.initialize(e.clientX,e.clientY),this.dblClickStep,en.ZOOM_IN,!0)};_getToCenterPosition(e,i){return L.initialize(e?.x||i.gravityCenter.x,e?.y||i.gravityCenter.y)}zoomIn(e){this._onZoomToCenter(en.ZOOM_IN,e)}zoomOut(e){this._onZoomToCenter(en.ZOOM_OUT,e)}_onZoomToCenter(e,i){this.setZoom(this._getToCenterPosition(i,j.fromElement(this._flowHost)),this.step,e,!1)}setZoom(e,i,o,r){this._mediator.execute(new Cf(e,i,o,r))}getZoomValue(){return this._canvas.transform.scale||1}reset(){this._mediator.execute(new vf)}_disposeListeners(){this._triggersListener(),this._triggersListener=we.emptyListener()}ngOnDestroy(){this._disposeListeners(),this._mediator.execute(new wn(Pe.ZOOM))}_listen(e,i,o){this._flowHost.addEventListener(e,i,o)}_unlisten(e,i,o){this._flowHost.removeEventListener(e,i,o)}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275dir=ke({type:t,selectors:[["f-canvas","fZoom",""]],hostAttrs:[1,"f-zoom","f-component"],inputs:{isEnabled:[1,"fZoom","isEnabled"],fWheelTrigger:"fWheelTrigger",fDblClickTrigger:"fDblClickTrigger",minimum:[2,"fZoomMinimum","minimum",et],maximum:[2,"fZoomMaximum","maximum",et],step:[2,"fZoomStep","step",et],dblClickStep:[2,"fZoomDblClickStep","dblClickStep",et]},features:[be([{provide:sL,useExisting:t}]),ve]})}return t})();var tv=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=Si({type:t});static \u0275inj=xi({imports:[Ti]})}return t})();var pp=QD(QP(),1);var Wr=(function(t){return t.NETWORK_SIMPLEX="network-simplex",t.TIGHT_TREE="tight-tree",t.LONGEST_PATH="longest-path",t})(Wr||{}),O9={direction:ai.TOP_BOTTOM,nodeGap:48,layerGap:64,algorithm:Wr.NETWORK_SIMPLEX,defaultNodeSize:at.initialize(120,72)},d_=(()=>{class t extends rf{constructor(){super(O9)}mergeOptions(e,i={}){return Yt(ae(ae({},e),i),{defaultNodeSize:i.defaultNodeSize?at.initialize(i.defaultNodeSize.width,i.defaultNodeSize.height):at.initialize(e.defaultNodeSize.width,e.defaultNodeSize.height)})}async calculate(e,i,o){let r=this.resolveLayoutOptions(o),a=this._buildGraph(e,i,r),s=new Map;return pp.layout(a),a.nodes().forEach(c=>{let d=a.node(c),f=e.find(v=>v.id===c);if(!d||!f)return;let p=f.size??r.defaultNodeSize;s.set(c,L.initialize(d.x-p.width/2,d.y-p.height/2))}),{nodes:jy(e,s)}}_buildGraph(e,i,o){let r=new pp.graphlib.Graph;return r.setDefaultEdgeLabel(()=>({})),r.setGraph({rankdir:this._mapDirection(o.direction),nodesep:o.nodeGap,ranksep:o.layerGap,ranker:this._mapAlgorithm(o.algorithm)}),e.forEach(a=>{let s=a.size??o.defaultNodeSize;r.setNode(a.id,{width:s.width,height:s.height})}),i.forEach(a=>{!r.hasNode(a.source)||!r.hasNode(a.target)||r.setEdge(a.source,a.target,{})}),r}_mapAlgorithm(e){switch(e){case Wr.TIGHT_TREE:return"tight-tree";case Wr.LONGEST_PATH:return"longest-path";case Wr.NETWORK_SIMPLEX:default:return"network-simplex"}}_mapDirection(e){switch(e){case ai.BOTTOM_TOP:return"BT";case ai.LEFT_RIGHT:return"LR";case ai.RIGHT_LEFT:return"RL";case ai.TOP_BOTTOM:default:return"TB"}}static \u0275fac=function(i){return new(i||t)};static \u0275prov=C({token:t,factory:t.\u0275fac})}return t})();var gi={loading:"Loading collection",errorTitle:"Failed to load",emptyTitle:"No nodes match",emptyDesc:"Adjust or reset the filters above.",a11y:{toolbar:"Graph controls",panel:"Selected node details"},toolbar:{zoomIn:"Zoom in",zoomOut:"Zoom out",fitToScreen:"Fit to screen",resetLayoutLabel:"Reset layout",resetLayoutTooltip:"Reset layout (re-run auto layout, clear saved positions)",layoutAlgorithmLabel:"Layout algorithm",layoutAlgorithmTooltip:"Layout algorithm (balanced, stretched or organic)",layoutDirectionLabel:"Layout direction",layoutDirectionTooltip:"Layout direction (TB, BT, LR, RL)",layoutDirectionUnavailableTooltip:"Direction does not apply to the Organic layout. Switch to Balanced or Stretched to set it.",layoutSpacingLabel:"Layout spacing",layoutSpacingTooltip:"Layout spacing (compact, normal, spacious)",layoutSpacingUnavailableTooltip:"Spacing does not apply to the Organic layout. Switch to Balanced or Stretched to set it.",connectionTypeLabel:"Edge style",connectionTypeTooltip:"Edge style (orthogonal, straight, bezier or adaptive curve)"},layout:{algorithm:{options:{"network-simplex":{label:"Balanced"},"longest-path":{label:"Stretched"},force:{label:"Organic"}}},direction:{options:{TOP_BOTTOM:{label:"Top to bottom"},BOTTOM_TOP:{label:"Bottom to top"},LEFT_RIGHT:{label:"Left to right"},RIGHT_LEFT:{label:"Right to left"}}},spacing:{options:{compact:{label:"Compact"},normal:{label:"Normal"},spacious:{label:"Spacious"}}},connection:{options:{segment:{label:"Orthogonal"},straight:{label:"Straight"},bezier:{label:"Bezier"},"adaptive-curve":{label:"Adaptive curve"}}}},panel:{resizeLabel:"Resize panel"},resetLayoutConfirm:{header:"Reset layout?",message:"Reset all node positions to the automatic layout. This cannot be undone.",accept:"Reset",reject:"Cancel"}};var xo={graph:{perf:{cache:!0,virtualization:!1},perfHud:!0},inspector:{actionMocks:!1}};var l_=["network-simplex","longest-path","force"];function u_(t){return t!=="force"}function JP(t){return t!=="force"}var f_=["TOP_BOTTOM","BOTTOM_TOP","LEFT_RIGHT","RIGHT_LEFT"],p_=["compact","normal","spacious"],eM={compact:{nodeGap:40,layerGap:56},normal:{nodeGap:64,layerGap:96},spacious:{nodeGap:96,layerGap:144}},tM="network-simplex",nM="TOP_BOTTOM",iM="normal";function oM(t){return typeof t=="string"&&l_.includes(t)}function rM(t){return typeof t=="string"&&f_.includes(t)}function aM(t){return typeof t=="string"&&p_.includes(t)}var N9="adaptive-curve",h_=["segment","straight","bezier","adaptive-curve"],sM="sm.graph.connection-type",cM="sm.graph.layout-algorithm",dM="sm.graph.layout-direction",lM="sm.graph.layout-spacing",gp=class t{_connectionType=U(hp(sM,R9,N9));_layoutAlgorithm=U(hp(cM,oM,tM));_layoutDirection=U(hp(dM,rM,nM));_layoutSpacing=U(hp(lM,aM,iM));connectionType=this._connectionType.asReadonly();layoutAlgorithm=this._layoutAlgorithm.asReadonly();layoutDirection=this._layoutDirection.asReadonly();layoutSpacing=this._layoutSpacing.asReadonly();setConnectionType(n){this._connectionType()!==n&&(this._connectionType.set(n),mp(sM,n))}setLayoutAlgorithm(n){this._layoutAlgorithm()!==n&&(this._layoutAlgorithm.set(n),mp(cM,n))}setLayoutDirection(n){this._layoutDirection()!==n&&(this._layoutDirection.set(n),mp(dM,n))}setLayoutSpacing(n){this._layoutSpacing()!==n&&(this._layoutSpacing.set(n),mp(lM,n))}static toFoblexEnum(n){return n}static \u0275fac=function(e){return new(e||t)};static \u0275prov=C({token:t,factory:t.\u0275fac,providedIn:"root"})};function hp(t,n,e){let i=null;try{i=localStorage.getItem(t)}catch{return e}return i&&n(i)?i:e}function mp(t,n){try{localStorage.setItem(t,n)}catch{}}function R9(t){return typeof t=="string"&&h_.includes(t)}var uM={a11y:{toolbarLabel:"Toggle node kinds"},favorites:{label:"Favorites"}};function A9(t,n){if(t&1&&dn(0,"i",4),t&2){let e=g();Fe(e.piClass()),_t("font-size",e.size(),"px")}}function F9(t,n){if(t&1&&(it(),K(0,"svg",1),dn(1,"path"),Y()),t&2){let e=g();$("width",e.size())("height",e.size()),l(),$("d",e.svgPath())}}function L9(t,n){if(t&1&&(K(0,"span",4),y(1),Y()),t&2){let e=g();_t("font-size",e.size(),"px")("line-height",e.size(),"px"),l(),b(e.emoji())}}function B9(t,n){if(t&1&&(K(0,"span",5),y(1),Y()),t&2){let e=g();_t("font-size",e.size(),"px")("line-height",e.size(),"px"),l(),b(e.letter())}}var Ln=class t{kindRegistry=u(ki);kind=F.required();size=F(18);provider=F(null);resolvedUi=k(()=>{let n=this.kindRegistry.lookup(this.kind());if(!n)return;let e=this.provider();if(e){let i=n.providers[e];if(i&&(i.icon||i.emoji))return i}return n});variant=k(()=>{let n=this.resolvedUi();return n?.icon?.kind==="pi"?"pi":n?.icon?.kind==="svg"?"svg":n?.emoji?"emoji":"letter"});piClass=k(()=>{let n=this.resolvedUi()?.icon;return n?.kind==="pi"?`pi ${n.id}`:""});svgPath=k(()=>{let n=this.resolvedUi()?.icon;return n?.kind==="svg"?n.path:""});emoji=k(()=>this.resolvedUi()?.emoji??"");letter=k(()=>this.kindRegistry.labelOf(this.kind()).charAt(0).toUpperCase());static \u0275fac=function(e){return new(e||t)};static \u0275cmp=Z({type:t,selectors:[["sm-kind-icon"]],inputs:{kind:[1,"kind"],size:[1,"size"],provider:[1,"provider"]},decls:4,vars:1,consts:[["aria-hidden","true",3,"class","font-size"],["viewBox","0 0 24 24","fill","none","stroke","currentColor","stroke-width","2.2","stroke-linecap","round","stroke-linejoin","round","aria-hidden","true"],["aria-hidden","true",3,"font-size","line-height"],["aria-hidden","true",1,"kind-icon__letter",3,"font-size","line-height"],["aria-hidden","true"],["aria-hidden","true",1,"kind-icon__letter"]],template:function(e,i){if(e&1&&P(0,A9,1,4,"i",0)(1,F9,2,3,":svg:svg",1)(2,L9,2,5,"span",2)(3,B9,2,5,"span",3),e&2){let o;M((o=i.variant())==="pi"?0:o==="svg"?1:o==="emoji"?2:o==="letter"?3:-1)}},styles:["[_nghost-%COMP%]{display:inline-flex;align-items:center;justify-content:center;line-height:1}"],changeDetection:0})};var hM=()=>({class:"kind-palette__content"}),mM=t=>({content:t}),z9=(t,n)=>n.kind;function q9(t,n){if(t&1&&(B(0,"sm-kind-icon",5),h(1,"span"),y(2),m()),t&2){let e=g().$implicit;D("kind",e.kind)("size",16),l(2),b(e.count)}}function V9(t,n){if(t&1){let e=de();h(0,"p-togglebutton",4),W("ngModelChange",function(){let o=G(e).$implicit,r=g();return H(r.toggle(o.kind))}),Ie(1,q9,3,3,"ng-template",null,0,Un),m()}if(t&2){let e=n.$implicit,i=g();D("ngModel",i.isActive(e.kind))("pTooltip",e.label)("ariaLabel",e.label)("styleClass","kind-palette__btn kind-palette__btn--"+e.kind)("pt",Qt(7,mM,jn(6,hM))),$("data-testid","kind-palette-"+e.kind)}}function G9(t,n){if(t&1&&(B(0,"i",7),h(1,"span"),y(2),m()),t&2){let e=g(2);se("pi-star-fill",e.favoritesActive())("pi-star",!e.favoritesActive()),l(2),b(e.favoritesCount())}}function H9(t,n){if(t&1){let e=de();h(0,"p-togglebutton",6),W("ngModelChange",function(){G(e);let o=g();return H(o.toggleFavoritesOnly())}),Ie(1,G9,3,5,"ng-template",null,0,Un),m()}if(t&2){let e=g();D("ngModel",e.favoritesActive())("pTooltip",e.texts.favorites.label)("ariaLabel",e.texts.favorites.label)("pt",Qt(5,mM,jn(4,hM)))}}var _p=class t{loader=u(hn);filters=u(Oi);kindRegistry=u(ki);texts=uM;entries=k(()=>{let n=new Map;for(let e of this.loader.nodes())n.set(e.kind,(n.get(e.kind)??0)+1);return this.kindRegistry.kinds().map(e=>({kind:e.name,label:e.label,count:n.get(e.name)??0}))});favoritesCount=k(()=>this.loader.nodes().filter(n=>n.isFavorite===!0).length);showFavorites=k(()=>this.loader.hasAnyFavorites()||this.filters.favoritesOnly());favoritesActive=k(()=>this.filters.favoritesOnly());isActive(n){return this.filters.isKindActive(n)}toggle(n){this.filters.toggleKind(n)}toggleFavoritesOnly(){this.filters.setFavoritesOnly(!this.filters.favoritesOnly())}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=Z({type:t,selectors:[["sm-kind-palette"]],decls:4,vars:2,consts:[["content",""],["role","toolbar","data-testid","kind-palette",1,"kind-palette"],[3,"ngModel","pTooltip","ariaLabel","styleClass","pt"],["styleClass","kind-palette__btn kind-palette__btn--favorites","data-testid","kind-palette-favorites",3,"ngModel","pTooltip","ariaLabel","pt"],[3,"ngModelChange","ngModel","pTooltip","ariaLabel","styleClass","pt"],[3,"kind","size"],["styleClass","kind-palette__btn kind-palette__btn--favorites","data-testid","kind-palette-favorites",3,"ngModelChange","ngModel","pTooltip","ariaLabel","pt"],["aria-hidden","true",1,"pi"]],template:function(e,i){e&1&&(h(0,"div",1),ee(1,V9,3,9,"p-togglebutton",2,z9),P(3,H9,3,7,"p-togglebutton",3),m()),e&2&&($("aria-label",i.texts.a11y.toolbarLabel),l(),te(i.entries()),l(2),M(i.showFavorites()?3:-1))},dependencies:[Ai,Ni,Ri,Li,Fi,We,Ze,Ln],styles:["[_nghost-%COMP%]{display:block;pointer-events:auto}.kind-palette[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:2px;padding:4px;background:color-mix(in srgb,var(--sm-bg-content) 80%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--sm-border);border-radius:.65rem;box-shadow:var(--sm-shadow-floating)}.kind-palette__btn[_ngcontent-%COMP%]{--p-togglebutton-padding: 0;--p-togglebutton-content-padding: 0 .55rem;--p-togglebutton-border-radius: var(--sm-radius-pill);--p-togglebutton-content-border-radius: var(--sm-radius-pill);--p-togglebutton-gap: .4rem;--p-togglebutton-background: transparent;--p-togglebutton-checked-background: transparent;--p-togglebutton-hover-background: transparent;--p-togglebutton-border-color: transparent;--p-togglebutton-checked-border-color: transparent;--p-togglebutton-content-checked-background: var(--sm-bg-hover);--p-togglebutton-color: var(--p-text-muted-color);--p-togglebutton-hover-color: var(--p-text-color);--p-togglebutton-checked-color: var(--p-text-color);--p-togglebutton-icon-color: var(--p-text-muted-color);--p-togglebutton-icon-hover-color: var(--p-text-color);--p-togglebutton-icon-checked-color: var(--p-text-color);width:56px;height:30px;font-size:.72rem;font-weight:600;font-variant-numeric:tabular-nums}[_nghost-%COMP%] .kind-palette__content{width:100%;height:100%;justify-content:flex-start;display:flex;align-items:center;gap:.4rem}[_nghost-%COMP%] .kind-palette__content>span{flex:1;text-align:right}[_nghost-%COMP%] .kind-palette__btn sm-kind-icon{display:inline-flex;align-items:center;color:var(--p-text-muted-color)}[_nghost-%COMP%] .kind-palette__btn[aria-pressed=true] sm-kind-icon{color:var(--p-text-color)}[_nghost-%COMP%] .kind-palette__btn--skill[aria-pressed=true] sm-kind-icon{color:var(--sm-kind-skill)}[_nghost-%COMP%] .kind-palette__btn--agent[aria-pressed=true] sm-kind-icon{color:var(--sm-kind-agent)}[_nghost-%COMP%] .kind-palette__btn--command[aria-pressed=true] sm-kind-icon{color:var(--sm-kind-command)}[_nghost-%COMP%] .kind-palette__btn--markdown[aria-pressed=true] sm-kind-icon{color:var(--sm-kind-markdown)}[_nghost-%COMP%] .kind-palette__btn--favorites .pi{font-size:.95rem;line-height:1;color:var(--p-text-muted-color)}[_nghost-%COMP%] .kind-palette__btn--favorites:hover .pi{color:var(--p-text-color)}[_nghost-%COMP%] .kind-palette__btn--favorites[aria-pressed=true] .pi{color:var(--p-primary-color)}"],changeDetection:0})};var $t={a11y:{toolbarLabel:"Link kind filters"},kinds:{invokes:"Invokes",references:"References",mentions:"Mentions",supersedes:"Supersedes"},tooltips:{invokes:`Invokes:
273
+ "/skill-command"`,references:`References:
274
+ "[link](./link.md)"`,mentions:`Mention:
275
+ "@agent.md"`,supersedes:`Supersedes:
276
+ .sm annotation`}};var j9=()=>({class:"link-kind-palette__content"}),U9=t=>({content:t}),W9=(t,n)=>n.kind;function $9(t,n){if(t&1&&y(0),t&2){let e=g(2).$implicit;Ue(" ",e.text," ")}}function K9(t,n){if(t&1&&B(0,"i"),t&2){let e=g(2).$implicit;Fe(e.icon)}}function Y9(t,n){if(t&1&&(h(0,"span",4),P(1,$9,1,1)(2,K9,1,2,"i",5),m()),t&2){let e=g().$implicit;l(),M(e.text?1:e.icon?2:-1)}}function X9(t,n){if(t&1){let e=de();h(0,"p-togglebutton",3),W("ngModelChange",function(){let o=G(e).$implicit,r=g();return H(r.toggle(o.kind))}),Ie(1,Y9,3,1,"ng-template",null,0,Un),m()}if(t&2){let e=n.$implicit,i=g();D("ngModel",i.isActive(e.kind))("pTooltip",e.tooltip)("ariaLabel",e.label)("styleClass","link-kind-palette__btn link-kind-palette__btn--"+e.kind)("pt",Qt(7,U9,jn(6,j9))),$("data-testid","link-kind-palette-"+e.kind)}}var yp=class t{filters=u(Oi);texts=$t;entries=[{kind:"invokes",label:$t.kinds.invokes,tooltip:$t.tooltips.invokes,text:"/"},{kind:"references",label:$t.kinds.references,tooltip:$t.tooltips.references,icon:"pi pi-link"},{kind:"mentions",label:$t.kinds.mentions,tooltip:$t.tooltips.mentions,text:"@"},{kind:"supersedes",label:$t.kinds.supersedes,tooltip:$t.tooltips.supersedes,icon:"pi pi-angle-double-right"}];constructor(){for(let n of this.entries)if(!m0.includes(n.kind))throw new Error(`link-kind-palette: unknown link kind "${n.kind}"`)}isActive(n){return this.filters.isLinkKindActive(n)}toggle(n){this.filters.toggleLinkKind(n)}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=Z({type:t,selectors:[["sm-link-kind-palette"]],decls:3,vars:1,consts:[["content",""],["role","toolbar","data-testid","link-kind-palette",1,"link-kind-palette"],["tooltipStyleClass","link-kind-palette__tooltip",3,"ngModel","pTooltip","ariaLabel","styleClass","pt"],["tooltipStyleClass","link-kind-palette__tooltip",3,"ngModelChange","ngModel","pTooltip","ariaLabel","styleClass","pt"],["aria-hidden","true",1,"link-kind-palette__glyph"],[3,"class"]],template:function(e,i){e&1&&(h(0,"div",1),ee(1,X9,3,9,"p-togglebutton",2,W9),m()),e&2&&($("aria-label",i.texts.a11y.toolbarLabel),l(),te(i.entries))},dependencies:[Ai,Ni,Ri,Li,Fi,We,Ze],styles:["[_nghost-%COMP%]{display:block;width:100%;pointer-events:auto}.link-kind-palette[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;padding:4px;background:color-mix(in srgb,var(--sm-bg-content) 80%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--sm-border);border-radius:.65rem;box-shadow:var(--sm-shadow-floating)}.link-kind-palette__btn[_ngcontent-%COMP%]{--p-togglebutton-padding: 0;--p-togglebutton-content-padding: 0;--p-togglebutton-border-radius: var(--sm-radius-pill);--p-togglebutton-content-border-radius: var(--sm-radius-pill);--p-togglebutton-background: transparent;--p-togglebutton-checked-background: transparent;--p-togglebutton-hover-background: transparent;--p-togglebutton-border-color: transparent;--p-togglebutton-checked-border-color: transparent;--p-togglebutton-content-checked-background: var(--sm-bg-hover);--p-togglebutton-color: var(--p-text-muted-color);--p-togglebutton-hover-color: var(--p-text-color);--p-togglebutton-checked-color: var(--p-text-color);width:100%;height:30px}[_nghost-%COMP%] .link-kind-palette__content{width:100%;height:100%;display:flex;align-items:center;justify-content:center}[_nghost-%COMP%] .link-kind-palette__glyph{font-size:.95rem;line-height:1;font-weight:600;display:inline-flex;align-items:center;justify-content:center}[_nghost-%COMP%] .link-kind-palette__btn--invokes .link-kind-palette__glyph{color:var(--sm-edge-invokes)}[_nghost-%COMP%] .link-kind-palette__btn--invokes[aria-pressed=true] .link-kind-palette__glyph{color:var(--sm-edge-invokes-active)}[_nghost-%COMP%] .link-kind-palette__btn--references .link-kind-palette__glyph{color:var(--sm-edge-references)}[_nghost-%COMP%] .link-kind-palette__btn--references[aria-pressed=true] .link-kind-palette__glyph{color:var(--sm-edge-references-active)}[_nghost-%COMP%] .link-kind-palette__btn--mentions .link-kind-palette__glyph{color:var(--sm-edge-mentions)}[_nghost-%COMP%] .link-kind-palette__btn--mentions[aria-pressed=true] .link-kind-palette__glyph{color:var(--sm-edge-mentions-active)}[_nghost-%COMP%] .link-kind-palette__btn--supersedes .link-kind-palette__glyph{color:var(--sm-edge-supersedes)}[_nghost-%COMP%] .link-kind-palette__btn--supersedes[aria-pressed=true] .link-kind-palette__glyph{color:var(--sm-edge-supersedes-active)}[_nghost-%COMP%] .link-kind-palette__tooltip .p-tooltip-text{white-space:pre-line;text-align:center;line-height:1.35}"],changeDetection:0})};var _i={llm:{what:{label:"what",tooltip:"What it does (LLM-inferred summary)"},when:{label:"when",tooltip:"When to use (LLM-inferred)"},style:{label:"style",tooltip:"Interaction style (LLM-inferred)"},does:{label:"does",tooltip:"Capabilities (LLM-inferred)"},steps:{label:"steps",tooltip:"Recipe / ordered steps (LLM-inferred)"},pre:{label:"pre",tooltip:"Preconditions (LLM-inferred)"},out:{label:"out",tooltip:"Outputs / produced artifacts (LLM-inferred)"},fx:{label:"fx",tooltip:"Side effects (LLM-inferred)"},eg:{label:"eg",tooltip:"Invocation example (LLM-inferred)"},topics:{label:"topics",tooltip:"Topics covered (LLM-inferred)"},facts:{label:"facts",tooltip:"Key facts (LLM-inferred discrete claims)"}},meta:{model:"model",allowed:"allowed",tags:"tags"},stats:{errors:t=>`${t} error${t===1?"":"s"}`,warns:t=>`${t} warning${t===1?"":"s"}`,bytes:t=>`${t.toLocaleString("en-US")} bytes`,tokens:t=>`${t.toLocaleString("en-US")} tokens`},stability:{experimental:"experimental",deprecated:"deprecated"},sidecar:{staleBody:"Stale: body content changed since the last bump.",staleFrontmatter:"Stale: frontmatter changed since the last bump.",staleBoth:"Stale: body and frontmatter changed since the last bump."},confidence:t=>`LLM summary \xB7 confidence ${t.toFixed(2)}`,ariaExpand:"Expand",ariaFavoriteAdd:"Add to favorites",ariaFavoriteRemove:"Remove from favorites",favoriteAddTooltip:"Mark as favorite",favoriteRemoveTooltip:"Unfavorite"};var Z9={claude:{label:"Claude",color:"#cc785c",colorDark:"#e89270"},gemini:{label:"Gemini",color:"#4285f4",colorDark:"#669df6"},"agent-skills":{label:"Open Skills",color:"#64748b",colorDark:"#94a3b8"}},Q9=new Set(["markdown"]),J9={label:"",color:"#9ca3af",colorDark:"#6b7280"};function gM(t){if(!t||Q9.has(t))return null;let n=Z9[t];return n||Yt(ae({},J9),{label:t})}function m_(t){let n=t.normalize("NFD");return n=n.replace(new RegExp("\\p{Mn}+","gu"),""),n=n.toLowerCase(),n=n.replace(/[-_\s]+/g," "),n=n.replace(/\s+/g," "),n.trim()}function _M(t){let n=new Map;return eX(t,n),tX(t,n),n}function eX(t,n){for(let e of t){let i=yM(e);if(i===null)continue;let o=m_(i);n.has(o)||n.set(o,e.path)}}function tX(t,n){for(let e of t){if(yM(e)!==null)continue;let i=g_(e.path);if(i.length===0)continue;let o=m_(i);n.has(o)||n.set(o,e.path)}}function yM(t){let n=t.frontmatter?.name;return typeof n!="string"||n.length===0?null:n}function g_(t){let n=t.split("/").filter(i=>i.length>0);if(n.length===0)return t;let e=n[n.length-1];return e==="SKILL.md"&&n.length>=2?n[n.length-2]:e.replace(/\.md$/,"")}function vM(t,n,e){let i=t.charAt(0);if(i!=="/"&&i!=="@")return t;let o=n!==null?n.replace(/^[/@]/,"").trim():m_(t.slice(1));return e.get(o)??t}var nX=(t,n)=>n.source+":"+n.tag,iX=(t,n)=>n.step,oX=(t,n)=>n.analyzerId+n.message;function rX(t,n){if(t&1&&(h(0,"span",33),y(1),m()),t&2){let e=g(),i=ne(1),o=ne(3);se("sm-gnode__llm-marker--low",o==="low")("sm-gnode__llm-marker--med",o==="med")("sm-gnode__llm-marker--high",o==="high"),D("pTooltip",e.texts.confidence(i.confidence)),l(),Ue("",e.confidencePct(),"%")}}function aX(t,n){t&1&&(h(0,"span",9),y(1),m()),t&2&&(l(),b(n))}function sX(t,n){if(t&1&&(h(0,"span",13)(1,"span",34),y(2,"T"),m(),y(3),m()),t&2){let e=g(),i=ne(2);D("pTooltip",e.texts.stats.tokens(i.tokensTotal)),l(3),b(e.tokensShort())}}function cX(t,n){if(t&1&&(h(0,"span",14)(1,"span",34),y(2,"B"),m(),y(3),m()),t&2){let e=g(),i=ne(2);D("pTooltip",e.texts.stats.bytes(i.bytesTotal)),l(3),b(e.bytesShort())}}function dX(t,n){if(t&1&&(h(0,"span",35),y(1),m()),t&2){let e=n;g();let i=ne(0);_t("--provider-color",e.color)("--provider-color-dark",e.colorDark??e.color),D("pTooltip",i.provider),l(),b(e.label)}}function lX(t,n){if(t&1&&(h(0,"span",38),y(1),m()),t&2){let e=n.$implicit;se("sm-gnode__tag-chip--author",e.source==="author")("sm-gnode__tag-chip--user",e.source==="user"),$("data-tag-source",e.source),l(),b(e.tag)}}function uX(t,n){if(t&1&&(h(0,"span",37),y(1),m()),t&2){g(2);let e=ne(5);l(),Ue("+",e," more")}}function fX(t,n){if(t&1&&(h(0,"div",19),ee(1,lX,2,6,"span",36,nX),P(3,uX,2,1,"span",37),m()),t&2){g();let e=ne(4),i=ne(5);l(),te(e),l(2),M(i>0?3:-1)}}function pX(t,n){if(t&1&&(h(0,"div",39)(1,"span",40),y(2),m(),h(3,"span"),y(4),m()()),t&2){let e=g(),i=g(2);l(),D("pTooltip",i.texts.llm.what.tooltip),l(),b(i.texts.llm.what.label),l(2),b(e.whatItCovers)}}function hX(t,n){if(t&1&&(h(0,"span",42),y(1),m()),t&2){let e=n.$implicit;l(),b(e)}}function mX(t,n){if(t&1&&(h(0,"div",39)(1,"span",40),y(2),m(),h(3,"div",41),ee(4,hX,2,1,"span",42,Te),m()()),t&2){let e=g(),i=g(2);l(),D("pTooltip",i.texts.llm.topics.tooltip),l(),b(i.texts.llm.topics.label),l(2),te(e.topics)}}function gX(t,n){if(t&1&&(h(0,"span",42),y(1),m()),t&2){let e=n.$implicit;l(),b(e)}}function _X(t,n){if(t&1&&(h(0,"div",39)(1,"span",40),y(2),m(),h(3,"div",41),ee(4,gX,2,1,"span",42,Te),m()()),t&2){let e=g(),i=g(2);l(),D("pTooltip",i.texts.llm.facts.tooltip),l(),b(i.texts.llm.facts.label),l(2),te(e.keyFacts)}}function yX(t,n){if(t&1&&(P(0,pX,5,3,"div",39),P(1,mX,6,2,"div",39),P(2,_X,6,2,"div",39)),t&2){let e=n,i=g(2);M(i.showLlmWhat?0:-1),l(),M(e.topics!=null&&e.topics.length?1:-1),l(),M(e.keyFacts!=null&&e.keyFacts.length?2:-1)}}function vX(t,n){if(t&1&&(h(0,"div",39)(1,"span",40),y(2),m(),h(3,"span"),y(4),m()()),t&2){let e=g(),i=g(2);l(),D("pTooltip",i.texts.llm.what.tooltip),l(),b(i.texts.llm.what.label),l(2),b(e.whatItDoes)}}function CX(t,n){if(t&1&&(h(0,"div",39)(1,"span",40),y(2),m(),h(3,"span"),y(4),m()()),t&2){let e=g(),i=g(2);l(),D("pTooltip",i.texts.llm.when.tooltip),l(),b(i.texts.llm.when.label),l(2),b(e.whenToUse)}}function xX(t,n){if(t&1&&(h(0,"div",39)(1,"span",40),y(2),m(),h(3,"span"),y(4),m()()),t&2){let e=g(),i=g(2);l(),D("pTooltip",i.texts.llm.style.tooltip),l(),b(i.texts.llm.style.label),l(2),b(e.interactionStyle)}}function bX(t,n){if(t&1&&(h(0,"span",42),y(1),m()),t&2){let e=n.$implicit;l(),b(e)}}function wX(t,n){if(t&1&&(h(0,"div",39)(1,"span",40),y(2),m(),h(3,"div",41),ee(4,bX,2,1,"span",42,Te),m()()),t&2){let e=g(),i=g(2);l(),D("pTooltip",i.texts.llm.does.tooltip),l(),b(i.texts.llm.does.label),l(2),te(e.capabilities)}}function SX(t,n){if(t&1&&(P(0,vX,5,3,"div",39),P(1,CX,5,3,"div",39),P(2,xX,5,3,"div",39),P(3,wX,6,2,"div",39)),t&2){let e=n,i=g(2);M(i.showLlmWhat?0:-1),l(),M(e.whenToUse?1:-1),l(),M(e.interactionStyle?2:-1),l(),M(e.capabilities!=null&&e.capabilities.length?3:-1)}}function IX(t,n){if(t&1&&(h(0,"div",39)(1,"span",40),y(2),m(),h(3,"span"),y(4),m()()),t&2){let e=g(),i=g(2);l(),D("pTooltip",i.texts.llm.what.tooltip),l(),b(i.texts.llm.what.label),l(2),b(e.whatItDoes)}}function TX(t,n){if(t&1&&y(0),t&2){let e=n.$implicit,i=n.$index,o=n.$count;W_("",e.step,". ",e.description,"",i===o-1?"":" \xB7 ")}}function EX(t,n){if(t&1&&(h(0,"div",39)(1,"span",40),y(2),m(),h(3,"span"),ee(4,TX,1,3,null,null,iX),m()()),t&2){let e=g(),i=g(2);l(),D("pTooltip",i.texts.llm.steps.tooltip),l(),b(i.texts.llm.steps.label),l(2),te(e.recipe)}}function PX(t,n){if(t&1&&(h(0,"span",42),y(1),m()),t&2){let e=n.$implicit;l(),b(e)}}function MX(t,n){if(t&1&&(h(0,"div",39)(1,"span",40),y(2),m(),h(3,"div",41),ee(4,PX,2,1,"span",42,Te),m()()),t&2){let e=g(),i=g(2);l(),D("pTooltip",i.texts.llm.pre.tooltip),l(),b(i.texts.llm.pre.label),l(2),te(e.preconditions)}}function DX(t,n){if(t&1&&(h(0,"span",42),y(1),m()),t&2){let e=n.$implicit;l(),b(e)}}function kX(t,n){if(t&1&&(h(0,"div",39)(1,"span",40),y(2),m(),h(3,"div",41),ee(4,DX,2,1,"span",42,Te),m()()),t&2){let e=g(),i=g(2);l(),D("pTooltip",i.texts.llm.out.tooltip),l(),b(i.texts.llm.out.label),l(2),te(e.outputs)}}function OX(t,n){if(t&1&&(h(0,"span",42),y(1),m()),t&2){let e=n.$implicit;l(),b(e)}}function NX(t,n){if(t&1&&(h(0,"div",39)(1,"span",40),y(2),m(),h(3,"div",41),ee(4,OX,2,1,"span",42,Te),m()()),t&2){let e=g(),i=g(2);l(),D("pTooltip",i.texts.llm.fx.tooltip),l(),b(i.texts.llm.fx.label),l(2),te(e.sideEffects)}}function RX(t,n){if(t&1&&(P(0,IX,5,3,"div",39),P(1,EX,6,2,"div",39),P(2,MX,6,2,"div",39),P(3,kX,6,2,"div",39),P(4,NX,6,2,"div",39)),t&2){let e=n,i=g(2);M(i.showLlmWhat?0:-1),l(),M(e.recipe!=null&&e.recipe.length?1:-1),l(),M(e.preconditions!=null&&e.preconditions.length?2:-1),l(),M(e.outputs!=null&&e.outputs.length?3:-1),l(),M(e.sideEffects!=null&&e.sideEffects.length?4:-1)}}function AX(t,n){if(t&1&&(h(0,"div",39)(1,"span",40),y(2),m(),h(3,"span"),y(4),m()()),t&2){let e=g(),i=g(2);l(),D("pTooltip",i.texts.llm.what.tooltip),l(),b(i.texts.llm.what.label),l(2),b(e.whatItDoes)}}function FX(t,n){if(t&1&&(h(0,"div",39)(1,"span",40),y(2),m(),h(3,"code",43),y(4),m()()),t&2){let e=g(),i=g(2);l(),D("pTooltip",i.texts.llm.eg.tooltip),l(),b(i.texts.llm.eg.label),l(2),b(e.invocationExample)}}function LX(t,n){if(t&1&&(h(0,"span",42),y(1),m()),t&2){let e=n.$implicit;l(),b(e)}}function BX(t,n){if(t&1&&(h(0,"div",39)(1,"span",40),y(2),m(),h(3,"div",41),ee(4,LX,2,1,"span",42,Te),m()()),t&2){let e=g(),i=g(2);l(),D("pTooltip",i.texts.llm.fx.tooltip),l(),b(i.texts.llm.fx.label),l(2),te(e.sideEffects)}}function zX(t,n){if(t&1&&(P(0,AX,5,3,"div",39),P(1,FX,5,3,"div",39),P(2,BX,6,2,"div",39)),t&2){let e=n,i=g(2);M(i.showLlmWhat?0:-1),l(),M(e.invocationExample?1:-1),l(),M(e.sideEffects!=null&&e.sideEffects.length?2:-1)}}function qX(t,n){if(t&1&&(h(0,"div",24),P(1,yX,3,3),P(2,SX,4,4),P(3,RX,5,5),P(4,zX,3,3),m()),t&2){let e,i,o,r,a=g();l(),M((e=a.summaryMarkdown())?1:-1,e),l(),M((i=a.summaryAgent())?2:-1,i),l(),M((o=a.summarySkill())?3:-1,o),l(),M((r=a.summaryCommand())?4:-1,r)}}function VX(t,n){if(t&1&&(h(0,"div",25),y(1),m()),t&2){let e=g();l(),b(e.description())}}function GX(t,n){if(t&1&&(h(0,"div",44)(1,"div",45)(2,"span",46),y(3),m(),h(4,"span",47),y(5),m()()()),t&2){let e=g(),i=g();l(3),b(i.texts.meta.model),l(2),b(e.model)}}function HX(t,n){t&1&&P(0,GX,6,2,"div",44),t&2&&M(n.model?0:-1)}function jX(t,n){if(t&1&&(h(0,"div",49),B(1,"i",50),h(2,"code",51),y(3),m(),h(4,"span",52),y(5),m()()),t&2){let e=n.$implicit;se("sm-gnode__issue--error",e.severity==="error")("sm-gnode__issue--warn",e.severity==="warn"),D("pTooltip",e.detail??e.analyzerId+" \xB7 "+e.message),l(),se("pi",!0)("pi-times-circle",e.severity==="error")("pi-exclamation-triangle",e.severity==="warn"),l(2),b(e.analyzerId),l(2),b(e.message)}}function UX(t,n){if(t&1&&(h(0,"div",26),ee(1,jX,6,13,"div",48,oX),m()),t&2){let e=g();l(),te(e.visibleIssues())}}function WX(t,n){if(t&1&&(h(0,"span",29),B(1,"i",53),h(2,"span",54),y(3),m()()),t&2){let e=g();D("pTooltip",e.texts.stats.errors(e.errorCount())),l(3),b(e.errorCount())}}function $X(t,n){if(t&1&&(h(0,"span",30),B(1,"i",55),h(2,"span",54),y(3),m()()),t&2){let e=g();D("pTooltip",e.texts.stats.warns(e.warnCount())),l(3),b(e.warnCount())}}var KX={selected:!1,highlighted:!1,dimmed:!1},vp=class t{node=F.required();stats=F({linksIn:0,linksOut:0});summary=F(null);issues=F([]);selection=F(KX);isFavorite=F(!1);favoriteToggle=Ve();texts=_i;showLlmWhat=!1;showLlmConfidence=!1;expanded=Wn(!1);fmAgent=k(()=>{let n=this.node();return n.kind==="agent"?n.frontmatter:null});summaryAgent=k(()=>{let n=this.summary();return n?.kind==="agent"?n:null});summarySkill=k(()=>{let n=this.summary();return n?.kind==="skill"?n:null});summaryCommand=k(()=>{let n=this.summary();return n?.kind==="command"?n:null});summaryMarkdown=k(()=>{let n=this.summary();return n?.kind==="markdown"?n:null});hasLlmCluster=k(()=>{let n=this.summary();return n===null?!1:this.showLlmWhat?!0:this.hasNonWhatLlmContent(n)});hasNonWhatLlmContent(n){switch(n.kind){case"markdown":return(n.topics?.length??0)>0||(n.keyFacts?.length??0)>0;case"agent":return!!n.whenToUse||!!n.interactionStyle||(n.capabilities?.length??0)>0;case"skill":return(n.recipe?.length??0)>0||(n.preconditions?.length??0)>0||(n.outputs?.length??0)>0||(n.sideEffects?.length??0)>0;case"command":return!!n.invocationExample||(n.sideEffects?.length??0)>0;default:return!1}}confidenceTier=k(()=>{let n=this.summary();return n?n.confidence>.8?"high":n.confidence>=.5?"med":"low":null});confidencePct=k(()=>{let n=this.summary();return n?Math.round(n.confidence*100):null});visibleIssues=k(()=>this.issues().filter(n=>n.severity==="error"||n.severity==="warn"));errorCount=k(()=>this.visibleIssues().filter(n=>n.severity==="error").length);warnCount=k(()=>this.visibleIssues().filter(n=>n.severity==="warn").length);nodeColor=k(()=>this.agentVendorColor());kindRegistry=u(ki);providerAccent=k(()=>{let n=this.node();if(!n.provider)return null;let e=this.kindRegistry.lookup(n.kind);return!e||n.provider===e.primaryProviderId?null:e.providers[n.provider]?.color??null});providerChip=k(()=>gM(this.node().provider));bytesShort=k(()=>{let n=this.stats().bytesTotal;return n===void 0?null:ih(n)});tokensShort=k(()=>{let n=this.stats().tokensTotal;return n===void 0?null:ih(n)});version=k(()=>Ca(this.node()));stability=k(()=>xa(this.node()));tagChips=k(()=>{let n=this.node(),e=[],o=n.frontmatter.tags;if(Array.isArray(o))for(let s of o)typeof s=="string"&&s.length>0&&e.push({tag:s,source:"author"});let a=n.sidecar?.annotations?.tags;if(Array.isArray(a))for(let s of a)typeof s=="string"&&s.length>0&&e.push({tag:s,source:"user"});else{let s=va(n.frontmatter)?.tags;if(Array.isArray(s))for(let c of s)typeof c=="string"&&c.length>0&&e.push({tag:c,source:"user"})}return e});visibleTagChips=k(()=>this.tagChips().slice(0,3));moreTagsCount=k(()=>Math.max(0,this.tagChips().length-3));agentVendorColor=k(()=>{let n=this.node();if(n.kind!=="agent")return null;let i=n.frontmatter.color;return typeof i=="string"&&i.length>0?i:null});displayName=k(()=>{let n=this.node().frontmatter;return n.name?n.name:g_(this.node().path)});description=k(()=>this.node().frontmatter.description??"");toggleExpanded(n){n.stopPropagation(),this.expanded.update(e=>!e)}toggleFavorite(n){n.stopPropagation();let e=!this.isFavorite();this.favoriteToggle.emit({path:this.node().path,value:e})}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=Z({type:t,selectors:[["sm-node-card"]],hostAttrs:[1,"sm-gnode"],hostVars:17,hostBindings:function(e,i){e&2&&($("data-kind",i.node().kind),_t("--node-color",i.nodeColor())("--accent",i.providerAccent()),se("sm-gnode--with-color",!!i.nodeColor())("sm-gnode--deprecated",i.stability()==="deprecated")("sm-gnode--expanded",i.expanded())("sm-gnode--selected",i.selection().selected)("sm-gnode--highlighted",i.selection().highlighted)("sm-gnode--dimmed",i.selection().dimmed))},inputs:{node:[1,"node"],stats:[1,"stats"],summary:[1,"summary"],issues:[1,"issues"],selection:[1,"selection"],isFavorite:[1,"isFavorite"],expanded:[1,"expanded"]},outputs:{favoriteToggle:"favoriteToggle",expanded:"expandedChange"},decls:42,vars:38,consts:[[1,"sm-gnode__main"],["aria-hidden","true",1,"sm-gnode__icon-box"],[3,"kind","provider","size"],[1,"sm-gnode__content"],[1,"sm-gnode__name-row"],[1,"sm-gnode__name",3,"pTooltip"],["slot","card.title.right",3,"node"],[1,"sm-gnode__actions"],[1,"sm-gnode__confidence",3,"sm-gnode__llm-marker--low","sm-gnode__llm-marker--med","sm-gnode__llm-marker--high","pTooltip"],["data-testid","node-card-version",1,"sm-gnode__name-version"],["type","button",1,"sm-gnode__chevron",3,"click"],["aria-hidden","true",1,"pi","pi-chevron-down"],[1,"sm-gnode__sub"],[1,"sm-gnode__sub-stat","sm-gnode__sub-stat--tokens",3,"pTooltip"],[1,"sm-gnode__sub-stat","sm-gnode__sub-stat--bytes",3,"pTooltip"],["data-testid","node-card-provider",1,"sm-gnode__provider",3,"--provider-color","--provider-color-dark","pTooltip"],["type","button","data-testid","node-card-favorite",1,"sm-gnode__favorite",3,"click","pTooltip"],["aria-hidden","true",1,"pi"],["slot","card.subtitle.left",3,"node"],["data-testid","node-card-tags",1,"sm-gnode__tagrow"],[1,"sm-gnode__panel"],["data-testid","node-card-path",1,"sm-gnode__path",3,"pTooltip"],["aria-hidden","true",1,"fa-regular","fa-folder-open","sm-gnode__path-icon"],[1,"sm-gnode__path-value"],[1,"sm-gnode__llm"],[1,"sm-gnode__desc"],[1,"sm-gnode__issues-block"],[1,"sm-gnode__footer"],["slot","card.footer.left",3,"node"],[1,"sm-gnode__stat","sm-gnode__stat--error",3,"pTooltip"],[1,"sm-gnode__stat","sm-gnode__stat--warn",3,"pTooltip"],[1,"sm-gnode__footer-right-cluster"],["slot","card.footer.right",3,"node"],[1,"sm-gnode__confidence",3,"pTooltip"],[1,"sm-gnode__sub-key"],["data-testid","node-card-provider",1,"sm-gnode__provider",3,"pTooltip"],[1,"sm-gnode__tag-chip",3,"sm-gnode__tag-chip--author","sm-gnode__tag-chip--user"],["data-testid","node-card-tags-more",1,"sm-gnode__tag-more"],[1,"sm-gnode__tag-chip"],[1,"sm-gnode__llm-line"],[1,"sm-gnode__llm-label",3,"pTooltip"],[1,"sm-gnode__chips"],[1,"sm-gnode__chip","sm-gnode__chip--llm"],[1,"sm-gnode__llm-code"],[1,"sm-gnode__meta"],[1,"sm-gnode__meta-row"],[1,"sm-gnode__meta-label"],[1,"sm-gnode__meta-value","sm-gnode__meta-value--mono"],[1,"sm-gnode__issue",3,"sm-gnode__issue--error","sm-gnode__issue--warn","pTooltip"],[1,"sm-gnode__issue",3,"pTooltip"],["aria-hidden","true",1,"sm-gnode__issue-icon"],[1,"sm-gnode__issue-rule"],[1,"sm-gnode__issue-msg"],["aria-hidden","true",1,"fa-solid","fa-circle-xmark"],[1,"sm-gnode__stat-num"],["aria-hidden","true",1,"fa-solid","fa-triangle-exclamation"]],template:function(e,i){if(e&1&&(yt(0)(1)(2)(3)(4)(5),h(6,"div",0)(7,"div",1),B(8,"sm-kind-icon",2),m(),h(9,"div",3)(10,"div",4)(11,"span",5),y(12),m(),B(13,"sm-view-contributions-host",6),m()(),h(14,"div",7),P(15,rX,2,8,"span",8),P(16,aX,2,1,"span",9),h(17,"button",10),W("click",function(r){return i.toggleExpanded(r)}),B(18,"i",11),m()(),h(19,"div",12),P(20,sX,4,2,"span",13),P(21,cX,4,2,"span",14),P(22,dX,2,6,"span",15),h(23,"button",16),W("click",function(r){return i.toggleFavorite(r)}),B(24,"i",17),m(),B(25,"sm-view-contributions-host",18),m()(),P(26,fX,4,1,"div",19),h(27,"div",20)(28,"div",21),B(29,"i",22),h(30,"span",23),y(31),m()(),P(32,qX,5,4,"div",24),P(33,VX,2,1,"div",25),P(34,HX,1,1),P(35,UX,3,0,"div",26),m(),h(36,"div",27),B(37,"sm-view-contributions-host",28),P(38,WX,4,2,"span",29),P(39,$X,4,2,"span",30),h(40,"div",31),B(41,"sm-view-contributions-host",32),m()()),e&2){let o,r,a,s=Xe(i.node());l();let c=Xe(i.summary());l(),Xe(i.stats()),l();let d=Xe(i.confidenceTier());l();let f=Xe(i.visibleTagChips());l(),Xe(i.moreTagsCount()),l(3),D("kind",s.kind)("provider",s.provider)("size",18),l(3),D("pTooltip",i.displayName()),l(),b(i.displayName()),l(),D("node",i.node()),l(2),M(i.showLlmConfidence&&c!==null&&d!==null?15:-1),l(),M((o=i.version())?16:-1,o),l(),$("aria-label",i.texts.ariaExpand),l(3),M(i.tokensShort()!==null?20:-1),l(),M(i.bytesShort()!==null?21:-1),l(),M((r=i.providerChip())?22:-1,r),l(),se("sm-gnode__favorite--on",i.isFavorite()),D("pTooltip",i.isFavorite()?i.texts.favoriteRemoveTooltip:i.texts.favoriteAddTooltip),$("aria-label",i.isFavorite()?i.texts.ariaFavoriteRemove:i.texts.ariaFavoriteAdd),l(),se("pi-star-fill",i.isFavorite())("pi-star",!i.isFavorite()),l(),D("node",i.node()),l(),M(f.length?26:-1),l(2),D("pTooltip",s.path),l(3),b(s.path),l(),M(i.hasLlmCluster()?32:-1),l(),M(i.description()?33:-1),l(),M((a=i.fmAgent())?34:-1,a),l(),M(i.visibleIssues().length?35:-1),l(2),D("node",i.node()),l(),M(i.errorCount()>0?38:-1),l(),M(i.warnCount()>0?39:-1),l(2),D("node",i.node())}},dependencies:[Ln,We,Ze,mn],styles:['[_nghost-%COMP%]{--accent: var(--sm-kind-markdown);position:relative;display:inline-block;width:260px;background:var(--sm-bg-content);border:1px solid var(--sm-border);border-radius:8px;box-shadow:var(--sm-shadow-card);overflow:hidden;transition:box-shadow .12s ease,border-color .12s ease,transform .12s ease;-webkit-user-select:none;user-select:none;text-align:start}[_nghost-%COMP%]:hover{box-shadow:var(--sm-shadow-card-hover)}[_nghost-%COMP%]:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--accent)}[data-kind="skill"][_nghost-%COMP%]{--accent: var(--sm-kind-skill)}[data-kind="agent"][_nghost-%COMP%]{--accent: var(--sm-kind-agent)}[data-kind="command"][_nghost-%COMP%]{--accent: var(--sm-kind-command)}[data-kind="markdown"][_nghost-%COMP%]{--accent: var(--sm-kind-markdown)}.sm-gnode--deprecated[_nghost-%COMP%]{opacity:.55}.sm-gnode--selected[_nghost-%COMP%]{border-color:var(--p-primary-color);box-shadow:0 0 0 2px var(--p-primary-color),0 4px 16px color-mix(in srgb,var(--p-primary-color) 25%,transparent)}.sm-gnode--highlighted[_nghost-%COMP%]{border-color:var(--p-primary-color);box-shadow:var(--sm-shadow-card-hover)}.sm-gnode--dimmed[_nghost-%COMP%]{opacity:.25}.sm-gnode__main[_ngcontent-%COMP%]{display:grid;grid-template-columns:auto minmax(0,1fr) auto;column-gap:.6rem;row-gap:.3rem;align-items:start;padding:.6rem .65rem}.sm-gnode__icon-box[_ngcontent-%COMP%]{--kind-bg: var(--sm-kind-markdown-bg);--kind-fg: var(--sm-kind-markdown-fg);width:38px;height:38px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:var(--kind-bg);color:var(--kind-fg);flex:none;font-size:1.05rem;grid-row:1 / span 2;align-self:center}[data-kind="skill"][_nghost-%COMP%] .sm-gnode__icon-box[_ngcontent-%COMP%]{--kind-bg: var(--sm-kind-skill-bg);--kind-fg: var(--sm-kind-skill-fg)}[data-kind="agent"][_nghost-%COMP%] .sm-gnode__icon-box[_ngcontent-%COMP%]{--kind-bg: var(--sm-kind-agent-bg);--kind-fg: var(--sm-kind-agent-fg)}[data-kind="command"][_nghost-%COMP%] .sm-gnode__icon-box[_ngcontent-%COMP%]{--kind-bg: var(--sm-kind-command-bg);--kind-fg: var(--sm-kind-command-fg)}[data-kind="markdown"][_nghost-%COMP%] .sm-gnode__icon-box[_ngcontent-%COMP%]{--kind-bg: var(--sm-kind-markdown-bg);--kind-fg: var(--sm-kind-markdown-fg)}.sm-gnode__content[_ngcontent-%COMP%]{min-width:0;width:100%;justify-self:stretch;display:flex;flex-direction:column;gap:.15rem}.sm-gnode__name-row[_ngcontent-%COMP%]{display:flex;align-items:baseline;gap:.35rem;min-width:0}.sm-gnode__name-row[_ngcontent-%COMP%] > sm-view-contributions-host[_ngcontent-%COMP%]{margin-left:auto;align-self:center}.sm-gnode__name[_ngcontent-%COMP%]{font-size:.9rem;font-weight:600;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--p-text-color);flex:0 1 auto;min-width:0}.sm-gnode__name-version[_ngcontent-%COMP%]{font-family:var(--sm-font-mono);font-size:.65rem;color:var(--sm-text-muted);background:color-mix(in srgb,var(--accent) 10%,transparent);padding:.05rem .35rem;border-radius:var(--sm-radius-sm);line-height:1.2;flex:none;align-self:center}.sm-gnode--with-color[_nghost-%COMP%] .sm-gnode__name[_ngcontent-%COMP%]{background:color-mix(in srgb,var(--node-color) 7%,transparent);padding:.05rem .4rem;border-radius:var(--sm-radius-sm)}.sm-gnode__actions[_ngcontent-%COMP%]{display:flex;align-items:flex-start;gap:.2rem}.sm-gnode__confidence[_ngcontent-%COMP%]{display:flex;align-items:flex-start;font-size:.65rem;font-weight:600;font-variant-numeric:tabular-nums;line-height:1;flex:none;cursor:help;padding-top:.35rem}.sm-gnode__llm-marker--high[_ngcontent-%COMP%]{color:var(--sm-severity-success)}.sm-gnode__llm-marker--med[_ngcontent-%COMP%]{color:var(--sm-severity-warn)}.sm-gnode__llm-marker--low[_ngcontent-%COMP%]{color:var(--sm-severity-error)}.sm-gnode__chevron[_ngcontent-%COMP%]{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;cursor:pointer;color:var(--sm-text-muted);border-radius:var(--sm-radius-md);transition:transform .16s ease,background .12s ease,color .12s ease}.sm-gnode__chevron[_ngcontent-%COMP%] .pi[_ngcontent-%COMP%]{font-size:.7rem;line-height:1}.sm-gnode__chevron[_ngcontent-%COMP%]:hover{background:var(--sm-bg-hover);color:var(--p-text-color)}.sm-gnode--expanded[_nghost-%COMP%] .sm-gnode__chevron[_ngcontent-%COMP%]{transform:rotate(180deg)}.sm-gnode__favorite[_ngcontent-%COMP%]{position:absolute;top:-3px;right:0;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;cursor:pointer;color:var(--sm-text-muted);border-radius:var(--sm-radius-md);flex:none;transition:background .12s ease,color .12s ease}.sm-gnode__favorite[_ngcontent-%COMP%] .pi[_ngcontent-%COMP%]{font-size:.8rem;line-height:1}.sm-gnode__favorite[_ngcontent-%COMP%]:hover{background:var(--sm-bg-hover);color:var(--p-text-color)}.sm-gnode__favorite--on[_ngcontent-%COMP%], .sm-gnode__favorite--on[_ngcontent-%COMP%]:hover{color:var(--p-primary-color)}.sm-gnode__sub[_ngcontent-%COMP%]{position:relative;grid-column:2 / -1;grid-row:2;display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-family:var(--sm-font-mono);font-size:.6rem;color:var(--sm-text-muted);line-height:1.2;margin-top:.1rem;min-width:0;width:100%;padding-right:28px}.sm-gnode__sub-stat[_ngcontent-%COMP%]{padding:.08rem .35rem;border-radius:var(--sm-radius-sm);background:var(--sm-bg-hover);font-family:var(--sm-font-mono);font-size:.6rem;color:var(--sm-text-muted);font-weight:400;flex:none}.sm-gnode__sub-stat[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:.15rem}.sm-gnode__sub-stat[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:.65rem}.sm-gnode__sub-key[_ngcontent-%COMP%]{font-weight:700}.sm-gnode__sub-stat--tokens[_ngcontent-%COMP%]{background:var(--sm-stat-tokens-bg)}.sm-gnode__sub-stat--bytes[_ngcontent-%COMP%]{background:var(--sm-stat-bytes-bg)}.sm-gnode__provider[_ngcontent-%COMP%]{padding:.08rem .4rem;border-radius:var(--sm-radius-sm);font-family:var(--sm-font-mono);font-size:.6rem;font-weight:600;letter-spacing:.02em;color:var(--provider-color);background:color-mix(in srgb,var(--provider-color) 14%,transparent);flex:none;display:inline-flex;align-items:center}.app-dark[_nghost-%COMP%] .sm-gnode__provider[_ngcontent-%COMP%], .app-dark [_nghost-%COMP%] .sm-gnode__provider[_ngcontent-%COMP%]{color:var(--provider-color-dark);background:color-mix(in srgb,var(--provider-color-dark) 24%,transparent)}.sm-gnode__panel[_ngcontent-%COMP%]{display:none;border-top:1px solid var(--sm-border)}.sm-gnode--expanded[_nghost-%COMP%] .sm-gnode__panel[_ngcontent-%COMP%]{display:block}.sm-gnode__llm[_ngcontent-%COMP%]{padding:.5rem .7rem;display:flex;flex-direction:column;gap:.25rem;font-size:.75rem;line-height:1.4}.sm-gnode__llm-line[_ngcontent-%COMP%]{display:flex;gap:.4rem;align-items:baseline;color:var(--p-text-color);font-style:italic;min-width:0}.sm-gnode__llm-label[_ngcontent-%COMP%]{flex:none;font-style:normal;color:var(--sm-text-muted);font-size:.6rem;letter-spacing:.04em;text-transform:uppercase;font-weight:600;min-width:2.2rem;padding-top:.2rem;cursor:help}.sm-gnode__chips[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:.25rem;flex:1;min-width:0}.sm-gnode__chip[_ngcontent-%COMP%]{font-size:.65rem;padding:.1rem .4rem;border-radius:var(--sm-radius-sm);border:1px solid var(--sm-border);background:var(--sm-bg-hover);color:var(--p-text-color);line-height:1.3}.sm-gnode__chip--mono[_ngcontent-%COMP%]{font-family:var(--sm-font-mono)}.sm-gnode__chip--allowed[_ngcontent-%COMP%]{border-style:dashed;background:transparent;color:var(--sm-text-muted)}.sm-gnode__chip--llm[_ngcontent-%COMP%]{font-style:italic}.sm-gnode__chip-required[_ngcontent-%COMP%]{color:var(--sm-severity-error);margin-left:2px}.sm-gnode__llm-code[_ngcontent-%COMP%]{font-family:var(--sm-font-mono);background:var(--sm-bg-hover);padding:.1rem .4rem;border-radius:var(--sm-radius-sm);font-size:.7rem;font-style:normal;color:var(--p-text-color)}.sm-gnode__path[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.35rem;padding:.4rem .7rem;font-family:var(--sm-font-mono);font-size:.68rem;color:var(--sm-text-muted);background:var(--sm-bg-hover);border-top:1px solid var(--sm-border);min-width:0}.sm-gnode__path-icon[_ngcontent-%COMP%]{flex:none;font-size:.7rem;color:var(--sm-text-muted)}.sm-gnode__path-value[_ngcontent-%COMP%]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;direction:rtl;unicode-bidi:plaintext;text-align:left}.sm-gnode__desc[_ngcontent-%COMP%]{padding:.55rem .7rem;font-size:.78rem;line-height:1.45;color:var(--p-text-color);max-height:140px;overflow-y:auto;overscroll-behavior:contain;border-top:1px solid var(--sm-border);scrollbar-width:thin;scrollbar-color:var(--sm-border) transparent}.sm-gnode__desc[_ngcontent-%COMP%]::-webkit-scrollbar{width:6px}.sm-gnode__desc[_ngcontent-%COMP%]::-webkit-scrollbar-track{background:transparent}.sm-gnode__desc[_ngcontent-%COMP%]::-webkit-scrollbar-thumb{background:var(--sm-border);border-radius:var(--sm-radius-sm)}.sm-gnode__meta[_ngcontent-%COMP%]{padding:.5rem .7rem;border-top:1px solid var(--sm-border);display:flex;flex-direction:column;gap:.35rem}.sm-gnode__meta-row[_ngcontent-%COMP%]{display:flex;align-items:flex-start;gap:.5rem;font-size:.7rem;min-width:0}.sm-gnode__meta-label[_ngcontent-%COMP%]{color:var(--sm-text-muted);text-transform:uppercase;letter-spacing:.04em;font-weight:600;font-size:.6rem;flex:none;min-width:60px;padding-top:.15rem}.sm-gnode__meta-value[_ngcontent-%COMP%]{color:var(--p-text-color);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sm-gnode__meta-value--mono[_ngcontent-%COMP%]{font-family:var(--sm-font-mono);background:var(--sm-bg-hover);padding:.08rem .4rem;border-radius:var(--sm-radius-sm);font-size:.68rem}.sm-gnode__issues-block[_ngcontent-%COMP%]{padding:.5rem .7rem;border-top:1px solid var(--sm-border);display:flex;flex-direction:column;gap:.25rem}.sm-gnode__issue[_ngcontent-%COMP%]{display:flex;align-items:baseline;gap:.35rem;font-size:.7rem;line-height:1.35;min-width:0}.sm-gnode__issue-icon[_ngcontent-%COMP%]{font-size:.7rem;flex:none}.sm-gnode__issue--error[_ngcontent-%COMP%] .sm-gnode__issue-icon[_ngcontent-%COMP%]{color:var(--sm-severity-error)}.sm-gnode__issue--warn[_ngcontent-%COMP%] .sm-gnode__issue-icon[_ngcontent-%COMP%]{color:var(--sm-severity-warn)}.sm-gnode__issue-rule[_ngcontent-%COMP%]{font-family:var(--sm-font-mono);color:var(--sm-text-muted);flex:none;font-size:.65rem}.sm-gnode__issue-msg[_ngcontent-%COMP%]{color:var(--p-text-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.sm-gnode__footer[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.7rem;min-height:1.4rem;padding:.4rem .7rem;border-top:1px solid var(--sm-border);background:var(--sm-bg-hover);font-size:.7rem;color:var(--sm-text-muted)}.sm-gnode__footer-right-cluster[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:.7rem;margin-left:auto}.sm-gnode__stat[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:.3rem;line-height:1}.sm-gnode__stat[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:.6rem;line-height:1;display:block}.sm-gnode__stat[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{transform:translateY(1px)}.sm-gnode__stat-num[_ngcontent-%COMP%]{font-weight:600;color:var(--p-text-color);line-height:1;display:block}.sm-gnode__stat--error[_ngcontent-%COMP%]{background:var(--sm-severity-error-bg);color:var(--sm-severity-error);padding:.1rem .4rem;border-radius:var(--sm-radius-sm)}.sm-gnode__stat--error[_ngcontent-%COMP%] .sm-gnode__stat-num[_ngcontent-%COMP%]{color:var(--sm-severity-error)}.sm-gnode__stat--warn[_ngcontent-%COMP%]{background:var(--sm-severity-warn-bg);color:var(--sm-severity-warn);padding:.1rem .4rem;border-radius:var(--sm-radius-sm)}.sm-gnode__stat--warn[_ngcontent-%COMP%] .sm-gnode__stat-num[_ngcontent-%COMP%], .sm-gnode__stat--stale[_ngcontent-%COMP%]{color:var(--sm-severity-warn)}.sm-gnode__tagrow[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem;padding:0 .65rem .35rem}.sm-gnode__tag-chip[_ngcontent-%COMP%]{font-size:.6rem;font-family:var(--sm-font-mono);padding:.05rem .35rem;border-radius:var(--sm-radius-sm);background:var(--sm-bg-hover);color:var(--sm-text-muted);border:1px solid var(--sm-border);line-height:1.4}.sm-gnode__tag-chip--author[_ngcontent-%COMP%]{background:transparent;border-color:var(--accent);color:var(--accent)}.sm-gnode__tag-more[_ngcontent-%COMP%]{font-size:.6rem;color:var(--sm-text-muted);font-style:italic}'],changeDetection:0})};var CM={a11y:{expand:"Expand performance HUD",collapse:"Collapse performance HUD"},units:{fps:t=>`${t} fps`,ms:t=>`${t}ms`,mb:t=>`${t} MB`,longTasks:t=>`${t} long`,domNodes:t=>`${t} dom`,nodes:(t,n)=>`${t}/${n} nodes`,edges:t=>`${t} edges`}};var YX=["sparkline"],XX=()=>({class:"perf-hud__content"}),ZX=t=>({content:t});function QX(t,n){if(t&1&&(h(0,"span",9),y(1),m()),t&2){let e=g(2);l(),b(e.texts.units.mb(e.heapMb()))}}function JX(t,n){if(t&1&&(h(0,"div",3)(1,"span",4),y(2),m()(),h(3,"div",5)(4,"div",6)(5,"div",7),B(6,"canvas",8,1),h(8,"span",9),y(9),m()(),h(10,"div",10)(11,"div",11),P(12,QX,2,1,"span",9),h(13,"span",9),y(14),m(),h(15,"span",9),y(16),m()()(),h(17,"div",10)(18,"div",11)(19,"span",9),y(20),m(),h(21,"span",9),y(22),m()()()()()),t&2){let e=g();l(2),b(e.texts.units.fps(e.fps())),l(),$("aria-hidden",!e.expanded()),l(6),b(e.texts.units.ms(e.frameTimeMs())),l(3),M(e.hasHeap()?12:-1),l(2),b(e.texts.units.domNodes(e.domNodes())),l(2),b(e.texts.units.longTasks(e.longTasks())),l(4),b(e.texts.units.nodes(e.visible(),e.total())),l(2),b(e.texts.units.edges(e.edges()))}}var eZ=30,__=60,Cp=14,xp=class t{visible=F(0);total=F(0);edges=F(0);texts=CM;destroyRef=u(ot);zone=u(Vn);fps=U(0);frameTimeMs=U(0);fpsSamples=U([]);sparklineCanvas=Be("sparkline");heapMb=U(null);longTasks=U(0);domNodes=U(0);expanded=U(tZ());hasHeap=k(()=>this.heapMb()!==null);constructor(){let n=0,e=0,i=performance.now(),o=i,r=0,a=c=>{let d=c-i;if(i=c,n+=1,e+=d,c-o>=1e3){let f=(c-o)/1e3,p=Math.round(n/f);this.fps.set(p),this.frameTimeMs.set(Math.round(e/Math.max(n,1))),this.heapMb.set(iZ()),this.domNodes.set(document.querySelectorAll("*").length),this.fpsSamples.update(v=>{let x=v.length>=eZ?v.slice(1):v.slice();return x.push(p),x}),n=0,e=0,o=c}r=requestAnimationFrame(a)};this.zone.runOutsideAngular(()=>{r=requestAnimationFrame(a)});let s=null;if(typeof PerformanceObserver<"u")try{s=new PerformanceObserver(c=>{this.longTasks.update(d=>d+c.getEntries().length)}),s.observe({type:"longtask",buffered:!0})}catch{}this.destroyRef.onDestroy(()=>{cancelAnimationFrame(r),s?.disconnect()}),pe(()=>{let c=this.sparklineCanvas(),d=this.fpsSamples();c&&oZ(c.nativeElement,d)})}setExpanded(n){this.expanded.set(n),nZ(n)}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=Z({type:t,selectors:[["sm-perf-hud"]],viewQuery:function(e,i){e&1&&Ot(i.sparklineCanvas,YX,5),e&2&&gt()},inputs:{visible:[1,"visible"],total:[1,"total"],edges:[1,"edges"]},decls:3,vars:7,consts:[["content",""],["sparkline",""],["data-testid","perf-hud",3,"ngModelChange","ngModel","ariaLabel","styleClass","pt"],[1,"perf-hud__header"],[1,"perf-hud__cell","perf-hud__cell--fps"],[1,"perf-hud__expandable"],[1,"perf-hud__expandable-inner"],[1,"perf-hud__row","perf-hud__row--sparkline"],["aria-hidden","true",1,"perf-hud__sparkline"],[1,"perf-hud__cell"],[1,"perf-hud__section"],[1,"perf-hud__row"]],template:function(e,i){e&1&&(h(0,"p-togglebutton",2),W("ngModelChange",function(r){return i.setExpanded(r)}),Ie(1,JX,23,8,"ng-template",null,0,Un),m()),e&2&&D("ngModel",i.expanded())("ariaLabel",i.expanded()?i.texts.a11y.collapse:i.texts.a11y.expand)("styleClass",i.expanded()?"perf-hud perf-hud--expanded":"perf-hud")("pt",Qt(5,ZX,jn(4,XX)))},dependencies:[Ai,Ni,Ri,Li,Fi],styles:["[_nghost-%COMP%]{position:absolute;bottom:16px;left:16px;z-index:2;pointer-events:none}.perf-hud[_ngcontent-%COMP%]{pointer-events:auto;--p-togglebutton-padding: 0;--p-togglebutton-content-padding: .25rem .7rem;--p-togglebutton-border-radius: var(--sm-radius-pill);--p-togglebutton-content-border-radius: var(--sm-radius-pill);--p-togglebutton-gap: .4rem;--p-togglebutton-background: var(--sm-bg-content);--p-togglebutton-checked-background: var(--sm-bg-content);--p-togglebutton-hover-background: var(--sm-bg-content);--p-togglebutton-border-color: var(--sm-border);--p-togglebutton-checked-border-color: var(--sm-border);--p-togglebutton-content-checked-background: transparent;--p-togglebutton-color: var(--p-text-muted-color);--p-togglebutton-hover-color: var(--p-text-color);--p-togglebutton-checked-color: var(--p-text-muted-color);box-shadow:var(--sm-shadow-floating);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.7rem;font-weight:500;line-height:14px;opacity:.75;transition:opacity .15s ease,color .15s ease}.perf-hud[_ngcontent-%COMP%]:hover{opacity:1}.perf-hud--expanded[_ngcontent-%COMP%]{--p-togglebutton-border-radius: var(--sm-radius-md);--p-togglebutton-content-border-radius: var(--sm-radius-md);--p-togglebutton-content-padding: .45rem .7rem;line-height:1.35;opacity:.95}[_nghost-%COMP%] .perf-hud__content{display:flex;flex-direction:column;align-items:stretch;gap:0}.perf-hud__cell[_ngcontent-%COMP%]{white-space:nowrap;font-variant-numeric:tabular-nums}.perf-hud--expanded[_ngcontent-%COMP%] .perf-hud__cell--fps[_ngcontent-%COMP%]{font-weight:600;color:var(--p-text-color)}.perf-hud__sparkline[_ngcontent-%COMP%]{width:60px;height:14px;opacity:.6}.perf-hud__header[_ngcontent-%COMP%]{display:flex;align-items:center}.perf-hud__expandable[_ngcontent-%COMP%]{display:grid;grid-template-rows:0fr;grid-template-columns:0fr;overflow:hidden;transition:grid-template-rows .22s ease,grid-template-columns .22s ease}.perf-hud--expanded[_ngcontent-%COMP%] .perf-hud__expandable[_ngcontent-%COMP%]{grid-template-rows:1fr;grid-template-columns:1fr}.perf-hud__expandable-inner[_ngcontent-%COMP%]{min-height:0;min-width:0;overflow:hidden;display:flex;flex-direction:column;gap:.3rem;padding-top:0;transition:padding-top .22s ease}.perf-hud--expanded[_ngcontent-%COMP%] .perf-hud__expandable-inner[_ngcontent-%COMP%]{padding-top:.3rem}.perf-hud__section[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.15rem;padding-top:.3rem;border-top:1px solid var(--sm-border)}.perf-hud__section[_ngcontent-%COMP%]:first-child{padding-top:0;border-top:0}.perf-hud__row[_ngcontent-%COMP%]{display:flex;flex-direction:row;align-items:center;gap:.6rem;white-space:nowrap}.perf-hud__row--sparkline[_ngcontent-%COMP%]{justify-content:space-between;gap:.6rem}"],changeDetection:0})},xM="sm.perf-hud.expanded";function tZ(){try{return localStorage.getItem(xM)==="1"}catch{return!1}}function nZ(t){try{localStorage.setItem(xM,t?"1":"0")}catch{}}function iZ(){let t=performance.memory;return t?Math.round(t.usedJSHeapSize/1024/1024):null}function oZ(t,n){let e=window.devicePixelRatio||1,i=__*e,o=Cp*e;(t.width!==i||t.height!==o)&&(t.width=i,t.height=o);let r=t.getContext("2d");if(!r||(r.setTransform(e,0,0,e,0,0),r.clearRect(0,0,__,Cp),n.length<2))return;let a=Math.max(60,...n),s=__/(n.length-1);r.beginPath();for(let c=0;c<n.length;c+=1){let d=c*s,f=Cp-n[c]/a*Cp;c===0?r.moveTo(d,f):r.lineTo(d,f)}r.strokeStyle=getComputedStyle(t).color,r.lineWidth=1,r.stroke()}var rZ="debug-perf",bp=class t{visible=U(this.resolveInitial());resolveInitial(){let e=new URLSearchParams(window.location.search).get(rZ);return e==="1"||e==="true"?!0:e==="0"||e==="false"?!1:xo.graph.perfHud}static \u0275fac=function(e){return new(e||t)};static \u0275prov=C({token:t,factory:t.\u0275fac,providedIn:"root"})};var bM=`
277
+ .p-card {
278
+ background: dt('card.background');
279
+ color: dt('card.color');
280
+ box-shadow: dt('card.shadow');
281
+ border-radius: dt('card.border.radius');
282
+ display: flex;
283
+ flex-direction: column;
284
+ }
285
+
286
+ .p-card-caption {
287
+ display: flex;
288
+ flex-direction: column;
289
+ gap: dt('card.caption.gap');
290
+ }
291
+
292
+ .p-card-body {
293
+ padding: dt('card.body.padding');
294
+ display: flex;
295
+ flex-direction: column;
296
+ gap: dt('card.body.gap');
297
+ }
298
+
299
+ .p-card-title {
300
+ font-size: dt('card.title.font.size');
301
+ font-weight: dt('card.title.font.weight');
302
+ }
303
+
304
+ .p-card-subtitle {
305
+ color: dt('card.subtitle.color');
306
+ }
307
+ `;var aZ=["header"],sZ=["title"],cZ=["subtitle"],dZ=["content"],lZ=["footer"],uZ=["*",[["p-header"]],[["p-footer"]]],fZ=["*","p-header","p-footer"];function pZ(t,n){t&1&&Ii(0)}function hZ(t,n){if(t&1&&(h(0,"div",1),Ae(1,1),Ie(2,pZ,1,0,"ng-container",2),m()),t&2){let e=g();Fe(e.cx("header")),D("pBind",e.ptm("header")),l(2),D("ngTemplateOutlet",e.headerTemplate||e._headerTemplate)}}function mZ(t,n){if(t&1&&(Gn(0),y(1),Hn()),t&2){let e=g(2);l(),b(e.header)}}function gZ(t,n){t&1&&Ii(0)}function _Z(t,n){if(t&1&&(h(0,"div",1),Ie(1,mZ,2,1,"ng-container",3)(2,gZ,1,0,"ng-container",2),m()),t&2){let e=g();Fe(e.cx("title")),D("pBind",e.ptm("title")),l(),D("ngIf",e.header&&!e._titleTemplate&&!e.titleTemplate),l(),D("ngTemplateOutlet",e.titleTemplate||e._titleTemplate)}}function yZ(t,n){if(t&1&&(Gn(0),y(1),Hn()),t&2){let e=g(2);l(),b(e.subheader)}}function vZ(t,n){t&1&&Ii(0)}function CZ(t,n){if(t&1&&(h(0,"div",1),Ie(1,yZ,2,1,"ng-container",3)(2,vZ,1,0,"ng-container",2),m()),t&2){let e=g();Fe(e.cx("subtitle")),D("pBind",e.ptm("subtitle")),l(),D("ngIf",e.subheader&&!e._subtitleTemplate&&!e.subtitleTemplate),l(),D("ngTemplateOutlet",e.subtitleTemplate||e._subtitleTemplate)}}function xZ(t,n){t&1&&Ii(0)}function bZ(t,n){t&1&&Ii(0)}function wZ(t,n){if(t&1&&(h(0,"div",1),Ae(1,2),Ie(2,bZ,1,0,"ng-container",2),m()),t&2){let e=g();Fe(e.cx("footer")),D("pBind",e.ptm("footer")),l(2),D("ngTemplateOutlet",e.footerTemplate||e._footerTemplate)}}var SZ=`
308
+ ${bM}
309
+
310
+ .p-card {
311
+ display: block;
312
+ }
313
+ `,IZ={root:"p-card p-component",header:"p-card-header",body:"p-card-body",caption:"p-card-caption",title:"p-card-title",subtitle:"p-card-subtitle",content:"p-card-content",footer:"p-card-footer"},wM=(()=>{class t extends ua{name="card";style=SZ;classes=IZ;static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275prov=C({token:t,factory:t.\u0275fac})}return t})();var SM=new he("CARD_INSTANCE"),$r=(()=>{class t extends pa{componentName="Card";$pcCard=u(SM,{optional:!0,skipSelf:!0})??void 0;bindDirectiveInstance=u(Bt,{self:!0});_componentStyle=u(wM);onAfterViewChecked(){this.bindDirectiveInstance.setAttrs(this.ptms(["host","root"]))}header;subheader;set style(e){n0(this._style(),e)||(this._style.set(e),this.el?.nativeElement&&e&&Object.keys(e).forEach(i=>{this.el.nativeElement.style[i]=e[i]}))}get style(){return this._style()}styleClass;headerFacet;footerFacet;headerTemplate;titleTemplate;subtitleTemplate;contentTemplate;footerTemplate;_headerTemplate;_titleTemplate;_subtitleTemplate;_contentTemplate;_footerTemplate;_style=U(null);getBlockableElement(){return this.el.nativeElement}templates;onAfterContentInit(){this.templates.forEach(e=>{switch(e.getType()){case"header":this._headerTemplate=e.template;break;case"title":this._titleTemplate=e.template;break;case"subtitle":this._subtitleTemplate=e.template;break;case"content":this._contentTemplate=e.template;break;case"footer":this._footerTemplate=e.template;break;default:this._contentTemplate=e.template;break}})}static \u0275fac=(()=>{let e;return function(o){return(e||(e=ie(t)))(o||t)}})();static \u0275cmp=Z({type:t,selectors:[["p-card"]],contentQueries:function(i,o,r){if(i&1&&ra(r,o0,5)(r,r0,5)(r,aZ,4)(r,sZ,4)(r,cZ,4)(r,dZ,4)(r,lZ,4)(r,un,4),i&2){let a;St(a=It())&&(o.headerFacet=a.first),St(a=It())&&(o.footerFacet=a.first),St(a=It())&&(o.headerTemplate=a.first),St(a=It())&&(o.titleTemplate=a.first),St(a=It())&&(o.subtitleTemplate=a.first),St(a=It())&&(o.contentTemplate=a.first),St(a=It())&&(o.footerTemplate=a.first),St(a=It())&&(o.templates=a)}},hostVars:4,hostBindings:function(i,o){i&2&&(aa(o._style()),Fe(o.cn(o.cx("root"),o.styleClass)))},inputs:{header:"header",subheader:"subheader",style:"style",styleClass:"styleClass"},features:[be([wM,{provide:SM,useExisting:t},{provide:fa,useExisting:t}]),na([Bt]),ve],ngContentSelectors:fZ,decls:8,vars:11,consts:[[3,"pBind","class",4,"ngIf"],[3,"pBind"],[4,"ngTemplateOutlet"],[4,"ngIf"]],template:function(i,o){i&1&&(Xt(uZ),Ie(0,hZ,3,4,"div",0),h(1,"div",1),Ie(2,_Z,3,5,"div",0)(3,CZ,3,5,"div",0),h(4,"div",1),Ae(5),Ie(6,xZ,1,0,"ng-container",2),m(),Ie(7,wZ,3,4,"div",0),m()),i&2&&(D("ngIf",o.headerFacet||o.headerTemplate||o._headerTemplate),l(),Fe(o.cx("body")),D("pBind",o.ptm("body")),l(),D("ngIf",o.header||o.titleTemplate||o._titleTemplate),l(),D("ngIf",o.subheader||o.subtitleTemplate||o._subtitleTemplate),l(),Fe(o.cx("content")),D("pBind",o.ptm("content")),l(2),D("ngTemplateOutlet",o.contentTemplate||o._contentTemplate),l(),D("ngIf",o.footerFacet||o.footerTemplate||o._footerTemplate))},dependencies:[Ti,$_,ca,fn,ha,Bt],encapsulation:2,changeDetection:0})}return t})(),wp=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=Si({type:t});static \u0275inj=xi({imports:[$r,fn,ha,fn,ha]})}return t})();var zn={emptyNoSelection:{title:"No node selected",descPrefix:"Pick a node from the ",listLink:"list",descMiddle:" or ",graphLink:"graph",descSuffix:"."},emptyNotFound:{title:"Node not found",descSuffix:" does not exist in the collection. ",backLink:"Back to list",descAfterLink:"."},backToList:"\u2190 back to list",cards:{agent:"Agent",body:"Body"},body:{loading:"Loading body\u2026",empty:"This file has no body content (only frontmatter).",unavailable:"Body content unavailable. The source file may have moved or been deleted since the last scan.",renderError:"Failed to render markdown body.",refreshLabel:"Refresh body"},placeholders:{enrichmentTitle:"Enrichment",summaryTitle:"Summary",findingsTitle:"Findings",body:"Available in v0.8.0"},cardsAnnotations:"Annotations",bump:{label:"Bump version",tooltipEnabled:"Increment the sidecar version and refresh hashes.",tooltipDisabledFresh:"No drift detected (bump is only available when the body or frontmatter has changed since the last bump).",errorPrefix:"Bump failed:",errorFresh:"This node is fresh; nothing to bump.",errorNotFound:"Node not found on the server.",errorGeneric:"Could not bump the sidecar.",consentHeader:"Save extra info alongside your files?",consentMessage:`Skill-map can keep a small companion file (*.sm) next to each of your markdown files. It tracks version, history and tags so you can see how each one evolves over time.
314
+
315
+ We use a separate \`.sm\` file so your markdown stays clean, no metadata gets mixed into the content you wrote.
316
+
317
+ Your preference stays on your computer, it does not travel with the project, and we won't ask again.`,consentAccept:"Yes, allow",consentReject:"Not now",consentDialogAriaLabel:"Sidecar consent"},stats:{bytes:"Bytes",tokens:"Tokens",links:"Links",out:"out",in:"in",ext:"ext"},pluginsHeader:"Plugin contributions",audit:{header:"Audit",headerSummary:(t,n)=>`last bumped ${t} by ${n}`,headerEmpty:"never bumped",fields:{lastBumpedAt:"Last bumped",lastBumpedBy:"by",createdAt:"Created",createdBy:"by"}},supersededByBanner:t=>`Superseded by ${t}`,debugToggleAriaLabel:"Toggle debug panel",debugToggleTooltip:"Show diagnostic fields (hash diffs, resolved provider/kind, sidecar status enum).",close:{label:"Close",tooltip:"Close inspector"}};var Sp=class t{dataSource=u(pn);wsEvents=u(ya);loader=u(hn);destroyRef=u(ot);constructor(){this.wsEvents.sidecarBumped$.pipe(Di(this.destroyRef)).subscribe(n=>{this.loader.patchSidecarFromBump({nodePath:n.data.nodePath,version:n.data.version,status:n.data.status})})}async bump(n,e={}){return this.dataSource.bumpSidecar(n,e)}static \u0275fac=function(e){return new(e||t)};static \u0275prov=C({token:t,factory:t.\u0275fac,providedIn:"root"})};var TM={cardHeader:"Annotations",emptyOverlay:"No sidecar (.sm) file present for this node.",emptyAnnotations:"Sidecar present but no annotations are declared yet.",sections:{lifecycle:"Lifecycle",supersession:"Supersession",provenance:"Provenance",taxonomy:"Taxonomy",docs:"Docs"},fields:{version:"Version",stability:"Stability",supersedes:"Supersedes",supersededBy:"Superseded by",authors:"Authors",license:"License",source:"Source",sourceVersion:"Source version",tags:"Tags",docsUrl:"Docs URL"},brokenRefTooltip:"This path does not resolve to a node in the current scan scope."};var PZ=(t,n)=>"a:"+n,MZ=(t,n)=>"u:"+n;function DZ(t,n){if(t&1&&(h(0,"p",0),y(1),m()),t&2){let e=g(2);l(),b(e.texts.emptyOverlay)}}function kZ(t,n){if(t&1&&(h(0,"p",1),y(1),m()),t&2){let e=g(2);l(),b(e.texts.emptyAnnotations)}}function OZ(t,n){if(t&1&&P(0,DZ,2,1,"p",0)(1,kZ,2,1,"p",1),t&2){let e,i=g();M((e=i.overlay())!=null&&e.present?1:0)}}function NZ(t,n){if(t&1&&(h(0,"dt"),y(1),m(),h(2,"dd",9)(3,"code"),y(4),m()()),t&2){g();let e=ne(0),i=g(2);l(),b(i.texts.fields.version),l(3),b(e.version)}}function RZ(t,n){if(t&1&&(h(0,"dt"),y(1),m(),h(2,"dd"),B(3,"p-tag",10),m()),t&2){g();let e=ne(0),i=g(2);l(),b(i.texts.fields.stability),l(2),D("value",e.stability)("severity",i.stabilitySeverity(e.stability))("rounded",!0)}}function AZ(t,n){if(t&1&&(yt(0),h(1,"section",2)(2,"h4",7),y(3),m(),h(4,"dl",8),P(5,NZ,5,2),P(6,RZ,4,4),m()()),t&2){let e=g(2),i=Xe(e.lifecycle());l(3),b(e.texts.sections.lifecycle),l(2),M(i.version!==null?5:-1),l(),M(i.stability!==null?6:-1)}}function FZ(t,n){if(t&1){let e=de();h(0,"h5"),y(1),m(),h(2,"div",11)(3,"p-chip",12),W("click",function(){G(e),g();let o=ne(0),r=g(2);return H(r.onOpenPath(o.supersededBy))}),m()()}if(t&2){g();let e=ne(0),i=g(2);l(),b(i.texts.fields.supersededBy),l(2),D("label",e.supersededBy)("styleClass",i.isBroken(e.supersededBy)?"chip--broken":"chip--link")("pTooltip",i.isBroken(e.supersededBy)?i.texts.brokenRefTooltip:"")}}function LZ(t,n){if(t&1){let e=de();h(0,"p-chip",12),W("click",function(){let o=G(e).$implicit,r=g(4);return H(r.onOpenPath(o))}),m()}if(t&2){let e=n.$implicit,i=g(4);D("label",e)("styleClass",i.isBroken(e)?"chip--broken":"chip--link")("pTooltip",i.isBroken(e)?i.texts.brokenRefTooltip:"")}}function BZ(t,n){if(t&1&&(h(0,"h5"),y(1),m(),h(2,"div",11),ee(3,LZ,1,3,"p-chip",13,Te),m()),t&2){g();let e=ne(0),i=g(2);l(),b(i.texts.fields.supersedes),l(2),te(e.supersedes)}}function zZ(t,n){if(t&1&&(yt(0),h(1,"section",3)(2,"h4",7),y(3),m(),P(4,FZ,4,4),P(5,BZ,5,1),m()),t&2){let e=g(2),i=Xe(e.supersession());l(3),b(e.texts.sections.supersession),l(),M(i.supersededBy!==null?4:-1),l(),M(i.supersedes.length?5:-1)}}function qZ(t,n){if(t&1&&B(0,"p-chip",14),t&2){let e=n.$implicit;D("label",e)}}function VZ(t,n){if(t&1&&(h(0,"h5"),y(1),m(),h(2,"div",11),ee(3,qZ,1,1,"p-chip",14,Te),m()),t&2){g();let e=ne(0),i=g(2);l(),b(i.texts.fields.authors),l(2),te(e.authors)}}function GZ(t,n){if(t&1&&(h(0,"dt"),y(1),m(),h(2,"dd"),y(3),m()),t&2){g();let e=ne(0),i=g(2);l(),b(i.texts.fields.license),l(2),b(e.license)}}function HZ(t,n){if(t&1&&(h(0,"dt"),y(1),m(),h(2,"dd")(3,"a",15),y(4),m()()),t&2){g();let e=ne(0),i=g(2);l(),b(i.texts.fields.source),l(2),D("href",e.source,Xp),l(),b(e.source)}}function jZ(t,n){if(t&1&&(h(0,"dt"),y(1),m(),h(2,"dd")(3,"code"),y(4),m()()),t&2){g();let e=ne(0),i=g(2);l(),b(i.texts.fields.sourceVersion),l(3),b(e.sourceVersion)}}function UZ(t,n){if(t&1&&(yt(0),h(1,"section",4)(2,"h4",7),y(3),m(),P(4,VZ,5,1),h(5,"dl",8),P(6,GZ,4,2),P(7,HZ,5,3),P(8,jZ,5,2),m()()),t&2){let e=g(2),i=Xe(e.provenance());l(3),b(e.texts.sections.provenance),l(),M(i.authors.length?4:-1),l(2),M(i.license!==null?6:-1),l(),M(i.source!==null?7:-1),l(),M(i.sourceVersion!==null?8:-1)}}function WZ(t,n){if(t&1){let e=de();h(0,"p-chip",19),W("click",function(){let o=G(e).$implicit,r=g(3);return H(r.tagClick.emit(o))})("keydown.enter",function(){let o=G(e).$implicit,r=g(3);return H(r.tagClick.emit(o))})("keydown.space",function(o){let r=G(e).$implicit;return g(3).tagClick.emit(r),H(o.preventDefault())}),m()}if(t&2){let e=n.$implicit,i=g(3);D("label",e)("styleClass","ann-panel__chip ann-panel__chip--author"+(i.isActiveTag(e)?" ann-panel__chip--active":""))}}function $Z(t,n){if(t&1){let e=de();h(0,"p-chip",20),W("click",function(){let o=G(e).$implicit,r=g(3);return H(r.tagClick.emit(o))})("keydown.enter",function(){let o=G(e).$implicit,r=g(3);return H(r.tagClick.emit(o))})("keydown.space",function(o){let r=G(e).$implicit;return g(3).tagClick.emit(r),H(o.preventDefault())}),m()}if(t&2){let e=n.$implicit,i=g(3);D("label",e)("styleClass","ann-panel__chip ann-panel__chip--user"+(i.isActiveTag(e)?" ann-panel__chip--active":""))}}function KZ(t,n){if(t&1&&(h(0,"section",5)(1,"h4",7),y(2),m(),h(3,"h5"),y(4),m(),h(5,"div",16),ee(6,WZ,1,2,"p-chip",17,PZ),ee(8,$Z,1,2,"p-chip",18,MZ),m()()),t&2){let e=g(2),i=e.taxonomy();l(2),b(e.texts.sections.taxonomy),l(2),b(e.texts.fields.tags),l(2),te(i.authorTags),l(2),te(i.userTags)}}function YZ(t,n){if(t&1&&(h(0,"dt"),y(1),m(),h(2,"dd")(3,"a",15),y(4),m()()),t&2){g();let e=ne(0),i=g(2);l(),b(i.texts.fields.docsUrl),l(2),D("href",e.docsUrl,Xp),l(),b(e.docsUrl)}}function XZ(t,n){if(t&1&&(yt(0),h(1,"section",6)(2,"h4",7),y(3),m(),h(4,"dl",8),P(5,YZ,5,3),m()()),t&2){let e=g(2),i=Xe(e.docs());l(3),b(e.texts.sections.docs),l(2),M(i.docsUrl!==null?5:-1)}}function ZZ(t,n){if(t&1&&(P(0,AZ,7,4,"section",2),P(1,zZ,6,4,"section",3),P(2,UZ,9,6,"section",4),P(3,KZ,10,2,"section",5),P(4,XZ,6,3,"section",6)),t&2){let e=g();M(e.hasLifecycle()?0:-1),l(),M(e.hasSupersession()?1:-1),l(),M(e.hasProvenance()?2:-1),l(),M(e.hasTaxonomy()?3:-1),l(),M(e.hasDocs()?4:-1)}}var Tp=class t{overlay=F(void 0);authorTags=F([]);knownPaths=F(null);openPath=Ve();tagClick=Ve();activeTag=F(null);isActiveTag(n){return this.activeTag()===n}texts=TM;annotations=k(()=>{let n=this.overlay();return!n||!n.present?null:n.annotations??null});hasAnnotations=k(()=>{let n=this.annotations();return n!==null&&Object.keys(n).length>0});hasAnyContent=k(()=>this.hasLifecycle()||this.hasSupersession()||this.hasProvenance()||this.hasTaxonomy()||this.hasDocs());lifecycle=k(()=>{let n=this.annotations()??{};return{version:QZ(n.version),stability:JZ(n.stability)}});hasLifecycle=k(()=>Ip(this.lifecycle()));supersession=k(()=>{let n=this.annotations()??{};return{supersedes:v_(n.supersedes),supersededBy:y_(n.supersededBy)}});hasSupersession=k(()=>Ip(this.supersession()));provenance=k(()=>{let n=this.annotations()??{};return{authors:v_(n.authors),license:y_(n.license),source:EM(n.source),sourceVersion:y_(n.sourceVersion)}});hasProvenance=k(()=>Ip(this.provenance()));taxonomy=k(()=>{let n=this.annotations()??{};return{authorTags:this.authorTags(),userTags:v_(n.tags)}});hasTaxonomy=k(()=>{let n=this.taxonomy();return n.authorTags.length>0||n.userTags.length>0});docs=k(()=>{let n=this.annotations()??{};return{docsUrl:EM(n.docsUrl)}});hasDocs=k(()=>Ip(this.docs()));stabilitySeverity(n){return _0[n]}isBroken(n){let e=this.knownPaths();return e?!e.has(n):!1}onOpenPath(n){this.isBroken(n)||this.openPath.emit(n)}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=Z({type:t,selectors:[["sm-annotations-panel"]],inputs:{overlay:[1,"overlay"],authorTags:[1,"authorTags"],knownPaths:[1,"knownPaths"],activeTag:[1,"activeTag"]},outputs:{openPath:"openPath",tagClick:"tagClick"},decls:2,vars:1,consts:[["data-testid","annotations-panel-empty-overlay",1,"ann-panel__empty"],["data-testid","annotations-panel-empty-annotations",1,"ann-panel__empty"],["data-testid","annotations-section-lifecycle",1,"ann-panel__section"],["data-testid","annotations-section-supersession",1,"ann-panel__section"],["data-testid","annotations-section-provenance",1,"ann-panel__section"],["data-testid","annotations-section-taxonomy",1,"ann-panel__section"],["data-testid","annotations-section-docs",1,"ann-panel__section"],[1,"ann-panel__section-title"],[1,"ann-panel__kv"],["data-testid","annotations-version"],["data-testid","annotations-stability",3,"value","severity","rounded"],[1,"ann-panel__chips"],[3,"click","label","styleClass","pTooltip"],[3,"label","styleClass","pTooltip"],[3,"label"],["target","_blank","rel","noopener noreferrer",3,"href"],["data-testid","annotations-tags",1,"ann-panel__chips"],["data-tag-source","author","role","button","tabindex","0",3,"label","styleClass"],["data-tag-source","user","role","button","tabindex","0",3,"label","styleClass"],["data-tag-source","author","role","button","tabindex","0",3,"click","keydown.enter","keydown.space","label","styleClass"],["data-tag-source","user","role","button","tabindex","0",3,"click","keydown.enter","keydown.space","label","styleClass"]],template:function(e,i){e&1&&P(0,OZ,2,1)(1,ZZ,5,5),e&2&&M(i.hasAnyContent()?1:0)},dependencies:[Bi,ba,Sa,wa,We,Ze],styles:["[_nghost-%COMP%]{display:block}.ann-panel__empty[_ngcontent-%COMP%]{color:var(--sm-text-muted);font-style:italic;font-size:.85rem;margin:0}.ann-panel__section[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.4rem;padding:.4rem 0}.ann-panel__section[_ngcontent-%COMP%] + .ann-panel__section[_ngcontent-%COMP%]{border-top:1px solid var(--sm-border);padding-top:.6rem}.ann-panel__section-title[_ngcontent-%COMP%]{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--sm-text-muted);margin:0 0 .2rem;font-weight:600}.ann-panel__section[_ngcontent-%COMP%] h5[_ngcontent-%COMP%]{margin:.4rem 0 .2rem;font-size:.78rem;font-weight:600;color:var(--p-text-color)}.ann-panel__kv[_ngcontent-%COMP%]{display:grid;grid-template-columns:max-content 1fr;column-gap:.6rem;row-gap:.2rem;margin:0;font-size:.85rem}.ann-panel__kv[_ngcontent-%COMP%] dt[_ngcontent-%COMP%]{color:var(--sm-text-muted);font-weight:500}.ann-panel__kv[_ngcontent-%COMP%] dd[_ngcontent-%COMP%]{margin:0;color:var(--p-text-color);word-break:break-word}.ann-panel__chips[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:.3rem}[_nghost-%COMP%] .chip--broken{background:var(--sm-bg-hover);color:var(--sm-text-muted);text-decoration:line-through;cursor:not-allowed}[_nghost-%COMP%] .ann-panel__chip--author{background:transparent;border:1px solid var(--p-primary-color);color:var(--p-primary-color)}[_nghost-%COMP%] .ann-panel__chip--user{background:var(--p-chip-background);color:var(--p-chip-color)}[_nghost-%COMP%] .ann-panel__chip--author, [_nghost-%COMP%] .ann-panel__chip--user{cursor:pointer;transition:filter .1s ease,box-shadow .1s ease}[_nghost-%COMP%] .ann-panel__chip--author:hover, [_nghost-%COMP%] .ann-panel__chip--user:hover{filter:brightness(1.05)}[_nghost-%COMP%] .ann-panel__chip--author:focus-visible, [_nghost-%COMP%] .ann-panel__chip--user:focus-visible{outline:2px solid var(--p-primary-color);outline-offset:1px}[_nghost-%COMP%] .ann-panel__chip--active{background:var(--p-primary-color);color:var(--p-primary-color-text);border-color:var(--p-primary-color);box-shadow:0 0 0 2px var(--p-primary-color-200)}"],changeDetection:0})};function QZ(t){return typeof t=="number"&&Number.isFinite(t)?t:null}function y_(t){return typeof t=="string"&&t.length>0?t:null}function EM(t){if(typeof t!="string"||t.length===0)return null;try{let n=new URL(t);return n.protocol==="http:"||n.protocol==="https:"?t:null}catch{return null}}function JZ(t){return t==="stable"||t==="experimental"||t==="deprecated"?t:null}function v_(t){return Array.isArray(t)?t.filter(n=>typeof n=="string"&&n.length>0):[]}function Ip(t){for(let n of Object.values(t))if(n!=null){if(Array.isArray(n)){if(n.length>0)return!0;continue}if(typeof n=="string"){if(n.length>0)return!0;continue}return!0}return!1}var Ep=class t{title=F.required();body=F.required();icon=F("pi pi-clock");testId=F(null);static \u0275fac=function(e){return new(e||t)};static \u0275cmp=Z({type:t,selectors:[["sm-empty-state"]],inputs:{title:[1,"title"],body:[1,"body"],icon:[1,"icon"],testId:[1,"testId"]},decls:6,vars:5,consts:[[1,"empty-state-card"],["aria-hidden","true",1,"empty-state-card__icon"],[1,"empty-state-card__title"],[1,"empty-state-card__body"]],template:function(e,i){if(e&1&&(K(0,"div",0),dn(1,"span",1),K(2,"p",2),y(3),Y(),K(4,"p",3),y(5),Y()()),e&2){let o=i.testId();$("data-testid",o),l(),Fe(i.icon()),l(2),b(i.title()),l(2),b(i.body())}},styles:["[_nghost-%COMP%]{display:block}.empty-state-card[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;padding:1rem 1.25rem;border:1px dashed var(--p-content-border-color);border-radius:var(--p-border-radius-md);background:var(--p-content-background);color:var(--p-text-muted-color)}.empty-state-card__icon[_ngcontent-%COMP%]{font-size:1.25rem;color:var(--p-text-muted-color);opacity:.7}.empty-state-card__title[_ngcontent-%COMP%]{margin:0;font-weight:600;color:var(--p-text-color)}.empty-state-card__body[_ngcontent-%COMP%]{margin:0;font-size:.85rem;line-height:1.4}"],changeDetection:0})};var PM={cardHeader:"Linked nodes",refreshLabel:"Refresh links",outgoingHeader:"Outgoing",incomingHeader:"Incoming",loading:"Loading links\u2026",error:"Failed to load links.",emptyOutgoing:"No outgoing links from this node.",emptyIncoming:"No incoming links to this node.",confidence:{high:"high",medium:"medium",low:"low"},sourcesPrefix:"detected by ",sourcesSeparator:", "};var DM=(t,n)=>n.source+"|"+n.target+"|"+n.kind+"|"+((n.trigger==null?null:n.trigger.normalizedTrigger)??"");function tQ(t,n){if(t&1){let e=de();h(0,"div",4)(1,"h3",5),y(2),m(),h(3,"p-button",6),W("onClick",function(){G(e);let o=g(2);return H(o.refresh())}),m()()}if(t&2){let e=g(2);l(2),b(e.texts.cardHeader),l(),D("rounded",!0)("text",!0)("ariaLabel",e.texts.refreshLabel)("pTooltip",e.texts.refreshLabel)("disabled",e.state()==="loading")}}function nQ(t,n){if(t&1&&(h(0,"p",2),y(1),m()),t&2){let e=g(2);l(),b(e.texts.loading)}}function iQ(t,n){if(t&1&&(h(0,"p",3),y(1),m()),t&2){let e=g(2);l(),b(e.texts.error)}}function oQ(t,n){if(t&1&&(h(0,"p",9),y(1),m()),t&2){let e=g(3);l(),b(e.texts.emptyOutgoing)}}function rQ(t,n){if(t&1&&(h(0,"span",17),y(1),m()),t&2){let e=g().$implicit,i=g(4);l(),Eo(" ",i.texts.sourcesPrefix,"",e.sources.join(i.texts.sourcesSeparator)," ")}}function aQ(t,n){if(t&1){let e=de();h(0,"li",13),B(1,"p-tag",14),h(2,"p-button",15),W("onClick",function(){let o=G(e).$implicit,r=g(4);return H(r.onOpen(o.target))}),m(),B(3,"p-tag",16),P(4,rQ,2,2,"span",17),m()}if(t&2){let e=n.$implicit,i=g(4);$("data-testid","linked-nodes-outgoing-row-"+e.target),l(),D("value",e.kind)("severity",i.kindSeverity(e.kind)),l(),D("link",!0)("label",e.target),$("data-testid","linked-nodes-outgoing-link-"+e.target),l(),D("value",i.confidenceLabel(e.confidence))("severity",i.confidenceSeverity(e.confidence))("rounded",!0),l(),M(e.sources.length?4:-1)}}function sQ(t,n){if(t&1&&(h(0,"ul",10),ee(1,aQ,5,10,"li",13,DM),m()),t&2){let e=g(3);l(),te(e.outgoing())}}function cQ(t,n){if(t&1&&(h(0,"p",12),y(1),m()),t&2){let e=g(3);l(),b(e.texts.emptyIncoming)}}function dQ(t,n){if(t&1&&(h(0,"span",17),y(1),m()),t&2){let e=g().$implicit,i=g(4);l(),Eo(" ",i.texts.sourcesPrefix,"",e.sources.join(i.texts.sourcesSeparator)," ")}}function lQ(t,n){if(t&1){let e=de();h(0,"li",13),B(1,"p-tag",14),h(2,"p-button",15),W("onClick",function(){let o=G(e).$implicit,r=g(4);return H(r.onOpen(o.source))}),m(),B(3,"p-tag",16),P(4,dQ,2,2,"span",17),m()}if(t&2){let e=n.$implicit,i=g(4);$("data-testid","linked-nodes-incoming-row-"+e.source),l(),D("value",e.kind)("severity",i.kindSeverity(e.kind)),l(),D("link",!0)("label",e.source),$("data-testid","linked-nodes-incoming-link-"+e.source),l(),D("value",i.confidenceLabel(e.confidence))("severity",i.confidenceSeverity(e.confidence))("rounded",!0),l(),M(e.sources.length?4:-1)}}function uQ(t,n){if(t&1&&(h(0,"ul",10),ee(1,lQ,5,10,"li",13,DM),m()),t&2){let e=g(3);l(),te(e.incoming())}}function fQ(t,n){if(t&1&&(h(0,"section",7)(1,"h4",8),y(2),m(),P(3,oQ,2,1,"p",9)(4,sQ,3,0,"ul",10),m(),h(5,"section",11)(6,"h4",8),y(7),m(),P(8,cQ,2,1,"p",12)(9,uQ,3,0,"ul",10),m()),t&2){let e=g(2);l(2),b(e.texts.outgoingHeader),l(),M(e.outgoing().length===0?3:4),l(4),b(e.texts.incomingHeader),l(),M(e.incoming().length===0?8:9)}}function pQ(t,n){if(t&1&&(h(0,"p-card",0),Ie(1,tQ,4,6,"ng-template",1),P(2,nQ,2,1,"p",2)(3,iQ,2,1,"p",3)(4,fQ,10,4),m()),t&2){let e,i=g();l(2),M((e=i.state())==="loading"?2:e==="error"?3:e==="ready"?4:-1)}}var Pp=class t{dataSource=u(pn);wsEvents=u(ya);destroyRef=u(ot);texts=PM;path=F(null);openPath=Ve();state=U("idle");outgoing=U([]);incoming=U([]);fetchToken=0;hasResults=k(()=>this.state()==="ready"&&(this.outgoing().length>0||this.incoming().length>0));constructor(){this.wsEvents.scanCompleted$.pipe(Di(this.destroyRef)).subscribe(()=>{let n=this.path();n&&this.fetch(n)}),pe(()=>{let n=this.path();if(!n){this.fetchToken++,this.state.set("idle"),this.outgoing.set([]),this.incoming.set([]);return}this.fetch(n)})}refresh(){let n=this.path();n&&this.fetch(n)}onOpen(n){this.openPath.emit(n)}kindSeverity(n){return y0[n]??"secondary"}confidenceSeverity(n){return v0[n]??"info"}confidenceLabel(n){return this.texts.confidence[n]??n}async fetch(n){let e=++this.fetchToken;this.state.set("loading");try{let[i,o]=await Promise.all([this.dataSource.listLinks({from:n}),this.dataSource.listLinks({to:n})]);if(e!==this.fetchToken)return;this.outgoing.set(i.items),this.incoming.set(o.items),this.state.set("ready")}catch{if(e!==this.fetchToken)return;this.outgoing.set([]),this.incoming.set([]),this.state.set("error")}}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=Z({type:t,selectors:[["sm-linked-nodes-panel"]],inputs:{path:[1,"path"]},outputs:{openPath:"openPath"},decls:1,vars:1,consts:[["styleClass","linked-nodes-panel","data-testid","linked-nodes-panel"],["pTemplate","header"],["data-testid","linked-nodes-loading",1,"linked-nodes-panel__status"],["data-testid","linked-nodes-error",1,"linked-nodes-panel__status","linked-nodes-panel__status--warn"],[1,"linked-nodes-panel__header"],[1,"linked-nodes-panel__title"],["icon","pi pi-refresh","severity","secondary","data-testid","linked-nodes-refresh",3,"onClick","rounded","text","ariaLabel","pTooltip","disabled"],["data-testid","linked-nodes-outgoing",1,"linked-nodes-panel__section"],[1,"linked-nodes-panel__section-title"],["data-testid","linked-nodes-outgoing-empty",1,"linked-nodes-panel__status"],[1,"linked-nodes-panel__rows"],["data-testid","linked-nodes-incoming",1,"linked-nodes-panel__section"],["data-testid","linked-nodes-incoming-empty",1,"linked-nodes-panel__status"],[1,"linked-nodes-panel__row"],[3,"value","severity"],["severity","primary","styleClass","linked-nodes-panel__path",3,"onClick","link","label"],[3,"value","severity","rounded"],[1,"linked-nodes-panel__sources"]],template:function(e,i){e&1&&P(0,pQ,5,1,"p-card",0),e&2&&M(i.path()?0:-1)},dependencies:[wp,$r,un,Sa,wa,Bi,Mi,Pi,We,Ze],styles:["[_nghost-%COMP%]{display:block}.linked-nodes-panel__header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.75rem 1rem 0}.linked-nodes-panel__title[_ngcontent-%COMP%]{margin:0;font-size:.95rem;font-weight:600}.linked-nodes-panel__status[_ngcontent-%COMP%]{margin:0;font-size:.85rem;color:var(--p-text-muted-color);font-style:italic}.linked-nodes-panel__status--warn[_ngcontent-%COMP%]{color:var(--sm-severity-warn);font-style:normal}.linked-nodes-panel__section[_ngcontent-%COMP%] + .linked-nodes-panel__section[_ngcontent-%COMP%]{margin-top:1rem}.linked-nodes-panel__section-title[_ngcontent-%COMP%]{margin:0 0 .5rem;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--p-text-muted-color)}.linked-nodes-panel__rows[_ngcontent-%COMP%]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.linked-nodes-panel__row[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;padding:.4rem .5rem;border-radius:var(--sm-radius-md);background:var(--p-content-background);border:1px solid var(--p-content-border-color)}.linked-nodes-panel__path[_ngcontent-%COMP%]{font-family:var(--sm-font-mono);font-size:.85rem;padding:0;text-underline-offset:2px}.linked-nodes-panel__sources[_ngcontent-%COMP%]{font-size:.75rem;color:var(--p-text-muted-color);margin-left:auto}"],changeDetection:0})};var kM={providerSpecificHeader:"Provider-specific",fieldCount:t=>`${t} field${t===1?"":"s"}`,fields:{tools:"Tools",model:"Model",skills:"Skills",disallowedTools:"Disallowed tools",initialPrompt:"Initial prompt",permissionMode:"Permission mode",maxTurns:"Max turns",memory:"Memory",background:"Background",effort:"Effort",isolation:"Isolation",mcpServers:"MCP servers",hooks:"Hooks"},initialPromptToggle:"Toggle initial prompt"};var hQ=(t,n)=>n.name,mQ=(t,n)=>n.event;function gQ(t,n){if(t&1&&(h(0,"dt"),y(1),m(),h(2,"dd")(3,"code"),y(4),m()()),t&2){let e=g(4);l(),b(e.texts.fields.model),l(3),b(n)}}function _Q(t,n){if(t&1&&B(0,"p-chip",12),t&2){let e=n.$implicit;D("label",e)}}function yQ(t,n){if(t&1&&(h(0,"dt"),y(1),m(),h(2,"dd",11),ee(3,_Q,1,1,"p-chip",12,Te),m()),t&2){let e=g(4);l(),b(e.texts.fields.tools),l(2),te(e.tools())}}function vQ(t,n){if(t&1){let e=de();h(0,"p-chip",14),W("click",function(){let o=G(e).$implicit,r=g(5);return H(r.onSkillChipClick(o))}),m()}if(t&2){let e=n.$implicit,i=g(5);D("label",e)("styleClass",i.isSkillKnown(e)?"chip--link":"")}}function CQ(t,n){if(t&1&&(h(0,"dt"),y(1),m(),h(2,"dd",11),ee(3,vQ,1,2,"p-chip",13,Te),m()),t&2){let e=g(4);l(),b(e.texts.fields.skills),l(2),te(e.skills())}}function xQ(t,n){if(t&1&&B(0,"p-chip",15),t&2){let e=n.$implicit;D("label",e)}}function bQ(t,n){if(t&1&&(h(0,"dt"),y(1),m(),h(2,"dd",11),ee(3,xQ,1,1,"p-chip",15,Te),m()),t&2){let e=g(4);l(),b(e.texts.fields.disallowedTools),l(2),te(e.disallowedTools())}}function wQ(t,n){if(t&1&&(h(0,"dt"),y(1),m(),h(2,"dd")(3,"code"),y(4),m()()),t&2){let e=g(4);l(),b(e.texts.fields.permissionMode),l(3),b(n)}}function SQ(t,n){if(t&1&&(h(0,"dt"),y(1),m(),h(2,"dd"),y(3),m()),t&2){let e=g(4);l(),b(e.texts.fields.maxTurns),l(2),b(e.maxTurns())}}function IQ(t,n){if(t&1&&(h(0,"dt"),y(1),m(),h(2,"dd")(3,"code"),y(4),m()()),t&2){let e=g(4);l(),b(e.texts.fields.effort),l(3),b(n)}}function TQ(t,n){if(t&1&&(h(0,"dt"),y(1),m(),h(2,"dd")(3,"code"),y(4),m()()),t&2){let e=g(4);l(),b(e.texts.fields.memory),l(3),b(n)}}function EQ(t,n){if(t&1&&(h(0,"dt"),y(1),m(),h(2,"dd")(3,"code"),y(4,"true"),m()()),t&2){let e=g(4);l(),b(e.texts.fields.background)}}function PQ(t,n){if(t&1&&(h(0,"dt"),y(1),m(),h(2,"dd")(3,"code"),y(4),m()()),t&2){let e=g(4);l(),b(e.texts.fields.isolation),l(3),b(n)}}function MQ(t,n){if(t&1&&(h(0,"blockquote",18),y(1),m()),t&2){let e=g();l(),b(e)}}function DQ(t,n){if(t&1&&(h(0,"p",19),y(1),m()),t&2){let e=g();l(),Eo("",e.slice(0,80),"",e.length>80?"\u2026":"")}}function kQ(t,n){if(t&1){let e=de();h(0,"div",9)(1,"h5",16)(2,"button",17),W("click",function(){G(e);let o=g(4);return H(o.toggleInitialPrompt())}),B(3,"i",4),y(4),m()(),P(5,MQ,2,1,"blockquote",18)(6,DQ,2,2,"p",19),m()}if(t&2){let e=g(4);l(2),$("aria-label",e.texts.initialPromptToggle),l(),se("pi-chevron-right",!e.initialPromptExpanded())("pi-chevron-down",e.initialPromptExpanded()),l(),Ue(" ",e.texts.fields.initialPrompt," "),l(),M(e.initialPromptExpanded()?5:6)}}function OQ(t,n){if(t&1&&(h(0,"code",23),y(1),m()),t&2){let e=g().$implicit;l(),b(e.command)}}function NQ(t,n){if(t&1&&(h(0,"li",21)(1,"code",22),y(2),m(),P(3,OQ,2,1,"code",23),m()),t&2){let e=n.$implicit;l(2),b(e.name),l(),M(e.command!==null?3:-1)}}function RQ(t,n){if(t&1&&(h(0,"div",10)(1,"h5",16),y(2),m(),h(3,"ul",20),ee(4,NQ,4,2,"li",21,hQ),m()()),t&2){let e=g(4);l(2),b(e.texts.fields.mcpServers),l(2),te(e.mcpServers())}}function AQ(t,n){if(t&1&&(h(0,"code"),y(1),m(),y(2)),t&2){let e=n.$implicit,i=n.$index,o=n.$count;l(),b(e),l(),Ue("",i===o-1?"":", "," ")}}function FQ(t,n){if(t&1&&(h(0,"span",24),ee(1,AQ,3,2,null,null,Te),m()),t&2){let e=g().$implicit;l(),te(e.keys)}}function LQ(t,n){if(t&1&&(h(0,"li",21)(1,"code",22),y(2),m(),P(3,FQ,3,0,"span",24),m()),t&2){let e=n.$implicit;l(2),b(e.event),l(),M(e.keys.length?3:-1)}}function BQ(t,n){if(t&1&&(h(0,"div",10)(1,"h5",16),y(2),m(),h(3,"ul",20),ee(4,LQ,4,2,"li",21,mQ),m()()),t&2){let e=g(4);l(2),b(e.texts.fields.hooks),l(2),te(e.hooks())}}function zQ(t,n){if(t&1&&(h(0,"dl",8),P(1,gQ,5,2),P(2,yQ,5,1),P(3,CQ,5,1),P(4,bQ,5,1),P(5,wQ,5,2),P(6,SQ,4,2),P(7,IQ,5,2),P(8,TQ,5,2),P(9,EQ,5,1),P(10,PQ,5,2),m(),P(11,kQ,7,7,"div",9),P(12,RQ,6,1,"div",10),P(13,BQ,6,1,"div",10)),t&2){let e,i,o,r,a,s,c=g(3);l(),M((e=c.model())?1:-1,e),l(),M(c.tools().length?2:-1),l(),M(c.skills().length?3:-1),l(),M(c.disallowedTools().length?4:-1),l(),M((i=c.permissionMode())?5:-1,i),l(),M(c.maxTurns()!==null?6:-1),l(),M((o=c.effort())?7:-1,o),l(),M((r=c.memory())?8:-1,r),l(),M(c.background()?9:-1),l(),M((a=c.isolation())?10:-1,a),l(),M((s=c.initialPrompt())?11:-1,s),l(),M(c.mcpServers().length?12:-1),l(),M(c.hooks().length?13:-1)}}function qQ(t,n){if(t&1&&(h(0,"dt"),y(1,"when_to_use"),m(),h(2,"dd"),y(3),m()),t&2){g();let e=ne(0);l(3),b(e.when_to_use)}}function VQ(t,n){if(t&1&&(h(0,"dt"),y(1,"argument-hint"),m(),h(2,"dd")(3,"code"),y(4),m()()),t&2){g();let e=ne(0);l(4),b(e.argumentHint)}}function GQ(t,n){if(t&1&&B(0,"p-chip",12),t&2){let e=n.$implicit;D("label",e)}}function HQ(t,n){if(t&1&&(h(0,"dt"),y(1,"arguments"),m(),h(2,"dd",11),ee(3,GQ,1,1,"p-chip",12,Te),m()),t&2){g();let e=ne(0);l(3),te(e.arguments)}}function jQ(t,n){if(t&1&&B(0,"p-chip",12),t&2){let e=n.$implicit;D("label",e)}}function UQ(t,n){if(t&1&&(h(0,"dt"),y(1,"allowed-tools"),m(),h(2,"dd",11),ee(3,jQ,1,1,"p-chip",12,Te),m()),t&2){g();let e=ne(0);l(3),te(e.allowedTools)}}function WQ(t,n){if(t&1&&(h(0,"dt"),y(1,"model"),m(),h(2,"dd")(3,"code"),y(4),m()()),t&2){g();let e=ne(0);l(4),b(e.model)}}function $Q(t,n){if(t&1&&(h(0,"dt"),y(1,"effort"),m(),h(2,"dd")(3,"code"),y(4),m()()),t&2){g();let e=ne(0);l(4),b(e.effort)}}function KQ(t,n){if(t&1&&(h(0,"dt"),y(1,"context"),m(),h(2,"dd")(3,"code"),y(4),m()()),t&2){g();let e=ne(0);l(4),b(e.context)}}function YQ(t,n){if(t&1&&(h(0,"dt"),y(1,"agent"),m(),h(2,"dd")(3,"code"),y(4),m()()),t&2){g();let e=ne(0);l(4),b(e.agent)}}function XQ(t,n){if(t&1&&(h(0,"dt"),y(1,"shell"),m(),h(2,"dd")(3,"code"),y(4),m()()),t&2){g();let e=ne(0);l(4),b(e.shell)}}function ZQ(t,n){if(t&1&&B(0,"p-chip",12),t&2){let e=n.$implicit;D("label",e)}}function QQ(t,n){if(t&1&&(h(0,"dt"),y(1,"paths"),m(),h(2,"dd",11),ee(3,ZQ,1,1,"p-chip",12,Te),m()),t&2){g();let e=ne(0);l(3),te(e.paths)}}function JQ(t,n){t&1&&(h(0,"dt"),y(1,"disable-model-invocation"),m(),h(2,"dd")(3,"code"),y(4,"true"),m()())}function eJ(t,n){if(t&1&&(h(0,"dt"),y(1,"user-invocable"),m(),h(2,"dd")(3,"code"),y(4),m()()),t&2){g();let e=ne(0);l(4),b(e.userInvocable)}}function tJ(t,n){if(t&1&&(yt(0),h(1,"dl",7),P(2,qQ,4,1),P(3,VQ,5,1),P(4,HQ,5,0),P(5,UQ,5,0),P(6,WQ,5,1),P(7,$Q,5,1),P(8,KQ,5,1),P(9,YQ,5,1),P(10,XQ,5,1),P(11,QQ,5,0),P(12,JQ,5,0),P(13,eJ,5,1),m()),t&2){let e=Xe(g(3).skillBase());l(2),M(e.when_to_use!==null?2:-1),l(),M(e.argumentHint!==null?3:-1),l(),M(e.arguments.length?4:-1),l(),M(e.allowedTools.length?5:-1),l(),M(e.model!==null?6:-1),l(),M(e.effort!==null?7:-1),l(),M(e.context!==null?8:-1),l(),M(e.agent!==null?9:-1),l(),M(e.shell!==null?10:-1),l(),M(e.paths.length?11:-1),l(),M(e.disableModelInvocation?12:-1),l(),M(e.userInvocable!==null?13:-1)}}function nJ(t,n){if(t&1&&(h(0,"div",6),P(1,zQ,14,13)(2,tJ,14,13,"dl",7),m()),t&2){let e=g(2);l(),M(e.isAgent()?1:e.isSkillOrCommand()?2:-1)}}function iJ(t,n){if(t&1){let e=de();h(0,"div",0)(1,"section",1)(2,"h4",2)(3,"button",3),W("click",function(){G(e);let o=g();return H(o.toggleSection())}),B(4,"i",4),y(5),h(6,"span",5),y(7),m()()(),P(8,nJ,3,1,"div",6),m()()}if(t&2){let e=g();l(3),$("aria-expanded",e.sectionExpanded()),l(),se("pi-chevron-right",!e.sectionExpanded())("pi-chevron-down",e.sectionExpanded()),l(),Ue(" ",e.texts.providerSpecificHeader," "),l(2),Ue("(",e.texts.fieldCount(e.populatedFieldCount()),")"),l(),M(e.sectionExpanded()?8:-1)}}var Dp=class t{frontmatter=F.required();kind=F.required();provider=F(void 0);knownPaths=F(null);onSkillClick=F(null);texts=kM;hasVendorSurface=k(()=>{let n=this.kind();return n==="agent"||n==="skill"||n==="command"});isAgent=k(()=>this.kind()==="agent");isSkillOrCommand=k(()=>{let n=this.kind();return n==="skill"||n==="command"});tools=k(()=>Mp(this.fm().tools));model=k(()=>wt(this.fm().model));skills=k(()=>Mp(this.fm().skills));disallowedTools=k(()=>Mp(this.fm().disallowedTools));initialPrompt=k(()=>wt(this.fm().initialPrompt));initialPromptExpanded=U(!1);permissionMode=k(()=>wt(this.fm().permissionMode));maxTurns=k(()=>oJ(this.fm().maxTurns));memory=k(()=>wt(this.fm().memory));background=k(()=>this.fm().background===!0);effort=k(()=>wt(this.fm().effort));isolation=k(()=>wt(this.fm().isolation));mcpServers=k(()=>{let n=this.fm().mcpServers;return Array.isArray(n)?n.filter(e=>typeof e=="object"&&e!==null).map((e,i)=>({name:typeof e.name=="string"&&e.name.length>0?e.name:`mcpServer[${i}]`,command:typeof e.command=="string"?e.command:null})):[]});hooks=k(()=>{let n=this.fm().hooks;if(typeof n!="object"||n===null)return[];let e=[];for(let[i,o]of Object.entries(n)){let r=typeof o=="object"&&o!==null?Object.keys(o):[];e.push({event:i,keys:r})}return e});skillBase=k(()=>{let n=this.fm();return{when_to_use:wt(n.when_to_use),argumentHint:wt(n["argument-hint"]),arguments:C_(n.arguments),disableModelInvocation:n["disable-model-invocation"]===!0,userInvocable:typeof n["user-invocable"]=="boolean"?n["user-invocable"]:null,allowedTools:C_(n["allowed-tools"]),model:wt(n.model),effort:wt(n.effort),context:wt(n.context),agent:wt(n.agent),paths:C_(n.paths),shell:wt(n.shell)}});populatedFieldCount=k(()=>{if(this.isAgent()){let n=0;return this.model()!==null&&n++,this.tools().length&&n++,this.skills().length&&n++,this.disallowedTools().length&&n++,this.permissionMode()!==null&&n++,this.maxTurns()!==null&&n++,this.effort()!==null&&n++,this.memory()!==null&&n++,this.background()&&n++,this.isolation()!==null&&n++,this.initialPrompt()!==null&&n++,this.mcpServers().length&&n++,this.hooks().length&&n++,n}if(this.isSkillOrCommand()){let n=this.skillBase(),e=0;return n.when_to_use!==null&&e++,n.argumentHint!==null&&e++,n.arguments.length&&e++,n.allowedTools.length&&e++,n.model!==null&&e++,n.effort!==null&&e++,n.context!==null&&e++,n.agent!==null&&e++,n.shell!==null&&e++,n.paths.length&&e++,n.disableModelInvocation&&e++,n.userInvocable!==null&&e++,e}return 0});hasAnyContent=k(()=>this.hasVendorSurface()&&this.populatedFieldCount()>0);sectionExpanded=U(!1);toggleSection(){this.sectionExpanded.update(n=>!n)}toggleInitialPrompt(){this.initialPromptExpanded.update(n=>!n)}onSkillChipClick(n){let e=this.onSkillClick();e&&e(n)}isSkillKnown(n){let e=this.knownPaths();return e?e.has(n):!1}fm(){return this.frontmatter()}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=Z({type:t,selectors:[["sm-vendor-frontmatter"]],inputs:{frontmatter:[1,"frontmatter"],kind:[1,"kind"],provider:[1,"provider"],knownPaths:[1,"knownPaths"],onSkillClick:[1,"onSkillClick"]},decls:1,vars:1,consts:[["data-testid","vendor-frontmatter",1,"vfm"],["data-testid","vendor-frontmatter-section",1,"vfm__section"],[1,"vfm__section-toggle"],["type","button","data-testid","vendor-frontmatter-section-toggle",1,"vfm__inline-toggle",3,"click"],["aria-hidden","true",1,"pi"],[1,"vfm__count"],["data-testid","vendor-frontmatter-section-body",1,"vfm__body"],["data-testid","vendor-frontmatter-skill-base",1,"vfm__kv"],[1,"vfm__kv"],["data-testid","vendor-frontmatter-initial-prompt-row",1,"vfm__row"],[1,"vfm__row"],[1,"vfm__chips"],[3,"label"],[3,"label","styleClass"],[3,"click","label","styleClass"],["styleClass","chip--danger",3,"label"],[1,"vfm__label"],["type","button","data-testid","vendor-frontmatter-initial-prompt-toggle",1,"vfm__inline-toggle",3,"click"],["data-testid","vendor-frontmatter-initial-prompt",1,"vfm__quote"],[1,"vfm__quote-collapsed"],[1,"vfm__list"],[1,"vfm__list-row"],[1,"vfm__list-key"],[1,"vfm__list-cmd"],[1,"vfm__list-keys"]],template:function(e,i){e&1&&P(0,iJ,9,8,"div",0),e&2&&M(i.hasAnyContent()?0:-1)},dependencies:[Bi,ba,We],styles:["[_nghost-%COMP%]{display:block}.vfm[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.6rem}.vfm__section[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.4rem}.vfm__body[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.6rem}.vfm__row[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.25rem}.vfm__kv[_ngcontent-%COMP%]{display:grid;grid-template-columns:max-content 1fr;column-gap:.6rem;row-gap:.25rem;margin:0;font-size:.85rem}.vfm__kv[_ngcontent-%COMP%] dt[_ngcontent-%COMP%]{color:var(--sm-text-muted);font-weight:500}.vfm__kv[_ngcontent-%COMP%] dd[_ngcontent-%COMP%]{margin:0;word-break:break-word}.vfm__chips[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:.3rem}.vfm__label[_ngcontent-%COMP%]{margin:.25rem 0;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--sm-text-muted);font-weight:600}.vfm__section-toggle[_ngcontent-%COMP%]{margin:0}.vfm__inline-toggle[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:.35rem;background:transparent;border:none;padding:0;font:inherit;font-size:.85rem;font-weight:600;color:var(--p-text-color);cursor:pointer}.vfm__inline-toggle[_ngcontent-%COMP%]:hover{color:var(--p-primary-color)}.vfm__count[_ngcontent-%COMP%]{font-weight:400;color:var(--sm-text-muted)}.vfm__quote[_ngcontent-%COMP%]{margin:.35rem 0 0;padding:.5rem .75rem;border-left:3px solid var(--sm-border);background:var(--sm-bg-hover);font-style:italic;font-size:.85rem;white-space:pre-wrap;border-radius:0 4px 4px 0}.vfm__quote-collapsed[_ngcontent-%COMP%]{margin:.25rem 0 0;font-size:.8rem;color:var(--sm-text-muted);font-style:italic}.vfm__list[_ngcontent-%COMP%]{margin:.25rem 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.2rem}.vfm__list-row[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;align-items:baseline;gap:.4rem;font-size:.8rem}.vfm__list-key[_ngcontent-%COMP%]{font-family:var(--sm-font-mono);font-weight:600;background:var(--sm-bg-hover);padding:.05rem .35rem;border-radius:var(--sm-radius-sm)}.vfm__list-cmd[_ngcontent-%COMP%], .vfm__list-keys[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{font-family:var(--sm-font-mono);font-size:.75rem;color:var(--sm-text-muted)}[_nghost-%COMP%] .chip--danger{background:var(--sm-severity-error-bg);color:var(--sm-severity-error)}"],changeDetection:0})};function wt(t){return typeof t=="string"&&t.length>0?t:null}function oJ(t){return typeof t=="number"&&Number.isFinite(t)?t:null}function Mp(t){return Array.isArray(t)?t.filter(n=>typeof n=="string"&&n.length>0):[]}function C_(t){return typeof t=="string"?t.length>0?[t]:[]:Array.isArray(t)?Mp(t):[]}var OM={header:"Plugin contributions",count:t=>`${t} namespace${t===1?"":"s"}`,unregisteredBadge:"unregistered",rootContribBadge:t=>`from plugin: ${t}`,empty:"No plugin contributions on this sidecar."};var AM=(t,n)=>n.key,rJ=(t,n)=>n.pluginId;function aJ(t,n){if(t&1&&(h(0,"p",0),y(1),m()),t&2){let e=g();l(),b(e.texts.empty)}}function sJ(t,n){if(t&1&&(h(0,"span",5),y(1),m()),t&2){let e=g().$implicit,i=g(3);l(),b(i.texts.rootContribBadge(e.pluginId))}}function cJ(t,n){if(t&1&&(h(0,"div",3)(1,"code",4),y(2),m(),P(3,sJ,2,1,"span",5),h(4,"pre",6),y(5),m()()),t&2){let e=n.$implicit;l(2),b(e.key),l(),M(e.pluginId!==null?3:-1),l(2),b(e.value)}}function dJ(t,n){if(t&1&&(h(0,"div",1),ee(1,cJ,6,3,"div",3,AM),m()),t&2){let e=g(2);l(),te(e.rootContributions())}}function lJ(t,n){if(t&1&&(h(0,"span",10),y(1),m()),t&2){let e=g(4);l(),b(e.texts.unregisteredBadge)}}function uJ(t,n){if(t&1&&(h(0,"dt",12),y(1),m(),h(2,"dd")(3,"pre"),y(4),m()()),t&2){let e=n.$implicit;D("pTooltip",e.description??""),l(),b(e.key),l(3),b(e.value)}}function fJ(t,n){if(t&1&&(h(0,"section",7)(1,"h5",8)(2,"span",9),y(3),m(),P(4,lJ,2,1,"span",10),m(),h(5,"dl",11),ee(6,uJ,5,3,null,null,AM),m()()),t&2){let e=n.$implicit;$("data-testid","plugin-contributions-ns-"+e.pluginId),l(3),b(e.pluginId),l(),M(e.registered?-1:4),l(2),te(e.rows)}}function pJ(t,n){if(t&1&&(h(0,"div",2),ee(1,fJ,8,3,"section",7,rJ),m()),t&2){let e=g(2);l(),te(e.namespaces())}}function hJ(t,n){if(t&1&&(P(0,dJ,3,0,"div",1),P(1,pJ,3,0,"div",2)),t&2){let e=g();M(e.rootContributions().length?0:-1),l(),M(e.namespaces().length?1:-1)}}var NM=new Set(["identity","annotations","settings","audit"]),kp=class t{dataSource=u(pn);sidecarRoot=F(void 0);texts=OM;catalog=U(null);constructor(){this.fetchCatalog()}namespaces=k(()=>{let n=this.sidecarRoot();if(!n)return[];let e=this.catalog(),i=new Map;if(e)for(let r of e){if(r.location!=="namespaced")continue;let a=i.get(r.pluginId);a?a.push(r):i.set(r.pluginId,[r])}let o=[];for(let[r,a]of Object.entries(n)){if(NM.has(r)||this.isRegisteredRootKey(r))continue;let c=typeof a=="object"&&a!==null&&!Array.isArray(a)?a:{value:a},d=i.has(r),f=i.get(r)??[],p=Object.entries(c).map(([v,x])=>({key:v,value:RM(x),description:d?mJ(f,v):null}));o.push({pluginId:r,registered:d,rows:p})}return o});rootContributions=k(()=>{let n=this.sidecarRoot();if(!n)return[];let e=this.catalog();if(!e)return[];let i=new Map;for(let r of e)r.location==="root"&&i.set(r.key,r);let o=[];for(let[r,a]of Object.entries(n)){if(NM.has(r))continue;let s=i.get(r);s&&o.push({key:r,pluginId:s.pluginId,value:RM(a)})}return o});count=k(()=>this.namespaces().length+this.rootContributions().length);isEmpty=k(()=>this.count()===0);isRegisteredRootKey(n){let e=this.catalog();return e?e.some(i=>i.location==="root"&&i.key===n):!1}async fetchCatalog(){try{let n=await this.dataSource.getRegisteredAnnotations();this.catalog.set(n)}catch{this.catalog.set([])}}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=Z({type:t,selectors:[["sm-plugin-contributions"]],inputs:{sidecarRoot:[1,"sidecarRoot"]},decls:2,vars:1,consts:[["data-testid","plugin-contributions-empty",1,"pcp__empty"],["data-testid","plugin-contributions-roots",1,"pcp__roots"],[1,"pcp__namespaces"],[1,"pcp__root-row"],[1,"pcp__root-key"],[1,"pcp__root-badge"],[1,"pcp__root-value"],[1,"pcp__ns"],[1,"pcp__ns-header"],[1,"pcp__ns-name"],["data-testid","plugin-contributions-unregistered-badge",1,"pcp__ns-badge"],[1,"pcp__kv"],[3,"pTooltip"]],template:function(e,i){e&1&&P(0,aJ,2,1,"p",0)(1,hJ,2,2),e&2&&M(i.isEmpty()?0:1)},dependencies:[We,Ze],styles:["[_nghost-%COMP%]{display:block}.pcp__empty[_ngcontent-%COMP%]{margin:0;font-size:.85rem;color:var(--sm-text-muted);font-style:italic}.pcp__roots[_ngcontent-%COMP%], .pcp__namespaces[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.6rem}.pcp__root-row[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;font-size:.85rem}.pcp__root-key[_ngcontent-%COMP%]{font-family:var(--sm-font-mono);background:var(--sm-bg-hover);padding:.1rem .4rem;border-radius:var(--sm-radius-sm);font-weight:600}.pcp__root-badge[_ngcontent-%COMP%]{font-size:.7rem;color:var(--sm-text-muted);font-style:italic;background:var(--sm-bg-hover);padding:.05rem .35rem;border-radius:var(--sm-radius-sm)}.pcp__root-value[_ngcontent-%COMP%]{flex:1 1 100%;margin:.2rem 0 0;padding:.45rem .6rem;background:var(--sm-bg-hover);border-radius:var(--sm-radius-sm);font-family:var(--sm-font-mono);font-size:.8rem;white-space:pre-wrap;word-break:break-word}.pcp__ns[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.35rem}.pcp__ns[_ngcontent-%COMP%] + .pcp__ns[_ngcontent-%COMP%]{border-top:1px solid var(--sm-border);padding-top:.5rem}.pcp__ns-header[_ngcontent-%COMP%]{margin:0;display:inline-flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:600}.pcp__ns-name[_ngcontent-%COMP%]{font-family:var(--sm-font-mono)}.pcp__ns-badge[_ngcontent-%COMP%]{font-size:.65rem;font-weight:500;text-transform:uppercase;letter-spacing:.04em;color:var(--sm-text-muted);background:var(--sm-bg-hover);padding:.05rem .4rem;border-radius:var(--sm-radius-sm)}.pcp__kv[_ngcontent-%COMP%]{display:grid;grid-template-columns:max-content 1fr;column-gap:.6rem;row-gap:.2rem;margin:0;font-size:.85rem}.pcp__kv[_ngcontent-%COMP%] dt[_ngcontent-%COMP%]{color:var(--sm-text-muted);font-weight:500;font-family:var(--sm-font-mono);cursor:help}.pcp__kv[_ngcontent-%COMP%] dd[_ngcontent-%COMP%]{margin:0;word-break:break-word}.pcp__kv[_ngcontent-%COMP%] dd[_ngcontent-%COMP%] pre[_ngcontent-%COMP%]{margin:0;font-family:var(--sm-font-mono);font-size:.8rem;white-space:pre-wrap;word-break:break-word}"],changeDetection:0})};function RM(t){if(t===null)return"null";if(typeof t=="string")return t;if(typeof t=="number"||typeof t=="boolean")return String(t);try{return JSON.stringify(t,null,2)}catch{return String(t)}}function mJ(t,n){for(let e of t)if(e.key===n){let i=e.schema.description;return typeof i=="string"&&i.length>0?i:null}return null}var Op=class t{node=F(null);static \u0275fac=function(e){return new(e||t)};static \u0275cmp=Z({type:t,selectors:[["sm-inspector-slots-panel"]],inputs:{node:[1,"node"]},decls:6,vars:6,consts:[["slot","inspector.body.panel.breakdown",3,"node"],["slot","inspector.body.panel.records",3,"node"],["slot","inspector.body.panel.tree",3,"node"],["slot","inspector.body.panel.key-values",3,"node"],["slot","inspector.body.panel.link-list",3,"node"],["slot","inspector.body.panel.markdown",3,"node"]],template:function(e,i){e&1&&B(0,"sm-view-contributions-host",0)(1,"sm-view-contributions-host",1)(2,"sm-view-contributions-host",2)(3,"sm-view-contributions-host",3)(4,"sm-view-contributions-host",4)(5,"sm-view-contributions-host",5),e&2&&(D("node",i.node()),l(),D("node",i.node()),l(),D("node",i.node()),l(),D("node",i.node()),l(),D("node",i.node()),l(),D("node",i.node()))},dependencies:[mn],encapsulation:2,changeDetection:0})};var FM={header:"Debug",toggleAriaLabel:"Toggle debug panel",fields:{forPath:"for.path",bodyHashStored:"for.bodyHash (stored)",bodyHashLive:"node.bodyHash (live)",frontmatterHashStored:"for.frontmatterHash (stored)",frontmatterHashLive:"node.frontmatterHash (live)",resolvedProvider:"for.resolvedAs.provider",resolvedKind:"for.resolvedAs.kind",sidecarStatus:"sidecar.status",sidecarPresent:"sidecar.present"},diffMarker:"!=",absentMarker:"(absent)",notSetMarker:"(not set)"};function gJ(t,n){t&1&&(K(0,"code"),y(1),Y()),t&2&&(l(),b(n))}function _J(t,n){if(t&1&&(K(0,"span",2),y(1),Y()),t&2){let e=g();l(),b(e.texts.absentMarker)}}function yJ(t,n){if(t&1&&(K(0,"code"),y(1),Y()),t&2){let e=g();se("dbg__diff",e.bodyHashDrift()),l(),b(n)}}function vJ(t,n){if(t&1&&(K(0,"span",2),y(1),Y()),t&2){let e=g();l(),b(e.texts.absentMarker)}}function CJ(t,n){if(t&1&&(K(0,"code"),y(1),Y()),t&2){let e=g();se("dbg__diff",e.bodyHashDrift()),l(),b(n)}}function xJ(t,n){if(t&1&&(K(0,"span",2),y(1),Y()),t&2){let e=g();l(),b(e.texts.absentMarker)}}function bJ(t,n){if(t&1&&(K(0,"code"),y(1),Y()),t&2){let e=g();se("dbg__diff",e.frontmatterHashDrift()),l(),b(n)}}function wJ(t,n){if(t&1&&(K(0,"span",2),y(1),Y()),t&2){let e=g();l(),b(e.texts.absentMarker)}}function SJ(t,n){if(t&1&&(K(0,"code"),y(1),Y()),t&2){let e=g();se("dbg__diff",e.frontmatterHashDrift()),l(),b(n)}}function IJ(t,n){if(t&1&&(K(0,"span",2),y(1),Y()),t&2){let e=g();l(),b(e.texts.absentMarker)}}function TJ(t,n){t&1&&(K(0,"code"),y(1),Y()),t&2&&(l(),b(n))}function EJ(t,n){if(t&1&&(K(0,"span",2),y(1),Y()),t&2){let e=g();l(),b(e.texts.notSetMarker)}}function PJ(t,n){t&1&&(K(0,"code"),y(1),Y()),t&2&&(l(),b(n))}function MJ(t,n){if(t&1&&(K(0,"span",2),y(1),Y()),t&2){let e=g();l(),b(e.texts.notSetMarker)}}function DJ(t,n){t&1&&(K(0,"code"),y(1),Y()),t&2&&(l(),b(n))}function kJ(t,n){if(t&1&&(K(0,"span",2),y(1),Y()),t&2){let e=g();l(),b(e.texts.absentMarker)}}var Np=class t{node=F.required();sidecarRoot=F(null);overlay=F(void 0);texts=FM;identityBlock=k(()=>{let n=this.sidecarRoot(),e={path:null,bodyHash:null,frontmatterHash:null,resolvedProvider:null,resolvedKind:null};if(!n)return e;let i=n.identity;if(typeof i!="object"||i===null)return e;let o=i,r=typeof o.resolvedAs=="object"&&o.resolvedAs!==null?o.resolvedAs:null;return{path:typeof o.path=="string"?o.path:null,bodyHash:typeof o.bodyHash=="string"?o.bodyHash:null,frontmatterHash:typeof o.frontmatterHash=="string"?o.frontmatterHash:null,resolvedProvider:r&&typeof r.provider=="string"?r.provider:null,resolvedKind:r&&typeof r.kind=="string"?r.kind:null}});bodyHashLive=k(()=>this.node().bodyHash??null);frontmatterHashLive=k(()=>this.node().frontmatterHash??null);bodyHashDrift=k(()=>{let n=this.identityBlock().bodyHash,e=this.bodyHashLive();return n!==null&&e!==null&&n!==e});frontmatterHashDrift=k(()=>{let n=this.identityBlock().frontmatterHash,e=this.frontmatterHashLive();return n!==null&&e!==null&&n!==e});sidecarStatusLiteral=k(()=>{let n=this.overlay();if(!n)return null;let e=n.status??null;return e===null?null:String(e)});sidecarPresent=k(()=>this.overlay()?.present===!0);static \u0275fac=function(e){return new(e||t)};static \u0275cmp=Z({type:t,selectors:[["sm-inspector-debug-panel"]],inputs:{node:[1,"node"],sidecarRoot:[1,"sidecarRoot"],overlay:[1,"overlay"]},decls:46,vars:18,consts:[["data-testid","inspector-debug-panel",1,"dbg__kv"],["data-testid","dbg-for-path"],[1,"dbg__absent"],["data-testid","dbg-body-hash-stored"],[3,"dbg__diff"],["data-testid","dbg-body-hash-live"],["data-testid","dbg-fm-hash-stored"],["data-testid","dbg-fm-hash-live"],["data-testid","dbg-resolved-provider"],["data-testid","dbg-resolved-kind"],["data-testid","dbg-sidecar-status"],["data-testid","dbg-sidecar-present"]],template:function(e,i){if(e&1&&(K(0,"dl",0)(1,"dt"),y(2),Y(),K(3,"dd",1),P(4,gJ,2,1,"code")(5,_J,2,1,"span",2),Y(),K(6,"dt"),y(7),Y(),K(8,"dd",3),P(9,yJ,2,3,"code",4)(10,vJ,2,1,"span",2),Y(),K(11,"dt"),y(12),Y(),K(13,"dd",5),P(14,CJ,2,3,"code",4)(15,xJ,2,1,"span",2),Y(),K(16,"dt"),y(17),Y(),K(18,"dd",6),P(19,bJ,2,3,"code",4)(20,wJ,2,1,"span",2),Y(),K(21,"dt"),y(22),Y(),K(23,"dd",7),P(24,SJ,2,3,"code",4)(25,IJ,2,1,"span",2),Y(),K(26,"dt"),y(27),Y(),K(28,"dd",8),P(29,TJ,2,1,"code")(30,EJ,2,1,"span",2),Y(),K(31,"dt"),y(32),Y(),K(33,"dd",9),P(34,PJ,2,1,"code")(35,MJ,2,1,"span",2),Y(),K(36,"dt"),y(37),Y(),K(38,"dd",10),P(39,DJ,2,1,"code")(40,kJ,2,1,"span",2),Y(),K(41,"dt"),y(42),Y(),K(43,"dd",11)(44,"code"),y(45),Y()()()),e&2){let o,r,a,s,c,d,f,p;l(2),b(i.texts.fields.forPath),l(2),M((o=i.identityBlock().path)?4:5,o),l(3),b(i.texts.fields.bodyHashStored),l(2),M((r=i.identityBlock().bodyHash)?9:10,r),l(3),b(i.texts.fields.bodyHashLive),l(2),M((a=i.bodyHashLive())?14:15,a),l(3),b(i.texts.fields.frontmatterHashStored),l(2),M((s=i.identityBlock().frontmatterHash)?19:20,s),l(3),b(i.texts.fields.frontmatterHashLive),l(2),M((c=i.frontmatterHashLive())?24:25,c),l(3),b(i.texts.fields.resolvedProvider),l(2),M((d=i.identityBlock().resolvedProvider)?29:30,d),l(3),b(i.texts.fields.resolvedKind),l(2),M((f=i.identityBlock().resolvedKind)?34:35,f),l(3),b(i.texts.fields.sidecarStatus),l(2),M((p=i.sidecarStatusLiteral())?39:40,p),l(3),b(i.texts.fields.sidecarPresent),l(3),b(i.sidecarPresent())}},styles:["[_nghost-%COMP%]{display:block}.dbg__kv[_ngcontent-%COMP%]{display:grid;grid-template-columns:max-content 1fr;column-gap:.6rem;row-gap:.2rem;margin:0;font-size:.8rem}.dbg__kv[_ngcontent-%COMP%] dt[_ngcontent-%COMP%]{color:var(--sm-text-muted);font-family:var(--sm-font-mono);font-weight:500}.dbg__kv[_ngcontent-%COMP%] dd[_ngcontent-%COMP%]{margin:0}.dbg__kv[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{font-family:var(--sm-font-mono);font-size:.78rem;background:var(--sm-bg-hover);padding:.05rem .3rem;border-radius:var(--sm-radius-sm);word-break:break-all}.dbg__diff[_ngcontent-%COMP%]{background:var(--sm-severity-error-bg);color:var(--sm-severity-error)}.dbg__absent[_ngcontent-%COMP%]{font-family:var(--sm-font-mono);font-size:.78rem;color:var(--sm-text-muted);font-style:italic}"],changeDetection:0})};function OJ(t,n){if(t&1&&(K(0,"span",3),y(1),K(2,"code"),y(3),Y()()),t&2){g(2);let e=ne(0),i=g();l(),Ue(" ",i.texts.fields.lastBumpedBy," "),l(2),b(e.lastBumpedBy)}}function NJ(t,n){if(t&1&&(K(0,"dt"),y(1),Y(),K(2,"dd")(3,"span",2),y(4),Y(),P(5,OJ,4,2,"span",3),Y()),t&2){g();let e=ne(0),i=g();l(),b(i.texts.fields.lastBumpedAt),l(2),Qp("title",e.lastBumpedAt),l(),b(i.lastBumpedRel()),l(),M(e.lastBumpedBy!==null?5:-1)}}function RJ(t,n){if(t&1&&(K(0,"span",3),y(1),K(2,"code"),y(3),Y()()),t&2){g(2);let e=ne(0),i=g();l(),Ue(" ",i.texts.fields.createdBy," "),l(2),b(e.createdBy)}}function AJ(t,n){if(t&1&&(K(0,"dt"),y(1),Y(),K(2,"dd")(3,"span",2),y(4),Y(),P(5,RJ,4,2,"span",3),Y()),t&2){g();let e=ne(0),i=g();l(),b(i.texts.fields.createdAt),l(2),Qp("title",e.createdAt),l(),b(i.createdRel()),l(),M(e.createdBy!==null?5:-1)}}function FJ(t,n){if(t&1&&(yt(0),K(1,"dl",0),P(2,NJ,6,4),P(3,AJ,6,4),Y()),t&2){let e=Xe(g().audit());l(2),M(e.lastBumpedAt!==null?2:-1),l(),M(e.createdAt!==null?3:-1)}}function LJ(t,n){if(t&1&&(K(0,"p",1),y(1),Y()),t&2){let e=g();l(),b(e.texts.headerEmpty)}}var Ap=class t{sidecarRoot=F(null);texts=zn.audit;audit=k(()=>{let n=this.sidecarRoot(),e={lastBumpedAt:null,lastBumpedBy:null,createdAt:null,createdBy:null};if(!n)return e;let i=n.audit;if(typeof i!="object"||i===null)return e;let o=i;return{lastBumpedAt:Rp(o.lastBumpedAt),lastBumpedBy:Rp(o.lastBumpedBy),createdAt:Rp(o.createdAt),createdBy:Rp(o.createdBy)}});hasContent=k(()=>{let n=this.audit();return n.lastBumpedAt!==null||n.lastBumpedBy!==null||n.createdAt!==null||n.createdBy!==null});lastBumpedRel=k(()=>{let n=this.audit().lastBumpedAt;return n===null?null:Po(n)});createdRel=k(()=>{let n=this.audit().createdAt;return n===null?null:Po(n)});static \u0275fac=function(e){return new(e||t)};static \u0275cmp=Z({type:t,selectors:[["sm-inspector-audit-panel"]],inputs:{sidecarRoot:[1,"sidecarRoot"]},decls:2,vars:1,consts:[["data-testid","inspector-audit-panel",1,"audit__kv"],["data-testid","inspector-audit-panel-empty",1,"audit__empty"],[3,"title"],[1,"audit__by"]],template:function(e,i){e&1&&P(0,FJ,4,3,"dl",0)(1,LJ,2,1,"p",1),e&2&&M(i.hasContent()?0:1)},styles:["[_nghost-%COMP%]{display:block}.audit__kv[_ngcontent-%COMP%]{display:grid;grid-template-columns:max-content 1fr;column-gap:.6rem;row-gap:.2rem;margin:0;font-size:.85rem}.audit__kv[_ngcontent-%COMP%] dt[_ngcontent-%COMP%]{color:var(--sm-text-muted);font-weight:500}.audit__kv[_ngcontent-%COMP%] dd[_ngcontent-%COMP%]{margin:0}.audit__by[_ngcontent-%COMP%]{color:var(--sm-text-muted)}.audit__by[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{font-family:var(--sm-font-mono);font-size:.78rem}.audit__empty[_ngcontent-%COMP%]{margin:0;font-style:italic;color:var(--sm-text-muted);font-size:.85rem}"],changeDetection:0})};function Rp(t){return typeof t=="string"&&t.length>0?t:null}var BJ=["closeBtn"];function zJ(t,n){if(t&1&&(h(0,"span",11),B(1,"i",19),m()),t&2){let e=g();D("pTooltip",e.headerStaleTooltip())}}function qJ(t,n){if(t&1&&(h(0,"span",12),it(),h(1,"svg",20),B(2,"path",21)(3,"path",22)(4,"path",23),m()()),t&2){let e=g();D("pTooltip",e.cardTexts.stability.experimental)}}function VJ(t,n){if(t&1&&(h(0,"span",12),B(1,"i",24),m()),t&2){let e=g();D("pTooltip",e.cardTexts.stability.deprecated)}}function GJ(t,n){t&1&&(h(0,"span",13),y(1),m()),t&2&&(l(),b(n))}function HJ(t,n){if(t&1){let e=de();h(0,"button",25,0),W("click",function(o){G(e);let r=g();return H(r.onCloseClick(o))}),B(2,"i",26),m()}if(t&2){let e=g();D("pTooltip",e.texts.close.tooltip),$("aria-label",e.texts.close.label)}}function jJ(t,n){t&1&&(h(0,"div",17)(1,"span",27),y(2,"Actions"),m(),h(3,"button",28),B(4,"i",29),h(5,"span"),y(6,"Generate summary"),m()(),h(7,"button",30),B(8,"i",31),h(9,"span"),y(10,"Run audit"),m()(),h(11,"button",32),B(12,"i",33),h(13,"span"),y(14,"Validate"),m()()())}function UJ(t,n){if(t&1&&(h(0,"span",34),y(1),m()),t&2){let e=n.$implicit;l(),b(e)}}function WJ(t,n){if(t&1&&(h(0,"div",18),ee(1,UJ,2,1,"span",34,Te),m()),t&2){let e=g();l(),te(e.headerTools())}}var $J=new Set(["red","orange","yellow","green","cyan","blue","purple","pink"]),Fp=class t{node=F.required();mode=F("standalone");showActionMocks=F(!1);close=Ve();favoriteToggle=Ve();texts=zn;cardTexts=_i;closeBtn=Be("closeBtn");constructor(){pe(()=>{this.mode()==="embedded"&&(this.node(),queueMicrotask(()=>this.closeBtn()?.nativeElement.focus({preventScroll:!0})))})}headerVersion=k(()=>Ca(this.node()));headerStability=k(()=>xa(this.node()));headerTitleColor=k(()=>{let n=this.node(),i=n.frontmatter.color;return typeof i=="string"&&$J.has(i)?i:`var(--sm-kind-${n.kind})`});headerTools=k(()=>f0(this.node()));headerIsStale=k(()=>p0(this.node()));headerStaleTooltip=k(()=>h0(this.node(),_i.sidecar));onCloseClick(n){n.stopPropagation(),this.close.emit()}onFavoriteClick(n){n.stopPropagation(),this.favoriteToggle.emit(this.node().path)}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=Z({type:t,selectors:[["sm-inspector-header"]],viewQuery:function(e,i){e&1&&Ot(i.closeBtn,BJ,5),e&2&&gt()},inputs:{node:[1,"node"],mode:[1,"mode"],showActionMocks:[1,"showActionMocks"]},outputs:{close:"close",favoriteToggle:"favoriteToggle"},decls:21,vars:32,consts:[["closeBtn",""],["data-testid","inspector-title",1,"inspector__header"],["aria-hidden","true",1,"inspector__icon-box"],[3,"kind","provider","size"],[1,"inspector__content"],[1,"inspector__name-row"],["data-testid","inspector-title-text",1,"inspector__name"],["data-testid","inspector-path",1,"inspector__path-code"],[1,"inspector__actions-cluster"],["type","button","data-testid","inspector-favorite",1,"inspector__favorite",3,"click","pTooltip"],["aria-hidden","true",1,"pi"],["data-testid","inspector-stale-badge",1,"inspector__stale-icon",3,"pTooltip"],["data-testid","inspector-stability-tag",1,"inspector__stability-icon",3,"pTooltip"],["data-testid","inspector-version",1,"inspector__name-version"],["slot","inspector.header.badge.counter",3,"node"],["slot","inspector.header.badge.tag",3,"node"],["type","button","data-testid","inspector-close",1,"inspector__close",3,"pTooltip"],["data-testid","inspector-plugin-actions",1,"inspector__plugin-actions"],["data-testid","inspector-header-tools",1,"inspector__tools"],["aria-hidden","true",1,"pi","pi-clock"],["width","14","height","14","viewBox","0 0 24 24","fill","none","stroke","currentColor","stroke-width","2","stroke-linecap","round","stroke-linejoin","round","aria-hidden","true"],["d","M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2"],["d","M6.453 15h11.094"],["d","M8.5 2h7"],["aria-hidden","true",1,"pi","pi-ban"],["type","button","data-testid","inspector-close",1,"inspector__close",3,"click","pTooltip"],["aria-hidden","true",1,"pi","pi-times"],[1,"inspector__plugin-actions-label"],["type","button","data-testid","inspector-plugin-btn-summary",1,"inspector__plugin-btn"],["aria-hidden","true",1,"pi","pi-sparkles"],["type","button","data-testid","inspector-plugin-btn-audit",1,"inspector__plugin-btn"],["aria-hidden","true",1,"pi","pi-search"],["type","button","data-testid","inspector-plugin-btn-validate",1,"inspector__plugin-btn"],["aria-hidden","true",1,"pi","pi-check-circle"],[1,"inspector__tool-tag"]],template:function(e,i){if(e&1&&(h(0,"header",1)(1,"div",2),B(2,"sm-kind-icon",3),m(),h(3,"div",4)(4,"div",5)(5,"h2",6),y(6),m()(),h(7,"code",7),y(8),m()(),h(9,"div",8)(10,"button",9),W("click",function(r){return i.onFavoriteClick(r)}),B(11,"i",10),m(),P(12,zJ,2,1,"span",11),P(13,qJ,5,1,"span",12),P(14,VJ,2,1,"span",12),P(15,GJ,2,1,"span",13),B(16,"sm-view-contributions-host",14)(17,"sm-view-contributions-host",15),P(18,HJ,3,2,"button",16),m(),P(19,jJ,15,0,"div",17),P(20,WJ,3,0,"div",18),m()),e&2){let o,r=i.node();_t("--node-color",i.headerTitleColor()),se("inspector__header--skill",r.kind==="skill")("inspector__header--agent",r.kind==="agent")("inspector__header--command",r.kind==="command")("inspector__header--markdown",r.kind==="markdown"),l(2),D("kind",r.kind)("provider",r.provider)("size",18),l(4),b(r.frontmatter.name),l(2),b(r.path),l(2),se("inspector__favorite--on",r.isFavorite===!0),D("pTooltip",r.isFavorite===!0?i.cardTexts.favoriteRemoveTooltip:i.cardTexts.favoriteAddTooltip),$("aria-label",r.isFavorite===!0?i.cardTexts.ariaFavoriteRemove:i.cardTexts.ariaFavoriteAdd),l(),se("pi-star-fill",r.isFavorite===!0)("pi-star",r.isFavorite!==!0),l(),M(i.headerIsStale()?12:-1),l(),M(i.headerStability()==="experimental"?13:-1),l(),M(i.headerStability()==="deprecated"?14:-1),l(),M((o=i.headerVersion())?15:-1,o),l(),D("node",r),l(),D("node",r),l(),M(i.mode()==="embedded"?18:-1),l(),M(i.showActionMocks()?19:-1),l(),M(i.headerTools().length>0?20:-1)}},dependencies:[We,Ze,Ln,mn],styles:["[_nghost-%COMP%]{--hero-fg: #fff;--hero-fg-bold: rgba(255, 255, 255, .95);--hero-fg-soft: rgba(255, 255, 255, .85);--hero-fg-muted: rgba(255, 255, 255, .7);--hero-fg-faint: rgba(255, 255, 255, .5);--hero-divider: rgba(255, 255, 255, .18);--hero-divider-strong: rgba(255, 255, 255, .32);--hero-divider-stronger: rgba(255, 255, 255, .45);--hero-overlay: rgba(255, 255, 255, .08);--hero-overlay-soft: rgba(255, 255, 255, .16);--hero-overlay-strong: rgba(255, 255, 255, .2);--hero-overlay-hover: rgba(255, 255, 255, .26);--hero-warn-fg: #fde68a;--hero-slate-fg: #475569}.inspector__header[_ngcontent-%COMP%]{--accent: var(--sm-kind-markdown);position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;column-gap:.75rem;row-gap:.3rem;align-items:start;padding:.85rem 1rem;background:linear-gradient(to bottom,transparent 0%,transparent 75%,var(--sm-bg-content) 100%),color-mix(in srgb,var(--accent) 75%,var(--hero-slate-fg));color:var(--hero-fg);overflow:hidden}.inspector__header--skill[_ngcontent-%COMP%]{--accent: var(--sm-kind-skill)}.inspector__header--agent[_ngcontent-%COMP%]{--accent: var(--sm-kind-agent)}.inspector__header--command[_ngcontent-%COMP%]{--accent: var(--sm-kind-command)}.inspector__header--markdown[_ngcontent-%COMP%]{--accent: var(--sm-kind-markdown)}.inspector-view--embedded[_nghost-%COMP%] .inspector__header[_ngcontent-%COMP%], .inspector-view--embedded [_nghost-%COMP%] .inspector__header[_ngcontent-%COMP%]{margin:-1rem -1.1rem 0}.inspector__icon-box[_ngcontent-%COMP%]{width:42px;height:42px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:var(--hero-overlay-strong);color:var(--hero-fg);flex:none;font-size:1.1rem;grid-row:1 / span 3;align-self:center}.inspector__content[_ngcontent-%COMP%]{min-width:0;width:100%;display:flex;flex-direction:column;gap:.25rem}.inspector__name-row[_ngcontent-%COMP%]{display:flex;align-items:baseline;gap:.35rem;min-width:0}.inspector__name[_ngcontent-%COMP%]{margin:0;font-size:1.05rem;font-weight:600;line-height:1.25;letter-spacing:-.01em;word-break:break-word;color:var(--hero-fg);flex:0 1 auto;min-width:0}.inspector__path-code[_ngcontent-%COMP%]{font-family:var(--sm-font-mono);font-size:.7rem;color:var(--hero-fg-soft);background:var(--hero-overlay-soft);padding:.1rem .4rem;border-radius:var(--sm-radius-sm);word-break:break-all;align-self:flex-start;max-width:100%}.inspector__actions-cluster[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.3rem;align-self:center}.inspector__favorite[_ngcontent-%COMP%]{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;padding:0;cursor:pointer;color:var(--hero-fg-soft);border-radius:var(--sm-radius-md);flex:none;transition:background .12s ease,color .12s ease}.inspector__favorite[_ngcontent-%COMP%] .pi[_ngcontent-%COMP%]{font-size:.85rem;line-height:1}.inspector__favorite[_ngcontent-%COMP%]:hover{background:var(--hero-divider);color:var(--hero-fg)}.inspector__favorite[_ngcontent-%COMP%]:focus-visible{outline:2px solid var(--hero-fg-muted);outline-offset:1px}.inspector__favorite--on[_ngcontent-%COMP%]{color:var(--hero-fg)}.inspector__stability-icon[_ngcontent-%COMP%], .inspector__stale-icon[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;color:var(--hero-fg-soft);cursor:help}.inspector__stale-icon[_ngcontent-%COMP%]{color:var(--hero-warn-fg)}.inspector__stability-icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%], .inspector__stability-icon[_ngcontent-%COMP%] svg[_ngcontent-%COMP%], .inspector__stale-icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%], .inspector__stale-icon[_ngcontent-%COMP%] svg[_ngcontent-%COMP%]{font-size:.7rem;width:1em;height:1em;line-height:1}.inspector__close[_ngcontent-%COMP%]{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;background:var(--hero-overlay-soft);border:1px solid var(--hero-divider-strong);border-radius:var(--sm-radius-md);padding:0;margin-left:.25rem;color:var(--hero-fg);cursor:pointer;flex:none;transition:background .12s ease,border-color .12s ease}.inspector__close[_ngcontent-%COMP%] .pi[_ngcontent-%COMP%]{font-size:.75rem;line-height:1}.inspector__close[_ngcontent-%COMP%]:hover{background:var(--hero-overlay-hover);border-color:var(--hero-divider-stronger)}.inspector__close[_ngcontent-%COMP%]:focus-visible{outline:2px solid var(--hero-fg-muted);outline-offset:1px}.inspector__name-version[_ngcontent-%COMP%]{font-family:var(--sm-font-mono);font-size:.66rem;color:var(--hero-fg-bold);background:var(--hero-overlay-strong);padding:.06rem .4rem;border-radius:var(--sm-radius-sm);line-height:1.2;flex:none}.inspector__plugin-actions[_ngcontent-%COMP%]{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:.55rem}.inspector__plugin-actions-label[_ngcontent-%COMP%]{font-size:.6rem;text-transform:uppercase;letter-spacing:.06em;font-weight:600;color:var(--hero-fg-muted);margin-right:.15rem}.inspector__plugin-btn[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .75rem;border:1px solid var(--hero-divider-strong);border-radius:var(--sm-radius-pill);background:var(--hero-overlay-soft);color:var(--hero-fg);font-size:.78rem;font-weight:500;cursor:pointer;transition:background .12s ease,border-color .12s ease,transform .12s ease;font-family:inherit}.inspector__plugin-btn[_ngcontent-%COMP%]:hover{background:var(--hero-overlay-hover);border-color:var(--hero-divider-stronger)}.inspector__plugin-btn[_ngcontent-%COMP%]:active{transform:translateY(1px)}.inspector__plugin-btn[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:.85rem}.inspector__tools[_ngcontent-%COMP%]{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:.3rem;padding:.45rem 1rem .55rem;margin:.6rem -1rem -.85rem}.inspector__tool-tag[_ngcontent-%COMP%]{display:inline-flex;align-items:center;padding:.12rem .5rem;border-radius:var(--sm-radius-sm);background:var(--sm-bg-hover);color:var(--p-text-color);font-family:var(--sm-font-mono);font-size:.66rem;font-weight:500;line-height:1.3;flex:none}"],changeDetection:0})};function x_(t){cn(x_);let{path:n,dataSource:e,markdown:i}=t,o=U("idle"),r=U(null),a=0,s=async(d,f)=>{try{let p=await e.getNode(d,{includeBody:!0});if(f!==a)return;if(p===null){o.set("unavailable");return}let v=p.item.body;if(v===null){o.set("unavailable");return}if(v===void 0||v.trim().length===0){o.set("empty");return}let x=await i.render(v);if(f!==a)return;r.set(x),o.set("ready")}catch{if(f!==a)return;o.set("error")}};pe(()=>{let d=n(),f=++a;if(r.set(null),!d){o.set("idle");return}o.set("loading"),s(d,f)});let c=()=>{let d=n();if(!d||o()==="loading")return;let f=++a;r.set(null),o.set("loading"),s(d,f)};return{bodyState:o.asReadonly(),bodyHtml:r.asReadonly(),refresh:c}}function b_(t){cn(b_);let{node:n,sidecarService:e,confirmation:i}=t,o=zn,r=k(()=>{let w=n();if(!w)return!1;let T=w.sidecar;return!T||T.present===!1?!0:T.status==="fresh"?!1:u0(T)}),a=U(!1),s=U(null),c=k(()=>r()?o.bump.tooltipEnabled:o.bump.tooltipDisabledFresh),d=w=>{if(w instanceof nh)switch(w.code){case"sidecar-fresh":return`${o.bump.errorPrefix} ${o.bump.errorFresh}`;case"not-found":return`${o.bump.errorPrefix} ${o.bump.errorNotFound}`;default:return`${o.bump.errorPrefix} ${w.message||o.bump.errorGeneric}`}let T=w instanceof Error?w.message:String(w);return`${o.bump.errorPrefix} ${T||o.bump.errorGeneric}`},f=async w=>{if(!a()){a.set(!0),s.set(null);try{await e.bump(w,{confirm:!0})}catch(T){s.set(d(T))}finally{a.set(!1)}}},p=w=>{i.confirm({header:o.bump.consentHeader,message:o.bump.consentMessage,acceptLabel:o.bump.consentAccept,rejectLabel:o.bump.consentReject,acceptButtonProps:{severity:"primary"},rejectButtonProps:{severity:"secondary"},accept:()=>{f(w)}})},v=async()=>{let w=n();if(w&&r()&&!a()){a.set(!0),s.set(null);try{await e.bump(w.path)}catch(T){if(T instanceof nh&&T.code==="confirm-required"&&KJ(T.details)){p(w.path);return}s.set(d(T))}finally{a.set(!1)}}},x=()=>{s.set(null)};return{canBump:r,bumpInFlight:a.asReadonly(),bumpError:s.asReadonly(),bumpTooltip:c,onBumpClick:v,dismissBumpError:x}}function KJ(t){return typeof t!="object"||t===null?!1:t.key==="allowEditSmFiles"}function w_(t){cn(w_);let{path:n,pathSet:e,dataSource:i}=t,o=U(new Set),r=U(new Set),a=U(new Set);return pe(()=>{n(),o.set(new Set),r.set(new Set),a.set(new Set)}),{linkStatus:f=>e().has(f)||o().has(f)?"live":r().has(f)?"dead-confirmed":"dead-heuristic",isVerifying:f=>a().has(f),verifyDeadLink:async f=>{if(!(o().has(f)||r().has(f))&&!a().has(f)){a.update(p=>new Set(p).add(f));try{await i.getNode(f)===null?r.update(v=>new Set(v).add(f)):o.update(v=>new Set(v).add(f))}catch{}finally{a.update(p=>{let v=new Set(p);return v.delete(f),v})}}}}}function S_(t){cn(S_);let n=U(!1),e=U(!1),i=U(!1);return pe(()=>{t.path(),n.set(!1),e.set(!1),i.set(!1)}),{auditExpanded:n.asReadonly(),pluginsExpanded:e.asReadonly(),debugVisible:i.asReadonly(),toggleAudit:()=>n.update(o=>!o),togglePlugins:()=>e.update(o=>!o),toggleDebug:()=>i.update(o=>!o)}}var YJ=new Set(["inspector.body.panel.breakdown","inspector.body.panel.records","inspector.body.panel.tree","inspector.body.panel.key-values","inspector.body.panel.link-list","inspector.body.panel.markdown"]),XJ=new Set(["identity","annotations","settings","audit"]),ZJ=new Set(["agent","skill","command"]);function LM(t){let{node:n,texts:e}=t,i=k(()=>{let c=n()?.sidecar;if(!c||!c.present)return null;if(c.root)return c.root;let d={};return c.annotations&&(d.annotations=c.annotations),d}),o=k(()=>{let c=n()?.kind;return c!==void 0&&ZJ.has(c)}),r=k(()=>{let c=i();if(!c)return!1;for(let d of Object.keys(c))if(!XJ.has(d))return!0;return!1}),a=k(()=>{let c=n()?.contributions??[];for(let d of c)if(YJ.has(d.slot))return!0;return!1}),s=k(()=>{let c=i();if(!c)return e.audit.headerEmpty;let d=c.audit;if(typeof d!="object"||d===null)return e.audit.headerEmpty;let f=d,p=typeof f.lastBumpedAt=="string"?f.lastBumpedAt:null,v=typeof f.lastBumpedBy=="string"?f.lastBumpedBy:null;return p===null?e.audit.headerEmpty:e.audit.headerSummary(Po(p),v??"?")});return{sidecarRoot:i,hasVendorFrontmatter:o,hasPluginContributions:r,hasViewContributions:a,auditSummary:s}}function JJ(t,n){if(t&1&&(h(0,"section",0)(1,"div",1),B(2,"span",2),h(3,"p",3),y(4),m(),h(5,"p",4)(6,"span"),y(7),m(),h(8,"a",5),y(9),m(),h(10,"span"),y(11),m(),h(12,"a",6),y(13),m(),h(14,"span"),y(15),m()()()()),t&2){let e=g();l(4),b(e.texts.emptyNoSelection.title),l(3),b(e.texts.emptyNoSelection.descPrefix),l(2),b(e.texts.emptyNoSelection.listLink),l(2),b(e.texts.emptyNoSelection.descMiddle),l(2),b(e.texts.emptyNoSelection.graphLink),l(2),b(e.texts.emptyNoSelection.descSuffix)}}function eee(t,n){if(t&1&&(h(0,"section",0)(1,"div",7),B(2,"span",8),h(3,"p",3),y(4),m(),h(5,"p",4)(6,"code"),y(7),m(),h(8,"span"),y(9),m(),h(10,"a",5),y(11),m(),h(12,"span"),y(13),m()()()()),t&2){let e=g();l(4),b(e.texts.emptyNotFound.title),l(3),b(e.path()),l(2),b(e.texts.emptyNotFound.descSuffix),l(2),b(e.texts.emptyNotFound.backLink),l(2),b(e.texts.emptyNotFound.descAfterLink)}}function tee(t,n){if(t&1&&(h(0,"a",14),y(1),m()),t&2){let e=g(2);l(),b(e.texts.backToList)}}function nee(t,n){if(t&1&&(h(0,"div",15),B(1,"i",38),h(2,"span"),y(3),m()()),t&2){let e=g(2);l(3),b(e.texts.supersededByBanner(n))}}function iee(t,n){if(t&1){let e=de();h(0,"div",16)(1,"span"),y(2),m(),h(3,"button",39),W("click",function(){G(e);let o=g(2);return H(o.dismissBumpError())}),B(4,"i",40),m()()}t&2&&(l(2),b(n))}function oee(t,n){if(t&1&&(h(0,"p",17),y(1),m()),t&2){g();let e=ne(1);l(),b(e.description)}}function ree(t,n){if(t&1&&(h(0,"div",18),B(1,"sm-inspector-debug-panel",41),m()),t&2){g();let e=ne(0),i=g();l(),D("node",e)("sidecarRoot",i.sidecarRoot())("overlay",e.sidecar)}}function aee(t,n){if(t&1&&B(0,"sm-empty-state",42)(1,"sm-empty-state",43)(2,"sm-empty-state",44),t&2){let e=g(2);D("title",e.texts.placeholders.enrichmentTitle)("body",e.texts.placeholders.body),l(),D("title",e.texts.placeholders.summaryTitle)("body",e.texts.placeholders.body),l(),D("title",e.texts.placeholders.findingsTitle)("body",e.texts.placeholders.body)}}function see(t,n){if(t&1){let e=de();h(0,"p-card",20)(1,"sm-annotations-panel",45),W("openPath",function(o){G(e);let r=g(2);return H(r.openPath(o))})("tagClick",function(o){G(e);let r=g(2);return H(r.tagSelect.emit(o))}),m()()}if(t&2){g();let e=ne(0),i=g();D("header",i.texts.cardsAnnotations),l(),D("overlay",e.sidecar)("authorTags",i.authorTags())("knownPaths",i.pathSet())("activeTag",i.activeTag())}}function cee(t,n){if(t&1&&(h(0,"p-card",21),B(1,"sm-vendor-frontmatter",46),m()),t&2){g();let e=ne(0),i=ne(1),o=g();D("header",o.texts.cards.agent),l(),D("frontmatter",i)("kind",e.kind)("provider",e.provider)("knownPaths",o.pathSet())("onSkillClick",o.onSkillChip)}}function dee(t,n){if(t&1&&(h(0,"dt"),y(1),m(),h(2,"dd")(3,"code"),y(4),m()()),t&2){g();let e=ne(0),i=g();l(),b(i.texts.stats.bytes),l(3),b(e.bytesTotal)}}function lee(t,n){if(t&1&&(h(0,"dt"),y(1),m(),h(2,"dd")(3,"code"),y(4),m()()),t&2){g();let e=ne(0),i=g();l(),b(i.texts.stats.tokens),l(3),b(e.tokensTotal)}}function uee(t,n){if(t&1&&(y(0," \xB7 "),h(1,"code"),y(2),m(),y(3)),t&2){g();let e=ne(0),i=g();l(2),b(e.externalRefsCount),l(),Ue(" ",i.texts.stats.ext," ")}}function fee(t,n){if(t&1){let e=de();h(0,"button",47),W("click",function(){G(e);let o=g(2);return H(o.toggleAudit())}),B(1,"i",48),h(2,"span",49),y(3),m(),h(4,"span",50),y(5),m()()}if(t&2){let e=g(2);$("aria-expanded",e.auditExpanded()),l(),se("pi-chevron-right",!e.auditExpanded())("pi-chevron-down",e.auditExpanded()),l(2),b(e.texts.audit.header),l(2),Ue(" \xB7 ",e.auditSummary()," ")}}function pee(t,n){if(t&1&&B(0,"sm-inspector-audit-panel",28),t&2){let e=g(2);D("sidecarRoot",e.sidecarRoot())}}function hee(t,n){if(t&1){let e=de();h(0,"button",51),W("click",function(){G(e);let o=g(3);return H(o.togglePlugins())}),B(1,"i",48),h(2,"span",49),y(3),m()()}if(t&2){let e=g(3);$("aria-expanded",e.pluginsExpanded()),l(),se("pi-chevron-right",!e.pluginsExpanded())("pi-chevron-down",e.pluginsExpanded()),l(2),b(e.texts.pluginsHeader)}}function mee(t,n){if(t&1&&B(0,"sm-plugin-contributions",28),t&2){let e=g(3);D("sidecarRoot",e.sidecarRoot())}}function gee(t,n){if(t&1&&(h(0,"p-card",29),Ie(1,hee,4,6,"ng-template",27),P(2,mee,1,1,"sm-plugin-contributions",28),m()),t&2){let e=g(2);l(2),M(e.pluginsExpanded()?2:-1)}}function _ee(t,n){if(t&1&&(h(0,"p-card",30),B(1,"sm-inspector-slots-panel",52),m()),t&2){let e=g(2);l(),D("node",e.node())}}function yee(t,n){if(t&1){let e=de();h(0,"div",53)(1,"h3",54),y(2),m(),h(3,"p-button",55),W("onClick",function(){G(e);let o=g(2);return H(o.refreshBody())}),m()()}if(t&2){let e=g(2);l(2),b(e.texts.cards.body),l(),D("rounded",!0)("text",!0)("ariaLabel",e.texts.body.refreshLabel)("pTooltip",e.texts.body.refreshLabel)("disabled",e.bodyState()==="loading"||!e.path())("loading",e.bodyState()==="loading")}}function vee(t,n){if(t&1&&(h(0,"p",32),y(1),m()),t&2){let e=g(2);l(),b(e.texts.body.loading)}}function Cee(t,n){if(t&1&&(h(0,"p",33),y(1),m()),t&2){let e=g(2);l(),b(e.texts.body.empty)}}function xee(t,n){if(t&1&&(h(0,"p",34),y(1),m()),t&2){let e=g(2);l(),b(e.texts.body.unavailable)}}function bee(t,n){if(t&1&&(h(0,"p",35),y(1),m()),t&2){let e=g(2);l(),b(e.texts.body.renderError)}}function wee(t,n){if(t&1&&B(0,"div",36),t&2){let e=g(2);D("innerHTML",e.bodyHtml(),G_)}}function See(t,n){if(t&1){let e=de();yt(0)(1),h(2,"section",0)(3,"sm-inspector-header",9),W("close",function(){G(e);let o=g();return H(o.onHeaderClose())})("favoriteToggle",function(o){G(e);let r=g();return H(r.onHeaderFavoriteToggle(o))}),m(),h(4,"div",10)(5,"button",11),W("click",function(){G(e);let o=g();return H(o.toggleDebug())}),B(6,"i",12),m(),h(7,"p-button",13),W("onClick",function(){G(e);let o=g();return H(o.onBumpClick())}),m(),P(8,tee,2,1,"a",14),m(),P(9,nee,4,1,"div",15),P(10,iee,5,1,"div",16),P(11,oee,2,1,"p",17),P(12,ree,2,3,"div",18),h(13,"div",19),P(14,aee,3,6),P(15,see,2,5,"p-card",20),P(16,cee,2,6,"p-card",21),h(17,"div",22)(18,"sm-linked-nodes-panel",23),W("openPath",function(o){G(e);let r=g();return H(r.openPath(o))}),m()(),h(19,"p-card",24)(20,"dl",25),P(21,dee,5,2),P(22,lee,5,2),h(23,"dt"),y(24),m(),h(25,"dd")(26,"code"),y(27),m(),y(28),h(29,"code"),y(30),m(),y(31),P(32,uee,4,2),m()()(),h(33,"p-card",26),Ie(34,fee,6,7,"ng-template",27),P(35,pee,1,1,"sm-inspector-audit-panel",28),m(),P(36,gee,3,1,"p-card",29),P(37,_ee,2,1,"p-card",30),h(38,"p-card",31),Ie(39,yee,4,7,"ng-template",27),P(40,vee,2,1,"p",32)(41,Cee,2,1,"p",33)(42,xee,2,1,"p",34)(43,bee,2,1,"p",35)(44,wee,1,1,"div",36),m()(),B(45,"p-confirmdialog",37),m()}if(t&2){let e,i,o,r=g(),a=Xe(r.node());l();let s=Xe(a.frontmatter);l(2),D("node",a)("mode",r.mode())("showActionMocks",r.showActionMocks),l(2),se("inspector__debug-toggle--active",r.debugVisible()),D("pTooltip",r.texts.debugToggleTooltip),$("aria-label",r.texts.debugToggleAriaLabel)("aria-pressed",r.debugVisible()),l(2),D("label",r.texts.bump.label)("disabled",!r.canBump()||r.bumpInFlight())("loading",r.bumpInFlight())("pTooltip",r.bumpTooltip()),l(),M(r.mode()==="standalone"?8:-1),l(),M((e=r.headerSupersededBy())?9:-1,e),l(),M((i=r.bumpError())?10:-1,i),l(),M(s.description?11:-1),l(),M(r.debugVisible()?12:-1),l(2),M(r.mode()==="standalone"?14:-1),l(),M(a.sidecar!=null&&a.sidecar.present||r.authorTags().length>0?15:-1),l(),M(r.hasVendorFrontmatter()?16:-1),l(2),D("path",a.path),l(3),M(a.bytesTotal!==void 0?21:-1),l(),M(a.tokensTotal!==void 0?22:-1),l(2),b(r.texts.stats.links),l(3),b(a.linksOutCount??0),l(),Ue(" ",r.texts.stats.out," \xB7 "),l(2),b(a.linksInCount??0),l(),Ue(" ",r.texts.stats.in," "),l(),M(a.externalRefsCount!==void 0&&a.externalRefsCount>0?32:-1),l(3),M(r.auditExpanded()?35:-1),l(),M(r.hasPluginContributions()?36:-1),l(),M(r.hasViewContributions()?37:-1),l(3),M((o=r.bodyState())==="loading"?40:o==="empty"?41:o==="unavailable"?42:o==="error"?43:o==="ready"?44:-1),l(5),D("ariaLabel",r.texts.bump.consentDialogAriaLabel)}}var Lp=class t{loader=u(hn);router=u(da);dataSource=u(pn);markdown=u(g0);sidecarService=u(Sp);confirmation=u(Ei);texts=zn;cardTexts=_i;showActionMocks=xo.inspector.actionMocks;path=F(void 0);mode=F("standalone");activeTag=F(null);close=Ve();tagSelect=Ve();node=k(()=>{let n=this.path();return n?this.loader.nodes().find(e=>e.path===n)??null:null});pathSet=k(()=>{let n=new Set;for(let e of this.loader.nodes())n.add(e.path);return n});authorTags=k(()=>{let e=(this.node()?.frontmatter??{}).tags;if(!Array.isArray(e))return[];let i=e.filter(o=>typeof o=="string"&&o.length>0);return[...new Set(i)].sort()});headerSupersededBy=k(()=>{let n=this.node();if(!n)return null;let i=n.sidecar?.annotations?.supersededBy;if(typeof i=="string"&&i.length>0)return i;let o=va(n.frontmatter)?.supersededBy;return typeof o=="string"&&o.length>0?o:null});bodyHandle=x_({path:this.path,dataSource:this.dataSource,markdown:this.markdown});bodyState=this.bodyHandle.bodyState;bodyHtml=this.bodyHandle.bodyHtml;deadLink=w_({path:this.path,pathSet:this.pathSet,dataSource:this.dataSource});sectionCollapse=S_({path:this.path});auditExpanded=this.sectionCollapse.auditExpanded;pluginsExpanded=this.sectionCollapse.pluginsExpanded;debugVisible=this.sectionCollapse.debugVisible;derivations=LM({node:this.node,texts:this.texts});sidecarRoot=this.derivations.sidecarRoot;hasVendorFrontmatter=this.derivations.hasVendorFrontmatter;hasPluginContributions=this.derivations.hasPluginContributions;hasViewContributions=this.derivations.hasViewContributions;auditSummary=this.derivations.auditSummary;ngOnInit(){this.loader.nodes().length===0&&!this.loader.loading()&&this.loader.load()}openPath(n){this.router.navigate(["/graph"],{queryParams:{path:n}})}onSkillChip=n=>{this.openPath(n)};pathExists(n){return this.pathSet().has(n)}linkStatus(n){return this.deadLink.linkStatus(n)}isVerifying(n){return this.deadLink.isVerifying(n)}verifyDeadLink(n){return this.deadLink.verifyDeadLink(n)}refreshBody(){this.bodyHandle.refresh()}onHeaderFavoriteToggle(n){let e=this.node();!e||e.path!==n||this.loader.toggleFavorite(n,!e.isFavorite)}onHeaderClose(){this.close.emit()}toggleAudit(){this.sectionCollapse.toggleAudit()}togglePlugins(){this.sectionCollapse.togglePlugins()}toggleDebug(){this.sectionCollapse.toggleDebug()}bumpHandle=b_({node:this.node,sidecarService:this.sidecarService,confirmation:this.confirmation});canBump=this.bumpHandle.canBump;bumpInFlight=this.bumpHandle.bumpInFlight;bumpError=this.bumpHandle.bumpError;bumpTooltip=this.bumpHandle.bumpTooltip;onBumpClick(){return this.bumpHandle.onBumpClick()}dismissBumpError(){this.bumpHandle.dismissBumpError()}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=Z({type:t,selectors:[["sm-inspector-view"]],hostVars:2,hostBindings:function(e,i){e&2&&se("inspector-view--embedded",i.mode()==="embedded")},inputs:{path:[1,"path"],mode:[1,"mode"],activeTag:[1,"activeTag"]},outputs:{close:"close",tagSelect:"tagSelect"},features:[be([Ei])],decls:3,vars:1,consts:[["data-testid","inspector-view",1,"inspector"],["data-testid","inspector-empty-no-selection",1,"empty-state"],[1,"empty-state__icon","pi","pi-eye"],[1,"empty-state__title"],[1,"empty-state__desc"],["routerLink","/list",1,"inspector__back"],["routerLink","/graph",1,"inspector__back"],["data-testid","inspector-empty-not-found",1,"empty-state"],[1,"empty-state__icon","empty-state__icon--warn","pi","pi-question-circle"],[3,"close","favoriteToggle","node","mode","showActionMocks"],[1,"inspector__toolbar"],["type","button","data-testid","inspector-debug-toggle",1,"inspector__debug-toggle",3,"click","pTooltip"],["aria-hidden","true",1,"pi","pi-info-circle"],["icon","pi pi-arrow-up-right","severity","secondary","size","small","data-testid","inspector-bump",3,"onClick","label","disabled","loading","pTooltip"],["routerLink","/list","data-testid","inspector-back",1,"inspector__back"],["data-testid","inspector-superseded-banner",1,"inspector__superseded"],["data-testid","inspector-bump-error",1,"inspector__bump-error"],["data-testid","inspector-description",1,"inspector__desc"],["data-testid","inspector-debug-section",1,"inspector__debug"],[1,"inspector__grid"],["styleClass","inspector__card inspector__card--full","data-testid","inspector-card-annotations",3,"header"],["styleClass","inspector__card inspector__card--full","data-testid","inspector-card-vendor-frontmatter",3,"header"],["data-testid","inspector-card-linked-nodes",1,"inspector__card","inspector__card--full"],[3,"openPath","path"],["styleClass","inspector__card inspector__card--full inspector__card--stats","data-testid","inspector-card-stats"],[1,"kv"],["styleClass","inspector__card inspector__card--full inspector__card--collapsible","data-testid","inspector-card-audit"],["pTemplate","header"],[3,"sidecarRoot"],["styleClass","inspector__card inspector__card--full inspector__card--collapsible","data-testid","inspector-card-plugins"],["styleClass","inspector__card inspector__card--full","data-testid","inspector-card-view-contributions"],["styleClass","inspector__card inspector__card--full inspector__body","data-testid","inspector-card-body"],["data-testid","inspector-body-loading",1,"inspector__body-status"],["data-testid","inspector-body-empty",1,"inspector__body-status"],["data-testid","inspector-body-unavailable",1,"inspector__body-status","inspector__body-status--warn"],["data-testid","inspector-body-error",1,"inspector__body-status","inspector__body-status--warn"],["data-testid","inspector-body-rendered",1,"inspector__body-rendered",3,"innerHTML"],["data-testid","inspector-bump-consent","styleClass","sm-consent-dialog",3,"ariaLabel"],["aria-hidden","true",1,"pi","pi-arrow-up-right"],["type","button","aria-label","Dismiss",1,"inspector__bump-error-dismiss",3,"click"],["aria-hidden","true",1,"pi","pi-times"],[3,"node","sidecarRoot","overlay"],["icon","pi pi-sparkles","testId","inspector-empty-enrichment",3,"title","body"],["icon","pi pi-file","testId","inspector-empty-summary",3,"title","body"],["icon","pi pi-search","testId","inspector-empty-findings",3,"title","body"],[3,"openPath","tagClick","overlay","authorTags","knownPaths","activeTag"],[3,"frontmatter","kind","provider","knownPaths","onSkillClick"],["type","button","data-testid","inspector-audit-toggle",1,"inspector__collapsible-header",3,"click"],["aria-hidden","true",1,"pi"],[1,"inspector__collapsible-title"],["data-testid","inspector-audit-summary",1,"inspector__collapsible-summary"],["type","button","data-testid","inspector-plugins-toggle",1,"inspector__collapsible-header",3,"click"],[3,"node"],[1,"inspector__body-header"],[1,"inspector__body-title"],["icon","pi pi-refresh","severity","secondary","data-testid","inspector-body-refresh",3,"onClick","rounded","text","ariaLabel","pTooltip","disabled","loading"]],template:function(e,i){e&1&&P(0,JJ,16,6,"section",0)(1,eee,14,5,"section",0)(2,See,46,36,"section",0),e&2&&M(i.path()?i.node()?2:1:0)},dependencies:[X_,wp,$r,un,Mi,Pi,We,Ze,_a,ga,Ep,Pp,Tp,Dp,kp,Op,Np,Ap,Fp],styles:["[_nghost-%COMP%]{display:block}.inspector[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1rem}.inspector--empty[_ngcontent-%COMP%]{padding:2rem;color:var(--p-text-muted-color)}.inspector--empty[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{background:var(--sm-bg-hover);padding:.1rem .35rem;border-radius:var(--sm-radius-md);font-size:.85rem}.inspector__toolbar[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:.4rem}.inspector__back[_ngcontent-%COMP%]{font-size:.9rem;color:var(--p-primary-color)}.inspector__desc[_ngcontent-%COMP%]{margin:0;color:var(--p-text-color);font-size:1rem;line-height:1.5;max-width:70ch}.inspector__grid[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.inspector__card--full[_ngcontent-%COMP%]{grid-column:1 / -1}[_nghost-%COMP%] .inspector__card--hero{border-left:3px solid var(--p-primary-color)}.inspector__body[_ngcontent-%COMP%]{display:block}.inspector__body-header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.75rem 1rem 0}.inspector__body-title[_ngcontent-%COMP%]{margin:0;font-size:.95rem;font-weight:600}.inspector__body-status[_ngcontent-%COMP%]{margin:0;font-size:.85rem;color:var(--p-text-muted-color);font-style:italic}.inspector__body-status--warn[_ngcontent-%COMP%]{color:var(--sm-severity-warn);font-style:normal}.inspector__body-rendered[_ngcontent-%COMP%]{font-size:.9rem;line-height:1.55;max-height:600px;overflow:auto}.inspector__body-rendered[_ngcontent-%COMP%] [_ngcontent-%COMP%]:first-child{margin-top:0}.inspector__body-rendered[_ngcontent-%COMP%] [_ngcontent-%COMP%]:last-child{margin-bottom:0}.inspector__body-rendered[_ngcontent-%COMP%] pre[_ngcontent-%COMP%]{background:var(--p-content-background);border:1px solid var(--p-content-border-color);border-radius:var(--sm-radius-md);padding:.75rem;margin:.75rem 0;white-space:pre-wrap;word-wrap:break-word;font-family:var(--sm-font-mono);font-size:.85rem;line-height:1.5;overflow-x:auto}.inspector__body-rendered[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{background:var(--p-content-background);padding:.1rem .3rem;border-radius:var(--sm-radius-sm);font-family:var(--sm-font-mono);font-size:.85em}.inspector__body-rendered[_ngcontent-%COMP%] pre[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{background:transparent;padding:0;border-radius:0}.kv[_ngcontent-%COMP%]{display:grid;grid-template-columns:max-content 1fr;gap:.25rem .75rem;margin:0 0 .5rem;font-size:.9rem}.kv[_ngcontent-%COMP%] dt[_ngcontent-%COMP%]{color:var(--p-text-muted-color);font-weight:500}.kv[_ngcontent-%COMP%] dd[_ngcontent-%COMP%]{margin:0;word-break:break-word}.kv[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{background:var(--sm-bg-hover);padding:.1rem .35rem;border-radius:var(--sm-radius-md);font-size:.85rem}.kv[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{color:var(--p-primary-color);word-break:break-all}h4[_ngcontent-%COMP%]{margin:1rem 0 .5rem;font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;color:var(--p-text-muted-color);font-weight:600}h4[_ngcontent-%COMP%]:first-child{margin-top:0}.chips[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:.4rem}[_nghost-%COMP%] .chip--link{cursor:pointer;background:var(--p-primary-50);color:var(--p-primary-color);transition:background .15s ease}[_nghost-%COMP%] .chip--link:hover{background:var(--p-primary-100)}[_nghost-%COMP%] .chip--warn{background:var(--sm-kind-command-bg);color:var(--sm-kind-command-fg)}.rel-chip[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:.2rem}.rel-chip__verify[_ngcontent-%COMP%]{background:none;border:none;padding:.15rem;cursor:pointer;color:var(--p-text-muted-color);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;transition:color .15s ease,background .15s ease}.rel-chip__verify[_ngcontent-%COMP%]:hover:not(:disabled){color:var(--p-primary-color);background:var(--sm-bg-hover)}.rel-chip__verify[_ngcontent-%COMP%]:disabled{cursor:wait;opacity:.6}.rel-chip__verify--confirmed[_ngcontent-%COMP%]{color:var(--sm-severity-error)}.rel-chip__verify--confirmed[_ngcontent-%COMP%]:hover:not(:disabled){color:var(--sm-severity-error)}.args[_ngcontent-%COMP%]{margin:0;padding-left:1.25rem;display:flex;flex-direction:column;gap:.35rem;font-size:.9rem}.args[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{background:var(--sm-bg-hover);padding:.1rem .35rem;border-radius:var(--sm-radius-md);font-size:.8rem;font-weight:500}.args__type[_ngcontent-%COMP%]{color:var(--p-text-muted-color);font-style:italic;margin-left:.25rem}.args__req[_ngcontent-%COMP%]{display:inline-block;margin-left:.5rem;padding:0 .4rem;font-size:.7rem;background:var(--sm-kind-command-bg);color:var(--sm-kind-command-fg);border-radius:var(--sm-radius-md);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.cond[_ngcontent-%COMP%]{font-size:.8rem;word-break:break-all}@media(max-width:1280px){.inspector__grid[_ngcontent-%COMP%]{grid-template-columns:1fr}}.inspector-view--embedded[_nghost-%COMP%] .inspector[_ngcontent-%COMP%]{padding:1rem 1.1rem 1.25rem;gap:.85rem}.inspector-view--embedded[_nghost-%COMP%] .inspector__desc[_ngcontent-%COMP%]{font-size:.9rem;line-height:1.45;max-width:none}.inspector-view--embedded[_nghost-%COMP%] .inspector__grid[_ngcontent-%COMP%]{grid-template-columns:1fr;gap:.75rem}.inspector-view--embedded[_nghost-%COMP%] [data-testid=inspector-card-annotations][_ngcontent-%COMP%]{order:1}.inspector-view--embedded[_nghost-%COMP%] [data-testid=inspector-card-vendor-frontmatter][_ngcontent-%COMP%]{order:2}.inspector-view--embedded[_nghost-%COMP%] [data-testid=inspector-card-linked-nodes][_ngcontent-%COMP%]{order:3}.inspector-view--embedded[_nghost-%COMP%] [data-testid=inspector-card-stats][_ngcontent-%COMP%]{order:4}.inspector-view--embedded[_nghost-%COMP%] [data-testid=inspector-card-audit][_ngcontent-%COMP%]{order:5}.inspector-view--embedded[_nghost-%COMP%] [data-testid=inspector-card-plugins][_ngcontent-%COMP%]{order:6}.inspector-view--embedded[_nghost-%COMP%] [data-testid=inspector-card-body][_ngcontent-%COMP%]{order:7}.inspector-view--embedded[_nghost-%COMP%] .inspector__card .p-card-body{padding:.75rem .85rem}.inspector-view--embedded[_nghost-%COMP%] .inspector__card .p-card-title{font-size:.9rem;margin-bottom:.5rem}.inspector-view--embedded[_nghost-%COMP%] .inspector__card[_ngcontent-%COMP%] h4[_ngcontent-%COMP%]{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--p-text-muted-color);margin:.5rem 0 .35rem}.inspector-view--embedded[_nghost-%COMP%] .inspector__card[_ngcontent-%COMP%] .kv[_ngcontent-%COMP%]{display:grid;grid-template-columns:max-content 1fr;gap:.25rem .65rem;margin:0;font-size:.85rem}.inspector-view--embedded[_nghost-%COMP%] .inspector__card[_ngcontent-%COMP%] .kv[_ngcontent-%COMP%] dt[_ngcontent-%COMP%]{color:var(--p-text-muted-color)}.inspector-view--embedded[_nghost-%COMP%] .inspector__card[_ngcontent-%COMP%] .kv[_ngcontent-%COMP%] dd[_ngcontent-%COMP%]{margin:0;word-break:break-word}.inspector__bump-error[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.6rem;padding:.5rem .75rem;margin:.5rem 0;background:var(--sm-severity-error-bg);color:var(--sm-severity-error);border-radius:var(--sm-radius-md);font-size:.85rem}.inspector__bump-error-dismiss[_ngcontent-%COMP%]{margin-left:auto;background:transparent;border:none;cursor:pointer;color:inherit;display:inline-flex;align-items:center;justify-content:center}.inspector__superseded[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem;padding:.55rem .85rem;background:var(--sm-severity-warn-bg);color:var(--sm-severity-warn);border-radius:var(--sm-radius-md);font-size:.85rem;font-family:var(--sm-font-mono)}.inspector__debug-toggle[_ngcontent-%COMP%]{width:30px;height:30px;border-radius:50%;border:1px solid var(--sm-border);background:transparent;color:var(--sm-text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:color .12s ease,border-color .12s ease,background .12s ease}.inspector__debug-toggle[_ngcontent-%COMP%]:hover{color:var(--p-primary-color);border-color:var(--p-primary-color)}.inspector__debug-toggle--active[_ngcontent-%COMP%]{color:var(--p-primary-color);border-color:var(--p-primary-color);background:color-mix(in srgb,var(--p-primary-color) 10%,transparent)}.inspector__debug[_ngcontent-%COMP%]{padding:.6rem .85rem;border:1px solid var(--sm-border);border-radius:var(--sm-radius-md);background:var(--sm-bg-hover)}.inspector__collapsible-header[_ngcontent-%COMP%]{width:100%;display:flex;align-items:center;gap:.5rem;padding:.65rem 1rem;background:transparent;border:none;text-align:left;cursor:pointer;font-size:.9rem;color:var(--p-text-color)}.inspector__collapsible-header[_ngcontent-%COMP%]:hover{background:var(--sm-bg-hover)}.inspector__collapsible-title[_ngcontent-%COMP%]{font-weight:600}.inspector__collapsible-summary[_ngcontent-%COMP%]{color:var(--sm-text-muted);font-weight:400;font-size:.85rem;font-style:italic}"],changeDetection:0})};var Bp=class t{smMiddleMousePan=F.required();origin=null;rafId=null;pendingPosition=null;onMouseDown(n){if(n.button!==1)return;let e=this.smMiddleMousePan();if(!e)return;n.preventDefault();let i=e.getPosition()??{x:0,y:0};this.origin={mouseX:n.clientX,mouseY:n.clientY,canvasX:i.x,canvasY:i.y},document.addEventListener("mousemove",this.onMove),document.addEventListener("mouseup",this.onEnd)}ngOnDestroy(){this.onEnd()}onMove=n=>{this.origin&&(this.pendingPosition={x:this.origin.canvasX+(n.clientX-this.origin.mouseX),y:this.origin.canvasY+(n.clientY-this.origin.mouseY)},this.rafId===null&&(this.rafId=requestAnimationFrame(()=>{this.rafId=null;let e=this.smMiddleMousePan();!e||!this.pendingPosition||(e.setPosition(this.pendingPosition),e.redraw())})))};onEnd=()=>{this.rafId!==null&&(cancelAnimationFrame(this.rafId),this.rafId=null),this.pendingPosition=null,this.origin=null,document.removeEventListener("mousemove",this.onMove),document.removeEventListener("mouseup",this.onEnd),this.smMiddleMousePan()?.emitCanvasChangeEvent()};static \u0275fac=function(e){return new(e||t)};static \u0275dir=ke({type:t,selectors:[["","smMiddleMousePan",""]],hostBindings:function(e,i){e&1&&W("mousedown",function(r){return i.onMouseDown(r)})},inputs:{smMiddleMousePan:[1,"smMiddleMousePan"]}})};function I_(t,n){var e,i=1;t==null&&(t=0),n==null&&(n=0);function o(){var r,a=e.length,s,c=0,d=0;for(r=0;r<a;++r)s=e[r],c+=s.x,d+=s.y;for(c=(c/a-t)*i,d=(d/a-n)*i,r=0;r<a;++r)s=e[r],s.x-=c,s.y-=d}return o.initialize=function(r){e=r},o.x=function(r){return arguments.length?(t=+r,o):t},o.y=function(r){return arguments.length?(n=+r,o):n},o.strength=function(r){return arguments.length?(i=+r,o):i},o}function BM(t){let n=+this._x.call(null,t),e=+this._y.call(null,t);return zM(this.cover(n,e),n,e,t)}function zM(t,n,e,i){if(isNaN(n)||isNaN(e))return t;var o,r=t._root,a={data:i},s=t._x0,c=t._y0,d=t._x1,f=t._y1,p,v,x,w,T,E,O,A;if(!r)return t._root=a,t;for(;r.length;)if((T=n>=(p=(s+d)/2))?s=p:d=p,(E=e>=(v=(c+f)/2))?c=v:f=v,o=r,!(r=r[O=E<<1|T]))return o[O]=a,t;if(x=+t._x.call(null,r.data),w=+t._y.call(null,r.data),n===x&&e===w)return a.next=r,o?o[O]=a:t._root=a,t;do o=o?o[O]=new Array(4):t._root=new Array(4),(T=n>=(p=(s+d)/2))?s=p:d=p,(E=e>=(v=(c+f)/2))?c=v:f=v;while((O=E<<1|T)===(A=(w>=v)<<1|x>=p));return o[A]=r,o[O]=a,t}function qM(t){var n,e,i=t.length,o,r,a=new Array(i),s=new Array(i),c=1/0,d=1/0,f=-1/0,p=-1/0;for(e=0;e<i;++e)isNaN(o=+this._x.call(null,n=t[e]))||isNaN(r=+this._y.call(null,n))||(a[e]=o,s[e]=r,o<c&&(c=o),o>f&&(f=o),r<d&&(d=r),r>p&&(p=r));if(c>f||d>p)return this;for(this.cover(c,d).cover(f,p),e=0;e<i;++e)zM(this,a[e],s[e],t[e]);return this}function VM(t,n){if(isNaN(t=+t)||isNaN(n=+n))return this;var e=this._x0,i=this._y0,o=this._x1,r=this._y1;if(isNaN(e))o=(e=Math.floor(t))+1,r=(i=Math.floor(n))+1;else{for(var a=o-e||1,s=this._root,c,d;e>t||t>=o||i>n||n>=r;)switch(d=(n<i)<<1|t<e,c=new Array(4),c[d]=s,s=c,a*=2,d){case 0:o=e+a,r=i+a;break;case 1:e=o-a,r=i+a;break;case 2:o=e+a,i=r-a;break;case 3:e=o-a,i=r-a;break}this._root&&this._root.length&&(this._root=s)}return this._x0=e,this._y0=i,this._x1=o,this._y1=r,this}function GM(){var t=[];return this.visit(function(n){if(!n.length)do t.push(n.data);while(n=n.next)}),t}function HM(t){return arguments.length?this.cover(+t[0][0],+t[0][1]).cover(+t[1][0],+t[1][1]):isNaN(this._x0)?void 0:[[this._x0,this._y0],[this._x1,this._y1]]}function Qe(t,n,e,i,o){this.node=t,this.x0=n,this.y0=e,this.x1=i,this.y1=o}function jM(t,n,e){var i,o=this._x0,r=this._y0,a,s,c,d,f=this._x1,p=this._y1,v=[],x=this._root,w,T;for(x&&v.push(new Qe(x,o,r,f,p)),e==null?e=1/0:(o=t-e,r=n-e,f=t+e,p=n+e,e*=e);w=v.pop();)if(!(!(x=w.node)||(a=w.x0)>f||(s=w.y0)>p||(c=w.x1)<o||(d=w.y1)<r))if(x.length){var E=(a+c)/2,O=(s+d)/2;v.push(new Qe(x[3],E,O,c,d),new Qe(x[2],a,O,E,d),new Qe(x[1],E,s,c,O),new Qe(x[0],a,s,E,O)),(T=(n>=O)<<1|t>=E)&&(w=v[v.length-1],v[v.length-1]=v[v.length-1-T],v[v.length-1-T]=w)}else{var A=t-+this._x.call(null,x.data),V=n-+this._y.call(null,x.data),q=A*A+V*V;if(q<e){var X=Math.sqrt(e=q);o=t-X,r=n-X,f=t+X,p=n+X,i=x.data}}return i}function UM(t){if(isNaN(f=+this._x.call(null,t))||isNaN(p=+this._y.call(null,t)))return this;var n,e=this._root,i,o,r,a=this._x0,s=this._y0,c=this._x1,d=this._y1,f,p,v,x,w,T,E,O;if(!e)return this;if(e.length)for(;;){if((w=f>=(v=(a+c)/2))?a=v:c=v,(T=p>=(x=(s+d)/2))?s=x:d=x,n=e,!(e=e[E=T<<1|w]))return this;if(!e.length)break;(n[E+1&3]||n[E+2&3]||n[E+3&3])&&(i=n,O=E)}for(;e.data!==t;)if(o=e,!(e=e.next))return this;return(r=e.next)&&delete e.next,o?(r?o.next=r:delete o.next,this):n?(r?n[E]=r:delete n[E],(e=n[0]||n[1]||n[2]||n[3])&&e===(n[3]||n[2]||n[1]||n[0])&&!e.length&&(i?i[O]=e:this._root=e),this):(this._root=r,this)}function WM(t){for(var n=0,e=t.length;n<e;++n)this.remove(t[n]);return this}function $M(){return this._root}function KM(){var t=0;return this.visit(function(n){if(!n.length)do++t;while(n=n.next)}),t}function YM(t){var n=[],e,i=this._root,o,r,a,s,c;for(i&&n.push(new Qe(i,this._x0,this._y0,this._x1,this._y1));e=n.pop();)if(!t(i=e.node,r=e.x0,a=e.y0,s=e.x1,c=e.y1)&&i.length){var d=(r+s)/2,f=(a+c)/2;(o=i[3])&&n.push(new Qe(o,d,f,s,c)),(o=i[2])&&n.push(new Qe(o,r,f,d,c)),(o=i[1])&&n.push(new Qe(o,d,a,s,f)),(o=i[0])&&n.push(new Qe(o,r,a,d,f))}return this}function XM(t){var n=[],e=[],i;for(this._root&&n.push(new Qe(this._root,this._x0,this._y0,this._x1,this._y1));i=n.pop();){var o=i.node;if(o.length){var r,a=i.x0,s=i.y0,c=i.x1,d=i.y1,f=(a+c)/2,p=(s+d)/2;(r=o[0])&&n.push(new Qe(r,a,s,f,p)),(r=o[1])&&n.push(new Qe(r,f,s,c,p)),(r=o[2])&&n.push(new Qe(r,a,p,f,d)),(r=o[3])&&n.push(new Qe(r,f,p,c,d))}e.push(i)}for(;i=e.pop();)t(i.node,i.x0,i.y0,i.x1,i.y1);return this}function ZM(t){return t[0]}function QM(t){return arguments.length?(this._x=t,this):this._x}function JM(t){return t[1]}function eD(t){return arguments.length?(this._y=t,this):this._y}function yi(t,n,e){var i=new T_(n??ZM,e??JM,NaN,NaN,NaN,NaN);return t==null?i:i.addAll(t)}function T_(t,n,e,i,o,r){this._x=t,this._y=n,this._x0=e,this._y0=i,this._x1=o,this._y1=r,this._root=void 0}function tD(t){for(var n={data:t.data},e=n;t=t.next;)e=e.next={data:t.data};return n}var lt=yi.prototype=T_.prototype;lt.copy=function(){var t=new T_(this._x,this._y,this._x0,this._y0,this._x1,this._y1),n=this._root,e,i;if(!n)return t;if(!n.length)return t._root=tD(n),t;for(e=[{source:n,target:t._root=new Array(4)}];n=e.pop();)for(var o=0;o<4;++o)(i=n.source[o])&&(i.length?e.push({source:i,target:n.target[o]=new Array(4)}):n.target[o]=tD(i));return t};lt.add=BM;lt.addAll=qM;lt.cover=VM;lt.data=GM;lt.extent=HM;lt.find=jM;lt.remove=UM;lt.removeAll=WM;lt.root=$M;lt.size=KM;lt.visit=YM;lt.visitAfter=XM;lt.x=QM;lt.y=eD;function Ke(t){return function(){return t}}function Ft(t){return(t()-.5)*1e-6}function Iee(t){return t.x+t.vx}function Tee(t){return t.y+t.vy}function E_(t){var n,e,i,o=1,r=1;typeof t!="function"&&(t=Ke(t==null?1:+t));function a(){for(var d,f=n.length,p,v,x,w,T,E,O=0;O<r;++O)for(p=yi(n,Iee,Tee).visitAfter(s),d=0;d<f;++d)v=n[d],T=e[v.index],E=T*T,x=v.x+v.vx,w=v.y+v.vy,p.visit(A);function A(V,q,X,ue,qe){var ye=V.data,Je=V.r,fe=T+Je;if(ye){if(ye.index>v.index){var _e=x-ye.x-ye.vx,nt=w-ye.y-ye.vy,De=_e*_e+nt*nt;De<fe*fe&&(_e===0&&(_e=Ft(i),De+=_e*_e),nt===0&&(nt=Ft(i),De+=nt*nt),De=(fe-(De=Math.sqrt(De)))/De*o,v.vx+=(_e*=De)*(fe=(Je*=Je)/(E+Je)),v.vy+=(nt*=De)*fe,ye.vx-=_e*(fe=1-fe),ye.vy-=nt*fe)}return}return q>x+fe||ue<x-fe||X>w+fe||qe<w-fe}}function s(d){if(d.data)return d.r=e[d.data.index];for(var f=d.r=0;f<4;++f)d[f]&&d[f].r>d.r&&(d.r=d[f].r)}function c(){if(n){var d,f=n.length,p;for(e=new Array(f),d=0;d<f;++d)p=n[d],e[p.index]=+t(p,d,n)}}return a.initialize=function(d,f){n=d,i=f,c()},a.iterations=function(d){return arguments.length?(r=+d,a):r},a.strength=function(d){return arguments.length?(o=+d,a):o},a.radius=function(d){return arguments.length?(t=typeof d=="function"?d:Ke(+d),c(),a):t},a}function Eee(t){return t.index}function nD(t,n){var e=t.get(n);if(!e)throw new Error("node not found: "+n);return e}function P_(t){var n=Eee,e=p,i,o=Ke(30),r,a,s,c,d,f=1;t==null&&(t=[]);function p(E){return 1/Math.min(s[E.source.index],s[E.target.index])}function v(E){for(var O=0,A=t.length;O<f;++O)for(var V=0,q,X,ue,qe,ye,Je,fe;V<A;++V)q=t[V],X=q.source,ue=q.target,qe=ue.x+ue.vx-X.x-X.vx||Ft(d),ye=ue.y+ue.vy-X.y-X.vy||Ft(d),Je=Math.sqrt(qe*qe+ye*ye),Je=(Je-r[V])/Je*E*i[V],qe*=Je,ye*=Je,ue.vx-=qe*(fe=c[V]),ue.vy-=ye*fe,X.vx+=qe*(fe=1-fe),X.vy+=ye*fe}function x(){if(a){var E,O=a.length,A=t.length,V=new Map(a.map((X,ue)=>[n(X,ue,a),X])),q;for(E=0,s=new Array(O);E<A;++E)q=t[E],q.index=E,typeof q.source!="object"&&(q.source=nD(V,q.source)),typeof q.target!="object"&&(q.target=nD(V,q.target)),s[q.source.index]=(s[q.source.index]||0)+1,s[q.target.index]=(s[q.target.index]||0)+1;for(E=0,c=new Array(A);E<A;++E)q=t[E],c[E]=s[q.source.index]/(s[q.source.index]+s[q.target.index]);i=new Array(A),w(),r=new Array(A),T()}}function w(){if(a)for(var E=0,O=t.length;E<O;++E)i[E]=+e(t[E],E,t)}function T(){if(a)for(var E=0,O=t.length;E<O;++E)r[E]=+o(t[E],E,t)}return v.initialize=function(E,O){a=E,d=O,x()},v.links=function(E){return arguments.length?(t=E,x(),v):t},v.id=function(E){return arguments.length?(n=E,v):n},v.iterations=function(E){return arguments.length?(f=+E,v):f},v.strength=function(E){return arguments.length?(e=typeof E=="function"?E:Ke(+E),w(),v):e},v.distance=function(E){return arguments.length?(o=typeof E=="function"?E:Ke(+E),T(),v):o},v}var Pee={value:()=>{}};function oD(){for(var t=0,n=arguments.length,e={},i;t<n;++t){if(!(i=arguments[t]+"")||i in e||/[\s.]/.test(i))throw new Error("illegal type: "+i);e[i]=[]}return new zp(e)}function zp(t){this._=t}function Mee(t,n){return t.trim().split(/^|\s+/).map(function(e){var i="",o=e.indexOf(".");if(o>=0&&(i=e.slice(o+1),e=e.slice(0,o)),e&&!n.hasOwnProperty(e))throw new Error("unknown type: "+e);return{type:e,name:i}})}zp.prototype=oD.prototype={constructor:zp,on:function(t,n){var e=this._,i=Mee(t+"",e),o,r=-1,a=i.length;if(arguments.length<2){for(;++r<a;)if((o=(t=i[r]).type)&&(o=Dee(e[o],t.name)))return o;return}if(n!=null&&typeof n!="function")throw new Error("invalid callback: "+n);for(;++r<a;)if(o=(t=i[r]).type)e[o]=iD(e[o],t.name,n);else if(n==null)for(o in e)e[o]=iD(e[o],t.name,null);return this},copy:function(){var t={},n=this._;for(var e in n)t[e]=n[e].slice();return new zp(t)},call:function(t,n){if((o=arguments.length-2)>0)for(var e=new Array(o),i=0,o,r;i<o;++i)e[i]=arguments[i+2];if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(r=this._[t],i=0,o=r.length;i<o;++i)r[i].value.apply(n,e)},apply:function(t,n,e){if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(var i=this._[t],o=0,r=i.length;o<r;++o)i[o].value.apply(n,e)}};function Dee(t,n){for(var e=0,i=t.length,o;e<i;++e)if((o=t[e]).name===n)return o.value}function iD(t,n,e){for(var i=0,o=t.length;i<o;++i)if(t[i].name===n){t[i]=Pee,t=t.slice(0,i).concat(t.slice(i+1));break}return e!=null&&t.push({name:n,value:e}),t}var M_=oD;var bo=0,Yr=0,Kr=0,aD=1e3,qp,Xr,Vp=0,vi=0,Gp=0,Zr=typeof performance=="object"&&performance.now?performance:Date,sD=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(t){setTimeout(t,17)};function O_(){return vi||(sD(kee),vi=Zr.now()+Gp)}function kee(){vi=0}function D_(){this._call=this._time=this._next=null}D_.prototype=Hp.prototype={constructor:D_,restart:function(t,n,e){if(typeof t!="function")throw new TypeError("callback is not a function");e=(e==null?O_():+e)+(n==null?0:+n),!this._next&&Xr!==this&&(Xr?Xr._next=this:qp=this,Xr=this),this._call=t,this._time=e,k_()},stop:function(){this._call&&(this._call=null,this._time=1/0,k_())}};function Hp(t,n,e){var i=new D_;return i.restart(t,n,e),i}function cD(){O_(),++bo;for(var t=qp,n;t;)(n=vi-t._time)>=0&&t._call.call(void 0,n),t=t._next;--bo}function rD(){vi=(Vp=Zr.now())+Gp,bo=Yr=0;try{cD()}finally{bo=0,Nee(),vi=0}}function Oee(){var t=Zr.now(),n=t-Vp;n>aD&&(Gp-=n,Vp=t)}function Nee(){for(var t,n=qp,e,i=1/0;n;)n._call?(i>n._time&&(i=n._time),t=n,n=n._next):(e=n._next,n._next=null,n=t?t._next=e:qp=e);Xr=t,k_(i)}function k_(t){if(!bo){Yr&&(Yr=clearTimeout(Yr));var n=t-vi;n>24?(t<1/0&&(Yr=setTimeout(rD,t-Zr.now()-Gp)),Kr&&(Kr=clearInterval(Kr))):(Kr||(Vp=Zr.now(),Kr=setInterval(Oee,aD)),bo=1,sD(rD))}}function dD(){let t=1;return()=>(t=(1664525*t+1013904223)%4294967296)/4294967296}function lD(t){return t.x}function uD(t){return t.y}var Ree=10,Aee=Math.PI*(3-Math.sqrt(5));function N_(t){var n,e=1,i=.001,o=1-Math.pow(i,1/300),r=0,a=.6,s=new Map,c=Hp(p),d=M_("tick","end"),f=dD();t==null&&(t=[]);function p(){v(),d.call("tick",n),e<i&&(c.stop(),d.call("end",n))}function v(T){var E,O=t.length,A;T===void 0&&(T=1);for(var V=0;V<T;++V)for(e+=(r-e)*o,s.forEach(function(q){q(e)}),E=0;E<O;++E)A=t[E],A.fx==null?A.x+=A.vx*=a:(A.x=A.fx,A.vx=0),A.fy==null?A.y+=A.vy*=a:(A.y=A.fy,A.vy=0);return n}function x(){for(var T=0,E=t.length,O;T<E;++T){if(O=t[T],O.index=T,O.fx!=null&&(O.x=O.fx),O.fy!=null&&(O.y=O.fy),isNaN(O.x)||isNaN(O.y)){var A=Ree*Math.sqrt(.5+T),V=T*Aee;O.x=A*Math.cos(V),O.y=A*Math.sin(V)}(isNaN(O.vx)||isNaN(O.vy))&&(O.vx=O.vy=0)}}function w(T){return T.initialize&&T.initialize(t,f),T}return x(),n={tick:v,restart:function(){return c.restart(p),n},stop:function(){return c.stop(),n},nodes:function(T){return arguments.length?(t=T,x(),s.forEach(w),n):t},alpha:function(T){return arguments.length?(e=+T,n):e},alphaMin:function(T){return arguments.length?(i=+T,n):i},alphaDecay:function(T){return arguments.length?(o=+T,n):+o},alphaTarget:function(T){return arguments.length?(r=+T,n):r},velocityDecay:function(T){return arguments.length?(a=1-T,n):1-a},randomSource:function(T){return arguments.length?(f=T,s.forEach(w),n):f},force:function(T,E){return arguments.length>1?(E==null?s.delete(T):s.set(T,w(E)),n):s.get(T)},find:function(T,E,O){var A=0,V=t.length,q,X,ue,qe,ye;for(O==null?O=1/0:O*=O,A=0;A<V;++A)qe=t[A],q=T-qe.x,X=E-qe.y,ue=q*q+X*X,ue<O&&(ye=qe,O=ue);return ye},on:function(T,E){return arguments.length>1?(d.on(T,E),n):d.on(T)}}}function R_(){var t,n,e,i,o=Ke(-30),r,a=1,s=1/0,c=.81;function d(x){var w,T=t.length,E=yi(t,lD,uD).visitAfter(p);for(i=x,w=0;w<T;++w)n=t[w],E.visit(v)}function f(){if(t){var x,w=t.length,T;for(r=new Array(w),x=0;x<w;++x)T=t[x],r[T.index]=+o(T,x,t)}}function p(x){var w=0,T,E,O=0,A,V,q;if(x.length){for(A=V=q=0;q<4;++q)(T=x[q])&&(E=Math.abs(T.value))&&(w+=T.value,O+=E,A+=E*T.x,V+=E*T.y);x.x=A/O,x.y=V/O}else{T=x,T.x=T.data.x,T.y=T.data.y;do w+=r[T.data.index];while(T=T.next)}x.value=w}function v(x,w,T,E){if(!x.value)return!0;var O=x.x-n.x,A=x.y-n.y,V=E-w,q=O*O+A*A;if(V*V/c<q)return q<s&&(O===0&&(O=Ft(e),q+=O*O),A===0&&(A=Ft(e),q+=A*A),q<a&&(q=Math.sqrt(a*q)),n.vx+=O*x.value*i/q,n.vy+=A*x.value*i/q),!0;if(x.length||q>=s)return;(x.data!==n||x.next)&&(O===0&&(O=Ft(e),q+=O*O),A===0&&(A=Ft(e),q+=A*A),q<a&&(q=Math.sqrt(a*q)));do x.data!==n&&(V=r[x.data.index]*i/q,n.vx+=O*V,n.vy+=A*V);while(x=x.next)}return d.initialize=function(x,w){t=x,e=w,f()},d.strength=function(x){return arguments.length?(o=typeof x=="function"?x:Ke(+x),f(),d):o},d.distanceMin=function(x){return arguments.length?(a=x*x,d):Math.sqrt(a)},d.distanceMax=function(x){return arguments.length?(s=x*x,d):Math.sqrt(s)},d.theta=function(x){return arguments.length?(c=x*x,d):Math.sqrt(c)},d}function A_(t){var n=Ke(.1),e,i,o;typeof t!="function"&&(t=Ke(t==null?0:+t));function r(s){for(var c=0,d=e.length,f;c<d;++c)f=e[c],f.vx+=(o[c]-f.x)*i[c]*s}function a(){if(e){var s,c=e.length;for(i=new Array(c),o=new Array(c),s=0;s<c;++s)i[s]=isNaN(o[s]=+t(e[s],s,e))?0:+n(e[s],s,e)}}return r.initialize=function(s){e=s,a()},r.strength=function(s){return arguments.length?(n=typeof s=="function"?s:Ke(+s),a(),r):n},r.x=function(s){return arguments.length?(t=typeof s=="function"?s:Ke(+s),a(),r):t},r}function F_(t){var n=Ke(.1),e,i,o;typeof t!="function"&&(t=Ke(t==null?0:+t));function r(s){for(var c=0,d=e.length,f;c<d;++c)f=e[c],f.vy+=(o[c]-f.y)*i[c]*s}function a(){if(e){var s,c=e.length;for(i=new Array(c),o=new Array(c),s=0;s<c;++s)i[s]=isNaN(o[s]=+t(e[s],s,e))?0:+n(e[s],s,e)}}return r.initialize=function(s){e=s,a()},r.strength=function(s){return arguments.length?(n=typeof s=="function"?s:Ke(+s),a(),r):n},r.y=function(s){return arguments.length?(t=typeof s=="function"?s:Ke(+s),a(),r):t},r}var L_=260,fD=120;function pD(t,n){let e=t.map(o=>o.path).sort(),i=n.map(o=>o.id).sort();return`${e.length}|${e.join(",")}|${i.length}|${i.join(",")}`}function hD(t,n){let e=new Set(t.map(d=>d.path)),i=_M(t),o=new Map,r=n?.links??[];for(let d of r){if(!e.has(d.source))continue;let f=vM(d.target,d.trigger?.normalizedTrigger??null,i);if(!e.has(f)||d.source===f)continue;let p=Lee(d.kind,d.source,f);o.has(p)||o.set(p,{id:p,from:d.source,to:f,kind:d.kind})}let a=[...o.values()],s=new Map;for(let d of t)s.set(d.path,d);let c=new Map;for(let d of n?.nodes??[])c.set(d.path,d);return{nodesByPath:s,apiNodesByPath:c,edges:a}}async function mD(t,n,e,i){let o={width:L_,height:fD},r=n.map(f=>({id:f.path,size:o})),a=e.map(f=>({source:f.from,target:f.to})),s=eM[i.spacing],c=await t.calculate(r,a,{algorithm:i.algorithm,direction:i.direction,nodeGap:s.nodeGap,layerGap:s.layerGap}),d=new Map;for(let{id:f,position:p}of c.nodes)d.set(f,{x:p.x,y:p.y});return d}function gD(t,n){let e=t.map(s=>({id:s.path})),i=n.map(s=>({source:s.from,target:s.to})),o=N_(e).force("link",P_(i).id(s=>s.id).distance(90).strength(1)).force("charge",R_().strength(-200)).force("center",I_(0,0)).force("x",A_(0).strength(.06)).force("y",F_(0).strength(.06)).force("collide",E_(L_/2+12)).stop(),r=400;for(let s=0;s<r;s++)o.tick();let a=new Map;for(let s of e)a.set(s.id,{x:(s.x??0)-L_/2,y:(s.y??0)-fD/2});return a}function _D(t,n,e,i=null){let o=t.edges.filter(c=>n.has(c.from)&&n.has(c.to)&&(i===null||i.has(c.kind))),r=new Map,a=new Map;for(let c of o)r.set(c.from,(r.get(c.from)??0)+1),a.set(c.to,(a.get(c.to)??0)+1);let s=[];for(let c of n){let d=t.nodesByPath.get(c);if(!d)continue;let f=t.apiNodesByPath.get(c),p=e[c],v=t.positions.get(c)??{x:0,y:0},x=p?{x:p.x,y:p.y}:v;s.push({id:c,path:c,view:d,kind:d.kind,position:x,stats:{linksIn:a.get(c)??0,linksOut:r.get(c)??0,bytesTotal:f?.bytes.total,tokensTotal:f?.tokens?.total,externalRefsCount:f?.externalRefsCount},summary:Fee(d)})}return{nodes:s,edges:o}}function Fee(t){let n={injectionDetected:!1,contentQuality:"clean"},e=(t.frontmatter.description??t.frontmatter.name??"").trim();return{kind:"markdown",confidence:.6,safety:n,whatItCovers:e||`${t.kind} entry`,topics:[],keyFacts:[]}}function Lee(t,n,e){return`${t}:${n}::${e}`}function yD(t,n){if(t.size===0)return{next:t,dirty:!1};let e=!1,i=new Set;for(let o of t)n.has(o)?i.add(o):e=!0;return{next:e?i:t,dirty:e}}function vD(t){let{nodes:n,current:e,layout:i}=t,o=new Set(n.map(c=>c.path)),r=!1,a=ae({},e);for(let c of Object.keys(a))o.has(c)||(delete a[c],r=!0);let s=[];for(let c of o)c in a||s.push(c);if(s.length>0){for(let c of s){let d=i.positions.get(c);d&&(a[c]={x:d.x,y:d.y})}r=!0}return{next:a,dirty:r}}function CD(t){let{selectedPath:n,setSelectedNodeId:e,readSelectedNodeId:i,graphNodes:o,router:r,route:a}=t,s=l0(a.queryParamMap.pipe(z_(c=>c.get("path"))),{initialValue:a.snapshot.queryParamMap.get("path")});pe(()=>{let c=s(),d=o();if(d.length===0||!c)return;let f=Lt(()=>i());if(f!==null&&d.find(x=>x.id===f)?.view.path===c)return;let p=d.find(v=>v.view.path===c);p&&e(p.id)}),pe(()=>{let c=n(),d=Lt(()=>s());(c??null)!==(d??null)&&r.navigate([],{relativeTo:a,queryParams:{path:c??null},queryParamsHandling:"merge",replaceUrl:!0})})}function xD(t,n){let i=t.frontmatter.tags;if(Array.isArray(i)&&i.includes(n))return!0;let r=t.sidecar?.annotations?.tags;return!!(Array.isArray(r)&&r.includes(n))}function bD(t){if(typeof t!="object"||t===null)return!1;let n=t;return typeof n.x=="number"&&typeof n.y=="number"&&Number.isFinite(n.x)&&Number.isFinite(n.y)}function wD(t){if(typeof t!="object"||t===null)return!1;let n=t;return typeof n.x=="number"&&typeof n.y=="number"&&typeof n.scale=="number"&&Number.isFinite(n.x)&&Number.isFinite(n.y)&&Number.isFinite(n.scale)&&n.scale>0}function SD(t){return t.querySelector(".p-overlay-mask, .p-dialog, .p-overlay")!==null}var ID="sm.graph.viewport",TD="sm.graph.node-positions",ED="sm.graph.node-expanded",PD="sm.graph.panel-width";function MD(){let t=null;try{t=localStorage.getItem(ID)}catch{return null}if(!t)return null;let n;try{n=JSON.parse(t)}catch{return null}return wD(n)?n:null}function DD(t){try{localStorage.setItem(ID,JSON.stringify(t))}catch{}}function kD(){let t=null;try{t=localStorage.getItem(TD)}catch{return{}}if(!t)return{};let n;try{n=JSON.parse(t)}catch{return{}}if(typeof n!="object"||n===null)return{};let e={};for(let[i,o]of Object.entries(n))bD(o)&&(e[i]={x:o.x,y:o.y});return e}function jp(t){try{localStorage.setItem(TD,JSON.stringify(t))}catch{}}function OD(){let t=null;try{t=localStorage.getItem(ED)}catch{return new Set}if(!t)return new Set;let n;try{n=JSON.parse(t)}catch{return new Set}if(!Array.isArray(n))return new Set;let e=new Set;for(let i of n)typeof i=="string"&&i.length>0&&e.add(i);return e}function Up(t){try{localStorage.setItem(ED,JSON.stringify([...t]))}catch{}}function ND(){let t=null;try{t=localStorage.getItem(PD)}catch{return null}if(!t)return null;let n=Number(t);return!Number.isFinite(n)||n<=0?null:n}function RD(t){try{localStorage.setItem(PD,String(Math.round(t)))}catch{}}var AD=400,Wp=400,FD=80;function LD(t){let n=U(t.initialWidth),e=U(typeof window>"u"?1920:window.innerWidth);typeof window<"u"&&q_(window,"resize").pipe(Di(t.destroyRef)).subscribe(()=>e.set(window.innerWidth));let i=k(()=>{let p=Math.max(Wp,e()-FD),v=n();return v>p||v<Wp?Math.min(AD,p):v}),o=null,r=null,a=null,s=()=>{a=null,r!==null&&(n.set(r),r=null)},c=p=>{if(!o)return;let v=p.clientX-o.mouseX,x=o.widthAtStart-v,w=Math.max(Wp,e()-FD);r=Math.min(w,Math.max(Wp,x)),a===null&&typeof window<"u"&&(a=window.requestAnimationFrame(s))},d=()=>{o&&(o=null,document.removeEventListener("mousemove",c),document.removeEventListener("mouseup",d),a!==null&&typeof window<"u"&&(window.cancelAnimationFrame(a),a=null),r!==null&&(n.set(r),r=null),t.onCommit(n()))};return{clampedPanelWidth:i,onPanelResizeStart:p=>{p.button===0&&(p.preventDefault(),p.stopPropagation(),o={mouseX:p.clientX,widthAtStart:i()},document.addEventListener("mousemove",c),document.addEventListener("mouseup",d))}}}function BD(t){let{points:n,wrap:e,panelW:i,zoomMin:o}=t;if(n.length===0)return null;let r=1/0,a=1/0,s=-1/0,c=-1/0;for(let q of n)q.x<r&&(r=q.x),q.y<a&&(a=q.y),q.x+260>s&&(s=q.x+260),q.y+120>c&&(c=q.y+120);let d=Math.max(1,e.width-i),f=Math.max(1,s-r),p=Math.max(1,c-a),v=Math.max(1,d-160),x=Math.max(1,e.height-160),w=Math.min(v/f,x/p),T=Math.min(2,Math.max(o,w)),E=(r+s)/2,O=(a+c)/2,A=d/2-E*T,V=e.height/2-O*T;return{position:{x:A,y:V},scale:T}}function zD(t,n,e){if(typeof requestAnimationFrame>"u"||e<=0){t.writePosition(n.position),t.writeScale(n.scale);return}let i=t.readPosition(),o=t.readScale(),r=performance.now(),a=s=>{if(t.isStaleToken())return;let c=Math.min(1,(s-r)/e),d=Bee(c);t.writePosition({x:i.x+(n.position.x-i.x)*d,y:i.y+(n.position.y-i.y)*d}),t.writeScale(o+(n.scale-o)*d),c<1&&requestAnimationFrame(a)};requestAnimationFrame(a)}function Bee(t){return 1-Math.pow(1-t,3)}var qD=320;function VD(t){let n=U(null),e=null,i=0,o=(c,d)=>{let f=++i;zD({readPosition:()=>t.viewportPosition(),readScale:()=>t.viewportScale(),writePosition:p=>t.viewportPosition.set(p),writeScale:p=>t.viewportScale.set(p),isStaleToken:()=>f!==i},c,d)},r=c=>{let d=t.canvasWrap();if(!d||c.length===0)return;let f=t.fullLayout(),p=[];for(let x of c){let w=f.positions.get(x);w&&p.push(w)}if(p.length===0)return;let v=BD({points:p,wrap:d,panelW:t.selectedNodeId()!==null?t.clampedPanelWidth():0,zoomMin:t.zoomMin});v&&o(v,qD)},a=()=>{let c=e;c&&(e=null,o({position:c.position,scale:c.scale},qD))};return{activeTagSelection:n,onTagSelect:c=>{let d=t.flow();if(!d)return;if(n()===c){d.clearSelection(),n.set(null),a();return}let f=t.nodes().filter(p=>xD(p,c)).map(p=>p.path);if(f.length===0){d.clearSelection(),n.set(null),a();return}e===null&&(e={position:ae({},t.viewportPosition()),scale:t.viewportScale()}),d.select(f,[]),n.set(c),r(f)}}}var B_=.1,zee=4;function GD(t){let n=U(t.savedViewport?{x:t.savedViewport.x,y:t.savedViewport.y}:{x:0,y:0}),e=U(t.savedViewport?.scale??1),i=k(()=>e()<zee-1e-6),o=k(()=>e()>B_+1e-6);return{viewportPosition:n,viewportScale:e,canZoomIn:i,canZoomOut:o,onCanvasChange:a=>{let s=n();(s.x!==a.position.x||s.y!==a.position.y)&&n.set({x:a.position.x,y:a.position.y}),e()!==a.scale&&e.set(a.scale),t.hasCompletedInitialLayout()&&DD({x:a.position.x,y:a.position.y,scale:a.scale})}}}function HD(t){let n=k(()=>{let c=new Map;for(let d of t.graph().edges)c.has(d.from)||c.set(d.from,new Set),c.has(d.to)||c.set(d.to,new Set),c.get(d.from).add(d.to),c.get(d.to).add(d.from);return c}),e=c=>t.selectedNodeId()===c,i=c=>{let d=t.selectedNodeId();return d===null||d===c?!1:n().get(d)?.has(c)??!1},o=c=>{if(t.activeTagSelection()!==null)return!1;let d=t.selectedNodeId();return d===null||d===c?!1:!(n().get(d)?.has(c)??!1)},r=c=>{let d=t.selectedNodeId();return d!==null&&(c.from===d||c.to===d)},a=c=>{if(t.activeTagSelection()!==null)return!1;let d=t.selectedNodeId();return d===null?!1:c.from!==d&&c.to!==d},s=k(()=>{let c=t.selectedNodeId(),d=t.activeTagSelection()!==null,f=c!==null?n().get(c)??null:null,p=new Map;for(let v of t.graph().nodes){let x=v.id,w=c===x,T=!w&&c!==null&&(f?.has(x)??!1),E=!d&&c!==null&&!w&&!(f?.has(x)??!1);p.set(x,{selected:w,highlighted:T,dimmed:E})}return p});return{isSelected:e,isHighlighted:i,isDimmed:o,isEdgeHighlighted:r,isEdgeDimmed:a,selectionView:s}}function jD(t){let n=t.onCommit??jp,e=null,i=!1,o=null,r=()=>{queueMicrotask(()=>{if(!i){o=null;return}i=!1,o&&(t.nodePositions.set(o),o=null),n(t.nodePositions())})},a=(d,f)=>{o||(o=ae({},t.nodePositions())),o[d]={x:f.x,y:f.y},i=!0},s=d=>{e={x:d.clientX,y:d.clientY},document.addEventListener("mouseup",r,{once:!0})},c=d=>{let f=e;if(e=null,!f)return!0;let p=d.clientX-f.x,v=d.clientY-f.y;return Math.hypot(p,v)<=4};return t.destroyRef.onDestroy(()=>{document.removeEventListener("mouseup",r)}),{onNodePositionChange:a,onNodePointerDown:s,isClickWithoutDrag:c}}function UD(t){let n=U(OD());return pe(()=>{let r=new Set(t.nodes().map(s=>s.path));if(r.size===0)return;let a=yD(n(),r);a.dirty&&(n.set(a.next),Up(a.next))}),{isExpanded:r=>n().has(r),setExpanded:(r,a)=>{let s=n();if(s.has(r)===a)return;let c=new Set(s);a?c.add(r):c.delete(r),n.set(c),Up(c)},resetAll:()=>{n.set(new Set),Up(new Set)}}}function WD(t){let n=!1,e=null;return pe(()=>{let i=t.visibleNodes();n||i.length!==0&&queueMicrotask(()=>{n=!0,t.savedViewport||t.canvas()?.fitToScreen({x:40,y:40},!1)})}),pe(()=>{let i=t.pathsFingerprint();if(!n){e=i;return}e!==i&&(e=i,queueMicrotask(()=>t.canvas()?.fitToScreen({x:40,y:40},!0)))}),{hasCompletedInitialLayout:()=>n}}var qee=["canvasWrap"],ZD=(t,n)=>n.id;function Vee(t,n){if(t&1&&(h(0,"div",6),B(1,"span",11),h(2,"p",12),y(3),m()()),t&2){let e=g();l(3),b(e.texts.loading)}}function Gee(t,n){if(t&1&&(h(0,"div",7),B(1,"span",13),h(2,"p",12),y(3),m(),h(4,"p",14),y(5),m()()),t&2){let e=g();l(3),b(e.texts.errorTitle),l(2),b(e.error())}}function Hee(t,n){if(t&1&&(h(0,"div",8),B(1,"span",15),h(2,"p",12),y(3),m(),h(4,"p",14),y(5),m()()),t&2){let e=g();l(3),b(e.texts.emptyTitle),l(2),b(e.texts.emptyDesc)}}function jee(t,n){if(t&1&&(h(0,"f-connection",48),it(),h(1,"svg",49),B(2,"circle",50),m(),Yp(),B(3,"f-connection-marker-arrow",51),m()),t&2){let e=n.$implicit,i=g(2);Fe("f-conn--"+e.kind),se("f-conn--highlighted",i.isEdgeHighlighted(e))("f-conn--dimmed",i.isEdgeDimmed(e)),D("fOutputId",e.from+"-out")("fInputId",e.to+"-in")("fOutputSide",i.outputSide())("fInputSide",i.inputSide())("fType",i.connectionType())("fBehavior",i.connectionBehavior)("fReassignDisabled",!0),l(),D("type",i.markerStart)("width",9)("height",9)("refX",4.5)("refY",4.5),l(2),D("type",i.markerEnd)}}function Uee(t,n){if(t&1){let e=de();Gn(0,22),h(1,"div",53),W("fNodePositionChange",function(o){let r=G(e).$implicit,a=g(3);return H(a.onNodePositionChange(r.id,o))})("pointerdown",function(o){G(e);let r=g(3);return H(r.onNodePointerDown(o))})("click",function(o){let r=G(e).$implicit,a=g(3);return H(a.selectNode(r,o))})("dblclick",function(){let o=G(e).$implicit,r=g(3);return H(r.openNode(o))}),h(2,"sm-node-card",54),W("expandedChange",function(o){let r=G(e).$implicit,a=g(3);return H(a.setExpanded(r.id,o))})("favoriteToggle",function(o){G(e);let r=g(3);return H(r.onFavoriteToggle(o))}),m(),h(3,"div",55),B(4,"sm-view-contributions-host",56),m()(),Hn()}if(t&2){let e=n.$implicit,i=g(3);l(),D("fNodeId",e.id)("fNodePosition",e.position)("fInputId",e.id+"-in")("fInputConnectableSide",i.inputSide())("fOutputId",e.id+"-out")("fOutputConnectableSide",i.outputSide()),$("data-testid","graph-node-"+e.id),l(),D("node",e.view)("stats",e.stats)("summary",e.summary)("selection",i.selectionFor(e.id))("expanded",i.isExpanded(e.id))("isFavorite",e.view.isFavorite===!0),l(2),D("node",e.view)}}function Wee(t,n){if(t&1&&Ie(0,Uee,5,14,"ng-container",52),t&2){let e=g(2);D("fVirtualForOf",e.graph().nodes)}}function $ee(t,n){if(t&1){let e=de();h(0,"div",58),W("fNodePositionChange",function(o){let r=G(e).$implicit,a=g(3);return H(a.onNodePositionChange(r.id,o))})("pointerdown",function(o){G(e);let r=g(3);return H(r.onNodePointerDown(o))})("click",function(o){let r=G(e).$implicit,a=g(3);return H(a.selectNode(r,o))})("dblclick",function(){let o=G(e).$implicit,r=g(3);return H(r.openNode(o))}),h(1,"sm-node-card",54),W("expandedChange",function(o){let r=G(e).$implicit,a=g(3);return H(a.setExpanded(r.id,o))})("favoriteToggle",function(o){G(e);let r=g(3);return H(r.onFavoriteToggle(o))}),m(),h(2,"div",55),B(3,"sm-view-contributions-host",56),m()()}if(t&2){let e=n.$implicit,i=g(3);D("fNodeId",e.id)("fNodePosition",e.position)("fInputId",e.id+"-in")("fOutputId",e.id+"-out"),$("data-testid","graph-node-"+e.id),l(),D("node",e.view)("stats",e.stats)("summary",e.summary)("selection",i.selectionFor(e.id))("expanded",i.isExpanded(e.id))("isFavorite",e.view.isFavorite===!0),l(2),D("node",e.view)}}function Kee(t,n){if(t&1&&(Gn(0,22),ee(1,$ee,4,12,"div",57,ZD),Hn()),t&2){let e=g(2);l(),te(e.graph().nodes)}}function Yee(t,n){if(t&1&&B(0,"sm-perf-hud",28),t&2){let e=g(2);D("visible",e.visibleCount())("total",e.totalCount())("edges",e.edgeCount())}}function Xee(t,n){if(t&1){let e=de();h(0,"li",43)(1,"button",59),W("click",function(){let o=G(e).$implicit;g();let r=Zt(36);return g().setLayoutAlgorithm(o),H(r.hide())}),y(2),m()()}if(t&2){let e=n.$implicit,i=g(2);l(),se("is-active",i.layoutAlgorithm()===e),$("aria-checked",i.layoutAlgorithm()===e)("data-testid","graph-layout-algorithm-option-"+e),l(),Ue(" ",i.layoutAlgorithmLabel(e)," ")}}function Zee(t,n){if(t&1){let e=de();h(0,"button",60),W("click",function(){let o=G(e).$implicit;g();let r=Zt(41);return g().setLayoutDirection(o),H(r.hide())}),B(1,"i",61),m()}if(t&2){let e=n.$implicit,i=g(2);se("is-active",i.layoutDirection()===e),D("pTooltip",i.layoutDirectionLabel(e)),$("aria-checked",i.layoutDirection()===e)("aria-label",i.layoutDirectionLabel(e))("data-testid","graph-layout-direction-option-"+e),l(),Fe(i.directionItemIcon(e))}}function Qee(t,n){if(t&1){let e=de();h(0,"button",60),W("click",function(){let o=G(e).$implicit;g();let r=Zt(46);return g().setLayoutSpacing(o),H(r.hide())}),B(1,"i",61),m()}if(t&2){let e=n.$implicit,i=g(2);se("is-active",i.layoutSpacing()===e),D("pTooltip",i.layoutSpacingLabel(e)),$("aria-checked",i.layoutSpacing()===e)("aria-label",i.layoutSpacingLabel(e))("data-testid","graph-layout-spacing-option-"+e),l(),Fe(i.spacingItemIcon(e))}}function Jee(t,n){if(t&1){let e=de();h(0,"button",60),W("click",function(){let o=G(e).$implicit;g();let r=Zt(51);return g().setConnectionType(o),H(r.hide())}),it(),h(1,"svg",62),B(2,"path",39),m()()}if(t&2){let e=n.$implicit,i=g(2);se("is-active",i.connectionType()===e),D("pTooltip",i.connectionTypeLabel(e)),$("aria-checked",i.connectionType()===e)("aria-label",i.connectionTypeLabel(e))("data-testid","graph-connection-type-option-"+e),l(2),$("d",i.connectionTypeItemPath(e))}}function ete(t,n){if(t&1){let e=de();h(0,"div",16,0),W("click",function(o){G(e);let r=g();return H(r.onCanvasClick(o))}),h(2,"f-flow",17),W("fLoaded",function(){G(e);let o=g();return H(o.onLoaded())}),B(3,"f-selection-area"),h(4,"f-background"),B(5,"f-rect-pattern"),m(),B(6,"f-line-alignment",18),h(7,"f-canvas",19),W("fCanvasChange",function(o){G(e);let r=g();return H(r.onCanvasChange(o))}),Gn(8,20),ee(9,jee,4,19,"f-connection",21,ZD),Hn(),P(11,Wee,1,1,"ng-container",22)(12,Kee,3,0,"ng-container",22),m(),B(13,"f-minimap"),m(),h(14,"div",23),B(15,"sm-kind-palette")(16,"sm-link-kind-palette"),m(),h(17,"aside",24)(18,"div",25),W("mousedown",function(o){G(e);let r=g();return H(r.onPanelResizeStart(o))}),m(),h(19,"div",26)(20,"sm-inspector-view",27),W("close",function(){G(e);let o=g();return H(o.closePanel())})("tagSelect",function(o){G(e);let r=g();return H(r.onTagSelect(o))}),m()()(),P(21,Yee,1,3,"sm-perf-hud",28),h(22,"div",29)(23,"p-button",30),W("onClick",function(){G(e);let o=g();return H(o.zoomIn())}),m(),h(24,"p-button",31),W("onClick",function(){G(e);let o=g();return H(o.zoomOut())}),m(),h(25,"p-button",32),W("onClick",function(){G(e);let o=g();return H(o.fitToScreen())}),m(),B(26,"span",33),h(27,"p-button",34),W("onClick",function(o){G(e);let r=Zt(36);return H(r.toggle(o))}),m(),h(28,"p-button",35),W("onClick",function(o){G(e);let r=Zt(41);return H(r.toggle(o))}),m(),h(29,"p-button",36),W("onClick",function(o){G(e);let r=Zt(46);return H(r.toggle(o))}),m(),h(30,"p-button",37),W("onClick",function(o){G(e);let r=Zt(51);return H(r.toggle(o))}),it(),h(31,"svg",38),B(32,"path",39),m()(),Yp(),B(33,"span",33),h(34,"p-button",40),W("onClick",function(){G(e);let o=g();return H(o.resetLayout())}),m()(),h(35,"p-popover",41,1)(37,"ul",42),ee(38,Xee,3,5,"li",43,Te),m()(),h(40,"p-popover",41,2)(42,"div",44),ee(43,Zee,2,8,"button",45,Te),m()(),h(45,"p-popover",41,3)(47,"div",46),ee(48,Qee,2,8,"button",45,Te),m()(),h(50,"p-popover",41,4)(52,"div",47),ee(53,Jee,3,7,"button",45,Te),m()()()}if(t&2){let e=g();D("smMiddleMousePan",e.canvas()),l(2),D("fCache",e.perf.cache),l(4),D("fAlignThreshold",20),l(),D("position",e.viewportPosition())("scale",e.viewportScale())("fZoomStep",.06)("fZoomDblClickStep",.35)("debounceTime",150),l(2),te(e.graph().edges),l(2),M(e.perf.virtualization?11:12),l(6),_t("width",e.clampedPanelWidth(),"px"),se("is-open",e.selectedNodeId()!==null),$("aria-label",e.texts.a11y.panel),l(),$("aria-label",e.texts.panel.resizeLabel),l(2),D("path",e.selectedPath())("activeTag",e.activeTagSelection()),l(),M(e.perfHud()?21:-1),l(),$("aria-label",e.texts.a11y.toolbar),l(),D("ariaLabel",e.texts.toolbar.zoomIn)("pTooltip",e.texts.toolbar.zoomIn)("text",!0)("rounded",!0)("disabled",!e.canZoomIn()),l(),D("ariaLabel",e.texts.toolbar.zoomOut)("pTooltip",e.texts.toolbar.zoomOut)("text",!0)("rounded",!0)("disabled",!e.canZoomOut()),l(),D("ariaLabel",e.texts.toolbar.fitToScreen)("pTooltip",e.texts.toolbar.fitToScreen)("text",!0)("rounded",!0),l(2),D("ariaLabel",e.texts.toolbar.layoutAlgorithmLabel)("pTooltip",e.texts.toolbar.layoutAlgorithmTooltip)("text",!0)("rounded",!0),l(),D("icon",e.directionIcon())("ariaLabel",e.texts.toolbar.layoutDirectionLabel)("pTooltip",e.directionAvailable()?e.texts.toolbar.layoutDirectionTooltip:e.texts.toolbar.layoutDirectionUnavailableTooltip)("text",!0)("rounded",!0)("disabled",!e.directionAvailable()),l(),D("icon",e.spacingIcon())("ariaLabel",e.texts.toolbar.layoutSpacingLabel)("pTooltip",e.spacingAvailable()?e.texts.toolbar.layoutSpacingTooltip:e.texts.toolbar.layoutSpacingUnavailableTooltip)("text",!0)("rounded",!0)("disabled",!e.spacingAvailable()),l(),D("ariaLabel",e.texts.toolbar.connectionTypeLabel)("pTooltip",e.texts.toolbar.connectionTypeTooltip)("text",!0)("rounded",!0),l(2),$("d",e.connectionTypeItemPath(e.connectionType())),l(2),D("ariaLabel",e.texts.toolbar.resetLayoutLabel)("pTooltip",e.texts.toolbar.resetLayoutTooltip)("text",!0)("rounded",!0),l(4),te(e.layoutAlgorithms),l(5),te(e.layoutDirections),l(5),te(e.layoutSpacings),l(5),te(e.connectionTypes)}}var $D=.2,tte={selected:!1,highlighted:!1,dimmed:!1},nte={TOP_BOTTOM:{output:Ee.BOTTOM,input:Ee.TOP},BOTTOM_TOP:{output:Ee.TOP,input:Ee.BOTTOM},LEFT_RIGHT:{output:Ee.RIGHT,input:Ee.LEFT},RIGHT_LEFT:{output:Ee.LEFT,input:Ee.RIGHT}};function ite(t){return nte[t]}var KD={TOP_BOTTOM:"pi pi-arrow-down",BOTTOM_TOP:"pi pi-arrow-up",LEFT_RIGHT:"pi pi-arrow-right",RIGHT_LEFT:"pi pi-arrow-left"},YD={compact:"pi pi-window-minimize",normal:"pi pi-bars",spacious:"pi pi-window-maximize"},ote={segment:"M 2 14 L 8 14 L 8 2 L 14 2",straight:"M 2 14 L 14 2",bezier:"M 2 14 C 6 14, 10 2, 14 2","adaptive-curve":"M 2 14 C 8 14, 8 2, 14 2"},XD=class t{loader=u(hn);filters=u(Oi);graphPreferences=u(gp);router=u(da);route=u(Y_);confirmationService=u(Ei);destroyRef=u(ot);dagreLayout=u(d_);flow=Be(gr);canvas=Be(mr);zoom=Be(_r);canvasWrap=Be("canvasWrap");connectionType=this.graphPreferences.connectionType;connectionBehavior=vn.FIXED;markerStart=xe.START_ALL_STATES;markerEnd=xe.END_ALL_STATES;perf=xo.graph.perf;perfHud=u(bp).visible;savedViewport=MD();viewportStore=GD({savedViewport:this.savedViewport,hasCompletedInitialLayout:()=>this.layoutFit.hasCompletedInitialLayout()});viewportPosition=this.viewportStore.viewportPosition;viewportScale=this.viewportStore.viewportScale;canZoomIn=this.viewportStore.canZoomIn;canZoomOut=this.viewportStore.canZoomOut;texts=gi;nodePositions=U(kD());nodeDrag=jD({destroyRef:this.destroyRef,nodePositions:this.nodePositions});expansion=UD({nodes:this.loader.nodes});panelResize=LD({destroyRef:this.destroyRef,initialWidth:ND()??400,onCommit:n=>RD(n)});clampedPanelWidth=this.panelResize.clampedPanelWidth;loading=this.loader.loading;error=this.loader.error;visibleNodes=k(()=>this.filters.apply(this.loader.nodes()));topology=k(()=>hD(this.loader.nodes(),this.loader.scan()));layoutPositions=U(new Map);layoutComputedAtSignal=U(0);fullLayout=k(()=>Yt(ae({},this.topology()),{positions:this.layoutPositions(),computedAt:this.layoutComputedAtSignal()}));graph=k(()=>{let n=new Set(this.visibleNodes().map(o=>o.path)),e=this.filters.selectedLinkKinds(),i=e.length>0?new Set(e):null;return _D(this.fullLayout(),n,this.nodePositions(),i)});hasData=k(()=>this.graph().nodes.length>0);visibleCount=k(()=>this.graph().nodes.length);totalCount=k(()=>this.loader.nodes().length);edgeCount=k(()=>this.graph().edges.length);layoutComputedAt=k(()=>this.layoutComputedAtSignal());connectionSides=k(()=>{if(!u_(this.graphPreferences.layoutAlgorithm()))return{input:Ee.CALCULATE,output:Ee.CALCULATE};let n=this.graphPreferences.layoutDirection();return ite(n)});inputSide=k(()=>this.connectionSides().input);outputSide=k(()=>this.connectionSides().output);layoutAlgorithms=l_;layoutDirections=f_;layoutSpacings=p_;connectionTypes=h_;layoutAlgorithm=this.graphPreferences.layoutAlgorithm;layoutDirection=this.graphPreferences.layoutDirection;layoutSpacing=this.graphPreferences.layoutSpacing;directionIcon=k(()=>KD[this.layoutDirection()]);spacingIcon=k(()=>YD[this.layoutSpacing()]);directionAvailable=k(()=>u_(this.layoutAlgorithm()));spacingAvailable=k(()=>JP(this.layoutAlgorithm()));selectedNodeId=U(null);selectedPath=k(()=>{let n=this.selectedNodeId();return n?this.graph().nodes.find(i=>i.id===n)?.view.path:void 0});selectionGuard=pe(()=>{let n=this.selectedNodeId();if(n===null)return;this.graph().nodes.some(i=>i.id===n)||this.selectedNodeId.set(null)});pathsFingerprint=k(()=>this.loader.nodes().map(n=>n.path).sort().join("|"));layoutFit=WD({visibleNodes:this.visibleNodes,pathsFingerprint:this.pathsFingerprint,canvas:()=>this.canvas(),savedViewport:this.savedViewport});constructor(){let n=k(()=>this.loader.nodes().map(o=>({id:o.path,view:{path:o.path}})),{equal:(o,r)=>{if(o.length!==r.length)return!1;for(let a=0;a<o.length;a++)if(o[a]?.id!==r[a]?.id)return!1;return!0}});CD({selectedPath:this.selectedPath,setSelectedNodeId:o=>this.selectedNodeId.set(o),readSelectedNodeId:()=>this.selectedNodeId(),graphNodes:n,router:this.router,route:this.route}),pe(()=>{let o=this.loader.nodes();if(o.length===0)return;let r=this.fullLayout();if(r.positions.size===0)return;let a=vD({nodes:o,current:this.nodePositions(),layout:r});a.dirty&&(this.nodePositions.set(a.next),jp(a.next))});let e="",i="";pe(()=>{let o=this.loader.nodes(),r=this.topology(),a={algorithm:this.graphPreferences.layoutAlgorithm(),direction:this.graphPreferences.layoutDirection(),spacing:this.graphPreferences.layoutSpacing()};if(o.length===0)return;let s=pD(o,r.edges),c=`${a.algorithm}|${a.direction}|${a.spacing}`,d=`${s}|${c}`;if(d===e)return;let f=i!==""&&i!==c;e=d,i=c,(a.algorithm==="force"?Promise.resolve(gD(o,r.edges)):Promise.resolve().then(()=>mD(this.dagreLayout,o,r.edges,a))).then(v=>{this.layoutPositions.set(v),this.layoutComputedAtSignal.set(performance.now()),f&&(this.nodePositions.set({}),requestAnimationFrame(()=>requestAnimationFrame(()=>this.canvas()?.fitToScreen({x:40,y:40},!0))))}).catch(v=>{console.error("[graph-view] layout failed:",v)})})}ngOnInit(){this.loader.nodes().length===0&&!this.loader.loading()&&this.loader.load()}onLoaded(){}onCanvasChange=this.viewportStore.onCanvasChange;onNodePositionChange(n,e){this.nodeDrag.onNodePositionChange(n,e)}zoomIn(){this.zoom()?.setZoom(this.getViewportCenter(),$D,en.ZOOM_IN,!0)}zoomOut(){this.zoom()?.setZoom(this.getViewportCenter(),$D,en.ZOOM_OUT,!0)}fitToScreen(){this.canvas()?.fitToScreen({x:40,y:40},!0)}resetLayout(){let n=gi.resetLayoutConfirm;this.confirmationService.confirm({header:n.header,message:n.message,icon:"pi pi-exclamation-triangle",acceptButtonProps:{label:n.accept,severity:"danger"},rejectButtonProps:{label:n.reject,severity:"secondary",outlined:!0},accept:()=>{this.nodePositions.set({}),this.expansion.resetAll(),queueMicrotask(()=>this.canvas()?.fitToScreen({x:40,y:40},!0))}})}getViewportCenter(){let n=this.canvasWrap()?.nativeElement;if(!n)return{x:0,y:0};let e=n.getBoundingClientRect();return{x:e.width/2,y:e.height/2}}onNodePointerDown(n){this.nodeDrag.onNodePointerDown(n)}selectNode(n,e){this.nodeDrag.isClickWithoutDrag(e)&&this.selectedNodeId.set(n.id)}tagSelection=VD({flow:this.flow,nodes:this.loader.nodes,fullLayout:k(()=>this.fullLayout()),canvasWrap:()=>{let n=this.canvasWrap()?.nativeElement;return n?{width:n.clientWidth,height:n.clientHeight}:null},selectedNodeId:this.selectedNodeId,clampedPanelWidth:this.clampedPanelWidth,zoomMin:B_,viewportPosition:this.viewportPosition,viewportScale:this.viewportScale});activeTagSelection=this.tagSelection.activeTagSelection;selectionState=HD({graph:this.graph,selectedNodeId:this.selectedNodeId,activeTagSelection:this.activeTagSelection});onTagSelect(n){this.tagSelection.onTagSelect(n)}closePanel(){this.selectedNodeId.set(null)}onEscape(){this.selectedNodeId()!==null&&(typeof document<"u"&&SD(document)||this.closePanel())}onPanelResizeStart(n){this.panelResize.onPanelResizeStart(n)}openNode(n){this.selectedNodeId.set(n.id)}onCanvasClick(n){let e=n.target;e?.closest(".sm-gnode")||e?.closest(".graph__toolbar")||e?.closest(".perf-hud")||e?.closest(".kind-palette")||e?.closest(".graph__panel")||this.selectedNodeId.set(null)}isSelected(n){return this.selectionState.isSelected(n)}isHighlighted(n){return this.selectionState.isHighlighted(n)}isDimmed(n){return this.selectionState.isDimmed(n)}selectionFor(n){return this.selectionState.selectionView().get(n)??tte}isExpanded(n){return this.expansion.isExpanded(n)}setExpanded(n,e){this.expansion.setExpanded(n,e)}onFavoriteToggle(n){this.loader.toggleFavorite(n.path,n.value)}isEdgeHighlighted(n){return this.selectionState.isEdgeHighlighted(n)}isEdgeDimmed(n){return this.selectionState.isEdgeDimmed(n)}layoutAlgorithmLabel(n){return gi.layout.algorithm.options[n].label}layoutDirectionLabel(n){return gi.layout.direction.options[n].label}layoutSpacingLabel(n){return gi.layout.spacing.options[n].label}setLayoutAlgorithm(n){this.graphPreferences.setLayoutAlgorithm(n)}setLayoutDirection(n){this.graphPreferences.setLayoutDirection(n)}setLayoutSpacing(n){this.graphPreferences.setLayoutSpacing(n)}directionItemIcon(n){return KD[n]}spacingItemIcon(n){return YD[n]}connectionTypeLabel(n){return gi.layout.connection.options[n].label}setConnectionType(n){this.graphPreferences.setConnectionType(n)}connectionTypeItemPath(n){return ote[n]}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=Z({type:t,selectors:[["sm-graph-view"]],viewQuery:function(e,i){e&1&&Ot(i.flow,gr,5)(i.canvas,mr,5)(i.zoom,_r,5)(i.canvasWrap,qee,5),e&2&&gt(4)},hostBindings:function(e,i){e&1&&W("keydown.escape",function(){return i.onEscape()},ea)},features:[be([Ei,Uy(d_,{mode:yn.MANUAL})])],decls:6,vars:2,consts:[["canvasWrap",""],["algorithmPopover",""],["directionPopover",""],["spacingPopover",""],["connectionTypePopover",""],["data-testid","graph-view",1,"graph"],["data-testid","graph-loading",1,"empty-state"],["data-testid","graph-error",1,"empty-state"],["data-testid","graph-empty",1,"empty-state"],["data-testid","graph-canvas-wrap",1,"graph__canvas-wrap",3,"smMiddleMousePan"],["styleClass","graph__confirm","maskStyleClass","graph__confirm-mask","data-testid","graph-reset-layout-confirm",3,"ariaLabel"],[1,"empty-state__icon","fa-solid","fa-spinner","fa-spin"],[1,"empty-state__title"],[1,"empty-state__icon","empty-state__icon--error","fa-solid","fa-circle-exclamation"],[1,"empty-state__desc"],[1,"empty-state__icon","fa-solid","fa-filter-circle-xmark"],["data-testid","graph-canvas-wrap",1,"graph__canvas-wrap",3,"click","smMiddleMousePan"],["fDraggable","",3,"fLoaded","fCache"],[3,"fAlignThreshold"],["fZoom","",3,"fCanvasChange","position","scale","fZoomStep","fZoomDblClickStep","debounceTime"],["ngProjectAs","[fConnections]",5,["","fConnections",""]],[3,"fOutputId","fInputId","fOutputSide","fInputSide","fType","fBehavior","fReassignDisabled","class","f-conn--highlighted","f-conn--dimmed"],["ngProjectAs","[fNodes]",5,["","fNodes",""]],[1,"graph__filter-stack"],["role","complementary","data-testid","graph-panel",1,"graph__panel"],["role","separator","aria-orientation","vertical","data-testid","graph-panel-resize",1,"graph__panel-resize",3,"mousedown"],[1,"graph__panel-scroll"],["mode","embedded",3,"close","tagSelect","path","activeTag"],[3,"visible","total","edges"],["role","toolbar","data-testid","graph-toolbar",1,"graph__toolbar"],["icon","pi pi-search-plus","severity","secondary","size","small","data-testid","graph-zoom-in",3,"onClick","ariaLabel","pTooltip","text","rounded","disabled"],["icon","pi pi-search-minus","severity","secondary","size","small","data-testid","graph-zoom-out",3,"onClick","ariaLabel","pTooltip","text","rounded","disabled"],["icon","pi pi-stop","severity","secondary","size","small","data-testid","graph-fit-to-screen",3,"onClick","ariaLabel","pTooltip","text","rounded"],["aria-hidden","true",1,"graph__toolbar-sep"],["icon","pi pi-sitemap","severity","secondary","size","small","data-testid","graph-layout-algorithm-toggle",3,"onClick","ariaLabel","pTooltip","text","rounded"],["severity","secondary","size","small","data-testid","graph-layout-direction-toggle",3,"onClick","icon","ariaLabel","pTooltip","text","rounded","disabled"],["severity","secondary","size","small","data-testid","graph-layout-spacing-toggle",3,"onClick","icon","ariaLabel","pTooltip","text","rounded","disabled"],["severity","secondary","size","small","data-testid","graph-connection-type-toggle",3,"onClick","ariaLabel","pTooltip","text","rounded"],["viewBox","0 0 16 16","aria-hidden","true",1,"graph__connection-svg","graph__connection-svg--toggle"],["fill","none","stroke","currentColor","stroke-width","2","stroke-linecap","round","stroke-linejoin","round"],["icon","pi pi-history","severity","secondary","size","small","data-testid","graph-reset-layout",3,"onClick","ariaLabel","pTooltip","text","rounded"],["appendTo","body","styleClass","graph__layout-popover"],["role","menu","data-testid","graph-layout-algorithm-menu",1,"graph__layout-menu"],["role","none"],["role","menu","data-testid","graph-layout-direction-menu",1,"graph__layout-icon-row"],["type","button","role","menuitemradio",1,"graph__layout-icon-item",3,"is-active","pTooltip"],["role","menu","data-testid","graph-layout-spacing-menu",1,"graph__layout-icon-row"],["role","menu","data-testid","graph-connection-type-menu",1,"graph__layout-icon-row"],[3,"fOutputId","fInputId","fOutputSide","fInputSide","fType","fBehavior","fReassignDisabled"],["fMarker","","viewBox","0 0 9 9","markerUnits","userSpaceOnUse",1,"sm-edge-dot",3,"type","width","height","refX","refY"],["cx","4.5","cy","4.5","r","3.5"],[3,"type"],["ngProjectAs","[fNodes]",5,["","fNodes",""],4,"fVirtualFor","fVirtualForOf"],["fNode","","fDragHandle","","fNodeInput","","fNodeOutput","",1,"sm-gnode-host",3,"fNodePositionChange","pointerdown","click","dblclick","fNodeId","fNodePosition","fInputId","fInputConnectableSide","fOutputId","fOutputConnectableSide"],[3,"expandedChange","favoriteToggle","node","stats","summary","selection","expanded","isFavorite"],[1,"sm-gnode__marker-anchor"],["slot","graph.node.alert",3,"node"],["fNode","","fDragHandle","","fNodeInput","","fNodeOutput","","fInputConnectableSide","top","fOutputConnectableSide","bottom",1,"sm-gnode-host",3,"fNodeId","fNodePosition","fInputId","fOutputId"],["fNode","","fDragHandle","","fNodeInput","","fNodeOutput","","fInputConnectableSide","top","fOutputConnectableSide","bottom",1,"sm-gnode-host",3,"fNodePositionChange","pointerdown","click","dblclick","fNodeId","fNodePosition","fInputId","fOutputId"],["type","button","role","menuitemradio",1,"graph__layout-menu-item",3,"click"],["type","button","role","menuitemradio",1,"graph__layout-icon-item",3,"click","pTooltip"],["aria-hidden","true"],["viewBox","0 0 16 16","aria-hidden","true",1,"graph__connection-svg"]],template:function(e,i){e&1&&(h(0,"section",5),P(1,Vee,4,1,"div",6)(2,Gee,6,2,"div",7)(3,Hee,6,2,"div",8)(4,ete,55,58,"div",9),B(5,"p-confirmdialog",10),m()),e&2&&(l(),M(i.loading()&&!i.hasData()?1:i.error()&&!i.hasData()?2:i.hasData()?4:3),l(4),D("ariaLabel",i.texts.resetLayoutConfirm.header))},dependencies:[tv,gr,mr,Ky,$y,_r,Qy,cy,dy,Yy,Py,ky,Xy,Zy,Nf,Ey,Jy,Gy,_p,yp,vp,xp,Lp,Mi,Pi,_a,ga,w0,oh,We,Ze,mn,Bp],styles:['[_nghost-%COMP%]{display:block;height:100%}.graph[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%}.graph__canvas-wrap[_ngcontent-%COMP%]{position:relative;flex:1;min-height:0;background:var(--sm-bg-content);overflow:hidden;--ff-connection-drag-handle-stroke: transparent;--ff-connection-drag-handle-fill: transparent;--ff-canvas-background-color: transparent}.graph__filter-stack[_ngcontent-%COMP%]{position:absolute;top:16px;left:16px;z-index:2;display:flex;flex-direction:column;gap:8px;pointer-events:none}.graph__filter-stack[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{pointer-events:auto}.graph__canvas-wrap[_ngcontent-%COMP%] f-flow[_ngcontent-%COMP%]{width:100%;height:100%}.graph__canvas-wrap[_ngcontent-%COMP%] .f-connection-drag-handle{fill:transparent;stroke:transparent}.graph__panel[_ngcontent-%COMP%]{position:absolute;top:0;right:0;bottom:0;background:var(--sm-bg-content);border-left:1px solid var(--sm-border);box-shadow:0 4px 24px #0000002e;transform:translate(100%);transition:transform .22s ease;z-index:20;pointer-events:none;display:flex;overflow:hidden}.graph__panel.is-open[_ngcontent-%COMP%]{transform:translate(0);pointer-events:auto}.graph__panel-scroll[_ngcontent-%COMP%]{flex:1;min-height:0;min-width:0;overflow-y:auto}.graph__panel-resize[_ngcontent-%COMP%]{position:absolute;top:0;left:0;bottom:0;width:6px;cursor:ew-resize;z-index:2;background:transparent;transition:background .12s ease}.graph__panel-resize[_ngcontent-%COMP%]:hover, .graph__panel-resize[_ngcontent-%COMP%]:active{background:color-mix(in srgb,var(--p-primary-color) 30%,transparent)}.graph__toolbar[_ngcontent-%COMP%]{position:absolute;bottom:16px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:2px;padding:4px;background:var(--sm-bg-content);border:1px solid var(--sm-border);border-radius:var(--sm-radius-pill);box-shadow:var(--sm-shadow-floating);z-index:2;pointer-events:auto;transition:box-shadow .22s ease}.graph__toolbar-sep[_ngcontent-%COMP%]{width:1px;height:18px;margin:0 2px;background:var(--sm-border);flex-shrink:0}.sm-gnode-host[_ngcontent-%COMP%]{position:relative;display:inline-block;cursor:pointer;--ff-node-width: auto;--ff-node-min-height: 0;--ff-node-padding: 0;--ff-node-background-color: transparent;--ff-node-border-color: transparent;--ff-node-border-color-selected: transparent;--ff-node-border-radius: 0;--ff-node-shadow: none;--ff-node-shadow-selected: none}.sm-gnode-host.f-selected[_ngcontent-%COMP%]{filter:drop-shadow(0 0 6px var(--p-primary-color-300))}.sm-gnode-host.f-selected[_ngcontent-%COMP%] > .sm-gnode[_ngcontent-%COMP%]{box-shadow:0 0 0 3px var(--p-primary-color),var(--sm-shadow-card)}.f-conn--invokes[_ngcontent-%COMP%]{--ff-connection-color: var(--sm-edge-invokes);--ff-connection-width: 1.5px;--ff-marker-color: var(--sm-edge-invokes)}.f-conn--references[_ngcontent-%COMP%]{--ff-connection-color: var(--sm-edge-references);--ff-connection-width: 1.25px;--ff-marker-color: var(--sm-edge-references)}.f-conn--mentions[_ngcontent-%COMP%]{--ff-connection-color: var(--sm-edge-mentions);--ff-connection-width: 1px;--ff-marker-color: var(--sm-edge-mentions)}.f-conn--supersedes[_ngcontent-%COMP%]{--ff-connection-color: var(--sm-edge-supersedes);--ff-connection-width: 1.25px;--ff-marker-color: var(--sm-edge-supersedes)}.graph__canvas-wrap[_ngcontent-%COMP%] .f-conn--supersedes .f-connection-path{stroke-dasharray:none}.f-conn--highlighted[_ngcontent-%COMP%]{--ff-connection-width: 2px}.f-conn--dimmed[_ngcontent-%COMP%]{opacity:.15}.f-connection.f-selected[_ngcontent-%COMP%]{--ff-connection-width: 2.5px}.f-conn--invokes.f-selected[_ngcontent-%COMP%]{--ff-connection-color: var(--sm-edge-invokes-active);--ff-connection-selected-color: var(--sm-edge-invokes-active);--ff-marker-color: var(--sm-edge-invokes-active)}.f-conn--references.f-selected[_ngcontent-%COMP%]{--ff-connection-color: var(--sm-edge-references-active);--ff-connection-selected-color: var(--sm-edge-references-active);--ff-marker-color: var(--sm-edge-references-active)}.f-conn--mentions.f-selected[_ngcontent-%COMP%]{--ff-connection-color: var(--sm-edge-mentions-active);--ff-connection-selected-color: var(--sm-edge-mentions-active);--ff-marker-color: var(--sm-edge-mentions-active)}.f-conn--supersedes.f-selected[_ngcontent-%COMP%]{--ff-connection-color: var(--sm-edge-supersedes-active);--ff-connection-selected-color: var(--sm-edge-supersedes-active);--ff-marker-color: var(--sm-edge-supersedes-active)}.sm-gnode__marker-anchor[_ngcontent-%COMP%]{position:absolute;top:-10px;right:-10px;z-index:4;display:inline-flex;align-items:center;gap:.25rem;pointer-events:none;transition:opacity .15s ease}sm-node-card.sm-gnode--dimmed[_ngcontent-%COMP%] + .sm-gnode__marker-anchor[_ngcontent-%COMP%]{opacity:.25}sm-node-card.sm-gnode--deprecated[_ngcontent-%COMP%] + .sm-gnode__marker-anchor[_ngcontent-%COMP%]{opacity:.55}[_nghost-%COMP%] .graph__layout-popover .p-popover-content{padding:4px}.graph__layout-menu[_ngcontent-%COMP%]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;min-width:160px}.graph__layout-menu-item[_ngcontent-%COMP%]{appearance:none;border:0;background:transparent;color:var(--sm-text);font:inherit;text-align:left;padding:6px 10px;border-radius:var(--sm-radius-sm, 4px);cursor:pointer;display:flex;align-items:center;gap:8px;transition:background .12s ease,color .12s ease}.graph__layout-menu-item[_ngcontent-%COMP%]:hover, .graph__layout-menu-item[_ngcontent-%COMP%]:focus-visible{background:color-mix(in srgb,var(--p-primary-color) 12%,transparent);outline:none}.graph__layout-menu-item.is-active[_ngcontent-%COMP%]{background:color-mix(in srgb,var(--p-primary-color) 18%,transparent);color:var(--p-primary-color);font-weight:600}.graph__layout-menu-item[_ngcontent-%COMP%]:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:transparent;flex-shrink:0}.graph__layout-menu-item.is-active[_ngcontent-%COMP%]:before{background:var(--p-primary-color)}.graph__layout-icon-row[_ngcontent-%COMP%]{display:inline-flex;flex-direction:row;gap:2px;padding:2px}.graph__layout-icon-item[_ngcontent-%COMP%]{appearance:none;border:0;background:transparent;color:var(--sm-text);cursor:pointer;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--sm-radius-sm, 4px);transition:background .12s ease,color .12s ease}.graph__layout-icon-item[_ngcontent-%COMP%] > i[_ngcontent-%COMP%]{font-size:1rem}.graph__connection-svg[_ngcontent-%COMP%]{width:20px;height:20px;overflow:visible}.graph__connection-svg--toggle[_ngcontent-%COMP%]{width:16px;height:16px}.graph__layout-icon-item[_ngcontent-%COMP%]:hover, .graph__layout-icon-item[_ngcontent-%COMP%]:focus-visible{background:color-mix(in srgb,var(--p-primary-color) 12%,transparent);outline:none}.graph__layout-icon-item.is-active[_ngcontent-%COMP%]{background:color-mix(in srgb,var(--p-primary-color) 18%,transparent);color:var(--p-primary-color)}'],changeDetection:0})};export{XD as GraphView};