@layers-app/editor 0.7.18 → 0.7.20
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 +77 -1
- package/dist/index.js +15 -9
- package/dist/layers.-pxItkuK.js +11 -0
- package/dist/layers.4783bPvO.js +39 -0
- package/dist/layers.4XOTUH37.js +1089 -0
- package/dist/layers.4peyl00A.js +2 -0
- package/dist/layers.4wAcqQtQ.js +423 -0
- package/dist/layers.4ykD0YcM.js +40 -0
- package/dist/layers.52famHy6.js +1 -0
- package/dist/layers.6Feq9YXQ.js +40 -0
- package/dist/layers.6GQPwq_6.js +960 -0
- package/dist/layers.7JqFgE4-.js +15 -0
- package/dist/layers.7wQbmwwB.js +1034 -0
- package/dist/layers.8JNx1FTq.js +35 -0
- package/dist/layers.8jhm9FEJ.js +10 -0
- package/dist/layers.8lNrKfca.js +41 -0
- package/dist/layers.9kQUqqYe.js +139 -0
- package/dist/layers.9pNaFvaX.js +1 -0
- package/dist/layers.AO3vHISA.js +33 -0
- package/dist/layers.Ab6Lx44l.js +129 -0
- package/dist/layers.B-w9_4cB.js +22 -0
- package/dist/layers.B0bpRgNT.js +122 -0
- package/dist/layers.B19hGmey.js +1 -0
- package/dist/layers.B2OK_mI8.js +1 -0
- package/dist/layers.B3D4g2HH.js +1 -0
- package/dist/layers.B3mzJc8P.js +907 -0
- package/dist/layers.B5YhL7Gw.js +40 -0
- package/dist/layers.B7K7JjK6.js +1510 -0
- package/dist/layers.B885pkJL.js +794 -0
- package/dist/layers.B961U-Vk.js +1 -0
- package/dist/layers.B9jATAXU.js +42 -0
- package/dist/layers.BAtv1CM7.js +1 -0
- package/dist/layers.BBv6P-Uu.js +37 -0
- package/dist/layers.BC6JEDP2.js +796 -0
- package/dist/layers.BEagxCE_.js +35 -0
- package/dist/layers.BH34WCDb.js +6 -0
- package/dist/layers.BIeVwYKL.js +1 -0
- package/dist/layers.BIkD0WQr.js +10 -0
- package/dist/layers.BIlhFIEz.js +37 -0
- package/dist/layers.BJDrjORS.js +244 -0
- package/dist/{layers.D99OBX9u.js → layers.BJLOp9cg.js} +88 -86
- package/dist/layers.BJsWSYrS.js +323 -0
- package/dist/layers.BKwcxD8A.js +5 -0
- package/dist/layers.BLd2spTm.js +1 -0
- package/dist/layers.BLv_frn1.js +10 -0
- package/dist/layers.BO2V23mI.js +1 -0
- package/dist/layers.BO_D4q5p.js +42 -0
- package/dist/layers.BP7EcZBZ.js +1 -0
- package/dist/layers.BP8OcU0T.js +10 -0
- package/dist/layers.BRaRY9tU.js +373 -0
- package/dist/layers.BSTBZrFn.js +1 -0
- package/dist/layers.BT2iHuSm.js +8 -0
- package/dist/layers.BU-tjKWq.js +33 -0
- package/dist/layers.BWEUOe94.js +40 -0
- package/dist/layers.BXAu7G4b.js +4 -0
- package/dist/layers.BZ9zcjtY.js +8 -0
- package/dist/layers.BZa5A6cg.js +425 -0
- package/dist/layers.BZlzQFiI.js +51 -0
- package/dist/layers.BagtOD0V.js +1 -0
- package/dist/layers.BbCfEXyj.js +55 -0
- package/dist/layers.Be94M_F4.js +7 -0
- package/dist/layers.BhdUQN6J.js +1583 -0
- package/dist/layers.Bj915C_T.js +5 -0
- package/dist/layers.BnHSrOPr.js +40 -0
- package/dist/layers.BngaRys_.js +8583 -0
- package/dist/layers.BoRvGzPp.js +1 -0
- package/dist/layers.Bob38w8X.js +5 -0
- package/dist/layers.BpTkSHkL.js +38 -0
- package/dist/layers.BpVR__4s.js +32 -0
- package/dist/layers.BpilXLfW.js +6 -0
- package/dist/layers.Br9HAzwf.js +2482 -0
- package/dist/layers.Bt7brqhi.js +116 -0
- package/dist/layers.BtqAfMks.js +1 -0
- package/dist/layers.BtvHse58.js +1 -0
- package/dist/layers.BwzogUnt.js +41 -0
- package/dist/layers.ByB5f2g3.js +7 -0
- package/dist/layers.ByipH4AB.js +207 -0
- package/dist/layers.BzC5N3hu.js +1619 -0
- package/dist/layers.C-KP-jFZ.js +8 -0
- package/dist/layers.C0iFGBoQ.js +213 -0
- package/dist/layers.C1AULvj_.js +40 -0
- package/dist/layers.C2f7uCzl.js +21620 -0
- package/dist/layers.C47t6lve.js +2 -0
- package/dist/layers.C4gRYt-z.js +9 -0
- package/dist/layers.C4nmPqDc.js +9 -0
- package/dist/layers.C5UKJ24R.js +271 -0
- package/dist/layers.C5qsYNKq.js +7 -0
- package/dist/layers.C70jnpZq.js +42 -0
- package/dist/layers.C7Qg5l_Q.js +5 -0
- package/dist/layers.C7v0beLV.js +9 -0
- package/dist/layers.C8_lu5UH.js +23 -0
- package/dist/layers.CAcCDIzK.js +32 -0
- package/dist/layers.CCWJVHwX.js +26946 -0
- package/dist/layers.CF2BAIC-.js +1 -0
- package/dist/layers.CFUGAgBV.js +805 -0
- package/dist/layers.CHZsXQcr.js +1 -0
- package/dist/layers.CIo6HbVI.js +37 -0
- package/dist/layers.CJaSQy6k.js +70 -0
- package/dist/layers.CJhFGqXY.js +1 -0
- package/dist/layers.CKU_klOZ.js +41 -0
- package/dist/layers.CKrtSnTU.js +7 -0
- package/dist/layers.CNoIsdHV.js +223 -0
- package/dist/layers.CQ-g_IO8.js +39 -0
- package/dist/layers.CRWtU7Vx.js +1268 -0
- package/dist/layers.CSattQNk.js +8 -0
- package/dist/layers.CT-8Geho.js +118 -0
- package/dist/layers.CWTjwUqI.js +9 -0
- package/dist/layers.CY3nuiOZ.js +39 -0
- package/dist/layers.CYDGmR2c.js +1 -0
- package/dist/layers.CYPtUh0S.js +36 -0
- package/dist/layers.CYjyWg9h.js +139 -0
- package/dist/layers.CZCoH1Jq.js +189 -0
- package/dist/layers.CZVe7Rrz.js +4 -0
- package/dist/layers.C_8NFZw0.js +84 -0
- package/dist/layers.C_IvrzZ3.js +7 -0
- package/dist/layers.C_vVmOaW.js +7 -0
- package/dist/layers.Cb3vLPzi.js +1 -0
- package/dist/layers.Cblg5KAJ.js +1286 -0
- package/dist/layers.CeUsnn-s.js +41 -0
- package/dist/layers.Cfwoj-CP.js +76 -0
- package/dist/layers.Cfxt2JbX.js +160 -0
- package/dist/layers.CjixIcYE.js +205 -0
- package/dist/layers.CliEt_s4.js +8 -0
- package/dist/layers.Cmumbtn4.js +11 -0
- package/dist/layers.Cnkh0zSn.js +5 -0
- package/dist/layers.Co0MEzNt.js +32 -0
- package/dist/layers.CpgPovn6.js +32 -0
- package/dist/layers.CqVTtuYm.js +6 -0
- package/dist/layers.Cr_8J_Ls.js +36 -0
- package/dist/layers.Cs7THreY.js +42 -0
- package/dist/layers.CtQHRQJd.js +65 -0
- package/dist/layers.Cuv2Lipq.js +10 -0
- package/dist/layers.Cuy--_Li.js +14 -0
- package/dist/layers.Cxrjuyke.js +38 -0
- package/dist/layers.Cxuu78R8.js +1 -0
- package/dist/layers.Cy_jbtrS.js +198 -0
- package/dist/layers.CyabQ7I1.js +40 -0
- package/dist/layers.CyqF5h2Z.js +1 -0
- package/dist/layers.Cyzu9PKQ.js +1 -0
- package/dist/layers.CzDyzzM2.js +36 -0
- package/dist/layers.D-LL79P8.js +32 -0
- package/dist/layers.D-uQN6e4.js +271 -0
- package/dist/layers.D00djYUT.js +9 -0
- package/dist/layers.D0zn4_Mx.js +1 -0
- package/dist/layers.D1PMEoqL.js +41 -0
- package/dist/layers.D1WSB9zI.js +806 -0
- package/dist/layers.D2dRxQww.js +10 -0
- package/dist/layers.D3KEnhiI.js +6 -0
- package/dist/layers.D3SlAvNp.js +934 -0
- package/dist/layers.D3eKKoAb.js +1 -0
- package/dist/layers.D4T8fTcj.js +1223 -0
- package/dist/layers.D7gfmd9A.js +36 -0
- package/dist/layers.D7jGxypv.js +8 -0
- package/dist/layers.DA1OUhKy.js +10 -0
- package/dist/layers.DB4o6Xfv.js +42 -0
- package/dist/layers.DBUjVgMd.js +1 -0
- package/dist/layers.DCkmUFPh.js +2966 -0
- package/dist/layers.DD4QPdYS.js +96 -0
- package/dist/layers.DE2Io1k7.js +295 -0
- package/dist/layers.DKnEcoKx.js +1088 -0
- package/dist/layers.DKsXm_hK.js +9 -0
- package/dist/layers.DLeGllIz.js +1 -0
- package/dist/layers.DLwuMfdd.js +84 -0
- package/dist/layers.DMkBISW1.js +1 -0
- package/dist/layers.DN9HoVxI.js +18 -0
- package/dist/layers.DOrgOHBr.js +1 -0
- package/dist/layers.DPipd7Yf.js +1 -0
- package/dist/layers.DQpNkl-s.js +39 -0
- package/dist/layers.DSNr6P6_.js +40 -0
- package/dist/layers.DWGLEZg1.js +34 -0
- package/dist/layers.DWxUDz1V.js +13 -0
- package/dist/layers.DYk9FILk.js +8 -0
- package/dist/layers.DZ3Nv-_j.js +8 -0
- package/dist/layers.DZGvjyDH.js +1 -0
- package/dist/layers.DZucH9TB.js +40 -0
- package/dist/layers.D__NkOsa.js +7 -0
- package/dist/layers.DbaKVP5e.js +1 -0
- package/dist/layers.DfkAyTyX.js +39 -0
- package/dist/layers.Dgie_iy2.js +772 -0
- package/dist/layers.DhHIDfZ5.js +1 -0
- package/dist/layers.Di-7t8Xt.js +6 -0
- package/dist/layers.DiPSTN4q.js +1 -0
- package/dist/layers.DjLIeP8d.js +257 -0
- package/dist/layers.DjUOC4st.js +16 -0
- package/dist/layers.Dk6h-6Wb.js +2 -0
- package/dist/layers.DkRR3p16.js +61 -0
- package/dist/layers.DnXxZJQo.js +48149 -0
- package/dist/layers.DpahuC02.js +6 -0
- package/dist/layers.Dpqc2FAN.js +40 -0
- package/dist/layers.DqScp2vq.js +1126 -0
- package/dist/layers.Dr1JRZ_S.js +4 -0
- package/dist/layers.DrTaVUsA.js +39 -0
- package/dist/layers.DrXLa4el.js +44 -0
- package/dist/layers.DtKxMd0g.js +4 -0
- package/dist/layers.DxA6ocdw.js +70 -0
- package/dist/layers.DxRZNwMP.js +1 -0
- package/dist/layers.Dy1naDTQ.js +14 -0
- package/dist/layers.FArKPCKA.js +21941 -0
- package/dist/layers.FXdB_jrR.js +9 -0
- package/dist/layers.GbuD0dtx.js +6 -0
- package/dist/layers.ILs-xE7i.js +11 -0
- package/dist/layers.JWCLFILJ.js +1 -0
- package/dist/layers.L9obQAvP.js +10 -0
- package/dist/layers.Lb5VQ9U4.js +504 -0
- package/dist/layers.MCy444Ia.js +41 -0
- package/dist/layers.QyDQqf0G.js +39 -0
- package/dist/layers.R4CPUhiF.js +8 -0
- package/dist/layers.R8mPlCA0.js +261 -0
- package/dist/layers.Sjtd5SpD.js +84 -0
- package/dist/layers.XlzBx5CM.js +437 -0
- package/dist/layers.YD8zq7G1.js +41 -0
- package/dist/layers.YWM6eRUH.js +1 -0
- package/dist/layers.a6EbdnVa.js +37 -0
- package/dist/layers.b0h5ZBmD.js +61 -0
- package/dist/layers.b9B2NY7n.js +11690 -0
- package/dist/layers.bS5nz97o.js +3 -0
- package/dist/layers.biaV5QcU.js +7 -0
- package/dist/layers.dxw35GiE.js +52 -0
- package/dist/layers.gFW_9pGM.js +1225 -0
- package/dist/layers.ge00jJfz.js +38 -0
- package/dist/layers.iryDeY19.js +9 -0
- package/dist/layers.jN02hLg8.js +7 -0
- package/dist/layers.jqEynR2I.js +8 -0
- package/dist/layers.lCpg7dOn.js +21 -0
- package/dist/layers.lIg0cncJ.js +39 -0
- package/dist/layers.lKk6bx4R.js +1 -0
- package/dist/layers.m4XcFQDd.js +6 -0
- package/dist/layers.m6FDW_ho.js +8 -0
- package/dist/layers.r6u8p96p.js +2238 -0
- package/dist/layers.rWob7btU.js +10 -0
- package/dist/layers.rYZbXo4d.js +32 -0
- package/dist/layers.sldWqHdD.js +11 -0
- package/dist/layers.tFqdqg82.js +10 -0
- package/dist/layers.v25uTBY8.js +39 -0
- package/dist/layers.wNarGMxP.js +9 -0
- package/dist/layers.wxYowcaq.js +41 -0
- package/dist/layers.xjN3ile4.js +9 -0
- package/dist/layers.yNlD-OCA.js +35 -0
- package/dist/layers.z-RuimGg.js +11 -0
- package/dist/layers.zvsP8spW.js +1 -0
- package/package.json +1 -1
- package/dist/layers.94hwidA2.js +0 -198
- package/dist/layers.B4l6ta1Q.js +0 -1
- package/dist/layers.BMrOAD_P.js +0 -1
- package/dist/layers.DOzLBYZr.js +0 -304
- package/dist/layers.YRyXopy_.js +0 -151
- package/dist/layers.usKC_Id5.js +0 -1
- package/dist/layers.zu-IYGYU.js +0 -47463
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import "./layers.C2f7uCzl.js";
|
|
2
|
+
var e = { paste: "Klistra in", pasteAsPlaintext: "Klistra som oformaterad text", pasteCharts: "Klistra in diagram", selectAll: "Markera alla", multiSelect: "Lägg till element till markering", moveCanvas: "Flytta canvas", cut: "Klipp ut", copy: "Kopiera", copyAsPng: "Kopiera till urklipp som PNG", copyAsSvg: "Kopiera till urklipp som SVG", copyText: "Kopiera till urklipp som text", copySource: "Kopiera källa till urklipp", convertToCode: "Konvertera till kod", bringForward: "Flytta framåt", sendToBack: "Flytta underst", bringToFront: "Flytta främst", sendBackward: "Skicka bakåt", delete: "Ta bort", copyStyles: "Kopiera stil", pasteStyles: "Klistra in stil", stroke: "Linje", background: "Bakgrund", fill: "Fyllnad", strokeWidth: "Linjebredd", strokeStyle: "Linjestil", strokeStyle_solid: "Solid", strokeStyle_dashed: "Streckad", strokeStyle_dotted: "Punktad", sloppiness: "Slarvighet", opacity: "Genomskinlighet", textAlign: "Textjustering", edges: "Kanter", sharp: "Skarp", round: "Rund", arrowheads: "Pilhuvuden", arrowhead_none: "Inga", arrowhead_arrow: "Pil", arrowhead_bar: "Stolpe", arrowhead_circle: "Cirkel", arrowhead_circle_outline: "Cirkel (kontur)", arrowhead_triangle: "Triangel", arrowhead_triangle_outline: "Triangel (kontur)", arrowhead_diamond: "Diamant", arrowhead_diamond_outline: "Diamant (kontur)", fontSize: "Teckenstorlek", fontFamily: "Teckensnitt", addWatermark: 'Lägg till "Skapad med Excalidraw"', handDrawn: "Handritad", normal: "Normal", code: "Kod", small: "Liten", medium: "Medium", large: "Stor", veryLarge: "Mycket stor", solid: "Solid", hachure: "Skraffering", zigzag: "Sicksack", crossHatch: "Skraffera med kors", thin: "Tunn", bold: "Fet", left: "Vänster", center: "Centrera", right: "Höger", extraBold: "Extra fet", architect: "Arkitekt", artist: "Artist", cartoonist: "Serietecknare", fileTitle: "Filnamn", colorPicker: "Färgväljare", canvasColors: "Används på canvas", canvasBackground: "Canvas-bakgrund", drawingCanvas: "Ritar canvas", layers: "Lager", actions: "Åtgärder", language: "Språk", liveCollaboration: "Samarbeta live...", duplicateSelection: "Duplicera", untitled: "Namnlös", name: "Namn", yourName: "Ditt namn", madeWithExcalidraw: "Skapad med Excalidraw", group: "Gruppera markering", ungroup: "Avgruppera markering", collaborators: "Medarbetare", showGrid: "Visa rutnät", addToLibrary: "Lägg till i biblioteket", removeFromLibrary: "Ta bort från bibliotek", libraryLoadingMessage: "Laddar bibliotek…", libraries: "Bläddra i bibliotek", loadingScene: "Laddar skiss…", align: "Justera", alignTop: "Justera överkant", alignBottom: "Justera underkant", alignLeft: "Justera vänster", alignRight: "Justera höger", centerVertically: "Centrera vertikalt", centerHorizontally: "Centrera horisontellt", distributeHorizontally: "Fördela horisontellt", distributeVertically: "Fördela vertikalt", flipHorizontal: "Vänd horisontellt", flipVertical: "Vänd vertikalt", viewMode: "Visningsläge", share: "Dela", showStroke: "Visa färgväljare för linjefärg", showBackground: "Visa färgväljare för bakgrundsfärg", toggleTheme: "Växla tema", personalLib: "Personligt bibliotek", excalidrawLib: "Excalidraw bibliotek", decreaseFontSize: "Minska fontstorleken", increaseFontSize: "Öka fontstorleken", unbindText: "Koppla bort text", bindText: "Bind texten till behållaren", createContainerFromText: "Radbryt text i en avgränsad yta", link: { edit: "Redigera länk", editEmbed: "Redigera länk & bädda in", create: "Skapa länk", createEmbed: "Skapa länk & bädda in", label: "Länk", labelEmbed: "Länka & bädda in", empty: "Ingen länk är angiven" }, lineEditor: { edit: "Redigera linje", exit: "Avsluta linjeredigerare" }, elementLock: { lock: "Lås", unlock: "Lås upp", lockAll: "Lås alla", unlockAll: "Lås upp alla" }, statusPublished: "Publicerad", sidebarLock: "Håll sidofältet öppet", selectAllElementsInFrame: "Markera alla element i rutan", removeAllElementsFromFrame: "Ta bort alla element från rutan", eyeDropper: "Välj färg från canvas", textToDiagram: "Text till diagram", prompt: "Fråga" }, a = { noItems: "Inga objekt tillagda ännu...", hint_emptyLibrary: "Välj ett objekt på canvasen för att lägga till det här, eller installera ett bibliotek från det publika arkivet, nedan.", hint_emptyPrivateLibrary: "Välj ett objekt på canvasen för att lägga till det här." }, t = { clearReset: "Återställ canvasen", exportJSON: "Exportera till fil", exportImage: "Exportera bild...", export: "Spara till...", copyToClipboard: "Kopiera till urklipp", save: "Spara till aktuell fil", saveAs: "Spara som", load: "Öppna", getShareableLink: "Hämta delbar länk", close: "Stäng", selectLanguage: "Välj språk", scrollBackToContent: "Bläddra tillbaka till innehållet", zoomIn: "Zooma in", zoomOut: "Zooma ut", resetZoom: "Återställ zoom", menu: "Meny", done: "Klart", edit: "Redigera", undo: "Ångra", redo: "Gör om", resetLibrary: "Återställ bibliotek", createNewRoom: "Skapa ett nytt rum", fullScreen: "Helskärm", darkMode: "Mörkt läge", lightMode: "Ljust läge", zenMode: "Zen-läge", objectsSnapMode: "Fäst mot objekt", exitZenMode: "Gå ur zen-läge", cancel: "Avbryt", clear: "Rensa", remove: "Ta bort", embed: "Växla inbäddning", publishLibrary: "Publicera", submit: "Skicka", confirm: "Bekräfta", embeddableInteractionButton: "Klicka för att interagera" }, r = { clearReset: "Detta rensar hela canvasen. Är du säker?", couldNotCreateShareableLink: "Kunde inte skapa delbar länk.", couldNotCreateShareableLinkTooBig: "Kunde inte skapa delbar länk: skissen är för stor", couldNotLoadInvalidFile: "Kunde inte ladda ogiltig fil", importBackendFailed: "Importering från backend misslyckades.", cannotExportEmptyCanvas: "Kan inte exportera tom canvas.", couldNotCopyToClipboard: "Kunde inte kopiera till urklipp.", decryptFailed: "Kunde inte avkryptera data.", uploadedSecurly: "Uppladdning har säkrats med kryptering från ände till ände. vilket innebär att Excalidraw server och tredje part inte kan läsa innehållet.", loadSceneOverridePrompt: "Laddning av extern skiss kommer att ersätta ditt befintliga innehåll. Vill du fortsätta?", collabStopOverridePrompt: `Att stoppa sessionen kommer att skriva över din föregående, lokalt lagrade skiss. Är du säker?
|
|
3
|
+
|
|
4
|
+
(Om du vill behålla din lokala skiss, stäng bara webbläsarfliken istället.)`, errorAddingToLibrary: "Kunde inte lägga till objekt i biblioteket", errorRemovingFromLibrary: "Kunde inte ta bort objekt från biblioteket", confirmAddLibrary: "Detta kommer att lägga till {{numShapes}} form(er) till ditt bibliotek. Är du säker?", imageDoesNotContainScene: "Den här bilden verkar inte innehålla någon skissdata. Har du aktiverat inbäddning av skiss under export?", cannotRestoreFromImage: "Skiss kunde inte återställas från denna bildfil", invalidSceneUrl: "Det gick inte att importera skiss från den angivna webbadressen. Antingen har den fel format, eller så innehåller den ingen giltig Excalidraw JSON data.", resetLibrary: "Detta kommer att rensa ditt bibliotek. Är du säker?", removeItemsFromsLibrary: "Ta bort {{count}} objekt från biblioteket?", invalidEncryptionKey: "Krypteringsnyckeln måste vara 22 tecken. Livesamarbetet är inaktiverat.", collabOfflineWarning: `Ingen internetanslutning tillgänglig.
|
|
5
|
+
Dina ändringar kommer inte att sparas!` }, i = { unsupportedFileType: "Filtypen stöds inte.", imageInsertError: "Kunde inte infoga bild. Försök igen senare...", fileTooBig: "Filen är för stor. Maximal tillåten storlek är {{maxSize}}.", svgImageInsertError: "Kunde inte infoga SVG-bild. SVG-koden ser ogiltig ut.", failedToFetchImage: "Kunde inte hämta bilden.", invalidSVGString: "Ogiltig SVG.", cannotResolveCollabServer: "Det gick inte att ansluta till samarbets-servern. Ladda om sidan och försök igen.", importLibraryError: "Kunde inte ladda bibliotek", collabSaveFailed: "Det gick inte att spara i backend-databasen. Om problemen kvarstår bör du spara filen lokalt för att se till att du inte förlorar ditt arbete.", collabSaveFailed_sizeExceeded: "Det gick inte att spara till backend-databasen, whiteboarden verkar vara för stor. Du bör spara filen lokalt för att du inte ska förlora ditt arbete.", imageToolNotSupported: "Bilder är inaktiverade.", brave_measure_text_error: { line1: "Det ser ut som om du använder Brave-webbläsaren med <bold>Aggressivt Blockera fingeravtryck</bold> inställningen aktiverad.", line2: "Detta kan resultera i trasiga <bold>Textelement</bold> i dina ritningar.", line3: "Vi rekommenderar starkt att du inaktiverar den här inställningen. Du kan följa <link>dessa steg</link> för att inaktivera den.", line4: "Om inaktivering av denna inställning inte åtgärdar visningen av textelement, öppna ett <issueLink>ärende</issueLink> på vår GitHub, eller skriv till oss på <discordLink>Discord</discordLink>" }, libraryElementTypeError: { embeddable: "Inbäddbara element kan inte läggas till i biblioteket.", iframe: "IFrame-element kan inte läggas till i biblioteket.", image: "Stöd för att lägga till bilder till biblioteket kommer snart!" }, asyncPasteFailedOnRead: "Kunde inte klistra in (kunde inte läsa från urklipp).", asyncPasteFailedOnParse: "Kunde inte klistra in.", copyToSystemClipboardFailed: "Kunde inte kopiera till urklipp." }, n = { selection: "Markering", image: "Infoga bild", rectangle: "Rektangel", diamond: "Diamant", ellipse: "Ellips", arrow: "Pil", line: "Linje", freedraw: "Rita", text: "Text", library: "Bibliotek", lock: "Håll valt verktyg aktivt efter ritande", penMode: "Pennläge - förhindra touch", link: "Lägg till / Uppdatera länk för en vald form", eraser: "Radergummi", frame: "Rutverktyg", magicframe: "Trådram till kod", embeddable: "Bädda in (web)", laser: "Laserpekare", hand: "Hand (panoreringsverktyg)", extraTools: "Fler verktyg", mermaidToExcalidraw: "Mermaid till Excalidraw", magicSettings: "AI-inställningar" }, l = { canvasActions: "Canvas-åtgärder", selectedShapeActions: "Valda formåtgärder", shapes: "Former" }, o = { canvasPanning: "För att flytta whiteboarden, håll mushjulet eller mellanslagstangenten medan du drar eller använd handverktyget", linearElement: "Klicka för att starta flera punkter, dra för en linje", freeDraw: "Klicka och dra, släpp när du är klar", text: "Tips: du kan också lägga till text genom att dubbelklicka var som helst med markeringsverktyget", embeddable: "Klicka-dra för att skapa en webbplats-inbäddning", text_selected: "Dubbelklicka eller tryck ENTER för att redigera text", text_editing: "Tryck Escape eller CtrlOrCmd + ENTER för att slutföra redigeringen", linearElementMulti: "Klicka på sista punkten eller tryck Escape eller Enter för att avsluta", lockAngle: "Du kan begränsa vinkeln genom att hålla SKIFT", resize: `Du kan behålla proportioner genom att hålla SHIFT medan du ändrar storlek,
|
|
6
|
+
håller du ALT ändras storlek relativt mitten`, resizeImage: `Du kan ändra storlek fritt genom att hålla SHIFT,
|
|
7
|
+
håll ALT för att ändra storlek från mitten`, rotate: "Du kan begränsa vinklar genom att hålla SHIFT medan du roterar", lineEditor_info: "Håll Ctrl/Cmd och dubbelklicka eller tryck på Ctrl/Cmd + Enter för att redigera punkter", lineEditor_pointSelected: "Tryck på Ta bort för att ta bort punkt(er), Ctrl + D eller Cmd + D för att duplicera, eller dra för att flytta", lineEditor_nothingSelected: `Välj en punkt att redigera (håll SHIFT för att välja flera),
|
|
8
|
+
eller håll ned Alt och klicka för att lägga till nya punkter`, placeImage: "Klicka för att placera bilden, eller klicka och dra för att ställa in dess storlek manuellt", publishLibrary: "Publicera ditt eget bibliotek", bindTextToElement: "Tryck på Enter för att lägga till text", deepBoxSelect: "Håll Ctrl eller Cmd för att djupvälja, och för att förhindra att dra", eraserRevert: "Håll Alt för att återställa de element som är markerade för borttagning", firefox_clipboard_write: 'Denna funktion kan sannolikt aktiveras genom att ställa in "dom.events.asyncClipboard.clipboardItem" flaggan till "true". För att ändra webbläsarens flaggor i Firefox, besök "about:config" sidan.', disableSnapping: "Håll Ctrl eller Cmd för att inaktivera fästning" }, s = { cannotShowPreview: "Kan inte visa förhandsgranskning", canvasTooBig: "Canvasen kan vara för stor.", canvasTooBigTip: "Tips: prova att flytta de mest avlägsna elementen lite närmare varandra." }, d = { headingMain: "Ett fel uppstod. Försök <button>med att läsa in sidan på nytt.</button>", clearCanvasMessage: "Om omladdning inte fungerar, försök <button>rensa canvasen.</button>", clearCanvasCaveat: " Detta kommer att leda till förlust av arbete ", trackedToSentry: "Felet med identifieraren {{eventId}} spårades på vårt system.", openIssueMessage: "Vi var mycket försiktiga med att inte inkludera din skissinformation om felet. Om din skiss inte är privat, vänligen överväga att följa upp på vår <button>buggspårare.</button> Vänligen inkludera information nedan genom att kopiera och klistra in i GitHub-problemet.", sceneContent: "Skissinnehåll:" }, x = { desc_intro: "Du kan bjuda in personer till din nuvarande skiss för att samarbeta med dig.", desc_privacy: "Oroa dig inte, sessionen använder kryptering från ände till ände, så vad du än ritar kommer att förbli privat. Inte ens vår server kommer att kunna se vad du skissar.", button_startSession: "Starta sessionen", button_stopSession: "Stoppa session", desc_inProgressIntro: "Nu pågår en live-samarbetssession.", desc_shareLink: "Dela denna länk med någon du vill samarbeta med:", desc_exitSession: "Att avbryta sessionen kommer att koppla bort dig från rummet, men du kommer att kunna fortsätta arbeta med skissen, lokalt. Observera att detta inte påverkar andra människor, och de kommer fortfarande att kunna samarbeta på deras version.", shareTitle: "Delta i en live-samarbetssession på Excalidraw" }, k = { title: "Fel" }, E = { disk_title: "Spara till disk", disk_details: "Exportera skissdata till en fil som du kan importera från senare.", disk_button: "Spara till fil", link_title: "Delbar länk", link_details: "Exportera som en skrivskyddad länk.", link_button: "Exportera till länk", excalidrawplus_description: "Spara skissen till din Excalidraw+ arbetsyta.", excalidrawplus_button: "Exportera", excalidrawplus_exportError: "Det gick inte att exportera till Excalidraw+ just nu..." }, g = { blog: "Läs vår blogg", click: "klicka", deepSelect: "Djupval", deepBoxSelect: "Djupval inom boxen, och förhindra att dra", curvedArrow: "Böjd pil", curvedLine: "Böjd linje", documentation: "Dokumentation", doubleClick: "dubbelklicka", drag: "dra", editor: "Redigerare", editLineArrowPoints: "Redigera linje-/pilpunkter", editText: "Redigera text / lägg till etikett", github: "Hittat ett problem? Rapportera", howto: "Följ våra guider", or: "eller", preventBinding: "Förhindra pilbindning", tools: "Verktyg", shortcuts: "Tangentbordsgenvägar", textFinish: "Slutför redigering (text)", textNewLine: "Lägg till ny rad (text)", title: "Hjälp", view: "Visa", zoomToFit: "Zooma för att rymma alla element", zoomToSelection: "Zooma till markering", toggleElementLock: "Lås/Lås upp valda", movePageUpDown: "Flytta sida upp/ner", movePageLeftRight: "Flytta sida vänster/höger" }, m = { title: "Rensa canvas" }, b = { title: "Publicera bibliotek", itemName: "Objektnamn", authorName: "Upphovsmannens namn", githubUsername: "GitHub-användarnamn", twitterUsername: "Twitter-användarnamn", libraryName: "Biblioteksnamn", libraryDesc: "Biblioteksbeskrivning", website: "Webbplats", placeholder: { authorName: "Ditt namn eller användarnamn", libraryName: "Namn på ditt bibliotek", libraryDesc: "Beskrivning av ditt bibliotek för att hjälpa människor att förstå dess användning", githubHandle: "Github-användarnamn (valfritt), så att du kan redigera biblioteket när du har skickat in det för granskning", twitterHandle: "Twitter-användarnamn (valfritt), så vi vet vem att kreditera när du marknadsför på Twitter", website: "Länk till din personliga webbplats eller någon annan (valfritt)" }, errors: { required: "Obligatoriskt", website: "Ange en giltig URL" }, noteDescription: "Skicka ditt bibliotek för att inkluderas i <link>det offentliga bibliotekets arkiv</link>för andra människor att använda i sina skisser.", noteGuidelines: "Biblioteket måste godkännas manuellt först. Vänligen läs <link>riktlinjerna</link> innan du skickar in. Du behöver ett GitHub-konto för att kommunicera och göra ändringar om så önskas, men det krävs inte.", noteLicense: "Genom att skicka in godkänner du att biblioteket kommer att publiceras under <link>MIT-licens, </link>vilket kort sagt betyder att vem som helst kan använda det utan restriktioner.", noteItems: "Varje objekt måste ha sitt eget namn så att det är filtrerbart. Följande objekt kommer att inkluderas:", atleastOneLibItem: "Välj minst ett biblioteksobjekt för att komma igång", republishWarning: "Obs: några av de markerade objekten är redan markerade som publicerade/skickade. Du bör endast skicka objekt igen när du uppdaterar ett befintligt bibliotek eller inlämning." }, p = { title: "Bibliotek inskickat", content: "Tack {{authorName}}. Ditt bibliotek har skickats för granskning. Du kan följa status<link>här</link>" }, c = { resetLibrary: "Återställ bibliotek", removeItemsFromLib: "Ta bort markerade objekt från biblioteket" }, u = { header: "Exportera bild", label: { withBackground: "Bakgrund", onlySelected: "Endast markerade", darkMode: "Mörkt läge", embedScene: "Bädda in skiss", scale: "Skala", padding: "Utfyllnad" }, tooltip: { embedScene: `Skissdata kommer att sparas i den exporterade PNG/SVG-filen så att skissen kan återställas från den.
|
|
9
|
+
Kommer att öka exporterad filstorlek.` }, title: { exportToPng: "Exportera till PNG", exportToSvg: "Exportera till SVG", copyPngToClipboard: "Kopiera PNG till urklipp" }, button: { exportToPng: "PNG", exportToSvg: "SVG", copyPngToClipboard: "Kopiera till urklipp" } }, v = { tooltip: "Dina skisser är krypterade från ände till ände så Excalidraws servrar kommer aldrig att se dem.", link: "Blogginlägg om kryptering från ände till ände i Excalidraw" }, f = { angle: "Vinkel", element: "Element", elements: "Element", height: "Höjd", scene: "Skiss", selected: "Valda", storage: "Lagring", title: "Statistik för nördar", total: "Totalt", version: "Version", versionCopy: "Klicka för att kopiera", versionNotAvailable: "Versionen är inte tillgänglig", width: "Bredd" }, F = { addedToLibrary: "Tillagd i biblioteket", copyStyles: "Kopierade stilar.", copyToClipboard: "Kopierad till urklipp.", copyToClipboardAsPng: `Kopierade {{exportSelection}} till urklipp som PNG
|
|
10
|
+
({{exportColorScheme}})`, fileSaved: "Fil sparad.", fileSavedToFilename: "Sparad till {filename}", canvas: "canvas", selection: "markering", pasteAsSingleElement: `Använd {{shortcut}} för att klistra in som ett enda element,
|
|
11
|
+
eller klistra in i en befintlig textredigerare`, unableToEmbed: "Att bädda in denna webbadress är för närvarande inte tillåtet. Skapa en problemrapport på GitHub för att begära att webbadressen vitlistas.", unrecognizedLinkFormat: "Länken du bäddade in matchar inte det förväntade formatet. Försök klistra in 'embed'-strängen som tillhandahålls av källwebbplatsen" }, h = { transparent: "Genomskinlig", black: "Svart", white: "Vit", red: "Röd", pink: "Rosa", grape: "Lila", violet: "Violett", gray: "Grå", blue: "Blå", cyan: "Turkos", teal: "Blågrön", green: "Grön", yellow: "Gul", orange: "Orange", bronze: "Brons" }, y = { app: { center_heading: "All data sparas lokalt i din webbläsare.", center_heading_plus: "Ville du gå till Excalidraw+ istället?", menuHint: "Exportera, inställningar, språk, ..." }, defaults: { menuHint: "Exportera, inställningar och mer...", center_heading: "Förenklade. Diagram.", toolbarHint: "Välj ett verktyg & börja rita!", helpHint: "Genvägar & hjälp" } }, S = { mostUsedCustomColors: "Mest frekvent använda anpassade färger", colors: "Färger", shades: "Nyanser", hexCode: "Hex-kod", noShades: "Inga nyanser tillgängliga för denna färg" }, w = { action: { exportToImage: { title: "Exportera som bild", button: "Exportera som bild", description: "Exportera scendata som en bild från vilken du kan importera senare." }, saveToDisk: { title: "Spara till disk", button: "Spara till disk", description: "Exportera scendata till en fil från vilken du kan importera senare." }, excalidrawPlus: { title: "Excalidraw+", button: "Exportera till Excalidraw+", description: "Spara skissen till din Excalidraw+ arbetsyta." } }, modal: { loadFromFile: { title: "Läs in från fil", button: "Läs in från fil", description: "Laddar från en fil kommer <bold>ersätta ditt befintliga innehåll</bold>.<br></br>Du kan säkerhetskopiera din ritning först med hjälp av ett av alternativen nedan." }, shareableLink: { title: "Läs in från länk", button: "Ersätt mitt innehåll", description: "Inläsning av en extern ritning kommer <bold>ersätta ditt befintliga innehåll</bold>.<br></br>Du kan säkerhetskopiera din ritning först genom att använda ett av alternativen nedan." } } }, T = { title: "Mermaid till Excalidraw", button: "Infoga", description: "För närvarande stöds endast <flowchartLink>Flödesdiagram</flowchartLink>,<sequenceLink> Sekvensdiagram </sequenceLink> och <classLink>Klassdiagram</classLink>. De andra typerna kommer att återges som bild i Excalidraw.", syntax: "Mermaid-syntax", preview: "Förhandsgranska" }, D = { labels: e, library: a, buttons: t, alerts: r, errors: i, toolBar: n, headings: l, hints: o, canvasError: s, errorSplash: d, roomDialog: x, errorDialog: k, exportDialog: E, helpDialog: g, clearCanvasDialog: m, publishDialog: b, publishSuccessDialog: p, confirmDialog: c, imageExportDialog: u, encrypted: v, stats: f, toast: F, colors: h, welcomeScreen: y, colorPicker: S, overwriteConfirm: w, mermaid: T };
|
|
12
|
+
export {
|
|
13
|
+
r as alerts,
|
|
14
|
+
t as buttons,
|
|
15
|
+
s as canvasError,
|
|
16
|
+
m as clearCanvasDialog,
|
|
17
|
+
S as colorPicker,
|
|
18
|
+
h as colors,
|
|
19
|
+
c as confirmDialog,
|
|
20
|
+
D as default,
|
|
21
|
+
v as encrypted,
|
|
22
|
+
k as errorDialog,
|
|
23
|
+
d as errorSplash,
|
|
24
|
+
i as errors,
|
|
25
|
+
E as exportDialog,
|
|
26
|
+
l as headings,
|
|
27
|
+
g as helpDialog,
|
|
28
|
+
o as hints,
|
|
29
|
+
u as imageExportDialog,
|
|
30
|
+
e as labels,
|
|
31
|
+
a as library,
|
|
32
|
+
T as mermaid,
|
|
33
|
+
w as overwriteConfirm,
|
|
34
|
+
b as publishDialog,
|
|
35
|
+
p as publishSuccessDialog,
|
|
36
|
+
x as roomDialog,
|
|
37
|
+
f as stats,
|
|
38
|
+
F as toast,
|
|
39
|
+
n as toolBar,
|
|
40
|
+
y as welcomeScreen
|
|
41
|
+
};
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { jsxs as p, Fragment as M, jsx as c } from "react/jsx-runtime";
|
|
2
|
+
import { useState as n, useRef as x, useEffect as O } from "react";
|
|
3
|
+
import { useLexicalComposerContext as N } from "@lexical/react/LexicalComposerContext";
|
|
4
|
+
import { createCommand as g, COMMAND_PRIORITY_EDITOR as w } from "lexical";
|
|
5
|
+
import { c as D, g as S, d as A } from "./layers.CCWJVHwX.js";
|
|
6
|
+
import { C as R, E as I } from "./layers.DE2Io1k7.js";
|
|
7
|
+
const _ = g(
|
|
8
|
+
"INSERT_EXCALIDRAW_COMMAND"
|
|
9
|
+
);
|
|
10
|
+
function k() {
|
|
11
|
+
const [o] = N(), [d, t] = n(!1), [e, f] = n(
|
|
12
|
+
null
|
|
13
|
+
), s = x(null), [m, a] = n(!1);
|
|
14
|
+
O(() => {
|
|
15
|
+
if (!o.hasNodes([D]))
|
|
16
|
+
throw new Error(
|
|
17
|
+
"ExcalidrawPlugin: ExcalidrawNode not registered on editor"
|
|
18
|
+
);
|
|
19
|
+
return o.registerCommand(
|
|
20
|
+
_,
|
|
21
|
+
() => {
|
|
22
|
+
t(!0);
|
|
23
|
+
const r = S();
|
|
24
|
+
return f(r), !0;
|
|
25
|
+
},
|
|
26
|
+
w
|
|
27
|
+
);
|
|
28
|
+
}, [o]);
|
|
29
|
+
const l = () => {
|
|
30
|
+
t(!1), a(!1), s.current = !1;
|
|
31
|
+
};
|
|
32
|
+
return /* @__PURE__ */ p(M, { children: [
|
|
33
|
+
/* @__PURE__ */ c(
|
|
34
|
+
R,
|
|
35
|
+
{
|
|
36
|
+
isCloseModal: m,
|
|
37
|
+
confirmClose: l,
|
|
38
|
+
setCloseModalOpen: a
|
|
39
|
+
}
|
|
40
|
+
),
|
|
41
|
+
/* @__PURE__ */ c(
|
|
42
|
+
I,
|
|
43
|
+
{
|
|
44
|
+
initialElements: [],
|
|
45
|
+
initialAppState: {},
|
|
46
|
+
initialFiles: {},
|
|
47
|
+
isShown: d,
|
|
48
|
+
onDelete: () => {
|
|
49
|
+
t(!1);
|
|
50
|
+
},
|
|
51
|
+
onClose: () => {
|
|
52
|
+
s.current ? a(!0) : l();
|
|
53
|
+
},
|
|
54
|
+
onSave: (r, u, C, E) => {
|
|
55
|
+
o.update(() => {
|
|
56
|
+
const i = A();
|
|
57
|
+
i.setData(
|
|
58
|
+
JSON.stringify({
|
|
59
|
+
appState: u,
|
|
60
|
+
elements: r,
|
|
61
|
+
files: C,
|
|
62
|
+
previewSVG: E
|
|
63
|
+
})
|
|
64
|
+
), e && e.getParent() && (e == null || e.replace(i));
|
|
65
|
+
}), t(!1);
|
|
66
|
+
},
|
|
67
|
+
closeOnClickOutside: !1,
|
|
68
|
+
isEdited: s
|
|
69
|
+
}
|
|
70
|
+
)
|
|
71
|
+
] });
|
|
72
|
+
}
|
|
73
|
+
export {
|
|
74
|
+
_ as INSERT_EXCALIDRAW_COMMAND,
|
|
75
|
+
k as default
|
|
76
|
+
};
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
"use strict";const h=require("./layers.DD4QPdYS.js");var Oe=(function(){var e=function(v,u,a,A){for(a=a||{},A=v.length;A--;a[v[A]]=u);return a},i=[1,17],r=[1,18],c=[1,19],o=[1,39],f=[1,40],k=[1,25],D=[1,23],B=[1,24],_=[1,31],Ae=[1,32],fe=[1,33],pe=[1,34],de=[1,35],Ce=[1,36],Ee=[1,26],me=[1,27],ge=[1,28],be=[1,29],C=[1,43],ke=[1,30],E=[1,42],m=[1,44],g=[1,41],T=[1,45],Te=[1,9],l=[1,8,9],z=[1,56],K=[1,57],Y=[1,58],Q=[1,59],j=[1,60],ye=[1,61],Fe=[1,62],X=[1,8,9,39],we=[1,74],P=[1,8,9,12,13,21,37,39,42,59,60,61,62,63,64,65,70,72],q=[1,8,9,12,13,19,21,37,39,42,46,59,60,61,62,63,64,65,70,72,74,80,95,97,98],H=[13,74,80,95,97,98],M=[13,64,65,74,80,95,97,98],Pe=[13,59,60,61,62,63,74,80,95,97,98],De=[1,93],W=[1,110],J=[1,108],Z=[1,102],$=[1,103],ee=[1,104],te=[1,105],se=[1,106],ie=[1,107],ne=[1,109],Be=[1,8,9,37,39,42],ue=[1,8,9,21],Me=[1,8,9,78],S=[1,8,9,21,73,74,78,80,81,82,83,84,85],_e={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,statements:5,graphConfig:6,CLASS_DIAGRAM:7,NEWLINE:8,EOF:9,statement:10,classLabel:11,SQS:12,STR:13,SQE:14,namespaceName:15,alphaNumToken:16,className:17,classLiteralName:18,GENERICTYPE:19,relationStatement:20,LABEL:21,namespaceStatement:22,classStatement:23,memberStatement:24,annotationStatement:25,clickStatement:26,styleStatement:27,cssClassStatement:28,noteStatement:29,direction:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,namespaceIdentifier:36,STRUCT_START:37,classStatements:38,STRUCT_STOP:39,NAMESPACE:40,classIdentifier:41,STYLE_SEPARATOR:42,members:43,CLASS:44,ANNOTATION_START:45,ANNOTATION_END:46,MEMBER:47,SEPARATOR:48,relation:49,NOTE_FOR:50,noteText:51,NOTE:52,direction_tb:53,direction_bt:54,direction_rl:55,direction_lr:56,relationType:57,lineType:58,AGGREGATION:59,EXTENSION:60,COMPOSITION:61,DEPENDENCY:62,LOLLIPOP:63,LINE:64,DOTTED_LINE:65,CALLBACK:66,LINK:67,LINK_TARGET:68,CLICK:69,CALLBACK_NAME:70,CALLBACK_ARGS:71,HREF:72,STYLE:73,ALPHA:74,stylesOpt:75,CSSCLASS:76,style:77,COMMA:78,styleComponent:79,NUM:80,COLON:81,UNIT:82,SPACE:83,BRKT:84,PCT:85,commentToken:86,textToken:87,graphCodeTokens:88,textNoTagsToken:89,TAGSTART:90,TAGEND:91,"==":92,"--":93,DEFAULT:94,MINUS:95,keywords:96,UNICODE_TEXT:97,BQUOTE_STR:98,$accept:0,$end:1},terminals_:{2:"error",7:"CLASS_DIAGRAM",8:"NEWLINE",9:"EOF",12:"SQS",13:"STR",14:"SQE",19:"GENERICTYPE",21:"LABEL",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",37:"STRUCT_START",39:"STRUCT_STOP",40:"NAMESPACE",42:"STYLE_SEPARATOR",44:"CLASS",45:"ANNOTATION_START",46:"ANNOTATION_END",47:"MEMBER",48:"SEPARATOR",50:"NOTE_FOR",52:"NOTE",53:"direction_tb",54:"direction_bt",55:"direction_rl",56:"direction_lr",59:"AGGREGATION",60:"EXTENSION",61:"COMPOSITION",62:"DEPENDENCY",63:"LOLLIPOP",64:"LINE",65:"DOTTED_LINE",66:"CALLBACK",67:"LINK",68:"LINK_TARGET",69:"CLICK",70:"CALLBACK_NAME",71:"CALLBACK_ARGS",72:"HREF",73:"STYLE",74:"ALPHA",76:"CSSCLASS",78:"COMMA",80:"NUM",81:"COLON",82:"UNIT",83:"SPACE",84:"BRKT",85:"PCT",88:"graphCodeTokens",90:"TAGSTART",91:"TAGEND",92:"==",93:"--",94:"DEFAULT",95:"MINUS",96:"keywords",97:"UNICODE_TEXT",98:"BQUOTE_STR"},productions_:[0,[3,1],[3,1],[4,1],[6,4],[5,1],[5,2],[5,3],[11,3],[15,1],[15,2],[17,1],[17,1],[17,2],[17,2],[17,2],[10,1],[10,2],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,2],[10,2],[10,1],[22,4],[22,5],[36,2],[38,1],[38,2],[38,3],[23,1],[23,3],[23,4],[23,6],[41,2],[41,3],[25,4],[43,1],[43,2],[24,1],[24,2],[24,1],[24,1],[20,3],[20,4],[20,4],[20,5],[29,3],[29,2],[30,1],[30,1],[30,1],[30,1],[49,3],[49,2],[49,2],[49,1],[57,1],[57,1],[57,1],[57,1],[57,1],[58,1],[58,1],[26,3],[26,4],[26,3],[26,4],[26,4],[26,5],[26,3],[26,4],[26,4],[26,5],[26,4],[26,5],[26,5],[26,6],[27,3],[28,3],[75,1],[75,3],[77,1],[77,2],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[86,1],[86,1],[87,1],[87,1],[87,1],[87,1],[87,1],[87,1],[87,1],[89,1],[89,1],[89,1],[89,1],[16,1],[16,1],[16,1],[16,1],[18,1],[51,1]],performAction:function(u,a,A,n,d,t,G){var s=t.length-1;switch(d){case 8:this.$=t[s-1];break;case 9:case 11:case 12:this.$=t[s];break;case 10:case 13:this.$=t[s-1]+t[s];break;case 14:case 15:this.$=t[s-1]+"~"+t[s]+"~";break;case 16:n.addRelation(t[s]);break;case 17:t[s-1].title=n.cleanupLabel(t[s]),n.addRelation(t[s-1]);break;case 27:this.$=t[s].trim(),n.setAccTitle(this.$);break;case 28:case 29:this.$=t[s].trim(),n.setAccDescription(this.$);break;case 30:n.addClassesToNamespace(t[s-3],t[s-1]);break;case 31:n.addClassesToNamespace(t[s-4],t[s-1]);break;case 32:this.$=t[s],n.addNamespace(t[s]);break;case 33:this.$=[t[s]];break;case 34:this.$=[t[s-1]];break;case 35:t[s].unshift(t[s-2]),this.$=t[s];break;case 37:n.setCssClass(t[s-2],t[s]);break;case 38:n.addMembers(t[s-3],t[s-1]);break;case 39:n.setCssClass(t[s-5],t[s-3]),n.addMembers(t[s-5],t[s-1]);break;case 40:this.$=t[s],n.addClass(t[s]);break;case 41:this.$=t[s-1],n.addClass(t[s-1]),n.setClassLabel(t[s-1],t[s]);break;case 42:n.addAnnotation(t[s],t[s-2]);break;case 43:this.$=[t[s]];break;case 44:t[s].push(t[s-1]),this.$=t[s];break;case 45:break;case 46:n.addMember(t[s-1],n.cleanupLabel(t[s]));break;case 47:break;case 48:break;case 49:this.$={id1:t[s-2],id2:t[s],relation:t[s-1],relationTitle1:"none",relationTitle2:"none"};break;case 50:this.$={id1:t[s-3],id2:t[s],relation:t[s-1],relationTitle1:t[s-2],relationTitle2:"none"};break;case 51:this.$={id1:t[s-3],id2:t[s],relation:t[s-2],relationTitle1:"none",relationTitle2:t[s-1]};break;case 52:this.$={id1:t[s-4],id2:t[s],relation:t[s-2],relationTitle1:t[s-3],relationTitle2:t[s-1]};break;case 53:n.addNote(t[s],t[s-1]);break;case 54:n.addNote(t[s]);break;case 55:n.setDirection("TB");break;case 56:n.setDirection("BT");break;case 57:n.setDirection("RL");break;case 58:n.setDirection("LR");break;case 59:this.$={type1:t[s-2],type2:t[s],lineType:t[s-1]};break;case 60:this.$={type1:"none",type2:t[s],lineType:t[s-1]};break;case 61:this.$={type1:t[s-1],type2:"none",lineType:t[s]};break;case 62:this.$={type1:"none",type2:"none",lineType:t[s]};break;case 63:this.$=n.relationType.AGGREGATION;break;case 64:this.$=n.relationType.EXTENSION;break;case 65:this.$=n.relationType.COMPOSITION;break;case 66:this.$=n.relationType.DEPENDENCY;break;case 67:this.$=n.relationType.LOLLIPOP;break;case 68:this.$=n.lineType.LINE;break;case 69:this.$=n.lineType.DOTTED_LINE;break;case 70:case 76:this.$=t[s-2],n.setClickEvent(t[s-1],t[s]);break;case 71:case 77:this.$=t[s-3],n.setClickEvent(t[s-2],t[s-1]),n.setTooltip(t[s-2],t[s]);break;case 72:this.$=t[s-2],n.setLink(t[s-1],t[s]);break;case 73:this.$=t[s-3],n.setLink(t[s-2],t[s-1],t[s]);break;case 74:this.$=t[s-3],n.setLink(t[s-2],t[s-1]),n.setTooltip(t[s-2],t[s]);break;case 75:this.$=t[s-4],n.setLink(t[s-3],t[s-2],t[s]),n.setTooltip(t[s-3],t[s-1]);break;case 78:this.$=t[s-3],n.setClickEvent(t[s-2],t[s-1],t[s]);break;case 79:this.$=t[s-4],n.setClickEvent(t[s-3],t[s-2],t[s-1]),n.setTooltip(t[s-3],t[s]);break;case 80:this.$=t[s-3],n.setLink(t[s-2],t[s]);break;case 81:this.$=t[s-4],n.setLink(t[s-3],t[s-1],t[s]);break;case 82:this.$=t[s-4],n.setLink(t[s-3],t[s-1]),n.setTooltip(t[s-3],t[s]);break;case 83:this.$=t[s-5],n.setLink(t[s-4],t[s-2],t[s]),n.setTooltip(t[s-4],t[s-1]);break;case 84:this.$=t[s-2],n.setCssStyle(t[s-1],t[s]);break;case 85:n.setCssClass(t[s-1],t[s]);break;case 86:this.$=[t[s]];break;case 87:t[s-2].push(t[s]),this.$=t[s-2];break;case 89:this.$=t[s-1]+t[s];break}},table:[{3:1,4:2,5:3,6:4,7:[1,6],10:5,16:37,17:20,18:38,20:7,22:8,23:9,24:10,25:11,26:12,27:13,28:14,29:15,30:16,31:i,33:r,35:c,36:21,40:o,41:22,44:f,45:k,47:D,48:B,50:_,52:Ae,53:fe,54:pe,55:de,56:Ce,66:Ee,67:me,69:ge,73:be,74:C,76:ke,80:E,95:m,97:g,98:T},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,3]},e(Te,[2,5],{8:[1,46]}),{8:[1,47]},e(l,[2,16],{21:[1,48]}),e(l,[2,18]),e(l,[2,19]),e(l,[2,20]),e(l,[2,21]),e(l,[2,22]),e(l,[2,23]),e(l,[2,24]),e(l,[2,25]),e(l,[2,26]),{32:[1,49]},{34:[1,50]},e(l,[2,29]),e(l,[2,45],{49:51,57:54,58:55,13:[1,52],21:[1,53],59:z,60:K,61:Y,62:Q,63:j,64:ye,65:Fe}),{37:[1,63]},e(X,[2,36],{37:[1,65],42:[1,64]}),e(l,[2,47]),e(l,[2,48]),{16:66,74:C,80:E,95:m,97:g},{16:37,17:67,18:38,74:C,80:E,95:m,97:g,98:T},{16:37,17:68,18:38,74:C,80:E,95:m,97:g,98:T},{16:37,17:69,18:38,74:C,80:E,95:m,97:g,98:T},{74:[1,70]},{13:[1,71]},{16:37,17:72,18:38,74:C,80:E,95:m,97:g,98:T},{13:we,51:73},e(l,[2,55]),e(l,[2,56]),e(l,[2,57]),e(l,[2,58]),e(P,[2,11],{16:37,18:38,17:75,19:[1,76],74:C,80:E,95:m,97:g,98:T}),e(P,[2,12],{19:[1,77]}),{15:78,16:79,74:C,80:E,95:m,97:g},{16:37,17:80,18:38,74:C,80:E,95:m,97:g,98:T},e(q,[2,112]),e(q,[2,113]),e(q,[2,114]),e(q,[2,115]),e([1,8,9,12,13,19,21,37,39,42,59,60,61,62,63,64,65,70,72],[2,116]),e(Te,[2,6],{10:5,20:7,22:8,23:9,24:10,25:11,26:12,27:13,28:14,29:15,30:16,17:20,36:21,41:22,16:37,18:38,5:81,31:i,33:r,35:c,40:o,44:f,45:k,47:D,48:B,50:_,52:Ae,53:fe,54:pe,55:de,56:Ce,66:Ee,67:me,69:ge,73:be,74:C,76:ke,80:E,95:m,97:g,98:T}),{5:82,10:5,16:37,17:20,18:38,20:7,22:8,23:9,24:10,25:11,26:12,27:13,28:14,29:15,30:16,31:i,33:r,35:c,36:21,40:o,41:22,44:f,45:k,47:D,48:B,50:_,52:Ae,53:fe,54:pe,55:de,56:Ce,66:Ee,67:me,69:ge,73:be,74:C,76:ke,80:E,95:m,97:g,98:T},e(l,[2,17]),e(l,[2,27]),e(l,[2,28]),{13:[1,84],16:37,17:83,18:38,74:C,80:E,95:m,97:g,98:T},{49:85,57:54,58:55,59:z,60:K,61:Y,62:Q,63:j,64:ye,65:Fe},e(l,[2,46]),{58:86,64:ye,65:Fe},e(H,[2,62],{57:87,59:z,60:K,61:Y,62:Q,63:j}),e(M,[2,63]),e(M,[2,64]),e(M,[2,65]),e(M,[2,66]),e(M,[2,67]),e(Pe,[2,68]),e(Pe,[2,69]),{8:[1,89],23:90,38:88,41:22,44:f},{16:91,74:C,80:E,95:m,97:g},{43:92,47:De},{46:[1,94]},{13:[1,95]},{13:[1,96]},{70:[1,97],72:[1,98]},{21:W,73:J,74:Z,75:99,77:100,79:101,80:$,81:ee,82:te,83:se,84:ie,85:ne},{74:[1,111]},{13:we,51:112},e(l,[2,54]),e(l,[2,117]),e(P,[2,13]),e(P,[2,14]),e(P,[2,15]),{37:[2,32]},{15:113,16:79,37:[2,9],74:C,80:E,95:m,97:g},e(Be,[2,40],{11:114,12:[1,115]}),e(Te,[2,7]),{9:[1,116]},e(ue,[2,49]),{16:37,17:117,18:38,74:C,80:E,95:m,97:g,98:T},{13:[1,119],16:37,17:118,18:38,74:C,80:E,95:m,97:g,98:T},e(H,[2,61],{57:120,59:z,60:K,61:Y,62:Q,63:j}),e(H,[2,60]),{39:[1,121]},{23:90,38:122,41:22,44:f},{8:[1,123],39:[2,33]},e(X,[2,37],{37:[1,124]}),{39:[1,125]},{39:[2,43],43:126,47:De},{16:37,17:127,18:38,74:C,80:E,95:m,97:g,98:T},e(l,[2,70],{13:[1,128]}),e(l,[2,72],{13:[1,130],68:[1,129]}),e(l,[2,76],{13:[1,131],71:[1,132]}),{13:[1,133]},e(l,[2,84],{78:[1,134]}),e(Me,[2,86],{79:135,21:W,73:J,74:Z,80:$,81:ee,82:te,83:se,84:ie,85:ne}),e(S,[2,88]),e(S,[2,90]),e(S,[2,91]),e(S,[2,92]),e(S,[2,93]),e(S,[2,94]),e(S,[2,95]),e(S,[2,96]),e(S,[2,97]),e(S,[2,98]),e(l,[2,85]),e(l,[2,53]),{37:[2,10]},e(Be,[2,41]),{13:[1,136]},{1:[2,4]},e(ue,[2,51]),e(ue,[2,50]),{16:37,17:137,18:38,74:C,80:E,95:m,97:g,98:T},e(H,[2,59]),e(l,[2,30]),{39:[1,138]},{23:90,38:139,39:[2,34],41:22,44:f},{43:140,47:De},e(X,[2,38]),{39:[2,44]},e(l,[2,42]),e(l,[2,71]),e(l,[2,73]),e(l,[2,74],{68:[1,141]}),e(l,[2,77]),e(l,[2,78],{13:[1,142]}),e(l,[2,80],{13:[1,144],68:[1,143]}),{21:W,73:J,74:Z,77:145,79:101,80:$,81:ee,82:te,83:se,84:ie,85:ne},e(S,[2,89]),{14:[1,146]},e(ue,[2,52]),e(l,[2,31]),{39:[2,35]},{39:[1,147]},e(l,[2,75]),e(l,[2,79]),e(l,[2,81]),e(l,[2,82],{68:[1,148]}),e(Me,[2,87],{79:135,21:W,73:J,74:Z,80:$,81:ee,82:te,83:se,84:ie,85:ne}),e(Be,[2,8]),e(X,[2,39]),e(l,[2,83])],defaultActions:{2:[2,1],3:[2,2],4:[2,3],78:[2,32],113:[2,10],116:[2,4],126:[2,44],139:[2,35]},parseError:function(u,a){if(a.recoverable)this.trace(u);else{var A=new Error(u);throw A.hash=a,A}},parse:function(u){var a=this,A=[0],n=[],d=[null],t=[],G=this.table,s="",re=0,Ge=0,Je=2,Ue=1,Ze=t.slice.call(arguments,1),b=Object.create(this.lexer),O={yy:{}};for(var Ne in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ne)&&(O.yy[Ne]=this.yy[Ne]);b.setInput(u,O.yy),O.yy.lexer=b,O.yy.parser=this,typeof b.yylloc>"u"&&(b.yylloc={});var Le=b.yylloc;t.push(Le);var $e=b.options&&b.options.ranges;typeof O.yy.parseError=="function"?this.parseError=O.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function et(){var L;return L=n.pop()||b.lex()||Ue,typeof L!="number"&&(L instanceof Array&&(n=L,L=n.pop()),L=a.symbols_[L]||L),L}for(var y,I,F,ve,w={},ae,N,ze,ce;;){if(I=A[A.length-1],this.defaultActions[I]?F=this.defaultActions[I]:((y===null||typeof y>"u")&&(y=et()),F=G[I]&&G[I][y]),typeof F>"u"||!F.length||!F[0]){var xe="";ce=[];for(ae in G[I])this.terminals_[ae]&&ae>Je&&ce.push("'"+this.terminals_[ae]+"'");b.showPosition?xe="Parse error on line "+(re+1)+`:
|
|
2
|
+
`+b.showPosition()+`
|
|
3
|
+
Expecting `+ce.join(", ")+", got '"+(this.terminals_[y]||y)+"'":xe="Parse error on line "+(re+1)+": Unexpected "+(y==Ue?"end of input":"'"+(this.terminals_[y]||y)+"'"),this.parseError(xe,{text:b.match,token:this.terminals_[y]||y,line:b.yylineno,loc:Le,expected:ce})}if(F[0]instanceof Array&&F.length>1)throw new Error("Parse Error: multiple actions possible at state: "+I+", token: "+y);switch(F[0]){case 1:A.push(y),d.push(b.yytext),t.push(b.yylloc),A.push(F[1]),y=null,Ge=b.yyleng,s=b.yytext,re=b.yylineno,Le=b.yylloc;break;case 2:if(N=this.productions_[F[1]][1],w.$=d[d.length-N],w._$={first_line:t[t.length-(N||1)].first_line,last_line:t[t.length-1].last_line,first_column:t[t.length-(N||1)].first_column,last_column:t[t.length-1].last_column},$e&&(w._$.range=[t[t.length-(N||1)].range[0],t[t.length-1].range[1]]),ve=this.performAction.apply(w,[s,Ge,re,O.yy,F[1],d,t].concat(Ze)),typeof ve<"u")return ve;N&&(A=A.slice(0,-1*N*2),d=d.slice(0,-1*N),t=t.slice(0,-1*N)),A.push(this.productions_[F[1]][0]),d.push(w.$),t.push(w._$),ze=G[A[A.length-2]][A[A.length-1]],A.push(ze);break;case 3:return!0}}return!0}},We=(function(){var v={EOF:1,parseError:function(a,A){if(this.yy.parser)this.yy.parser.parseError(a,A);else throw new Error(a)},setInput:function(u,a){return this.yy=a||this.yy||{},this._input=u,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 u=this._input[0];this.yytext+=u,this.yyleng++,this.offset++,this.match+=u,this.matched+=u;var a=u.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),u},unput:function(u){var a=u.length,A=u.split(/(?:\r\n?|\n)/g);this._input=u+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-a),this.offset-=a;var n=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===n.length?this.yylloc.first_column:0)+n[n.length-A.length].length-A[0].length:this.yylloc.first_column-a},this.options.ranges&&(this.yylloc.range=[d[0],d[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(u){this.unput(this.match.slice(u))},pastInput:function(){var u=this.matched.substr(0,this.matched.length-this.match.length);return(u.length>20?"...":"")+u.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var u=this.match;return u.length<20&&(u+=this._input.substr(0,20-u.length)),(u.substr(0,20)+(u.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var u=this.pastInput(),a=new Array(u.length+1).join("-");return u+this.upcomingInput()+`
|
|
5
|
+
`+a+"^"},test_match:function(u,a){var A,n,d;if(this.options.backtrack_lexer&&(d={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&&(d.yylloc.range=this.yylloc.range.slice(0))),n=u[0].match(/(?:\r\n?|\n).*/g),n&&(this.yylineno+=n.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:n?n[n.length-1].length-n[n.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+u[0].length},this.yytext+=u[0],this.match+=u[0],this.matches=u,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(u[0].length),this.matched+=u[0],A=this.performAction.call(this,this.yy,this,a,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),A)return A;if(this._backtrack){for(var t in d)this[t]=d[t];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var u,a,A,n;this._more||(this.yytext="",this.match="");for(var d=this._currentRules(),t=0;t<d.length;t++)if(A=this._input.match(this.rules[d[t]]),A&&(!a||A[0].length>a[0].length)){if(a=A,n=t,this.options.backtrack_lexer){if(u=this.test_match(A,d[t]),u!==!1)return u;if(this._backtrack){a=!1;continue}else return!1}else if(!this.options.flex)break}return a?(u=this.test_match(a,d[n]),u!==!1?u:!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:{},performAction:function(a,A,n,d){switch(n){case 0:return 53;case 1:return 54;case 2:return 55;case 3:return 56;case 4:break;case 5:break;case 6:return this.begin("acc_title"),31;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),33;case 9:return this.popState(),"acc_descr_value";case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 8;case 14:break;case 15:return 7;case 16:return 7;case 17:return"EDGE_STATE";case 18:this.begin("callback_name");break;case 19:this.popState();break;case 20:this.popState(),this.begin("callback_args");break;case 21:return 70;case 22:this.popState();break;case 23:return 71;case 24:this.popState();break;case 25:return"STR";case 26:this.begin("string");break;case 27:return 73;case 28:return this.begin("namespace"),40;case 29:return this.popState(),8;case 30:break;case 31:return this.begin("namespace-body"),37;case 32:return this.popState(),39;case 33:return"EOF_IN_STRUCT";case 34:return 8;case 35:break;case 36:return"EDGE_STATE";case 37:return this.begin("class"),44;case 38:return this.popState(),8;case 39:break;case 40:return this.popState(),this.popState(),39;case 41:return this.begin("class-body"),37;case 42:return this.popState(),39;case 43:return"EOF_IN_STRUCT";case 44:return"EDGE_STATE";case 45:return"OPEN_IN_STRUCT";case 46:break;case 47:return"MEMBER";case 48:return 76;case 49:return 66;case 50:return 67;case 51:return 69;case 52:return 50;case 53:return 52;case 54:return 45;case 55:return 46;case 56:return 72;case 57:this.popState();break;case 58:return"GENERICTYPE";case 59:this.begin("generic");break;case 60:this.popState();break;case 61:return"BQUOTE_STR";case 62:this.begin("bqstring");break;case 63:return 68;case 64:return 68;case 65:return 68;case 66:return 68;case 67:return 60;case 68:return 60;case 69:return 62;case 70:return 62;case 71:return 61;case 72:return 59;case 73:return 63;case 74:return 64;case 75:return 65;case 76:return 21;case 77:return 42;case 78:return 95;case 79:return"DOT";case 80:return"PLUS";case 81:return 81;case 82:return 78;case 83:return 84;case 84:return 84;case 85:return 85;case 86:return"EQUALS";case 87:return"EQUALS";case 88:return 74;case 89:return 12;case 90:return 14;case 91:return"PUNCTUATION";case 92:return 80;case 93:return 97;case 94:return 83;case 95:return 83;case 96:return 9}},rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:classDiagram-v2\b)/,/^(?:classDiagram\b)/,/^(?:\[\*\])/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:["])/,/^(?:[^"]*)/,/^(?:["])/,/^(?:style\b)/,/^(?:namespace\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:\[\*\])/,/^(?:class\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[}])/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\[\*\])/,/^(?:[{])/,/^(?:[\n])/,/^(?:[^{}\n]*)/,/^(?:cssClass\b)/,/^(?:callback\b)/,/^(?:link\b)/,/^(?:click\b)/,/^(?:note for\b)/,/^(?:note\b)/,/^(?:<<)/,/^(?:>>)/,/^(?:href\b)/,/^(?:[~])/,/^(?:[^~]*)/,/^(?:~)/,/^(?:[`])/,/^(?:[^`]+)/,/^(?:[`])/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:\s*<\|)/,/^(?:\s*\|>)/,/^(?:\s*>)/,/^(?:\s*<)/,/^(?:\s*\*)/,/^(?:\s*o\b)/,/^(?:\s*\(\))/,/^(?:--)/,/^(?:\.\.)/,/^(?::{1}[^:\n;]+)/,/^(?::{3})/,/^(?:-)/,/^(?:\.)/,/^(?:\+)/,/^(?::)/,/^(?:,)/,/^(?:#)/,/^(?:#)/,/^(?:%)/,/^(?:=)/,/^(?:=)/,/^(?:\w+)/,/^(?:\[)/,/^(?:\])/,/^(?:[!"#$%&'*+,-.`?\\/])/,/^(?:[0-9]+)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\s)/,/^(?:\s)/,/^(?:$)/],conditions:{"namespace-body":{rules:[26,32,33,34,35,36,37,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},namespace:{rules:[26,28,29,30,31,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},"class-body":{rules:[26,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},class:{rules:[26,38,39,40,41,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},acc_descr_multiline:{rules:[11,12,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},acc_descr:{rules:[9,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},acc_title:{rules:[7,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},callback_args:{rules:[22,23,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},callback_name:{rules:[19,20,21,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},href:{rules:[26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},struct:{rules:[26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},generic:{rules:[26,48,49,50,51,52,53,54,55,56,57,58,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},bqstring:{rules:[26,48,49,50,51,52,53,54,55,56,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},string:{rules:[24,25,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,26,27,28,37,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96],inclusive:!0}}};return v})();_e.lexer=We;function Se(){this.yy={}}return Se.prototype=_e,_e.Parser=Se,new Se})();Oe.parser=Oe;const tt=Oe,Ke=["#","+","~","-",""];class Ye{constructor(i,r){this.memberType=r,this.visibility="",this.classifier="";const c=h.sanitizeText$2(i,h.getConfig());this.parseMember(c)}getDisplayDetails(){let i=this.visibility+h.parseGenericTypes(this.id);this.memberType==="method"&&(i+=`(${h.parseGenericTypes(this.parameters.trim())})`,this.returnType&&(i+=" : "+h.parseGenericTypes(this.returnType))),i=i.trim();const r=this.parseClassifier();return{displayText:i,cssStyle:r}}parseMember(i){let r="";if(this.memberType==="method"){const c=/([#+~-])?(.+)\((.*)\)([\s$*])?(.*)([$*])?/,o=i.match(c);if(o){const f=o[1]?o[1].trim():"";if(Ke.includes(f)&&(this.visibility=f),this.id=o[2].trim(),this.parameters=o[3]?o[3].trim():"",r=o[4]?o[4].trim():"",this.returnType=o[5]?o[5].trim():"",r===""){const k=this.returnType.substring(this.returnType.length-1);k.match(/[$*]/)&&(r=k,this.returnType=this.returnType.substring(0,this.returnType.length-1))}}}else{const c=i.length,o=i.substring(0,1),f=i.substring(c-1);Ke.includes(o)&&(this.visibility=o),f.match(/[$*]/)&&(r=f),this.id=i.substring(this.visibility===""?0:1,r===""?c:c-1)}this.classifier=r}parseClassifier(){switch(this.classifier){case"*":return"font-style:italic;";case"$":return"text-decoration:underline;";default:return""}}}const he="classId-";let Re=[],p={},le=[],Qe=0,x={},Ie=0,U=[];const R=e=>h.common$1.sanitizeText(e,h.getConfig()),V=function(e){const i=h.common$1.sanitizeText(e,h.getConfig());let r="",c=i;if(i.indexOf("~")>0){const o=i.split("~");c=R(o[0]),r=R(o[1])}return{className:c,type:r}},st=function(e,i){const r=h.common$1.sanitizeText(e,h.getConfig());i&&(i=R(i));const{className:c}=V(r);p[c].label=i},oe=function(e){const i=h.common$1.sanitizeText(e,h.getConfig()),{className:r,type:c}=V(i);if(Object.hasOwn(p,r))return;const o=h.common$1.sanitizeText(r,h.getConfig());p[o]={id:o,type:c,label:o,cssClasses:[],methods:[],members:[],annotations:[],styles:[],domId:he+o+"-"+Qe},Qe++},je=function(e){const i=h.common$1.sanitizeText(e,h.getConfig());if(i in p)return p[i].domId;throw new Error("Class not found: "+i)},it=function(){Re=[],p={},le=[],U=[],U.push(qe),x={},Ie=0,h.clear()},nt=function(e){return p[e]},ut=function(){return p},rt=function(){return Re},at=function(){return le},ct=function(e){h.log$1.debug("Adding relation: "+JSON.stringify(e)),oe(e.id1),oe(e.id2),e.id1=V(e.id1).className,e.id2=V(e.id2).className,e.relationTitle1=h.common$1.sanitizeText(e.relationTitle1.trim(),h.getConfig()),e.relationTitle2=h.common$1.sanitizeText(e.relationTitle2.trim(),h.getConfig()),Re.push(e)},lt=function(e,i){const r=V(e).className;p[r].annotations.push(i)},Xe=function(e,i){oe(e);const r=V(e).className,c=p[r];if(typeof i=="string"){const o=i.trim();o.startsWith("<<")&&o.endsWith(">>")?c.annotations.push(R(o.substring(2,o.length-2))):o.indexOf(")")>0?c.methods.push(new Ye(o,"method")):o&&c.members.push(new Ye(o,"attribute"))}},ot=function(e,i){Array.isArray(i)&&(i.reverse(),i.forEach(r=>Xe(e,r)))},ht=function(e,i){const r={id:`note${le.length}`,class:i,text:e};le.push(r)},At=function(e){return e.startsWith(":")&&(e=e.substring(1)),R(e.trim())},Ve=function(e,i){e.split(",").forEach(function(r){let c=r;r[0].match(/\d/)&&(c=he+c),p[c]!==void 0&&p[c].cssClasses.push(i)})},ft=function(e,i){e.split(",").forEach(function(r){i!==void 0&&(p[r].tooltip=R(i))})},pt=function(e,i){return i?x[i].classes[e].tooltip:p[e].tooltip},dt=function(e,i,r){const c=h.getConfig();e.split(",").forEach(function(o){let f=o;o[0].match(/\d/)&&(f=he+f),p[f]!==void 0&&(p[f].link=h.utils.formatUrl(i,c),c.securityLevel==="sandbox"?p[f].linkTarget="_top":typeof r=="string"?p[f].linkTarget=R(r):p[f].linkTarget="_blank")}),Ve(e,"clickable")},Ct=function(e,i,r){e.split(",").forEach(function(c){Et(c,i,r),p[c].haveCallback=!0}),Ve(e,"clickable")},Et=function(e,i,r){const c=h.common$1.sanitizeText(e,h.getConfig());if(h.getConfig().securityLevel!=="loose"||i===void 0)return;const f=c;if(p[f]!==void 0){const k=je(f);let D=[];if(typeof r=="string"){D=r.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let B=0;B<D.length;B++){let _=D[B].trim();_.charAt(0)==='"'&&_.charAt(_.length-1)==='"'&&(_=_.substr(1,_.length-2)),D[B]=_}}D.length===0&&D.push(k),U.push(function(){const B=document.querySelector(`[id="${k}"]`);B!==null&&B.addEventListener("click",function(){h.utils.runFunc(i,...D)},!1)})}},mt=function(e){U.forEach(function(i){i(e)})},gt={LINE:0,DOTTED_LINE:1},bt={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3,LOLLIPOP:4},qe=function(e){let i=h.select(".mermaidTooltip");(i._groups||i)[0][0]===null&&(i=h.select("body").append("div").attr("class","mermaidTooltip").style("opacity",0)),h.select(e).select("svg").selectAll("g.node").on("mouseover",function(){const o=h.select(this);if(o.attr("title")===null)return;const k=this.getBoundingClientRect();i.transition().duration(200).style("opacity",".9"),i.text(o.attr("title")).style("left",window.scrollX+k.left+(k.right-k.left)/2+"px").style("top",window.scrollY+k.top-14+document.body.scrollTop+"px"),i.html(i.html().replace(/<br\/>/g,"<br/>")),o.classed("hover",!0)}).on("mouseout",function(){i.transition().duration(500).style("opacity",0),h.select(this).classed("hover",!1)})};U.push(qe);let He="TB";const kt=()=>He,Tt=e=>{He=e},yt=function(e){x[e]===void 0&&(x[e]={id:e,classes:{},children:{},domId:he+e+"-"+Ie},Ie++)},Ft=function(e){return x[e]},Dt=function(){return x},Bt=function(e,i){if(x[e]!==void 0)for(const r of i){const{className:c}=V(r);p[c].parent=e,x[e].classes[c]=p[c]}},_t=function(e,i){const r=p[e];if(!(!i||!r))for(const c of i)c.includes(",")?r.styles.push(...c.split(",")):r.styles.push(c)},St={setAccTitle:h.setAccTitle,getAccTitle:h.getAccTitle,getAccDescription:h.getAccDescription,setAccDescription:h.setAccDescription,getConfig:()=>h.getConfig().class,addClass:oe,bindFunctions:mt,clear:it,getClass:nt,getClasses:ut,getNotes:at,addAnnotation:lt,addNote:ht,getRelations:rt,addRelation:ct,getDirection:kt,setDirection:Tt,addMember:Xe,addMembers:ot,cleanupLabel:At,lineType:gt,relationType:bt,setClickEvent:Ct,setCssClass:Ve,setLink:dt,getTooltip:pt,setTooltip:ft,lookUpDomId:je,setDiagramTitle:h.setDiagramTitle,getDiagramTitle:h.getDiagramTitle,setClassLabel:st,addNamespace:yt,addClassesToNamespace:Bt,getNamespace:Ft,getNamespaces:Dt,setCssStyle:_t},Nt=e=>`g.classGroup text {
|
|
7
|
+
fill: ${e.nodeBorder||e.classText};
|
|
8
|
+
stroke: none;
|
|
9
|
+
font-family: ${e.fontFamily};
|
|
10
|
+
font-size: 10px;
|
|
11
|
+
|
|
12
|
+
.title {
|
|
13
|
+
font-weight: bolder;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
.nodeLabel, .edgeLabel {
|
|
19
|
+
color: ${e.classText};
|
|
20
|
+
}
|
|
21
|
+
.edgeLabel .label rect {
|
|
22
|
+
fill: ${e.mainBkg};
|
|
23
|
+
}
|
|
24
|
+
.label text {
|
|
25
|
+
fill: ${e.classText};
|
|
26
|
+
}
|
|
27
|
+
.edgeLabel .label span {
|
|
28
|
+
background: ${e.mainBkg};
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
.classTitle {
|
|
32
|
+
font-weight: bolder;
|
|
33
|
+
}
|
|
34
|
+
.node rect,
|
|
35
|
+
.node circle,
|
|
36
|
+
.node ellipse,
|
|
37
|
+
.node polygon,
|
|
38
|
+
.node path {
|
|
39
|
+
fill: ${e.mainBkg};
|
|
40
|
+
stroke: ${e.nodeBorder};
|
|
41
|
+
stroke-width: 1px;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
.divider {
|
|
46
|
+
stroke: ${e.nodeBorder};
|
|
47
|
+
stroke-width: 1;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
g.clickable {
|
|
51
|
+
cursor: pointer;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
g.classGroup rect {
|
|
55
|
+
fill: ${e.mainBkg};
|
|
56
|
+
stroke: ${e.nodeBorder};
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
g.classGroup line {
|
|
60
|
+
stroke: ${e.nodeBorder};
|
|
61
|
+
stroke-width: 1;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
.classLabel .box {
|
|
65
|
+
stroke: none;
|
|
66
|
+
stroke-width: 0;
|
|
67
|
+
fill: ${e.mainBkg};
|
|
68
|
+
opacity: 0.5;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
.classLabel .label {
|
|
72
|
+
fill: ${e.nodeBorder};
|
|
73
|
+
font-size: 10px;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
.relation {
|
|
77
|
+
stroke: ${e.lineColor};
|
|
78
|
+
stroke-width: 1;
|
|
79
|
+
fill: none;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
.dashed-line{
|
|
83
|
+
stroke-dasharray: 3;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
.dotted-line{
|
|
87
|
+
stroke-dasharray: 1 2;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
#compositionStart, .composition {
|
|
91
|
+
fill: ${e.lineColor} !important;
|
|
92
|
+
stroke: ${e.lineColor} !important;
|
|
93
|
+
stroke-width: 1;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
#compositionEnd, .composition {
|
|
97
|
+
fill: ${e.lineColor} !important;
|
|
98
|
+
stroke: ${e.lineColor} !important;
|
|
99
|
+
stroke-width: 1;
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
#dependencyStart, .dependency {
|
|
103
|
+
fill: ${e.lineColor} !important;
|
|
104
|
+
stroke: ${e.lineColor} !important;
|
|
105
|
+
stroke-width: 1;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
#dependencyStart, .dependency {
|
|
109
|
+
fill: ${e.lineColor} !important;
|
|
110
|
+
stroke: ${e.lineColor} !important;
|
|
111
|
+
stroke-width: 1;
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
#extensionStart, .extension {
|
|
115
|
+
fill: transparent !important;
|
|
116
|
+
stroke: ${e.lineColor} !important;
|
|
117
|
+
stroke-width: 1;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
#extensionEnd, .extension {
|
|
121
|
+
fill: transparent !important;
|
|
122
|
+
stroke: ${e.lineColor} !important;
|
|
123
|
+
stroke-width: 1;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
#aggregationStart, .aggregation {
|
|
127
|
+
fill: transparent !important;
|
|
128
|
+
stroke: ${e.lineColor} !important;
|
|
129
|
+
stroke-width: 1;
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
#aggregationEnd, .aggregation {
|
|
133
|
+
fill: transparent !important;
|
|
134
|
+
stroke: ${e.lineColor} !important;
|
|
135
|
+
stroke-width: 1;
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
#lollipopStart, .lollipop {
|
|
139
|
+
fill: ${e.mainBkg} !important;
|
|
140
|
+
stroke: ${e.lineColor} !important;
|
|
141
|
+
stroke-width: 1;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
#lollipopEnd, .lollipop {
|
|
145
|
+
fill: ${e.mainBkg} !important;
|
|
146
|
+
stroke: ${e.lineColor} !important;
|
|
147
|
+
stroke-width: 1;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
.edgeTerminals {
|
|
151
|
+
font-size: 11px;
|
|
152
|
+
line-height: initial;
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
.classTitleText {
|
|
156
|
+
text-anchor: middle;
|
|
157
|
+
font-size: 18px;
|
|
158
|
+
fill: ${e.textColor};
|
|
159
|
+
}
|
|
160
|
+
`,Lt=Nt;exports.db=St;exports.parser$1=tt;exports.styles=Lt;
|
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
import { s as M, d as _, p as R } from "./layers.4XOTUH37.js";
|
|
2
|
+
import { l as d, g as c, d as w, u as B, Y as G, j as D, _ as E, $ as C, a0 as $ } from "./layers.BngaRys_.js";
|
|
3
|
+
import { G as z } from "./layers.BJDrjORS.js";
|
|
4
|
+
import { r as P } from "./layers.BRaRY9tU.js";
|
|
5
|
+
import "./layers.C2f7uCzl.js";
|
|
6
|
+
import "lodash-es/memoize.js";
|
|
7
|
+
import "lodash-es/merge.js";
|
|
8
|
+
import "lodash-es/isEmpty.js";
|
|
9
|
+
import "lodash-es";
|
|
10
|
+
import "./layers.D4T8fTcj.js";
|
|
11
|
+
const S = (s) => D.sanitizeText(s, c());
|
|
12
|
+
let k = {
|
|
13
|
+
dividerMargin: 10,
|
|
14
|
+
padding: 5,
|
|
15
|
+
textHeight: 10,
|
|
16
|
+
curve: void 0
|
|
17
|
+
};
|
|
18
|
+
const q = function(s, t, y, a) {
|
|
19
|
+
const e = Object.keys(s);
|
|
20
|
+
d.info("keys:", e), d.info(s), e.forEach(function(i) {
|
|
21
|
+
var o, r;
|
|
22
|
+
const l = s[i], p = {
|
|
23
|
+
shape: "rect",
|
|
24
|
+
id: l.id,
|
|
25
|
+
domId: l.domId,
|
|
26
|
+
labelText: S(l.id),
|
|
27
|
+
labelStyle: "",
|
|
28
|
+
style: "fill: none; stroke: black",
|
|
29
|
+
// TODO V10: Flowchart ? Keeping flowchart for backwards compatibility. Remove in next major release
|
|
30
|
+
padding: ((o = c().flowchart) == null ? void 0 : o.padding) ?? ((r = c().class) == null ? void 0 : r.padding)
|
|
31
|
+
};
|
|
32
|
+
t.setNode(l.id, p), A(l.classes, t, y, a, l.id), d.info("setNode", p);
|
|
33
|
+
});
|
|
34
|
+
}, A = function(s, t, y, a, e) {
|
|
35
|
+
const i = Object.keys(s);
|
|
36
|
+
d.info("keys:", i), d.info(s), i.filter((o) => s[o].parent == e).forEach(function(o) {
|
|
37
|
+
var r, l;
|
|
38
|
+
const n = s[o], p = n.cssClasses.join(" "), f = E(n.styles), h = n.label ?? n.id, u = 0, b = {
|
|
39
|
+
labelStyle: f.labelStyle,
|
|
40
|
+
shape: "class_box",
|
|
41
|
+
labelText: S(h),
|
|
42
|
+
classData: n,
|
|
43
|
+
rx: u,
|
|
44
|
+
ry: u,
|
|
45
|
+
class: p,
|
|
46
|
+
style: f.style,
|
|
47
|
+
id: n.id,
|
|
48
|
+
domId: n.domId,
|
|
49
|
+
tooltip: a.db.getTooltip(n.id, e) || "",
|
|
50
|
+
haveCallback: n.haveCallback,
|
|
51
|
+
link: n.link,
|
|
52
|
+
width: n.type === "group" ? 500 : void 0,
|
|
53
|
+
type: n.type,
|
|
54
|
+
// TODO V10: Flowchart ? Keeping flowchart for backwards compatibility. Remove in next major release
|
|
55
|
+
padding: ((r = c().flowchart) == null ? void 0 : r.padding) ?? ((l = c().class) == null ? void 0 : l.padding)
|
|
56
|
+
};
|
|
57
|
+
t.setNode(n.id, b), e && t.setParent(n.id, e), d.info("setNode", b);
|
|
58
|
+
});
|
|
59
|
+
}, F = function(s, t, y, a) {
|
|
60
|
+
d.info(s), s.forEach(function(e, i) {
|
|
61
|
+
var o, r;
|
|
62
|
+
const l = e, n = "", p = { labelStyle: "", style: "" }, f = l.text, h = 0, m = {
|
|
63
|
+
labelStyle: p.labelStyle,
|
|
64
|
+
shape: "note",
|
|
65
|
+
labelText: S(f),
|
|
66
|
+
noteData: l,
|
|
67
|
+
rx: h,
|
|
68
|
+
ry: h,
|
|
69
|
+
class: n,
|
|
70
|
+
style: p.style,
|
|
71
|
+
id: l.id,
|
|
72
|
+
domId: l.id,
|
|
73
|
+
tooltip: "",
|
|
74
|
+
type: "note",
|
|
75
|
+
// TODO V10: Flowchart ? Keeping flowchart for backwards compatibility. Remove in next major release
|
|
76
|
+
padding: ((o = c().flowchart) == null ? void 0 : o.padding) ?? ((r = c().class) == null ? void 0 : r.padding)
|
|
77
|
+
};
|
|
78
|
+
if (t.setNode(l.id, m), d.info("setNode", m), !l.class || !(l.class in a))
|
|
79
|
+
return;
|
|
80
|
+
const b = y + i, x = {
|
|
81
|
+
id: `edgeNote${b}`,
|
|
82
|
+
//Set relationship style and line type
|
|
83
|
+
classes: "relation",
|
|
84
|
+
pattern: "dotted",
|
|
85
|
+
// Set link type for rendering
|
|
86
|
+
arrowhead: "none",
|
|
87
|
+
//Set edge extra labels
|
|
88
|
+
startLabelRight: "",
|
|
89
|
+
endLabelLeft: "",
|
|
90
|
+
//Set relation arrow types
|
|
91
|
+
arrowTypeStart: "none",
|
|
92
|
+
arrowTypeEnd: "none",
|
|
93
|
+
style: "fill:none",
|
|
94
|
+
labelStyle: "",
|
|
95
|
+
curve: C(k.curve, $)
|
|
96
|
+
};
|
|
97
|
+
t.setEdge(l.id, l.class, x, b);
|
|
98
|
+
});
|
|
99
|
+
}, H = function(s, t) {
|
|
100
|
+
const y = c().flowchart;
|
|
101
|
+
let a = 0;
|
|
102
|
+
s.forEach(function(e) {
|
|
103
|
+
var i;
|
|
104
|
+
a++;
|
|
105
|
+
const o = {
|
|
106
|
+
//Set relationship style and line type
|
|
107
|
+
classes: "relation",
|
|
108
|
+
pattern: e.relation.lineType == 1 ? "dashed" : "solid",
|
|
109
|
+
id: `id_${e.id1}_${e.id2}_${a}`,
|
|
110
|
+
// Set link type for rendering
|
|
111
|
+
arrowhead: e.type === "arrow_open" ? "none" : "normal",
|
|
112
|
+
//Set edge extra labels
|
|
113
|
+
startLabelRight: e.relationTitle1 === "none" ? "" : e.relationTitle1,
|
|
114
|
+
endLabelLeft: e.relationTitle2 === "none" ? "" : e.relationTitle2,
|
|
115
|
+
//Set relation arrow types
|
|
116
|
+
arrowTypeStart: N(e.relation.type1),
|
|
117
|
+
arrowTypeEnd: N(e.relation.type2),
|
|
118
|
+
style: "fill:none",
|
|
119
|
+
labelStyle: "",
|
|
120
|
+
curve: C(y == null ? void 0 : y.curve, $)
|
|
121
|
+
};
|
|
122
|
+
if (d.info(o, e), e.style !== void 0) {
|
|
123
|
+
const r = E(e.style);
|
|
124
|
+
o.style = r.style, o.labelStyle = r.labelStyle;
|
|
125
|
+
}
|
|
126
|
+
e.text = e.title, e.text === void 0 ? e.style !== void 0 && (o.arrowheadStyle = "fill: #333") : (o.arrowheadStyle = "fill: #333", o.labelpos = "c", ((i = c().flowchart) == null ? void 0 : i.htmlLabels) ?? c().htmlLabels ? (o.labelType = "html", o.label = '<span class="edgeLabel">' + e.text + "</span>") : (o.labelType = "text", o.label = e.text.replace(D.lineBreakRegex, `
|
|
127
|
+
`), e.style === void 0 && (o.style = o.style || "stroke: #333; stroke-width: 1.5px;fill:none"), o.labelStyle = o.labelStyle.replace("color:", "fill:"))), t.setEdge(e.id1, e.id2, o, a);
|
|
128
|
+
});
|
|
129
|
+
}, V = function(s) {
|
|
130
|
+
k = {
|
|
131
|
+
...k,
|
|
132
|
+
...s
|
|
133
|
+
};
|
|
134
|
+
}, W = async function(s, t, y, a) {
|
|
135
|
+
d.info("Drawing class - ", t);
|
|
136
|
+
const e = c().flowchart ?? c().class, i = c().securityLevel;
|
|
137
|
+
d.info("config:", e);
|
|
138
|
+
const o = (e == null ? void 0 : e.nodeSpacing) ?? 50, r = (e == null ? void 0 : e.rankSpacing) ?? 50, l = new z({
|
|
139
|
+
multigraph: !0,
|
|
140
|
+
compound: !0
|
|
141
|
+
}).setGraph({
|
|
142
|
+
rankdir: a.db.getDirection(),
|
|
143
|
+
nodesep: o,
|
|
144
|
+
ranksep: r,
|
|
145
|
+
marginx: 8,
|
|
146
|
+
marginy: 8
|
|
147
|
+
}).setDefaultEdgeLabel(function() {
|
|
148
|
+
return {};
|
|
149
|
+
}), n = a.db.getNamespaces(), p = a.db.getClasses(), f = a.db.getRelations(), h = a.db.getNotes();
|
|
150
|
+
d.info(f), q(n, l, t, a), A(p, l, t, a), H(f, l), F(h, l, f.length + 1, p);
|
|
151
|
+
let u;
|
|
152
|
+
i === "sandbox" && (u = w("#i" + t));
|
|
153
|
+
const m = i === "sandbox" ? w(u.nodes()[0].contentDocument.body) : w("body"), b = m.select(`[id="${t}"]`), x = m.select("#" + t + " g");
|
|
154
|
+
if (await P(
|
|
155
|
+
x,
|
|
156
|
+
l,
|
|
157
|
+
["aggregation", "extension", "composition", "dependency", "lollipop"],
|
|
158
|
+
"classDiagram",
|
|
159
|
+
t
|
|
160
|
+
), B.insertTitle(b, "classTitleText", (e == null ? void 0 : e.titleTopMargin) ?? 5, a.db.getDiagramTitle()), G(l, b, e == null ? void 0 : e.diagramPadding, e == null ? void 0 : e.useMaxWidth), !(e != null && e.htmlLabels)) {
|
|
161
|
+
const T = i === "sandbox" ? u.nodes()[0].contentDocument : document, I = T.querySelectorAll('[id="' + t + '"] .edgeLabel .label');
|
|
162
|
+
for (const g of I) {
|
|
163
|
+
const L = g.getBBox(), v = T.createElementNS("http://www.w3.org/2000/svg", "rect");
|
|
164
|
+
v.setAttribute("rx", 0), v.setAttribute("ry", 0), v.setAttribute("width", L.width), v.setAttribute("height", L.height), g.insertBefore(v, g.firstChild);
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
};
|
|
168
|
+
function N(s) {
|
|
169
|
+
let t;
|
|
170
|
+
switch (s) {
|
|
171
|
+
case 0:
|
|
172
|
+
t = "aggregation";
|
|
173
|
+
break;
|
|
174
|
+
case 1:
|
|
175
|
+
t = "extension";
|
|
176
|
+
break;
|
|
177
|
+
case 2:
|
|
178
|
+
t = "composition";
|
|
179
|
+
break;
|
|
180
|
+
case 3:
|
|
181
|
+
t = "dependency";
|
|
182
|
+
break;
|
|
183
|
+
case 4:
|
|
184
|
+
t = "lollipop";
|
|
185
|
+
break;
|
|
186
|
+
default:
|
|
187
|
+
t = "none";
|
|
188
|
+
}
|
|
189
|
+
return t;
|
|
190
|
+
}
|
|
191
|
+
const Y = {
|
|
192
|
+
setConf: V,
|
|
193
|
+
draw: W
|
|
194
|
+
}, oe = {
|
|
195
|
+
parser: R,
|
|
196
|
+
db: _,
|
|
197
|
+
renderer: Y,
|
|
198
|
+
styles: M,
|
|
199
|
+
init: (s) => {
|
|
200
|
+
s.class || (s.class = {}), s.class.arrowMarkerAbsolute = s.arrowMarkerAbsolute, _.clear();
|
|
201
|
+
}
|
|
202
|
+
};
|
|
203
|
+
export {
|
|
204
|
+
oe as diagram
|
|
205
|
+
};
|