@layers-app/editor 0.7.40 → 0.7.42
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +2 -2
- package/dist/index.d.ts +12 -2
- package/dist/index.js +4 -4
- package/dist/{layers.DK0kSLxX.js → layers.-WYTYnWK.js} +1 -1
- package/dist/{layers.kkSM0eG9.js → layers.-q1GBDww.js} +4 -4
- package/dist/{layers.CkIJsEZ3.js → layers.0GwlUhgo.js} +1 -1
- package/dist/{layers.Bvsn5fDB.js → layers.1ceHDx8C.js} +1 -1
- package/dist/{layers.8oCEAJSD.js → layers.3C1Klxc_.js} +3 -3
- package/dist/{layers.D6euAyZb.js → layers.3seCFp5m.js} +1 -1
- package/dist/{layers.B6ArVRX0.js → layers.4wtUlhUd.js} +1 -1
- package/dist/{layers.B5-XPuJv.js → layers.5iOhFhj7.js} +1 -1
- package/dist/{layers.Ch-OTWue.js → layers.9jKVPcdd.js} +1 -1
- package/dist/{layers.BunbPF61.js → layers.ACvQFP_B.js} +1 -1
- package/dist/{layers.CkO8feWE.js → layers.Adi0rjqQ.js} +1 -1
- package/dist/{layers.DzT6BmNY.js → layers.AfGBpUn1.js} +1 -1
- package/dist/{layers.C2KYF9xm.js → layers.B-1QcpX-.js} +1 -1
- package/dist/{layers.W6_pv4gE.js → layers.B3Fg5aAW.js} +1 -1
- package/dist/{layers.Kn-F2ikL.js → layers.B5GBTm7w.js} +1 -1
- package/dist/{layers.ClpDSHav.js → layers.B5MsCUAo.js} +1 -1
- package/dist/{layers.Dxrz-KQA.js → layers.B9Trszhw.js} +1 -1
- package/dist/{layers.BnveWyYr.js → layers.BBFsl73n.js} +2 -2
- package/dist/{layers.T5MyLSpn.js → layers.BDc6D4Kr.js} +1 -1
- package/dist/{layers.DlJYEWAo.js → layers.BEW8izM3.js} +2 -2
- package/dist/{layers.Brbuaj2u.js → layers.BEfZHHsH.js} +4 -4
- package/dist/{layers.RT_-zq2J.js → layers.BFqCPvxp.js} +1 -1
- package/dist/{layers.T5mDKJdQ.js → layers.BH-tVGLm.js} +1 -1
- package/dist/{layers.DDummMha.js → layers.BH8KgG6N.js} +1 -1
- package/dist/{layers.D_ozDMf2.js → layers.BHaTB_OU.js} +1 -1
- package/dist/{layers.BlLUTm4m.js → layers.BKlP3Rp5.js} +1 -1
- package/dist/{layers.iaEPEuVw.js → layers.BLEOXZZa.js} +1 -1
- package/dist/{layers.ClKCbO_Q.js → layers.BLOnMtzT.js} +2 -2
- package/dist/{layers.CsMhlUrc.js → layers.BMCUjVZr.js} +1 -1
- package/dist/{layers.lf6J_8dB.js → layers.BMTJR5V-.js} +1 -1
- package/dist/layers.BNMx0RP8.js +28138 -0
- package/dist/{layers.CGuDYEE_.js → layers.BPVUggs1.js} +1 -1
- package/dist/{layers.Cce8eowx.js → layers.BQ7gI5TW.js} +4 -4
- package/dist/{layers.Cxemr3Df.js → layers.BQFb7rfK.js} +1 -1
- package/dist/{layers.qHj0-EEm.js → layers.BQfDZ1XY.js} +1 -1
- package/dist/{layers.BeKzsQyM.js → layers.BUNgAzt2.js} +3 -3
- package/dist/layers.BVE5w1XI.js +8 -0
- package/dist/layers.BVRjFlUC.js +258 -0
- package/dist/{layers.Crebv_je.js → layers.BVYs5P5-.js} +1 -1
- package/dist/{layers.BYZYjIt-.js → layers.BVy4SrEU.js} +1 -1
- package/dist/{layers.DuWaDgO5.js → layers.BWalyAnV.js} +1 -1
- package/dist/{layers.Cdrea0-4.js → layers.BXN70Z1p.js} +1 -1
- package/dist/{layers.C25OKQSF.js → layers.BY6OuHj4.js} +2 -2
- package/dist/{layers.DIDUlj92.js → layers.BZNfbtoG.js} +1 -1
- package/dist/layers.BcCP-58E.js +1 -0
- package/dist/{layers.DhdTjv-I.js → layers.BglcFqY8.js} +1 -1
- package/dist/{layers.C3oHimh5.js → layers.BgptGTds.js} +3 -3
- package/dist/{layers.K11f8Nqy.js → layers.Biz9Si-B.js} +2 -2
- package/dist/{layers.u44WeKW2.js → layers.BjcNTuJq.js} +1 -1
- package/dist/{layers.DcsWnivt.js → layers.Bk1DPbZ8.js} +1 -1
- package/dist/{layers.CwXlcYLb.js → layers.BkLHGcim.js} +7 -7
- package/dist/{layers.D2RZscBT.js → layers.BkoLFzJh.js} +1 -1
- package/dist/{layers.Bhvv0n0d.js → layers.Bmx4iER7.js} +1 -1
- package/dist/{layers.Dy_ysjdI.js → layers.Bp8T5USV.js} +1 -1
- package/dist/{layers.DBrHVMMn.js → layers.BqMVmdXE.js} +1 -1
- package/dist/{layers.UpsOdQoy.js → layers.Bqb7FFSv.js} +1 -1
- package/dist/{layers.CjDqX2Wb.js → layers.BtXbD2Gq.js} +1 -1
- package/dist/{layers.DMdyy5lE.js → layers.Bvw4UsSb.js} +1 -1
- package/dist/{layers.D9ivQY9F.js → layers.Bz8pEB45.js} +1 -1
- package/dist/{layers.C_vw-i1k.js → layers.C-YJUyvL.js} +3 -3
- package/dist/{layers.GbvEmdou.js → layers.C0-gBZTZ.js} +1 -1
- package/dist/layers.C04ba_Dk.js +129 -0
- package/dist/{layers.DK46OcUI.js → layers.C0nmXpTl.js} +1 -1
- package/dist/{layers.CDBx1lG_.js → layers.C1QVX6Xl.js} +25 -25
- package/dist/{layers.BZdR6GD0.js → layers.C2EIWGlW.js} +1 -1
- package/dist/{layers.BFmr5UbT.js → layers.C2_od0Dc.js} +1 -1
- package/dist/{layers.CgxZxIsB.js → layers.C3590-Yq.js} +1 -1
- package/dist/{layers.Cfx80TWq.js → layers.C3Jl3qNt.js} +1 -1
- package/dist/{layers.iPj1rT3Y.js → layers.C51WO3G3.js} +1 -1
- package/dist/{layers.B8KeqzpX.js → layers.C5jguaPk.js} +1 -1
- package/dist/{layers.Dq97b5vi.js → layers.C7ZExN5Y.js} +1 -1
- package/dist/{layers.CcREZDm3.js → layers.C7oQBRE0.js} +1 -1
- package/dist/{layers.BbM08SoA.js → layers.C9Zpsdqs.js} +1 -1
- package/dist/{layers.JoFZVP9D.js → layers.CAJC-nl3.js} +1 -1
- package/dist/{layers.CAnd6eI1.js → layers.CE3HvIZz.js} +1 -1
- package/dist/{layers.Da6E5uzx.js → layers.CFBWi5RS.js} +1 -1
- package/dist/{layers.Cehn5Mi3.js → layers.CFywxPrt.js} +1 -1
- package/dist/{layers.CqwiUJxu.js → layers.CJv_mbZM.js} +1 -1
- package/dist/{layers.B27kKuWV.js → layers.CK60g40c.js} +1 -1
- package/dist/{layers.aRAHL4Se.js → layers.CLul97IO.js} +1 -1
- package/dist/{layers.-dsGo4Df.js → layers.CMBPgp1f.js} +5 -5
- package/dist/{layers.C9V89jIQ.js → layers.CNDPMdPL.js} +1 -1
- package/dist/{layers.CTTMvgCQ.js → layers.CPEFd37W.js} +3 -3
- package/dist/{layers.CEcQ3Nbv.js → layers.CSzfUATt.js} +3 -3
- package/dist/{layers.DddU1P1X.js → layers.CTQCWf4-.js} +1 -1
- package/dist/{layers.sc3IyqAE.js → layers.CVV0nJuL.js} +1 -1
- package/dist/{layers.x5NsounJ.js → layers.CYaD93jt.js} +1 -1
- package/dist/{layers.Cl5YMVc1.js → layers.CZNTIR1l.js} +1 -1
- package/dist/{layers.BmUEZiDu.js → layers.CZTIxh4r.js} +1 -1
- package/dist/{layers.CY96Svkw.js → layers.CZhug0Ib.js} +1 -1
- package/dist/{layers.Db5REx0K.js → layers.CZsPG2AG.js} +4 -4
- package/dist/{layers.DKLxH9_z.js → layers.CZuSWcxs.js} +1 -1
- package/dist/{layers.B2BlPY57.js → layers.CcFitHem.js} +1 -1
- package/dist/{layers.D3RRdEfU.js → layers.CcmC5PPf.js} +1 -1
- package/dist/{layers.C1YFCKcW.js → layers.CdFlGWzu.js} +1 -1
- package/dist/{layers.BAoTQKSI.js → layers.CecrMT1N.js} +1 -1
- package/dist/{layers.CnpL9Gpp.js → layers.CedPOo7p.js} +1 -1
- package/dist/{layers.Boj5qO1R.js → layers.CekrwdFP.js} +1 -1
- package/dist/{layers.Cx8eL8XH.js → layers.CjfBH299.js} +1 -1
- package/dist/{layers.BlBmCLNE.js → layers.CjsGkp9b.js} +1 -1
- package/dist/{layers.BrcxFxKk.js → layers.Cjt5Oyv0.js} +1 -1
- package/dist/{layers.BVx4rgmy.js → layers.CkB3JIeA.js} +1 -1
- package/dist/{layers.BSQgZJDT.js → layers.CoCd0wHE.js} +4 -4
- package/dist/{layers.C1RlrHT0.js → layers.Cpmet8vT.js} +1 -1
- package/dist/{layers.D7PNF8UM.js → layers.CqacMvDb.js} +1 -1
- package/dist/{layers.BYKimWlf.js → layers.CsniuqJV.js} +1 -1
- package/dist/{layers.DUu7ZgAJ.js → layers.Ct9Zf_S7.js} +4 -4
- package/dist/{layers.3ZLm7KOH.js → layers.CuXemfyF.js} +1 -1
- package/dist/{layers.DcKnucIX.js → layers.CvDpMrop.js} +1 -1
- package/dist/{layers.DOiW4mD2.js → layers.CvFbPFqH.js} +1 -1
- package/dist/{layers.D3Y4GnCY.js → layers.Cy-qxBnZ.js} +8 -8
- package/dist/{layers.BNYgVaAa.js → layers.CycK0cvs.js} +7 -7
- package/dist/{layers.C8V-NiD-.js → layers.D1J-APYC.js} +1 -1
- package/dist/{layers.BFqKqJVN.js → layers.D21OVdxe.js} +1 -1
- package/dist/{layers.CaF29IuO.js → layers.D2pCrIEI.js} +1 -1
- package/dist/{layers.3eWTtIcW.js → layers.D4BNh-Vu.js} +1 -1
- package/dist/{layers.BnC5WgIB.js → layers.D4b_7FiT.js} +1 -1
- package/dist/{layers.CO-iP9mk.js → layers.D4ythG4z.js} +1 -1
- package/dist/{layers.CyS7ocmX.js → layers.D6WGW5mD.js} +1 -1
- package/dist/{layers.C0xdDXQe.js → layers.D6yot_8p.js} +1 -1
- package/dist/{layers.DP7AJi5M.js → layers.D6zQl_eN.js} +1 -1
- package/dist/{layers.DKyOO6xD.js → layers.DA5MuCPH.js} +1 -1
- package/dist/{layers.DzqOy-oQ.js → layers.DAdJVsDC.js} +1 -1
- package/dist/{layers.M-RlIcpU.js → layers.DBA5cNWB.js} +1 -1
- package/dist/{layers.BgpNIF9k.js → layers.DBCm9UUG.js} +1 -1
- package/dist/{layers.BmN2OV4H.js → layers.DCfXS6Lt.js} +1 -1
- package/dist/{layers.CrKrtd_a.js → layers.DEFnU0xk.js} +3 -3
- package/dist/{layers.DtagIW50.js → layers.DEj22Eqd.js} +1 -1
- package/dist/{layers.BCHs8gKs.js → layers.DI2kTjPo.js} +1 -1
- package/dist/{layers.CwsQh2Gq.js → layers.DILwdL6t.js} +1 -1
- package/dist/{layers.BfTSDDvM.js → layers.DKyAq4Ov.js} +1 -1
- package/dist/{layers.CyMVRquQ.js → layers.DQ3VncXs.js} +1 -1
- package/dist/{layers.9kVYgib9.js → layers.DSIPnKcj.js} +1 -1
- package/dist/{layers.TVoTTCh2.js → layers.DSKJhjR1.js} +1 -1
- package/dist/{layers.BPnry5N0.js → layers.DSr5yUZW.js} +3 -3
- package/dist/{layers.2EJTHuRT.js → layers.DSu6Ogaz.js} +2 -2
- package/dist/{layers.D3uDbxNq.js → layers.DVGedfcw.js} +1 -1
- package/dist/{layers.5RsDlpn-.js → layers.DVt-kINL.js} +1 -1
- package/dist/{layers.BLeGHXyR.js → layers.DW-O-tqO.js} +1 -1
- package/dist/{layers.B_33RwNq.js → layers.DWX7q_oj.js} +3 -3
- package/dist/{layers.GPfBF-5B.js → layers.DX7H0708.js} +1 -1
- package/dist/{layers.CT5IxN3a.js → layers.DYfD5_3p.js} +1 -1
- package/dist/{layers.0JBgf_FJ.js → layers.DYnNIoY-.js} +1 -1
- package/dist/{layers.CN_PPKdT.js → layers.DYyHK0aB.js} +2 -2
- package/dist/{layers.C-VCvdCo.js → layers.DZfbpF3V.js} +1 -1
- package/dist/{layers.MUm4CFUK.js → layers.DZo7Eyhw.js} +1 -1
- package/dist/{layers.b7WCIERl.js → layers.D_4R1ZSo.js} +1 -1
- package/dist/{layers.DZ-LohMU.js → layers.D_JsgZkZ.js} +1 -1
- package/dist/layers.D_Q8YOfJ.js +1 -0
- package/dist/{layers.Bep_FUmR.js → layers.DcVZfpJ_.js} +1 -1
- package/dist/{layers.Cxv6Q3fg.js → layers.DdH20ja-.js} +1 -1
- package/dist/{layers.BX6utSIp.js → layers.Df1TUgIu.js} +1 -1
- package/dist/{layers.QeKkWb7f.js → layers.Dhk83Ipt.js} +1 -1
- package/dist/{layers.B8tW-rjh.js → layers.DjN9QZn7.js} +1 -1
- package/dist/{layers.BjTH4BQY.js → layers.Djizg_2G.js} +1 -1
- package/dist/{layers.GIy7n-LM.js → layers.DkBUd60x.js} +1 -1
- package/dist/{layers.Deqj0KhF.js → layers.Dl2llq6u.js} +1 -1
- package/dist/{layers.BM7ei91l.js → layers.Dm5ngCMh.js} +1 -1
- package/dist/{layers.B0rV-UAE.js → layers.DoLRPac0.js} +1 -1
- package/dist/{layers.HC7XTHrX.js → layers.DoNkrTqt.js} +1 -1
- package/dist/layers.DqqFKOJp.js +6 -0
- package/dist/layers.DrDFWHc3.js +1 -0
- package/dist/{layers.CtDY6qdX.js → layers.Drav_qcm.js} +1 -1
- package/dist/{layers.OSH4kppq.js → layers.DsnNnwhL.js} +1 -1
- package/dist/{layers.I3Rx3kYs.js → layers.DuqNbO18.js} +1 -1
- package/dist/{layers.DpBIw4-t.js → layers.Dz_CI_Fa.js} +1 -1
- package/dist/{layers.Dy12RYQh.js → layers.Eux2URlS.js} +1 -1
- package/dist/{layers.JHIXsJYC.js → layers.F0Htc0vN.js} +1 -1
- package/dist/{layers.DLygjjc4.js → layers.GAs5-_U5.js} +1 -1
- package/dist/{layers.D0rQb1bZ.js → layers.GXgxXDXY.js} +4 -4
- package/dist/{layers.D1TYqMJ8.js → layers.HXifgbRd.js} +1 -1
- package/dist/{layers.BXntNGpc.js → layers.IGr8EpK-.js} +4 -4
- package/dist/{layers.BJj1yGOJ.js → layers.JOfgipnP.js} +1 -1
- package/dist/{layers.Cb3HgqbK.js → layers.KKW4-XQ_.js} +3 -3
- package/dist/{layers.CVRdqJkl.js → layers.LIfCWmjz.js} +1 -1
- package/dist/{layers.CrlccmbS.js → layers.NlLb5YHh.js} +1 -1
- package/dist/{layers.IVe_Ys3f.js → layers.NnlPWYqr.js} +1 -1
- package/dist/{layers.CChmIM27.js → layers.OIJOUM7Y.js} +1 -1
- package/dist/{layers.BNB65Q4G.js → layers.OsDF6ak0.js} +1 -1
- package/dist/{layers.D-Ut3Wq5.js → layers.OwGkAQYb.js} +1 -1
- package/dist/layers.R8mPlCA0.js +261 -0
- package/dist/{layers.BIUjTpJv.js → layers.Whgggs9u.js} +1 -1
- package/dist/{layers.B7B4CTHy.js → layers.acMZatdI.js} +4 -4
- package/dist/{layers.DC08wULq.js → layers.al-lVgbb.js} +4 -4
- package/dist/layers.b9B2NY7n.js +11690 -0
- package/dist/{layers.esmxXiRv.js → layers.c4bvOvfT.js} +1 -1
- package/dist/{layers.BqyAcw31.js → layers.grgyE8UI.js} +1 -1
- package/dist/{layers.BoboD8cn.js → layers.h47AEIVe.js} +1 -1
- package/dist/{layers.CD3kQjVT.js → layers.i6vT0g7A.js} +1 -1
- package/dist/{layers.DA2_TQmL.js → layers.iux8b4-i.js} +1 -1
- package/dist/{layers.C3BZTl0A.js → layers.khlOiajc.js} +6 -6
- package/dist/{layers.BGFAe4bs.js → layers.mRI_aHXT.js} +5 -5
- package/dist/{layers.CCR_grs7.js → layers.mkqQBzFk.js} +1 -1
- package/dist/{layers.BdWr2G8y.js → layers.nMhw2kqG.js} +1 -1
- package/dist/{layers.D2kmVEIQ.js → layers.o_LON7gL.js} +1 -1
- package/dist/{layers.Dc7TYw8K.js → layers.p3FInBUH.js} +1 -1
- package/dist/{layers.D_EIsxK4.js → layers.pkM5fPPJ.js} +1 -1
- package/dist/{layers.7uj7tRRY.js → layers.ragNiaN3.js} +1 -1
- package/dist/{layers.zAzrkTHW.js → layers.t1vS44PF.js} +1 -1
- package/dist/{layers.D5TvTW5g.js → layers.tRJ6agBB.js} +3 -3
- package/dist/{layers.a0DUrYQV.js → layers.tiMQzy3i.js} +1 -1
- package/dist/{layers.Dpf3e0LU.js → layers.uFVAIups.js} +1 -1
- package/dist/{layers.oJkDGOrD.js → layers.v4srTVt8.js} +1 -1
- package/dist/{layers.DLDSRda2.js → layers.v6qktDbk.js} +1 -1
- package/dist/{layers.B8jizJtX.js → layers.vXybTs00.js} +1 -1
- package/dist/{layers.D74s8WqS.js → layers.wobc6Wpr.js} +1 -1
- package/dist/{layers.DujsH1Q_.js → layers.yGzN1dU_.js} +1 -1
- package/dist/{layers.pB3ZlJhn.js → layers.zCeo5Zqb.js} +1 -1
- package/package.json +2 -2
- package/dist/layers.BfnHUGGD.js +0 -389
- package/dist/layers.BfuL2TCO.js +0 -8
- package/dist/layers.BkMx876N.js +0 -39423
- package/dist/layers.C8EEJkwf.js +0 -1
- package/dist/layers.CfQQOmhy.js +0 -6
- package/dist/layers.DF5JPvvr.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const P=require("lodash-es"),J=require("./layers.Cyzu9PKQ.js"),k=require("./layers.BLd2spTm.js"),u=require("./layers.BJj1yGOJ.js"),i=require("./layers.DUu7ZgAJ.js"),j=require("./layers.zAzrkTHW.js");function G(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const m=G(P);function x(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:M(e),edges:F(e)};return m.isUndefined(e.graph())||(t.value=m.clone(e.graph())),t}function M(e){return m.map(e.nodes(),function(t){var n=e.node(t),r=e.parent(t),s={v:t};return m.isUndefined(n)||(s.value=n),m.isUndefined(r)||(s.parent=r),s})}function F(e){return m.map(e.edges(),function(t){var n=e.edge(t),r={v:t.v,w:t.w};return m.isUndefined(t.name)||(r.name=t.name),m.isUndefined(n)||(r.value=n),r})}let a={},w={},p={};const q=()=>{w={},p={},a={}},X=(e,t)=>(i.log$1.trace("In isDescendant",t," ",e," = ",w[t].includes(e)),!!w[t].includes(e)),_=(e,t)=>(i.log$1.info("Descendants of ",t," is ",w[t]),i.log$1.info("Edge is ",e),e.v===t||e.w===t?!1:w[t]?w[t].includes(e.v)||X(e.v,t)||X(e.w,t)||w[t].includes(e.w):(i.log$1.debug("Tilt, ",t,",not in descendants"),!1)),B=(e,t,n,r)=>{i.log$1.warn("Copying children of ",e,"root",r,"data",t.node(e),r);const s=t.children(e)||[];e!==r&&s.push(e),i.log$1.warn("Copying (nodes) clusterId",e,"nodes",s),s.forEach(o=>{if(t.children(o).length>0)B(o,t,n,r);else{const f=t.node(o);i.log$1.info("cp ",o," to ",r," with parent ",e),n.setNode(o,f),r!==t.parent(o)&&(i.log$1.warn("Setting parent",o,t.parent(o)),n.setParent(o,t.parent(o))),e!==r&&o!==e?(i.log$1.debug("Setting parent",o,e),n.setParent(o,e)):(i.log$1.info("In copy ",e,"root",r,"data",t.node(e),r),i.log$1.debug("Not Setting parent for node=",o,"cluster!==rootId",e!==r,"node!==clusterId",o!==e));const g=t.edges(o);i.log$1.debug("Copying Edges",g),g.forEach(d=>{i.log$1.info("Edge",d);const h=t.edge(d.v,d.w,d.name);i.log$1.info("Edge data",h,r);try{_(d,r)?(i.log$1.info("Copying as ",d.v,d.w,h,d.name),n.setEdge(d.v,d.w,h,d.name),i.log$1.info("newGraph edges ",n.edges(),n.edge(n.edges()[0]))):i.log$1.info("Skipping copy of edge ",d.v,"-->",d.w," rootId: ",r," clusterId:",e)}catch($){i.log$1.error($)}})}i.log$1.debug("Removing node",o),t.removeNode(o)})},D=(e,t)=>{const n=t.children(e);let r=[...n];for(const s of n)p[s]=e,r=[...r,...D(s,t)];return r},C=(e,t)=>{i.log$1.trace("Searching",e);const n=t.children(e);if(i.log$1.trace("Searching children of id ",e,n),n.length<1)return i.log$1.trace("This is a valid node",e),e;for(const r of n){const s=C(r,t);if(s)return i.log$1.trace("Found replacement for",e," => ",s),s}},S=e=>!a[e]||!a[e].externalConnections?e:a[e]?a[e].id:e,U=(e,t)=>{if(!e||t>10){i.log$1.debug("Opting out, no graph ");return}else i.log$1.debug("Opting in, graph ");e.nodes().forEach(function(n){e.children(n).length>0&&(i.log$1.warn("Cluster identified",n," Replacement id in edges: ",C(n,e)),w[n]=D(n,e),a[n]={id:C(n,e),clusterData:e.node(n)})}),e.nodes().forEach(function(n){const r=e.children(n),s=e.edges();r.length>0?(i.log$1.debug("Cluster identified",n,w),s.forEach(o=>{if(o.v!==n&&o.w!==n){const f=X(o.v,n),g=X(o.w,n);f^g&&(i.log$1.warn("Edge: ",o," leaves cluster ",n),i.log$1.warn("Descendants of XXX ",n,": ",w[n]),a[n].externalConnections=!0)}})):i.log$1.debug("Not a cluster ",n,w)});for(let n of Object.keys(a)){const r=a[n].id,s=e.parent(r);s!==n&&a[s]&&!a[s].externalConnections&&(a[n].id=s)}e.edges().forEach(function(n){const r=e.edge(n);i.log$1.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(n)),i.log$1.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(e.edge(n)));let s=n.v,o=n.w;if(i.log$1.warn("Fix XXX",a,"ids:",n.v,n.w,"Translating: ",a[n.v]," --- ",a[n.w]),a[n.v]&&a[n.w]&&a[n.v]===a[n.w]){i.log$1.warn("Fixing and trixing link to self - removing XXX",n.v,n.w,n.name),i.log$1.warn("Fixing and trixing - removing XXX",n.v,n.w,n.name),s=S(n.v),o=S(n.w),e.removeEdge(n.v,n.w,n.name);const f=n.w+"---"+n.v;e.setNode(f,{domId:f,id:f,labelStyle:"",labelText:r.label,padding:0,shape:"labelRect",style:""});const g=structuredClone(r),d=structuredClone(r);g.label="",g.arrowTypeEnd="none",d.label="",g.fromCluster=n.v,d.toCluster=n.v,e.setEdge(s,f,g,n.name+"-cyclic-special"),e.setEdge(f,o,d,n.name+"-cyclic-special")}else if(a[n.v]||a[n.w]){if(i.log$1.warn("Fixing and trixing - removing XXX",n.v,n.w,n.name),s=S(n.v),o=S(n.w),e.removeEdge(n.v,n.w,n.name),s!==n.v){const f=e.parent(s);a[f].externalConnections=!0,r.fromCluster=n.v}if(o!==n.w){const f=e.parent(o);a[f].externalConnections=!0,r.toCluster=n.w}i.log$1.warn("Fix Replacing with XXX",s,o,n.name),e.setEdge(s,o,r,n.name)}}),i.log$1.warn("Adjusted Graph",x(e)),T(e,0),i.log$1.trace(a)},T=(e,t)=>{if(i.log$1.warn("extractor - ",t,x(e),e.children("D")),t>10){i.log$1.error("Bailing out");return}let n=e.nodes(),r=!1;for(const s of n){const o=e.children(s);r=r||o.length>0}if(!r){i.log$1.debug("Done, no node has children",e.nodes());return}i.log$1.debug("Nodes = ",n,t);for(const s of n)if(i.log$1.debug("Extracting node",s,a,a[s]&&!a[s].externalConnections,!e.parent(s),e.node(s),e.children("D")," Depth ",t),!a[s])i.log$1.debug("Not a cluster",s,t);else if(!a[s].externalConnections&&e.children(s)&&e.children(s).length>0){i.log$1.warn("Cluster without external connections, without a parent and with children",s,t);let f=e.graph().rankdir==="TB"?"LR":"TB";a[s]&&a[s].clusterData&&a[s].clusterData.dir&&(f=a[s].clusterData.dir,i.log$1.warn("Fixing dir",a[s].clusterData.dir,f));const g=new k.Graph({multigraph:!0,compound:!0}).setGraph({rankdir:f,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});i.log$1.warn("Old graph before copy",x(e)),B(s,e,g,s),e.setNode(s,{clusterNode:!0,id:s,clusterData:a[s].clusterData,labelText:a[s].labelText,graph:g}),i.log$1.warn("New graph after copy node: (",s,")",x(g)),i.log$1.debug("Old graph after copy",x(e))}else i.log$1.warn("Cluster ** ",s," **not meeting the criteria !externalConnections:",!a[s].externalConnections," no parent: ",!e.parent(s)," children ",e.children(s)&&e.children(s).length>0,e.children("D"),t),i.log$1.debug(a);n=e.nodes(),i.log$1.warn("New list of nodes",n);for(const s of n){const o=e.node(s);i.log$1.warn(" Now next level",s,o),o.clusterNode&&T(o.graph,t+1)}},O=(e,t)=>{if(t.length===0)return[];let n=Object.assign(t);return t.forEach(r=>{const s=e.children(r),o=O(e,s);n=[...n,...o]}),n},A=e=>O(e,e.children()),H=(e,t)=>{i.log$1.info("Creating subgraph rect for ",t.id,t);const n=i.getConfig(),r=e.insert("g").attr("class","cluster"+(t.class?" "+t.class:"")).attr("id",t.id),s=r.insert("rect",":first-child"),o=i.evaluate(n.flowchart.htmlLabels),f=r.insert("g").attr("class","cluster-label"),g=t.labelType==="markdown"?j.createText(f,t.labelText,{style:t.labelStyle,useHtmlLabels:o}):f.node().appendChild(u.createLabel$1(t.labelText,t.labelStyle,void 0,!0));let d=g.getBBox();if(i.evaluate(n.flowchart.htmlLabels)){const l=g.children[0],c=i.select(g);d=l.getBoundingClientRect(),c.attr("width",d.width),c.attr("height",d.height)}const h=0*t.padding,$=h/2,y=t.width<=d.width+h?d.width+h:t.width;t.width<=d.width+h?t.diff=(d.width-t.width)/2-t.padding/2:t.diff=-t.padding/2,i.log$1.trace("Data ",t,JSON.stringify(t)),s.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-y/2).attr("y",t.y-t.height/2-$).attr("width",y).attr("height",t.height+h);const{subGraphTitleTopMargin:N}=u.getSubGraphTitleMargins(n);o?f.attr("transform",`translate(${t.x-d.width/2}, ${t.y-t.height/2+N})`):f.attr("transform",`translate(${t.x}, ${t.y-t.height/2+N})`);const b=s.node().getBBox();return t.width=b.width,t.height=b.height,t.intersect=function(l){return u.intersectRect$1(t,l)},r},V=(e,t)=>{const n=e.insert("g").attr("class","note-cluster").attr("id",t.id),r=n.insert("rect",":first-child"),s=0*t.padding,o=s/2;r.attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-t.width/2-o).attr("y",t.y-t.height/2-o).attr("width",t.width+s).attr("height",t.height+s).attr("fill","none");const f=r.node().getBBox();return t.width=f.width,t.height=f.height,t.intersect=function(g){return u.intersectRect$1(t,g)},n},z=(e,t)=>{const n=i.getConfig(),r=e.insert("g").attr("class",t.classes).attr("id",t.id),s=r.insert("rect",":first-child"),o=r.insert("g").attr("class","cluster-label"),f=r.append("rect"),g=o.node().appendChild(u.createLabel$1(t.labelText,t.labelStyle,void 0,!0));let d=g.getBBox();if(i.evaluate(n.flowchart.htmlLabels)){const l=g.children[0],c=i.select(g);d=l.getBoundingClientRect(),c.attr("width",d.width),c.attr("height",d.height)}d=g.getBBox();const h=0*t.padding,$=h/2,y=t.width<=d.width+t.padding?d.width+t.padding:t.width;t.width<=d.width+t.padding?t.diff=(d.width+t.padding*0-t.width)/2:t.diff=-t.padding/2,s.attr("class","outer").attr("x",t.x-y/2-$).attr("y",t.y-t.height/2-$).attr("width",y+h).attr("height",t.height+h),f.attr("class","inner").attr("x",t.x-y/2-$).attr("y",t.y-t.height/2-$+d.height-1).attr("width",y+h).attr("height",t.height+h-d.height-3);const{subGraphTitleTopMargin:N}=u.getSubGraphTitleMargins(n);o.attr("transform",`translate(${t.x-d.width/2}, ${t.y-t.height/2-t.padding/3+(i.evaluate(n.flowchart.htmlLabels)?5:3)+N})`);const b=s.node().getBBox();return t.height=b.height,t.intersect=function(l){return u.intersectRect$1(t,l)},r},W=(e,t)=>{const n=e.insert("g").attr("class",t.classes).attr("id",t.id),r=n.insert("rect",":first-child"),s=0*t.padding,o=s/2;r.attr("class","divider").attr("x",t.x-t.width/2-o).attr("y",t.y-t.height/2).attr("width",t.width+s).attr("height",t.height+s);const f=r.node().getBBox();return t.width=f.width,t.height=f.height,t.diff=-t.padding/2,t.intersect=function(g){return u.intersectRect$1(t,g)},n},K={rect:H,roundedWithTitle:z,noteGroup:V,divider:W};let R={};const Q=(e,t)=>{i.log$1.trace("Inserting cluster");const n=t.shape||"rect";R[t.id]=K[n](e,t)},Y=()=>{R={}},L=async(e,t,n,r,s,o)=>{i.log$1.info("Graph in recursive render: XXX",x(t),s);const f=t.graph().rankdir;i.log$1.trace("Dir in recursive render - dir:",f);const g=e.insert("g").attr("class","root");t.nodes()?i.log$1.info("Recursive render XXX",t.nodes()):i.log$1.info("No nodes found for",t),t.edges().length>0&&i.log$1.trace("Recursive edges",t.edge(t.edges()[0]));const d=g.insert("g").attr("class","clusters"),h=g.insert("g").attr("class","edgePaths"),$=g.insert("g").attr("class","edgeLabels"),y=g.insert("g").attr("class","nodes");await Promise.all(t.nodes().map(async function(l){const c=t.node(l);if(s!==void 0){const v=JSON.parse(JSON.stringify(s.clusterData));i.log$1.info("Setting data for cluster XXX (",l,") ",v,s),t.setNode(s.id,v),t.parent(l)||(i.log$1.trace("Setting parent",l,s.id),t.setParent(l,s.id,v))}if(i.log$1.info("(Insert) Node XXX"+l+": "+JSON.stringify(t.node(l))),c&&c.clusterNode){i.log$1.info("Cluster identified",l,c.width,t.node(l));const v=await L(y,c.graph,n,r,t.node(l),o),E=v.elem;u.updateNodeBounds(c,E),c.diff=v.diff||0,i.log$1.info("Node bounds (abc123)",l,c,c.width,c.x,c.y),u.setNodeElem(E,c),i.log$1.warn("Recursive render complete ",E,c)}else t.children(l).length>0?(i.log$1.info("Cluster - the non recursive path XXX",l,c.id,c,t),i.log$1.info(C(c.id,t)),a[c.id]={id:C(c.id,t),node:c}):(i.log$1.info("Node - the non recursive path",l,c.id,c),await u.insertNode(y,t.node(l),f))})),t.edges().forEach(function(l){const c=t.edge(l.v,l.w,l.name);i.log$1.info("Edge "+l.v+" -> "+l.w+": "+JSON.stringify(l)),i.log$1.info("Edge "+l.v+" -> "+l.w+": ",l," ",JSON.stringify(t.edge(l))),i.log$1.info("Fix",a,"ids:",l.v,l.w,"Translating: ",a[l.v],a[l.w]),u.insertEdgeLabel($,c)}),t.edges().forEach(function(l){i.log$1.info("Edge "+l.v+" -> "+l.w+": "+JSON.stringify(l))}),i.log$1.info("#############################################"),i.log$1.info("### Layout ###"),i.log$1.info("#############################################"),i.log$1.info(t),J.layout(t),i.log$1.info("Graph after layout:",x(t));let N=0;const{subGraphTitleTotalMargin:b}=u.getSubGraphTitleMargins(o);return A(t).forEach(function(l){const c=t.node(l);i.log$1.info("Position "+l+": "+JSON.stringify(t.node(l))),i.log$1.info("Position "+l+": ("+c.x,","+c.y,") width: ",c.width," height: ",c.height),c&&c.clusterNode?(c.y+=b,u.positionNode(c)):t.children(l).length>0?(c.height+=b,Q(d,c),a[c.id].node=c):(c.y+=b/2,u.positionNode(c))}),t.edges().forEach(function(l){const c=t.edge(l);i.log$1.info("Edge "+l.v+" -> "+l.w+": "+JSON.stringify(c),c),c.points.forEach(E=>E.y+=b/2);const v=u.insertEdge(h,l,c,a,n,t,r);u.positionEdgeLabel(c,v)}),t.nodes().forEach(function(l){const c=t.node(l);i.log$1.info(l,c.type,c.diff),c.type==="group"&&(N=c.diff)}),{elem:g,diff:N}},Z=async(e,t,n,r,s)=>{u.insertMarkers$1(e,n,r,s),u.clear$1(),u.clear(),Y(),q(),i.log$1.warn("Graph at first:",JSON.stringify(x(t))),U(t),i.log$1.warn("Graph after:",JSON.stringify(x(t)));const o=i.getConfig();await L(e,t,r,s,void 0,o)};exports.render=Z;
|
|
1
|
+
"use strict";const P=require("lodash-es"),J=require("./layers.Cyzu9PKQ.js"),k=require("./layers.BLd2spTm.js"),u=require("./layers.JOfgipnP.js"),i=require("./layers.Ct9Zf_S7.js"),j=require("./layers.t1vS44PF.js");function G(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const m=G(P);function x(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:M(e),edges:F(e)};return m.isUndefined(e.graph())||(t.value=m.clone(e.graph())),t}function M(e){return m.map(e.nodes(),function(t){var n=e.node(t),r=e.parent(t),s={v:t};return m.isUndefined(n)||(s.value=n),m.isUndefined(r)||(s.parent=r),s})}function F(e){return m.map(e.edges(),function(t){var n=e.edge(t),r={v:t.v,w:t.w};return m.isUndefined(t.name)||(r.name=t.name),m.isUndefined(n)||(r.value=n),r})}let a={},w={},p={};const q=()=>{w={},p={},a={}},X=(e,t)=>(i.log$1.trace("In isDescendant",t," ",e," = ",w[t].includes(e)),!!w[t].includes(e)),_=(e,t)=>(i.log$1.info("Descendants of ",t," is ",w[t]),i.log$1.info("Edge is ",e),e.v===t||e.w===t?!1:w[t]?w[t].includes(e.v)||X(e.v,t)||X(e.w,t)||w[t].includes(e.w):(i.log$1.debug("Tilt, ",t,",not in descendants"),!1)),B=(e,t,n,r)=>{i.log$1.warn("Copying children of ",e,"root",r,"data",t.node(e),r);const s=t.children(e)||[];e!==r&&s.push(e),i.log$1.warn("Copying (nodes) clusterId",e,"nodes",s),s.forEach(o=>{if(t.children(o).length>0)B(o,t,n,r);else{const f=t.node(o);i.log$1.info("cp ",o," to ",r," with parent ",e),n.setNode(o,f),r!==t.parent(o)&&(i.log$1.warn("Setting parent",o,t.parent(o)),n.setParent(o,t.parent(o))),e!==r&&o!==e?(i.log$1.debug("Setting parent",o,e),n.setParent(o,e)):(i.log$1.info("In copy ",e,"root",r,"data",t.node(e),r),i.log$1.debug("Not Setting parent for node=",o,"cluster!==rootId",e!==r,"node!==clusterId",o!==e));const g=t.edges(o);i.log$1.debug("Copying Edges",g),g.forEach(d=>{i.log$1.info("Edge",d);const h=t.edge(d.v,d.w,d.name);i.log$1.info("Edge data",h,r);try{_(d,r)?(i.log$1.info("Copying as ",d.v,d.w,h,d.name),n.setEdge(d.v,d.w,h,d.name),i.log$1.info("newGraph edges ",n.edges(),n.edge(n.edges()[0]))):i.log$1.info("Skipping copy of edge ",d.v,"-->",d.w," rootId: ",r," clusterId:",e)}catch($){i.log$1.error($)}})}i.log$1.debug("Removing node",o),t.removeNode(o)})},D=(e,t)=>{const n=t.children(e);let r=[...n];for(const s of n)p[s]=e,r=[...r,...D(s,t)];return r},C=(e,t)=>{i.log$1.trace("Searching",e);const n=t.children(e);if(i.log$1.trace("Searching children of id ",e,n),n.length<1)return i.log$1.trace("This is a valid node",e),e;for(const r of n){const s=C(r,t);if(s)return i.log$1.trace("Found replacement for",e," => ",s),s}},S=e=>!a[e]||!a[e].externalConnections?e:a[e]?a[e].id:e,U=(e,t)=>{if(!e||t>10){i.log$1.debug("Opting out, no graph ");return}else i.log$1.debug("Opting in, graph ");e.nodes().forEach(function(n){e.children(n).length>0&&(i.log$1.warn("Cluster identified",n," Replacement id in edges: ",C(n,e)),w[n]=D(n,e),a[n]={id:C(n,e),clusterData:e.node(n)})}),e.nodes().forEach(function(n){const r=e.children(n),s=e.edges();r.length>0?(i.log$1.debug("Cluster identified",n,w),s.forEach(o=>{if(o.v!==n&&o.w!==n){const f=X(o.v,n),g=X(o.w,n);f^g&&(i.log$1.warn("Edge: ",o," leaves cluster ",n),i.log$1.warn("Descendants of XXX ",n,": ",w[n]),a[n].externalConnections=!0)}})):i.log$1.debug("Not a cluster ",n,w)});for(let n of Object.keys(a)){const r=a[n].id,s=e.parent(r);s!==n&&a[s]&&!a[s].externalConnections&&(a[n].id=s)}e.edges().forEach(function(n){const r=e.edge(n);i.log$1.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(n)),i.log$1.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(e.edge(n)));let s=n.v,o=n.w;if(i.log$1.warn("Fix XXX",a,"ids:",n.v,n.w,"Translating: ",a[n.v]," --- ",a[n.w]),a[n.v]&&a[n.w]&&a[n.v]===a[n.w]){i.log$1.warn("Fixing and trixing link to self - removing XXX",n.v,n.w,n.name),i.log$1.warn("Fixing and trixing - removing XXX",n.v,n.w,n.name),s=S(n.v),o=S(n.w),e.removeEdge(n.v,n.w,n.name);const f=n.w+"---"+n.v;e.setNode(f,{domId:f,id:f,labelStyle:"",labelText:r.label,padding:0,shape:"labelRect",style:""});const g=structuredClone(r),d=structuredClone(r);g.label="",g.arrowTypeEnd="none",d.label="",g.fromCluster=n.v,d.toCluster=n.v,e.setEdge(s,f,g,n.name+"-cyclic-special"),e.setEdge(f,o,d,n.name+"-cyclic-special")}else if(a[n.v]||a[n.w]){if(i.log$1.warn("Fixing and trixing - removing XXX",n.v,n.w,n.name),s=S(n.v),o=S(n.w),e.removeEdge(n.v,n.w,n.name),s!==n.v){const f=e.parent(s);a[f].externalConnections=!0,r.fromCluster=n.v}if(o!==n.w){const f=e.parent(o);a[f].externalConnections=!0,r.toCluster=n.w}i.log$1.warn("Fix Replacing with XXX",s,o,n.name),e.setEdge(s,o,r,n.name)}}),i.log$1.warn("Adjusted Graph",x(e)),T(e,0),i.log$1.trace(a)},T=(e,t)=>{if(i.log$1.warn("extractor - ",t,x(e),e.children("D")),t>10){i.log$1.error("Bailing out");return}let n=e.nodes(),r=!1;for(const s of n){const o=e.children(s);r=r||o.length>0}if(!r){i.log$1.debug("Done, no node has children",e.nodes());return}i.log$1.debug("Nodes = ",n,t);for(const s of n)if(i.log$1.debug("Extracting node",s,a,a[s]&&!a[s].externalConnections,!e.parent(s),e.node(s),e.children("D")," Depth ",t),!a[s])i.log$1.debug("Not a cluster",s,t);else if(!a[s].externalConnections&&e.children(s)&&e.children(s).length>0){i.log$1.warn("Cluster without external connections, without a parent and with children",s,t);let f=e.graph().rankdir==="TB"?"LR":"TB";a[s]&&a[s].clusterData&&a[s].clusterData.dir&&(f=a[s].clusterData.dir,i.log$1.warn("Fixing dir",a[s].clusterData.dir,f));const g=new k.Graph({multigraph:!0,compound:!0}).setGraph({rankdir:f,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});i.log$1.warn("Old graph before copy",x(e)),B(s,e,g,s),e.setNode(s,{clusterNode:!0,id:s,clusterData:a[s].clusterData,labelText:a[s].labelText,graph:g}),i.log$1.warn("New graph after copy node: (",s,")",x(g)),i.log$1.debug("Old graph after copy",x(e))}else i.log$1.warn("Cluster ** ",s," **not meeting the criteria !externalConnections:",!a[s].externalConnections," no parent: ",!e.parent(s)," children ",e.children(s)&&e.children(s).length>0,e.children("D"),t),i.log$1.debug(a);n=e.nodes(),i.log$1.warn("New list of nodes",n);for(const s of n){const o=e.node(s);i.log$1.warn(" Now next level",s,o),o.clusterNode&&T(o.graph,t+1)}},O=(e,t)=>{if(t.length===0)return[];let n=Object.assign(t);return t.forEach(r=>{const s=e.children(r),o=O(e,s);n=[...n,...o]}),n},A=e=>O(e,e.children()),H=(e,t)=>{i.log$1.info("Creating subgraph rect for ",t.id,t);const n=i.getConfig(),r=e.insert("g").attr("class","cluster"+(t.class?" "+t.class:"")).attr("id",t.id),s=r.insert("rect",":first-child"),o=i.evaluate(n.flowchart.htmlLabels),f=r.insert("g").attr("class","cluster-label"),g=t.labelType==="markdown"?j.createText(f,t.labelText,{style:t.labelStyle,useHtmlLabels:o}):f.node().appendChild(u.createLabel$1(t.labelText,t.labelStyle,void 0,!0));let d=g.getBBox();if(i.evaluate(n.flowchart.htmlLabels)){const l=g.children[0],c=i.select(g);d=l.getBoundingClientRect(),c.attr("width",d.width),c.attr("height",d.height)}const h=0*t.padding,$=h/2,y=t.width<=d.width+h?d.width+h:t.width;t.width<=d.width+h?t.diff=(d.width-t.width)/2-t.padding/2:t.diff=-t.padding/2,i.log$1.trace("Data ",t,JSON.stringify(t)),s.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-y/2).attr("y",t.y-t.height/2-$).attr("width",y).attr("height",t.height+h);const{subGraphTitleTopMargin:N}=u.getSubGraphTitleMargins(n);o?f.attr("transform",`translate(${t.x-d.width/2}, ${t.y-t.height/2+N})`):f.attr("transform",`translate(${t.x}, ${t.y-t.height/2+N})`);const b=s.node().getBBox();return t.width=b.width,t.height=b.height,t.intersect=function(l){return u.intersectRect$1(t,l)},r},V=(e,t)=>{const n=e.insert("g").attr("class","note-cluster").attr("id",t.id),r=n.insert("rect",":first-child"),s=0*t.padding,o=s/2;r.attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-t.width/2-o).attr("y",t.y-t.height/2-o).attr("width",t.width+s).attr("height",t.height+s).attr("fill","none");const f=r.node().getBBox();return t.width=f.width,t.height=f.height,t.intersect=function(g){return u.intersectRect$1(t,g)},n},z=(e,t)=>{const n=i.getConfig(),r=e.insert("g").attr("class",t.classes).attr("id",t.id),s=r.insert("rect",":first-child"),o=r.insert("g").attr("class","cluster-label"),f=r.append("rect"),g=o.node().appendChild(u.createLabel$1(t.labelText,t.labelStyle,void 0,!0));let d=g.getBBox();if(i.evaluate(n.flowchart.htmlLabels)){const l=g.children[0],c=i.select(g);d=l.getBoundingClientRect(),c.attr("width",d.width),c.attr("height",d.height)}d=g.getBBox();const h=0*t.padding,$=h/2,y=t.width<=d.width+t.padding?d.width+t.padding:t.width;t.width<=d.width+t.padding?t.diff=(d.width+t.padding*0-t.width)/2:t.diff=-t.padding/2,s.attr("class","outer").attr("x",t.x-y/2-$).attr("y",t.y-t.height/2-$).attr("width",y+h).attr("height",t.height+h),f.attr("class","inner").attr("x",t.x-y/2-$).attr("y",t.y-t.height/2-$+d.height-1).attr("width",y+h).attr("height",t.height+h-d.height-3);const{subGraphTitleTopMargin:N}=u.getSubGraphTitleMargins(n);o.attr("transform",`translate(${t.x-d.width/2}, ${t.y-t.height/2-t.padding/3+(i.evaluate(n.flowchart.htmlLabels)?5:3)+N})`);const b=s.node().getBBox();return t.height=b.height,t.intersect=function(l){return u.intersectRect$1(t,l)},r},W=(e,t)=>{const n=e.insert("g").attr("class",t.classes).attr("id",t.id),r=n.insert("rect",":first-child"),s=0*t.padding,o=s/2;r.attr("class","divider").attr("x",t.x-t.width/2-o).attr("y",t.y-t.height/2).attr("width",t.width+s).attr("height",t.height+s);const f=r.node().getBBox();return t.width=f.width,t.height=f.height,t.diff=-t.padding/2,t.intersect=function(g){return u.intersectRect$1(t,g)},n},K={rect:H,roundedWithTitle:z,noteGroup:V,divider:W};let R={};const Q=(e,t)=>{i.log$1.trace("Inserting cluster");const n=t.shape||"rect";R[t.id]=K[n](e,t)},Y=()=>{R={}},L=async(e,t,n,r,s,o)=>{i.log$1.info("Graph in recursive render: XXX",x(t),s);const f=t.graph().rankdir;i.log$1.trace("Dir in recursive render - dir:",f);const g=e.insert("g").attr("class","root");t.nodes()?i.log$1.info("Recursive render XXX",t.nodes()):i.log$1.info("No nodes found for",t),t.edges().length>0&&i.log$1.trace("Recursive edges",t.edge(t.edges()[0]));const d=g.insert("g").attr("class","clusters"),h=g.insert("g").attr("class","edgePaths"),$=g.insert("g").attr("class","edgeLabels"),y=g.insert("g").attr("class","nodes");await Promise.all(t.nodes().map(async function(l){const c=t.node(l);if(s!==void 0){const v=JSON.parse(JSON.stringify(s.clusterData));i.log$1.info("Setting data for cluster XXX (",l,") ",v,s),t.setNode(s.id,v),t.parent(l)||(i.log$1.trace("Setting parent",l,s.id),t.setParent(l,s.id,v))}if(i.log$1.info("(Insert) Node XXX"+l+": "+JSON.stringify(t.node(l))),c&&c.clusterNode){i.log$1.info("Cluster identified",l,c.width,t.node(l));const v=await L(y,c.graph,n,r,t.node(l),o),E=v.elem;u.updateNodeBounds(c,E),c.diff=v.diff||0,i.log$1.info("Node bounds (abc123)",l,c,c.width,c.x,c.y),u.setNodeElem(E,c),i.log$1.warn("Recursive render complete ",E,c)}else t.children(l).length>0?(i.log$1.info("Cluster - the non recursive path XXX",l,c.id,c,t),i.log$1.info(C(c.id,t)),a[c.id]={id:C(c.id,t),node:c}):(i.log$1.info("Node - the non recursive path",l,c.id,c),await u.insertNode(y,t.node(l),f))})),t.edges().forEach(function(l){const c=t.edge(l.v,l.w,l.name);i.log$1.info("Edge "+l.v+" -> "+l.w+": "+JSON.stringify(l)),i.log$1.info("Edge "+l.v+" -> "+l.w+": ",l," ",JSON.stringify(t.edge(l))),i.log$1.info("Fix",a,"ids:",l.v,l.w,"Translating: ",a[l.v],a[l.w]),u.insertEdgeLabel($,c)}),t.edges().forEach(function(l){i.log$1.info("Edge "+l.v+" -> "+l.w+": "+JSON.stringify(l))}),i.log$1.info("#############################################"),i.log$1.info("### Layout ###"),i.log$1.info("#############################################"),i.log$1.info(t),J.layout(t),i.log$1.info("Graph after layout:",x(t));let N=0;const{subGraphTitleTotalMargin:b}=u.getSubGraphTitleMargins(o);return A(t).forEach(function(l){const c=t.node(l);i.log$1.info("Position "+l+": "+JSON.stringify(t.node(l))),i.log$1.info("Position "+l+": ("+c.x,","+c.y,") width: ",c.width," height: ",c.height),c&&c.clusterNode?(c.y+=b,u.positionNode(c)):t.children(l).length>0?(c.height+=b,Q(d,c),a[c.id].node=c):(c.y+=b/2,u.positionNode(c))}),t.edges().forEach(function(l){const c=t.edge(l);i.log$1.info("Edge "+l.v+" -> "+l.w+": "+JSON.stringify(c),c),c.points.forEach(E=>E.y+=b/2);const v=u.insertEdge(h,l,c,a,n,t,r);u.positionEdgeLabel(c,v)}),t.nodes().forEach(function(l){const c=t.node(l);i.log$1.info(l,c.type,c.diff),c.type==="group"&&(N=c.diff)}),{elem:g,diff:N}},Z=async(e,t,n,r,s)=>{u.insertMarkers$1(e,n,r,s),u.clear$1(),u.clear(),Y(),q(),i.log$1.warn("Graph at first:",JSON.stringify(x(t))),U(t),i.log$1.warn("Graph after:",JSON.stringify(x(t)));const o=i.getConfig();await L(e,t,r,s,void 0,o)};exports.render=Z;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const L=require("./layers.DUu7ZgAJ.js");require("./layers.BNYgVaAa.js");require("lodash-es/memoize.js");require("lodash-es/merge.js");require("lodash-es/isEmpty.js");const pt=require("./layers.B19hGmey.js"),mt=require("./layers.BIeVwYKL.js");function rt(t,n){let s;if(n===void 0)for(const a of t)a!=null&&(s<a||s===void 0&&a>=a)&&(s=a);else{let a=-1;for(let u of t)(u=n(u,++a,t))!=null&&(s<u||s===void 0&&u>=u)&&(s=u)}return s}function ft(t,n){let s;if(n===void 0)for(const a of t)a!=null&&(s>a||s===void 0&&a>=a)&&(s=a);else{let a=-1;for(let u of t)(u=n(u,++a,t))!=null&&(s>u||s===void 0&&u>=u)&&(s=u)}return s}function Z(t,n){let s=0;if(n===void 0)for(let a of t)(a=+a)&&(s+=a);else{let a=-1;for(let u of t)(u=+n(u,++a,t))&&(s+=u)}return s}function kt(t){return t.target.depth}function _t(t){return t.depth}function xt(t,n){return n-1-t.height}function yt(t,n){return t.sourceLinks.length?t.depth:n-1}function vt(t){return t.targetLinks.length?t.depth:t.sourceLinks.length?ft(t.sourceLinks,kt)-1:0}function G(t){return function(){return t}}function ot(t,n){return Y(t.source,n.source)||t.index-n.index}function lt(t,n){return Y(t.target,n.target)||t.index-n.index}function Y(t,n){return t.y0-n.y0}function J(t){return t.value}function bt(t){return t.index}function wt(t){return t.nodes}function St(t){return t.links}function at(t,n){const s=t.get(n);if(!s)throw new Error("missing: "+n);return s}function ct({nodes:t}){for(const n of t){let s=n.y0,a=s;for(const u of n.sourceLinks)u.y0=s+u.width/2,s+=u.width;for(const u of n.targetLinks)u.y1=a+u.width/2,a+=u.width}}function Lt(){let t=0,n=0,s=1,a=1,u=24,_=8,g,p=bt,i=yt,o,c,m=wt,b=St,y=6;function x(){const e={nodes:m.apply(null,arguments),links:b.apply(null,arguments)};return A(e),E(e),T(e),C(e),S(e),ct(e),e}x.update=function(e){return ct(e),e},x.nodeId=function(e){return arguments.length?(p=typeof e=="function"?e:G(e),x):p},x.nodeAlign=function(e){return arguments.length?(i=typeof e=="function"?e:G(e),x):i},x.nodeSort=function(e){return arguments.length?(o=e,x):o},x.nodeWidth=function(e){return arguments.length?(u=+e,x):u},x.nodePadding=function(e){return arguments.length?(_=g=+e,x):_},x.nodes=function(e){return arguments.length?(m=typeof e=="function"?e:G(e),x):m},x.links=function(e){return arguments.length?(b=typeof e=="function"?e:G(e),x):b},x.linkSort=function(e){return arguments.length?(c=e,x):c},x.size=function(e){return arguments.length?(t=n=0,s=+e[0],a=+e[1],x):[s-t,a-n]},x.extent=function(e){return arguments.length?(t=+e[0][0],s=+e[1][0],n=+e[0][1],a=+e[1][1],x):[[t,n],[s,a]]},x.iterations=function(e){return arguments.length?(y=+e,x):y};function A({nodes:e,links:f}){for(const[h,r]of e.entries())r.index=h,r.sourceLinks=[],r.targetLinks=[];const l=new Map(e.map((h,r)=>[p(h,r,e),h]));for(const[h,r]of f.entries()){r.index=h;let{source:k,target:v}=r;typeof k!="object"&&(k=r.source=at(l,k)),typeof v!="object"&&(v=r.target=at(l,v)),k.sourceLinks.push(r),v.targetLinks.push(r)}if(c!=null)for(const{sourceLinks:h,targetLinks:r}of e)h.sort(c),r.sort(c)}function E({nodes:e}){for(const f of e)f.value=f.fixedValue===void 0?Math.max(Z(f.sourceLinks,J),Z(f.targetLinks,J)):f.fixedValue}function T({nodes:e}){const f=e.length;let l=new Set(e),h=new Set,r=0;for(;l.size;){for(const k of l){k.depth=r;for(const{target:v}of k.sourceLinks)h.add(v)}if(++r>f)throw new Error("circular link");l=h,h=new Set}}function C({nodes:e}){const f=e.length;let l=new Set(e),h=new Set,r=0;for(;l.size;){for(const k of l){k.height=r;for(const{source:v}of k.targetLinks)h.add(v)}if(++r>f)throw new Error("circular link");l=h,h=new Set}}function O({nodes:e}){const f=rt(e,r=>r.depth)+1,l=(s-t-u)/(f-1),h=new Array(f);for(const r of e){const k=Math.max(0,Math.min(f-1,Math.floor(i.call(null,r,f))));r.layer=k,r.x0=t+k*l,r.x1=r.x0+u,h[k]?h[k].push(r):h[k]=[r]}if(o)for(const r of h)r.sort(o);return h}function j(e){const f=ft(e,l=>(a-n-(l.length-1)*g)/Z(l,J));for(const l of e){let h=n;for(const r of l){r.y0=h,r.y1=h+r.value*f,h=r.y1+g;for(const k of r.sourceLinks)k.width=k.value*f}h=(a-h+g)/(l.length+1);for(let r=0;r<l.length;++r){const k=l[r];k.y0+=h*(r+1),k.y1+=h*(r+1)}$(l)}}function S(e){const f=O(e);g=Math.min(_,(a-n)/(rt(f,l=>l.length)-1)),j(f);for(let l=0;l<y;++l){const h=Math.pow(.99,l),r=Math.max(1-h,(l+1)/y);D(f,h,r),N(f,h,r)}}function N(e,f,l){for(let h=1,r=e.length;h<r;++h){const k=e[h];for(const v of k){let R=0,z=0;for(const{source:W,value:K}of v.targetLinks){let F=K*(v.layer-W.layer);R+=M(W,v)*F,z+=F}if(!(z>0))continue;let U=(R/z-v.y0)*f;v.y0+=U,v.y1+=U,w(v)}o===void 0&&k.sort(Y),P(k,l)}}function D(e,f,l){for(let h=e.length,r=h-2;r>=0;--r){const k=e[r];for(const v of k){let R=0,z=0;for(const{target:W,value:K}of v.sourceLinks){let F=K*(W.layer-v.layer);R+=V(v,W)*F,z+=F}if(!(z>0))continue;let U=(R/z-v.y0)*f;v.y0+=U,v.y1+=U,w(v)}o===void 0&&k.sort(Y),P(k,l)}}function P(e,f){const l=e.length>>1,h=e[l];d(e,h.y0-g,l-1,f),I(e,h.y1+g,l+1,f),d(e,a,e.length-1,f),I(e,n,0,f)}function I(e,f,l,h){for(;l<e.length;++l){const r=e[l],k=(f-r.y0)*h;k>1e-6&&(r.y0+=k,r.y1+=k),f=r.y1+g}}function d(e,f,l,h){for(;l>=0;--l){const r=e[l],k=(r.y1-f)*h;k>1e-6&&(r.y0-=k,r.y1-=k),f=r.y0-g}}function w({sourceLinks:e,targetLinks:f}){if(c===void 0){for(const{source:{sourceLinks:l}}of f)l.sort(lt);for(const{target:{targetLinks:l}}of e)l.sort(ot)}}function $(e){if(c===void 0)for(const{sourceLinks:f,targetLinks:l}of e)f.sort(lt),l.sort(ot)}function M(e,f){let l=e.y0-(e.sourceLinks.length-1)*g/2;for(const{target:h,width:r}of e.sourceLinks){if(h===f)break;l+=r+g}for(const{source:h,width:r}of f.targetLinks){if(h===e)break;l-=r}return l}function V(e,f){let l=f.y0-(f.targetLinks.length-1)*g/2;for(const{source:h,width:r}of f.targetLinks){if(h===e)break;l+=r+g}for(const{target:h,width:r}of e.sourceLinks){if(h===f)break;l-=r}return l}return x}var tt=Math.PI,et=2*tt,B=1e-6,Et=et-B;function nt(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function dt(){return new nt}nt.prototype=dt.prototype={constructor:nt,moveTo:function(t,n){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+n)},closePath:function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(t,n){this._+="L"+(this._x1=+t)+","+(this._y1=+n)},quadraticCurveTo:function(t,n,s,a){this._+="Q"+ +t+","+ +n+","+(this._x1=+s)+","+(this._y1=+a)},bezierCurveTo:function(t,n,s,a,u,_){this._+="C"+ +t+","+ +n+","+ +s+","+ +a+","+(this._x1=+u)+","+(this._y1=+_)},arcTo:function(t,n,s,a,u){t=+t,n=+n,s=+s,a=+a,u=+u;var _=this._x1,g=this._y1,p=s-t,i=a-n,o=_-t,c=g-n,m=o*o+c*c;if(u<0)throw new Error("negative radius: "+u);if(this._x1===null)this._+="M"+(this._x1=t)+","+(this._y1=n);else if(m>B)if(!(Math.abs(c*p-i*o)>B)||!u)this._+="L"+(this._x1=t)+","+(this._y1=n);else{var b=s-_,y=a-g,x=p*p+i*i,A=b*b+y*y,E=Math.sqrt(x),T=Math.sqrt(m),C=u*Math.tan((tt-Math.acos((x+m-A)/(2*E*T)))/2),O=C/T,j=C/E;Math.abs(O-1)>B&&(this._+="L"+(t+O*o)+","+(n+O*c)),this._+="A"+u+","+u+",0,0,"+ +(c*b>o*y)+","+(this._x1=t+j*p)+","+(this._y1=n+j*i)}},arc:function(t,n,s,a,u,_){t=+t,n=+n,s=+s,_=!!_;var g=s*Math.cos(a),p=s*Math.sin(a),i=t+g,o=n+p,c=1^_,m=_?a-u:u-a;if(s<0)throw new Error("negative radius: "+s);this._x1===null?this._+="M"+i+","+o:(Math.abs(this._x1-i)>B||Math.abs(this._y1-o)>B)&&(this._+="L"+i+","+o),s&&(m<0&&(m=m%et+et),m>Et?this._+="A"+s+","+s+",0,1,"+c+","+(t-g)+","+(n-p)+"A"+s+","+s+",0,1,"+c+","+(this._x1=i)+","+(this._y1=o):m>B&&(this._+="A"+s+","+s+",0,"+ +(m>=tt)+","+c+","+(this._x1=t+s*Math.cos(u))+","+(this._y1=n+s*Math.sin(u))))},rect:function(t,n,s,a){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+n)+"h"+ +s+"v"+ +a+"h"+-s+"Z"},toString:function(){return this._}};function ut(t){return function(){return t}}function At(t){return t[0]}function Tt(t){return t[1]}var Mt=Array.prototype.slice;function Nt(t){return t.source}function Ct(t){return t.target}function Pt(t){var n=Nt,s=Ct,a=At,u=Tt,_=null;function g(){var p,i=Mt.call(arguments),o=n.apply(this,i),c=s.apply(this,i);if(_||(_=p=dt()),t(_,+a.apply(this,(i[0]=o,i)),+u.apply(this,i),+a.apply(this,(i[0]=c,i)),+u.apply(this,i)),p)return _=null,p+""||null}return g.source=function(p){return arguments.length?(n=p,g):n},g.target=function(p){return arguments.length?(s=p,g):s},g.x=function(p){return arguments.length?(a=typeof p=="function"?p:ut(+p),g):a},g.y=function(p){return arguments.length?(u=typeof p=="function"?p:ut(+p),g):u},g.context=function(p){return arguments.length?(_=p??null,g):_},g}function It(t,n,s,a,u){t.moveTo(n,s),t.bezierCurveTo(n=(n+a)/2,s,n,u,a,u)}function Ot(){return Pt(It)}function $t(t){return[t.source.x1,t.y0]}function Dt(t){return[t.target.x0,t.y1]}function jt(){return Ot().source($t).target(Dt)}var it=(function(){var t=function(p,i,o,c){for(o=o||{},c=p.length;c--;o[p[c]]=i);return o},n=[1,9],s=[1,10],a=[1,5,10,12],u={trace:function(){},yy:{},symbols_:{error:2,start:3,SANKEY:4,NEWLINE:5,csv:6,opt_eof:7,record:8,csv_tail:9,EOF:10,"field[source]":11,COMMA:12,"field[target]":13,"field[value]":14,field:15,escaped:16,non_escaped:17,DQUOTE:18,ESCAPED_TEXT:19,NON_ESCAPED_TEXT:20,$accept:0,$end:1},terminals_:{2:"error",4:"SANKEY",5:"NEWLINE",10:"EOF",11:"field[source]",12:"COMMA",13:"field[target]",14:"field[value]",18:"DQUOTE",19:"ESCAPED_TEXT",20:"NON_ESCAPED_TEXT"},productions_:[0,[3,4],[6,2],[9,2],[9,0],[7,1],[7,0],[8,5],[15,1],[15,1],[16,3],[17,1]],performAction:function(i,o,c,m,b,y,x){var A=y.length-1;switch(b){case 7:const E=m.findOrCreateNode(y[A-4].trim().replaceAll('""','"')),T=m.findOrCreateNode(y[A-2].trim().replaceAll('""','"')),C=parseFloat(y[A].trim());m.addLink(E,T,C);break;case 8:case 9:case 11:this.$=y[A];break;case 10:this.$=y[A-1];break}},table:[{3:1,4:[1,2]},{1:[3]},{5:[1,3]},{6:4,8:5,15:6,16:7,17:8,18:n,20:s},{1:[2,6],7:11,10:[1,12]},t(s,[2,4],{9:13,5:[1,14]}),{12:[1,15]},t(a,[2,8]),t(a,[2,9]),{19:[1,16]},t(a,[2,11]),{1:[2,1]},{1:[2,5]},t(s,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:n,20:s},{15:18,16:7,17:8,18:n,20:s},{18:[1,19]},t(s,[2,3]),{12:[1,20]},t(a,[2,10]),{15:21,16:7,17:8,18:n,20:s},t([1,5,10],[2,7])],defaultActions:{11:[2,1],12:[2,5]},parseError:function(i,o){if(o.recoverable)this.trace(i);else{var c=new Error(i);throw c.hash=o,c}},parse:function(i){var o=this,c=[0],m=[],b=[null],y=[],x=this.table,A="",E=0,T=0,C=2,O=1,j=y.slice.call(arguments,1),S=Object.create(this.lexer),N={yy:{}};for(var D in this.yy)Object.prototype.hasOwnProperty.call(this.yy,D)&&(N.yy[D]=this.yy[D]);S.setInput(i,N.yy),N.yy.lexer=S,N.yy.parser=this,typeof S.yylloc>"u"&&(S.yylloc={});var P=S.yylloc;y.push(P);var I=S.options&&S.options.ranges;typeof N.yy.parseError=="function"?this.parseError=N.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function d(){var v;return v=m.pop()||S.lex()||O,typeof v!="number"&&(v instanceof Array&&(m=v,v=m.pop()),v=o.symbols_[v]||v),v}for(var w,$,M,V,e={},f,l,h,r;;){if($=c[c.length-1],this.defaultActions[$]?M=this.defaultActions[$]:((w===null||typeof w>"u")&&(w=d()),M=x[$]&&x[$][w]),typeof M>"u"||!M.length||!M[0]){var k="";r=[];for(f in x[$])this.terminals_[f]&&f>C&&r.push("'"+this.terminals_[f]+"'");S.showPosition?k="Parse error on line "+(E+1)+`:
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const L=require("./layers.Ct9Zf_S7.js");require("./layers.CycK0cvs.js");require("lodash-es/memoize.js");require("lodash-es/merge.js");require("lodash-es/isEmpty.js");const pt=require("./layers.B19hGmey.js"),mt=require("./layers.BIeVwYKL.js");function rt(t,n){let s;if(n===void 0)for(const a of t)a!=null&&(s<a||s===void 0&&a>=a)&&(s=a);else{let a=-1;for(let u of t)(u=n(u,++a,t))!=null&&(s<u||s===void 0&&u>=u)&&(s=u)}return s}function ft(t,n){let s;if(n===void 0)for(const a of t)a!=null&&(s>a||s===void 0&&a>=a)&&(s=a);else{let a=-1;for(let u of t)(u=n(u,++a,t))!=null&&(s>u||s===void 0&&u>=u)&&(s=u)}return s}function Z(t,n){let s=0;if(n===void 0)for(let a of t)(a=+a)&&(s+=a);else{let a=-1;for(let u of t)(u=+n(u,++a,t))&&(s+=u)}return s}function kt(t){return t.target.depth}function _t(t){return t.depth}function xt(t,n){return n-1-t.height}function yt(t,n){return t.sourceLinks.length?t.depth:n-1}function vt(t){return t.targetLinks.length?t.depth:t.sourceLinks.length?ft(t.sourceLinks,kt)-1:0}function G(t){return function(){return t}}function ot(t,n){return Y(t.source,n.source)||t.index-n.index}function lt(t,n){return Y(t.target,n.target)||t.index-n.index}function Y(t,n){return t.y0-n.y0}function J(t){return t.value}function bt(t){return t.index}function wt(t){return t.nodes}function St(t){return t.links}function at(t,n){const s=t.get(n);if(!s)throw new Error("missing: "+n);return s}function ct({nodes:t}){for(const n of t){let s=n.y0,a=s;for(const u of n.sourceLinks)u.y0=s+u.width/2,s+=u.width;for(const u of n.targetLinks)u.y1=a+u.width/2,a+=u.width}}function Lt(){let t=0,n=0,s=1,a=1,u=24,_=8,g,p=bt,i=yt,o,c,m=wt,b=St,y=6;function x(){const e={nodes:m.apply(null,arguments),links:b.apply(null,arguments)};return A(e),E(e),T(e),C(e),S(e),ct(e),e}x.update=function(e){return ct(e),e},x.nodeId=function(e){return arguments.length?(p=typeof e=="function"?e:G(e),x):p},x.nodeAlign=function(e){return arguments.length?(i=typeof e=="function"?e:G(e),x):i},x.nodeSort=function(e){return arguments.length?(o=e,x):o},x.nodeWidth=function(e){return arguments.length?(u=+e,x):u},x.nodePadding=function(e){return arguments.length?(_=g=+e,x):_},x.nodes=function(e){return arguments.length?(m=typeof e=="function"?e:G(e),x):m},x.links=function(e){return arguments.length?(b=typeof e=="function"?e:G(e),x):b},x.linkSort=function(e){return arguments.length?(c=e,x):c},x.size=function(e){return arguments.length?(t=n=0,s=+e[0],a=+e[1],x):[s-t,a-n]},x.extent=function(e){return arguments.length?(t=+e[0][0],s=+e[1][0],n=+e[0][1],a=+e[1][1],x):[[t,n],[s,a]]},x.iterations=function(e){return arguments.length?(y=+e,x):y};function A({nodes:e,links:f}){for(const[h,r]of e.entries())r.index=h,r.sourceLinks=[],r.targetLinks=[];const l=new Map(e.map((h,r)=>[p(h,r,e),h]));for(const[h,r]of f.entries()){r.index=h;let{source:k,target:v}=r;typeof k!="object"&&(k=r.source=at(l,k)),typeof v!="object"&&(v=r.target=at(l,v)),k.sourceLinks.push(r),v.targetLinks.push(r)}if(c!=null)for(const{sourceLinks:h,targetLinks:r}of e)h.sort(c),r.sort(c)}function E({nodes:e}){for(const f of e)f.value=f.fixedValue===void 0?Math.max(Z(f.sourceLinks,J),Z(f.targetLinks,J)):f.fixedValue}function T({nodes:e}){const f=e.length;let l=new Set(e),h=new Set,r=0;for(;l.size;){for(const k of l){k.depth=r;for(const{target:v}of k.sourceLinks)h.add(v)}if(++r>f)throw new Error("circular link");l=h,h=new Set}}function C({nodes:e}){const f=e.length;let l=new Set(e),h=new Set,r=0;for(;l.size;){for(const k of l){k.height=r;for(const{source:v}of k.targetLinks)h.add(v)}if(++r>f)throw new Error("circular link");l=h,h=new Set}}function O({nodes:e}){const f=rt(e,r=>r.depth)+1,l=(s-t-u)/(f-1),h=new Array(f);for(const r of e){const k=Math.max(0,Math.min(f-1,Math.floor(i.call(null,r,f))));r.layer=k,r.x0=t+k*l,r.x1=r.x0+u,h[k]?h[k].push(r):h[k]=[r]}if(o)for(const r of h)r.sort(o);return h}function j(e){const f=ft(e,l=>(a-n-(l.length-1)*g)/Z(l,J));for(const l of e){let h=n;for(const r of l){r.y0=h,r.y1=h+r.value*f,h=r.y1+g;for(const k of r.sourceLinks)k.width=k.value*f}h=(a-h+g)/(l.length+1);for(let r=0;r<l.length;++r){const k=l[r];k.y0+=h*(r+1),k.y1+=h*(r+1)}$(l)}}function S(e){const f=O(e);g=Math.min(_,(a-n)/(rt(f,l=>l.length)-1)),j(f);for(let l=0;l<y;++l){const h=Math.pow(.99,l),r=Math.max(1-h,(l+1)/y);D(f,h,r),N(f,h,r)}}function N(e,f,l){for(let h=1,r=e.length;h<r;++h){const k=e[h];for(const v of k){let R=0,z=0;for(const{source:W,value:K}of v.targetLinks){let F=K*(v.layer-W.layer);R+=M(W,v)*F,z+=F}if(!(z>0))continue;let U=(R/z-v.y0)*f;v.y0+=U,v.y1+=U,w(v)}o===void 0&&k.sort(Y),P(k,l)}}function D(e,f,l){for(let h=e.length,r=h-2;r>=0;--r){const k=e[r];for(const v of k){let R=0,z=0;for(const{target:W,value:K}of v.sourceLinks){let F=K*(W.layer-v.layer);R+=V(v,W)*F,z+=F}if(!(z>0))continue;let U=(R/z-v.y0)*f;v.y0+=U,v.y1+=U,w(v)}o===void 0&&k.sort(Y),P(k,l)}}function P(e,f){const l=e.length>>1,h=e[l];d(e,h.y0-g,l-1,f),I(e,h.y1+g,l+1,f),d(e,a,e.length-1,f),I(e,n,0,f)}function I(e,f,l,h){for(;l<e.length;++l){const r=e[l],k=(f-r.y0)*h;k>1e-6&&(r.y0+=k,r.y1+=k),f=r.y1+g}}function d(e,f,l,h){for(;l>=0;--l){const r=e[l],k=(r.y1-f)*h;k>1e-6&&(r.y0-=k,r.y1-=k),f=r.y0-g}}function w({sourceLinks:e,targetLinks:f}){if(c===void 0){for(const{source:{sourceLinks:l}}of f)l.sort(lt);for(const{target:{targetLinks:l}}of e)l.sort(ot)}}function $(e){if(c===void 0)for(const{sourceLinks:f,targetLinks:l}of e)f.sort(lt),l.sort(ot)}function M(e,f){let l=e.y0-(e.sourceLinks.length-1)*g/2;for(const{target:h,width:r}of e.sourceLinks){if(h===f)break;l+=r+g}for(const{source:h,width:r}of f.targetLinks){if(h===e)break;l-=r}return l}function V(e,f){let l=f.y0-(f.targetLinks.length-1)*g/2;for(const{source:h,width:r}of f.targetLinks){if(h===e)break;l+=r+g}for(const{target:h,width:r}of e.sourceLinks){if(h===f)break;l-=r}return l}return x}var tt=Math.PI,et=2*tt,B=1e-6,Et=et-B;function nt(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function dt(){return new nt}nt.prototype=dt.prototype={constructor:nt,moveTo:function(t,n){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+n)},closePath:function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(t,n){this._+="L"+(this._x1=+t)+","+(this._y1=+n)},quadraticCurveTo:function(t,n,s,a){this._+="Q"+ +t+","+ +n+","+(this._x1=+s)+","+(this._y1=+a)},bezierCurveTo:function(t,n,s,a,u,_){this._+="C"+ +t+","+ +n+","+ +s+","+ +a+","+(this._x1=+u)+","+(this._y1=+_)},arcTo:function(t,n,s,a,u){t=+t,n=+n,s=+s,a=+a,u=+u;var _=this._x1,g=this._y1,p=s-t,i=a-n,o=_-t,c=g-n,m=o*o+c*c;if(u<0)throw new Error("negative radius: "+u);if(this._x1===null)this._+="M"+(this._x1=t)+","+(this._y1=n);else if(m>B)if(!(Math.abs(c*p-i*o)>B)||!u)this._+="L"+(this._x1=t)+","+(this._y1=n);else{var b=s-_,y=a-g,x=p*p+i*i,A=b*b+y*y,E=Math.sqrt(x),T=Math.sqrt(m),C=u*Math.tan((tt-Math.acos((x+m-A)/(2*E*T)))/2),O=C/T,j=C/E;Math.abs(O-1)>B&&(this._+="L"+(t+O*o)+","+(n+O*c)),this._+="A"+u+","+u+",0,0,"+ +(c*b>o*y)+","+(this._x1=t+j*p)+","+(this._y1=n+j*i)}},arc:function(t,n,s,a,u,_){t=+t,n=+n,s=+s,_=!!_;var g=s*Math.cos(a),p=s*Math.sin(a),i=t+g,o=n+p,c=1^_,m=_?a-u:u-a;if(s<0)throw new Error("negative radius: "+s);this._x1===null?this._+="M"+i+","+o:(Math.abs(this._x1-i)>B||Math.abs(this._y1-o)>B)&&(this._+="L"+i+","+o),s&&(m<0&&(m=m%et+et),m>Et?this._+="A"+s+","+s+",0,1,"+c+","+(t-g)+","+(n-p)+"A"+s+","+s+",0,1,"+c+","+(this._x1=i)+","+(this._y1=o):m>B&&(this._+="A"+s+","+s+",0,"+ +(m>=tt)+","+c+","+(this._x1=t+s*Math.cos(u))+","+(this._y1=n+s*Math.sin(u))))},rect:function(t,n,s,a){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+n)+"h"+ +s+"v"+ +a+"h"+-s+"Z"},toString:function(){return this._}};function ut(t){return function(){return t}}function At(t){return t[0]}function Tt(t){return t[1]}var Mt=Array.prototype.slice;function Nt(t){return t.source}function Ct(t){return t.target}function Pt(t){var n=Nt,s=Ct,a=At,u=Tt,_=null;function g(){var p,i=Mt.call(arguments),o=n.apply(this,i),c=s.apply(this,i);if(_||(_=p=dt()),t(_,+a.apply(this,(i[0]=o,i)),+u.apply(this,i),+a.apply(this,(i[0]=c,i)),+u.apply(this,i)),p)return _=null,p+""||null}return g.source=function(p){return arguments.length?(n=p,g):n},g.target=function(p){return arguments.length?(s=p,g):s},g.x=function(p){return arguments.length?(a=typeof p=="function"?p:ut(+p),g):a},g.y=function(p){return arguments.length?(u=typeof p=="function"?p:ut(+p),g):u},g.context=function(p){return arguments.length?(_=p??null,g):_},g}function It(t,n,s,a,u){t.moveTo(n,s),t.bezierCurveTo(n=(n+a)/2,s,n,u,a,u)}function Ot(){return Pt(It)}function $t(t){return[t.source.x1,t.y0]}function Dt(t){return[t.target.x0,t.y1]}function jt(){return Ot().source($t).target(Dt)}var it=(function(){var t=function(p,i,o,c){for(o=o||{},c=p.length;c--;o[p[c]]=i);return o},n=[1,9],s=[1,10],a=[1,5,10,12],u={trace:function(){},yy:{},symbols_:{error:2,start:3,SANKEY:4,NEWLINE:5,csv:6,opt_eof:7,record:8,csv_tail:9,EOF:10,"field[source]":11,COMMA:12,"field[target]":13,"field[value]":14,field:15,escaped:16,non_escaped:17,DQUOTE:18,ESCAPED_TEXT:19,NON_ESCAPED_TEXT:20,$accept:0,$end:1},terminals_:{2:"error",4:"SANKEY",5:"NEWLINE",10:"EOF",11:"field[source]",12:"COMMA",13:"field[target]",14:"field[value]",18:"DQUOTE",19:"ESCAPED_TEXT",20:"NON_ESCAPED_TEXT"},productions_:[0,[3,4],[6,2],[9,2],[9,0],[7,1],[7,0],[8,5],[15,1],[15,1],[16,3],[17,1]],performAction:function(i,o,c,m,b,y,x){var A=y.length-1;switch(b){case 7:const E=m.findOrCreateNode(y[A-4].trim().replaceAll('""','"')),T=m.findOrCreateNode(y[A-2].trim().replaceAll('""','"')),C=parseFloat(y[A].trim());m.addLink(E,T,C);break;case 8:case 9:case 11:this.$=y[A];break;case 10:this.$=y[A-1];break}},table:[{3:1,4:[1,2]},{1:[3]},{5:[1,3]},{6:4,8:5,15:6,16:7,17:8,18:n,20:s},{1:[2,6],7:11,10:[1,12]},t(s,[2,4],{9:13,5:[1,14]}),{12:[1,15]},t(a,[2,8]),t(a,[2,9]),{19:[1,16]},t(a,[2,11]),{1:[2,1]},{1:[2,5]},t(s,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:n,20:s},{15:18,16:7,17:8,18:n,20:s},{18:[1,19]},t(s,[2,3]),{12:[1,20]},t(a,[2,10]),{15:21,16:7,17:8,18:n,20:s},t([1,5,10],[2,7])],defaultActions:{11:[2,1],12:[2,5]},parseError:function(i,o){if(o.recoverable)this.trace(i);else{var c=new Error(i);throw c.hash=o,c}},parse:function(i){var o=this,c=[0],m=[],b=[null],y=[],x=this.table,A="",E=0,T=0,C=2,O=1,j=y.slice.call(arguments,1),S=Object.create(this.lexer),N={yy:{}};for(var D in this.yy)Object.prototype.hasOwnProperty.call(this.yy,D)&&(N.yy[D]=this.yy[D]);S.setInput(i,N.yy),N.yy.lexer=S,N.yy.parser=this,typeof S.yylloc>"u"&&(S.yylloc={});var P=S.yylloc;y.push(P);var I=S.options&&S.options.ranges;typeof N.yy.parseError=="function"?this.parseError=N.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function d(){var v;return v=m.pop()||S.lex()||O,typeof v!="number"&&(v instanceof Array&&(m=v,v=m.pop()),v=o.symbols_[v]||v),v}for(var w,$,M,V,e={},f,l,h,r;;){if($=c[c.length-1],this.defaultActions[$]?M=this.defaultActions[$]:((w===null||typeof w>"u")&&(w=d()),M=x[$]&&x[$][w]),typeof M>"u"||!M.length||!M[0]){var k="";r=[];for(f in x[$])this.terminals_[f]&&f>C&&r.push("'"+this.terminals_[f]+"'");S.showPosition?k="Parse error on line "+(E+1)+`:
|
|
2
2
|
`+S.showPosition()+`
|
|
3
3
|
Expecting `+r.join(", ")+", got '"+(this.terminals_[w]||w)+"'":k="Parse error on line "+(E+1)+": Unexpected "+(w==O?"end of input":"'"+(this.terminals_[w]||w)+"'"),this.parseError(k,{text:S.match,token:this.terminals_[w]||w,line:S.yylineno,loc:P,expected:r})}if(M[0]instanceof Array&&M.length>1)throw new Error("Parse Error: multiple actions possible at state: "+$+", token: "+w);switch(M[0]){case 1:c.push(w),b.push(S.yytext),y.push(S.yylloc),c.push(M[1]),w=null,T=S.yyleng,A=S.yytext,E=S.yylineno,P=S.yylloc;break;case 2:if(l=this.productions_[M[1]][1],e.$=b[b.length-l],e._$={first_line:y[y.length-(l||1)].first_line,last_line:y[y.length-1].last_line,first_column:y[y.length-(l||1)].first_column,last_column:y[y.length-1].last_column},I&&(e._$.range=[y[y.length-(l||1)].range[0],y[y.length-1].range[1]]),V=this.performAction.apply(e,[A,T,E,N.yy,M[1],b,y].concat(j)),typeof V<"u")return V;l&&(c=c.slice(0,-1*l*2),b=b.slice(0,-1*l),y=y.slice(0,-1*l)),c.push(this.productions_[M[1]][0]),b.push(e.$),y.push(e._$),h=x[c[c.length-2]][c[c.length-1]],c.push(h);break;case 3:return!0}}return!0}},_=(function(){var p={EOF:1,parseError:function(o,c){if(this.yy.parser)this.yy.parser.parseError(o,c);else throw new Error(o)},setInput:function(i,o){return this.yy=o||this.yy||{},this._input=i,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var i=this._input[0];this.yytext+=i,this.yyleng++,this.offset++,this.match+=i,this.matched+=i;var o=i.match(/(?:\r\n?|\n).*/g);return o?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),i},unput:function(i){var o=i.length,c=i.split(/(?:\r\n?|\n)/g);this._input=i+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-o),this.offset-=o;var m=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),c.length-1&&(this.yylineno-=c.length-1);var b=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:c?(c.length===m.length?this.yylloc.first_column:0)+m[m.length-c.length].length-c[0].length:this.yylloc.first_column-o},this.options.ranges&&(this.yylloc.range=[b[0],b[0]+this.yyleng-o]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
|
4
4
|
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(i){this.unput(this.match.slice(i))},pastInput:function(){var i=this.matched.substr(0,this.matched.length-this.match.length);return(i.length>20?"...":"")+i.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var i=this.match;return i.length<20&&(i+=this._input.substr(0,20-i.length)),(i.substr(0,20)+(i.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var i=this.pastInput(),o=new Array(i.length+1).join("-");return i+this.upcomingInput()+`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./layers.
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./layers.CycK0cvs.js");exports.default=e.N$1;exports.en=e.R$1;exports.kaa=e.k$1;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./layers.
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./layers.CycK0cvs.js");var u={paste:"貼上",pasteAsPlaintext:"以純文字貼上",pasteCharts:"貼上圖表",selectAll:"全選",multiSelect:"將物件加入選取範圍",moveCanvas:"移動畫布",cut:"剪下",copy:"複製",copyAsPng:"以PNG格式儲存到剪貼板",copyAsSvg:"以SVG格式複製到剪貼板",copyText:"以文字格式複製至剪貼簿",copySource:"複製來源至剪貼簿",convertToCode:"轉換為程式碼",bringForward:"上移一層",sendToBack:"移到最底層",bringToFront:"置於最頂層",sendBackward:"往後移一層",delete:"刪除",copyStyles:"複製樣式",pasteStyles:"貼上樣式",stroke:"筆畫",background:"背景",fill:"填滿",strokeWidth:"筆跡寬度",strokeStyle:"筆畫樣式",strokeStyle_solid:"實線",strokeStyle_dashed:"虛線",strokeStyle_dotted:"點線",sloppiness:"線條風格",opacity:"透明度",textAlign:"文字對齊",edges:"邊緣",sharp:"尖銳",round:"平滑",arrowheads:"箭頭",arrowhead_none:"無",arrowhead_arrow:"箭頭",arrowhead_bar:"條狀箭頭",arrowhead_circle:"圓形",arrowhead_circle_outline:"圓形(外框)",arrowhead_triangle:"三角形",arrowhead_triangle_outline:"三角形(外框)",arrowhead_diamond:"菱形",arrowhead_diamond_outline:"菱形(外框)",fontSize:"字型大小",fontFamily:"字體集",addWatermark:'加上 "Made with Excalidraw" 浮水印',handDrawn:"手寫",normal:"一般",code:"代碼",small:"小",medium:"中",large:"大",veryLarge:"特大",solid:"實心",hachure:"斜線筆觸",zigzag:"Z字形",crossHatch:"交叉筆觸",thin:"細",bold:"粗",left:"左側",center:"置中",right:"右側",extraBold:"極粗",architect:"精確",artist:"藝術",cartoonist:"卡通",fileTitle:"檔案名稱",colorPicker:"色彩選擇工具",canvasColors:"使用於畫布",canvasBackground:"Canvas 背景",drawingCanvas:"繪圖 canvas",layers:"圖層",actions:"動作",language:"語言",liveCollaboration:"即時協作...",duplicateSelection:"複製",untitled:"無標題",name:"名稱",yourName:"你的名稱",madeWithExcalidraw:"以 Excalidraw 製作",group:"建立群組",ungroup:"取消群組",collaborators:"協作者",showGrid:"顯示格線",addToLibrary:"加入資料庫",removeFromLibrary:"從資料庫中移除",libraryLoadingMessage:"資料庫讀取中…",libraries:"瀏覽資料庫",loadingScene:"場景讀取中…",align:"對齊",alignTop:"對齊頂部",alignBottom:"對齊底部",alignLeft:"對齊左側",alignRight:"對齊右側",centerVertically:"垂直置中",centerHorizontally:"水平置中",distributeHorizontally:"水平分布",distributeVertically:"垂直分布",flipHorizontal:"水平翻轉",flipVertical:"垂直翻轉",viewMode:"檢視模式",share:"共享",showStroke:"顯示線條檢色器",showBackground:"顯示背景檢色器",toggleTheme:"切換主題",personalLib:"個人資料庫",excalidrawLib:"Excalidraw 資料庫",decreaseFontSize:"縮小文字",increaseFontSize:"放大文字",unbindText:"取消綁定文字",bindText:"結合文字至容器",createContainerFromText:"將文字包於容器中",link:{edit:"編輯連結",editEmbed:"編輯連結&嵌入",create:"建立連結",createEmbed:"建立連結&嵌入",label:"連結",labelEmbed:"連結&嵌入",empty:"未設定連結"},lineEditor:{edit:"編輯線條",exit:"結束線條編輯"},elementLock:{lock:"鎖定",unlock:"解鎖",lockAll:"全部鎖定",unlockAll:"全部解鎖"},statusPublished:"已發布",sidebarLock:"側欄維持開啟",selectAllElementsInFrame:"選取框架內的所有元素",removeAllElementsFromFrame:"從框架內移除所有元素",eyeDropper:"從畫布中選取顏色",textToDiagram:"文字轉圖表",prompt:"提示詞"},F={noItems:"尚未加入任何物件...",hint_emptyLibrary:"選取畫布上的物件以加入,或從下方的公開 repository 中安裝資料庫",hint_emptyPrivateLibrary:"選擇畫布上的物件以在此加入"},e={clearReset:"重置 canvas",exportJSON:"匯出至檔案",exportImage:"匯出圖片",export:"儲存至...",copyToClipboard:"複製至剪貼簿",save:"儲存目前檔案",saveAs:"儲存為",load:"開啟",getShareableLink:"取得共享連結",close:"關閉",selectLanguage:"選擇語言",scrollBackToContent:"捲動回到內容",zoomIn:"放大",zoomOut:"縮小",resetZoom:"重設縮放",menu:"選單",done:"完成",edit:"編輯",undo:"復原",redo:"重做",resetLibrary:"重設資料庫",createNewRoom:"建立新協作會議室",fullScreen:"全螢幕",darkMode:"深色模式",lightMode:"淺色模式",zenMode:"專注模式",objectsSnapMode:"吸附至物件",exitZenMode:"離開專注模式",cancel:"取消",clear:"清除",remove:"刪除",embed:"切換嵌入",publishLibrary:"發布",submit:"送出",confirm:"確認",embeddableInteractionButton:"點擊以互動"},E={clearReset:"這將會清除整個 canvas。你確定嗎?",couldNotCreateShareableLink:"無法建立共享連結。",couldNotCreateShareableLinkTooBig:"無法建立共享連結:場景太大",couldNotLoadInvalidFile:"無法讀取失效的檔案。",importBackendFailed:"後端讀取失敗。",cannotExportEmptyCanvas:"無法輸出空白的 canvas。",couldNotCopyToClipboard:"無法複製到剪貼簿",decryptFailed:"無法解密資料。",uploadedSecurly:"上傳已通過 end-to-end 加密,Excalidraw 伺服器和第三方無法皆讀取其內容。",loadSceneOverridePrompt:"讀取外部圖樣將取代目前的內容。是否要繼續?",collabStopOverridePrompt:`停止連線將覆蓋您先前於本機儲存的繪圖進度,是否確認?
|
|
2
2
|
|
|
3
3
|
(如要保留原有的本機繪圖進度,直接關閉瀏覽器分頁即可。)`,errorAddingToLibrary:"無法於此資料庫加入項目",errorRemovingFromLibrary:"無法由此資料庫移除項目",confirmAddLibrary:"這將會將 {{numShapes}} 個圖形加入你的資料庫,你確定嗎?",imageDoesNotContainScene:"此圖檔中未包含場景資料。輸出檔案時是否有包含場景資料?",cannotRestoreFromImage:"無法由此檔案回復場景。",invalidSceneUrl:"無法由提供的 URL 匯入場景。可能是發生異常,或未包含有效的 Excalidraw JSON 資料。",resetLibrary:"這會清除您的資料庫,是否確定?",removeItemsFromsLibrary:"從資料庫刪除 {{count}} 項?",invalidEncryptionKey:"加密鍵必須為22字元。即時協作已停用。",collabOfflineWarning:`沒有可用的網路連線。
|
|
4
4
|
變更無法儲存!`},C={unsupportedFileType:"不支援的檔案類型。",imageInsertError:"無法插入圖片。請稍後再試…",fileTooBig:"檔案過大。可接受的最大尺寸為 {{maxSize}} 。",svgImageInsertError:"無法插入 SVG 圖片。此 SVG 檔案有問題。",failedToFetchImage:"無法獲取圖片。",invalidSVGString:"無效的 SVG。",cannotResolveCollabServer:"無法連結至 collab 伺服器。請重新整理後再試一次。",importLibraryError:"無法載入資料庫",collabSaveFailed:"無法儲存至後端資料庫。若此問題持續發生,請將檔案儲存於本機以確保資料不會遺失。",collabSaveFailed_sizeExceeded:"無法儲存至後端資料庫,可能的原因為畫布尺寸過大。請將檔案儲存於本機以確保資料不會遺失。",imageToolNotSupported:"圖片已停用",brave_measure_text_error:{line1:"看起來您開啟了 Brave 瀏覽器的 <bold>Aggressively Block Fingerprinting</bold> 設定。",line2:"這可能造成您畫布中 <bold>文字元素</bold> 的異常。",line3:"我們強烈建議您關閉此設定。您可以依照 <link>這些步驟</link> 來進行。",line4:"若關閉此設定並未修復文字元素的顯示問題,請回報於我們 GitHub 上的 <issueLink>issue</issueLink>,或在 <discordLink>Discord</discordLink> 上告訴我們。"},libraryElementTypeError:{embeddable:"可嵌入元素無法加入資料庫",iframe:"IFrame 元素無法加入資料庫",image:"即將支援加入圖片至資料庫!"},asyncPasteFailedOnRead:"無法貼上(無法由系統剪貼簿讀入)",asyncPasteFailedOnParse:"無法貼上",copyToSystemClipboardFailed:"無法複製至剪貼簿"},A={selection:"選取",image:"插入圖片",rectangle:"長方形",diamond:"菱形",ellipse:"橢圓",arrow:"箭頭",line:"線條",freedraw:"繪圖",text:"文字",library:"資料庫",lock:"可連續使用選取的工具",penMode:"筆模式 - 避免觸摸",link:"為所選的形狀增加\b/更新連結",eraser:"橡皮擦",frame:"框架工具",magicframe:"線框稿轉為程式碼",embeddable:"嵌入網站",laser:"雷射筆",hand:"手形(平移工具)",extraTools:"更多工具",mermaidToExcalidraw:"Mermaid 至 Excalidraw",magicSettings:"AI 設定"},D={canvasActions:"canvas 動作",selectedShapeActions:"選取圖形動作",shapes:"形狀"},B={canvasPanning:"若要移動畫布,請在拖曳時按住滑鼠滾輪或空白鍵,或使用手形工具",linearElement:"點擊以繪製多點曲線;或拖曳以繪製直線",freeDraw:"點擊並拖曳來繪圖,放開即結束",text:"提示:亦可使用選取工具在任何地方雙擊來加入文字",embeddable:"點擊並拖移以建立嵌入網站",text_selected:"雙擊滑鼠或按 Enter 以編輯文字",text_editing:"按跳脫鍵或 Ctrl 或 Cmd + Enter 以結束編輯",linearElementMulti:"按下 Escape 或 Enter 以結束繪製",lockAngle:"按住 SHIFT 可限制旋轉角度",resize:"縮放時按住 Shift 可保持原比例縮放;\\n按住 Alt 可由中心點進行縮放",resizeImage:"按住 SHIFT 可任意縮放,按住 ALT 可由中央縮放。",rotate:"旋轉時按住 Shift 可限制旋轉角度",lineEditor_info:"按住 Ctrl 或 Cmd 並雙擊或按住 Ctrl 或 Cmd + Enter 來編輯控制點",lineEditor_pointSelected:"按下 Delete 可移除錨點;Ctrl 或 Cmd + D 可複製;或可拖曳來移動",lineEditor_nothingSelected:`選擇要編輯的錨點(按住 SHIFT 可多選),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),i=require("react"),B=require("@lexical/react/LexicalComposerContext"),P=require("@lexical/react/useLexicalEditable"),Y=require("@lexical/react/useLexicalNodeSelection"),W=require("@lexical/utils"),a=require("lexical"),c=require("./layers.
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),i=require("react"),B=require("@lexical/react/LexicalComposerContext"),P=require("@lexical/react/useLexicalEditable"),Y=require("@lexical/react/useLexicalNodeSelection"),W=require("@lexical/utils"),a=require("lexical"),c=require("./layers.C04ba_Dk.js"),v=require("./layers.Dhk83Ipt.js"),F=require("react-i18next"),C=require("@mantine/core"),G=require("@tabler/icons-react");function H({imageContainerRef:n,editor:u,rootClassName:S=null,width:N="inherit",height:h="inherit",nodeKey:e,alignment:E,setModalOpen:d,previewSVG:M}){const O=i.useMemo(()=>M??"",[M]),[f,j]=i.useState(!1),{t:x}=F.useTranslation(),b=(r,m)=>{u.update(()=>{a.$setSelection(null);const g=a.$getNodeByKey(e);return c.$isExcalidrawNode(g)&&g.setWidthAndHeight(r,m),!0})},I=()=>{c.deleteNode(u,e)};return s.jsx(c.ResizableContainer,{editor:u,isIcon:!1,isEmbed:!0,width:c.parseContainerSize(N),height:c.parseContainerSize(h),onResizeEnd:b,alignment:E,children:s.jsxs(C.Box,{className:"media-wrapper excaildraw",children:[s.jsxs("div",{className:"media-actions",children:[s.jsx(C.Tooltip,{label:x("editor.link.edit"),children:s.jsx(C.ActionIcon,{color:"gray","aria-label":"Settings",className:"media-action",variant:"default",size:24,onClick:()=>{d(!0)},children:s.jsx(G.IconEdit,{size:14})})}),s.jsx(c.AlignmentImage,{opened:f,setOpened:j,t:x,editor:u,nodeKey:e}),s.jsx(C.Tooltip,{label:x("editor.actions.delete"),children:s.jsx(C.ActionIcon,{color:"gray","aria-label":"Settings",className:"media-action",variant:"default",size:24,onClick:I,children:s.jsx(c.Icon,{name:"trash",size:"14"})})})]}),s.jsx(C.Box,{w:"100%",ref:r=>{r&&n&&(n.current=r)},className:S??"",dangerouslySetInnerHTML:{__html:O}})]})})}function V({nodeKey:n,data:u,width:S,height:N,alignment:h}){var q;const[e]=B.useLexicalComposerContext(),E=P.useLexicalEditable(),d=i.useMemo(()=>v.parseExcalidrawData(u),[u]),M=((q=d==null?void 0:d.elements)==null?void 0:q.length)===0&&!d.previewSVG,[O,f]=i.useState(M&&e.isEditable()),[j,x]=i.useState(!1),b=i.useRef(null),I=i.useRef(null),r=i.useRef(null),[m,g,R]=Y.useLexicalNodeSelection(n),w=i.useCallback(t=>(m&&(t.preventDefault(),e.update(()=>{const o=a.$getNodeByKey(n);o&&o.remove()})),!1),[e,m,n]);i.useEffect(()=>{if(!E){m&&R();return}return W.mergeRegister(e.registerCommand(a.CLICK_COMMAND,t=>{const o=I.current,p=t.target;return o!==null&&o.contains(p)?(t.shiftKey||R(),g(!m),t.detail>1&&f(!0),!0):!1},a.COMMAND_PRIORITY_LOW),e.registerCommand(a.KEY_DELETE_COMMAND,w,a.COMMAND_PRIORITY_LOW),e.registerCommand(a.KEY_BACKSPACE_COMMAND,w,a.COMMAND_PRIORITY_LOW))},[R,e,m,w,g,E]);const y=i.useCallback(()=>(f(!1),e.update(()=>{const t=a.$getNodeByKey(n);t&&t.remove()})),[e,n]),L=(t,o,p,A)=>e.update(()=>{const D=a.$getNodeByKey(n);c.$isExcalidrawNode(D)&&(t&&t.length>0||Object.keys(p).length>0?D.setData(JSON.stringify({appState:o,elements:t,files:p,previewSVG:A})):D.remove())}),{elements:l=[],files:k={},appState:T={},previewSVG:$}=d,_=i.useCallback(()=>{f(!1),x(!1),r.current=!1,(l==null?void 0:l.length)===0&&e.update(()=>{const t=a.$getNodeByKey(n);t&&t.remove()})},[e,n,l==null?void 0:l.length]),z=i.useCallback(()=>{r.current?x(!0):_()},[]);return s.jsxs(s.Fragment,{children:[s.jsx(v.ConfirmModal,{isCloseModal:j,confirmClose:_,setCloseModalOpen:x}),s.jsx(v.ExcalidrawModal,{initialElements:l,isEdited:r,initialFiles:k,initialAppState:T,isShown:O,onDelete:y,onClose:z,onSave:(t,o,p,A)=>{L(t,o,p,A),f(!1)},closeOnClickOutside:!1}),(l==null?void 0:l.length)&&s.jsx("div",{style:{display:"flex",justifyContent:h},children:s.jsx(H,{imageContainerRef:b,className:"image",width:S,height:N,editor:e,nodeKey:n,alignment:h,setModalOpen:f,previewSVG:$})})]})}exports.default=V;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { f as o, p as e } from "./layers.
|
|
2
|
-
import { f as a, a as t } from "./layers.
|
|
3
|
-
import { x as s } from "./layers.
|
|
1
|
+
import { f as o, p as e } from "./layers.CvDpMrop.js";
|
|
2
|
+
import { f as a, a as t } from "./layers.DSr5yUZW.js";
|
|
3
|
+
import { x as s } from "./layers.C1QVX6Xl.js";
|
|
4
4
|
import "lodash-es";
|
|
5
5
|
import "./layers.BJDrjORS.js";
|
|
6
6
|
import "./layers.D4T8fTcj.js";
|
|
7
|
-
import "./layers.
|
|
7
|
+
import "./layers.Cy-qxBnZ.js";
|
|
8
8
|
import "lodash-es/memoize.js";
|
|
9
9
|
import "lodash-es/merge.js";
|
|
10
10
|
import "lodash-es/isEmpty.js";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const $e=require("./layers.
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const $e=require("./layers.Ct9Zf_S7.js"),dv=require("./layers.C04ba_Dk.js"),gv=require("./layers.t1vS44PF.js");require("./layers.CycK0cvs.js");require("lodash-es/memoize.js");require("lodash-es/merge.js");require("lodash-es/isEmpty.js");function ks(t,e){(e==null||e>t.length)&&(e=t.length);for(var r=0,a=Array(e);r<e;r++)a[r]=t[r];return a}function pv(t){if(Array.isArray(t))return t}function yv(t){if(Array.isArray(t))return ks(t)}function mr(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function mv(t,e){for(var r=0;r<e.length;r++){var a=e[r];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(t,cf(a.key),a)}}function br(t,e,r){return e&&mv(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t}function Lt(t,e){var r=typeof Symbol<"u"&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=to(t))||e){r&&(t=r);var a=0,n=function(){};return{s:n,n:function(){return a>=t.length?{done:!0}:{done:!1,value:t[a++]}},e:function(u){throw u},f:n}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
|
|
2
2
|
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i,s=!0,o=!1;return{s:function(){r=r.call(t)},n:function(){var u=r.next();return s=u.done,u},e:function(u){o=!0,i=u},f:function(){try{s||r.return==null||r.return()}finally{if(o)throw i}}}}function ff(t,e,r){return(e=cf(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function bv(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}function wv(t,e){var r=t==null?null:typeof Symbol<"u"&&t[Symbol.iterator]||t["@@iterator"];if(r!=null){var a,n,i,s,o=[],u=!0,l=!1;try{if(i=(r=r.call(t)).next,e===0){if(Object(r)!==r)return;u=!1}else for(;!(u=(a=i.call(r)).done)&&(o.push(a.value),o.length!==e);u=!0);}catch(f){l=!0,n=f}finally{try{if(!u&&r.return!=null&&(s=r.return(),Object(s)!==s))return}finally{if(l)throw n}}return o}}function Ev(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
3
3
|
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function xv(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
|
4
4
|
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function je(t,e){return pv(t)||wv(t,e)||to(t,e)||Ev()}function Cn(t){return yv(t)||bv(t)||to(t)||xv()}function Tv(t,e){if(typeof t!="object"||!t)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var a=r.call(t,e);if(typeof a!="object")return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}function cf(t){var e=Tv(t,"string");return typeof e=="symbol"?e:e+""}function it(t){"@babel/helpers - typeof";return it=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},it(t)}function to(t,e){if(t){if(typeof t=="string")return ks(t,e);var r={}.toString.call(t).slice(8,-1);return r==="Object"&&t.constructor&&(r=t.constructor.name),r==="Map"||r==="Set"?Array.from(t):r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?ks(t,e):void 0}}var rt=typeof window>"u"?null:window,Mo=rt?rt.navigator:null;rt&&rt.document;var Cv=it(""),vf=it({}),Dv=it(function(){}),Sv=typeof HTMLElement>"u"?"undefined":it(HTMLElement),Ba=function(e){return e&&e.instanceString&&Xe(e.instanceString)?e.instanceString():null},ge=function(e){return e!=null&&it(e)==Cv},Xe=function(e){return e!=null&&it(e)===Dv},Ve=function(e){return!Rt(e)&&(Array.isArray?Array.isArray(e):e!=null&&e instanceof Array)},Oe=function(e){return e!=null&&it(e)===vf&&!Ve(e)&&e.constructor===Object},Av=function(e){return e!=null&&it(e)===vf},ne=function(e){return e!=null&&it(e)===it(1)&&!isNaN(e)},Lv=function(e){return ne(e)&&Math.floor(e)===e},Dn=function(e){if(Sv!=="undefined")return e!=null&&e instanceof HTMLElement},Rt=function(e){return Fa(e)||hf(e)},Fa=function(e){return Ba(e)==="collection"&&e._private.single},hf=function(e){return Ba(e)==="collection"&&!e._private.single},ro=function(e){return Ba(e)==="core"},df=function(e){return Ba(e)==="stylesheet"},Rv=function(e){return Ba(e)==="event"},cr=function(e){return e==null?!0:!!(e===""||e.match(/^\s+$/))},Pv=function(e){return typeof HTMLElement>"u"?!1:e instanceof HTMLElement},Iv=function(e){return Oe(e)&&ne(e.x1)&&ne(e.x2)&&ne(e.y1)&&ne(e.y2)},Mv=function(e){return Av(e)&&Xe(e.then)},Ov=function(){return Mo&&Mo.userAgent.match(/msie|trident|edge/i)},ta=function(e,r){r||(r=function(){if(arguments.length===1)return arguments[0];if(arguments.length===0)return"undefined";for(var i=[],s=0;s<arguments.length;s++)i.push(arguments[s]);return i.join("$")});var a=function(){var i=this,s=arguments,o,u=r.apply(i,s),l=a.cache;return(o=l[u])||(o=l[u]=e.apply(i,s)),o};return a.cache={},a},ao=ta(function(t){return t.replace(/([A-Z])/g,function(e){return"-"+e.toLowerCase()})}),_n=ta(function(t){return t.replace(/(-\w)/g,function(e){return e[1].toUpperCase()})}),gf=ta(function(t,e){return t+e[0].toUpperCase()+e.substring(1)},function(t,e){return t+"$"+e}),Oo=function(e){return cr(e)?e:e.charAt(0).toUpperCase()+e.substring(1)},sr=function(e,r){return e.slice(-1*r.length)===r},nt="(?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))",kv="rgb[a]?\\(("+nt+"[%]?)\\s*,\\s*("+nt+"[%]?)\\s*,\\s*("+nt+"[%]?)(?:\\s*,\\s*("+nt+"))?\\)",Nv="rgb[a]?\\((?:"+nt+"[%]?)\\s*,\\s*(?:"+nt+"[%]?)\\s*,\\s*(?:"+nt+"[%]?)(?:\\s*,\\s*(?:"+nt+"))?\\)",Bv="hsl[a]?\\(("+nt+")\\s*,\\s*("+nt+"[%])\\s*,\\s*("+nt+"[%])(?:\\s*,\\s*("+nt+"))?\\)",Fv="hsl[a]?\\((?:"+nt+")\\s*,\\s*(?:"+nt+"[%])\\s*,\\s*(?:"+nt+"[%])(?:\\s*,\\s*(?:"+nt+"))?\\)",_v="\\#[0-9a-fA-F]{3}",zv="\\#[0-9a-fA-F]{6}",pf=function(e,r){return e<r?-1:e>r?1:0},Gv=function(e,r){return-1*pf(e,r)},be=Object.assign!=null?Object.assign.bind(Object):function(t){for(var e=arguments,r=1;r<e.length;r++){var a=e[r];if(a!=null)for(var n=Object.keys(a),i=0;i<n.length;i++){var s=n[i];t[s]=a[s]}}return t},Vv=function(e){if(!(!(e.length===4||e.length===7)||e[0]!=="#")){var r=e.length===4,a,n,i,s=16;return r?(a=parseInt(e[1]+e[1],s),n=parseInt(e[2]+e[2],s),i=parseInt(e[3]+e[3],s)):(a=parseInt(e[1]+e[2],s),n=parseInt(e[3]+e[4],s),i=parseInt(e[5]+e[6],s)),[a,n,i]}},Uv=function(e){var r,a,n,i,s,o,u,l;function f(d,p,g){return g<0&&(g+=1),g>1&&(g-=1),g<1/6?d+(p-d)*6*g:g<1/2?p:g<2/3?d+(p-d)*(2/3-g)*6:d}var c=new RegExp("^"+Bv+"$").exec(e);if(c){if(a=parseInt(c[1]),a<0?a=(360- -1*a%360)%360:a>360&&(a=a%360),a/=360,n=parseFloat(c[2]),n<0||n>100||(n=n/100,i=parseFloat(c[3]),i<0||i>100)||(i=i/100,s=c[4],s!==void 0&&(s=parseFloat(s),s<0||s>1)))return;if(n===0)o=u=l=Math.round(i*255);else{var v=i<.5?i*(1+n):i+n-i*n,h=2*i-v;o=Math.round(255*f(h,v,a+1/3)),u=Math.round(255*f(h,v,a)),l=Math.round(255*f(h,v,a-1/3))}r=[o,u,l,s]}return r},qv=function(e){var r,a=new RegExp("^"+kv+"$").exec(e);if(a){r=[];for(var n=[],i=1;i<=3;i++){var s=a[i];if(s[s.length-1]==="%"&&(n[i]=!0),s=parseFloat(s),n[i]&&(s=s/100*255),s<0||s>255)return;r.push(Math.floor(s))}var o=n[1]||n[2]||n[3],u=n[1]&&n[2]&&n[3];if(o&&!u)return;var l=a[4];if(l!==void 0){if(l=parseFloat(l),l<0||l>1)return;r.push(l)}}return r},$v=function(e){return Yv[e.toLowerCase()]},yf=function(e){return(Ve(e)?e:null)||$v(e)||Vv(e)||qv(e)||Uv(e)},Yv={transparent:[0,0,0,0],aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],grey:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},mf=function(e){for(var r=e.map,a=e.keys,n=a.length,i=0;i<n;i++){var s=a[i];if(Oe(s))throw Error("Tried to set map with object key");i<a.length-1?(r[s]==null&&(r[s]={}),r=r[s]):r[s]=e.value}},bf=function(e){for(var r=e.map,a=e.keys,n=a.length,i=0;i<n;i++){var s=a[i];if(Oe(s))throw Error("Tried to get map with object key");if(r=r[s],r==null)return r}return r},Za=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function _a(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var ni,ko;function za(){if(ko)return ni;ko=1;function t(e){var r=typeof e;return e!=null&&(r=="object"||r=="function")}return ni=t,ni}var ii,No;function Hv(){if(No)return ii;No=1;var t=typeof Za=="object"&&Za&&Za.Object===Object&&Za;return ii=t,ii}var si,Bo;function zn(){if(Bo)return si;Bo=1;var t=Hv(),e=typeof self=="object"&&self&&self.Object===Object&&self,r=t||e||Function("return this")();return si=r,si}var oi,Fo;function Xv(){if(Fo)return oi;Fo=1;var t=zn(),e=function(){return t.Date.now()};return oi=e,oi}var ui,_o;function Wv(){if(_o)return ui;_o=1;var t=/\s/;function e(r){for(var a=r.length;a--&&t.test(r.charAt(a)););return a}return ui=e,ui}var li,zo;function Kv(){if(zo)return li;zo=1;var t=Wv(),e=/^\s+/;function r(a){return a&&a.slice(0,t(a)+1).replace(e,"")}return li=r,li}var fi,Go;function no(){if(Go)return fi;Go=1;var t=zn(),e=t.Symbol;return fi=e,fi}var ci,Vo;function Zv(){if(Vo)return ci;Vo=1;var t=no(),e=Object.prototype,r=e.hasOwnProperty,a=e.toString,n=t?t.toStringTag:void 0;function i(s){var o=r.call(s,n),u=s[n];try{s[n]=void 0;var l=!0}catch{}var f=a.call(s);return l&&(o?s[n]=u:delete s[n]),f}return ci=i,ci}var vi,Uo;function Qv(){if(Uo)return vi;Uo=1;var t=Object.prototype,e=t.toString;function r(a){return e.call(a)}return vi=r,vi}var hi,qo;function wf(){if(qo)return hi;qo=1;var t=no(),e=Zv(),r=Qv(),a="[object Null]",n="[object Undefined]",i=t?t.toStringTag:void 0;function s(o){return o==null?o===void 0?n:a:i&&i in Object(o)?e(o):r(o)}return hi=s,hi}var di,$o;function Jv(){if($o)return di;$o=1;function t(e){return e!=null&&typeof e=="object"}return di=t,di}var gi,Yo;function Ga(){if(Yo)return gi;Yo=1;var t=wf(),e=Jv(),r="[object Symbol]";function a(n){return typeof n=="symbol"||e(n)&&t(n)==r}return gi=a,gi}var pi,Ho;function jv(){if(Ho)return pi;Ho=1;var t=Kv(),e=za(),r=Ga(),a=NaN,n=/^[-+]0x[0-9a-f]+$/i,i=/^0b[01]+$/i,s=/^0o[0-7]+$/i,o=parseInt;function u(l){if(typeof l=="number")return l;if(r(l))return a;if(e(l)){var f=typeof l.valueOf=="function"?l.valueOf():l;l=e(f)?f+"":f}if(typeof l!="string")return l===0?l:+l;l=t(l);var c=i.test(l);return c||s.test(l)?o(l.slice(2),c?2:8):n.test(l)?a:+l}return pi=u,pi}var yi,Xo;function eh(){if(Xo)return yi;Xo=1;var t=za(),e=Xv(),r=jv(),a="Expected a function",n=Math.max,i=Math.min;function s(o,u,l){var f,c,v,h,d,p,g=0,y=!1,b=!1,m=!0;if(typeof o!="function")throw new TypeError(a);u=r(u)||0,t(l)&&(y=!!l.leading,b="maxWait"in l,v=b?n(r(l.maxWait)||0,u):v,m="trailing"in l?!!l.trailing:m);function E(R){var P=f,M=c;return f=c=void 0,g=R,h=o.apply(M,P),h}function T(R){return g=R,d=setTimeout(x,u),y?E(R):h}function S(R){var P=R-p,M=R-g,N=u-P;return b?i(N,v-M):N}function w(R){var P=R-p,M=R-g;return p===void 0||P>=u||P<0||b&&M>=v}function x(){var R=e();if(w(R))return C(R);d=setTimeout(x,S(R))}function C(R){return d=void 0,m&&f?E(R):(f=c=void 0,h)}function D(){d!==void 0&&clearTimeout(d),g=0,f=p=c=d=void 0}function A(){return d===void 0?h:C(e())}function L(){var R=e(),P=w(R);if(f=arguments,c=this,p=R,P){if(d===void 0)return T(p);if(b)return clearTimeout(d),d=setTimeout(x,u),E(p)}return d===void 0&&(d=setTimeout(x,u)),h}return L.cancel=D,L.flush=A,L}return yi=s,yi}var th=eh(),Va=_a(th),mi=rt?rt.performance:null,Ef=mi&&mi.now?function(){return mi.now()}:function(){return Date.now()},rh=(function(){if(rt){if(rt.requestAnimationFrame)return function(t){rt.requestAnimationFrame(t)};if(rt.mozRequestAnimationFrame)return function(t){rt.mozRequestAnimationFrame(t)};if(rt.webkitRequestAnimationFrame)return function(t){rt.webkitRequestAnimationFrame(t)};if(rt.msRequestAnimationFrame)return function(t){rt.msRequestAnimationFrame(t)}}return function(t){t&&setTimeout(function(){t(Ef())},1e3/60)}})(),Sn=function(e){return rh(e)},Jt=Ef,Lr=9261,xf=65599,Xr=5381,Tf=function(e){for(var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Lr,a=r,n;n=e.next(),!n.done;)a=a*xf+n.value|0;return a},Sa=function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Lr;return r*xf+e|0},Aa=function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Xr;return(r<<5)+r+e|0},ah=function(e,r){return e*2097152+r},ar=function(e){return e[0]*2097152+e[1]},Qa=function(e,r){return[Sa(e[0],r[0]),Aa(e[1],r[1])]},Wo=function(e,r){var a={value:0,done:!1},n=0,i=e.length,s={next:function(){return n<i?a.value=e[n++]:a.done=!0,a}};return Tf(s,r)},Ir=function(e,r){var a={value:0,done:!1},n=0,i=e.length,s={next:function(){return n<i?a.value=e.charCodeAt(n++):a.done=!0,a}};return Tf(s,r)},Cf=function(){return nh(arguments)},nh=function(e){for(var r,a=0;a<e.length;a++){var n=e[a];a===0?r=Ir(n):r=Ir(n,r)}return r};function ih(t,e,r,a,n){var i=n*Math.PI/180,s=Math.cos(i)*(t-r)-Math.sin(i)*(e-a)+r,o=Math.sin(i)*(t-r)+Math.cos(i)*(e-a)+a;return{x:s,y:o}}var sh=function(e,r,a,n,i,s){return{x:(e-a)*i+a,y:(r-n)*s+n}};function oh(t,e,r){if(r===0)return t;var a=(e.x1+e.x2)/2,n=(e.y1+e.y2)/2,i=e.w/e.h,s=1/i,o=ih(t.x,t.y,a,n,r),u=sh(o.x,o.y,a,n,i,s);return{x:u.x,y:u.y}}var Ko=!0,uh=console.warn!=null,lh=console.trace!=null,io=Number.MAX_SAFE_INTEGER||9007199254740991,Df=function(){return!0},An=function(){return!1},Zo=function(){return 0},so=function(){},He=function(e){throw new Error(e)},Sf=function(e){if(e!==void 0)Ko=!!e;else return Ko},ze=function(e){Sf()&&(uh?console.warn(e):(console.log(e),lh&&console.trace()))},fh=function(e){return be({},e)},qt=function(e){return e==null?e:Ve(e)?e.slice():Oe(e)?fh(e):e},ch=function(e){return e.slice()},Af=function(e,r){for(r=e="";e++<36;r+=e*51&52?(e^15?8^Math.random()*(e^20?16:4):4).toString(16):"-");return r},vh={},Lf=function(){return vh},dt=function(e){var r=Object.keys(e);return function(a){for(var n={},i=0;i<r.length;i++){var s=r[i],o=a==null?void 0:a[s];n[s]=o===void 0?e[s]:o}return n}},vr=function(e,r,a){for(var n=e.length-1;n>=0;n--)e[n]===r&&e.splice(n,1)},oo=function(e){e.splice(0,e.length)},hh=function(e,r){for(var a=0;a<r.length;a++){var n=r[a];e.push(n)}},St=function(e,r,a){return a&&(r=gf(a,r)),e[r]},Zt=function(e,r,a,n){a&&(r=gf(a,r)),e[r]=n},dh=(function(){function t(){mr(this,t),this._obj={}}return br(t,[{key:"set",value:function(r,a){return this._obj[r]=a,this}},{key:"delete",value:function(r){return this._obj[r]=void 0,this}},{key:"clear",value:function(){this._obj={}}},{key:"has",value:function(r){return this._obj[r]!==void 0}},{key:"get",value:function(r){return this._obj[r]}}])})(),Qt=typeof Map<"u"?Map:dh,gh="undefined",ph=(function(){function t(e){if(mr(this,t),this._obj=Object.create(null),this.size=0,e!=null){var r;e.instanceString!=null&&e.instanceString()===this.instanceString()?r=e.toArray():r=e;for(var a=0;a<r.length;a++)this.add(r[a])}}return br(t,[{key:"instanceString",value:function(){return"set"}},{key:"add",value:function(r){var a=this._obj;a[r]!==1&&(a[r]=1,this.size++)}},{key:"delete",value:function(r){var a=this._obj;a[r]===1&&(a[r]=0,this.size--)}},{key:"clear",value:function(){this._obj=Object.create(null)}},{key:"has",value:function(r){return this._obj[r]===1}},{key:"toArray",value:function(){var r=this;return Object.keys(this._obj).filter(function(a){return r.has(a)})}},{key:"forEach",value:function(r,a){return this.toArray().forEach(r,a)}}])})(),na=(typeof Set>"u"?"undefined":it(Set))!==gh?Set:ph,Gn=function(e,r){var a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(e===void 0||r===void 0||!ro(e)){He("An element must have a core reference and parameters set");return}var n=r.group;if(n==null&&(r.data&&r.data.source!=null&&r.data.target!=null?n="edges":n="nodes"),n!=="nodes"&&n!=="edges"){He("An element must be of type `nodes` or `edges`; you specified `"+n+"`");return}this.length=1,this[0]=this;var i=this._private={cy:e,single:!0,data:r.data||{},position:r.position||{x:0,y:0},autoWidth:void 0,autoHeight:void 0,autoPadding:void 0,compoundBoundsClean:!1,listeners:[],group:n,style:{},rstyle:{},styleCxts:[],styleKeys:{},removed:!0,selected:!!r.selected,selectable:r.selectable===void 0?!0:!!r.selectable,locked:!!r.locked,grabbed:!1,grabbable:r.grabbable===void 0?!0:!!r.grabbable,pannable:r.pannable===void 0?n==="edges":!!r.pannable,active:!1,classes:new na,animation:{current:[],queue:[]},rscratch:{},scratch:r.scratch||{},edges:[],children:[],parent:r.parent&&r.parent.isNode()?r.parent:null,traversalCache:{},backgrounding:!1,bbCache:null,bbCacheShift:{x:0,y:0},bodyBounds:null,overlayBounds:null,labelBounds:{all:null,source:null,target:null,main:null},arrowBounds:{source:null,target:null,"mid-source":null,"mid-target":null}};if(i.position.x==null&&(i.position.x=0),i.position.y==null&&(i.position.y=0),r.renderedPosition){var s=r.renderedPosition,o=e.pan(),u=e.zoom();i.position={x:(s.x-o.x)/u,y:(s.y-o.y)/u}}var l=[];Ve(r.classes)?l=r.classes:ge(r.classes)&&(l=r.classes.split(/\s+/));for(var f=0,c=l.length;f<c;f++){var v=l[f];!v||v===""||i.classes.add(v)}this.createEmitter(),(a===void 0||a)&&this.restore();var h=r.style||r.css;h&&(ze("Setting a `style` bypass at element creation should be done only when absolutely necessary. Try to use the stylesheet instead."),this.style(h))},Qo=function(e){return e={bfs:e.bfs||!e.dfs,dfs:e.dfs||!e.bfs},function(a,n,i){var s;Oe(a)&&!Rt(a)&&(s=a,a=s.roots||s.root,n=s.visit,i=s.directed),i=arguments.length===2&&!Xe(n)?n:i,n=Xe(n)?n:function(){};for(var o=this._private.cy,u=a=ge(a)?this.filter(a):a,l=[],f=[],c={},v={},h={},d=0,p,g=this.byGroup(),y=g.nodes,b=g.edges,m=0;m<u.length;m++){var E=u[m],T=E.id();E.isNode()&&(l.unshift(E),e.bfs&&(h[T]=!0,f.push(E)),v[T]=0)}for(var S=function(){var R=e.bfs?l.shift():l.pop(),P=R.id();if(e.dfs){if(h[P])return 0;h[P]=!0,f.push(R)}var M=v[P],N=c[P],O=N!=null?N.source():null,k=N!=null?N.target():null,B=N==null?void 0:R.same(O)?k[0]:O[0],_;if(_=n(R,N,B,d++,M),_===!0)return p=R,1;if(_===!1)return 1;for(var F=R.connectedEdges().filter(function(W){return(!i||W.source().same(R))&&b.has(W)}),z=0;z<F.length;z++){var Y=F[z],$=Y.connectedNodes().filter(function(W){return!W.same(R)&&y.has(W)}),H=$.id();$.length!==0&&!h[H]&&($=$[0],l.push($),e.bfs&&(h[H]=!0,f.push($)),c[H]=Y,v[H]=v[P]+1)}},w;l.length!==0&&(w=S(),!(w!==0&&w===1)););for(var x=o.collection(),C=0;C<f.length;C++){var D=f[C],A=c[D.id()];A!=null&&x.push(A),x.push(D)}return{path:o.collection(x),found:o.collection(p)}}},La={breadthFirstSearch:Qo({bfs:!0}),depthFirstSearch:Qo({dfs:!0})};La.bfs=La.breadthFirstSearch;La.dfs=La.depthFirstSearch;var fn={exports:{}},yh=fn.exports,Jo;function mh(){return Jo||(Jo=1,(function(t,e){(function(){var r,a,n,i,s,o,u,l,f,c,v,h,d,p,g;n=Math.floor,c=Math.min,a=function(y,b){return y<b?-1:y>b?1:0},f=function(y,b,m,E,T){var S;if(m==null&&(m=0),T==null&&(T=a),m<0)throw new Error("lo must be non-negative");for(E==null&&(E=y.length);m<E;)S=n((m+E)/2),T(b,y[S])<0?E=S:m=S+1;return[].splice.apply(y,[m,m-m].concat(b)),b},o=function(y,b,m){return m==null&&(m=a),y.push(b),p(y,0,y.length-1,m)},s=function(y,b){var m,E;return b==null&&(b=a),m=y.pop(),y.length?(E=y[0],y[0]=m,g(y,0,b)):E=m,E},l=function(y,b,m){var E;return m==null&&(m=a),E=y[0],y[0]=b,g(y,0,m),E},u=function(y,b,m){var E;return m==null&&(m=a),y.length&&m(y[0],b)<0&&(E=[y[0],b],b=E[0],y[0]=E[1],g(y,0,m)),b},i=function(y,b){var m,E,T,S,w,x;for(b==null&&(b=a),S=(function(){x=[];for(var C=0,D=n(y.length/2);0<=D?C<D:C>D;0<=D?C++:C--)x.push(C);return x}).apply(this).reverse(),w=[],E=0,T=S.length;E<T;E++)m=S[E],w.push(g(y,m,b));return w},d=function(y,b,m){var E;if(m==null&&(m=a),E=y.indexOf(b),E!==-1)return p(y,0,E,m),g(y,E,m)},v=function(y,b,m){var E,T,S,w,x;if(m==null&&(m=a),T=y.slice(0,b),!T.length)return T;for(i(T,m),x=y.slice(b),S=0,w=x.length;S<w;S++)E=x[S],u(T,E,m);return T.sort(m).reverse()},h=function(y,b,m){var E,T,S,w,x,C,D,A,L;if(m==null&&(m=a),b*10<=y.length){if(S=y.slice(0,b).sort(m),!S.length)return S;for(T=S[S.length-1],D=y.slice(b),w=0,C=D.length;w<C;w++)E=D[w],m(E,T)<0&&(f(S,E,0,null,m),S.pop(),T=S[S.length-1]);return S}for(i(y,m),L=[],x=0,A=c(b,y.length);0<=A?x<A:x>A;0<=A?++x:--x)L.push(s(y,m));return L},p=function(y,b,m,E){var T,S,w;for(E==null&&(E=a),T=y[m];m>b;){if(w=m-1>>1,S=y[w],E(T,S)<0){y[m]=S,m=w;continue}break}return y[m]=T},g=function(y,b,m){var E,T,S,w,x;for(m==null&&(m=a),T=y.length,x=b,S=y[b],E=2*b+1;E<T;)w=E+1,w<T&&!(m(y[E],y[w])<0)&&(E=w),y[b]=y[E],b=E,E=2*b+1;return y[b]=S,p(y,x,b,m)},r=(function(){y.push=o,y.pop=s,y.replace=l,y.pushpop=u,y.heapify=i,y.updateItem=d,y.nlargest=v,y.nsmallest=h;function y(b){this.cmp=b??a,this.nodes=[]}return y.prototype.push=function(b){return o(this.nodes,b,this.cmp)},y.prototype.pop=function(){return s(this.nodes,this.cmp)},y.prototype.peek=function(){return this.nodes[0]},y.prototype.contains=function(b){return this.nodes.indexOf(b)!==-1},y.prototype.replace=function(b){return l(this.nodes,b,this.cmp)},y.prototype.pushpop=function(b){return u(this.nodes,b,this.cmp)},y.prototype.heapify=function(){return i(this.nodes,this.cmp)},y.prototype.updateItem=function(b){return d(this.nodes,b,this.cmp)},y.prototype.clear=function(){return this.nodes=[]},y.prototype.empty=function(){return this.nodes.length===0},y.prototype.size=function(){return this.nodes.length},y.prototype.clone=function(){var b;return b=new y,b.nodes=this.nodes.slice(0),b},y.prototype.toArray=function(){return this.nodes.slice(0)},y.prototype.insert=y.prototype.push,y.prototype.top=y.prototype.peek,y.prototype.front=y.prototype.peek,y.prototype.has=y.prototype.contains,y.prototype.copy=y.prototype.clone,y})(),(function(y,b){return t.exports=b()})(this,function(){return r})}).call(yh)})(fn)),fn.exports}var bi,jo;function bh(){return jo||(jo=1,bi=mh()),bi}var wh=bh(),Ua=_a(wh),Eh=dt({root:null,weight:function(e){return 1},directed:!1}),xh={dijkstra:function(e){if(!Oe(e)){var r=arguments;e={root:r[0],weight:r[1],directed:r[2]}}var a=Eh(e),n=a.root,i=a.weight,s=a.directed,o=this,u=i,l=ge(n)?this.filter(n)[0]:n[0],f={},c={},v={},h=this.byGroup(),d=h.nodes,p=h.edges;p.unmergeBy(function(M){return M.isLoop()});for(var g=function(N){return f[N.id()]},y=function(N,O){f[N.id()]=O,b.updateItem(N)},b=new Ua(function(M,N){return g(M)-g(N)}),m=0;m<d.length;m++){var E=d[m];f[E.id()]=E.same(l)?0:1/0,b.push(E)}for(var T=function(N,O){for(var k=(s?N.edgesTo(O):N.edgesWith(O)).intersect(p),B=1/0,_,F=0;F<k.length;F++){var z=k[F],Y=u(z);(Y<B||!_)&&(B=Y,_=z)}return{edge:_,dist:B}};b.size()>0;){var S=b.pop(),w=g(S),x=S.id();if(v[x]=w,w!==1/0)for(var C=S.neighborhood().intersect(d),D=0;D<C.length;D++){var A=C[D],L=A.id(),R=T(S,A),P=w+R.dist;P<g(A)&&(y(A,P),c[L]={node:S,edge:R.edge})}}return{distanceTo:function(N){var O=ge(N)?d.filter(N)[0]:N[0];return v[O.id()]},pathTo:function(N){var O=ge(N)?d.filter(N)[0]:N[0],k=[],B=O,_=B.id();if(O.length>0)for(k.unshift(O);c[_];){var F=c[_];k.unshift(F.edge),k.unshift(F.node),B=F.node,_=B.id()}return o.spawn(k)}}}},Th={kruskal:function(e){e=e||function(m){return 1};for(var r=this.byGroup(),a=r.nodes,n=r.edges,i=a.length,s=new Array(i),o=a,u=function(E){for(var T=0;T<s.length;T++){var S=s[T];if(S.has(E))return T}},l=0;l<i;l++)s[l]=this.spawn(a[l]);for(var f=n.sort(function(m,E){return e(m)-e(E)}),c=0;c<f.length;c++){var v=f[c],h=v.source()[0],d=v.target()[0],p=u(h),g=u(d),y=s[p],b=s[g];p!==g&&(o.merge(v),y.merge(b),s.splice(g,1))}return o}},Ch=dt({root:null,goal:null,weight:function(e){return 1},heuristic:function(e){return 0},directed:!1}),Dh={aStar:function(e){var r=this.cy(),a=Ch(e),n=a.root,i=a.goal,s=a.heuristic,o=a.directed,u=a.weight;n=r.collection(n)[0],i=r.collection(i)[0];var l=n.id(),f=i.id(),c={},v={},h={},d=new Ua(function(_,F){return v[_.id()]-v[F.id()]}),p=new na,g={},y={},b=function(F,z){d.push(F),p.add(z)},m,E,T=function(){m=d.pop(),E=m.id(),p.delete(E)},S=function(F){return p.has(F)};b(n,l),c[l]=0,v[l]=s(n);for(var w=0;d.size()>0;){if(T(),w++,E===f){for(var x=[],C=i,D=f,A=y[D];x.unshift(C),A!=null&&x.unshift(A),C=g[D],C!=null;)D=C.id(),A=y[D];return{found:!0,distance:c[E],path:this.spawn(x),steps:w}}h[E]=!0;for(var L=m._private.edges,R=0;R<L.length;R++){var P=L[R];if(this.hasElementWithId(P.id())&&!(o&&P.data("source")!==E)){var M=P.source(),N=P.target(),O=M.id()!==E?M:N,k=O.id();if(this.hasElementWithId(k)&&!h[k]){var B=c[E]+u(P);if(!S(k)){c[k]=B,v[k]=B+s(O),b(O,k),g[k]=m,y[k]=P;continue}B<c[k]&&(c[k]=B,v[k]=B+s(O),g[k]=m,y[k]=P)}}}}return{found:!1,distance:void 0,path:void 0,steps:w}}},Sh=dt({weight:function(e){return 1},directed:!1}),Ah={floydWarshall:function(e){for(var r=this.cy(),a=Sh(e),n=a.weight,i=a.directed,s=n,o=this.byGroup(),u=o.nodes,l=o.edges,f=u.length,c=f*f,v=function(Y){return u.indexOf(Y)},h=function(Y){return u[Y]},d=new Array(c),p=0;p<c;p++){var g=p%f,y=(p-g)/f;y===g?d[p]=0:d[p]=1/0}for(var b=new Array(c),m=new Array(c),E=0;E<l.length;E++){var T=l[E],S=T.source()[0],w=T.target()[0];if(S!==w){var x=v(S),C=v(w),D=x*f+C,A=s(T);if(d[D]>A&&(d[D]=A,b[D]=C,m[D]=T),!i){var L=C*f+x;!i&&d[L]>A&&(d[L]=A,b[L]=x,m[L]=T)}}}for(var R=0;R<f;R++)for(var P=0;P<f;P++)for(var M=P*f+R,N=0;N<f;N++){var O=P*f+N,k=R*f+N;d[M]+d[k]<d[O]&&(d[O]=d[M]+d[k],b[O]=b[M])}var B=function(Y){return(ge(Y)?r.filter(Y):Y)[0]},_=function(Y){return v(B(Y))},F={distance:function(Y,$){var H=_(Y),W=_($);return d[H*f+W]},path:function(Y,$){var H=_(Y),W=_($),ee=h(H);if(H===W)return ee.collection();if(b[H*f+W]==null)return r.collection();var ae=r.collection(),J=H,G;for(ae.merge(ee);H!==W;)J=H,H=b[H*f+W],G=m[J*f+H],ae.merge(G),ae.merge(h(H));return ae}};return F}},Lh=dt({weight:function(e){return 1},directed:!1,root:null}),Rh={bellmanFord:function(e){var r=this,a=Lh(e),n=a.weight,i=a.directed,s=a.root,o=n,u=this,l=this.cy(),f=this.byGroup(),c=f.edges,v=f.nodes,h=v.length,d=new Qt,p=!1,g=[];s=l.collection(s)[0],c.unmergeBy(function(Te){return Te.isLoop()});for(var y=c.length,b=function(we){var ye=d.get(we.id());return ye||(ye={},d.set(we.id(),ye)),ye},m=function(we){return(ge(we)?l.$(we):we)[0]},E=function(we){return b(m(we)).dist},T=function(we){for(var ye=arguments.length>1&&arguments[1]!==void 0?arguments[1]:s,ie=m(we),he=[],de=ie;;){if(de==null)return r.spawn();var xe=b(de),pe=xe.edge,De=xe.pred;if(he.unshift(de[0]),de.same(ye)&&he.length>0)break;pe!=null&&he.unshift(pe),de=De}return u.spawn(he)},S=0;S<h;S++){var w=v[S],x=b(w);w.same(s)?x.dist=0:x.dist=1/0,x.pred=null,x.edge=null}for(var C=!1,D=function(we,ye,ie,he,de,xe){var pe=he.dist+xe;pe<de.dist&&!ie.same(he.edge)&&(de.dist=pe,de.pred=we,de.edge=ie,C=!0)},A=1;A<h;A++){C=!1;for(var L=0;L<y;L++){var R=c[L],P=R.source(),M=R.target(),N=o(R),O=b(P),k=b(M);D(P,M,R,O,k,N),i||D(M,P,R,k,O,N)}if(!C)break}if(C)for(var B=[],_=0;_<y;_++){var F=c[_],z=F.source(),Y=F.target(),$=o(F),H=b(z).dist,W=b(Y).dist;if(H+$<W||!i&&W+$<H)if(p||(ze("Graph contains a negative weight cycle for Bellman-Ford"),p=!0),e.findNegativeWeightCycles!==!1){var ee=[];H+$<W&&ee.push(z),!i&&W+$<H&&ee.push(Y);for(var ae=ee.length,J=0;J<ae;J++){var G=ee[J],V=[G];V.push(b(G).edge);for(var q=b(G).pred;V.indexOf(q)===-1;)V.push(q),V.push(b(q).edge),q=b(q).pred;V=V.slice(V.indexOf(q));for(var Z=V[0].id(),re=0,ve=2;ve<V.length;ve+=2)V[ve].id()<Z&&(Z=V[ve].id(),re=ve);V=V.slice(re).concat(V.slice(0,re)),V.push(V[0]);var Pe=V.map(function(Te){return Te.id()}).join(",");B.indexOf(Pe)===-1&&(g.push(u.spawn(V)),B.push(Pe))}}else break}return{distanceTo:E,pathTo:T,hasNegativeWeightCycle:p,negativeWeightCycles:g}}},Ph=Math.sqrt(2),Ih=function(e,r,a){a.length===0&&He("Karger-Stein must be run on a connected (sub)graph");for(var n=a[e],i=n[1],s=n[2],o=r[i],u=r[s],l=a,f=l.length-1;f>=0;f--){var c=l[f],v=c[1],h=c[2];(r[v]===o&&r[h]===u||r[v]===u&&r[h]===o)&&l.splice(f,1)}for(var d=0;d<l.length;d++){var p=l[d];p[1]===u?(l[d]=p.slice(),l[d][1]=o):p[2]===u&&(l[d]=p.slice(),l[d][2]=o)}for(var g=0;g<r.length;g++)r[g]===u&&(r[g]=o);return l},wi=function(e,r,a,n){for(;a>n;){var i=Math.floor(Math.random()*r.length);r=Ih(i,e,r),a--}return r},Mh={kargerStein:function(){var e=this,r=this.byGroup(),a=r.nodes,n=r.edges;n.unmergeBy(function(k){return k.isLoop()});var i=a.length,s=n.length,o=Math.ceil(Math.pow(Math.log(i)/Math.LN2,2)),u=Math.floor(i/Ph);if(i<2){He("At least 2 nodes are required for Karger-Stein algorithm");return}for(var l=[],f=0;f<s;f++){var c=n[f];l.push([f,a.indexOf(c.source()),a.indexOf(c.target())])}for(var v=1/0,h=[],d=new Array(i),p=new Array(i),g=new Array(i),y=function(B,_){for(var F=0;F<i;F++)_[F]=B[F]},b=0;b<=o;b++){for(var m=0;m<i;m++)p[m]=m;var E=wi(p,l.slice(),i,u),T=E.slice();y(p,g);var S=wi(p,E,u,2),w=wi(g,T,u,2);S.length<=w.length&&S.length<v?(v=S.length,h=S,y(p,d)):w.length<=S.length&&w.length<v&&(v=w.length,h=w,y(g,d))}for(var x=this.spawn(h.map(function(k){return n[k[0]]})),C=this.spawn(),D=this.spawn(),A=d[0],L=0;L<d.length;L++){var R=d[L],P=a[L];R===A?C.merge(P):D.merge(P)}var M=function(B){var _=e.spawn();return B.forEach(function(F){_.merge(F),F.connectedEdges().forEach(function(z){e.contains(z)&&!x.contains(z)&&_.merge(z)})}),_},N=[M(C),M(D)],O={cut:x,components:N,partition1:C,partition2:D};return O}},Ei,Oh=function(e){return{x:e.x,y:e.y}},Vn=function(e,r,a){return{x:e.x*r+a.x,y:e.y*r+a.y}},Rf=function(e,r,a){return{x:(e.x-a.x)/r,y:(e.y-a.y)/r}},Wr=function(e){return{x:e[0],y:e[1]}},kh=function(e){for(var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,n=1/0,i=r;i<a;i++){var s=e[i];isFinite(s)&&(n=Math.min(s,n))}return n},Nh=function(e){for(var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,n=-1/0,i=r;i<a;i++){var s=e[i];isFinite(s)&&(n=Math.max(s,n))}return n},Bh=function(e){for(var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,n=0,i=0,s=r;s<a;s++){var o=e[s];isFinite(o)&&(n+=o,i++)}return n/i},Fh=function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,s=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0;n?e=e.slice(r,a):(a<e.length&&e.splice(a,e.length-a),r>0&&e.splice(0,r));for(var o=0,u=e.length-1;u>=0;u--){var l=e[u];s?isFinite(l)||(e[u]=-1/0,o++):e.splice(u,1)}i&&e.sort(function(v,h){return v-h});var f=e.length,c=Math.floor(f/2);return f%2!==0?e[c+1+o]:(e[c-1+o]+e[c+o])/2},_h=function(e){return Math.PI*e/180},Ja=function(e,r){return Math.atan2(r,e)-Math.PI/2},uo=Math.log2||function(t){return Math.log(t)/Math.log(2)},lo=function(e){return e>0?1:e<0?-1:0},Mr=function(e,r){return Math.sqrt(Sr(e,r))},Sr=function(e,r){var a=r.x-e.x,n=r.y-e.y;return a*a+n*n},zh=function(e){for(var r=e.length,a=0,n=0;n<r;n++)a+=e[n];for(var i=0;i<r;i++)e[i]=e[i]/a;return e},ut=function(e,r,a,n){return(1-n)*(1-n)*e+2*(1-n)*n*r+n*n*a},Qr=function(e,r,a,n){return{x:ut(e.x,r.x,a.x,n),y:ut(e.y,r.y,a.y,n)}},Gh=function(e,r,a,n){var i={x:r.x-e.x,y:r.y-e.y},s=Mr(e,r),o={x:i.x/s,y:i.y/s};return a=a??0,n=n??a*s,{x:e.x+o.x*n,y:e.y+o.y*n}},Ra=function(e,r,a){return Math.max(e,Math.min(a,r))},xt=function(e){if(e==null)return{x1:1/0,y1:1/0,x2:-1/0,y2:-1/0,w:0,h:0};if(e.x1!=null&&e.y1!=null){if(e.x2!=null&&e.y2!=null&&e.x2>=e.x1&&e.y2>=e.y1)return{x1:e.x1,y1:e.y1,x2:e.x2,y2:e.y2,w:e.x2-e.x1,h:e.y2-e.y1};if(e.w!=null&&e.h!=null&&e.w>=0&&e.h>=0)return{x1:e.x1,y1:e.y1,x2:e.x1+e.w,y2:e.y1+e.h,w:e.w,h:e.h}}},Vh=function(e){return{x1:e.x1,x2:e.x2,w:e.w,y1:e.y1,y2:e.y2,h:e.h}},Uh=function(e){e.x1=1/0,e.y1=1/0,e.x2=-1/0,e.y2=-1/0,e.w=0,e.h=0},qh=function(e,r){e.x1=Math.min(e.x1,r.x1),e.x2=Math.max(e.x2,r.x2),e.w=e.x2-e.x1,e.y1=Math.min(e.y1,r.y1),e.y2=Math.max(e.y2,r.y2),e.h=e.y2-e.y1},Pf=function(e,r,a){e.x1=Math.min(e.x1,r),e.x2=Math.max(e.x2,r),e.w=e.x2-e.x1,e.y1=Math.min(e.y1,a),e.y2=Math.max(e.y2,a),e.h=e.y2-e.y1},cn=function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return e.x1-=r,e.x2+=r,e.y1-=r,e.y2+=r,e.w=e.x2-e.x1,e.h=e.y2-e.y1,e},vn=function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[0],a,n,i,s;if(r.length===1)a=n=i=s=r[0];else if(r.length===2)a=i=r[0],s=n=r[1];else if(r.length===4){var o=je(r,4);a=o[0],n=o[1],i=o[2],s=o[3]}return e.x1-=s,e.x2+=n,e.y1-=a,e.y2+=i,e.w=e.x2-e.x1,e.h=e.y2-e.y1,e},eu=function(e,r){e.x1=r.x1,e.y1=r.y1,e.x2=r.x2,e.y2=r.y2,e.w=e.x2-e.x1,e.h=e.y2-e.y1},fo=function(e,r){return!(e.x1>r.x2||r.x1>e.x2||e.x2<r.x1||r.x2<e.x1||e.y2<r.y1||r.y2<e.y1||e.y1>r.y2||r.y1>e.y2)},or=function(e,r,a){return e.x1<=r&&r<=e.x2&&e.y1<=a&&a<=e.y2},tu=function(e,r){return or(e,r.x,r.y)},If=function(e,r){return or(e,r.x1,r.y1)&&or(e,r.x2,r.y2)},$h=(Ei=Math.hypot)!==null&&Ei!==void 0?Ei:function(t,e){return Math.sqrt(t*t+e*e)};function Yh(t,e){if(t.length<3)throw new Error("Need at least 3 vertices");var r=function(x,C){return{x:x.x+C.x,y:x.y+C.y}},a=function(x,C){return{x:x.x-C.x,y:x.y-C.y}},n=function(x,C){return{x:x.x*C,y:x.y*C}},i=function(x,C){return x.x*C.y-x.y*C.x},s=function(x){var C=$h(x.x,x.y);return C===0?{x:0,y:0}:{x:x.x/C,y:x.y/C}},o=function(x){for(var C=0,D=0;D<x.length;D++){var A=x[D],L=x[(D+1)%x.length];C+=A.x*L.y-L.x*A.y}return C/2},u=function(x,C,D,A){var L=a(C,x),R=a(A,D),P=i(L,R);if(Math.abs(P)<1e-9)return r(x,n(L,.5));var M=i(a(D,x),R)/P;return r(x,n(L,M))},l=t.map(function(w){return{x:w.x,y:w.y}});o(l)<0&&l.reverse();for(var f=l.length,c=[],v=0;v<f;v++){var h=l[v],d=l[(v+1)%f],p=a(d,h),g=s({x:p.y,y:-p.x});c.push(g)}for(var y=c.map(function(w,x){var C=r(l[x],n(w,e)),D=r(l[(x+1)%f],n(w,e));return{p1:C,p2:D}}),b=[],m=0;m<f;m++){var E=y[(m-1+f)%f],T=y[m],S=u(E.p1,E.p2,T.p1,T.p2);b.push(S)}return b}function Hh(t,e,r,a,n,i){var s=td(t,e,r,a,n),o=Yh(s,i),u=xt();return o.forEach(function(l){return Pf(u,l.x,l.y)}),u}var Mf=function(e,r,a,n,i,s,o){var u=arguments.length>7&&arguments[7]!==void 0?arguments[7]:"auto",l=u==="auto"?hr(i,s):u,f=i/2,c=s/2;l=Math.min(l,f,c);var v=l!==f,h=l!==c,d;if(v){var p=a-f+l-o,g=n-c-o,y=a+f-l+o,b=g;if(d=ur(e,r,a,n,p,g,y,b,!1),d.length>0)return d}if(h){var m=a+f+o,E=n-c+l-o,T=m,S=n+c-l+o;if(d=ur(e,r,a,n,m,E,T,S,!1),d.length>0)return d}if(v){var w=a-f+l-o,x=n+c+o,C=a+f-l+o,D=x;if(d=ur(e,r,a,n,w,x,C,D,!1),d.length>0)return d}if(h){var A=a-f-o,L=n-c+l-o,R=A,P=n+c-l+o;if(d=ur(e,r,a,n,A,L,R,P,!1),d.length>0)return d}var M;{var N=a-f+l,O=n-c+l;if(M=wa(e,r,a,n,N,O,l+o),M.length>0&&M[0]<=N&&M[1]<=O)return[M[0],M[1]]}{var k=a+f-l,B=n-c+l;if(M=wa(e,r,a,n,k,B,l+o),M.length>0&&M[0]>=k&&M[1]<=B)return[M[0],M[1]]}{var _=a+f-l,F=n+c-l;if(M=wa(e,r,a,n,_,F,l+o),M.length>0&&M[0]>=_&&M[1]>=F)return[M[0],M[1]]}{var z=a-f+l,Y=n+c-l;if(M=wa(e,r,a,n,z,Y,l+o),M.length>0&&M[0]<=z&&M[1]>=Y)return[M[0],M[1]]}return[]},Xh=function(e,r,a,n,i,s,o){var u=o,l=Math.min(a,i),f=Math.max(a,i),c=Math.min(n,s),v=Math.max(n,s);return l-u<=e&&e<=f+u&&c-u<=r&&r<=v+u},Wh=function(e,r,a,n,i,s,o,u,l){var f={x1:Math.min(a,o,i)-l,x2:Math.max(a,o,i)+l,y1:Math.min(n,u,s)-l,y2:Math.max(n,u,s)+l};return!(e<f.x1||e>f.x2||r<f.y1||r>f.y2)},Kh=function(e,r,a,n){a-=n;var i=r*r-4*e*a;if(i<0)return[];var s=Math.sqrt(i),o=2*e,u=(-r+s)/o,l=(-r-s)/o;return[u,l]},Zh=function(e,r,a,n,i){var s=1e-5;e===0&&(e=s),r/=e,a/=e,n/=e;var o,u,l,f,c,v,h,d;if(u=(3*a-r*r)/9,l=-(27*n)+r*(9*a-2*(r*r)),l/=54,o=u*u*u+l*l,i[1]=0,h=r/3,o>0){c=l+Math.sqrt(o),c=c<0?-Math.pow(-c,1/3):Math.pow(c,1/3),v=l-Math.sqrt(o),v=v<0?-Math.pow(-v,1/3):Math.pow(v,1/3),i[0]=-h+c+v,h+=(c+v)/2,i[4]=i[2]=-h,h=Math.sqrt(3)*(-v+c)/2,i[3]=h,i[5]=-h;return}if(i[5]=i[3]=0,o===0){d=l<0?-Math.pow(-l,1/3):Math.pow(l,1/3),i[0]=-h+2*d,i[4]=i[2]=-(d+h);return}u=-u,f=u*u*u,f=Math.acos(l/Math.sqrt(f)),d=2*Math.sqrt(u),i[0]=-h+d*Math.cos(f/3),i[2]=-h+d*Math.cos((f+2*Math.PI)/3),i[4]=-h+d*Math.cos((f+4*Math.PI)/3)},Qh=function(e,r,a,n,i,s,o,u){var l=1*a*a-4*a*i+2*a*o+4*i*i-4*i*o+o*o+n*n-4*n*s+2*n*u+4*s*s-4*s*u+u*u,f=9*a*i-3*a*a-3*a*o-6*i*i+3*i*o+9*n*s-3*n*n-3*n*u-6*s*s+3*s*u,c=3*a*a-6*a*i+a*o-a*e+2*i*i+2*i*e-o*e+3*n*n-6*n*s+n*u-n*r+2*s*s+2*s*r-u*r,v=1*a*i-a*a+a*e-i*e+n*s-n*n+n*r-s*r,h=[];Zh(l,f,c,v,h);for(var d=1e-7,p=[],g=0;g<6;g+=2)Math.abs(h[g+1])<d&&h[g]>=0&&h[g]<=1&&p.push(h[g]);p.push(1),p.push(0);for(var y=-1,b,m,E,T=0;T<p.length;T++)b=Math.pow(1-p[T],2)*a+2*(1-p[T])*p[T]*i+p[T]*p[T]*o,m=Math.pow(1-p[T],2)*n+2*(1-p[T])*p[T]*s+p[T]*p[T]*u,E=Math.pow(b-e,2)+Math.pow(m-r,2),y>=0?E<y&&(y=E):y=E;return y},Jh=function(e,r,a,n,i,s){var o=[e-a,r-n],u=[i-a,s-n],l=u[0]*u[0]+u[1]*u[1],f=o[0]*o[0]+o[1]*o[1],c=o[0]*u[0]+o[1]*u[1],v=c*c/l;return c<0?f:v>l?(e-i)*(e-i)+(r-s)*(r-s):f-v},At=function(e,r,a){for(var n,i,s,o,u,l=0,f=0;f<a.length/2;f++)if(n=a[f*2],i=a[f*2+1],f+1<a.length/2?(s=a[(f+1)*2],o=a[(f+1)*2+1]):(s=a[(f+1-a.length/2)*2],o=a[(f+1-a.length/2)*2+1]),!(n==e&&s==e))if(n>=e&&e>=s||n<=e&&e<=s)u=(e-n)/(s-n)*(o-i)+i,u>r&&l++;else continue;return l%2!==0},jt=function(e,r,a,n,i,s,o,u,l){var f=new Array(a.length),c;u[0]!=null?(c=Math.atan(u[1]/u[0]),u[0]<0?c=c+Math.PI/2:c=-c-Math.PI/2):c=u;for(var v=Math.cos(-c),h=Math.sin(-c),d=0;d<f.length/2;d++)f[d*2]=s/2*(a[d*2]*v-a[d*2+1]*h),f[d*2+1]=o/2*(a[d*2+1]*v+a[d*2]*h),f[d*2]+=n,f[d*2+1]+=i;var p;if(l>0){var g=Rn(f,-l);p=Ln(g)}else p=f;return At(e,r,p)},jh=function(e,r,a,n,i,s,o,u){for(var l=new Array(a.length*2),f=0;f<u.length;f++){var c=u[f];l[f*4+0]=c.startX,l[f*4+1]=c.startY,l[f*4+2]=c.stopX,l[f*4+3]=c.stopY;var v=Math.pow(c.cx-e,2)+Math.pow(c.cy-r,2);if(v<=Math.pow(c.radius,2))return!0}return At(e,r,l)},Ln=function(e){for(var r=new Array(e.length/2),a,n,i,s,o,u,l,f,c=0;c<e.length/4;c++){a=e[c*4],n=e[c*4+1],i=e[c*4+2],s=e[c*4+3],c<e.length/4-1?(o=e[(c+1)*4],u=e[(c+1)*4+1],l=e[(c+1)*4+2],f=e[(c+1)*4+3]):(o=e[0],u=e[1],l=e[2],f=e[3]);var v=ur(a,n,i,s,o,u,l,f,!0);r[c*2]=v[0],r[c*2+1]=v[1]}return r},Rn=function(e,r){for(var a=new Array(e.length*2),n,i,s,o,u=0;u<e.length/2;u++){n=e[u*2],i=e[u*2+1],u<e.length/2-1?(s=e[(u+1)*2],o=e[(u+1)*2+1]):(s=e[0],o=e[1]);var l=o-i,f=-(s-n),c=Math.sqrt(l*l+f*f),v=l/c,h=f/c;a[u*4]=n+v*r,a[u*4+1]=i+h*r,a[u*4+2]=s+v*r,a[u*4+3]=o+h*r}return a},ed=function(e,r,a,n,i,s){var o=a-e,u=n-r;o/=i,u/=s;var l=Math.sqrt(o*o+u*u),f=l-1;if(f<0)return[];var c=f/l;return[(a-e)*c+e,(n-r)*c+r]},Pr=function(e,r,a,n,i,s,o){return e-=i,r-=s,e/=a/2+o,r/=n/2+o,e*e+r*r<=1},wa=function(e,r,a,n,i,s,o){var u=[a-e,n-r],l=[e-i,r-s],f=u[0]*u[0]+u[1]*u[1],c=2*(l[0]*u[0]+l[1]*u[1]),v=l[0]*l[0]+l[1]*l[1]-o*o,h=c*c-4*f*v;if(h<0)return[];var d=(-c+Math.sqrt(h))/(2*f),p=(-c-Math.sqrt(h))/(2*f),g=Math.min(d,p),y=Math.max(d,p),b=[];if(g>=0&&g<=1&&b.push(g),y>=0&&y<=1&&b.push(y),b.length===0)return[];var m=b[0]*u[0]+e,E=b[0]*u[1]+r;if(b.length>1){if(b[0]==b[1])return[m,E];var T=b[1]*u[0]+e,S=b[1]*u[1]+r;return[m,E,T,S]}else return[m,E]},xi=function(e,r,a){return r<=e&&e<=a||a<=e&&e<=r?e:e<=r&&r<=a||a<=r&&r<=e?r:a},ur=function(e,r,a,n,i,s,o,u,l){var f=e-i,c=a-e,v=o-i,h=r-s,d=n-r,p=u-s,g=v*h-p*f,y=c*h-d*f,b=p*c-v*d;if(b!==0){var m=g/b,E=y/b,T=.001,S=0-T,w=1+T;return S<=m&&m<=w&&S<=E&&E<=w?[e+m*c,r+m*d]:l?[e+m*c,r+m*d]:[]}else return g===0||y===0?xi(e,a,o)===o?[o,u]:xi(e,a,i)===i?[i,s]:xi(i,o,a)===a?[a,n]:[]:[]},td=function(e,r,a,n,i){var s=[],o=n/2,u=i/2,l=r,f=a;s.push({x:l+o*e[0],y:f+u*e[1]});for(var c=1;c<e.length/2;c++)s.push({x:l+o*e[c*2],y:f+u*e[c*2+1]});return s},Pa=function(e,r,a,n,i,s,o,u){var l=[],f,c=new Array(a.length),v=!0;s==null&&(v=!1);var h;if(v){for(var d=0;d<c.length/2;d++)c[d*2]=a[d*2]*s+n,c[d*2+1]=a[d*2+1]*o+i;if(u>0){var p=Rn(c,-u);h=Ln(p)}else h=c}else h=a;for(var g,y,b,m,E=0;E<h.length/2;E++)g=h[E*2],y=h[E*2+1],E<h.length/2-1?(b=h[(E+1)*2],m=h[(E+1)*2+1]):(b=h[0],m=h[1]),f=ur(e,r,n,i,g,y,b,m),f.length!==0&&l.push(f[0],f[1]);return l},rd=function(e,r,a,n,i,s,o,u,l){var f=[],c,v=new Array(a.length*2);l.forEach(function(b,m){m===0?(v[v.length-2]=b.startX,v[v.length-1]=b.startY):(v[m*4-2]=b.startX,v[m*4-1]=b.startY),v[m*4]=b.stopX,v[m*4+1]=b.stopY,c=wa(e,r,n,i,b.cx,b.cy,b.radius),c.length!==0&&f.push(c[0],c[1])});for(var h=0;h<v.length/4;h++)c=ur(e,r,n,i,v[h*4],v[h*4+1],v[h*4+2],v[h*4+3],!1),c.length!==0&&f.push(c[0],c[1]);if(f.length>2){for(var d=[f[0],f[1]],p=Math.pow(d[0]-e,2)+Math.pow(d[1]-r,2),g=1;g<f.length/2;g++){var y=Math.pow(f[g*2]-e,2)+Math.pow(f[g*2+1]-r,2);y<=p&&(d[0]=f[g*2],d[1]=f[g*2+1],p=y)}return d}return f},ja=function(e,r,a){var n=[e[0]-r[0],e[1]-r[1]],i=Math.sqrt(n[0]*n[0]+n[1]*n[1]),s=(i-a)/i;return s<0&&(s=1e-5),[r[0]+s*n[0],r[1]+s*n[1]]},Et=function(e,r){var a=Ns(e,r);return a=Of(a),a},Of=function(e){for(var r,a,n=e.length/2,i=1/0,s=1/0,o=-1/0,u=-1/0,l=0;l<n;l++)r=e[2*l],a=e[2*l+1],i=Math.min(i,r),o=Math.max(o,r),s=Math.min(s,a),u=Math.max(u,a);for(var f=2/(o-i),c=2/(u-s),v=0;v<n;v++)r=e[2*v]=e[2*v]*f,a=e[2*v+1]=e[2*v+1]*c,i=Math.min(i,r),o=Math.max(o,r),s=Math.min(s,a),u=Math.max(u,a);if(s<-1)for(var h=0;h<n;h++)a=e[2*h+1]=e[2*h+1]+(-1-s);return e},Ns=function(e,r){var a=1/e*2*Math.PI,n=e%2===0?Math.PI/2+a/2:Math.PI/2;n+=r;for(var i=new Array(e*2),s,o=0;o<e;o++)s=o*a+n,i[2*o]=Math.cos(s),i[2*o+1]=Math.sin(-s);return i},hr=function(e,r){return Math.min(e/4,r/4,8)},kf=function(e,r){return Math.min(e/10,r/10,8)},co=function(){return 8},ad=function(e,r,a){return[e-2*r+a,2*(r-e),e]},Bs=function(e,r){return{heightOffset:Math.min(15,.05*r),widthOffset:Math.min(100,.25*e),ctrlPtOffsetPct:.05}};function Ti(t,e){function r(c){for(var v=[],h=0;h<c.length;h++){var d=c[h],p=c[(h+1)%c.length],g={x:p.x-d.x,y:p.y-d.y},y={x:-g.y,y:g.x},b=Math.sqrt(y.x*y.x+y.y*y.y);v.push({x:y.x/b,y:y.y/b})}return v}function a(c,v){var h=1/0,d=-1/0,p=Lt(c),g;try{for(p.s();!(g=p.n()).done;){var y=g.value,b=y.x*v.x+y.y*v.y;h=Math.min(h,b),d=Math.max(d,b)}}catch(m){p.e(m)}finally{p.f()}return{min:h,max:d}}function n(c,v){return!(c.max<v.min||v.max<c.min)}var i=[].concat(Cn(r(t)),Cn(r(e))),s=Lt(i),o;try{for(s.s();!(o=s.n()).done;){var u=o.value,l=a(t,u),f=a(e,u);if(!n(l,f))return!1}}catch(c){s.e(c)}finally{s.f()}return!0}var nd=dt({dampingFactor:.8,precision:1e-6,iterations:200,weight:function(e){return 1}}),id={pageRank:function(e){for(var r=nd(e),a=r.dampingFactor,n=r.precision,i=r.iterations,s=r.weight,o=this._private.cy,u=this.byGroup(),l=u.nodes,f=u.edges,c=l.length,v=c*c,h=f.length,d=new Array(v),p=new Array(c),g=(1-a)/c,y=0;y<c;y++){for(var b=0;b<c;b++){var m=y*c+b;d[m]=0}p[y]=0}for(var E=0;E<h;E++){var T=f[E],S=T.data("source"),w=T.data("target");if(S!==w){var x=l.indexOfId(S),C=l.indexOfId(w),D=s(T),A=C*c+x;d[A]+=D,p[x]+=D}}for(var L=1/c+g,R=0;R<c;R++)if(p[R]===0)for(var P=0;P<c;P++){var M=P*c+R;d[M]=L}else for(var N=0;N<c;N++){var O=N*c+R;d[O]=d[O]/p[R]+g}for(var k=new Array(c),B=new Array(c),_,F=0;F<c;F++)k[F]=1;for(var z=0;z<i;z++){for(var Y=0;Y<c;Y++)B[Y]=0;for(var $=0;$<c;$++)for(var H=0;H<c;H++){var W=$*c+H;B[$]+=d[W]*k[H]}zh(B),_=k,k=B,B=_;for(var ee=0,ae=0;ae<c;ae++){var J=_[ae]-k[ae];ee+=J*J}if(ee<n)break}var G={rank:function(q){return q=o.collection(q)[0],k[l.indexOf(q)]}};return G}},ru=dt({root:null,weight:function(e){return 1},directed:!1,alpha:0}),Jr={degreeCentralityNormalized:function(e){e=ru(e);var r=this.cy(),a=this.nodes(),n=a.length;if(e.directed){for(var f={},c={},v=0,h=0,d=0;d<n;d++){var p=a[d],g=p.id();e.root=p;var y=this.degreeCentrality(e);v<y.indegree&&(v=y.indegree),h<y.outdegree&&(h=y.outdegree),f[g]=y.indegree,c[g]=y.outdegree}return{indegree:function(m){return v==0?0:(ge(m)&&(m=r.filter(m)),f[m.id()]/v)},outdegree:function(m){return h===0?0:(ge(m)&&(m=r.filter(m)),c[m.id()]/h)}}}else{for(var i={},s=0,o=0;o<n;o++){var u=a[o];e.root=u;var l=this.degreeCentrality(e);s<l.degree&&(s=l.degree),i[u.id()]=l.degree}return{degree:function(m){return s===0?0:(ge(m)&&(m=r.filter(m)),i[m.id()]/s)}}}},degreeCentrality:function(e){e=ru(e);var r=this.cy(),a=this,n=e,i=n.root,s=n.weight,o=n.directed,u=n.alpha;if(i=r.collection(i)[0],o){for(var h=i.connectedEdges(),d=h.filter(function(S){return S.target().same(i)&&a.has(S)}),p=h.filter(function(S){return S.source().same(i)&&a.has(S)}),g=d.length,y=p.length,b=0,m=0,E=0;E<d.length;E++)b+=s(d[E]);for(var T=0;T<p.length;T++)m+=s(p[T]);return{indegree:Math.pow(g,1-u)*Math.pow(b,u),outdegree:Math.pow(y,1-u)*Math.pow(m,u)}}else{for(var l=i.connectedEdges().intersection(a),f=l.length,c=0,v=0;v<l.length;v++)c+=s(l[v]);return{degree:Math.pow(f,1-u)*Math.pow(c,u)}}}};Jr.dc=Jr.degreeCentrality;Jr.dcn=Jr.degreeCentralityNormalised=Jr.degreeCentralityNormalized;var au=dt({harmonic:!0,weight:function(){return 1},directed:!1,root:null}),jr={closenessCentralityNormalized:function(e){for(var r=au(e),a=r.harmonic,n=r.weight,i=r.directed,s=this.cy(),o={},u=0,l=this.nodes(),f=this.floydWarshall({weight:n,directed:i}),c=0;c<l.length;c++){for(var v=0,h=l[c],d=0;d<l.length;d++)if(c!==d){var p=f.distance(h,l[d]);a?v+=1/p:v+=p}a||(v=1/v),u<v&&(u=v),o[h.id()]=v}return{closeness:function(y){return u==0?0:(ge(y)?y=s.filter(y)[0].id():y=y.id(),o[y]/u)}}},closenessCentrality:function(e){var r=au(e),a=r.root,n=r.weight,i=r.directed,s=r.harmonic;a=this.filter(a)[0];for(var o=this.dijkstra({root:a,weight:n,directed:i}),u=0,l=this.nodes(),f=0;f<l.length;f++){var c=l[f];if(!c.same(a)){var v=o.distanceTo(c);s?u+=1/v:u+=v}}return s?u:1/u}};jr.cc=jr.closenessCentrality;jr.ccn=jr.closenessCentralityNormalised=jr.closenessCentralityNormalized;var sd=dt({weight:null,directed:!1}),Fs={betweennessCentrality:function(e){for(var r=sd(e),a=r.directed,n=r.weight,i=n!=null,s=this.cy(),o=this.nodes(),u={},l={},f=0,c={set:function(m,E){l[m]=E,E>f&&(f=E)},get:function(m){return l[m]}},v=0;v<o.length;v++){var h=o[v],d=h.id();a?u[d]=h.outgoers().nodes():u[d]=h.openNeighborhood().nodes(),c.set(d,0)}for(var p=function(){for(var m=o[g].id(),E=[],T={},S={},w={},x=new Ua(function($,H){return w[$]-w[H]}),C=0;C<o.length;C++){var D=o[C].id();T[D]=[],S[D]=0,w[D]=1/0}for(S[m]=1,w[m]=0,x.push(m);!x.empty();){var A=x.pop();if(E.push(A),i)for(var L=0;L<u[A].length;L++){var R=u[A][L],P=s.getElementById(A),M=void 0;P.edgesTo(R).length>0?M=P.edgesTo(R)[0]:M=R.edgesTo(P)[0];var N=n(M);R=R.id(),w[R]>w[A]+N&&(w[R]=w[A]+N,x.nodes.indexOf(R)<0?x.push(R):x.updateItem(R),S[R]=0,T[R]=[]),w[R]==w[A]+N&&(S[R]=S[R]+S[A],T[R].push(A))}else for(var O=0;O<u[A].length;O++){var k=u[A][O].id();w[k]==1/0&&(x.push(k),w[k]=w[A]+1),w[k]==w[A]+1&&(S[k]=S[k]+S[A],T[k].push(A))}}for(var B={},_=0;_<o.length;_++)B[o[_].id()]=0;for(;E.length>0;){for(var F=E.pop(),z=0;z<T[F].length;z++){var Y=T[F][z];B[Y]=B[Y]+S[Y]/S[F]*(1+B[F])}F!=o[g].id()&&c.set(F,c.get(F)+B[F])}},g=0;g<o.length;g++)p();var y={betweenness:function(m){var E=s.collection(m).id();return c.get(E)},betweennessNormalized:function(m){if(f==0)return 0;var E=s.collection(m).id();return c.get(E)/f}};return y.betweennessNormalised=y.betweennessNormalized,y}};Fs.bc=Fs.betweennessCentrality;var od=dt({expandFactor:2,inflateFactor:2,multFactor:1,maxIterations:20,attributes:[function(t){return 1}]}),ud=function(e){return od(e)},ld=function(e,r){for(var a=0,n=0;n<r.length;n++)a+=r[n](e);return a},fd=function(e,r,a){for(var n=0;n<r;n++)e[n*r+n]=a},Nf=function(e,r){for(var a,n=0;n<r;n++){a=0;for(var i=0;i<r;i++)a+=e[i*r+n];for(var s=0;s<r;s++)e[s*r+n]=e[s*r+n]/a}},cd=function(e,r,a){for(var n=new Array(a*a),i=0;i<a;i++){for(var s=0;s<a;s++)n[i*a+s]=0;for(var o=0;o<a;o++)for(var u=0;u<a;u++)n[i*a+u]+=e[i*a+o]*r[o*a+u]}return n},vd=function(e,r,a){for(var n=e.slice(0),i=1;i<a;i++)e=cd(e,n,r);return e},hd=function(e,r,a){for(var n=new Array(r*r),i=0;i<r*r;i++)n[i]=Math.pow(e[i],a);return Nf(n,r),n},dd=function(e,r,a,n){for(var i=0;i<a;i++){var s=Math.round(e[i]*Math.pow(10,n))/Math.pow(10,n),o=Math.round(r[i]*Math.pow(10,n))/Math.pow(10,n);if(s!==o)return!1}return!0},gd=function(e,r,a,n){for(var i=[],s=0;s<r;s++){for(var o=[],u=0;u<r;u++)Math.round(e[s*r+u]*1e3)/1e3>0&&o.push(a[u]);o.length!==0&&i.push(n.collection(o))}return i},pd=function(e,r){for(var a=0;a<e.length;a++)if(!r[a]||e[a].id()!==r[a].id())return!1;return!0},yd=function(e){for(var r=0;r<e.length;r++)for(var a=0;a<e.length;a++)r!=a&&pd(e[r],e[a])&&e.splice(a,1);return e},nu=function(e){for(var r=this.nodes(),a=this.edges(),n=this.cy(),i=ud(e),s={},o=0;o<r.length;o++)s[r[o].id()]=o;for(var u=r.length,l=u*u,f=new Array(l),c,v=0;v<l;v++)f[v]=0;for(var h=0;h<a.length;h++){var d=a[h],p=s[d.source().id()],g=s[d.target().id()],y=ld(d,i.attributes);f[p*u+g]+=y,f[g*u+p]+=y}fd(f,u,i.multFactor),Nf(f,u);for(var b=!0,m=0;b&&m<i.maxIterations;)b=!1,c=vd(f,u,i.expandFactor),f=hd(c,u,i.inflateFactor),dd(f,c,l,4)||(b=!0),m++;var E=gd(f,u,r,n);return E=yd(E),E},md={markovClustering:nu,mcl:nu},bd=function(e){return e},Bf=function(e,r){return Math.abs(r-e)},iu=function(e,r,a){return e+Bf(r,a)},su=function(e,r,a){return e+Math.pow(a-r,2)},wd=function(e){return Math.sqrt(e)},Ed=function(e,r,a){return Math.max(e,Bf(r,a))},ha=function(e,r,a,n,i){for(var s=arguments.length>5&&arguments[5]!==void 0?arguments[5]:bd,o=n,u,l,f=0;f<e;f++)u=r(f),l=a(f),o=i(o,u,l);return s(o)},ra={euclidean:function(e,r,a){return e>=2?ha(e,r,a,0,su,wd):ha(e,r,a,0,iu)},squaredEuclidean:function(e,r,a){return ha(e,r,a,0,su)},manhattan:function(e,r,a){return ha(e,r,a,0,iu)},max:function(e,r,a){return ha(e,r,a,-1/0,Ed)}};ra["squared-euclidean"]=ra.squaredEuclidean;ra.squaredeuclidean=ra.squaredEuclidean;function Un(t,e,r,a,n,i){var s;return Xe(t)?s=t:s=ra[t]||ra.euclidean,e===0&&Xe(t)?s(n,i):s(e,r,a,n,i)}var xd=dt({k:2,m:2,sensitivityThreshold:1e-4,distance:"euclidean",maxIterations:10,attributes:[],testMode:!1,testCentroids:null}),vo=function(e){return xd(e)},Pn=function(e,r,a,n,i){var s=i!=="kMedoids",o=s?function(c){return a[c]}:function(c){return n[c](a)},u=function(v){return n[v](r)},l=a,f=r;return Un(e,n.length,o,u,l,f)},Ci=function(e,r,a){for(var n=a.length,i=new Array(n),s=new Array(n),o=new Array(r),u=null,l=0;l<n;l++)i[l]=e.min(a[l]).value,s[l]=e.max(a[l]).value;for(var f=0;f<r;f++){u=[];for(var c=0;c<n;c++)u[c]=Math.random()*(s[c]-i[c])+i[c];o[f]=u}return o},Ff=function(e,r,a,n,i){for(var s=1/0,o=0,u=0;u<r.length;u++){var l=Pn(a,e,r[u],n,i);l<s&&(s=l,o=u)}return o},_f=function(e,r,a){for(var n=[],i=null,s=0;s<r.length;s++)i=r[s],a[i.id()]===e&&n.push(i);return n},Td=function(e,r,a){return Math.abs(r-e)<=a},Cd=function(e,r,a){for(var n=0;n<e.length;n++)for(var i=0;i<e[n].length;i++){var s=Math.abs(e[n][i]-r[n][i]);if(s>a)return!1}return!0},Dd=function(e,r,a){for(var n=0;n<a;n++)if(e===r[n])return!0;return!1},ou=function(e,r){var a=new Array(r);if(e.length<50)for(var n=0;n<r;n++){for(var i=e[Math.floor(Math.random()*e.length)];Dd(i,a,n);)i=e[Math.floor(Math.random()*e.length)];a[n]=i}else for(var s=0;s<r;s++)a[s]=e[Math.floor(Math.random()*e.length)];return a},uu=function(e,r,a){for(var n=0,i=0;i<r.length;i++)n+=Pn("manhattan",r[i],e,a,"kMedoids");return n},Sd=function(e){var r=this.cy(),a=this.nodes(),n=null,i=vo(e),s=new Array(i.k),o={},u;i.testMode?typeof i.testCentroids=="number"?(i.testCentroids,u=Ci(a,i.k,i.attributes)):it(i.testCentroids)==="object"?u=i.testCentroids:u=Ci(a,i.k,i.attributes):u=Ci(a,i.k,i.attributes);for(var l=!0,f=0;l&&f<i.maxIterations;){for(var c=0;c<a.length;c++)n=a[c],o[n.id()]=Ff(n,u,i.distance,i.attributes,"kMeans");l=!1;for(var v=0;v<i.k;v++){var h=_f(v,a,o);if(h.length!==0){for(var d=i.attributes.length,p=u[v],g=new Array(d),y=new Array(d),b=0;b<d;b++){y[b]=0;for(var m=0;m<h.length;m++)n=h[m],y[b]+=i.attributes[b](n);g[b]=y[b]/h.length,Td(g[b],p[b],i.sensitivityThreshold)||(l=!0)}u[v]=g,s[v]=r.collection(h)}}f++}return s},Ad=function(e){var r=this.cy(),a=this.nodes(),n=null,i=vo(e),s=new Array(i.k),o,u={},l,f=new Array(i.k);i.testMode?typeof i.testCentroids=="number"||(it(i.testCentroids)==="object"?o=i.testCentroids:o=ou(a,i.k)):o=ou(a,i.k);for(var c=!0,v=0;c&&v<i.maxIterations;){for(var h=0;h<a.length;h++)n=a[h],u[n.id()]=Ff(n,o,i.distance,i.attributes,"kMedoids");c=!1;for(var d=0;d<o.length;d++){var p=_f(d,a,u);if(p.length!==0){f[d]=uu(o[d],p,i.attributes);for(var g=0;g<p.length;g++)l=uu(p[g],p,i.attributes),l<f[d]&&(f[d]=l,o[d]=p[g],c=!0);s[d]=r.collection(p)}}v++}return s},Ld=function(e,r,a,n,i){for(var s,o,u=0;u<r.length;u++)for(var l=0;l<e.length;l++)n[u][l]=Math.pow(a[u][l],i.m);for(var f=0;f<e.length;f++)for(var c=0;c<i.attributes.length;c++){s=0,o=0;for(var v=0;v<r.length;v++)s+=n[v][f]*i.attributes[c](r[v]),o+=n[v][f];e[f][c]=s/o}},Rd=function(e,r,a,n,i){for(var s=0;s<e.length;s++)r[s]=e[s].slice();for(var o,u,l,f=2/(i.m-1),c=0;c<a.length;c++)for(var v=0;v<n.length;v++){o=0;for(var h=0;h<a.length;h++)u=Pn(i.distance,n[v],a[c],i.attributes,"cmeans"),l=Pn(i.distance,n[v],a[h],i.attributes,"cmeans"),o+=Math.pow(u/l,f);e[v][c]=1/o}},Pd=function(e,r,a,n){for(var i=new Array(a.k),s=0;s<i.length;s++)i[s]=[];for(var o,u,l=0;l<r.length;l++){o=-1/0,u=-1;for(var f=0;f<r[0].length;f++)r[l][f]>o&&(o=r[l][f],u=f);i[u].push(e[l])}for(var c=0;c<i.length;c++)i[c]=n.collection(i[c]);return i},lu=function(e){var r=this.cy(),a=this.nodes(),n=vo(e),i,s,o,u,l;u=new Array(a.length);for(var f=0;f<a.length;f++)u[f]=new Array(n.k);o=new Array(a.length);for(var c=0;c<a.length;c++)o[c]=new Array(n.k);for(var v=0;v<a.length;v++){for(var h=0,d=0;d<n.k;d++)o[v][d]=Math.random(),h+=o[v][d];for(var p=0;p<n.k;p++)o[v][p]=o[v][p]/h}s=new Array(n.k);for(var g=0;g<n.k;g++)s[g]=new Array(n.attributes.length);l=new Array(a.length);for(var y=0;y<a.length;y++)l[y]=new Array(n.k);for(var b=!0,m=0;b&&m<n.maxIterations;)b=!1,Ld(s,a,o,l,n),Rd(o,u,s,a,n),Cd(o,u,n.sensitivityThreshold)||(b=!0),m++;return i=Pd(a,o,n,r),{clusters:i,degreeOfMembership:o}},Id={kMeans:Sd,kMedoids:Ad,fuzzyCMeans:lu,fcm:lu},Md=dt({distance:"euclidean",linkage:"min",mode:"threshold",threshold:1/0,addDendrogram:!1,dendrogramDepth:0,attributes:[]}),Od={single:"min",complete:"max"},kd=function(e){var r=Md(e),a=Od[r.linkage];return a!=null&&(r.linkage=a),r},fu=function(e,r,a,n,i){for(var s=0,o=1/0,u,l=i.attributes,f=function(C,D){return Un(i.distance,l.length,function(A){return l[A](C)},function(A){return l[A](D)},C,D)},c=0;c<e.length;c++){var v=e[c].key,h=a[v][n[v]];h<o&&(s=v,o=h)}if(i.mode==="threshold"&&o>=i.threshold||i.mode==="dendrogram"&&e.length===1)return!1;var d=r[s],p=r[n[s]],g;i.mode==="dendrogram"?g={left:d,right:p,key:d.key}:g={value:d.value.concat(p.value),key:d.key},e[d.index]=g,e.splice(p.index,1),r[d.key]=g;for(var y=0;y<e.length;y++){var b=e[y];d.key===b.key?u=1/0:i.linkage==="min"?(u=a[d.key][b.key],a[d.key][b.key]>a[p.key][b.key]&&(u=a[p.key][b.key])):i.linkage==="max"?(u=a[d.key][b.key],a[d.key][b.key]<a[p.key][b.key]&&(u=a[p.key][b.key])):i.linkage==="mean"?u=(a[d.key][b.key]*d.size+a[p.key][b.key]*p.size)/(d.size+p.size):i.mode==="dendrogram"?u=f(b.value,d.value):u=f(b.value[0],d.value[0]),a[d.key][b.key]=a[b.key][d.key]=u}for(var m=0;m<e.length;m++){var E=e[m].key;if(n[E]===d.key||n[E]===p.key){for(var T=E,S=0;S<e.length;S++){var w=e[S].key;a[E][w]<a[E][T]&&(T=w)}n[E]=T}e[m].index=m}return d.key=p.key=d.index=p.index=null,!0},Kr=function(e,r,a){e&&(e.value?r.push(e.value):(e.left&&Kr(e.left,r),e.right&&Kr(e.right,r)))},_s=function(e,r){if(!e)return"";if(e.left&&e.right){var a=_s(e.left,r),n=_s(e.right,r),i=r.add({group:"nodes",data:{id:a+","+n}});return r.add({group:"edges",data:{source:a,target:i.id()}}),r.add({group:"edges",data:{source:n,target:i.id()}}),i.id()}else if(e.value)return e.value.id()},zs=function(e,r,a){if(!e)return[];var n=[],i=[],s=[];return r===0?(e.left&&Kr(e.left,n),e.right&&Kr(e.right,i),s=n.concat(i),[a.collection(s)]):r===1?e.value?[a.collection(e.value)]:(e.left&&Kr(e.left,n),e.right&&Kr(e.right,i),[a.collection(n),a.collection(i)]):e.value?[a.collection(e.value)]:(e.left&&(n=zs(e.left,r-1,a)),e.right&&(i=zs(e.right,r-1,a)),n.concat(i))},cu=function(e){for(var r=this.cy(),a=this.nodes(),n=kd(e),i=n.attributes,s=function(m,E){return Un(n.distance,i.length,function(T){return i[T](m)},function(T){return i[T](E)},m,E)},o=[],u=[],l=[],f=[],c=0;c<a.length;c++){var v={value:n.mode==="dendrogram"?a[c]:[a[c]],key:c,index:c};o[c]=v,f[c]=v,u[c]=[],l[c]=0}for(var h=0;h<o.length;h++)for(var d=0;d<=h;d++){var p=void 0;n.mode==="dendrogram"?p=h===d?1/0:s(o[h].value,o[d].value):p=h===d?1/0:s(o[h].value[0],o[d].value[0]),u[h][d]=p,u[d][h]=p,p<u[h][l[h]]&&(l[h]=d)}for(var g=fu(o,f,u,l,n);g;)g=fu(o,f,u,l,n);var y;return n.mode==="dendrogram"?(y=zs(o[0],n.dendrogramDepth,r),n.addDendrogram&&_s(o[0],r)):(y=new Array(o.length),o.forEach(function(b,m){b.key=b.index=null,y[m]=r.collection(b.value)})),y},Nd={hierarchicalClustering:cu,hca:cu},Bd=dt({distance:"euclidean",preference:"median",damping:.8,maxIterations:1e3,minIterations:100,attributes:[]}),Fd=function(e){var r=e.damping,a=e.preference;.5<=r&&r<1||He("Damping must range on [0.5, 1). Got: ".concat(r));var n=["median","mean","min","max"];return n.some(function(i){return i===a})||ne(a)||He("Preference must be one of [".concat(n.map(function(i){return"'".concat(i,"'")}).join(", "),"] or a number. Got: ").concat(a)),Bd(e)},_d=function(e,r,a,n){var i=function(o,u){return n[u](o)};return-Un(e,n.length,function(s){return i(r,s)},function(s){return i(a,s)},r,a)},zd=function(e,r){var a=null;return r==="median"?a=Fh(e):r==="mean"?a=Bh(e):r==="min"?a=kh(e):r==="max"?a=Nh(e):a=r,a},Gd=function(e,r,a){for(var n=[],i=0;i<e;i++)r[i*e+i]+a[i*e+i]>0&&n.push(i);return n},vu=function(e,r,a){for(var n=[],i=0;i<e;i++){for(var s=-1,o=-1/0,u=0;u<a.length;u++){var l=a[u];r[i*e+l]>o&&(s=l,o=r[i*e+l])}s>0&&n.push(s)}for(var f=0;f<a.length;f++)n[a[f]]=a[f];return n},Vd=function(e,r,a){for(var n=vu(e,r,a),i=0;i<a.length;i++){for(var s=[],o=0;o<n.length;o++)n[o]===a[i]&&s.push(o);for(var u=-1,l=-1/0,f=0;f<s.length;f++){for(var c=0,v=0;v<s.length;v++)c+=r[s[v]*e+s[f]];c>l&&(u=f,l=c)}a[i]=s[u]}return n=vu(e,r,a),n},hu=function(e){for(var r=this.cy(),a=this.nodes(),n=Fd(e),i={},s=0;s<a.length;s++)i[a[s].id()]=s;var o,u,l,f,c,v;o=a.length,u=o*o,l=new Array(u);for(var h=0;h<u;h++)l[h]=-1/0;for(var d=0;d<o;d++)for(var p=0;p<o;p++)d!==p&&(l[d*o+p]=_d(n.distance,a[d],a[p],n.attributes));f=zd(l,n.preference);for(var g=0;g<o;g++)l[g*o+g]=f;c=new Array(u);for(var y=0;y<u;y++)c[y]=0;v=new Array(u);for(var b=0;b<u;b++)v[b]=0;for(var m=new Array(o),E=new Array(o),T=new Array(o),S=0;S<o;S++)m[S]=0,E[S]=0,T[S]=0;for(var w=new Array(o*n.minIterations),x=0;x<w.length;x++)w[x]=0;var C;for(C=0;C<n.maxIterations;C++){for(var D=0;D<o;D++){for(var A=-1/0,L=-1/0,R=-1,P=0,M=0;M<o;M++)m[M]=c[D*o+M],P=v[D*o+M]+l[D*o+M],P>=A?(L=A,A=P,R=M):P>L&&(L=P);for(var N=0;N<o;N++)c[D*o+N]=(1-n.damping)*(l[D*o+N]-A)+n.damping*m[N];c[D*o+R]=(1-n.damping)*(l[D*o+R]-L)+n.damping*m[R]}for(var O=0;O<o;O++){for(var k=0,B=0;B<o;B++)m[B]=v[B*o+O],E[B]=Math.max(0,c[B*o+O]),k+=E[B];k-=E[O],E[O]=c[O*o+O],k+=E[O];for(var _=0;_<o;_++)v[_*o+O]=(1-n.damping)*Math.min(0,k-E[_])+n.damping*m[_];v[O*o+O]=(1-n.damping)*(k-E[O])+n.damping*m[O]}for(var F=0,z=0;z<o;z++){var Y=v[z*o+z]+c[z*o+z]>0?1:0;w[C%n.minIterations*o+z]=Y,F+=Y}if(F>0&&(C>=n.minIterations-1||C==n.maxIterations-1)){for(var $=0,H=0;H<o;H++){T[H]=0;for(var W=0;W<n.minIterations;W++)T[H]+=w[W*o+H];(T[H]===0||T[H]===n.minIterations)&&$++}if($===o)break}}for(var ee=Gd(o,c,v),ae=Vd(o,l,ee),J={},G=0;G<ee.length;G++)J[ee[G]]=[];for(var V=0;V<a.length;V++){var q=i[a[V].id()],Z=ae[q];Z!=null&&J[Z].push(a[V])}for(var re=new Array(ee.length),ve=0;ve<ee.length;ve++)re[ve]=r.collection(J[ee[ve]]);return re},Ud={affinityPropagation:hu,ap:hu},qd=dt({root:void 0,directed:!1}),$d={hierholzer:function(e){if(!Oe(e)){var r=arguments;e={root:r[0],directed:r[1]}}var a=qd(e),n=a.root,i=a.directed,s=this,o=!1,u,l,f;n&&(f=ge(n)?this.filter(n)[0].id():n[0].id());var c={},v={};i?s.forEach(function(b){var m=b.id();if(b.isNode()){var E=b.indegree(!0),T=b.outdegree(!0),S=E-T,w=T-E;S==1?u?o=!0:u=m:w==1?l?o=!0:l=m:(w>1||S>1)&&(o=!0),c[m]=[],b.outgoers().forEach(function(x){x.isEdge()&&c[m].push(x.id())})}else v[m]=[void 0,b.target().id()]}):s.forEach(function(b){var m=b.id();if(b.isNode()){var E=b.degree(!0);E%2&&(u?l?o=!0:l=m:u=m),c[m]=[],b.connectedEdges().forEach(function(T){return c[m].push(T.id())})}else v[m]=[b.source().id(),b.target().id()]});var h={found:!1,trail:void 0};if(o)return h;if(l&&u)if(i){if(f&&l!=f)return h;f=l}else{if(f&&l!=f&&u!=f)return h;f||(f=l)}else f||(f=s[0].id());var d=function(m){for(var E=m,T=[m],S,w,x;c[E].length;)S=c[E].shift(),w=v[S][0],x=v[S][1],E!=x?(c[x]=c[x].filter(function(C){return C!=S}),E=x):!i&&E!=w&&(c[w]=c[w].filter(function(C){return C!=S}),E=w),T.unshift(S),T.unshift(E);return T},p=[],g=[];for(g=d(f);g.length!=1;)c[g[0]].length==0?(p.unshift(s.getElementById(g.shift())),p.unshift(s.getElementById(g.shift()))):g=d(g.shift()).concat(g);p.unshift(s.getElementById(g.shift()));for(var y in c)if(c[y].length)return h;return h.found=!0,h.trail=this.spawn(p,!0),h}},en=function(){var e=this,r={},a=0,n=0,i=[],s=[],o={},u=function(v,h){for(var d=s.length-1,p=[],g=e.spawn();s[d].x!=v||s[d].y!=h;)p.push(s.pop().edge),d--;p.push(s.pop().edge),p.forEach(function(y){var b=y.connectedNodes().intersection(e);g.merge(y),b.forEach(function(m){var E=m.id(),T=m.connectedEdges().intersection(e);g.merge(m),r[E].cutVertex?g.merge(T.filter(function(S){return S.isLoop()})):g.merge(T)})}),i.push(g)},l=function(v,h,d){v===d&&(n+=1),r[h]={id:a,low:a++,cutVertex:!1};var p=e.getElementById(h).connectedEdges().intersection(e);if(p.size()===0)i.push(e.spawn(e.getElementById(h)));else{var g,y,b,m;p.forEach(function(E){g=E.source().id(),y=E.target().id(),b=g===h?y:g,b!==d&&(m=E.id(),o[m]||(o[m]=!0,s.push({x:h,y:b,edge:E})),b in r?r[h].low=Math.min(r[h].low,r[b].id):(l(v,b,h),r[h].low=Math.min(r[h].low,r[b].low),r[h].id<=r[b].low&&(r[h].cutVertex=!0,u(h,b))))})}};e.forEach(function(c){if(c.isNode()){var v=c.id();v in r||(n=0,l(v,v),r[v].cutVertex=n>1)}});var f=Object.keys(r).filter(function(c){return r[c].cutVertex}).map(function(c){return e.getElementById(c)});return{cut:e.spawn(f),components:i}},Yd={hopcroftTarjanBiconnected:en,htbc:en,htb:en,hopcroftTarjanBiconnectedComponents:en},tn=function(){var e=this,r={},a=0,n=[],i=[],s=e.spawn(e),o=function(l){i.push(l),r[l]={index:a,low:a++,explored:!1};var f=e.getElementById(l).connectedEdges().intersection(e);if(f.forEach(function(p){var g=p.target().id();g!==l&&(g in r||o(g),r[g].explored||(r[l].low=Math.min(r[l].low,r[g].low)))}),r[l].index===r[l].low){for(var c=e.spawn();;){var v=i.pop();if(c.merge(e.getElementById(v)),r[v].low=r[l].index,r[v].explored=!0,v===l)break}var h=c.edgesWith(c),d=c.merge(h);n.push(d),s=s.difference(d)}};return e.forEach(function(u){if(u.isNode()){var l=u.id();l in r||o(l)}}),{cut:s,components:n}},Hd={tarjanStronglyConnected:tn,tsc:tn,tscc:tn,tarjanStronglyConnectedComponents:tn},zf={};[La,xh,Th,Dh,Ah,Rh,Mh,id,Jr,jr,Fs,md,Id,Nd,Ud,$d,Yd,Hd].forEach(function(t){be(zf,t)});/*!
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const a=require("./layers.
|
|
1
|
+
"use strict";const a=require("./layers.CycK0cvs.js"),c=require("./layers.Ct9Zf_S7.js"),o=(s,t)=>{const e=s.append("rect");if(e.attr("x",t.x),e.attr("y",t.y),e.attr("fill",t.fill),e.attr("stroke",t.stroke),e.attr("width",t.width),e.attr("height",t.height),t.name&&e.attr("name",t.name),t.rx!==void 0&&e.attr("rx",t.rx),t.ry!==void 0&&e.attr("ry",t.ry),t.attrs!==void 0)for(const r in t.attrs)e.attr(r,t.attrs[r]);return t.class!==void 0&&e.attr("class",t.class),e},l=(s,t)=>{const e={x:t.startx,y:t.starty,width:t.stopx-t.startx,height:t.stopy-t.starty,fill:t.fill,stroke:t.stroke,class:"rect"};o(s,e).lower()},d=(s,t)=>{const e=t.text.replace(c.lineBreakRegex," "),r=s.append("text");r.attr("x",t.x),r.attr("y",t.y),r.attr("class","legend"),r.style("text-anchor",t.anchor),t.class!==void 0&&r.attr("class",t.class);const n=r.append("tspan");return n.attr("x",t.x+t.textMargin*2),n.text(e),r},x=(s,t,e,r)=>{const n=s.append("image");n.attr("x",t),n.attr("y",e);const i=a.distExports.sanitizeUrl(r);n.attr("xlink:href",i)},g=(s,t,e,r)=>{const n=s.append("use");n.attr("x",t),n.attr("y",e);const i=a.distExports.sanitizeUrl(r);n.attr("xlink:href",`#${i}`)},h=()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),y=()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0});exports.drawBackgroundRect=l;exports.drawEmbeddedImage=g;exports.drawImage=x;exports.drawRect=o;exports.drawText=d;exports.getNoteRect=h;exports.getTextObj=y;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "./layers.
|
|
1
|
+
import "./layers.Cy-qxBnZ.js";
|
|
2
2
|
var u = { paste: "粘贴", pasteAsPlaintext: "粘贴为纯文本", pasteCharts: "粘贴图表", selectAll: "全部选中", multiSelect: "添加元素到选区", moveCanvas: "移动画布", cut: "剪切", copy: "拷贝", copyAsPng: "复制为 PNG 到剪贴板", copyAsSvg: "复制为 SVG 到剪贴板", copyText: "复制文本到剪贴板", copySource: "复制源码到剪贴板", convertToCode: "转换成代码", bringForward: "上移一层", sendToBack: "置于底层", bringToFront: "置于顶层", sendBackward: "下移一层", delete: "删除", copyStyles: "拷贝样式", pasteStyles: "粘贴样式", stroke: "描边", background: "背景", fill: "填充", strokeWidth: "描边宽度", strokeStyle: "边框样式", strokeStyle_solid: "实线", strokeStyle_dashed: "虚线", strokeStyle_dotted: "点虚线", sloppiness: "线条风格", opacity: "透明度", textAlign: "文本对齐", edges: "边角", sharp: "尖锐", round: "圆润", arrowheads: "端点", arrowhead_none: "无", arrowhead_arrow: "箭头", arrowhead_bar: "条状", arrowhead_circle: "圆点", arrowhead_circle_outline: "圆点(空心)", arrowhead_triangle: "三角箭头", arrowhead_triangle_outline: "三角箭头(空心)", arrowhead_diamond: "菱形", arrowhead_diamond_outline: "菱形(空心)", fontSize: "字体大小", fontFamily: "字体", addWatermark: "添加 “使用 Excalidraw 创建” 水印", handDrawn: "手写", normal: "普通", code: "代码", small: "小", medium: "中", large: "大", veryLarge: "加大", solid: "实心", hachure: "线条", zigzag: "之字形折线", crossHatch: "交叉线条", thin: "细", bold: "粗", left: "左对齐", center: "居中", right: "右对齐", extraBold: "特粗", architect: "朴素", artist: "艺术", cartoonist: "漫画家", fileTitle: "文件名", colorPicker: "取色器", canvasColors: "画布上的", canvasBackground: "画布背景", drawingCanvas: "绘制 Canvas", layers: "图层", actions: "操作", language: "语言", liveCollaboration: "实时协作...", duplicateSelection: "复制", untitled: "无标题", name: "名字", yourName: "您的姓名", madeWithExcalidraw: "使用 Excalidraw 创建", group: "编组", ungroup: "解除编组", collaborators: "协作者", showGrid: "显示网格", addToLibrary: "添加到素材库中", removeFromLibrary: "从素材库中移除", libraryLoadingMessage: "正在加载素材库…", libraries: "浏览素材库", loadingScene: "正在加载绘图…", align: "对齐", alignTop: "顶部对齐", alignBottom: "底端对齐", alignLeft: "左对齐", alignRight: "右对齐", centerVertically: "垂直居中", centerHorizontally: "水平居中", distributeHorizontally: "水平等距分布", distributeVertically: "垂直等距分布", flipHorizontal: "水平翻转", flipVertical: "垂直翻转", viewMode: "查看模式", share: "分享", showStroke: "显示描边颜色选择器", showBackground: "显示背景颜色选择器", toggleTheme: "切换主题", personalLib: "个人素材库", excalidrawLib: "Excalidraw 素材库", decreaseFontSize: "缩小字体大小", increaseFontSize: "放大字体大小", unbindText: "取消文本绑定", bindText: "将文本绑定到容器", createContainerFromText: "将文本包围在容器中", link: { edit: "编辑链接", editEmbed: "编辑链接与嵌入", create: "新建链接", createEmbed: "创建链接与嵌入", label: "链接", labelEmbed: "链接与嵌入", empty: "未设定链接" }, lineEditor: { edit: "编辑线条", exit: "退出线条编辑" }, elementLock: { lock: "锁定", unlock: "解除锁定", lockAll: "全部锁定", unlockAll: "全部解锁" }, statusPublished: "已发布", sidebarLock: "侧边栏常驻", selectAllElementsInFrame: "选择画框中的所有元素", removeAllElementsFromFrame: "分离出画框中的所有元素", eyeDropper: "从画布上取色", textToDiagram: "文字至图表", prompt: "Prompt" }, F = { noItems: "尚未添加任何项目……", hint_emptyLibrary: "选中画布上的项目添加到此处,或从下方的公共素材库中导入。", hint_emptyPrivateLibrary: "选中画布上的项目添加到此处。" }, E = { clearReset: "重置画布", exportJSON: "导出为文件", exportImage: "导出图片...", export: "保存到...", copyToClipboard: "复制到剪贴板", save: "保存至当前文件", saveAs: "保存为", load: "打开", getShareableLink: "获取共享链接", close: "关闭", selectLanguage: "选择语言", scrollBackToContent: "滚动回到内容", zoomIn: "放大", zoomOut: "缩小", resetZoom: "重置缩放", menu: "菜单", done: "完成", edit: "编辑", undo: "撤销", redo: "重做", resetLibrary: "重置素材库", createNewRoom: "新建会议室", fullScreen: "全屏", darkMode: "深色模式", lightMode: "浅色模式", zenMode: "禅模式", objectsSnapMode: "吸附至对象", exitZenMode: "退出禅模式", cancel: "取消", clear: "清除", remove: "删除", embed: "切换嵌入", publishLibrary: "发布", submit: "提交", confirm: "确定", embeddableInteractionButton: "点击以开始交互" }, e = { clearReset: "这将会清除整个画布。您是否要继续?", couldNotCreateShareableLink: "无法创建共享链接", couldNotCreateShareableLinkTooBig: "无法创建可共享链接:画布过大", couldNotLoadInvalidFile: "无法加载无效的文件", importBackendFailed: "从后端导入失败。", cannotExportEmptyCanvas: "无法导出空白画布。", couldNotCopyToClipboard: "无法复制到剪贴板。", decryptFailed: "无法解密数据。", uploadedSecurly: "上传已被端到端加密保护,这意味着 Excalidraw 的服务器和第三方都无法读取内容。", loadSceneOverridePrompt: "加载外部绘图将取代您现有的内容。您想要继续吗?", collabStopOverridePrompt: `停止会话将覆盖您先前本地存储的绘图。 您确定吗?
|
|
3
3
|
|
|
4
4
|
(如果您想保持本地绘图,只需关闭浏览器选项卡。)`, errorAddingToLibrary: "无法将项目添加到素材库中", errorRemovingFromLibrary: "无法从素材库中移除项目", confirmAddLibrary: "这将添加 {{numShapes}} 个形状到您的素材库中。您确定吗?", imageDoesNotContainScene: "此图像似乎不包含任何画布数据。您是否在导出时启用了画布嵌入功能?", cannotRestoreFromImage: "无法从此图像文件恢复画布", invalidSceneUrl: "无法从提供的 URL 导入场景。它或者格式不正确,或者不包含有效的 Excalidraw JSON 数据。", resetLibrary: "这将会清除你的素材库。你确定要这么做吗?", removeItemsFromsLibrary: "确定要从素材库中删除 {{count}} 个项目吗?", invalidEncryptionKey: "密钥必须包含22个字符。实时协作已被禁用。", collabOfflineWarning: `无网络连接。
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("./layers.
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("./layers.Ct9Zf_S7.js"),Le=require("lodash-es/clone.js"),Y=require("./layers.JOfgipnP.js"),_e=require("./layers.BLd2spTm.js");require("./layers.CycK0cvs.js");require("lodash-es/memoize.js");require("lodash-es/merge.js");require("lodash-es/isEmpty.js");const me=require("./layers.BcCP-58E.js"),ye=require("./layers.B19hGmey.js"),Ee=require("./layers.BIeVwYKL.js");var ae,le,ee=(function(){var e=function(D,o,s,i){for(s=s||{},i=D.length;i--;s[D[i]]=o);return s},a=[1,7],d=[1,13],c=[1,14],n=[1,15],g=[1,19],l=[1,16],b=[1,17],x=[1,18],p=[8,30],S=[8,21,28,29,30,31,32,40,44,47],y=[1,23],O=[1,24],v=[8,15,16,21,28,29,30,31,32,40,44,47],N=[8,15,16,21,27,28,29,30,31,32,40,44,47],E=[1,49],L={trace:function(){},yy:{},symbols_:{error:2,spaceLines:3,SPACELINE:4,NL:5,separator:6,SPACE:7,EOF:8,start:9,BLOCK_DIAGRAM_KEY:10,document:11,stop:12,statement:13,link:14,LINK:15,START_LINK:16,LINK_LABEL:17,STR:18,nodeStatement:19,columnsStatement:20,SPACE_BLOCK:21,blockStatement:22,classDefStatement:23,cssClassStatement:24,styleStatement:25,node:26,SIZE:27,COLUMNS:28,"id-block":29,end:30,block:31,NODE_ID:32,nodeShapeNLabel:33,dirList:34,DIR:35,NODE_DSTART:36,NODE_DEND:37,BLOCK_ARROW_START:38,BLOCK_ARROW_END:39,classDef:40,CLASSDEF_ID:41,CLASSDEF_STYLEOPTS:42,DEFAULT:43,class:44,CLASSENTITY_IDS:45,STYLECLASS:46,style:47,STYLE_ENTITY_IDS:48,STYLE_DEFINITION_DATA:49,$accept:0,$end:1},terminals_:{2:"error",4:"SPACELINE",5:"NL",7:"SPACE",8:"EOF",10:"BLOCK_DIAGRAM_KEY",15:"LINK",16:"START_LINK",17:"LINK_LABEL",18:"STR",21:"SPACE_BLOCK",27:"SIZE",28:"COLUMNS",29:"id-block",30:"end",31:"block",32:"NODE_ID",35:"DIR",36:"NODE_DSTART",37:"NODE_DEND",38:"BLOCK_ARROW_START",39:"BLOCK_ARROW_END",40:"classDef",41:"CLASSDEF_ID",42:"CLASSDEF_STYLEOPTS",43:"DEFAULT",44:"class",45:"CLASSENTITY_IDS",46:"STYLECLASS",47:"style",48:"STYLE_ENTITY_IDS",49:"STYLE_DEFINITION_DATA"},productions_:[0,[3,1],[3,2],[3,2],[6,1],[6,1],[6,1],[9,3],[12,1],[12,1],[12,2],[12,2],[11,1],[11,2],[14,1],[14,4],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[19,3],[19,2],[19,1],[20,1],[22,4],[22,3],[26,1],[26,2],[34,1],[34,2],[33,3],[33,4],[23,3],[23,3],[24,3],[25,3]],performAction:function(o,s,i,u,h,t,_){var r=t.length-1;switch(h){case 4:u.getLogger().debug("Rule: separator (NL) ");break;case 5:u.getLogger().debug("Rule: separator (Space) ");break;case 6:u.getLogger().debug("Rule: separator (EOF) ");break;case 7:u.getLogger().debug("Rule: hierarchy: ",t[r-1]),u.setHierarchy(t[r-1]);break;case 8:u.getLogger().debug("Stop NL ");break;case 9:u.getLogger().debug("Stop EOF ");break;case 10:u.getLogger().debug("Stop NL2 ");break;case 11:u.getLogger().debug("Stop EOF2 ");break;case 12:u.getLogger().debug("Rule: statement: ",t[r]),typeof t[r].length=="number"?this.$=t[r]:this.$=[t[r]];break;case 13:u.getLogger().debug("Rule: statement #2: ",t[r-1]),this.$=[t[r-1]].concat(t[r]);break;case 14:u.getLogger().debug("Rule: link: ",t[r],o),this.$={edgeTypeStr:t[r],label:""};break;case 15:u.getLogger().debug("Rule: LABEL link: ",t[r-3],t[r-1],t[r]),this.$={edgeTypeStr:t[r],label:t[r-1]};break;case 18:const R=parseInt(t[r]),W=u.generateId();this.$={id:W,type:"space",label:"",width:R,children:[]};break;case 23:u.getLogger().debug("Rule: (nodeStatement link node) ",t[r-2],t[r-1],t[r]," typestr: ",t[r-1].edgeTypeStr);const F=u.edgeStrToEdgeData(t[r-1].edgeTypeStr);this.$=[{id:t[r-2].id,label:t[r-2].label,type:t[r-2].type,directions:t[r-2].directions},{id:t[r-2].id+"-"+t[r].id,start:t[r-2].id,end:t[r].id,label:t[r-1].label,type:"edge",directions:t[r].directions,arrowTypeEnd:F,arrowTypeStart:"arrow_open"},{id:t[r].id,label:t[r].label,type:u.typeStr2Type(t[r].typeStr),directions:t[r].directions}];break;case 24:u.getLogger().debug("Rule: nodeStatement (abc88 node size) ",t[r-1],t[r]),this.$={id:t[r-1].id,label:t[r-1].label,type:u.typeStr2Type(t[r-1].typeStr),directions:t[r-1].directions,widthInColumns:parseInt(t[r],10)};break;case 25:u.getLogger().debug("Rule: nodeStatement (node) ",t[r]),this.$={id:t[r].id,label:t[r].label,type:u.typeStr2Type(t[r].typeStr),directions:t[r].directions,widthInColumns:1};break;case 26:u.getLogger().debug("APA123",this?this:"na"),u.getLogger().debug("COLUMNS: ",t[r]),this.$={type:"column-setting",columns:t[r]==="auto"?-1:parseInt(t[r])};break;case 27:u.getLogger().debug("Rule: id-block statement : ",t[r-2],t[r-1]),u.generateId(),this.$={...t[r-2],type:"composite",children:t[r-1]};break;case 28:u.getLogger().debug("Rule: blockStatement : ",t[r-2],t[r-1],t[r]);const C=u.generateId();this.$={id:C,type:"composite",label:"",children:t[r-1]};break;case 29:u.getLogger().debug("Rule: node (NODE_ID separator): ",t[r]),this.$={id:t[r]};break;case 30:u.getLogger().debug("Rule: node (NODE_ID nodeShapeNLabel separator): ",t[r-1],t[r]),this.$={id:t[r-1],label:t[r].label,typeStr:t[r].typeStr,directions:t[r].directions};break;case 31:u.getLogger().debug("Rule: dirList: ",t[r]),this.$=[t[r]];break;case 32:u.getLogger().debug("Rule: dirList: ",t[r-1],t[r]),this.$=[t[r-1]].concat(t[r]);break;case 33:u.getLogger().debug("Rule: nodeShapeNLabel: ",t[r-2],t[r-1],t[r]),this.$={typeStr:t[r-2]+t[r],label:t[r-1]};break;case 34:u.getLogger().debug("Rule: BLOCK_ARROW nodeShapeNLabel: ",t[r-3],t[r-2]," #3:",t[r-1],t[r]),this.$={typeStr:t[r-3]+t[r],label:t[r-2],directions:t[r-1]};break;case 35:case 36:this.$={type:"classDef",id:t[r-1].trim(),css:t[r].trim()};break;case 37:this.$={type:"applyClass",id:t[r-1].trim(),styleClass:t[r].trim()};break;case 38:this.$={type:"applyStyles",id:t[r-1].trim(),stylesStr:t[r].trim()};break}},table:[{9:1,10:[1,2]},{1:[3]},{11:3,13:4,19:5,20:6,21:a,22:8,23:9,24:10,25:11,26:12,28:d,29:c,31:n,32:g,40:l,44:b,47:x},{8:[1,20]},e(p,[2,12],{13:4,19:5,20:6,22:8,23:9,24:10,25:11,26:12,11:21,21:a,28:d,29:c,31:n,32:g,40:l,44:b,47:x}),e(S,[2,16],{14:22,15:y,16:O}),e(S,[2,17]),e(S,[2,18]),e(S,[2,19]),e(S,[2,20]),e(S,[2,21]),e(S,[2,22]),e(v,[2,25],{27:[1,25]}),e(S,[2,26]),{19:26,26:12,32:g},{11:27,13:4,19:5,20:6,21:a,22:8,23:9,24:10,25:11,26:12,28:d,29:c,31:n,32:g,40:l,44:b,47:x},{41:[1,28],43:[1,29]},{45:[1,30]},{48:[1,31]},e(N,[2,29],{33:32,36:[1,33],38:[1,34]}),{1:[2,7]},e(p,[2,13]),{26:35,32:g},{32:[2,14]},{17:[1,36]},e(v,[2,24]),{11:37,13:4,14:22,15:y,16:O,19:5,20:6,21:a,22:8,23:9,24:10,25:11,26:12,28:d,29:c,31:n,32:g,40:l,44:b,47:x},{30:[1,38]},{42:[1,39]},{42:[1,40]},{46:[1,41]},{49:[1,42]},e(N,[2,30]),{18:[1,43]},{18:[1,44]},e(v,[2,23]),{18:[1,45]},{30:[1,46]},e(S,[2,28]),e(S,[2,35]),e(S,[2,36]),e(S,[2,37]),e(S,[2,38]),{37:[1,47]},{34:48,35:E},{15:[1,50]},e(S,[2,27]),e(N,[2,33]),{39:[1,51]},{34:52,35:E,39:[2,31]},{32:[2,15]},e(N,[2,34]),{39:[2,32]}],defaultActions:{20:[2,7],23:[2,14],50:[2,15],52:[2,32]},parseError:function(o,s){if(s.recoverable)this.trace(o);else{var i=new Error(o);throw i.hash=s,i}},parse:function(o){var s=this,i=[0],u=[],h=[null],t=[],_=this.table,r="",R=0,W=0,F=2,C=1,be=t.slice.call(arguments,1),w=Object.create(this.lexer),K={yy:{}};for(var Z in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Z)&&(K.yy[Z]=this.yy[Z]);w.setInput(o,K.yy),K.yy.lexer=w,K.yy.parser=this,typeof w.yylloc>"u"&&(w.yylloc={});var J=w.yylloc;t.push(J);var xe=w.options&&w.options.ranges;typeof K.yy.parseError=="function"?this.parseError=K.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Se(){var P;return P=u.pop()||w.lex()||C,typeof P!="number"&&(P instanceof Array&&(u=P,P=u.pop()),P=s.symbols_[P]||P),P}for(var T,M,z,Q,j={},X,B,ne,G;;){if(M=i[i.length-1],this.defaultActions[M]?z=this.defaultActions[M]:((T===null||typeof T>"u")&&(T=Se()),z=_[M]&&_[M][T]),typeof z>"u"||!z.length||!z[0]){var $="";G=[];for(X in _[M])this.terminals_[X]&&X>F&&G.push("'"+this.terminals_[X]+"'");w.showPosition?$="Parse error on line "+(R+1)+`:
|
|
2
2
|
`+w.showPosition()+`
|
|
3
3
|
Expecting `+G.join(", ")+", got '"+(this.terminals_[T]||T)+"'":$="Parse error on line "+(R+1)+": Unexpected "+(T==C?"end of input":"'"+(this.terminals_[T]||T)+"'"),this.parseError($,{text:w.match,token:this.terminals_[T]||T,line:w.yylineno,loc:J,expected:G})}if(z[0]instanceof Array&&z.length>1)throw new Error("Parse Error: multiple actions possible at state: "+M+", token: "+T);switch(z[0]){case 1:i.push(T),h.push(w.yytext),t.push(w.yylloc),i.push(z[1]),T=null,W=w.yyleng,r=w.yytext,R=w.yylineno,J=w.yylloc;break;case 2:if(B=this.productions_[z[1]][1],j.$=h[h.length-B],j._$={first_line:t[t.length-(B||1)].first_line,last_line:t[t.length-1].last_line,first_column:t[t.length-(B||1)].first_column,last_column:t[t.length-1].last_column},xe&&(j._$.range=[t[t.length-(B||1)].range[0],t[t.length-1].range[1]]),Q=this.performAction.apply(j,[r,W,R,K.yy,z[1],h,t].concat(be)),typeof Q<"u")return Q;B&&(i=i.slice(0,-1*B*2),h=h.slice(0,-1*B),t=t.slice(0,-1*B)),i.push(this.productions_[z[1]][0]),h.push(j.$),t.push(j._$),ne=_[i[i.length-2]][i[i.length-1]],i.push(ne);break;case 3:return!0}}return!0}},A=(function(){var D={EOF:1,parseError:function(s,i){if(this.yy.parser)this.yy.parser.parseError(s,i);else throw new Error(s)},setInput:function(o,s){return this.yy=s||this.yy||{},this._input=o,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var o=this._input[0];this.yytext+=o,this.yyleng++,this.offset++,this.match+=o,this.matched+=o;var s=o.match(/(?:\r\n?|\n).*/g);return s?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),o},unput:function(o){var s=o.length,i=o.split(/(?:\r\n?|\n)/g);this._input=o+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-s),this.offset-=s;var u=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),i.length-1&&(this.yylineno-=i.length-1);var h=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:i?(i.length===u.length?this.yylloc.first_column:0)+u[u.length-i.length].length-i[0].length:this.yylloc.first_column-s},this.options.ranges&&(this.yylloc.range=[h[0],h[0]+this.yyleng-s]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
|
4
4
|
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(o){this.unput(this.match.slice(o))},pastInput:function(){var o=this.matched.substr(0,this.matched.length-this.match.length);return(o.length>20?"...":"")+o.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var o=this.match;return o.length<20&&(o+=this._input.substr(0,20-o.length)),(o.substr(0,20)+(o.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var o=this.pastInput(),s=new Array(o.length+1).join("-");return o+this.upcomingInput()+`
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("./layers.
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("./layers.Ct9Zf_S7.js");require("./layers.CycK0cvs.js");require("lodash-es/memoize.js");require("lodash-es/merge.js");require("lodash-es/isEmpty.js");const tt=require("./layers.Dl2llq6u.js"),nt=require("./layers.B19hGmey.js"),st=require("./layers.9pNaFvaX.js"),R=require("./layers.DOrgOHBr.js");function rt(e,y){return y<e?-1:y>e?1:y>=e?0:NaN}function at(e){return e}function lt(){var e=at,y=rt,$=null,g=R.constant(0),d=R.constant(u.tau),E=R.constant(0);function f(a){var l,m=(a=st.array(a)).length,v,I,D=0,_=new Array(m),b=new Array(m),o=+g.apply(this,arguments),w=Math.min(u.tau,Math.max(-u.tau,d.apply(this,arguments)-o)),P,T=Math.min(Math.abs(w)/m,E.apply(this,arguments)),S=T*(w<0?-1:1),t;for(l=0;l<m;++l)(t=b[_[l]=l]=+e(a[l],l,a))>0&&(D+=t);for(y!=null?_.sort(function(i,n){return y(b[i],b[n])}):$!=null&&_.sort(function(i,n){return $(a[i],a[n])}),l=0,I=D?(w-m*S)/D:0;l<m;++l,o=P)v=_[l],t=b[v],P=o+(t>0?t*I:0)+S,b[v]={data:a[v],index:l,value:t,startAngle:o,endAngle:P,padAngle:T};return b}return f.value=function(a){return arguments.length?(e=typeof a=="function"?a:R.constant(+a),f):e},f.sortValues=function(a){return arguments.length?(y=a,$=null,f):y},f.sort=function(a){return arguments.length?($=a,y=null,f):$},f.startAngle=function(a){return arguments.length?(g=typeof a=="function"?a:R.constant(+a),f):g},f.endAngle=function(a){return arguments.length?(d=typeof a=="function"?a:R.constant(+a),f):d},f.padAngle=function(a){return arguments.length?(E=typeof a=="function"?a:R.constant(+a),f):E},f}var K=(function(){var e=function(S,t,i,n){for(i=i||{},n=S.length;n--;i[S[n]]=t);return i},y=[1,3],$=[1,4],g=[1,5],d=[1,6],E=[1,10,12,14,16,18,19,20,21,22],f=[2,4],a=[1,5,10,12,14,16,18,19,20,21,22],l=[20,21,22],m=[2,7],v=[1,12],I=[1,13],D=[1,14],_=[1,15],b=[1,16],o=[1,17],w={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,PIE:5,document:6,showData:7,line:8,statement:9,txt:10,value:11,title:12,title_value:13,acc_title:14,acc_title_value:15,acc_descr:16,acc_descr_value:17,acc_descr_multiline_value:18,section:19,NEWLINE:20,";":21,EOF:22,$accept:0,$end:1},terminals_:{2:"error",5:"PIE",7:"showData",10:"txt",11:"value",12:"title",13:"title_value",14:"acc_title",15:"acc_title_value",16:"acc_descr",17:"acc_descr_value",18:"acc_descr_multiline_value",19:"section",20:"NEWLINE",21:";",22:"EOF"},productions_:[0,[3,2],[3,2],[3,3],[6,0],[6,2],[8,2],[9,0],[9,2],[9,2],[9,2],[9,2],[9,1],[9,1],[4,1],[4,1],[4,1]],performAction:function(t,i,n,r,c,s,V){var x=s.length-1;switch(c){case 3:r.setShowData(!0);break;case 6:this.$=s[x-1];break;case 8:r.addSection(s[x-1],r.cleanupValue(s[x]));break;case 9:this.$=s[x].trim(),r.setDiagramTitle(this.$);break;case 10:this.$=s[x].trim(),r.setAccTitle(this.$);break;case 11:case 12:this.$=s[x].trim(),r.setAccDescription(this.$);break;case 13:r.addSection(s[x].substr(8)),this.$=s[x].substr(8);break}},table:[{3:1,4:2,5:y,20:$,21:g,22:d},{1:[3]},{3:7,4:2,5:y,20:$,21:g,22:d},e(E,f,{6:8,7:[1,9]}),e(a,[2,14]),e(a,[2,15]),e(a,[2,16]),{1:[2,1]},e(l,m,{8:10,9:11,1:[2,2],10:v,12:I,14:D,16:_,18:b,19:o}),e(E,f,{6:18}),e(E,[2,5]),{4:19,20:$,21:g,22:d},{11:[1,20]},{13:[1,21]},{15:[1,22]},{17:[1,23]},e(l,[2,12]),e(l,[2,13]),e(l,m,{8:10,9:11,1:[2,3],10:v,12:I,14:D,16:_,18:b,19:o}),e(E,[2,6]),e(l,[2,8]),e(l,[2,9]),e(l,[2,10]),e(l,[2,11])],defaultActions:{7:[2,1]},parseError:function(t,i){if(i.recoverable)this.trace(t);else{var n=new Error(t);throw n.hash=i,n}},parse:function(t){var i=this,n=[0],r=[],c=[null],s=[],V=this.table,x="",p=0,N=0,z=2,j=1,B=s.slice.call(arguments,1),h=Object.create(this.lexer),L={yy:{}};for(var Y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Y)&&(L.yy[Y]=this.yy[Y]);h.setInput(t,L.yy),L.yy.lexer=h,L.yy.parser=this,typeof h.yylloc>"u"&&(h.yylloc={});var Z=h.yylloc;s.push(Z);var et=h.options&&h.options.ranges;typeof L.yy.parseError=="function"?this.parseError=L.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function it(){var O;return O=r.pop()||h.lex()||j,typeof O!="number"&&(O instanceof Array&&(r=O,O=r.pop()),O=i.symbols_[O]||O),O}for(var k,F,A,H,M={},W,C,X,q;;){if(F=n[n.length-1],this.defaultActions[F]?A=this.defaultActions[F]:((k===null||typeof k>"u")&&(k=it()),A=V[F]&&V[F][k]),typeof A>"u"||!A.length||!A[0]){var J="";q=[];for(W in V[F])this.terminals_[W]&&W>z&&q.push("'"+this.terminals_[W]+"'");h.showPosition?J="Parse error on line "+(p+1)+`:
|
|
2
2
|
`+h.showPosition()+`
|
|
3
3
|
Expecting `+q.join(", ")+", got '"+(this.terminals_[k]||k)+"'":J="Parse error on line "+(p+1)+": Unexpected "+(k==j?"end of input":"'"+(this.terminals_[k]||k)+"'"),this.parseError(J,{text:h.match,token:this.terminals_[k]||k,line:h.yylineno,loc:Z,expected:q})}if(A[0]instanceof Array&&A.length>1)throw new Error("Parse Error: multiple actions possible at state: "+F+", token: "+k);switch(A[0]){case 1:n.push(k),c.push(h.yytext),s.push(h.yylloc),n.push(A[1]),k=null,N=h.yyleng,x=h.yytext,p=h.yylineno,Z=h.yylloc;break;case 2:if(C=this.productions_[A[1]][1],M.$=c[c.length-C],M._$={first_line:s[s.length-(C||1)].first_line,last_line:s[s.length-1].last_line,first_column:s[s.length-(C||1)].first_column,last_column:s[s.length-1].last_column},et&&(M._$.range=[s[s.length-(C||1)].range[0],s[s.length-1].range[1]]),H=this.performAction.apply(M,[x,N,p,L.yy,A[1],c,s].concat(B)),typeof H<"u")return H;C&&(n=n.slice(0,-1*C*2),c=c.slice(0,-1*C),s=s.slice(0,-1*C)),n.push(this.productions_[A[1]][0]),c.push(M.$),s.push(M._$),X=V[n[n.length-2]][n[n.length-1]],n.push(X);break;case 3:return!0}}return!0}},P=(function(){var S={EOF:1,parseError:function(i,n){if(this.yy.parser)this.yy.parser.parseError(i,n);else throw new Error(i)},setInput:function(t,i){return this.yy=i||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var t=this._input[0];this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t;var i=t.match(/(?:\r\n?|\n).*/g);return i?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},unput:function(t){var i=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-i),this.offset-=i;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var c=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-i},this.options.ranges&&(this.yylloc.range=[c[0],c[0]+this.yyleng-i]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
|
4
4
|
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(t){this.unput(this.match.slice(t))},pastInput:function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var t=this.pastInput(),i=new Array(t.length+1).join("-");return t+this.upcomingInput()+`
|