@layers-app/editor 2.2.37 → 2.2.39
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +2 -2
- package/dist/index.d.ts +2 -3
- package/dist/index.js +2 -2
- package/dist/{layers.DE0lto0l.js → layers.-owKjqHV.js} +1 -1
- package/dist/layers.3z4hpfnU.js +16 -0
- package/dist/{layers.N9TTcKK5.js → layers.5hidirvk.js} +1 -1
- package/dist/{layers.D_-WguFZ.js → layers.5n2MOy3N.js} +3 -3
- package/dist/{layers.DTGO7e4p.js → layers.6_jHps_7.js} +1 -1
- package/dist/{layers.Da_khRYC.js → layers.8FM5NsxV.js} +22 -22
- package/dist/{layers.CitfmECv.js → layers.8rMIQVL-.js} +2 -2
- package/dist/{layers.DUgI5-kc.js → layers.9uSonYCj.js} +1 -1
- package/dist/{layers.Dzf33-m2.js → layers.B-8WoW9I.js} +3 -3
- package/dist/{layers.DHr-aIMz.js → layers.B-WeTIhF.js} +4 -4
- package/dist/{layers.C0Mmse5l.js → layers.B06CSm2p.js} +1 -1
- package/dist/{layers.CiKOlVrq.js → layers.B0ofc_1O.js} +1 -1
- package/dist/{layers.B2rLYZn2.js → layers.B1G1bgWO.js} +1 -1
- package/dist/{layers.BX647fKL.js → layers.B1N5QoW_.js} +1 -1
- package/dist/{layers.CJGp5rn8.js → layers.B3Akj7E1.js} +1 -1
- package/dist/{layers.BvetzZVJ.js → layers.B4MwyYlr.js} +1 -1
- package/dist/{layers.BCeNFVhD.js → layers.B6QJltN6.js} +1 -1
- package/dist/{layers.BiJ8hfRt.js → layers.B7K7JjK6.js} +3 -3
- package/dist/{layers.Clmytlu8.js → layers.B9kZdVly.js} +1 -1
- package/dist/{layers.BUTgqhuh.js → layers.BA-fPjo6.js} +1 -1
- package/dist/{layers.Yon6do_2.js → layers.BA-jTXAv.js} +1 -1
- package/dist/{layers.BUiGL5lO.js → layers.BC0-inqe.js} +1 -1
- package/dist/{layers.BvWAB_E-.js → layers.BCoxinD3.js} +4 -4
- package/dist/{layers.qlxfFSC1.js → layers.BDnlMlKY.js} +1 -1
- package/dist/{layers.C4KkJS-M.js → layers.BDvX-pLw.js} +1 -1
- package/dist/{layers.lqQpDooA.js → layers.BH0SQ40e.js} +1 -1
- package/dist/{layers.I46X2w13.js → layers.BHFREp9F.js} +1 -1
- package/dist/{layers.g6X5iTod.js → layers.BIA7ec4C.js} +1 -1
- package/dist/{layers.Cl5vvJQD.js → layers.BJFAAorh.js} +1 -1
- package/dist/{layers.Cn8n8ApN.js → layers.BJVQ0qMs.js} +1 -1
- package/dist/{layers.DQ1JcsCk.js → layers.BKNDBDHu.js} +4 -4
- package/dist/{layers.DPRf6eFH.js → layers.BM23pRdt.js} +1 -1
- package/dist/{layers.CoQyq9wn.js → layers.BM3g7Gca.js} +1 -1
- package/dist/{layers.DNnQZQUd.js → layers.BO_W3Sg4.js} +1 -1
- package/dist/{layers.CNMjo9Su.js → layers.BOinKQOK.js} +1 -1
- package/dist/{layers.DVzt480x.js → layers.BQFlMXtw.js} +1 -1
- package/dist/{layers.D0YgOOvq.js → layers.BQGg7n31.js} +1 -1
- package/dist/{layers.nz9SPmtr.js → layers.BTFVPBI8.js} +1 -1
- package/dist/{layers.TNo_tbS0.js → layers.BTdHI6vd.js} +1 -1
- package/dist/{layers.BFBdqsQn.js → layers.BUSJvT4D.js} +1 -1
- package/dist/{layers.CURhUJKK.js → layers.BV6x-7O6.js} +1 -1
- package/dist/{layers.GXdxvBMb.js → layers.BWYG-epf.js} +1 -1
- package/dist/layers.BXWDzDej.js +1313 -0
- package/dist/{layers.CIA5oJe6.js → layers.BXdOndbk.js} +1 -1
- package/dist/{layers.C8gAFYfM.js → layers.BZKn--pW.js} +1 -1
- package/dist/{layers.CRcIJ88r.js → layers.BZa1ZhQx.js} +1 -1
- package/dist/{layers.BgVYZdDj.js → layers.BZy5Uzzw.js} +1 -1
- package/dist/layers.BZzKS_Ht.js +8590 -0
- package/dist/{layers.CvF_nRL-.js → layers.B_wCJnJ6.js} +1 -1
- package/dist/{layers.D_2aZz7B.js → layers.B_zW-Tk4.js} +1 -1
- package/dist/{layers.Ds6x4GmG.js → layers.Ba4F6POA.js} +3 -3
- package/dist/{layers.Dbts3SXb.js → layers.BbU1f-so.js} +3 -3
- package/dist/{layers.CLBZ_xZY.js → layers.BdE98P_O.js} +6 -6
- package/dist/{layers.BS4TMXPM.js → layers.BeA18HPd.js} +1 -1
- package/dist/{layers.DsOKg8mO.js → layers.BeBFX8T_.js} +1 -1
- package/dist/{layers.BefUkQfQ.js → layers.BeVROkoW.js} +1 -1
- package/dist/{layers.BLxxkfNG.js → layers.BebJaZC1.js} +1 -1
- package/dist/{layers.MUmDmFTx.js → layers.BgCKcFR4.js} +1 -1
- package/dist/{layers.DdwNmVSN.js → layers.BgR-VV0P.js} +2 -2
- package/dist/{layers.B__6CiQr.js → layers.BneK1qna.js} +1 -1
- package/dist/{layers.CUZQsIat.js → layers.Boff2IGc.js} +1 -1
- package/dist/{layers.BRFAHJsX.js → layers.BpEQSX7Z.js} +1 -1
- package/dist/{layers.CYdUlVFC.js → layers.BpNv93hm.js} +1 -1
- package/dist/{layers.CqM6KxHi.js → layers.BqipSFwO.js} +1 -1
- package/dist/{layers.CKPeZY-v.js → layers.BrN17oUW.js} +1 -1
- package/dist/layers.Bt-yfyCM.js +423 -0
- package/dist/{layers.4HnOC8vc.js → layers.BtilEv7W.js} +1 -1
- package/dist/{layers.BWmMt3Sm.js → layers.BwGpsJ4u.js} +1 -1
- package/dist/{layers.ZwPYtbTn.js → layers.C1GrAiVZ.js} +1 -1
- package/dist/{layers.DwEU2scc.js → layers.C2JYa_2H.js} +1 -1
- package/dist/{layers.ifvy7VXO.js → layers.C2oKI1GV.js} +1 -1
- package/dist/{layers.UWD7BdoE.js → layers.C3QxGl_1.js} +1 -1
- package/dist/{layers.C5FpZ40R.js → layers.C45oKzh5.js} +1 -1
- package/dist/{layers.Crhsz8U1.js → layers.C76hHFV5.js} +11 -11
- package/dist/{layers.BGaAUn48.js → layers.C8GRvyED.js} +1 -1
- package/dist/layers.C8a6CwP_.js +425 -0
- package/dist/{layers.BA4dM0kt.js → layers.C9CD3Ubz.js} +1 -1
- package/dist/layers.CBjrPOu6.js +8 -0
- package/dist/{layers.xMrjHFgu.js → layers.CCAqDLz2.js} +3 -3
- package/dist/{layers.y1llFypr.js → layers.CDPYEtGK.js} +1 -1
- package/dist/{layers.i6iQ_A1w.js → layers.CEW9Y90t.js} +1 -1
- package/dist/{layers.i0acK1hq.js → layers.CFhU1U3X.js} +3 -3
- package/dist/{layers.C9oRJN6e.js → layers.CHTW7w8j.js} +1 -1
- package/dist/{layers.CpD8zQ5q.js → layers.CHXl3j9e.js} +1 -1
- package/dist/{layers.DH6LOe1h.js → layers.CJpZDp7M.js} +1 -1
- package/dist/{layers.l7bIkoeb.js → layers.CKRjKRWX.js} +1 -1
- package/dist/{layers.CSMAUJoM.js → layers.CL7wA00x.js} +1 -1
- package/dist/{layers.Jrlf_Hw8.js → layers.CLMBiK0a.js} +1 -1
- package/dist/{layers.BqIJXJ-L.js → layers.CLjqbblh.js} +1 -1
- package/dist/{layers.C8a1nCvT.js → layers.CO9knj3N.js} +1 -1
- package/dist/{layers.tfADU15Z.js → layers.CQo7rAzJ.js} +1 -1
- package/dist/{layers.DPlAQOHK.js → layers.CUnHWxZv.js} +1 -1
- package/dist/{layers.DbwvV8bz.js → layers.CW1ZIhhZ.js} +1 -1
- package/dist/{layers.uuKc7eHL.js → layers.CY7OxUJF.js} +1 -1
- package/dist/{layers.D1PvKD-e.js → layers.CYP2eKGO.js} +10 -10
- package/dist/{layers.BHsEMnIA.js → layers.CYXmfjKq.js} +1 -1
- package/dist/{layers.BONul5c2.js → layers.CZBDium5.js} +1 -1
- package/dist/{layers.BgOa2ZQq.js → layers.C_IvrzZ3.js} +1 -1
- package/dist/{layers.CIUd6cEl.js → layers.C_PpV0a5.js} +1 -1
- package/dist/{layers.C5Tl4WT_.js → layers.CauU55La.js} +1 -1
- package/dist/{layers.CcwKZvas.js → layers.CbfHZRKp.js} +1 -1
- package/dist/{layers.DH_oCrnu.js → layers.CdBHvMBb.js} +1 -1
- package/dist/layers.CdW7OZ6z.js +96 -0
- package/dist/{layers.BDD7VY02.js → layers.CfOWffIm.js} +1 -1
- package/dist/{layers.DzGBJwqP.js → layers.Cg1x2G31.js} +1 -1
- package/dist/{layers.DAno7RUu.js → layers.CiShUrf7.js} +5 -5
- package/dist/{layers.DAnJrfGZ.js → layers.CjSeEWXG.js} +4 -4
- package/dist/{layers.Zhcg-gYX.js → layers.Cke9Oy_D.js} +1 -1
- package/dist/{layers.C5RUURgY.js → layers.CmS6rg8R.js} +1 -1
- package/dist/{layers.1ml6h6le.js → layers.CmcRlu6P.js} +1 -1
- package/dist/{layers.D8qyrbM2.js → layers.CmenZVdl.js} +1 -1
- package/dist/{layers.BpbR27Rn.js → layers.Cr72jVG7.js} +3 -3
- package/dist/{layers.BwhxtsKZ.js → layers.CroQ5zug.js} +1 -1
- package/dist/layers.Cs58YuTI.js +1 -0
- package/dist/{layers.BTdUZ8qH.js → layers.CtY9zPeF.js} +1 -1
- package/dist/{layers.62vwA4k-.js → layers.CvVA1BEe.js} +1 -1
- package/dist/{layers.DiKXxsJQ.js → layers.CvliPXiJ.js} +1 -1
- package/dist/layers.Cw1kMAsl.js +6 -0
- package/dist/{layers.DiZMtPjy.js → layers.CxacO-LY.js} +1 -1
- package/dist/{layers.Bia2l892.js → layers.D2_svYTD.js} +1 -1
- package/dist/{layers.CbKS5Mm-.js → layers.D2vDtg7z.js} +2 -2
- package/dist/{layers.Bm4S-Boj.js → layers.D47h6GlS.js} +1 -1
- package/dist/{layers.De8aPH1u.js → layers.D4QZ19UT.js} +1 -1
- package/dist/layers.D6lY_3UF.js +1 -0
- package/dist/{layers.Bb22AZNC.js → layers.D7c7Av2e.js} +4 -4
- package/dist/layers.DA_UUeYz.js +6 -0
- package/dist/{layers.CV4fI9yH.js → layers.DC5QbdwD.js} +1 -1
- package/dist/{layers.CVHEo058.js → layers.DCB98xx_.js} +1 -1
- package/dist/layers.DCt6JV-Z.js +51 -0
- package/dist/{layers.fWOLESII.js → layers.DDwZIIN7.js} +2 -2
- package/dist/{layers.DJUryer8.js → layers.DIZFYhqM.js} +1 -1
- package/dist/{layers.FhSn8BX3.js → layers.DJLEhkGq.js} +1 -1
- package/dist/{layers.BNtxmEdj.js → layers.DMNMYNJf.js} +1 -1
- package/dist/{layers.BSLywmEL.js → layers.DR0jwzWc.js} +1 -1
- package/dist/{layers.VzRD1LJ4.js → layers.DRKTw-N-.js} +1 -1
- package/dist/{layers.DebCtA5e.js → layers.DRXgOIaj.js} +1 -1
- package/dist/{layers.D9olyo74.js → layers.DU7YyGRb.js} +1 -1
- package/dist/{layers.iCzR2CdS.js → layers.DXNww2DQ.js} +1 -1
- package/dist/layers.DXOudqWU.js +1 -0
- package/dist/{layers.C2urr8-X.js → layers.D_Q0sJVN.js} +1 -1
- package/dist/{layers.BIvaK_8A.js → layers.Da7LCbJf.js} +1 -1
- package/dist/layers.DaxIHSrE.js +1 -0
- package/dist/{layers.BEuymXx5.js → layers.Dh-m5G3g.js} +1 -1
- package/dist/{layers.CDI34qQO.js → layers.DiAoGYDr.js} +1 -1
- package/dist/{layers.D9yVlDC9.js → layers.DiopUi-K.js} +1 -1
- package/dist/{layers.Bck9QRB4.js → layers.Dj_5Xbl8.js} +1 -1
- package/dist/{layers.qeu_Tbg7.js → layers.DkT9TBiq.js} +4 -4
- package/dist/{layers.BgbrhuaW.js → layers.DksYERBY.js} +1 -1
- package/dist/{layers.DSOEdw1M.js → layers.DliYTSV9.js} +1 -1
- package/dist/{layers.gKrHkuBA.js → layers.DlkfhQ3e.js} +1 -1
- package/dist/{layers.C383Dvrr.js → layers.DmFx2cLd.js} +319 -310
- package/dist/{layers.Dd_aETHv.js → layers.DmPy8l_m.js} +4 -4
- package/dist/{layers.ifjP6oOz.js → layers.DmWfT22i.js} +3 -3
- package/dist/{layers.90k_27k-.js → layers.DoyknGUW.js} +2 -2
- package/dist/{layers.KwIs9gmv.js → layers.DpW_2wbA.js} +1 -1
- package/dist/{layers.Cm1tlwTY.js → layers.DpZdhqgU.js} +1 -1
- package/dist/{layers.CPRPvRLq.js → layers.DpcaOSkM.js} +207 -213
- package/dist/{layers.BvCfDeld.js → layers.DpuoBdTc.js} +6 -2
- package/dist/{layers.BJov5ccl.js → layers.DsT3127f.js} +1 -1
- package/dist/{layers.C9AF6ohD.js → layers.DseqB-43.js} +1 -1
- package/dist/{layers.B7RVFCMt.js → layers.DttEWukY.js} +1 -1
- package/dist/{layers.D-M39vU7.js → layers.DxDbSIKs.js} +1 -1
- package/dist/{layers.BY14uOuz.js → layers.Dxs1Bz9v.js} +1 -1
- package/dist/{layers.DhGARWir.js → layers.DznaoIV-.js} +20199 -20483
- package/dist/{layers.BSew-iZ4.js → layers.EsP8_-mS.js} +1 -1
- package/dist/layers.FtE-FDfI.js +1 -0
- package/dist/{layers.CFUkjRzb.js → layers.NcWUdaQE.js} +1 -1
- package/dist/{layers.BWmUOX0-.js → layers.Oc9jaxB6.js} +1 -1
- package/dist/{layers.BjHGoULB.js → layers.P3PZpzps.js} +7 -7
- package/dist/{layers.D8amAjhu.js → layers.R0UNCw_K.js} +4135 -4186
- package/dist/{layers.BUafIBrt.js → layers.R4TihaIl.js} +1 -1
- package/dist/{layers.rQz-cNXL.js → layers.RU5L2B1k.js} +1 -1
- package/dist/{layers.BlxY_BOg.js → layers.RrqVrea1.js} +3 -3
- package/dist/{layers.C77KVxnu.js → layers.SzjX-1ik.js} +1 -1
- package/dist/{layers.VKbfSM_K.js → layers.U8ij3AUv.js} +1 -1
- package/dist/{layers.CLr7TK4d.js → layers.USIo3HEf.js} +1 -1
- package/dist/{layers.DQAZSE4K.js → layers.Uh1SV_3g.js} +1 -1
- package/dist/layers.Wbn2xXXi.js +744 -0
- package/dist/{layers.A_6jjek9.js → layers.X3SIP7Ip.js} +6 -6
- package/dist/{layers.B4X8UJFg.js → layers.X_ec8Mjz.js} +1 -1
- package/dist/{layers.DATXqIC3.js → layers.XqJJTTDF.js} +118 -118
- package/dist/{layers.BmkeAR2L.js → layers.YlOP7lTm.js} +1 -1
- package/dist/{layers.BOmXrP-O.js → layers._BFXtGJ8.js} +1 -1
- package/dist/{layers.BV7lC5cv.js → layers.bhtLIrfi.js} +8485 -8821
- package/dist/{layers.5StEShBO.js → layers.cvIsS1cH.js} +1 -1
- package/dist/{layers.ChoG20GF.js → layers.d8si0CFx.js} +3 -3
- package/dist/layers.dBz49wvs.js +1 -0
- package/dist/{layers.VQexSJxI.js → layers.dbZjzkaK.js} +1 -1
- package/dist/{layers.BlFuProD.js → layers.dcx5hh3X.js} +1 -1
- package/dist/{layers.Dl23XTaW.js → layers.f01TeqL7.js} +1 -1
- package/dist/{layers.DLnRvcCi.js → layers.fJRAytBv.js} +1 -1
- package/dist/{layers.DsX7D3df.js → layers.gxFi9LT2.js} +1 -1
- package/dist/{layers.CcokHqeo.js → layers.iWzY6Hic.js} +1 -1
- package/dist/{layers.CmRo-mtL.js → layers.iss3S-LH.js} +2 -2
- package/dist/{layers.Cj_AgC59.js → layers.k-dxAkmQ.js} +1 -1
- package/dist/{layers.BLVpMky5.js → layers.oYiIETz2.js} +1 -1
- package/dist/{layers.CpI0hevX.js → layers.oc6z8pju.js} +1 -1
- package/dist/{layers.DT1JlXIK.js → layers.pawkqiwU.js} +8 -8
- package/dist/layers.pmaa8paI.js +198 -0
- package/dist/{layers.BSwt2Kfj.js → layers.s8sZ9U1H.js} +1 -1
- package/dist/{layers.BlmssuTS.js → layers.uANnQ5Fm.js} +1 -1
- package/dist/{layers.ZaJZ4T6K.js → layers.veXJFa7R.js} +1 -1
- package/dist/{layers.B7DGj0Ui.js → layers.xdGpR5F5.js} +1 -1
- package/dist/{layers.hi1oKb__.js → layers.zUI5AYmB.js} +5 -5
- package/package.json +2 -2
- package/dist/layers.345-04dK.js +0 -1
- package/dist/layers.6Sg2hDwp.js +0 -1
- package/dist/layers.BAwjrxjx.js +0 -423
- package/dist/layers.BSq_zEdL.js +0 -51
- package/dist/layers.BfhTFlHN.js +0 -7
- package/dist/layers.BgwfwrFy.js +0 -8
- package/dist/layers.Bmdr0bP6.js +0 -1
- package/dist/layers.CX8mEQC_.js +0 -16
- package/dist/layers.CaEOqz0E.js +0 -1
- package/dist/layers.Crdpc81Z.js +0 -712
- package/dist/layers.D5mvZf2C.js +0 -1
- package/dist/layers.DIVI66aC.js +0 -198
- package/dist/layers.DTJFdjg2.js +0 -425
- package/dist/layers.DjErvnZB.js +0 -10148
- package/dist/layers.STmOZaoP.js +0 -6
- package/dist/layers.qwhqXSAo.js +0 -1309
- package/dist/layers.rDLw5TNf.js +0 -1
- package/dist/layers.tb-M7gOD.js +0 -108
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("react/jsx-runtime"),r=require("react"),O=require("react-i18next"),P=require("@lexical/react/LexicalComposerContext"),b=require("@mantine/core"),v=require("lexical"),n=require("./layers.BXWDzDej.js"),_=require("@layers-app/shared"),pe=require("@lexical/react/useLexicalEditable"),W=require("@mantine/hooks");require("@lexical/react/LexicalDecoratorBlockNode");require("@lexical/utils");require("@lexical/mark");require("@lexical/code");require("@lexical/selection");require("react-dom");require("@lexical/react/LexicalErrorBoundary");require("@lexical/react/LexicalBlockWithAlignableContents");require("@mantine/notifications");function fe(e,a){const o=document.createElement("a");o.href=e,o.download=a,o.rel="noopener",document.body.appendChild(o),o.click(),o.remove()}function q(e){try{const o=new URL(e,window.location.origin).pathname.split("/").pop()||"image";return o.includes(".")?o:`${o}.png`}catch{return"image"}}async function z(e,a){const o=await fetch(e);if(!o.ok)throw new Error("fetch failed");const s=await o.blob(),c=URL.createObjectURL(s);try{fe(c,a)}finally{setTimeout(()=>URL.revokeObjectURL(c),0)}}function oe({opened:e,onOpenChange:a,t:o,onDownload:s,onDelete:c}){return i.jsxs(b.Menu,{opened:e,onChange:a,transitionProps:n.animationMenu,shadow:"md",position:"bottom-start",offset:4,withinPortal:!0,closeOnItemClick:!0,children:[i.jsx(b.Menu.Target,{children:i.jsx(n.ActionIcon,{label:o("editor.toolbar.more"),icon:n.K1,iconColor:"var(--mantine-color-gray-text)","aria-label":o("editor.toolbar.more")})}),i.jsxs(b.Menu.Dropdown,{p:4,w:164,onMouseDown:l=>l.preventDefault(),children:[i.jsx(b.Menu.Item,{leftSection:i.jsx(b.Flex,{align:"center",justify:"center",c:"gray.6",children:i.jsx(n.HugeiconsIcon,{icon:n.Tm,size:16})}),onClick:l=>{l.stopPropagation(),s()},children:o("editor.gallery.download")}),i.jsx(b.Menu.Item,{color:"red",leftSection:i.jsx(b.Flex,{align:"center",justify:"center",c:"red.6",children:i.jsx(n.HugeiconsIcon,{icon:n.lg,size:16})}),onClick:l=>{l.stopPropagation(),c()},children:o("editor.contextMenu.delete")})]})]})}const ne=({t:e,src:a,setShown:o,id:s})=>{const[c,{open:l,close:p}]=W.useDisclosure(!1),g=r.useMemo(()=>[{id:!s||s==="0"?"":s,Url:a??"",contentType:"image/*",originalFileName:"",fileSize:0,storageType:"",storagePath:"",fileName:"",parentType:"",parentId:"",ownerId:"",createdAt:new Date,updatedAt:new Date,version:0,deleted:!1,deletedAt:new Date}],[a,s]),m=f=>{f?l():p()};return i.jsxs(i.Fragment,{children:[i.jsx(_.AttachmentsGalleryModal,{opened:c,onOpenChange:m,attachments:g}),i.jsx(n.ActionIcon,{label:e("editor.image.preview"),icon:n.gn,iconColor:"var(--mantine-color-gray-text)","aria-label":e("editor.image.preview"),onClick:()=>{o(!1),l()}})]})},xe=({nodeKey:e,src:a})=>{const[o]=P.useLexicalComposerContext(),s=pe.useLexicalEditable(),[c,l]=r.useState(!1),[p,g]=r.useState(!1),{t:m}=O.useTranslation(),f=r.useCallback(()=>{o.update(()=>{const w=v.$getNodeByKey(e);n.$isImageNode(w)&&w.remove()})},[o,e]),I=r.useCallback(async()=>{if(a)try{await z(a,q(a))}catch{}},[a]);return i.jsxs("div",{className:`media-actions ${s?"":"media-actions--readonly"}`,children:[i.jsx(ne,{t:m,src:a,setShown:()=>{}}),s&&i.jsxs(i.Fragment,{children:[i.jsx(n.NodeAlignmentMenu,{opened:c,setOpened:l,t:m,editor:o,nodeKey:e,setShown:()=>{}}),i.jsx(oe,{opened:p,onOpenChange:g,t:m,onDownload:()=>void I(),onDelete:f})]})]})},be=()=>{};function we({nodeKey:e,src:a,id:o}){const{t:s}=O.useTranslation(),[c]=P.useLexicalComposerContext(),[l,p]=r.useState(!1),[g,m]=r.useState(!1),f=r.useCallback(()=>{m(!1),c.update(()=>{const w=v.$getNodeByKey(e);if(!n.$isImageNode(w))return;const j=w.getParent();n.$isImageOverlayWrapperNode(j)?j.remove():w.remove()})},[c,e]),I=r.useCallback(async()=>{if(a)try{await z(a,q(a))}catch{}},[a]);return i.jsxs("div",{className:"media-actions visible",style:{position:"absolute",top:10,right:10,zIndex:10,pointerEvents:"auto",display:"flex",gap:4},onClick:w=>w.stopPropagation(),children:[i.jsx(ne,{t:s,src:a,setShown:be,id:o}),i.jsx(n.NodeAlignmentMenu,{opened:l,setOpened:p,t:s,editor:c,nodeKey:e}),i.jsx(oe,{opened:g,onOpenChange:m,t:s,onDownload:()=>void I(),onDelete:f})]})}function ye({nodeKey:e,src:a,id:o}){const{t:s}=O.useTranslation(),[c]=P.useLexicalComposerContext(),[l,{open:p,close:g}]=W.useDisclosure(!1),[m,{open:f,close:I}]=W.useDisclosure(!1),w=r.useMemo(()=>[{id:!o||o==="0"?"":o,Url:a??"",contentType:"image/*",originalFileName:"",fileSize:0,storageType:"",storagePath:"",fileName:"",parentType:"",parentId:"",ownerId:"",createdAt:new Date,updatedAt:new Date,version:0,deleted:!1,deletedAt:new Date}],[a,o]),j=()=>{g(),f()},S=r.useCallback(async()=>{if(g(),!!a)try{await z(a,q(a))}catch{}},[a,g]),D=r.useCallback(()=>{g(),c.update(()=>{const y=v.$getNodeByKey(e);n.$isImageNode(y)&&y.remove()})},[c,e,g]);return i.jsxs(i.Fragment,{children:[i.jsx("div",{className:"image-touch-actions",style:{position:"absolute",top:8,right:8,zIndex:10,pointerEvents:"auto"},onClick:y=>y.stopPropagation(),children:i.jsx(n.ActionIcon,{label:s("editor.toolbar.more"),icon:n.O1,iconColor:"var(--mantine-color-gray-text)","aria-label":s("editor.toolbar.more"),onClick:p})}),i.jsx(_.AttachmentsGalleryModal,{opened:m,onOpenChange:y=>y?f():I(),attachments:w}),i.jsx(n.MobileDrawer,{opened:l,onClose:g,title:s("editor.image.mobileActions"),children:i.jsxs(b.Stack,{gap:4,p:0,children:[i.jsx(b.Button,{type:"button",variant:"subtle",color:"gray",fullWidth:!0,justify:"flex-start",bg:"var(--editor-action-bg)",onClick:j,leftSection:i.jsx(n.HugeiconsIcon,{icon:n.gn,size:16,color:"var(--mantine-color-dimmed)"}),children:s("editor.image.previewFullScreen")}),i.jsx(b.Button,{type:"button",variant:"subtle",color:"gray",fullWidth:!0,justify:"flex-start",bg:"var(--editor-action-bg)",onClick:()=>void S(),leftSection:i.jsx(n.HugeiconsIcon,{icon:n.Tm,size:16,color:"var(--mantine-color-dimmed)"}),children:s("editor.gallery.download")}),i.jsx(b.Button,{type:"button",variant:"subtle",color:"red",fullWidth:!0,justify:"flex-start",bg:"var(--editor-action-bg)",onClick:D,leftSection:i.jsx(n.HugeiconsIcon,{icon:n.lg,size:16,color:"var(--mantine-color-red-6)"}),children:s("editor.actions.delete")})]})})]})}const te=e=>{const{width:a,height:o,isLoading:s,isError:c,src:l,id:p,altText:g,imageRef:m,maxWidth:f,aspectRatio:I}=e;return i.jsxs("div",{className:"media-wrapper","data-reserved-box":I?"":void 0,style:{width:a,height:I?"auto":o,aspectRatio:I||void 0,display:"inline-flex",position:"relative"},children:[i.jsx(b.LoadingOverlay,{visible:s,zIndex:1e3,overlayProps:{backgroundOpacity:.5},loaderProps:{size:24,color:"black"}}),i.jsx(Ie,{className:null,src:l,altText:g,imageRef:m,width:"inherit",height:"inherit",maxWidth:f||"auto",id:p}),n.IS_TOUCH_DEVICE&&i.jsx(ye,{nodeKey:e.nodeKey,src:l,id:p}),n.IS_TOUCH_TABLET&&i.jsx(we,{nodeKey:e.nodeKey,src:l,id:p}),n.IS_HOVER_CAPABLE&&!n.IS_TOUCH_DEVICE&&!n.IS_TOUCH_TABLET&&i.jsx(xe,{nodeKey:e.nodeKey,src:l})]})};function Ie({altText:e,className:a,imageRef:o,src:s,width:c,height:l,maxWidth:p,id:g}){const[m,f]=r.useState(!1);return i.jsx("img",{className:`${a||void 0} ${m?"":"loading"}`,src:s,alt:e,ref:o,style:{height:l,maxWidth:p,width:c},onLoad:()=>{s.includes("splash")?setTimeout(()=>{f(!0)},100):f(!0)},draggable:"false","data-id":g})}function Ce(e){const{disable:a}=r.useContext(n.Context);return a&&n.ImageNode.isPlaceholderSrc(e.src)?null:i.jsx(ve,{...e})}function ve({src:e,altText:a,nodeKey:o,width:s,height:c,maxWidth:l,showCaption:p,caption:g,id:m,create:f,alignment:I,imagePickerTab:w,aspectRatio:j}){var Q,ee;const S=r.useRef(null),[D,y]=r.useState(!0),[h]=P.useLexicalComposerContext(),[N,k]=r.useState(!0),[C,L]=r.useState({width:0,height:0}),{start:F}=n.useCancelUpload(),[je,R]=r.useState(0),{fetchUploadMedia:A,fetchDeleteMedia:B,maxFileSize:Ne,imperativeHandleRef:E,disable:ie}=r.useContext(n.Context),T=n.mediaMap.has(e)&&(((Q=n.mediaMap.get(e))==null?void 0:Q.mediaNodeKeys.length)===0||((ee=n.mediaMap.get(e))==null?void 0:ee.mediaNodeKeys.length)===void 0||e.trim()===""),{t:M}=O.useTranslation(),H=t=>{if(typeof t=="number")return t>0?t:null;if(typeof t=="string"&&!t.includes("%")){const d=parseFloat(t);return Number.isFinite(d)&&d>0?d:null}return null},V=H(s),G=H(c),X=V&&G?V/G:void 0,[ae,re]=r.useState(void 0),Y=r.useMemo(()=>{try{const t=parseFloat(localStorage.getItem("layers-img-ratio:"+e)||"");return Number.isFinite(t)&&t>0?t:void 0}catch{return}},[e]),se=X??j??Y??ae,[le,Z]=r.useState(!1),ce=!le&&!X&&(j??Y)!=null,[Se,de]=r.useState(0);r.useEffect(()=>h.registerDecoratorListener(()=>{de(t=>t+1)}),[T]),r.useEffect(()=>{const t=h.getElementByKey(o);t&&(t.style.removeProperty("aspect-ratio"),t.style.removeProperty("width"))},[h,o]),r.useEffect(()=>{if(!e||e.startsWith("data:image/")||!e.trim()){y(!1);return}const t=new Image;t.src=e,t.onload=()=>{if(y(!1),t.naturalWidth){const d=t.naturalWidth/t.naturalHeight;if(re(d),t.naturalWidth>=100)try{localStorage.setItem("layers-img-ratio:"+e,String(d))}catch{}!j&&t.naturalWidth>=100&&h.update(()=>{const u=v.$getNodeByKey(o);n.$isImageNode(u)&&u.getAspectRatio()==null&&u.setAspectRatio(d)},{tag:"history-merge"})}},t.onerror=()=>{y(!1)}},[e,T]);const ue=(t,d)=>{h.update(()=>{v.$setSelection(null);const u=v.$getNodeByKey(o);n.$isImageNode(u)&&u.setWidthAndHeight(t,d)})},{historyState:J}=n.useSharedHistoryContext(),{settings:{showNestedEditorTreeView:K}}=n.useSettings();function ge(t){return t.endsWith(".svg")||t.includes("image/svg+xml")}function me(t){return new Promise((d,u)=>{if(ge(t)){d(0);return}const x=new Image;x.src=t,x.onload=()=>{d(x.width)},x.onerror=()=>{u(new Error("Failed to load image"))}})}r.useEffect(()=>{let t=s,d=c,u=100;(e.includes("unsplash")?e.trim():!T&&e.trim()||e.includes("upload-src-editor"))&&e!=="upload"&&me(e).then(x=>{typeof t=="number"&&t<u&&x<u?(k(!0),L({width:t,height:d})):x<u?(k(!0),L({width:"auto",height:"auto"})):(L({width:x,height:x}),k(!1)),Z(!0)}).catch(x=>{Z(!0),console.warn("Ошибка при загрузке изображения:",x.message)})},[e,T]),r.useEffect(()=>{C.width&&C.height&&N&&h.update(()=>{const t=v.$getNodeByKey(o);n.$isImageNode(t)&&t.setWidthAndHeight(C.width,C.height)})},[C.width,C.height,N]);const he=r.useCallback(t=>n.$writeImagePickerTabToNode(h,o,t),[h,o]),$=r.useCallback((t,d)=>{y(!1),h.update(()=>{const u=v.$getNodeByKey(o);n.$isImageNode(u)&&(u.setSrc(t),u.setId(d))})},[h,o]),U=r.useCallback(t=>{y(!0);const d=F();A&&A(t[0],(u,x)=>{$(u,x),R(0)},u=>{u&&_.showErrorNotification({message:M("editor.gallery.errorFile")}),R(0),$(e.startsWith("blob:")?"upload":"","")},d,u=>{R(u)})},[A,F,M,$,e]);return r.useEffect(()=>h.registerCommand(n.UPLOAD_IMAGE_COMMAND,t=>!e.startsWith("blob:")&&e!=="upload"||t.targetNodeKey!==o?!1:(U(t.files),!0),v.COMMAND_PRIORITY_LOW),[h,U,o,e]),!e||e==="upload"?i.jsx(b.Box,{"data-editor-image-picker-drop-root":!0,w:"100%",children:i.jsx(n.ImagePicker,{inline:!0,nodeKey:o,defaultTabValue:w,onWriteTabToNode:he,uploading:!1,onUpload:t=>{!A||!t.length||U(t)},popoverProps:{opened:!0,position:"bottom",zIndex:n.EDITOR_UI_MIN_Z_INDEX},onChange:t=>{h.update(()=>{const d=v.$getNodeByKey(o);n.$isImageNode(d)&&d.setSrc(t)})}})}):N&&!ce?i.jsx(te,{width:C.width,height:C.height,isLoading:D,isError:!1,isIcon:N,src:e,id:m,editor:h,nodeKey:o,fetchDeleteMedia:B,altText:a,imageRef:S,maxWidth:l,showCaption:p,caption:g,isCollabActive:!1,historyState:J,showNestedEditorTreeView:K,t:M}):i.jsx(n.ResizableContainer,{editor:h,isIcon:N,width:n.parseContainerSize(s),height:n.parseContainerSize(c),initialWidth:C.width||"",initialHeight:C.height||"",onResizeEnd:ue,alignment:I,disable:ie,onRegisterDecoratorEnter:t=>{E!=null&&E.current&&(E.current.decoratorEnterAction=t)},onActivate:()=>h.dispatchCommand(n.ON_CHANGE_COMMAND,"show_menu"),children:i.jsx(te,{width:"inherit",height:"inherit",aspectRatio:se,isLoading:D,isError:!1,isIcon:N,src:e,id:m,editor:h,nodeKey:o,fetchDeleteMedia:B,altText:a,imageRef:S,maxWidth:l,showCaption:p,caption:g,isCollabActive:!1,historyState:J,showNestedEditorTreeView:K,t:M})})}exports.default=Ce;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "./layers.
|
|
1
|
+
import "./layers.bhtLIrfi.js";
|
|
2
2
|
var u = { paste: "পেস্ট করুন", pasteAsPlaintext: "প্লেইনটেক্সট হিসাবে পেস্ট করুন", pasteCharts: "চার্ট পেস্ট করুন", selectAll: "সবটা সিলেক্ট করুন", multiSelect: "একাধিক সিলেক্ট করুন", moveCanvas: "ক্যানভাস সরান", cut: "কাট করুন", copy: "কপি করুন", copyAsPng: "পীএনজী ছবির মতন কপি করুন", copyAsSvg: "এসভীজী ছবির মতন কপি করুন", 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: "এক্সক্যালিড্র দ্বারা প্রস্তুত", handDrawn: "হাতে আঁকা", normal: "স্বাভাবিক", code: "কোড", small: "ছোট", medium: "মাঝারি", large: "বড়", veryLarge: "অনেক বড়", solid: "দৃঢ়", hachure: "ভ্রুলেখা", zigzag: "আঁকাবাঁকা", crossHatch: "ক্রস হ্যাচ", thin: "পাতলা", bold: "পুরু", left: "বাম", center: "কেন্দ্র", right: "ডান", extraBold: "অতি পুরু", architect: "স্থপতি", artist: "শিল্পী", cartoonist: "চিত্রকার", fileTitle: "ফাইলের নাম", colorPicker: "রং পছন্দ করুন", canvasColors: "ক্যানভাসের রং", canvasBackground: "ক্যানভাসের পটভূমি", drawingCanvas: "ব্যবহৃত ক্যানভাস", layers: "মাত্রা", actions: "ক্রিয়া", language: "ভাষা", liveCollaboration: "সরাসরি পারস্পরিক সহযোগিতা...", duplicateSelection: "সদৃশ সিলেক্ট", untitled: "অনামী", name: "নাম", yourName: "আপনার নাম", madeWithExcalidraw: "এক্সক্যালিড্র দ্বারা তৈরি", group: "দল গঠন করুন", ungroup: "দল বিভেদ করুন", collaborators: "সহযোগী", showGrid: "গ্রিড দেখান", addToLibrary: "সংগ্রহে যোগ করুন", removeFromLibrary: "সংগ্রহ থেকে বের করুন", libraryLoadingMessage: "সংগ্রহ তৈরি হচ্ছে", libraries: "সংগ্রহ দেখুন", loadingScene: "দৃশ্য তৈরি হচ্ছে", align: "পংক্তিবিন্যাস", alignTop: "উপর পংক্তি", alignBottom: "নিম্ন পংক্তি", alignLeft: "বাম পংক্তি", alignRight: "ডান পংক্তি", centerVertically: "উলম্ব কেন্দ্রিত", centerHorizontally: "অনুভূমিক কেন্দ্রিত", distributeHorizontally: "অনুভূমিকভাবে বিতরণ করুন", distributeVertically: "উল্লম্বভাবে বিতরণ করুন", flipHorizontal: "অনুভূমিক আবর্তন", flipVertical: "উলম্ব আবর্তন", viewMode: "দৃশ্য", share: "ভাগ করুন", showStroke: "", showBackground: "", toggleTheme: "", personalLib: "", excalidrawLib: "", 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: "" }, B = { noItems: "সংগ্রহে কিছু যোগ করা হয়নি", hint_emptyLibrary: "এখানে যোগ করার জন্য ক্যানভাসে একটি বস্তু নির্বাচন করুন, অথবা নীচে, প্রকাশ্য সংগ্রহশালা থেকে একটি সংগ্রহ ইনস্টল করুন৷", hint_emptyPrivateLibrary: "এখানে যোগ করার জন্য ক্যানভাসে একটি বস্তু নির্বাচন করুন" }, A = { 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: "" }, C = { clearReset: "এটি পুরো ক্যানভাস সাফ করবে। আপনি কি নিশ্চিত?", couldNotCreateShareableLink: "ভাগ করা যায় এমন লিঙ্ক তৈরি করা যায়নি।", couldNotCreateShareableLinkTooBig: "ভাগ করা যায় এমন লিঙ্ক তৈরি করা যায়নি: দৃশ্যটি খুব বড়", couldNotLoadInvalidFile: "অবৈধ ফাইল লোড করা যায়নি", importBackendFailed: "ব্যাকেন্ড থেকে আপলোড ব্যর্থ হয়েছে।", cannotExportEmptyCanvas: "খালি ক্যানভাস নিবদ্ধ করা যাবে না।", couldNotCopyToClipboard: "ক্লিপবোর্ডে কপি করা যায়নি।", decryptFailed: "তথ্য ডিক্রিপ্ট করা যায়নি।", uploadedSecurly: "আপলোডটি এন্ড-টু-এন্ড এনক্রিপশনের মাধ্যমে সুরক্ষিত করা হয়েছে, যার অর্থ হল এক্সক্যালিড্র সার্ভার এবং তৃতীয় পক্ষের দ্বারা পড়তে পারা সম্ভব নয়।", loadSceneOverridePrompt: "বাহ্যিক অঙ্কন লোড করা আপনার বিদ্যমান দৃশ্য প্রতিস্থাপন করবে। আপনি কি অবিরত করতে চান?", collabStopOverridePrompt: `অধিবেশন বন্ধ করা আপনার পূর্ববর্তী, স্থানীয়ভাবে সঞ্চিত অঙ্কন ওভাররাইট করবে। আপনি কি নিশ্চিত?
|
|
3
3
|
|
|
4
4
|
(যদি আপনি আপনার স্থানীয় অঙ্কন রাখতে চান, তাহলে শুধু ব্রাউজার ট্যাবটি বন্ধ করুন।)`, errorAddingToLibrary: "বস্তুটি সংগ্রহে যোগ করা যায়নি", errorRemovingFromLibrary: "বস্তুটি সংগ্রহ থেকে বিয়োগ করা যায়নি", confirmAddLibrary: "এটি আপনার সংগ্রহে {{numShapes}} আকার(গুলি) যোগ করবে। আপনি কি নিশ্চিত?", imageDoesNotContainScene: "এই ছবিতে কোনো দৃশ্যের তথ্য আছে বলে মনে হয় না৷ আপনি কি নিবদ্ধ করার সময় দৃশ্য এমবেডিং করতে সক্ষম?", cannotRestoreFromImage: "এই ফাইল থেকে দৃশ্য পুনরুদ্ধার করা যায়নি", invalidSceneUrl: "সরবরাহ করা লিঙ্ক থেকে দৃশ্য লোড করা যায়নি৷ এটি হয় বিকৃত, অথবা বৈধ এক্সক্যালিড্র জেসন তথ্য নেই৷", resetLibrary: "এটি আপনার সংগ্রহ পরিষ্কার করবে। আপনি কি নিশ্চিত?", removeItemsFromsLibrary: "সংগ্রহ থেকে {{count}} বস্তু বিয়োগ করা হবে। আপনি কি নিশ্চিত?", invalidEncryptionKey: "অবৈধ এনক্রীপশন কী।", collabOfflineWarning: "" }, F = { unsupportedFileType: "অসমর্থিত ফাইল।", imageInsertError: "ছবি সন্নিবেশ করা যায়নি। পরে আবার চেষ্টা করুন...", fileTooBig: "ফাইলটি খুব বড়। সর্বাধিক অনুমোদিত আকার হল {{maxSize}}৷", svgImageInsertError: "এসভীজী ছবি সন্নিবেশ করা যায়নি। এসভীজী মার্কআপটি অবৈধ মনে হচ্ছে৷", failedToFetchImage: "", invalidSVGString: "এসভীজী মার্কআপটি অবৈধ মনে হচ্ছে৷", cannotResolveCollabServer: "কোল্যাব সার্ভারের সাথে সংযোগ করা যায়নি। পৃষ্ঠাটি পুনরায় লোড করে আবার চেষ্টা করুন।", importLibraryError: "সংগ্রহ লোড করা যায়নি", collabSaveFailed: "", collabSaveFailed_sizeExceeded: "", imageToolNotSupported: "", brave_measure_text_error: { line1: "", line2: "", line3: "", line4: "" }, libraryElementTypeError: { embeddable: "", iframe: "", image: "" }, asyncPasteFailedOnRead: "", asyncPasteFailedOnParse: "", copyToSystemClipboardFailed: "" }, e = { selection: "বাছাই", image: "চিত্র সন্নিবেশ", rectangle: "আয়তক্ষেত্র", diamond: "রুহিতন", ellipse: "উপবৃত্ত", arrow: "তীর", line: "রেখা", freedraw: "কলম", text: "লেখা", library: "সংগ্রহ", lock: "আঁকার পরে নির্বাচিত টুল সক্রিয় রাখুন", penMode: "", link: "একটি নির্বাচিত আকৃতির জন্য লিঙ্ক যোগ বা আপডেট করুন", eraser: "ঝাড়ন", frame: "", magicframe: "", embeddable: "", laser: "", hand: "", extraTools: "", mermaidToExcalidraw: "", magicSettings: "" }, E = { canvasActions: "ক্যানভাস কার্যকলাপ", selectedShapeActions: "বাছাই করা আকার(গুলি)র কার্যকলাপ", shapes: "আকার(গুলি)" }, D = { canvasPanning: "", linearElement: "একাধিক বিন্দু শুরু করতে ক্লিক করুন, একক লাইনের জন্য টেনে আনুন", freeDraw: "ক্লিক করুন এবং টেনে আনুন, আপনার কাজ শেষ হলে ছেড়ে দিন", text: "বিশেষ্য: আপনি নির্বাচন টুলের সাথে যে কোনো জায়গায় ডাবল-ক্লিক করে পাঠ্য যোগ করতে পারেন", embeddable: "", text_selected: "লেখা সম্পাদনা করতে ডাবল-ক্লিক করুন বা এন্টার টিপুন", text_editing: "লেখা সম্পাদনা শেষ করতে এসকেপ বা কন্ট্রোল/কম্যান্ড যোগে এন্টার টিপুন", linearElementMulti: "শেষ বিন্দুতে ক্লিক করুন অথবা শেষ করতে এসকেপ বা এন্টার টিপুন", lockAngle: "ঘোরানোর সময় আপনি শিফ্ট ধরে রেখে কোণ সীমাবদ্ধ করতে পারেন", resize: `আপনি আকার পরিবর্তন করার সময় শিফ্ট ধরে রেখে অনুপাতকে সীমাবদ্ধ করতে পারেন,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { n as ut, o as rt,
|
|
1
|
+
import { n as ut, o as rt, g as F, s as at, a as lt, b as ct, c as ot, j as v, u as He, l as ht, q as At, i as pt, X as Re, d as z } from "./layers.BZzKS_Ht.js";
|
|
2
2
|
var Ve = (function() {
|
|
3
3
|
var e = function(x, u, a, h) {
|
|
4
4
|
for (a = a || {}, h = x.length; h--; a[x[h]] = u)
|
|
@@ -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.pmaa8paI.js");var e={paste:"Indsæt",pasteAsPlaintext:"Indsæt som klartekst",pasteCharts:"Indsæt diagrammer",selectAll:"Marker alle",multiSelect:"Tilføj element til markering",moveCanvas:"Flyt lærred",cut:"Klip",copy:"Kopier",copyAsPng:"Kopier til klippebord som PNG",copyAsSvg:"Kopier til klippebord som SVG",copyText:"Kopiér til udklipsholder som tekst",copySource:"Kopiér kilde til udklipsholder",convertToCode:"Konvertér til kode",bringForward:"Flyt fremad",sendToBack:"Placer bagest",bringToFront:"Placer forrest",sendBackward:"Send bagud",delete:"Fjern",copyStyles:"Kopier stil",pasteStyles:"Indsæt stil",stroke:"Linje",background:"Baggrund",fill:"Udfyld",strokeWidth:"Linjebredde",strokeStyle:"Linjeform",strokeStyle_solid:"Solid",strokeStyle_dashed:"Stiplet",strokeStyle_dotted:"Prikket",sloppiness:"Sjuskethed",opacity:"Gennemsigtighed",textAlign:"Tekstjustering",edges:"Kanter",sharp:"Skarp",round:"Rund",arrowheads:"Pilehoveder",arrowhead_none:"Ingen",arrowhead_arrow:"Pil",arrowhead_bar:"Bjælke",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Trekant",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Skriftstørrelse",fontFamily:"Skrifttypefamilie",addWatermark:'Tilføj "Lavet med Excalidraw"',handDrawn:"Hånd-tegnet",normal:"Normal",code:"Kode",small:"Lille",medium:"Mellem",large:"Stor",veryLarge:"Meget stor",solid:"Solid",hachure:"Skravering",zigzag:"Zigzag",crossHatch:"Krydsskravering",thin:"Tynd",bold:"Fed",left:"Venstre",center:"Centrere",right:"Højre",extraBold:"Extra fed",architect:"Arkitekt",artist:"Kunstner",cartoonist:"Tegneserietegner",fileTitle:"Filnavn",colorPicker:"Farvevælger",canvasColors:"Brugt på lærred",canvasBackground:"Lærredsbaggrund",drawingCanvas:"Tegnelærred",layers:"Lag",actions:"Handlinger",language:"Sprog",liveCollaboration:"Live samarbejde...",duplicateSelection:"Duplikér",untitled:"Unavngivet",name:"Navn",yourName:"Dit navn",madeWithExcalidraw:"Fremstillet med Excalidraw",group:"Grupper valgte",ungroup:"Opløs gruppe",collaborators:"Deltagere",showGrid:"Vis gitter",addToLibrary:"Føj til Bibliotek",removeFromLibrary:"Fjern fra biblioteket",libraryLoadingMessage:"Indlæser bibliotek…",libraries:"Gennemse biblioteker",loadingScene:"Indlæser scene…",align:"Justér",alignTop:"Juster til top",alignBottom:"Juster til bund",alignLeft:"Venstrejusteret",alignRight:"Juster højre",centerVertically:"Center vertikalt",centerHorizontally:"Vandret centreret",distributeHorizontally:"Distribuer vandret",distributeVertically:"Distribuer lodret",flipHorizontal:"Spejlvend horisontalt",flipVertical:"Vend lodret",viewMode:"Visningstilstand",share:"Del",showStroke:"Vis stregfarve-vælger",showBackground:"Vis baggrundsfarve-vælger",toggleTheme:"Skift tema",personalLib:"Personligt bibliotek",excalidrawLib:"Excalidraw Bibliotek",decreaseFontSize:"Gør skriften mindre",increaseFontSize:"Gør skriften større",unbindText:"Frigør tekst",bindText:"Bind tekst til beholderen",createContainerFromText:"Ombryd tekst i en beholder",link:{edit:"Redigér link",editEmbed:"Redigér link & indlejret",create:"Link oprettet",createEmbed:"Opret link & indlejret",label:"Links",labelEmbed:"Link & indlejret",empty:"Intet link angivet"},lineEditor:{edit:"Rediger Linje",exit:"Afslut linjeeditor"},elementLock:{lock:"Lås",unlock:"Lås op",lockAll:"Lås alle",unlockAll:"Lås alle op"},statusPublished:"Udgiver",sidebarLock:"Hold sidepanel åben",selectAllElementsInFrame:"Vælg alle elementer i rammen",removeAllElementsFromFrame:"Fjern alle elementer fra ramme",eyeDropper:"Vælg farve fra lærred",textToDiagram:"Tekst til diagram",prompt:"Prompt"},r={noItems:"Ingen varer tilføjet endnu...",hint_emptyLibrary:"Vælg et element på lærred for at tilføje det her, eller installer et bibliotek fra det offentlige arkiv, nedenfor.",hint_emptyPrivateLibrary:"Vælg et element på lærred for at tilføje det her."},t={clearReset:"Nulstil lærredet",exportJSON:"Eksportér til fil",exportImage:"Eksporter billede...",export:"Gem til...",copyToClipboard:"Kopier til klippebord",save:"Gem til nuværende fil",saveAs:"Gem som",load:"Åbn",getShareableLink:"Lav et delbart link",close:"Luk",selectLanguage:"Vælg sprog",scrollBackToContent:"Scroll tilbage til indhold",zoomIn:"Zoom ind",zoomOut:"Zoom ud",resetZoom:"Nulstil zoom",menu:"Menu",done:"Færdig",edit:"Rediger",undo:"Fortryd",redo:"Gendan",resetLibrary:"Nulstil bibliotek",createNewRoom:"Opret nyt rum",fullScreen:"Fuld skærm",darkMode:"Mørk tilstand",lightMode:"Lys baggrund",zenMode:"Zentilstand",objectsSnapMode:"Fastgør til objekter",exitZenMode:"Stop zentilstand",cancel:"Annuller",clear:"Ryd",remove:"Fjern",embed:"Slå indlejring til/fra",publishLibrary:"Publicér",submit:"Gem",confirm:"Bekræft",embeddableInteractionButton:"Klik for at interagere"},i={clearReset:"Dette vil rydde hele lærredet. Er du sikker?",couldNotCreateShareableLink:"Kunne ikke oprette delbart link.",couldNotCreateShareableLinkTooBig:"Kunne ikke oprette delbart link: scenen er for stor",couldNotLoadInvalidFile:"Kunne ikke indlæse ugyldig fil",importBackendFailed:"Import fra backend mislykkedes.",cannotExportEmptyCanvas:"Kan ikke eksportere tomt lærred.",couldNotCopyToClipboard:"Kunne ikke kopiere til udklipsholderen.",decryptFailed:"Kunne ikke dekryptere data.",uploadedSecurly:"Upload er blevet sikret med ende-til-ende kryptering, hvilket betyder, at Excalidraw server og tredjeparter ikke kan læse indholdet.",loadSceneOverridePrompt:"Indlæsning af ekstern tegning erstatter dit eksisterende indhold. Ønsker du at fortsætte?",collabStopOverridePrompt:`Stopper sessionen vil overskrive din tidligere, lokalt gemte tegning. Er du sikker?
|
|
2
2
|
|
|
3
3
|
(Hvis du ønsker at beholde din lokale tegning, skal du blot lukke browserfanen i stedet.)`,errorAddingToLibrary:"Kunne ikke tilføje element til biblioteket",errorRemovingFromLibrary:"Kunne ikke fjerne element fra biblioteket",confirmAddLibrary:"Dette vil tilføje {{numShapes}} form(er) til dit bibliotek. Er du sikker?",imageDoesNotContainScene:"Dette billede synes ikke at indeholde scene data. Har du aktiveret scene indlejring under eksport?",cannotRestoreFromImage:"Scene kunne ikke gendannes fra denne billedfil",invalidSceneUrl:"Kunne ikke importere scene fra den angivne URL. Det er enten misdannet eller indeholder ikke gyldige Excalidraw JSON data.",resetLibrary:"Dette vil rydde hele lærredet. Er du sikker?",removeItemsFromsLibrary:"Slet {{count}} vare(r) fra biblioteket?",invalidEncryptionKey:"Krypteringsnøglen skal være på 22 tegn. Live-samarbejde er deaktiveret.",collabOfflineWarning:`Ingen internetforbindelse tilgængelig.
|
|
4
4
|
Dine ændringer vil ikke blive gemt!`},l={unsupportedFileType:"Filtypen er ikke understøttet.",imageInsertError:"Billedet kunne ikke indsættes. Prøv igen senere...",fileTooBig:"Filen er for stor. Maksimal tilladt størrelse er {{maxSize}}.",svgImageInsertError:"Kunne ikke indsætte SVG-billede. SVG-markup'en ser ugyldig ud.",failedToFetchImage:"Dataene blev ikke hentet.",invalidSVGString:"Ugyldig SVG.",cannotResolveCollabServer:"Kunne ikke oprette forbindelse til samarbejdsserveren. Genindlæs siden og prøv igen.",importLibraryError:"Biblioteket kunne ikke indlæses",collabSaveFailed:"Kunne ikke gemme i databasen. Hvis problemerne fortsætter, bør du gemme din fil lokalt for at sikre, at du ikke mister dit arbejde.",collabSaveFailed_sizeExceeded:"Kunne ikke gemme i databasen, lærredet lader til at være for stort. Du bør gemme filen lokalt for at sikre, at du ikke mister dit arbejde.",imageToolNotSupported:"Billeder er deaktiveret.",brave_measure_text_error:{line1:"Det ser ud til, at du bruger Brave browser med indstillingen <bold>Aggressively Block Fingerprinting</bold> aktiveret.",line2:"Dette kan resultere i brud på <bold>tekstelementerne</bold> i dine tegninger.",line3:"Vi anbefaler kraftigt at deaktivere denne indstilling. Du kan følge <link>disse trin</link> om, hvordan du gør det.",line4:"Hvis deaktivering af denne indstilling ikke løser visning af tekstelementer, åbn venligst et <issueLink>issue</issueLink> på vores GitHub, eller skriv os på <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"Indlejringselementer kan ikke tilføjes til biblioteket.",iframe:"IFrame elementer kan ikke tilføjes til biblioteket.",image:"Understøttelse af at tilføje billeder til biblioteket kommer snart!"},asyncPasteFailedOnRead:"Kunne ikke indsætte (kan ikke læse fra systemets udklipsholder).",asyncPasteFailedOnParse:"Kunne ikke indsætte.",copyToSystemClipboardFailed:"Kunne ikke kopiere til udklipsholderen."},n={selection:"&Udvalg",image:"Indsæt billeder",rectangle:"Rektangler",diamond:"Diamanter",ellipse:"Ellipser",arrow:"Pile",line:"Linje",freedraw:"Tegn",text:"Tekster",library:"~Bibliotek",lock:"Behold valgte værktøj aktiv efter tegning",penMode:"Pen-tilstand - forhindrer berøring",link:"Tilføj/ Opdater link for en valgt form",eraser:"Slet",frame:"Rammeværktøj",magicframe:"Wireframe til kode",embeddable:"Web-indlejring",laser:"Lasermarkør",hand:"Hånd (panorering værktøj)",extraTools:"Flere værktøjer",mermaidToExcalidraw:"Mermaid til Excalidraw",magicSettings:"AI indstillinger"},a={canvasActions:"Lærred handlinger",selectedShapeActions:"Valgte figurhandlinger",shapes:"Former"},o={canvasPanning:"For at flytte lærred, hold musehjulet eller mellemrumstasten mens du trækker, eller brug håndværktøjet",linearElement:"Klik for at starte flere punkter, træk for enkelt linje",freeDraw:"Klik og træk, slip når du er færdig",text:"Tip: du kan også tilføje tekst ved at dobbeltklikke hvor som helst med det valgte værktøj",embeddable:"Klik på træk for at oprette en hjemmeside indlejret",text_selected:"",text_editing:"",linearElementMulti:"",lockAngle:"",resize:"",resizeImage:"",rotate:"",lineEditor_info:"",lineEditor_pointSelected:"",lineEditor_nothingSelected:"",placeImage:"",publishLibrary:"",bindTextToElement:"",deepBoxSelect:"",eraserRevert:"",firefox_clipboard_write:"",disableSnapping:""},d={cannotShowPreview:"Kan ikke vise forhåndsvisning",canvasTooBig:"Lærredet kan være for stort.",canvasTooBigTip:"Tip: Prøv at flytte de fjerneste elementer lidt tættere sammen."},s={headingMain:"Der opstod en fejl. Prøv <button>at genindlæse siden</button>.",clearCanvasMessage:"",clearCanvasCaveat:"",trackedToSentry:"",openIssueMessage:"<button></button> Kopiere og indsæt venligst oplysningerne nedenfor i et GitHub problem.",sceneContent:"Scene indhold:"},k={desc_intro:"Du kan invitere folk til din nuværende scene, så de kan samarbejde med dig.",desc_privacy:"Bare rolig, sessionen bruger end-to-end kryptering, så uanset hvad du tegner vil det forblive privat. Ikke engang vores server vil kunne se, hvad du kommer op med.",button_startSession:"Start session",button_stopSession:"Stop session",desc_inProgressIntro:"Live-samarbejde session er nu begyndt.",desc_shareLink:"Del dette link med enhver, du ønsker at samarbejde med:",desc_exitSession:"",shareTitle:""},g={title:"Fejl"},m={disk_title:"Gem til disk",disk_details:"",disk_button:"",link_title:"",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"",excalidrawplus_exportError:""},b={blog:"Læs vores 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:""},c={title:""},p={title:"",itemName:"",authorName:"",githubUsername:"",twitterUsername:"",libraryName:"",libraryDesc:"",website:"",placeholder:{authorName:"",libraryName:"",libraryDesc:"",githubHandle:"",twitterHandle:"",website:""},errors:{required:"",website:""},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"",atleastOneLibItem:"",republishWarning:""},u={title:"",content:""},x={resetLibrary:"",removeItemsFromLib:""},v={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},E={tooltip:"",link:""},f={angle:"",element:"",elements:"",height:"",scene:"",selected:"",storage:"",title:"Statistik for nørder",total:"",version:"",versionCopy:"Klik for at kopiere",versionNotAvailable:"",width:"Bredde"},h={addedToLibrary:"",copyStyles:"Kopieret stilarter.",copyToClipboard:"Kopieret til klippebord.",copyToClipboardAsPng:`Kopieret {{exportSelection}} til klippebord som PNG
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("./layers.
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("./layers.CdW7OZ6z.js");require("./layers.pmaa8paI.js");require("lodash-es/memoize.js");require("lodash-es/merge.js");require("lodash-es/isEmpty.js");const qt=require("./layers.DXOudqWU.js");var xt=(function(){var e=function(K,n,s,l){for(s=s||{},l=K.length;l--;s[K[l]]=n);return s},r=[1,3],h=[1,4],x=[1,5],g=[1,6],d=[1,7],u=[1,5,13,15,17,19,20,25,27,28,29,30,31,32,33,34,37,38,40,41,42,43,44,45,46,47,48,49,50],p=[1,5,6,13,15,17,19,20,25,27,28,29,30,31,32,33,34,37,38,40,41,42,43,44,45,46,47,48,49,50],i=[32,33,34],q=[2,7],y=[1,13],B=[1,17],N=[1,18],V=[1,19],I=[1,20],b=[1,21],H=[1,22],M=[1,23],z=[1,24],it=[1,25],at=[1,26],nt=[1,27],U=[1,30],$=[1,31],_=[1,32],A=[1,33],m=[1,34],t=[1,35],S=[1,36],k=[1,37],F=[1,38],P=[1,39],v=[1,40],C=[1,41],L=[1,42],X=[1,57],O=[1,58],E=[5,22,26,32,33,34,40,41,42,43,44,45,46,47,48,49,50,51],ot={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,SPACE:5,QUADRANT:6,document:7,line:8,statement:9,axisDetails:10,quadrantDetails:11,points: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,text:21,point_start:22,point_x:23,point_y:24,"X-AXIS":25,"AXIS-TEXT-DELIMITER":26,"Y-AXIS":27,QUADRANT_1:28,QUADRANT_2:29,QUADRANT_3:30,QUADRANT_4:31,NEWLINE:32,SEMI:33,EOF:34,alphaNumToken:35,textNoTagsToken:36,STR:37,MD_STR:38,alphaNum:39,PUNCTUATION:40,AMP:41,NUM:42,ALPHA:43,COMMA:44,PLUS:45,EQUALS:46,MULT:47,DOT:48,BRKT:49,UNDERSCORE:50,MINUS:51,$accept:0,$end:1},terminals_:{2:"error",5:"SPACE",6:"QUADRANT",13:"title",14:"title_value",15:"acc_title",16:"acc_title_value",17:"acc_descr",18:"acc_descr_value",19:"acc_descr_multiline_value",20:"section",22:"point_start",23:"point_x",24:"point_y",25:"X-AXIS",26:"AXIS-TEXT-DELIMITER",27:"Y-AXIS",28:"QUADRANT_1",29:"QUADRANT_2",30:"QUADRANT_3",31:"QUADRANT_4",32:"NEWLINE",33:"SEMI",34:"EOF",37:"STR",38:"MD_STR",40:"PUNCTUATION",41:"AMP",42:"NUM",43:"ALPHA",44:"COMMA",45:"PLUS",46:"EQUALS",47:"MULT",48:"DOT",49:"BRKT",50:"UNDERSCORE",51:"MINUS"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[9,0],[9,2],[9,1],[9,1],[9,1],[9,2],[9,2],[9,2],[9,1],[9,1],[12,4],[10,4],[10,3],[10,2],[10,4],[10,3],[10,2],[11,2],[11,2],[11,2],[11,2],[4,1],[4,1],[4,1],[21,1],[21,2],[21,1],[21,1],[39,1],[39,2],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[36,1],[36,1],[36,1]],performAction:function(n,s,l,o,T,a,et){var f=a.length-1;switch(T){case 12:this.$=a[f].trim(),o.setDiagramTitle(this.$);break;case 13:this.$=a[f].trim(),o.setAccTitle(this.$);break;case 14:case 15:this.$=a[f].trim(),o.setAccDescription(this.$);break;case 16:o.addSection(a[f].substr(8)),this.$=a[f].substr(8);break;case 17:o.addPoint(a[f-3],a[f-1],a[f]);break;case 18:o.setXAxisLeftText(a[f-2]),o.setXAxisRightText(a[f]);break;case 19:a[f-1].text+=" ⟶ ",o.setXAxisLeftText(a[f-1]);break;case 20:o.setXAxisLeftText(a[f]);break;case 21:o.setYAxisBottomText(a[f-2]),o.setYAxisTopText(a[f]);break;case 22:a[f-1].text+=" ⟶ ",o.setYAxisBottomText(a[f-1]);break;case 23:o.setYAxisBottomText(a[f]);break;case 24:o.setQuadrant1Text(a[f]);break;case 25:o.setQuadrant2Text(a[f]);break;case 26:o.setQuadrant3Text(a[f]);break;case 27:o.setQuadrant4Text(a[f]);break;case 31:this.$={text:a[f],type:"text"};break;case 32:this.$={text:a[f-1].text+""+a[f],type:a[f-1].type};break;case 33:this.$={text:a[f],type:"text"};break;case 34:this.$={text:a[f],type:"markdown"};break;case 35:this.$=a[f];break;case 36:this.$=a[f-1]+""+a[f];break}},table:[{3:1,4:2,5:r,6:h,32:x,33:g,34:d},{1:[3]},{3:8,4:2,5:r,6:h,32:x,33:g,34:d},{3:9,4:2,5:r,6:h,32:x,33:g,34:d},e(u,[2,4],{7:10}),e(p,[2,28]),e(p,[2,29]),e(p,[2,30]),{1:[2,1]},{1:[2,2]},e(i,q,{8:11,9:12,10:14,11:15,12:16,21:28,35:29,1:[2,3],5:y,13:B,15:N,17:V,19:I,20:b,25:H,27:M,28:z,29:it,30:at,31:nt,37:U,38:$,40:_,41:A,42:m,43:t,44:S,45:k,46:F,47:P,48:v,49:C,50:L}),e(u,[2,5]),{4:43,32:x,33:g,34:d},e(i,q,{10:14,11:15,12:16,21:28,35:29,9:44,5:y,13:B,15:N,17:V,19:I,20:b,25:H,27:M,28:z,29:it,30:at,31:nt,37:U,38:$,40:_,41:A,42:m,43:t,44:S,45:k,46:F,47:P,48:v,49:C,50:L}),e(i,[2,9]),e(i,[2,10]),e(i,[2,11]),{14:[1,45]},{16:[1,46]},{18:[1,47]},e(i,[2,15]),e(i,[2,16]),{21:48,35:29,37:U,38:$,40:_,41:A,42:m,43:t,44:S,45:k,46:F,47:P,48:v,49:C,50:L},{21:49,35:29,37:U,38:$,40:_,41:A,42:m,43:t,44:S,45:k,46:F,47:P,48:v,49:C,50:L},{21:50,35:29,37:U,38:$,40:_,41:A,42:m,43:t,44:S,45:k,46:F,47:P,48:v,49:C,50:L},{21:51,35:29,37:U,38:$,40:_,41:A,42:m,43:t,44:S,45:k,46:F,47:P,48:v,49:C,50:L},{21:52,35:29,37:U,38:$,40:_,41:A,42:m,43:t,44:S,45:k,46:F,47:P,48:v,49:C,50:L},{21:53,35:29,37:U,38:$,40:_,41:A,42:m,43:t,44:S,45:k,46:F,47:P,48:v,49:C,50:L},{5:X,22:[1,54],35:56,36:55,40:_,41:A,42:m,43:t,44:S,45:k,46:F,47:P,48:v,49:C,50:L,51:O},e(E,[2,31]),e(E,[2,33]),e(E,[2,34]),e(E,[2,37]),e(E,[2,38]),e(E,[2,39]),e(E,[2,40]),e(E,[2,41]),e(E,[2,42]),e(E,[2,43]),e(E,[2,44]),e(E,[2,45]),e(E,[2,46]),e(E,[2,47]),e(u,[2,6]),e(i,[2,8]),e(i,[2,12]),e(i,[2,13]),e(i,[2,14]),e(i,[2,20],{36:55,35:56,5:X,26:[1,59],40:_,41:A,42:m,43:t,44:S,45:k,46:F,47:P,48:v,49:C,50:L,51:O}),e(i,[2,23],{36:55,35:56,5:X,26:[1,60],40:_,41:A,42:m,43:t,44:S,45:k,46:F,47:P,48:v,49:C,50:L,51:O}),e(i,[2,24],{36:55,35:56,5:X,40:_,41:A,42:m,43:t,44:S,45:k,46:F,47:P,48:v,49:C,50:L,51:O}),e(i,[2,25],{36:55,35:56,5:X,40:_,41:A,42:m,43:t,44:S,45:k,46:F,47:P,48:v,49:C,50:L,51:O}),e(i,[2,26],{36:55,35:56,5:X,40:_,41:A,42:m,43:t,44:S,45:k,46:F,47:P,48:v,49:C,50:L,51:O}),e(i,[2,27],{36:55,35:56,5:X,40:_,41:A,42:m,43:t,44:S,45:k,46:F,47:P,48:v,49:C,50:L,51:O}),{23:[1,61]},e(E,[2,32]),e(E,[2,48]),e(E,[2,49]),e(E,[2,50]),e(i,[2,19],{35:29,21:62,37:U,38:$,40:_,41:A,42:m,43:t,44:S,45:k,46:F,47:P,48:v,49:C,50:L}),e(i,[2,22],{35:29,21:63,37:U,38:$,40:_,41:A,42:m,43:t,44:S,45:k,46:F,47:P,48:v,49:C,50:L}),{24:[1,64]},e(i,[2,18],{36:55,35:56,5:X,40:_,41:A,42:m,43:t,44:S,45:k,46:F,47:P,48:v,49:C,50:L,51:O}),e(i,[2,21],{36:55,35:56,5:X,40:_,41:A,42:m,43:t,44:S,45:k,46:F,47:P,48:v,49:C,50:L,51:O}),e(i,[2,17])],defaultActions:{8:[2,1],9:[2,2]},parseError:function(n,s){if(s.recoverable)this.trace(n);else{var l=new Error(n);throw l.hash=s,l}},parse:function(n){var s=this,l=[0],o=[],T=[null],a=[],et=this.table,f="",rt=0,gt=0,_t=2,pt=1,mt=a.slice.call(arguments,1),D=Object.create(this.lexer),Z={yy:{}};for(var ht in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ht)&&(Z.yy[ht]=this.yy[ht]);D.setInput(n,Z.yy),Z.yy.lexer=D,Z.yy.parser=this,typeof D.yylloc>"u"&&(D.yylloc={});var ut=D.yylloc;a.push(ut);var At=D.options&&D.options.ranges;typeof Z.yy.parseError=="function"?this.parseError=Z.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function bt(){var j;return j=o.pop()||D.lex()||pt,typeof j!="number"&&(j instanceof Array&&(o=j,j=o.pop()),j=s.symbols_[j]||j),j}for(var W,J,Q,dt,tt={},st,Y,yt,lt;;){if(J=l[l.length-1],this.defaultActions[J]?Q=this.defaultActions[J]:((W===null||typeof W>"u")&&(W=bt()),Q=et[J]&&et[J][W]),typeof Q>"u"||!Q.length||!Q[0]){var ft="";lt=[];for(st in et[J])this.terminals_[st]&&st>_t&<.push("'"+this.terminals_[st]+"'");D.showPosition?ft="Parse error on line "+(rt+1)+`:
|
|
2
2
|
`+D.showPosition()+`
|
|
3
3
|
Expecting `+lt.join(", ")+", got '"+(this.terminals_[W]||W)+"'":ft="Parse error on line "+(rt+1)+": Unexpected "+(W==pt?"end of input":"'"+(this.terminals_[W]||W)+"'"),this.parseError(ft,{text:D.match,token:this.terminals_[W]||W,line:D.yylineno,loc:ut,expected:lt})}if(Q[0]instanceof Array&&Q.length>1)throw new Error("Parse Error: multiple actions possible at state: "+J+", token: "+W);switch(Q[0]){case 1:l.push(W),T.push(D.yytext),a.push(D.yylloc),l.push(Q[1]),W=null,gt=D.yyleng,f=D.yytext,rt=D.yylineno,ut=D.yylloc;break;case 2:if(Y=this.productions_[Q[1]][1],tt.$=T[T.length-Y],tt._$={first_line:a[a.length-(Y||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(Y||1)].first_column,last_column:a[a.length-1].last_column},At&&(tt._$.range=[a[a.length-(Y||1)].range[0],a[a.length-1].range[1]]),dt=this.performAction.apply(tt,[f,gt,rt,Z.yy,Q[1],T,a].concat(mt)),typeof dt<"u")return dt;Y&&(l=l.slice(0,-1*Y*2),T=T.slice(0,-1*Y),a=a.slice(0,-1*Y)),l.push(this.productions_[Q[1]][0]),T.push(tt.$),a.push(tt._$),yt=et[l[l.length-2]][l[l.length-1]],l.push(yt);break;case 3:return!0}}return!0}},Tt=(function(){var K={EOF:1,parseError:function(s,l){if(this.yy.parser)this.yy.parser.parseError(s,l);else throw new Error(s)},setInput:function(n,s){return this.yy=s||this.yy||{},this._input=n,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 n=this._input[0];this.yytext+=n,this.yyleng++,this.offset++,this.match+=n,this.matched+=n;var s=n.match(/(?:\r\n?|\n).*/g);return s?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),n},unput:function(n){var s=n.length,l=n.split(/(?:\r\n?|\n)/g);this._input=n+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-s),this.offset-=s;var o=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),l.length-1&&(this.yylineno-=l.length-1);var T=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:l?(l.length===o.length?this.yylloc.first_column:0)+o[o.length-l.length].length-l[0].length:this.yylloc.first_column-s},this.options.ranges&&(this.yylloc.range=[T[0],T[0]+this.yyleng-s]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
|
4
4
|
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(n){this.unput(this.match.slice(n))},pastInput:function(){var n=this.matched.substr(0,this.matched.length-this.match.length);return(n.length>20?"...":"")+n.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var n=this.match;return n.length<20&&(n+=this._input.substr(0,20-n.length)),(n.substr(0,20)+(n.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var n=this.pastInput(),s=new Array(n.length+1).join("-");return n+this.upcomingInput()+`
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { J as i } from "./layers.
|
|
2
|
-
import { m as o } from "./layers.
|
|
1
|
+
import { J as i } from "./layers.bhtLIrfi.js";
|
|
2
|
+
import { m as o } from "./layers.BZzKS_Ht.js";
|
|
3
3
|
const l = (s, t) => {
|
|
4
4
|
const r = s.append("rect");
|
|
5
5
|
if (r.attr("x", t.x), r.attr("y", t.y), r.attr("fill", t.fill), r.attr("stroke", t.stroke), r.attr("width", t.width), r.attr("height", t.height), t.name && r.attr("name", t.name), t.rx !== void 0 && r.attr("rx", t.rx), t.ry !== void 0 && r.attr("ry", t.ry), t.attrs !== void 0)
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "./layers.
|
|
1
|
+
import "./layers.bhtLIrfi.js";
|
|
2
2
|
var e = { paste: "Wklej", pasteAsPlaintext: "Wklej jako zwykły tekst", pasteCharts: "Wklej wykresy", selectAll: "Zaznacz wszystko", multiSelect: "Dodaj element do zaznaczenia", moveCanvas: "Przesuń obszar roboczy", cut: "Wytnij", copy: "Kopiuj", copyAsPng: "Skopiuj do schowka jako plik PNG", copyAsSvg: "Skopiuj do schowka jako plik SVG", copyText: "Skopiuj do schowka jako tekst", copySource: "Skopiuj źródło do schowka", convertToCode: "Skonwertuj do kodu", bringForward: "Przenieś wyżej", sendToBack: "Przenieś na spód", bringToFront: "Przenieś na wierzch", sendBackward: "Przenieś niżej", delete: "Usuń", copyStyles: "Kopiuj style", pasteStyles: "Wklej style", stroke: "Kolor obramowania", background: "Kolor wypełnienia", fill: "Wypełnienie", strokeWidth: "Grubość obramowania", strokeStyle: "Styl obrysu", strokeStyle_solid: "Pełny", strokeStyle_dashed: "Kreskowany", strokeStyle_dotted: "Kropkowany", sloppiness: "Styl kreski", opacity: "Przeźroczystość", textAlign: "Wyrównanie tekstu", edges: "Krawędzie", sharp: "Ostry", round: "Zaokrąglij", arrowheads: "Groty", arrowhead_none: "Brak", arrowhead_arrow: "Strzałka", arrowhead_bar: "Kreska", arrowhead_circle: "Okrąg", arrowhead_circle_outline: "Okrąg (obrys)", arrowhead_triangle: "Trójkąt", arrowhead_triangle_outline: "Trójkąt (obrys)", arrowhead_diamond: "Romb", arrowhead_diamond_outline: "Romb (obrys)", fontSize: "Rozmiar tekstu", fontFamily: "Krój pisma", addWatermark: 'Dodaj "Zrobione w Excalidraw"', handDrawn: "Odręczny", normal: "Normalny", code: "Kod", small: "Mały", medium: "Średni", large: "Duży", veryLarge: "Bardzo duży", solid: "Pełne", hachure: "Linie", zigzag: "Zygzak", crossHatch: "Zakreślone", thin: "Cienkie", bold: "Pogrubione", left: "Do lewej", center: "Do środka", right: "Do prawej", extraBold: "Ekstra pogrubione", architect: "Dokładny", artist: "Artystyczny", cartoonist: "Rysunkowy", fileTitle: "Nazwa pliku", colorPicker: "Paleta kolorów", canvasColors: "Używane na płótnie", canvasBackground: "Kolor dokumentu", drawingCanvas: "Obszar roboczy", layers: "Warstwy", actions: "Akcje", language: "Język", liveCollaboration: "Współpraca w czasie rzeczywistym...", duplicateSelection: "Powiel", untitled: "Bez tytułu", name: "Nazwa", yourName: "Twoje imię", madeWithExcalidraw: "Zrobione w Excalidraw", group: "Zgrupuj wybrane", ungroup: "Rozgrupuj wybrane", collaborators: "Współtwórcy", showGrid: "Pokaż siatkę", addToLibrary: "Dodaj do biblioteki", removeFromLibrary: "Usuń z biblioteki", libraryLoadingMessage: "Wczytywanie biblioteki…", libraries: "Przeglądaj biblioteki", loadingScene: "Wczytywanie sceny…", align: "Wyrównaj", alignTop: "Wyrównaj do góry", alignBottom: "Wyrównaj do dołu", alignLeft: "Wyrównaj do lewej", alignRight: "Wyrównaj do prawej", centerVertically: "Wyśrodkuj w pionie", centerHorizontally: "Wyśrodkuj w poziomie", distributeHorizontally: "Rozłóż poziomo", distributeVertically: "Rozłóż pionowo", flipHorizontal: "Odwróć w poziomie", flipVertical: "Odwróć w pionie", viewMode: "Tryb widoku", share: "Udostępnij", showStroke: "Pokaż próbnik kolorów obrysu", showBackground: "Pokaż próbnik koloru tła", toggleTheme: "Przełącz motyw", personalLib: "Biblioteka prywatna", excalidrawLib: "Biblioteka Excalidraw", decreaseFontSize: "Zmniejsz rozmiar czcionki", increaseFontSize: "Zwiększ rozmiar czcionki", unbindText: "Odłącz tekst od kontenera", bindText: "Połącz tekst z kontenerem", createContainerFromText: "Zawijaj tekst w kontenerze", link: { edit: "Edytuj łącze", editEmbed: "Edytuj i osadź link", create: "Utwórz łącze", createEmbed: "Stwórz i osadź link", label: "Łącze", labelEmbed: "Podlinkuj i osadź", empty: "Nie ustawiono linku" }, lineEditor: { edit: "Edytuj linię", exit: "Wyjdź z edytora linii" }, elementLock: { lock: "Zablokuj", unlock: "Odblokuj", lockAll: "Zablokuj wszystko", unlockAll: "Odblokuj wszystko" }, statusPublished: "Opublikowano", sidebarLock: "Panel boczny zawsze otwarty", selectAllElementsInFrame: "Zaznacz wszystkie elementy w ramce", removeAllElementsFromFrame: "Usuń wszystkie elementy z ramki", eyeDropper: "Wybierz kolor z płótna", textToDiagram: "Tekst do diagramu", prompt: "" }, a = { noItems: "Nie dodano jeszcze żadnych elementów...", hint_emptyLibrary: "Wybierz element na płótnie, aby go tutaj dodać, lub zainstaluj bibliotekę z poniższego publicznego repozytorium.", hint_emptyPrivateLibrary: "Wybierz element, aby dodać go tutaj." }, o = { clearReset: "Wyczyść dokument i zresetuj kolor dokumentu", exportJSON: "Eksportuj do pliku", exportImage: "Eksportuj obraz...", export: "Zapisz jako...", copyToClipboard: "Skopiuj do schowka", save: "Zapisz do bieżącego pliku", saveAs: "Zapisz jako", load: "Otwórz", getShareableLink: "Udostępnij", close: "Zamknij", selectLanguage: "Wybierz język", scrollBackToContent: "Wróć do obszaru roboczego", zoomIn: "Powiększ", zoomOut: "Pomniejsz", resetZoom: "Zresetuj powiększenie", menu: "Menu", done: "Gotowe", edit: "Edytuj", undo: "Cofnij", redo: "Przywróć", resetLibrary: "Resetuj bibliotekę", createNewRoom: "Utwórz nowy pokój", fullScreen: "Pełny ekran", darkMode: "Ciemny motyw", lightMode: "Jasny motyw", zenMode: "Tryb Zen", objectsSnapMode: "Przyciąganie do obiektów", exitZenMode: "Wyjdź z trybu Zen", cancel: "Anuluj", clear: "Wyczyść", remove: "Usuń", embed: "Przełącz osadzenie", publishLibrary: "Opublikuj", submit: "Prześlij", confirm: "Zatwierdź", embeddableInteractionButton: "Kliknij, aby wejść w interakcję" }, i = { clearReset: "To spowoduje usunięcie wszystkiego z dokumentu. Czy chcesz kontynuować?", couldNotCreateShareableLink: "Wystąpił błąd przy generowaniu linka do udostępniania.", couldNotCreateShareableLinkTooBig: "Nie można utworzyć linku do udostępnienia: scena jest za duża", couldNotLoadInvalidFile: "Nie udało się otworzyć pliku. Wybrany plik jest nieprawidłowy.", importBackendFailed: "Wystąpił błąd podczas importowania pliku.", cannotExportEmptyCanvas: "Najpierw musisz coś narysować, aby zapisać dokument.", couldNotCopyToClipboard: "Nie udało się skopiować do schowka.", decryptFailed: "Nie udało się odszyfrować danych.", uploadedSecurly: "By zapewnić Ci prywatność, udostępnianie projektu jest zabezpieczone szyfrowaniem end-to-end, co oznacza, że poza tobą i osobą z którą podzielisz się linkiem, nikt nie ma dostępu do tego co udostępniasz.", loadSceneOverridePrompt: "Wczytanie zewnętrznego rysunku zastąpi istniejącą zawartość. Czy chcesz kontynuować?", collabStopOverridePrompt: `Zatrzymanie sesji nadpisze poprzedni, zapisany lokalnie rysunek. Czy jesteś pewien?
|
|
3
3
|
|
|
4
4
|
(Jeśli chcesz zachować swój lokalny rysunek, po prostu zamknij zakładkę przeglądarki.)`, errorAddingToLibrary: "Nie udało się dodać elementu do biblioteki", errorRemovingFromLibrary: "Nie udało się usunąć elementu z biblioteki", confirmAddLibrary: "To doda {{numShapes}} kształtów do twojej biblioteki. Jesteś pewien?", imageDoesNotContainScene: "Ten obraz nie zawiera żadnych informacji o scenie. Czy włączyłeś osadzanie sceny podczas eksportu?", cannotRestoreFromImage: "Scena nie mogła zostać przywrócona z pliku obrazu", invalidSceneUrl: "Nie udało się zaimportować sceny z podanego adresu URL. Jest ona wadliwa lub nie zawiera poprawnych danych Excalidraw w formacie JSON.", resetLibrary: "To wyczyści twoją bibliotekę. Jesteś pewien?", removeItemsFromsLibrary: "Usunąć {{count}} element(ów) z biblioteki?", invalidEncryptionKey: "Klucz szyfrowania musi składać się z 22 znaków. Współpraca na żywo jest wyłączona.", collabOfflineWarning: `Brak połączenia z Internetem.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const k=require("./layers.
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const k=require("./layers.CdW7OZ6z.js"),R=require("./layers.dcx5hh3X.js");require("./layers.pmaa8paI.js");require("lodash-es/memoize.js");require("lodash-es/merge.js");require("lodash-es/isEmpty.js");const Q=require("./layers.veXJFa7R.js");var X=(function(){var t=function(p,n,r,a){for(r=r||{},a=p.length;a--;r[p[a]]=n);return r},e=[6,8,10,11,12,14,16,17,18],i=[1,9],l=[1,10],s=[1,11],h=[1,12],c=[1,13],f=[1,14],y={trace:function(){},yy:{},symbols_:{error:2,start:3,journey:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,taskName:18,taskData:19,$accept:0,$end:1},terminals_:{2:"error",4:"journey",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",18:"taskName",19:"taskData"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,2]],performAction:function(n,r,a,u,d,o,T){var _=o.length-1;switch(d){case 1:return o[_-1];case 2:this.$=[];break;case 3:o[_-1].push(o[_]),this.$=o[_-1];break;case 4:case 5:this.$=o[_];break;case 6:case 7:this.$=[];break;case 8:u.setDiagramTitle(o[_].substr(6)),this.$=o[_].substr(6);break;case 9:this.$=o[_].trim(),u.setAccTitle(this.$);break;case 10:case 11:this.$=o[_].trim(),u.setAccDescription(this.$);break;case 12:u.addSection(o[_].substr(8)),this.$=o[_].substr(8);break;case 13:u.addTask(o[_-1],o[_]),this.$="task";break}},table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:i,12:l,14:s,16:h,17:c,18:f},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:15,11:i,12:l,14:s,16:h,17:c,18:f},t(e,[2,5]),t(e,[2,6]),t(e,[2,8]),{13:[1,16]},{15:[1,17]},t(e,[2,11]),t(e,[2,12]),{19:[1,18]},t(e,[2,4]),t(e,[2,9]),t(e,[2,10]),t(e,[2,13])],defaultActions:{},parseError:function(n,r){if(r.recoverable)this.trace(n);else{var a=new Error(n);throw a.hash=r,a}},parse:function(n){var r=this,a=[0],u=[],d=[null],o=[],T=this.table,_="",N=0,Z=0,ot=2,J=1,lt=o.slice.call(arguments,1),x=Object.create(this.lexer),C={yy:{}};for(var z in this.yy)Object.prototype.hasOwnProperty.call(this.yy,z)&&(C.yy[z]=this.yy[z]);x.setInput(n,C.yy),C.yy.lexer=x,C.yy.parser=this,typeof x.yylloc>"u"&&(x.yylloc={});var O=x.yylloc;o.push(O);var ct=x.options&&x.options.ranges;typeof C.yy.parseError=="function"?this.parseError=C.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ht(){var M;return M=u.pop()||x.lex()||J,typeof M!="number"&&(M instanceof Array&&(u=M,M=u.pop()),M=r.symbols_[M]||M),M}for(var b,E,v,Y,P={},q,$,K,B;;){if(E=a[a.length-1],this.defaultActions[E]?v=this.defaultActions[E]:((b===null||typeof b>"u")&&(b=ht()),v=T[E]&&T[E][b]),typeof v>"u"||!v.length||!v[0]){var H="";B=[];for(q in T[E])this.terminals_[q]&&q>ot&&B.push("'"+this.terminals_[q]+"'");x.showPosition?H="Parse error on line "+(N+1)+`:
|
|
2
2
|
`+x.showPosition()+`
|
|
3
3
|
Expecting `+B.join(", ")+", got '"+(this.terminals_[b]||b)+"'":H="Parse error on line "+(N+1)+": Unexpected "+(b==J?"end of input":"'"+(this.terminals_[b]||b)+"'"),this.parseError(H,{text:x.match,token:this.terminals_[b]||b,line:x.yylineno,loc:O,expected:B})}if(v[0]instanceof Array&&v.length>1)throw new Error("Parse Error: multiple actions possible at state: "+E+", token: "+b);switch(v[0]){case 1:a.push(b),d.push(x.yytext),o.push(x.yylloc),a.push(v[1]),b=null,Z=x.yyleng,_=x.yytext,N=x.yylineno,O=x.yylloc;break;case 2:if($=this.productions_[v[1]][1],P.$=d[d.length-$],P._$={first_line:o[o.length-($||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-($||1)].first_column,last_column:o[o.length-1].last_column},ct&&(P._$.range=[o[o.length-($||1)].range[0],o[o.length-1].range[1]]),Y=this.performAction.apply(P,[_,Z,N,C.yy,v[1],d,o].concat(lt)),typeof Y<"u")return Y;$&&(a=a.slice(0,-1*$*2),d=d.slice(0,-1*$),o=o.slice(0,-1*$)),a.push(this.productions_[v[1]][0]),d.push(P.$),o.push(P._$),K=T[a[a.length-2]][a[a.length-1]],a.push(K);break;case 3:return!0}}return!0}},m=(function(){var p={EOF:1,parseError:function(r,a){if(this.yy.parser)this.yy.parser.parseError(r,a);else throw new Error(r)},setInput:function(n,r){return this.yy=r||this.yy||{},this._input=n,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 n=this._input[0];this.yytext+=n,this.yyleng++,this.offset++,this.match+=n,this.matched+=n;var r=n.match(/(?:\r\n?|\n).*/g);return r?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),n},unput:function(n){var r=n.length,a=n.split(/(?:\r\n?|\n)/g);this._input=n+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-r),this.offset-=r;var u=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),a.length-1&&(this.yylineno-=a.length-1);var d=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:a?(a.length===u.length?this.yylloc.first_column:0)+u[u.length-a.length].length-a[0].length:this.yylloc.first_column-r},this.options.ranges&&(this.yylloc.range=[d[0],d[0]+this.yyleng-r]),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(n){this.unput(this.match.slice(n))},pastInput:function(){var n=this.matched.substr(0,this.matched.length-this.match.length);return(n.length>20?"...":"")+n.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var n=this.match;return n.length<20&&(n+=this._input.substr(0,20-n.length)),(n.substr(0,20)+(n.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var n=this.pastInput(),r=new Array(n.length+1).join("-");return n+this.upcomingInput()+`
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),a=require("react"),g=require("react-i18next"),T=require("@lexical/react/LexicalComposerContext"),P=require("lexical"),d=require("./layers.BXWDzDej.js"),u=require("@mantine/core");function w({onAdd:e,label:n,disabled:c,tooltip:r}){const o=s.jsx(u.ActionIcon,{variant:"subtle",color:"gray",size:"sm",radius:"sm",className:"tabs-block__add","data-testid":"tabs-add","aria-label":n,"aria-disabled":c?"true":void 0,"data-disabled":c||void 0,onMouseDown:t=>t.preventDefault(),onClick:t=>{if(c){t.preventDefault();return}e()},children:s.jsx(d.HugeiconsIcon,{icon:d.T6,size:14})});return r?s.jsx(u.Tooltip,{label:r,position:"top",withArrow:!0,openDelay:300,children:o}):o}function E({tab:e,isActive:n,containerKey:c,onActivate:r,readOnly:o}){const[t]=T.useLexicalComposerContext(),{t:m}=g.useTranslation(),[f,p]=a.useState(!1),[b,l]=a.useState(e.title),[_,h]=a.useState(!1);a.useEffect(()=>{l(e.title)},[e.title]);const x=a.useCallback(()=>{const i=b.trim();i&&i!==e.title?d.dispatchRenameTab(t,c,e.id,i):l(e.title),p(!1)},[t,c,e.id,e.title,b]),C=a.useCallback(()=>{l(e.title),p(!1)},[e.title]),j=a.useCallback(i=>{i.key==="Enter"?(i.preventDefault(),x()):i.key==="Escape"&&(i.preventDefault(),C())},[x,C]),y=a.useCallback(()=>{f||r()},[f,r]),A=a.useCallback(i=>{o||(i.stopPropagation(),p(!0))},[o]),S=a.useCallback(i=>{o||(i.preventDefault(),i.stopPropagation(),h(!0))},[o]),N=a.useCallback(()=>{h(!1),p(!0)},[]),D=a.useCallback(()=>{h(!1),d.dispatchRemoveTab(t,c,e.id)},[t,c,e.id]);return s.jsxs(u.Popover,{opened:_,onChange:h,position:"bottom-start",shadow:"md",withinPortal:!0,trapFocus:!1,closeOnClickOutside:!0,closeOnEscape:!0,children:[s.jsx(u.Popover.Target,{children:s.jsx("span",{className:"tabs-block__tab","data-active":n,"data-testid":"tabs-tab","data-tab-id":e.id,onClick:y,onDoubleClick:A,onContextMenu:S,children:f?s.jsx(u.TextInput,{size:"xs",variant:"unstyled",value:b,onChange:i=>l(i.currentTarget.value),onBlur:x,onKeyDown:j,autoFocus:!0,classNames:{input:"tabs-block__rename-input"},styles:{input:{width:`${Math.max(b.length,3)}ch`}},"data-testid":"tabs-rename-input"}):s.jsx("span",{className:"tabs-block__tab-label",children:e.title})})}),s.jsx(u.Popover.Dropdown,{p:4,children:s.jsxs("div",{className:"tabs-block__menu",children:[s.jsx(u.UnstyledButton,{className:"tabs-block__menu-item",onClick:N,"data-testid":"tabs-menu-rename",children:m("editor.menu.other.tabs.actions.rename")}),s.jsx(u.UnstyledButton,{className:"tabs-block__menu-item tabs-block__menu-item--danger",onClick:D,"data-testid":"tabs-menu-delete",children:m("editor.menu.other.tabs.actions.delete")})]})})]})}function v(e,n){let c={tabs:[],activeTabId:"",containerKey:""};return e.getEditorState().read(()=>{const r=P.$getNodeByKey(n);if(!r||!d.$isTabsHeaderNode(r))return;const o=r.getParent();d.$isTabsContainerNode(o)&&(c={tabs:o.getTabs(),activeTabId:o.getActiveTabId(),containerKey:o.getKey()})}),c}function k(e){e.stopPropagation()}function I({nodeKey:e}){const[n]=T.useLexicalComposerContext(),{t:c}=g.useTranslation(),{disable:r}=a.useContext(d.Context),o=!!r,[t,m]=a.useState(()=>v(n,e));a.useEffect(()=>(m(v(n,e)),n.registerUpdateListener(()=>{m(v(n,e))})),[n,e]);const f=a.useCallback(()=>{t.containerKey&&d.dispatchAddTab(n,t.containerKey)},[n,t.containerKey]),p=a.useCallback(l=>{t.containerKey&&d.dispatchSetActiveTab(n,t.containerKey,l)},[n,t.containerKey]);if(t.tabs.length===0||!t.containerKey)return null;const b=t.tabs.length<d.MAX_TABS;return s.jsxs("div",{className:"tabs-block__header",contentEditable:!1,onMouseDown:k,onClick:k,children:[s.jsx("div",{className:"tabs-block__tabs","data-testid":"tabs-header",children:t.tabs.map(l=>s.jsx(E,{tab:l,isActive:l.id===t.activeTabId,containerKey:t.containerKey,onActivate:()=>p(l.id),readOnly:o},l.id))}),!o&&s.jsx(w,{onAdd:f,label:c("editor.menu.other.tabs.actions.add"),disabled:!b,tooltip:b?void 0:c("editor.menu.other.tabs.actions.maxReached",{max:d.MAX_TABS})})]})}exports.default=I;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { s as P, d as N, p as W } from "./layers.
|
|
2
|
-
import {
|
|
1
|
+
import { s as P, d as N, p as W } from "./layers.B6QJltN6.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.BZzKS_Ht.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.bhtLIrfi.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.BgCKcFR4.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 +1 @@
|
|
|
1
|
-
"use strict";const P=require("lodash-es"),J=require("./layers.Cyzu9PKQ.js"),k=require("./layers.BLd2spTm.js"),u=require("./layers.BY14uOuz.js"),i=require("./layers.tb-M7gOD.js"),j=require("./layers.C8a1nCvT.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.Dxs1Bz9v.js"),i=require("./layers.CdW7OZ6z.js"),j=require("./layers.CO9knj3N.js");function G(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const m=G(P);function x(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:M(e),edges:F(e)};return m.isUndefined(e.graph())||(t.value=m.clone(e.graph())),t}function M(e){return m.map(e.nodes(),function(t){var n=e.node(t),r=e.parent(t),s={v:t};return m.isUndefined(n)||(s.value=n),m.isUndefined(r)||(s.parent=r),s})}function F(e){return m.map(e.edges(),function(t){var n=e.edge(t),r={v:t.v,w:t.w};return m.isUndefined(t.name)||(r.name=t.name),m.isUndefined(n)||(r.value=n),r})}let a={},w={},p={};const q=()=>{w={},p={},a={}},X=(e,t)=>(i.log$1.trace("In isDescendant",t," ",e," = ",w[t].includes(e)),!!w[t].includes(e)),_=(e,t)=>(i.log$1.info("Descendants of ",t," is ",w[t]),i.log$1.info("Edge is ",e),e.v===t||e.w===t?!1:w[t]?w[t].includes(e.v)||X(e.v,t)||X(e.w,t)||w[t].includes(e.w):(i.log$1.debug("Tilt, ",t,",not in descendants"),!1)),B=(e,t,n,r)=>{i.log$1.warn("Copying children of ",e,"root",r,"data",t.node(e),r);const s=t.children(e)||[];e!==r&&s.push(e),i.log$1.warn("Copying (nodes) clusterId",e,"nodes",s),s.forEach(o=>{if(t.children(o).length>0)B(o,t,n,r);else{const f=t.node(o);i.log$1.info("cp ",o," to ",r," with parent ",e),n.setNode(o,f),r!==t.parent(o)&&(i.log$1.warn("Setting parent",o,t.parent(o)),n.setParent(o,t.parent(o))),e!==r&&o!==e?(i.log$1.debug("Setting parent",o,e),n.setParent(o,e)):(i.log$1.info("In copy ",e,"root",r,"data",t.node(e),r),i.log$1.debug("Not Setting parent for node=",o,"cluster!==rootId",e!==r,"node!==clusterId",o!==e));const g=t.edges(o);i.log$1.debug("Copying Edges",g),g.forEach(d=>{i.log$1.info("Edge",d);const h=t.edge(d.v,d.w,d.name);i.log$1.info("Edge data",h,r);try{_(d,r)?(i.log$1.info("Copying as ",d.v,d.w,h,d.name),n.setEdge(d.v,d.w,h,d.name),i.log$1.info("newGraph edges ",n.edges(),n.edge(n.edges()[0]))):i.log$1.info("Skipping copy of edge ",d.v,"-->",d.w," rootId: ",r," clusterId:",e)}catch($){i.log$1.error($)}})}i.log$1.debug("Removing node",o),t.removeNode(o)})},D=(e,t)=>{const n=t.children(e);let r=[...n];for(const s of n)p[s]=e,r=[...r,...D(s,t)];return r},C=(e,t)=>{i.log$1.trace("Searching",e);const n=t.children(e);if(i.log$1.trace("Searching children of id ",e,n),n.length<1)return i.log$1.trace("This is a valid node",e),e;for(const r of n){const s=C(r,t);if(s)return i.log$1.trace("Found replacement for",e," => ",s),s}},S=e=>!a[e]||!a[e].externalConnections?e:a[e]?a[e].id:e,U=(e,t)=>{if(!e||t>10){i.log$1.debug("Opting out, no graph ");return}else i.log$1.debug("Opting in, graph ");e.nodes().forEach(function(n){e.children(n).length>0&&(i.log$1.warn("Cluster identified",n," Replacement id in edges: ",C(n,e)),w[n]=D(n,e),a[n]={id:C(n,e),clusterData:e.node(n)})}),e.nodes().forEach(function(n){const r=e.children(n),s=e.edges();r.length>0?(i.log$1.debug("Cluster identified",n,w),s.forEach(o=>{if(o.v!==n&&o.w!==n){const f=X(o.v,n),g=X(o.w,n);f^g&&(i.log$1.warn("Edge: ",o," leaves cluster ",n),i.log$1.warn("Descendants of XXX ",n,": ",w[n]),a[n].externalConnections=!0)}})):i.log$1.debug("Not a cluster ",n,w)});for(let n of Object.keys(a)){const r=a[n].id,s=e.parent(r);s!==n&&a[s]&&!a[s].externalConnections&&(a[n].id=s)}e.edges().forEach(function(n){const r=e.edge(n);i.log$1.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(n)),i.log$1.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(e.edge(n)));let s=n.v,o=n.w;if(i.log$1.warn("Fix XXX",a,"ids:",n.v,n.w,"Translating: ",a[n.v]," --- ",a[n.w]),a[n.v]&&a[n.w]&&a[n.v]===a[n.w]){i.log$1.warn("Fixing and trixing link to self - removing XXX",n.v,n.w,n.name),i.log$1.warn("Fixing and trixing - removing XXX",n.v,n.w,n.name),s=S(n.v),o=S(n.w),e.removeEdge(n.v,n.w,n.name);const f=n.w+"---"+n.v;e.setNode(f,{domId:f,id:f,labelStyle:"",labelText:r.label,padding:0,shape:"labelRect",style:""});const g=structuredClone(r),d=structuredClone(r);g.label="",g.arrowTypeEnd="none",d.label="",g.fromCluster=n.v,d.toCluster=n.v,e.setEdge(s,f,g,n.name+"-cyclic-special"),e.setEdge(f,o,d,n.name+"-cyclic-special")}else if(a[n.v]||a[n.w]){if(i.log$1.warn("Fixing and trixing - removing XXX",n.v,n.w,n.name),s=S(n.v),o=S(n.w),e.removeEdge(n.v,n.w,n.name),s!==n.v){const f=e.parent(s);a[f].externalConnections=!0,r.fromCluster=n.v}if(o!==n.w){const f=e.parent(o);a[f].externalConnections=!0,r.toCluster=n.w}i.log$1.warn("Fix Replacing with XXX",s,o,n.name),e.setEdge(s,o,r,n.name)}}),i.log$1.warn("Adjusted Graph",x(e)),T(e,0),i.log$1.trace(a)},T=(e,t)=>{if(i.log$1.warn("extractor - ",t,x(e),e.children("D")),t>10){i.log$1.error("Bailing out");return}let n=e.nodes(),r=!1;for(const s of n){const o=e.children(s);r=r||o.length>0}if(!r){i.log$1.debug("Done, no node has children",e.nodes());return}i.log$1.debug("Nodes = ",n,t);for(const s of n)if(i.log$1.debug("Extracting node",s,a,a[s]&&!a[s].externalConnections,!e.parent(s),e.node(s),e.children("D")," Depth ",t),!a[s])i.log$1.debug("Not a cluster",s,t);else if(!a[s].externalConnections&&e.children(s)&&e.children(s).length>0){i.log$1.warn("Cluster without external connections, without a parent and with children",s,t);let f=e.graph().rankdir==="TB"?"LR":"TB";a[s]&&a[s].clusterData&&a[s].clusterData.dir&&(f=a[s].clusterData.dir,i.log$1.warn("Fixing dir",a[s].clusterData.dir,f));const g=new k.Graph({multigraph:!0,compound:!0}).setGraph({rankdir:f,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});i.log$1.warn("Old graph before copy",x(e)),B(s,e,g,s),e.setNode(s,{clusterNode:!0,id:s,clusterData:a[s].clusterData,labelText:a[s].labelText,graph:g}),i.log$1.warn("New graph after copy node: (",s,")",x(g)),i.log$1.debug("Old graph after copy",x(e))}else i.log$1.warn("Cluster ** ",s," **not meeting the criteria !externalConnections:",!a[s].externalConnections," no parent: ",!e.parent(s)," children ",e.children(s)&&e.children(s).length>0,e.children("D"),t),i.log$1.debug(a);n=e.nodes(),i.log$1.warn("New list of nodes",n);for(const s of n){const o=e.node(s);i.log$1.warn(" Now next level",s,o),o.clusterNode&&T(o.graph,t+1)}},O=(e,t)=>{if(t.length===0)return[];let n=Object.assign(t);return t.forEach(r=>{const s=e.children(r),o=O(e,s);n=[...n,...o]}),n},A=e=>O(e,e.children()),H=(e,t)=>{i.log$1.info("Creating subgraph rect for ",t.id,t);const n=i.getConfig(),r=e.insert("g").attr("class","cluster"+(t.class?" "+t.class:"")).attr("id",t.id),s=r.insert("rect",":first-child"),o=i.evaluate(n.flowchart.htmlLabels),f=r.insert("g").attr("class","cluster-label"),g=t.labelType==="markdown"?j.createText(f,t.labelText,{style:t.labelStyle,useHtmlLabels:o}):f.node().appendChild(u.createLabel$1(t.labelText,t.labelStyle,void 0,!0));let d=g.getBBox();if(i.evaluate(n.flowchart.htmlLabels)){const l=g.children[0],c=i.select(g);d=l.getBoundingClientRect(),c.attr("width",d.width),c.attr("height",d.height)}const h=0*t.padding,$=h/2,y=t.width<=d.width+h?d.width+h:t.width;t.width<=d.width+h?t.diff=(d.width-t.width)/2-t.padding/2:t.diff=-t.padding/2,i.log$1.trace("Data ",t,JSON.stringify(t)),s.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-y/2).attr("y",t.y-t.height/2-$).attr("width",y).attr("height",t.height+h);const{subGraphTitleTopMargin:N}=u.getSubGraphTitleMargins(n);o?f.attr("transform",`translate(${t.x-d.width/2}, ${t.y-t.height/2+N})`):f.attr("transform",`translate(${t.x}, ${t.y-t.height/2+N})`);const b=s.node().getBBox();return t.width=b.width,t.height=b.height,t.intersect=function(l){return u.intersectRect$1(t,l)},r},V=(e,t)=>{const n=e.insert("g").attr("class","note-cluster").attr("id",t.id),r=n.insert("rect",":first-child"),s=0*t.padding,o=s/2;r.attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-t.width/2-o).attr("y",t.y-t.height/2-o).attr("width",t.width+s).attr("height",t.height+s).attr("fill","none");const f=r.node().getBBox();return t.width=f.width,t.height=f.height,t.intersect=function(g){return u.intersectRect$1(t,g)},n},z=(e,t)=>{const n=i.getConfig(),r=e.insert("g").attr("class",t.classes).attr("id",t.id),s=r.insert("rect",":first-child"),o=r.insert("g").attr("class","cluster-label"),f=r.append("rect"),g=o.node().appendChild(u.createLabel$1(t.labelText,t.labelStyle,void 0,!0));let d=g.getBBox();if(i.evaluate(n.flowchart.htmlLabels)){const l=g.children[0],c=i.select(g);d=l.getBoundingClientRect(),c.attr("width",d.width),c.attr("height",d.height)}d=g.getBBox();const h=0*t.padding,$=h/2,y=t.width<=d.width+t.padding?d.width+t.padding:t.width;t.width<=d.width+t.padding?t.diff=(d.width+t.padding*0-t.width)/2:t.diff=-t.padding/2,s.attr("class","outer").attr("x",t.x-y/2-$).attr("y",t.y-t.height/2-$).attr("width",y+h).attr("height",t.height+h),f.attr("class","inner").attr("x",t.x-y/2-$).attr("y",t.y-t.height/2-$+d.height-1).attr("width",y+h).attr("height",t.height+h-d.height-3);const{subGraphTitleTopMargin:N}=u.getSubGraphTitleMargins(n);o.attr("transform",`translate(${t.x-d.width/2}, ${t.y-t.height/2-t.padding/3+(i.evaluate(n.flowchart.htmlLabels)?5:3)+N})`);const b=s.node().getBBox();return t.height=b.height,t.intersect=function(l){return u.intersectRect$1(t,l)},r},W=(e,t)=>{const n=e.insert("g").attr("class",t.classes).attr("id",t.id),r=n.insert("rect",":first-child"),s=0*t.padding,o=s/2;r.attr("class","divider").attr("x",t.x-t.width/2-o).attr("y",t.y-t.height/2).attr("width",t.width+s).attr("height",t.height+s);const f=r.node().getBBox();return t.width=f.width,t.height=f.height,t.diff=-t.padding/2,t.intersect=function(g){return u.intersectRect$1(t,g)},n},K={rect:H,roundedWithTitle:z,noteGroup:V,divider:W};let R={};const Q=(e,t)=>{i.log$1.trace("Inserting cluster");const n=t.shape||"rect";R[t.id]=K[n](e,t)},Y=()=>{R={}},L=async(e,t,n,r,s,o)=>{i.log$1.info("Graph in recursive render: XXX",x(t),s);const f=t.graph().rankdir;i.log$1.trace("Dir in recursive render - dir:",f);const g=e.insert("g").attr("class","root");t.nodes()?i.log$1.info("Recursive render XXX",t.nodes()):i.log$1.info("No nodes found for",t),t.edges().length>0&&i.log$1.trace("Recursive edges",t.edge(t.edges()[0]));const d=g.insert("g").attr("class","clusters"),h=g.insert("g").attr("class","edgePaths"),$=g.insert("g").attr("class","edgeLabels"),y=g.insert("g").attr("class","nodes");await Promise.all(t.nodes().map(async function(l){const c=t.node(l);if(s!==void 0){const v=JSON.parse(JSON.stringify(s.clusterData));i.log$1.info("Setting data for cluster XXX (",l,") ",v,s),t.setNode(s.id,v),t.parent(l)||(i.log$1.trace("Setting parent",l,s.id),t.setParent(l,s.id,v))}if(i.log$1.info("(Insert) Node XXX"+l+": "+JSON.stringify(t.node(l))),c&&c.clusterNode){i.log$1.info("Cluster identified",l,c.width,t.node(l));const v=await L(y,c.graph,n,r,t.node(l),o),E=v.elem;u.updateNodeBounds(c,E),c.diff=v.diff||0,i.log$1.info("Node bounds (abc123)",l,c,c.width,c.x,c.y),u.setNodeElem(E,c),i.log$1.warn("Recursive render complete ",E,c)}else t.children(l).length>0?(i.log$1.info("Cluster - the non recursive path XXX",l,c.id,c,t),i.log$1.info(C(c.id,t)),a[c.id]={id:C(c.id,t),node:c}):(i.log$1.info("Node - the non recursive path",l,c.id,c),await u.insertNode(y,t.node(l),f))})),t.edges().forEach(function(l){const c=t.edge(l.v,l.w,l.name);i.log$1.info("Edge "+l.v+" -> "+l.w+": "+JSON.stringify(l)),i.log$1.info("Edge "+l.v+" -> "+l.w+": ",l," ",JSON.stringify(t.edge(l))),i.log$1.info("Fix",a,"ids:",l.v,l.w,"Translating: ",a[l.v],a[l.w]),u.insertEdgeLabel($,c)}),t.edges().forEach(function(l){i.log$1.info("Edge "+l.v+" -> "+l.w+": "+JSON.stringify(l))}),i.log$1.info("#############################################"),i.log$1.info("### Layout ###"),i.log$1.info("#############################################"),i.log$1.info(t),J.layout(t),i.log$1.info("Graph after layout:",x(t));let N=0;const{subGraphTitleTotalMargin:b}=u.getSubGraphTitleMargins(o);return A(t).forEach(function(l){const c=t.node(l);i.log$1.info("Position "+l+": "+JSON.stringify(t.node(l))),i.log$1.info("Position "+l+": ("+c.x,","+c.y,") width: ",c.width," height: ",c.height),c&&c.clusterNode?(c.y+=b,u.positionNode(c)):t.children(l).length>0?(c.height+=b,Q(d,c),a[c.id].node=c):(c.y+=b/2,u.positionNode(c))}),t.edges().forEach(function(l){const c=t.edge(l);i.log$1.info("Edge "+l.v+" -> "+l.w+": "+JSON.stringify(c),c),c.points.forEach(E=>E.y+=b/2);const v=u.insertEdge(h,l,c,a,n,t,r);u.positionEdgeLabel(c,v)}),t.nodes().forEach(function(l){const c=t.node(l);i.log$1.info(l,c.type,c.diff),c.type==="group"&&(N=c.diff)}),{elem:g,diff:N}},Z=async(e,t,n,r,s)=>{u.insertMarkers$1(e,n,r,s),u.clear$1(),u.clear(),Y(),q(),i.log$1.warn("Graph at first:",JSON.stringify(x(t))),U(t),i.log$1.warn("Graph after:",JSON.stringify(x(t)));const o=i.getConfig();await L(e,t,r,s,void 0,o)};exports.render=Z;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./layers.
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./layers.pmaa8paI.js");var e={paste:"Einfügen",pasteAsPlaintext:"Als reinen Text einfügen",pasteCharts:"Diagramme einfügen",selectAll:"Alle auswählen",multiSelect:"Element zur Auswahl hinzufügen",moveCanvas:"Leinwand verschieben",cut:"Ausschneiden",copy:"Kopieren",copyAsPng:"In Zwischenablage kopieren (PNG)",copyAsSvg:"In Zwischenablage kopieren (SVG)",copyText:"In die Zwischenablage als Text kopieren",copySource:"Quelle in Zwischenablage kopieren",convertToCode:"In Code konvertieren",bringForward:"Nach vorne",sendToBack:"In den Hintergrund",bringToFront:"In den Vordergrund",sendBackward:"Nach hinten",delete:"Löschen",copyStyles:"Formatierung kopieren",pasteStyles:"Formatierung übernehmen",stroke:"Strich",background:"Hintergrund",fill:"Füllung",strokeWidth:"Strichstärke",strokeStyle:"Konturstil",strokeStyle_solid:"Durchgezogen",strokeStyle_dashed:"Gestrichelt",strokeStyle_dotted:"Gepunktet",sloppiness:"Sauberkeit",opacity:"Deckkraft",textAlign:"Textausrichtung",edges:"Kanten",sharp:"Scharf",round:"Rund",arrowheads:"Pfeilspitzen",arrowhead_none:"Keine",arrowhead_arrow:"Pfeil",arrowhead_bar:"Balken",arrowhead_circle:"Kreis",arrowhead_circle_outline:"Kreis (Umrandung)",arrowhead_triangle:"Dreieck",arrowhead_triangle_outline:"Dreieck (Umrandung)",arrowhead_diamond:"Raute",arrowhead_diamond_outline:"Raute (Umrandung)",fontSize:"Schriftgröße",fontFamily:"Schriftfamilie",addWatermark:'"Made with Excalidraw" hinzufügen',handDrawn:"Handgezeichnet",normal:"Normal",code:"Code",small:"Klein",medium:"Mittel",large:"Groß",veryLarge:"Sehr groß",solid:"Deckend",hachure:"Schraffiert",zigzag:"Zickzack",crossHatch:"Kreuzschraffiert",thin:"Dünn",bold:"Fett",left:"Links",center:"Zentriert",right:"Rechts",extraBold:"Extra Fett",architect:"Architekt",artist:"Künstler",cartoonist:"Karikaturist",fileTitle:"Dateiname",colorPicker:"Farbauswähler",canvasColors:"Auf Leinwand verwendet",canvasBackground:"Zeichenflächenhintergrund",drawingCanvas:"Leinwand",layers:"Ebenen",actions:"Aktionen",language:"Sprache",liveCollaboration:"Live-Zusammenarbeit...",duplicateSelection:"Duplizieren",untitled:"Unbenannt",name:"Name",yourName:"Dein Name",madeWithExcalidraw:"Made with Excalidraw",group:"Auswahl gruppieren",ungroup:"Gruppierung aufheben",collaborators:"Mitarbeitende",showGrid:"Raster anzeigen",addToLibrary:"Zur Bibliothek hinzufügen",removeFromLibrary:"Aus Bibliothek entfernen",libraryLoadingMessage:"Lade Bibliothek…",libraries:"Bibliotheken durchsuchen",loadingScene:"Lade Zeichnung…",align:"Ausrichten",alignTop:"Obere Kanten",alignBottom:"Untere Kanten",alignLeft:"Linke Kanten",alignRight:"Rechte Kanten",centerVertically:"Vertikal zentrieren",centerHorizontally:"Horizontal zentrieren",distributeHorizontally:"Horizontal verteilen",distributeVertically:"Vertikal verteilen",flipHorizontal:"Horizontal spiegeln",flipVertical:"Vertikal spiegeln",viewMode:"Ansichtsmodus",share:"Teilen",showStroke:"Auswahl für Strichfarbe anzeigen",showBackground:"Hintergrundfarbe auswählen",toggleTheme:"Design umschalten",personalLib:"Persönliche Bibliothek",excalidrawLib:"Excalidraw Bibliothek",decreaseFontSize:"Schriftgröße verkleinern",increaseFontSize:"Schrift vergrößern",unbindText:"Text lösen",bindText:"Text an Container binden",createContainerFromText:"Text in Container einbetten",link:{edit:"Link bearbeiten",editEmbed:"Link bearbeiten & einbetten",create:"Link erstellen",createEmbed:"Link erstellen & einbetten",label:"Link",labelEmbed:"Verlinken & einbetten",empty:"Kein Link festgelegt"},lineEditor:{edit:"Linie bearbeiten",exit:"Linieneditor verlassen"},elementLock:{lock:"Sperren",unlock:"Entsperren",lockAll:"Alle sperren",unlockAll:"Alle entsperren"},statusPublished:"Veröffentlicht",sidebarLock:"Seitenleiste offen lassen",selectAllElementsInFrame:"Alle Elemente im Rahmen auswählen",removeAllElementsFromFrame:"Alle Elemente aus dem Rahmen entfernen",eyeDropper:"Farbe von der Zeichenfläche auswählen",textToDiagram:"Text zu Diagramm",prompt:"Eingabe"},n={noItems:"Noch keine Elemente hinzugefügt...",hint_emptyLibrary:"Wähle ein Element auf der Zeichenfläche, um es hier hinzuzufügen. Oder installiere eine Bibliothek aus dem öffentlichen Verzeichnis.",hint_emptyPrivateLibrary:"Wähle ein Element von der Zeichenfläche, um es hier hinzuzufügen."},i={clearReset:"Zeichenfläche löschen & Hintergrundfarbe zurücksetzen",exportJSON:"In Datei exportieren",exportImage:"Exportiere Bild...",export:"Speichern als...",copyToClipboard:"In Zwischenablage kopieren",save:"In aktueller Datei speichern",saveAs:"Speichern unter",load:"Öffnen",getShareableLink:"Teilbaren Link erhalten",close:"Schließen",selectLanguage:"Sprache auswählen",scrollBackToContent:"Zurück zum Inhalt",zoomIn:"Vergrößern",zoomOut:"Verkleinern",resetZoom:"Zoom zurücksetzen",menu:"Menü",done:"Fertig",edit:"Bearbeiten",undo:"Rückgängig machen",redo:"Wiederholen",resetLibrary:"Bibliothek zurücksetzen",createNewRoom:"Neuen Raum erstellen",fullScreen:"Vollbildanzeige",darkMode:"Dunkles Design",lightMode:"Helles Design",zenMode:"Zen-Modus",objectsSnapMode:"Einrasten an Objekten",exitZenMode:"Zen-Modus verlassen",cancel:"Abbrechen",clear:"Löschen",remove:"Entfernen",embed:"Einbettung umschalten",publishLibrary:"Veröffentlichen",submit:"Absenden",confirm:"Bestätigen",embeddableInteractionButton:"Klicken, um zu interagieren"},r={clearReset:"Dies wird die ganze Zeichenfläche löschen. Bist du dir sicher?",couldNotCreateShareableLink:"Konnte keinen teilbaren Link erstellen.",couldNotCreateShareableLinkTooBig:"Konnte keinen teilbaren Link erstellen: Die Zeichnung ist zu groß",couldNotLoadInvalidFile:"Ungültige Datei konnte nicht geladen werden",importBackendFailed:"Import vom Server ist fehlgeschlagen.",cannotExportEmptyCanvas:"Leere Zeichenfläche kann nicht exportiert werden.",couldNotCopyToClipboard:"Kopieren in die Zwischenablage fehlgeschlagen.",decryptFailed:"Daten konnten nicht entschlüsselt werden.",uploadedSecurly:"Der Upload wurde mit Ende-zu-Ende-Verschlüsselung gespeichert. Weder Excalidraw noch Dritte können den Inhalt einsehen.",loadSceneOverridePrompt:"Das Laden einer externen Zeichnung ersetzt den vorhandenen Inhalt. Möchtest du fortfahren?",collabStopOverridePrompt:`Das Stoppen der Sitzung wird deine vorherige, lokal gespeicherte Zeichnung überschreiben. Bist du dir sicher?
|
|
2
2
|
|
|
3
3
|
(Wenn du deine lokale Zeichnung behalten möchtest, schließe stattdessen den Browser-Tab.)`,errorAddingToLibrary:"Das Element konnte nicht zur Bibliothek hinzugefügt werden",errorRemovingFromLibrary:"Das Element konnte nicht aus der Bibliothek entfernt werden",confirmAddLibrary:"Dies fügt {{numShapes}} Form(en) zu deiner Bibliothek hinzu. Bist du dir sicher?",imageDoesNotContainScene:"Dieses Bild scheint keine Szenendaten zu enthalten. Hast Du das Einbetten der Szene während des Exports aktiviert?",cannotRestoreFromImage:"Die Zeichnung konnte aus dieser Bilddatei nicht wiederhergestellt werden",invalidSceneUrl:"Die Szene konnte nicht von der angegebenen URL importiert werden. Sie ist entweder fehlerhaft oder enthält keine gültigen Excalidraw JSON-Daten.",resetLibrary:"Dieses löscht deine Bibliothek. Bist du sicher?",removeItemsFromsLibrary:"{{count}} Element(e) aus der Bibliothek löschen?",invalidEncryptionKey:"Verschlüsselungsschlüssel muss 22 Zeichen lang sein. Die Live-Zusammenarbeit ist deaktiviert.",collabOfflineWarning:`Keine Internetverbindung verfügbar.
|
|
4
4
|
Deine Änderungen werden nicht gespeichert!`},t={unsupportedFileType:"Nicht unterstützter Dateityp.",imageInsertError:"Das Bild konnte nicht eingefügt werden. Versuche es später erneut...",fileTooBig:"Die Datei ist zu groß. Die maximal zulässige Größe ist {{maxSize}}.",svgImageInsertError:"SVG-Bild konnte nicht eingefügt werden. Das SVG-Markup sieht ungültig aus.",failedToFetchImage:"Bild konnte nicht abgerufen werden.",invalidSVGString:"Ungültige SVG.",cannotResolveCollabServer:"Konnte keine Verbindung zum Collab-Server herstellen. Bitte lade die Seite neu und versuche es erneut.",importLibraryError:"Bibliothek konnte nicht geladen werden",collabSaveFailed:"Keine Speicherung in der Backend-Datenbank möglich. Wenn die Probleme weiterhin bestehen, solltest Du Deine Datei lokal speichern, um sicherzustellen, dass Du Deine Arbeit nicht verlierst.",collabSaveFailed_sizeExceeded:"Keine Speicherung in der Backend-Datenbank möglich, die Zeichenfläche scheint zu groß zu sein. Du solltest Deine Datei lokal speichern, um sicherzustellen, dass Du Deine Arbeit nicht verlierst.",imageToolNotSupported:"Bilder sind deaktiviert.",brave_measure_text_error:{line1:"Sieht so aus, als ob Du den Brave-Browser verwendest und die <bold>aggressive Blockierung von Fingerabdrücken</bold> aktiviert hast.",line2:"Dies könnte dazu führen, dass die <bold>Textelemente</bold> in Ihren Zeichnungen zerstört werden.",line3:"Wir empfehlen dringend, diese Einstellung zu deaktivieren. Dazu kannst Du <link>diesen Schritten</link> folgen.",line4:"Wenn die Deaktivierung dieser Einstellung die fehlerhafte Anzeige von Textelementen nicht behebt, öffne bitte ein <issueLink>Ticket</issueLink> auf unserem GitHub oder schreibe uns auf <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"Einbettbare Elemente können der Bibliothek nicht hinzugefügt werden.",iframe:"IFrame-Elemente können nicht zur Bibliothek hinzugefügt werden.",image:"Unterstützung für das Hinzufügen von Bildern in die Bibliothek kommt bald!"},asyncPasteFailedOnRead:"Einfügen fehlgeschlagen (konnte aus der Zwischenablage des Systems nicht gelesen werden).",asyncPasteFailedOnParse:"Einfügen fehlgeschlagen.",copyToSystemClipboardFailed:"Kopieren in die Zwischenablage fehlgeschlagen."},a={selection:"Auswahl",image:"Bild einfügen",rectangle:"Rechteck",diamond:"Raute",ellipse:"Ellipse",arrow:"Pfeil",line:"Linie",freedraw:"Zeichnen",text:"Text",library:"Bibliothek",lock:"Ausgewähltes Werkzeug nach Zeichnen aktiv lassen",penMode:"Stift-Modus - Berührung verhindern",link:"Link für ausgewählte Form hinzufügen / aktualisieren",eraser:"Radierer",frame:"Rahmenwerkzeug",magicframe:"Wireframe zu Code",embeddable:"Web-Einbettung",laser:"Laserpointer",hand:"Hand (Schwenkwerkzeug)",extraTools:"Weitere Werkzeuge",mermaidToExcalidraw:"Mermaid zu Excalidraw",magicSettings:"KI-Einstellungen"},l={canvasActions:"Aktionen für Zeichenfläche",selectedShapeActions:"Aktionen für Auswahl",shapes:"Formen"},s={canvasPanning:"Um die Zeichenfläche zu verschieben, halte das Mausrad oder die Leertaste während des Ziehens, oder verwende das Hand-Werkzeug",linearElement:"Klicken für Linie mit mehreren Punkten, Ziehen für einzelne Linie",freeDraw:"Klicke und ziehe. Lass los, wenn du fertig bist",text:"Tipp: Du kannst auch Text hinzufügen, indem du mit dem Auswahlwerkzeug auf eine beliebige Stelle doppelklickst",embeddable:"Klicken und ziehen, um eine Webseiten-Einbettung zu erstellen",text_selected:"Doppelklicken oder Eingabetaste drücken, um Text zu bearbeiten",text_editing:"Drücke Escape oder CtrlOrCmd+Eingabetaste, um die Bearbeitung abzuschließen",linearElementMulti:"Zum Beenden auf den letzten Punkt klicken oder Escape oder Eingabe drücken",lockAngle:"Du kannst Winkel einschränken, indem du SHIFT gedrückt hältst",resize:"Du kannst die Proportionen einschränken, indem du SHIFT während der Größenänderung gedrückt hältst. Halte ALT gedrückt, um die Größe vom Zentrum aus zu ändern",resizeImage:"Du kannst die Größe frei ändern, indem du SHIFT gedrückt hältst; halte ALT, um die Größe vom Zentrum aus zu ändern",rotate:"Du kannst Winkel einschränken, indem du SHIFT während der Drehung gedrückt hältst",lineEditor_info:"CtrlOrCmd halten und Doppelklick oder CtrlOrCmd + Eingabe drücken, um Punkte zu bearbeiten",lineEditor_pointSelected:"Drücke Löschen, um Punkt(e) zu entfernen, CtrlOrCmd+D zum Duplizieren oder ziehe zum Verschieben",lineEditor_nothingSelected:`Wähle einen zu bearbeitenden Punkt (halte SHIFT gedrückt um mehrere Punkte auszuwählen),
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const E=require("./layers.CdW7OZ6z.js"),pt=require("./layers.BLd2spTm.js");require("lodash-es");const _t=require("./layers.Cyzu9PKQ.js");require("./layers.pmaa8paI.js");require("lodash-es/memoize.js");require("lodash-es/merge.js");require("lodash-es/isEmpty.js");const gt=require("./layers.BeVROkoW.js"),Et=/^(?:[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;function mt(t){return typeof t=="string"&&Et.test(t)}const M=[];for(let t=0;t<256;++t)M.push((t+256).toString(16).slice(1));function kt(t,e=0){return M[t[e+0]]+M[t[e+1]]+M[t[e+2]]+M[t[e+3]]+"-"+M[t[e+4]]+M[t[e+5]]+"-"+M[t[e+6]]+M[t[e+7]]+"-"+M[t[e+8]]+M[t[e+9]]+"-"+M[t[e+10]]+M[t[e+11]]+M[t[e+12]]+M[t[e+13]]+M[t[e+14]]+M[t[e+15]]}function xt(t){if(!mt(t))throw TypeError("Invalid UUID");let e;const r=new Uint8Array(16);return r[0]=(e=parseInt(t.slice(0,8),16))>>>24,r[1]=e>>>16&255,r[2]=e>>>8&255,r[3]=e&255,r[4]=(e=parseInt(t.slice(9,13),16))>>>8,r[5]=e&255,r[6]=(e=parseInt(t.slice(14,18),16))>>>8,r[7]=e&255,r[8]=(e=parseInt(t.slice(19,23),16))>>>8,r[9]=e&255,r[10]=(e=parseInt(t.slice(24,36),16))/1099511627776&255,r[11]=e/4294967296&255,r[12]=e>>>24&255,r[13]=e>>>16&255,r[14]=e>>>8&255,r[15]=e&255,r}function Ot(t){t=unescape(encodeURIComponent(t));const e=[];for(let r=0;r<t.length;++r)e.push(t.charCodeAt(r));return e}const Rt="6ba7b810-9dad-11d1-80b4-00c04fd430c8",bt="6ba7b811-9dad-11d1-80b4-00c04fd430c8";function Nt(t,e,r){function u(c,p,f,o){var h;if(typeof c=="string"&&(c=Ot(c)),typeof p=="string"&&(p=xt(p)),((h=p)===null||h===void 0?void 0:h.length)!==16)throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");let _=new Uint8Array(16+c.length);if(_.set(p),_.set(c,p.length),_=r(_),_[6]=_[6]&15|e,_[8]=_[8]&63|128,f){o=o||0;for(let m=0;m<16;++m)f[o+m]=_[m];return f}return kt(_)}try{u.name=t}catch{}return u.DNS=Rt,u.URL=bt,u}function Tt(t,e,r,u){switch(t){case 0:return e&r^~e&u;case 1:return e^r^u;case 2:return e&r^e&u^r&u;case 3:return e^r^u}}function et(t,e){return t<<e|t>>>32-e}function At(t){const e=[1518500249,1859775393,2400959708,3395469782],r=[1732584193,4023233417,2562383102,271733878,3285377520];if(typeof t=="string"){const f=unescape(encodeURIComponent(t));t=[];for(let o=0;o<f.length;++o)t.push(f.charCodeAt(o))}else Array.isArray(t)||(t=Array.prototype.slice.call(t));t.push(128);const u=t.length/4+2,c=Math.ceil(u/16),p=new Array(c);for(let f=0;f<c;++f){const o=new Uint32Array(16);for(let h=0;h<16;++h)o[h]=t[f*64+h*4]<<24|t[f*64+h*4+1]<<16|t[f*64+h*4+2]<<8|t[f*64+h*4+3];p[f]=o}p[c-1][14]=(t.length-1)*8/Math.pow(2,32),p[c-1][14]=Math.floor(p[c-1][14]),p[c-1][15]=(t.length-1)*8&4294967295;for(let f=0;f<c;++f){const o=new Uint32Array(80);for(let y=0;y<16;++y)o[y]=p[f][y];for(let y=16;y<80;++y)o[y]=et(o[y-3]^o[y-8]^o[y-14]^o[y-16],1);let h=r[0],_=r[1],m=r[2],k=r[3],O=r[4];for(let y=0;y<80;++y){const T=Math.floor(y/20),D=et(h,5)+Tt(T,_,m,k)+O+e[T]+o[y]>>>0;O=k,k=m,m=et(_,30)>>>0,_=h,h=D}r[0]=r[0]+h>>>0,r[1]=r[1]+_>>>0,r[2]=r[2]+m>>>0,r[3]=r[3]+k>>>0,r[4]=r[4]+O>>>0}return[r[0]>>24&255,r[0]>>16&255,r[0]>>8&255,r[0]&255,r[1]>>24&255,r[1]>>16&255,r[1]>>8&255,r[1]&255,r[2]>>24&255,r[2]>>16&255,r[2]>>8&255,r[2]&255,r[3]>>24&255,r[3]>>16&255,r[3]>>8&255,r[3]&255,r[4]>>24&255,r[4]>>16&255,r[4]>>8&255,r[4]&255]}const Mt=Nt("v5",80,At);var rt=(function(){var t=function(w,n,a,l){for(a=a||{},l=w.length;l--;a[w[l]]=n);return a},e=[6,8,10,20,22,24,26,27,28],r=[1,10],u=[1,11],c=[1,12],p=[1,13],f=[1,14],o=[1,15],h=[1,21],_=[1,22],m=[1,23],k=[1,24],O=[1,25],y=[6,8,10,13,15,18,19,20,22,24,26,27,28,41,42,43,44,45],T=[1,34],D=[27,28,46,47],F=[41,42,43,44,45],W=[17,34],P=[1,54],A=[1,53],S=[17,34,36,38],R={trace:function(){},yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,entityName:11,relSpec:12,":":13,role:14,BLOCK_START:15,attributes:16,BLOCK_STOP:17,SQS:18,SQE:19,title:20,title_value:21,acc_title:22,acc_title_value:23,acc_descr:24,acc_descr_value:25,acc_descr_multiline_value:26,ALPHANUM:27,ENTITY_NAME:28,attribute:29,attributeType:30,attributeName:31,attributeKeyTypeList:32,attributeComment:33,ATTRIBUTE_WORD:34,attributeKeyType:35,COMMA:36,ATTRIBUTE_KEY:37,COMMENT:38,cardinality:39,relType:40,ZERO_OR_ONE:41,ZERO_OR_MORE:42,ONE_OR_MORE:43,ONLY_ONE:44,MD_PARENT:45,NON_IDENTIFYING:46,IDENTIFYING:47,WORD:48,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",8:"SPACE",10:"NEWLINE",13:":",15:"BLOCK_START",17:"BLOCK_STOP",18:"SQS",19:"SQE",20:"title",21:"title_value",22:"acc_title",23:"acc_title_value",24:"acc_descr",25:"acc_descr_value",26:"acc_descr_multiline_value",27:"ALPHANUM",28:"ENTITY_NAME",34:"ATTRIBUTE_WORD",36:"COMMA",37:"ATTRIBUTE_KEY",38:"COMMENT",41:"ZERO_OR_ONE",42:"ZERO_OR_MORE",43:"ONE_OR_MORE",44:"ONLY_ONE",45:"MD_PARENT",46:"NON_IDENTIFYING",47:"IDENTIFYING",48:"WORD"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,5],[9,4],[9,3],[9,1],[9,7],[9,6],[9,4],[9,2],[9,2],[9,2],[9,1],[11,1],[11,1],[16,1],[16,2],[29,2],[29,3],[29,3],[29,4],[30,1],[31,1],[32,1],[32,3],[35,1],[33,1],[12,3],[39,1],[39,1],[39,1],[39,1],[39,1],[40,1],[40,1],[14,1],[14,1],[14,1]],performAction:function(n,a,l,d,g,i,V){var s=i.length-1;switch(g){case 1:break;case 2:this.$=[];break;case 3:i[s-1].push(i[s]),this.$=i[s-1];break;case 4:case 5:this.$=i[s];break;case 6:case 7:this.$=[];break;case 8:d.addEntity(i[s-4]),d.addEntity(i[s-2]),d.addRelationship(i[s-4],i[s],i[s-2],i[s-3]);break;case 9:d.addEntity(i[s-3]),d.addAttributes(i[s-3],i[s-1]);break;case 10:d.addEntity(i[s-2]);break;case 11:d.addEntity(i[s]);break;case 12:d.addEntity(i[s-6],i[s-4]),d.addAttributes(i[s-6],i[s-1]);break;case 13:d.addEntity(i[s-5],i[s-3]);break;case 14:d.addEntity(i[s-3],i[s-1]);break;case 15:case 16:this.$=i[s].trim(),d.setAccTitle(this.$);break;case 17:case 18:this.$=i[s].trim(),d.setAccDescription(this.$);break;case 19:case 43:this.$=i[s];break;case 20:case 41:case 42:this.$=i[s].replace(/"/g,"");break;case 21:case 29:this.$=[i[s]];break;case 22:i[s].push(i[s-1]),this.$=i[s];break;case 23:this.$={attributeType:i[s-1],attributeName:i[s]};break;case 24:this.$={attributeType:i[s-2],attributeName:i[s-1],attributeKeyTypeList:i[s]};break;case 25:this.$={attributeType:i[s-2],attributeName:i[s-1],attributeComment:i[s]};break;case 26:this.$={attributeType:i[s-3],attributeName:i[s-2],attributeKeyTypeList:i[s-1],attributeComment:i[s]};break;case 27:case 28:case 31:this.$=i[s];break;case 30:i[s-2].push(i[s]),this.$=i[s-2];break;case 32:this.$=i[s].replace(/"/g,"");break;case 33:this.$={cardA:i[s],relType:i[s-1],cardB:i[s-2]};break;case 34:this.$=d.Cardinality.ZERO_OR_ONE;break;case 35:this.$=d.Cardinality.ZERO_OR_MORE;break;case 36:this.$=d.Cardinality.ONE_OR_MORE;break;case 37:this.$=d.Cardinality.ONLY_ONE;break;case 38:this.$=d.Cardinality.MD_PARENT;break;case 39:this.$=d.Identification.NON_IDENTIFYING;break;case 40:this.$=d.Identification.IDENTIFYING;break}},table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:9,20:r,22:u,24:c,26:p,27:f,28:o},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:16,11:9,20:r,22:u,24:c,26:p,27:f,28:o},t(e,[2,5]),t(e,[2,6]),t(e,[2,11],{12:17,39:20,15:[1,18],18:[1,19],41:h,42:_,43:m,44:k,45:O}),{21:[1,26]},{23:[1,27]},{25:[1,28]},t(e,[2,18]),t(y,[2,19]),t(y,[2,20]),t(e,[2,4]),{11:29,27:f,28:o},{16:30,17:[1,31],29:32,30:33,34:T},{11:35,27:f,28:o},{40:36,46:[1,37],47:[1,38]},t(D,[2,34]),t(D,[2,35]),t(D,[2,36]),t(D,[2,37]),t(D,[2,38]),t(e,[2,15]),t(e,[2,16]),t(e,[2,17]),{13:[1,39]},{17:[1,40]},t(e,[2,10]),{16:41,17:[2,21],29:32,30:33,34:T},{31:42,34:[1,43]},{34:[2,27]},{19:[1,44]},{39:45,41:h,42:_,43:m,44:k,45:O},t(F,[2,39]),t(F,[2,40]),{14:46,27:[1,49],28:[1,48],48:[1,47]},t(e,[2,9]),{17:[2,22]},t(W,[2,23],{32:50,33:51,35:52,37:P,38:A}),t([17,34,37,38],[2,28]),t(e,[2,14],{15:[1,55]}),t([27,28],[2,33]),t(e,[2,8]),t(e,[2,41]),t(e,[2,42]),t(e,[2,43]),t(W,[2,24],{33:56,36:[1,57],38:A}),t(W,[2,25]),t(S,[2,29]),t(W,[2,32]),t(S,[2,31]),{16:58,17:[1,59],29:32,30:33,34:T},t(W,[2,26]),{35:60,37:P},{17:[1,61]},t(e,[2,13]),t(S,[2,30]),t(e,[2,12])],defaultActions:{34:[2,27],41:[2,22]},parseError:function(n,a){if(a.recoverable)this.trace(n);else{var l=new Error(n);throw l.hash=a,l}},parse:function(n){var a=this,l=[0],d=[],g=[null],i=[],V=this.table,s="",X=0,nt=0,dt=2,at=1,ut=i.slice.call(arguments,1),N=Object.create(this.lexer),H={yy:{}};for(var j in this.yy)Object.prototype.hasOwnProperty.call(this.yy,j)&&(H.yy[j]=this.yy[j]);N.setInput(n,H.yy),H.yy.lexer=N,H.yy.parser=this,typeof N.yylloc>"u"&&(N.yylloc={});var J=N.yylloc;i.push(J);var ft=N.options&&N.options.ranges;typeof H.yy.parseError=="function"?this.parseError=H.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function yt(){var Z;return Z=d.pop()||N.lex()||at,typeof Z!="number"&&(Z instanceof Array&&(d=Z,Z=d.pop()),Z=a.symbols_[Z]||Z),Z}for(var I,z,v,$,K={},Q,Y,st,q;;){if(z=l[l.length-1],this.defaultActions[z]?v=this.defaultActions[z]:((I===null||typeof I>"u")&&(I=yt()),v=V[z]&&V[z][I]),typeof v>"u"||!v.length||!v[0]){var tt="";q=[];for(Q in V[z])this.terminals_[Q]&&Q>dt&&q.push("'"+this.terminals_[Q]+"'");N.showPosition?tt="Parse error on line "+(X+1)+`:
|
|
2
|
+
`+N.showPosition()+`
|
|
3
|
+
Expecting `+q.join(", ")+", got '"+(this.terminals_[I]||I)+"'":tt="Parse error on line "+(X+1)+": Unexpected "+(I==at?"end of input":"'"+(this.terminals_[I]||I)+"'"),this.parseError(tt,{text:N.match,token:this.terminals_[I]||I,line:N.yylineno,loc:J,expected:q})}if(v[0]instanceof Array&&v.length>1)throw new Error("Parse Error: multiple actions possible at state: "+z+", token: "+I);switch(v[0]){case 1:l.push(I),g.push(N.yytext),i.push(N.yylloc),l.push(v[1]),I=null,nt=N.yyleng,s=N.yytext,X=N.yylineno,J=N.yylloc;break;case 2:if(Y=this.productions_[v[1]][1],K.$=g[g.length-Y],K._$={first_line:i[i.length-(Y||1)].first_line,last_line:i[i.length-1].last_line,first_column:i[i.length-(Y||1)].first_column,last_column:i[i.length-1].last_column},ft&&(K._$.range=[i[i.length-(Y||1)].range[0],i[i.length-1].range[1]]),$=this.performAction.apply(K,[s,nt,X,H.yy,v[1],g,i].concat(ut)),typeof $<"u")return $;Y&&(l=l.slice(0,-1*Y*2),g=g.slice(0,-1*Y),i=i.slice(0,-1*Y)),l.push(this.productions_[v[1]][0]),g.push(K.$),i.push(K._$),st=V[l[l.length-2]][l[l.length-1]],l.push(st);break;case 3:return!0}}return!0}},b=(function(){var w={EOF:1,parseError:function(a,l){if(this.yy.parser)this.yy.parser.parseError(a,l);else throw new Error(a)},setInput:function(n,a){return this.yy=a||this.yy||{},this._input=n,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 n=this._input[0];this.yytext+=n,this.yyleng++,this.offset++,this.match+=n,this.matched+=n;var a=n.match(/(?:\r\n?|\n).*/g);return a?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),n},unput:function(n){var a=n.length,l=n.split(/(?:\r\n?|\n)/g);this._input=n+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-a),this.offset-=a;var d=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),l.length-1&&(this.yylineno-=l.length-1);var g=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:l?(l.length===d.length?this.yylloc.first_column:0)+d[d.length-l.length].length-l[0].length:this.yylloc.first_column-a},this.options.ranges&&(this.yylloc.range=[g[0],g[0]+this.yyleng-a]),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
|
+
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(n){this.unput(this.match.slice(n))},pastInput:function(){var n=this.matched.substr(0,this.matched.length-this.match.length);return(n.length>20?"...":"")+n.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var n=this.match;return n.length<20&&(n+=this._input.substr(0,20-n.length)),(n.substr(0,20)+(n.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var n=this.pastInput(),a=new Array(n.length+1).join("-");return n+this.upcomingInput()+`
|
|
5
|
+
`+a+"^"},test_match:function(n,a){var l,d,g;if(this.options.backtrack_lexer&&(g={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(g.yylloc.range=this.yylloc.range.slice(0))),d=n[0].match(/(?:\r\n?|\n).*/g),d&&(this.yylineno+=d.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:d?d[d.length-1].length-d[d.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+n[0].length},this.yytext+=n[0],this.match+=n[0],this.matches=n,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(n[0].length),this.matched+=n[0],l=this.performAction.call(this,this.yy,this,a,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),l)return l;if(this._backtrack){for(var i in g)this[i]=g[i];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var n,a,l,d;this._more||(this.yytext="",this.match="");for(var g=this._currentRules(),i=0;i<g.length;i++)if(l=this._input.match(this.rules[g[i]]),l&&(!a||l[0].length>a[0].length)){if(a=l,d=i,this.options.backtrack_lexer){if(n=this.test_match(l,g[i]),n!==!1)return n;if(this._backtrack){a=!1;continue}else return!1}else if(!this.options.flex)break}return a?(n=this.test_match(a,g[d]),n!==!1?n:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
|
6
|
+
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var a=this.next();return a||this.lex()},begin:function(a){this.conditionStack.push(a)},popState:function(){var a=this.conditionStack.length-1;return a>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(a){return a=this.conditionStack.length-1-Math.abs(a||0),a>=0?this.conditionStack[a]:"INITIAL"},pushState:function(a){this.begin(a)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(a,l,d,g){switch(d){case 0:return this.begin("acc_title"),22;case 1:return this.popState(),"acc_title_value";case 2:return this.begin("acc_descr"),24;case 3:return this.popState(),"acc_descr_value";case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return 10;case 8:break;case 9:return 8;case 10:return 28;case 11:return 48;case 12:return 4;case 13:return this.begin("block"),15;case 14:return 36;case 15:break;case 16:return 37;case 17:return 34;case 18:return 34;case 19:return 38;case 20:break;case 21:return this.popState(),17;case 22:return l.yytext[0];case 23:return 18;case 24:return 19;case 25:return 41;case 26:return 43;case 27:return 43;case 28:return 43;case 29:return 41;case 30:return 41;case 31:return 42;case 32:return 42;case 33:return 42;case 34:return 42;case 35:return 42;case 36:return 43;case 37:return 42;case 38:return 43;case 39:return 44;case 40:return 44;case 41:return 44;case 42:return 44;case 43:return 41;case 44:return 42;case 45:return 43;case 46:return 45;case 47:return 46;case 48:return 47;case 49:return 47;case 50:return 46;case 51:return 46;case 52:return 46;case 53:return 27;case 54:return l.yytext[0];case 55:return 6}},rules:[/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:[\s]+)/i,/^(?:"[^"%\r\n\v\b\\]+")/i,/^(?:"[^"]*")/i,/^(?:erDiagram\b)/i,/^(?:\{)/i,/^(?:,)/i,/^(?:\s+)/i,/^(?:\b((?:PK)|(?:FK)|(?:UK))\b)/i,/^(?:(.*?)[~](.*?)*[~])/i,/^(?:[\*A-Za-z_][A-Za-z0-9\-_\[\]\(\)]*)/i,/^(?:"[^"]*")/i,/^(?:[\n]+)/i,/^(?:\})/i,/^(?:.)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:one or zero\b)/i,/^(?:one or more\b)/i,/^(?:one or many\b)/i,/^(?:1\+)/i,/^(?:\|o\b)/i,/^(?:zero or one\b)/i,/^(?:zero or more\b)/i,/^(?:zero or many\b)/i,/^(?:0\+)/i,/^(?:\}o\b)/i,/^(?:many\(0\))/i,/^(?:many\(1\))/i,/^(?:many\b)/i,/^(?:\}\|)/i,/^(?:one\b)/i,/^(?:only one\b)/i,/^(?:1\b)/i,/^(?:\|\|)/i,/^(?:o\|)/i,/^(?:o\{)/i,/^(?:\|\{)/i,/^(?:\s*u\b)/i,/^(?:\.\.)/i,/^(?:--)/i,/^(?:to\b)/i,/^(?:optionally to\b)/i,/^(?:\.-)/i,/^(?:-\.)/i,/^(?:[A-Za-z_][A-Za-z0-9\-_]*)/i,/^(?:.)/i,/^(?:$)/i],conditions:{acc_descr_multiline:{rules:[5,6],inclusive:!1},acc_descr:{rules:[3],inclusive:!1},acc_title:{rules:[1],inclusive:!1},block:{rules:[14,15,16,17,18,19,20,21,22],inclusive:!1},INITIAL:{rules:[0,2,4,7,8,9,10,11,12,13,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55],inclusive:!0}}};return w})();R.lexer=b;function L(){this.yy={}}return L.prototype=R,R.Parser=L,new L})();rt.parser=rt;const St=rt;let U={},it=[];const wt={ZERO_OR_ONE:"ZERO_OR_ONE",ZERO_OR_MORE:"ZERO_OR_MORE",ONE_OR_MORE:"ONE_OR_MORE",ONLY_ONE:"ONLY_ONE",MD_PARENT:"MD_PARENT"},It={NON_IDENTIFYING:"NON_IDENTIFYING",IDENTIFYING:"IDENTIFYING"},lt=function(t,e=void 0){return U[t]===void 0?(U[t]={attributes:[],alias:e},E.log$1.info("Added new entity :",t)):U[t]&&!U[t].alias&&e&&(U[t].alias=e,E.log$1.info(`Add alias '${e}' to entity '${t}'`)),U[t]},Dt=()=>U,vt=function(t,e){let r=lt(t),u;for(u=e.length-1;u>=0;u--)r.attributes.push(e[u]),E.log$1.debug("Added attribute ",e[u].attributeName)},Lt=function(t,e,r,u){let c={entityA:t,roleA:e,entityB:r,relSpec:u};it.push(c),E.log$1.debug("Added new relationship :",c)},Bt=()=>it,Ct=function(){U={},it=[],E.clear()},Pt={Cardinality:wt,Identification:It,getConfig:()=>E.getConfig().er,addEntity:lt,addAttributes:vt,getEntities:Dt,addRelationship:Lt,getRelationships:Bt,clear:Ct,setAccTitle:E.setAccTitle,getAccTitle:E.getAccTitle,setAccDescription:E.setAccDescription,getAccDescription:E.getAccDescription,setDiagramTitle:E.setDiagramTitle,getDiagramTitle:E.getDiagramTitle},B={ONLY_ONE_START:"ONLY_ONE_START",ONLY_ONE_END:"ONLY_ONE_END",ZERO_OR_ONE_START:"ZERO_OR_ONE_START",ZERO_OR_ONE_END:"ZERO_OR_ONE_END",ONE_OR_MORE_START:"ONE_OR_MORE_START",ONE_OR_MORE_END:"ONE_OR_MORE_END",ZERO_OR_MORE_START:"ZERO_OR_MORE_START",ZERO_OR_MORE_END:"ZERO_OR_MORE_END",MD_PARENT_END:"MD_PARENT_END",MD_PARENT_START:"MD_PARENT_START"},Yt=function(t,e){let r;t.append("defs").append("marker").attr("id",B.MD_PARENT_START).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",B.MD_PARENT_END).attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",B.ONLY_ONE_START).attr("refX",0).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("stroke",e.stroke).attr("fill","none").attr("d","M9,0 L9,18 M15,0 L15,18"),t.append("defs").append("marker").attr("id",B.ONLY_ONE_END).attr("refX",18).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("stroke",e.stroke).attr("fill","none").attr("d","M3,0 L3,18 M9,0 L9,18"),r=t.append("defs").append("marker").attr("id",B.ZERO_OR_ONE_START).attr("refX",0).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto"),r.append("circle").attr("stroke",e.stroke).attr("fill","white").attr("cx",21).attr("cy",9).attr("r",6),r.append("path").attr("stroke",e.stroke).attr("fill","none").attr("d","M9,0 L9,18"),r=t.append("defs").append("marker").attr("id",B.ZERO_OR_ONE_END).attr("refX",30).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto"),r.append("circle").attr("stroke",e.stroke).attr("fill","white").attr("cx",9).attr("cy",9).attr("r",6),r.append("path").attr("stroke",e.stroke).attr("fill","none").attr("d","M21,0 L21,18"),t.append("defs").append("marker").attr("id",B.ONE_OR_MORE_START).attr("refX",18).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("stroke",e.stroke).attr("fill","none").attr("d","M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27"),t.append("defs").append("marker").attr("id",B.ONE_OR_MORE_END).attr("refX",27).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("stroke",e.stroke).attr("fill","none").attr("d","M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18"),r=t.append("defs").append("marker").attr("id",B.ZERO_OR_MORE_START).attr("refX",18).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto"),r.append("circle").attr("stroke",e.stroke).attr("fill","white").attr("cx",48).attr("cy",18).attr("r",6),r.append("path").attr("stroke",e.stroke).attr("fill","none").attr("d","M0,18 Q18,0 36,18 Q18,36 0,18"),r=t.append("defs").append("marker").attr("id",B.ZERO_OR_MORE_END).attr("refX",39).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto"),r.append("circle").attr("stroke",e.stroke).attr("fill","white").attr("cx",9).attr("cy",18).attr("r",6),r.append("path").attr("stroke",e.stroke).attr("fill","none").attr("d","M21,18 Q39,0 57,18 Q39,36 21,18")},C={ERMarkers:B,insertMarkers:Yt},Zt=/[^\dA-Za-z](\W)*/g;let x={},G=new Map;const Ft=function(t){const e=Object.keys(t);for(const r of e)x[r]=t[r]},Wt=(t,e,r)=>{const u=x.entityPadding/3,c=x.entityPadding/3,p=x.fontSize*.85,f=e.node().getBBox(),o=[];let h=!1,_=!1,m=0,k=0,O=0,y=0,T=f.height+u*2,D=1;r.forEach(A=>{A.attributeKeyTypeList!==void 0&&A.attributeKeyTypeList.length>0&&(h=!0),A.attributeComment!==void 0&&(_=!0)}),r.forEach(A=>{const S=`${e.node().id}-attr-${D}`;let R=0;const b=E.parseGenericTypes(A.attributeType),L=t.append("text").classed("er entityLabel",!0).attr("id",`${S}-type`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",E.getConfig().fontFamily).style("font-size",p+"px").text(b),w=t.append("text").classed("er entityLabel",!0).attr("id",`${S}-name`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",E.getConfig().fontFamily).style("font-size",p+"px").text(A.attributeName),n={};n.tn=L,n.nn=w;const a=L.node().getBBox(),l=w.node().getBBox();if(m=Math.max(m,a.width),k=Math.max(k,l.width),R=Math.max(a.height,l.height),h){const d=A.attributeKeyTypeList!==void 0?A.attributeKeyTypeList.join(","):"",g=t.append("text").classed("er entityLabel",!0).attr("id",`${S}-key`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",E.getConfig().fontFamily).style("font-size",p+"px").text(d);n.kn=g;const i=g.node().getBBox();O=Math.max(O,i.width),R=Math.max(R,i.height)}if(_){const d=t.append("text").classed("er entityLabel",!0).attr("id",`${S}-comment`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",E.getConfig().fontFamily).style("font-size",p+"px").text(A.attributeComment||"");n.cn=d;const g=d.node().getBBox();y=Math.max(y,g.width),R=Math.max(R,g.height)}n.height=R,o.push(n),T+=R+u*2,D+=1});let F=4;h&&(F+=2),_&&(F+=2);const W=m+k+O+y,P={width:Math.max(x.minEntityWidth,Math.max(f.width+x.entityPadding*2,W+c*F)),height:r.length>0?T:Math.max(x.minEntityHeight,f.height+x.entityPadding*2)};if(r.length>0){const A=Math.max(0,(P.width-W-c*F)/(F/2));e.attr("transform","translate("+P.width/2+","+(u+f.height/2)+")");let S=f.height+u*2,R="attributeBoxOdd";o.forEach(b=>{const L=S+u+b.height/2;b.tn.attr("transform","translate("+c+","+L+")");const w=t.insert("rect","#"+b.tn.node().id).classed(`er ${R}`,!0).attr("x",0).attr("y",S).attr("width",m+c*2+A).attr("height",b.height+u*2),n=parseFloat(w.attr("x"))+parseFloat(w.attr("width"));b.nn.attr("transform","translate("+(n+c)+","+L+")");const a=t.insert("rect","#"+b.nn.node().id).classed(`er ${R}`,!0).attr("x",n).attr("y",S).attr("width",k+c*2+A).attr("height",b.height+u*2);let l=parseFloat(a.attr("x"))+parseFloat(a.attr("width"));if(h){b.kn.attr("transform","translate("+(l+c)+","+L+")");const d=t.insert("rect","#"+b.kn.node().id).classed(`er ${R}`,!0).attr("x",l).attr("y",S).attr("width",O+c*2+A).attr("height",b.height+u*2);l=parseFloat(d.attr("x"))+parseFloat(d.attr("width"))}_&&(b.cn.attr("transform","translate("+(l+c)+","+L+")"),t.insert("rect","#"+b.cn.node().id).classed(`er ${R}`,"true").attr("x",l).attr("y",S).attr("width",y+c*2+A).attr("height",b.height+u*2)),S+=b.height+u*2,R=R==="attributeBoxOdd"?"attributeBoxEven":"attributeBoxOdd"})}else P.height=Math.max(x.minEntityHeight,T),e.attr("transform","translate("+P.width/2+","+P.height/2+")");return P},Ut=function(t,e,r){const u=Object.keys(e);let c;return u.forEach(function(p){const f=Xt(p,"entity");G.set(p,f);const o=t.append("g").attr("id",f);c=c===void 0?f:c;const h="text-"+f,_=o.append("text").classed("er entityLabel",!0).attr("id",h).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","middle").style("font-family",E.getConfig().fontFamily).style("font-size",x.fontSize+"px").text(e[p].alias??p),{width:m,height:k}=Wt(o,_,e[p].attributes),y=o.insert("rect","#"+h).classed("er entityBox",!0).attr("x",0).attr("y",0).attr("width",m).attr("height",k).node().getBBox();r.setNode(f,{width:y.width,height:y.height,shape:"rect",id:f})}),c},Ht=function(t,e){e.nodes().forEach(function(r){r!==void 0&&e.node(r)!==void 0&&t.select("#"+r).attr("transform","translate("+(e.node(r).x-e.node(r).width/2)+","+(e.node(r).y-e.node(r).height/2)+" )")})},ht=function(t){return(t.entityA+t.roleA+t.entityB).replace(/\s/g,"")},zt=function(t,e){return t.forEach(function(r){e.setEdge(G.get(r.entityA),G.get(r.entityB),{relationship:r},ht(r))}),t};let ot=0;const Kt=function(t,e,r,u,c){ot++;const p=r.edge(G.get(e.entityA),G.get(e.entityB),ht(e)),f=gt.line().x(function(T){return T.x}).y(function(T){return T.y}).curve(E.curveBasis),o=t.insert("path","#"+u).classed("er relationshipLine",!0).attr("d",f(p.points)).style("stroke",x.stroke).style("fill","none");e.relSpec.relType===c.db.Identification.NON_IDENTIFYING&&o.attr("stroke-dasharray","8,8");let h="";switch(x.arrowMarkerAbsolute&&(h=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,h=h.replace(/\(/g,"\\("),h=h.replace(/\)/g,"\\)")),e.relSpec.cardA){case c.db.Cardinality.ZERO_OR_ONE:o.attr("marker-end","url("+h+"#"+C.ERMarkers.ZERO_OR_ONE_END+")");break;case c.db.Cardinality.ZERO_OR_MORE:o.attr("marker-end","url("+h+"#"+C.ERMarkers.ZERO_OR_MORE_END+")");break;case c.db.Cardinality.ONE_OR_MORE:o.attr("marker-end","url("+h+"#"+C.ERMarkers.ONE_OR_MORE_END+")");break;case c.db.Cardinality.ONLY_ONE:o.attr("marker-end","url("+h+"#"+C.ERMarkers.ONLY_ONE_END+")");break;case c.db.Cardinality.MD_PARENT:o.attr("marker-end","url("+h+"#"+C.ERMarkers.MD_PARENT_END+")");break}switch(e.relSpec.cardB){case c.db.Cardinality.ZERO_OR_ONE:o.attr("marker-start","url("+h+"#"+C.ERMarkers.ZERO_OR_ONE_START+")");break;case c.db.Cardinality.ZERO_OR_MORE:o.attr("marker-start","url("+h+"#"+C.ERMarkers.ZERO_OR_MORE_START+")");break;case c.db.Cardinality.ONE_OR_MORE:o.attr("marker-start","url("+h+"#"+C.ERMarkers.ONE_OR_MORE_START+")");break;case c.db.Cardinality.ONLY_ONE:o.attr("marker-start","url("+h+"#"+C.ERMarkers.ONLY_ONE_START+")");break;case c.db.Cardinality.MD_PARENT:o.attr("marker-start","url("+h+"#"+C.ERMarkers.MD_PARENT_START+")");break}const _=o.node().getTotalLength(),m=o.node().getPointAtLength(_*.5),k="rel"+ot,y=t.append("text").classed("er relationshipLabel",!0).attr("id",k).attr("x",m.x).attr("y",m.y).style("text-anchor","middle").style("dominant-baseline","middle").style("font-family",E.getConfig().fontFamily).style("font-size",x.fontSize+"px").text(e.roleA).node().getBBox();t.insert("rect","#"+k).classed("er relationshipLabelBox",!0).attr("x",m.x-y.width/2).attr("y",m.y-y.height/2).attr("width",y.width).attr("height",y.height)},Vt=function(t,e,r,u){x=E.getConfig().er,E.log$1.info("Drawing ER diagram");const c=E.getConfig().securityLevel;let p;c==="sandbox"&&(p=E.select("#i"+e));const o=(c==="sandbox"?E.select(p.nodes()[0].contentDocument.body):E.select("body")).select(`[id='${e}']`);C.insertMarkers(o,x);let h;h=new pt.Graph({multigraph:!0,directed:!0,compound:!1}).setGraph({rankdir:x.layoutDirection,marginx:20,marginy:20,nodesep:100,edgesep:100,ranksep:100}).setDefaultEdgeLabel(function(){return{}});const _=Ut(o,u.db.getEntities(),h),m=zt(u.db.getRelationships(),h);_t.layout(h),Ht(o,h),m.forEach(function(D){Kt(o,D,h,_,u)});const k=x.diagramPadding;E.utils.insertTitle(o,"entityTitleText",x.titleTopMargin,u.db.getDiagramTitle());const O=o.node().getBBox(),y=O.width+k*2,T=O.height+k*2;E.configureSvgSize(o,T,y,x.useMaxWidth),o.attr("viewBox",`${O.x-k} ${O.y-k} ${y} ${T}`)},Gt="28e9f9db-3c8d-5aa5-9faf-44286ae5937c";function Xt(t="",e=""){const r=t.replace(Zt,"");return`${ct(e)}${ct(r)}${Mt(t,Gt)}`}function ct(t=""){return t.length>0?`${t}-`:""}const Qt={setConf:Ft,draw:Vt},qt=t=>`
|
|
7
|
+
.entityBox {
|
|
8
|
+
fill: ${t.mainBkg};
|
|
9
|
+
stroke: ${t.nodeBorder};
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.attributeBoxOdd {
|
|
13
|
+
fill: ${t.attributeBackgroundColorOdd};
|
|
14
|
+
stroke: ${t.nodeBorder};
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.attributeBoxEven {
|
|
18
|
+
fill: ${t.attributeBackgroundColorEven};
|
|
19
|
+
stroke: ${t.nodeBorder};
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
.relationshipLabelBox {
|
|
23
|
+
fill: ${t.tertiaryColor};
|
|
24
|
+
opacity: 0.7;
|
|
25
|
+
background-color: ${t.tertiaryColor};
|
|
26
|
+
rect {
|
|
27
|
+
opacity: 0.5;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
.relationshipLine {
|
|
32
|
+
stroke: ${t.lineColor};
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.entityTitleText {
|
|
36
|
+
text-anchor: middle;
|
|
37
|
+
font-size: 18px;
|
|
38
|
+
fill: ${t.textColor};
|
|
39
|
+
}
|
|
40
|
+
#MD_PARENT_START {
|
|
41
|
+
fill: #f5f5f5 !important;
|
|
42
|
+
stroke: ${t.lineColor} !important;
|
|
43
|
+
stroke-width: 1;
|
|
44
|
+
}
|
|
45
|
+
#MD_PARENT_END {
|
|
46
|
+
fill: #f5f5f5 !important;
|
|
47
|
+
stroke: ${t.lineColor} !important;
|
|
48
|
+
stroke-width: 1;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
`,jt=qt,Jt={parser:St,db:Pt,renderer:Qt,styles:jt};exports.diagram=Jt;
|