@layers-app/editor 0.7.92 → 0.7.94
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.js +2 -2
- package/dist/{layers.Cs7GlunF.js → layers.0zto2iHQ.js} +1 -1
- package/dist/{layers.CpZ9aPMO.js → layers.4Ksq__pH.js} +3 -3
- package/dist/{layers.CsvDJIZ7.js → layers.4O7NP2hG.js} +1 -1
- package/dist/{layers.D_H6PF0v.js → layers.4TP6L1o1.js} +1 -1
- package/dist/{layers.CsWdKhEu.js → layers.4t4ris2c.js} +1 -1
- package/dist/{layers.CwB1NQbd.js → layers.5uzSx96y.js} +1 -1
- package/dist/{layers.c1g3UUys.js → layers.ANi-fKvt.js} +4 -4
- package/dist/{layers.CCCrplmS.js → layers.B0FUlxmg.js} +1 -1
- package/dist/{layers.CIg6bGPB.js → layers.B184Fepz.js} +1 -1
- package/dist/{layers.D9OpTLfE.js → layers.B3Bs8kNy.js} +1 -1
- package/dist/{layers.CmyRYGoE.js → layers.B3G1fUZs.js} +3 -3
- package/dist/{layers.DqC47xCC.js → layers.B48K3AE2.js} +3 -3
- package/dist/{layers.DOrY9DYv.js → layers.B5aMO3c8.js} +24 -24
- package/dist/{layers.qfL_NxUA.js → layers.B6i7W6CZ.js} +1 -1
- package/dist/{layers.DN0u5Yg6.js → layers.B8KixoLp.js} +1 -1
- package/dist/{layers.Kal-YH7y.js → layers.BB7KMib0.js} +1 -1
- package/dist/{layers.2HPpqSIH.js → layers.BBDOQ7yE.js} +1 -1
- package/dist/{layers.BxFztpj5.js → layers.BBeeJXeW.js} +1 -1
- package/dist/{layers.uLbLjX8b.js → layers.BCBsVC-u.js} +1 -1
- package/dist/{layers.t-FrNIBD.js → layers.BDZny-FL.js} +1 -1
- package/dist/{layers.D5hpoy9h.js → layers.BEGVP5H5.js} +2 -2
- package/dist/{layers.DEKzHuSi.js → layers.BHzIAItY.js} +1 -1
- package/dist/{layers.DZT2dQyG.js → layers.BJL0EBPa.js} +1 -1
- package/dist/{layers.jNpPtSYq.js → layers.BJOiGxCQ.js} +1 -1
- package/dist/{layers.BUGORd_C.js → layers.BKiHObFL.js} +4 -4
- package/dist/{layers.DjVLYoWg.js → layers.BP-1XTdK.js} +1 -1
- package/dist/{layers.Cj01jo54.js → layers.BP2Y3nmD.js} +1 -1
- package/dist/{layers.BqCSz12w.js → layers.BPLRV40d.js} +1 -1
- package/dist/{layers.D8An70uL.js → layers.BQr6h_rZ.js} +1 -1
- package/dist/layers.BRYleyNj.js +1 -0
- package/dist/{layers.Ddribg71.js → layers.BSBUCRxL.js} +1 -1
- package/dist/{layers.8jZXu6Rm.js → layers.BStfa7Ec.js} +1 -1
- package/dist/{layers.B67YEwi2.js → layers.BT7KTLga.js} +1 -1
- package/dist/{layers.CqyzxURh.js → layers.BUGbfqCF.js} +1 -1
- package/dist/{layers.BoX_Wqae.js → layers.BV2_XShA.js} +1 -1
- package/dist/{layers.9mdVpQdh.js → layers.BVm12Snl.js} +1 -1
- package/dist/{layers.CsMhgQ1t.js → layers.BXjG9UK4.js} +1 -1
- package/dist/{layers.B1oYEFZP.js → layers.BZfzujdb.js} +1 -1
- package/dist/{layers.DPgn17B0.js → layers.B_GfugcR.js} +1 -1
- package/dist/{layers.BltC4xgl.js → layers.Bal9D_3l.js} +1 -1
- package/dist/{layers.VteHR-nD.js → layers.BbOH_FNC.js} +2 -2
- package/dist/{layers.CdTCz5Y3.js → layers.BcWyCmWd.js} +1 -1
- package/dist/{layers.9mcMwZEW.js → layers.Bdmc_OD6.js} +4 -4
- package/dist/{layers.CEResW_R.js → layers.BdpB4FQH.js} +1 -1
- package/dist/layers.Be2REn5S.js +1 -0
- package/dist/{layers.noEAcBug.js → layers.BeS3PtsD.js} +1 -1
- package/dist/{layers.BhE4ByBZ.js → layers.BfOoqcmT.js} +1 -1
- package/dist/{layers.YmVu7Jyc.js → layers.Bg238NQZ.js} +1 -1
- package/dist/{layers.BzRIellV.js → layers.Bgg8ra_F.js} +1 -1
- package/dist/{layers.qH1Kvygt.js → layers.BgjUs1jF.js} +3 -3
- package/dist/{layers.BvzEdEXm.js → layers.BiqyvvR9.js} +1 -1
- package/dist/{layers.BjSFrA4f.js → layers.Bl4DHC7D.js} +2 -2
- package/dist/{layers.BBvJZ2gd.js → layers.BnJjQcWj.js} +2 -2
- package/dist/{layers.-cNYa8FH.js → layers.Bob_UXUE.js} +1 -1
- package/dist/{layers.BxY27rS7.js → layers.BpLMN9gb.js} +1 -1
- package/dist/{layers.D1dsXFS0.js → layers.Bpf4TPHn.js} +1 -1
- package/dist/{layers.Bvv96FkK.js → layers.Bq0FGir_.js} +7 -7
- package/dist/{layers.CVFxZSWW.js → layers.BrQYLhBE.js} +1 -1
- package/dist/{layers.BV5O3Yjr.js → layers.BrS1J4vJ.js} +1 -1
- package/dist/{layers.CD8wS95C.js → layers.Bs7NHk-D.js} +1 -1
- package/dist/{layers.CE94zD9l.js → layers.BsilZJVZ.js} +1 -1
- package/dist/{layers.BvhzLRzG.js → layers.BtbDCem_.js} +1 -1
- package/dist/layers.Bu5dgBb_.js +310 -0
- package/dist/{layers.D8yufb88.js → layers.BxeCbx-6.js} +1 -1
- package/dist/{layers.DFjAixjy.js → layers.Bz348g-F.js} +6 -6
- package/dist/{layers.CCyI84zh.js → layers.BzxndRXa.js} +1 -1
- package/dist/{layers.BrsKNoq-.js → layers.C-_OViOU.js} +1 -1
- package/dist/{layers.DuE9Eexi.js → layers.C-sZ8JPk.js} +3 -3
- package/dist/{layers.Dfq7GSQ2.js → layers.C0MFIWD0.js} +3 -3
- package/dist/{layers.Cfdr-h4O.js → layers.C0wsv0al.js} +1 -1
- package/dist/{layers.B1ARxIqB.js → layers.C1hY4S0L.js} +1 -1
- package/dist/layers.C4LsiUri.js +8 -0
- package/dist/{layers.DuAvgcNM.js → layers.C7yRYYMj.js} +1 -1
- package/dist/{layers.BzC8fzb9.js → layers.C8JZixrP.js} +1 -1
- package/dist/{layers.B3UEoC3V.js → layers.CBMyh3tg.js} +1 -1
- package/dist/{layers.UCGv1oR7.js → layers.CBd4b_-g.js} +14621 -14321
- package/dist/{layers.BAJ2-bXH.js → layers.CCVF69iT.js} +1 -1
- package/dist/{layers.DvHXCGpY.js → layers.CCVNugk5.js} +1 -1
- package/dist/{layers.jJYSd22J.js → layers.CEG5rDDR.js} +1 -1
- package/dist/{layers.Rd4Aez_o.js → layers.CHAiYk68.js} +1 -1
- package/dist/{layers.B6iDa8RT.js → layers.CIfvFXmc.js} +1 -1
- package/dist/{layers.Bx8how39.js → layers.CJwda6Ie.js} +1 -1
- package/dist/{layers.By_kFoy7.js → layers.CL41IL9l.js} +1 -1
- package/dist/{layers.D6oKUbDE.js → layers.CLwE2B2y.js} +1 -1
- package/dist/{layers.BcsRLUTx.js → layers.CMB7qHSe.js} +1 -1
- package/dist/{layers.cHiyhRv0.js → layers.CMHJlCdH.js} +1 -1
- package/dist/{layers.Bn8tW8p5.js → layers.CN-UX7Fm.js} +1 -1
- package/dist/{layers.Dvto57We.js → layers.CN6jCCLu.js} +1 -1
- package/dist/{layers.DF05j1M2.js → layers.CNuUCqVd.js} +2 -2
- package/dist/{layers.o8IUzzuA.js → layers.CPDT_Dw7.js} +4 -4
- package/dist/{layers.CTsI8G5d.js → layers.CPtqyUQW.js} +1 -1
- package/dist/{layers.C68ajHa1.js → layers.CRWLh_yw.js} +1 -1
- package/dist/{layers.BFBYRXUj.js → layers.CRjfwp1e.js} +1 -1
- package/dist/{layers.UNs4NPL2.js → layers.CUWMwxBO.js} +1 -1
- package/dist/{layers.CPaiSNny.js → layers.CYvsrAsT.js} +1 -1
- package/dist/{layers.DkaXOqLh.js → layers.C_cLfJzM.js} +1 -1
- package/dist/{layers.e4WMAP8p.js → layers.C_lggeez.js} +4 -4
- package/dist/{layers.CVCmClj2.js → layers.C_ncOnbF.js} +1 -1
- package/dist/{layers.DhHQZIJN.js → layers.C_ySCaah.js} +1 -1
- package/dist/{layers.CcvQrhZG.js → layers.CdjisxUB.js} +4 -4
- package/dist/{layers.BexTNd-c.js → layers.CdzEQ0r1.js} +1 -1
- package/dist/{layers.CAoP3DTW.js → layers.Cf1cfS_i.js} +1 -1
- package/dist/{layers.DvSpirXT.js → layers.CfAz8jRQ.js} +1 -1
- package/dist/{layers.BOh-DK5k.js → layers.Ch3sBjxG.js} +1 -1
- package/dist/{layers.DyTr0iC-.js → layers.Ch4ChAuy.js} +3 -3
- package/dist/{layers.BQ-H3YLY.js → layers.ChmMJLJH.js} +4 -4
- package/dist/{layers.zbHQRaAA.js → layers.ClL8l0tb.js} +5 -5
- package/dist/{layers.C5LXz2Dt.js → layers.CnwPr2_m.js} +1 -1
- package/dist/{layers.Cpw6B803.js → layers.CoBkDvD9.js} +1 -1
- package/dist/{layers.C9OSt3-B.js → layers.CoN_biX_.js} +1 -1
- package/dist/{layers.L5G2E32S.js → layers.CovfX0qy.js} +5 -5
- package/dist/{layers.C3l4W4QY.js → layers.Cq7cNKQI.js} +1 -1
- package/dist/{layers.8fnCtugI.js → layers.CrDI7BOy.js} +1 -1
- package/dist/{layers.BNQ1MOkD.js → layers.CriBy1WL.js} +1 -1
- package/dist/{layers.D1bCzAYq.js → layers.CsY2PEaf.js} +1 -1
- package/dist/{layers.B8MrCT1B.js → layers.CtzsJ_Qz.js} +1 -1
- package/dist/{layers.BxH_KvZM.js → layers.CuWBVZVE.js} +1 -1
- package/dist/{layers.ChzgxWon.js → layers.Cvq6n0af.js} +1 -1
- package/dist/{layers.D24Anxjv.js → layers.Cvt4L11X.js} +1 -1
- package/dist/{layers.Do_EHOq8.js → layers.Cxqe2t_R.js} +1 -1
- package/dist/{layers.D4MDjmxL.js → layers.CydmsCJ6.js} +1 -1
- package/dist/layers.CyynMWyN.js +6 -0
- package/dist/{layers.BoPR0wQt.js → layers.CzvOzOWn.js} +3 -3
- package/dist/{layers.-go0yqrB.js → layers.D-fSEr1I.js} +1 -1
- package/dist/{layers.B3mTVCFZ.js → layers.D0XXdyU0.js} +1 -1
- package/dist/{layers.sxqdU83h.js → layers.D3MNgET7.js} +1 -1
- package/dist/{layers.CuPX21JA.js → layers.D3mGufeb.js} +1 -1
- package/dist/{layers.B5DNqRLR.js → layers.D8LHv5Wk.js} +1 -1
- package/dist/{layers.CTpPpYwM.js → layers.DAsilv3R.js} +1 -1
- package/dist/{layers.wZ8wbCG9.js → layers.DBdwd7TZ.js} +1 -1
- package/dist/{layers.PxPuzt12.js → layers.DDEnQpEn.js} +1 -1
- package/dist/{layers.DFYEVVfs.js → layers.DEX89APB.js} +1 -1
- package/dist/{layers.C5Oq8KLD.js → layers.DEnZyvIx.js} +1 -1
- package/dist/{layers.C6i05MYQ.js → layers.DJDxjtB3.js} +1 -1
- package/dist/{layers.BhIZgvhm.js → layers.DKJ2WU82.js} +1 -1
- package/dist/{layers.Wc4s15q8.js → layers.DKPRD01N.js} +1 -1
- package/dist/{layers.yAPrlce6.js → layers.DL1-UT1O.js} +1 -1
- package/dist/{layers.QABnXFIR.js → layers.DLGlC4vJ.js} +1 -1
- package/dist/{layers.BJ9hFtJT.js → layers.DMj5AHSo.js} +1 -1
- package/dist/{layers.BfpJiswu.js → layers.DSQS44dK.js} +4 -4
- package/dist/{layers.DHa8WGDC.js → layers.DSwDTe9Z.js} +1 -1
- package/dist/{layers.CHC4RiFK.js → layers.DT-IC93y.js} +1 -1
- package/dist/{layers.CA75s71W.js → layers.DXJuHUsP.js} +1 -1
- package/dist/{layers.Cx-9Emh6.js → layers.D_4fiBYz.js} +1 -1
- package/dist/{layers.ClQJRYXj.js → layers.D_Mv6gfq.js} +1 -1
- package/dist/{layers.Du1TNcZd.js → layers.Dc7Pvwn0.js} +1 -1
- package/dist/{layers.CNUeObBK.js → layers.DdXYC_K_.js} +1 -1
- package/dist/{layers.CJ6TVAfM.js → layers.DgnF9ACQ.js} +1 -1
- package/dist/{layers.EDqAD98V.js → layers.Di-b5rnA.js} +1 -1
- package/dist/{layers.BX4qFBHZ.js → layers.Dl1Wx9FX.js} +2 -2
- package/dist/{layers.Fdk6MvMH.js → layers.DlHAVU5n.js} +1 -1
- package/dist/{layers.CeayngSI.js → layers.DrYDPEw4.js} +1 -1
- package/dist/{layers.Bmk77Nl5.js → layers.DtW6XnAE.js} +1 -1
- package/dist/{layers.Bqqt2WZE.js → layers.DtkxfHEW.js} +1 -1
- package/dist/{layers.BhjR9hmy.js → layers.DttmtG7W.js} +1 -1
- package/dist/{layers.CMnu34_U.js → layers.Dv2NVib3.js} +1 -1
- package/dist/{layers.iUn6qHX-.js → layers.Dvgz32kE.js} +1 -1
- package/dist/{layers.-mDZECmb.js → layers.Dx3PqPY0.js} +1 -1
- package/dist/{layers.CFzM74P5.js → layers.Dzf8tAtZ.js} +1 -1
- package/dist/{layers.CCeryKPD.js → layers.DzkkzOI1.js} +1 -1
- package/dist/{layers.D9FgdobB.js → layers.GIL4vDl3.js} +1 -1
- package/dist/{layers.BA-Hn-8i.js → layers.GjBrbIMu.js} +1 -1
- package/dist/{layers.DpBgVacc.js → layers.IUcKI4IG.js} +1 -1
- package/dist/{layers.CRW9Fwvq.js → layers.IrklSkrg.js} +1 -1
- package/dist/{layers.CI16GYp5.js → layers.KBaHkWu2.js} +1 -1
- package/dist/{layers.gkJkfBXX.js → layers.LkFaqKJi.js} +1 -1
- package/dist/{layers.BzZqZM22.js → layers.MxwwvtSA.js} +1 -1
- package/dist/{layers.BYtl3t4o.js → layers.NJcYAT1C.js} +1 -1
- package/dist/{layers.DFfOmmco.js → layers.NQ1Aikwn.js} +1 -1
- package/dist/{layers.BcpQT2YY.js → layers.PPWNGasf.js} +1 -1
- package/dist/{layers.xI63-j2d.js → layers.PsoKQAJt.js} +1 -1
- package/dist/{layers.DxydmUP3.js → layers.QjBxi8wH.js} +4 -4
- package/dist/{layers.CsEfNhVM.js → layers.R-v4gNx5.js} +1 -1
- package/dist/{layers.DCMj-1Uf.js → layers.SJr4oMpe.js} +1 -1
- package/dist/{layers.BgVF9Tny.js → layers.UwSWIWP4.js} +1 -1
- package/dist/{layers.BeWDYex5.js → layers.VAJVLjZN.js} +1 -1
- package/dist/{layers.Ba0lsCQC.js → layers.VXDR9PIz.js} +1 -1
- package/dist/{layers.CARdVtYx.js → layers.W4AlOGgf.js} +1 -1
- package/dist/{layers.CEoeaJQD.js → layers._4FKy5MF.js} +1 -1
- package/dist/{layers.D9VTCVI3.js → layers._QYCBpoM.js} +1 -1
- package/dist/{layers.CKZ6gFse.js → layers._tF8WTcw.js} +1 -1
- package/dist/{layers.CVH7bHbB.js → layers.a6X49GwZ.js} +1 -1
- package/dist/{layers.B9Jm8gWZ.js → layers.bOjyWNMD.js} +8 -8
- package/dist/{layers.DpQ_bWul.js → layers.ce8ytukt.js} +1 -1
- package/dist/{layers.DbF4xVBE.js → layers.eOVFoPB6.js} +3 -3
- package/dist/{layers.Bvxpmu-2.js → layers.hMoxHZrO.js} +1 -1
- package/dist/{layers.poSPbB9X.js → layers.hyrgMf8D.js} +4 -4
- package/dist/{layers.DCv5ETXp.js → layers.iikl0VeP.js} +1 -1
- package/dist/{layers.BHIb7oOU.js → layers.jjUX4oi2.js} +1 -1
- package/dist/{layers.C4ZTYVln.js → layers.kHmxS0Hb.js} +3 -3
- package/dist/{layers.CgkVp4lC.js → layers.nNQp4NGW.js} +1 -1
- package/dist/{layers.BNi48siA.js → layers.qlG64X88.js} +1 -1
- package/dist/{layers.D_YdTiFW.js → layers.qz3R7qFS.js} +1 -1
- package/dist/{layers.BR01ua_4.js → layers.tcIOYaEM.js} +1 -1
- package/dist/{layers.nh-jugfR.js → layers.uCjmcjnb.js} +1 -1
- package/dist/{layers.DnVwZ2Cw.js → layers.uYVJCiej.js} +1 -1
- package/dist/{layers.DVpWFLjR.js → layers.ukcAaUuY.js} +1 -1
- package/dist/{layers.QXq1glLQ.js → layers.uxy_pIya.js} +3 -3
- package/dist/{layers.CJfAmCMO.js → layers.wNNm0OR_.js} +1 -1
- package/dist/{layers.DowbTgQm.js → layers.yLjsrlcl.js} +1 -1
- package/dist/{layers.B8Y8jR5X.js → layers.zHn0MlgM.js} +1 -1
- package/dist/{layers.WS0tOiF9.js → layers.zkSG6BJe.js} +1 -1
- package/package.json +192 -192
- package/dist/layers.BFiBXBMU.js +0 -1
- package/dist/layers.BYU-0xYT.js +0 -6
- package/dist/layers.C-hhGDUy.js +0 -8
- package/dist/layers.D3uB-jsE.js +0 -1
- package/dist/layers.Drh9XlcG.js +0 -309
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "./layers.
|
|
1
|
+
import "./layers.bOjyWNMD.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: "Cтрелка", 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: "Полотно", 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: "" }, E = { noItems: "Пока ничего не добавлено...", hint_emptyLibrary: "Выберите объект на холсте, чтобы добавить его сюда, или установите библиотеку из публичного репозитория ниже.", hint_emptyPrivateLibrary: "Выберите объект на холсте, чтобы добавить его сюда." }, D = { 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
|
-
import "./layers.
|
|
1
|
+
import "./layers.bOjyWNMD.js";
|
|
2
2
|
var e = { paste: "Colar", pasteAsPlaintext: "Colar como texto simples", pasteCharts: "Colar gráficos", selectAll: "Selecionar tudo", multiSelect: "Adicionar elemento à seleção", moveCanvas: "Mover tela", cut: "Cortar", copy: "Copiar", copyAsPng: "Copiar para a área de transferência como PNG", copyAsSvg: "Copiar para a área de transferência como SVG", copyText: "Copiar para Área de Transferência como texto", copySource: "", convertToCode: "", bringForward: "Trazer para o primeiro plano", sendToBack: "Enviar para o plano de fundo", bringToFront: "Trazer para o primeiro plano", sendBackward: "Enviar para trás", delete: "Apagar", copyStyles: "Copiar os estilos", pasteStyles: "Colar os estilos", stroke: "Contornos", background: "Fundo", fill: "Preenchimento", strokeWidth: "Espessura do traço", strokeStyle: "Estilo de traço", strokeStyle_solid: "Sólido", strokeStyle_dashed: "Tracejado", strokeStyle_dotted: "Pontilhado", sloppiness: "Desleixo", opacity: "Opacidade", textAlign: "Alinhamento do texto", edges: "Arestas", sharp: "Aguçado", round: "Redondo", arrowheads: "Pontas", arrowhead_none: "Nenhuma", arrowhead_arrow: "Seta", arrowhead_bar: "Barra", arrowhead_circle: "", arrowhead_circle_outline: "", arrowhead_triangle: "Triângulo", arrowhead_triangle_outline: "", arrowhead_diamond: "", arrowhead_diamond_outline: "", fontSize: "Tamanho da fonte", fontFamily: "Família da fontes", addWatermark: 'Adicionar "Feito com Excalidraw"', handDrawn: "Manuscrito", normal: "Normal", code: "Código", small: "Pequeno", medium: "Médio", large: "Grande", veryLarge: "Muito grande", solid: "Sólido", hachure: "Eclosão", zigzag: "ziguezague", crossHatch: "Sombreado", thin: "Fino", bold: "Espesso", left: "Esquerda", center: "Centralizar", right: "Direita", extraBold: "Muito espesso", architect: "Arquitecto", artist: "Artista", cartoonist: "Caricaturista", fileTitle: "Nome do ficheiro", colorPicker: "Seletor de cores", canvasColors: "Usado na tela", canvasBackground: "Fundo da área de desenho", drawingCanvas: "Área de desenho", layers: "Camadas", actions: "Ações", language: "Idioma", liveCollaboration: "Colaboração ao vivo...", duplicateSelection: "Duplicar", untitled: "Sem título", name: "Nome", yourName: "O seu nome", madeWithExcalidraw: "Feito com Excalidraw", group: "Agrupar seleção", ungroup: "Desagrupar seleção", collaborators: "Colaboradores", showGrid: "Mostrar grelha", addToLibrary: "Adicionar à biblioteca", removeFromLibrary: "Remover da biblioteca", libraryLoadingMessage: "A carregar a biblioteca…", libraries: "Procurar bibliotecas", loadingScene: "A carregar a cena…", align: "Alinhamento", alignTop: "Alinhar ao topo", alignBottom: "Alinhar ao fundo", alignLeft: "Alinhar à esquerda", alignRight: "Alinhar à direita", centerVertically: "Centrar verticalmente", centerHorizontally: "Centrar horizontalmente", distributeHorizontally: "Distribuir horizontalmente", distributeVertically: "Distribuir verticalmente", flipHorizontal: "Inverter horizontalmente", flipVertical: "Inverter verticalmente", viewMode: "Modo de visualização", share: "Partilhar", showStroke: "Mostrar seletor de cores do traço", showBackground: "Mostrar seletor de cores do fundo", toggleTheme: "Alternar tema", personalLib: "Biblioteca pessoal", excalidrawLib: "Biblioteca do Excalidraw", decreaseFontSize: "Reduzir o tamanho do tipo de letra", increaseFontSize: "Aumentar o tamanho do tipo de letra", unbindText: "Desvincular texto", bindText: "Ligar texto ao recipiente", createContainerFromText: "Envolver texto num recipiente", link: { edit: "Editar ligação", editEmbed: "", create: "Criar ligação", createEmbed: "", label: "Ligação", labelEmbed: "", empty: "" }, lineEditor: { edit: "Editar linha", exit: "Sair do editor de linha" }, elementLock: { lock: "Bloquear", unlock: "Desbloquear", lockAll: "Bloquear todos", unlockAll: "Desbloquear todos" }, statusPublished: "Publicado", sidebarLock: "Manter a barra lateral aberta", selectAllElementsInFrame: "", removeAllElementsFromFrame: "", eyeDropper: "", textToDiagram: "", prompt: "" }, a = { noItems: "Ainda não foram adicionados nenhuns itens...", hint_emptyLibrary: "Seleccione um item na tela para adicioná-lo aqui, ou então instale uma biblioteca do repositório público abaixo.", hint_emptyPrivateLibrary: "Seleccione um item na tela para adicioná-lo aqui." }, o = { clearReset: "Limpar a área de desenho e redefinir a cor de fundo", exportJSON: "Exportar para ficheiro", exportImage: "Exportar imagem...", export: "Guardar para...", copyToClipboard: "Copiar para o clipboard", save: "Guardar no ficheiro atual", saveAs: "Guardar como", load: "Abrir", getShareableLink: "Obter um link de partilha", close: "Fechar", selectLanguage: "Selecionar idioma", scrollBackToContent: "Voltar ao conteúdo", zoomIn: "Aumentar zoom", zoomOut: "Diminuir zoom", resetZoom: "Redefinir zoom", menu: "Menu", done: "Concluído", edit: "Editar", undo: "Desfazer", redo: "Refazer", resetLibrary: "Repor a biblioteca", createNewRoom: "Criar nova sala", fullScreen: "Ecrã inteiro", darkMode: "Modo escuro", lightMode: "Modo claro", zenMode: "Modo zen", objectsSnapMode: "", exitZenMode: "Sair do modo zen", cancel: "Cancelar", clear: "Limpar", remove: "Remover", embed: "", publishLibrary: "Publicar", submit: "Enviar", confirm: "Confirmar", embeddableInteractionButton: "" }, r = { clearReset: "Isto irá limpar toda a área de desenho. Tem a certeza?", couldNotCreateShareableLink: "Não foi possível criar um link partilhável.", couldNotCreateShareableLinkTooBig: "Não foi possível criar um link partilhável: a cena é muito grande", couldNotLoadInvalidFile: "Não foi possível carregar o ficheiro inválido", importBackendFailed: "A importação do servidor falhou.", cannotExportEmptyCanvas: "Não é possível exportar uma área de desenho vazia.", couldNotCopyToClipboard: "Não foi possível copiar para a área de transferência.", decryptFailed: "Não foi possível desencriptar os dados.", uploadedSecurly: "O upload foi protegido com criptografia de ponta a ponta, o que significa que o servidor do Excalidraw e terceiros não podem ler o conteúdo.", loadSceneOverridePrompt: "Se carregar um desenho externo substituirá o conteúdo existente. Quer continuar?", collabStopOverridePrompt: `Ao interromper a sessão irá substituir o último desenho guardado. Tem a certeza?
|
|
3
3
|
|
|
4
4
|
(Caso queira manter o último desenho, simplesmente feche a janela do navegador.)`, errorAddingToLibrary: "Não foi possível adicionar o item à biblioteca", errorRemovingFromLibrary: "Não foi possível remover o item da biblioteca", confirmAddLibrary: "Isso adicionará {{numShapes}} forma(s) à sua biblioteca. Tem a certeza?", imageDoesNotContainScene: "Esta imagem parece não conter dados de cenas. Ativou a incorporação da cena durante a exportação?", cannotRestoreFromImage: "Não foi possível restaurar a cena deste ficheiro de imagem", invalidSceneUrl: "Não foi possível importar a cena a partir do URL fornecido. Ou está mal formado ou não contém dados JSON do Excalidraw válidos.", resetLibrary: "Isto irá limpar a sua biblioteca. Tem a certeza?", removeItemsFromsLibrary: "Apagar {{count}} item(ns) da biblioteca?", invalidEncryptionKey: "Chave de encriptação deve ter 22 caracteres. A colaboração ao vivo está desativada.", collabOfflineWarning: `Sem ligação à internet disponível.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const D=require("./layers.DOrgOHBr.js"),n=require("./layers.
|
|
1
|
+
"use strict";const D=require("./layers.DOrgOHBr.js"),n=require("./layers.eOVFoPB6.js");function b(o){return o.innerRadius}function k(o){return o.outerRadius}function _(o){return o.startAngle}function nn(o){return o.endAngle}function en(o){return o&&o.padAngle}function an(o,x,E,P,h,v,j,i){var I=E-o,t=P-x,e=j-h,y=i-v,s=y*I-e*t;if(!(s*s<n.epsilon))return s=(e*(x-v)-y*(o-h))/s,[o+s*I,x+s*t]}function M(o,x,E,P,h,v,j){var i=o-E,I=x-P,t=(j?v:-v)/n.sqrt(i*i+I*I),e=t*I,y=-t*i,s=o+e,u=x+y,c=E+e,f=P+y,z=(s+c)/2,l=(u+f)/2,g=c-s,p=f-u,A=g*g+p*p,R=h-v,T=s*f-c*u,O=(p<0?-1:1)*n.sqrt(n.max(0,R*R*A-T*T)),S=(T*p-g*O)/A,$=(-T*g-p*O)/A,q=(T*p+g*O)/A,m=(-T*g+p*O)/A,d=S-z,a=$-l,r=q-z,B=m-l;return d*d+a*a>r*r+B*B&&(S=q,$=m),{cx:S,cy:$,x01:-e,y01:-y,x11:S*(h/R-1),y11:$*(h/R-1)}}function sn(){var o=b,x=k,E=D.constant(0),P=null,h=_,v=nn,j=en,i=null,I=D.withPath(t);function t(){var e,y,s=+o.apply(this,arguments),u=+x.apply(this,arguments),c=h.apply(this,arguments)-n.halfPi,f=v.apply(this,arguments)-n.halfPi,z=n.abs(f-c),l=f>c;if(i||(i=e=I()),u<s&&(y=u,u=s,s=y),!(u>n.epsilon))i.moveTo(0,0);else if(z>n.tau-n.epsilon)i.moveTo(u*n.cos(c),u*n.sin(c)),i.arc(0,0,u,c,f,!l),s>n.epsilon&&(i.moveTo(s*n.cos(f),s*n.sin(f)),i.arc(0,0,s,f,c,l));else{var g=c,p=f,A=c,R=f,T=z,O=z,S=j.apply(this,arguments)/2,$=S>n.epsilon&&(P?+P.apply(this,arguments):n.sqrt(s*s+u*u)),q=n.min(n.abs(u-s)/2,+E.apply(this,arguments)),m=q,d=q,a,r;if($>n.epsilon){var B=n.asin($/s*n.sin(S)),G=n.asin($/u*n.sin(S));(T-=B*2)>n.epsilon?(B*=l?1:-1,A+=B,R-=B):(T=0,A=R=(c+f)/2),(O-=G*2)>n.epsilon?(G*=l?1:-1,g+=G,p-=G):(O=0,g=p=(c+f)/2)}var C=u*n.cos(g),F=u*n.sin(g),H=s*n.cos(R),J=s*n.sin(R);if(q>n.epsilon){var K=u*n.cos(p),L=u*n.sin(p),N=s*n.cos(A),Q=s*n.sin(A),w;if(z<n.pi)if(w=an(C,F,N,Q,K,L,H,J)){var U=C-w[0],V=F-w[1],W=K-w[0],X=L-w[1],Y=1/n.sin(n.acos((U*W+V*X)/(n.sqrt(U*U+V*V)*n.sqrt(W*W+X*X)))/2),Z=n.sqrt(w[0]*w[0]+w[1]*w[1]);m=n.min(q,(s-Z)/(Y-1)),d=n.min(q,(u-Z)/(Y+1))}else m=d=0}O>n.epsilon?d>n.epsilon?(a=M(N,Q,C,F,u,d,l),r=M(K,L,H,J,u,d,l),i.moveTo(a.cx+a.x01,a.cy+a.y01),d<q?i.arc(a.cx,a.cy,d,n.atan2(a.y01,a.x01),n.atan2(r.y01,r.x01),!l):(i.arc(a.cx,a.cy,d,n.atan2(a.y01,a.x01),n.atan2(a.y11,a.x11),!l),i.arc(0,0,u,n.atan2(a.cy+a.y11,a.cx+a.x11),n.atan2(r.cy+r.y11,r.cx+r.x11),!l),i.arc(r.cx,r.cy,d,n.atan2(r.y11,r.x11),n.atan2(r.y01,r.x01),!l))):(i.moveTo(C,F),i.arc(0,0,u,g,p,!l)):i.moveTo(C,F),!(s>n.epsilon)||!(T>n.epsilon)?i.lineTo(H,J):m>n.epsilon?(a=M(H,J,K,L,s,-m,l),r=M(C,F,N,Q,s,-m,l),i.lineTo(a.cx+a.x01,a.cy+a.y01),m<q?i.arc(a.cx,a.cy,m,n.atan2(a.y01,a.x01),n.atan2(r.y01,r.x01),!l):(i.arc(a.cx,a.cy,m,n.atan2(a.y01,a.x01),n.atan2(a.y11,a.x11),!l),i.arc(0,0,s,n.atan2(a.cy+a.y11,a.cx+a.x11),n.atan2(r.cy+r.y11,r.cx+r.x11),l),i.arc(r.cx,r.cy,m,n.atan2(r.y11,r.x11),n.atan2(r.y01,r.x01),!l))):i.arc(0,0,s,R,A,l)}if(i.closePath(),e)return i=null,e+""||null}return t.centroid=function(){var e=(+o.apply(this,arguments)+ +x.apply(this,arguments))/2,y=(+h.apply(this,arguments)+ +v.apply(this,arguments))/2-n.pi/2;return[n.cos(y)*e,n.sin(y)*e]},t.innerRadius=function(e){return arguments.length?(o=typeof e=="function"?e:D.constant(+e),t):o},t.outerRadius=function(e){return arguments.length?(x=typeof e=="function"?e:D.constant(+e),t):x},t.cornerRadius=function(e){return arguments.length?(E=typeof e=="function"?e:D.constant(+e),t):E},t.padRadius=function(e){return arguments.length?(P=e==null?null:typeof e=="function"?e:D.constant(+e),t):P},t.startAngle=function(e){return arguments.length?(h=typeof e=="function"?e:D.constant(+e),t):h},t.endAngle=function(e){return arguments.length?(v=typeof e=="function"?e:D.constant(+e),t):v},t.padAngle=function(e){return arguments.length?(j=typeof e=="function"?e:D.constant(+e),t):j},t.context=function(e){return arguments.length?(i=e??null,t):i},t}exports.arc=sn;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";const r=require("./layers.
|
|
1
|
+
"use strict";const r=require("./layers.eOVFoPB6.js"),G=require("lodash-es"),P=require("./layers.BLd2spTm.js"),V=require("./layers.DtkxfHEW.js"),j=require("./layers.Be2REn5S.js");function F(e){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const i in e)if(i!=="default"){const a=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(o,i,a.get?a:{enumerable:!0,get:()=>e[i]})}}return o.default=e,Object.freeze(o)}const E=F(G);function N(e){return typeof e=="string"?new r.Selection([document.querySelectorAll(e)],[document.documentElement]):new r.Selection([r.array(e)],r.root)}function M(e,o){return!!e.children(o).length}function R(e){return _(e.v)+":"+_(e.w)+":"+_(e.name)}var H=/:/g;function _(e){return e?String(e).replace(H,"\\:"):""}function B(e,o){o&&e.attr("style",o)}function K(e,o,i){o&&e.attr("class",o).attr("class",i+" "+e.attr("class"))}function O(e,o){var i=o.graph();if(E.isPlainObject(i)){var a=i.transition;if(E.isFunction(a))return a(e)}return e}function D(e,o){var i=e.append("foreignObject").attr("width","100000"),a=i.append("xhtml:div");a.attr("xmlns","http://www.w3.org/1999/xhtml");var d=o.label;switch(typeof d){case"function":a.insert(d);break;case"object":a.insert(function(){return d});break;default:a.html(d)}B(a,o.labelStyle),a.style("display","inline-block"),a.style("white-space","nowrap");var p=a.node().getBoundingClientRect();return i.attr("width",p.width).attr("height",p.height),i}const I={},U=function(e){const o=Object.keys(e);for(const i of o)I[i]=e[i]},z=async function(e,o,i,a,d,p){const g=a.select(`[id="${i}"]`),s=Object.keys(e);for(const b of s){const l=e[b];let h="default";l.classes.length>0&&(h=l.classes.join(" ")),h=h+" flowchart-label";const w=r.getStylesFromArray(l.styles);let t=l.text!==void 0?l.text:l.id,c;if(r.log$1.info("vertex",l,l.labelType),l.labelType==="markdown")r.log$1.info("vertex",l,l.labelType);else if(r.evaluate(r.getConfig().flowchart.htmlLabels))c=D(g,{label:t}).node(),c.parentNode.removeChild(c);else{const k=d.createElementNS("http://www.w3.org/2000/svg","text");k.setAttribute("style",w.labelStyle.replace("color:","fill:"));const T=t.split(r.common$1.lineBreakRegex);for(const $ of T){const v=d.createElementNS("http://www.w3.org/2000/svg","tspan");v.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),v.setAttribute("dy","1em"),v.setAttribute("x","1"),v.textContent=$,k.appendChild(v)}c=k}let f=0,n="";switch(l.type){case"round":f=5,n="rect";break;case"square":n="rect";break;case"diamond":n="question";break;case"hexagon":n="hexagon";break;case"odd":n="rect_left_inv_arrow";break;case"lean_right":n="lean_right";break;case"lean_left":n="lean_left";break;case"trapezoid":n="trapezoid";break;case"inv_trapezoid":n="inv_trapezoid";break;case"odd_right":n="rect_left_inv_arrow";break;case"circle":n="circle";break;case"ellipse":n="ellipse";break;case"stadium":n="stadium";break;case"subroutine":n="subroutine";break;case"cylinder":n="cylinder";break;case"group":n="rect";break;case"doublecircle":n="doublecircle";break;default:n="rect"}const S=await r.renderKatexSanitized(t,r.getConfig());o.setNode(l.id,{labelStyle:w.labelStyle,shape:n,labelText:S,labelType:l.labelType,rx:f,ry:f,class:h,style:w.style,id:l.id,link:l.link,linkTarget:l.linkTarget,tooltip:p.db.getTooltip(l.id)||"",domId:p.db.lookUpDomId(l.id),haveCallback:l.haveCallback,width:l.type==="group"?500:void 0,dir:l.dir,type:l.type,props:l.props,padding:r.getConfig().flowchart.padding}),r.log$1.info("setNode",{labelStyle:w.labelStyle,labelType:l.labelType,shape:n,labelText:S,rx:f,ry:f,class:h,style:w.style,id:l.id,domId:p.db.lookUpDomId(l.id),width:l.type==="group"?500:void 0,type:l.type,dir:l.dir,props:l.props,padding:r.getConfig().flowchart.padding})}},q=async function(e,o,i){r.log$1.info("abc78 edges = ",e);let a=0,d={},p,g;if(e.defaultStyle!==void 0){const s=r.getStylesFromArray(e.defaultStyle);p=s.style,g=s.labelStyle}for(const s of e){a++;const b="L-"+s.start+"-"+s.end;d[b]===void 0?(d[b]=0,r.log$1.info("abc78 new entry",b,d[b])):(d[b]++,r.log$1.info("abc78 new entry",b,d[b]));let l=b+"-"+d[b];r.log$1.info("abc78 new link id to be used is",b,l,d[b]);const h="LS-"+s.start,w="LE-"+s.end,t={style:"",labelStyle:""};switch(t.minlen=s.length||1,s.type==="arrow_open"?t.arrowhead="none":t.arrowhead="normal",t.arrowTypeStart="arrow_open",t.arrowTypeEnd="arrow_open",s.type){case"double_arrow_cross":t.arrowTypeStart="arrow_cross";case"arrow_cross":t.arrowTypeEnd="arrow_cross";break;case"double_arrow_point":t.arrowTypeStart="arrow_point";case"arrow_point":t.arrowTypeEnd="arrow_point";break;case"double_arrow_circle":t.arrowTypeStart="arrow_circle";case"arrow_circle":t.arrowTypeEnd="arrow_circle";break}let c="",f="";switch(s.stroke){case"normal":c="fill:none;",p!==void 0&&(c=p),g!==void 0&&(f=g),t.thickness="normal",t.pattern="solid";break;case"dotted":t.thickness="normal",t.pattern="dotted",t.style="fill:none;stroke-width:2px;stroke-dasharray:3;";break;case"thick":t.thickness="thick",t.pattern="solid",t.style="stroke-width: 3.5px;fill:none;";break;case"invisible":t.thickness="invisible",t.pattern="solid",t.style="stroke-width: 0;fill:none;";break}if(s.style!==void 0){const n=r.getStylesFromArray(s.style);c=n.style,f=n.labelStyle}t.style=t.style+=c,t.labelStyle=t.labelStyle+=f,s.interpolate!==void 0?t.curve=r.interpolateToCurve(s.interpolate,r.curveLinear):e.defaultInterpolate!==void 0?t.curve=r.interpolateToCurve(e.defaultInterpolate,r.curveLinear):t.curve=r.interpolateToCurve(I.curve,r.curveLinear),s.text===void 0?s.style!==void 0&&(t.arrowheadStyle="fill: #333"):(t.arrowheadStyle="fill: #333",t.labelpos="c"),t.labelType=s.labelType,t.label=await r.renderKatexSanitized(s.text.replace(r.common$1.lineBreakRegex,`
|
|
2
2
|
`),r.getConfig()),s.style===void 0&&(t.style=t.style||"stroke: #333; stroke-width: 1.5px;fill:none;"),t.labelStyle=t.labelStyle.replace("color:","fill:"),t.id=l,t.classes="flowchart-link "+h+" "+w,o.setEdge(s.start,s.end,t,a)}},W=function(e,o){return o.db.getClasses()},X=async function(e,o,i,a){r.log$1.info("Drawing flowchart");let d=a.db.getDirection();d===void 0&&(d="TD");const{securityLevel:p,flowchart:g}=r.getConfig(),s=g.nodeSpacing||50,b=g.rankSpacing||50;let l;p==="sandbox"&&(l=r.select("#i"+o));const h=p==="sandbox"?r.select(l.nodes()[0].contentDocument.body):r.select("body"),w=p==="sandbox"?l.nodes()[0].contentDocument:document,t=new P.Graph({multigraph:!0,compound:!0}).setGraph({rankdir:d,nodesep:s,ranksep:b,marginx:0,marginy:0}).setDefaultEdgeLabel(function(){return{}});let c;const f=a.db.getSubGraphs();r.log$1.info("Subgraphs - ",f);for(let u=f.length-1;u>=0;u--)c=f[u],r.log$1.info("Subgraph - ",c),a.db.addVertex(c.id,{text:c.title,type:c.labelType},"group",void 0,c.classes,c.dir);const n=a.db.getVertices(),S=a.db.getEdges();r.log$1.info("Edges",S);let k=0;for(k=f.length-1;k>=0;k--){c=f[k],N("cluster").append("text");for(let u=0;u<c.nodes.length;u++)r.log$1.info("Setting up subgraphs",c.nodes[u],c.id),t.setParent(c.nodes[u],c.id)}await z(n,t,o,h,w,a),await q(S,t);const T=h.select(`[id="${o}"]`),$=h.select("#"+o+" g");if(await V.render($,t,["point","circle","cross"],"flowchart",o),r.utils.insertTitle(T,"flowchartTitleText",g.titleTopMargin,a.db.getDiagramTitle()),r.setupGraphViewbox$1(t,T,g.diagramPadding,g.useMaxWidth),a.db.indexNodes("subGraph"+k),!g.htmlLabels){const u=w.querySelectorAll('[id="'+o+'"] .edgeLabel .label');for(const x of u){const m=x.getBBox(),y=w.createElementNS("http://www.w3.org/2000/svg","rect");y.setAttribute("rx",0),y.setAttribute("ry",0),y.setAttribute("width",m.width),y.setAttribute("height",m.height),x.insertBefore(y,x.firstChild)}}Object.keys(n).forEach(function(u){const x=n[u];if(x.link){const m=r.select("#"+o+' [id="'+u+'"]');if(m){const y=w.createElementNS("http://www.w3.org/2000/svg","a");y.setAttributeNS("http://www.w3.org/2000/svg","class",x.classes.join(" ")),y.setAttributeNS("http://www.w3.org/2000/svg","href",x.link),y.setAttributeNS("http://www.w3.org/2000/svg","rel","noopener"),p==="sandbox"?y.setAttributeNS("http://www.w3.org/2000/svg","target","_top"):x.linkTarget&&y.setAttributeNS("http://www.w3.org/2000/svg","target",x.linkTarget);const C=m.insert(function(){return y},":first-child"),L=m.select(".label-container");L&&C.append(function(){return L.node()});const A=m.select(".label");A&&C.append(function(){return A.node()})}}})},J={setConf:U,addVertices:z,addEdges:q,getClasses:W,draw:X},Q=(e,o)=>{const i=j.channel,a=i(e,"r"),d=i(e,"g"),p=i(e,"b");return r.rgba(a,d,p,o)},Y=e=>`.label {
|
|
3
3
|
font-family: ${e.fontFamily};
|
|
4
4
|
color: ${e.nodeTextColor||e.textColor};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "./layers.
|
|
1
|
+
import "./layers.bOjyWNMD.js";
|
|
2
2
|
var e = { paste: "Lim inn", pasteAsPlaintext: "", pasteCharts: "Lim inn diagram", selectAll: "Vel alt", multiSelect: "Legg til element i utval", moveCanvas: "Flytt lerretet", cut: "Klipp ut", copy: "Kopier", copyAsPng: "Kopier til utklippstavla som PNG", copyAsSvg: "Kopier til utklippstavla som SVG", copyText: "", copySource: "", convertToCode: "", bringForward: "Flytt framover", sendToBack: "Send heilt bak", bringToFront: "Flytt heilt fram", sendBackward: "Send bakover", delete: "Slett", copyStyles: "Kopier stilar", pasteStyles: "Lim inn stilar", stroke: "Strek", background: "Bakgrunn", fill: "Fyll", strokeWidth: "Strekbreidd", strokeStyle: "Strekstil", strokeStyle_solid: "Solid", strokeStyle_dashed: "Stipla", strokeStyle_dotted: "Prikka", sloppiness: "Ujamnheit", opacity: "Synlegheit", textAlign: "Tekstjustering", edges: "Kanter", sharp: "Skarp", round: "Rund", arrowheads: "Pilhovud", arrowhead_none: "Ingen", arrowhead_arrow: "Pil", arrowhead_bar: "Stolpe", arrowhead_circle: "", arrowhead_circle_outline: "", arrowhead_triangle: "Trekant", arrowhead_triangle_outline: "", arrowhead_diamond: "", arrowhead_diamond_outline: "", fontSize: "Skriftstorleik", fontFamily: "Skrifttype", addWatermark: "Legg til «Laga med Excalidraw»", handDrawn: "Handteikna", normal: "Normal", code: "Kode", small: "Liten", medium: "Medium", large: "Stor", veryLarge: "Svært stor", solid: "Solid", hachure: "Skravert", zigzag: "", crossHatch: "Krysskravert", thin: "Tynn", bold: "Tjukk", left: "Venstre", center: "Midstill", right: "Høgre", extraBold: "Ekstra tjukk", architect: "Arkitekt", artist: "Kunstnar", cartoonist: "Teiknar", fileTitle: "Filnamn", colorPicker: "Fargeveljar", canvasColors: "Brukt på lerretet", canvasBackground: "Lerretsbakgrunn", drawingCanvas: "Lerret", layers: "Lag", actions: "Handlingar", language: "Språk", liveCollaboration: "", duplicateSelection: "Dupliser", untitled: "Utan namn", name: "Namn", yourName: "Namnet ditt", madeWithExcalidraw: "Laga med Excalidraw", group: "Grupper utval", ungroup: "Avgrupper utval", collaborators: "Samarbeidarar", showGrid: "Vis rutenett", addToLibrary: "Legg til i bibliotek", removeFromLibrary: "Fjern frå bibliotek", libraryLoadingMessage: "Laster bibliotek…", libraries: "Blad gjennom bibliotek", loadingScene: "Laster scene…", align: "Juster", alignTop: "Juster til topp", alignBottom: "Juster til botn", alignLeft: "Juster til venstre", alignRight: "Juster til høgre", centerVertically: "Midtstill vertikalt", centerHorizontally: "Midtstill horisontalt", distributeHorizontally: "Sprei horisontalt", distributeVertically: "Sprei vertikalt", flipHorizontal: "Vipp vassrett", flipVertical: "Vipp loddrett", viewMode: "Visningsmodus", share: "Del", showStroke: "Vis fargeveljar for linjer", showBackground: "Vis fargeveljar for bakgrunn", toggleTheme: "Veksle tema", personalLib: "Personleg bibliotek", excalidrawLib: "Excalidraw-bibliotek", decreaseFontSize: "Gjer skriftstorleik mindre", increaseFontSize: "Gjer skriftstorleik større", unbindText: "Avbind tekst", bindText: "", createContainerFromText: "", link: { edit: "Rediger lenke", editEmbed: "", create: "Lag lenke", createEmbed: "", label: "Lenke", labelEmbed: "", empty: "" }, lineEditor: { edit: "", exit: "" }, elementLock: { lock: "", unlock: "", lockAll: "", unlockAll: "" }, statusPublished: "", sidebarLock: "", selectAllElementsInFrame: "", removeAllElementsFromFrame: "", eyeDropper: "", textToDiagram: "", prompt: "" }, t = { noItems: "", hint_emptyLibrary: "", hint_emptyPrivateLibrary: "" }, r = { clearReset: "Tilbakestill lerretet", exportJSON: "Eksporter til fil", exportImage: "", export: "", copyToClipboard: "Kopier til utklippstavla", save: "Lagre til noverande fil", saveAs: "Lagre som", load: "", getShareableLink: "Hent delingslenke", close: "Lukk", selectLanguage: "Vel språk", scrollBackToContent: "Skroll tilbake til innhald", zoomIn: "Zoom inn", zoomOut: "Zoom ut", resetZoom: "Nullstill zoom", menu: "Meny", done: "Ferdig", edit: "Rediger", undo: "Angre", redo: "Gjer om", resetLibrary: "Nullstill bibliotek", createNewRoom: "Lag nytt rom", fullScreen: "Fullskjerm", darkMode: "Mørk modus", lightMode: "Lys modus", zenMode: "Zen-modus", objectsSnapMode: "", exitZenMode: "Avslutt zen-modus", cancel: "Avbryt", clear: "Tøm", remove: "Fjern", embed: "", publishLibrary: "Publiser", submit: "Send inn", confirm: "Stadfest", embeddableInteractionButton: "" }, i = { clearReset: "Dette vil tømme lerretet. Er du sikker?", couldNotCreateShareableLink: "Kunne ikkje lage delingslenke.", couldNotCreateShareableLinkTooBig: "Kunne ikkje opprette deleleg lenke: scena er for stor", couldNotLoadInvalidFile: "Kunne ikkje laste inn ugyldig fil", importBackendFailed: "Importering av backend feila.", cannotExportEmptyCanvas: "Kan ikkje eksportere eit tomt lerret.", couldNotCopyToClipboard: "", decryptFailed: "Kunne ikkje dekryptere data.", uploadedSecurly: "Opplastinga er kryptert og er ikkje mogleg å lese av Excalidraw-serveren eller tredjepartar.", loadSceneOverridePrompt: "Innlasting av ekstern teikning erstattar ditt eksisterande innhald. Ynskjer du å fortsette?", collabStopOverridePrompt: `Viss du avsluttar økta overskriv du den førre, lokalt lagra teikninga di. Er du sikker?
|
|
3
3
|
|
|
4
4
|
(Ønsker du å halde fram med denne? Då er det berre å lukke denne fana.)`, errorAddingToLibrary: "Kunne ikkje legge elementet i biblioteket", errorRemovingFromLibrary: "Kunne ikkje fjerne elementet frå biblioteket", confirmAddLibrary: "Dette vil legge til {{numShapes}} form(er) i biblioteket ditt. Er du sikker?", imageDoesNotContainScene: "Dette biletet ser ikkje ut til å ha noko scenedata. Har du skrutt på innbygging av scene medan eksporteringa heldt på?", cannotRestoreFromImage: "Scena kunne ikkje gjenopprettast frå denne biletfila", invalidSceneUrl: "Kunne ikkje hente noko scene frå den URL-en. Ho er anten øydelagd eller inneheld ikkje gyldig Excalidraw JSON-data.", resetLibrary: "Dette vil fjerne alt innhald frå biblioteket. Er du sikker?", removeItemsFromsLibrary: "Slette {{count}} element frå biblioteket?", invalidEncryptionKey: "Krypteringsnøkkelen må ha 22 teikn. Sanntidssamarbeid er deaktivert.", collabOfflineWarning: "" }, a = { unsupportedFileType: "Filtypen er ikkje støtta.", imageInsertError: "Kunne ikkje sette inn biletet. Prøv igjen seinare...", fileTooBig: "Fila er for stor. Maksimal tillate storleik er {{maxSize}}.", svgImageInsertError: "Kunne ikkje sette inn SVG-biletet. SVG-koden ser ugyldig ut.", failedToFetchImage: "", invalidSVGString: "Ugyldig SVG.", cannotResolveCollabServer: "Kunne ikkje kople til samarbeidsserveren. Ver vennleg å oppdatere inn sida og prøv på nytt.", importLibraryError: "", collabSaveFailed: "", collabSaveFailed_sizeExceeded: "", imageToolNotSupported: "", brave_measure_text_error: { line1: "", line2: "", line3: "", line4: "" }, libraryElementTypeError: { embeddable: "", iframe: "", image: "" }, asyncPasteFailedOnRead: "", asyncPasteFailedOnParse: "", copyToSystemClipboardFailed: "" }, l = { selection: "Vel", image: "Sett in bilete", rectangle: "Rektangel", diamond: "Diamant", ellipse: "Ellipse", arrow: "Pil", line: "Linje", freedraw: "Teikn", text: "Tekst", library: "Bibliotek", lock: "Hald fram med valt verktøy", penMode: "", link: "Legg til/ oppdater lenke til valt figur", eraser: "Viskelêr", frame: "", magicframe: "", embeddable: "", laser: "", hand: "", extraTools: "", mermaidToExcalidraw: "", magicSettings: "" }, n = { canvasActions: "Handlingar: lerret", selectedShapeActions: "Handlingar: valt objekt", shapes: "Formar" }, o = { canvasPanning: "", linearElement: "Klikk for å starte linje med fleire punkt, eller drag for ei enkel linje", freeDraw: "Klikk og drag, slepp når du er ferdig", text: "Tips: du kan òg leggje til tekst ved å dobbeltklikke kor som helst med utvalgsverktyet", embeddable: "", text_selected: "Dobbelklikk eller trykk ENTER for å redigere teksta", text_editing: "Trykk Escape eller CtrlOrCmd+ENTER for å fullføre redigeringa", linearElementMulti: "Klikk på siste punkt eller trykk Escape eller Enter for å fullføre", lockAngle: "Du kan begrense vinkelen ved å holde nede SKIFT", resize: `Du kan halde fram med forholdet ved å trykke SHIFT medan du endrar storleik,
|
|
@@ -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.eOVFoPB6.js"),Le=require("lodash-es/clone.js"),Y=require("./layers.BdpB4FQH.js"),_e=require("./layers.BLd2spTm.js");require("./layers.Bq0FGir_.js");require("lodash-es/memoize.js");require("lodash-es/merge.js");require("lodash-es/isEmpty.js");const me=require("./layers.Be2REn5S.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,5 +1,5 @@
|
|
|
1
|
-
import { J as i } from "./layers.
|
|
2
|
-
import { m as o } from "./layers.
|
|
1
|
+
import { J as i } from "./layers.bOjyWNMD.js";
|
|
2
|
+
import { m as o } from "./layers.B5aMO3c8.js";
|
|
3
3
|
const l = (s, t) => {
|
|
4
4
|
const r = s.append("rect");
|
|
5
5
|
if (r.attr("x", t.x), r.attr("y", t.y), r.attr("fill", t.fill), r.attr("stroke", t.stroke), r.attr("width", t.width), r.attr("height", t.height), t.name && r.attr("name", t.name), t.rx !== void 0 && r.attr("rx", t.rx), t.ry !== void 0 && r.attr("ry", t.ry), t.attrs !== void 0)
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "./layers.
|
|
1
|
+
import "./layers.bOjyWNMD.js";
|
|
2
2
|
var e = { paste: "Einfügen", pasteAsPlaintext: "Als reinen Text einfügen", pasteCharts: "Diagramme einfügen", selectAll: "Alle auswählen", multiSelect: "Element zur Auswahl hinzufügen", moveCanvas: "Leinwand verschieben", cut: "Ausschneiden", copy: "Kopieren", copyAsPng: "In Zwischenablage kopieren (PNG)", copyAsSvg: "In Zwischenablage kopieren (SVG)", copyText: "In die Zwischenablage als Text kopieren", copySource: "Quelle in Zwischenablage kopieren", convertToCode: "In Code konvertieren", bringForward: "Nach vorne", sendToBack: "In den Hintergrund", bringToFront: "In den Vordergrund", sendBackward: "Nach hinten", delete: "Löschen", copyStyles: "Formatierung kopieren", pasteStyles: "Formatierung übernehmen", stroke: "Strich", background: "Hintergrund", fill: "Füllung", strokeWidth: "Strichstärke", strokeStyle: "Konturstil", strokeStyle_solid: "Durchgezogen", strokeStyle_dashed: "Gestrichelt", strokeStyle_dotted: "Gepunktet", sloppiness: "Sauberkeit", opacity: "Deckkraft", textAlign: "Textausrichtung", edges: "Kanten", sharp: "Scharf", round: "Rund", arrowheads: "Pfeilspitzen", arrowhead_none: "Keine", arrowhead_arrow: "Pfeil", arrowhead_bar: "Balken", arrowhead_circle: "Kreis", arrowhead_circle_outline: "Kreis (Umrandung)", arrowhead_triangle: "Dreieck", arrowhead_triangle_outline: "Dreieck (Umrandung)", arrowhead_diamond: "Raute", arrowhead_diamond_outline: "Raute (Umrandung)", fontSize: "Schriftgröße", fontFamily: "Schriftfamilie", addWatermark: '"Made with Excalidraw" hinzufügen', handDrawn: "Handgezeichnet", normal: "Normal", code: "Code", small: "Klein", medium: "Mittel", large: "Groß", veryLarge: "Sehr groß", solid: "Deckend", hachure: "Schraffiert", zigzag: "Zickzack", crossHatch: "Kreuzschraffiert", thin: "Dünn", bold: "Fett", left: "Links", center: "Zentriert", right: "Rechts", extraBold: "Extra Fett", architect: "Architekt", artist: "Künstler", cartoonist: "Karikaturist", fileTitle: "Dateiname", colorPicker: "Farbauswähler", canvasColors: "Auf Leinwand verwendet", canvasBackground: "Zeichenflächenhintergrund", drawingCanvas: "Leinwand", layers: "Ebenen", actions: "Aktionen", language: "Sprache", liveCollaboration: "Live-Zusammenarbeit...", duplicateSelection: "Duplizieren", untitled: "Unbenannt", name: "Name", yourName: "Dein Name", madeWithExcalidraw: "Made with Excalidraw", group: "Auswahl gruppieren", ungroup: "Gruppierung aufheben", collaborators: "Mitarbeitende", showGrid: "Raster anzeigen", addToLibrary: "Zur Bibliothek hinzufügen", removeFromLibrary: "Aus Bibliothek entfernen", libraryLoadingMessage: "Lade Bibliothek…", libraries: "Bibliotheken durchsuchen", loadingScene: "Lade Zeichnung…", align: "Ausrichten", alignTop: "Obere Kanten", alignBottom: "Untere Kanten", alignLeft: "Linke Kanten", alignRight: "Rechte Kanten", centerVertically: "Vertikal zentrieren", centerHorizontally: "Horizontal zentrieren", distributeHorizontally: "Horizontal verteilen", distributeVertically: "Vertikal verteilen", flipHorizontal: "Horizontal spiegeln", flipVertical: "Vertikal spiegeln", viewMode: "Ansichtsmodus", share: "Teilen", showStroke: "Auswahl für Strichfarbe anzeigen", showBackground: "Hintergrundfarbe auswählen", toggleTheme: "Design umschalten", personalLib: "Persönliche Bibliothek", excalidrawLib: "Excalidraw Bibliothek", decreaseFontSize: "Schriftgröße verkleinern", increaseFontSize: "Schrift vergrößern", unbindText: "Text lösen", bindText: "Text an Container binden", createContainerFromText: "Text in Container einbetten", link: { edit: "Link bearbeiten", editEmbed: "Link bearbeiten & einbetten", create: "Link erstellen", createEmbed: "Link erstellen & einbetten", label: "Link", labelEmbed: "Verlinken & einbetten", empty: "Kein Link festgelegt" }, lineEditor: { edit: "Linie bearbeiten", exit: "Linieneditor verlassen" }, elementLock: { lock: "Sperren", unlock: "Entsperren", lockAll: "Alle sperren", unlockAll: "Alle entsperren" }, statusPublished: "Veröffentlicht", sidebarLock: "Seitenleiste offen lassen", selectAllElementsInFrame: "Alle Elemente im Rahmen auswählen", removeAllElementsFromFrame: "Alle Elemente aus dem Rahmen entfernen", eyeDropper: "Farbe von der Zeichenfläche auswählen", textToDiagram: "Text zu Diagramm", prompt: "Eingabe" }, n = { noItems: "Noch keine Elemente hinzugefügt...", hint_emptyLibrary: "Wähle ein Element auf der Zeichenfläche, um es hier hinzuzufügen. Oder installiere eine Bibliothek aus dem öffentlichen Verzeichnis.", hint_emptyPrivateLibrary: "Wähle ein Element von der Zeichenfläche, um es hier hinzuzufügen." }, i = { clearReset: "Zeichenfläche löschen & Hintergrundfarbe zurücksetzen", exportJSON: "In Datei exportieren", exportImage: "Exportiere Bild...", export: "Speichern als...", copyToClipboard: "In Zwischenablage kopieren", save: "In aktueller Datei speichern", saveAs: "Speichern unter", load: "Öffnen", getShareableLink: "Teilbaren Link erhalten", close: "Schließen", selectLanguage: "Sprache auswählen", scrollBackToContent: "Zurück zum Inhalt", zoomIn: "Vergrößern", zoomOut: "Verkleinern", resetZoom: "Zoom zurücksetzen", menu: "Menü", done: "Fertig", edit: "Bearbeiten", undo: "Rückgängig machen", redo: "Wiederholen", resetLibrary: "Bibliothek zurücksetzen", createNewRoom: "Neuen Raum erstellen", fullScreen: "Vollbildanzeige", darkMode: "Dunkles Design", lightMode: "Helles Design", zenMode: "Zen-Modus", objectsSnapMode: "Einrasten an Objekten", exitZenMode: "Zen-Modus verlassen", cancel: "Abbrechen", clear: "Löschen", remove: "Entfernen", embed: "Einbettung umschalten", publishLibrary: "Veröffentlichen", submit: "Absenden", confirm: "Bestätigen", embeddableInteractionButton: "Klicken, um zu interagieren" }, r = { clearReset: "Dies wird die ganze Zeichenfläche löschen. Bist du dir sicher?", couldNotCreateShareableLink: "Konnte keinen teilbaren Link erstellen.", couldNotCreateShareableLinkTooBig: "Konnte keinen teilbaren Link erstellen: Die Zeichnung ist zu groß", couldNotLoadInvalidFile: "Ungültige Datei konnte nicht geladen werden", importBackendFailed: "Import vom Server ist fehlgeschlagen.", cannotExportEmptyCanvas: "Leere Zeichenfläche kann nicht exportiert werden.", couldNotCopyToClipboard: "Kopieren in die Zwischenablage fehlgeschlagen.", decryptFailed: "Daten konnten nicht entschlüsselt werden.", uploadedSecurly: "Der Upload wurde mit Ende-zu-Ende-Verschlüsselung gespeichert. Weder Excalidraw noch Dritte können den Inhalt einsehen.", loadSceneOverridePrompt: "Das Laden einer externen Zeichnung ersetzt den vorhandenen Inhalt. Möchtest du fortfahren?", collabStopOverridePrompt: `Das Stoppen der Sitzung wird deine vorherige, lokal gespeicherte Zeichnung überschreiben. Bist du dir sicher?
|
|
3
3
|
|
|
4
4
|
(Wenn du deine lokale Zeichnung behalten möchtest, schließe stattdessen den Browser-Tab.)`, errorAddingToLibrary: "Das Element konnte nicht zur Bibliothek hinzugefügt werden", errorRemovingFromLibrary: "Das Element konnte nicht aus der Bibliothek entfernt werden", confirmAddLibrary: "Dies fügt {{numShapes}} Form(en) zu deiner Bibliothek hinzu. Bist du dir sicher?", imageDoesNotContainScene: "Dieses Bild scheint keine Szenendaten zu enthalten. Hast Du das Einbetten der Szene während des Exports aktiviert?", cannotRestoreFromImage: "Die Zeichnung konnte aus dieser Bilddatei nicht wiederhergestellt werden", invalidSceneUrl: "Die Szene konnte nicht von der angegebenen URL importiert werden. Sie ist entweder fehlerhaft oder enthält keine gültigen Excalidraw JSON-Daten.", resetLibrary: "Dieses löscht deine Bibliothek. Bist du sicher?", removeItemsFromsLibrary: "{{count}} Element(e) aus der Bibliothek löschen?", invalidEncryptionKey: "Verschlüsselungsschlüssel muss 22 Zeichen lang sein. Die Live-Zusammenarbeit ist deaktiviert.", collabOfflineWarning: `Keine Internetverbindung verfügbar.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "./layers.
|
|
1
|
+
import "./layers.bOjyWNMD.js";
|
|
2
2
|
var e = { paste: "Pegar", pasteAsPlaintext: "Pegar coma texto sen formato", pasteCharts: "Pegar gráficos", selectAll: "Seleccionar todo", multiSelect: "Engadir elemento á selección", moveCanvas: "Mover o lenzo", cut: "Cortar", copy: "Copiar", copyAsPng: "Copiar no portapapeis como PNG", copyAsSvg: "Copiar no portapapeis como SVG", copyText: "Copia no portapapeis como texto", copySource: "", convertToCode: "", bringForward: "Traer cara adiante", sendToBack: "Enviar cara atrás", bringToFront: "Traer á fronte", sendBackward: "Enviar ao fondo", delete: "Borrar", copyStyles: "Copiar estilo", pasteStyles: "Pegar estilo", stroke: "Trazo", background: "Fondo", fill: "Recheo", strokeWidth: "Largo do trazo", strokeStyle: "Estilo do trazo", strokeStyle_solid: "Sólido", strokeStyle_dashed: "Liña de trazos", strokeStyle_dotted: "Liña de puntos", sloppiness: "Estilo de trazo", opacity: "Opacidade", textAlign: "Aliñar texto", edges: "Bordos", sharp: "Agudo", round: "Redondo", arrowheads: "Puntas de frecha", arrowhead_none: "Ningunha", arrowhead_arrow: "Frecha", arrowhead_bar: "Barra", arrowhead_circle: "", arrowhead_circle_outline: "", arrowhead_triangle: "Triángulo", arrowhead_triangle_outline: "", arrowhead_diamond: "", arrowhead_diamond_outline: "", fontSize: "Tamaño da fonte", fontFamily: "Tipo de fonte", addWatermark: 'Engadir "Feito con Excalidraw"', handDrawn: "Debuxado a man", normal: "Normal", code: "Código", small: "Pequeno", medium: "Mediano", large: "Grande", veryLarge: "Moi grande", solid: "Sólido", hachure: "Folleto", zigzag: "Zigzag", crossHatch: "Raiado transversal", thin: "Estreito", bold: "Groso", left: "Esquerda", center: "Centrado", right: "Dereita", extraBold: "Moi groso", architect: "Arquitecto", artist: "Artista", cartoonist: "Caricatura", fileTitle: "Nome do arquivo", colorPicker: "Selector de cor", canvasColors: "Usado en lenzo", canvasBackground: "Fondo do lenzo", drawingCanvas: "Lenzo de debuxo", layers: "Capas", actions: "Accións", language: "Idioma", liveCollaboration: "Colaboración en directo...", duplicateSelection: "Duplicar", untitled: "Sen título", name: "Nome", yourName: "O teu nome", madeWithExcalidraw: "Feito con Excalidraw", group: "Agrupar selección", ungroup: "Desagrupar selección", collaborators: "Colaboradores", showGrid: "Mostrar cuadrícula", addToLibrary: "Engadir á biblioteca", removeFromLibrary: "Eliminar da biblioteca", libraryLoadingMessage: "Cargando biblioteca…", libraries: "Explorar bibliotecas", loadingScene: "Cargando escena…", align: "Aliñamento", alignTop: "Aliñamento superior", alignBottom: "Aliñamento inferior", alignLeft: "Aliñar a esquerda", alignRight: "Aliñar a dereita", centerVertically: "Centrar verticalmente", centerHorizontally: "Centrar horizontalmente", distributeHorizontally: "Distribuír horizontalmente", distributeVertically: "Distribuír verticalmente", flipHorizontal: "Virar horizontalmente", flipVertical: "Virar verticalmente", viewMode: "Modo de visualización", share: "Compartir", showStroke: "Mostrar selector de cores do trazo", showBackground: "Mostrar selector de cores do fondo", toggleTheme: "Alternar tema", personalLib: "Biblioteca Persoal", excalidrawLib: "Biblioteca Excalidraw", decreaseFontSize: "Diminuír tamaño da fonte", increaseFontSize: "Aumentar o tamaño da fonte", unbindText: "Desvincular texto", bindText: "Ligar o texto ao contedor", createContainerFromText: "Envolver o texto nun contedor", link: { edit: "Editar ligazón", editEmbed: "", create: "Crear ligazón", createEmbed: "", label: "Ligazón", labelEmbed: "", empty: "" }, lineEditor: { edit: "Editar liña", exit: "Saír do editor de liñas" }, elementLock: { lock: "Bloquear", unlock: "Desbloquear", lockAll: "Bloquear todo", unlockAll: "Desbloquear todo" }, statusPublished: "Publicado", sidebarLock: "Manter a barra lateral aberta", selectAllElementsInFrame: "", removeAllElementsFromFrame: "", eyeDropper: "", textToDiagram: "", prompt: "" }, a = { noItems: "Aínda non hai elementos engadidos...", hint_emptyLibrary: "Seleccione un elemento no lenzo para engadilo aquí, ou instale unha biblioteca dende o repositorio público, como se detalla a continuación.", hint_emptyPrivateLibrary: "Seleccione un elemento do lenzo para engadilo aquí." }, o = { clearReset: "Limpar o lenzo", exportJSON: "Exportar a arquivo", exportImage: "Exportar imaxe...", export: "Gardar en...", copyToClipboard: "Copiar ao portapapeis", save: "Gardar no ficheiro actual", saveAs: "Gardar como", load: "Abrir", getShareableLink: "Obter unha ligazón que se poida compartir", close: "Pechar", selectLanguage: "Seleccionar idioma", scrollBackToContent: "Volver ao contido", zoomIn: "Ampliar", zoomOut: "Reducir", resetZoom: "Reiniciar zoom", menu: "Menú", done: "Feito", edit: "Editar", undo: "Desfacer", redo: "Refacer", resetLibrary: "Reiniciar biblioteca", createNewRoom: "Crear nova sala", fullScreen: "Pantalla completa", darkMode: "Modo escuro", lightMode: "Modo claro", zenMode: "Modo zen", objectsSnapMode: "", exitZenMode: "Saír do modo zen", cancel: "Cancelar", clear: "Limpar", remove: "Eliminar", embed: "", publishLibrary: "Publicar", submit: "Enviar", confirm: "Confirmar", embeddableInteractionButton: "Faga clic para interactuar" }, r = { clearReset: "Isto limpará todo o lenzo. Estás seguro?", couldNotCreateShareableLink: "Non se puido crear unha ligazón para compartir.", couldNotCreateShareableLinkTooBig: "Non se puido crear a ligazón para compartir: a escena é demasiado grande", couldNotLoadInvalidFile: "Non se puido cargar o ficheiro non válido", importBackendFailed: "A importación dende o backend fallou.", cannotExportEmptyCanvas: "Non se pode exportar un lenzo baleiro.", couldNotCopyToClipboard: "Non se puido copiar ao portapapeis.", decryptFailed: "Non se poideron descifrar os datos.", uploadedSecurly: "A carga foi asegurada con cifrado de extremo a extremo, o que significa que o servidor de Excalidraw e terceiros non poden ler o contido.", loadSceneOverridePrompt: "A carga dun debuxo externo substituirá o contido existente. Desexa continuar?", collabStopOverridePrompt: `Deter a sesión, sobrescribirá o seu debuxo local previamente almacenado. Está seguro?
|
|
3
3
|
|
|
4
4
|
(Se quere manter o seu debuxo local, simplemente peche a lapela do navegador.)`, errorAddingToLibrary: "Non se puido engadir o elemento á biblioteca", errorRemovingFromLibrary: "Non se puido eliminar o elemento da biblioteca", confirmAddLibrary: "Isto engadirá {{numShapes}} forma(s) a túa biblioteca. Estás seguro?", imageDoesNotContainScene: "Esta imaxe non parece conter ningún dato da escena. Activou a inserción de escenas durante a exportación?", cannotRestoreFromImage: "Non se puido restaurar a escena dende este arquivo de imaxe", invalidSceneUrl: "Non se puido importar a escena dende a URL proporcionada. Ou ben está malformada ou non contén un JSON con información válida para Excalidraw.", resetLibrary: "Isto limpará a súa biblioteca. Está seguro?", removeItemsFromsLibrary: "Eliminar {{count}} elemento(s) da biblioteca?", invalidEncryptionKey: "A clave de cifrado debe ter 22 caracteres. A colaboración en directo está desactivada.", collabOfflineWarning: `Non hai conexión a Internet dispoñible.
|
|
@@ -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.eOVFoPB6.js"),dv=require("./layers.Bu5dgBb_.js"),gv=require("./layers.BeS3PtsD.js");require("./layers.Bq0FGir_.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 P=require("lodash-es"),J=require("./layers.Cyzu9PKQ.js"),k=require("./layers.BLd2spTm.js"),u=require("./layers.CEResW_R.js"),i=require("./layers.DbF4xVBE.js"),j=require("./layers.noEAcBug.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.BdpB4FQH.js"),i=require("./layers.eOVFoPB6.js"),j=require("./layers.BeS3PtsD.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;
|