@layers-app/editor 0.7.26 → 0.7.28
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +2 -2
- package/dist/index.js +2 -2
- package/dist/{layers.D1wXYOhT.js → layers.-K6XAUyt.js} +2 -2
- package/dist/{layers.Bxp23eQH.js → layers.-u4Vmb7M.js} +1 -1
- package/dist/{layers.8RkOJVIE.js → layers.0-wdfi_m.js} +1 -1
- package/dist/{layers.nFOcuDzr.js → layers.1XcTHUqP.js} +1 -1
- package/dist/{layers.s4n1roZI.js → layers.2AQWVFPH.js} +1 -1
- package/dist/{layers.jfJgHirm.js → layers.4BoQd2qu.js} +1 -1
- package/dist/{layers.DpvmCmKj.js → layers.6jtKBint.js} +1 -1
- package/dist/{layers.DrAry1Kf.js → layers.81eb7U9V.js} +1 -1
- package/dist/{layers.BTzUbI88.js → layers.9-7eOU9L.js} +1 -1
- package/dist/{layers.BTuPozoV.js → layers.9WEyu4e3.js} +1 -1
- package/dist/{layers.EtcHUsqn.js → layers.A16l5L9r.js} +1 -1
- package/dist/{layers.mBB8ss0I.js → layers.A2gyQB4i.js} +1 -1
- package/dist/{layers.d30Rgcib.js → layers.B-EjoFLj.js} +1 -1
- package/dist/{layers.Bze40RCj.js → layers.B-JO3yHH.js} +1 -1
- package/dist/{layers.C1tEKsbt.js → layers.B-W2ZH9t.js} +1 -1
- package/dist/{layers.B7edFg4K.js → layers.B0NE-QDY.js} +1 -1
- package/dist/{layers.Bd3FesAt.js → layers.B0jMSuzE.js} +1 -1
- package/dist/{layers.Ddc-JH2d.js → layers.B0qlxBRp.js} +1 -1
- package/dist/{layers.CtQWlaO1.js → layers.B1m1J3sN.js} +1 -1
- package/dist/{layers.qT-9akPN.js → layers.B32BxnLq.js} +1 -1
- package/dist/{layers.DMqa4UuA.js → layers.B45Bk4hG.js} +3 -3
- package/dist/{layers.DfDXn4TD.js → layers.B6vHhDgC.js} +1 -1
- package/dist/{layers.B6c3HMGt.js → layers.B7RnfEg3.js} +1 -1
- package/dist/{layers.BTCB0JpX.js → layers.BAkxV86W.js} +1 -1
- package/dist/{layers.D5OBgP7h.js → layers.BB9nVgxT.js} +3 -3
- package/dist/{layers.em6rytD5.js → layers.BBONQU_w.js} +1 -1
- package/dist/{layers.CqVF0OGH.js → layers.BCQaG_Mx.js} +1 -1
- package/dist/{layers.BPcVGKN8.js → layers.BCuCnYPm.js} +1 -1
- package/dist/{layers.My9kZFhO.js → layers.BDg-1hm8.js} +4 -4
- package/dist/{layers.Bd6kH7xt.js → layers.BFBaV3bV.js} +1 -1
- package/dist/{layers.B2qAOIlo.js → layers.BFvRv4wU.js} +1 -1
- package/dist/{layers.dyig4B3u.js → layers.BH9wLfk4.js} +7 -7
- package/dist/{layers.C2FJqDkI.js → layers.BHI46H1z.js} +1 -1
- package/dist/{layers.CgywpxNj.js → layers.BHM59-I_.js} +1 -1
- package/dist/{layers.DtdLS6Dk.js → layers.BIucgDna.js} +1 -1
- package/dist/{layers.ClGUwzhg.js → layers.BJso4deQ.js} +1 -1
- package/dist/{layers.DIPoQibL.js → layers.BO1jbvkd.js} +1 -1
- package/dist/{layers.DlaPU6IV.js → layers.BQE3wx5Z.js} +1 -1
- package/dist/layers.BRhDfRPH.js +6 -0
- package/dist/{layers.NZf4E-Wg.js → layers.BUom78Le.js} +1 -1
- package/dist/{layers.BwDyCg1e.js → layers.BVej4iX2.js} +1 -1
- package/dist/{layers.B3I1RQ68.js → layers.BXpB8EUK.js} +8 -8
- package/dist/{layers.6sikPcq3.js → layers.BYeSiF96.js} +1 -1
- package/dist/{layers.ByrUhAUL.js → layers.BZAbhyWV.js} +1 -1
- package/dist/{layers.CickKalz.js → layers.B_U7irMi.js} +1 -1
- package/dist/{layers.Bc3f0bzg.js → layers.B_xH_Blk.js} +1 -1
- package/dist/{layers.-wjKgffX.js → layers.BbU8rdIn.js} +5 -5
- package/dist/{layers.D3nu7CUH.js → layers.BetW2lFi.js} +1 -1
- package/dist/{layers.CsPg2KjG.js → layers.BftfC1e3.js} +1 -1
- package/dist/{layers.BFc73oZr.js → layers.BhvL13o1.js} +1 -1
- package/dist/{layers.LvEP7msO.js → layers.BlGkyqRt.js} +6 -6
- package/dist/{layers.BIEejIsW.js → layers.Blg4WjeE.js} +1 -1
- package/dist/{layers.DTagsNpb.js → layers.Bm___DQ9.js} +1 -1
- package/dist/{layers.DzhNjcrw.js → layers.BmpBzHwc.js} +1 -1
- package/dist/{layers.iFeAlI6H.js → layers.Bms5-Njk.js} +1 -1
- package/dist/{layers.CfOpBTNW.js → layers.Bnj0mEGS.js} +1 -1
- package/dist/{layers.BKpRcWnp.js → layers.BqNPbeNm.js} +1 -1
- package/dist/layers.Bq_yN_zI.js +129 -0
- package/dist/{layers.BtjJdW-J.js → layers.BubAV8nw.js} +5 -5
- package/dist/{layers.Dx95JHIq.js → layers.Buvh21JB.js} +1 -1
- package/dist/{layers.6w8B4hFk.js → layers.Bw3WbZQY.js} +1 -1
- package/dist/{layers.DptMIwKT.js → layers.Bw5aUahq.js} +1 -1
- package/dist/{layers.BY_J4jYD.js → layers.BxA1TWHm.js} +1 -1
- package/dist/{layers.B6rDUX-b.js → layers.BzqzCzif.js} +1 -1
- package/dist/{layers.BbH61zxx.js → layers.C-hry5fZ.js} +1 -1
- package/dist/{layers.O1t5sl2z.js → layers.C0QmTcnJ.js} +1 -1
- package/dist/{layers.C_X4Kdn2.js → layers.C1ItbR8w.js} +1 -1
- package/dist/layers.C3R5jb9I.js +1 -0
- package/dist/{layers.BjOHqBbv.js → layers.C4CzciFP.js} +1 -1
- package/dist/{layers.DQ87eVFA.js → layers.C4i_UETZ.js} +1 -1
- package/dist/{layers.DOZaSqiR.js → layers.C4jVKLhx.js} +1 -1
- package/dist/{layers.Bex4q159.js → layers.C5-g5y0Q.js} +1 -1
- package/dist/{layers.BN9FdsoO.js → layers.C7feEOP1.js} +1 -1
- package/dist/{layers.ChP80TqX.js → layers.C7uS8hg1.js} +1 -1
- package/dist/{layers.CY5BDIai.js → layers.C8oZo78Z.js} +1 -1
- package/dist/{layers.BlEI10xV.js → layers.CDte-nkj.js} +1 -1
- package/dist/{layers.D9_JSxkr.js → layers.CEhJ9py9.js} +1 -1
- package/dist/{layers.gGLUL8Z7.js → layers.CG8oE0Hv.js} +1 -1
- package/dist/{layers.DQ5ZJRxN.js → layers.CJXy1ZqQ.js} +1 -1
- package/dist/{layers.DLV3QO1y.js → layers.CPwVAHl4.js} +2 -2
- package/dist/{layers.pWVdZ1OI.js → layers.CQGnebM-.js} +3 -3
- package/dist/{layers.CkYHBZT_.js → layers.CQyPSZeL.js} +1 -1
- package/dist/{layers.BO9n3EnR.js → layers.CXFVifFw.js} +1 -1
- package/dist/{layers.C8d3D9Lb.js → layers.CX_Napdc.js} +1 -1
- package/dist/{layers.BbPfMVtY.js → layers.CYfLrNUA.js} +1 -1
- package/dist/{layers.DeTIo1zr.js → layers.CYgX_bGj.js} +1 -1
- package/dist/{layers.DKm1mN2X.js → layers.CZBDZRvE.js} +1 -1
- package/dist/{layers.mGvgS9vW.js → layers.C_uNBypV.js} +1 -1
- package/dist/{layers.DBfOwxPO.js → layers.Ca4gf7HS.js} +1 -1
- package/dist/{layers.ClfyzbH1.js → layers.CaCKxEGD.js} +1 -1
- package/dist/{layers.DiSdECjm.js → layers.Cabx4Zwd.js} +3 -3
- package/dist/{layers.DOQpvHnX.js → layers.CbZNX9Os.js} +1 -1
- package/dist/{layers.DxqWMo04.js → layers.CfeZ6h5L.js} +1 -1
- package/dist/{layers.C8ZWzhQl.js → layers.Chx7G3qU.js} +1 -1
- package/dist/{layers.C4MSW5Y5.js → layers.CjUX-QAb.js} +1 -1
- package/dist/{layers.Ds_tgW-V.js → layers.Clu66yQ7.js} +1 -1
- package/dist/{layers.BuslMnX9.js → layers.CmHR6T-1.js} +1 -1
- package/dist/{layers.Bsoxckn8.js → layers.CoFCRrxw.js} +2 -2
- package/dist/{layers.BqdhwtFO.js → layers.CoOo5LnH.js} +1 -1
- package/dist/{layers.AAIYJoWX.js → layers.CqsQIgQ6.js} +1 -1
- package/dist/{layers.DS_qYTUu.js → layers.CrDshNvC.js} +1 -1
- package/dist/{layers.DElPAzG2.js → layers.CszAj7Fd.js} +1 -1
- package/dist/{layers.BB8EnLVz.js → layers.CtZ0BE0L.js} +1 -1
- package/dist/{layers.8VJeG9rG.js → layers.CtvE6wwf.js} +1 -1
- package/dist/{layers.CmxS83Nk.js → layers.Cu8TZHqP.js} +4 -4
- package/dist/{layers.B4bWwT6u.js → layers.CuiVU5Zy.js} +3 -3
- package/dist/{layers.vJOgspvU.js → layers.Cv2e6wbN.js} +24 -24
- package/dist/{layers.B2yHR68Q.js → layers.Cx5jz572.js} +1 -1
- package/dist/{layers.B3z0mDcg.js → layers.CxUIWnRK.js} +1 -1
- package/dist/{layers.DfsVAKCW.js → layers.CzUDv8_k.js} +1 -1
- package/dist/{layers.D01DTzLv.js → layers.D5DHDatY.js} +1 -1
- package/dist/{layers.CJF69bGz.js → layers.D5FKq9qN.js} +1 -1
- package/dist/{layers.BXpw5pIX.js → layers.D7WV8-Ds.js} +1 -1
- package/dist/{layers.hoCWKOtV.js → layers.D8VZgQ82.js} +1 -1
- package/dist/{layers.DFF50PT4.js → layers.D8xoXbGt.js} +1 -1
- package/dist/{layers.BiSuaFI7.js → layers.DA6kUGIl.js} +1 -1
- package/dist/{layers.BsEw_gIa.js → layers.DC6mW7_P.js} +1 -1
- package/dist/{layers.Cn5BBMoQ.js → layers.DD87BrfH.js} +1 -1
- package/dist/{layers.CcZVMGJ2.js → layers.DDv3I-o_.js} +1 -1
- package/dist/{layers.BGC5ykCP.js → layers.DE83jlXd.js} +4 -4
- package/dist/{layers.W7ATjiDf.js → layers.DLFwheCh.js} +1 -1
- package/dist/{layers.C3DvXqUP.js → layers.DM8lY-ID.js} +1 -1
- package/dist/{layers.B4ck5N3X.js → layers.DMEjtIy5.js} +1 -1
- package/dist/{layers.1bJ3Mbz9.js → layers.DN2wwPSk.js} +4 -4
- package/dist/{layers.CanJemCn.js → layers.DNzLfRJq.js} +1 -1
- package/dist/{layers.C34ZNIfL.js → layers.DP15dDJj.js} +1 -1
- package/dist/{layers.C2k_QfG3.js → layers.DPqS8xZd.js} +2 -2
- package/dist/{layers.Caliy2g7.js → layers.DPwH9SME.js} +1 -1
- package/dist/{layers.XMCRkU_N.js → layers.DR9giMGx.js} +1 -1
- package/dist/{layers.kZlGqXlo.js → layers.DRohTdf8.js} +1 -1
- package/dist/{layers.D5VfbQu6.js → layers.DUZrzdMN.js} +1 -1
- package/dist/{layers.BaT04AWS.js → layers.DUgGIGfn.js} +1 -1
- package/dist/{layers.C7AUSLfi.js → layers.DUmbkrIR.js} +1 -1
- package/dist/{layers.RIwhwY8U.js → layers.DVY5-J7k.js} +2 -2
- package/dist/{layers.B33gaZah.js → layers.DWV547Su.js} +1 -1
- package/dist/{layers.DkHHkcwB.js → layers.DXU11CgQ.js} +1 -1
- package/dist/{layers.DxYMwPJD.js → layers.DYOEUr-m.js} +1 -1
- package/dist/{layers.GQBWZE5I.js → layers.D_1lIbk3.js} +3 -3
- package/dist/{layers.BG--DwYt.js → layers.D_88tduJ.js} +1 -1
- package/dist/{layers.BiyAv8aG.js → layers.D_nv7ufM.js} +1 -1
- package/dist/{layers.Cv6S_9I-.js → layers.D_yfdUvy.js} +1 -1
- package/dist/{layers.BRzgC6KB.js → layers.Dd-94p_1.js} +1 -1
- package/dist/{layers.Bq8p214x.js → layers.DgHpixhT.js} +1 -1
- package/dist/{layers.BcdMFEfM.js → layers.Dgc1ruVG.js} +1 -1
- package/dist/{layers.obwBR-PL.js → layers.DiwEJc7u.js} +1 -1
- package/dist/{layers.CaPlf6cQ.js → layers.DkvodDVj.js} +1 -1
- package/dist/{layers.D8wPyzG6.js → layers.Dl9GTAst.js} +1 -1
- package/dist/{layers.CYkqJ9mA.js → layers.Dn-qiYzF.js} +1 -1
- package/dist/{layers.BaVjgFII.js → layers.Dnn4uMC4.js} +1 -1
- package/dist/{layers.Bw8iToJZ.js → layers.DpS7KNGB.js} +1 -1
- package/dist/{layers.COGWYVIo.js → layers.DpyaTBEb.js} +3 -3
- package/dist/{layers.C92GKFB8.js → layers.DqdfiXlt.js} +1 -1
- package/dist/{layers.B7mfWigl.js → layers.DsnMH9yy.js} +1 -1
- package/dist/{layers.BztYpZSr.js → layers.Dt3pCP_A.js} +1 -1
- package/dist/{layers.CMFoKFfW.js → layers.DtRPF9AD.js} +8391 -8321
- package/dist/{layers.Bwkdf-_V.js → layers.Du3KqDFM.js} +1 -1
- package/dist/{layers.ylvIcl1z.js → layers.DwB8Gmd_.js} +3 -3
- package/dist/{layers.D5g62wy8.js → layers.DwEjA-DL.js} +1 -1
- package/dist/{layers.Df5vGs9k.js → layers.DydLDx6F.js} +4 -4
- package/dist/{layers.C0Ws-fCa.js → layers.DyloYXXp.js} +1 -1
- package/dist/{layers.D0KthgS6.js → layers.Dz9T6CRZ.js} +1 -1
- package/dist/{layers.BtVBENDV.js → layers.DzNXPJIm.js} +2 -2
- package/dist/{layers.BjMl2wQQ.js → layers.FtOCK7n3.js} +1 -1
- package/dist/{layers.DEpxDMdS.js → layers.GJrIUqRb.js} +1 -1
- package/dist/{layers.DQ7Ue1Fv.js → layers.J6ZLvBrB.js} +4 -4
- package/dist/{layers.CqUEj4Gr.js → layers.KlZz1tQQ.js} +1 -1
- package/dist/{layers.Cx_nY6Y7.js → layers.MEHzISvL.js} +1 -1
- package/dist/{layers.DIlNlcqo.js → layers.NfFeQ-pv.js} +1 -1
- package/dist/{layers.IAIKoo0h.js → layers.OJpUstBz.js} +4 -4
- package/dist/{layers.lel7gNeu.js → layers.OmBI57Or.js} +1 -1
- package/dist/{layers.Bi_FdRT_.js → layers.SRPjbIA3.js} +1 -1
- package/dist/{layers.DosSADRb.js → layers.TVu7VhwF.js} +3 -3
- package/dist/{layers.B_VEfl-c.js → layers.Tk4kFXcA.js} +1 -1
- package/dist/{layers.D_ZvKS4q.js → layers.U5A8Nmew.js} +1 -1
- package/dist/{layers.Cnp_kKHs.js → layers.V88_v8tN.js} +1 -1
- package/dist/{layers.DmSHn1Q-.js → layers.VmuH4hj-.js} +1 -1
- package/dist/{layers.DAxsOQEh.js → layers.WiPPDl9K.js} +1 -1
- package/dist/{layers.Be7W7XL8.js → layers.Y_i8IshZ.js} +1 -1
- package/dist/{layers.BFEVByrk.js → layers.ZbvwBAuY.js} +1 -1
- package/dist/{layers.D6CpOfiQ.js → layers._Hs_Qs7K.js} +1 -1
- package/dist/{layers.B_o3asJK.js → layers._vIsiUqm.js} +1 -1
- package/dist/{layers.BV21urwt.js → layers.abBwBQSo.js} +1 -1
- package/dist/{layers.BTeJHhdu.js → layers.b6HktuGB.js} +1 -1
- package/dist/{layers.2T1xhom9.js → layers.cn6VVv58.js} +1 -1
- package/dist/{layers.CVUrxvM-.js → layers.dW8uWUKI.js} +3 -3
- package/dist/layers.etWJhSxW.js +8 -0
- package/dist/{layers.Bh3bOLvQ.js → layers.fi50izUH.js} +3 -3
- package/dist/{layers.NDz-9Ggu.js → layers.hzlFH6hk.js} +1 -1
- package/dist/{layers.D9Tic5tu.js → layers.iBqEsmLG.js} +1 -1
- package/dist/{layers.CxWefKHI.js → layers.iINc5OES.js} +4 -4
- package/dist/{layers.zi2jGsFZ.js → layers.iKr3uPHm.js} +1 -1
- package/dist/{layers.CHGPKVlh.js → layers.j7-KL5Ge.js} +1 -1
- package/dist/{layers.BIHazuDa.js → layers.jYSbqRfs.js} +3 -3
- package/dist/{layers.C8N13X_Z.js → layers.kK-cerjc.js} +1 -1
- package/dist/{layers.B2YKwjXz.js → layers.lqqh2S9w.js} +2 -2
- package/dist/{layers.BMNubRvf.js → layers.qAf1GWO1.js} +1 -1
- package/dist/{layers.D4aYlLPZ.js → layers.sOrM_ECr.js} +1 -1
- package/dist/layers.uFj1pwRs.js +1 -0
- package/dist/{layers.BYSykmoC.js → layers.vwZHLxt7.js} +1 -1
- package/dist/{layers.BNk35KKQ.js → layers.x0wbfrlw.js} +1 -1
- package/dist/{layers.DT1Fui5R.js → layers.ywoXm3Bk.js} +1 -1
- package/dist/{layers.DagwUHWb.js → layers.zlwQLJUX.js} +1 -1
- package/dist/{layers.DujvWPQs.js → layers.zmBRRXBG.js} +4 -4
- package/dist/{layers.bf7CMgrh.js → layers.zpqnN0P9.js} +1 -1
- package/package.json +2 -2
- package/dist/layers.C7mlmYdC.js +0 -129
- package/dist/layers.CQJnLKvH.js +0 -8
- package/dist/layers.DEjsgTOR.js +0 -6
- package/dist/layers.DWkC7jVJ.js +0 -1
- package/dist/layers.X8-JMNQm.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const m=require("./layers.B3z0mDcg.js"),t=require("./layers.ylvIcl1z.js");require("lodash-es");const z=require("./layers.Cyzu9PKQ.js"),T=require("./layers.BLd2spTm.js");require("./layers.dyig4B3u.js");require("lodash-es/memoize.js");require("lodash-es/merge.js");require("lodash-es/isEmpty.js");const L=require("./layers.em6rytD5.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 r=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),d=r.node().getBBox();return e.insert("rect",":first-child").attr("x",t.getConfig().state.padding).attr("y",t.getConfig().state.padding).attr("width",d.width+2*t.getConfig().state.padding).attr("height",d.height+2*t.getConfig().state.padding).attr("rx",t.getConfig().state.radius),r},G=(e,n)=>{const r=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,s=!0;n.descriptions.forEach(function(c){i||(r(f,c,s),s=!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(),g=Math.max(p.width,a.width);return C.attr("x2",g+3*t.getConfig().state.padding),e.insert("rect",":first-child").attr("x",t.getConfig().state.padding).attr("y",t.getConfig().state.padding).attr("width",g+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,r)=>{const d=t.getConfig().state.padding,a=2*t.getConfig().state.padding,l=e.node().getBBox(),f=l.width,i=l.x,s=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=s.node().getBBox().width+a;let g=Math.max(p,f);g===f&&(g=g+a);let c;const w=e.node().getBBox();n.doc,c=i-d,p>f&&(c=(f-g)/2+d),Math.abs(i-w.x)<d&&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",r?"alt-composit":"composit").attr("width",g).attr("height",w.height+t.getConfig().state.textHeight+t.getConfig().state.titleShift+1).attr("rx","0"),s.attr("x",c+d),p<=f&&s.attr("x",i+(g-a)/2-p/2+d),e.insert("rect",":first-child").attr("x",c).attr("y",t.getConfig().state.titleShift-t.getConfig().state.textHeight-t.getConfig().state.padding).attr("width",g).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",g).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 r=t.getConfig().state.forkWidth,d=t.getConfig().state.forkHeight;if(n.parentId){let a=r;r=d,d=a}return e.append("rect").style("stroke","black").style("fill","black").attr("width",r).attr("height",d).attr("x",t.getConfig().state.padding).attr("y",t.getConfig().state.padding)},U=(e,n,r,d)=>{let a=0;const l=d.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 s=1.25*t.getConfig().state.noteMargin;for(const C of i){const p=C.trim();if(p.length>0){const g=l.append("tspan");if(g.text(p),s===0){const c=g.node().getBBox();s+=c.height}a+=s,g.attr("x",n+t.getConfig().state.noteMargin),g.attr("y",r+a+1.25*t.getConfig().state.noteMargin)}}return{textWidth:l.node().getBBox().width,textHeight:a}},F=(e,n)=>{n.attr("class","state-note");const r=n.append("rect").attr("x",0).attr("y",t.getConfig().state.padding),d=n.append("g"),{textWidth:a,textHeight:l}=U(e,0,0,d);return r.attr("height",l+2*t.getConfig().state.noteMargin),r.attr("width",a+t.getConfig().state.noteMargin*2),r},M=function(e,n){const r=n.id,d={id:r,label:n.id,width:0,height:0},a=e.append("g").attr("id",r).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 d.width=l.width+2*t.getConfig().state.padding,d.height=l.height+2*t.getConfig().state.padding,d};let H=0;const O=function(e,n,r){const d=function(s){switch(s){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(s=>!Number.isNaN(s.y));const a=n.points,l=L.line().x(function(s){return s.x}).y(function(s){return s.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+"#"+d(m.db.relationType.DEPENDENCY)+"End)"),r.title!==void 0){const s=e.append("g").attr("class","stateLabel"),{x:C,y:p}=t.utils.calcLabelPosition(n.points),g=t.common$1.getRows(r.title);let c=0;const w=[];let y=0,S=0;for(let x=0;x<=g.length;x++){const h=s.append("text").attr("text-anchor","middle").text(g[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*g.length;if(g.length>1){const x=(g.length-1)*c*.5;w.forEach((h,u)=>h.attr("y",p+u*c-x)),E=c*g.length}const o=s.node().getBBox();s.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,r,d){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 s=f.select(`[id='${n}']`);J(s);const C=d.db.getRootDoc();$(C,s,void 0,!1,f,i,d);const p=b.padding,g=s.node().getBBox(),c=g.width+p*2,w=g.height+p*2,y=c*1.75;t.configureSvgSize(s,w,y,b.useMaxWidth),s.attr("viewBox",`${g.x-b.padding} ${g.y-b.padding} `+c+" "+w)},I=e=>e?e.length*b.fontSizeFactor:1,$=(e,n,r,d,a,l,f)=>{const i=new T.Graph({compound:!0,multigraph:!0});let s,C=!0;for(s=0;s<e.length;s++)if(e[s].stmt==="relation"){C=!1;break}r?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(),g=f.db.getRelations(),c=Object.keys(p);for(const o of c){const x=p[o];r&&(x.parentId=r);let h;if(x.doc){let u=n.append("g").attr("id",x.id).attr("class","stateGroup");h=$(x.doc,u,x.id,!d,a,l,f);{u=W(u,x,d);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;g.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:r||"root",label:r||"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.CxUIWnRK.js"),t=require("./layers.DwB8Gmd_.js");require("lodash-es");const z=require("./layers.Cyzu9PKQ.js"),T=require("./layers.BLd2spTm.js");require("./layers.BH9wLfk4.js");require("lodash-es/memoize.js");require("lodash-es/merge.js");require("lodash-es/isEmpty.js");const L=require("./layers.BBONQU_w.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 r=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),d=r.node().getBBox();return e.insert("rect",":first-child").attr("x",t.getConfig().state.padding).attr("y",t.getConfig().state.padding).attr("width",d.width+2*t.getConfig().state.padding).attr("height",d.height+2*t.getConfig().state.padding).attr("rx",t.getConfig().state.radius),r},G=(e,n)=>{const r=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,s=!0;n.descriptions.forEach(function(c){i||(r(f,c,s),s=!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(),g=Math.max(p.width,a.width);return C.attr("x2",g+3*t.getConfig().state.padding),e.insert("rect",":first-child").attr("x",t.getConfig().state.padding).attr("y",t.getConfig().state.padding).attr("width",g+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,r)=>{const d=t.getConfig().state.padding,a=2*t.getConfig().state.padding,l=e.node().getBBox(),f=l.width,i=l.x,s=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=s.node().getBBox().width+a;let g=Math.max(p,f);g===f&&(g=g+a);let c;const w=e.node().getBBox();n.doc,c=i-d,p>f&&(c=(f-g)/2+d),Math.abs(i-w.x)<d&&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",r?"alt-composit":"composit").attr("width",g).attr("height",w.height+t.getConfig().state.textHeight+t.getConfig().state.titleShift+1).attr("rx","0"),s.attr("x",c+d),p<=f&&s.attr("x",i+(g-a)/2-p/2+d),e.insert("rect",":first-child").attr("x",c).attr("y",t.getConfig().state.titleShift-t.getConfig().state.textHeight-t.getConfig().state.padding).attr("width",g).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",g).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 r=t.getConfig().state.forkWidth,d=t.getConfig().state.forkHeight;if(n.parentId){let a=r;r=d,d=a}return e.append("rect").style("stroke","black").style("fill","black").attr("width",r).attr("height",d).attr("x",t.getConfig().state.padding).attr("y",t.getConfig().state.padding)},U=(e,n,r,d)=>{let a=0;const l=d.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 s=1.25*t.getConfig().state.noteMargin;for(const C of i){const p=C.trim();if(p.length>0){const g=l.append("tspan");if(g.text(p),s===0){const c=g.node().getBBox();s+=c.height}a+=s,g.attr("x",n+t.getConfig().state.noteMargin),g.attr("y",r+a+1.25*t.getConfig().state.noteMargin)}}return{textWidth:l.node().getBBox().width,textHeight:a}},F=(e,n)=>{n.attr("class","state-note");const r=n.append("rect").attr("x",0).attr("y",t.getConfig().state.padding),d=n.append("g"),{textWidth:a,textHeight:l}=U(e,0,0,d);return r.attr("height",l+2*t.getConfig().state.noteMargin),r.attr("width",a+t.getConfig().state.noteMargin*2),r},M=function(e,n){const r=n.id,d={id:r,label:n.id,width:0,height:0},a=e.append("g").attr("id",r).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 d.width=l.width+2*t.getConfig().state.padding,d.height=l.height+2*t.getConfig().state.padding,d};let H=0;const O=function(e,n,r){const d=function(s){switch(s){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(s=>!Number.isNaN(s.y));const a=n.points,l=L.line().x(function(s){return s.x}).y(function(s){return s.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+"#"+d(m.db.relationType.DEPENDENCY)+"End)"),r.title!==void 0){const s=e.append("g").attr("class","stateLabel"),{x:C,y:p}=t.utils.calcLabelPosition(n.points),g=t.common$1.getRows(r.title);let c=0;const w=[];let y=0,S=0;for(let x=0;x<=g.length;x++){const h=s.append("text").attr("text-anchor","middle").text(g[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*g.length;if(g.length>1){const x=(g.length-1)*c*.5;w.forEach((h,u)=>h.attr("y",p+u*c-x)),E=c*g.length}const o=s.node().getBBox();s.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,r,d){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 s=f.select(`[id='${n}']`);J(s);const C=d.db.getRootDoc();$(C,s,void 0,!1,f,i,d);const p=b.padding,g=s.node().getBBox(),c=g.width+p*2,w=g.height+p*2,y=c*1.75;t.configureSvgSize(s,w,y,b.useMaxWidth),s.attr("viewBox",`${g.x-b.padding} ${g.y-b.padding} `+c+" "+w)},I=e=>e?e.length*b.fontSizeFactor:1,$=(e,n,r,d,a,l,f)=>{const i=new T.Graph({compound:!0,multigraph:!0});let s,C=!0;for(s=0;s<e.length;s++)if(e[s].stmt==="relation"){C=!1;break}r?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(),g=f.db.getRelations(),c=Object.keys(p);for(const o of c){const x=p[o];r&&(x.parentId=r);let h;if(x.doc){let u=n.append("g").attr("id",x.id).attr("class","stateGroup");h=$(x.doc,u,x.id,!d,a,l,f);{u=W(u,x,d);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;g.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:r||"root",label:r||"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
|
-
import "./layers.
|
|
1
|
+
import "./layers.BXpB8EUK.js";
|
|
2
2
|
var e = { paste: "Lipire", pasteAsPlaintext: "Inserare ca text simplu", pasteCharts: "Lipire diagrame", selectAll: "Selectare totală", multiSelect: "Adaugă element la selecție", moveCanvas: "Mutare pânză", cut: "Decupare", copy: "Copiere", copyAsPng: "Copiere în memoria temporară ca PNG", copyAsSvg: "Copiere în memoria temporară ca SVG", copyText: "Copiere în memoria temporară ca text", copySource: "Copiere sursă în memoria temporară", convertToCode: "Convertire în cod", bringForward: "Aducere în plan apropiat", sendToBack: "Trimitere în ultimul plan", bringToFront: "Aducere în prim plan", sendBackward: "Trimitere în plan secundar", delete: "Ștergere", copyStyles: "Copiere stiluri", pasteStyles: "Lipire stiluri", stroke: "Contur", background: "Fundal", fill: "Umplere", strokeWidth: "Lățimea conturului", strokeStyle: "Stilul conturului", strokeStyle_solid: "Neîntrerupt", strokeStyle_dashed: "Liniuțe", strokeStyle_dotted: "Punctat", sloppiness: "Aspectul trasării", opacity: "Opacitate", textAlign: "Alinierea textului", edges: "Margini", sharp: "Ascuțite", round: "Rotunde", arrowheads: "Vârfuri de săgeată", arrowhead_none: "Niciunul", arrowhead_arrow: "Săgeată", arrowhead_bar: "Bară", arrowhead_circle: "Cerc", arrowhead_circle_outline: "Cerc (contur)", arrowhead_triangle: "Triunghi", arrowhead_triangle_outline: "Triunghi (contur)", arrowhead_diamond: "Romb", arrowhead_diamond_outline: "Romb (contur)", fontSize: "Dimensiune font", fontFamily: "Familia de fonturi", addWatermark: "Adaugă „Realizat cu Excalidraw”", handDrawn: "Scris de mână", normal: "Normal", code: "Cod", small: "Mică", medium: "Medie", large: "Mare", veryLarge: "Foarte mare", solid: "Plină", hachure: "Hașură", zigzag: "Zigzag", crossHatch: "Hașură transversală", thin: "Subțire", bold: "Îngroșată", left: "Stânga", center: "Centru", right: "Dreapta", extraBold: "Extra îngroșată", architect: "Arhitect", artist: "Artist", cartoonist: "Caricaturist", fileTitle: "Nume de fișier", colorPicker: "Selector de culoare", canvasColors: "Folosite pe pânză", canvasBackground: "Fundalul pânzei", drawingCanvas: "Pânză pentru desenat", layers: "Straturi", actions: "Acțiuni", language: "Limbă", liveCollaboration: "Colaborare în direct...", duplicateSelection: "Duplicare", untitled: "Nedenumit", name: "Nume", yourName: "Numele tău", madeWithExcalidraw: "Realizat cu Excalidraw", group: "Grupare selecție", ungroup: "Degrupare selecție", collaborators: "Colaboratori", showGrid: "Afișare grilă", addToLibrary: "Adăugare la bibliotecă", removeFromLibrary: "Eliminare din bibliotecă", libraryLoadingMessage: "Se încarcă biblioteca…", libraries: "Răsfoiește bibliotecile", loadingScene: "Se încarcă scena…", align: "Aliniere", alignTop: "Aliniere sus", alignBottom: "Aliniere jos", alignLeft: "Aliniere la stânga", alignRight: "Aliniere la dreapta", centerVertically: "Centrare verticală", centerHorizontally: "Centrare orizontală", distributeHorizontally: "Distribuie orizontal", distributeVertically: "Distribuie vertical", flipHorizontal: "Răsturnare orizontală", flipVertical: "Răsturnare verticală", viewMode: "Mod de vizualizare", share: "Distribuie", showStroke: "Afișare selector culoare contur", showBackground: "Afișare selector culoare fundal", toggleTheme: "Comutare temă", personalLib: "Biblioteca personală", excalidrawLib: "Biblioteca Excalidraw", decreaseFontSize: "Micșorează dimensiunea fontului", increaseFontSize: "Mărește dimensiunea fontului", unbindText: "Deconectare text", bindText: "Legare text de container", createContainerFromText: "Încadrare text într-un container", link: { edit: "Editare URL", editEmbed: "Editare URL și încorporare", create: "Creare URL", createEmbed: "Creare URL și încorporare", label: "URL", labelEmbed: "URL și încorporare", empty: "Nu este setat niciun URL" }, lineEditor: { edit: "Editare linie", exit: "Părăsire editor de linii" }, elementLock: { lock: "Blocare", unlock: "Deblocare", lockAll: "Blocare toate", unlockAll: "Deblocare toate" }, statusPublished: "Publicat", sidebarLock: "Păstrează deschisă bara laterală", selectAllElementsInFrame: "", removeAllElementsFromFrame: "", eyeDropper: "Alegere culoare din pânză", textToDiagram: "Text la diagramă", prompt: "Solicitare" }, a = { noItems: "Niciun element adăugat încă...", hint_emptyLibrary: "Selectează un element de pe pânză pentru a-l adăuga aici sau instalează o bibliotecă din depozitul public, de mai jos.", hint_emptyPrivateLibrary: "Selectează un element de pe pânză pentru a-l adăuga aici." }, i = { clearReset: "Resetare pânză", exportJSON: "Exportare la fișiere", exportImage: "Exportare imagine...", export: "Salvare în...", copyToClipboard: "Copiere în memoria temporară", save: "Salvare în fișierul curent", saveAs: "Salvare ca", load: "Deschidere", getShareableLink: "Obține URL partajabil", close: "Închidere", selectLanguage: "Selectare limbă", scrollBackToContent: "Derulare înapoi la conținut", zoomIn: "Apropiere", zoomOut: "Depărtare", resetZoom: "Resetare transfocare", menu: "Meniu", done: "Efectuat", edit: "Edit", undo: "Anulare", redo: "Refacere", resetLibrary: "Resetare bibliotecă", createNewRoom: "Creare cameră nouă", fullScreen: "Ecran complet", darkMode: "Mod întunecat", lightMode: "Mod luminos", zenMode: "Mod zen", objectsSnapMode: "Ancorare la obiecte", exitZenMode: "Ieșire din modul zen", cancel: "Anulare", clear: "Ștergere", remove: "Eliminare", embed: "Comutare încorporare", publishLibrary: "Publicare", submit: "Trimitere", confirm: "Confirmare", embeddableInteractionButton: "Clic pentru interacționare" }, r = { clearReset: "Această opțiune va șterge întreaga pânză. Confirmi?", couldNotCreateShareableLink: "Nu s-a putut crea un URL partajabil.", couldNotCreateShareableLinkTooBig: "Nu s-a putut crea un URL partajabil: scena este prea mare", couldNotLoadInvalidFile: "Fișierul invalid nu a putut fi încărcat", importBackendFailed: "Importarea de la nivel de server a eșuat.", cannotExportEmptyCanvas: "Nu se poate exporta pânza goală.", couldNotCopyToClipboard: "Nu s-a putut copia în memoria temporară.", decryptFailed: "Datele nu au putut fi decriptate.", uploadedSecurly: "Încărcarea a fost securizată prin criptare integrală, însemnând că serverul Excalidraw și terții nu pot citi conținutul.", loadSceneOverridePrompt: "Încărcarea desenului extern va înlocui conținutul existent. Dorești să continui?", collabStopOverridePrompt: `Oprirea sesiunii va suprascrie desenul anterior stocat local. Confirmi alegerea?
|
|
3
3
|
|
|
4
4
|
(Dacă vrei să păstrezi desenul local, pur și simplu închide fila navigatorului în schimb.)`, errorAddingToLibrary: "Elementul nu a putut fi adăugat în bibliotecă", errorRemovingFromLibrary: "Elementul nu a putut fi eliminat din bibliotecă", confirmAddLibrary: "Această acțiune va adăuga {{numShapes}} formă(e) la biblioteca ta. Confirmi?", imageDoesNotContainScene: "Această imagine nu pare să conțină date de scenă. Ai activat încorporarea scenei în timpul exportului?", cannotRestoreFromImage: "Scena nu a putut fi restaurată din acest fișier de imagine", invalidSceneUrl: "Scena nu a putut fi importată din URL-ul furnizat. Este fie incorect formată, fie nu conține date JSON Excalidraw valide.", resetLibrary: "Această opțiune va elimina conținutul din bibliotecă. Confirmi?", removeItemsFromsLibrary: "Ștergi {{count}} element(e) din bibliotecă?", invalidEncryptionKey: "Cheia de criptare trebuie să aibă 22 de caractere. Colaborarea în direct este dezactivată.", collabOfflineWarning: `Nu este disponibilă nicio conexiune la internet.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "./layers.
|
|
1
|
+
import "./layers.BXpB8EUK.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: "" }, C = { noItems: "هێشتا هیچ بڕگەیەک زیاد نەکراوە...", hint_emptyLibrary: "شتێک لەسەر تابلۆ هەڵبژێرە بۆ ئەوەی لێرە زیادی بکەیت، یان کتێبخانەیەک لە کۆگا گشتیەکەوە دابمەزرێنە، لە خوارەوە.", hint_emptyPrivateLibrary: "شتێک لەسەر تابلۆ هەڵبژێرە بۆ ئەوەی لێرە زیادی بکەیت." }, D = { clearReset: "تابلۆکە وەک سەرەتا لێبکەوە", exportJSON: "هەناردەکردن بۆ فایل", exportImage: "وێنە هەناردە بکە...", export: "پاشەکەوت بکە بۆ...", copyToClipboard: "لهبهری بگرهوه بۆ تهختهنووس", save: "پاشەکەوت بکە بۆ فایلی بەردەست", saveAs: "پاشەکەوتکردن وەک", load: "بکەرەوە", getShareableLink: "بەستەری هاوبەشیپێکردن بەدەستبهێنە", close: "داخستن", selectLanguage: "دیاریکردنی زمان", scrollBackToContent: "گەڕاندنەوە بۆ ناوەڕۆک", zoomIn: "نزیک خستنەوە", zoomOut: "دوورخستنەوە", resetZoom: "ڕێستکردنی زووم", menu: "پێڕست", done: "تەواو", edit: "دەستکاری کردن", undo: "گهڕانهوه بۆ پێشوو", redo: "گهڕانهوه بۆ داهاتوو", resetLibrary: "ڕێکخستنەوەی کتێبخانە", createNewRoom: "ژوورێکی نوێ دروست بکە", fullScreen: "پڕ بە شاشە", darkMode: "دۆخی تاریک", lightMode: "دۆخی ڕووناک", zenMode: "دۆخی زێن", objectsSnapMode: "", exitZenMode: "بەجێهێشتنی دۆخی زێن", cancel: "هەڵوەشاندنەوە", clear: "خاوێنکردنەوە", remove: "لابردن", embed: "", publishLibrary: "بڵاوکردنەوە", submit: "پێشکەشکردن", confirm: "دوپاتکردنەوە", embeddableInteractionButton: "" }, A = { clearReset: "ئەمە هەموو تابلۆکە خاوێن دەکاتەوە، دڵنیایت؟", couldNotCreateShareableLink: "نەتوانرا بەستەری هاوبەشیپێکردن دروستبکرێت", couldNotCreateShareableLinkTooBig: "نەتوانرا بەستەری هاوبەشیپێکردن دروستبکرێت: دیمەنەکە زۆر گەورەیە", couldNotLoadInvalidFile: "ناتوانرا باربکرێت، فایلەکە دروستنییە", importBackendFailed: "هاوردەکردن لە پاشکۆکە سەرکەوتوو نەبوو.", cannotExportEmptyCanvas: "ناتوانرێت تابلۆی بەتاڵ هەناردەبکرێت.", couldNotCopyToClipboard: "ناتوانرا لەبەربگیرێتەوە بۆ تەختەنوس", decryptFailed: "ناتوانرا داتاکان شیبکرێتەوە", uploadedSecurly: "بارکردنەکە بە کۆدکردنی کۆتایی بۆ کۆتایی پارێزراوە، ئەمەش واتە سێرڤەری Excalidraw و لایەنی سێیەم ناتوانن ناوەڕۆکەکە بخوێننەوە.", loadSceneOverridePrompt: "بارکردنی وێنەکێشانی دەرەکی جێگەی ناوەڕۆکی بەردەستت دەگرێتەوە. دەتەوێت بەردەوام بیت؟", collabStopOverridePrompt: `وەستاندنی دانیشتنەکە وێنەکێشانی پێشووت دەنووسێتەوە کە لە ناوخۆدا هەڵگیراوە. ئایا دڵنیایت?
|
|
3
3
|
|
|
4
4
|
(ئەگەر دەتەوێت وێنەکێشانی ناوخۆیی خۆت بهێڵیتەوە، لەبری ئەوە تەنها تابی وێبگەڕەکە دابخە).`, errorAddingToLibrary: "نەیتوانی بڕگە زیاد بکات بۆ کتێبخانە", errorRemovingFromLibrary: "نەیتوانی بڕگە لە کتێبخانە بسڕێتەوە", confirmAddLibrary: "ئەمە {{numShapes}} شێوە(ەکان) زیاد دەکات بۆ کتێبخانەکەت. ئایا دڵنیایت?", imageDoesNotContainScene: "وادیارە ئەم وێنەیە هیچ داتایەکی دیمەنی تێدا نییە. ئایا دیمەنی چەسپاندنت لە کاتی هەناردەدا چالاک کردووە؟", cannotRestoreFromImage: "ناتوانرێت دیمەنەکە بگەڕێندرێتەوە لەم فایلە وێنەیە", invalidSceneUrl: 'ناتوانێت دیمەنەکە هاوردە بکات لە URL ی دابینکراو. یان نادروستە، یان داتای "ئێکسکالیدراو" JSON ی دروستی تێدا نییە.', resetLibrary: "ئەمە کتێبخانەکەت خاوێن دەکاتەوە. ئایا دڵنیایت?", removeItemsFromsLibrary: "سڕینەوەی {{count}} ئایتم(ەکان) لە کتێبخانە؟", invalidEncryptionKey: "کلیلی رەمزاندن دەبێت لە 22 پیت بێت. هاوکاری ڕاستەوخۆ لە کارخراوە.", collabOfflineWarning: `هێڵی ئینتەرنێت بەردەست نییە.
|
|
@@ -5,7 +5,7 @@ import { useLexicalComposerContext as te } from "@lexical/react/LexicalComposerC
|
|
|
5
5
|
import { LoadingOverlay as ie } from "@mantine/core";
|
|
6
6
|
import { $getNodeByKey as S, COMMAND_PRIORITY_LOW as oe, $setSelection as ae } from "lexical";
|
|
7
7
|
import { showErrorNotification as ne } from "@layers-app/shared";
|
|
8
|
-
import { u as se, C as re, m as P, a as le, b as de, $ as y, t as he, U as ge, I as ue, E as me, R as fe, p as T } from "./layers.
|
|
8
|
+
import { u as se, C as re, m as P, a as le, b as de, $ as y, t as he, U as ge, I as ue, E as me, R as fe, p as T } from "./layers.DtRPF9AD.js";
|
|
9
9
|
const F = (t) => {
|
|
10
10
|
const {
|
|
11
11
|
width: m,
|
|
@@ -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.BH9wLfk4.js");var u={paste:"Dán",pasteAsPlaintext:"Dán kiểu văn bản thuần",pasteCharts:"Dán biểu đồ",selectAll:"Chọn tất cả",multiSelect:"Thêm mới vào Select",moveCanvas:"Di chuyển canvas",cut:"Cắt",copy:"Sao chép",copyAsPng:"Sao chép vào bộ nhớ tạm dưới dạng PNG",copyAsSvg:"Sao chép vào bộ nhớ tạm dưới dạng SVG",copyText:"Sao chép vào bộ nhớ tạm dưới dạng chữ",copySource:"",convertToCode:"",bringForward:"Đưa ra trước",sendToBack:"Hạ xuống dưới",bringToFront:"Đưa ra đầu tiên",sendBackward:"Hạ xuống cuối",delete:"Xóa",copyStyles:"Sao chép định dạng",pasteStyles:"Dán định dạng",stroke:"Nét",background:"Nền",fill:"Fill",strokeWidth:"Độ dày nét",strokeStyle:"Kiểu nét",strokeStyle_solid:"Khối",strokeStyle_dashed:"Gạch ngang",strokeStyle_dotted:"Nhiều chấm",sloppiness:"Hoa văn nét",opacity:"Độ trong suốt",textAlign:"Căn chỉnh văn bản",edges:"Cạnh",sharp:"Nhọn",round:"Tròn",arrowheads:"Đầu mũi tên",arrowhead_none:"Không",arrowhead_arrow:"Mũi tên",arrowhead_bar:"Thanh",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Tam giác",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Cỡ chữ",fontFamily:"Phông chữ",addWatermark:'Làm với Excalidraw"',handDrawn:"Vẽ tay",normal:"Bình thường",code:"Mã",small:"Nhỏ",medium:"Vừa",large:"Lớn",veryLarge:"Rất lớn",solid:"Đặc",hachure:"Nét gạch gạch",zigzag:"Zigzag",crossHatch:"Nét gạch chéo",thin:"Mỏng",bold:"In đậm",left:"Trái",center:"Giữa",right:"Phải",extraBold:"Nét siêu đậm",architect:"Kiến trúc sư",artist:"Nghệ sỹ",cartoonist:"Hoạt hình",fileTitle:"Tên tập tin",colorPicker:"Chọn màu",canvasColors:"Đã dùng trên canvas",canvasBackground:"Nền canvas",drawingCanvas:"Canvas vẽ",layers:"Lớp",actions:"Chức năng",language:"Ngôn ngữ",liveCollaboration:"Hợp tác trực tiếp...",duplicateSelection:"Tạo bản sao",untitled:"Không có tiêu đề",name:"Tên",yourName:"Tên của bạn",madeWithExcalidraw:"Làm với Excalidraw",group:"Gộp nhóm lại lựa chọn",ungroup:"Tách nhóm lựa chọn",collaborators:"Cộng tác viên",showGrid:"Hiển thị lưới",addToLibrary:"Thêm vào thư viện",removeFromLibrary:"Xóa khỏi thư viện",libraryLoadingMessage:"Đang tải thư viện…",libraries:"Xem thư viện",loadingScene:"Đang tải về…",align:"Căn chỉnh",alignTop:"Căn trên",alignBottom:"Căn dưới",alignLeft:"Canh trái",alignRight:"Canh phải",centerVertically:"Giữa theo chiều dọc",centerHorizontally:"Giữa theo chiều ngang",distributeHorizontally:"Phân bố theo chiều ngang",distributeVertically:"Phân bố theo chiều dọc",flipHorizontal:"Lật ngang",flipVertical:"Lật dọc",viewMode:"Chế độ xem",share:"Chia sẻ",showStroke:"Hiển thị chọn màu",showBackground:"Hiện thị chọn màu nền",toggleTheme:"",personalLib:"Thư viện cá nhân",excalidrawLib:"Thư viện Excalidraw",decreaseFontSize:"Giảm cỡ chữ",increaseFontSize:"Tăng cỡ chữ",unbindText:"",bindText:"",createContainerFromText:"",link:{edit:"Sửa liên kết",editEmbed:"",create:"Tạo liên kết",createEmbed:"",label:"Liên kết",labelEmbed:"",empty:""},lineEditor:{edit:"Điều chỉnh nét",exit:"Thoát chỉnh nét"},elementLock:{lock:"Khoá",unlock:"Mở khoá",lockAll:"Khóa tất cả",unlockAll:"Mở khóa tất cả"},statusPublished:"Đã đăng tải",sidebarLock:"Giữ thanh bên luôn mở",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},E={noItems:"Chưa có món nào...",hint_emptyLibrary:"Chọn một món trên canvas để thêm nó vào đây, hoặc cài đặt thư viện từ kho lưu trữ công cộng, ở bên dưới.",hint_emptyPrivateLibrary:"Chọn một món trên canvas để thêm nó vào đây."},n={clearReset:"Reset canvas",exportJSON:"Xuất ra tập tin",exportImage:"Xuất file ảnh...",export:"Lưu vào...",copyToClipboard:"Sao chép vào bộ nhớ tạm",save:"Lưu vào tập tin hiện tại",saveAs:"Lưu thành",load:"Mở",getShareableLink:"Tạo liên kết để chia sẻ",close:"Đóng",selectLanguage:"Chọn ngôn ngữ",scrollBackToContent:"Cuộn về nội dung chính",zoomIn:"Phóng to",zoomOut:"Thu nhỏ",resetZoom:"Đặt lại thu phóng",menu:"Bảng chọn",done:"Xong",edit:"Chỉnh sửa",undo:"Hoàn tác",redo:"Làm lại",resetLibrary:"",createNewRoom:"Tạo phòng mới",fullScreen:"Toàn màn hình",darkMode:"Chế độ tối",lightMode:"Chế độ sáng",zenMode:"Chế độ zen",objectsSnapMode:"",exitZenMode:"Thoát chể độ zen",cancel:"Hủy",clear:"Làm sạch",remove:"Xóa",embed:"",publishLibrary:"Đăng tải",submit:"Gửi",confirm:"Xác nhận",embeddableInteractionButton:""},e={clearReset:"Điều này sẽ dọn hết canvas. Bạn có chắc không?",couldNotCreateShareableLink:"Không thể tạo đường dẫn chia sẻ.",couldNotCreateShareableLinkTooBig:"Không thể tạo đường dẫn chia sẻ: bản vẽ quá lớn",couldNotLoadInvalidFile:"Không thể load tập tin không hợp lệ",importBackendFailed:"",cannotExportEmptyCanvas:"Không thể xuất canvas trống.",couldNotCopyToClipboard:"",decryptFailed:"Không thể giải mã dữ liệu.",uploadedSecurly:"",loadSceneOverridePrompt:"",collabStopOverridePrompt:`Dừng phiên sẽ ghi đè lên bản vẽ được lưu trữ cục bộ trước đó của bạn. Bạn có chắc không?
|
|
2
2
|
|
|
3
3
|
(Nếu bạn muốn giữ bản vẽ cục bộ của mình, chỉ cần đóng tab trình duyệt.)`,errorAddingToLibrary:"Không thể thêm món vào thư viện",errorRemovingFromLibrary:"Không thể xoá món khỏi thư viện",confirmAddLibrary:"Hình {{numShapes}} sẽ được thêm vào thư viện. Bạn chắc chứ?",imageDoesNotContainScene:"Hình ảnh này dường như không chứa bất kỳ dữ liệu cảnh nào. Bạn đã bật tính năng nhúng cảnh khi xuất chưa?",cannotRestoreFromImage:"",invalidSceneUrl:"",resetLibrary:"",removeItemsFromsLibrary:"Xoá {{count}} món từ thư viện?",invalidEncryptionKey:"Khóa mã hóa phải có 22 ký tự. Hợp tác trực tiếp bị vô hiệu hóa.",collabOfflineWarning:`Không có kết nối internet.
|
|
4
4
|
Thay đổi của bạn sẽ không được lưu!`},t={unsupportedFileType:"Loại tập tin không được hỗ trợ.",imageInsertError:"Không thể thêm ảnh. Hãy thử lại sau...",fileTooBig:"Tệp tin quá lớn. Dung lượng tối đa cho phép là {{maxSize}}.",svgImageInsertError:"Không thể thêm ảnh SVG. Mã SVG có vẻ sai.",failedToFetchImage:"",invalidSVGString:"SVG không hợp lệ.",cannotResolveCollabServer:"Không thể kết nối với máy chủ hợp tác. Hãy tải lại trang và thử lại.",importLibraryError:"Không thể tải thư viện",collabSaveFailed:"Không thể lưu vào cơ sở dữ liệu. Nếu vấn đề tiếp tục xảy ra, bạn nên lưu tệp vào máy để đảm bảo bạn không bị mất công việc.",collabSaveFailed_sizeExceeded:"Không thể lưu vào cơ sở dữ liệu, canvas có vẻ quá lớn. Bạn nên lưu tệp cục bộ để đảm bảo bạn không bị mất công việc.",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},i={selection:"Lựa chọn",image:"Chèn ảnh",rectangle:"Hình chữ nhật",diamond:"Kim cương",ellipse:"Hình elíp",arrow:"Mũi tên",line:"Đường kẻ",freedraw:"Vẽ",text:"Văn bản",library:"Thư viện",lock:"Giữ dụng cũ hiện tại sau khi vẽ",penMode:"Chế độ bút vẽ - ngăn ngừa chạm nhầm",link:"Thêm/ Chỉnh sửa liên kết cho hình được chọn",eraser:"Xóa",frame:"",magicframe:"",embeddable:"",laser:"",hand:"Tay kéo",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},a={canvasActions:"Hành động canvas",selectedShapeActions:"Các hành động cho hình dạng đã chọn",shapes:"Các hình khối"},o={canvasPanning:"Để di chuyển canvas, giữ con lăn chuột hoặc phím cách trong khi kéo, hoặc sử dụng công cụ cầm tay",linearElement:"Ấn để bắt đầu nhiểm điểm vẽ, kéo để vẽ một đường thẳng",freeDraw:"Ấn bà kéo, thả khi bạn xong",text:"Mẹo: bạn có thể thêm văn bản tại bất cứ đâu bằng cách ấn hai lần bằng tool lựa chọn",embeddable:"",text_selected:"Ấn 2 lần hoặc nhấn ENTER để chỉnh văn bản",text_editing:"Nhấn Escape hoặc Ctrl/Cmd+ENTER để hoàn thành chỉnh sửa",linearElementMulti:"Nhấn vào điểm cuối hoặc nhấn Escape hoặc Enter để kết thúc",lockAngle:"Bạn có thể chỉnh lại góc bằng cách giữ phím SHIFT",resize:`Bạn có thể chỉnh tỷ lệ bằng cách giữ SHIFT khi chỉnh kích cỡ,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("./layers.
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("./layers.DwB8Gmd_.js");require("./layers.BH9wLfk4.js");require("lodash-es/memoize.js");require("lodash-es/merge.js");require("lodash-es/isEmpty.js");const tt=require("./layers.hzlFH6hk.js"),nt=require("./layers.B19hGmey.js"),st=require("./layers.9pNaFvaX.js"),R=require("./layers.DOrgOHBr.js");function rt(e,y){return y<e?-1:y>e?1:y>=e?0:NaN}function at(e){return e}function lt(){var e=at,y=rt,$=null,g=R.constant(0),d=R.constant(u.tau),E=R.constant(0);function f(a){var l,m=(a=st.array(a)).length,v,I,D=0,_=new Array(m),b=new Array(m),o=+g.apply(this,arguments),w=Math.min(u.tau,Math.max(-u.tau,d.apply(this,arguments)-o)),P,T=Math.min(Math.abs(w)/m,E.apply(this,arguments)),S=T*(w<0?-1:1),t;for(l=0;l<m;++l)(t=b[_[l]=l]=+e(a[l],l,a))>0&&(D+=t);for(y!=null?_.sort(function(i,n){return y(b[i],b[n])}):$!=null&&_.sort(function(i,n){return $(a[i],a[n])}),l=0,I=D?(w-m*S)/D:0;l<m;++l,o=P)v=_[l],t=b[v],P=o+(t>0?t*I:0)+S,b[v]={data:a[v],index:l,value:t,startAngle:o,endAngle:P,padAngle:T};return b}return f.value=function(a){return arguments.length?(e=typeof a=="function"?a:R.constant(+a),f):e},f.sortValues=function(a){return arguments.length?(y=a,$=null,f):y},f.sort=function(a){return arguments.length?($=a,y=null,f):$},f.startAngle=function(a){return arguments.length?(g=typeof a=="function"?a:R.constant(+a),f):g},f.endAngle=function(a){return arguments.length?(d=typeof a=="function"?a:R.constant(+a),f):d},f.padAngle=function(a){return arguments.length?(E=typeof a=="function"?a:R.constant(+a),f):E},f}var K=(function(){var e=function(S,t,i,n){for(i=i||{},n=S.length;n--;i[S[n]]=t);return i},y=[1,3],$=[1,4],g=[1,5],d=[1,6],E=[1,10,12,14,16,18,19,20,21,22],f=[2,4],a=[1,5,10,12,14,16,18,19,20,21,22],l=[20,21,22],m=[2,7],v=[1,12],I=[1,13],D=[1,14],_=[1,15],b=[1,16],o=[1,17],w={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,PIE:5,document:6,showData:7,line:8,statement:9,txt:10,value:11,title:12,title_value:13,acc_title:14,acc_title_value:15,acc_descr:16,acc_descr_value:17,acc_descr_multiline_value:18,section:19,NEWLINE:20,";":21,EOF:22,$accept:0,$end:1},terminals_:{2:"error",5:"PIE",7:"showData",10:"txt",11:"value",12:"title",13:"title_value",14:"acc_title",15:"acc_title_value",16:"acc_descr",17:"acc_descr_value",18:"acc_descr_multiline_value",19:"section",20:"NEWLINE",21:";",22:"EOF"},productions_:[0,[3,2],[3,2],[3,3],[6,0],[6,2],[8,2],[9,0],[9,2],[9,2],[9,2],[9,2],[9,1],[9,1],[4,1],[4,1],[4,1]],performAction:function(t,i,n,r,c,s,V){var x=s.length-1;switch(c){case 3:r.setShowData(!0);break;case 6:this.$=s[x-1];break;case 8:r.addSection(s[x-1],r.cleanupValue(s[x]));break;case 9:this.$=s[x].trim(),r.setDiagramTitle(this.$);break;case 10:this.$=s[x].trim(),r.setAccTitle(this.$);break;case 11:case 12:this.$=s[x].trim(),r.setAccDescription(this.$);break;case 13:r.addSection(s[x].substr(8)),this.$=s[x].substr(8);break}},table:[{3:1,4:2,5:y,20:$,21:g,22:d},{1:[3]},{3:7,4:2,5:y,20:$,21:g,22:d},e(E,f,{6:8,7:[1,9]}),e(a,[2,14]),e(a,[2,15]),e(a,[2,16]),{1:[2,1]},e(l,m,{8:10,9:11,1:[2,2],10:v,12:I,14:D,16:_,18:b,19:o}),e(E,f,{6:18}),e(E,[2,5]),{4:19,20:$,21:g,22:d},{11:[1,20]},{13:[1,21]},{15:[1,22]},{17:[1,23]},e(l,[2,12]),e(l,[2,13]),e(l,m,{8:10,9:11,1:[2,3],10:v,12:I,14:D,16:_,18:b,19:o}),e(E,[2,6]),e(l,[2,8]),e(l,[2,9]),e(l,[2,10]),e(l,[2,11])],defaultActions:{7:[2,1]},parseError:function(t,i){if(i.recoverable)this.trace(t);else{var n=new Error(t);throw n.hash=i,n}},parse:function(t){var i=this,n=[0],r=[],c=[null],s=[],V=this.table,x="",p=0,N=0,z=2,j=1,B=s.slice.call(arguments,1),h=Object.create(this.lexer),L={yy:{}};for(var Y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Y)&&(L.yy[Y]=this.yy[Y]);h.setInput(t,L.yy),L.yy.lexer=h,L.yy.parser=this,typeof h.yylloc>"u"&&(h.yylloc={});var Z=h.yylloc;s.push(Z);var et=h.options&&h.options.ranges;typeof L.yy.parseError=="function"?this.parseError=L.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function it(){var O;return O=r.pop()||h.lex()||j,typeof O!="number"&&(O instanceof Array&&(r=O,O=r.pop()),O=i.symbols_[O]||O),O}for(var k,F,A,H,M={},W,C,X,q;;){if(F=n[n.length-1],this.defaultActions[F]?A=this.defaultActions[F]:((k===null||typeof k>"u")&&(k=it()),A=V[F]&&V[F][k]),typeof A>"u"||!A.length||!A[0]){var J="";q=[];for(W in V[F])this.terminals_[W]&&W>z&&q.push("'"+this.terminals_[W]+"'");h.showPosition?J="Parse error on line "+(p+1)+`:
|
|
2
2
|
`+h.showPosition()+`
|
|
3
3
|
Expecting `+q.join(", ")+", got '"+(this.terminals_[k]||k)+"'":J="Parse error on line "+(p+1)+": Unexpected "+(k==j?"end of input":"'"+(this.terminals_[k]||k)+"'"),this.parseError(J,{text:h.match,token:this.terminals_[k]||k,line:h.yylineno,loc:Z,expected:q})}if(A[0]instanceof Array&&A.length>1)throw new Error("Parse Error: multiple actions possible at state: "+F+", token: "+k);switch(A[0]){case 1:n.push(k),c.push(h.yytext),s.push(h.yylloc),n.push(A[1]),k=null,N=h.yyleng,x=h.yytext,p=h.yylineno,Z=h.yylloc;break;case 2:if(C=this.productions_[A[1]][1],M.$=c[c.length-C],M._$={first_line:s[s.length-(C||1)].first_line,last_line:s[s.length-1].last_line,first_column:s[s.length-(C||1)].first_column,last_column:s[s.length-1].last_column},et&&(M._$.range=[s[s.length-(C||1)].range[0],s[s.length-1].range[1]]),H=this.performAction.apply(M,[x,N,p,L.yy,A[1],c,s].concat(B)),typeof H<"u")return H;C&&(n=n.slice(0,-1*C*2),c=c.slice(0,-1*C),s=s.slice(0,-1*C)),n.push(this.productions_[A[1]][0]),c.push(M.$),s.push(M._$),X=V[n[n.length-2]][n[n.length-1]],n.push(X);break;case 3:return!0}}return!0}},P=(function(){var S={EOF:1,parseError:function(i,n){if(this.yy.parser)this.yy.parser.parseError(i,n);else throw new Error(i)},setInput:function(t,i){return this.yy=i||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var t=this._input[0];this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t;var i=t.match(/(?:\r\n?|\n).*/g);return i?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},unput:function(t){var i=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-i),this.offset-=i;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var c=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-i},this.options.ranges&&(this.yylloc.range=[c[0],c[0]+this.yyleng-i]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
|
4
4
|
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(t){this.unput(this.match.slice(t))},pastInput:function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var t=this.pastInput(),i=new Array(t.length+1).join("-");return t+this.upcomingInput()+`
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "./layers.
|
|
1
|
+
import "./layers.BXpB8EUK.js";
|
|
2
2
|
var e = { paste: "Yapışdır", pasteAsPlaintext: "Düz mətn kimi yapışdırın", pasteCharts: "Diaqramları yapışdırın", selectAll: "Hamısını seç", multiSelect: "Seçimə element əlavə edin", moveCanvas: "Kanvası köçürün", cut: "Kəs", copy: "Kopyala", copyAsPng: "PNG olaraq panoya kopyala", copyAsSvg: "SVG olaraq panoya kopyala", copyText: "Mətn olaraq panoya kopyala", copySource: "", convertToCode: "", bringForward: "Önə daşı", sendToBack: "Geriyə göndərin", bringToFront: "Önə gətirin", sendBackward: "Geriyə göndərin", delete: "Sil", copyStyles: "Stilləri kopyalayın", pasteStyles: "Stilləri yapışdırın", stroke: "Strok rəngi", background: "Arxa fon", fill: "Doldur", strokeWidth: "Strok eni", strokeStyle: "Strok stili", strokeStyle_solid: "Solid", strokeStyle_dashed: "Kəsik", strokeStyle_dotted: "Nöqtəli", sloppiness: "Səliqəsizlik", opacity: "Şəffaflıq", textAlign: "Mətni uyğunlaşdır", edges: "Kənarlar", sharp: "Kəskin", round: "Dəyirmi", arrowheads: "Ox ucları", arrowhead_none: "Heç biri", arrowhead_arrow: "Ox", arrowhead_bar: "Çubuq", arrowhead_circle: "", arrowhead_circle_outline: "", arrowhead_triangle: "Üçbucaq", arrowhead_triangle_outline: "", arrowhead_diamond: "", arrowhead_diamond_outline: "", fontSize: "Şrift ölçüsü", fontFamily: "Şrift qrupu", addWatermark: '"Made with Excalidraw" əlavə et', handDrawn: "Əllə çəkilmiş", normal: "Normal", code: "Kod", small: "Kiçik", medium: "Orta", large: "Böyük", veryLarge: "Çox böyük", solid: "Solid", hachure: "Ştrix", zigzag: "Ziqzaq", crossHatch: "Çarpaz dəlik", thin: "İncə", bold: "Qalın", left: "Sol", center: "Mərkəz", right: "Sağ", extraBold: "Ekstra qalın", architect: "Memar", artist: "Rəssam", cartoonist: "Karikaturaçı", fileTitle: "Fayl adı", colorPicker: "Rəng seçən", canvasColors: "Kanvas üzərində istifadə olunur", canvasBackground: "Kanvas arxa fonu", drawingCanvas: "Kanvas çəkmək", layers: "Qatlar", actions: "Hərəkətlər", language: "Dil", liveCollaboration: "Canlı əməkdaşlıq...", duplicateSelection: "Dublikat", untitled: "Başlıqsız", name: "Ad", yourName: "Adınız", madeWithExcalidraw: "Excalidraw ilə hazırlanmışdır", group: "Qrup şəklində seçim", ungroup: "Qrupsuz seçim", 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: "", 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: "" }, a = { noItems: "", hint_emptyLibrary: "", hint_emptyPrivateLibrary: "" }, r = { clearReset: "", exportJSON: "", exportImage: "", export: "", copyToClipboard: "", save: "", saveAs: "", load: "", getShareableLink: "", close: "", selectLanguage: "", scrollBackToContent: "", zoomIn: "", zoomOut: "", resetZoom: "", menu: "", done: "", edit: "", undo: "", redo: "", resetLibrary: "", createNewRoom: "", fullScreen: "", darkMode: "", lightMode: "", zenMode: "", objectsSnapMode: "", exitZenMode: "", cancel: "", clear: "", remove: "", embed: "", publishLibrary: "", submit: "", confirm: "", embeddableInteractionButton: "" }, o = { clearReset: "", couldNotCreateShareableLink: "", couldNotCreateShareableLinkTooBig: "", couldNotLoadInvalidFile: "", importBackendFailed: "", cannotExportEmptyCanvas: "", couldNotCopyToClipboard: "", decryptFailed: "", uploadedSecurly: "", loadSceneOverridePrompt: "", collabStopOverridePrompt: "", errorAddingToLibrary: "", errorRemovingFromLibrary: "", confirmAddLibrary: "", imageDoesNotContainScene: "", cannotRestoreFromImage: "", invalidSceneUrl: "", resetLibrary: "", removeItemsFromsLibrary: "", invalidEncryptionKey: "", collabOfflineWarning: "" }, t = { unsupportedFileType: "", imageInsertError: "", fileTooBig: "", svgImageInsertError: "", failedToFetchImage: "", invalidSVGString: "", cannotResolveCollabServer: "", importLibraryError: "", collabSaveFailed: "", collabSaveFailed_sizeExceeded: "", imageToolNotSupported: "", brave_measure_text_error: { line1: "", line2: "", line3: "", line4: "" }, libraryElementTypeError: { embeddable: "", iframe: "", image: "" }, asyncPasteFailedOnRead: "", asyncPasteFailedOnParse: "", copyToSystemClipboardFailed: "" }, i = { selection: "", image: "", rectangle: "", diamond: "", ellipse: "", arrow: "", line: "", freedraw: "", text: "", library: "", lock: "", penMode: "", link: "", eraser: "", frame: "", magicframe: "", embeddable: "", laser: "", hand: "", extraTools: "", mermaidToExcalidraw: "", magicSettings: "" }, l = { canvasActions: "", selectedShapeActions: "", shapes: "" }, n = { canvasPanning: "", linearElement: "", freeDraw: "", text: "", embeddable: "", text_selected: "", text_editing: "", linearElementMulti: "", lockAngle: "", resize: "", resizeImage: "", rotate: "", lineEditor_info: "", lineEditor_pointSelected: "", lineEditor_nothingSelected: "", placeImage: "", publishLibrary: "", bindTextToElement: "", deepBoxSelect: "", eraserRevert: "", firefox_clipboard_write: "", disableSnapping: "" }, s = { cannotShowPreview: "", canvasTooBig: "", canvasTooBigTip: "" }, d = { headingMain: "", clearCanvasMessage: "", clearCanvasCaveat: "", trackedToSentry: "", openIssueMessage: "", sceneContent: "" }, u = { desc_intro: "", desc_privacy: "", button_startSession: "", button_stopSession: "", desc_inProgressIntro: "", desc_shareLink: "", desc_exitSession: "", shareTitle: "" }, c = { title: "" }, m = { disk_title: "", disk_details: "", disk_button: "", link_title: "", link_details: "", link_button: "", excalidrawplus_description: "", excalidrawplus_button: "", excalidrawplus_exportError: "" }, p = { 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: "" }, g = { title: "" }, b = { title: "", itemName: "", authorName: "", githubUsername: "", twitterUsername: "", libraryName: "", libraryDesc: "", website: "", placeholder: { authorName: "", libraryName: "", libraryDesc: "", githubHandle: "", twitterHandle: "", website: "" }, errors: { required: "", website: "" }, noteDescription: "", noteGuidelines: "", noteLicense: "", noteItems: "", atleastOneLibItem: "", republishWarning: "" }, y = { title: "", content: "" }, x = { resetLibrary: "", removeItemsFromLib: "" }, h = { header: "", label: { withBackground: "", onlySelected: "", darkMode: "", embedScene: "", scale: "", padding: "" }, tooltip: { embedScene: "" }, title: { exportToPng: "", exportToSvg: "", copyPngToClipboard: "" }, button: { exportToPng: "", exportToSvg: "", copyPngToClipboard: "" } }, k = { tooltip: "", link: "" }, S = { angle: "", element: "", elements: "", height: "", scene: "", selected: "", storage: "", title: "", total: "", version: "", versionCopy: "", versionNotAvailable: "", width: "" }, v = { addedToLibrary: "", copyStyles: "", copyToClipboard: "", copyToClipboardAsPng: "", fileSaved: "", fileSavedToFilename: "", canvas: "", selection: "", pasteAsSingleElement: "", unableToEmbed: "", unrecognizedLinkFormat: "" }, F = { transparent: "", black: "", white: "", red: "", pink: "", grape: "", violet: "", gray: "", blue: "", cyan: "", teal: "", green: "", yellow: "", orange: "", bronze: "" }, w = { app: { center_heading: "", center_heading_plus: "", menuHint: "" }, defaults: { menuHint: "", center_heading: "", toolbarHint: "", helpHint: "" } }, E = { mostUsedCustomColors: "", colors: "", shades: "", hexCode: "", noShades: "" }, T = { action: { exportToImage: { title: "", button: "", description: "" }, saveToDisk: { title: "", button: "", description: "" }, excalidrawPlus: { title: "", button: "", description: "" } }, modal: { loadFromFile: { title: "", button: "", description: "" }, shareableLink: { title: "", button: "", description: "" } } }, _ = { title: "", button: "", description: "", syntax: "", preview: "" }, f = { labels: e, library: a, buttons: r, alerts: o, errors: t, toolBar: i, headings: l, hints: n, canvasError: s, errorSplash: d, roomDialog: u, errorDialog: c, exportDialog: m, helpDialog: p, clearCanvasDialog: g, publishDialog: b, publishSuccessDialog: y, confirmDialog: x, imageExportDialog: h, encrypted: k, stats: S, toast: v, colors: F, welcomeScreen: w, colorPicker: E, overwriteConfirm: T, mermaid: _ };
|
|
3
3
|
export {
|
|
4
4
|
o as alerts,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "./layers.
|
|
1
|
+
import "./layers.BXpB8EUK.js";
|
|
2
2
|
var e = { paste: "Yapıştır", pasteAsPlaintext: "Düz metin olarak yapıştır", pasteCharts: "Grafikleri yapıştır", selectAll: "Tümünü seç", multiSelect: "Seçime öge ekle", moveCanvas: "Tuvali taşı", cut: "Kes", copy: "Kopyala", copyAsPng: "Panoya PNG olarak kopyala", copyAsSvg: "Panoya SVG olarak kopyala", copyText: "Panoya metin olarak kopyala", copySource: "", convertToCode: "", bringForward: "Bir öne getir", sendToBack: "Arkaya gönder", bringToFront: "En öne getir", sendBackward: "Bir geriye gönder", delete: "Sil", copyStyles: "Stilleri kopyala", pasteStyles: "Stilleri yapıştır", stroke: "Vurgu", background: "Arka plan", fill: "Doldur", strokeWidth: "Kontur genişliği", strokeStyle: "Kontur stili", strokeStyle_solid: "Dolu", strokeStyle_dashed: "Kesik çizgili", strokeStyle_dotted: "Noktalı", sloppiness: "Üstün körülük", opacity: "Opaklık", textAlign: "Metin hizala", edges: "Kenarlar", sharp: "Keskin", round: "Yuvarlak", arrowheads: "Ok uçları", arrowhead_none: "Yok", arrowhead_arrow: "Ok", arrowhead_bar: "Çizgi", arrowhead_circle: "", arrowhead_circle_outline: "", arrowhead_triangle: "Üçgen", arrowhead_triangle_outline: "", arrowhead_diamond: "", arrowhead_diamond_outline: "", fontSize: "Yazı tipi boyutu", fontFamily: "Yazı tipi ailesi", addWatermark: '"Excalidraw ile yapıldı" yazısını ekle', handDrawn: "El-yazısı", normal: "Normal", code: "Kod", small: "Küçük", medium: "Orta", large: "Büyük", veryLarge: "Çok geniş", solid: "Dolu", hachure: "Taralı", zigzag: "Zikzak", crossHatch: "Çapraz-taralı", thin: "İnce", bold: "Kalın", left: "Sol", center: "Ortala", right: "Sağ", extraBold: "Ekstra kalın", architect: "Mimar", artist: "Sanatçı", cartoonist: "Karikatürist", fileTitle: "Dosya adı", colorPicker: "Renk seçici", canvasColors: "Tuvalin üzerinde kullanıldı", canvasBackground: "Tuval arka planı", drawingCanvas: "Çizim tuvali", layers: "Katmanlar", actions: "Eylemler", language: "Dil", liveCollaboration: "Canlı ortak çalışma alanı...", duplicateSelection: "Çoğalt", untitled: "Adsız", name: "İsim", yourName: "İsminiz", madeWithExcalidraw: "Excalidraw ile yapıldı", group: "Seçimi grup yap", ungroup: "Seçilen grubu dağıt", collaborators: "Ortaklar", showGrid: "Izgarayı göster", addToLibrary: "Kütüphaneye ekle", removeFromLibrary: "Kütüphaneden kaldır", libraryLoadingMessage: "Kütüphane yükleniyor…", libraries: "Kütüphanelere gözat", loadingScene: "Sahne yükleniyor…", align: "Hizala", alignTop: "Yukarı hizala", alignBottom: "Aşağı hizala", alignLeft: "Sola hizala", alignRight: "Sağa hizala", centerVertically: "Dikeyde ortala", centerHorizontally: "Yatayda ortala", distributeHorizontally: "Yatay dağıt", distributeVertically: "Dikey dağıt", flipHorizontal: "Yatay döndür", flipVertical: "Dikey döndür", viewMode: "Görünüm modu", share: "Paylaş", showStroke: "Kontur için renk seçiciyi göster", showBackground: "Arkaplan için renk seçiciyi göster", toggleTheme: "Temayı etkinleştir/devre dışı bırak", personalLib: "Kişisel Kitaplık", excalidrawLib: "Excalidraw Kitaplığı", decreaseFontSize: "Yazı Tipi Boyutunu Küçült", increaseFontSize: "Yazı Tipi Boyutunu Büyült", unbindText: "Metni çöz", bindText: "Metni taşıyıcıya bağla", createContainerFromText: "Metni bileşen içinde sar", link: { edit: "Bağlantıyı düzenle", editEmbed: "Bağlantıyı düzenle & yerleştir", create: "Bağlantı oluştur", createEmbed: "Bağlantı oluştur & yerleştir", label: "Bağlantı", labelEmbed: "Bağlantı & yerleştirme", empty: "Herhangi bir bağlantı oluşturulmadı" }, lineEditor: { edit: "Çizgiyi düzenle", exit: "Çizgi düzenlemeden çık" }, elementLock: { lock: "Kilitle", unlock: "Kilidi Kaldır", lockAll: "Hepsini kilitle", unlockAll: "Hepsinin kilidini kaldır" }, statusPublished: "Yayınlandı", sidebarLock: "Kenar çubuğu açık kalsın", selectAllElementsInFrame: "Çerçevedeki tüm bileşenleri seç", removeAllElementsFromFrame: "Çerçevedeki tüm bileşenleri sil", eyeDropper: "Tuvalden renk seç", textToDiagram: "", prompt: "" }, a = { noItems: "Öğe eklenmedi...", hint_emptyLibrary: "Öğelerden birini eklemek için öğeyi seçiniz veya aşağıdaki genel kütüphaneden öğeleri ekleyin.", hint_emptyPrivateLibrary: "Tuvalden bir eleman seçerek sayfaya ekleyin." }, i = { clearReset: "Tuvali sıfırla", exportJSON: "Dosyaya aktar", exportImage: "Resimleri dışa aktar...", export: "Şuraya kaydet...", copyToClipboard: "Panoya kopyala", save: "Geçerli dosyaya kaydet", saveAs: "Farklı kaydet", load: "Aç", getShareableLink: "Paylaşılabilir bağlantı al", close: "Kapat", selectLanguage: "Dil seçin", scrollBackToContent: "İçeriğe geri dön", zoomIn: "Yakınlaştır", zoomOut: "Uzaklaştır", resetZoom: "Yakınlaştırmayı sıfırla", menu: "Menü", done: "Tamam", edit: "Düzenle", undo: "Geri Al", redo: "Yeniden yap", resetLibrary: "Kütüphaneyi sıfırla", createNewRoom: "Yeni oda oluştur", fullScreen: "Tam ekran", darkMode: "Koyu tema", lightMode: "Açık tema", zenMode: "Zen modu", objectsSnapMode: "Nesnelere hizala", exitZenMode: "Zen modundan çık", cancel: "İptal", clear: "Temizle", remove: "Kaldır", embed: "", publishLibrary: "Yayınla", submit: "Gönder", confirm: "Onayla", embeddableInteractionButton: "Etkileşime girmek için tıkla" }, u = { clearReset: "Tuvalin tamamı temizlenecek. Emin misiniz?", couldNotCreateShareableLink: "Paylaşılabilir bağlantı oluşturulamadı.", couldNotCreateShareableLinkTooBig: "Paylaşılabilir bağlantı oluşturulamadı: sahne çok büyük", couldNotLoadInvalidFile: "Bilinmeyen dosya yüklenemiyor", importBackendFailed: "Sunucudan içe aktarma başarısız.", cannotExportEmptyCanvas: "Boş tuval dışarıya aktarılamaz.", couldNotCopyToClipboard: "Panoya kopyalanamıyor.", decryptFailed: "Şifrelenmiş veri çözümlenemedi.", uploadedSecurly: "Yükleme uçtan uca şifreleme ile korunmaktadır. Excalidraw sunucusu ve üçüncül şahıslar içeriği okuyamayacaktır.", loadSceneOverridePrompt: "Harici çizimler yüklemek mevcut olan içeriği değiştirecektir. Devam etmek istiyor musunuz?", collabStopOverridePrompt: `Oturumu sonlandırmak daha önceki, yerel olarak kaydedilmiş çizimin üzerine kaydedilmesine sebep olacak. Emin misiniz?
|
|
3
3
|
|
|
4
4
|
(Yerel çiziminizi kaybetmemek için tarayıcı sekmesini kapatabilirsiniz.)`, errorAddingToLibrary: "Öğe kütüphaneye eklenemedi", errorRemovingFromLibrary: "Öğe kütüphaneden silinemedi", confirmAddLibrary: "Bu, kitaplığınıza {{numShapes}} tane şekil ekleyecek. Emin misiniz?", imageDoesNotContainScene: "Bu görüntü herhangi bir sahne verisi içermiyor gibi görünüyor. Dışa aktarma sırasında sahne yerleştirmeyi etkinleştirdiniz mi?", cannotRestoreFromImage: "Sahne bu resim dosyasından geri yüklenemedi", invalidSceneUrl: "Verilen bağlantıdan çalışma alanı yüklenemedi. Dosya bozuk olabilir veya geçerli bir Excalidraw JSON verisi bulundurmuyor olabilir.", resetLibrary: "Bu işlem kütüphanenizi sıfırlayacak. Emin misiniz?", removeItemsFromsLibrary: "{{count}} öğe(ler) kitaplıktan kaldırılsın mı?", invalidEncryptionKey: "Şifreleme anahtarı 22 karakter olmalı. Canlı işbirliği devre dışı bırakıldı.", collabOfflineWarning: "İnternet bağlantısı bulunamadı. Değişiklikleriniz kaydedilmeyecek!" }, l = { unsupportedFileType: "Desteklenmeyen dosya türü.", imageInsertError: "Görsel eklenemedi. Daha sonra tekrar deneyin...", fileTooBig: "Dosya çok büyük. İzin verilen maksimum boyut {{maxSize}}.", svgImageInsertError: "SVG resmi eklenemedi. SVG işaretlemesi geçersiz görünüyor.", failedToFetchImage: "", invalidSVGString: "Geçersiz SVG.", cannotResolveCollabServer: "İş birliği sunucusuna bağlanılamıyor. Lütfen sayfayı yenileyip tekrar deneyin.", importLibraryError: "Kütüphane yüklenemedi", collabSaveFailed: "Backend veritabanına kaydedilemedi. Eğer problem devam ederse, çalışmanızı korumak için dosyayı yerel olarak kaydetmelisiniz.", collabSaveFailed_sizeExceeded: "Backend veritabanına kaydedilemedi; tuval çok büyük. Çalışmanızı korumak için dosyayı yerel olarak kaydetmelisiniz.", imageToolNotSupported: "", brave_measure_text_error: { line1: "", line2: "", line3: "", line4: "" }, libraryElementTypeError: { embeddable: "", iframe: "", image: "Resimleri kütüphaneye ekleme desteği yakında geliyor!" }, asyncPasteFailedOnRead: "", asyncPasteFailedOnParse: "", copyToSystemClipboardFailed: "" }, n = { selection: "Seçme", image: "Görsel ekle", rectangle: "Dikdörtgen", diamond: "Elmas", ellipse: "Elips", arrow: "Ok", line: "Çizgi", freedraw: "Çiz", text: "Yazı", library: "Kütüphane", lock: "Seçilen aracı çizimden sonra aktif tut", penMode: "Kalem modu - dokunmayı engelle", link: "Seçilen şekil için bağlantı Ekle/Güncelle", eraser: "Silgi", frame: "Çerçeve aracı", magicframe: "", embeddable: "Web Yerleştirme", laser: "Lazer işaretçisi", hand: "", extraTools: "Daha fazla araç", mermaidToExcalidraw: "", magicSettings: "" }, r = { canvasActions: "Tuval eylemleri", selectedShapeActions: "Seçilen şekil aksiyonları", shapes: "Şekiller" }, t = { canvasPanning: "", linearElement: "Birden fazla nokta için tıklayın, tek çizgi için sürükleyin", freeDraw: "Tıkla ve sürükle, bitirdiğinde serbest bırak", text: "İpucu: seçme aracıyla herhangi bir yere çift tıklayarak da yazı ekleyebilirsin", embeddable: "Web sitesi yerleştirmek için sürükle bırak", text_selected: "Metni düzenlemek için çift tıklayın veya ENTER'a basın", text_editing: "Düzenlemeyi bitirmek için ESC veya Ctrl/Cmd+ENTER tuşlarına basın", linearElementMulti: "Bitirmek için son noktaya tıklayın ya da Escape veya Enter tuşuna basın", lockAngle: "SHIFT tuşuna basılı tutarak açıyı koruyabilirsiniz", resize: `Yeniden boyutlandırırken SHIFT tuşunu basılı tutarak oranları sınırlayabilirsiniz,
|
|
@@ -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.BH9wLfk4.js");var u={paste:"貼上",pasteAsPlaintext:"以純文字貼上",pasteCharts:"貼上圖表",selectAll:"全選",multiSelect:"將物件加入選取範圍",moveCanvas:"移動畫布",cut:"剪下",copy:"複製",copyAsPng:"以PNG格式儲存到剪貼板",copyAsSvg:"以SVG格式複製到剪貼板",copyText:"以文字格式複製至剪貼簿",copySource:"複製來源至剪貼簿",convertToCode:"轉換為程式碼",bringForward:"上移一層",sendToBack:"移到最底層",bringToFront:"置於最頂層",sendBackward:"往後移一層",delete:"刪除",copyStyles:"複製樣式",pasteStyles:"貼上樣式",stroke:"筆畫",background:"背景",fill:"填滿",strokeWidth:"筆跡寬度",strokeStyle:"筆畫樣式",strokeStyle_solid:"實線",strokeStyle_dashed:"虛線",strokeStyle_dotted:"點線",sloppiness:"線條風格",opacity:"透明度",textAlign:"文字對齊",edges:"邊緣",sharp:"尖銳",round:"平滑",arrowheads:"箭頭",arrowhead_none:"無",arrowhead_arrow:"箭頭",arrowhead_bar:"條狀箭頭",arrowhead_circle:"圓形",arrowhead_circle_outline:"圓形(外框)",arrowhead_triangle:"三角形",arrowhead_triangle_outline:"三角形(外框)",arrowhead_diamond:"菱形",arrowhead_diamond_outline:"菱形(外框)",fontSize:"字型大小",fontFamily:"字體集",addWatermark:'加上 "Made with Excalidraw" 浮水印',handDrawn:"手寫",normal:"一般",code:"代碼",small:"小",medium:"中",large:"大",veryLarge:"特大",solid:"實心",hachure:"斜線筆觸",zigzag:"Z字形",crossHatch:"交叉筆觸",thin:"細",bold:"粗",left:"左側",center:"置中",right:"右側",extraBold:"極粗",architect:"精確",artist:"藝術",cartoonist:"卡通",fileTitle:"檔案名稱",colorPicker:"色彩選擇工具",canvasColors:"使用於畫布",canvasBackground:"Canvas 背景",drawingCanvas:"繪圖 canvas",layers:"圖層",actions:"動作",language:"語言",liveCollaboration:"即時協作...",duplicateSelection:"複製",untitled:"無標題",name:"名稱",yourName:"你的名稱",madeWithExcalidraw:"以 Excalidraw 製作",group:"建立群組",ungroup:"取消群組",collaborators:"協作者",showGrid:"顯示格線",addToLibrary:"加入資料庫",removeFromLibrary:"從資料庫中移除",libraryLoadingMessage:"資料庫讀取中…",libraries:"瀏覽資料庫",loadingScene:"場景讀取中…",align:"對齊",alignTop:"對齊頂部",alignBottom:"對齊底部",alignLeft:"對齊左側",alignRight:"對齊右側",centerVertically:"垂直置中",centerHorizontally:"水平置中",distributeHorizontally:"水平分布",distributeVertically:"垂直分布",flipHorizontal:"水平翻轉",flipVertical:"垂直翻轉",viewMode:"檢視模式",share:"共享",showStroke:"顯示線條檢色器",showBackground:"顯示背景檢色器",toggleTheme:"切換主題",personalLib:"個人資料庫",excalidrawLib:"Excalidraw 資料庫",decreaseFontSize:"縮小文字",increaseFontSize:"放大文字",unbindText:"取消綁定文字",bindText:"結合文字至容器",createContainerFromText:"將文字包於容器中",link:{edit:"編輯連結",editEmbed:"編輯連結&嵌入",create:"建立連結",createEmbed:"建立連結&嵌入",label:"連結",labelEmbed:"連結&嵌入",empty:"未設定連結"},lineEditor:{edit:"編輯線條",exit:"結束線條編輯"},elementLock:{lock:"鎖定",unlock:"解鎖",lockAll:"全部鎖定",unlockAll:"全部解鎖"},statusPublished:"已發布",sidebarLock:"側欄維持開啟",selectAllElementsInFrame:"選取框架內的所有元素",removeAllElementsFromFrame:"從框架內移除所有元素",eyeDropper:"從畫布中選取顏色",textToDiagram:"文字轉圖表",prompt:"提示詞"},F={noItems:"尚未加入任何物件...",hint_emptyLibrary:"選取畫布上的物件以加入,或從下方的公開 repository 中安裝資料庫",hint_emptyPrivateLibrary:"選擇畫布上的物件以在此加入"},e={clearReset:"重置 canvas",exportJSON:"匯出至檔案",exportImage:"匯出圖片",export:"儲存至...",copyToClipboard:"複製至剪貼簿",save:"儲存目前檔案",saveAs:"儲存為",load:"開啟",getShareableLink:"取得共享連結",close:"關閉",selectLanguage:"選擇語言",scrollBackToContent:"捲動回到內容",zoomIn:"放大",zoomOut:"縮小",resetZoom:"重設縮放",menu:"選單",done:"完成",edit:"編輯",undo:"復原",redo:"重做",resetLibrary:"重設資料庫",createNewRoom:"建立新協作會議室",fullScreen:"全螢幕",darkMode:"深色模式",lightMode:"淺色模式",zenMode:"專注模式",objectsSnapMode:"吸附至物件",exitZenMode:"離開專注模式",cancel:"取消",clear:"清除",remove:"刪除",embed:"切換嵌入",publishLibrary:"發布",submit:"送出",confirm:"確認",embeddableInteractionButton:"點擊以互動"},E={clearReset:"這將會清除整個 canvas。你確定嗎?",couldNotCreateShareableLink:"無法建立共享連結。",couldNotCreateShareableLinkTooBig:"無法建立共享連結:場景太大",couldNotLoadInvalidFile:"無法讀取失效的檔案。",importBackendFailed:"後端讀取失敗。",cannotExportEmptyCanvas:"無法輸出空白的 canvas。",couldNotCopyToClipboard:"無法複製到剪貼簿",decryptFailed:"無法解密資料。",uploadedSecurly:"上傳已通過 end-to-end 加密,Excalidraw 伺服器和第三方無法皆讀取其內容。",loadSceneOverridePrompt:"讀取外部圖樣將取代目前的內容。是否要繼續?",collabStopOverridePrompt:`停止連線將覆蓋您先前於本機儲存的繪圖進度,是否確認?
|
|
2
2
|
|
|
3
3
|
(如要保留原有的本機繪圖進度,直接關閉瀏覽器分頁即可。)`,errorAddingToLibrary:"無法於此資料庫加入項目",errorRemovingFromLibrary:"無法由此資料庫移除項目",confirmAddLibrary:"這將會將 {{numShapes}} 個圖形加入你的資料庫,你確定嗎?",imageDoesNotContainScene:"此圖檔中未包含場景資料。輸出檔案時是否有包含場景資料?",cannotRestoreFromImage:"無法由此檔案回復場景。",invalidSceneUrl:"無法由提供的 URL 匯入場景。可能是發生異常,或未包含有效的 Excalidraw JSON 資料。",resetLibrary:"這會清除您的資料庫,是否確定?",removeItemsFromsLibrary:"從資料庫刪除 {{count}} 項?",invalidEncryptionKey:"加密鍵必須為22字元。即時協作已停用。",collabOfflineWarning:`沒有可用的網路連線。
|
|
4
4
|
變更無法儲存!`},C={unsupportedFileType:"不支援的檔案類型。",imageInsertError:"無法插入圖片。請稍後再試…",fileTooBig:"檔案過大。可接受的最大尺寸為 {{maxSize}} 。",svgImageInsertError:"無法插入 SVG 圖片。此 SVG 檔案有問題。",failedToFetchImage:"無法獲取圖片。",invalidSVGString:"無效的 SVG。",cannotResolveCollabServer:"無法連結至 collab 伺服器。請重新整理後再試一次。",importLibraryError:"無法載入資料庫",collabSaveFailed:"無法儲存至後端資料庫。若此問題持續發生,請將檔案儲存於本機以確保資料不會遺失。",collabSaveFailed_sizeExceeded:"無法儲存至後端資料庫,可能的原因為畫布尺寸過大。請將檔案儲存於本機以確保資料不會遺失。",imageToolNotSupported:"圖片已停用",brave_measure_text_error:{line1:"看起來您開啟了 Brave 瀏覽器的 <bold>Aggressively Block Fingerprinting</bold> 設定。",line2:"這可能造成您畫布中 <bold>文字元素</bold> 的異常。",line3:"我們強烈建議您關閉此設定。您可以依照 <link>這些步驟</link> 來進行。",line4:"若關閉此設定並未修復文字元素的顯示問題,請回報於我們 GitHub 上的 <issueLink>issue</issueLink>,或在 <discordLink>Discord</discordLink> 上告訴我們。"},libraryElementTypeError:{embeddable:"可嵌入元素無法加入資料庫",iframe:"IFrame 元素無法加入資料庫",image:"即將支援加入圖片至資料庫!"},asyncPasteFailedOnRead:"無法貼上(無法由系統剪貼簿讀入)",asyncPasteFailedOnParse:"無法貼上",copyToSystemClipboardFailed:"無法複製至剪貼簿"},A={selection:"選取",image:"插入圖片",rectangle:"長方形",diamond:"菱形",ellipse:"橢圓",arrow:"箭頭",line:"線條",freedraw:"繪圖",text:"文字",library:"資料庫",lock:"可連續使用選取的工具",penMode:"筆模式 - 避免觸摸",link:"為所選的形狀增加\b/更新連結",eraser:"橡皮擦",frame:"框架工具",magicframe:"線框稿轉為程式碼",embeddable:"嵌入網站",laser:"雷射筆",hand:"手形(平移工具)",extraTools:"更多工具",mermaidToExcalidraw:"Mermaid 至 Excalidraw",magicSettings:"AI 設定"},D={canvasActions:"canvas 動作",selectedShapeActions:"選取圖形動作",shapes:"形狀"},B={canvasPanning:"若要移動畫布,請在拖曳時按住滑鼠滾輪或空白鍵,或使用手形工具",linearElement:"點擊以繪製多點曲線;或拖曳以繪製直線",freeDraw:"點擊並拖曳來繪圖,放開即結束",text:"提示:亦可使用選取工具在任何地方雙擊來加入文字",embeddable:"點擊並拖移以建立嵌入網站",text_selected:"雙擊滑鼠或按 Enter 以編輯文字",text_editing:"按跳脫鍵或 Ctrl 或 Cmd + Enter 以結束編輯",linearElementMulti:"按下 Escape 或 Enter 以結束繪製",lockAngle:"按住 SHIFT 可限制旋轉角度",resize:"縮放時按住 Shift 可保持原比例縮放;\\n按住 Alt 可由中心點進行縮放",resizeImage:"按住 SHIFT 可任意縮放,按住 ALT 可由中央縮放。",rotate:"旋轉時按住 Shift 可限制旋轉角度",lineEditor_info:"按住 Ctrl 或 Cmd 並雙擊或按住 Ctrl 或 Cmd + Enter 來編輯控制點",lineEditor_pointSelected:"按下 Delete 可移除錨點;Ctrl 或 Cmd + D 可複製;或可拖曳來移動",lineEditor_nothingSelected:`選擇要編輯的錨點(按住 SHIFT 可多選),
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { n as Et, o as mt, a as gt, s as kt, b as xt, c as Rt, g as Z, l as V, d as rt, u as Ot, e as bt, q as Nt, r as Tt, X as At } from "./layers.
|
|
1
|
+
import { n as Et, o as mt, a as gt, s as kt, b as xt, c as Rt, g as Z, l as V, d as rt, u as Ot, e as bt, q as Nt, r as Tt, X as At } from "./layers.Cv2e6wbN.js";
|
|
2
2
|
import { G as Mt } from "./layers.BJDrjORS.js";
|
|
3
3
|
import "lodash-es";
|
|
4
4
|
import { l as St } from "./layers.D4T8fTcj.js";
|
|
5
|
-
import "./layers.
|
|
5
|
+
import "./layers.BXpB8EUK.js";
|
|
6
6
|
import "lodash-es/memoize.js";
|
|
7
7
|
import "lodash-es/merge.js";
|
|
8
8
|
import "lodash-es/isEmpty.js";
|
|
9
|
-
import { l as wt } from "./layers.
|
|
9
|
+
import { l as wt } from "./layers.Dn-qiYzF.js";
|
|
10
10
|
const It = /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;
|
|
11
11
|
function Dt(t) {
|
|
12
12
|
return typeof t == "string" && It.test(t);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { g as Dt, s as we, a as Oe, b as Te, c as Re, d as Nt, l as le, e as De, f as Se, h as wt, i as ue, w as Pe, j as Kt, k as oe } from "./layers.
|
|
2
|
-
import { d as Me, g as Le } from "./layers.
|
|
3
|
-
import { J as Ne } from "./layers.
|
|
1
|
+
import { g as Dt, s as we, a as Oe, b as Te, c as Re, d as Nt, l as le, e as De, f as Se, h as wt, i as ue, w as Pe, j as Kt, k as oe } from "./layers.Cv2e6wbN.js";
|
|
2
|
+
import { d as Me, g as Le } from "./layers.DzNXPJIm.js";
|
|
3
|
+
import { J as Ne } from "./layers.BXpB8EUK.js";
|
|
4
4
|
import "lodash-es/memoize.js";
|
|
5
5
|
import "lodash-es/merge.js";
|
|
6
6
|
import "lodash-es/isEmpty.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const D=require("./layers.DOrgOHBr.js"),n=require("./layers.
|
|
1
|
+
"use strict";const D=require("./layers.DOrgOHBr.js"),n=require("./layers.DwB8Gmd_.js");function b(o){return o.innerRadius}function k(o){return o.outerRadius}function _(o){return o.startAngle}function nn(o){return o.endAngle}function en(o){return o&&o.padAngle}function an(o,x,E,P,h,v,j,i){var I=E-o,t=P-x,e=j-h,y=i-v,s=y*I-e*t;if(!(s*s<n.epsilon))return s=(e*(x-v)-y*(o-h))/s,[o+s*I,x+s*t]}function M(o,x,E,P,h,v,j){var i=o-E,I=x-P,t=(j?v:-v)/n.sqrt(i*i+I*I),e=t*I,y=-t*i,s=o+e,u=x+y,c=E+e,f=P+y,z=(s+c)/2,l=(u+f)/2,g=c-s,p=f-u,A=g*g+p*p,R=h-v,T=s*f-c*u,O=(p<0?-1:1)*n.sqrt(n.max(0,R*R*A-T*T)),S=(T*p-g*O)/A,$=(-T*g-p*O)/A,q=(T*p+g*O)/A,m=(-T*g+p*O)/A,d=S-z,a=$-l,r=q-z,B=m-l;return d*d+a*a>r*r+B*B&&(S=q,$=m),{cx:S,cy:$,x01:-e,y01:-y,x11:S*(h/R-1),y11:$*(h/R-1)}}function sn(){var o=b,x=k,E=D.constant(0),P=null,h=_,v=nn,j=en,i=null,I=D.withPath(t);function t(){var e,y,s=+o.apply(this,arguments),u=+x.apply(this,arguments),c=h.apply(this,arguments)-n.halfPi,f=v.apply(this,arguments)-n.halfPi,z=n.abs(f-c),l=f>c;if(i||(i=e=I()),u<s&&(y=u,u=s,s=y),!(u>n.epsilon))i.moveTo(0,0);else if(z>n.tau-n.epsilon)i.moveTo(u*n.cos(c),u*n.sin(c)),i.arc(0,0,u,c,f,!l),s>n.epsilon&&(i.moveTo(s*n.cos(f),s*n.sin(f)),i.arc(0,0,s,f,c,l));else{var g=c,p=f,A=c,R=f,T=z,O=z,S=j.apply(this,arguments)/2,$=S>n.epsilon&&(P?+P.apply(this,arguments):n.sqrt(s*s+u*u)),q=n.min(n.abs(u-s)/2,+E.apply(this,arguments)),m=q,d=q,a,r;if($>n.epsilon){var B=n.asin($/s*n.sin(S)),G=n.asin($/u*n.sin(S));(T-=B*2)>n.epsilon?(B*=l?1:-1,A+=B,R-=B):(T=0,A=R=(c+f)/2),(O-=G*2)>n.epsilon?(G*=l?1:-1,g+=G,p-=G):(O=0,g=p=(c+f)/2)}var C=u*n.cos(g),F=u*n.sin(g),H=s*n.cos(R),J=s*n.sin(R);if(q>n.epsilon){var K=u*n.cos(p),L=u*n.sin(p),N=s*n.cos(A),Q=s*n.sin(A),w;if(z<n.pi)if(w=an(C,F,N,Q,K,L,H,J)){var U=C-w[0],V=F-w[1],W=K-w[0],X=L-w[1],Y=1/n.sin(n.acos((U*W+V*X)/(n.sqrt(U*U+V*V)*n.sqrt(W*W+X*X)))/2),Z=n.sqrt(w[0]*w[0]+w[1]*w[1]);m=n.min(q,(s-Z)/(Y-1)),d=n.min(q,(u-Z)/(Y+1))}else m=d=0}O>n.epsilon?d>n.epsilon?(a=M(N,Q,C,F,u,d,l),r=M(K,L,H,J,u,d,l),i.moveTo(a.cx+a.x01,a.cy+a.y01),d<q?i.arc(a.cx,a.cy,d,n.atan2(a.y01,a.x01),n.atan2(r.y01,r.x01),!l):(i.arc(a.cx,a.cy,d,n.atan2(a.y01,a.x01),n.atan2(a.y11,a.x11),!l),i.arc(0,0,u,n.atan2(a.cy+a.y11,a.cx+a.x11),n.atan2(r.cy+r.y11,r.cx+r.x11),!l),i.arc(r.cx,r.cy,d,n.atan2(r.y11,r.x11),n.atan2(r.y01,r.x01),!l))):(i.moveTo(C,F),i.arc(0,0,u,g,p,!l)):i.moveTo(C,F),!(s>n.epsilon)||!(T>n.epsilon)?i.lineTo(H,J):m>n.epsilon?(a=M(H,J,K,L,s,-m,l),r=M(C,F,N,Q,s,-m,l),i.lineTo(a.cx+a.x01,a.cy+a.y01),m<q?i.arc(a.cx,a.cy,m,n.atan2(a.y01,a.x01),n.atan2(r.y01,r.x01),!l):(i.arc(a.cx,a.cy,m,n.atan2(a.y01,a.x01),n.atan2(a.y11,a.x11),!l),i.arc(0,0,s,n.atan2(a.cy+a.y11,a.cx+a.x11),n.atan2(r.cy+r.y11,r.cx+r.x11),l),i.arc(r.cx,r.cy,m,n.atan2(r.y11,r.x11),n.atan2(r.y01,r.x01),!l))):i.arc(0,0,s,R,A,l)}if(i.closePath(),e)return i=null,e+""||null}return t.centroid=function(){var e=(+o.apply(this,arguments)+ +x.apply(this,arguments))/2,y=(+h.apply(this,arguments)+ +v.apply(this,arguments))/2-n.pi/2;return[n.cos(y)*e,n.sin(y)*e]},t.innerRadius=function(e){return arguments.length?(o=typeof e=="function"?e:D.constant(+e),t):o},t.outerRadius=function(e){return arguments.length?(x=typeof e=="function"?e:D.constant(+e),t):x},t.cornerRadius=function(e){return arguments.length?(E=typeof e=="function"?e:D.constant(+e),t):E},t.padRadius=function(e){return arguments.length?(P=e==null?null:typeof e=="function"?e:D.constant(+e),t):P},t.startAngle=function(e){return arguments.length?(h=typeof e=="function"?e:D.constant(+e),t):h},t.endAngle=function(e){return arguments.length?(v=typeof e=="function"?e:D.constant(+e),t):v},t.padAngle=function(e){return arguments.length?(j=typeof e=="function"?e:D.constant(+e),t):j},t.context=function(e){return arguments.length?(i=e??null,t):i},t}exports.arc=sn;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "./layers.
|
|
1
|
+
import "./layers.BXpB8EUK.js";
|
|
2
2
|
var e = { paste: "Coller", pasteAsPlaintext: "Coller comme texte brut", pasteCharts: "Coller les graphiques", selectAll: "Tout sélectionner", multiSelect: "Ajouter l'élément à la sélection", moveCanvas: "Déplacer le canevas", cut: "Couper", copy: "Copier", copyAsPng: "Copier dans le presse-papier en PNG", copyAsSvg: "Copier dans le presse-papier en SVG", copyText: "Copier dans le presse-papier en tant que texte", copySource: "Copier la source dans le presse-papiers", convertToCode: "Convertir en code", bringForward: "Envoyer vers l'avant", sendToBack: "Déplacer à l'arrière-plan", bringToFront: "Mettre au premier plan", sendBackward: "Reculer d'un plan", delete: "Supprimer", copyStyles: "Copier les styles", pasteStyles: "Coller les styles", stroke: "Trait", background: "Arrière-plan", fill: "Remplissage", strokeWidth: "Largeur du contour", strokeStyle: "Style du trait", strokeStyle_solid: "Continu", strokeStyle_dashed: "Tirets", strokeStyle_dotted: "Pointillés", sloppiness: "Style de tracé", opacity: "Transparence", textAlign: "Alignement du texte", edges: "Angles", sharp: "Pointus", round: "Arrondis", arrowheads: "Extrémités", arrowhead_none: "Sans", arrowhead_arrow: "Flèche", arrowhead_bar: "Barre", arrowhead_circle: "Cercle", arrowhead_circle_outline: "Contour du cercle", arrowhead_triangle: "Triangle", arrowhead_triangle_outline: "Triangle (contour)", arrowhead_diamond: "Losange", arrowhead_diamond_outline: "", fontSize: "Taille de la police", fontFamily: "Police", addWatermark: 'Ajouter "Réalisé avec Excalidraw"', handDrawn: "À main levée", normal: "Normale", code: "Code", small: "Petite", medium: "Moyenne", large: "Grande", veryLarge: "Très grande", solid: "Solide", hachure: "Hachures", zigzag: "Zigzag", crossHatch: "Hachures croisées", thin: "Fine", bold: "Épaisse", left: "À gauche", center: "Au centre", right: "À droite", extraBold: "Très épaisse", architect: "Architecte", artist: "Artiste", cartoonist: "Caricaturiste", fileTitle: "Nom du fichier", colorPicker: "Sélecteur de couleur", canvasColors: "Utilisé sur la zone de dessin", canvasBackground: "Arrière-plan du canevas", drawingCanvas: "Zone de dessin", layers: "Disposition", actions: "Actions", language: "Langue", liveCollaboration: "Collaboration en direct...", duplicateSelection: "Dupliquer", untitled: "Sans-titre", name: "Nom", yourName: "Votre nom", madeWithExcalidraw: "Fait avec Excalidraw", group: "Grouper la sélection", ungroup: "Dégrouper la sélection", collaborators: "Collaborateurs", showGrid: "Afficher la grille", addToLibrary: "Ajouter à la bibliothèque", removeFromLibrary: "Supprimer de la bibliothèque", libraryLoadingMessage: "Chargement de la bibliothèque…", libraries: "Parcourir les bibliothèques", loadingScene: "Chargement de la scène…", align: "Alignement", alignTop: "Aligner en haut", alignBottom: "Aligner en bas", alignLeft: "Aligner à gauche", alignRight: "Aligner à droite", centerVertically: "Centrer verticalement", centerHorizontally: "Centrer horizontalement", distributeHorizontally: "Répartir horizontalement", distributeVertically: "Répartir verticalement", flipHorizontal: "Retourner horizontalement", flipVertical: "Retourner verticalement", viewMode: "Mode présentation", share: "Partager", showStroke: "Afficher le sélecteur de couleur de trait", showBackground: "Afficher le sélecteur de couleur de fond", toggleTheme: "Changer le thème", personalLib: "Bibliothèque personnelle", excalidrawLib: "Bibliothèque Excalidraw", decreaseFontSize: "Diminuer la taille de police", increaseFontSize: "Augmenter la taille de la police", unbindText: "Dissocier le texte", bindText: "Associer le texte au conteneur", createContainerFromText: "Encadrer le texte dans un conteneur", link: { edit: "Modifier le lien", editEmbed: "Éditer le lien & intégrer", create: "Ajouter un lien", createEmbed: "Créer un lien & intégrer", label: "Lien", labelEmbed: "Lier & intégrer", empty: "Aucun lien défini" }, lineEditor: { edit: "Modifier la ligne", exit: "Quitter l'éditeur de ligne" }, elementLock: { lock: "Verrouiller", unlock: "Déverrouiller", lockAll: "Tout verrouiller", unlockAll: "Tout déverrouiller" }, statusPublished: "Publié", sidebarLock: "Maintenir la barre latérale ouverte", selectAllElementsInFrame: "Sélectionner tous les éléments du cadre", removeAllElementsFromFrame: "Supprimer tous les éléments du cadre", eyeDropper: "Choisir la couleur depuis la toile", textToDiagram: "Texte vers Diagramme", prompt: "Consignes" }, r = { noItems: "Aucun élément n'a encore été ajouté ...", hint_emptyLibrary: "Sélectionnez un élément sur le canevas pour l'ajouter ici ou installez une bibliothèque depuis le dépôt public, ci-dessous.", hint_emptyPrivateLibrary: "Sélectionnez un élément sur le canevas pour l'ajouter ici." }, i = { clearReset: "Réinitialiser le canevas", exportJSON: "Exporter comme fichier", exportImage: "Exporter l'image...", export: "Enregistrer sous...", copyToClipboard: "Copier dans le presse-papier", save: "Enregistrer dans le fichier actuel", saveAs: "Enregistrer sous", load: "Ouvrir", getShareableLink: "Obtenir un lien de partage", close: "Fermer", selectLanguage: "Choisir une langue", scrollBackToContent: "Revenir au contenu", zoomIn: "Zoomer", zoomOut: "Dézoomer", resetZoom: "Réinitialiser le zoom", menu: "Menu", done: "Terminé", edit: "Modifier", undo: "Annuler", redo: "Rétablir", resetLibrary: "Réinitialiser la bibliothèque", createNewRoom: "Créer une nouvelle salle", fullScreen: "Plein écran", darkMode: "Mode sombre", lightMode: "Mode clair", zenMode: "Mode zen", objectsSnapMode: "Aimanter aux objets", exitZenMode: "Quitter le mode zen", cancel: "Annuler", clear: "Effacer", remove: "Supprimer", embed: "Activer/Désactiver l'intégration", publishLibrary: "Publier", submit: "Envoyer", confirm: "Confirmer", embeddableInteractionButton: "Cliquez pour interagir" }, o = { clearReset: "L'intégralité du canevas va être effacée. Êtes-vous sûr ?", couldNotCreateShareableLink: "Impossible de créer un lien de partage.", couldNotCreateShareableLinkTooBig: "Impossible de créer un lien de partage : la scène est trop volumineuse", couldNotLoadInvalidFile: "Impossible de charger un fichier invalide", importBackendFailed: "L'importation depuis le serveur a échoué.", cannotExportEmptyCanvas: "Impossible d'exporter un canevas vide.", couldNotCopyToClipboard: "Impossible de copier dans le presse-papiers.", decryptFailed: "Les données n'ont pas pu être déchiffrées.", uploadedSecurly: "Le téléchargement a été sécurisé avec un chiffrement de bout en bout, ce qui signifie que ni Excalidraw ni personne d'autre ne peut en lire le contenu.", loadSceneOverridePrompt: "Le chargement d'un dessin externe remplacera votre contenu actuel. Souhaitez-vous continuer ?", collabStopOverridePrompt: `Arrêter la session écrasera votre précédent dessin stocké localement. Êtes-vous sûr·e ?
|
|
3
3
|
|
|
4
4
|
(Si vous voulez garder votre dessin local, fermez simplement l'onglet du navigateur à la place.)`, errorAddingToLibrary: "Impossible d'ajouter l'élément à la bibliothèque", errorRemovingFromLibrary: "Impossible de retirer l'élément de la bibliothèque", confirmAddLibrary: "Cela va ajouter {{numShapes}} forme(s) à votre bibliothèque. Êtes-vous sûr·e ?", imageDoesNotContainScene: "Cette image ne semble pas contenir de données de scène. Avez-vous activé l'intégration de scène lors de l'exportation ?", cannotRestoreFromImage: "Impossible de restaurer la scène depuis ce fichier image", invalidSceneUrl: "Impossible d'importer la scène depuis l'URL fournie. Elle est soit incorrecte, soit ne contient pas de données JSON Excalidraw valides.", resetLibrary: "Cela va effacer votre bibliothèque. Êtes-vous sûr·e ?", removeItemsFromsLibrary: "Supprimer {{count}} élément(s) de la bibliothèque ?", invalidEncryptionKey: "La clé de chiffrement doit comporter 22 caractères. La collaboration en direct est désactivée.", collabOfflineWarning: `Aucune connexion internet disponible.
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { s as P, d as N, p as W } from "./layers.
|
|
2
|
-
import { g as t, d as H, l as b, e as R, j as T, r as v, u as U } from "./layers.
|
|
1
|
+
import { s as P, d as N, p as W } from "./layers.81eb7U9V.js";
|
|
2
|
+
import { g as t, d as H, l as b, e as R, j as T, r as v, u as U } from "./layers.Cv2e6wbN.js";
|
|
3
3
|
import "lodash-es";
|
|
4
4
|
import { l as C } from "./layers.D4T8fTcj.js";
|
|
5
5
|
import { G as F } from "./layers.BJDrjORS.js";
|
|
6
|
-
import "./layers.
|
|
6
|
+
import "./layers.BXpB8EUK.js";
|
|
7
7
|
import "lodash-es/memoize.js";
|
|
8
8
|
import "lodash-es/merge.js";
|
|
9
9
|
import "lodash-es/isEmpty.js";
|
|
10
|
-
import { l as $ } from "./layers.
|
|
10
|
+
import { l as $ } from "./layers.Dn-qiYzF.js";
|
|
11
11
|
const O = (e) => e.append("circle").attr("class", "start-state").attr("r", t().state.sizeUnit).attr("cx", t().state.padding + t().state.sizeUnit).attr("cy", t().state.padding + t().state.sizeUnit), X = (e) => e.append("line").style("stroke", "grey").style("stroke-dasharray", "3").attr("x1", t().state.textHeight).attr("class", "divider").attr("x2", t().state.textHeight * 2).attr("y1", 0).attr("y2", 0), J = (e, i) => {
|
|
12
12
|
const o = e.append("text").attr("x", 2 * t().state.padding).attr("y", t().state.textHeight + 2 * t().state.padding).attr("font-size", t().state.fontSize).attr("class", "state-title").text(i.id), c = o.node().getBBox();
|
|
13
13
|
return e.insert("rect", ":first-child").attr("x", t().state.padding).attr("y", t().state.padding).attr("width", c.width + 2 * t().state.padding).attr("height", c.height + 2 * t().state.padding).attr("rx", t().state.radius), o;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const v=require("./layers.
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const v=require("./layers.D7WV8-Ds.js"),t=require("./layers.DwB8Gmd_.js"),_=require("./layers.BLd2spTm.js"),N=require("./layers.j7-KL5Ge.js");require("./layers.BH9wLfk4.js");require("lodash-es/memoize.js");require("lodash-es/merge.js");require("lodash-es/isEmpty.js");require("lodash-es");require("./layers.Cyzu9PKQ.js");const k=s=>t.common$1.sanitizeText(s,t.getConfig());let w={dividerMargin:10,padding:5,textHeight:10,curve:void 0};const q=function(s,o,f,i){const e=Object.keys(s);t.log$1.info("keys:",e),t.log$1.info(s),e.forEach(function(r){var l,c;const n=s[r],d={shape:"rect",id:n.id,domId:n.domId,labelText:k(n.id),labelStyle:"",style:"fill: none; stroke: black",padding:((l=t.getConfig().flowchart)==null?void 0:l.padding)??((c=t.getConfig().class)==null?void 0:c.padding)};o.setNode(n.id,d),$(n.classes,o,f,i,n.id),t.log$1.info("setNode",d)})},$=function(s,o,f,i,e){const r=Object.keys(s);t.log$1.info("keys:",r),t.log$1.info(s),r.filter(l=>s[l].parent==e).forEach(function(l){var c,n;const a=s[l],d=a.cssClasses.join(" "),g=t.getStylesFromArray(a.styles),p=a.label??a.id,y=0,u={labelStyle:g.labelStyle,shape:"class_box",labelText:k(p),classData:a,rx:y,ry:y,class:d,style:g.style,id:a.id,domId:a.domId,tooltip:i.db.getTooltip(a.id,e)||"",haveCallback:a.haveCallback,link:a.link,width:a.type==="group"?500:void 0,type:a.type,padding:((c=t.getConfig().flowchart)==null?void 0:c.padding)??((n=t.getConfig().class)==null?void 0:n.padding)};o.setNode(a.id,u),e&&o.setParent(a.id,e),t.log$1.info("setNode",u)})},D=function(s,o,f,i){t.log$1.info(s),s.forEach(function(e,r){var l,c;const n=e,a="",d={labelStyle:"",style:""},g=n.text,p=0,b={labelStyle:d.labelStyle,shape:"note",labelText:k(g),noteData:n,rx:p,ry:p,class:a,style:d.style,id:n.id,domId:n.id,tooltip:"",type:"note",padding:((l=t.getConfig().flowchart)==null?void 0:l.padding)??((c=t.getConfig().class)==null?void 0:c.padding)};if(o.setNode(n.id,b),t.log$1.info("setNode",b),!n.class||!(n.class in i))return;const u=f+r,x={id:`edgeNote${u}`,classes:"relation",pattern:"dotted",arrowhead:"none",startLabelRight:"",endLabelLeft:"",arrowTypeStart:"none",arrowTypeEnd:"none",style:"fill:none",labelStyle:"",curve:t.interpolateToCurve(w.curve,t.curveLinear)};o.setEdge(n.id,n.class,x,u)})},E=function(s,o){const f=t.getConfig().flowchart;let i=0;s.forEach(function(e){var r;i++;const l={classes:"relation",pattern:e.relation.lineType==1?"dashed":"solid",id:`id_${e.id1}_${e.id2}_${i}`,arrowhead:e.type==="arrow_open"?"none":"normal",startLabelRight:e.relationTitle1==="none"?"":e.relationTitle1,endLabelLeft:e.relationTitle2==="none"?"":e.relationTitle2,arrowTypeStart:C(e.relation.type1),arrowTypeEnd:C(e.relation.type2),style:"fill:none",labelStyle:"",curve:t.interpolateToCurve(f==null?void 0:f.curve,t.curveLinear)};if(t.log$1.info(l,e),e.style!==void 0){const c=t.getStylesFromArray(e.style);l.style=c.style,l.labelStyle=c.labelStyle}e.text=e.title,e.text===void 0?e.style!==void 0&&(l.arrowheadStyle="fill: #333"):(l.arrowheadStyle="fill: #333",l.labelpos="c",((r=t.getConfig().flowchart)==null?void 0:r.htmlLabels)??t.getConfig().htmlLabels?(l.labelType="html",l.label='<span class="edgeLabel">'+e.text+"</span>"):(l.labelType="text",l.label=e.text.replace(t.common$1.lineBreakRegex,`
|
|
2
2
|
`),e.style===void 0&&(l.style=l.style||"stroke: #333; stroke-width: 1.5px;fill:none"),l.labelStyle=l.labelStyle.replace("color:","fill:"))),o.setEdge(e.id1,e.id2,l,i)})},A=function(s){w={...w,...s}},M=async function(s,o,f,i){t.log$1.info("Drawing class - ",o);const e=t.getConfig().flowchart??t.getConfig().class,r=t.getConfig().securityLevel;t.log$1.info("config:",e);const l=(e==null?void 0:e.nodeSpacing)??50,c=(e==null?void 0:e.rankSpacing)??50,n=new _.Graph({multigraph:!0,compound:!0}).setGraph({rankdir:i.db.getDirection(),nodesep:l,ranksep:c,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),a=i.db.getNamespaces(),d=i.db.getClasses(),g=i.db.getRelations(),p=i.db.getNotes();t.log$1.info(g),q(a,n,o,i),$(d,n,o,i),E(g,n),D(p,n,g.length+1,d);let y;r==="sandbox"&&(y=t.select("#i"+o));const b=r==="sandbox"?t.select(y.nodes()[0].contentDocument.body):t.select("body"),u=b.select(`[id="${o}"]`),x=b.select("#"+o+" g");if(await N.render(x,n,["aggregation","extension","composition","dependency","lollipop"],"classDiagram",o),t.utils.insertTitle(u,"classTitleText",(e==null?void 0:e.titleTopMargin)??5,i.db.getDiagramTitle()),t.setupGraphViewbox$1(n,u,e==null?void 0:e.diagramPadding,e==null?void 0:e.useMaxWidth),!(e!=null&&e.htmlLabels)){const S=r==="sandbox"?y.nodes()[0].contentDocument:document,L=S.querySelectorAll('[id="'+o+'"] .edgeLabel .label');for(const m of L){const T=m.getBBox(),h=S.createElementNS("http://www.w3.org/2000/svg","rect");h.setAttribute("rx",0),h.setAttribute("ry",0),h.setAttribute("width",T.width),h.setAttribute("height",T.height),m.insertBefore(h,m.firstChild)}}};function C(s){let o;switch(s){case 0:o="aggregation";break;case 1:o="extension";break;case 2:o="composition";break;case 3:o="dependency";break;case 4:o="lollipop";break;default:o="none"}return o}const I={setConf:A,draw:M},B={parser:v.parser$1,db:v.db,renderer:I,styles:v.styles,init:s=>{s.class||(s.class={}),s.class.arrowMarkerAbsolute=s.arrowMarkerAbsolute,v.db.clear()}};exports.diagram=B;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const P=require("lodash-es"),J=require("./layers.Cyzu9PKQ.js"),k=require("./layers.BLd2spTm.js"),u=require("./layers.DpvmCmKj.js"),i=require("./layers.ylvIcl1z.js"),j=require("./layers.C8ZWzhQl.js");function G(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const m=G(P);function x(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:M(e),edges:F(e)};return m.isUndefined(e.graph())||(t.value=m.clone(e.graph())),t}function M(e){return m.map(e.nodes(),function(t){var n=e.node(t),r=e.parent(t),s={v:t};return m.isUndefined(n)||(s.value=n),m.isUndefined(r)||(s.parent=r),s})}function F(e){return m.map(e.edges(),function(t){var n=e.edge(t),r={v:t.v,w:t.w};return m.isUndefined(t.name)||(r.name=t.name),m.isUndefined(n)||(r.value=n),r})}let a={},w={},p={};const q=()=>{w={},p={},a={}},X=(e,t)=>(i.log$1.trace("In isDescendant",t," ",e," = ",w[t].includes(e)),!!w[t].includes(e)),_=(e,t)=>(i.log$1.info("Descendants of ",t," is ",w[t]),i.log$1.info("Edge is ",e),e.v===t||e.w===t?!1:w[t]?w[t].includes(e.v)||X(e.v,t)||X(e.w,t)||w[t].includes(e.w):(i.log$1.debug("Tilt, ",t,",not in descendants"),!1)),B=(e,t,n,r)=>{i.log$1.warn("Copying children of ",e,"root",r,"data",t.node(e),r);const s=t.children(e)||[];e!==r&&s.push(e),i.log$1.warn("Copying (nodes) clusterId",e,"nodes",s),s.forEach(o=>{if(t.children(o).length>0)B(o,t,n,r);else{const f=t.node(o);i.log$1.info("cp ",o," to ",r," with parent ",e),n.setNode(o,f),r!==t.parent(o)&&(i.log$1.warn("Setting parent",o,t.parent(o)),n.setParent(o,t.parent(o))),e!==r&&o!==e?(i.log$1.debug("Setting parent",o,e),n.setParent(o,e)):(i.log$1.info("In copy ",e,"root",r,"data",t.node(e),r),i.log$1.debug("Not Setting parent for node=",o,"cluster!==rootId",e!==r,"node!==clusterId",o!==e));const g=t.edges(o);i.log$1.debug("Copying Edges",g),g.forEach(d=>{i.log$1.info("Edge",d);const h=t.edge(d.v,d.w,d.name);i.log$1.info("Edge data",h,r);try{_(d,r)?(i.log$1.info("Copying as ",d.v,d.w,h,d.name),n.setEdge(d.v,d.w,h,d.name),i.log$1.info("newGraph edges ",n.edges(),n.edge(n.edges()[0]))):i.log$1.info("Skipping copy of edge ",d.v,"-->",d.w," rootId: ",r," clusterId:",e)}catch($){i.log$1.error($)}})}i.log$1.debug("Removing node",o),t.removeNode(o)})},D=(e,t)=>{const n=t.children(e);let r=[...n];for(const s of n)p[s]=e,r=[...r,...D(s,t)];return r},C=(e,t)=>{i.log$1.trace("Searching",e);const n=t.children(e);if(i.log$1.trace("Searching children of id ",e,n),n.length<1)return i.log$1.trace("This is a valid node",e),e;for(const r of n){const s=C(r,t);if(s)return i.log$1.trace("Found replacement for",e," => ",s),s}},S=e=>!a[e]||!a[e].externalConnections?e:a[e]?a[e].id:e,U=(e,t)=>{if(!e||t>10){i.log$1.debug("Opting out, no graph ");return}else i.log$1.debug("Opting in, graph ");e.nodes().forEach(function(n){e.children(n).length>0&&(i.log$1.warn("Cluster identified",n," Replacement id in edges: ",C(n,e)),w[n]=D(n,e),a[n]={id:C(n,e),clusterData:e.node(n)})}),e.nodes().forEach(function(n){const r=e.children(n),s=e.edges();r.length>0?(i.log$1.debug("Cluster identified",n,w),s.forEach(o=>{if(o.v!==n&&o.w!==n){const f=X(o.v,n),g=X(o.w,n);f^g&&(i.log$1.warn("Edge: ",o," leaves cluster ",n),i.log$1.warn("Descendants of XXX ",n,": ",w[n]),a[n].externalConnections=!0)}})):i.log$1.debug("Not a cluster ",n,w)});for(let n of Object.keys(a)){const r=a[n].id,s=e.parent(r);s!==n&&a[s]&&!a[s].externalConnections&&(a[n].id=s)}e.edges().forEach(function(n){const r=e.edge(n);i.log$1.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(n)),i.log$1.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(e.edge(n)));let s=n.v,o=n.w;if(i.log$1.warn("Fix XXX",a,"ids:",n.v,n.w,"Translating: ",a[n.v]," --- ",a[n.w]),a[n.v]&&a[n.w]&&a[n.v]===a[n.w]){i.log$1.warn("Fixing and trixing link to self - removing XXX",n.v,n.w,n.name),i.log$1.warn("Fixing and trixing - removing XXX",n.v,n.w,n.name),s=S(n.v),o=S(n.w),e.removeEdge(n.v,n.w,n.name);const f=n.w+"---"+n.v;e.setNode(f,{domId:f,id:f,labelStyle:"",labelText:r.label,padding:0,shape:"labelRect",style:""});const g=structuredClone(r),d=structuredClone(r);g.label="",g.arrowTypeEnd="none",d.label="",g.fromCluster=n.v,d.toCluster=n.v,e.setEdge(s,f,g,n.name+"-cyclic-special"),e.setEdge(f,o,d,n.name+"-cyclic-special")}else if(a[n.v]||a[n.w]){if(i.log$1.warn("Fixing and trixing - removing XXX",n.v,n.w,n.name),s=S(n.v),o=S(n.w),e.removeEdge(n.v,n.w,n.name),s!==n.v){const f=e.parent(s);a[f].externalConnections=!0,r.fromCluster=n.v}if(o!==n.w){const f=e.parent(o);a[f].externalConnections=!0,r.toCluster=n.w}i.log$1.warn("Fix Replacing with XXX",s,o,n.name),e.setEdge(s,o,r,n.name)}}),i.log$1.warn("Adjusted Graph",x(e)),T(e,0),i.log$1.trace(a)},T=(e,t)=>{if(i.log$1.warn("extractor - ",t,x(e),e.children("D")),t>10){i.log$1.error("Bailing out");return}let n=e.nodes(),r=!1;for(const s of n){const o=e.children(s);r=r||o.length>0}if(!r){i.log$1.debug("Done, no node has children",e.nodes());return}i.log$1.debug("Nodes = ",n,t);for(const s of n)if(i.log$1.debug("Extracting node",s,a,a[s]&&!a[s].externalConnections,!e.parent(s),e.node(s),e.children("D")," Depth ",t),!a[s])i.log$1.debug("Not a cluster",s,t);else if(!a[s].externalConnections&&e.children(s)&&e.children(s).length>0){i.log$1.warn("Cluster without external connections, without a parent and with children",s,t);let f=e.graph().rankdir==="TB"?"LR":"TB";a[s]&&a[s].clusterData&&a[s].clusterData.dir&&(f=a[s].clusterData.dir,i.log$1.warn("Fixing dir",a[s].clusterData.dir,f));const g=new k.Graph({multigraph:!0,compound:!0}).setGraph({rankdir:f,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});i.log$1.warn("Old graph before copy",x(e)),B(s,e,g,s),e.setNode(s,{clusterNode:!0,id:s,clusterData:a[s].clusterData,labelText:a[s].labelText,graph:g}),i.log$1.warn("New graph after copy node: (",s,")",x(g)),i.log$1.debug("Old graph after copy",x(e))}else i.log$1.warn("Cluster ** ",s," **not meeting the criteria !externalConnections:",!a[s].externalConnections," no parent: ",!e.parent(s)," children ",e.children(s)&&e.children(s).length>0,e.children("D"),t),i.log$1.debug(a);n=e.nodes(),i.log$1.warn("New list of nodes",n);for(const s of n){const o=e.node(s);i.log$1.warn(" Now next level",s,o),o.clusterNode&&T(o.graph,t+1)}},O=(e,t)=>{if(t.length===0)return[];let n=Object.assign(t);return t.forEach(r=>{const s=e.children(r),o=O(e,s);n=[...n,...o]}),n},A=e=>O(e,e.children()),H=(e,t)=>{i.log$1.info("Creating subgraph rect for ",t.id,t);const n=i.getConfig(),r=e.insert("g").attr("class","cluster"+(t.class?" "+t.class:"")).attr("id",t.id),s=r.insert("rect",":first-child"),o=i.evaluate(n.flowchart.htmlLabels),f=r.insert("g").attr("class","cluster-label"),g=t.labelType==="markdown"?j.createText(f,t.labelText,{style:t.labelStyle,useHtmlLabels:o}):f.node().appendChild(u.createLabel$1(t.labelText,t.labelStyle,void 0,!0));let d=g.getBBox();if(i.evaluate(n.flowchart.htmlLabels)){const l=g.children[0],c=i.select(g);d=l.getBoundingClientRect(),c.attr("width",d.width),c.attr("height",d.height)}const h=0*t.padding,$=h/2,y=t.width<=d.width+h?d.width+h:t.width;t.width<=d.width+h?t.diff=(d.width-t.width)/2-t.padding/2:t.diff=-t.padding/2,i.log$1.trace("Data ",t,JSON.stringify(t)),s.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-y/2).attr("y",t.y-t.height/2-$).attr("width",y).attr("height",t.height+h);const{subGraphTitleTopMargin:N}=u.getSubGraphTitleMargins(n);o?f.attr("transform",`translate(${t.x-d.width/2}, ${t.y-t.height/2+N})`):f.attr("transform",`translate(${t.x}, ${t.y-t.height/2+N})`);const b=s.node().getBBox();return t.width=b.width,t.height=b.height,t.intersect=function(l){return u.intersectRect$1(t,l)},r},V=(e,t)=>{const n=e.insert("g").attr("class","note-cluster").attr("id",t.id),r=n.insert("rect",":first-child"),s=0*t.padding,o=s/2;r.attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-t.width/2-o).attr("y",t.y-t.height/2-o).attr("width",t.width+s).attr("height",t.height+s).attr("fill","none");const f=r.node().getBBox();return t.width=f.width,t.height=f.height,t.intersect=function(g){return u.intersectRect$1(t,g)},n},z=(e,t)=>{const n=i.getConfig(),r=e.insert("g").attr("class",t.classes).attr("id",t.id),s=r.insert("rect",":first-child"),o=r.insert("g").attr("class","cluster-label"),f=r.append("rect"),g=o.node().appendChild(u.createLabel$1(t.labelText,t.labelStyle,void 0,!0));let d=g.getBBox();if(i.evaluate(n.flowchart.htmlLabels)){const l=g.children[0],c=i.select(g);d=l.getBoundingClientRect(),c.attr("width",d.width),c.attr("height",d.height)}d=g.getBBox();const h=0*t.padding,$=h/2,y=t.width<=d.width+t.padding?d.width+t.padding:t.width;t.width<=d.width+t.padding?t.diff=(d.width+t.padding*0-t.width)/2:t.diff=-t.padding/2,s.attr("class","outer").attr("x",t.x-y/2-$).attr("y",t.y-t.height/2-$).attr("width",y+h).attr("height",t.height+h),f.attr("class","inner").attr("x",t.x-y/2-$).attr("y",t.y-t.height/2-$+d.height-1).attr("width",y+h).attr("height",t.height+h-d.height-3);const{subGraphTitleTopMargin:N}=u.getSubGraphTitleMargins(n);o.attr("transform",`translate(${t.x-d.width/2}, ${t.y-t.height/2-t.padding/3+(i.evaluate(n.flowchart.htmlLabels)?5:3)+N})`);const b=s.node().getBBox();return t.height=b.height,t.intersect=function(l){return u.intersectRect$1(t,l)},r},W=(e,t)=>{const n=e.insert("g").attr("class",t.classes).attr("id",t.id),r=n.insert("rect",":first-child"),s=0*t.padding,o=s/2;r.attr("class","divider").attr("x",t.x-t.width/2-o).attr("y",t.y-t.height/2).attr("width",t.width+s).attr("height",t.height+s);const f=r.node().getBBox();return t.width=f.width,t.height=f.height,t.diff=-t.padding/2,t.intersect=function(g){return u.intersectRect$1(t,g)},n},K={rect:H,roundedWithTitle:z,noteGroup:V,divider:W};let R={};const Q=(e,t)=>{i.log$1.trace("Inserting cluster");const n=t.shape||"rect";R[t.id]=K[n](e,t)},Y=()=>{R={}},L=async(e,t,n,r,s,o)=>{i.log$1.info("Graph in recursive render: XXX",x(t),s);const f=t.graph().rankdir;i.log$1.trace("Dir in recursive render - dir:",f);const g=e.insert("g").attr("class","root");t.nodes()?i.log$1.info("Recursive render XXX",t.nodes()):i.log$1.info("No nodes found for",t),t.edges().length>0&&i.log$1.trace("Recursive edges",t.edge(t.edges()[0]));const d=g.insert("g").attr("class","clusters"),h=g.insert("g").attr("class","edgePaths"),$=g.insert("g").attr("class","edgeLabels"),y=g.insert("g").attr("class","nodes");await Promise.all(t.nodes().map(async function(l){const c=t.node(l);if(s!==void 0){const v=JSON.parse(JSON.stringify(s.clusterData));i.log$1.info("Setting data for cluster XXX (",l,") ",v,s),t.setNode(s.id,v),t.parent(l)||(i.log$1.trace("Setting parent",l,s.id),t.setParent(l,s.id,v))}if(i.log$1.info("(Insert) Node XXX"+l+": "+JSON.stringify(t.node(l))),c&&c.clusterNode){i.log$1.info("Cluster identified",l,c.width,t.node(l));const v=await L(y,c.graph,n,r,t.node(l),o),E=v.elem;u.updateNodeBounds(c,E),c.diff=v.diff||0,i.log$1.info("Node bounds (abc123)",l,c,c.width,c.x,c.y),u.setNodeElem(E,c),i.log$1.warn("Recursive render complete ",E,c)}else t.children(l).length>0?(i.log$1.info("Cluster - the non recursive path XXX",l,c.id,c,t),i.log$1.info(C(c.id,t)),a[c.id]={id:C(c.id,t),node:c}):(i.log$1.info("Node - the non recursive path",l,c.id,c),await u.insertNode(y,t.node(l),f))})),t.edges().forEach(function(l){const c=t.edge(l.v,l.w,l.name);i.log$1.info("Edge "+l.v+" -> "+l.w+": "+JSON.stringify(l)),i.log$1.info("Edge "+l.v+" -> "+l.w+": ",l," ",JSON.stringify(t.edge(l))),i.log$1.info("Fix",a,"ids:",l.v,l.w,"Translating: ",a[l.v],a[l.w]),u.insertEdgeLabel($,c)}),t.edges().forEach(function(l){i.log$1.info("Edge "+l.v+" -> "+l.w+": "+JSON.stringify(l))}),i.log$1.info("#############################################"),i.log$1.info("### Layout ###"),i.log$1.info("#############################################"),i.log$1.info(t),J.layout(t),i.log$1.info("Graph after layout:",x(t));let N=0;const{subGraphTitleTotalMargin:b}=u.getSubGraphTitleMargins(o);return A(t).forEach(function(l){const c=t.node(l);i.log$1.info("Position "+l+": "+JSON.stringify(t.node(l))),i.log$1.info("Position "+l+": ("+c.x,","+c.y,") width: ",c.width," height: ",c.height),c&&c.clusterNode?(c.y+=b,u.positionNode(c)):t.children(l).length>0?(c.height+=b,Q(d,c),a[c.id].node=c):(c.y+=b/2,u.positionNode(c))}),t.edges().forEach(function(l){const c=t.edge(l);i.log$1.info("Edge "+l.v+" -> "+l.w+": "+JSON.stringify(c),c),c.points.forEach(E=>E.y+=b/2);const v=u.insertEdge(h,l,c,a,n,t,r);u.positionEdgeLabel(c,v)}),t.nodes().forEach(function(l){const c=t.node(l);i.log$1.info(l,c.type,c.diff),c.type==="group"&&(N=c.diff)}),{elem:g,diff:N}},Z=async(e,t,n,r,s)=>{u.insertMarkers$1(e,n,r,s),u.clear$1(),u.clear(),Y(),q(),i.log$1.warn("Graph at first:",JSON.stringify(x(t))),U(t),i.log$1.warn("Graph after:",JSON.stringify(x(t)));const o=i.getConfig();await L(e,t,r,s,void 0,o)};exports.render=Z;
|
|
1
|
+
"use strict";const P=require("lodash-es"),J=require("./layers.Cyzu9PKQ.js"),k=require("./layers.BLd2spTm.js"),u=require("./layers.6jtKBint.js"),i=require("./layers.DwB8Gmd_.js"),j=require("./layers.Chx7G3qU.js");function G(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const m=G(P);function x(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:M(e),edges:F(e)};return m.isUndefined(e.graph())||(t.value=m.clone(e.graph())),t}function M(e){return m.map(e.nodes(),function(t){var n=e.node(t),r=e.parent(t),s={v:t};return m.isUndefined(n)||(s.value=n),m.isUndefined(r)||(s.parent=r),s})}function F(e){return m.map(e.edges(),function(t){var n=e.edge(t),r={v:t.v,w:t.w};return m.isUndefined(t.name)||(r.name=t.name),m.isUndefined(n)||(r.value=n),r})}let a={},w={},p={};const q=()=>{w={},p={},a={}},X=(e,t)=>(i.log$1.trace("In isDescendant",t," ",e," = ",w[t].includes(e)),!!w[t].includes(e)),_=(e,t)=>(i.log$1.info("Descendants of ",t," is ",w[t]),i.log$1.info("Edge is ",e),e.v===t||e.w===t?!1:w[t]?w[t].includes(e.v)||X(e.v,t)||X(e.w,t)||w[t].includes(e.w):(i.log$1.debug("Tilt, ",t,",not in descendants"),!1)),B=(e,t,n,r)=>{i.log$1.warn("Copying children of ",e,"root",r,"data",t.node(e),r);const s=t.children(e)||[];e!==r&&s.push(e),i.log$1.warn("Copying (nodes) clusterId",e,"nodes",s),s.forEach(o=>{if(t.children(o).length>0)B(o,t,n,r);else{const f=t.node(o);i.log$1.info("cp ",o," to ",r," with parent ",e),n.setNode(o,f),r!==t.parent(o)&&(i.log$1.warn("Setting parent",o,t.parent(o)),n.setParent(o,t.parent(o))),e!==r&&o!==e?(i.log$1.debug("Setting parent",o,e),n.setParent(o,e)):(i.log$1.info("In copy ",e,"root",r,"data",t.node(e),r),i.log$1.debug("Not Setting parent for node=",o,"cluster!==rootId",e!==r,"node!==clusterId",o!==e));const g=t.edges(o);i.log$1.debug("Copying Edges",g),g.forEach(d=>{i.log$1.info("Edge",d);const h=t.edge(d.v,d.w,d.name);i.log$1.info("Edge data",h,r);try{_(d,r)?(i.log$1.info("Copying as ",d.v,d.w,h,d.name),n.setEdge(d.v,d.w,h,d.name),i.log$1.info("newGraph edges ",n.edges(),n.edge(n.edges()[0]))):i.log$1.info("Skipping copy of edge ",d.v,"-->",d.w," rootId: ",r," clusterId:",e)}catch($){i.log$1.error($)}})}i.log$1.debug("Removing node",o),t.removeNode(o)})},D=(e,t)=>{const n=t.children(e);let r=[...n];for(const s of n)p[s]=e,r=[...r,...D(s,t)];return r},C=(e,t)=>{i.log$1.trace("Searching",e);const n=t.children(e);if(i.log$1.trace("Searching children of id ",e,n),n.length<1)return i.log$1.trace("This is a valid node",e),e;for(const r of n){const s=C(r,t);if(s)return i.log$1.trace("Found replacement for",e," => ",s),s}},S=e=>!a[e]||!a[e].externalConnections?e:a[e]?a[e].id:e,U=(e,t)=>{if(!e||t>10){i.log$1.debug("Opting out, no graph ");return}else i.log$1.debug("Opting in, graph ");e.nodes().forEach(function(n){e.children(n).length>0&&(i.log$1.warn("Cluster identified",n," Replacement id in edges: ",C(n,e)),w[n]=D(n,e),a[n]={id:C(n,e),clusterData:e.node(n)})}),e.nodes().forEach(function(n){const r=e.children(n),s=e.edges();r.length>0?(i.log$1.debug("Cluster identified",n,w),s.forEach(o=>{if(o.v!==n&&o.w!==n){const f=X(o.v,n),g=X(o.w,n);f^g&&(i.log$1.warn("Edge: ",o," leaves cluster ",n),i.log$1.warn("Descendants of XXX ",n,": ",w[n]),a[n].externalConnections=!0)}})):i.log$1.debug("Not a cluster ",n,w)});for(let n of Object.keys(a)){const r=a[n].id,s=e.parent(r);s!==n&&a[s]&&!a[s].externalConnections&&(a[n].id=s)}e.edges().forEach(function(n){const r=e.edge(n);i.log$1.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(n)),i.log$1.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(e.edge(n)));let s=n.v,o=n.w;if(i.log$1.warn("Fix XXX",a,"ids:",n.v,n.w,"Translating: ",a[n.v]," --- ",a[n.w]),a[n.v]&&a[n.w]&&a[n.v]===a[n.w]){i.log$1.warn("Fixing and trixing link to self - removing XXX",n.v,n.w,n.name),i.log$1.warn("Fixing and trixing - removing XXX",n.v,n.w,n.name),s=S(n.v),o=S(n.w),e.removeEdge(n.v,n.w,n.name);const f=n.w+"---"+n.v;e.setNode(f,{domId:f,id:f,labelStyle:"",labelText:r.label,padding:0,shape:"labelRect",style:""});const g=structuredClone(r),d=structuredClone(r);g.label="",g.arrowTypeEnd="none",d.label="",g.fromCluster=n.v,d.toCluster=n.v,e.setEdge(s,f,g,n.name+"-cyclic-special"),e.setEdge(f,o,d,n.name+"-cyclic-special")}else if(a[n.v]||a[n.w]){if(i.log$1.warn("Fixing and trixing - removing XXX",n.v,n.w,n.name),s=S(n.v),o=S(n.w),e.removeEdge(n.v,n.w,n.name),s!==n.v){const f=e.parent(s);a[f].externalConnections=!0,r.fromCluster=n.v}if(o!==n.w){const f=e.parent(o);a[f].externalConnections=!0,r.toCluster=n.w}i.log$1.warn("Fix Replacing with XXX",s,o,n.name),e.setEdge(s,o,r,n.name)}}),i.log$1.warn("Adjusted Graph",x(e)),T(e,0),i.log$1.trace(a)},T=(e,t)=>{if(i.log$1.warn("extractor - ",t,x(e),e.children("D")),t>10){i.log$1.error("Bailing out");return}let n=e.nodes(),r=!1;for(const s of n){const o=e.children(s);r=r||o.length>0}if(!r){i.log$1.debug("Done, no node has children",e.nodes());return}i.log$1.debug("Nodes = ",n,t);for(const s of n)if(i.log$1.debug("Extracting node",s,a,a[s]&&!a[s].externalConnections,!e.parent(s),e.node(s),e.children("D")," Depth ",t),!a[s])i.log$1.debug("Not a cluster",s,t);else if(!a[s].externalConnections&&e.children(s)&&e.children(s).length>0){i.log$1.warn("Cluster without external connections, without a parent and with children",s,t);let f=e.graph().rankdir==="TB"?"LR":"TB";a[s]&&a[s].clusterData&&a[s].clusterData.dir&&(f=a[s].clusterData.dir,i.log$1.warn("Fixing dir",a[s].clusterData.dir,f));const g=new k.Graph({multigraph:!0,compound:!0}).setGraph({rankdir:f,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});i.log$1.warn("Old graph before copy",x(e)),B(s,e,g,s),e.setNode(s,{clusterNode:!0,id:s,clusterData:a[s].clusterData,labelText:a[s].labelText,graph:g}),i.log$1.warn("New graph after copy node: (",s,")",x(g)),i.log$1.debug("Old graph after copy",x(e))}else i.log$1.warn("Cluster ** ",s," **not meeting the criteria !externalConnections:",!a[s].externalConnections," no parent: ",!e.parent(s)," children ",e.children(s)&&e.children(s).length>0,e.children("D"),t),i.log$1.debug(a);n=e.nodes(),i.log$1.warn("New list of nodes",n);for(const s of n){const o=e.node(s);i.log$1.warn(" Now next level",s,o),o.clusterNode&&T(o.graph,t+1)}},O=(e,t)=>{if(t.length===0)return[];let n=Object.assign(t);return t.forEach(r=>{const s=e.children(r),o=O(e,s);n=[...n,...o]}),n},A=e=>O(e,e.children()),H=(e,t)=>{i.log$1.info("Creating subgraph rect for ",t.id,t);const n=i.getConfig(),r=e.insert("g").attr("class","cluster"+(t.class?" "+t.class:"")).attr("id",t.id),s=r.insert("rect",":first-child"),o=i.evaluate(n.flowchart.htmlLabels),f=r.insert("g").attr("class","cluster-label"),g=t.labelType==="markdown"?j.createText(f,t.labelText,{style:t.labelStyle,useHtmlLabels:o}):f.node().appendChild(u.createLabel$1(t.labelText,t.labelStyle,void 0,!0));let d=g.getBBox();if(i.evaluate(n.flowchart.htmlLabels)){const l=g.children[0],c=i.select(g);d=l.getBoundingClientRect(),c.attr("width",d.width),c.attr("height",d.height)}const h=0*t.padding,$=h/2,y=t.width<=d.width+h?d.width+h:t.width;t.width<=d.width+h?t.diff=(d.width-t.width)/2-t.padding/2:t.diff=-t.padding/2,i.log$1.trace("Data ",t,JSON.stringify(t)),s.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-y/2).attr("y",t.y-t.height/2-$).attr("width",y).attr("height",t.height+h);const{subGraphTitleTopMargin:N}=u.getSubGraphTitleMargins(n);o?f.attr("transform",`translate(${t.x-d.width/2}, ${t.y-t.height/2+N})`):f.attr("transform",`translate(${t.x}, ${t.y-t.height/2+N})`);const b=s.node().getBBox();return t.width=b.width,t.height=b.height,t.intersect=function(l){return u.intersectRect$1(t,l)},r},V=(e,t)=>{const n=e.insert("g").attr("class","note-cluster").attr("id",t.id),r=n.insert("rect",":first-child"),s=0*t.padding,o=s/2;r.attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-t.width/2-o).attr("y",t.y-t.height/2-o).attr("width",t.width+s).attr("height",t.height+s).attr("fill","none");const f=r.node().getBBox();return t.width=f.width,t.height=f.height,t.intersect=function(g){return u.intersectRect$1(t,g)},n},z=(e,t)=>{const n=i.getConfig(),r=e.insert("g").attr("class",t.classes).attr("id",t.id),s=r.insert("rect",":first-child"),o=r.insert("g").attr("class","cluster-label"),f=r.append("rect"),g=o.node().appendChild(u.createLabel$1(t.labelText,t.labelStyle,void 0,!0));let d=g.getBBox();if(i.evaluate(n.flowchart.htmlLabels)){const l=g.children[0],c=i.select(g);d=l.getBoundingClientRect(),c.attr("width",d.width),c.attr("height",d.height)}d=g.getBBox();const h=0*t.padding,$=h/2,y=t.width<=d.width+t.padding?d.width+t.padding:t.width;t.width<=d.width+t.padding?t.diff=(d.width+t.padding*0-t.width)/2:t.diff=-t.padding/2,s.attr("class","outer").attr("x",t.x-y/2-$).attr("y",t.y-t.height/2-$).attr("width",y+h).attr("height",t.height+h),f.attr("class","inner").attr("x",t.x-y/2-$).attr("y",t.y-t.height/2-$+d.height-1).attr("width",y+h).attr("height",t.height+h-d.height-3);const{subGraphTitleTopMargin:N}=u.getSubGraphTitleMargins(n);o.attr("transform",`translate(${t.x-d.width/2}, ${t.y-t.height/2-t.padding/3+(i.evaluate(n.flowchart.htmlLabels)?5:3)+N})`);const b=s.node().getBBox();return t.height=b.height,t.intersect=function(l){return u.intersectRect$1(t,l)},r},W=(e,t)=>{const n=e.insert("g").attr("class",t.classes).attr("id",t.id),r=n.insert("rect",":first-child"),s=0*t.padding,o=s/2;r.attr("class","divider").attr("x",t.x-t.width/2-o).attr("y",t.y-t.height/2).attr("width",t.width+s).attr("height",t.height+s);const f=r.node().getBBox();return t.width=f.width,t.height=f.height,t.diff=-t.padding/2,t.intersect=function(g){return u.intersectRect$1(t,g)},n},K={rect:H,roundedWithTitle:z,noteGroup:V,divider:W};let R={};const Q=(e,t)=>{i.log$1.trace("Inserting cluster");const n=t.shape||"rect";R[t.id]=K[n](e,t)},Y=()=>{R={}},L=async(e,t,n,r,s,o)=>{i.log$1.info("Graph in recursive render: XXX",x(t),s);const f=t.graph().rankdir;i.log$1.trace("Dir in recursive render - dir:",f);const g=e.insert("g").attr("class","root");t.nodes()?i.log$1.info("Recursive render XXX",t.nodes()):i.log$1.info("No nodes found for",t),t.edges().length>0&&i.log$1.trace("Recursive edges",t.edge(t.edges()[0]));const d=g.insert("g").attr("class","clusters"),h=g.insert("g").attr("class","edgePaths"),$=g.insert("g").attr("class","edgeLabels"),y=g.insert("g").attr("class","nodes");await Promise.all(t.nodes().map(async function(l){const c=t.node(l);if(s!==void 0){const v=JSON.parse(JSON.stringify(s.clusterData));i.log$1.info("Setting data for cluster XXX (",l,") ",v,s),t.setNode(s.id,v),t.parent(l)||(i.log$1.trace("Setting parent",l,s.id),t.setParent(l,s.id,v))}if(i.log$1.info("(Insert) Node XXX"+l+": "+JSON.stringify(t.node(l))),c&&c.clusterNode){i.log$1.info("Cluster identified",l,c.width,t.node(l));const v=await L(y,c.graph,n,r,t.node(l),o),E=v.elem;u.updateNodeBounds(c,E),c.diff=v.diff||0,i.log$1.info("Node bounds (abc123)",l,c,c.width,c.x,c.y),u.setNodeElem(E,c),i.log$1.warn("Recursive render complete ",E,c)}else t.children(l).length>0?(i.log$1.info("Cluster - the non recursive path XXX",l,c.id,c,t),i.log$1.info(C(c.id,t)),a[c.id]={id:C(c.id,t),node:c}):(i.log$1.info("Node - the non recursive path",l,c.id,c),await u.insertNode(y,t.node(l),f))})),t.edges().forEach(function(l){const c=t.edge(l.v,l.w,l.name);i.log$1.info("Edge "+l.v+" -> "+l.w+": "+JSON.stringify(l)),i.log$1.info("Edge "+l.v+" -> "+l.w+": ",l," ",JSON.stringify(t.edge(l))),i.log$1.info("Fix",a,"ids:",l.v,l.w,"Translating: ",a[l.v],a[l.w]),u.insertEdgeLabel($,c)}),t.edges().forEach(function(l){i.log$1.info("Edge "+l.v+" -> "+l.w+": "+JSON.stringify(l))}),i.log$1.info("#############################################"),i.log$1.info("### Layout ###"),i.log$1.info("#############################################"),i.log$1.info(t),J.layout(t),i.log$1.info("Graph after layout:",x(t));let N=0;const{subGraphTitleTotalMargin:b}=u.getSubGraphTitleMargins(o);return A(t).forEach(function(l){const c=t.node(l);i.log$1.info("Position "+l+": "+JSON.stringify(t.node(l))),i.log$1.info("Position "+l+": ("+c.x,","+c.y,") width: ",c.width," height: ",c.height),c&&c.clusterNode?(c.y+=b,u.positionNode(c)):t.children(l).length>0?(c.height+=b,Q(d,c),a[c.id].node=c):(c.y+=b/2,u.positionNode(c))}),t.edges().forEach(function(l){const c=t.edge(l);i.log$1.info("Edge "+l.v+" -> "+l.w+": "+JSON.stringify(c),c),c.points.forEach(E=>E.y+=b/2);const v=u.insertEdge(h,l,c,a,n,t,r);u.positionEdgeLabel(c,v)}),t.nodes().forEach(function(l){const c=t.node(l);i.log$1.info(l,c.type,c.diff),c.type==="group"&&(N=c.diff)}),{elem:g,diff:N}},Z=async(e,t,n,r,s)=>{u.insertMarkers$1(e,n,r,s),u.clear$1(),u.clear(),Y(),q(),i.log$1.warn("Graph at first:",JSON.stringify(x(t))),U(t),i.log$1.warn("Graph after:",JSON.stringify(x(t)));const o=i.getConfig();await L(e,t,r,s,void 0,o)};exports.render=Z;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { a2 as gt, a3 as ft, a4 as mt, g as xt, l as E, d as G, Y as _t, a5 as bt, q as kt } from "./layers.
|
|
2
|
-
import "./layers.
|
|
1
|
+
import { a2 as gt, a3 as ft, a4 as mt, g as xt, l as E, d as G, Y as _t, a5 as bt, q as kt } from "./layers.Cv2e6wbN.js";
|
|
2
|
+
import "./layers.BXpB8EUK.js";
|
|
3
3
|
import "lodash-es/memoize.js";
|
|
4
4
|
import "lodash-es/merge.js";
|
|
5
5
|
import "lodash-es/isEmpty.js";
|
|
6
|
-
import { a as D } from "./layers.
|
|
6
|
+
import { a as D } from "./layers.D8VZgQ82.js";
|
|
7
7
|
var K = (function() {
|
|
8
8
|
var n = function(f, i, r, c) {
|
|
9
9
|
for (r = r || {}, c = f.length; c--; r[f[c]] = i)
|