@layers-app/editor 0.5.1 → 0.5.3
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 -0
- package/dist/index.d.ts +315 -0
- package/dist/index.js +13 -0
- package/dist/layers.-R5PibOa.js +10 -0
- package/dist/layers.-mkaUFzn.js +65 -0
- package/dist/layers.1XpBjqYP.js +1 -0
- package/dist/layers.2Ibk-yAi.js +10 -0
- package/dist/layers.3DsBPqy5.js +10 -0
- package/dist/layers.4OVSS-76.js +320 -0
- package/dist/layers.52famHy6.js +1 -0
- package/dist/layers.7JqFgE4-.js +15 -0
- package/dist/layers.9Su9jHuK.js +9 -0
- package/dist/layers.9pNaFvaX.js +1 -0
- package/dist/layers.9rNftyw-.js +40 -0
- package/dist/layers.B-6jN1Zn.js +41 -0
- package/dist/layers.B0JnuQf0.js +11 -0
- package/dist/layers.B0dbAkLw.js +11 -0
- package/dist/layers.B19MhDZN.js +1265 -0
- package/dist/layers.B19hGmey.js +1 -0
- package/dist/layers.B1IDMpWZ.js +32 -0
- package/dist/layers.B1VK1Umd.js +41 -0
- package/dist/layers.B2IHCuq4.js +202 -0
- package/dist/layers.B2OBW6d_.js +1 -0
- package/dist/layers.B2RJoL8j.js +8 -0
- package/dist/layers.B3D4g2HH.js +1 -0
- package/dist/layers.B66ctuSP.js +1 -0
- package/dist/layers.B9uP5ibo.js +1619 -0
- package/dist/layers.BAtv1CM7.js +1 -0
- package/dist/layers.BDlQMLta.js +1034 -0
- package/dist/layers.BFlW1eUA.js +1088 -0
- package/dist/layers.BIRU7ZCl.js +35 -0
- package/dist/layers.BIeVwYKL.js +1 -0
- package/dist/layers.BJDrjORS.js +244 -0
- package/dist/layers.BJOHTiQN.js +1 -0
- package/dist/layers.BKLAyg9f.js +34 -0
- package/dist/layers.BKktUt3V.js +425 -0
- package/dist/layers.BLZg3-j8.js +44 -0
- package/dist/layers.BLd2spTm.js +1 -0
- package/dist/layers.BPHDdk7q.js +6 -0
- package/dist/layers.BQYTL9KT.js +4 -0
- package/dist/layers.BSTBZrFn.js +1 -0
- package/dist/layers.BUbQisBD.js +40 -0
- package/dist/layers.BY5MS01o.js +304 -0
- package/dist/layers.BY5x-OCj.js +1359 -0
- package/dist/layers.BZYqdVEt.js +5 -0
- package/dist/layers.B_blLMys.js +7 -0
- package/dist/layers.Bau1Nn-R.js +1 -0
- package/dist/layers.BbCfEXyj.js +55 -0
- package/dist/layers.BdC79PeD.js +8 -0
- package/dist/layers.BeQxuBmo.js +373 -0
- package/dist/layers.BgOa2ZQq.js +7 -0
- package/dist/layers.BhoEY-tV.js +1 -0
- package/dist/layers.BiJ8hfRt.js +1510 -0
- package/dist/layers.BipydXP9.js +437 -0
- package/dist/layers.BjNcxnlF.js +40 -0
- package/dist/layers.BjkZnui0.js +6 -0
- package/dist/layers.BjlXrUqq.js +1 -0
- package/dist/layers.BmEnHWGn.js +1126 -0
- package/dist/layers.Bm_lyqCL.js +6 -0
- package/dist/layers.Bo0o9BXc.js +61 -0
- package/dist/layers.Bowu41KP.js +791 -0
- package/dist/layers.BpVuHPkZ.js +33 -0
- package/dist/layers.BpilXLfW.js +6 -0
- package/dist/layers.BptubpVI.js +37 -0
- package/dist/layers.Bq8EFsFh.js +3 -0
- package/dist/layers.Brr7ESXx.js +2 -0
- package/dist/layers.BsTKIt_N.js +19 -0
- package/dist/layers.BshQq6Az.js +189 -0
- package/dist/layers.BsuVfEWr.js +1 -0
- package/dist/layers.Bwphu0_-.js +41 -0
- package/dist/layers.BxBoiyiz.js +2 -0
- package/dist/layers.BxqlTEGI.js +39 -0
- package/dist/layers.BznUuBVb.js +1 -0
- package/dist/layers.C0Lgw_Sx.js +11688 -0
- package/dist/layers.C24uY6Fe.js +931 -0
- package/dist/layers.C2fRZH80.js +1 -0
- package/dist/layers.C3KcBscd.js +1 -0
- package/dist/layers.C4CXznF_.js +37 -0
- package/dist/layers.C7M6CfP5.js +42 -0
- package/dist/layers.C7eXel2I.js +7 -0
- package/dist/layers.C8_lu5UH.js +23 -0
- package/dist/layers.CAm5BKM7.js +1 -0
- package/dist/layers.CBUXk-09.js +11 -0
- package/dist/layers.CDEWhNHi.js +10 -0
- package/dist/layers.CDL3opya.js +8 -0
- package/dist/layers.CE4FK9O5.js +40 -0
- package/dist/layers.CF-302Fh.js +9 -0
- package/dist/layers.CHZsXQcr.js +1 -0
- package/dist/layers.CHmvLyW1.js +8 -0
- package/dist/layers.CJUngdl8.js +37 -0
- package/dist/layers.CLAvgOJP.js +4 -0
- package/dist/layers.CLgsvcu7.js +10 -0
- package/dist/layers.CM9lYwoQ.js +36 -0
- package/dist/layers.CMMTUOh6.js +39 -0
- package/dist/layers.COYYECPe.js +48146 -0
- package/dist/layers.CQ6g1bgB.js +11 -0
- package/dist/layers.CR1i6QWh.js +803 -0
- package/dist/layers.CRKrzT-Y.js +11 -0
- package/dist/layers.CSNKiqFe.js +8 -0
- package/dist/layers.CSYpl3YM.js +960 -0
- package/dist/layers.CTK5IBtb.js +793 -0
- package/dist/layers.CVUgbWcY.js +21763 -0
- package/dist/layers.CXg7Sg55.js +802 -0
- package/dist/layers.C_RheIIS.js +904 -0
- package/dist/layers.C_eoPPmk.js +13 -0
- package/dist/layers.Ccvu-Dlo.js +1 -0
- package/dist/layers.CdGfvF7V.js +1 -0
- package/dist/layers.Cf9fVqKx.js +21938 -0
- package/dist/layers.Cisk2RXM.js +1 -0
- package/dist/layers.CkXqIRYC.js +38 -0
- package/dist/layers.ClJd7I1M.js +9 -0
- package/dist/layers.ClxhzI7j.js +8 -0
- package/dist/layers.CmqoZAnC.js +2479 -0
- package/dist/layers.CnrBP_N5.js +769 -0
- package/dist/layers.Cob5vYhh.js +5 -0
- package/dist/layers.Coygwekn.js +9 -0
- package/dist/layers.Cp5JhAmO.js +7 -0
- package/dist/layers.CqVTtuYm.js +6 -0
- package/dist/layers.CtHBfow6.js +282 -0
- package/dist/layers.CuoaVZrW.js +41 -0
- package/dist/layers.Cyzu9PKQ.js +1 -0
- package/dist/layers.D-7S1Qn6.js +7 -0
- package/dist/layers.D-cAGd4i.js +41 -0
- package/dist/layers.D-v-3mtK.js +9 -0
- package/dist/layers.D0MGpeyX.js +39 -0
- package/dist/layers.D0lTyC6R.js +35 -0
- package/dist/layers.D0zn4_Mx.js +1 -0
- package/dist/layers.D33cj9e8.js +1 -0
- package/dist/layers.D3A8IuMw.js +42 -0
- package/dist/layers.D40oNXih.js +1580 -0
- package/dist/layers.D4T8fTcj.js +1223 -0
- package/dist/layers.D4ydcUW5.js +7 -0
- package/dist/layers.D7jGxypv.js +8 -0
- package/dist/layers.DByfn15F.js +7 -0
- package/dist/layers.DCrkhQnl.js +9 -0
- package/dist/layers.DDVf9_XJ.js +501 -0
- package/dist/layers.DFF0tKf2.js +9 -0
- package/dist/layers.DGB6f2fp.js +186 -0
- package/dist/layers.DGF-imcj.js +6 -0
- package/dist/layers.DGlLGCMd.js +41 -0
- package/dist/layers.DH7bTclZ.js +1 -0
- package/dist/layers.DHrdv4EX.js +32 -0
- package/dist/layers.DIs-8Ynj.js +35 -0
- package/dist/layers.DIuulfCg.js +32 -0
- package/dist/layers.DJS98Zvr.js +42 -0
- package/dist/layers.DLwuMfdd.js +84 -0
- package/dist/layers.DMh-zb88.js +10 -0
- package/dist/layers.DMkBISW1.js +1 -0
- package/dist/layers.DN9HoVxI.js +18 -0
- package/dist/layers.DNray0Kg.js +51 -0
- package/dist/layers.DO8Lq71I.js +4 -0
- package/dist/layers.DOrgOHBr.js +1 -0
- package/dist/layers.DPg8YVWZ.js +118 -0
- package/dist/layers.DRRAWjJ-.js +84 -0
- package/dist/layers.DSnpK9v9.js +40 -0
- package/dist/layers.DT-qahkC.js +41 -0
- package/dist/layers.DT4gw4t8.js +8 -0
- package/dist/layers.DVjOEkHq.js +295 -0
- package/dist/layers.DW9Z4dLd.js +37 -0
- package/dist/layers.DWIf8ql6.js +8 -0
- package/dist/layers.DWynlv5x.js +1 -0
- package/dist/layers.DXKXZPx3.js +10 -0
- package/dist/layers.DXnKtB68.js +2966 -0
- package/dist/layers.DXr2kWj5.js +36 -0
- package/dist/layers.D_MRmmCY.js +40 -0
- package/dist/layers.D_Q80AXV.js +7 -0
- package/dist/layers.D_i2rLsg.js +46859 -0
- package/dist/layers.D_nCsZyv.js +6 -0
- package/dist/layers.Da1VjmYH.js +122 -0
- package/dist/layers.DaLcxrnP.js +4 -0
- package/dist/layers.DbaKVP5e.js +1 -0
- package/dist/layers.DeIaMdiM.js +2 -0
- package/dist/layers.Df5Qb1Ul.js +220 -0
- package/dist/layers.DfXjhAWm.js +207 -0
- package/dist/layers.Dfev0R1t.js +36 -0
- package/dist/layers.Dfw_b3vF.js +2235 -0
- package/dist/layers.Dh45zDPj.js +7 -0
- package/dist/layers.Di7HIxcn.js +268 -0
- package/dist/layers.DilKJOqa.js +139 -0
- package/dist/layers.DjUOC4st.js +16 -0
- package/dist/layers.DlWfA7qx.js +423 -0
- package/dist/layers.Dlp5s5ci.js +41 -0
- package/dist/layers.Dne14exG.js +14 -0
- package/dist/layers.DqpBjyTk.js +10 -0
- package/dist/layers.DrD0W7B3.js +5 -0
- package/dist/layers.DvdRZk6P.js +39 -0
- package/dist/layers.DxA6ocdw.js +70 -0
- package/dist/layers.DxIjFIXA.js +39 -0
- package/dist/layers.DxzveV49.js +96 -0
- package/dist/layers.Dy1naDTQ.js +14 -0
- package/dist/layers.ETa5WiKT.js +160 -0
- package/dist/layers.G9Ka5gtG.js +39 -0
- package/dist/layers.H0NAWny8.js +33 -0
- package/dist/layers.J8OYHqDO.js +32 -0
- package/dist/layers.JWCLFILJ.js +1 -0
- package/dist/layers.MNsWD8fy.js +139 -0
- package/dist/layers.MbNt5pO7.js +39 -0
- package/dist/layers.MsLi1AaR.js +10 -0
- package/dist/layers.NzblQjNP.js +36 -0
- package/dist/layers.PaRWxJTx.js +1 -0
- package/dist/layers.Pfqcm_x1.js +40 -0
- package/dist/layers.QUgQojU2.js +39 -0
- package/dist/layers.QeRtN6Gq.js +1 -0
- package/dist/layers.Rhe5fmYG.js +38 -0
- package/dist/layers.SuFOjX9h.js +9 -0
- package/dist/layers.UA4MYWds.js +1089 -0
- package/dist/layers.X8WQJwc7.js +70 -0
- package/dist/layers.XOnoorb1.js +116 -0
- package/dist/layers.YS67QCmr.js +40 -0
- package/dist/layers.YfvGPzEu.js +1 -0
- package/dist/layers.ZAlzzwQR.js +59 -0
- package/dist/layers.Zh3IN_BW.js +1283 -0
- package/dist/layers.akd0joBp.js +84 -0
- package/dist/layers.b0h5ZBmD.js +61 -0
- package/dist/layers.bfGibH2F.js +38 -0
- package/dist/layers.chFbbZh9.js +9166 -0
- package/dist/layers.e7K9sNTy.js +32 -0
- package/dist/layers.eOMmuyRq.js +52 -0
- package/dist/layers.f5SObLpT.js +6 -0
- package/dist/layers.ftDLkcXk.js +32 -0
- package/dist/layers.gdeLIrFt.js +10 -0
- package/dist/layers.hGSxVR0w.js +8 -0
- package/dist/layers.hMduvmS1.js +42 -0
- package/dist/layers.hYSHj9J1.js +230 -0
- package/dist/layers.hweLqW3I.js +261 -0
- package/dist/layers.i3cprua-.js +1 -0
- package/dist/layers.lCpg7dOn.js +21 -0
- package/dist/layers.pN-YTLfe.js +1 -0
- package/dist/layers.puGhbMne.js +257 -0
- package/dist/layers.rPpIRTrs.js +39 -0
- package/dist/layers.rfeShEsx.js +40 -0
- package/dist/layers.sf1uvSch.js +1 -0
- package/dist/layers.t3fpEPMO.js +8 -0
- package/dist/layers.v4_WldHC.js +9 -0
- package/dist/layers.vHrsDWns.js +40 -0
- package/dist/layers.yIm62nh0.js +5 -0
- package/dist/layers.z72AWJJl.js +42 -0
- package/dist/layers.zj3cbd1g.js +5 -0
- package/dist/layers.zysZLChz.js +9 -0
- package/package.json +1 -1
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import "./layers.CVUgbWcY.js";
|
|
2
|
+
var e = { paste: "Lipire", pasteAsPlaintext: "Inserare ca text simplu", pasteCharts: "Lipire diagrame", selectAll: "Selectare totală", multiSelect: "Adaugă element la selecție", moveCanvas: "Mutare pânză", cut: "Decupare", copy: "Copiere", copyAsPng: "Copiere în memoria temporară ca PNG", copyAsSvg: "Copiere în memoria temporară ca SVG", copyText: "Copiere în memoria temporară ca text", copySource: "Copiere sursă în memoria temporară", convertToCode: "Convertire în cod", bringForward: "Aducere în plan apropiat", sendToBack: "Trimitere în ultimul plan", bringToFront: "Aducere în prim plan", sendBackward: "Trimitere în plan secundar", delete: "Ștergere", copyStyles: "Copiere stiluri", pasteStyles: "Lipire stiluri", stroke: "Contur", background: "Fundal", fill: "Umplere", strokeWidth: "Lățimea conturului", strokeStyle: "Stilul conturului", strokeStyle_solid: "Neîntrerupt", strokeStyle_dashed: "Liniuțe", strokeStyle_dotted: "Punctat", sloppiness: "Aspectul trasării", opacity: "Opacitate", textAlign: "Alinierea textului", edges: "Margini", sharp: "Ascuțite", round: "Rotunde", arrowheads: "Vârfuri de săgeată", arrowhead_none: "Niciunul", arrowhead_arrow: "Săgeată", arrowhead_bar: "Bară", arrowhead_circle: "Cerc", arrowhead_circle_outline: "Cerc (contur)", arrowhead_triangle: "Triunghi", arrowhead_triangle_outline: "Triunghi (contur)", arrowhead_diamond: "Romb", arrowhead_diamond_outline: "Romb (contur)", fontSize: "Dimensiune font", fontFamily: "Familia de fonturi", addWatermark: "Adaugă „Realizat cu Excalidraw”", handDrawn: "Scris de mână", normal: "Normal", code: "Cod", small: "Mică", medium: "Medie", large: "Mare", veryLarge: "Foarte mare", solid: "Plină", hachure: "Hașură", zigzag: "Zigzag", crossHatch: "Hașură transversală", thin: "Subțire", bold: "Îngroșată", left: "Stânga", center: "Centru", right: "Dreapta", extraBold: "Extra îngroșată", architect: "Arhitect", artist: "Artist", cartoonist: "Caricaturist", fileTitle: "Nume de fișier", colorPicker: "Selector de culoare", canvasColors: "Folosite pe pânză", canvasBackground: "Fundalul pânzei", drawingCanvas: "Pânză pentru desenat", layers: "Straturi", actions: "Acțiuni", language: "Limbă", liveCollaboration: "Colaborare în direct...", duplicateSelection: "Duplicare", untitled: "Nedenumit", name: "Nume", yourName: "Numele tău", madeWithExcalidraw: "Realizat cu Excalidraw", group: "Grupare selecție", ungroup: "Degrupare selecție", collaborators: "Colaboratori", showGrid: "Afișare grilă", addToLibrary: "Adăugare la bibliotecă", removeFromLibrary: "Eliminare din bibliotecă", libraryLoadingMessage: "Se încarcă biblioteca…", libraries: "Răsfoiește bibliotecile", loadingScene: "Se încarcă scena…", align: "Aliniere", alignTop: "Aliniere sus", alignBottom: "Aliniere jos", alignLeft: "Aliniere la stânga", alignRight: "Aliniere la dreapta", centerVertically: "Centrare verticală", centerHorizontally: "Centrare orizontală", distributeHorizontally: "Distribuie orizontal", distributeVertically: "Distribuie vertical", flipHorizontal: "Răsturnare orizontală", flipVertical: "Răsturnare verticală", viewMode: "Mod de vizualizare", share: "Distribuie", showStroke: "Afișare selector culoare contur", showBackground: "Afișare selector culoare fundal", toggleTheme: "Comutare temă", personalLib: "Biblioteca personală", excalidrawLib: "Biblioteca Excalidraw", decreaseFontSize: "Micșorează dimensiunea fontului", increaseFontSize: "Mărește dimensiunea fontului", unbindText: "Deconectare text", bindText: "Legare text de container", createContainerFromText: "Încadrare text într-un container", link: { edit: "Editare URL", editEmbed: "Editare URL și încorporare", create: "Creare URL", createEmbed: "Creare URL și încorporare", label: "URL", labelEmbed: "URL și încorporare", empty: "Nu este setat niciun URL" }, lineEditor: { edit: "Editare linie", exit: "Părăsire editor de linii" }, elementLock: { lock: "Blocare", unlock: "Deblocare", lockAll: "Blocare toate", unlockAll: "Deblocare toate" }, statusPublished: "Publicat", sidebarLock: "Păstrează deschisă bara laterală", selectAllElementsInFrame: "", removeAllElementsFromFrame: "", eyeDropper: "Alegere culoare din pânză", textToDiagram: "Text la diagramă", prompt: "Solicitare" }, a = { noItems: "Niciun element adăugat încă...", hint_emptyLibrary: "Selectează un element de pe pânză pentru a-l adăuga aici sau instalează o bibliotecă din depozitul public, de mai jos.", hint_emptyPrivateLibrary: "Selectează un element de pe pânză pentru a-l adăuga aici." }, i = { clearReset: "Resetare pânză", exportJSON: "Exportare la fișiere", exportImage: "Exportare imagine...", export: "Salvare în...", copyToClipboard: "Copiere în memoria temporară", save: "Salvare în fișierul curent", saveAs: "Salvare ca", load: "Deschidere", getShareableLink: "Obține URL partajabil", close: "Închidere", selectLanguage: "Selectare limbă", scrollBackToContent: "Derulare înapoi la conținut", zoomIn: "Apropiere", zoomOut: "Depărtare", resetZoom: "Resetare transfocare", menu: "Meniu", done: "Efectuat", edit: "Edit", undo: "Anulare", redo: "Refacere", resetLibrary: "Resetare bibliotecă", createNewRoom: "Creare cameră nouă", fullScreen: "Ecran complet", darkMode: "Mod întunecat", lightMode: "Mod luminos", zenMode: "Mod zen", objectsSnapMode: "Ancorare la obiecte", exitZenMode: "Ieșire din modul zen", cancel: "Anulare", clear: "Ștergere", remove: "Eliminare", embed: "Comutare încorporare", publishLibrary: "Publicare", submit: "Trimitere", confirm: "Confirmare", embeddableInteractionButton: "Clic pentru interacționare" }, r = { clearReset: "Această opțiune va șterge întreaga pânză. Confirmi?", couldNotCreateShareableLink: "Nu s-a putut crea un URL partajabil.", couldNotCreateShareableLinkTooBig: "Nu s-a putut crea un URL partajabil: scena este prea mare", couldNotLoadInvalidFile: "Fișierul invalid nu a putut fi încărcat", importBackendFailed: "Importarea de la nivel de server a eșuat.", cannotExportEmptyCanvas: "Nu se poate exporta pânza goală.", couldNotCopyToClipboard: "Nu s-a putut copia în memoria temporară.", decryptFailed: "Datele nu au putut fi decriptate.", uploadedSecurly: "Încărcarea a fost securizată prin criptare integrală, însemnând că serverul Excalidraw și terții nu pot citi conținutul.", loadSceneOverridePrompt: "Încărcarea desenului extern va înlocui conținutul existent. Dorești să continui?", collabStopOverridePrompt: `Oprirea sesiunii va suprascrie desenul anterior stocat local. Confirmi alegerea?
|
|
3
|
+
|
|
4
|
+
(Dacă vrei să păstrezi desenul local, pur și simplu închide fila navigatorului în schimb.)`, errorAddingToLibrary: "Elementul nu a putut fi adăugat în bibliotecă", errorRemovingFromLibrary: "Elementul nu a putut fi eliminat din bibliotecă", confirmAddLibrary: "Această acțiune va adăuga {{numShapes}} formă(e) la biblioteca ta. Confirmi?", imageDoesNotContainScene: "Această imagine nu pare să conțină date de scenă. Ai activat încorporarea scenei în timpul exportului?", cannotRestoreFromImage: "Scena nu a putut fi restaurată din acest fișier de imagine", invalidSceneUrl: "Scena nu a putut fi importată din URL-ul furnizat. Este fie incorect formată, fie nu conține date JSON Excalidraw valide.", resetLibrary: "Această opțiune va elimina conținutul din bibliotecă. Confirmi?", removeItemsFromsLibrary: "Ștergi {{count}} element(e) din bibliotecă?", invalidEncryptionKey: "Cheia de criptare trebuie să aibă 22 de caractere. Colaborarea în direct este dezactivată.", collabOfflineWarning: `Nu este disponibilă nicio conexiune la internet.
|
|
5
|
+
Modificările nu vor fi salvate!` }, t = { unsupportedFileType: "Tip de fișier neacceptat.", imageInsertError: "Imaginea nu a putut fi introdusă. Reîncearcă mai târziu...", fileTooBig: "Fișierul este prea mare. Dimensiunea maximă permisă este de {{maxSize}}.", svgImageInsertError: "Imaginea SVG nu a putut fi introdus. Marcajul SVG pare invalid.", failedToFetchImage: "Preluarea imaginii a eșuat.", invalidSVGString: "SVG invalid.", cannotResolveCollabServer: "Nu a putut fi realizată conexiunea la serverul de colaborare. Reîncarcă pagina și încearcă din nou.", importLibraryError: "Biblioteca nu a putut fi încărcată", collabSaveFailed: "Nu s-a putut salva în baza de date la nivel de server. Dacă problemele persistă, ar trebui să salvezi fișierul la nivel local pentru a te asigura că nu îți pierzi munca.", collabSaveFailed_sizeExceeded: "Nu s-a putut salva în baza de date la nivel de server, întrucât se pare că pânza este prea mare. Ar trebui să salvezi fișierul la nivel local pentru a te asigura că nu îți pierzi munca.", imageToolNotSupported: "Imaginile sunt dezactivate.", brave_measure_text_error: { line1: "Se pare că folosești navigatorul Brave cu opțiunea <bold>strictă pentru blocarea amprentării</bold>.", line2: "Acest lucru poate duce la întreruperea <bold>elementelor text</bold> din desene.", line3: "Îți recomandăm ferm să dezactivezi această setare. Poți urma <link>acești pași</link> pentru a face acest lucru.", line4: "Dacă dezactivarea acestei setări nu duce la remedierea afișării elementelor text, deschide un tichet de <issueLink>problemă</issueLink> pe pagina noastră de GitHub sau scrie-ne pe <discordLink>Discord</discordLink>" }, libraryElementTypeError: { embeddable: "Elementele încorporabile nu pot fi adăugate la bibliotecă.", iframe: "Elementele iFrame nu pot fi adăugate la bibliotecă.", image: "În curând vor putea fi adăugate imagini în bibliotecă!" }, asyncPasteFailedOnRead: "Lipirea nu a putut fi efectuată (nu s-a putut citit din memoria temporară a sistemului).", asyncPasteFailedOnParse: "Lipirea nu a putut fi efectuată.", copyToSystemClipboardFailed: "Nu s-a putut copia în memoria temporară." }, u = { selection: "Selecție", image: "Introducere imagine", rectangle: "Dreptunghi", diamond: "Romb", ellipse: "Elipsă", arrow: "Săgeată", line: "Linie", freedraw: "Desenare", text: "Text", library: "Bibliotecă", lock: "Menține activ instrumentul selectat după desenare", penMode: "Mod stilou – împiedică atingerea", link: "Adăugare/actualizare URL pentru forma selectată", eraser: "Radieră", frame: "", magicframe: "Structură-de-fire la cod", embeddable: "Încorporare web", laser: "Indicator laser", hand: "Mână (instrument de panoramare)", extraTools: "", mermaidToExcalidraw: "Mermaid la Excalidraw", magicSettings: "Setări IA" }, n = { canvasActions: "Acțiuni pentru pânză", selectedShapeActions: "Acțiuni pentru forma selectată", shapes: "Forme" }, o = { canvasPanning: "Pentru a muta pânză, ține apăsată rotița mausului sau bara de spațiu sau folosește instrumentul în formă de mână", linearElement: "Dă clic pentru a crea mai multe puncte, glisează pentru a forma o singură linie", freeDraw: "Dă clic pe pânză și glisează cursorul, apoi eliberează-l când ai terminat", text: "Sfat: poți adăuga text și dând dublu clic oriunde cu instrumentul de selecție", embeddable: "Dă clic și trage pentru a crea un cod de încorporare de pagină web", text_selected: "Dă dublu clic sau apasă tasta Enter pentru a edita textul", text_editing: "Apasă tasta Escape sau Ctrl sau Cmd + Enter pentru a finaliza editarea", linearElementMulti: "Dă clic pe ultimul punct sau apasă tasta Escape sau tasta Enter pentru a termina", lockAngle: "Poți constrânge unghiul prin ținerea apăsată a tastei SHIFT", resize: `Poți constrânge proporțiile, ținând apăsată tasta SHIFT în timp ce redimensionezi,
|
|
6
|
+
ține apăsată tasta ALT pentru a redimensiona de la centru`, resizeImage: `Poți redimensiona liber ținând apăsată tasta SHIFT,
|
|
7
|
+
ține apăsată tasta ALT pentru a redimensiona din centru`, rotate: "Poți constrânge unghiurile, ținând apăsată tasta SHIFT în timp ce rotești", lineEditor_info: "Ține apăsată tasta Ctrl sau Cmd și dă dublu clic sau apasă tasta Ctrl sau Cmd + Enter pentru a edita puncte", lineEditor_pointSelected: `Apasă tasta Delete pentru a elimina punctele,
|
|
8
|
+
combinația de taste Ctrl sau Cmd + D pentru a le duplica sau glisează-le pentru a le schimba poziția`, lineEditor_nothingSelected: `Selectează un punct pentru a-l edita (ține apăsată tasta SHIFT pentru a selecta mai multe),
|
|
9
|
+
sau ține apăsată tasta Alt și dă clic pentru a adăuga puncte noi`, placeImage: "Dă clic pentru a poziționa imaginea sau dă clic și glisează pentru a seta manual dimensiunea imaginii", publishLibrary: "Publică propria bibliotecă", bindTextToElement: "Apasă tasta Enter pentru a adăuga text", deepBoxSelect: "Ține apăsată tasta Ctrl sau Cmd pentru a efectua selectarea de adâncime și pentru a preveni glisarea", eraserRevert: "Ține apăsată tasta Alt pentru a anula elementele marcate pentru ștergere", firefox_clipboard_write: "Această caracteristică poate fi probabil activată prin setarea preferinței „dom.events.asyncClipboard.clipboardItem” ca „true”. Pentru a schimba preferințele navigatorului în Firefox, accesează pagina „about:config”.", disableSnapping: "Ține apăsat CtrlOrCmd pentru a dezactiva ancorarea" }, l = { cannotShowPreview: "Nu se poate afișa previzualizarea", canvasTooBig: "Pânza poate fi prea mare.", canvasTooBigTip: "Sfat: încearcă să apropii puțin mai mult elementele cele mai îndepărtate." }, c = { headingMain: "A apărut o eroare. Încearcă <button>să reîncarci pagina</button>.", clearCanvasMessage: "Dacă reîncărcarea nu funcționează, încearcă <button>să ștergi pânza</button>.", clearCanvasCaveat: " Acest lucru va duce la pierderea progresului ", trackedToSentry: "Eroarea cu identificatorul {{eventId}} a fost urmărită în sistemul nostru.", openIssueMessage: "Am luat măsuri de precauție pentru a nu include informații despre scenă în eroare. Dacă scena nu este privată, oferă-ne mai multe informații în <button>monitorul nostru pentru erori</button>. Include informațiile de mai jos copiindu-le și lipindu-le în tichetul cu problemă de pe GitHub.", sceneContent: "Conținutul scenei:" }, s = { desc_intro: "Poți invita alte persoane pentru a colabora la scena actuală.", desc_privacy: "Nu te îngrijora. Sesiunea utilizează criptarea integrală, astfel încât orice desenezi va rămâne privat. Nici măcar serverul nostru nu va putea vedea pe ce ai lucrat.", button_startSession: "Pornire sesiune", button_stopSession: "Oprire sesiune", desc_inProgressIntro: "Sesiunea de colaborare în direct este în curs de desfășurare.", desc_shareLink: "Distribuie acest URL persoanelor cu care dorești să colaborezi:", desc_exitSession: "Oprirea sesiunii te va deconecta de la sală, însă vei putea lucra în continuare, pe plan local, cu scena. Reține că această opțiune nu va afecta alte persoane, iar acestea vor putea să colaboreze în continuare pe versiunea lor.", shareTitle: "Alătură-te unei sesiuni de colaborare în direct pe Excalidraw" }, d = { title: "Eroare" }, p = { disk_title: "Salvare pe disc", disk_details: "Exportă datele scenei pe un fișier din care poți importa mai târziu.", disk_button: "Salvare în fișier", link_title: "URL partajabil", link_details: "Exportă ca URL doar în citire.", link_button: "Exportare în URL", excalidrawplus_description: "Salvează scena în spațiul de lucru Excalidraw+.", excalidrawplus_button: "Exportare", excalidrawplus_exportError: "Excalidraw+ nu a putut fi exportat în acest moment..." }, m = { blog: "Citește blogul nostru", click: "clic", deepSelect: "Selectare de adâncime", deepBoxSelect: "Selectare de adâncime în casetă și prevenire glisare", curvedArrow: "Săgeată curbată", curvedLine: "Linie curbată", documentation: "Documentație", doubleClick: "dublu clic", drag: "glisare", editor: "Editor", editLineArrowPoints: "Editare puncte de săgeată/rând", editText: "Editare text/adăugare etichetă", github: "Ai întâmpinat o problemă? Trimite un raport", howto: "Urmărește ghidurile noastre", or: "sau", preventBinding: "Împiedică legarea săgeții", tools: "Instrumente", shortcuts: "Comenzi rapide de la tastatură", textFinish: "Finalizează editarea (editor de text)", textNewLine: "Adaugă o linie nouă (editor de text)", title: "Ajutor", view: "Vizualizare", zoomToFit: "Transfocare pentru a cuprinde totul", zoomToSelection: "Transfocare la selecție", toggleElementLock: "Blocare/deblocare selecție", movePageUpDown: "Deplasare pagină sus/jos", movePageLeftRight: "Deplasare pagină stânga/dreapta" }, E = { title: "Ștergere pânză" }, x = { title: "Publicare bibliotecă", itemName: "Denumirea elementului", authorName: "Numele autorului", githubUsername: "Numele de utilizator GitHub", twitterUsername: "Numele de utilizator Twitter", libraryName: "Denumirea bibliotecii", libraryDesc: "Descrierea bibliotecii", website: "Pagină de internet", placeholder: { authorName: "Numele sau numele tău de utilizator", libraryName: "Numele bibliotecii tale", libraryDesc: "Descrierea bibliotecii tale pentru a ajuta oamenii să înțeleagă utilizarea acesteia", githubHandle: "Numele de utilizator GitHub (opțional), pentru a putea edita biblioteca odată ce este trimisă spre revizuire", twitterHandle: "Numele de utilizator Twitter (opțional), pentru a indica sursa la promovarea pe Twitter", website: "Trimitere către pagina ta personală de internet sau altundeva (opțional)" }, errors: { required: "Obligatoriu", website: "Introdu un URL valid" }, noteDescription: "Trimite-ți biblioteca pentru a fi inclusă în <link>depozitul de biblioteci publice</link> în vederea utilizării de către alte persoane în desenele lor.", noteGuidelines: "Biblioteca trebuie aprobată manual mai întâi. Citește <link>orientările</link> înainte de trimitere. Vei avea nevoie de un cont GitHub pentru a comunica și efectua modificări, dacă este cazul, însă nu este strict necesar.", noteLicense: "Prin trimiterea bibliotecii, ești de acord că aceasta va fi publicată sub <link>Licența MIT, </link>care, pe scurt, înseamnă că oricine o poate folosi fără restricții.", noteItems: "Fiecare element din bibliotecă trebuie să aibă propriul nume astfel încât să fie filtrabil. Următoarele elemente din bibliotecă vor fi incluse:", atleastOneLibItem: "Selectează cel puțin un element din bibliotecă pentru a începe", republishWarning: "Observație: unele dintre elementele selectate sunt marcate ca fiind deja publicate/trimise. Ar trebui să retrimiți elemente numai atunci când actualizezi o trimitere sau o bibliotecă existentă." }, b = { title: "Bibliotecă trimisă", content: "Îți mulțumim, {{authorName}}. Biblioteca a fost trimisă spre revizuire. Poți urmări starea <link>aici</link>" }, g = { resetLibrary: "Resetare bibliotecă", removeItemsFromLib: "Elimină elementele selectate din bibliotecă" }, v = { header: "Exportare imagine", label: { withBackground: "Fundal", onlySelected: "Numai selecția", darkMode: "Mod întunecat", embedScene: "Încorporare scenă", scale: "Scală", padding: "Spațiere" }, tooltip: { embedScene: `Datele scenei vor fi salvate în fișierul PNG/SVG exportat, astfel că scena va putea fi restaurată din acesta.
|
|
10
|
+
Va crește dimensiunea fișierului exportat.` }, title: { exportToPng: "Exportare ca PNG", exportToSvg: "Exportare ca SVG", copyPngToClipboard: "Copiere PNG în memoria temporară" }, button: { exportToPng: "PNG", exportToSvg: "SVG", copyPngToClipboard: "Copiere în memoria temporară" } }, f = { tooltip: "Desenele tale sunt criptate integral, astfel că serverele Excalidraw nu le vor vedea niciodată.", link: "Articol de blog pe criptarea integrală din Excalidraw" }, B = { angle: "Unghi", element: "Element", elements: "Elemente", height: "Înălțime", scene: "Scenă", selected: "Selectate", storage: "Stocare", title: "Statistici pentru pasionați", total: "Total", version: "Versiune", versionCopy: "Clic pentru copiere", versionNotAvailable: "Versiune indisponibilă", width: "Lățime" }, S = { addedToLibrary: "Adăugat în bibliotecă", copyStyles: "Stiluri copiate.", copyToClipboard: "Copiat în memoria temporară.", copyToClipboardAsPng: `S-a copiat {{exportSelection}} în memoria temporară sub formă de PNG
|
|
11
|
+
({{exportColorScheme}})`, fileSaved: "Fișier salvat.", fileSavedToFilename: "Salvat în {filename}", canvas: "pânza", selection: "selecția", pasteAsSingleElement: `Folosește {{shortcut}} pentru a insera ca un singur element
|
|
12
|
+
sau insera într-un editor de text existent`, unableToEmbed: "Încorporarea acestui URL nu este permisă momentan. Deschideți un tichet cu probleme pe GitHub pentru a solicita adăugarea acestui URL în lista albă", unrecognizedLinkFormat: "URL-ul pe care l-ai încorporat nu coincide cu formatul așteptat. Încearcă să lipești șirul „de încorporat” furnizat de pagina sursă" }, z = { transparent: "Transparent", black: "Negru", white: "Alb", red: "Roșu", pink: "Roz", grape: "Struguriu", violet: "Violet", gray: "Gri", blue: "Albastru", cyan: "Cyan", teal: "Cyan-verde", green: "Verde", yellow: "Galben", orange: "Portocaliu", bronze: "Bronz" }, C = { app: { center_heading: "Toate datele tale sunt salvate local în navigatorul tău.", center_heading_plus: "Ai vrut să mergi în schimb la Excalidraw+?", menuHint: "Exportare, preferințe, limbi, ..." }, defaults: { menuHint: "Exportare, preferințe și mai multe...", center_heading: "Diagrame. Făcute. Simple.", toolbarHint: "Alege un instrument și începe să desenezi!", helpHint: "Comenzi rapide și ajutor" } }, h = { mostUsedCustomColors: "Cele mai utilizate culori personalizate", colors: "Culori", shades: "Nuanțe", hexCode: "Cod hexa", noShades: "Nu este disponibilă nicio nuanță pentru această culoare" }, L = { action: { exportToImage: { title: "Exportare ca imagine", button: "Exportare ca imagine", description: "Exportă datele scenei ca fișier din care poți importa mai târziu." }, saveToDisk: { title: "Salvare pe disc", button: "Salvare pe disc", description: "Exportă datele scenei pe un fișier din care poți importa mai târziu." }, excalidrawPlus: { title: "Excalidraw+", button: "Exportare în Excalidraw+", description: "Salvează scena în spațiul de lucru Excalidraw+." } }, modal: { loadFromFile: { title: "Încărcare din fișier", button: "Încărcare din fișier", description: "Încărcarea dintr-un fișier va <bold>înlocui conținutul existent</bold>.<br></br>Poți face mai întâi o copie de rezervă a desenului folosind una dintre opțiunile de mai jos." }, shareableLink: { title: "Încărcare din lnk", button: "Înlocuiește conținutul meu", description: "Încărcarea unui desen extern va <bold>înlocui conținutul existent</bold>.<br></br>Poți face mai întâi o copie de rezervă a desenului folosind una dintre opțiunile de mai jos." } } }, y = { title: "Mermaid la Excalidraw", button: "Introducere", description: "În prezent, numai <flowchartLink>Organigramele</flowchartLink>, <sequenceLink>Diagramele de secvență</sequenceLink> și <classLink>Diagramele de clasă</classLink> sunt acceptate. Celelalte tipuri vor fi redate ca imagine în Excalidraw.", syntax: "Sintaxă Mermaid", preview: "Previzualizare" }, D = { labels: e, library: a, buttons: i, alerts: r, errors: t, toolBar: u, headings: n, hints: o, canvasError: l, errorSplash: c, roomDialog: s, errorDialog: d, exportDialog: p, helpDialog: m, clearCanvasDialog: E, publishDialog: x, publishSuccessDialog: b, confirmDialog: g, imageExportDialog: v, encrypted: f, stats: B, toast: S, colors: z, welcomeScreen: C, colorPicker: h, overwriteConfirm: L, mermaid: y };
|
|
13
|
+
export {
|
|
14
|
+
r as alerts,
|
|
15
|
+
i as buttons,
|
|
16
|
+
l as canvasError,
|
|
17
|
+
E as clearCanvasDialog,
|
|
18
|
+
h as colorPicker,
|
|
19
|
+
z as colors,
|
|
20
|
+
g as confirmDialog,
|
|
21
|
+
D as default,
|
|
22
|
+
f as encrypted,
|
|
23
|
+
d as errorDialog,
|
|
24
|
+
c as errorSplash,
|
|
25
|
+
t as errors,
|
|
26
|
+
p as exportDialog,
|
|
27
|
+
n as headings,
|
|
28
|
+
m as helpDialog,
|
|
29
|
+
o as hints,
|
|
30
|
+
v as imageExportDialog,
|
|
31
|
+
e as labels,
|
|
32
|
+
a as library,
|
|
33
|
+
y as mermaid,
|
|
34
|
+
L as overwriteConfirm,
|
|
35
|
+
x as publishDialog,
|
|
36
|
+
b as publishSuccessDialog,
|
|
37
|
+
s as roomDialog,
|
|
38
|
+
B as stats,
|
|
39
|
+
S as toast,
|
|
40
|
+
u as toolBar,
|
|
41
|
+
C as welcomeScreen
|
|
42
|
+
};
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
const c = Math.PI, x = 2 * c, u = 1e-6, m = x - u;
|
|
2
|
+
function E(e) {
|
|
3
|
+
this._ += e[0];
|
|
4
|
+
for (let t = 1, h = e.length; t < h; ++t)
|
|
5
|
+
this._ += arguments[t] + e[t];
|
|
6
|
+
}
|
|
7
|
+
function A(e) {
|
|
8
|
+
let t = Math.floor(e);
|
|
9
|
+
if (!(t >= 0)) throw new Error(`invalid digits: ${e}`);
|
|
10
|
+
if (t > 15) return E;
|
|
11
|
+
const h = 10 ** t;
|
|
12
|
+
return function(i) {
|
|
13
|
+
this._ += i[0];
|
|
14
|
+
for (let s = 1, n = i.length; s < n; ++s)
|
|
15
|
+
this._ += Math.round(arguments[s] * h) / h + i[s];
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
class L {
|
|
19
|
+
constructor(t) {
|
|
20
|
+
this._x0 = this._y0 = // start of current subpath
|
|
21
|
+
this._x1 = this._y1 = null, this._ = "", this._append = t == null ? E : A(t);
|
|
22
|
+
}
|
|
23
|
+
moveTo(t, h) {
|
|
24
|
+
this._append`M${this._x0 = this._x1 = +t},${this._y0 = this._y1 = +h}`;
|
|
25
|
+
}
|
|
26
|
+
closePath() {
|
|
27
|
+
this._x1 !== null && (this._x1 = this._x0, this._y1 = this._y0, this._append`Z`);
|
|
28
|
+
}
|
|
29
|
+
lineTo(t, h) {
|
|
30
|
+
this._append`L${this._x1 = +t},${this._y1 = +h}`;
|
|
31
|
+
}
|
|
32
|
+
quadraticCurveTo(t, h, i, s) {
|
|
33
|
+
this._append`Q${+t},${+h},${this._x1 = +i},${this._y1 = +s}`;
|
|
34
|
+
}
|
|
35
|
+
bezierCurveTo(t, h, i, s, n, $) {
|
|
36
|
+
this._append`C${+t},${+h},${+i},${+s},${this._x1 = +n},${this._y1 = +$}`;
|
|
37
|
+
}
|
|
38
|
+
arcTo(t, h, i, s, n) {
|
|
39
|
+
if (t = +t, h = +h, i = +i, s = +s, n = +n, n < 0) throw new Error(`negative radius: ${n}`);
|
|
40
|
+
let $ = this._x1, r = this._y1, p = i - t, l = s - h, _ = $ - t, o = r - h, a = _ * _ + o * o;
|
|
41
|
+
if (this._x1 === null)
|
|
42
|
+
this._append`M${this._x1 = t},${this._y1 = h}`;
|
|
43
|
+
else if (a > u) if (!(Math.abs(o * p - l * _) > u) || !n)
|
|
44
|
+
this._append`L${this._x1 = t},${this._y1 = h}`;
|
|
45
|
+
else {
|
|
46
|
+
let d = i - $, f = s - r, y = p * p + l * l, T = d * d + f * f, g = Math.sqrt(y), v = Math.sqrt(a), w = n * Math.tan((c - Math.acos((y + a - T) / (2 * g * v))) / 2), M = w / v, b = w / g;
|
|
47
|
+
Math.abs(M - 1) > u && this._append`L${t + M * _},${h + M * o}`, this._append`A${n},${n},0,0,${+(o * d > _ * f)},${this._x1 = t + b * p},${this._y1 = h + b * l}`;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
arc(t, h, i, s, n, $) {
|
|
51
|
+
if (t = +t, h = +h, i = +i, $ = !!$, i < 0) throw new Error(`negative radius: ${i}`);
|
|
52
|
+
let r = i * Math.cos(s), p = i * Math.sin(s), l = t + r, _ = h + p, o = 1 ^ $, a = $ ? s - n : n - s;
|
|
53
|
+
this._x1 === null ? this._append`M${l},${_}` : (Math.abs(this._x1 - l) > u || Math.abs(this._y1 - _) > u) && this._append`L${l},${_}`, i && (a < 0 && (a = a % x + x), a > m ? this._append`A${i},${i},0,1,${o},${t - r},${h - p}A${i},${i},0,1,${o},${this._x1 = l},${this._y1 = _}` : a > u && this._append`A${i},${i},0,${+(a >= c)},${o},${this._x1 = t + i * Math.cos(n)},${this._y1 = h + i * Math.sin(n)}`);
|
|
54
|
+
}
|
|
55
|
+
rect(t, h, i, s) {
|
|
56
|
+
this._append`M${this._x0 = this._x1 = +t},${this._y0 = this._y1 = +h}h${i = +i}v${+s}h${-i}Z`;
|
|
57
|
+
}
|
|
58
|
+
toString() {
|
|
59
|
+
return this._;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
function P(e) {
|
|
63
|
+
return function() {
|
|
64
|
+
return e;
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
function q(e) {
|
|
68
|
+
let t = 3;
|
|
69
|
+
return e.digits = function(h) {
|
|
70
|
+
if (!arguments.length) return t;
|
|
71
|
+
if (h == null)
|
|
72
|
+
t = null;
|
|
73
|
+
else {
|
|
74
|
+
const i = Math.floor(h);
|
|
75
|
+
if (!(i >= 0)) throw new RangeError(`invalid digits: ${h}`);
|
|
76
|
+
t = i;
|
|
77
|
+
}
|
|
78
|
+
return e;
|
|
79
|
+
}, () => new L(t);
|
|
80
|
+
}
|
|
81
|
+
export {
|
|
82
|
+
P as c,
|
|
83
|
+
q as w
|
|
84
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./layers.hYSHj9J1.js");var u={paste:"הדבק",pasteAsPlaintext:"הדבק ללא עיצוב",pasteCharts:"הדבק גרפים",selectAll:"בחר הכל",multiSelect:"הוסף רכיב לבחירה",moveCanvas:"הזז את הקנבס",cut:"גזור",copy:"העתק",copyAsPng:"העתק ללוח כ PNG",copyAsSvg:"העתק ללוח כ SVG",copyText:"העתק ללוח כטקסט",copySource:"",convertToCode:"",bringForward:"הבא שכבה קדימה",sendToBack:"שלח אחורה",bringToFront:"העבר לחזית",sendBackward:"העבר שכבה אחורה",delete:"מחק",copyStyles:"העתק סגנון",pasteStyles:"הדבק סגנון",stroke:"קו מתאר",background:"רקע",fill:"מילוי",strokeWidth:"עובי קו מתאר",strokeStyle:"סגנון קו המתאר",strokeStyle_solid:"מלא",strokeStyle_dashed:"מקווקו",strokeStyle_dotted:"מנוקד",sloppiness:"רישול",opacity:"אטימות",textAlign:"יישור טקסט",edges:"קצוות",sharp:"חד",round:"עגול",arrowheads:"ראשי חצים",arrowhead_none:"ללא",arrowhead_arrow:"חץ",arrowhead_bar:"קצה אנכי",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"משולש",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"גודל גופן",fontFamily:"גופן",addWatermark:'הוסף "נוצר באמצעות Excalidraw"',handDrawn:"ציור יד",normal:"רגיל",code:"קוד",small:"קטן",medium:"בינוני",large:"גדול",veryLarge:"גדול מאוד",solid:"מוצק",hachure:"קווים מקבילים קצרים להצגת כיוון וחדות שיפוע במפה",zigzag:"זיגזג",crossHatch:"קווים מוצלבים שתי וערב",thin:"דק",bold:"מודגש",left:"שמאל",center:"מרכז",right:"ימין",extraBold:"מודגש במיוחד",architect:"ארכיטקט",artist:"אמן",cartoonist:"קריקטוריסט",fileTitle:"שם קובץ",colorPicker:"בוחר צבעים",canvasColors:"בשימוש בקנבס",canvasBackground:"רקע קנבס",drawingCanvas:"קנבס ציור",layers:"שכבות",actions:"פעולות",language:"שפה",liveCollaboration:"התחל שיתוף חי...",duplicateSelection:"שכפל",untitled:"ללא כותרת",name:"שם",yourName:"שמך",madeWithExcalidraw:"נוצר באמצעות Excalidraw",group:"קבץ",ungroup:"פרק קבוצה",collaborators:"שותפים",showGrid:"הצג רשת",addToLibrary:"הוסף לספריה",removeFromLibrary:"הסר מספריה",libraryLoadingMessage:"טוען ספריה…",libraries:"עיין בספריות",loadingScene:"טוען תצוגה…",align:"יישר",alignTop:"יישר למעלה",alignBottom:"יישר למטה",alignLeft:"יישר לשמאל",alignRight:"יישר לימין",centerVertically:"מרכז אנכית",centerHorizontally:"מרכז אופקית",distributeHorizontally:"חלוקה אופקית",distributeVertically:"חלוקה אנכית",flipHorizontal:"הפוך אופקית",flipVertical:"הפוך אנכית",viewMode:"מצב תצוגה",share:"שתף",showStroke:"הצג בוחר צבע מברשת",showBackground:"הצג בוחר צבע רקע",toggleTheme:"שינוי ערכת העיצוב",personalLib:"ספריה פרטית",excalidrawLib:"הספריה של Excalidraw",decreaseFontSize:"הקטן את גודל הגופן",increaseFontSize:"הגדל את גודל הגופן",unbindText:"ביטול קיבוע הטקסט",bindText:"קיבוע הטקסט למיכל",createContainerFromText:"ארוז טקסט במיכל",link:{edit:"עריכת קישור",editEmbed:"ערוך קישור ושבץ",create:"יצירת קישור",createEmbed:"צור קישור ושבץ",label:"קישור",labelEmbed:"קשר ושבץ",empty:"לא נקבע קישור"},lineEditor:{edit:"ערוך קו",exit:"צא מעורך הקו"},elementLock:{lock:"נעילה",unlock:"ביטול נעילה",lockAll:"לנעול הכל",unlockAll:"שחרור הכול"},statusPublished:"פורסם",sidebarLock:"שמור את סרגל הצד פתוח",selectAllElementsInFrame:"בחר את כל האלמנטים במסגרת",removeAllElementsFromFrame:"הסר את כל האלמנטים שבמסגרת",eyeDropper:"",textToDiagram:"",prompt:""},D={noItems:"עוד לא הוספת דברים...",hint_emptyLibrary:"בחר משהו בקנבס כדי להוסיף אותו לכאן, או שתתקין ספריה מהספריה הציבורית מטה.",hint_emptyPrivateLibrary:"בחר משהו בקנבס כדי להוסיף אותו לכאן."},E={clearReset:"אפס את הקנבאס",exportJSON:"ייצא לקובץ",exportImage:"ייצוא התמונה...",export:"שמור ל...",copyToClipboard:"העתק ללוח",save:"שמור לקובץ נוכחי",saveAs:"שמירה בשם",load:"פתח",getShareableLink:"קבל קישור לשיתוף",close:"סגור",selectLanguage:"בחר שפה",scrollBackToContent:"גלול בחזרה לתוכן",zoomIn:"הגדל",zoomOut:"הקטן",resetZoom:"איפוס זום",menu:"תפריט",done:"בוצע",edit:"ערוך",undo:"בטל",redo:"בצע מחדש",resetLibrary:"איפוס ספריה",createNewRoom:"צור חדר חדש",fullScreen:"מסך מלא",darkMode:"מצב כהה",lightMode:"מצב בהיר",zenMode:"מצב זן",objectsSnapMode:"",exitZenMode:"צא ממצב זן",cancel:"ביטול",clear:"ניקוי",remove:"הסר",embed:"",publishLibrary:"פרסום",submit:"שליחה",confirm:"אשר",embeddableInteractionButton:""},e={clearReset:"פעולה זו תנקה את כל הקנבס. אתה בטוח?",couldNotCreateShareableLink:"יצירת קישור לשיתוף נכשל.",couldNotCreateShareableLinkTooBig:"יצירת קישור לשיתוף נכשל: התצוגה גדולה מדי",couldNotLoadInvalidFile:"טעינת קובץ לא תקין נכשלה",importBackendFailed:"ייבוא מהשרת נכשל.",cannotExportEmptyCanvas:"לא ניתן לייצא קנבאס ריק.",couldNotCopyToClipboard:"לא ניתן היה להעתיק ללוח.",decryptFailed:"פיענוח ההצפנה של המידע נכשל.",uploadedSecurly:"ההעלאה אובטחה באמצעות הצפנה מקצה לקצה, פירוש הדבר שהשרת של Excalidraw וגורמי צד ג׳ לא יכולים לקרוא את התוכן.",loadSceneOverridePrompt:"טעינה של ציור חיצוני תחליף את התוכן הקיים שלך. האם תרצה להמשיך?",collabStopOverridePrompt:`עצירת השיתוף תוביל למחיקת הציור הקודם ששמור מקומית בדפדפן. האם אתה בטוח?
|
|
2
|
+
|
|
3
|
+
(אם תרצה לשמור את הציור המקומי, סגור את הטאב של הדפדפן במקום.)`,errorAddingToLibrary:"לא ניתן להוסיף פריט לספרייה",errorRemovingFromLibrary:"לא ניתן להסיר פריט מהספריה",confirmAddLibrary:"זה יוסיף {{numShapes}} צורה(ות) לספריה שלך. האם אתה בטוח?",imageDoesNotContainScene:"נראה שהתמונה לא מכילה מידע על הסצינה. האם אפשרת הטמעת מידע הסצינה בעת השמירה?",cannotRestoreFromImage:"לא הצלחנו לשחזר את הסצנה מקובץ התמונה",invalidSceneUrl:"ייבוא מידע סצנה מהקישור שסופק כשל. או שהוא משובש, או שאינו מכיל מידע של Excalidraw בפורמט JSON.",resetLibrary:"פעולה זו תנקה את כל הספריה שלך. אתה בטוח?",removeItemsFromsLibrary:"מחק {{count}} פריט(ים) מהספריה?",invalidEncryptionKey:"מפתח ההצפנה חייב להיות בן 22 תוים. השיתוף החי מנוטרל.",collabOfflineWarning:`אין חיבור זמין לאינטרנט.
|
|
4
|
+
השינויים שלך לא ישמרו!`},C={unsupportedFileType:"סוג הקובץ אינו נתמך.",imageInsertError:"לא ניתן היה להוסיף את התמונה. אנא נסה שוב מאוחר יותר...",fileTooBig:"הקובץ גדול מדי. הגודל המירבי המותר הינו {{maxSize}}.",svgImageInsertError:"לא ניתן היה להוסיף את תמונת ה-SVG. הסימונים בתוך קובץ ה-SVG עשויים להיות שגויים.",failedToFetchImage:"",invalidSVGString:"SVG שגוי.",cannotResolveCollabServer:"לא הצלחתי להתחבר לשרת השיתוף. אנא רענן את הדף ונסה שוב.",importLibraryError:"לא ניתן היה לטעון את הספריה",collabSaveFailed:"לא הצלחתי להתחבר למסד הנתונים האחורי. אם הבעיה ממשיכה, כדאי שתשמור את הקובץ מקומית כדי לוודא שלא תאבד את העבודה שלך.",collabSaveFailed_sizeExceeded:"לא הצלחתי לשמור למסד הנתונים האחורי, נראה שהקנבס שלך גדול מדי. כדאי שתשמור את הקובץ מקומית כדי לוודא שלא תאבד את העבודה שלך.",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},r={selection:"בחירה",image:"הוספת תמונה",rectangle:"מלבן",diamond:"יהלום",ellipse:"אליפסה",arrow:"חץ",line:"קו",freedraw:"צייר",text:"טקסט",library:"ספריה",lock:"השאר את הכלי הנבחר פעיל גם לאחר סיום הציור",penMode:"מצב עט - מנע נגיעה",link:"הוספה/עדכון קישור של הצורה שנבחרה",eraser:"מחק",frame:"",magicframe:"",embeddable:"",laser:"",hand:"יד (כלי הזזה)",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},o={canvasActions:"פעולות קנבאס",selectedShapeActions:"פעולות על הצורות שנבחרו",shapes:"צורות"},t={canvasPanning:"כדי להזיז את הקנבס, החזק את גלגל העכבר לחוץ או את מקש הרווח לחוץ תוך כדי גרירה, או השתמש בכלי היד",linearElement:"לחץ להתחלת מספר נקודות, גרור לקו יחיד",freeDraw:"לחץ וגרור, שחרר כשסיימת",text:"טיפ: אפשר להוסיף טקסט על ידי לחיצה כפולה בכל מקום עם כלי הבחירה",embeddable:"",text_selected:"לחץ לחיצה כפולה או הקש על אנטר לעריכת הטקסט",text_editing:"כדי לסיים את העריכה לחץ על מקש Escape או על Ctrl (Cmd במחשבי אפל) ומקש Enter",linearElementMulti:"הקלק על הנקודה האחרונה או הקש Escape או Enter לסיום",lockAngle:"ניתן להגביל את הזוויות על ידי החזקה של מקש ה- SHIFT",resize:`ניתן להגביל פרופורציות על ידי לחיצה על SHIFT תוך כדי שינוי גודל,
|
|
5
|
+
החזק ALT בשביל לשנות גודל ביחס למרכז`,resizeImage:`אתה יכול לשנות את הגודל בחופשיות על ידי החזקת מקש SHIFT,
|
|
6
|
+
החזק את מקש ALT כדי לבצע שינוי גודל מהמרכז`,rotate:"ניתן להגביל זוויות על ידי לחיצה על SHIFT תוך כדי סיבוב",lineEditor_info:"החזק Ctrl / Cmd ובצע לחיצה כפולה או לחץ Ctrl / Cmd + Enter לעריכת נקודות",lineEditor_pointSelected:`לחץ Delete למחיקת נקודה/ות,
|
|
7
|
+
Ctrl / Cmd + D לשכפול, או גרור להזזה`,lineEditor_nothingSelected:`בחר נקודה כדי לערוך (החזק SHIFT לבחירת כמה),
|
|
8
|
+
או החזק Alt והקלק להוספת נקודות חדשות`,placeImage:"הקלק להנחת התמונה, או הקלק וגרור להגדרת הגודל שלו ידנית",publishLibrary:"פרסם ספריה משלך",bindTextToElement:"הקש Enter כדי להוספת טקסט",deepBoxSelect:"החזק Ctrl / Cmd לבחירה עמוקה ולמניעת גרירה",eraserRevert:"החזק Alt להחזרת רכיבים מסומנים למחיקה",firefox_clipboard_write:'יכולות זה ניתנת להפעלה על ידי שינוי הדגל של "dom.events.asyncClipboard.clipboardItem" למצב "true". כדי לשנות את הדגל בדפדפן Firefox, בקר בעמוד ״about:config״.',disableSnapping:""},a={cannotShowPreview:"לא ניתן להראות תצוגה מקדימה",canvasTooBig:"הקנבס עלול להיות גדול מדי.",canvasTooBigTip:"טיפ: נסה להזיז את הרכיבים הרחוקים ביותר מעט קרוב יותר האחד לשני."},i={headingMain:"",clearCanvasMessage:"אם טעינה מחדש לא עובדת, נסה ",clearCanvasCaveat:" זה יגרום לאובדן העבודה ",trackedToSentry:"",openIssueMessage:"",sceneContent:"תוכן הקנבאס:"},A={desc_intro:"אתה יכול להזמין אנשים לקנבאס הנוכחי שלך לעבודה משותפת.",desc_privacy:"אל דאגה, השיתוף מוצפן מקצה לקצה, כך שכל מה שתצייר ישאר פרטי. אפילו השרתים שלנו לא יוכלו לראות את מה שאתה ממציא.",button_startSession:"התחל שיתוף",button_stopSession:"הפסק שיתוף",desc_inProgressIntro:"שיתוף חי פעיל כרגע.",desc_shareLink:"שתף את הקישור עם כל מי שאתה מעוניין לעבוד אתו:",desc_exitSession:"עצירת השיתוף תנתק אותך מהחדר, אבל עדיין תוכל להמשיך לעבוד על הקנבאס, מקומית. שים לב שזה לא ישפיע על אנשים אחרים, והם עדיין יוכלו לבצע שיתוף עם הגרסה שלהם.",shareTitle:"הצטרף לשיתוף לעבודה משותפת חיה, בזמן אמת, על גבי Excalidraw"},l={title:"שגיאה"},n={disk_title:"שמור לכונן",disk_details:"ייצא מידע של הקנבאס לקובץ שתוכל לייבא אחר כך.",disk_button:"שמירה לקובץ",link_title:"קבל קישור לשיתוף",link_details:"ייצוא כקישור לקריאה בלבד.",link_button:"ייצוא לקישור",excalidrawplus_description:"שמור את הקנבאס לסביבת העבודה שלך ב- +Excalidraw.",excalidrawplus_button:"ייצוא",excalidrawplus_exportError:"לא הצלחתי לייצא ל- +Excalidraw כרגע..."},s={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:"זוז עמוד שמאלה/ימינה"},d={title:"ניקוי הקנבס"},c={title:"פרסם ספריה",itemName:"שם הפריט",authorName:"שם היוצר",githubUsername:"שם המשתמש שלך ב-GitHub",twitterUsername:"שם המשתמש שלך ב-Twitter",libraryName:"שם הספריה",libraryDesc:"תיאור הספריה",website:"אתר",placeholder:{authorName:"שמך או שם המשתמש שלך",libraryName:"תנו שם לספריה",libraryDesc:"תיאור של הספריה שלך כדי לסייע למשתמשים להבין את השימוש בה",githubHandle:"כינוי GitHub (לא חובה), כדי שתוכל לערוך את הספרית לאחר שנשלחה לבדיקה",twitterHandle:"שם משתמש טוויטר (לא חובה), כדי שנדע למי לתת קרדיט כשאנחנו מפרסמים בטוויטר",website:"קישור לאתר הפרטי שלך או לכל מקום אחר (אופציונאלי)"},errors:{required:"נדרש",website:"הזינו כתובת URL תקינה"},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"לכל פריט בסיפריה חייב להיות שם כדי שאפשר יהיה לסנן. הפריטי סיפריה הבאים יהיו כלולים:",atleastOneLibItem:"אנא בחר לפחות פריט אחד מספריה כדי להתחיל",republishWarning:"הערה: חלק מהפריטים שבחרת מסומנים ככאלו שכבר פורסמו/נשלחו. אתה צריך לשלוח פריטים מחדש כאשר אתה מעדכן ספריה או הגשה קיימים."},B={title:"הספריה הוגשה",content:"תודה {{authorName}}. הספריה שלך נשלחה לבחינה. תוכל לעקוב אחרי סטטוס הפרסום"},m={resetLibrary:"איפוס ספריה",removeItemsFromLib:"הסר את הפריטים הנבחרים מהספריה"},p={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},g={tooltip:"הציורים שלך מוצפנים מקצה לקצה כך שהשרתים של Excalidraw לא יראו אותם לעולם.",link:"פוסט בבלוג על הצפנה מקצה לקצב ב-Excalidraw"},b={angle:"זווית",element:"רכיב",elements:"רכיבים",height:"גובה",scene:"תצוגה",selected:"נבחר",storage:"אחסון",title:"סטטיסטיקות לחנונים",total:"סה״כ",version:"גרסה",versionCopy:"לחץ להעתקה",versionNotAvailable:"הגרסה אינה זמינה",width:"רוחב"},F={addedToLibrary:"נוסף לספריה",copyStyles:"סגנונות הועתקו.",copyToClipboard:"הועתק ללוח.",copyToClipboardAsPng:`{{exportSelection}} הועתקה ללוח כ-PNG
|
|
9
|
+
({{exportColorScheme}})`,fileSaved:"קובץ נשמר.",fileSavedToFilename:"נשמר לקובץ {filename}",canvas:"קנבאס",selection:"בחירה",pasteAsSingleElement:`השתמש ב- {{shortcut}} כדי להדביק כפריט יחיד,
|
|
10
|
+
או הדבק לתוך עורך טקסט קיים`,unableToEmbed:"",unrecognizedLinkFormat:""},h={transparent:"שקוף",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},y={app:{center_heading:"כל המידע שלח נשמר מקומית בדפדפן.",center_heading_plus:"אתה רוצה ללכת אל Excalidraw+ במקום?",menuHint:"ייצוא, העדפות, שפות, ..."},defaults:{menuHint:"ייצוא, העדפות, ועוד...",center_heading:"איורים. נעשים. פשוטים.",toolbarHint:"בחר כלי & והתחל לצייר!",helpHint:"קיצורים & עזרה"}},S={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},v={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},w={title:"",button:"",description:"",syntax:"",preview:""},x={labels:u,library:D,buttons:E,alerts:e,errors:C,toolBar:r,headings:o,hints:t,canvasError:a,errorSplash:i,roomDialog:A,errorDialog:l,exportDialog:n,helpDialog:s,clearCanvasDialog:d,publishDialog:c,publishSuccessDialog:B,confirmDialog:m,imageExportDialog:p,encrypted:g,stats:b,toast:F,colors:h,welcomeScreen:y,colorPicker:S,overwriteConfirm:v,mermaid:w};exports.alerts=e;exports.buttons=E;exports.canvasError=a;exports.clearCanvasDialog=d;exports.colorPicker=S;exports.colors=h;exports.confirmDialog=m;exports.default=x;exports.encrypted=g;exports.errorDialog=l;exports.errorSplash=i;exports.errors=C;exports.exportDialog=n;exports.headings=o;exports.helpDialog=s;exports.hints=t;exports.imageExportDialog=p;exports.labels=u;exports.library=D;exports.mermaid=w;exports.overwriteConfirm=v;exports.publishDialog=c;exports.publishSuccessDialog=B;exports.roomDialog=A;exports.stats=b;exports.toast=F;exports.toolBar=r;exports.welcomeScreen=y;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";function r(o){throw new Error('Could not dynamically require "'+o+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}exports.commonjsRequire=r;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
const l = async (e) => {
|
|
2
|
+
const a = await e.getFile();
|
|
3
|
+
return a.handle = e, a;
|
|
4
|
+
};
|
|
5
|
+
var p = async (e = [{}]) => {
|
|
6
|
+
Array.isArray(e) || (e = [e]);
|
|
7
|
+
const a = [];
|
|
8
|
+
e.forEach((i, c) => {
|
|
9
|
+
a[c] = { description: i.description || "", accept: {} }, i.mimeTypes ? i.mimeTypes.map((n) => {
|
|
10
|
+
a[c].accept[n] = i.extensions || [];
|
|
11
|
+
}) : a[c].accept["*/*"] = i.extensions || [];
|
|
12
|
+
});
|
|
13
|
+
const t = await window.showOpenFilePicker({ id: e[0].id, startIn: e[0].startIn, types: a, multiple: e[0].multiple || !1, excludeAcceptAllOption: e[0].excludeAcceptAllOption || !1 }), s = await Promise.all(t.map(l));
|
|
14
|
+
return e[0].multiple ? s : s[0];
|
|
15
|
+
};
|
|
16
|
+
export {
|
|
17
|
+
p as default
|
|
18
|
+
};
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const E=require("./layers.DxzveV49.js"),pt=require("./layers.BLd2spTm.js");require("lodash-es");const _t=require("./layers.Cyzu9PKQ.js");require("./layers.hYSHj9J1.js");const gt=require("./layers.DWynlv5x.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;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
"use strict";const h=require("./layers.DxzveV49.js"),K=require("./layers.D4ydcUW5.js"),it=require("./layers.DWynlv5x.js"),nt=(a,t,e,i)=>{t.forEach(l=>{dt[l](a,e,i)})},lt=(a,t,e)=>{h.log$1.trace("Making markers for ",e),a.append("defs").append("marker").attr("id",e+"_"+t+"-extensionStart").attr("class","marker extension "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),a.append("defs").append("marker").attr("id",e+"_"+t+"-extensionEnd").attr("class","marker extension "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")},ct=(a,t,e)=>{a.append("defs").append("marker").attr("id",e+"_"+t+"-compositionStart").attr("class","marker composition "+t).attr("refX",18).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"),a.append("defs").append("marker").attr("id",e+"_"+t+"-compositionEnd").attr("class","marker composition "+t).attr("refX",1).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")},ot=(a,t,e)=>{a.append("defs").append("marker").attr("id",e+"_"+t+"-aggregationStart").attr("class","marker aggregation "+t).attr("refX",18).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"),a.append("defs").append("marker").attr("id",e+"_"+t+"-aggregationEnd").attr("class","marker aggregation "+t).attr("refX",1).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")},ht=(a,t,e)=>{a.append("defs").append("marker").attr("id",e+"_"+t+"-dependencyStart").attr("class","marker dependency "+t).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),a.append("defs").append("marker").attr("id",e+"_"+t+"-dependencyEnd").attr("class","marker dependency "+t).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},ft=(a,t,e)=>{a.append("defs").append("marker").attr("id",e+"_"+t+"-lollipopStart").attr("class","marker lollipop "+t).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),a.append("defs").append("marker").attr("id",e+"_"+t+"-lollipopEnd").attr("class","marker lollipop "+t).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6)},yt=(a,t,e)=>{a.append("marker").attr("id",e+"_"+t+"-pointEnd").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",6).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),a.append("marker").attr("id",e+"_"+t+"-pointStart").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},gt=(a,t,e)=>{a.append("marker").attr("id",e+"_"+t+"-circleEnd").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),a.append("marker").attr("id",e+"_"+t+"-circleStart").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},pt=(a,t,e)=>{a.append("marker").attr("id",e+"_"+t+"-crossEnd").attr("class","marker cross "+t).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),a.append("marker").attr("id",e+"_"+t+"-crossStart").attr("class","marker cross "+t).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")},xt=(a,t,e)=>{a.append("defs").append("marker").attr("id",e+"_"+t+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","strokeWidth").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},dt={extension:lt,composition:ct,aggregation:ot,dependency:ht,lollipop:ft,point:yt,circle:gt,cross:pt,barb:xt},ut=nt;function bt(a,t){t&&a.attr("style",t)}function wt(a,t){const e=h.select(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),i=e.append("xhtml:div"),l=a.label,r=a.isNode?"nodeLabel":"edgeLabel";return i.html(h.sanitizeText$2('<span class="'+r+'" '+(a.labelStyle?'style="'+a.labelStyle+'"':"")+">"+l+"</span>",t)),bt(i,a.labelStyle),i.style("display","inline-block"),i.style("white-space","nowrap"),i.attr("xmlns","http://www.w3.org/1999/xhtml"),e.node()}const mt=(a,t,e,i)=>{let l=a||"";typeof l=="object"&&(l=l[0]);const r=h.getConfig();if(h.evaluate(r.flowchart.htmlLabels)){l=l.replace(/\\n|\n/g,"<br />"),h.log$1.debug("vertexText"+l);const s={isNode:i,label:h.decodeEntities(l).replace(/fa[blrs]?:fa-[\w-]+/g,c=>`<i class='${c.replace(":"," ")}'></i>`),labelStyle:t.replace("fill:","color:")};return wt(s,r)}else{const s=document.createElementNS("http://www.w3.org/2000/svg","text");s.setAttribute("style",t.replace("color:","fill:"));let n=[];typeof l=="string"?n=l.split(/\\n|\n|<br\s*\/?>/gi):Array.isArray(l)?n=l:n=[];for(const c of n){const f=document.createElementNS("http://www.w3.org/2000/svg","tspan");f.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),f.setAttribute("dy","1em"),f.setAttribute("x","0"),e?f.setAttribute("class","title-row"):f.setAttribute("class","row"),f.textContent=c.trim(),s.appendChild(f)}return s}},B=mt,L=async(a,t,e,i)=>{let l;const r=t.useHtmlLabels||h.evaluate(h.getConfig().flowchart.htmlLabels);e?l=e:l="node default";const s=a.insert("g").attr("class",l).attr("id",t.domId||t.id),n=s.insert("g").attr("class","label").attr("style",t.labelStyle);let c;t.labelText===void 0?c="":c=typeof t.labelText=="string"?t.labelText:t.labelText[0];const f=n.node();let o;t.labelType==="markdown"?o=K.createText(n,h.sanitizeText$2(h.decodeEntities(c),h.getConfig()),{useHtmlLabels:r,width:t.width||h.getConfig().flowchart.wrappingWidth,classes:"markdown-node-label"}):o=f.appendChild(B(h.sanitizeText$2(h.decodeEntities(c),h.getConfig()),t.labelStyle,!1,i));let y=o.getBBox();const p=t.padding/2;if(h.evaluate(h.getConfig().flowchart.htmlLabels)){const g=o.children[0],d=h.select(o),m=g.getElementsByTagName("img");if(m){const x=c.replace(/<img[^>]*>/g,"").trim()==="";await Promise.all([...m].map(u=>new Promise(S=>{function C(){if(u.style.display="flex",u.style.flexDirection="column",x){const M=h.getConfig().fontSize?h.getConfig().fontSize:window.getComputedStyle(document.body).fontSize,W=parseInt(M,10)*5+"px";u.style.minWidth=W,u.style.maxWidth=W}else u.style.width="100%";S(u)}setTimeout(()=>{u.complete&&C()}),u.addEventListener("error",C),u.addEventListener("load",C)})))}y=g.getBoundingClientRect(),d.attr("width",y.width),d.attr("height",y.height)}return r?n.attr("transform","translate("+-y.width/2+", "+-y.height/2+")"):n.attr("transform","translate(0, "+-y.height/2+")"),t.centerLabel&&n.attr("transform","translate("+-y.width/2+", "+-y.height/2+")"),n.insert("rect",":first-child"),{shapeSvg:s,bbox:y,halfPadding:p,label:n}},w=(a,t)=>{const e=t.node().getBBox();a.width=e.width,a.height=e.height};function _(a,t,e,i){return a.insert("polygon",":first-child").attr("points",i.map(function(l){return l.x+","+l.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-t/2+","+e/2+")")}function kt(a,t){return a.intersect(t)}function P(a,t,e,i){var l=a.x,r=a.y,s=l-i.x,n=r-i.y,c=Math.sqrt(t*t*n*n+e*e*s*s),f=Math.abs(t*e*s/c);i.x<l&&(f=-f);var o=Math.abs(t*e*n/c);return i.y<r&&(o=-o),{x:l+f,y:r+o}}function vt(a,t,e){return P(a,t,t,e)}function Lt(a,t,e,i){var l,r,s,n,c,f,o,y,p,g,d,m,x,u,S;if(l=t.y-a.y,s=a.x-t.x,c=t.x*a.y-a.x*t.y,p=l*e.x+s*e.y+c,g=l*i.x+s*i.y+c,!(p!==0&&g!==0&&G(p,g))&&(r=i.y-e.y,n=e.x-i.x,f=i.x*e.y-e.x*i.y,o=r*a.x+n*a.y+f,y=r*t.x+n*t.y+f,!(o!==0&&y!==0&&G(o,y))&&(d=l*n-r*s,d!==0)))return m=Math.abs(d/2),x=s*f-n*c,u=x<0?(x-m)/d:(x+m)/d,x=r*c-l*f,S=x<0?(x-m)/d:(x+m)/d,{x:u,y:S}}function G(a,t){return a*t>0}function St(a,t,e){var i=a.x,l=a.y,r=[],s=Number.POSITIVE_INFINITY,n=Number.POSITIVE_INFINITY;typeof t.forEach=="function"?t.forEach(function(d){s=Math.min(s,d.x),n=Math.min(n,d.y)}):(s=Math.min(s,t.x),n=Math.min(n,t.y));for(var c=i-a.width/2-s,f=l-a.height/2-n,o=0;o<t.length;o++){var y=t[o],p=t[o<t.length-1?o+1:0],g=Lt(a,e,{x:c+y.x,y:f+y.y},{x:c+p.x,y:f+p.y});g&&r.push(g)}return r.length?(r.length>1&&r.sort(function(d,m){var x=d.x-e.x,u=d.y-e.y,S=Math.sqrt(x*x+u*u),C=m.x-e.x,M=m.y-e.y,I=Math.sqrt(C*C+M*M);return S<I?-1:S===I?0:1}),r[0]):a}const $t=(a,t)=>{var e=a.x,i=a.y,l=t.x-e,r=t.y-i,s=a.width/2,n=a.height/2,c,f;return Math.abs(r)*s>Math.abs(l)*n?(r<0&&(n=-n),c=r===0?0:n*l/r,f=n):(l<0&&(s=-s),c=s,f=l===0?0:s*r/l),{x:e+c,y:i+f}},tt=$t,b={node:kt,circle:vt,ellipse:P,polygon:St,rect:tt},Ct=async(a,t)=>{t.useHtmlLabels||h.getConfig().flowchart.htmlLabels||(t.centerLabel=!0);const{shapeSvg:i,bbox:l,halfPadding:r}=await L(a,t,"node "+t.classes,!0);h.log$1.info("Classes = ",t.classes);const s=i.insert("rect",":first-child");return s.attr("rx",t.rx).attr("ry",t.ry).attr("x",-l.width/2-r).attr("y",-l.height/2-r).attr("width",l.width+t.padding).attr("height",l.height+t.padding),w(t,s),t.intersect=function(n){return b.rect(t,n)},i},Mt=Ct,Tt=a=>{const t=new Set;for(const e of a)switch(e){case"x":t.add("right"),t.add("left");break;case"y":t.add("up"),t.add("down");break;default:t.add(e);break}return t},Bt=(a,t,e)=>{const i=Tt(a),l=2,r=t.height+2*e.padding,s=r/l,n=t.width+2*s+e.padding,c=e.padding/2;return i.has("right")&&i.has("left")&&i.has("up")&&i.has("down")?[{x:0,y:0},{x:s,y:0},{x:n/2,y:2*c},{x:n-s,y:0},{x:n,y:0},{x:n,y:-r/3},{x:n+2*c,y:-r/2},{x:n,y:-2*r/3},{x:n,y:-r},{x:n-s,y:-r},{x:n/2,y:-r-2*c},{x:s,y:-r},{x:0,y:-r},{x:0,y:-2*r/3},{x:-2*c,y:-r/2},{x:0,y:-r/3}]:i.has("right")&&i.has("left")&&i.has("up")?[{x:s,y:0},{x:n-s,y:0},{x:n,y:-r/2},{x:n-s,y:-r},{x:s,y:-r},{x:0,y:-r/2}]:i.has("right")&&i.has("left")&&i.has("down")?[{x:0,y:0},{x:s,y:-r},{x:n-s,y:-r},{x:n,y:0}]:i.has("right")&&i.has("up")&&i.has("down")?[{x:0,y:0},{x:n,y:-s},{x:n,y:-r+s},{x:0,y:-r}]:i.has("left")&&i.has("up")&&i.has("down")?[{x:n,y:0},{x:0,y:-s},{x:0,y:-r+s},{x:n,y:-r}]:i.has("right")&&i.has("left")?[{x:s,y:0},{x:s,y:-c},{x:n-s,y:-c},{x:n-s,y:0},{x:n,y:-r/2},{x:n-s,y:-r},{x:n-s,y:-r+c},{x:s,y:-r+c},{x:s,y:-r},{x:0,y:-r/2}]:i.has("up")&&i.has("down")?[{x:n/2,y:0},{x:0,y:-c},{x:s,y:-c},{x:s,y:-r+c},{x:0,y:-r+c},{x:n/2,y:-r},{x:n,y:-r+c},{x:n-s,y:-r+c},{x:n-s,y:-c},{x:n,y:-c}]:i.has("right")&&i.has("up")?[{x:0,y:0},{x:n,y:-s},{x:0,y:-r}]:i.has("right")&&i.has("down")?[{x:0,y:0},{x:n,y:0},{x:0,y:-r}]:i.has("left")&&i.has("up")?[{x:n,y:0},{x:0,y:-s},{x:n,y:-r}]:i.has("left")&&i.has("down")?[{x:n,y:0},{x:0,y:0},{x:n,y:-r}]:i.has("right")?[{x:s,y:-c},{x:s,y:-c},{x:n-s,y:-c},{x:n-s,y:0},{x:n,y:-r/2},{x:n-s,y:-r},{x:n-s,y:-r+c},{x:s,y:-r+c},{x:s,y:-r+c}]:i.has("left")?[{x:s,y:0},{x:s,y:-c},{x:n-s,y:-c},{x:n-s,y:-r+c},{x:s,y:-r+c},{x:s,y:-r},{x:0,y:-r/2}]:i.has("up")?[{x:s,y:-c},{x:s,y:-r+c},{x:0,y:-r+c},{x:n/2,y:-r},{x:n,y:-r+c},{x:n-s,y:-r+c},{x:n-s,y:-c}]:i.has("down")?[{x:n/2,y:0},{x:0,y:-c},{x:s,y:-c},{x:s,y:-r+c},{x:n-s,y:-r+c},{x:n-s,y:-c},{x:n,y:-c}]:[{x:0,y:0}]},Z=a=>a?" "+a:"",E=(a,t)=>`node default${Z(a.classes)} ${Z(a.class)}`,F=async(a,t)=>{const{shapeSvg:e,bbox:i}=await L(a,t,E(t),!0),l=i.width+t.padding,r=i.height+t.padding,s=l+r,n=[{x:s/2,y:0},{x:s,y:-s/2},{x:s/2,y:-s},{x:0,y:-s/2}];h.log$1.info("Question main (Circle)");const c=_(e,s,s,n);return c.attr("style",t.style),w(t,c),t.intersect=function(f){return h.log$1.warn("Intersect called"),b.polygon(t,n,f)},e},Et=(a,t)=>{const e=a.insert("g").attr("class","node default").attr("id",t.domId||t.id),i=28,l=[{x:0,y:i/2},{x:i/2,y:0},{x:0,y:-i/2},{x:-i/2,y:0}];return e.insert("polygon",":first-child").attr("points",l.map(function(s){return s.x+","+s.y}).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),t.width=28,t.height=28,t.intersect=function(s){return b.circle(t,14,s)},e},_t=async(a,t)=>{const{shapeSvg:e,bbox:i}=await L(a,t,E(t),!0),l=4,r=i.height+t.padding,s=r/l,n=i.width+2*s+t.padding,c=[{x:s,y:0},{x:n-s,y:0},{x:n,y:-r/2},{x:n-s,y:-r},{x:s,y:-r},{x:0,y:-r/2}],f=_(e,n,r,c);return f.attr("style",t.style),w(t,f),t.intersect=function(o){return b.polygon(t,c,o)},e},Nt=async(a,t)=>{const{shapeSvg:e,bbox:i}=await L(a,t,void 0,!0),l=2,r=i.height+2*t.padding,s=r/l,n=i.width+2*s+t.padding,c=Bt(t.directions,i,t),f=_(e,n,r,c);return f.attr("style",t.style),w(t,f),t.intersect=function(o){return b.polygon(t,c,o)},e},Rt=async(a,t)=>{const{shapeSvg:e,bbox:i}=await L(a,t,E(t),!0),l=i.width+t.padding,r=i.height+t.padding,s=[{x:-r/2,y:0},{x:l,y:0},{x:l,y:-r},{x:-r/2,y:-r},{x:0,y:-r/2}];return _(e,l,r,s).attr("style",t.style),t.width=l+r,t.height=r,t.intersect=function(c){return b.polygon(t,s,c)},e},Ht=async(a,t)=>{const{shapeSvg:e,bbox:i}=await L(a,t,E(t),!0),l=i.width+t.padding,r=i.height+t.padding,s=[{x:-2*r/6,y:0},{x:l-r/6,y:0},{x:l+2*r/6,y:-r},{x:r/6,y:-r}],n=_(e,l,r,s);return n.attr("style",t.style),w(t,n),t.intersect=function(c){return b.polygon(t,s,c)},e},It=async(a,t)=>{const{shapeSvg:e,bbox:i}=await L(a,t,E(t),!0),l=i.width+t.padding,r=i.height+t.padding,s=[{x:2*r/6,y:0},{x:l+r/6,y:0},{x:l-2*r/6,y:-r},{x:-r/6,y:-r}],n=_(e,l,r,s);return n.attr("style",t.style),w(t,n),t.intersect=function(c){return b.polygon(t,s,c)},e},Ot=async(a,t)=>{const{shapeSvg:e,bbox:i}=await L(a,t,E(t),!0),l=i.width+t.padding,r=i.height+t.padding,s=[{x:-2*r/6,y:0},{x:l+2*r/6,y:0},{x:l-r/6,y:-r},{x:r/6,y:-r}],n=_(e,l,r,s);return n.attr("style",t.style),w(t,n),t.intersect=function(c){return b.polygon(t,s,c)},e},Wt=async(a,t)=>{const{shapeSvg:e,bbox:i}=await L(a,t,E(t),!0),l=i.width+t.padding,r=i.height+t.padding,s=[{x:r/6,y:0},{x:l-r/6,y:0},{x:l+2*r/6,y:-r},{x:-2*r/6,y:-r}],n=_(e,l,r,s);return n.attr("style",t.style),w(t,n),t.intersect=function(c){return b.polygon(t,s,c)},e},Xt=async(a,t)=>{const{shapeSvg:e,bbox:i}=await L(a,t,E(t),!0),l=i.width+t.padding,r=i.height+t.padding,s=[{x:0,y:0},{x:l+r/2,y:0},{x:l,y:-r/2},{x:l+r/2,y:-r},{x:0,y:-r}],n=_(e,l,r,s);return n.attr("style",t.style),w(t,n),t.intersect=function(c){return b.polygon(t,s,c)},e},Yt=async(a,t)=>{const{shapeSvg:e,bbox:i}=await L(a,t,E(t),!0),l=i.width+t.padding,r=l/2,s=r/(2.5+l/50),n=i.height+s+t.padding,c="M 0,"+s+" a "+r+","+s+" 0,0,0 "+l+" 0 a "+r+","+s+" 0,0,0 "+-l+" 0 l 0,"+n+" a "+r+","+s+" 0,0,0 "+l+" 0 l 0,"+-n,f=e.attr("label-offset-y",s).insert("path",":first-child").attr("style",t.style).attr("d",c).attr("transform","translate("+-l/2+","+-(n/2+s)+")");return w(t,f),t.intersect=function(o){const y=b.rect(t,o),p=y.x-t.x;if(r!=0&&(Math.abs(p)<t.width/2||Math.abs(p)==t.width/2&&Math.abs(y.y-t.y)>t.height/2-s)){let g=s*s*(1-p*p/(r*r));g!=0&&(g=Math.sqrt(g)),g=s-g,o.y-t.y>0&&(g=-g),y.y+=g}return y},e},Dt=async(a,t)=>{const{shapeSvg:e,bbox:i,halfPadding:l}=await L(a,t,"node "+t.classes+" "+t.class,!0),r=e.insert("rect",":first-child"),s=t.positioned?t.width:i.width+t.padding,n=t.positioned?t.height:i.height+t.padding,c=t.positioned?-s/2:-i.width/2-l,f=t.positioned?-n/2:-i.height/2-l;if(r.attr("class","basic label-container").attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",c).attr("y",f).attr("width",s).attr("height",n),t.props){const o=new Set(Object.keys(t.props));t.props.borders&&(z(r,t.props.borders,s,n),o.delete("borders")),o.forEach(y=>{h.log$1.warn(`Unknown node property ${y}`)})}return w(t,r),t.intersect=function(o){return b.rect(t,o)},e},At=async(a,t)=>{const{shapeSvg:e,bbox:i,halfPadding:l}=await L(a,t,"node "+t.classes,!0),r=e.insert("rect",":first-child"),s=t.positioned?t.width:i.width+t.padding,n=t.positioned?t.height:i.height+t.padding,c=t.positioned?-s/2:-i.width/2-l,f=t.positioned?-n/2:-i.height/2-l;if(r.attr("class","basic cluster composite label-container").attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",c).attr("y",f).attr("width",s).attr("height",n),t.props){const o=new Set(Object.keys(t.props));t.props.borders&&(z(r,t.props.borders,s,n),o.delete("borders")),o.forEach(y=>{h.log$1.warn(`Unknown node property ${y}`)})}return w(t,r),t.intersect=function(o){return b.rect(t,o)},e},jt=async(a,t)=>{const{shapeSvg:e}=await L(a,t,"label",!0);h.log$1.trace("Classes = ",t.class);const i=e.insert("rect",":first-child"),l=0,r=0;if(i.attr("width",l).attr("height",r),e.attr("class","label edgeLabel"),t.props){const s=new Set(Object.keys(t.props));t.props.borders&&(z(i,t.props.borders,l,r),s.delete("borders")),s.forEach(n=>{h.log$1.warn(`Unknown node property ${n}`)})}return w(t,i),t.intersect=function(s){return b.rect(t,s)},e};function z(a,t,e,i){const l=[],r=n=>{l.push(n,0)},s=n=>{l.push(0,n)};t.includes("t")?(h.log$1.debug("add top border"),r(e)):s(e),t.includes("r")?(h.log$1.debug("add right border"),r(i)):s(i),t.includes("b")?(h.log$1.debug("add bottom border"),r(e)):s(e),t.includes("l")?(h.log$1.debug("add left border"),r(i)):s(i),a.attr("stroke-dasharray",l.join(" "))}const Ut=(a,t)=>{let e;t.classes?e="node "+t.classes:e="node default";const i=a.insert("g").attr("class",e).attr("id",t.domId||t.id),l=i.insert("rect",":first-child"),r=i.insert("line"),s=i.insert("g").attr("class","label"),n=t.labelText.flat?t.labelText.flat():t.labelText;let c="";typeof n=="object"?c=n[0]:c=n,h.log$1.info("Label text abc79",c,n,typeof n=="object");const f=s.node().appendChild(B(c,t.labelStyle,!0,!0));let o={width:0,height:0};if(h.evaluate(h.getConfig().flowchart.htmlLabels)){const m=f.children[0],x=h.select(f);o=m.getBoundingClientRect(),x.attr("width",o.width),x.attr("height",o.height)}h.log$1.info("Text 2",n);const y=n.slice(1,n.length);let p=f.getBBox();const g=s.node().appendChild(B(y.join?y.join("<br/>"):y,t.labelStyle,!0,!0));if(h.evaluate(h.getConfig().flowchart.htmlLabels)){const m=g.children[0],x=h.select(g);o=m.getBoundingClientRect(),x.attr("width",o.width),x.attr("height",o.height)}const d=t.padding/2;return h.select(g).attr("transform","translate( "+(o.width>p.width?0:(p.width-o.width)/2)+", "+(p.height+d+5)+")"),h.select(f).attr("transform","translate( "+(o.width<p.width?0:-(p.width-o.width)/2)+", 0)"),o=s.node().getBBox(),s.attr("transform","translate("+-o.width/2+", "+(-o.height/2-d+3)+")"),l.attr("class","outer title-state").attr("x",-o.width/2-d).attr("y",-o.height/2-d).attr("width",o.width+t.padding).attr("height",o.height+t.padding),r.attr("class","divider").attr("x1",-o.width/2-d).attr("x2",o.width/2+d).attr("y1",-o.height/2-d+p.height+d).attr("y2",-o.height/2-d+p.height+d),w(t,l),t.intersect=function(m){return b.rect(t,m)},i},zt=async(a,t)=>{const{shapeSvg:e,bbox:i}=await L(a,t,E(t),!0),l=i.height+t.padding,r=i.width+l/4+t.padding,s=e.insert("rect",":first-child").attr("style",t.style).attr("rx",l/2).attr("ry",l/2).attr("x",-r/2).attr("y",-l/2).attr("width",r).attr("height",l);return w(t,s),t.intersect=function(n){return b.rect(t,n)},e},Gt=async(a,t)=>{const{shapeSvg:e,bbox:i,halfPadding:l}=await L(a,t,E(t),!0),r=e.insert("circle",":first-child");return r.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",i.width/2+l).attr("width",i.width+t.padding).attr("height",i.height+t.padding),h.log$1.info("Circle main"),w(t,r),t.intersect=function(s){return h.log$1.info("Circle intersect",t,i.width/2+l,s),b.circle(t,i.width/2+l,s)},e},Zt=async(a,t)=>{const{shapeSvg:e,bbox:i,halfPadding:l}=await L(a,t,E(t),!0),r=5,s=e.insert("g",":first-child"),n=s.insert("circle"),c=s.insert("circle");return s.attr("class",t.class),n.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",i.width/2+l+r).attr("width",i.width+t.padding+r*2).attr("height",i.height+t.padding+r*2),c.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",i.width/2+l).attr("width",i.width+t.padding).attr("height",i.height+t.padding),h.log$1.info("DoubleCircle main"),w(t,n),t.intersect=function(f){return h.log$1.info("DoubleCircle intersect",t,i.width/2+l+r,f),b.circle(t,i.width/2+l+r,f)},e},Ft=async(a,t)=>{const{shapeSvg:e,bbox:i}=await L(a,t,E(t),!0),l=i.width+t.padding,r=i.height+t.padding,s=[{x:0,y:0},{x:l,y:0},{x:l,y:-r},{x:0,y:-r},{x:0,y:0},{x:-8,y:0},{x:l+8,y:0},{x:l+8,y:-r},{x:-8,y:-r},{x:-8,y:0}],n=_(e,l,r,s);return n.attr("style",t.style),w(t,n),t.intersect=function(c){return b.polygon(t,s,c)},e},qt=(a,t)=>{const e=a.insert("g").attr("class","node default").attr("id",t.domId||t.id),i=e.insert("circle",":first-child");return i.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),w(t,i),t.intersect=function(l){return b.circle(t,7,l)},e},q=(a,t,e)=>{const i=a.insert("g").attr("class","node default").attr("id",t.domId||t.id);let l=70,r=10;e==="LR"&&(l=10,r=70);const s=i.append("rect").attr("x",-1*l/2).attr("y",-1*r/2).attr("width",l).attr("height",r).attr("class","fork-join");return w(t,s),t.height=t.height+t.padding/2,t.width=t.width+t.padding/2,t.intersect=function(n){return b.rect(t,n)},i},Qt=(a,t)=>{const e=a.insert("g").attr("class","node default").attr("id",t.domId||t.id),i=e.insert("circle",":first-child"),l=e.insert("circle",":first-child");return l.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),i.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),w(t,l),t.intersect=function(r){return b.circle(t,7,r)},e},Vt=(a,t)=>{const e=t.padding/2,i=4,l=8;let r;t.classes?r="node "+t.classes:r="node default";const s=a.insert("g").attr("class",r).attr("id",t.domId||t.id),n=s.insert("rect",":first-child"),c=s.insert("line"),f=s.insert("line");let o=0,y=i;const p=s.insert("g").attr("class","label");let g=0;const d=t.classData.annotations&&t.classData.annotations[0],m=t.classData.annotations[0]?"«"+t.classData.annotations[0]+"»":"",x=p.node().appendChild(B(m,t.labelStyle,!0,!0));let u=x.getBBox();if(h.evaluate(h.getConfig().flowchart.htmlLabels)){const k=x.children[0],v=h.select(x);u=k.getBoundingClientRect(),v.attr("width",u.width),v.attr("height",u.height)}t.classData.annotations[0]&&(y+=u.height+i,o+=u.width);let S=t.classData.label;t.classData.type!==void 0&&t.classData.type!==""&&(h.getConfig().flowchart.htmlLabels?S+="<"+t.classData.type+">":S+="<"+t.classData.type+">");const C=p.node().appendChild(B(S,t.labelStyle,!0,!0));h.select(C).attr("class","classTitle");let M=C.getBBox();if(h.evaluate(h.getConfig().flowchart.htmlLabels)){const k=C.children[0],v=h.select(C);M=k.getBoundingClientRect(),v.attr("width",M.width),v.attr("height",M.height)}y+=M.height+i,M.width>o&&(o=M.width);const I=[];t.classData.members.forEach(k=>{const v=k.getDisplayDetails();let H=v.displayText;h.getConfig().flowchart.htmlLabels&&(H=H.replace(/</g,"<").replace(/>/g,">"));const N=p.node().appendChild(B(H,v.cssStyle?v.cssStyle:t.labelStyle,!0,!0));let T=N.getBBox();if(h.evaluate(h.getConfig().flowchart.htmlLabels)){const U=N.children[0],X=h.select(N);T=U.getBoundingClientRect(),X.attr("width",T.width),X.attr("height",T.height)}T.width>o&&(o=T.width),y+=T.height+i,I.push(N)}),y+=l;const W=[];if(t.classData.methods.forEach(k=>{const v=k.getDisplayDetails();let H=v.displayText;h.getConfig().flowchart.htmlLabels&&(H=H.replace(/</g,"<").replace(/>/g,">"));const N=p.node().appendChild(B(H,v.cssStyle?v.cssStyle:t.labelStyle,!0,!0));let T=N.getBBox();if(h.evaluate(h.getConfig().flowchart.htmlLabels)){const U=N.children[0],X=h.select(N);T=U.getBoundingClientRect(),X.attr("width",T.width),X.attr("height",T.height)}T.width>o&&(o=T.width),y+=T.height+i,W.push(N)}),y+=l,d){let k=(o-u.width)/2;h.select(x).attr("transform","translate( "+(-1*o/2+k)+", "+-1*y/2+")"),g=u.height+i}let st=(o-M.width)/2;return h.select(C).attr("transform","translate( "+(-1*o/2+st)+", "+(-1*y/2+g)+")"),g+=M.height+i,c.attr("class","divider").attr("x1",-o/2-e).attr("x2",o/2+e).attr("y1",-y/2-e+l+g).attr("y2",-y/2-e+l+g),g+=l,I.forEach(k=>{h.select(k).attr("transform","translate( "+-o/2+", "+(-1*y/2+g+l/2)+")");const v=k==null?void 0:k.getBBox();g+=((v==null?void 0:v.height)??0)+i}),g+=l,f.attr("class","divider").attr("x1",-o/2-e).attr("x2",o/2+e).attr("y1",-y/2-e+l+g).attr("y2",-y/2-e+l+g),g+=l,W.forEach(k=>{h.select(k).attr("transform","translate( "+-o/2+", "+(-1*y/2+g)+")");const v=k==null?void 0:k.getBBox();g+=((v==null?void 0:v.height)??0)+i}),n.attr("style",t.style).attr("class","outer title-state").attr("x",-o/2-e).attr("y",-(y/2)-e).attr("width",o+t.padding).attr("height",y+t.padding),w(t,n),t.intersect=function(k){return b.rect(t,k)},s},Q={rhombus:F,composite:At,question:F,rect:Dt,labelRect:jt,rectWithTitle:Ut,choice:Et,circle:Gt,doublecircle:Zt,stadium:zt,hexagon:_t,block_arrow:Nt,rect_left_inv_arrow:Rt,lean_right:Ht,lean_left:It,trapezoid:Ot,inv_trapezoid:Wt,rect_right_inv_arrow:Xt,cylinder:Yt,start:qt,end:Qt,note:Mt,subroutine:Ft,fork:q,join:q,class_box:Vt};let O={};const Jt=async(a,t,e)=>{let i,l;if(t.link){let r;h.getConfig().securityLevel==="sandbox"?r="_top":t.linkTarget&&(r=t.linkTarget||"_blank"),i=a.insert("svg:a").attr("xlink:href",t.link).attr("target",r),l=await Q[t.shape](i,t,e)}else l=await Q[t.shape](a,t,e),i=l;return t.tooltip&&l.attr("title",t.tooltip),t.class&&l.attr("class","node default "+t.class),i.attr("data-node","true"),i.attr("data-id",t.id),O[t.id]=i,t.haveCallback&&O[t.id].attr("class",O[t.id].attr("class")+" clickable"),i},Kt=(a,t)=>{O[t.id]=a},Pt=()=>{O={}},tr=a=>{const t=O[a.id];h.log$1.trace("Transforming node",a.diff,a,"translate("+(a.x-a.width/2-5)+", "+a.width/2+")");const e=8,i=a.diff||0;return a.clusterNode?t.attr("transform","translate("+(a.x+i-a.width/2)+", "+(a.y-a.height/2-e)+")"):t.attr("transform","translate("+a.x+", "+a.y+")"),i},rt=({flowchart:a})=>{var t,e;const i=((t=a==null?void 0:a.subGraphTitleMargin)==null?void 0:t.top)??0,l=((e=a==null?void 0:a.subGraphTitleMargin)==null?void 0:e.bottom)??0,r=i+l;return{subGraphTitleTopMargin:i,subGraphTitleBottomMargin:l,subGraphTitleTotalMargin:r}},R={aggregation:18,extension:18,composition:18,dependency:6,lollipop:13.5,arrow_point:5.3};function Y(a,t){if(a===void 0||t===void 0)return{angle:0,deltaX:0,deltaY:0};a=A(a),t=A(t);const[e,i]=[a.x,a.y],[l,r]=[t.x,t.y],s=l-e,n=r-i;return{angle:Math.atan(n/s),deltaX:s,deltaY:n}}const A=a=>Array.isArray(a)?{x:a[0],y:a[1]}:a,at=a=>({x:function(t,e,i){let l=0;if(e===0&&Object.hasOwn(R,a.arrowTypeStart)){const{angle:r,deltaX:s}=Y(i[0],i[1]);l=R[a.arrowTypeStart]*Math.cos(r)*(s>=0?1:-1)}else if(e===i.length-1&&Object.hasOwn(R,a.arrowTypeEnd)){const{angle:r,deltaX:s}=Y(i[i.length-1],i[i.length-2]);l=R[a.arrowTypeEnd]*Math.cos(r)*(s>=0?1:-1)}return A(t).x+l},y:function(t,e,i){let l=0;if(e===0&&Object.hasOwn(R,a.arrowTypeStart)){const{angle:r,deltaY:s}=Y(i[0],i[1]);l=R[a.arrowTypeStart]*Math.abs(Math.sin(r))*(s>=0?1:-1)}else if(e===i.length-1&&Object.hasOwn(R,a.arrowTypeEnd)){const{angle:r,deltaY:s}=Y(i[i.length-1],i[i.length-2]);l=R[a.arrowTypeEnd]*Math.abs(Math.sin(r))*(s>=0?1:-1)}return A(t).y+l}}),et=(a,t,e,i,l)=>{t.arrowTypeStart&&V(a,"start",t.arrowTypeStart,e,i,l),t.arrowTypeEnd&&V(a,"end",t.arrowTypeEnd,e,i,l)},rr={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},V=(a,t,e,i,l,r)=>{const s=rr[e];if(!s){h.log$1.warn(`Unknown arrow type: ${e}`);return}const n=t==="start"?"Start":"End";a.attr(`marker-${t}`,`url(${i}#${l}_${r}-${s}${n})`)};let j={},$={};const ar=()=>{j={},$={}},er=(a,t)=>{const e=h.evaluate(h.getConfig().flowchart.htmlLabels),i=t.labelType==="markdown"?K.createText(a,t.label,{style:t.labelStyle,useHtmlLabels:e,addSvgBackground:!0}):B(t.label,t.labelStyle),l=a.insert("g").attr("class","edgeLabel"),r=l.insert("g").attr("class","label");r.node().appendChild(i);let s=i.getBBox();if(e){const c=i.children[0],f=h.select(i);s=c.getBoundingClientRect(),f.attr("width",s.width),f.attr("height",s.height)}r.attr("transform","translate("+-s.width/2+", "+-s.height/2+")"),j[t.id]=l,t.width=s.width,t.height=s.height;let n;if(t.startLabelLeft){const c=B(t.startLabelLeft,t.labelStyle),f=a.insert("g").attr("class","edgeTerminals"),o=f.insert("g").attr("class","inner");n=o.node().appendChild(c);const y=c.getBBox();o.attr("transform","translate("+-y.width/2+", "+-y.height/2+")"),$[t.id]||($[t.id]={}),$[t.id].startLeft=f,D(n,t.startLabelLeft)}if(t.startLabelRight){const c=B(t.startLabelRight,t.labelStyle),f=a.insert("g").attr("class","edgeTerminals"),o=f.insert("g").attr("class","inner");n=f.node().appendChild(c),o.node().appendChild(c);const y=c.getBBox();o.attr("transform","translate("+-y.width/2+", "+-y.height/2+")"),$[t.id]||($[t.id]={}),$[t.id].startRight=f,D(n,t.startLabelRight)}if(t.endLabelLeft){const c=B(t.endLabelLeft,t.labelStyle),f=a.insert("g").attr("class","edgeTerminals"),o=f.insert("g").attr("class","inner");n=o.node().appendChild(c);const y=c.getBBox();o.attr("transform","translate("+-y.width/2+", "+-y.height/2+")"),f.node().appendChild(c),$[t.id]||($[t.id]={}),$[t.id].endLeft=f,D(n,t.endLabelLeft)}if(t.endLabelRight){const c=B(t.endLabelRight,t.labelStyle),f=a.insert("g").attr("class","edgeTerminals"),o=f.insert("g").attr("class","inner");n=o.node().appendChild(c);const y=c.getBBox();o.attr("transform","translate("+-y.width/2+", "+-y.height/2+")"),f.node().appendChild(c),$[t.id]||($[t.id]={}),$[t.id].endRight=f,D(n,t.endLabelRight)}return i};function D(a,t){h.getConfig().flowchart.htmlLabels&&a&&(a.style.width=t.length*9+"px",a.style.height="12px")}const sr=(a,t)=>{h.log$1.debug("Moving label abc88 ",a.id,a.label,j[a.id],t);let e=t.updatedPath?t.updatedPath:t.originalPath;const i=h.getConfig(),{subGraphTitleTotalMargin:l}=rt(i);if(a.label){const r=j[a.id];let s=a.x,n=a.y;if(e){const c=h.utils.calcLabelPosition(e);h.log$1.debug("Moving label "+a.label+" from (",s,",",n,") to (",c.x,",",c.y,") abc88"),t.updatedPath&&(s=c.x,n=c.y)}r.attr("transform",`translate(${s}, ${n+l/2})`)}if(a.startLabelLeft){const r=$[a.id].startLeft;let s=a.x,n=a.y;if(e){const c=h.utils.calcTerminalLabelPosition(a.arrowTypeStart?10:0,"start_left",e);s=c.x,n=c.y}r.attr("transform",`translate(${s}, ${n})`)}if(a.startLabelRight){const r=$[a.id].startRight;let s=a.x,n=a.y;if(e){const c=h.utils.calcTerminalLabelPosition(a.arrowTypeStart?10:0,"start_right",e);s=c.x,n=c.y}r.attr("transform",`translate(${s}, ${n})`)}if(a.endLabelLeft){const r=$[a.id].endLeft;let s=a.x,n=a.y;if(e){const c=h.utils.calcTerminalLabelPosition(a.arrowTypeEnd?10:0,"end_left",e);s=c.x,n=c.y}r.attr("transform",`translate(${s}, ${n})`)}if(a.endLabelRight){const r=$[a.id].endRight;let s=a.x,n=a.y;if(e){const c=h.utils.calcTerminalLabelPosition(a.arrowTypeEnd?10:0,"end_right",e);s=c.x,n=c.y}r.attr("transform",`translate(${s}, ${n})`)}},ir=(a,t)=>{const e=a.x,i=a.y,l=Math.abs(t.x-e),r=Math.abs(t.y-i),s=a.width/2,n=a.height/2;return l>=s||r>=n},nr=(a,t,e)=>{h.log$1.debug(`intersection calc abc89:
|
|
2
|
+
outsidePoint: ${JSON.stringify(t)}
|
|
3
|
+
insidePoint : ${JSON.stringify(e)}
|
|
4
|
+
node : x:${a.x} y:${a.y} w:${a.width} h:${a.height}`);const i=a.x,l=a.y,r=Math.abs(i-e.x),s=a.width/2;let n=e.x<t.x?s-r:s+r;const c=a.height/2,f=Math.abs(t.y-e.y),o=Math.abs(t.x-e.x);if(Math.abs(l-t.y)*s>Math.abs(i-t.x)*c){let y=e.y<t.y?t.y-c-l:l-c-t.y;n=o*y/f;const p={x:e.x<t.x?e.x+n:e.x-o+n,y:e.y<t.y?e.y+f-y:e.y-f+y};return n===0&&(p.x=t.x,p.y=t.y),o===0&&(p.x=t.x),f===0&&(p.y=t.y),h.log$1.debug(`abc89 topp/bott calc, Q ${f}, q ${y}, R ${o}, r ${n}`,p),p}else{e.x<t.x?n=t.x-s-i:n=i-s-t.x;let y=f*n/o,p=e.x<t.x?e.x+o-n:e.x-o+n,g=e.y<t.y?e.y+y:e.y-y;return h.log$1.debug(`sides calc abc89, Q ${f}, q ${y}, R ${o}, r ${n}`,{_x:p,_y:g}),n===0&&(p=t.x,g=t.y),o===0&&(p=t.x),f===0&&(g=t.y),{x:p,y:g}}},J=(a,t)=>{h.log$1.debug("abc88 cutPathAtIntersect",a,t);let e=[],i=a[0],l=!1;return a.forEach(r=>{if(!ir(t,r)&&!l){const s=nr(t,i,r);let n=!1;e.forEach(c=>{n=n||c.x===s.x&&c.y===s.y}),e.some(c=>c.x===s.x&&c.y===s.y)||e.push(s),l=!0}else i=r,l||e.push(r)}),e},lr=function(a,t,e,i,l,r,s){let n=e.points;h.log$1.debug("abc88 InsertEdge: edge=",e,"e=",t);let c=!1;const f=r.node(t.v);var o=r.node(t.w);o!=null&&o.intersect&&(f!=null&&f.intersect)&&(n=n.slice(1,e.points.length-1),n.unshift(f.intersect(n[0])),n.push(o.intersect(n[n.length-1]))),e.toCluster&&(h.log$1.debug("to cluster abc88",i[e.toCluster]),n=J(e.points,i[e.toCluster].node),c=!0),e.fromCluster&&(h.log$1.debug("from cluster abc88",i[e.fromCluster]),n=J(n.reverse(),i[e.fromCluster].node).reverse(),c=!0);const y=n.filter(M=>!Number.isNaN(M.y));let p=h.curveBasis;e.curve&&(l==="graph"||l==="flowchart")&&(p=e.curve);const{x:g,y:d}=at(e),m=it.line().x(g).y(d).curve(p);let x;switch(e.thickness){case"normal":x="edge-thickness-normal";break;case"thick":x="edge-thickness-thick";break;case"invisible":x="edge-thickness-thick";break;default:x=""}switch(e.pattern){case"solid":x+=" edge-pattern-solid";break;case"dotted":x+=" edge-pattern-dotted";break;case"dashed":x+=" edge-pattern-dashed";break}const u=a.append("path").attr("d",m(y)).attr("id",e.id).attr("class"," "+x+(e.classes?" "+e.classes:"")).attr("style",e.style);let S="";(h.getConfig().flowchart.arrowMarkerAbsolute||h.getConfig().state.arrowMarkerAbsolute)&&(S=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,S=S.replace(/\(/g,"\\("),S=S.replace(/\)/g,"\\)")),et(u,e,S,s,l);let C={};return c&&(C.updatedPath=n),C.originalPath=e.points,C};exports.addEdgeMarkers=et;exports.clear=ar;exports.clear$1=Pt;exports.createLabel$1=B;exports.getLineFunctionsWithOffset=at;exports.getSubGraphTitleMargins=rt;exports.insertEdge=lr;exports.insertEdgeLabel=er;exports.insertMarkers$1=ut;exports.insertNode=Jt;exports.intersectRect$1=tt;exports.labelHelper=L;exports.positionEdgeLabel=sr;exports.positionNode=tr;exports.setNodeElem=Kt;exports.updateNodeBounds=w;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const M=Math.PI,x=2*M,p=1e-6,T=x-p;function E(e){this._+=e[0];for(let t=1,h=e.length;t<h;++t)this._+=arguments[t]+e[t]}function m(e){let t=Math.floor(e);if(!(t>=0))throw new Error(`invalid digits: ${e}`);if(t>15)return E;const h=10**t;return function(i){this._+=i[0];for(let s=1,n=i.length;s<n;++s)this._+=Math.round(arguments[s]*h)/h+i[s]}}class A{constructor(t){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=t==null?E:m(t)}moveTo(t,h){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+h}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(t,h){this._append`L${this._x1=+t},${this._y1=+h}`}quadraticCurveTo(t,h,i,s){this._append`Q${+t},${+h},${this._x1=+i},${this._y1=+s}`}bezierCurveTo(t,h,i,s,n,$){this._append`C${+t},${+h},${+i},${+s},${this._x1=+n},${this._y1=+$}`}arcTo(t,h,i,s,n){if(t=+t,h=+h,i=+i,s=+s,n=+n,n<0)throw new Error(`negative radius: ${n}`);let $=this._x1,r=this._y1,u=i-t,l=s-h,_=$-t,o=r-h,a=_*_+o*o;if(this._x1===null)this._append`M${this._x1=t},${this._y1=h}`;else if(a>p)if(!(Math.abs(o*u-l*_)>p)||!n)this._append`L${this._x1=t},${this._y1=h}`;else{let d=i-$,f=s-r,y=u*u+l*l,P=d*d+f*f,g=Math.sqrt(y),v=Math.sqrt(a),w=n*Math.tan((M-Math.acos((y+a-P)/(2*g*v)))/2),c=w/v,b=w/g;Math.abs(c-1)>p&&this._append`L${t+c*_},${h+c*o}`,this._append`A${n},${n},0,0,${+(o*d>_*f)},${this._x1=t+b*u},${this._y1=h+b*l}`}}arc(t,h,i,s,n,$){if(t=+t,h=+h,i=+i,$=!!$,i<0)throw new Error(`negative radius: ${i}`);let r=i*Math.cos(s),u=i*Math.sin(s),l=t+r,_=h+u,o=1^$,a=$?s-n:n-s;this._x1===null?this._append`M${l},${_}`:(Math.abs(this._x1-l)>p||Math.abs(this._y1-_)>p)&&this._append`L${l},${_}`,i&&(a<0&&(a=a%x+x),a>T?this._append`A${i},${i},0,1,${o},${t-r},${h-u}A${i},${i},0,1,${o},${this._x1=l},${this._y1=_}`:a>p&&this._append`A${i},${i},0,${+(a>=M)},${o},${this._x1=t+i*Math.cos(n)},${this._y1=h+i*Math.sin(n)}`)}rect(t,h,i,s){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+h}h${i=+i}v${+s}h${-i}Z`}toString(){return this._}}function L(e){return function(){return e}}function q(e){let t=3;return e.digits=function(h){if(!arguments.length)return t;if(h==null)t=null;else{const i=Math.floor(h);if(!(i>=0))throw new RangeError(`invalid digits: ${h}`);t=i}return e},()=>new A(t)}exports.constant=L;exports.withPath=q;
|