@layers-app/editor 2.3.10 → 2.3.12
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 +1 -1
- package/dist/index.js +1 -1
- package/dist/{layers.ClYHo0TY.js → layers.0O3-FRBZ.js} +1 -1
- package/dist/{layers.XbcHVdwV.js → layers.2sb_GTkA.js} +1 -1
- package/dist/{layers.Bi93sElK.js → layers.3IDQeSjb.js} +1 -1
- package/dist/{layers.BFY_JR5V.js → layers.3LPsfBkO.js} +1 -1
- package/dist/{layers.CEUdVM3g.js → layers.4KIVBy0z.js} +1 -1
- package/dist/{layers.CktEIPts.js → layers.4zXwB2Op.js} +1 -1
- package/dist/{layers.DDBlH5A3.js → layers.5owScOy8.js} +1 -1
- package/dist/{layers.qrbVHsKx.js → layers.7B0HC_9L.js} +1 -1
- package/dist/{layers.CV6tGOjx.js → layers.8Z5KgzQ9.js} +3 -3
- package/dist/{layers.azzXMZET.js → layers.B2c8eFFw.js} +1 -1
- package/dist/{layers.NS8jODho.js → layers.B4KpAA00.js} +1 -1
- package/dist/{layers.BO206iYM.js → layers.B4pBNrAq.js} +1 -1
- package/dist/{layers.CWlOzi-L.js → layers.B8JwBWKp.js} +1 -1
- package/dist/{layers.CCX7nigz.js → layers.BA0dGi09.js} +1 -1
- package/dist/{layers.BIrjwfCP.js → layers.BAGG2a1n.js} +1 -1
- package/dist/{layers.B5BP7fCq.js → layers.BB2Yehfv.js} +1 -1
- package/dist/{layers.COvUKpdd.js → layers.BD1lEmX_.js} +4 -4
- package/dist/{layers.Dg-dKYcN.js → layers.BDxQ8zdI.js} +1 -1
- package/dist/{layers.x-FpjaWm.js → layers.BEpIjP7o.js} +3 -3
- package/dist/{layers.D8YqRWkt.js → layers.BFO6Jir4.js} +1 -1
- package/dist/{layers.DVOf5yZz.js → layers.BGy3qA9M.js} +1 -1
- package/dist/{layers.D1gPE2zz.js → layers.BHWd0ddu.js} +1 -1
- package/dist/{layers.DjWHcFcs.js → layers.BKydLdFf.js} +1 -1
- package/dist/{layers.BYOOYcsK.js → layers.BLI_Ey4m.js} +4 -4
- package/dist/{layers.Dk0jvrr8.js → layers.BMyH-wc1.js} +1 -1
- package/dist/{layers.bSzdJcWI.js → layers.BQDpcgEd.js} +1 -1
- package/dist/{layers.C3xwNcMa.js → layers.BQtK68Hw.js} +1 -1
- package/dist/{layers.GHR9SEIW.js → layers.BRHC_Dk7.js} +1 -1
- package/dist/{layers.DpQ5tiql.js → layers.BSp-hm9Q.js} +1 -1
- package/dist/{layers.z68P9CQZ.js → layers.BTUtpBU4.js} +1 -1
- package/dist/{layers.BkUIeRlq.js → layers.BX2eWHsQ.js} +1 -1
- package/dist/{layers.Bq8YqIr5.js → layers.BXZ3khmo.js} +1 -1
- package/dist/{layers.ByK6WOqm.js → layers.BY9NctrU.js} +1 -1
- package/dist/{layers.BaYGF-zf.js → layers.BYWZZq5S.js} +1 -1
- package/dist/{layers.Zez1ohmz.js → layers.B_-1Q2jb.js} +1 -1
- package/dist/{layers.CiHML8EF.js → layers.B_UH3ASv.js} +1 -1
- package/dist/{layers.D9cDFcNb.js → layers.BaEueWAS.js} +1 -1
- package/dist/{layers.BaOd9W-0.js → layers.Bc3OZyny.js} +1 -1
- package/dist/layers.BemWc8B8.js +6 -0
- package/dist/{layers.CJRKcldM.js → layers.Bfzs_tVM.js} +1 -1
- package/dist/{layers.B3zrhmHu.js → layers.Bg5A6nuN.js} +1 -1
- package/dist/{layers.CpvkxFWq.js → layers.Bl9JaWxm.js} +1 -1
- package/dist/{layers.Dc10a3fD.js → layers.BlAa47AS.js} +1 -1
- package/dist/{layers.6QRi4NLi.js → layers.Bobi_AGl.js} +8 -8
- package/dist/{layers.CG03tavo.js → layers.BpJvpN15.js} +2 -2
- package/dist/{layers.Dnbs4QZL.js → layers.BqYpYL40.js} +1 -1
- package/dist/{layers.Dc5gTHPp.js → layers.BsE1TyEo.js} +1 -1
- package/dist/{layers.BP5te3x1.js → layers.Bs_ZCJJy.js} +1 -1
- package/dist/{layers.BOsJpH6y.js → layers.Bu6RuN9E.js} +1 -1
- package/dist/{layers.8BFPj1Zl.js → layers.Buz3B3zM.js} +1 -1
- package/dist/{layers.vy8NFhom.js → layers.Bv8I5KSG.js} +1 -1
- package/dist/{layers.B3YtCgk_.js → layers.ByIHNzoj.js} +1 -1
- package/dist/{layers.BOchQXf7.js → layers.Bz6rVugG.js} +1 -1
- package/dist/{layers.D2Jam9h8.js → layers.C-4JO58G.js} +1 -1
- package/dist/{layers.Bnnaxson.js → layers.C-zI2Obp.js} +1 -1
- package/dist/{layers.bi5Shl8A.js → layers.C0OAsY-I.js} +1 -1
- package/dist/{layers.B9Z-zI6n.js → layers.C1zAs9hB.js} +1 -1
- package/dist/{layers.CehoDK5n.js → layers.C2D7uTFz.js} +1 -1
- package/dist/{layers.BCNCNDhI.js → layers.C2omihpx.js} +1 -1
- package/dist/{layers.CnTJItuj.js → layers.C5EJPB6O.js} +1 -1
- package/dist/{layers.CC72_79_.js → layers.C64I141Z.js} +1 -1
- package/dist/{layers.BLrt0gXk.js → layers.C6GdUuHC.js} +1 -1
- package/dist/{layers.Bx84W2fH.js → layers.C7LMoTQo.js} +3 -3
- package/dist/{layers.CxIzuTqb.js → layers.CAOxJlI1.js} +2 -2
- package/dist/{layers.QenkY9FD.js → layers.CBIdNLSn.js} +1 -1
- package/dist/{layers.CrfrEXCR.js → layers.CBnMO5ST.js} +1 -1
- package/dist/{layers.mnhKnUml.js → layers.CC8XjKCB.js} +1 -1
- package/dist/{layers.BsHFiRQg.js → layers.CFl5zk9L.js} +1 -1
- package/dist/{layers.Csy7Lc80.js → layers.CG_Q0mMY.js} +1 -1
- package/dist/{layers.VeF0wRCD.js → layers.CGfCmkvg.js} +1 -1
- package/dist/{layers.i9JJdvxS.js → layers.CHIkFY0y.js} +1 -1
- package/dist/{layers.Cb5kZO6f.js → layers.CIlWxVMW.js} +1 -1
- package/dist/{layers.DIWDV1vh.js → layers.CJ8Oujdb.js} +4 -4
- package/dist/{layers.CkwtVd7V.js → layers.CJo31SmA.js} +1 -1
- package/dist/{layers.lr-BtFYg.js → layers.CMddYMVJ.js} +1 -1
- package/dist/{layers._g0ApcTV.js → layers.CNaL1x0J.js} +1 -1
- package/dist/{layers.S1kb8JuA.js → layers.CORtv219.js} +1 -1
- package/dist/{layers.CLQs717K.js → layers.CTfz3hoy.js} +1 -1
- package/dist/{layers.DD3uyUpH.js → layers.CTqcNt91.js} +1 -1
- package/dist/{layers.BnCgXFcW.js → layers.CW078aZK.js} +1 -1
- package/dist/{layers.BylsF81F.js → layers.CY5cqeLD.js} +1 -1
- package/dist/{layers.DT6Ynk9f.js → layers.CYLgIRFh.js} +1 -1
- package/dist/{layers.Xsh6bW2d.js → layers.C_2-WB1s.js} +1 -1
- package/dist/{layers.BDP-0LJA.js → layers.Caxxk65W.js} +1 -1
- package/dist/{layers.CG2QY3F7.js → layers.CfRaEYOR.js} +1 -1
- package/dist/{layers.CJWbGke2.js → layers.CfsCKBHR.js} +1 -1
- package/dist/{layers.BOZi7OqH.js → layers.Cha2iasI.js} +3 -3
- package/dist/{layers.D0SsqC81.js → layers.CjTWujX3.js} +1 -1
- package/dist/{layers.CTsbqmBA.js → layers.Ck6Nb5N8.js} +1 -1
- package/dist/{layers.taUWiYjt.js → layers.ClWalyAt.js} +5 -5
- package/dist/{layers.C3vXySub.js → layers.ClwIcw55.js} +3 -3
- package/dist/{layers.f7R7ehLp.js → layers.Cn7naYxC.js} +1 -1
- package/dist/{layers.BVFcM25I.js → layers.CnF6ZIZw.js} +1 -1
- package/dist/{layers.ydzdpSpt.js → layers.CnIRgAdi.js} +3 -3
- package/dist/{layers.DKYhZ8dw.js → layers.CnjFUZNw.js} +3 -3
- package/dist/{layers.CKCEmfZQ.js → layers.CqLwRUUq.js} +1 -1
- package/dist/{layers.BZMZ6n-z.js → layers.CsKILctu.js} +1 -1
- package/dist/{layers.CLHj_t4U.js → layers.CtZWufNw.js} +2 -2
- package/dist/{layers.DuJN19Pz.js → layers.CuNJVHSQ.js} +2 -2
- package/dist/{layers.5a3rwzp2.js → layers.Cus2z7bi.js} +1 -1
- package/dist/{layers.Cll32lBK.js → layers.CutMQdp5.js} +1 -1
- package/dist/{layers.CW937MCb.js → layers.CxerfuSn.js} +1 -1
- package/dist/{layers.4qGsfALV.js → layers.CyWwOsh9.js} +1 -1
- package/dist/layers.Cyqdoon-.js +1 -0
- package/dist/{layers.DpndP1bM.js → layers.CzExtYT5.js} +1 -1
- package/dist/{layers.BnEyhVXU.js → layers.D0J8nxCz.js} +1 -1
- package/dist/{layers.S8PU2oMp.js → layers.D0T1g-RM.js} +1 -1
- package/dist/{layers.DwW00JCs.js → layers.D1ARsCR7.js} +1 -1
- package/dist/{layers.D0k0W4YP.js → layers.D1iKuP7_.js} +1 -1
- package/dist/{layers.BsFFd-w_.js → layers.D3mmz0vH.js} +2 -2
- package/dist/{layers.BXp6PRpE.js → layers.D3wFoY9B.js} +1 -1
- package/dist/{layers.B_YSrvpx.js → layers.D5O_yOnU.js} +1 -1
- package/dist/layers.D61oDZH6.js +858 -0
- package/dist/{layers.CT0Ice3Z.js → layers.D7fp8sJx.js} +2 -2
- package/dist/{layers.1QVh13AA.js → layers.D7sjiHkQ.js} +1 -1
- package/dist/{layers.Dicin3Np.js → layers.D7vA7WrA.js} +1 -1
- package/dist/{layers.hA3R0N8L.js → layers.D7zi7H5X.js} +1 -1
- package/dist/{layers.DkSQglh8.js → layers.D88KSUt4.js} +1 -1
- package/dist/{layers.ByJrqj3Y.js → layers.D8DmlsAH.js} +3 -3
- package/dist/{layers.B6qEIvH9.js → layers.DAE1VaH4.js} +1 -1
- package/dist/{layers.DVEibxHb.js → layers.DAgYJbie.js} +4 -4
- package/dist/{layers.CQOyGBYo.js → layers.DDAIII_d.js} +1 -1
- package/dist/{layers.DZfVhei8.js → layers.DEbCrXKF.js} +1 -1
- package/dist/{layers.Bh8YzXoY.js → layers.DGHPF6Hf.js} +1 -1
- package/dist/{layers.ZFal4quT.js → layers.DHDfni8f.js} +1 -1
- package/dist/{layers.DIBCMyiS.js → layers.DIw20-nT.js} +2 -2
- package/dist/{layers.BymwGBqO.js → layers.DKB7yQ9q.js} +1 -1
- package/dist/{layers.CxAauY3E.js → layers.DMj-p3V1.js} +3 -3
- package/dist/{layers.DqRq5aFa.js → layers.DOYMlShV.js} +1 -1
- package/dist/{layers.CAbLAGNX.js → layers.DOySFg_-.js} +1 -1
- package/dist/{layers.Cv0KWKJb.js → layers.DRLFk_-8.js} +1 -1
- package/dist/{layers.aghH-iVf.js → layers.DT-T1S-m.js} +3 -3
- package/dist/{layers.BcmsT1DC.js → layers.DUPg9blY.js} +1 -1
- package/dist/{layers.B6gURU40.js → layers.DXdFBKoX.js} +1 -1
- package/dist/{layers.B8CuNqI5.js → layers.DZLj90yT.js} +1 -1
- package/dist/{layers.B1NIW0WO.js → layers.DZbSpRlr.js} +1 -1
- package/dist/{layers.CDBaA-bH.js → layers.Db-riCs5.js} +1 -1
- package/dist/{layers.vGKbbCM_.js → layers.DbiG24Wt.js} +1 -1
- package/dist/{layers.Dj4ldODS.js → layers.Ddr1wCwP.js} +1 -1
- package/dist/{layers.BEBNB8ju.js → layers.Dfh72vol.js} +1 -1
- package/dist/{layers.BHadKDMs.js → layers.DgzPyXSw.js} +1 -1
- package/dist/{layers.DTqpY_nv.js → layers.DjV65BJC.js} +1 -1
- package/dist/{layers.yDPFFO_z.js → layers.Dkv8qgY9.js} +1 -1
- package/dist/{layers.DLx2gnMp.js → layers.DlIcO8c9.js} +1 -1
- package/dist/{layers.G-9w4GU6.js → layers.Dmx9fl92.js} +1 -1
- package/dist/{layers.BIUHMNsU.js → layers.Do83yTWh.js} +2 -2
- package/dist/{layers.CGOwUkPA.js → layers.Dp5TtFA5.js} +1 -1
- package/dist/{layers.CFcCkN56.js → layers.DrXV81R5.js} +24 -24
- package/dist/{layers.DYwDIDxe.js → layers.DrmIDt8b.js} +1 -1
- package/dist/{layers.DvWsFKIU.js → layers.Ds8ZE06L.js} +1 -1
- package/dist/{layers.B9i6t8Ln.js → layers.DsETQHnf.js} +2 -2
- package/dist/{layers.DX-wegzx.js → layers.DsRaXBhL.js} +1 -1
- package/dist/{layers.CqPFISWc.js → layers.Dtk-KXk8.js} +2 -2
- package/dist/{layers.QA0CNqv3.js → layers.DtzqEr-c.js} +1 -1
- package/dist/{layers.qjCV6YvA.js → layers.DvnrMIGG.js} +1 -1
- package/dist/{layers.DLFiPFyn.js → layers.DwK10g6l.js} +1 -1
- package/dist/layers.Dwhlgzai.js +8 -0
- package/dist/{layers.WCQiVEOC.js → layers.Dwm8eJIt.js} +1 -1
- package/dist/{layers.DwWPQ8CT.js → layers.DwueRi-F.js} +1 -1
- package/dist/{layers.DqaUviR3.js → layers.DxEDwmZI.js} +7 -7
- package/dist/{layers.CJCQ9lu9.js → layers.DxTKnKbT.js} +1 -1
- package/dist/{layers.Di3qnXtM.js → layers.DxoQKYPE.js} +1 -1
- package/dist/{layers.DqDEgvBD.js → layers.EOxonjVb.js} +12685 -12326
- package/dist/{layers.Bq0f2WI9.js → layers.F2gvx_zB.js} +1 -1
- package/dist/{layers.VHv98UVF.js → layers.GhSSQDvd.js} +1 -1
- package/dist/{layers.DhfoNLBi.js → layers.H3Q2IKLc.js} +1 -1
- package/dist/{layers.Wt_--EHp.js → layers.JkEBimEa.js} +1 -1
- package/dist/{layers.CN2UVhZ7.js → layers.Jms5jRad.js} +1 -1
- package/dist/{layers.BNKd3H9n.js → layers.K0gicHf2.js} +1 -1
- package/dist/{layers.BJHwFicL.js → layers.KOnKRo8X.js} +1 -1
- package/dist/{layers.BdO_8_YI.js → layers.NSK_Z1G_.js} +1 -1
- package/dist/{layers.DcGogG6o.js → layers.NeWc0ZxR.js} +1 -1
- package/dist/{layers.Dls50V4O.js → layers.NthejCrn.js} +1 -1
- package/dist/{layers.Aal4TAfE.js → layers.NvAQbmbJ.js} +1 -1
- package/dist/{layers.C6fPG_-8.js → layers.OCokYz-S.js} +1 -1
- package/dist/{layers.7fpuuw8S.js → layers.PyF3tjp1.js} +3 -3
- package/dist/{layers.Dv1ajCak.js → layers.QVRKX5S7.js} +3 -3
- package/dist/{layers.BY07G5tu.js → layers.R2gUbE9R.js} +1 -1
- package/dist/{layers.DjRhjDf9.js → layers.R6TXVx7N.js} +1 -1
- package/dist/{layers.JRRooqGQ.js → layers.R9Y1P537.js} +1 -1
- package/dist/{layers.BXbPPq5F.js → layers.SLL5h9hL.js} +1 -1
- package/dist/{layers.CgRPV9rq.js → layers.SlFhrxFV.js} +1 -1
- package/dist/{layers.BJxfMUhy.js → layers.VLET65tz.js} +1 -1
- package/dist/{layers.3-oJtWCp.js → layers.WySUMLPX.js} +1 -1
- package/dist/{layers.53a5Efoy.js → layers.XEgGZSot.js} +1 -1
- package/dist/{layers.C_z8xw64.js → layers.XKqoCpuF.js} +1 -1
- package/dist/{layers.DRkswVpd.js → layers._0jzzj-K.js} +1 -1
- package/dist/{layers.D7Ze1zmH.js → layers.aN8OVNWa.js} +1 -1
- package/dist/{layers.Ba79ToEh.js → layers.bWJkjOIt.js} +1 -1
- package/dist/{layers.DlIlLTRV.js → layers.bvJcepmB.js} +1 -1
- package/dist/{layers.D9bX2-Be.js → layers.e5W9wfVU.js} +1 -1
- package/dist/{layers.Cyo4080N.js → layers.eCvoYG9O.js} +1 -1
- package/dist/{layers.BAA_YdeG.js → layers.elQiEwQl.js} +1 -1
- package/dist/{layers.BWgga4M9.js → layers.g4Y5llZS.js} +1 -1
- package/dist/{layers.Bps_BnAk.js → layers.gsBQwoaK.js} +1 -1
- package/dist/{layers.COVZkXxy.js → layers.i25w6RWM.js} +1 -1
- package/dist/{layers.BV4xbcz7.js → layers.l4EBNd8k.js} +1 -1
- package/dist/{layers.Cf-ASTHY.js → layers.mUQJbEHG.js} +1 -1
- package/dist/{layers.pq3IzlZn.js → layers.mvhQcZAo.js} +1 -1
- package/dist/{layers.BzijQWvd.js → layers.nx5MS4wR.js} +1 -1
- package/dist/{layers.e0SP42Yx.js → layers.qeJp5C5y.js} +1 -1
- package/dist/{layers.5vMGWKvn.js → layers.t1JUEpzj.js} +1 -1
- package/dist/{layers.BfxxDit5.js → layers.uIYwLpVy.js} +1 -1
- package/dist/{layers.BWt5cfNk.js → layers.vR3XCB3u.js} +1 -1
- package/dist/layers.wRtz-tqb.js +1 -0
- package/dist/{layers.Cd3ajdmu.js → layers.xMQmXRll.js} +1 -1
- package/package.json +85 -85
- package/dist/layers.Bx9wIo6X.js +0 -6
- package/dist/layers.CILA6g2e.js +0 -1
- package/dist/layers.CVXG2l5_.js +0 -8
- package/dist/layers.DLfj_H8h.js +0 -855
- package/dist/layers.DuHfNtTs.js +0 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const T=require("./layers.
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const T=require("./layers.BX2eWHsQ.js"),d=require("./layers.DAgYJbie.js");require("lodash-es");const $=require("./layers.Cyzu9PKQ.js"),H=require("./layers.BLd2spTm.js");require("./layers.Dxr2o7ON.js");require("lodash-es/memoize.js");require("lodash-es/merge.js");require("lodash-es/isEmpty.js");const _=require("./layers.Ddr1wCwP.js");let S=0;const C=function(i,r,t,l,p){const c=function(e){switch(e){case p.db.relationType.AGGREGATION:return"aggregation";case p.db.relationType.EXTENSION:return"extension";case p.db.relationType.COMPOSITION:return"composition";case p.db.relationType.DEPENDENCY:return"dependency";case p.db.relationType.LOLLIPOP:return"lollipop"}};r.points=r.points.filter(e=>!Number.isNaN(e.y));const o=r.points,h=_.line().x(function(e){return e.x}).y(function(e){return e.y}).curve(d.curveBasis),n=i.append("path").attr("d",h(o)).attr("id","edge"+S).attr("class","relation");let a="";l.arrowMarkerAbsolute&&(a=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,a=a.replace(/\(/g,"\\("),a=a.replace(/\)/g,"\\)")),t.relation.lineType==1&&n.attr("class","relation dashed-line"),t.relation.lineType==10&&n.attr("class","relation dotted-line"),t.relation.type1!=="none"&&n.attr("marker-start","url("+a+"#"+c(t.relation.type1)+"Start)"),t.relation.type2!=="none"&&n.attr("marker-end","url("+a+"#"+c(t.relation.type2)+"End)");let f,u;const x=r.points.length;let w=d.utils.calcLabelPosition(r.points);f=w.x,u=w.y;let y,m,b,k;if(x%2!==0&&x>1){let e=d.utils.calcCardinalityPosition(t.relation.type1!=="none",r.points,r.points[0]),s=d.utils.calcCardinalityPosition(t.relation.type2!=="none",r.points,r.points[x-1]);d.log$1.debug("cardinality_1_point "+JSON.stringify(e)),d.log$1.debug("cardinality_2_point "+JSON.stringify(s)),y=e.x,m=e.y,b=s.x,k=s.y}if(t.title!==void 0){const e=i.append("g").attr("class","classLabel"),s=e.append("text").attr("class","label").attr("x",f).attr("y",u).attr("fill","red").attr("text-anchor","middle").text(t.title);window.label=s;const g=s.node().getBBox();e.insert("rect",":first-child").attr("class","box").attr("x",g.x-l.padding/2).attr("y",g.y-l.padding/2).attr("width",g.width+l.padding).attr("height",g.height+l.padding)}d.log$1.info("Rendering relation "+JSON.stringify(t)),t.relationTitle1!==void 0&&t.relationTitle1!=="none"&&i.append("g").attr("class","cardinality").append("text").attr("class","type1").attr("x",y).attr("y",m).attr("fill","black").attr("font-size","6").text(t.relationTitle1),t.relationTitle2!==void 0&&t.relationTitle2!=="none"&&i.append("g").attr("class","cardinality").append("text").attr("class","type2").attr("x",b).attr("y",k).attr("fill","black").attr("font-size","6").text(t.relationTitle2),S++},A=function(i,r,t,l){d.log$1.debug("Rendering class ",r,t);const p=r.id,c={id:p,label:r.id,width:0,height:0},o=i.append("g").attr("id",l.db.lookUpDomId(p)).attr("class","classGroup");let h;r.link?h=o.append("svg:a").attr("xlink:href",r.link).attr("target",r.linkTarget).append("text").attr("y",t.textHeight+t.padding).attr("x",0):h=o.append("text").attr("y",t.textHeight+t.padding).attr("x",0);let n=!0;r.annotations.forEach(function(s){const g=h.append("tspan").text("«"+s+"»");n||g.attr("dy",t.textHeight),n=!1});let a=v(r);const f=h.append("tspan").text(a).attr("class","title");n||f.attr("dy",t.textHeight);const u=h.node().getBBox().height;let x,w,y;if(r.members.length>0){x=o.append("line").attr("x1",0).attr("y1",t.padding+u+t.dividerMargin/2).attr("y2",t.padding+u+t.dividerMargin/2);const s=o.append("text").attr("x",t.padding).attr("y",u+t.dividerMargin+t.textHeight).attr("fill","white").attr("class","classText");n=!0,r.members.forEach(function(g){N(s,g,n,t),n=!1}),w=s.node().getBBox()}if(r.methods.length>0){y=o.append("line").attr("x1",0).attr("y1",t.padding+u+t.dividerMargin+w.height).attr("y2",t.padding+u+t.dividerMargin+w.height);const s=o.append("text").attr("x",t.padding).attr("y",u+2*t.dividerMargin+w.height+t.textHeight).attr("fill","white").attr("class","classText");n=!0,r.methods.forEach(function(g){N(s,g,n,t),n=!1})}const m=o.node().getBBox();var b=" ";r.cssClasses.length>0&&(b=b+r.cssClasses.join(" "));const e=o.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",m.width+2*t.padding).attr("height",m.height+t.padding+.5*t.dividerMargin).attr("class",b).node().getBBox().width;return h.node().childNodes.forEach(function(s){s.setAttribute("x",(e-s.getBBox().width)/2)}),r.tooltip&&h.insert("title").text(r.tooltip),x&&x.attr("x2",e),y&&y.attr("x2",e),c.width=e,c.height=m.height+t.padding+.5*t.dividerMargin,c},v=function(i){let r=i.id;return i.type&&(r+="<"+d.parseGenericTypes(i.type)+">"),r},W=function(i,r,t,l){d.log$1.debug("Rendering note ",r,t);const p=r.id,c={id:p,text:r.text,width:0,height:0},o=i.append("g").attr("id",p).attr("class","classGroup");let h=o.append("text").attr("y",t.textHeight+t.padding).attr("x",0);const n=JSON.parse(`"${r.text}"`).split(`
|
|
2
2
|
`);n.forEach(function(x){d.log$1.debug(`Adding line: ${x}`),h.append("tspan").text(x).attr("class","title").attr("dy",t.textHeight)});const a=o.node().getBBox(),u=o.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",a.width+2*t.padding).attr("height",a.height+n.length*t.textHeight+t.padding+.5*t.dividerMargin).node().getBBox().width;return h.node().childNodes.forEach(function(x){x.setAttribute("x",(u-x.getBBox().width)/2)}),c.width=u,c.height=a.height+n.length*t.textHeight+t.padding+.5*t.dividerMargin,c},N=function(i,r,t,l){const{displayText:p,cssStyle:c}=r.getDisplayDetails(),o=i.append("tspan").attr("x",l.padding).text(p);c!==""&&o.attr("style",r.cssStyle),t||o.attr("dy",l.textHeight)},M={getClassTitleString:v,drawClass:A,drawEdge:C,drawNote:W};let B={};const E=20,L=function(i){const r=Object.entries(B).find(t=>t[1].label===i);if(r)return r[0]},q=function(i){i.append("defs").append("marker").attr("id","extensionStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),i.append("defs").append("marker").attr("id","extensionEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z"),i.append("defs").append("marker").attr("id","compositionStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id","compositionEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id","aggregationStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id","aggregationEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id","dependencyStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},G=function(i,r,t,l){const p=d.getConfig().class;B={},d.log$1.info("Rendering diagram "+i);const c=d.getConfig().securityLevel;let o;c==="sandbox"&&(o=d.select("#i"+r));const h=c==="sandbox"?d.select(o.nodes()[0].contentDocument.body):d.select("body"),n=h.select(`[id='${r}']`);q(n);const a=new H.Graph({multigraph:!0});a.setGraph({isMultiGraph:!0}),a.setDefaultEdgeLabel(function(){return{}});const f=l.db.getClasses(),u=Object.keys(f);for(const e of u){const s=f[e],g=M.drawClass(n,s,p,l);B[g.id]=g,a.setNode(g.id,g),d.log$1.info("Org height: "+g.height)}l.db.getRelations().forEach(function(e){d.log$1.info("tjoho"+L(e.id1)+L(e.id2)+JSON.stringify(e)),a.setEdge(L(e.id1),L(e.id2),{relation:e},e.title||"DEFAULT")}),l.db.getNotes().forEach(function(e){d.log$1.debug(`Adding note: ${JSON.stringify(e)}`);const s=M.drawNote(n,e,p,l);B[s.id]=s,a.setNode(s.id,s),e.class&&e.class in f&&a.setEdge(e.id,L(e.class),{relation:{id1:e.id,id2:e.class,relation:{type1:"none",type2:"none",lineType:10}}},"DEFAULT")}),$.layout(a),a.nodes().forEach(function(e){e!==void 0&&a.node(e)!==void 0&&(d.log$1.debug("Node "+e+": "+JSON.stringify(a.node(e))),h.select("#"+(l.db.lookUpDomId(e)||e)).attr("transform","translate("+(a.node(e).x-a.node(e).width/2)+","+(a.node(e).y-a.node(e).height/2)+" )"))}),a.edges().forEach(function(e){e!==void 0&&a.edge(e)!==void 0&&(d.log$1.debug("Edge "+e.v+" -> "+e.w+": "+JSON.stringify(a.edge(e))),M.drawEdge(n,a.edge(e),a.edge(e).relation,p,l))});const y=n.node().getBBox(),m=y.width+E*2,b=y.height+E*2;d.configureSvgSize(n,b,m,p.useMaxWidth);const k=`${y.x-E} ${y.y-E} ${m} ${b}`;d.log$1.debug(`viewBox ${k}`),n.attr("viewBox",k)},I={draw:G},O={parser:T.parser$1,db:T.db,renderer:I,styles:T.styles,init:i=>{i.class||(i.class={}),i.class.arrowMarkerAbsolute=i.arrowMarkerAbsolute,T.db.clear()}};exports.diagram=O;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const m=require("./layers.CC72_79_.js"),t=require("./layers.DVEibxHb.js");require("lodash-es");const z=require("./layers.Cyzu9PKQ.js"),T=require("./layers.BLd2spTm.js");require("./layers.Dxr2o7ON.js");require("lodash-es/memoize.js");require("lodash-es/merge.js");require("lodash-es/isEmpty.js");const L=require("./layers.Dj4ldODS.js"),P=e=>e.append("circle").attr("class","start-state").attr("r",t.getConfig().state.sizeUnit).attr("cx",t.getConfig().state.padding+t.getConfig().state.sizeUnit).attr("cy",t.getConfig().state.padding+t.getConfig().state.sizeUnit),q=e=>e.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",t.getConfig().state.textHeight).attr("class","divider").attr("x2",t.getConfig().state.textHeight*2).attr("y1",0).attr("y2",0),A=(e,n)=>{const s=e.append("text").attr("x",2*t.getConfig().state.padding).attr("y",t.getConfig().state.textHeight+2*t.getConfig().state.padding).attr("font-size",t.getConfig().state.fontSize).attr("class","state-title").text(n.id),g=s.node().getBBox();return e.insert("rect",":first-child").attr("x",t.getConfig().state.padding).attr("y",t.getConfig().state.padding).attr("width",g.width+2*t.getConfig().state.padding).attr("height",g.height+2*t.getConfig().state.padding).attr("rx",t.getConfig().state.radius),s},G=(e,n)=>{const s=function(c,w,y){const S=c.append("tspan").attr("x",2*t.getConfig().state.padding).text(w);y||S.attr("dy",t.getConfig().state.textHeight)},a=e.append("text").attr("x",2*t.getConfig().state.padding).attr("y",t.getConfig().state.textHeight+1.3*t.getConfig().state.padding).attr("font-size",t.getConfig().state.fontSize).attr("class","state-title").text(n.descriptions[0]).node().getBBox(),l=a.height,f=e.append("text").attr("x",t.getConfig().state.padding).attr("y",l+t.getConfig().state.padding*.4+t.getConfig().state.dividerMargin+t.getConfig().state.textHeight).attr("class","state-description");let i=!0,r=!0;n.descriptions.forEach(function(c){i||(s(f,c,r),r=!1),i=!1});const C=e.append("line").attr("x1",t.getConfig().state.padding).attr("y1",t.getConfig().state.padding+l+t.getConfig().state.dividerMargin/2).attr("y2",t.getConfig().state.padding+l+t.getConfig().state.dividerMargin/2).attr("class","descr-divider"),p=f.node().getBBox(),d=Math.max(p.width,a.width);return C.attr("x2",d+3*t.getConfig().state.padding),e.insert("rect",":first-child").attr("x",t.getConfig().state.padding).attr("y",t.getConfig().state.padding).attr("width",d+2*t.getConfig().state.padding).attr("height",p.height+l+2*t.getConfig().state.padding).attr("rx",t.getConfig().state.radius),e},W=(e,n,s)=>{const g=t.getConfig().state.padding,a=2*t.getConfig().state.padding,l=e.node().getBBox(),f=l.width,i=l.x,r=e.append("text").attr("x",0).attr("y",t.getConfig().state.titleShift).attr("font-size",t.getConfig().state.fontSize).attr("class","state-title").text(n.id),p=r.node().getBBox().width+a;let d=Math.max(p,f);d===f&&(d=d+a);let c;const w=e.node().getBBox();n.doc,c=i-g,p>f&&(c=(f-d)/2+g),Math.abs(i-w.x)<g&&p>f&&(c=i-(p-f)/2);const y=1-t.getConfig().state.textHeight;return e.insert("rect",":first-child").attr("x",c).attr("y",y).attr("class",s?"alt-composit":"composit").attr("width",d).attr("height",w.height+t.getConfig().state.textHeight+t.getConfig().state.titleShift+1).attr("rx","0"),r.attr("x",c+g),p<=f&&r.attr("x",i+(d-a)/2-p/2+g),e.insert("rect",":first-child").attr("x",c).attr("y",t.getConfig().state.titleShift-t.getConfig().state.textHeight-t.getConfig().state.padding).attr("width",d).attr("height",t.getConfig().state.textHeight*3).attr("rx",t.getConfig().state.radius),e.insert("rect",":first-child").attr("x",c).attr("y",t.getConfig().state.titleShift-t.getConfig().state.textHeight-t.getConfig().state.padding).attr("width",d).attr("height",w.height+3+2*t.getConfig().state.textHeight).attr("rx",t.getConfig().state.radius),e},v=e=>(e.append("circle").attr("class","end-state-outer").attr("r",t.getConfig().state.sizeUnit+t.getConfig().state.miniPadding).attr("cx",t.getConfig().state.padding+t.getConfig().state.sizeUnit+t.getConfig().state.miniPadding).attr("cy",t.getConfig().state.padding+t.getConfig().state.sizeUnit+t.getConfig().state.miniPadding),e.append("circle").attr("class","end-state-inner").attr("r",t.getConfig().state.sizeUnit).attr("cx",t.getConfig().state.padding+t.getConfig().state.sizeUnit+2).attr("cy",t.getConfig().state.padding+t.getConfig().state.sizeUnit+2)),R=(e,n)=>{let s=t.getConfig().state.forkWidth,g=t.getConfig().state.forkHeight;if(n.parentId){let a=s;s=g,g=a}return e.append("rect").style("stroke","black").style("fill","black").attr("width",s).attr("height",g).attr("x",t.getConfig().state.padding).attr("y",t.getConfig().state.padding)},U=(e,n,s,g)=>{let a=0;const l=g.append("text");l.style("text-anchor","start"),l.attr("class","noteText");let f=e.replace(/\r\n/g,"<br/>");f=f.replace(/\n/g,"<br/>");const i=f.split(t.common$1.lineBreakRegex);let r=1.25*t.getConfig().state.noteMargin;for(const C of i){const p=C.trim();if(p.length>0){const d=l.append("tspan");if(d.text(p),r===0){const c=d.node().getBBox();r+=c.height}a+=r,d.attr("x",n+t.getConfig().state.noteMargin),d.attr("y",s+a+1.25*t.getConfig().state.noteMargin)}}return{textWidth:l.node().getBBox().width,textHeight:a}},F=(e,n)=>{n.attr("class","state-note");const s=n.append("rect").attr("x",0).attr("y",t.getConfig().state.padding),g=n.append("g"),{textWidth:a,textHeight:l}=U(e,0,0,g);return s.attr("height",l+2*t.getConfig().state.noteMargin),s.attr("width",a+t.getConfig().state.noteMargin*2),s},M=function(e,n){const s=n.id,g={id:s,label:n.id,width:0,height:0},a=e.append("g").attr("id",s).attr("class","stateGroup");n.type==="start"&&P(a),n.type==="end"&&v(a),(n.type==="fork"||n.type==="join")&&R(a,n),n.type==="note"&&F(n.note.text,a),n.type==="divider"&&q(a),n.type==="default"&&n.descriptions.length===0&&A(a,n),n.type==="default"&&n.descriptions.length>0&&G(a,n);const l=a.node().getBBox();return g.width=l.width+2*t.getConfig().state.padding,g.height=l.height+2*t.getConfig().state.padding,g};let H=0;const O=function(e,n,s){const g=function(r){switch(r){case m.db.relationType.AGGREGATION:return"aggregation";case m.db.relationType.EXTENSION:return"extension";case m.db.relationType.COMPOSITION:return"composition";case m.db.relationType.DEPENDENCY:return"dependency"}};n.points=n.points.filter(r=>!Number.isNaN(r.y));const a=n.points,l=L.line().x(function(r){return r.x}).y(function(r){return r.y}).curve(t.curveBasis),f=e.append("path").attr("d",l(a)).attr("id","edge"+H).attr("class","transition");let i="";if(t.getConfig().state.arrowMarkerAbsolute&&(i=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,i=i.replace(/\(/g,"\\("),i=i.replace(/\)/g,"\\)")),f.attr("marker-end","url("+i+"#"+g(m.db.relationType.DEPENDENCY)+"End)"),s.title!==void 0){const r=e.append("g").attr("class","stateLabel"),{x:C,y:p}=t.utils.calcLabelPosition(n.points),d=t.common$1.getRows(s.title);let c=0;const w=[];let y=0,S=0;for(let x=0;x<=d.length;x++){const h=r.append("text").attr("text-anchor","middle").text(d[x]).attr("x",C).attr("y",p+c),u=h.node().getBBox();y=Math.max(y,u.width),S=Math.min(S,u.x),t.log$1.info(u.x,C,p+c),c===0&&(c=h.node().getBBox().height,t.log$1.info("Title height",c,p)),w.push(h)}let E=c*d.length;if(d.length>1){const x=(d.length-1)*c*.5;w.forEach((h,u)=>h.attr("y",p+u*c-x)),E=c*d.length}const o=r.node().getBBox();r.insert("rect",":first-child").attr("class","box").attr("x",C-y/2-t.getConfig().state.padding/2).attr("y",p-E/2-t.getConfig().state.padding/2-3.5).attr("width",y+t.getConfig().state.padding).attr("height",E+t.getConfig().state.padding),t.log$1.info(o)}H++};let b;const N={},X=function(){},J=function(e){e.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},Y=function(e,n,s,g){b=t.getConfig().state;const a=t.getConfig().securityLevel;let l;a==="sandbox"&&(l=t.select("#i"+n));const f=a==="sandbox"?t.select(l.nodes()[0].contentDocument.body):t.select("body"),i=a==="sandbox"?l.nodes()[0].contentDocument:document;t.log$1.debug("Rendering diagram "+e);const r=f.select(`[id='${n}']`);J(r);const C=g.db.getRootDoc();$(C,r,void 0,!1,f,i,g);const p=b.padding,d=r.node().getBBox(),c=d.width+p*2,w=d.height+p*2,y=c*1.75;t.configureSvgSize(r,w,y,b.useMaxWidth),r.attr("viewBox",`${d.x-b.padding} ${d.y-b.padding} `+c+" "+w)},I=e=>e?e.length*b.fontSizeFactor:1,$=(e,n,s,g,a,l,f)=>{const i=new T.Graph({compound:!0,multigraph:!0});let r,C=!0;for(r=0;r<e.length;r++)if(e[r].stmt==="relation"){C=!1;break}s?i.setGraph({rankdir:"LR",multigraph:!0,compound:!0,ranker:"tight-tree",ranksep:C?1:b.edgeLengthFactor,nodeSep:C?1:50,isMultiGraph:!0}):i.setGraph({rankdir:"TB",multigraph:!0,compound:!0,ranksep:C?1:b.edgeLengthFactor,nodeSep:C?1:50,ranker:"tight-tree",isMultiGraph:!0}),i.setDefaultEdgeLabel(function(){return{}}),f.db.extract(e);const p=f.db.getStates(),d=f.db.getRelations(),c=Object.keys(p);for(const o of c){const x=p[o];s&&(x.parentId=s);let h;if(x.doc){let u=n.append("g").attr("id",x.id).attr("class","stateGroup");h=$(x.doc,u,x.id,!g,a,l,f);{u=W(u,x,g);let B=u.node().getBBox();h.width=B.width,h.height=B.height+b.padding/2,N[x.id]={y:b.compositTitleSize}}}else h=M(n,x);if(x.note){const u={descriptions:[],id:x.id+"-note",note:x.note,type:"note"},B=M(n,u);x.note.position==="left of"?(i.setNode(h.id+"-note",B),i.setNode(h.id,h)):(i.setNode(h.id,h),i.setNode(h.id+"-note",B)),i.setParent(h.id,h.id+"-group"),i.setParent(h.id+"-note",h.id+"-group")}else i.setNode(h.id,h)}t.log$1.debug("Count=",i.nodeCount(),i);let w=0;d.forEach(function(o){w++,t.log$1.debug("Setting edge",o),i.setEdge(o.id1,o.id2,{relation:o,width:I(o.title),height:b.labelHeight*t.common$1.getRows(o.title).length,labelpos:"c"},"id"+w)}),z.layout(i),t.log$1.debug("Graph after layout",i.nodes());const y=n.node();i.nodes().forEach(function(o){o!==void 0&&i.node(o)!==void 0?(t.log$1.warn("Node "+o+": "+JSON.stringify(i.node(o))),a.select("#"+y.id+" #"+o).attr("transform","translate("+(i.node(o).x-i.node(o).width/2)+","+(i.node(o).y+(N[o]?N[o].y:0)-i.node(o).height/2)+" )"),a.select("#"+y.id+" #"+o).attr("data-x-shift",i.node(o).x-i.node(o).width/2),l.querySelectorAll("#"+y.id+" #"+o+" .divider").forEach(h=>{const u=h.parentElement;let B=0,k=0;u&&(u.parentElement&&(B=u.parentElement.getBBox().width),k=parseInt(u.getAttribute("data-x-shift"),10),Number.isNaN(k)&&(k=0)),h.setAttribute("x1",0-k+8),h.setAttribute("x2",B-k-8)})):t.log$1.debug("No Node "+o+": "+JSON.stringify(i.node(o)))});let S=y.getBBox();i.edges().forEach(function(o){o!==void 0&&i.edge(o)!==void 0&&(t.log$1.debug("Edge "+o.v+" -> "+o.w+": "+JSON.stringify(i.edge(o))),O(n,i.edge(o),i.edge(o).relation))}),S=y.getBBox();const E={id:s||"root",label:s||"root",width:0,height:0};return E.width=S.width+2*b.padding,E.height=S.height+2*b.padding,t.log$1.debug("Doc rendered",E,i),E},_={setConf:X,draw:Y},Z={parser:m.parser$1,db:m.db,renderer:_,styles:m.styles,init:e=>{e.state||(e.state={}),e.state.arrowMarkerAbsolute=e.arrowMarkerAbsolute,m.db.clear()}};exports.diagram=Z;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const m=require("./layers.C64I141Z.js"),t=require("./layers.DAgYJbie.js");require("lodash-es");const z=require("./layers.Cyzu9PKQ.js"),T=require("./layers.BLd2spTm.js");require("./layers.Dxr2o7ON.js");require("lodash-es/memoize.js");require("lodash-es/merge.js");require("lodash-es/isEmpty.js");const L=require("./layers.Ddr1wCwP.js"),P=e=>e.append("circle").attr("class","start-state").attr("r",t.getConfig().state.sizeUnit).attr("cx",t.getConfig().state.padding+t.getConfig().state.sizeUnit).attr("cy",t.getConfig().state.padding+t.getConfig().state.sizeUnit),q=e=>e.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",t.getConfig().state.textHeight).attr("class","divider").attr("x2",t.getConfig().state.textHeight*2).attr("y1",0).attr("y2",0),A=(e,n)=>{const s=e.append("text").attr("x",2*t.getConfig().state.padding).attr("y",t.getConfig().state.textHeight+2*t.getConfig().state.padding).attr("font-size",t.getConfig().state.fontSize).attr("class","state-title").text(n.id),g=s.node().getBBox();return e.insert("rect",":first-child").attr("x",t.getConfig().state.padding).attr("y",t.getConfig().state.padding).attr("width",g.width+2*t.getConfig().state.padding).attr("height",g.height+2*t.getConfig().state.padding).attr("rx",t.getConfig().state.radius),s},G=(e,n)=>{const s=function(c,w,y){const S=c.append("tspan").attr("x",2*t.getConfig().state.padding).text(w);y||S.attr("dy",t.getConfig().state.textHeight)},a=e.append("text").attr("x",2*t.getConfig().state.padding).attr("y",t.getConfig().state.textHeight+1.3*t.getConfig().state.padding).attr("font-size",t.getConfig().state.fontSize).attr("class","state-title").text(n.descriptions[0]).node().getBBox(),l=a.height,f=e.append("text").attr("x",t.getConfig().state.padding).attr("y",l+t.getConfig().state.padding*.4+t.getConfig().state.dividerMargin+t.getConfig().state.textHeight).attr("class","state-description");let i=!0,r=!0;n.descriptions.forEach(function(c){i||(s(f,c,r),r=!1),i=!1});const C=e.append("line").attr("x1",t.getConfig().state.padding).attr("y1",t.getConfig().state.padding+l+t.getConfig().state.dividerMargin/2).attr("y2",t.getConfig().state.padding+l+t.getConfig().state.dividerMargin/2).attr("class","descr-divider"),p=f.node().getBBox(),d=Math.max(p.width,a.width);return C.attr("x2",d+3*t.getConfig().state.padding),e.insert("rect",":first-child").attr("x",t.getConfig().state.padding).attr("y",t.getConfig().state.padding).attr("width",d+2*t.getConfig().state.padding).attr("height",p.height+l+2*t.getConfig().state.padding).attr("rx",t.getConfig().state.radius),e},W=(e,n,s)=>{const g=t.getConfig().state.padding,a=2*t.getConfig().state.padding,l=e.node().getBBox(),f=l.width,i=l.x,r=e.append("text").attr("x",0).attr("y",t.getConfig().state.titleShift).attr("font-size",t.getConfig().state.fontSize).attr("class","state-title").text(n.id),p=r.node().getBBox().width+a;let d=Math.max(p,f);d===f&&(d=d+a);let c;const w=e.node().getBBox();n.doc,c=i-g,p>f&&(c=(f-d)/2+g),Math.abs(i-w.x)<g&&p>f&&(c=i-(p-f)/2);const y=1-t.getConfig().state.textHeight;return e.insert("rect",":first-child").attr("x",c).attr("y",y).attr("class",s?"alt-composit":"composit").attr("width",d).attr("height",w.height+t.getConfig().state.textHeight+t.getConfig().state.titleShift+1).attr("rx","0"),r.attr("x",c+g),p<=f&&r.attr("x",i+(d-a)/2-p/2+g),e.insert("rect",":first-child").attr("x",c).attr("y",t.getConfig().state.titleShift-t.getConfig().state.textHeight-t.getConfig().state.padding).attr("width",d).attr("height",t.getConfig().state.textHeight*3).attr("rx",t.getConfig().state.radius),e.insert("rect",":first-child").attr("x",c).attr("y",t.getConfig().state.titleShift-t.getConfig().state.textHeight-t.getConfig().state.padding).attr("width",d).attr("height",w.height+3+2*t.getConfig().state.textHeight).attr("rx",t.getConfig().state.radius),e},v=e=>(e.append("circle").attr("class","end-state-outer").attr("r",t.getConfig().state.sizeUnit+t.getConfig().state.miniPadding).attr("cx",t.getConfig().state.padding+t.getConfig().state.sizeUnit+t.getConfig().state.miniPadding).attr("cy",t.getConfig().state.padding+t.getConfig().state.sizeUnit+t.getConfig().state.miniPadding),e.append("circle").attr("class","end-state-inner").attr("r",t.getConfig().state.sizeUnit).attr("cx",t.getConfig().state.padding+t.getConfig().state.sizeUnit+2).attr("cy",t.getConfig().state.padding+t.getConfig().state.sizeUnit+2)),R=(e,n)=>{let s=t.getConfig().state.forkWidth,g=t.getConfig().state.forkHeight;if(n.parentId){let a=s;s=g,g=a}return e.append("rect").style("stroke","black").style("fill","black").attr("width",s).attr("height",g).attr("x",t.getConfig().state.padding).attr("y",t.getConfig().state.padding)},U=(e,n,s,g)=>{let a=0;const l=g.append("text");l.style("text-anchor","start"),l.attr("class","noteText");let f=e.replace(/\r\n/g,"<br/>");f=f.replace(/\n/g,"<br/>");const i=f.split(t.common$1.lineBreakRegex);let r=1.25*t.getConfig().state.noteMargin;for(const C of i){const p=C.trim();if(p.length>0){const d=l.append("tspan");if(d.text(p),r===0){const c=d.node().getBBox();r+=c.height}a+=r,d.attr("x",n+t.getConfig().state.noteMargin),d.attr("y",s+a+1.25*t.getConfig().state.noteMargin)}}return{textWidth:l.node().getBBox().width,textHeight:a}},F=(e,n)=>{n.attr("class","state-note");const s=n.append("rect").attr("x",0).attr("y",t.getConfig().state.padding),g=n.append("g"),{textWidth:a,textHeight:l}=U(e,0,0,g);return s.attr("height",l+2*t.getConfig().state.noteMargin),s.attr("width",a+t.getConfig().state.noteMargin*2),s},M=function(e,n){const s=n.id,g={id:s,label:n.id,width:0,height:0},a=e.append("g").attr("id",s).attr("class","stateGroup");n.type==="start"&&P(a),n.type==="end"&&v(a),(n.type==="fork"||n.type==="join")&&R(a,n),n.type==="note"&&F(n.note.text,a),n.type==="divider"&&q(a),n.type==="default"&&n.descriptions.length===0&&A(a,n),n.type==="default"&&n.descriptions.length>0&&G(a,n);const l=a.node().getBBox();return g.width=l.width+2*t.getConfig().state.padding,g.height=l.height+2*t.getConfig().state.padding,g};let H=0;const O=function(e,n,s){const g=function(r){switch(r){case m.db.relationType.AGGREGATION:return"aggregation";case m.db.relationType.EXTENSION:return"extension";case m.db.relationType.COMPOSITION:return"composition";case m.db.relationType.DEPENDENCY:return"dependency"}};n.points=n.points.filter(r=>!Number.isNaN(r.y));const a=n.points,l=L.line().x(function(r){return r.x}).y(function(r){return r.y}).curve(t.curveBasis),f=e.append("path").attr("d",l(a)).attr("id","edge"+H).attr("class","transition");let i="";if(t.getConfig().state.arrowMarkerAbsolute&&(i=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,i=i.replace(/\(/g,"\\("),i=i.replace(/\)/g,"\\)")),f.attr("marker-end","url("+i+"#"+g(m.db.relationType.DEPENDENCY)+"End)"),s.title!==void 0){const r=e.append("g").attr("class","stateLabel"),{x:C,y:p}=t.utils.calcLabelPosition(n.points),d=t.common$1.getRows(s.title);let c=0;const w=[];let y=0,S=0;for(let x=0;x<=d.length;x++){const h=r.append("text").attr("text-anchor","middle").text(d[x]).attr("x",C).attr("y",p+c),u=h.node().getBBox();y=Math.max(y,u.width),S=Math.min(S,u.x),t.log$1.info(u.x,C,p+c),c===0&&(c=h.node().getBBox().height,t.log$1.info("Title height",c,p)),w.push(h)}let E=c*d.length;if(d.length>1){const x=(d.length-1)*c*.5;w.forEach((h,u)=>h.attr("y",p+u*c-x)),E=c*d.length}const o=r.node().getBBox();r.insert("rect",":first-child").attr("class","box").attr("x",C-y/2-t.getConfig().state.padding/2).attr("y",p-E/2-t.getConfig().state.padding/2-3.5).attr("width",y+t.getConfig().state.padding).attr("height",E+t.getConfig().state.padding),t.log$1.info(o)}H++};let b;const N={},X=function(){},J=function(e){e.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},Y=function(e,n,s,g){b=t.getConfig().state;const a=t.getConfig().securityLevel;let l;a==="sandbox"&&(l=t.select("#i"+n));const f=a==="sandbox"?t.select(l.nodes()[0].contentDocument.body):t.select("body"),i=a==="sandbox"?l.nodes()[0].contentDocument:document;t.log$1.debug("Rendering diagram "+e);const r=f.select(`[id='${n}']`);J(r);const C=g.db.getRootDoc();$(C,r,void 0,!1,f,i,g);const p=b.padding,d=r.node().getBBox(),c=d.width+p*2,w=d.height+p*2,y=c*1.75;t.configureSvgSize(r,w,y,b.useMaxWidth),r.attr("viewBox",`${d.x-b.padding} ${d.y-b.padding} `+c+" "+w)},I=e=>e?e.length*b.fontSizeFactor:1,$=(e,n,s,g,a,l,f)=>{const i=new T.Graph({compound:!0,multigraph:!0});let r,C=!0;for(r=0;r<e.length;r++)if(e[r].stmt==="relation"){C=!1;break}s?i.setGraph({rankdir:"LR",multigraph:!0,compound:!0,ranker:"tight-tree",ranksep:C?1:b.edgeLengthFactor,nodeSep:C?1:50,isMultiGraph:!0}):i.setGraph({rankdir:"TB",multigraph:!0,compound:!0,ranksep:C?1:b.edgeLengthFactor,nodeSep:C?1:50,ranker:"tight-tree",isMultiGraph:!0}),i.setDefaultEdgeLabel(function(){return{}}),f.db.extract(e);const p=f.db.getStates(),d=f.db.getRelations(),c=Object.keys(p);for(const o of c){const x=p[o];s&&(x.parentId=s);let h;if(x.doc){let u=n.append("g").attr("id",x.id).attr("class","stateGroup");h=$(x.doc,u,x.id,!g,a,l,f);{u=W(u,x,g);let B=u.node().getBBox();h.width=B.width,h.height=B.height+b.padding/2,N[x.id]={y:b.compositTitleSize}}}else h=M(n,x);if(x.note){const u={descriptions:[],id:x.id+"-note",note:x.note,type:"note"},B=M(n,u);x.note.position==="left of"?(i.setNode(h.id+"-note",B),i.setNode(h.id,h)):(i.setNode(h.id,h),i.setNode(h.id+"-note",B)),i.setParent(h.id,h.id+"-group"),i.setParent(h.id+"-note",h.id+"-group")}else i.setNode(h.id,h)}t.log$1.debug("Count=",i.nodeCount(),i);let w=0;d.forEach(function(o){w++,t.log$1.debug("Setting edge",o),i.setEdge(o.id1,o.id2,{relation:o,width:I(o.title),height:b.labelHeight*t.common$1.getRows(o.title).length,labelpos:"c"},"id"+w)}),z.layout(i),t.log$1.debug("Graph after layout",i.nodes());const y=n.node();i.nodes().forEach(function(o){o!==void 0&&i.node(o)!==void 0?(t.log$1.warn("Node "+o+": "+JSON.stringify(i.node(o))),a.select("#"+y.id+" #"+o).attr("transform","translate("+(i.node(o).x-i.node(o).width/2)+","+(i.node(o).y+(N[o]?N[o].y:0)-i.node(o).height/2)+" )"),a.select("#"+y.id+" #"+o).attr("data-x-shift",i.node(o).x-i.node(o).width/2),l.querySelectorAll("#"+y.id+" #"+o+" .divider").forEach(h=>{const u=h.parentElement;let B=0,k=0;u&&(u.parentElement&&(B=u.parentElement.getBBox().width),k=parseInt(u.getAttribute("data-x-shift"),10),Number.isNaN(k)&&(k=0)),h.setAttribute("x1",0-k+8),h.setAttribute("x2",B-k-8)})):t.log$1.debug("No Node "+o+": "+JSON.stringify(i.node(o)))});let S=y.getBBox();i.edges().forEach(function(o){o!==void 0&&i.edge(o)!==void 0&&(t.log$1.debug("Edge "+o.v+" -> "+o.w+": "+JSON.stringify(i.edge(o))),O(n,i.edge(o),i.edge(o).relation))}),S=y.getBBox();const E={id:s||"root",label:s||"root",width:0,height:0};return E.width=S.width+2*b.padding,E.height=S.height+2*b.padding,t.log$1.debug("Doc rendered",E,i),E},_={setConf:X,draw:Y},Z={parser:m.parser$1,db:m.db,renderer:_,styles:m.styles,init:e=>{e.state||(e.state={}),e.state.arrowMarkerAbsolute=e.arrowMarkerAbsolute,m.db.clear()}};exports.diagram=Z;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./layers.
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./layers.DxEDwmZI.js");var e={paste:"Colar",pasteAsPlaintext:"Colar como texto sem formatação",pasteCharts:"Colar gráficos",selectAll:"Selecionar tudo",multiSelect:"Adicionar elemento à seleção",moveCanvas:"Mover tela",cut:"Recortar",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 a frente",sendToBack:"Enviar para o fundo",bringToFront:"Trazer para o primeiro plano",sendBackward:"Enviar para trás",delete:"Apagar",copyStyles:"Copiar os estilos",pasteStyles:"Colar os estilos",stroke:"Contorno",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:"Precisão do traço",opacity:"Opacidade",textAlign:"Alinhamento do texto",edges:"Arestas",sharp:"Pontudo",round:"Arredondado",arrowheads:"Pontas",arrowhead_none:"Nenhuma",arrowhead_arrow:"Flecha",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 fonte",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:"Hachura",zigzag:"Zigue-zague",crossHatch:"Hachura cruzada",thin:"Fino",bold:"Espesso",left:"Esquerda",center:"Centralizar",right:"Direita",extraBold:"Muito espesso",architect:"Arquiteto",artist:"Artista",cartoonist:"Cartunista",fileTitle:"Nome do arquivo",colorPicker:"Seletor de cores",canvasColors:"Usado na tela",canvasBackground:"Fundo da tela",drawingCanvas:"Tela de desenho",layers:"Camadas",actions:"Ações",language:"Idioma",liveCollaboration:"Colaboração ao vivo...",duplicateSelection:"Duplicar",untitled:"Sem título",name:"Nome",yourName:"Seu nome",madeWithExcalidraw:"Feito com Excalidraw",group:"Agrupar seleção",ungroup:"Desagrupar seleção",collaborators:"Colaboradores",showGrid:"Mostrar grade",addToLibrary:"Adicionar à biblioteca",removeFromLibrary:"Remover da biblioteca",libraryLoadingMessage:"Carregando biblioteca…",libraries:"Procurar bibliotecas",loadingScene:"Carregando cena…",align:"Alinhamento",alignTop:"Alinhar ao topo",alignBottom:"Alinhar embaixo",alignLeft:"Alinhar à esquerda",alignRight:"Alinhar à direita",centerVertically:"Centralizar verticalmente",centerHorizontally:"Centralizar horizontalmente",distributeHorizontally:"Distribuir horizontalmente",distributeVertically:"Distribuir verticalmente",flipHorizontal:"Inverter horizontalmente",flipVertical:"Inverter verticalmente",viewMode:"Modo de visualização",share:"Compartilhar",showStroke:"Exibir seletor de cores do traço",showBackground:"Exibir seletor de cores do fundo",toggleTheme:"Alternar tema",personalLib:"Biblioteca Pessoal",excalidrawLib:"Biblioteca do Excalidraw",decreaseFontSize:"Diminuir o tamanho da fonte",increaseFontSize:"Aumentar o tamanho da fonte",unbindText:"Desvincular texto",bindText:"Vincular texto ao contêiner",createContainerFromText:"Envolver texto em um contêiner",link:{edit:"Editar link",editEmbed:"",create:"Criar link",createEmbed:"",label:"Link",labelEmbed:"",empty:""},lineEditor:{edit:"Editar linha",exit:"Sair do editor de linha"},elementLock:{lock:"Bloquear",unlock:"Desbloquear",lockAll:"Bloquear tudo",unlockAll:"Desbloquear tudo"},statusPublished:"Publicado",sidebarLock:"Manter barra lateral aberta",selectAllElementsInFrame:"Selecionar todos os elementos no quadro",removeAllElementsFromFrame:"Remover todos os elementos do quadro",eyeDropper:"Escolher cor da tela",textToDiagram:"",prompt:""},a={noItems:"Nenhum item adicionado ainda...",hint_emptyLibrary:"Selecione um item na tela para adicioná-lo aqui, ou instale uma biblioteca do repositório público, abaixo.",hint_emptyPrivateLibrary:"Selecione um item na tela para adicioná-lo aqui."},o={clearReset:"Limpar o canvas e redefinir a cor de fundo",exportJSON:"Exportar arquivo",exportImage:"Exportar imagem...",export:"Salvar como...",copyToClipboard:"Copiar para o clipboard",save:"Salvar para o arquivo atual",saveAs:"Salvar como",load:"Abrir",getShareableLink:"Obter um link de compartilhamento",close:"Fechar",selectLanguage:"Selecionar idioma",scrollBackToContent:"Voltar para o conteúdo",zoomIn:"Aumentar zoom",zoomOut:"Diminuir zoom",resetZoom:"Redefinir zoom",menu:"Menu",done:"Concluído",edit:"Editar",undo:"Desfazer",redo:"Refazer",resetLibrary:"Redefinir biblioteca",createNewRoom:"Criar nova sala",fullScreen:"Tela cheia",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 tela. Você tem certeza?",couldNotCreateShareableLink:"Não foi possível criar um link de compartilhamento.",couldNotCreateShareableLinkTooBig:"Não foi possível criar um link compartilhável: a cena é muito grande",couldNotLoadInvalidFile:"Não foi possível carregar o arquivo inválido",importBackendFailed:"A importação do servidor falhou.",cannotExportEmptyCanvas:"Não é possível exportar um canvas vazio.",couldNotCopyToClipboard:"Não foi possível copiar para a área de transferência.",decryptFailed:"Não foi possível descriptografar 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:"Carregar um desenho externo substituirá o seu conteúdo existente. Deseja continuar?",collabStopOverridePrompt:`Ao interromper a sessão, você substituirá seu desenho anterior, armazenado localmente. Você tem certeza?
|
|
2
2
|
|
|
3
3
|
(Se você deseja manter seu desenho local, simplesmente feche a aba 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 certeza?",imageDoesNotContainScene:"Esta imagem parece não conter dados de cenas. Você ativou a incorporação da cena durante a exportação?",cannotRestoreFromImage:"Não foi possível restaurar a cena deste arquivo de imagem",invalidSceneUrl:"Não foi possível importar a cena da URL fornecida. Ela está incompleta ou não contém dados JSON válidos do Excalidraw.",resetLibrary:"Isto limpará a sua biblioteca. Você tem certeza?",removeItemsFromsLibrary:"Excluir {{count}} item(ns) da biblioteca?",invalidEncryptionKey:"A chave de encriptação deve ter 22 caracteres. A colaboração ao vivo está desabilitada.",collabOfflineWarning:`Sem conexão com a internet disponível.
|
|
4
4
|
Suas alterações não serão salvas!`},i={unsupportedFileType:"Tipo de arquivo não suportado.",imageInsertError:"Não foi possível inserir imagem. Tente novamente mais tarde...",fileTooBig:"O arquivo é muito grande. O tamanho máximo permitido é {{maxSize}}.",svgImageInsertError:"Não foi possível inserir a imagem SVG. A marcação SVG parece inválida.",failedToFetchImage:"",invalidSVGString:"SVG Inválido.",cannotResolveCollabServer:"Não foi possível conectar-se ao servidor colaborativo. Por favor, recarregue a página e tente novamente.",importLibraryError:"Não foi possível carregar a biblioteca",collabSaveFailed:"Não foi possível salvar no banco de dados do servidor. Se os problemas persistirem, salve o arquivo localmente para garantir que não perca o seu trabalho.",collabSaveFailed_sizeExceeded:"Não foi possível salvar no banco de dados do servidor, a tela parece ser muito grande. Se os problemas persistirem, salve o arquivo localmente para garantir que não perca o seu trabalho.",imageToolNotSupported:"",brave_measure_text_error:{line1:"Parece que você está usando o navegador Brave com a configuração <bold>Bloquear Impressões Digitais</bold> no modo agressivo.",line2:"Isso pode acabar quebrando <bold>Elementos de Texto</bold> em seus desenhos.",line3:"Recomendamos fortemente desativar essa configuração. Você pode acessar o <link>passo a passo</link> sobre como fazer isso.",line4:"Se desativar essa configuração não corrigir a exibição de elementos de texto, por favor abra uma <issueLink>issue</issueLink> em nosso GitHub, ou mande uma mensagem em nosso <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},t={selection:"Seleção",image:"Inserir imagem",rectangle:"Retângulo",diamond:"Losango",ellipse:"Elipse",arrow:"Flecha",line:"Linha",freedraw:"Desenhar",text:"Texto",library:"Biblioteca",lock:"Manter ativa a ferramenta selecionada após desenhar",penMode:"Modo caneta — impede o toque",link:"Adicionar/Atualizar link para uma forma selecionada",eraser:"Borracha",frame:"Ferramenta de quadro",magicframe:"",embeddable:"",laser:"",hand:"Mão (ferramenta de rolagem)",extraTools:"Mais ferramentas",mermaidToExcalidraw:"",magicSettings:""},s={canvasActions:"Ações da tela",selectedShapeActions:"Ações das formas selecionadas",shapes:"Formas"},n={canvasPanning:"Para mover a tela, segure a roda do mouse ou a barra de espaço enquanto arrasta ou use a ferramenta de mão",linearElement:"Clique para iniciar vários pontos, arraste para uma única linha",freeDraw:"Toque e arraste, solte quando terminar",text:"Dica: você também pode adicionar texto clicando duas vezes em qualquer lugar com a ferramenta de seleção",embeddable:"",text_selected:"Clique duplo ou tecle ENTER para editar o texto",text_editing:"Pressione Esc ou Ctrl/Cmd+ENTER para encerrar a edição",linearElementMulti:"Clique no último ponto ou pressione Escape ou Enter para terminar",lockAngle:"Você pode restringir o ângulo segurando o SHIFT",resize:`Você pode restringir proporções segurando SHIFT enquanto redimensiona,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const P=require("lodash-es"),J=require("./layers.Cyzu9PKQ.js"),k=require("./layers.BLd2spTm.js"),u=require("./layers.QA0CNqv3.js"),i=require("./layers.DVEibxHb.js"),j=require("./layers.BsHFiRQg.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,b=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-b/2).attr("y",t.y-t.height/2-$).attr("width",b).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 y=s.node().getBBox();return t.width=y.width,t.height=y.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,b=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-b/2-$).attr("y",t.y-t.height/2-$).attr("width",b+h).attr("height",t.height+h),f.attr("class","inner").attr("x",t.x-b/2-$).attr("y",t.y-t.height/2-$+d.height-1).attr("width",b+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 y=s.node().getBBox();return t.height=y.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"),b=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(b,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(b,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:y}=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+=y,u.positionNode(c)):t.children(l).length>0?(c.height+=y,Q(d,c),a[c.id].node=c):(c.y+=y/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+=y/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.DtzqEr-c.js"),i=require("./layers.DAgYJbie.js"),j=require("./layers.CFl5zk9L.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,b=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-b/2).attr("y",t.y-t.height/2-$).attr("width",b).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 y=s.node().getBBox();return t.width=y.width,t.height=y.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,b=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-b/2-$).attr("y",t.y-t.height/2-$).attr("width",b+h).attr("height",t.height+h),f.attr("class","inner").attr("x",t.x-b/2-$).attr("y",t.y-t.height/2-$+d.height-1).attr("width",b+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 y=s.node().getBBox();return t.height=y.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"),b=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(b,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(b,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:y}=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+=y,u.positionNode(c)):t.children(l).length>0?(c.height+=y,Q(d,c),a[c.id].node=c):(c.y+=y/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+=y/2);const v=u.insertEdge(h,l,c,a,n,t,r);u.positionEdgeLabel(c,v)}),t.nodes().forEach(function(l){const c=t.node(l);i.log$1.info(l,c.type,c.diff),c.type==="group"&&(N=c.diff)}),{elem:g,diff:N}},Z=async(e,t,n,r,s)=>{u.insertMarkers$1(e,n,r,s),u.clear$1(),u.clear(),Y(),q(),i.log$1.warn("Graph at first:",JSON.stringify(x(t))),U(t),i.log$1.warn("Graph after:",JSON.stringify(x(t)));const o=i.getConfig();await L(e,t,r,s,void 0,o)};exports.render=Z;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "./layers.
|
|
1
|
+
import "./layers.Bobi_AGl.js";
|
|
2
2
|
var e = { paste: "Plakken", pasteAsPlaintext: "Plakken als platte tekst", pasteCharts: "Plak grafieken", selectAll: "Alles selecteren", multiSelect: "Voeg element toe aan selectie", moveCanvas: "Canvas verplaatsen", cut: "Knip", copy: "Kopiëren", copyAsPng: "Kopieer als PNG", copyAsSvg: "Kopieer naar klembord als SVG", copyText: "Kopieer naar klembord als tekst", copySource: "", convertToCode: "", bringForward: "Breng naar voren", sendToBack: "Stuur naar achtergrond", bringToFront: "Breng naar voorgrond", sendBackward: "Breng naar achter", delete: "Verwijderen", copyStyles: "Kopieer opmaak", pasteStyles: "Plak opmaak", stroke: "Lijn", background: "Achtergrond", fill: "Invulling", strokeWidth: "Lijnbreedte", strokeStyle: "Lijnstijl", strokeStyle_solid: "Ononderbroken", strokeStyle_dashed: "Gestreept", strokeStyle_dotted: "Gestippeld", sloppiness: "Slordigheid", opacity: "Doorzichtigheid", textAlign: "Uitlijning", edges: "Randen", sharp: "Hoekig", round: "Rond", arrowheads: "Pijlpunten", arrowhead_none: "Geen", arrowhead_arrow: "Pijl", arrowhead_bar: "Balk", arrowhead_circle: "", arrowhead_circle_outline: "", arrowhead_triangle: "Driehoek", arrowhead_triangle_outline: "", arrowhead_diamond: "", arrowhead_diamond_outline: "", fontSize: "Tekstgrootte", fontFamily: "Lettertype", addWatermark: 'Voeg "Gemaakt met Excalidraw" toe', handDrawn: "Handgetekend", normal: "Normaal", code: "Code", small: "Klein", medium: "Medium", large: "Groot", veryLarge: "Zeer groot", solid: "Ingekleurd", hachure: "Arcering", zigzag: "", crossHatch: "Tweemaal gearceerd", thin: "Dun", bold: "Vet", left: "Links", center: "Midden", right: "Rechts", extraBold: "Zwaar", architect: "Architect", artist: "Artiest", cartoonist: "Cartoonist", fileTitle: "Bestandsnaam", colorPicker: "Kleurenkiezer", canvasColors: "Gebruikt op canvas", canvasBackground: "Canvas achtergrond", drawingCanvas: "Canvas", layers: "Lagen", actions: "Acties", language: "Taal", liveCollaboration: "Live Samenwerking...", duplicateSelection: "Dupliceer", untitled: "Naamloos", name: "Naam", yourName: "Jouw naam", madeWithExcalidraw: "Gemaakt met Excalidraw", group: "Groeperen", ungroup: "Groep opheffen", collaborators: "Deelnemers", showGrid: "Raster weergeven", addToLibrary: "Voeg toe aan bibliotheek", removeFromLibrary: "Verwijder uit bibliotheek", libraryLoadingMessage: "Bibliotheek laden…", libraries: "Blader door bibliotheken", loadingScene: "Scène laden…", align: "Uitlijnen", alignTop: "Boven uitlijnen", alignBottom: "Onder uitlijnen", alignLeft: "Links uitlijnen", alignRight: "Rechts uitlijnen", centerVertically: "Verticaal Centreren", centerHorizontally: "Horizontaal Centreren", distributeHorizontally: "Horizontaal verspreiden", distributeVertically: "Verticaal distribueren", flipHorizontal: "Horizontaal spiegelen", flipVertical: "Verticaal spiegelen", viewMode: "Weergavemodus", share: "Deel", showStroke: "Toon lijn kleur kiezer", showBackground: "Toon achtergrondkleur kiezer", toggleTheme: "Thema aan/uit", personalLib: "Persoonlijke bibliotheek", excalidrawLib: "Excalidraw bibliotheek", decreaseFontSize: "Letters verkleinen", increaseFontSize: "Letters vergroten", unbindText: "Ontkoppel tekst", bindText: "Koppel tekst aan de container", createContainerFromText: "", link: { edit: "Wijzig link", editEmbed: "Link bewerken & insluiten", create: "Maak link", createEmbed: "Link maken en insluiten", label: "Link", labelEmbed: "Link toevoegen & insluiten", empty: "Er is geen link ingesteld" }, lineEditor: { edit: "Bewerk regel", exit: "Verlaat regel-editor" }, elementLock: { lock: "Vergrendel", unlock: "Ontgrendel", lockAll: "Vergrendel alles", unlockAll: "Ontgrendel alles" }, statusPublished: "Gepubliceerd", sidebarLock: "Zijbalk open houden", selectAllElementsInFrame: "", removeAllElementsFromFrame: "", eyeDropper: "", textToDiagram: "", prompt: "" }, n = { noItems: "Nog geen items toegevoegd...", hint_emptyLibrary: "Selecteer een item op het canvas om het hier toe te voegen of installeer een bibliotheek uit de openbare repository, hieronder.", hint_emptyPrivateLibrary: "Selecteer een item op het canvas om het hier toe te voegen." }, t = { clearReset: "Canvas opnieuw instellen", exportJSON: "Exporteren naar bestand", exportImage: "Exporteer afbeelding...", export: "Sla op...", copyToClipboard: "Kopieer", save: "Opslaan naar huidige bestand", saveAs: "Opslaan als", load: "Open", getShareableLink: "Maak een deelbare link", close: "Sluiten", selectLanguage: "Taal selecteren", scrollBackToContent: "Scroll terug naar inhoud", zoomIn: "Inzoomen", zoomOut: "Uitzoomen", resetZoom: "Zoom terugzetten", menu: "Menu", done: "Klaar", edit: "Bewerken", undo: "Ongedaan maken", redo: "Herstel ongedaan maken", resetLibrary: "Bibliotheek Resetten", createNewRoom: "Creëer live-samenwerkingssessie", fullScreen: "Volledig scherm", darkMode: "Donkere modus", lightMode: "Lichte modus", zenMode: "Zen modus", objectsSnapMode: "", exitZenMode: "Verlaat zen modus", cancel: "Annuleren", clear: "Wissen", remove: "Verwijderen", embed: "Insluiten in-/uitschakelen", publishLibrary: "Publiceren", submit: "Versturen", confirm: "Bevestigen", embeddableInteractionButton: "Klik voor interactie" }, a = { clearReset: "Dit zal het hele canvas verwijderen. Weet je het zeker?", couldNotCreateShareableLink: "Kon geen deelbare link aanmaken.", couldNotCreateShareableLinkTooBig: "Kan geen deelbare link aanmaken: de scène is te groot", couldNotLoadInvalidFile: "Kan ongeldig bestand niet laden", importBackendFailed: "Importeren vanuit backend mislukt.", cannotExportEmptyCanvas: "Kan geen leeg canvas exporteren.", couldNotCopyToClipboard: "Kon niet naar klembord kopiëren.", decryptFailed: "Kan gegevens niet decoderen.", uploadedSecurly: "De upload is beveiligd met end-to-end encryptie, wat betekent dat de Excalidraw server en derden de inhoud niet kunnen lezen.", loadSceneOverridePrompt: "Het inladen van een externe tekening zal je bestaande inhoud vervangen. Wil je verdergaan?", collabStopOverridePrompt: `Wanneer de sessie wordt gestopt, overschrijft u de eerdere, lokaal opgeslagen tekening. Weet je het zeker?
|
|
3
3
|
|
|
4
4
|
(Als je de lokale tekening wilt behouden, sluit je in plaats daarvan het browsertabblad)`, errorAddingToLibrary: "Kan item niet toevoegen aan de bibliotheek", errorRemovingFromLibrary: "Kan item niet uit de bibliotheek verwijderen", confirmAddLibrary: "Dit zal {{numShapes}} vorm(en) toevoegen aan je bibliotheek. Weet je het zeker?", imageDoesNotContainScene: "Deze afbeelding lijkt geen scène gegevens te bevatten. Heb je scène embedding tijdens het exporteren ingeschakeld?", cannotRestoreFromImage: "Scène kan niet worden hersteld vanuit dit afbeeldingsbestand", invalidSceneUrl: "Kan scène niet importeren vanuit de opgegeven URL. Het is onjuist of bevat geen geldige Excalidraw JSON-gegevens.", resetLibrary: "Dit zal je bibliotheek wissen. Weet je het zeker?", removeItemsFromsLibrary: "Verwijder {{count}} item(s) uit bibliotheek?", invalidEncryptionKey: "Encryptiesleutel moet 22 tekens zijn. Live samenwerking is uitgeschakeld.", collabOfflineWarning: `Geen internetverbinding beschikbaar.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "./layers.
|
|
1
|
+
import "./layers.Bobi_AGl.js";
|
|
2
2
|
var u = { paste: "วาง", pasteAsPlaintext: "วางโดยไม่มีการจัดรูปแบบ", pasteCharts: "วางแผนภูมิ", selectAll: "เลือกทั้งหมด", multiSelect: "", moveCanvas: "", cut: "ตัด", copy: "คัดลอก", copyAsPng: "คัดลองไปยังคลิปบอร์ดเป็น PNG", copyAsSvg: "คัดลองไปยังคลิปบอร์ดเป็น SVG", copyText: "คัดลองไปยังคลิปบอร์ดเป็นข้อความ", copySource: "", convertToCode: "", bringForward: "นำขึ้นข้างบน", sendToBack: "ย้ายไปข้างล่าง", bringToFront: "นำขึ้นข้างหน้า", sendBackward: "ย้ายไปข้างหลัง", delete: "ลบ", copyStyles: "คัดลอกรูปแบบ", pasteStyles: "วางรูปแบบ", stroke: "เส้นขอบ", background: "พื้นหลัง", fill: "เติมสี", strokeWidth: "น้ำหนักเส้นขอบ", strokeStyle: "รูปแบบเส้น", strokeStyle_solid: "เส้นทึบ", strokeStyle_dashed: "เส้นประ", strokeStyle_dotted: "จุด", sloppiness: "ความเลอะเทอะ", opacity: "ความทึบแสง", textAlign: "จัดข้อความ", edges: "ขอบ", sharp: "", round: "", arrowheads: "หัวลูกศร", arrowhead_none: "ไม่มี", arrowhead_arrow: "ลูกศร", arrowhead_bar: "แถบ", arrowhead_circle: "", arrowhead_circle_outline: "", arrowhead_triangle: "สามเหลี่ยม", arrowhead_triangle_outline: "", arrowhead_diamond: "", arrowhead_diamond_outline: "", fontSize: "ขนาดตัวอักษร", fontFamily: "แบบตัวอักษร", addWatermark: 'เพิ่มลายน้ำ "สร้างด้วย Excalidraw"', handDrawn: "ลายมือ", normal: "ปกติ", code: "โค้ด", small: "เล็ก", medium: "กลาง", large: "ใหญ่", veryLarge: "ใหญ่มาก", solid: "", hachure: "", zigzag: "", crossHatch: "", thin: "บาง", bold: "หนา", left: "ซ้าย", center: "กลาง", right: "ขวา", extraBold: "หนาพิเศษ", architect: "", artist: "ศิลปิน", cartoonist: "", fileTitle: "ชื่อไฟล์", colorPicker: "เลือกสีที่กำหนดเอง", canvasColors: "", canvasBackground: "", drawingCanvas: "", layers: "", actions: "การกระทำ", language: "ภาษา", liveCollaboration: "", duplicateSelection: "ทำสำเนา", untitled: "ไม่มีชื่อ", name: "ชื่อ", yourName: "ชื่อของคุณ", madeWithExcalidraw: "", 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: "" }, e = { clearReset: "รีเซ็ทผืนผ้าใบ", exportJSON: "ส่งออกไปยังไฟล์", exportImage: "ส่งออกเป็นรูปภาพ", export: "บันทึกไปยัง", copyToClipboard: "คัดลอกไปยังคลิปบอร์ด", save: "บันทึกเป็นไฟล์ปัจจุบัน", saveAs: "บันทึกเป็น", load: "เปิด", getShareableLink: "สร้างลิงค์ที่แชร์ได้", close: "ปิด", selectLanguage: "เลือกภาษา", scrollBackToContent: "เลื่อนกลับไปด้านบน", zoomIn: "ซูมเข้า", zoomOut: "ซูมออก", resetZoom: "รีเซ็ตการซูม", menu: "เมนู", done: "เสร็จสิ้น", edit: "แก้ไข", undo: "เลิกทำ", redo: "ทำซ้ำ", resetLibrary: "รีเซ็ตคลัง", createNewRoom: "สร้างห้องใหม่", fullScreen: "เต็มหน้าจอ", darkMode: "โหมดกลางคืน", lightMode: "โหมดกลางวัน", zenMode: "โหมด Zen", objectsSnapMode: "", exitZenMode: "ออกจากโหมด Zen", cancel: "ยกเลิก", clear: "เคลียร์", remove: "ลบ", embed: "สลับการฝัง", publishLibrary: "เผยแพร่", submit: "ตกลง", confirm: "ยืนยัน", embeddableInteractionButton: "คลิกเพื่อปฏิสัมพันธ์" }, a = { clearReset: "", couldNotCreateShareableLink: "ไม่สามารถสร้างลิงค์ได้", couldNotCreateShareableLinkTooBig: "", couldNotLoadInvalidFile: "ไม่สามารถโหลดไฟล์ที่ผิดพลาดได้", importBackendFailed: "เกิดข้อผิดพลาดจากการนำเข้าจากระบบหลังบ้าน", cannotExportEmptyCanvas: "ไม่สามารถนำออกจากผืนผ้าใบที่ว่างเปล่าได้", couldNotCopyToClipboard: "ไม่สามารถคัดลอกไปยังคลิปบอร์ดได้", decryptFailed: "ไม่สามารถถอดรหัสข้อมูลได้", uploadedSecurly: "การอัพโหลดได้ถูกเข้ารหัสแบบ end-to-end หมายความว่าเซิร์ฟเวอร์ของ Excalidraw และบุคคลอื่นไม่สามารถอ่านข้อมูลได้", loadSceneOverridePrompt: "", collabStopOverridePrompt: "", errorAddingToLibrary: "ไม่สามารถเพิ่มรายการเข้าไปในคลังได้", errorRemovingFromLibrary: "ไม่สามารถลบรายการนี้ออกจากคลังได้", confirmAddLibrary: "", imageDoesNotContainScene: "", cannotRestoreFromImage: "", invalidSceneUrl: "", resetLibrary: "", removeItemsFromsLibrary: "", invalidEncryptionKey: "", collabOfflineWarning: "" }, o = { unsupportedFileType: "ไม่รองรับชนิดของไฟล์นี้", imageInsertError: "ไม่สามารถเพิ่มรูปภาพได้ ลองอีกครั้งในภายหลัง", fileTooBig: "", svgImageInsertError: "", failedToFetchImage: "", invalidSVGString: "ไฟล์ SVG ผิดพลาด", cannotResolveCollabServer: "ไม่สามารถเชื่อต่อกับ collab เซิร์ฟเวอร์ได้ โปรดลองโหลดหน้านี้ใหม่และลองอีกครั้ง", importLibraryError: "", collabSaveFailed: "", collabSaveFailed_sizeExceeded: "", imageToolNotSupported: "", brave_measure_text_error: { line1: "", line2: "", line3: "", line4: "" }, libraryElementTypeError: { embeddable: "การเพิ่มองค์ประกอบที่ฝังยังไม่สามารถเพิ่มเข้าไปในไลบลารีได้", iframe: "", image: "การสนับสนุนสำหรับเพิ่มรูปภาพลงในไลบลารีจะมาในเร็ว ๆ นี้" }, asyncPasteFailedOnRead: "", asyncPasteFailedOnParse: "", copyToSystemClipboardFailed: "" }, r = { selection: "", image: "", rectangle: "สี่เหลี่ยมผืนผ้า", diamond: "", ellipse: "วงรี", arrow: "ลูกศร", line: "", freedraw: "", text: "ข้อความ", library: "คลัง", lock: "", penMode: "", link: "", eraser: "ยางลบ", frame: "", magicframe: "", embeddable: "ฝังเว็บ", laser: "", hand: "", extraTools: "เครื่องมืออื่นๆ", mermaidToExcalidraw: "", magicSettings: "" }, t = { canvasActions: "", selectedShapeActions: "", shapes: "รูปร่าง" }, i = { canvasPanning: "", linearElement: "", freeDraw: "", text: "", embeddable: "คลิกและลากเพื่อสร้างการฝังสำหรับเว็บไซต์", text_selected: "คลิกสองครั้งหรือกด ENTER เพื่อแก้ไขข้อความ", text_editing: "กดปุ่ม Esc หรือกด Ctrl, Cmd + Enter เพื่อเสร็จการแก้ไข", linearElementMulti: "คลิกที่จุดสุดท้ายหรือกด Escape หรือ Enter เพื่อเสร็จสิ้น", lockAngle: "", resize: "", resizeImage: "", rotate: "", lineEditor_info: "", lineEditor_pointSelected: `กดปุ่ม Delete เพื่อลบจุด
|
|
3
3
|
กด Ctrl หรือ Cmd + D เพื่อทำซ้ำหรือลากเพื่อเคลื่อนย้าย`, lineEditor_nothingSelected: "", placeImage: "", publishLibrary: "", bindTextToElement: "", deepBoxSelect: "", eraserRevert: "", firefox_clipboard_write: "", disableSnapping: "" }, l = { cannotShowPreview: "", canvasTooBig: "", canvasTooBigTip: "" }, n = { headingMain: "<button>กำลังรีโหลดหน้า</button>", clearCanvasMessage: "ถ้าโหลดไม่ได้ ให้ลอง <button>เคลียร์ผืนผ้าใบ</button>", clearCanvasCaveat: "", trackedToSentry: "", openIssueMessage: "", sceneContent: "" }, s = { desc_intro: "", desc_privacy: "", button_startSession: "เริ่มเซสชัน", button_stopSession: "หยุดเซสชัน", desc_inProgressIntro: "", desc_shareLink: "", desc_exitSession: "", shareTitle: "" }, d = { title: "" }, c = { disk_title: "", disk_details: "", disk_button: "", link_title: "", link_details: "", link_button: "", excalidrawplus_description: "", excalidrawplus_button: "", excalidrawplus_exportError: "ไม่สามารถส่งออกไปที่ Excalidraw+ ได้ในขณะนี้" }, D = { blog: "อ่านบล็อกของพวกเรา", click: "คลิก", deepSelect: "", deepBoxSelect: "", curvedArrow: "", curvedLine: "", documentation: "", doubleClick: "ดับเบิลคลิก", drag: "ลาก", editor: "", editLineArrowPoints: "", editText: "แก้ไขข้อความ / เพิ่มข้อความ", github: "", howto: "", or: "", preventBinding: "", tools: "", shortcuts: "", textFinish: "", textNewLine: "", title: "ช่วยเหลือ", view: "ดู", zoomToFit: "", zoomToSelection: "", toggleElementLock: "", movePageUpDown: "", movePageLeftRight: "ย้ายหน้าไปด้าน ซ้าย/ขวา" }, A = { title: "" }, B = { title: "", itemName: "", authorName: "ชื่อเจ้าของ", githubUsername: "ชื่อผู้ใช้ GitHub", twitterUsername: "ชื่อผู้ใช้ Twitter", libraryName: "", libraryDesc: "", website: "", placeholder: { authorName: "", libraryName: "", libraryDesc: "", githubHandle: "", twitterHandle: "", website: "" }, errors: { required: "", website: "" }, noteDescription: "", noteGuidelines: "", noteLicense: "", noteItems: "", atleastOneLibItem: "", republishWarning: "" }, m = { title: "", content: "" }, p = { resetLibrary: "", removeItemsFromLib: "" }, g = { header: "", label: { withBackground: "", onlySelected: "", darkMode: "โหมดกลางคืน", embedScene: "", scale: "", padding: "" }, tooltip: { embedScene: "" }, title: { exportToPng: "ส่งออกไปเป็น SVG", exportToSvg: "ส่งออกไปเป็น SVG", copyPngToClipboard: "คัดลอก PNG ไปยังคลิปบอร์ด" }, button: { exportToPng: "PNG", exportToSvg: "SVG", copyPngToClipboard: "คัดลอกไปยังคลิปบอร์ด" } }, b = { tooltip: "", link: "" }, C = { angle: "", element: "", elements: "", height: "", scene: "", selected: "", storage: "", title: "", total: "", version: "", versionCopy: "", versionNotAvailable: "", width: "" }, h = { addedToLibrary: "", copyStyles: "", copyToClipboard: "", copyToClipboardAsPng: "", fileSaved: "", fileSavedToFilename: "", canvas: "", selection: "", pasteAsSingleElement: "", unableToEmbed: "", unrecognizedLinkFormat: "" }, y = { transparent: "", black: "", white: "", red: "", pink: "", grape: "", violet: "", gray: "", blue: "", cyan: "", teal: "ฟ้าน้ำทะเล", green: "เขียว", yellow: "เหลือง", orange: "ส้ม", bronze: "ทองแดง" }, S = { app: { center_heading: "", center_heading_plus: "", menuHint: "" }, defaults: { menuHint: "", center_heading: "", toolbarHint: "", helpHint: "" } }, v = { mostUsedCustomColors: "", colors: "", shades: "", hexCode: "", noShades: "" }, w = { action: { exportToImage: { title: "", button: "", description: "" }, saveToDisk: { title: "", button: "", description: "" }, excalidrawPlus: { title: "", button: "", description: "" } }, modal: { loadFromFile: { title: "", button: "", description: "" }, shareableLink: { title: "", button: "", description: "" } } }, x = { title: "", button: "", description: "", syntax: "", preview: "" }, T = { labels: u, library: E, buttons: e, alerts: a, errors: o, toolBar: r, headings: t, hints: i, canvasError: l, errorSplash: n, roomDialog: s, errorDialog: d, exportDialog: c, helpDialog: D, clearCanvasDialog: A, publishDialog: B, publishSuccessDialog: m, confirmDialog: p, imageExportDialog: g, encrypted: b, stats: C, toast: h, colors: y, welcomeScreen: S, colorPicker: v, overwriteConfirm: w, mermaid: x };
|
|
4
4
|
export {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { g as il, i as Xi, ab as Nv, ac as Ov, ad as $v, ae as zv, af as Fv, ag as Bv, ah as Hv, ai as Xv, aj as Wv } from "./layers.
|
|
1
|
+
import { g as il, i as Xi, ab as Nv, ac as Ov, ad as $v, ae as zv, af as Fv, ag as Bv, ah as Hv, ai as Xv, aj as Wv } from "./layers.EOxonjVb.js";
|
|
2
2
|
import * as W from "react";
|
|
3
3
|
import K, { useCallback as Ye, useReducer as Y6, useEffect as ne, useDebugValue as Gv, useContext as _n, createContext as Wl, useRef as le, useState as ue, useMemo as ct, createElement as ht, forwardRef as Xt, Children as Vn, isValidElement as tr, cloneElement as Wo, Fragment as n0, useLayoutEffect as Pn, memo as ss, useImperativeHandle as Z6, version as Vv, useDeferredValue as jv } from "react";
|
|
4
4
|
import { jsx as p, jsxs as _, Fragment as re } from "react/jsx-runtime";
|
|
@@ -4557,7 +4557,7 @@ var TC = B(_("g", { children: [p("path", { stroke: "none", d: "M0 0h24v24H0z", f
|
|
|
4557
4557
|
return em = !1, Ek() && (r instanceof Zb || r instanceof Kb) || console.error("Failed to use workers for subsetting, falling back to the main thread.", r), a(e, t);
|
|
4558
4558
|
}
|
|
4559
4559
|
}) : a(e, t);
|
|
4560
|
-
}, Hh = null, Xh = null, HC = async () => (Hh || (Hh = import("./layers.
|
|
4560
|
+
}, Hh = null, Xh = null, HC = async () => (Hh || (Hh = import("./layers.BpJvpN15.js")), Hh), XC = async () => (Xh || (Xh = import("./layers.Dwhlgzai.js")), Xh), Wh = null, WC = () => (Wh || (Wh = ar(async () => {
|
|
4561
4561
|
let { WorkerUrl: e } = await HC();
|
|
4562
4562
|
return FC.create(e);
|
|
4563
4563
|
})), Wh), Jb = class rc {
|
|
@@ -9687,7 +9687,7 @@ var BP = y1, xi = BP, V = (e, t, n = !0, a) => {
|
|
|
9687
9687
|
}, rN = (e) => e.filter((t) => !t.isDeleted && !tl(t)), et = (e) => e.filter((t) => !t.isDeleted), x1 = (e) => !e.isDeleted, Y7 = (e) => et(e).map((t) => v0(t.type) ? { ...t, lastCommittedPoint: null } : t), lN = (e) => Y7(e), Z7 = (e) => Y7(e), K7 = async (e) => {
|
|
9688
9688
|
let t;
|
|
9689
9689
|
if (e.type === se.png) try {
|
|
9690
|
-
return await (await import("./layers.
|
|
9690
|
+
return await (await import("./layers.Bu6RuN9E.js")).decodePngMetadata(e);
|
|
9691
9691
|
} catch (n) {
|
|
9692
9692
|
throw n.message === "INVALID" ? new Ar("Image doesn't contain scene", "IMAGE_NOT_CONTAINS_SCENE_DATA") : new Ar("Error: cannot restore image");
|
|
9693
9693
|
}
|
|
@@ -9762,7 +9762,7 @@ var BP = y1, xi = BP, V = (e, t, n = !0, a) => {
|
|
|
9762
9762
|
return new File([r], t, { type: i });
|
|
9763
9763
|
}, uN = (e) => i3(e.slice(e.indexOf(",") + 1)), k1 = async (e, t) => {
|
|
9764
9764
|
if (e.type === se.svg) return e;
|
|
9765
|
-
let [n, a] = await Promise.all([import("./layers.
|
|
9765
|
+
let [n, a] = await Promise.all([import("./layers.vR3XCB3u.js").then((r) => r.p).then((r) => r.default), import("./layers.B7K7JjK6.js").then((r) => r.default)]), i = a({ pica: n({ features: ["js", "wasm"] }) });
|
|
9766
9766
|
if (t.outputType) {
|
|
9767
9767
|
let { outputType: r } = t;
|
|
9768
9768
|
i._create_blob = function(l) {
|
|
@@ -13055,7 +13055,7 @@ Bi.defaults = {
|
|
|
13055
13055
|
maxTailLength: 50
|
|
13056
13056
|
};
|
|
13057
13057
|
let lu = Bi;
|
|
13058
|
-
var y4 = p3(), { useAtom: St, useSetAtom: Ju, useAtomValue: w4, useStore: RV } = y4, rF = y4.Provider, pa = Sp(), lF = Qv({ "./locales/ar-SA.json": () => import("./layers.
|
|
13058
|
+
var y4 = p3(), { useAtom: St, useSetAtom: Ju, useAtomValue: w4, useStore: RV } = y4, rF = y4.Provider, pa = Sp(), lF = Qv({ "./locales/ar-SA.json": () => import("./layers.CNaL1x0J.js"), "./locales/az-AZ.json": () => import("./layers.D1ARsCR7.js"), "./locales/bg-BG.json": () => import("./layers.BMyH-wc1.js"), "./locales/bn-BD.json": () => import("./layers.CfsCKBHR.js"), "./locales/ca-ES.json": () => import("./layers.CMddYMVJ.js"), "./locales/cs-CZ.json": () => import("./layers.NvAQbmbJ.js"), "./locales/da-DK.json": () => import("./layers.DAE1VaH4.js"), "./locales/de-DE.json": () => import("./layers.e5W9wfVU.js"), "./locales/el-GR.json": () => import("./layers.CBnMO5ST.js"), "./locales/en.json": () => import("./layers.CJo31SmA.js"), "./locales/es-ES.json": () => import("./layers.CzExtYT5.js"), "./locales/eu-ES.json": () => import("./layers.D5O_yOnU.js"), "./locales/fa-IR.json": () => import("./layers.BGy3qA9M.js"), "./locales/fi-FI.json": () => import("./layers.DXdFBKoX.js"), "./locales/fr-FR.json": () => import("./layers.BAGG2a1n.js"), "./locales/gl-ES.json": () => import("./layers.Caxxk65W.js"), "./locales/he-IL.json": () => import("./layers.BA0dGi09.js"), "./locales/hi-IN.json": () => import("./layers.aN8OVNWa.js"), "./locales/hu-HU.json": () => import("./layers.BDxQ8zdI.js"), "./locales/id-ID.json": () => import("./layers.WySUMLPX.js"), "./locales/it-IT.json": () => import("./layers.t1JUEpzj.js"), "./locales/ja-JP.json": () => import("./layers.ByIHNzoj.js"), "./locales/kaa.json": () => import("./layers.Ck6Nb5N8.js"), "./locales/kab-KAB.json": () => import("./layers.DsRaXBhL.js"), "./locales/kk-KZ.json": () => import("./layers.CHIkFY0y.js"), "./locales/km-KH.json": () => import("./layers.D0J8nxCz.js"), "./locales/ko-KR.json": () => import("./layers.K0gicHf2.js"), "./locales/ku-TR.json": () => import("./layers.C2omihpx.js"), "./locales/lt-LT.json": () => import("./layers.uIYwLpVy.js"), "./locales/lv-LV.json": () => import("./layers.NSK_Z1G_.js"), "./locales/mr-IN.json": () => import("./layers.CC8XjKCB.js"), "./locales/my-MM.json": () => import("./layers.CGfCmkvg.js"), "./locales/nb-NO.json": () => import("./layers.C-4JO58G.js"), "./locales/nl-NL.json": () => import("./layers.Bl9JaWxm.js"), "./locales/nn-NO.json": () => import("./layers.CORtv219.js"), "./locales/oc-FR.json": () => import("./layers.D7zi7H5X.js"), "./locales/pa-IN.json": () => import("./layers.B_-1Q2jb.js"), "./locales/percentages.json": () => import("./layers.BemWc8B8.js"), "./locales/pl-PL.json": () => import("./layers.C5EJPB6O.js"), "./locales/pt-BR.json": () => import("./layers.C1zAs9hB.js"), "./locales/pt-PT.json": () => import("./layers.BXZ3khmo.js"), "./locales/ro-RO.json": () => import("./layers.DjV65BJC.js"), "./locales/ru-RU.json": () => import("./layers.BKydLdFf.js"), "./locales/si-LK.json": () => import("./layers.B8JwBWKp.js"), "./locales/sk-SK.json": () => import("./layers.CxerfuSn.js"), "./locales/sl-SI.json": () => import("./layers.DZbSpRlr.js"), "./locales/sv-SE.json": () => import("./layers.BRHC_Dk7.js"), "./locales/ta-IN.json": () => import("./layers.DgzPyXSw.js"), "./locales/th-TH.json": () => import("./layers.BlAa47AS.js"), "./locales/tr-TR.json": () => import("./layers.SlFhrxFV.js"), "./locales/uk-UA.json": () => import("./layers.C_2-WB1s.js"), "./locales/vi-VN.json": () => import("./layers.B_UH3ASv.js"), "./locales/zh-CN.json": () => import("./layers.DbiG24Wt.js"), "./locales/zh-HK.json": () => import("./layers.D0T1g-RM.js"), "./locales/zh-TW.json": () => import("./layers.B4pBNrAq.js") }), sF = 85, dl = { code: "en", label: "English" }, Qu = [dl, ...[{ code: "ar-SA", label: "العربية", rtl: !0 }, { code: "bg-BG", label: "Български" }, { code: "ca-ES", label: "Català" }, { code: "cs-CZ", label: "Česky" }, { code: "de-DE", label: "Deutsch" }, { code: "el-GR", label: "Ελληνικά" }, { code: "es-ES", label: "Español" }, { code: "eu-ES", label: "Euskara" }, { code: "fa-IR", label: "فارسی", rtl: !0 }, { code: "fi-FI", label: "Suomi" }, { code: "fr-FR", label: "Français" }, { code: "gl-ES", label: "Galego" }, { code: "he-IL", label: "עברית", rtl: !0 }, { code: "hi-IN", label: "हिन्दी" }, { code: "hu-HU", label: "Magyar" }, { code: "id-ID", label: "Bahasa Indonesia" }, { code: "it-IT", label: "Italiano" }, { code: "ja-JP", label: "日本語" }, { code: "kab-KAB", label: "Taqbaylit" }, { code: "kk-KZ", label: "Қазақ тілі" }, { code: "ko-KR", label: "한국어" }, { code: "ku-TR", label: "Kurdî" }, { code: "lt-LT", label: "Lietuvių" }, { code: "lv-LV", label: "Latviešu" }, { code: "my-MM", label: "Burmese" }, { code: "nb-NO", label: "Norsk bokmål" }, { code: "nl-NL", label: "Nederlands" }, { code: "nn-NO", label: "Norsk nynorsk" }, { code: "oc-FR", label: "Occitan" }, { code: "pa-IN", label: "ਪੰਜਾਬੀ" }, { code: "pl-PL", label: "Polski" }, { code: "pt-BR", label: "Português Brasileiro" }, { code: "pt-PT", label: "Português" }, { code: "ro-RO", label: "Română" }, { code: "ru-RU", label: "Русский" }, { code: "sk-SK", label: "Slovenčina" }, { code: "sv-SE", label: "Svenska" }, { code: "sl-SI", label: "Slovenščina" }, { code: "tr-TR", label: "Türkçe" }, { code: "uk-UA", label: "Українська" }, { code: "zh-CN", label: "简体中文" }, { code: "zh-TW", label: "繁體中文" }, { code: "vi-VN", label: "Tiếng Việt" }, { code: "mr-IN", label: "मराठी" }].filter((e) => eO[e.code] >= sF).sort((e, t) => e.label > t.label ? 1 : -1)], su = "__test__";
|
|
13059
13059
|
xe.DEV && Qu.unshift({ code: su, label: "test language" }, { code: `${su}.rtl`, label: "test language (rtl)", rtl: !0 });
|
|
13060
13060
|
var Nl = dl, mc = {}, E4 = async (e) => {
|
|
13061
13061
|
if (Nl = e, document.documentElement.dir = Nl.rtl ? "rtl" : "ltr", document.documentElement.lang = Nl.code, e.code.startsWith(su)) mc = {};
|
|
@@ -14113,7 +14113,7 @@ var lB = Z({ name: "toggleHandTool", label: "toolBar.hand", paletteName: "Toggle
|
|
|
14113
14113
|
let o = v7(t, n, a, { exportBackground: i, viewBackgroundColor: l, exportPadding: r, exportingFrame: c });
|
|
14114
14114
|
if (e === "png") {
|
|
14115
14115
|
let u = zo(o);
|
|
14116
|
-
return n.exportEmbedScene && (u = u.then((h) => import("./layers.
|
|
14116
|
+
return n.exportEmbedScene && (u = u.then((h) => import("./layers.Bu6RuN9E.js").then(({ encodePngMetadata: f }) => f({ blob: h, metadata: ad(t, n, a, "local") })))), Jc(u, { description: "Export to PNG", name: s, extension: n.exportEmbedScene ? "excalidraw.png" : "png", mimeTypes: [Vl.png], fileHandle: d });
|
|
14117
14117
|
} else if (e === "clipboard") try {
|
|
14118
14118
|
let u = zo(o);
|
|
14119
14119
|
await I7(u);
|
|
@@ -16498,7 +16498,7 @@ TTD mermaid definition render errror: ${T.message}`, "color: yellow"), rt("ai",
|
|
|
16498
16498
|
}
|
|
16499
16499
|
}, g = le(m);
|
|
16500
16500
|
g.current = m;
|
|
16501
|
-
let [b, v] = ue({ loaded: !1, api: import("./layers.
|
|
16501
|
+
let [b, v] = ue({ loaded: !1, api: import("./layers.CAOxJlI1.js") });
|
|
16502
16502
|
ne(() => {
|
|
16503
16503
|
(async () => (await b.api, v((k) => ({ ...k, loaded: !0 }))))();
|
|
16504
16504
|
}, [b.api]);
|
|
@@ -18032,7 +18032,7 @@ var ka = () => _n(kv), hd = () => _n(Mv), Ot = () => _n(qp), ei = () => _n(Jp),
|
|
|
18032
18032
|
this.addElementsFromPasteOrLibrary({ elements: S, files: v.files || null, position: "cursor", retainSeed: u });
|
|
18033
18033
|
} else if (v.text) {
|
|
18034
18034
|
if (v.text && QG(v.text)) {
|
|
18035
|
-
let E = await import("./layers.
|
|
18035
|
+
let E = await import("./layers.CAOxJlI1.js");
|
|
18036
18036
|
try {
|
|
18037
18037
|
let { elements: C, files: I } = await E.parseMermaidToExcalidraw(v.text), T = Uu(C, { regenerateIds: !0 });
|
|
18038
18038
|
this.addElementsFromPasteOrLibrary({ elements: T, files: I, position: "cursor" });
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { C as t, N as r } from "./layers.
|
|
2
|
-
import "./layers.
|
|
1
|
+
import { C as t, N as r } from "./layers.Bv8I5KSG.js";
|
|
2
|
+
import "./layers.Bobi_AGl.js";
|
|
3
3
|
var m = import.meta.url ? new URL(import.meta.url) : void 0;
|
|
4
4
|
typeof window > "u" && typeof self < "u" && (self.onmessage = async (a) => {
|
|
5
5
|
switch (a.data.command) {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const N=require("./layers.
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const N=require("./layers.DxEDwmZI.js"),U=require("./layers.DAgYJbie.js");require("./layers.Dxr2o7ON.js");require("lodash-es/memoize.js");require("lodash-es/merge.js");require("lodash-es/isEmpty.js");const G=20,it={rect:"rectangle",circle:"ellipse"},Z={startOnLoad:!1,flowchart:{curve:"linear"},themeVariables:{fontSize:`${G*1.25}px`},maxEdges:500,maxTextSize:5e4};class F{constructor({converter:e}){this.convert=(s,r)=>this.converter(s,{...r,fontSize:r.fontSize||G}),this.converter=e}}var v;(function(t){t.ROUND="round",t.STADIUM="stadium",t.DOUBLECIRCLE="doublecircle",t.CIRCLE="circle",t.DIAMOND="diamond"})(v||(v={}));var W;(function(t){t.COLOR="color"})(W||(W={}));var X;(function(t){t.FILL="fill",t.STROKE="stroke",t.STROKE_WIDTH="stroke-width",t.STROKE_DASHARRAY="stroke-dasharray"})(X||(X={}));var $={},Q;function ct(){if(Q)return $;Q=1,Object.defineProperty($,"__esModule",{value:!0}),$.removeMarkdown=void 0;var t=function(e,s){s===void 0&&(s={listUnicodeChar:""}),s=s||{},s.listUnicodeChar=s.hasOwnProperty("listUnicodeChar")?s.listUnicodeChar:!1,s.stripListLeaders=s.hasOwnProperty("stripListLeaders")?s.stripListLeaders:!0,s.gfm=s.hasOwnProperty("gfm")?s.gfm:!0,s.useImgAltText=s.hasOwnProperty("useImgAltText")?s.useImgAltText:!0,s.preserveLinks=s.hasOwnProperty("preserveLinks")?s.preserveLinks:!1;var r=e||"";r=r.replace(/^(-\s*?|\*\s*?|_\s*?){3,}\s*$/gm,"");try{s.stripListLeaders&&(s.listUnicodeChar?r=r.replace(/^([\s\t]*)([\*\-\+]|\d+\.)\s+/gm,s.listUnicodeChar+" $1"):r=r.replace(/^([\s\t]*)([\*\-\+]|\d+\.)\s+/gm,"$1")),s.gfm&&(r=r.replace(/\n={2,}/g,`
|
|
2
2
|
`).replace(/~{3}.*\n/g,"").replace(/~~/g,"").replace(/`{3}.*\n/g,"")),s.preserveLinks&&(r=r.replace(/\[(.*?)\][\[\(](.*?)[\]\)]/g,"$1 ($2)")),r=r.replace(/<[^>]*>/g,"").replace(/^[=\-]{2,}\s*$/g,"").replace(/\[\^.+?\](\: .*?$)?/g,"").replace(/\s{0,2}\[.*?\]: .*?$/g,"").replace(/\!\[(.*?)\][\[\(].*?[\]\)]/g,s.useImgAltText?"$1":"").replace(/\[(.*?)\][\[\(].*?[\]\)]/g,"$1").replace(/^\s{0,3}>\s?/g,"").replace(/(^|\n)\s{0,3}>\s?/g,`
|
|
3
3
|
|
|
4
4
|
`).replace(/^\s{1,2}\[(.*?)\]: (\S+)( ".*?")?\s*$/g,"").replace(/^(\n)?\s{0,}#{1,6}\s+| {0,}(\n)?\s{0,}#{0,} {0,}(\n)?\s{0,}$/gm,"$1$2$3").replace(/([\*_]{1,3})(\S.*?\S{0,1})\1/g,"$2").replace(/([\*_]{1,3})(\S.*?\S{0,1})\1/g,"$2").replace(/(`{3,})(.*?)\1/gm,"$2").replace(/`(.+?)`/g,"$1").replace(/\n{2,}/g,`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./layers.
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./layers.DxEDwmZI.js");exports.decodePngMetadata=e.iC;exports.encodePngMetadata=e._p;exports.getTEXtChunk=e.X9;
|
|
@@ -4,7 +4,7 @@ import { useTranslation as G } from "react-i18next";
|
|
|
4
4
|
import { useLexicalComposerContext as V } from "@lexical/react/LexicalComposerContext";
|
|
5
5
|
import { Menu as R, Flex as J, Popover as z, Stack as He, Button as j, Box as Be, LoadingOverlay as Ge } from "@mantine/core";
|
|
6
6
|
import { $getNodeByKey as x, COMMAND_PRIORITY_LOW as Ve, $setSelection as Xe } from "lexical";
|
|
7
|
-
import { B as Ye, D as Ze, F as qe, G as Je, J as he, L as K, N as Qe, P as Ke, A as oe, n as et, Q as tt, H as M, R as Ce, q as De, S as Le, U as Ne, V as T, o as Oe, W as ot, X as nt, s as we, Y as it, C as Pe, Z as rt, _ as at, a0 as Q, a1 as lt, a2 as st, a3 as dt, a4 as ct, a5 as ut, a6 as pt, m as mt, k as ke, O as gt, a7 as ft, K as be, a8 as ve, r as ht, a9 as wt, aa as kt } from "./layers.
|
|
7
|
+
import { B as Ye, D as Ze, F as qe, G as Je, J as he, L as K, N as Qe, P as Ke, A as oe, n as et, Q as tt, H as M, R as Ce, q as De, S as Le, U as Ne, V as T, o as Oe, W as ot, X as nt, s as we, Y as it, C as Pe, Z as rt, _ as at, a0 as Q, a1 as lt, a2 as st, a3 as dt, a4 as ct, a5 as ut, a6 as pt, m as mt, k as ke, O as gt, a7 as ft, K as be, a8 as ve, r as ht, a9 as wt, aa as kt } from "./layers.EOxonjVb.js";
|
|
8
8
|
import { AttachmentsGalleryModal as Se, showErrorNotification as bt } from "@layers-app/shared";
|
|
9
9
|
import { useLexicalEditable as ne } from "@lexical/react/useLexicalEditable";
|
|
10
10
|
import { useDisclosure as H } from "@mantine/hooks";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { d as i } from "./layers.Bg7BQcmt.js";
|
|
2
|
-
import { L as o } from "./layers.
|
|
2
|
+
import { L as o } from "./layers.DrXV81R5.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.Bobi_AGl.js";
|
|
2
2
|
var u = { paste: "貼り付け", pasteAsPlaintext: "書式なしテキストとして貼り付け", pasteCharts: "チャートの貼り付け", selectAll: "すべて選択", multiSelect: "複数選択", moveCanvas: "キャンバスを移動", cut: "切り取り", copy: "コピー", copyAsPng: "PNGとしてクリップボードへコピー", copyAsSvg: "SVGとしてクリップボードへコピー", copyText: "テキストとしてクリップボードにコピー", copySource: "", convertToCode: "", bringForward: "前面に移動", sendToBack: "最背面に移動", bringToFront: "最前面に移動", sendBackward: "背面に移動", delete: "削除", copyStyles: "スタイルのコピー", pasteStyles: "スタイルの貼り付け", stroke: "線", background: "背景", fill: "塗りつぶし", strokeWidth: "線の太さ", strokeStyle: "線の種類", strokeStyle_solid: "実線", strokeStyle_dashed: "破線", strokeStyle_dotted: "点線", sloppiness: "ばらつき加減", opacity: "透明度", textAlign: "文字の配置", edges: "角", sharp: "四角", round: "丸", arrowheads: "線の終点", arrowhead_none: "なし", arrowhead_arrow: "矢印", arrowhead_bar: "バー", arrowhead_circle: "", arrowhead_circle_outline: "", arrowhead_triangle: "三角", arrowhead_triangle_outline: "", arrowhead_diamond: "", arrowhead_diamond_outline: "", fontSize: "フォントの大きさ", fontFamily: "フォントの種類", addWatermark: '"Made with 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: "" }, F = { noItems: "まだアイテムが追加されていません…", hint_emptyLibrary: "キャンバス上のアイテムを選択してここに追加するか、以下の公開リポジトリからライブラリをインストールしてください。", hint_emptyPrivateLibrary: "キャンバス上のアイテムを選択すると、ここに追加されます。" }, E = { clearReset: "キャンバスのリセット", exportJSON: "ファイルへエクスポート", exportImage: "画像のエクスポート...", export: "名前を付けて保存...", copyToClipboard: "クリップボードにコピー", save: "現在のファイルに保存", saveAs: "名前を付けて保存", load: "開く", getShareableLink: "共有URLの取得", close: "閉じる", selectLanguage: "言語の選択", scrollBackToContent: "コンテンツまでスクロールで戻る", zoomIn: "拡大", zoomOut: "縮小", resetZoom: "拡大/縮小をリセット", menu: "メニュー", done: "完了", edit: "編集", undo: "元に戻す", redo: "やり直し", resetLibrary: "ライブラリをリセット", createNewRoom: "新しい部屋を作成する", fullScreen: "フルスクリーン", darkMode: "ダークモード", lightMode: "ライトモード", zenMode: "Zenモード", objectsSnapMode: "", exitZenMode: "集中モードをやめる", cancel: "キャンセル", clear: "消去", remove: "削除", embed: "埋め込みの切り替え", publishLibrary: "公開", submit: "送信", confirm: "確認", embeddableInteractionButton: "" }, B = { clearReset: "この操作によってキャンバス全体が消えます。よろしいですか?", couldNotCreateShareableLink: "共有URLを作成できませんでした。", 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 { o as Ut, p as zt, s as Mt, a as Ht, c as Kt, b as Xt, g as Y, j as ot, l as D, r as Wt, K as Jt } from "./layers.
|
|
1
|
+
import { o as Ut, p as zt, s as Mt, a as Ht, c as Kt, b as Xt, g as Y, j as ot, l as D, r as Wt, K as Jt } from "./layers.DrXV81R5.js";
|
|
2
2
|
var gt = (function() {
|
|
3
3
|
var t = function(C, r, n, i) {
|
|
4
4
|
for (n = n || {}, i = C.length; i--; n[C[i]] = r)
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "./layers.
|
|
1
|
+
import "./layers.Bobi_AGl.js";
|
|
2
2
|
var e = { paste: "Lim inn", pasteAsPlaintext: "Lim inn som klartekst", pasteCharts: "Lim inn diagrammer", selectAll: "Velg alt", multiSelect: "Legg til element i utvalg", moveCanvas: "Flytt lerretet", cut: "Klipp ut", copy: "Kopier", copyAsPng: "Kopier til PNG", copyAsSvg: "Kopier til utklippstavlen som SVG", copyText: "Kopier til utklippstavlen som tekst", copySource: "", convertToCode: "", bringForward: "Flytt framover", sendToBack: "Send bakerst", bringToFront: "Flytt forrest", sendBackward: "Send bakover", delete: "Slett", copyStyles: "Kopier stiler", pasteStyles: "Lim inn stiler", stroke: "Strek", background: "Bakgrunn", fill: "Fyll", strokeWidth: "Strektykkelse", strokeStyle: "Strekstil", strokeStyle_solid: "Heltrukket", strokeStyle_dashed: "Stiplet", strokeStyle_dotted: "Prikket", sloppiness: "Ujevnhet", opacity: "Synlighet", textAlign: "Tekstjustering", edges: "Kanter", sharp: "Skarp", round: "Rund", arrowheads: "Pilspisser", arrowhead_none: "Ingen", arrowhead_arrow: "Pil", arrowhead_bar: "Søyle", arrowhead_circle: "", arrowhead_circle_outline: "", arrowhead_triangle: "Trekant", arrowhead_triangle_outline: "", arrowhead_diamond: "", arrowhead_diamond_outline: "", fontSize: "Skriftstørrelse", fontFamily: "Fontfamilie", addWatermark: 'Legg til "Laget med Excalidraw"', handDrawn: "Håndtegnet", normal: "Normal", code: "Kode", small: "Liten", medium: "Medium", large: "Stor", veryLarge: "Svært stor", solid: "Helfarge", hachure: "Skravert", zigzag: "Sikk-sakk", crossHatch: "Krysskravert", thin: "Tynn", bold: "Tykk", left: "Venstre", center: "Midtstill", right: "Høyre", extraBold: "Ekstra tykk", architect: "Arkitekt", artist: "Kunstner", cartoonist: "Tegner", fileTitle: "Filnavn", colorPicker: "Fargevelger", canvasColors: "Brukes på lerretet", canvasBackground: "Lerretsbakgrunn", drawingCanvas: "Lerret", layers: "Lag", actions: "Handlinger", language: "Språk", liveCollaboration: "Sanntids-samarbeid...", duplicateSelection: "Dupliser", untitled: "Uten navn", name: "Navn", yourName: "Ditt navn", madeWithExcalidraw: "Laget med Excalidraw", group: "Gruppér utvalg", ungroup: "Avgruppér utvalg", collaborators: "Samarbeidspartnere", showGrid: "Vis rutenett", addToLibrary: "Legg til i bibliotek", removeFromLibrary: "Fjern fra bibliotek", libraryLoadingMessage: "Laster bibliotek…", libraries: "Bla gjennom biblioteker", loadingScene: "Laster inn scene…", align: "Juster", alignTop: "Juster øverst", alignBottom: "Juster nederst", alignLeft: "Juster venstre", alignRight: "Juster høyre", centerVertically: "Midtstill vertikalt", centerHorizontally: "Midtstill horisontalt", distributeHorizontally: "Distribuer horisontalt", distributeVertically: "Distribuer vertikalt", flipHorizontal: "Snu horisontalt", flipVertical: "Snu vertikalt", viewMode: "Visningsmodus", share: "Del", showStroke: "Vis fargevelger for kantfarge", showBackground: "Vis fargevelger for bakgrunnsfarge", toggleTheme: "Veksle tema", personalLib: "Personlig bibliotek", excalidrawLib: "Excalidraw-bibliotek", decreaseFontSize: "Reduser skriftstørrelse", increaseFontSize: "Øk skriftstørrelse", unbindText: "Avbind tekst", bindText: "Bind tekst til beholderen", createContainerFromText: "La tekst flyte i en beholder", link: { edit: "Rediger lenke", editEmbed: "Rediger lenke og bygg inn", create: "Opprett lenke", createEmbed: "Opprett lenke og bygg inn", label: "Lenke", labelEmbed: "Lenk & bygg inn", empty: "Ingen lenke er valgt" }, lineEditor: { edit: "Rediger linje", exit: "Avslutt linjeredigering" }, elementLock: { lock: "Lås", unlock: "Lås opp", lockAll: "Lås alle", unlockAll: "Lås opp alle" }, statusPublished: "Publisert", sidebarLock: "Holde sidemenyen åpen", selectAllElementsInFrame: "Velg alle elementene i rammen", removeAllElementsFromFrame: "Fjern alle elementer fra rammen", eyeDropper: "Velg farge fra lerretet", textToDiagram: "", prompt: "" }, t = { noItems: "Ingen elementer lagt til ennå...", hint_emptyLibrary: "Velg et objekt på lerretet for å legge det til her, eller installer et bibliotek fra den offentlige samlingen under.", hint_emptyPrivateLibrary: "Velg et objekt på lerretet for å legge det til her." }, r = { clearReset: "Tøm lerretet og tilbakestill bakgrunnsfargen", exportJSON: "Eksporter til fil", exportImage: "Eksporter bilde...", export: "Lagre som...", copyToClipboard: "Kopier til utklippstavle", save: "Lagre til aktiv fil", saveAs: "Lagre som", load: "Åpne", getShareableLink: "Få delingslenke", close: "Lukk", selectLanguage: "Velg språk", scrollBackToContent: "Skroll tilbake til innhold", zoomIn: "Zoom inn", zoomOut: "Zoom ut", resetZoom: "Nullstill zoom", menu: "Meny", done: "Ferdig", edit: "Rediger", undo: "Angre", redo: "Gjør om", resetLibrary: "Nullstill bibliotek", createNewRoom: "Opprett et 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: "Slå av/på innebygging", publishLibrary: "Publiser", submit: "Send inn", confirm: "Bekreft", embeddableInteractionButton: "Klikk for å samhandle" }, i = { clearReset: "Dette vil tømme lerretet. Er du sikker?", couldNotCreateShareableLink: "Kunne ikke lage delbar lenke.", couldNotCreateShareableLinkTooBig: "Kunne ikke opprette lenke til deling: scenen er for stor", couldNotLoadInvalidFile: "Kunne ikke laste inn ugyldig fil", importBackendFailed: "Importering av backend feilet.", cannotExportEmptyCanvas: "Kan ikke eksportere et tomt lerret.", couldNotCopyToClipboard: "Kunne ikke kopiere til utklippstavlen.", decryptFailed: "Kunne ikke dekryptere data.", uploadedSecurly: "Opplastingen er kryptert og kan ikke leses av Excalidraw-serveren eller tredjeparter.", loadSceneOverridePrompt: "Å laste inn ekstern tegning vil erstatte det eksisterende innholdet. Ønsker du å fortsette?", collabStopOverridePrompt: `Hvis du slutter økten, overskrives din forrige, lokalt lagrede tegning. Er du sikker?
|
|
3
3
|
|
|
4
4
|
(Hvis du ønsker å beholde din lokale tegning, bare lukk nettleserfanen i stedet.)`, errorAddingToLibrary: "Kunne ikke legge element i biblioteket", errorRemovingFromLibrary: "Kunne ikke fjerne element fra biblioteket", confirmAddLibrary: "Dette vil legge til {{numShapes}} figur(er) i biblioteket ditt. Er du sikker?", imageDoesNotContainScene: "Det ser ikke ut til at dette bildet inneholder noen scenedata. Har du aktivert innebygging av scene under eksporten?", cannotRestoreFromImage: "Scenen kunne ikke gjenopprettes fra denne bildefilen", invalidSceneUrl: "Kunne ikke importere scene fra den oppgitte URL-en. Den er enten ødelagt, eller inneholder ikke gyldig Excalidraw JSON-data.", resetLibrary: "Dette vil tømme biblioteket ditt. Er du sikker?", removeItemsFromsLibrary: "Slett {{count}} element(er) fra biblioteket?", invalidEncryptionKey: "Krypteringsnøkkel må ha 22 tegn. Live-samarbeid er deaktivert.", collabOfflineWarning: `Ingen Internett-tilkobling tilgjengelig.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("@lexical/react/LexicalComposerContext"),a=require("./layers.
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("@lexical/react/LexicalComposerContext"),a=require("./layers.D61oDZH6.js");function i(){const[e]=r.useLexicalComposerContext();return a.useExcalidrawBehaviour(e),null}exports.$createExcalidrawNode=a.$createExcalidrawNode;exports.$isExcalidrawNode=a.$isExcalidrawNode;exports.ExcalidrawNode=a.ExcalidrawNode;exports.INSERT_EXCALIDRAW_COMMAND=a.INSERT_EXCALIDRAW_COMMAND;exports.languageToLocaleMap=a.languageToLocaleMap;exports.parseExcalidrawData=a.parseExcalidrawData;exports.ExcalidrawPlugin=i;
|