collabmd 0.1.54 → 0.1.55
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/bin/collabmd.js +19 -38
- package/dist/client/assets/CodeMirrorEditor-UCMRAMCV-cMeDxAEL.js +1 -0
- package/dist/client/assets/{abnfDiagram-VCTEODGH-DxNxad6-.js → abnfDiagram-VCTEODGH-D2UdmYvj.js} +1 -1
- package/dist/client/assets/{abnfDiagram-O67JEVCF-Dwt6a0Ds.js → abnfDiagram-YUKMZFIV-DbmU4Q-X.js} +1 -1
- package/dist/client/assets/api-client-utils-C5ESDKMG.js +1 -0
- package/dist/client/assets/architecture-7GRP2DOG-BBwRXFv3.js +1 -1
- package/dist/client/assets/architecture-WOLXFQ4H-C0NxYiG7.js +1 -0
- package/dist/client/assets/{architectureDiagram-NJMV4G6O-D5CGiX3G.js → architectureDiagram-47P4ROYG-C7OjXK9S.js} +3 -3
- package/dist/client/assets/{architectureDiagram-5GKGNRK7-C1uvg5id.js → architectureDiagram-5GKGNRK7-CSiUzzeN.js} +1 -1
- package/dist/client/assets/base-CaIEJUF9.css +1 -0
- package/dist/client/assets/{blockDiagram-BEXU5L5S-BgTM0var.js → blockDiagram-E7TT5TSB-DMG-YlZw.js} +3 -3
- package/dist/client/assets/{blockDiagram-I7D4REHJ-B2YonsoG.js → blockDiagram-I7D4REHJ-sXfAgK2w.js} +1 -1
- package/dist/client/assets/{browser-BKLM0ThC-BCLQGPD6-K2seJgRL.js → browser-BKLM0ThC-BCLQGPD6-CcMAHZXi.js} +1 -1
- package/dist/client/assets/{c4Diagram-7LVT6UL2-r4IwomZm.js → c4Diagram-7LVT6UL2-C88V_K-8.js} +1 -1
- package/dist/client/assets/{c4Diagram-YGBWAQC7-_xZPrNkB.js → c4Diagram-CRA5TL53-D3F9ElJv.js} +2 -2
- package/dist/client/assets/canvasEditor-BJkwGzO1.css +1 -0
- package/dist/client/assets/canvasEditor-sBK7KfrD.js +1 -0
- package/dist/client/assets/{chunk-6AZGARVD--pTGpDnx.js → chunk-24IY7LWP-flnn6SWX.js} +1 -1
- package/dist/client/assets/chunk-2BW5OAIV-CNFO1U_e.js +10 -0
- package/dist/client/assets/{chunk-2E4U76K2-CIQUuV9n.js → chunk-2E4U76K2-DEnS5IbF.js} +1 -1
- package/dist/client/assets/{chunk-5V3GS4D5-B5uC2oxu.js → chunk-3M4EKCLJ-D-sZGCtO.js} +1 -1
- package/dist/client/assets/chunk-3YJQHVM4-Ctp__8EK.js +2 -0
- package/dist/client/assets/{chunk-7PRAP22T-9uTvtc_-.js → chunk-4EA7E6EY-bU4wRJot.js} +1 -1
- package/dist/client/assets/{chunk-4HAMMTFA-q0ldNVvr.js → chunk-4HAMMTFA-CQy6Skzw.js} +1 -1
- package/dist/client/assets/{chunk-6K3QC6MW-JnuvEGV4.js → chunk-4S7OKTRW-BpUW13a3.js} +1 -1
- package/dist/client/assets/{chunk-ICYGCRZG-odvlDZyA.js → chunk-53FOQ5SW-5lPdGYP4.js} +1 -1
- package/dist/client/assets/{chunk-75Z2AOVW-DitkSoSG.js → chunk-75Z2AOVW-BRdhvVTZ.js} +1 -1
- package/dist/client/assets/{chunk-GWA4HPMP-CGmv2yIq.js → chunk-7TKQ45FW-rA2u-WUl.js} +1 -1
- package/dist/client/assets/{chunk-GTNCS2PH-ChgkzEIi.js → chunk-AW2ZBBNX-DL0KGAdi.js} +3 -3
- package/dist/client/assets/{chunk-747NJXEK-BjqqAsS9.js → chunk-BP2KR52E-DAQ1pzDV.js} +1 -1
- package/dist/client/assets/{chunk-CLGD4ZFX-BfYJtJm1.js → chunk-CLGD4ZFX-DJiSE0gD.js} +1 -1
- package/dist/client/assets/{chunk-5DYCD2WN-BKWCKnK-.js → chunk-DBDB3WZW-CXleNlok.js} +1 -1
- package/dist/client/assets/{chunk-DU6HZSFF-CWlP1Dk_.js → chunk-DU6HZSFF-C-18UZkS.js} +1 -1
- package/dist/client/assets/{chunk-MBY4JIJT-DTJ4UcAm.js → chunk-E2ZNV5FY-D_07zfWd.js} +3 -3
- package/dist/client/assets/chunk-EU5HNXII-CETVNUXF.js +213 -0
- package/dist/client/assets/{chunk-F27PBJKO-DPcsPcEs.js → chunk-F27PBJKO-_beIJos4.js} +1 -1
- package/dist/client/assets/{chunk-2ZTRR5NV-DcPRfelM.js → chunk-F6S3BTY2-DVWKCAHp.js} +1 -1
- package/dist/client/assets/{chunk-ISPTBLVO-BMsDq9Ha.js → chunk-FLFP27SU-CydzbSsY.js} +2 -2
- package/dist/client/assets/chunk-FVRAUYC3-C7b9SJ81.js +1 -0
- package/dist/client/assets/{chunk-GMAD6QVW-Bgk8qnty.js → chunk-GMAD6QVW-DnZH7DxV.js} +1 -1
- package/dist/client/assets/{chunk-GVQU2GXP-CQ8cl-Uu.js → chunk-GVQU2GXP-B0Vm415C.js} +1 -1
- package/dist/client/assets/chunk-H5A3YXKD-ChP7mNJq.js +41 -0
- package/dist/client/assets/{chunk-742MDFTN-D1nh6vNv.js → chunk-HJ2JQQFS-DQX7RePR.js} +1 -1
- package/dist/client/assets/{chunk-NETBCI7D-CmUwDWUZ.js → chunk-HTAEGDNF-C0PA_N-c.js} +1 -1
- package/dist/client/assets/{chunk-IMKFNOWR-CBqxfpcP.js → chunk-IMKFNOWR-DoO8IHzF.js} +1 -1
- package/dist/client/assets/{chunk-IH6LHLGP-BNevEHZK.js → chunk-KPI5JJXK-B2ld5-w4.js} +1 -1
- package/dist/client/assets/{chunk-WEXAMYUT-DDlVNp8J.js → chunk-KQW6MTUR-OQ4MyMr_.js} +1 -1
- package/dist/client/assets/{chunk-L3NEJ4N5-BflzkdTI.js → chunk-L3NEJ4N5-CvHossEU.js} +1 -1
- package/dist/client/assets/chunk-NGNAAXSQ-DqoPQk1a.js +136 -0
- package/dist/client/assets/{chunk-UA2S7LBM-DicYDjDM.js → chunk-NTY3LDVX-CVWLK_fh.js} +1 -1
- package/dist/client/assets/{chunk-UY3FDG6J-QT-rkt0y.js → chunk-OD3NTWWA-Dz9nCUGX.js} +1 -1
- package/dist/client/assets/{chunk-OSK3NFVY-DqeKV_pg.js → chunk-OSK3NFVY-C3JOcBao.js} +1 -1
- package/dist/client/assets/{chunk-P2QGCYS3-BA--DhpW.js → chunk-P2QGCYS3-Bfo8qS8r.js} +1 -1
- package/dist/client/assets/{chunk-POPQ4Y6H-V_NEc45n.js → chunk-POPQ4Y6H-sv6rCftH.js} +1 -1
- package/dist/client/assets/{chunk-PWAF6VOD-D_kLse-N.js → chunk-PWAF6VOD-B-AT-L2H.js} +1 -1
- package/dist/client/assets/{chunk-3Z5EZCMW-BAnA6eQ7.js → chunk-QNH66VMT-Cb9xxTwQ.js} +1 -1
- package/dist/client/assets/{chunk-SHT3W25Y-YM3S-A_M.js → chunk-SHT3W25Y-C1lu518T.js} +1 -1
- package/dist/client/assets/{chunk-GNY47TPC-CTrH5O5R.js → chunk-SVEVUXB4-BnM-LXop.js} +1 -1
- package/dist/client/assets/{chunk-SVP7TREG-DdNhDOmW.js → chunk-SVP7TREG-CKqt0syj.js} +1 -1
- package/dist/client/assets/{chunk-TICWLB2K-BGGgCr4x.js → chunk-TICWLB2K-D2ZnWAfF.js} +1 -1
- package/dist/client/assets/{chunk-TLUHSLCS-DCZhIDYA.js → chunk-TLUHSLCS-BMIhqv1X.js} +1 -1
- package/dist/client/assets/{chunk-6EIED4P4-DBVWq7Tz.js → chunk-TPMEZKFX-DIPHIqGb.js} +1 -1
- package/dist/client/assets/{chunk-6TQVIW2G-BSj0l_pu.js → chunk-VPELOWWC-DXayM28-.js} +1 -1
- package/dist/client/assets/chunk-VPRB5NB3-BqaJfj_v.js +127 -0
- package/dist/client/assets/{chunk-I5DQTOEV-aBZooNp1.js → chunk-VTWWFHGB-SZnJiyWY.js} +1 -1
- package/dist/client/assets/{chunk-KI3K4JFJ-FTtDwx3-.js → chunk-VZTHESGH-eHyXmK8W.js} +1 -1
- package/dist/client/assets/{chunk-7INBJB4K-CDmiHbaX.js → chunk-XC4XBNZT-D9oehSn8.js} +20 -20
- package/dist/client/assets/{chunk-XHIXRSVI-DN_fEwws.js → chunk-YK26KJH5-DVy3MGMd.js} +1 -1
- package/dist/client/assets/{chunk-6AEJRKK7-DTVZj5bY.js → chunk-Z6ETV63D-DOcrnz-P.js} +1 -1
- package/dist/client/assets/{chunk-OUJLGHUK-75UXlPjl.js → chunk-ZO67DCNQ-BAOMIkLF.js} +1 -1
- package/dist/client/assets/classDiagram-ZZMXUADV-BmETdFmC.js +1 -0
- package/dist/client/assets/{classDiagram-v2-NBCMYWYE-3TQORq33.js → classDiagram-v2-K4WV4PDN-eaadfJDB.js} +3 -3
- package/dist/client/assets/classDiagram-v2-VYDZK3BY-BmETdFmC.js +1 -0
- package/dist/client/assets/{comment-markdown-renderer-Bxi_JRSR.js → comment-markdown-renderer-CpBKaj7H.js} +1 -1
- package/dist/client/assets/comment-thread-store-DUQsWtnu.js +1 -0
- package/dist/client/assets/comment-threads-DnfkLVJA.js +4 -0
- package/dist/client/assets/comment-ui-shared-D_pgPUti.js +7 -0
- package/dist/client/assets/cynefin-EF2NZ3EQ-DVkJeZ8i.js +1 -0
- package/dist/client/assets/cynefin-OW5HDTMX-CF3N9j1_.js +1 -1
- package/dist/client/assets/{cynefinDiagram-VND7K2PF-DwfMZ3vk.js → cynefinDiagram-3GCD6N5R-DjpAsBHC.js} +1 -1
- package/dist/client/assets/{cynefinDiagram-5FMLGOSQ-DTnLZaO7.js → cynefinDiagram-5FMLGOSQ-D2rFQG67.js} +1 -1
- package/dist/client/assets/dagre-C-rnJpZF.js +1 -0
- package/dist/client/assets/{dagre-GXQ25YYZ-Vtyx08Qh.js → dagre-GXQ25YYZ-Cku9eia9.js} +2 -2
- package/dist/client/assets/{dagre-6A5THRUB-DewyAGK6.js → dagre-W4DXFKR2-DOMOIsPd.js} +2 -2
- package/dist/client/assets/deferred-collab-C9aa9cvT.css +1 -0
- package/dist/client/assets/deferred-git-BPQ-UgrN.css +1 -0
- package/dist/client/assets/deferred-preview-B-RebLry.css +1 -0
- package/dist/client/assets/{diagram-22UHCM2B-DbZirFfl.js → diagram-2UJZ2QOL-D8WvnEyx.js} +6 -6
- package/dist/client/assets/{diagram-3UASUU5V-DmhdYv6_.js → diagram-OVF4WLC6-D8_escYE.js} +2 -2
- package/dist/client/assets/{diagram-CDSNMT55-D_qyS11R.js → diagram-PFPMY2P6-B1izZfrN.js} +3 -3
- package/dist/client/assets/{diagram-S7CK7UJ4-CGTzfo2f.js → diagram-S7CK7UJ4-BzicH2t-.js} +1 -1
- package/dist/client/assets/{diagram-MLGK6HIB-DIBG6Ivu.js → diagram-UMYRVEAY-Djf7WDjZ.js} +1 -1
- package/dist/client/assets/{diagram-UQ7AKVKN-CWZS8QtB.js → diagram-UQ7AKVKN-DqX4zTtr.js} +1 -1
- package/dist/client/assets/{diagram-VSXAHHWV-DaO1nOZF.js → diagram-VSXAHHWV-DnVbfI4Y.js} +1 -1
- package/dist/client/assets/{diagram-VX7I27RA-B54P6Cyf.js → diagram-VX7I27RA-D-Dj0TQC.js} +1 -1
- package/dist/client/assets/{diagram-MPIPVDR6-D9XsALDV.js → diagram-YEKJPTXX-B40bP3Yr.js} +2 -2
- package/dist/client/assets/{diagram-Z3DM3KII-Cl2EXiXp.js → diagram-Z3DM3KII-_iT7Uz5p.js} +1 -1
- package/dist/client/assets/diagram-ZIFT7M5P-BUUK0oNw.js +3 -0
- package/dist/client/assets/{direct-engine-DVLMOJWp-C-YL5NFb.js → direct-engine-DVLMOJWp-DWtWIifK.js} +1 -1
- package/dist/client/assets/dist-26Ce-5t4.js +1 -0
- package/dist/client/assets/dist-8MLNn-I6.js +1 -0
- package/dist/client/assets/dist-Amm5Pr1C.js +1 -0
- package/dist/client/assets/dist-BXXPaoUV.js +1 -0
- package/dist/client/assets/{dist-CoXN2D3R.js → dist-Bkb-_VdB.js} +1 -1
- package/dist/client/assets/dist-Bl4yuUS9.js +1 -0
- package/dist/client/assets/{dist-lw5TGjI6.js → dist-C2CGvCPd.js} +1 -1
- package/dist/client/assets/dist-C2niyEh0.js +1 -0
- package/dist/client/assets/{dist-DOHWxIty.js → dist-CFCSUmJk.js} +1 -1
- package/dist/client/assets/dist-CHUI56fT.js +6 -0
- package/dist/client/assets/dist-CJh3Qrid.js +13 -0
- package/dist/client/assets/{dist-Ch6Sr9KF.js → dist-CKxETpSC.js} +3 -3
- package/dist/client/assets/dist-CSHJthAI.js +2 -0
- package/dist/client/assets/dist-CbKnZGN4.js +1 -0
- package/dist/client/assets/{dist-KrdpB_GB.js → dist-Cik4RJXj.js} +1 -1
- package/dist/client/assets/{dist-uk11ih8u.js → dist-CqkAY6Ot.js} +2 -2
- package/dist/client/assets/dist-D2ql2LCd.js +1 -0
- package/dist/client/assets/{dist-BpAUe9sL.js → dist-D47MOYFN.js} +1 -1
- package/dist/client/assets/dist-DBhUaexM.js +1 -0
- package/dist/client/assets/dist-DJux6Vc5.js +1 -0
- package/dist/client/assets/{dist-9Eodxf4G.js → dist-DLNdMWPH.js} +1 -1
- package/dist/client/assets/dist-DPJj-Y3l.js +1 -0
- package/dist/client/assets/{dist-BSAZ-Hek.js → dist-DRYFMufe.js} +6 -6
- package/dist/client/assets/{dist-BrKhPlc9.js → dist-DTGcVSU8.js} +1 -1
- package/dist/client/assets/dist-DlOxjzWi.js +9 -0
- package/dist/client/assets/{dist-BT9gJXCb.js → dist-DogjjM_B.js} +1 -1
- package/dist/client/assets/dist-Dyv_RvyB.js +23 -0
- package/dist/client/assets/dist-FUFeH5Cx.js +1 -0
- package/dist/client/assets/dist-It70ktCU.js +1 -0
- package/dist/client/assets/dist-QMvcnJHf.js +1 -0
- package/dist/client/assets/dist-QN1K2czv.js +11 -0
- package/dist/client/assets/dist-W8ilOKl3.js +1 -0
- package/dist/client/assets/dist-_17-t9qP.js +1 -0
- package/dist/client/assets/{dist-DeCV9FU4.js → dist-uE774WWs.js} +1 -1
- package/dist/client/assets/document-formatter-DtXmKZcy.js +1 -0
- package/dist/client/assets/drawioEditor-DO6IOaJ1.js +9 -0
- package/dist/client/assets/{ebnfDiagram-PWID7BFC-PfC84FyI.js → ebnfDiagram-PWID7BFC-IemGPf9X.js} +1 -1
- package/dist/client/assets/{ebnfDiagram-ZINNZB2B-DYvm_QtE.js → ebnfDiagram-VR2GEFS7-9fXqy1DI.js} +1 -1
- package/dist/client/assets/editor-session-CPsqXY_A.js +13 -0
- package/dist/client/assets/elk-IJKZMXRS-DsbrbBYg.js +27 -0
- package/dist/client/assets/embedded-editor-base-C44ZcCZv.css +1 -0
- package/dist/client/assets/{embedpdf-TkbBYowM.js → embedpdf-BfUI-3pv.js} +1 -1
- package/dist/client/assets/{embedpdf-cl9qiF45-itpgqvGY.js → embedpdf-cl9qiF45-CLMxJTMP.js} +2 -2
- package/dist/client/assets/en-7ZVUCEYH-C_VXKxxb.js +1 -0
- package/dist/client/assets/{erDiagram-OPXOYQCR-o8GRv8A_.js → erDiagram-O2IAPWRE-Cdadm-HN.js} +2 -2
- package/dist/client/assets/{erDiagram-RLTQ6QDP-C9cJl5NB.js → erDiagram-RLTQ6QDP-CGGmjm8t.js} +1 -1
- package/dist/client/assets/eventmodeling-K75KTNOO-BWBlZ5cR.js +1 -0
- package/dist/client/assets/eventmodeling-NTZA5JFV-CDy1bN6j.js +1 -1
- package/dist/client/assets/excalidraw-element-link-NQnskRkm.js +1 -0
- package/dist/client/assets/excalidraw-scene-DLlw4jyc.js +1 -0
- package/dist/client/assets/excalidrawEditor-DiKOIudt.css +1 -0
- package/dist/client/assets/excalidrawEditor-W2lZ5Mej.js +9 -0
- package/dist/client/assets/export-page-Bomh9oEr.js +46 -0
- package/dist/client/assets/exportDocument-BFIOECJ3.js +2 -0
- package/dist/client/assets/exportDocument-D0mONgQ4.css +1 -0
- package/dist/client/assets/file-kind-BGxTVHan.js +1 -0
- package/dist/client/assets/{file-search-BA8o_gs0.js → file-search-Dk2O14Vw.js} +1 -1
- package/dist/client/assets/flowDiagram-HODETNUW-DcVVYJUZ.js +1 -0
- package/dist/client/assets/flowDiagram-OXPTDLAJ-Dy6y46oF.js +1 -0
- package/dist/client/assets/{ganttDiagram-EL5Y4UJY-x40PW0Ah.js → ganttDiagram-EL5Y4UJY-Duu4KnsU.js} +1 -1
- package/dist/client/assets/ganttDiagram-R7TSEDQI-BWy52pjn.js +292 -0
- package/dist/client/assets/gitGraph-4MIJSDKK-B-rpDYbz.js +1 -1
- package/dist/client/assets/gitGraph-VSP46ZUC-1499lQAI.js +1 -0
- package/dist/client/assets/{gitGraphDiagram-WWUBYQGX-ahsNaZsp.js → gitGraphDiagram-WWUBYQGX-CaJ0vC1a.js} +1 -1
- package/dist/client/assets/gitGraphDiagram-XJZIOB7I-DJwp9ilx.js +106 -0
- package/dist/client/assets/graphlib-DS17s2tU.js +1 -0
- package/dist/client/assets/image-6XY3GD3F-DCWbu6d4.js +1 -0
- package/dist/client/assets/image-lightbox-controller-DAcXEXxT.js +184 -0
- package/dist/client/assets/index-CglpXOg7.css +1 -0
- package/dist/client/assets/index-D3WGkxfI.js +960 -0
- package/dist/client/assets/info-A6RAGUB7-BlutK7BT.js +1 -1
- package/dist/client/assets/info-OHQRW6UA-BDFQOo4H.js +1 -0
- package/dist/client/assets/{infoDiagram-27XIBGKW-MrZyptIy.js → infoDiagram-27XIBGKW-DBJh7QOu.js} +1 -1
- package/dist/client/assets/{infoDiagram-VRGFBTTK-KkUjDRAQ.js → infoDiagram-5W2HQ5XZ-DmWsqJ0w.js} +1 -1
- package/dist/client/assets/{ishikawaDiagram-5VMMS53U-Bnt9yM0O.js → ishikawaDiagram-5VMMS53U-CeEbSJem.js} +1 -1
- package/dist/client/assets/{ishikawaDiagram-OU5B5YK6-Di9BcpOY.js → ishikawaDiagram-K3B6WC7H-DH1NI35G.js} +2 -2
- package/dist/client/assets/{journeyDiagram-3NMN7TZE-Bl0abK1r.js → journeyDiagram-3NMN7TZE-BoIEEr6U.js} +1 -1
- package/dist/client/assets/{journeyDiagram-ZHPQQLJL-J-sGrs9e.js → journeyDiagram-COXZFDF6-CnHV2f9V.js} +3 -3
- package/dist/client/assets/{kanban-definition-PNTS6WVX-5ZDV_yIa.js → kanban-definition-P3RFRI5V-Cxvn5ZAG.js} +4 -4
- package/dist/client/assets/{kanban-definition-UXKFOSKX-DMgUfNt0.js → kanban-definition-UXKFOSKX-BY16Tgbr.js} +1 -1
- package/dist/client/assets/keyboard-shortcuts-BWNCBJqw.js +1 -0
- package/dist/client/assets/lobby-presence-DNNXcuwR.js +1 -0
- package/dist/client/assets/{markdown-CZ1tYEW8.js → markdown-DU84620G.js} +1 -1
- package/dist/client/assets/markdown-headings-zYEUahfW.js +41 -0
- package/dist/client/assets/{markdown-math-CyyBVuDO.js → markdown-math-B96cnrz1.js} +11 -11
- package/dist/client/assets/{mermaid-parser.core-Bpogunsh.js → mermaid-parser.core-R-uwU5kf.js} +3 -3
- package/dist/client/assets/{mermaid-parser.core-DBy--Jc0.js → mermaid-parser.core-mE6t1qEO.js} +1 -1
- package/dist/client/assets/mermaid.core-D8Z6LN7O.js +10 -0
- package/dist/client/assets/{mindmap-definition-NLK3R4M7-ByVb-0vj.js → mindmap-definition-LZFPQGKD-DVfFenfJ.js} +3 -3
- package/dist/client/assets/{mindmap-definition-YA3MSWOX-DBZN5_GH.js → mindmap-definition-YA3MSWOX-DtiE80UJ.js} +1 -1
- package/dist/client/assets/packet-AYTQ26CC-DvbY8dI6.js +1 -1
- package/dist/client/assets/packet-JDAUHWVQ-DJ9K2MA4.js +1 -0
- package/dist/client/assets/{pegDiagram-GJSIUBJH-aost1sSO.js → pegDiagram-BGZESJAR-DxfvEcwv.js} +1 -1
- package/dist/client/assets/{pegDiagram-XKGWAZYB-DRo8CZu3.js → pegDiagram-XKGWAZYB-CyozY-Kt.js} +1 -1
- package/dist/client/assets/pie-WAS4IAKB-DWSm9SSD.js +1 -1
- package/dist/client/assets/pie-XZMESJXO-CQIQasY-.js +1 -0
- package/dist/client/assets/{pieDiagram-5QR66LMP-BICdpEuz.js → pieDiagram-CAPJLFHJ-CRlMcrv3.js} +2 -2
- package/dist/client/assets/{pieDiagram-E7YTZNPT-CZThaHsc.js → pieDiagram-E7YTZNPT-BRdmTkDq.js} +1 -1
- package/dist/client/assets/preload-helper-CYtfOYgs.js +1 -0
- package/dist/client/assets/preview-render-compiler-D_aJv7Ew.js +3 -0
- package/dist/client/assets/{preview-render-worker-BA4VK_GY.js → preview-render-worker-dFNyrVyB.js} +46 -42
- package/dist/client/assets/prod-ItolaHmf.js +145 -0
- package/dist/client/assets/prod-rdly4JJQ.js +1 -0
- package/dist/client/assets/{quadrantDiagram-AXDQQJYC-C5iowkl_.js → quadrantDiagram-AXDQQJYC-7QyPIXkF.js} +1 -1
- package/dist/client/assets/{quadrantDiagram-O4NWA36T-Bgx5bF97.js → quadrantDiagram-GDMTTRAM-DE30uqTl.js} +3 -3
- package/dist/client/assets/quick-switcher-controller-DsK70I7K.js +1 -0
- package/dist/client/assets/radar-ABXABTNO-ByfpCXh9.js +1 -0
- package/dist/client/assets/radar-RG4KPBEZ-BfNQUEQy.js +1 -1
- package/dist/client/assets/railroad-74A4TZTK-BaQ6U6eJ.js +1 -1
- package/dist/client/assets/railroad-I3PHUGI6-CTUn9HhI.js +1 -0
- package/dist/client/assets/railroad-abnf-HS5TGJTU-BJ3KZw7J.js +1 -1
- package/dist/client/assets/railroad-abnf-LNEFI6M7-Ct-b-y0F.js +1 -0
- package/dist/client/assets/railroad-ebnf-DWYD2UWJ-BZMYMWOe.js +1 -0
- package/dist/client/assets/railroad-ebnf-LZEXJU2U-DA0sEq7w.js +1 -1
- package/dist/client/assets/railroad-peg-JR7BVNR7-Dj23PxYc.js +1 -0
- package/dist/client/assets/railroad-peg-WCYAUIDC-DCmlICzO.js +1 -1
- package/dist/client/assets/{railroadDiagram-O6MQD6OU-BTt_rKjT.js → railroadDiagram-O6MQD6OU-BPk3RS2D.js} +1 -1
- package/dist/client/assets/{railroadDiagram-XR7U4H2S-DbVoNgSz.js → railroadDiagram-SM67HX2B-CZRXJ647.js} +1 -1
- package/dist/client/assets/{requirementDiagram-BXWQKSXE-BkvazG7r.js → requirementDiagram-BXWQKSXE-BRwfym6z.js} +1 -1
- package/dist/client/assets/{requirementDiagram-PLB6GJNP-BT0j9C40.js → requirementDiagram-X7JNWC4A-BofCuLJA.js} +4 -4
- package/dist/client/assets/{sankeyDiagram-P5KCCOFB-C_IemB9h.js → sankeyDiagram-P5KCCOFB-D4LcrKpW.js} +1 -1
- package/dist/client/assets/{sankeyDiagram-IPEJSGJF-X1BCUIrf.js → sankeyDiagram-UM26HJRW-CLKMDbej.js} +3 -3
- package/dist/client/assets/{sequenceDiagram-WJ2MYXX4-CxFBgLGd.js → sequenceDiagram-WJ2MYXX4-DQjtv-Bs.js} +1 -1
- package/dist/client/assets/sequenceDiagram-ZO4K6R2Y-CDP_m6ma.js +169 -0
- package/dist/client/assets/sizeCapture-INFHLROL-3uHXrFqA.js +1 -0
- package/dist/client/assets/sizeCapture-INFHLROL-BMR1ovSU.js +1 -0
- package/dist/client/assets/src-D5mvpivG.js +2 -0
- package/dist/client/assets/{standalone-DbyFjvTU.js → standalone-D_lg5NC9.js} +1 -1
- package/dist/client/assets/{stateDiagram-D77RDMKH-BaSQ6Owj.js → stateDiagram-D77RDMKH-DSMvV-kF.js} +1 -1
- package/dist/client/assets/stateDiagram-v2-MP3YSRHH-ClmOOUsT.js +1 -0
- package/dist/client/assets/{stateDiagram-v2-GCMORJYK-CsVcfwVp.js → stateDiagram-v2-TBUQTH76-Dc5-FKzd.js} +2 -2
- package/dist/client/assets/{swimlanes-42K2YHIH-CALFEmiS.js → swimlanes-42K2YHIH-BUz31lO3.js} +1 -1
- package/dist/client/assets/{swimlanes-2SLR337P-CnYTVqRX.js → swimlanes-N4OXWK64-Dd3dFdPD.js} +1 -1
- package/dist/client/assets/swimlanesDiagram-K3J5GTZL-Bz9gFdls.js +8 -0
- package/dist/client/assets/swimlanesDiagram-VR7AAH4N-DoDs3zod.js +8 -0
- package/dist/client/assets/{timeline-definition-24CTP7MA-zse-5Dbm.js → timeline-definition-24CTP7MA-BvqCvSjy.js} +1 -1
- package/dist/client/assets/{timeline-definition-EJHVYXUP-BhqPlKkN.js → timeline-definition-YOQAKGHF-D2XWPSLs.js} +3 -3
- package/dist/client/assets/treeView-D4JQ5SDB-DcX7Bx0H.js +1 -0
- package/dist/client/assets/treeView-Q6P3EWNA-BvHOzbu9.js +1 -1
- package/dist/client/assets/treemap-SAJKECNS-BcCHmcAX.js +1 -0
- package/dist/client/assets/treemap-WGGIJYW6-oety7paS.js +1 -1
- package/dist/client/assets/usecaseDiagram-VIAY4XPW-CDe-IMjS.js +328 -0
- package/dist/client/assets/vault-api-client-DrRW0QwO.js +7 -0
- package/dist/client/assets/{vennDiagram-4TSXK5OY-DgHr6cJD.js → vennDiagram-4TSXK5OY-BW6Qp12d.js} +1 -1
- package/dist/client/assets/{vennDiagram-UO4OBE2U-BRwLn2Q1.js → vennDiagram-BLWOH2XV-KxIPKpHi.js} +3 -3
- package/dist/client/assets/wardley-7MLQ67FV-DOahSwbZ.js +1 -0
- package/dist/client/assets/wardley-WFR3VGLG-BdwDpX_I.js +1 -1
- package/dist/client/assets/{wardleyDiagram-VM6X3IG4-9A60XZis.js → wardleyDiagram-VM6X3IG4-BoCETVsK.js} +1 -1
- package/dist/client/assets/{wardleyDiagram-VNRHLVJA-B_tMcVFG.js → wardleyDiagram-YMQ3BMBF-BNYqEy7M.js} +4 -4
- package/dist/client/assets/{wiki-link-resolver-Dch88erO.js → wiki-link-resolver-BCdGUpdu.js} +1 -1
- package/dist/client/assets/{worker-engine-BCCrxWYm-CX0qJ_cG.js → worker-engine-BCCrxWYm-1fphds7O.js} +1 -1
- package/dist/client/assets/workspace-sync-client-C_P9wtjf.js +1 -0
- package/dist/client/assets/{xychartDiagram-S5SC5T6Z-D00iy-wB.js → xychartDiagram-S5SC5T6Z-eB5Fu9P7.js} +1 -1
- package/dist/client/assets/xychartDiagram-TAQBALBS-Sv6aaptV.js +7 -0
- package/dist/client/assets/yjs-Jd9fna_Y.js +4 -0
- package/dist/client/assets/yjs-provider-reset-guard-Cqu0Z6xH.js +1 -0
- package/dist/client/canvas-editor.html +16 -0
- package/dist/client/drawio-editor.html +7 -6
- package/dist/client/excalidraw-editor.html +31 -30
- package/dist/client/export-document.html +4 -3
- package/dist/client/index.html +2 -2
- package/package.json +27 -29
- package/scripts/local-compose.mjs +101 -0
- package/src/client/app/canvas-editor.html +13 -0
- package/src/client/application/app-shell/git-feature.js +3 -2
- package/src/client/application/app-shell/ui-feature-identity.js +1 -0
- package/src/client/application/app-shell/ui-feature-shell.js +2 -0
- package/src/client/application/app-shell/ui-feature-tab-activity.js +4 -0
- package/src/client/application/app-shell/workspace-feature.js +8 -34
- package/src/client/application/diagram-chrome.js +8 -11
- package/src/client/application/diagram-preview-hydrator.js +5 -5
- package/src/client/application/mermaid-preview-hydrator.js +3 -2
- package/src/client/application/plantuml-preview-hydrator.js +6 -0
- package/src/client/application/preview-render-compiler.js +34 -98
- package/src/client/application/preview-render-executor.js +3 -0
- package/src/client/application/preview-render-worker.js +2 -0
- package/src/client/application/preview-renderer.js +9 -5
- package/src/client/application/workspace-coordinator.js +18 -10
- package/src/client/application/workspace-preview-controller.js +105 -158
- package/src/client/application/workspace-route-controller.js +29 -54
- package/src/client/bootstrap/canvas-markdown-preview.js +87 -0
- package/src/client/bootstrap/collabmd-app-shell.js +28 -13
- package/src/client/canvas-editor.js +143 -0
- package/src/client/domain/canvas-view.js +50 -0
- package/src/client/domain/excalidraw-scene.js +4 -49
- package/src/client/domain/highlight-runtime.js +0 -4
- package/src/client/domain/markdown-formatting.js +12 -94
- package/src/client/domain/markdown-headings.js +98 -0
- package/src/client/domain/wiki-link-completions.js +42 -10
- package/src/client/infrastructure/browser-preferences-port.js +27 -33
- package/src/client/infrastructure/canvas-room-client.js +210 -0
- package/src/client/infrastructure/canvas-text-editor.js +36 -0
- package/src/client/infrastructure/comment-thread-store.js +19 -77
- package/src/client/infrastructure/editor-view-adapter.js +0 -30
- package/src/client/infrastructure/excalidraw-room-client.js +22 -10
- package/src/client/infrastructure/hosted-api-client.js +4 -2
- package/src/client/infrastructure/vault-api-client.js +4 -4
- package/src/client/presentation/canvas-editor-view.js +1028 -0
- package/src/client/presentation/canvas-embed-controller.js +116 -0
- package/src/client/presentation/canvas-picker.js +111 -0
- package/src/client/presentation/drawio-embed-controller.js +1 -3
- package/src/client/presentation/excalidraw-embed-controller.js +10 -3
- package/src/client/presentation/file-action-controller.js +37 -0
- package/src/client/presentation/file-explorer-controller.js +1 -2
- package/src/client/presentation/file-explorer-view.js +7 -1
- package/src/client/presentation/file-icon-svg.js +1 -1
- package/src/client/presentation/file-tree-state.js +4 -1
- package/src/client/presentation/image-lightbox-controller.js +1 -5
- package/src/client/presentation/team-settings-controller.js +44 -10
- package/src/client/styles/components/actions.css +4 -16
- package/src/client/styles/components/surfaces.css +0 -7
- package/src/client/styles/features/comment-card.css +1 -2
- package/src/client/styles/features/comment-markdown.css +0 -18
- package/src/client/styles/features/diagram-preview.css +0 -18
- package/src/client/styles/features/git-branch.css +0 -4
- package/src/client/styles/foundation/themes.css +6 -0
- package/src/client/styles/foundation/utilities.css +1 -2
- package/src/client/styles/layout/editor-page.css +0 -13
- package/src/client/styles/layout/responsive.css +2 -7
- package/src/client/styles/layout/shell.css +13 -1
- package/src/client/styles/layout/view-modes.css +1 -0
- package/src/client/styles/surfaces/canvas-editor.css +239 -0
- package/src/domain/canvas-room-codec.js +359 -0
- package/src/domain/collabmd-content-capabilities.js +10 -1
- package/src/domain/comment-threads.js +49 -5
- package/src/domain/excalidraw-room-codec.js +23 -73
- package/src/domain/excalidraw-scene.js +48 -0
- package/src/domain/file-kind.js +13 -1
- package/src/server/application/workspace-reconciliation.js +0 -14
- package/src/server/domain/backlink-index.js +1 -36
- package/src/server/domain/bases/base-index-snapshot-store.js +41 -24
- package/src/server/domain/bases/base-query-service.js +1 -47
- package/src/server/domain/collaboration/collaboration-room.js +149 -15
- package/src/server/domain/collaboration/room-registry.js +7 -7
- package/src/server/domain/hosted-workspace.js +29 -2
- package/src/server/domain/plantuml-encoder.js +7 -43
- package/src/server/infrastructure/git/diff-service.js +1 -5
- package/src/server/infrastructure/git/history-service.js +18 -2
- package/src/server/infrastructure/git/untracked-files.js +1 -1
- package/src/server/infrastructure/http/create-git-api-command-handler.js +60 -149
- package/src/server/infrastructure/http/create-hosted-api-handler.js +5 -2
- package/src/server/infrastructure/http/create-vault-api-query-handler.js +2 -2
- package/src/server/infrastructure/http/http-response.js +2 -36
- package/src/server/infrastructure/http/request-body.js +14 -49
- package/src/server/infrastructure/persistence/hosted-metadata-store.js +12 -3
- package/src/server/infrastructure/persistence/path-utils.js +8 -2
- package/src/server/infrastructure/persistence/vault-file-store.js +26 -60
- package/src/server/{infrastructure/git → shared}/image-mime.js +2 -2
- package/dist/client/assets/CodeMirrorEditor-UCMRAMCV-kJfwukbn.js +0 -1
- package/dist/client/assets/_basePickBy-QJXUw_pr.js +0 -1
- package/dist/client/assets/_baseUniq-DR4vVjyC.js +0 -1
- package/dist/client/assets/architecture-7GRP2DOG-DJVtYNt-.js +0 -1
- package/dist/client/assets/browser-utils-S4QYY31r.js +0 -1
- package/dist/client/assets/chunk-3FUC2YCW-8tZlhTGX.js +0 -1
- package/dist/client/assets/chunk-7M6MHVWA-BDakkknV.js +0 -213
- package/dist/client/assets/chunk-FOHPRMQF-Dmmo5Kak.js +0 -161
- package/dist/client/assets/chunk-O7XYJQB3-D0_ZY2za.js +0 -126
- package/dist/client/assets/chunk-T5WUORNS-DD7KlyY6.js +0 -40
- package/dist/client/assets/chunk-Z7XXMR3K-P4Vaq8hD.js +0 -10
- package/dist/client/assets/chunk-ZIGJFQKS-b8OUHKK5.js +0 -2
- package/dist/client/assets/classDiagram-ZZMXUADV-QLbh_Nkf.js +0 -1
- package/dist/client/assets/classDiagram-v2-VYDZK3BY-QLbh_Nkf.js +0 -1
- package/dist/client/assets/comment-thread-store-CHvy8GF8.js +0 -1
- package/dist/client/assets/comment-threads-nJhK1yfc.js +0 -4
- package/dist/client/assets/cynefin-OW5HDTMX-e-Quc9Yl.js +0 -1
- package/dist/client/assets/dagre-D7FiCLLP.js +0 -1
- package/dist/client/assets/deferred-collab-D4cxEdad.css +0 -1
- package/dist/client/assets/deferred-git-BHKtkFYi.css +0 -1
- package/dist/client/assets/deferred-preview-BAXYgf4T.css +0 -1
- package/dist/client/assets/diagram-ATOU4E4O-B5uX-jVO.js +0 -3
- package/dist/client/assets/dist-B2ZNQifU.js +0 -1
- package/dist/client/assets/dist-B6QCMNze.js +0 -1
- package/dist/client/assets/dist-BIAv19LO.js +0 -1
- package/dist/client/assets/dist-BKYp1-dl.js +0 -13
- package/dist/client/assets/dist-BSTbcioM.js +0 -11
- package/dist/client/assets/dist-BTVg1m-V.js +0 -1
- package/dist/client/assets/dist-Bi9ZIYXq.js +0 -9
- package/dist/client/assets/dist-Bqo-XRVG.js +0 -1
- package/dist/client/assets/dist-CBsvKPcT.js +0 -1
- package/dist/client/assets/dist-CJBYh9Wy.js +0 -23
- package/dist/client/assets/dist-CRwfjtwz.js +0 -2
- package/dist/client/assets/dist-CX7Kc61C.js +0 -1
- package/dist/client/assets/dist-CYfPeupF.js +0 -1
- package/dist/client/assets/dist-CucpLxUY.js +0 -1
- package/dist/client/assets/dist-DHBMeCxC.js +0 -6
- package/dist/client/assets/dist-DLEg9d4u.js +0 -1
- package/dist/client/assets/dist-DYFBD-wW.js +0 -1
- package/dist/client/assets/dist-DugWGOjQ.js +0 -1
- package/dist/client/assets/dist-NNrRnB-f.js +0 -1
- package/dist/client/assets/dist-PUxZqhFe.js +0 -1
- package/dist/client/assets/dist-cYiJMWHJ.js +0 -1
- package/dist/client/assets/dist-iKC7go4m.js +0 -1
- package/dist/client/assets/document-formatter-6I63vstk.js +0 -1
- package/dist/client/assets/drawioEditor-DNTjsjzJ.js +0 -9
- package/dist/client/assets/editor-session-D8GGkJak.js +0 -14
- package/dist/client/assets/elk-276RUBZZ-B8LB3Pac.js +0 -27
- package/dist/client/assets/embedded-editor-base-elU0Avik.css +0 -1
- package/dist/client/assets/en-JTHJ2SIP-DBz9bRq4.js +0 -1
- package/dist/client/assets/eventmodeling-NTZA5JFV-Dxtv5D-P.js +0 -1
- package/dist/client/assets/excalidraw-element-link-BRZOTIeI.js +0 -7
- package/dist/client/assets/excalidraw-scene-6uROebca.js +0 -1
- package/dist/client/assets/excalidrawEditor-BCTFp_CV.css +0 -1
- package/dist/client/assets/excalidrawEditor-D0orhhku.js +0 -9
- package/dist/client/assets/export-page-CVJNMERq.js +0 -46
- package/dist/client/assets/exportDocument-Ba-n1X4U.css +0 -1
- package/dist/client/assets/exportDocument-DSshnmnZ.js +0 -2
- package/dist/client/assets/file-kind-BwMIcZbi.js +0 -1
- package/dist/client/assets/flowDiagram-HODETNUW-Bq4470NR.js +0 -1
- package/dist/client/assets/flowDiagram-KWPJA3E3-DQG9qGiU.js +0 -1
- package/dist/client/assets/ganttDiagram-FUAMR5RP-BQpsI7gQ.js +0 -292
- package/dist/client/assets/gitGraph-4MIJSDKK-ZaBIE4Lb.js +0 -1
- package/dist/client/assets/gitGraphDiagram-X574FWY7-wbs_2m9f.js +0 -106
- package/dist/client/assets/graphlib-C9Tl7QrK.js +0 -1
- package/dist/client/assets/image-I42VHMUI-B2-c_ifV.js +0 -1
- package/dist/client/assets/index-BCgNcVNs.css +0 -1
- package/dist/client/assets/index-BpmR5Qqk.js +0 -1140
- package/dist/client/assets/info-A6RAGUB7-BcGxhjED.js +0 -1
- package/dist/client/assets/lobby-presence-KJrYhMdN.js +0 -1
- package/dist/client/assets/mermaid.core-BeOUPE3Q.js +0 -10
- package/dist/client/assets/packet-AYTQ26CC-CqpSjTWl.js +0 -1
- package/dist/client/assets/pie-WAS4IAKB-Bg2eCNl5.js +0 -1
- package/dist/client/assets/preload-helper-BAlEavIC.js +0 -1
- package/dist/client/assets/preview-render-compiler-BmWQStaL.js +0 -43
- package/dist/client/assets/prod-CA0ie9yD.js +0 -145
- package/dist/client/assets/prod-yKJZ3E4s.js +0 -1
- package/dist/client/assets/quick-switcher-controller-B5vT9Vj5.js +0 -1
- package/dist/client/assets/radar-RG4KPBEZ-DxExotg6.js +0 -1
- package/dist/client/assets/railroad-74A4TZTK-FfHmeIQk.js +0 -1
- package/dist/client/assets/railroad-abnf-HS5TGJTU-CLkdDRsJ.js +0 -1
- package/dist/client/assets/railroad-ebnf-LZEXJU2U-B162zvcG.js +0 -1
- package/dist/client/assets/railroad-peg-WCYAUIDC-CGs5GeJ5.js +0 -1
- package/dist/client/assets/sequenceDiagram-PO4LG4MO-B-2QfXhV.js +0 -169
- package/dist/client/assets/sizeCapture-INFHLROL-B0uUizjq.js +0 -1
- package/dist/client/assets/sizeCapture-INFHLROL-DrzwYt5z.js +0 -1
- package/dist/client/assets/stateDiagram-v2-MP3YSRHH-CLlwrdvU.js +0 -1
- package/dist/client/assets/swimlanesDiagram-TC7HE7FX-Bh4tmz27.js +0 -8
- package/dist/client/assets/swimlanesDiagram-VR7AAH4N-xhehUG9e.js +0 -8
- package/dist/client/assets/treeView-Q6P3EWNA-Cccy0ngL.js +0 -1
- package/dist/client/assets/treemap-WGGIJYW6-sMRCjCtX.js +0 -1
- package/dist/client/assets/usecaseDiagram-POWQR4AR-DR2LHQYs.js +0 -328
- package/dist/client/assets/vault-api-client-NS_EVHJ3.js +0 -7
- package/dist/client/assets/wardley-WFR3VGLG-Y7xty_3m.js +0 -1
- package/dist/client/assets/workspace-sync-client-BrMtf6zN.js +0 -1
- package/dist/client/assets/xychartDiagram-PMCCYNJV-fRpZ1MA5.js +0 -7
- package/dist/client/assets/yjs-B41tM6Sz.js +0 -4
- package/dist/client/assets/yjs-provider-reset-guard-DpntzUDR.js +0 -1
- package/scripts/local-plantuml-compose.mjs +0 -92
- package/scripts/local-structurizr-compose.mjs +0 -101
|
@@ -1,31 +1,31 @@
|
|
|
1
|
-
import{p as e}from"./src-XiVvaevx.js";import{t}from"./rough.esm-Dy-Kn_BL.js";import{n}from"./chunk-Y2CYZVJY-BbRBGnmc.js";import{t as r}from"./chunk-X3CZISLH-DwWpRaN8.js";import{A as i,B as a,M as o,T as s,b as c,f as l,g as u,x as d,z as f}from"./chunk-O7XYJQB3-D0_ZY2za.js";import{n as p,t as m}from"./chunk-742MDFTN-D1nh6vNv.js";import{a as h,p as g,r as _,u as v}from"./chunk-ZIGJFQKS-b8OUHKK5.js";import{n as y,r as b}from"./chunk-MBY4JIJT-DTJ4UcAm.js";import{a as x,i as S,r as C,t as w}from"./chunk-7PRAP22T-9uTvtc_-.js";import{s as T}from"./chunk-J5ZVWO5B-oDCd-gWO.js";var E=1,D=3;async function O(e){let t=e.getElementsByTagName(`img`);if(!t||t.length===0)return;let r=!k(e);await Promise.all([...t].map(e=>new Promise(t=>{function i(){if(e.style.display=`flex`,e.style.flexDirection=`column`,r){let t=d().fontSize?d().fontSize:window.getComputedStyle(document.body).fontSize,[n=l.fontSize]=g(t),r=n*5+`px`;e.style.minWidth=r,e.style.maxWidth=r}else e.style.width=`100%`;t(e)}n(i,`setupImage`),setTimeout(()=>{e.complete&&i()}),e.addEventListener(`error`,i),e.addEventListener(`load`,i)})))}n(O,`configureLabelImages`);function k(e){return e.nodeType===D?e.textContent?.trim()!==``:e.nodeType!==E||e.tagName.toLowerCase()===`img`?!1:[...e.childNodes].some(k)}n(k,`hasTextBesidesImages`);var A=3,j=32,M=n(async(t,n,r)=>{let i=d(),a=t.insert(`g`).attr(`class`,r??`node default`).attr(`id`,n.domId||n.id),o=a.insert(`g`).attr(`class`,`label`).attr(`style`,v(n.labelStyle)),s=[{text:typeof n.label==`string`?n.label:n.label?.[0]??``,cssClass:`c4-name`},{text:n.stereotype,cssClass:`c4-type`},...(n.description??[]).map(e=>({text:e,cssClass:`c4-descr`}))].filter(e=>e.text),c=n.width?Math.max(n.width-2*(n.padding??0),j):d().flowchart?.wrappingWidth??200,l=i.c4?.wrap??!0?c:1/0,u=await Promise.all(s.map(async t=>{let r=o.append(`g`).attr(`class`,t.cssClass),a=await y(r,f(h(t.text??``),i),{useHtmlLabels:!1,markdown:!1,isNode:!0,width:l,style:n.labelStyle},i);return e(a).selectAll(`tspan.text-outer-tspan`).attr(`text-anchor`,`middle`),e(a).selectAll(`tspan.text-inner-tspan`).attr(`font-weight`,null).attr(`font-style`,null),{el:r,box:r.node().getBBox()}})),p=Math.max(...u.map(({box:e})=>e.width),0),m=0;for(let{el:e,box:t}of u)e.attr(`transform`,`translate(${p/2-t.x-t.width/2}, ${m-t.y})`),m+=t.height+A;let g=u.length>0?m-A:0;return o.insert(`rect`,`:first-child`),o.attr(`transform`,`translate(${-p/2}, ${-g/2})`),{shapeSvg:a,bbox:o.node().getBBox(),halfPadding:(n.padding??0)/2,label:o}},`c4LabelHelper`),N=n((e,t)=>{let{x:r,y:i,width:a,height:o}=e;return a>=t?e:`left`in e?{x:r,y:i,width:t,height:o,top:i,left:r,bottom:i+o,right:r+t,toJSON:n(()=>({}),`toJSON`)}:{x:r-(t-a)/2,y:i,width:t,height:o}},`withMinWidth`),P=n(async(t,n,r)=>{if(n.stereotype!==void 0)return M(t,n,r);let i,a=n.useHtmlLabels||u(d()?.htmlLabels);i=r||`node default`;let o=t.insert(`g`).attr(`class`,i).attr(`id`,n.domId||n.id),s=o.insert(`g`).attr(`class`,`label`).attr(`style`,v(n.labelStyle)),c;c=n.label===void 0?``:typeof n.label==`string`?n.label:n.label[0];let l=!!n.icon||!!n.img,p=n.labelType===`markdown`,m=c&&!n.width?n.minWidth??0:0,g=await y(s,f(h(c),d()),{useHtmlLabels:a,width:n.width||n.wrappingWidth||d().flowchart?.wrappingWidth,minWidth:m,classes:p?`markdown-node-label`:``,style:n.labelStyle,addSvgBackground:l,markdown:p},d()),_=(n?.padding??0)/2,x;if(a){let t=g.children[0],n=e(g);await O(t),x=await b.measure(()=>t.getBoundingClientRect()),x=N(x,m),n.attr(`width`,x.width),n.attr(`height`,x.height)}else x=await b.measure(()=>g.getBBox()),x=N(x,m);return a?s.attr(`transform`,`translate(`+-x.width/2+`, `+-x.height/2+`)`):s.attr(`transform`,`translate(0, `+-x.height/2+`)`),n.centerLabel&&s.attr(`transform`,`translate(`+-x.width/2+`, `+-x.height/2+`)`),s.insert(`rect`,`:first-child`),{shapeSvg:o,bbox:x,halfPadding:_,label:s}},`labelHelper`),F=n(async(t,n,r)=>{let i=r.useHtmlLabels??s(d()),a=t.insert(`g`).attr(`class`,`label`).attr(`style`,r.labelStyle||``),o=await y(a,f(h(n),d()),{useHtmlLabels:i,width:r.width||d()?.flowchart?.wrappingWidth,style:r.labelStyle,addSvgBackground:!!r.icon||!!r.img}),c=r.padding/2,l;if(s(d())){let t=o.children[0],n=e(o);l=await b.measure(()=>t.getBoundingClientRect()),n.attr(`width`,l.width),n.attr(`height`,l.height)}else l=await b.measure(()=>o.getBBox());return i?a.attr(`transform`,`translate(`+-l.width/2+`, `+-l.height/2+`)`):a.attr(`transform`,`translate(0, `+-l.height/2+`)`),r.centerLabel&&a.attr(`transform`,`translate(`+-l.width/2+`, `+-l.height/2+`)`),a.insert(`rect`,`:first-child`),{shapeSvg:t,bbox:l,halfPadding:c,label:a}},`insertLabel`),I=n((e,t,n)=>{if(n){e.width=n.width,e.height=n.height;return}let r=t.node().getBBox();e.width=r.width,e.height=r.height},`updateNodeBounds`),L=n((e,t)=>(e.look===`handDrawn`?`rough-node`:`node`)+` `+e.cssClasses+` `+(t||``),`getNodeClasses`);function R(e){let t=e.map((e,t)=>`${t===0?`M`:`L`}${e.x},${e.y}`);return t.push(`Z`),t.join(` `)}n(R,`createPathFromPoints`);function z(e,t,n,r,i,a){let o=[],s=n-e,c=r-t,l=s/a,u=2*Math.PI/l,d=t+c/2;for(let t=0;t<=50;t++){let n=e+t/50*s,r=d+i*Math.sin(u*(n-e));o.push({x:n,y:r})}return o}n(z,`generateFullSineWavePoints`);function B(e,t,n,r,i,a){let o=[],s=i*Math.PI/180,c=(a*Math.PI/180-s)/(r-1);for(let i=0;i<r;i++){let r=s+i*c,a=e+n*Math.cos(r),l=t+n*Math.sin(r);o.push({x:-a,y:-l})}return o}n(B,`generateCirclePoints`);function ee(e){let t=Array.from(e.childNodes).filter(e=>e.tagName===`path`),r=document.createElementNS(`http://www.w3.org/2000/svg`,`path`),i=t.map(e=>e.getAttribute(`d`)).filter(e=>e!==null).join(` `);r.setAttribute(`d`,i);let a=t.find(e=>e.getAttribute(`fill`)!==`none`),o=t.find(e=>e.getAttribute(`stroke`)!==`none`),s=n((e,t)=>e?.getAttribute(t)??void 0,`getAttr`);if(a){let e={fill:s(a,`fill`),"fill-opacity":s(a,`fill-opacity`)??`1`};Object.entries(e).forEach(([e,t])=>{t&&r.setAttribute(e,t)})}if(o){let e={stroke:s(o,`stroke`),"stroke-width":s(o,`stroke-width`)??`1`,"stroke-opacity":s(o,`stroke-opacity`)??`1`};Object.entries(e).forEach(([e,t])=>{t&&r.setAttribute(e,t)})}let c=document.createElementNS(`http://www.w3.org/2000/svg`,`g`);return c.appendChild(r),c}n(ee,`mergePaths`);var V=n((e,t)=>{var n=e.x,r=e.y,i=t.x-n,a=t.y-r,o=e.width/2,s=e.height/2,c,l;return Math.abs(a)*o>Math.abs(i)*s?(a<0&&(s=-s),c=a===0?0:s*i/a,l=s):(i<0&&(o=-o),c=o,l=i===0?0:o*a/i),{x:n+c,y:r+l}},`intersectRect`);function te(e,t){return e.intersect(t)}n(te,`intersectNode`);var H=te;function U(e,t,n,r){var i=e.x,a=e.y,o=i-r.x,s=a-r.y,c=Math.sqrt(t*t*s*s+n*n*o*o),l=Math.abs(t*n*o/c);r.x<i&&(l=-l);var u=Math.abs(t*n*s/c);return r.y<a&&(u=-u),{x:i+l,y:a+u}}n(U,`intersectEllipse`);var ne=U;function re(e,t,n){return ne(e,t,t,n)}n(re,`intersectCircle`);var ie=re;function W(e,t,n,r){{let i=t.y-e.y,a=e.x-t.x,o=t.x*e.y-e.x*t.y,s=i*n.x+a*n.y+o,c=i*r.x+a*r.y+o,l=1e-6;if(s!==0&&c!==0&&G(s,c))return;let u=r.y-n.y,d=n.x-r.x,f=r.x*n.y-n.x*r.y,p=u*e.x+d*e.y+f,m=u*t.x+d*t.y+f;if(Math.abs(p)<l&&Math.abs(m)<l&&G(p,m))return;let h=i*d-u*a;return h===0?void 0:{x:(a*f-d*o)/h,y:(u*o-i*f)/h}}}n(W,`intersectLine`);function G(e,t){return e*t>0}n(G,`sameSign`);var ae=W;function oe(e,t,n){let r=e.x,i=e.y,a=[],o=1/0,s=1/0;typeof t.forEach==`function`?t.forEach(function(e){o=Math.min(o,e.x),s=Math.min(s,e.y)}):(o=Math.min(o,t.x),s=Math.min(s,t.y));let c=r-e.width/2-o,l=i-e.height/2-s;for(let r=0;r<t.length;r++){let i=t[r],o=t[r<t.length-1?r+1:0],s=ae(e,n,{x:c+i.x,y:l+i.y},{x:c+o.x,y:l+o.y});s&&a.push(s)}return a.length?(a.length>1&&a.sort(function(e,t){let r=e.x-n.x,i=e.y-n.y,a=Math.sqrt(r*r+i*i),o=t.x-n.x,s=t.y-n.y,c=Math.sqrt(o*o+s*s);return a<c?-1:a===c?0:1}),a[0]):e}n(oe,`intersectPolygon`);var K={node:H,circle:ie,ellipse:ne,polygon:oe,rect:V},q=n((e,t,n,r,i)=>[`M`,e+i,t,`H`,e+n-i,`A`,i,i,0,0,1,e+n,t+i,`V`,t+r-i,`A`,i,i,0,0,1,e+n-i,t+r,`H`,e+i,`A`,i,i,0,0,1,e,t+r-i,`V`,t+i,`A`,i,i,0,0,1,e+i,t,`Z`].join(` `),`createRoundedRectPathD`),se=n(async(e,t,n,r=!1,i=!1)=>{let a=t||``;typeof a==`object`&&(a=a[0]);let o=d(),c=s(o);return await y(e,a,{style:n,isTitle:r,useHtmlLabels:c,markdown:!1,isNode:i,width:1/0},o)},`createLabel`);function ce(e,n){let{labelStyles:i}=S(n);n.labelStyle=i;let a=L(n),o=a;a||(o=`anchor`);let s=e.insert(`g`).attr(`class`,o).attr(`id`,n.domId||n.id),{cssStyles:c}=n,l=t.svg(s),u=x(n,{fill:`black`,stroke:`none`,fillStyle:`solid`});n.look!==`handDrawn`&&(u.roughness=0);let d=l.circle(0,0,2,u),f=s.insert(()=>d,`:first-child`);return f.attr(`class`,`anchor`).attr(`style`,v(c)),I(n,f),n.intersect=function(e){return r.info(`Circle intersect`,n,1,e),K.circle(n,1,e)},s}n(ce,`anchor`);function le(e,t,n,r,i,a,o){let s=(e+n)/2,c=(t+r)/2,l=Math.atan2(r-t,n-e),u=(n-e)/2,d=(r-t)/2,f=u/i,p=d/a,m=Math.sqrt(f**2+p**2);if(m>1)throw Error(`The given radii are too small to create an arc between the points.`);let h=Math.sqrt(1-m**2),g=s+h*a*Math.sin(l)*(o?-1:1),_=c-h*i*Math.cos(l)*(o?-1:1),v=Math.atan2((t-_)/a,(e-g)/i),y=Math.atan2((r-_)/a,(n-g)/i)-v;o&&y<0&&(y+=2*Math.PI),!o&&y>0&&(y-=2*Math.PI);let b=[];for(let e=0;e<20;e++){let t=v+e/19*y,n=g+i*Math.cos(t),r=_+a*Math.sin(t);b.push({x:n,y:r})}return b}n(le,`generateArcPoints`);function ue(e,t,n){let[r,i]=[t,n].sort((e,t)=>t-e);return i*(1-Math.sqrt(1-(e/r/2)**2))}n(ue,`calculateArcSagitta`);async function de(e,r){let{labelStyles:i,nodeStyles:a}=S(r);r.labelStyle=i;let o=r.padding??0,s=r.look===`neo`?16:o,c=r.look===`neo`?12:o,l=n(e=>e+c,`calcTotalHeight`),u=n(e=>{let t=e/2;return[t/(2.5+e/50),t]},`calcEllipseRadius`),{shapeSvg:d,bbox:f}=await P(e,r,L(r)),p=l(r?.height?r?.height:f.height),[m,h]=u(p),g=ue(p,m,h),_=(r?.width?r?.width:f.width)+s*2+g-g,v=p,{cssStyles:y}=r,b=[{x:_/2,y:-v/2},{x:-_/2,y:-v/2},...le(-_/2,-v/2,-_/2,v/2,m,h,!1),{x:_/2,y:v/2},...le(_/2,v/2,_/2,-v/2,m,h,!0)],C=t.svg(d),w=x(r,{});r.look!==`handDrawn`&&(w.roughness=0,w.fillStyle=`solid`);let T=R(b),E=C.path(T,w),D=d.insert(()=>E,`:first-child`);return D.attr(`class`,`basic label-container outer-path`),y&&r.look!==`handDrawn`&&D.selectAll(`path`).attr(`style`,y),a&&r.look!==`handDrawn`&&D.selectAll(`path`).attr(`style`,a),D.attr(`transform`,`translate(${m/2}, 0)`),I(r,D),r.intersect=function(e){return K.polygon(r,b,e)},d}n(de,`bowTieRect`);async function fe(e,r,{config:{themeVariables:i}}){let{labelStyles:a,nodeStyles:o}=S(r);r.labelStyle=a;let{shapeSvg:s,bbox:c,label:l}=await P(e,r,L(r)),u=i?.nodeBorder??i?.lineColor??`currentColor`,d=r.padding??12,f=Math.max(c.width+d*2,r.width??0,80),p=Math.max(Math.min(f*.08,12),5),m=Math.max(c.height+d*2+p,r.height??0),h=-m/2+p,g=m/2,_=f*.72,v=[`M${-f/2},${h}`,`L${-_/2},${g}`,`A${_/2},${p} 0 0 0 ${_/2},${g}`,`L${f/2},${h}`,`A${f/2},${p} 0 0 0 ${-f/2},${h}`,`Z`].join(` `),{cssStyles:y}=r,b=s.insert(`g`,`:first-child`).attr(`class`,`basic label-container`);if(r.look===`handDrawn`){let e=t.svg(s).path(v,x(r,{}));b.node()?.appendChild(e),y&&b.attr(`style`,y)}else b.append(`path`).attr(`d`,v).attr(`style`,o);b.append(`ellipse`).attr(`cx`,0).attr(`cy`,h).attr(`rx`,f/2).attr(`ry`,p).attr(`style`,`fill:none;stroke:${u};stroke-width:1px`),I(r,b);let C=h+(g-h)/2;l.attr(`transform`,`translate(${-(c.width/2)-(c.x-(c.left??0))}, ${C-c.height/2-(c.y-(c.top??0))})`);let w=n((e,t,n)=>Array.from({length:13},(r,i)=>{let a=Math.PI-i*Math.PI/12;return{x:e*Math.cos(a),y:t+n*p*Math.sin(a)}}),`arc`),T=[...w(f/2,h,-1),...w(_/2,g,1).reverse()];return r.intersect=function(e){return K.polygon(r,T,e)},s}n(fe,`bucket`);var pe=20,me=8,he=80,ge=8;function _e(e){let{themeVariables:t}=d(),n=t.clusterBkg,r=t.clusterBorder;switch(e){case`flow`:return{rx:10,fill:`none`,stroke:t.flowContainerStroke||t.secondaryBorderColor,strokeWidth:.75,cssClass:`flow-collapsed`};default:return{rx:ge,fill:n,stroke:r,cssClass:`collapsed-group`}}}n(_e,`getCollapsedStyle`);async function ve(e,n){let r=_e(n.metadata?.containerType),{fill:i,stroke:a}=r,{nodeStyles:o}=S(n),{shapeSvg:c,bbox:l}=await P(e,n,L(n)),{theme:u,themeVariables:f}=d();T(c,n.colorIndex,u,f.borderColorArray);let p=n.padding??8,m=l.height,h=Math.max(l.width+p*2,he,n?.width??0),g=Math.max(m+me+pe+p*2,n?.height??0),_=-h/2,y=-g/2,b=-(me+pe)/2,C=c.select(`.label`);C&&(n.useHtmlLabels??s(d())?C.attr(`transform`,`translate(${-l.width/2}, ${-l.height/2+b})`):C.attr(`transform`,`translate(0, ${-l.height/2+b})`));let w;if(n.look===`handDrawn`){let e=t.svg(c),o=x(n,{fill:i,stroke:a,...r.strokeWidth===void 0?{}:{strokeWidth:r.strokeWidth},...i===`none`?{fillWeight:0}:{fillStyle:`solid`}}),s=e.path(q(_,y,h,g,r.rx),o);w=c.insert(()=>s,`:first-child`),w.attr(`class`,`basic label-container `+r.cssClass).attr(`style`,v(n.cssStyles))}else w=c.insert(`rect`,`:first-child`),w.attr(`class`,`basic label-container `+r.cssClass).attr(`style`,o).attr(`rx`,r.rx).attr(`ry`,r.rx).attr(`x`,_).attr(`y`,y).attr(`width`,h).attr(`height`,g).attr(`fill`,i).attr(`stroke`,a),r.strokeWidth!==void 0&&w.attr(`stroke-width`,r.strokeWidth+`px`);let E=y+p+m+me;c.append(`line`).attr(`class`,`collapsed-separator`).attr(`x1`,_+8).attr(`y1`,E).attr(`x2`,_+h-8).attr(`y2`,E).attr(`stroke`,a).attr(`stroke-dasharray`,`3, 3`);let D=E+pe/2;for(let e=-1;e<=1;e++)c.append(`circle`).attr(`class`,`collapsed-indicator`).attr(`cx`,e*10).attr(`cy`,D).attr(`r`,2.5).attr(`fill`,a);return I(n,w),n.calcIntersect=function(e,t){return K.rect(e,t)},n.intersect=function(e){return K.rect(n,e)},c}n(ve,`collapsedGroup`);function J(e,t,n,r){return e.insert(`polygon`,`:first-child`).attr(`points`,r.map(function(e){return e.x+`,`+e.y}).join(` `)).attr(`class`,`label-container`).attr(`transform`,`translate(`+-t/2+`,`+n/2+`)`)}n(J,`insertPolygonShape`);var ye=[`right`,`left`,`up`,`down`],be=`point`,xe=n(e=>{let t=new Set;for(let n of e)switch(n){case`x`:t.add(`right`),t.add(`left`);break;case`y`:t.add(`up`),t.add(`down`);break;default:t.add(n)}return t},`expandAndDeduplicateDirections`),Se=n(e=>ye.filter(t=>e.has(t)).join(`|`)||be,`getDirectionKey`),Ce={"right|left|up|down":n(({height:e,midpoint:t,padding:n,width:r})=>[{x:0,y:0},{x:t,y:0},{x:r/2,y:2*n},{x:r-t,y:0},{x:r,y:0},{x:r,y:-e/3},{x:r+2*n,y:-e/2},{x:r,y:-2*e/3},{x:r,y:-e},{x:r-t,y:-e},{x:r/2,y:-e-2*n},{x:t,y:-e},{x:0,y:-e},{x:0,y:-2*e/3},{x:-2*n,y:-e/2},{x:0,y:-e/3}],`right|left|up|down`),"right|left|up":n(({height:e,midpoint:t,width:n})=>[{x:t,y:0},{x:n-t,y:0},{x:n,y:-e/2},{x:n-t,y:-e},{x:t,y:-e},{x:0,y:-e/2}],`right|left|up`),"right|left|down":n(({height:e,midpoint:t,width:n})=>[{x:0,y:0},{x:t,y:-e},{x:n-t,y:-e},{x:n,y:0}],`right|left|down`),"right|up|down":n(({height:e,midpoint:t,width:n})=>[{x:0,y:0},{x:n,y:-t},{x:n,y:-e+t},{x:0,y:-e}],`right|up|down`),"left|up|down":n(({height:e,midpoint:t,width:n})=>[{x:n,y:0},{x:0,y:-t},{x:0,y:-e+t},{x:n,y:-e}],`left|up|down`),"right|left":n(({height:e,midpoint:t,padding:n,width:r})=>[{x:t,y:0},{x:t,y:-n},{x:r-t,y:-n},{x:r-t,y:0},{x:r,y:-e/2},{x:r-t,y:-e},{x:r-t,y:-e+n},{x:t,y:-e+n},{x:t,y:-e},{x:0,y:-e/2}],`right|left`),"up|down":n(({height:e,midpoint:t,padding:n,width:r})=>[{x:r/2,y:0},{x:0,y:-n},{x:t,y:-n},{x:t,y:-e+n},{x:0,y:-e+n},{x:r/2,y:-e},{x:r,y:-e+n},{x:r-t,y:-e+n},{x:r-t,y:-n},{x:r,y:-n}],`up|down`),"right|up":n(({height:e,midpoint:t,width:n})=>[{x:0,y:0},{x:n,y:-t},{x:0,y:-e}],`right|up`),"right|down":n(({height:e,width:t})=>[{x:0,y:0},{x:t,y:0},{x:0,y:-e}],`right|down`),"left|up":n(({height:e,midpoint:t,width:n})=>[{x:n,y:0},{x:0,y:-t},{x:n,y:-e}],`left|up`),"left|down":n(({height:e,width:t})=>[{x:t,y:0},{x:0,y:0},{x:t,y:-e}],`left|down`),right:n(({height:e,midpoint:t,padding:n,width:r})=>[{x:t,y:-n},{x:t,y:-n},{x:r-t,y:-n},{x:r-t,y:0},{x:r,y:-e/2},{x:r-t,y:-e},{x:r-t,y:-e+n},{x:t,y:-e+n},{x:t,y:-e+n}],`right`),left:n(({height:e,midpoint:t,padding:n,width:r})=>[{x:t,y:0},{x:t,y:-n},{x:r-t,y:-n},{x:r-t,y:-e+n},{x:t,y:-e+n},{x:t,y:-e},{x:0,y:-e/2}],`left`),up:n(({height:e,midpoint:t,padding:n,width:r})=>[{x:t,y:-n},{x:t,y:-e+n},{x:0,y:-e+n},{x:r/2,y:-e},{x:r,y:-e+n},{x:r-t,y:-e+n},{x:r-t,y:-n}],`up`),down:n(({height:e,midpoint:t,padding:n,width:r})=>[{x:r/2,y:0},{x:0,y:-n},{x:t,y:-n},{x:t,y:-e+n},{x:r-t,y:-e+n},{x:r-t,y:-n},{x:r,y:-n}],`down`),[be]:()=>[{x:0,y:0}]},we=n((e,t,n,r)=>{let i=xe(e),a=(n.padding??0)/2,o=t.height+4*a,s=o/2,c=r??t.width+2*s+2*a;return(Ce[Se(i)]??Ce[be])({height:o,midpoint:s,padding:a,width:c})},`getArrowPoints`);async function Te(e,t){let n=t,{shapeSvg:r,bbox:i}=await P(e,n,L(n)),a=n.padding??0,o=i.height+2*a,s=o/2,c=i.width+2*s+a,l=n.width??0,u=n.positioned&&(n.widthInColumns??1)>1&&l>c?l:c,d=we(n.directions??[],i,n,u),f=J(r,u,o,d);return f.attr(`style`,n.style??null),I(n,f),n.intersect=function(e){return K.polygon(n,d,e)},r}n(Te,`block_arrow`);async function Ee(e,n,{config:{themeVariables:r}}){let{labelStyles:i,nodeStyles:a}=S(n);n.labelStyle=i;let{shapeSvg:o,bbox:s,label:c}=await P(e,n,L(n)),l=r?.nodeBorder??r?.lineColor??`currentColor`,u=n.padding??12,d=Math.max(s.width+u*2,n.width??0,90),f=Math.max(s.height+u*2+18,n.height??0),p=-f/2,{cssStyles:m}=n,h=o.insert(`g`,`:first-child`).attr(`class`,`basic label-container`);if(n.look===`handDrawn`){let e=t.svg(o).path(q(-d/2,p,d,f,12),x(n,{}));h.node()?.appendChild(e),m&&h.attr(`style`,m)}else h.append(`rect`).attr(`x`,-d/2).attr(`y`,p).attr(`width`,d).attr(`height`,f).attr(`rx`,12).attr(`ry`,12).attr(`style`,a);h.append(`line`).attr(`x1`,-d/2).attr(`y1`,p+18).attr(`x2`,d/2).attr(`y2`,p+18).attr(`style`,`stroke:${l};stroke-width:1px`);for(let e=0;e<3;e++)h.append(`circle`).attr(`cx`,-d/2+12+e*9).attr(`cy`,p+9).attr(`r`,2.5).attr(`style`,`fill:${l};stroke:none`);h.append(`rect`).attr(`class`,`browser-address-bar`).attr(`x`,-d/2+44).attr(`y`,p+4).attr(`width`,Math.max(d-56,10)).attr(`height`,10).attr(`rx`,3).attr(`ry`,3).attr(`style`,`fill:none;stroke:${l};stroke-width:1px;opacity:0.6`),I(n,h);let g=p+18+(f-18)/2;return c.attr(`transform`,`translate(${-(s.width/2)-(s.x-(s.left??0))}, ${g-s.height/2-(s.y-(s.top??0))})`),n.intersect=function(e){return K.rect(n,e)},o}n(Ee,`browser`);var De=12;async function Oe(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.padding??0,o=n.look===`neo`?28:a,s=n.look===`neo`?24:a,{shapeSvg:c,bbox:l}=await P(e,n,L(n)),u=(n?.width??l.width)+(n.look===`neo`?o*2:o+De),d=(n?.height??l.height)+(n.look===`neo`?s*2:s),f=u,p=-d,m=[{x:0+De,y:p},{x:f,y:p},{x:f,y:0},{x:0,y:0},{x:0,y:p+De},{x:0+De,y:p}],h,{cssStyles:g}=n;if(n.look===`handDrawn`){let e=t.svg(c),r=x(n,{}),i=R(m),a=e.path(i,r);h=c.insert(()=>a,`:first-child`).attr(`transform`,`translate(${-u/2}, ${d/2})`),g&&h.attr(`style`,g)}else h=J(c,u,d,m);return i&&h.attr(`style`,i),I(n,h),n.intersect=function(e){return K.polygon(n,m,e)},c}n(Oe,`card`);function ke(e,n){let{nodeStyles:r}=S(n);n.label=``;let i=e.insert(`g`).attr(`class`,L(n)).attr(`id`,n.domId??n.id),{cssStyles:a}=n,o=Math.max(28,n.width??0),s=[{x:0,y:o/2},{x:o/2,y:0},{x:0,y:-o/2},{x:-o/2,y:0}],c=t.svg(i),l=x(n,{});n.look!==`handDrawn`&&(l.roughness=0,l.fillStyle=`solid`);let u=R(s),d=c.path(u,l),f=i.insert(()=>d,`:first-child`);return a&&n.look!==`handDrawn`&&f.selectAll(`path`).attr(`style`,a),r&&n.look!==`handDrawn`&&f.selectAll(`path`).attr(`style`,r),n.width=28,n.height=28,n.intersect=function(e){return K.polygon(n,s,e)},i}n(ke,`choice`);async function Ae(e,n,i){let{labelStyles:a,nodeStyles:o}=S(n);n.labelStyle=a;let{shapeSvg:s,bbox:c,halfPadding:l}=await P(e,n,L(n)),u=i?.padding??l,d=Math.sqrt(c.width**2+c.height**2)/2,f=n.look===`neo`?d+32:d+u,p,{cssStyles:m}=n;if(n.look===`handDrawn`){let e=t.svg(s),r=x(n,{}),i=e.circle(0,0,f*2,r);p=s.insert(()=>i,`:first-child`),p.attr(`class`,`basic label-container`).attr(`style`,v(m))}else p=s.insert(`circle`,`:first-child`).attr(`class`,`basic label-container`).attr(`style`,o).attr(`r`,f).attr(`cx`,0).attr(`cy`,0);return I(n,p),n.calcIntersect=function(e,t){let n=e.width/2;return K.circle(e,n,t)},n.intersect=function(e){return r.info(`Circle intersect`,n,f,e),K.circle(n,f,e)},s}n(Ae,`circle`);async function je(e,t){let n=t,{shapeSvg:r,bbox:i,halfPadding:a}=await P(e,n,[`node`,n.cssClasses,n.class].filter(Boolean).join(` `)),o=r.insert(`rect`,`:first-child`),s=n.padding??0,c=n.positioned?n.width??0:i.width+s,l=n.positioned?n.height??0:i.height+s,u=n.positioned?-c/2:-i.width/2-a,d=n.positioned?-l/2:-i.height/2-a;return o.attr(`class`,`basic cluster composite label-container`).attr(`style`,n.style??null).attr(`rx`,n.rx??null).attr(`ry`,n.ry??null).attr(`x`,u).attr(`y`,d).attr(`width`,c).attr(`height`,l),I(n,o),n.intersect=function(e){return K.rect(n,e)},r}n(je,`composite`);async function Me(e,n,{config:{themeVariables:r}}){let{labelStyles:i,nodeStyles:a}=S(n);n.labelStyle=i;let{shapeSvg:o,bbox:s,label:c}=await P(e,n,L(n)),l=r?.nodeBorder??r?.lineColor??`currentColor`,u=n.padding??12,d=Math.max(s.width+u*2,n.width??0,90),f=Math.max(s.height+u*2+20,n.height??0),p=-f/2,{cssStyles:m}=n,h=o.insert(`g`,`:first-child`).attr(`class`,`basic label-container`);if(n.look===`handDrawn`){let e=t.svg(o).path(q(-d/2,p,d,f,12),x(n,{}));h.node()?.appendChild(e),m&&h.attr(`style`,m)}else h.append(`rect`).attr(`x`,-d/2).attr(`y`,p).attr(`width`,d).attr(`height`,f).attr(`rx`,12).attr(`ry`,12).attr(`style`,a);h.append(`text`).attr(`x`,-d/2+12).attr(`y`,p+16).attr(`class`,`console-glyph`).attr(`style`,`font-family:monospace;font-weight:bold;font-size:14px;fill:${l}`).text(`>_`),I(n,h);let g=p+20+(f-20)/2;return c.attr(`transform`,`translate(${-(s.width/2)-(s.x-(s.left??0))}, ${g-s.height/2-(s.y-(s.top??0))})`),n.intersect=function(e){return K.rect(n,e)},o}n(Me,`consoleWindow`);function Ne(e){let t=Math.cos(Math.PI/4),n=Math.sin(Math.PI/4),r=e*2,i={x:r/2*t,y:r/2*n},a={x:-(r/2)*t,y:r/2*n},o={x:-(r/2)*t,y:-(r/2)*n},s={x:r/2*t,y:-(r/2)*n};return`M ${a.x},${a.y} L ${s.x},${s.y}
|
|
2
|
-
M ${i.x},${i.y} L ${o.x},${o.y}`}n(Ne,`createLine`);function Pe(e,n){let{labelStyles:i,nodeStyles:a}=S(n);n.labelStyle=i,n.label=``;let o=e.insert(`g`).attr(`class`,L(n)).attr(`id`,n.domId??n.id),s=Math.max(30,n?.width??0),{cssStyles:c}=n,l=t.svg(o),u=x(n,{});n.look!==`handDrawn`&&(u.roughness=0,u.fillStyle=`solid`);let d=l.circle(0,0,s*2,u),f=Ne(s),p=l.path(f,u),m=o.insert(()=>d,`:first-child`);return m.insert(()=>p),m.attr(`class`,`outer-path`),c&&n.look!==`handDrawn`&&m.selectAll(`path`).attr(`style`,c),a&&n.look!==`handDrawn`&&m.selectAll(`path`).attr(`style`,a),I(n,m),n.intersect=function(e){return r.info(`crossedCircle intersect`,n,{radius:s,point:e}),K.circle(n,s,e)},o}n(Pe,`crossedCircle`);function Y(e,t,n,r=100,i=0,a=180){let o=[],s=i*Math.PI/180,c=(a*Math.PI/180-s)/(r-1);for(let i=0;i<r;i++){let r=s+i*c,a=e+n*Math.cos(r),l=t+n*Math.sin(r);o.push({x:-a,y:-l})}return o}n(Y,`generateCirclePoints`);async function Fe(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let{shapeSvg:a,bbox:o,label:s}=await P(e,n,L(n)),c=n.look===`neo`?18:n.padding??0,l=n.look===`neo`?12:n.padding??0,u=o.width+c,d=o.height+l,f=Math.max(5,d*.1),{cssStyles:p}=n,m=[...Y(u/2,-d/2,f,30,-90,0),{x:-u/2-f,y:f},...Y(u/2+f*2,-f,f,20,-180,-270),...Y(u/2+f*2,f,f,20,-90,-180),{x:-u/2-f,y:-d/2},...Y(u/2,d/2,f,20,0,90)],h=[{x:u/2,y:-d/2-f},{x:-u/2,y:-d/2-f},...Y(u/2,-d/2,f,20,-90,0),{x:-u/2-f,y:-f},...Y(u/2+u*.1,-f,f,20,-180,-270),...Y(u/2+u*.1,f,f,20,-90,-180),{x:-u/2-f,y:d/2},...Y(u/2,d/2,f,20,0,90),{x:-u/2,y:d/2+f},{x:u/2,y:d/2+f}],g=t.svg(a),_=x(n,{fill:`none`});n.look!==`handDrawn`&&(_.roughness=0,_.fillStyle=`solid`);let v=R(m).replace(`Z`,``),y=g.path(v,_),b=R(h),C=g.path(b,{..._}),w=a.insert(`g`,`:first-child`);return w.insert(()=>C,`:first-child`).attr(`stroke-opacity`,0),w.insert(()=>y,`:first-child`),w.attr(`class`,`text`),p&&n.look!==`handDrawn`&&w.selectAll(`path`).attr(`style`,p),i&&n.look!==`handDrawn`&&w.selectAll(`path`).attr(`style`,i),w.attr(`transform`,`translate(${f}, 0)`),s.attr(`transform`,`translate(${-u/2+f-(o.x-(o.left??0))},${-d/2+(n.padding??0)/2-(o.y-(o.top??0))})`),I(n,w),n.intersect=function(e){return K.polygon(n,h,e)},a}n(Fe,`curlyBraceLeft`);function X(e,t,n,r=100,i=0,a=180){let o=[],s=i*Math.PI/180,c=(a*Math.PI/180-s)/(r-1);for(let i=0;i<r;i++){let r=s+i*c,a=e+n*Math.cos(r),l=t+n*Math.sin(r);o.push({x:a,y:l})}return o}n(X,`generateCirclePoints`);async function Ie(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let{shapeSvg:a,bbox:o,label:s}=await P(e,n,L(n)),c=n.look===`neo`?18:n.padding??0,l=n.look===`neo`?12:n.padding??0,u=o.width+(n.look===`neo`?c*2:c),d=o.height+(n.look===`neo`?l*2:l),f=Math.max(5,d*.1),{cssStyles:p}=n,m=[...X(u/2,-d/2,f,20,-90,0),{x:u/2+f,y:-f},...X(u/2+f*2,-f,f,20,-180,-270),...X(u/2+f*2,f,f,20,-90,-180),{x:u/2+f,y:d/2},...X(u/2,d/2,f,20,0,90)],h=[{x:-u/2,y:-d/2-f},{x:u/2,y:-d/2-f},...X(u/2,-d/2,f,20,-90,0),{x:u/2+f,y:-f},...X(u/2+f*2,-f,f,20,-180,-270),...X(u/2+f*2,f,f,20,-90,-180),{x:u/2+f,y:d/2},...X(u/2,d/2,f,20,0,90),{x:u/2,y:d/2+f},{x:-u/2,y:d/2+f}],g=t.svg(a),_=x(n,{fill:`none`});n.look!==`handDrawn`&&(_.roughness=0,_.fillStyle=`solid`);let v=R(m).replace(`Z`,``),y=g.path(v,_),b=R(h),C=g.path(b,{..._}),w=a.insert(`g`,`:first-child`);return w.insert(()=>C,`:first-child`).attr(`stroke-opacity`,0),w.insert(()=>y,`:first-child`),w.attr(`class`,`text`),p&&n.look!==`handDrawn`&&w.selectAll(`path`).attr(`style`,p),i&&n.look!==`handDrawn`&&w.selectAll(`path`).attr(`style`,i),w.attr(`transform`,`translate(${-f}, 0)`),s.attr(`transform`,`translate(${-u/2+(n.padding??0)/2-(o.x-(o.left??0))},${-d/2+(n.padding??0)/2-(o.y-(o.top??0))})`),I(n,w),n.intersect=function(e){return K.polygon(n,h,e)},a}n(Ie,`curlyBraceRight`);function Z(e,t,n,r=100,i=0,a=180){let o=[],s=i*Math.PI/180,c=(a*Math.PI/180-s)/(r-1);for(let i=0;i<r;i++){let r=s+i*c,a=e+n*Math.cos(r),l=t+n*Math.sin(r);o.push({x:-a,y:-l})}return o}n(Z,`generateCirclePoints`);async function Le(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let{shapeSvg:a,bbox:o,label:s}=await P(e,n,L(n)),c=n.look===`neo`?18:n.padding??0,l=n.look===`neo`?12:n.padding??0,u=o.width+(n.look===`neo`?c*2:c),d=o.height+(n.look===`neo`?l*2:l),f=Math.max(5,d*.1),{cssStyles:p}=n,m=[...Z(u/2,-d/2,f,30,-90,0),{x:-u/2-f,y:f},...Z(u/2+f*2,-f,f,20,-180,-270),...Z(u/2+f*2,f,f,20,-90,-180),{x:-u/2-f,y:-d/2},...Z(u/2,d/2,f,20,0,90)],h=[...Z(-u/2+f+f/2,-d/2,f,20,-90,-180),{x:u/2-f/2,y:f},...Z(-u/2-f/2,-f,f,20,0,90),...Z(-u/2-f/2,f,f,20,-90,0),{x:u/2-f/2,y:-f},...Z(-u/2+f+f/2,d/2,f,30,-180,-270)],g=[{x:u/2,y:-d/2-f},{x:-u/2,y:-d/2-f},...Z(u/2,-d/2,f,20,-90,0),{x:-u/2-f,y:-f},...Z(u/2+f*2,-f,f,20,-180,-270),...Z(u/2+f*2,f,f,20,-90,-180),{x:-u/2-f,y:d/2},...Z(u/2,d/2,f,20,0,90),{x:-u/2,y:d/2+f},{x:u/2-f-f/2,y:d/2+f},...Z(-u/2+f+f/2,-d/2,f,20,-90,-180),{x:u/2-f/2,y:f},...Z(-u/2-f/2,-f,f,20,0,90),...Z(-u/2-f/2,f,f,20,-90,0),{x:u/2-f/2,y:-f},...Z(-u/2+f+f/2,d/2,f,30,-180,-270)],_=t.svg(a),v=x(n,{fill:`none`});n.look!==`handDrawn`&&(v.roughness=0,v.fillStyle=`solid`);let y=R(m).replace(`Z`,``),b=_.path(y,v),C=R(h).replace(`Z`,``),w=_.path(C,v),T=R(g),E=_.path(T,{...v}),D=a.insert(`g`,`:first-child`);return D.insert(()=>E,`:first-child`).attr(`stroke-opacity`,0),D.insert(()=>b,`:first-child`),D.insert(()=>w,`:first-child`),D.attr(`class`,`text`),p&&n.look!==`handDrawn`&&D.selectAll(`path`).attr(`style`,p),i&&n.look!==`handDrawn`&&D.selectAll(`path`).attr(`style`,i),D.attr(`transform`,`translate(${f-f/4}, 0)`),s.attr(`transform`,`translate(${-u/2+(n.padding??0)/2-(o.x-(o.left??0))},${-d/2+(n.padding??0)/2-(o.y-(o.top??0))})`),I(n,D),n.intersect=function(e){return K.polygon(n,g,e)},a}n(Le,`curlyBraces`);async function Re(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.padding??0,o=n.look===`neo`?16:a,s=n.look===`neo`?12:a,{shapeSvg:c,bbox:l}=await P(e,n,L(n)),u=Math.max(5,l.height+s*2,n?.height??0),d=u/2,f=d-Math.sqrt(Math.max(0,d**2-(l.height/2)**2)),p=Math.max(u/4,f),m=Math.max(20,l.width+o*2+p*2,(l.width+o*2)*1.25,n?.width??0),{cssStyles:h}=n,g=t.svg(c),_=x(n,{});n.look!==`handDrawn`&&(_.roughness=0,_.fillStyle=`solid`);let v=m,y=u,b=v-d,C=y/4,w=[{x:b,y:0},{x:C,y:0},{x:0,y:y/2},{x:C,y},{x:b,y},...B(-b,-y/2,d,50,270,90)],T=R(w),E=g.path(T,_),D=c.insert(()=>E,`:first-child`);return D.attr(`class`,`basic label-container outer-path`),h&&n.look!==`handDrawn`&&D.selectChildren(`path`).attr(`style`,h),i&&n.look!==`handDrawn`&&D.selectChildren(`path`).attr(`style`,i),D.attr(`transform`,`translate(${-m/2}, ${-u/2})`),I(n,D),n.intersect=function(e){return K.polygon(n,w,e)},c}n(Re,`curvedTrapezoid`);async function ze(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let{shapeSvg:a,bbox:o,label:s}=await P(e,n,L(n)),c=n.padding??20,l=Math.max(o.width+c*2,n.width??0,100),u=Math.min(Math.max(l*.23,16),56),d=u*.27,f=Math.max(o.height+c*2,n.height?n.height-(2*u-d):0),p=Math.min(l*.177,f*.45),m=f+2*u-d,h=-m/2,g=h+2*u-d,_=a.insert(`g`,`:first-child`).attr(`class`,`basic label-container`),{cssStyles:v}=n;if(n.look===`handDrawn`){let e=t.svg(a),r=x(n,{}),i=e.path(q(-l/2,g,l,f,p),r),o=e.circle(0,h+u,u*2,r);_.insert(()=>o,`:first-child`),_.insert(()=>i,`:first-child`),v&&_.attr(`style`,v)}else _.append(`rect`).attr(`x`,-l/2).attr(`y`,g).attr(`width`,l).attr(`height`,f).attr(`rx`,p).attr(`ry`,p).attr(`style`,i),_.append(`circle`).attr(`cx`,0).attr(`cy`,h+u).attr(`r`,u).attr(`style`,i);I(n,_);let y=g+f/2;s.attr(`transform`,`translate(${-(o.width/2)-(o.x-(o.left??0))}, ${y-o.height/2-(o.y-(o.top??0))})`);let b=h+u,C=Math.asin(Math.min(1,(g-b)/u))*180/Math.PI,w=[...B(0,-b,u,24,180+C,-C),...B(-(-l/2+p),-(g+p),p,12,90,0),...B(-(-l/2+p),-(m/2-p),p,12,360,270),...B(-(l/2-p),-(m/2-p),p,12,270,180),...B(-(l/2-p),-(g+p),p,12,180,90)];return n.intersect=function(e){return K.polygon(n,w,e)},a}n(ze,`person`);var Be=n((e,t,n,r,i,a)=>[`M${e},${t+a}`,`a${i},${a} 0,0,0 ${n},0`,`a${i},${a} 0,0,0 ${-n},0`,`l0,${r}`,`a${i},${a} 0,0,0 ${n},0`,`l0,${-r}`].join(` `),`createCylinderPathD`),Ve=n((e,t,n,r,i,a)=>[`M${e},${t+a}`,`M${e+n},${t+a}`,`a${i},${a} 0,0,0 ${-n},0`,`l0,${r}`,`a${i},${a} 0,0,0 ${n},0`,`l0,${-r}`].join(` `),`createOuterCylinderPathD`),He=n((e,t,n,r,i,a)=>[`M${e-n/2},${-r/2}`,`a${i},${a} 0,0,0 ${n},0`].join(` `),`createInnerCylinderPathD`),Ue=8,We=8;async function Ge(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.padding??0,o=n.look===`neo`?24:a,s=n.look===`neo`?24:a,c=n.width??0;if(n.width&&(n.width-=s,n.width<We&&(n.width=We)),n.height){let e=c/2/(2.5+c/50);n.height=n.height-o-e*3,n.height<Ue&&(n.height=Ue)}let{shapeSvg:l,bbox:u,label:d}=await P(e,n,L(n)),f=Math.max(n.width??0,u.width)+s,p=f/2,m=p/(2.5+f/50),h=Math.max(n.height??0,u.height)+o+m,g,{cssStyles:_}=n;if(n.look===`handDrawn`){let e=t.svg(l),r=Ve(0,0,f,h,p,m),i=He(0,m,f,h,p,m),a=x(n,{}),o=e.path(r,a),s=e.path(i,x(n,{fill:`none`}));g=l.insert(()=>s,`:first-child`),g=l.insert(()=>o,`:first-child`),g.attr(`class`,`basic label-container`),_&&g.attr(`style`,_)}else{let e=Be(0,0,f,h,p,m);g=l.insert(`path`,`:first-child`).attr(`d`,e).attr(`class`,`basic label-container outer-path`).attr(`style`,v(_)).attr(`style`,i)}return g.attr(`label-offset-y`,m),g.attr(`transform`,`translate(${-f/2}, ${-(h/2+m)})`),I(n,g),d.attr(`transform`,`translate(${-(u.width/2)-(u.x-(u.left??0))}, ${-(u.height/2)+(n.padding??0)/1.5-(u.y-(u.top??0))})`),n.intersect=function(e){let t=K.rect(n,e),r=t.x-(n.x??0);if(p!=0&&(Math.abs(r)<(n.width??0)/2||Math.abs(r)==(n.width??0)/2&&Math.abs(t.y-(n.y??0))>(n.height??0)/2-m)){let i=m*m*(1-r*r/(p*p));i>0&&(i=Math.sqrt(i)),i=m-i,e.y-(n.y??0)>0&&(i=-i),t.y+=i}return t},l}n(Ge,`cylinder`);async function Ke(e,n,r){let{labelStyles:i,nodeStyles:a}=S(n);n.labelStyle=i;let{shapeSvg:o,bbox:s}=await P(e,n,L(n)),c=Math.max(s.width+r.labelPaddingX*2,n?.width||0),l=Math.max(s.height+r.labelPaddingY*2,n?.height||0),u=-c/2,d=-l/2,f,{rx:p,ry:m}=n,{cssStyles:h}=n;if(r?.rx&&r.ry&&(p=r.rx,m=r.ry),n.look===`handDrawn`){let e=t.svg(o),r=x(n,{}),i=p||m?e.path(q(u,d,c,l,p||0),r):e.rectangle(u,d,c,l,r);f=o.insert(()=>i,`:first-child`),f.attr(`class`,`basic label-container`).attr(`style`,v(h))}else f=o.insert(`rect`,`:first-child`),f.attr(`class`,`basic label-container`).attr(`style`,a).attr(`rx`,v(p)).attr(`ry`,v(m)).attr(`x`,u).attr(`y`,d).attr(`width`,c).attr(`height`,l);return I(n,f,n.look===`handDrawn`?void 0:{width:c,height:l}),n.calcIntersect=function(e,t){return K.rect(e,t)},n.intersect=function(e){return K.rect(n,e)},o}n(Ke,`drawRect`);async function qe(e,n){let{cssClasses:r,labelPaddingX:i,labelPaddingY:a,padding:o,width:s,height:c}=n,l=await Ke(e,n,{rx:0,ry:0,classes:r??``,labelPaddingX:i??(o??0)*2,labelPaddingY:a??o??0});if(n.look===`handDrawn`){let e=t.svg(l),r=x(n,{}),i=l.select(`.basic.label-container > path:nth-child(2)`),a=i.node();if(!a)return l;let o=null;if(a instanceof SVGGraphicsElement)o=a.getBBox();else return l;return l.insert(()=>e.line(o.x,o.y,o.x+o.width,o.y,r),`.basic.label-container g.label`),l.insert(()=>e.line(o.x,o.y+o.height,o.x+o.width,o.y+o.height,r),`.basic.label-container g.label`),i.remove(),l}let u=l.select(`.basic.label-container`),d=(Number(u.attr(`width`))||s)??0,f=(Number(u.attr(`height`))||c)??0;return d>0&&f>0&&u.attr(`stroke-dasharray`,`${d} ${f}`),l}n(qe,`datastore`);async function Je(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.look===`neo`?16:n.padding??0,o=n.look===`neo`?16:n.padding??0,{shapeSvg:s,bbox:c,label:l}=await P(e,n,L(n)),u=c.width+a,d=c.height+o,f=d*.2,p=-u/2,m=-d/2-f/2,{cssStyles:h}=n,g=t.svg(s),_=x(n,{});n.look!==`handDrawn`&&(_.roughness=0,_.fillStyle=`solid`);let v=[{x:p,y:m+f},{x:-p,y:m+f},{x:-p,y:-m},{x:p,y:-m},{x:p,y:m},{x:-p,y:m},{x:-p,y:m+f}],y=g.polygon(v.map(e=>[e.x,e.y]),_),b=s.insert(()=>y,`:first-child`);return b.attr(`class`,`basic label-container outer-path`),h&&n.look!==`handDrawn`&&b.selectAll(`path`).attr(`style`,h),i&&n.look!==`handDrawn`&&b.selectAll(`path`).attr(`style`,i),l.attr(`transform`,`translate(${p+(n.padding??0)/2-(c.x-(c.left??0))}, ${m+f+(n.padding??0)/2-(c.y-(c.top??0))})`),I(n,b),n.intersect=function(e){return K.rect(n,e)},s}n(Je,`dividedRectangle`);async function Ye(e,n){let{labelStyles:i,nodeStyles:a}=S(n),o=n.look===`neo`?12:5;n.labelStyle=i;let s=n.padding??0,c=n.look===`neo`?16:s,{shapeSvg:l,bbox:u}=await P(e,n,L(n)),d=Math.sqrt(u.width**2+u.height**2)/2,f=(n?.width?n?.width/2:d)+(c??0),p=f+o,m,{cssStyles:h}=n;if(n.look===`handDrawn`){let e=t.svg(l),r=x(n,{roughness:.2,strokeWidth:2.5}),i=x(n,{roughness:.2,strokeWidth:1.5}),a=e.circle(0,0,p*2,r),o=e.circle(0,0,f*2,i);m=l.insert(`g`,`:first-child`),m.attr(`class`,v(n.cssClasses)).attr(`style`,v(h)),m.node()?.appendChild(a),m.node()?.appendChild(o)}else{m=l.insert(`g`,`:first-child`);let e=m.insert(`circle`,`:first-child`),t=m.insert(`circle`);m.attr(`class`,`basic label-container`).attr(`style`,a),e.attr(`class`,`outer-circle`).attr(`style`,a).attr(`r`,p).attr(`cx`,0).attr(`cy`,0),t.attr(`class`,`inner-circle`).attr(`style`,a).attr(`r`,f).attr(`cx`,0).attr(`cy`,0)}return I(n,m),n.intersect=function(e){return r.info(`DoubleCircle intersect`,n,p,e),K.circle(n,p,e)},l}n(Ye,`doublecircle`);async function Xe(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let{shapeSvg:a,bbox:o,halfPadding:s}=await P(e,n,L(n)),{theme:c,themeVariables:l}=d();T(a,n.colorIndex,c,l.borderColorArray);let u=s??10,f=o.width/2+u*2,p=o.height/2+u*2,m,{cssStyles:h}=n;if(n.look===`handDrawn`){let e=t.svg(a),r=x(n,{}),i=e.ellipse(0,0,f*2,p*2,r);m=a.insert(()=>i,`:first-child`),m.attr(`class`,`basic label-container`),h&&m.attr(`style`,h)}else m=a.insert(`ellipse`,`:first-child`).attr(`class`,`basic label-container`).attr(`style`,i).attr(`rx`,f).attr(`ry`,p).attr(`cx`,0).attr(`cy`,0);return n.width=f*2,n.height=p*2,I(n,m),n.calcIntersect=function(e,t){let n=e.width/2,r=e.height/2;return K.ellipse(e,n,r,t)},n.intersect=function(e){return K.ellipse(n,f,p,e)},a}n(Xe,`usecaseEllipse`);function Ze(e,n,{config:{themeVariables:i}}){let{labelStyles:a,nodeStyles:o}=S(n);n.label=``,n.labelStyle=a;let s=e.insert(`g`).attr(`class`,L(n)).attr(`id`,n.domId??n.id),{cssStyles:c}=n,l=t.svg(s),{nodeBorder:u}=i,d=x(n,{fillStyle:`solid`});n.look!==`handDrawn`&&(d.roughness=0);let f=l.circle(0,0,14,d),p=s.insert(()=>f,`:first-child`);return p.selectAll(`path`).attr(`style`,`fill: ${u} !important;`),c&&c.length>0&&n.look!==`handDrawn`&&p.selectAll(`path`).attr(`style`,c),o&&n.look!==`handDrawn`&&p.selectAll(`path`).attr(`style`,o),I(n,p),n.intersect=function(e){return r.info(`filledCircle intersect`,n,{radius:7,point:e}),K.circle(n,7,e)},s}n(Ze,`filledCircle`);var Qe=10,$e=10;async function et(e,n){let{labelStyles:i,nodeStyles:a}=S(n);n.labelStyle=i;let o=n.padding??0,s=n.look===`neo`?o*2:o;(n.width||n.height)&&(n.height=n?.height??0,n.height<Qe&&(n.height=Qe),n.width=(n?.width??0)-s-s/2,n.width<$e&&(n.width=$e));let{shapeSvg:c,bbox:l,label:u}=await P(e,n,L(n)),d=(n?.width?n?.width:l.width)+(s??0),f=n?.height?n?.height:d+l.height,p=f,m=[{x:0,y:-f},{x:p,y:-f},{x:p/2,y:0}],{cssStyles:h}=n,g=t.svg(c),_=x(n,{});n.look!==`handDrawn`&&(_.roughness=0,_.fillStyle=`solid`);let v=R(m),y=g.path(v,_),b=c.insert(()=>y,`:first-child`).attr(`transform`,`translate(${-f/2}, ${f/2})`).attr(`class`,`outer-path`);return h&&n.look!==`handDrawn`&&b.selectChildren(`path`).attr(`style`,h),a&&n.look!==`handDrawn`&&b.selectChildren(`path`).attr(`style`,a),n.width=d,n.height=f,I(n,b),u.attr(`transform`,`translate(${-l.width/2-(l.x-(l.left??0))}, ${-f/2+(n.padding??0)/2+(l.y-(l.top??0))})`),n.intersect=function(e){return r.info(`Triangle intersect`,n,m,e),K.polygon(n,m,e)},c}n(et,`flippedTriangle`);async function tt(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let{shapeSvg:a,bbox:o,label:s}=await P(e,n,L(n)),c=n.padding??12,l=Math.max(o.width+c*2,n.width??0,90),u=o.height+c*2,d=Math.max(Math.min(u*.16,14),8),f=Math.max(u+d,n.height??0),p=f-d,m=Math.max(l*.38,28),h=-f/2,g=[{x:-l/2,y:h},{x:-l/2+m,y:h},{x:-l/2+m,y:h+d},{x:l/2,y:h+d},{x:l/2,y:f/2},{x:-l/2,y:f/2}],_=[`M${g[0].x},${g[0].y}`,...g.slice(1).map(e=>`L${e.x},${e.y}`),`Z`].join(` `),{cssStyles:v}=n,y;if(n.look===`handDrawn`){let e=t.svg(a).path(_,x(n,{}));y=a.insert(()=>e,`:first-child`).attr(`class`,`basic label-container`),v&&y.attr(`style`,v)}else y=a.insert(`path`,`:first-child`).attr(`d`,_).attr(`class`,`basic label-container`).attr(`style`,i);n.look===`handDrawn`?I(n,y):I(n,y,{width:l,height:f});let b=h+d+p/2;return s.attr(`transform`,`translate(${-(o.width/2)-(o.x-(o.left??0))}, ${b-o.height/2-(o.y-(o.top??0))})`),n.intersect=function(e){return K.polygon(n,g,e)},a}n(tt,`folder`);function nt(e,n,{dir:r,config:{state:i,themeVariables:a}}){let{nodeStyles:o}=S(n);n.label=``;let s=e.insert(`g`).attr(`class`,L(n)).attr(`id`,n.domId??n.id),{cssStyles:c}=n,l=Math.max(70,n?.width??0),u=Math.max(10,n?.height??0);(r===`LR`||r===`RL`)&&(l=Math.max(10,n?.width??0),u=Math.max(70,n?.height??0));let d=-1*l/2,f=-1*u/2,p=t.svg(s),m=x(n,{stroke:a.lineColor,fill:a.lineColor});n.look!==`handDrawn`&&(m.roughness=0,m.fillStyle=`solid`);let h=p.rectangle(d,f,l,u,m),g=s.insert(()=>h,`:first-child`);c&&n.look!==`handDrawn`&&g.selectAll(`path`).attr(`style`,c),o&&n.look!==`handDrawn`&&g.selectAll(`path`).attr(`style`,o),I(n,g);let _=i?.padding??0;return n.width&&n.height&&(n.width+=_/2||0,n.height+=_/2||0),n.intersect=function(e){return K.rect(n,e)},s}n(nt,`forkJoin`);async function rt(e,n){let{labelStyles:i,nodeStyles:a}=S(n);n.labelStyle=i;let o=n.look===`neo`?16:n.padding??0,s=n.look===`neo`?12:n.padding??0;(n.width||n.height)&&(n.height=(n?.height??0)-s*2,n.height<10&&(n.height=10),n.width=(n?.width??0)-o*2,n.width<15&&(n.width=15));let{shapeSvg:c,bbox:l}=await P(e,n,L(n)),u=(n?.height?n?.height:Math.max(10,l.height))+s*2,d=u/2,f=d-Math.sqrt(Math.max(0,d**2-(l.height/2)**2)),p=(n?.width?n?.width:Math.max(15,l.width)+f*2)+o*2,{cssStyles:m}=n,h=t.svg(c),g=x(n,{});n.look!==`handDrawn`&&(g.roughness=0,g.fillStyle=`solid`);let _=[{x:-p/2,y:-u/2},{x:p/2-d,y:-u/2},...B(-p/2+d,0,d,50,90,270),{x:p/2-d,y:u/2},{x:-p/2,y:u/2}],v=R(_),y=h.path(v,g),b=c.insert(()=>y,`:first-child`);return b.attr(`class`,`basic label-container outer-path`),m&&n.look!==`handDrawn`&&b.selectChildren(`path`).attr(`style`,m),a&&n.look!==`handDrawn`&&b.selectChildren(`path`).attr(`style`,a),I(n,b),n.intersect=function(e){return r.info(`Pill intersect`,n,{radius:d,point:e}),K.polygon(n,_,e)},c}n(rt,`halfRoundedRectangle`);var it=n((e,t,n,r,i)=>[`M${e+i},${t}`,`L${e+n-i},${t}`,`L${e+n},${t-r/2}`,`L${e+n-i},${t-r}`,`L${e+i},${t-r}`,`L${e},${t-r/2}`,`Z`].join(` `),`createHexagonPathD`);async function at(e,n){let{labelStyles:r,nodeStyles:i}=S(n),a=n.look===`neo`?3.5:4;n.labelStyle=r;let o=n.padding??0,s=n.look===`neo`?70:o,c=n.look===`neo`?32:o;if(n.width||n.height){let e=(n.height??0)/a;n.width=(n?.width??0)-2*e-c,n.height=(n.height??0)-s}let{shapeSvg:l,bbox:u}=await P(e,n,L(n)),d=(n?.height?n?.height:u.height)+s,f=d/a,p=(n?.width?n?.width:u.width)+2*f+c,m=[{x:f,y:0},{x:p-f,y:0},{x:p,y:-d/2},{x:p-f,y:-d},{x:f,y:-d},{x:0,y:-d/2}],h,{cssStyles:g}=n;if(n.look===`handDrawn`){let e=t.svg(l),r=x(n,{}),i=it(0,0,p,d,f),a=e.path(i,r);h=l.insert(()=>a,`:first-child`).attr(`transform`,`translate(${-p/2}, ${d/2})`),g&&h.attr(`style`,g)}else h=J(l,p,d,m);return i&&h.attr(`style`,i),n.width=p,n.height=d,I(n,h),n.intersect=function(e){return K.polygon(n,m,e)},l}n(at,`hexagon`);async function ot(e,n){let{labelStyles:i,nodeStyles:a}=S(n);n.label=``,n.labelStyle=i;let{shapeSvg:o}=await P(e,n,L(n)),s=Math.max(30,n?.width??0),c=Math.max(30,n?.height??0),{cssStyles:l}=n,u=t.svg(o),d=x(n,{});n.look!==`handDrawn`&&(d.roughness=0,d.fillStyle=`solid`);let f=[{x:0,y:0},{x:s,y:0},{x:0,y:c},{x:s,y:c}],p=R(f),m=u.path(p,d),h=o.insert(()=>m,`:first-child`);return h.attr(`class`,`basic label-container outer-path`),l&&n.look!==`handDrawn`&&h.selectChildren(`path`).attr(`style`,l),a&&n.look!==`handDrawn`&&h.selectChildren(`path`).attr(`style`,a),h.attr(`transform`,`translate(${-s/2}, ${-c/2})`),I(n,h),n.intersect=function(e){return r.info(`Pill intersect`,n,{points:f}),K.polygon(n,f,e)},o}n(ot,`hourglass`);async function st(e,n,{config:{themeVariables:i,flowchart:a}}){let{labelStyles:o}=S(n);n.labelStyle=o;let s=n.assetHeight??48,c=n.assetWidth??48,l=Math.max(s,c),u=a?.wrappingWidth;n.width=Math.max(l,u??0);let{shapeSvg:d,bbox:f,label:p}=await P(e,n,`icon-shape default`),h=n.pos===`t`,g=l,_=l,{nodeBorder:v}=i,{stylesMap:y}=w(n),b=-_/2,C=-g/2,T=n.label?8:0,E=t.svg(d),D=x(n,{stroke:`none`,fill:`none`});n.look!==`handDrawn`&&(D.roughness=0,D.fillStyle=`solid`);let O=E.rectangle(b,C,_,g,D),k=Math.max(_,f.width),A=g+f.height+T,j=E.rectangle(-k/2,-A/2,k,A,{...D,fill:`transparent`,stroke:`none`}),M=d.insert(()=>O,`:first-child`),N=d.insert(()=>j);if(n.icon){let e=d.append(`g`);e.html(`<g>${await m(n.icon,{height:l,width:l,fallbackPrefix:``})}</g>`);let t=e.node().getBBox(),r=t.width,i=t.height,a=t.x,o=t.y;e.attr(`transform`,`translate(${-r/2-a},${h?f.height/2+T/2-i/2-o:-f.height/2-T/2-i/2-o})`),e.attr(`style`,`color: ${y.get(`stroke`)??v};`)}return p.attr(`transform`,`translate(${-f.width/2-(f.x-(f.left??0))},${h?-A/2:A/2-f.height})`),M.attr(`transform`,`translate(0,${h?f.height/2+T/2:-f.height/2-T/2})`),I(n,N),n.intersect=function(e){if(r.info(`iconSquare intersect`,n,e),!n.label)return K.rect(n,e);let t=n.x??0,i=n.y??0,a=n.height??0,o=[];return o=h?[{x:t-f.width/2,y:i-a/2},{x:t+f.width/2,y:i-a/2},{x:t+f.width/2,y:i-a/2+f.height+T},{x:t+_/2,y:i-a/2+f.height+T},{x:t+_/2,y:i+a/2},{x:t-_/2,y:i+a/2},{x:t-_/2,y:i-a/2+f.height+T},{x:t-f.width/2,y:i-a/2+f.height+T}]:[{x:t-_/2,y:i-a/2},{x:t+_/2,y:i-a/2},{x:t+_/2,y:i-a/2+g},{x:t+f.width/2,y:i-a/2+g},{x:t+f.width/2/2,y:i+a/2},{x:t-f.width/2,y:i+a/2},{x:t-f.width/2,y:i-a/2+g},{x:t-_/2,y:i-a/2+g}],K.polygon(n,o,e)},d}n(st,`icon`);async function ct(e,n,{config:{themeVariables:i,flowchart:a}}){let{labelStyles:o}=S(n);n.labelStyle=o;let s=n.assetHeight??48,c=n.assetWidth??48,l=Math.max(s,c),u=a?.wrappingWidth;n.width=Math.max(l,u??0);let{shapeSvg:d,bbox:f,label:p}=await P(e,n,`icon-shape default`),h=n.label?8:0,g=n.pos===`t`,{nodeBorder:_,mainBkg:v}=i,{stylesMap:y}=w(n),b=t.svg(d),C=x(n,{});n.look!==`handDrawn`&&(C.roughness=0,C.fillStyle=`solid`),C.stroke=y.get(`fill`)??v;let T=d.append(`g`);n.icon&&T.html(`<g>${await m(n.icon,{height:l,width:l,fallbackPrefix:``})}</g>`);let E=T.node().getBBox(),D=E.width,O=E.height,k=E.x,A=E.y,j=Math.max(D,O)*Math.SQRT2+40,M=b.circle(0,0,j,C),N=Math.max(j,f.width),F=j+f.height+h,L=b.rectangle(-N/2,-F/2,N,F,{...C,fill:`transparent`,stroke:`none`}),R=d.insert(()=>M,`:first-child`),z=d.insert(()=>L);return T.attr(`transform`,`translate(${-D/2-k},${g?f.height/2+h/2-O/2-A:-f.height/2-h/2-O/2-A})`),T.attr(`style`,`color: ${y.get(`stroke`)??_};`),p.attr(`transform`,`translate(${-f.width/2-(f.x-(f.left??0))},${g?-F/2:F/2-f.height})`),R.attr(`transform`,`translate(0,${g?f.height/2+h/2:-f.height/2-h/2})`),I(n,z),n.intersect=function(e){return r.info(`iconSquare intersect`,n,e),K.rect(n,e)},d}n(ct,`iconCircle`);async function lt(e,n,{config:{themeVariables:i,flowchart:a}}){let{labelStyles:o}=S(n);n.labelStyle=o;let s=n.assetHeight??48,c=n.assetWidth??48,l=Math.max(s,c),u=a?.wrappingWidth;n.width=Math.max(l,u??0);let{shapeSvg:d,bbox:f,halfPadding:p,label:h}=await P(e,n,`icon-shape default`),g=n.pos===`t`,_=l+p*2,v=l+p*2,{nodeBorder:y,mainBkg:b}=i,{stylesMap:C}=w(n),T=-v/2,E=-_/2,D=n.label?8:0,O=t.svg(d),k=x(n,{});n.look!==`handDrawn`&&(k.roughness=0,k.fillStyle=`solid`),k.stroke=C.get(`fill`)??b;let A=O.path(q(T,E,v,_,5),k),j=Math.max(v,f.width),M=_+f.height+D,N=O.rectangle(-j/2,-M/2,j,M,{...k,fill:`transparent`,stroke:`none`}),F=d.insert(()=>A,`:first-child`).attr(`class`,`icon-shape2`),L=d.insert(()=>N);if(n.icon){let e=d.append(`g`);e.html(`<g>${await m(n.icon,{height:l,width:l,fallbackPrefix:``})}</g>`);let t=e.node().getBBox(),r=t.width,i=t.height,a=t.x,o=t.y;e.attr(`transform`,`translate(${-r/2-a},${g?f.height/2+D/2-i/2-o:-f.height/2-D/2-i/2-o})`),e.attr(`style`,`color: ${C.get(`stroke`)??y};`)}return h.attr(`transform`,`translate(${-f.width/2-(f.x-(f.left??0))},${g?-M/2:M/2-f.height})`),F.attr(`transform`,`translate(0,${g?f.height/2+D/2:-f.height/2-D/2})`),I(n,L),n.intersect=function(e){if(r.info(`iconSquare intersect`,n,e),!n.label)return K.rect(n,e);let t=n.x??0,i=n.y??0,a=n.height??0,o=[];return o=g?[{x:t-f.width/2,y:i-a/2},{x:t+f.width/2,y:i-a/2},{x:t+f.width/2,y:i-a/2+f.height+D},{x:t+v/2,y:i-a/2+f.height+D},{x:t+v/2,y:i+a/2},{x:t-v/2,y:i+a/2},{x:t-v/2,y:i-a/2+f.height+D},{x:t-f.width/2,y:i-a/2+f.height+D}]:[{x:t-v/2,y:i-a/2},{x:t+v/2,y:i-a/2},{x:t+v/2,y:i-a/2+_},{x:t+f.width/2,y:i-a/2+_},{x:t+f.width/2/2,y:i+a/2},{x:t-f.width/2,y:i+a/2},{x:t-f.width/2,y:i-a/2+_},{x:t-v/2,y:i-a/2+_}],K.polygon(n,o,e)},d}n(lt,`iconRounded`);async function ut(e,n,{config:{themeVariables:i,flowchart:a}}){let{labelStyles:o}=S(n);n.labelStyle=o;let s=n.assetHeight??48,c=n.assetWidth??48,l=Math.max(s,c),u=a?.wrappingWidth;n.width=Math.max(l,u??0);let{shapeSvg:d,bbox:f,halfPadding:p,label:h}=await P(e,n,`icon-shape default`),g=n.pos===`t`,_=l+p*2,v=l+p*2,{nodeBorder:y,mainBkg:b}=i,{stylesMap:C}=w(n),T=-v/2,E=-_/2,D=n.label?8:0,O=t.svg(d),k=x(n,{});n.look!==`handDrawn`&&(k.roughness=0,k.fillStyle=`solid`),k.stroke=C.get(`fill`)??b;let A=O.path(q(T,E,v,_,.1),k),j=Math.max(v,f.width),M=_+f.height+D,N=O.rectangle(-j/2,-M/2,j,M,{...k,fill:`transparent`,stroke:`none`}),F=d.insert(()=>A,`:first-child`),L=d.insert(()=>N);if(n.icon){let e=d.append(`g`);e.html(`<g>${await m(n.icon,{height:l,width:l,fallbackPrefix:``})}</g>`);let t=e.node().getBBox(),r=t.width,i=t.height,a=t.x,o=t.y;e.attr(`transform`,`translate(${-r/2-a},${g?f.height/2+D/2-i/2-o:-f.height/2-D/2-i/2-o})`),e.attr(`style`,`color: ${C.get(`stroke`)??y};`)}return h.attr(`transform`,`translate(${-f.width/2-(f.x-(f.left??0))},${g?-M/2:M/2-f.height})`),F.attr(`transform`,`translate(0,${g?f.height/2+D/2:-f.height/2-D/2})`),I(n,L),n.intersect=function(e){if(r.info(`iconSquare intersect`,n,e),!n.label)return K.rect(n,e);let t=n.x??0,i=n.y??0,a=n.height??0,o=[];return o=g?[{x:t-f.width/2,y:i-a/2},{x:t+f.width/2,y:i-a/2},{x:t+f.width/2,y:i-a/2+f.height+D},{x:t+v/2,y:i-a/2+f.height+D},{x:t+v/2,y:i+a/2},{x:t-v/2,y:i+a/2},{x:t-v/2,y:i-a/2+f.height+D},{x:t-f.width/2,y:i-a/2+f.height+D}]:[{x:t-v/2,y:i-a/2},{x:t+v/2,y:i-a/2},{x:t+v/2,y:i-a/2+_},{x:t+f.width/2,y:i-a/2+_},{x:t+f.width/2/2,y:i+a/2},{x:t-f.width/2,y:i+a/2},{x:t-f.width/2,y:i-a/2+_},{x:t-v/2,y:i-a/2+_}],K.polygon(n,o,e)},d}n(ut,`iconSquare`);async function dt(e,n,{config:{flowchart:i}}){let a=new Image;a.src=n?.img??``,await a.decode();let o=Number(a.naturalWidth.toString().replace(`px`,``)),s=Number(a.naturalHeight.toString().replace(`px`,``));n.imageAspectRatio=o/s;let{labelStyles:c}=S(n);n.labelStyle=c;let l=i?.wrappingWidth;n.defaultWidth=i?.wrappingWidth;let u=Math.max(n.label?l??0:0,n?.assetWidth??o),d=n.constraint===`on`&&n?.assetHeight?n.assetHeight*n.imageAspectRatio:u,f=n.constraint===`on`?d/n.imageAspectRatio:n?.assetHeight??s;n.width=Math.max(d,l??0);let{shapeSvg:p,bbox:m,label:h}=await P(e,n,`image-shape default`),g=n.pos===`t`,_=-d/2,v=-f/2,y=n.label?8:0,b=t.svg(p),C=x(n,{});n.look!==`handDrawn`&&(C.roughness=0,C.fillStyle=`solid`);let w=b.rectangle(_,v,d,f,C),T=Math.max(d,m.width),E=f+m.height+y,D=b.rectangle(-T/2,-E/2,T,E,{...C,fill:`none`,stroke:`none`}),O=p.insert(()=>w,`:first-child`),k=p.insert(()=>D);if(n.img){let e=p.append(`image`);e.attr(`href`,n.img),e.attr(`width`,d),e.attr(`height`,f),e.attr(`preserveAspectRatio`,`none`),e.attr(`transform`,`translate(${-d/2},${g?E/2-f:-E/2})`)}return h.attr(`transform`,`translate(${-m.width/2-(m.x-(m.left??0))},${g?-f/2-m.height/2-y/2:f/2-m.height/2+y/2})`),O.attr(`transform`,`translate(0,${g?m.height/2+y/2:-m.height/2-y/2})`),I(n,k),n.intersect=function(e){if(r.info(`iconSquare intersect`,n,e),!n.label)return K.rect(n,e);let t=n.x??0,i=n.y??0,a=n.height??0,o=[];return o=g?[{x:t-m.width/2,y:i-a/2},{x:t+m.width/2,y:i-a/2},{x:t+m.width/2,y:i-a/2+m.height+y},{x:t+d/2,y:i-a/2+m.height+y},{x:t+d/2,y:i+a/2},{x:t-d/2,y:i+a/2},{x:t-d/2,y:i-a/2+m.height+y},{x:t-m.width/2,y:i-a/2+m.height+y}]:[{x:t-d/2,y:i-a/2},{x:t+d/2,y:i-a/2},{x:t+d/2,y:i-a/2+f},{x:t+m.width/2,y:i-a/2+f},{x:t+m.width/2/2,y:i+a/2},{x:t-m.width/2,y:i+a/2},{x:t-m.width/2,y:i-a/2+f},{x:t-d/2,y:i-a/2+f}],K.polygon(n,o,e)},p}n(dt,`imageSquare`);async function ft(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.padding??0,o=a,s=n.look===`neo`?a*2:a,{shapeSvg:c,bbox:l}=await P(e,n,L(n)),u=Math.max(l.height+o*2,n.height??0),d=Math.max(l.width+s*2,(n.width??0)-u),f=[{x:0,y:0},{x:d,y:0},{x:d+3*u/6,y:-u},{x:-3*u/6,y:-u}],p,{cssStyles:m}=n;if(n.look===`handDrawn`){let e=t.svg(c),r=x(n,{}),i=R(f),a=e.path(i,r);p=c.insert(()=>a,`:first-child`).attr(`transform`,`translate(${-d/2}, ${u/2})`),m&&p.attr(`style`,m)}else p=J(c,d,u,f);return i&&p.attr(`style`,i),n.width=d,n.height=u,I(n,p),n.intersect=function(e){return K.polygon(n,f,e)},c}n(ft,`inv_trapezoid`);async function pt(e,t){let{shapeSvg:n,bbox:r,label:i}=await P(e,t,`label`),a=n.insert(`rect`,`:first-child`);return a.attr(`width`,.1).attr(`height`,.1),n.attr(`class`,`label edgeLabel`),i.attr(`transform`,`translate(${-(r.width/2)-(r.x-(r.left??0))}, ${-(r.height/2)-(r.y-(r.top??0))})`),I(t,a),t.intersect=function(e){return K.rect(t,e)},n}n(pt,`labelRect`);async function mt(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.padding??0,o=a,s=n.look===`neo`?a*2:a,{shapeSvg:c,bbox:l}=await P(e,n,L(n)),u=Math.max(l.height+o,n.height??0),d=Math.max(l.width+s,(n.width??0)-u),f=[{x:0,y:0},{x:d+3*u/6,y:0},{x:d,y:-u},{x:-(3*u)/6,y:-u}],p,{cssStyles:m}=n;if(n.look===`handDrawn`){let e=t.svg(c),r=x(n,{}),i=R(f),a=e.path(i,r);p=c.insert(()=>a,`:first-child`).attr(`transform`,`translate(${-d/2}, ${u/2})`),m&&p.attr(`style`,m)}else p=J(c,d,u,f);return i&&p.attr(`style`,i),n.width=d,n.height=u,I(n,p),n.intersect=function(e){return K.polygon(n,f,e)},c}n(mt,`lean_left`);async function ht(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.padding??0,o=a,s=n.look===`neo`?a*2:a,{shapeSvg:c,bbox:l}=await P(e,n,L(n)),u=Math.max(l.height+o,n.height??0),d=Math.max(l.width+s,(n.width??0)-u),f=[{x:-3*u/6,y:0},{x:d,y:0},{x:d+3*u/6,y:-u},{x:0,y:-u}],p,{cssStyles:m}=n;if(n.look===`handDrawn`){let e=t.svg(c),r=x(n,{}),i=R(f),a=e.path(i,r);p=c.insert(()=>a,`:first-child`).attr(`transform`,`translate(${-d/2}, ${u/2})`),m&&p.attr(`style`,m)}else p=J(c,d,u,f);return i&&p.attr(`style`,i),n.width=d,n.height=u,I(n,p),n.intersect=function(e){return K.polygon(n,f,e)},c}n(ht,`lean_right`);function gt(e,n){let{labelStyles:i,nodeStyles:a}=S(n);n.label=``,n.labelStyle=i;let o=e.insert(`g`).attr(`class`,L(n)).attr(`id`,n.domId??n.id),{cssStyles:s}=n,c=Math.max(35,n?.width??0),l=Math.max(35,n?.height??0),u=[{x:c,y:0},{x:0,y:l+7/2},{x:c-14,y:l+7/2},{x:0,y:2*l},{x:c,y:l-7/2},{x:14,y:l-7/2}],d=t.svg(o),f=x(n,{});n.look!==`handDrawn`&&(f.roughness=0,f.fillStyle=`solid`);let p=R(u),m=d.path(p,f),h=o.insert(()=>m,`:first-child`);return h.attr(`class`,`outer-path`),s&&n.look!==`handDrawn`&&h.selectAll(`path`).attr(`style`,s),a&&n.look!==`handDrawn`&&h.selectAll(`path`).attr(`style`,a),h.attr(`transform`,`translate(-${c/2},${-l})`),I(n,h),n.intersect=function(e){return r.info(`lightningBolt intersect`,n,e),K.polygon(n,u,e)},o}n(gt,`lightningBolt`);var _t=n((e,t,n,r,i,a,o)=>[`M${e},${t+a}`,`a${i},${a} 0,0,0 ${n},0`,`a${i},${a} 0,0,0 ${-n},0`,`l0,${r}`,`a${i},${a} 0,0,0 ${n},0`,`l0,${-r}`,`M${e},${t+a+o}`,`a${i},${a} 0,0,0 ${n},0`].join(` `),`createCylinderPathD`),vt=n((e,t,n,r,i,a,o)=>[`M${e},${t+a}`,`M${e+n},${t+a}`,`a${i},${a} 0,0,0 ${-n},0`,`l0,${r}`,`a${i},${a} 0,0,0 ${n},0`,`l0,${-r}`,`M${e},${t+a+o}`,`a${i},${a} 0,0,0 ${n},0`].join(` `),`createOuterCylinderPathD`),yt=n((e,t,n,r,i,a)=>[`M${e-n/2},${-r/2}`,`a${i},${a} 0,0,0 ${n},0`].join(` `),`createInnerCylinderPathD`),bt=10,xt=10;async function St(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.padding??0,o=n.look===`neo`?16:a,s=n.look===`neo`?24:a;if(n.width||n.height){let e=n.width??0;n.width=(n.width??0)-o,n.width<xt&&(n.width=xt);let t=e/2/(2.5+e/50);n.height=(n.height??0)-s-t*3,n.height<bt&&(n.height=bt)}let{shapeSvg:c,bbox:l,label:u}=await P(e,n,L(n)),d=(n?.width?n?.width:l.width)+o*2,f=d/2,p=f/(2.5+d/50),m=(n?.height?n?.height:l.height)+p+s*2,h=m*.1,g,{cssStyles:_}=n;if(n.look===`handDrawn`){let e=t.svg(c),r=vt(0,0,d,m,f,p,h),i=yt(0,p,d,m,f,p),a=x(n,{}),o=e.path(r,a),s=e.path(i,a);c.insert(()=>s,`:first-child`).attr(`class`,`line`),g=c.insert(()=>o,`:first-child`),g.attr(`class`,`basic label-container`),_&&g.attr(`style`,_)}else{let e=_t(0,0,d,m,f,p,h);g=c.insert(`path`,`:first-child`).attr(`d`,e).attr(`class`,`basic label-container outer-path`).attr(`style`,v(_)).attr(`style`,i)}return g.attr(`label-offset-y`,p),g.attr(`transform`,`translate(${-d/2}, ${-(m/2+p)})`),I(n,g),u.attr(`transform`,`translate(${-(l.width/2)-(l.x-(l.left??0))}, ${-(l.height/2)+p-(l.y-(l.top??0))})`),n.intersect=function(e){let t=K.rect(n,e),r=t.x-(n.x??0);if(f!=0&&(Math.abs(r)<(n.width??0)/2||Math.abs(r)==(n.width??0)/2&&Math.abs(t.y-(n.y??0))>(n.height??0)/2-p)){let i=p*p*(1-r*r/(f*f));i>0&&(i=Math.sqrt(i)),i=p-i,e.y-(n.y??0)>0&&(i=-i),t.y+=i}return t},c}n(St,`linedCylinder`);async function Ct(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.padding??0,o=n.look===`neo`?16:a,s=n.look===`neo`?12:a;(n.width||n.height)&&(n.width=(n.width??0)*10/11-o*2,n.width<10&&(n.width=10),n.height=(n?.height??0)-s*2,n.height<10&&(n.height=10));let{shapeSvg:c,bbox:l,label:u}=await P(e,n,L(n)),d=(n?.width?n?.width:l.width)+(o??0)*2,f=(n?.height?n?.height:l.height)+(s??0)*2,p=n.look===`neo`?f/4:f/8,m=f+p,{cssStyles:h}=n,g=t.svg(c),_=x(n,{});n.look!==`handDrawn`&&(_.roughness=0,_.fillStyle=`solid`);let v=[{x:-d/2-d/2*.1,y:-m/2},{x:-d/2-d/2*.1,y:m/2},...z(-d/2-d/2*.1,m/2,d/2+d/2*.1,m/2,p,.8),{x:d/2+d/2*.1,y:-m/2},{x:-d/2-d/2*.1,y:-m/2},{x:-d/2,y:-m/2},{x:-d/2,y:m/2*1.1},{x:-d/2,y:-m/2}],y=g.polygon(v.map(e=>[e.x,e.y]),_),b=c.insert(()=>y,`:first-child`);return b.attr(`class`,`basic label-container outer-path`),h&&n.look!==`handDrawn`&&b.selectAll(`path`).attr(`style`,h),i&&n.look!==`handDrawn`&&b.selectAll(`path`).attr(`style`,i),b.attr(`transform`,`translate(0,${-p/2})`),u.attr(`transform`,`translate(${-d/2+(n.padding??0)+d/2*.1/2-(l.x-(l.left??0))},${-f/2+(n.padding??0)-p-(l.y-(l.top??0))})`),I(n,b),n.intersect=function(e){return K.polygon(n,v,e)},c}n(Ct,`linedWaveEdgedRect`);var wt=56,Tt=72,Et=8,Dt=2,Ot=8,kt={normal:`usecase-actor-shape usecase-actor-normal`,hollow:`usecase-actor-hollow`,awesome:`usecase-actor-awesome`,icon:`usecase-actor-icon`},At=Math.PI/3,jt=.6,Mt=n((e,t)=>{let n=t*jt,r=t*Math.sqrt(1-jt**2),i=Math.cos(At),a=-Math.sin(At),o=n*-a,s=e+n*i,c=r*i,l=r*a;return`M ${o-c} ${s-l} L ${o+c} ${s+l}`},`businessMarkerPathForCircle`),Nt={normal:Mt(-24,12),hollow:Mt(-23,9),awesome:Mt(-21,13),icon:`M 12 -8 L 26 -26`},Pt=n((e,t,n)=>{let r=(t.x??0)-(t.left??0),i=(t.y??0)-(t.top??0);e.attr(`transform`,`translate(${-t.width/2-r},${n-t.height/2-i})`)},`positionLabel`),Ft=n((e,n,r,i,a=!1)=>{if(n.look===`handDrawn`){let o=t.svg(e).path(r,x(n,a?{fill:`none`}:{}));return e.insert(()=>o,`:first-child`).attr(`class`,i)}let o=e.append(`path`).attr(`class`,i).attr(`d`,r);return a&&o.attr(`fill`,`none`),o},`appendActorPath`),It=n((e,n,r,i,a,o,s=!1)=>{if(n.look===`handDrawn`){let c=t.svg(e).circle(r,i,a*2,x(n,s?{fill:`none`}:{}));return e.insert(()=>c,`:first-child`).attr(`class`,o)}let c=e.append(`circle`).attr(`class`,o).attr(`cx`,r).attr(`cy`,i).attr(`r`,a);return s&&c.attr(`fill`,`none`),c},`appendActorCircle`),Lt=n((e,t,n)=>{t.business&&e.append(`path`).attr(`class`,`usecase-business-marker usecase-actor-business-marker`).attr(`d`,Nt[n]).attr(`fill`,`none`).attr(`style`,`stroke: inherit !important; stroke-width: inherit !important`)},`appendBusinessActorMarker`);async function Rt(e,t,n,r){let{labelStyles:i,nodeStyles:a}=S(t);t.labelStyle=i;let{shapeSvg:o,bbox:s,label:c}=await P(e,n===`icon`||t.stereotype!==void 0?{...t,icon:n===`icon`?void 0:t.icon,stereotype:void 0}:t,L(t,`usecase-actor-variant usecase-actor-${n}`)),l=t.accessibleName??t.label;l&&o.attr(`role`,`img`).attr(`aria-label`,l),c.attr(`class`,`label actor-label usecase-actor-label`);let{theme:u,themeVariables:f}=d();T(o,t.colorIndex,u,f.borderColorArray);let p,m;if(t.stereotype){let e=await F(o,`\xAB${t.stereotype}\xBB`,{labelStyle:i,useHtmlLabels:t.useHtmlLabels,padding:0,centerLabel:!0,width:t.wrappingWidth});p=e.label.attr(`class`,`label usecase-stereotype`),m=e.bbox}let h=o.append(`g`).attr(`class`,`usecase-actor-glyph ${kt[n]}`).attr(`style`,a||null);await r(h,t),Lt(h,t,n);let g=t.padding??Ot,_=m?.height??0,v=Tt+Et+s.height+(m?_+Dt:0),y=Math.max(wt,s.width,m?.width??0)+g*2,b=v+g*2,x=-v/2;h.attr(`transform`,`translate(0,${x+Tt/2})`);let C=x+Tt+Et;return p&&m&&(C+=_/2,Pt(p,m,C),C+=_/2+Dt),Pt(c,s,C+s.height/2),I(t,o.insert(`rect`,`:first-child`).attr(`class`,`usecase-actor-outline`).attr(`x`,-y/2).attr(`y`,-b/2).attr(`width`,y).attr(`height`,b).attr(`opacity`,0).attr(`aria-hidden`,`true`)),t.intersect=e=>K.rect(t,e),o}n(Rt,`renderUsecaseActor`);var zt=[`M 0 -12`,`C 6.627 -12 12 -17.373 12 -24`,`C 12 -30.627 6.627 -36 0 -36`,`C -6.627 -36 -12 -30.627 -12 -24`,`C -12 -17.373 -6.627 -12 0 -12 Z`,`M 0 -12 V 8`,`M -17 -5 H 17`,`M 0 8 L -15 28`,`M 0 8 L 15 28`].join(` `);async function Bt(e,t){return Rt(e,t,`normal`,(e,t)=>{Ft(e,t,zt,`usecase-actor-stick`)})}n(Bt,`usecaseActor`);var Vt=[`M 0 -34`,`C 7.18 -34 13 -28.18 13 -21`,`C 13 -13.82 7.18 -8 0 -8`,`C -7.18 -8 -13 -13.82 -13 -21`,`C -13 -28.18 -7.18 -34 0 -34 Z`,`M -24 25`,`C -24 7 -14 -3 0 -3`,`C 14 -3 24 7 24 25`,`C 24 28 21 30 18 30`,`H -18`,`C -21 30 -24 28 -24 25 Z`].join(` `);async function Ht(e,t){return Rt(e,t,`awesome`,(e,t)=>{Ft(e,t,Vt,`usecase-actor-awesome-silhouette`)})}n(Ht,`usecaseActorAwesome`);var Ut=[`M -22 -10`,`H 22`,`V 0`,`H 6`,`L 22 17`,`L 13 28`,`L 0 13`,`L -13 28`,`L -22 17`,`L -6 0`,`H -22`,`Z`].join(` `);async function Wt(e,t){return Rt(e,t,`hollow`,(e,t)=>{It(e,t,0,-23,9,`usecase-actor-hollow-head`,!0),Ft(e,t,Ut,`usecase-actor-hollow-body`,!0)})}n(Wt,`usecaseActorHollow`);var Gt=52,Kt=42,qt=-2,Jt=n(async(e,n)=>{let r=-Gt/2,i=qt-Gt/2;if(n.look===`handDrawn`){let a=t.svg(e).rectangle(r,i,Gt,Gt,x(n,{}));e.insert(()=>a,`:first-child`).attr(`class`,`usecase-actor-icon-frame`)}else e.append(`rect`).attr(`class`,`usecase-actor-icon-frame`).attr(`x`,r).attr(`y`,i).attr(`width`,Gt).attr(`height`,Gt).attr(`rx`,4).attr(`ry`,4);let a=n.icon??``,o=await p(a.includes(`:`)?a:`fa:${a}`),s=await m(a,{height:Kt,width:Kt,fallbackPrefix:`fa`}),c=e.append(`g`).attr(`class`,`usecase-actor-icon-symbol${o?``:` usecase-actor-icon-fallback`}`).attr(`aria-hidden`,`true`).html(`<g>${s}</g>`),l=c.node()?.getBBox();l&&c.attr(`transform`,`translate(${-l.width/2-l.x},${qt-l.height/2-l.y})`)},`drawIconActor`);async function Yt(e,t){return Rt(e,t,`icon`,Jt)}n(Yt,`usecaseActorIcon`);var Xt=n((e,t,n)=>{let r=(t.x??0)-(t.left??0),i=(t.y??0)-(t.top??0);e.attr(`transform`,`translate(${-t.width/2-r},${n-t.height/2-i})`)},`positionLabel`);async function Zt(e,n){let r=n,{labelStyles:i,nodeStyles:a}=S(n);n.labelStyle=i;let{shapeSvg:o,bbox:s,halfPadding:c,label:l}=await P(e,r.stereotype?{...n,stereotype:void 0}:n,L(n,`usecase-business-shape`));l.attr(`class`,`label usecase-label`);let{theme:u,themeVariables:f}=d();T(o,n.colorIndex,u,f.borderColorArray);let p,m;if(r.stereotype){let e=await F(o,`\xAB${r.stereotype}\xBB`,{labelStyle:i,useHtmlLabels:n.useHtmlLabels,padding:0,centerLabel:!0,width:n.wrappingWidth});p=e.label.attr(`class`,`label usecase-stereotype`),m=e.bbox}let h=m?2:0,g=s.height+(m?.height??0)+h,_=Math.max(s.width,m?.width??0),v=c??10,y=_/2+v*2,b=g/2+v*2,C=Math.min(Math.max(v/5,1),v/2),w=_/2+C,E=y-C,D=w/y,O=E/y,k=b*Math.sqrt(Math.max(0,1-D*D)),A=-b*Math.sqrt(Math.max(0,1-O*O));p&&m&&Xt(p,m,-g/2+m.height/2),Xt(l,s,g/2-s.height/2);let j;if(n.look===`handDrawn`){let e=t.svg(o).ellipse(0,0,y*2,b*2,x(n,{}));j=o.insert(()=>e,`:first-child`).attr(`class`,`basic label-container usecase-business-ellipse`)}else j=o.insert(`ellipse`,`:first-child`).attr(`class`,`basic label-container usecase-business-ellipse`).attr(`style`,a).attr(`rx`,y).attr(`ry`,b).attr(`cx`,0).attr(`cy`,0);o.append(`path`).attr(`class`,`usecase-business-marker`).attr(`d`,`M ${w} ${k} L ${E} ${A}`).attr(`fill`,`none`).attr(`style`,a||null);let M=r.accessibleName??r.label;return M&&o.attr(`role`,`img`).attr(`aria-label`,M),I(n,j),n.calcIntersect=(e,t)=>K.ellipse(e,e.width/2,e.height/2,t),n.intersect=e=>K.ellipse(n,y,b,e),o}n(Zt,`usecaseBusiness`);var Qt=8,$t=4,en=1,tn=n((e,t,n,r)=>{let i=(t.x??0)-(t.left??0),a=(t.y??0)-(t.top??0);e.attr(`transform`,`translate(${n-t.width/2-i},${r-t.height/2-a})`)},`positionLabel`),nn=n(e=>{let t=Number.parseFloat(e??``);return Number.isFinite(t)&&t>=0?t:en},`numericStrokeWidth`);async function rn(e,r){let i=r,{labelStyles:a,nodeStyles:o}=S(r),{stylesMap:s}=w(r);r.labelStyle=a;let{shapeSvg:c,bbox:l,label:u}=await P(e,r,L(r,`usecase-json-table`));c.attr(`role`,`img`),i.accessibleName&&c.attr(`aria-label`,i.accessibleName),u.attr(`class`,`label usecase-json-title`);let d=c.append(`g`).attr(`class`,`usecase-json-table-grid`),f=[];for(let e of i.jsonRows??[]){let t=await F(d,e.key,{labelStyle:a,useHtmlLabels:r.useHtmlLabels,padding:0,centerLabel:!0}),n=await F(d,e.value,{labelStyle:a,useHtmlLabels:r.useHtmlLabels,padding:0,centerLabel:!0});f.push({key:{label:t.label.attr(`class`,`label usecase-json-key`),bbox:t.bbox},value:{label:n.label.attr(`class`,`label usecase-json-value`),bbox:n.bbox}})}let p=Math.max(0,...f.map(({key:e})=>e.bbox.width))+Qt*2,m=Math.max(0,...f.map(({value:e})=>e.bbox.width))+Qt*2,h=l.width+Qt*2,g=Math.max(h,p+m),_=m+Math.max(0,g-p-m),v=l.height+$t*2,y=f.map(({key:e,value:t})=>Math.max(e.bbox.height,t.bbox.height)+$t*2),b=v+y.reduce((e,t)=>e+t,0),C=nn(s.get(`stroke-width`)),T=g+C*2,E=b+C*2,D=-g/2,O=-b/2,k=r.look===`handDrawn`?t.svg(c):void 0,A=k?x(r,{}):void 0,j=n((e,t,n,r,i,a)=>{if(k&&A){let o=k.rectangle(n,r,i,a,A);return e.insert(()=>o,`:first-child`).attr(`class`,t)}return e.insert(`rect`,`:first-child`).attr(`class`,t).attr(`x`,n).attr(`y`,r).attr(`width`,i).attr(`height`,a).attr(`style`,o)},`insertCell`),M=j(c,`label-container usecase-json-border`,-T/2,-E/2,T,E);j(d,`usecase-json-cell usecase-json-title-cell`,D,O,g,v),d.node()?.append(u.node()),tn(u,l,0,O+v/2);let N=O+v;return f.forEach(({key:e,value:t},n)=>{let r=y[n],i=d.append(`g`).attr(`class`,`usecase-json-row`).attr(`data-row-index`,n).attr(`transform`,`translate(0,${N})`);j(i,`usecase-json-cell usecase-json-key-cell`,D,0,p,r),j(i,`usecase-json-cell usecase-json-value-cell`,D+p,0,_,r),i.node()?.append(e.label.node(),t.label.node()),tn(e.label,e.bbox,D+p/2,r/2),tn(t.label,t.bbox,D+p+_/2,r/2),N+=r}),I(r,M),r.intersect=e=>K.rect(r,e),c}n(rn,`usecaseJsonTable`);async function an(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.padding??0,o=n.look===`neo`?16:a,s=n.look===`neo`?12:a,c=n.look===`neo`?10:5;(n.width||n.height)&&(n.width=Math.max((n?.width??0)-o*2-2*c,10),n.height=Math.max((n?.height??0)-s*2-2*c,10));let{shapeSvg:l,bbox:u,label:d}=await P(e,n,L(n)),f=(n?.width?n?.width:u.width)+o*2+2*c,p=(n?.height?n?.height:u.height)+s*2+2*c,m=f-2*c,h=p-2*c,g=-m/2,_=-h/2,{cssStyles:v}=n,y=t.svg(l),b=x(n,{}),C=[{x:g-c,y:_+c},{x:g-c,y:_+h+c},{x:g+m-c,y:_+h+c},{x:g+m-c,y:_+h},{x:g+m,y:_+h},{x:g+m,y:_+h-c},{x:g+m+c,y:_+h-c},{x:g+m+c,y:_-c},{x:g+c,y:_-c},{x:g+c,y:_},{x:g,y:_},{x:g,y:_+c}],w=[{x:g,y:_+c},{x:g+m-c,y:_+c},{x:g+m-c,y:_+h},{x:g+m,y:_+h},{x:g+m,y:_},{x:g,y:_}];n.look!==`handDrawn`&&(b.roughness=0,b.fillStyle=`solid`);let T=R(C),E=y.path(T,b),D=R(w),O=y.path(D,b);n.look!==`handDrawn`&&(E=ee(E),O=ee(O));let k=l.insert(`g`,`:first-child`);return k.insert(()=>E),k.insert(()=>O),k.attr(`class`,`basic label-container outer-path`),v&&n.look!==`handDrawn`&&k.selectAll(`path`).attr(`style`,v),i&&n.look!==`handDrawn`&&k.selectAll(`path`).attr(`style`,i),d.attr(`transform`,`translate(${-(u.width/2)-c-(u.x-(u.left??0))}, ${-(u.height/2)+c-(u.y-(u.top??0))})`),I(n,k),n.intersect=function(e){return K.polygon(n,C,e)},l}n(an,`multiRect`);async function on(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let{shapeSvg:a,bbox:o,label:s}=await P(e,n,L(n)),c=n.padding??0,l=n.look===`neo`?16:c,u=n.look===`neo`?12:c,d=!0;(n.width||n.height)&&(d=!1,n.width=(n?.width??0)-l*2,n.height=(n?.height??0)-u*3);let f=Math.max(o.width,n?.width??0)+l*2,p=Math.max(o.height,n?.height??0)+u*3,m=n.look===`neo`?p/4:p/8,h=p+(d?m/2:-m/2),g=-f/2,_=-h/2,{cssStyles:v}=n,y=z(g-10,_+h+10,g+f-10,_+h+10,m,.8),b=y?.[y.length-1],C=[{x:g-10,y:_+10},{x:g-10,y:_+h+10},...y,{x:g+f-10,y:b.y-10},{x:g+f,y:b.y-10},{x:g+f,y:b.y-20},{x:g+f+10,y:b.y-20},{x:g+f+10,y:_-10},{x:g+10,y:_-10},{x:g+10,y:_},{x:g,y:_},{x:g,y:_+10}],w=[{x:g,y:_+10},{x:g+f-10,y:_+10},{x:g+f-10,y:b.y-10},{x:g+f,y:b.y-10},{x:g+f,y:_},{x:g,y:_}],T=t.svg(a),E=x(n,{});n.look!==`handDrawn`&&(E.roughness=0,E.fillStyle=`solid`);let D=R(C),O=T.path(D,E),k=R(w),A=T.path(k,E),j=a.insert(()=>O,`:first-child`);return j.insert(()=>A),j.attr(`class`,`basic label-container outer-path`),v&&n.look!==`handDrawn`&&j.selectAll(`path`).attr(`style`,v),i&&n.look!==`handDrawn`&&j.selectAll(`path`).attr(`style`,i),j.attr(`transform`,`translate(0,${-m/2})`),s.attr(`transform`,`translate(${-(o.width/2)-10-(o.x-(o.left??0))}, ${-(o.height/2)+10-m-(o.y-(o.top??0))})`),I(n,j),n.intersect=function(e){return K.polygon(n,C,e)},a}n(on,`multiWaveEdgedRectangle`);async function sn(e,n,{config:{themeVariables:r}}){let{labelStyles:i,nodeStyles:a}=S(n);n.labelStyle=i,n.useHtmlLabels||s(c())||(n.centerLabel=!0);let{shapeSvg:o,bbox:l,label:u}=await P(e,n,L(n)),d=Math.max(l.width+(n.padding??0)*2,n?.width??0),f=Math.max(l.height+(n.padding??0)*2,n?.height??0),p=-d/2,m=-f/2,{cssStyles:h}=n,g=t.svg(o),_=x(n,{fill:r.noteBkgColor,stroke:r.noteBorderColor});n.look!==`handDrawn`&&(_.roughness=0,_.fillStyle=`solid`);let v=g.rectangle(p,m,d,f,_),y=o.insert(()=>v,`:first-child`);return y.attr(`class`,`basic label-container outer-path`),u.attr(`class`,`label noteLabel`),h&&n.look!==`handDrawn`&&y.selectAll(`path`).attr(`style`,h),a&&n.look!==`handDrawn`&&y.selectAll(`path`).attr(`style`,a),u.attr(`transform`,`translate(${-l.width/2-(l.x-(l.left??0))}, ${-(l.height/2)-(l.y-(l.top??0))})`),I(n,y),n.intersect=function(e){return K.rect(n,e)},o}n(sn,`note`);var cn=n((e,t,n)=>[`M${e+n/2},${t}`,`L${e+n},${t-n/2}`,`L${e+n/2},${t-n}`,`L${e},${t-n/2}`,`Z`].join(` `),`createDecisionBoxPathD`);async function ln(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let{shapeSvg:a,bbox:o}=await P(e,n,L(n)),s=o.width+(n.padding??0)+(o.height+(n.padding??0)),c=.5,l=[{x:s/2,y:0},{x:s,y:-s/2},{x:s/2,y:-s},{x:0,y:-s/2}],u,{cssStyles:d}=n;if(n.look===`handDrawn`){let e=t.svg(a),r=x(n,{}),i=cn(0,0,s),o=e.path(i,r);u=a.insert(()=>o,`:first-child`).attr(`transform`,`translate(${-s/2+c}, ${s/2})`),d&&u.attr(`style`,d)}else u=J(a,s,s,l),u.attr(`transform`,`translate(${-s/2+c}, ${s/2})`);return i&&u.attr(`style`,i),I(n,u),n.calcIntersect=function(e,t){let n=e.width,r=[{x:n/2,y:0},{x:n,y:-n/2},{x:n/2,y:-n},{x:0,y:-n/2}];return K.polygon(e,r,t)},n.intersect=function(e){return this.calcIntersect(n,e)},a}n(ln,`question`);async function un(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.padding??0,o=n.look===`neo`?21:a??0,s=n.look===`neo`?12:a??0,{shapeSvg:c,bbox:l,label:u}=await P(e,n,L(n)),d=l.width+(n.look===`neo`?o*2:o),f=Math.max(l.height+(n.look===`neo`?s*2:s),n.height??0),p=f/4,m=-Math.max(d,(n.width??0)-p)/2,h=-f/2,g=h/2,_=[{x:m+g,y:h},{x:m,y:0},{x:m+g,y:-h},{x:-m,y:-h},{x:-m,y:h}],{cssStyles:v}=n,y=t.svg(c),b=x(n,{});n.look!==`handDrawn`&&(b.roughness=0,b.fillStyle=`solid`);let C=R(_),w=y.path(C,b),T=c.insert(()=>w,`:first-child`);return T.attr(`class`,`basic label-container outer-path`),v&&n.look!==`handDrawn`&&T.selectAll(`path`).attr(`style`,v),i&&n.look!==`handDrawn`&&T.selectAll(`path`).attr(`style`,i),T.attr(`transform`,`translate(${-g/2},0)`),u.attr(`transform`,`translate(${-g/2-l.width/2-(l.x-(l.left??0))}, ${-(l.height/2)-(l.y-(l.top??0))})`),I(n,T),n.intersect=function(e){return K.polygon(n,_,e)},c}n(un,`rect_left_inv_arrow`);async function dn(n,i){let{labelStyles:a,nodeStyles:o}=S(i);i.labelStyle=a;let c;c=i.cssClasses?`node `+i.cssClasses:`node default`;let l=n.insert(`g`).attr(`class`,c).attr(`id`,i.domId||i.id),u=l.insert(`g`),f=l.insert(`g`).attr(`class`,`label`).attr(`style`,o),p=i.description,m=i.label,h=await se(f,m,i.labelStyle,!0,!0),g={width:0,height:0};if(s(d())){let t=h.children[0],n=e(h);g=t.getBoundingClientRect(),n.attr(`width`,g.width),n.attr(`height`,g.height)}r.info(`Text 2`,p);let _=p||[],v=h.getBBox(),y=await se(f,Array.isArray(_)?_.join(`<br/>`):_,i.labelStyle,!0,!0),b=y.children[0],C=e(y);g=b.getBoundingClientRect(),C.attr(`width`,g.width),C.attr(`height`,g.height);let w=(i.padding||0)/2;e(y).attr(`transform`,`translate( `+(g.width>v.width?0:(v.width-g.width)/2)+`, `+(v.height+w+5)+`)`),e(h).attr(`transform`,`translate( `+(g.width<v.width?0:-(v.width-g.width)/2)+`, 0)`),g=f.node().getBBox(),f.attr(`transform`,`translate(`+-g.width/2+`, `+(-g.height/2-w+3)+`)`);let T=g.width+(i.padding||0),E=g.height+(i.padding||0),D=-g.width/2-w,O=-g.height/2-w,k,A;if(i.look===`handDrawn`){let e=t.svg(l),n=x(i,{}),a=e.path(q(D,O,T,E,i.rx||0),n),o=e.line(-g.width/2-w,-g.height/2-w+v.height+w,g.width/2+w,-g.height/2-w+v.height+w,n);A=l.insert(()=>(r.debug(`Rough node insert CXC`,a),o),`:first-child`),k=l.insert(()=>(r.debug(`Rough node insert CXC`,a),a),`:first-child`)}else k=u.insert(`rect`,`:first-child`),A=u.insert(`line`),k.attr(`class`,`outer title-state`).attr(`style`,o).attr(`x`,-g.width/2-w).attr(`y`,-g.height/2-w).attr(`width`,g.width+(i.padding||0)).attr(`height`,g.height+(i.padding||0)),A.attr(`class`,`divider`).attr(`x1`,-g.width/2-w).attr(`x2`,g.width/2+w).attr(`y1`,-g.height/2-w+v.height+w).attr(`y2`,-g.height/2-w+v.height+w);return I(i,k),i.intersect=function(e){return K.rect(i,e)},l}n(dn,`rectWithTitle`);async function fn(e,t,{config:{themeVariables:n}}){let r=n?.radius??5;return Ke(e,t,{rx:r,ry:r,classes:``,labelPaddingX:(t?.padding??0)*1,labelPaddingY:(t?.padding??0)*1})}n(fn,`roundedRect`);var pn=8;async function mn(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.look===`neo`?16:n.padding??0,o=n.look===`neo`?12:n.padding??0,{shapeSvg:s,bbox:c,label:l}=await P(e,n,L(n)),u=(n?.width??c.width)+a*2+(n.look===`neo`?pn:pn*2),d=(n?.height??c.height)+o*2,f=u-pn,p=d,m=pn-u/2,h=-d/2,{cssStyles:g}=n,_=t.svg(s),y=x(n,{});n.look!==`handDrawn`&&(y.roughness=0,y.fillStyle=`solid`);let b=[{x:m,y:h},{x:m+f,y:h},{x:m+f,y:h+p},{x:m-pn,y:h+p},{x:m-pn,y:h},{x:m,y:h},{x:m,y:h+p}],C=_.polygon(b.map(e=>[e.x,e.y]),y),w=s.insert(()=>C,`:first-child`);return w.attr(`class`,`basic label-container outer-path`).attr(`style`,v(g)),i&&n.look!==`handDrawn`&&w.selectAll(`path`).attr(`style`,i),g&&n.look!==`handDrawn`&&w.selectAll(`path`).attr(`style`,i),l.attr(`transform`,`translate(${pn/2-c.width/2-(c.x-(c.left??0))}, ${-(c.height/2)-(c.y-(c.top??0))})`),I(n,w),n.intersect=function(e){return K.rect(n,e)},s}n(mn,`shadedProcess`);async function hn(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.padding??0,o=n.look===`neo`?16:a,s=n.look===`neo`?12:a;(n.width||n.height)&&(n.width=Math.max((n?.width??0)-o*2,10),n.height=Math.max((n?.height??0)/1.5-s*2,10));let{shapeSvg:c,bbox:l,label:u}=await P(e,n,L(n)),d=(n?.width?n?.width:l.width)+o*2,f=((n?.height?n?.height:l.height)+s*2)*1.5,p=d,m=f/1.5,h=-p/2,g=-m/2,{cssStyles:_}=n,v=t.svg(c),y=x(n,{});n.look!==`handDrawn`&&(y.roughness=0,y.fillStyle=`solid`);let b=[{x:h,y:g},{x:h,y:g+m},{x:h+p,y:g+m},{x:h+p,y:g-m/2}],C=R(b),w=v.path(C,y),T=c.insert(()=>w,`:first-child`);return T.attr(`class`,`basic label-container outer-path`),_&&n.look!==`handDrawn`&&T.selectChildren(`path`).attr(`style`,_),i&&n.look!==`handDrawn`&&T.selectChildren(`path`).attr(`style`,i),T.attr(`transform`,`translate(0, ${m/4})`),u.attr(`transform`,`translate(${-p/2+(n.padding??0)-(l.x-(l.left??0))}, ${-m/4+(n.padding??0)-(l.y-(l.top??0))})`),I(n,T),n.intersect=function(e){return K.polygon(n,b,e)},c}n(hn,`slopedRect`);async function gn(e,t){let n=t.padding??0,r=t.look===`neo`?16:n*2,i=t.look===`neo`?12:n,a=await Ke(e,t,{rx:0,ry:0,classes:``,labelPaddingX:t.labelPaddingX??r,labelPaddingY:i});if(t.colorIndex!==void 0){let{theme:e,themeVariables:n}=d();T(a,t.colorIndex,e,n.borderColorArray)}return a}n(gn,`squareRect`);var _n=50,vn=n((e,t,n)=>{let r=e.height+n,i=r*Math.cos(Math.PI/(2*(_n-1))),a=Math.sqrt(Math.max(0,i**2-e.height**2));return{w:Math.max(e.width+r/4+t,1.5*r+(r-i),e.width+t+r-a),h:r}},`stadiumDimensions`);async function yn(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.padding??0,o=n.look===`neo`?40:a,s=n.look===`neo`?24:a,{shapeSvg:c,bbox:l}=await P(e,n,L(n)),{w:u,h:d}=vn(l,o,s),f=d/2,{cssStyles:p}=n,m=t.svg(c),h=x(n,{});n.look!==`handDrawn`&&(h.roughness=0,h.fillStyle=`solid`);let g=[{x:-u/2+f,y:-d/2},{x:u/2-f,y:-d/2},...B(-u/2+f,0,f,_n,90,270),{x:u/2-f,y:d/2},...B(u/2-f,0,f,_n,270,450)],_=R(g),v=m.path(_,h),y=c.insert(()=>v,`:first-child`);return y.attr(`class`,`basic label-container outer-path`),p&&n.look!==`handDrawn`&&y.selectChildren(`path`).attr(`style`,p),i&&n.look!==`handDrawn`&&y.selectChildren(`path`).attr(`style`,i),I(n,y),n.intersect=function(e){return K.polygon(n,g,e)},c}n(yn,`stadium`);async function bn(e,t){return Ke(e,t,{rx:t.look===`neo`?3:5,ry:t.look===`neo`?3:5,classes:`flowchart-node`})}n(bn,`state`);function xn(e,n,{config:{themeVariables:r}}){let{labelStyles:i,nodeStyles:a}=S(n);n.labelStyle=i;let{cssStyles:o}=n,{lineColor:s,stateBorder:c,nodeBorder:l,nodeShadow:u}=r;(n.width||n.height)&&((n.width??0)<14&&(n.width=14),(n.height??0)<14&&(n.height=14)),n.width||=14,n.height||=14;let d=e.insert(`g`).attr(`class`,`node default`).attr(`id`,n.domId??n.id),f=t.svg(d),p=x(n,{});n.look!==`handDrawn`&&(p.roughness=0,p.fillStyle=`solid`);let m=f.circle(0,0,n.width,{...p,stroke:s,strokeWidth:2}),h=c??l,g=(n.width??0)*5/14,_=f.circle(0,0,g,{...p,fill:h,stroke:h,strokeWidth:2,fillStyle:`solid`}),v=d.insert(()=>m,`:first-child`);if(v.insert(()=>_),n.look!==`handDrawn`&&v.attr(`class`,`outer-path`),o&&v.selectAll(`path`).attr(`style`,o),a&&v.selectAll(`path`).attr(`style`,a),n.width<25&&u&&n.look!==`handDrawn`){let t=e.node()?.ownerSVGElement?.id??``,n=t?`${t}-drop-shadow-small`:`drop-shadow-small`;v.attr(`style`,`filter:url(#${n})`)}return I(n,v),n.intersect=function(e){return K.circle(n,(n.width??0)/2,e)},d}n(xn,`stateEnd`);function Sn(e,n,{config:{themeVariables:r}}){let{lineColor:i,nodeShadow:a}=r;(n.width||n.height)&&((n.width??0)<14&&(n.width=14),(n.height??0)<14&&(n.height=14)),n.width||=14,n.height||=14;let o=e.insert(`g`).attr(`class`,`node default`).attr(`id`,n.domId||n.id),s;if(n.look===`handDrawn`){let e=t.svg(o).circle(0,0,n.width,C(i));s=o.insert(()=>e),s.attr(`class`,`state-start`).attr(`r`,(n.width??7)/2).attr(`width`,n.width??14).attr(`height`,n.height??14)}else s=o.insert(`circle`,`:first-child`),s.attr(`class`,`state-start`).attr(`r`,(n.width??7)/2).attr(`width`,n.width??14).attr(`height`,n.height??14);if(n.width<25&&a&&n.look!==`handDrawn`){let t=e.node()?.ownerSVGElement?.id??``,n=t?`${t}-drop-shadow-small`:`drop-shadow-small`;s.attr(`style`,`filter:url(#${n})`)}return I(n,s),n.intersect=function(e){return K.circle(n,(n.width??7)/2,e)},o}n(Sn,`stateStart`);var Cn=8;async function wn(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n?.padding??8,o=n.look===`neo`?28:a,s=n.look===`neo`?12:a,{shapeSvg:c,bbox:l}=await P(e,n,L(n)),u=Math.max(l.width+2*Cn+o,n.width??0),d=Math.max(l.height+s,n.height??0),f=u-2*Cn,p=d,m=-u/2,h=-d/2,g=[{x:0,y:0},{x:f,y:0},{x:f,y:-p},{x:0,y:-p},{x:0,y:0},{x:-8,y:0},{x:f+8,y:0},{x:f+8,y:-p},{x:-8,y:-p},{x:-8,y:0}];if(n.look===`handDrawn`){let e=t.svg(c),r=x(n,{}),i=e.rectangle(m,h,f+16,p,r),a=e.line(m+Cn,h,m+Cn,h+p,r),o=e.line(m+Cn+f,h,m+Cn+f,h+p,r);c.insert(()=>a,`:first-child`),c.insert(()=>o,`:first-child`);let s=c.insert(()=>i,`:first-child`),{cssStyles:l}=n;s.attr(`class`,`basic label-container`).attr(`style`,v(l)),I(n,s)}else{let e=J(c,f,p,g);i&&e.attr(`style`,i),I(n,e)}return n.intersect=function(e){return K.polygon(n,g,e)},c}n(wn,`subroutine`);var Tn=.2;async function En(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.padding??0,o=n.look===`neo`?16:a,s=n.look===`neo`?12:a;(n.width||n.height)&&(n.height=Math.max((n?.height??0)-s*2,10),n.width=Math.max((n?.width??0)-o*2-Tn*(n.height+s*2),10));let{shapeSvg:c,bbox:l}=await P(e,n,L(n)),u=(n?.height?n?.height:l.height)+s*2,d=Tn*u,f=Tn*u,p=(n?.width?n?.width:l.width)+o*2+d-d,m=u,h=-p/2,g=-m/2,{cssStyles:_}=n,v=t.svg(c),y=x(n,{}),b=[{x:h-d/2,y:g},{x:h+p+d/2,y:g},{x:h+p+d/2,y:g+m},{x:h-d/2,y:g+m}],C=[{x:h+p-d/2,y:g+m},{x:h+p+d/2,y:g+m},{x:h+p+d/2,y:g+m-f}];n.look!==`handDrawn`&&(y.roughness=0,y.fillStyle=`solid`);let w=R(b),T=v.path(w,y),E=R(C),D=v.path(E,{...y,fillStyle:`solid`}),O=c.insert(()=>D,`:first-child`);return O.insert(()=>T,`:first-child`),O.attr(`class`,`basic label-container outer-path`),_&&n.look!==`handDrawn`&&O.selectAll(`path`).attr(`style`,_),i&&n.look!==`handDrawn`&&O.selectAll(`path`).attr(`style`,i),I(n,O),n.intersect=function(e){return K.polygon(n,b,e)},c}n(En,`taggedRect`);async function Dn(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let{shapeSvg:a,bbox:o,label:s}=await P(e,n,L(n)),c=Math.max(o.width+(n.padding??0)*2,n?.width??0),l=Math.max(o.height+(n.padding??0)*2,n?.height??0),u=l/8,d=.2*c,f=.2*l,p=l+u,{cssStyles:m}=n,h=t.svg(a),g=x(n,{});n.look!==`handDrawn`&&(g.roughness=0,g.fillStyle=`solid`);let _=[{x:-c/2-c/2*.1,y:p/2},...z(-c/2-c/2*.1,p/2,c/2+c/2*.1,p/2,u,.8),{x:c/2+c/2*.1,y:-p/2},{x:-c/2-c/2*.1,y:-p/2}],v=-c/2+c/2*.1,y=-p/2-f*.4,b=[{x:v+c-d,y:(y+l)*1.3},{x:v+c,y:y+l-f},{x:v+c,y:(y+l)*.9},...z(v+c,(y+l)*1.25,v+c-d,(y+l)*1.3,-l*.02,.5)],C=R(_),w=h.path(C,g),T=R(b),E=h.path(T,{...g,fillStyle:`solid`}),D=a.insert(()=>E,`:first-child`);return D.insert(()=>w,`:first-child`),D.attr(`class`,`basic label-container outer-path`),m&&n.look!==`handDrawn`&&D.selectAll(`path`).attr(`style`,m),i&&n.look!==`handDrawn`&&D.selectAll(`path`).attr(`style`,i),D.attr(`transform`,`translate(0,${-u/2})`),s.attr(`transform`,`translate(${-c/2+(n.padding??0)-(o.x-(o.left??0))},${-l/2+(n.padding??0)-u/2-(o.y-(o.top??0))})`),I(n,D),n.intersect=function(e){return K.polygon(n,_,e)},a}n(Dn,`taggedWaveEdgedRectangle`);async function On(e,t){let{labelStyles:n,nodeStyles:r}=S(t);t.labelStyle=n;let{shapeSvg:i,bbox:a}=await P(e,t,L(t)),o=Math.max(a.width+(t.padding??0),t?.width||0),s=Math.max(a.height+(t.padding??0),t?.height||0),c=-o/2,l=-s/2,u=i.insert(`rect`,`:first-child`);return u.attr(`class`,`text`).attr(`style`,r).attr(`rx`,0).attr(`ry`,0).attr(`x`,c).attr(`y`,l).attr(`width`,o).attr(`height`,s),I(t,u),t.intersect=function(e){return K.rect(t,e)},i}n(On,`text`);var kn=n((e,t,n,r,i,a)=>`M${e},${t}
|
|
1
|
+
import{p as e}from"./src-XiVvaevx.js";import{t}from"./rough.esm-Dy-Kn_BL.js";import{n}from"./chunk-Y2CYZVJY-BbRBGnmc.js";import{t as r}from"./chunk-X3CZISLH-DwWpRaN8.js";import{B as i,M as a,b as o,f as s,g as c,k as l,w as u,y as d,z as f}from"./chunk-VPRB5NB3-BqaJfj_v.js";import{n as p,t as m}from"./chunk-HJ2JQQFS-DQX7RePR.js";import{a as h,d as g,m as _,r as v}from"./chunk-3YJQHVM4-Ctp__8EK.js";import{n as y,r as b}from"./chunk-E2ZNV5FY-D_07zfWd.js";import{a as x,i as S,r as C,t as w}from"./chunk-4EA7E6EY-bU4wRJot.js";import{s as T}from"./chunk-J5ZVWO5B-oDCd-gWO.js";var E=1,D=3;async function O(e){let t=e.getElementsByTagName(`img`);if(!t||t.length===0)return;let r=!k(e);await Promise.all([...t].map(e=>new Promise(t=>{function i(){if(e.style.display=`flex`,e.style.flexDirection=`column`,r){let t=o().fontSize?o().fontSize:window.getComputedStyle(document.body).fontSize,[n=s.fontSize]=_(t),r=n*5+`px`;e.style.minWidth=r,e.style.maxWidth=r}else e.style.width=`100%`;t(e)}n(i,`setupImage`),setTimeout(()=>{e.complete&&i()}),e.addEventListener(`error`,i),e.addEventListener(`load`,i)})))}n(O,`configureLabelImages`);function k(e){return e.nodeType===D?e.textContent?.trim()!==``:e.nodeType!==E||e.tagName.toLowerCase()===`img`?!1:[...e.childNodes].some(k)}n(k,`hasTextBesidesImages`);var A=3,j=32,M=n(async(t,n,r)=>{let i=o(),a=t.insert(`g`).attr(`class`,r??`node default`).attr(`id`,n.domId||n.id),s=a.insert(`g`).attr(`class`,`label`).attr(`style`,g(n.labelStyle)),c=[{text:typeof n.label==`string`?n.label:n.label?.[0]??``,cssClass:`c4-name`},{text:n.stereotype,cssClass:`c4-type`},...(n.description??[]).map(e=>({text:e,cssClass:`c4-descr`}))].filter(e=>e.text),l=n.width?Math.max(n.width-2*(n.padding??0),j):o().flowchart?.wrappingWidth??200,u=i.c4?.wrap??!0?l:1/0,d=await Promise.all(c.map(async t=>{let r=s.append(`g`).attr(`class`,t.cssClass),a=await y(r,f(h(t.text??``),i),{useHtmlLabels:!1,markdown:!1,isNode:!0,width:u,style:n.labelStyle},i);return e(a).selectAll(`tspan.text-outer-tspan`).attr(`text-anchor`,`middle`),e(a).selectAll(`tspan.text-inner-tspan`).attr(`font-weight`,null).attr(`font-style`,null),{el:r,box:r.node().getBBox()}})),p=Math.max(...d.map(({box:e})=>e.width),0),m=0;for(let{el:e,box:t}of d)e.attr(`transform`,`translate(${p/2-t.x-t.width/2}, ${m-t.y})`),m+=t.height+A;let _=d.length>0?m-A:0;return s.insert(`rect`,`:first-child`),s.attr(`transform`,`translate(${-p/2}, ${-_/2})`),{shapeSvg:a,bbox:s.node().getBBox(),halfPadding:(n.padding??0)/2,label:s}},`c4LabelHelper`),N=n((e,t)=>{let{x:r,y:i,width:a,height:o}=e;return a>=t?e:`left`in e?{x:r,y:i,width:t,height:o,top:i,left:r,bottom:i+o,right:r+t,toJSON:n(()=>({}),`toJSON`)}:{x:r-(t-a)/2,y:i,width:t,height:o}},`withMinWidth`),P=n(async(t,n,r)=>{if(n.stereotype!==void 0)return M(t,n,r);let i,a=n.useHtmlLabels||c(o()?.htmlLabels);i=r||`node default`;let s=t.insert(`g`).attr(`class`,i).attr(`id`,n.domId||n.id),l=s.insert(`g`).attr(`class`,`label`).attr(`style`,g(n.labelStyle)),u;u=n.label===void 0?``:typeof n.label==`string`?n.label:n.label[0];let d=!!n.icon||!!n.img,p=n.labelType===`markdown`,m=u&&!n.width?n.minWidth??0:0,_=await y(l,f(h(u),o()),{useHtmlLabels:a,width:n.width||n.wrappingWidth||o().flowchart?.wrappingWidth,minWidth:m,classes:p?`markdown-node-label`:``,style:n.labelStyle,addSvgBackground:d,markdown:p},o()),v=(n?.padding??0)/2,x;if(a){let t=_.children[0],n=e(_);await O(t),x=await b.measure(()=>t.getBoundingClientRect()),x=N(x,m),n.attr(`width`,x.width),n.attr(`height`,x.height)}else x=await b.measure(()=>_.getBBox()),x=N(x,m);return a?l.attr(`transform`,`translate(`+-x.width/2+`, `+-x.height/2+`)`):l.attr(`transform`,`translate(0, `+-x.height/2+`)`),n.centerLabel&&l.attr(`transform`,`translate(`+-x.width/2+`, `+-x.height/2+`)`),l.insert(`rect`,`:first-child`),{shapeSvg:s,bbox:x,halfPadding:v,label:l}},`labelHelper`),F=n(async(t,n,r)=>{let i=r.useHtmlLabels??u(o()),a=t.insert(`g`).attr(`class`,`label`).attr(`style`,r.labelStyle||``),s=await y(a,f(h(n),o()),{useHtmlLabels:i,width:r.width||o()?.flowchart?.wrappingWidth,style:r.labelStyle,addSvgBackground:!!r.icon||!!r.img}),c=r.padding/2,l;if(u(o())){let t=s.children[0],n=e(s);l=await b.measure(()=>t.getBoundingClientRect()),n.attr(`width`,l.width),n.attr(`height`,l.height)}else l=await b.measure(()=>s.getBBox());return i?a.attr(`transform`,`translate(`+-l.width/2+`, `+-l.height/2+`)`):a.attr(`transform`,`translate(0, `+-l.height/2+`)`),r.centerLabel&&a.attr(`transform`,`translate(`+-l.width/2+`, `+-l.height/2+`)`),a.insert(`rect`,`:first-child`),{shapeSvg:t,bbox:l,halfPadding:c,label:a}},`insertLabel`),I=n((e,t,n)=>{if(n){e.width=n.width,e.height=n.height;return}let r=t.node().getBBox();e.width=r.width,e.height=r.height},`updateNodeBounds`),L=n((e,t)=>(e.look===`handDrawn`?`rough-node`:`node`)+` `+e.cssClasses+` `+(t||``),`getNodeClasses`);function R(e){let t=e.map((e,t)=>`${t===0?`M`:`L`}${e.x},${e.y}`);return t.push(`Z`),t.join(` `)}n(R,`createPathFromPoints`);function z(e,t,n,r,i,a){let o=[],s=n-e,c=r-t,l=s/a,u=2*Math.PI/l,d=t+c/2;for(let t=0;t<=50;t++){let n=e+t/50*s,r=d+i*Math.sin(u*(n-e));o.push({x:n,y:r})}return o}n(z,`generateFullSineWavePoints`);function B(e,t,n,r,i,a){let o=[],s=i*Math.PI/180,c=(a*Math.PI/180-s)/(r-1);for(let i=0;i<r;i++){let r=s+i*c,a=e+n*Math.cos(r),l=t+n*Math.sin(r);o.push({x:-a,y:-l})}return o}n(B,`generateCirclePoints`);function ee(e){let t=Array.from(e.childNodes).filter(e=>e.tagName===`path`),r=document.createElementNS(`http://www.w3.org/2000/svg`,`path`),i=t.map(e=>e.getAttribute(`d`)).filter(e=>e!==null).join(` `);r.setAttribute(`d`,i);let a=t.find(e=>e.getAttribute(`fill`)!==`none`),o=t.find(e=>e.getAttribute(`stroke`)!==`none`),s=n((e,t)=>e?.getAttribute(t)??void 0,`getAttr`);if(a){let e={fill:s(a,`fill`),"fill-opacity":s(a,`fill-opacity`)??`1`};Object.entries(e).forEach(([e,t])=>{t&&r.setAttribute(e,t)})}if(o){let e={stroke:s(o,`stroke`),"stroke-width":s(o,`stroke-width`)??`1`,"stroke-opacity":s(o,`stroke-opacity`)??`1`};Object.entries(e).forEach(([e,t])=>{t&&r.setAttribute(e,t)})}let c=document.createElementNS(`http://www.w3.org/2000/svg`,`g`);return c.appendChild(r),c}n(ee,`mergePaths`);var V=n((e,t)=>{var n=e.x,r=e.y,i=t.x-n,a=t.y-r,o=e.width/2,s=e.height/2,c,l;return Math.abs(a)*o>Math.abs(i)*s?(a<0&&(s=-s),c=a===0?0:s*i/a,l=s):(i<0&&(o=-o),c=o,l=i===0?0:o*a/i),{x:n+c,y:r+l}},`intersectRect`);function te(e,t){return e.intersect(t)}n(te,`intersectNode`);var H=te;function U(e,t,n,r){var i=e.x,a=e.y,o=i-r.x,s=a-r.y,c=Math.sqrt(t*t*s*s+n*n*o*o),l=Math.abs(t*n*o/c);r.x<i&&(l=-l);var u=Math.abs(t*n*s/c);return r.y<a&&(u=-u),{x:i+l,y:a+u}}n(U,`intersectEllipse`);var ne=U;function re(e,t,n){return ne(e,t,t,n)}n(re,`intersectCircle`);var ie=re;function W(e,t,n,r){{let i=t.y-e.y,a=e.x-t.x,o=t.x*e.y-e.x*t.y,s=i*n.x+a*n.y+o,c=i*r.x+a*r.y+o,l=1e-6;if(s!==0&&c!==0&&G(s,c))return;let u=r.y-n.y,d=n.x-r.x,f=r.x*n.y-n.x*r.y,p=u*e.x+d*e.y+f,m=u*t.x+d*t.y+f;if(Math.abs(p)<l&&Math.abs(m)<l&&G(p,m))return;let h=i*d-u*a;return h===0?void 0:{x:(a*f-d*o)/h,y:(u*o-i*f)/h}}}n(W,`intersectLine`);function G(e,t){return e*t>0}n(G,`sameSign`);var ae=W;function oe(e,t,n){let r=e.x,i=e.y,a=[],o=1/0,s=1/0;typeof t.forEach==`function`?t.forEach(function(e){o=Math.min(o,e.x),s=Math.min(s,e.y)}):(o=Math.min(o,t.x),s=Math.min(s,t.y));let c=r-e.width/2-o,l=i-e.height/2-s;for(let r=0;r<t.length;r++){let i=t[r],o=t[r<t.length-1?r+1:0],s=ae(e,n,{x:c+i.x,y:l+i.y},{x:c+o.x,y:l+o.y});s&&a.push(s)}return a.length?(a.length>1&&a.sort(function(e,t){let r=e.x-n.x,i=e.y-n.y,a=Math.sqrt(r*r+i*i),o=t.x-n.x,s=t.y-n.y,c=Math.sqrt(o*o+s*s);return a<c?-1:a===c?0:1}),a[0]):e}n(oe,`intersectPolygon`);var K={node:H,circle:ie,ellipse:ne,polygon:oe,rect:V},q=n((e,t,n,r,i)=>[`M`,e+i,t,`H`,e+n-i,`A`,i,i,0,0,1,e+n,t+i,`V`,t+r-i,`A`,i,i,0,0,1,e+n-i,t+r,`H`,e+i,`A`,i,i,0,0,1,e,t+r-i,`V`,t+i,`A`,i,i,0,0,1,e+i,t,`Z`].join(` `),`createRoundedRectPathD`),se=n(async(e,t,n,r=!1,i=!1)=>{let a=t||``;typeof a==`object`&&(a=a[0]);let s=o(),c=u(s);return await y(e,a,{style:n,isTitle:r,useHtmlLabels:c,markdown:!1,isNode:i,width:1/0},s)},`createLabel`);function ce(e,n){let{labelStyles:i}=S(n);n.labelStyle=i;let a=L(n),o=a;a||(o=`anchor`);let s=e.insert(`g`).attr(`class`,o).attr(`id`,n.domId||n.id),{cssStyles:c}=n,l=t.svg(s),u=x(n,{fill:`black`,stroke:`none`,fillStyle:`solid`});n.look!==`handDrawn`&&(u.roughness=0);let d=l.circle(0,0,2,u),f=s.insert(()=>d,`:first-child`);return f.attr(`class`,`anchor`).attr(`style`,g(c)),I(n,f),n.intersect=function(e){return r.info(`Circle intersect`,n,1,e),K.circle(n,1,e)},s}n(ce,`anchor`);function le(e,t,n,r,i,a,o){let s=(e+n)/2,c=(t+r)/2,l=Math.atan2(r-t,n-e),u=(n-e)/2,d=(r-t)/2,f=u/i,p=d/a,m=Math.sqrt(f**2+p**2);if(m>1)throw Error(`The given radii are too small to create an arc between the points.`);let h=Math.sqrt(1-m**2),g=s+h*a*Math.sin(l)*(o?-1:1),_=c-h*i*Math.cos(l)*(o?-1:1),v=Math.atan2((t-_)/a,(e-g)/i),y=Math.atan2((r-_)/a,(n-g)/i)-v;o&&y<0&&(y+=2*Math.PI),!o&&y>0&&(y-=2*Math.PI);let b=[];for(let e=0;e<20;e++){let t=v+e/19*y,n=g+i*Math.cos(t),r=_+a*Math.sin(t);b.push({x:n,y:r})}return b}n(le,`generateArcPoints`);function ue(e,t,n){let[r,i]=[t,n].sort((e,t)=>t-e);return i*(1-Math.sqrt(1-(e/r/2)**2))}n(ue,`calculateArcSagitta`);async function de(e,r){let{labelStyles:i,nodeStyles:a}=S(r);r.labelStyle=i;let o=r.padding??0,s=r.look===`neo`?16:o,c=r.look===`neo`?12:o,l=n(e=>e+c,`calcTotalHeight`),u=n(e=>{let t=e/2;return[t/(2.5+e/50),t]},`calcEllipseRadius`),{shapeSvg:d,bbox:f}=await P(e,r,L(r)),p=l(r?.height?r?.height:f.height),[m,h]=u(p),g=ue(p,m,h),_=(r?.width?r?.width:f.width)+s*2+g-g,v=p,{cssStyles:y}=r,b=[{x:_/2,y:-v/2},{x:-_/2,y:-v/2},...le(-_/2,-v/2,-_/2,v/2,m,h,!1),{x:_/2,y:v/2},...le(_/2,v/2,_/2,-v/2,m,h,!0)],C=t.svg(d),w=x(r,{});r.look!==`handDrawn`&&(w.roughness=0,w.fillStyle=`solid`);let T=R(b),E=C.path(T,w),D=d.insert(()=>E,`:first-child`);return D.attr(`class`,`basic label-container outer-path`),y&&r.look!==`handDrawn`&&D.selectAll(`path`).attr(`style`,y),a&&r.look!==`handDrawn`&&D.selectAll(`path`).attr(`style`,a),D.attr(`transform`,`translate(${m/2}, 0)`),I(r,D),r.intersect=function(e){return K.polygon(r,b,e)},d}n(de,`bowTieRect`);async function fe(e,r,{config:{themeVariables:i}}){let{labelStyles:a,nodeStyles:o}=S(r);r.labelStyle=a;let{shapeSvg:s,bbox:c,label:l}=await P(e,r,L(r)),u=i?.nodeBorder??i?.lineColor??`currentColor`,d=r.padding??12,f=Math.max(c.width+d*2,r.width??0,80),p=Math.max(Math.min(f*.08,12),5),m=Math.max(c.height+d*2+p,r.height??0),h=-m/2+p,g=m/2,_=f*.72,v=[`M${-f/2},${h}`,`L${-_/2},${g}`,`A${_/2},${p} 0 0 0 ${_/2},${g}`,`L${f/2},${h}`,`A${f/2},${p} 0 0 0 ${-f/2},${h}`,`Z`].join(` `),{cssStyles:y}=r,b=s.insert(`g`,`:first-child`).attr(`class`,`basic label-container`);if(r.look===`handDrawn`){let e=t.svg(s).path(v,x(r,{}));b.node()?.appendChild(e),y&&b.attr(`style`,y)}else b.append(`path`).attr(`d`,v).attr(`style`,o);b.append(`ellipse`).attr(`cx`,0).attr(`cy`,h).attr(`rx`,f/2).attr(`ry`,p).attr(`style`,`fill:none;stroke:${u};stroke-width:1px`),I(r,b);let C=h+(g-h)/2;l.attr(`transform`,`translate(${-(c.width/2)-(c.x-(c.left??0))}, ${C-c.height/2-(c.y-(c.top??0))})`);let w=n((e,t,n)=>Array.from({length:13},(r,i)=>{let a=Math.PI-i*Math.PI/12;return{x:e*Math.cos(a),y:t+n*p*Math.sin(a)}}),`arc`),T=[...w(f/2,h,-1),...w(_/2,g,1).reverse()];return r.intersect=function(e){return K.polygon(r,T,e)},s}n(fe,`bucket`);var pe=20,me=8,he=80,ge=8;function _e(e){let{themeVariables:t}=o(),n=t.clusterBkg,r=t.clusterBorder;switch(e){case`flow`:return{rx:10,fill:`none`,stroke:t.flowContainerStroke||t.secondaryBorderColor,strokeWidth:.75,cssClass:`flow-collapsed`};default:return{rx:ge,fill:n,stroke:r,cssClass:`collapsed-group`}}}n(_e,`getCollapsedStyle`);async function ve(e,n){let r=_e(n.metadata?.containerType),{fill:i,stroke:a}=r,{nodeStyles:s}=S(n),{shapeSvg:c,bbox:l}=await P(e,n,L(n)),{theme:d,themeVariables:f}=o();T(c,n.colorIndex,d,f.borderColorArray);let p=n.padding??8,m=l.height,h=Math.max(l.width+p*2,he,n?.width??0),_=Math.max(m+me+pe+p*2,n?.height??0),v=-h/2,y=-_/2,b=-(me+pe)/2,C=c.select(`.label`);C&&(n.useHtmlLabels??u(o())?C.attr(`transform`,`translate(${-l.width/2}, ${-l.height/2+b})`):C.attr(`transform`,`translate(0, ${-l.height/2+b})`));let w;if(n.look===`handDrawn`){let e=t.svg(c),o=x(n,{fill:i,stroke:a,...r.strokeWidth===void 0?{}:{strokeWidth:r.strokeWidth},...i===`none`?{fillWeight:0}:{fillStyle:`solid`}}),s=e.path(q(v,y,h,_,r.rx),o);w=c.insert(()=>s,`:first-child`),w.attr(`class`,`basic label-container `+r.cssClass).attr(`style`,g(n.cssStyles))}else w=c.insert(`rect`,`:first-child`),w.attr(`class`,`basic label-container `+r.cssClass).attr(`style`,s).attr(`rx`,r.rx).attr(`ry`,r.rx).attr(`x`,v).attr(`y`,y).attr(`width`,h).attr(`height`,_).attr(`fill`,i).attr(`stroke`,a),r.strokeWidth!==void 0&&w.attr(`stroke-width`,r.strokeWidth+`px`);let E=y+p+m+me;c.append(`line`).attr(`class`,`collapsed-separator`).attr(`x1`,v+8).attr(`y1`,E).attr(`x2`,v+h-8).attr(`y2`,E).attr(`stroke`,a).attr(`stroke-dasharray`,`3, 3`);let D=E+pe/2;for(let e=-1;e<=1;e++)c.append(`circle`).attr(`class`,`collapsed-indicator`).attr(`cx`,e*10).attr(`cy`,D).attr(`r`,2.5).attr(`fill`,a);return I(n,w),n.calcIntersect=function(e,t){return K.rect(e,t)},n.intersect=function(e){return K.rect(n,e)},c}n(ve,`collapsedGroup`);function J(e,t,n,r){return e.insert(`polygon`,`:first-child`).attr(`points`,r.map(function(e){return e.x+`,`+e.y}).join(` `)).attr(`class`,`label-container`).attr(`transform`,`translate(`+-t/2+`,`+n/2+`)`)}n(J,`insertPolygonShape`);var ye=[`right`,`left`,`up`,`down`],be=`point`,xe=n(e=>{let t=new Set;for(let n of e)switch(n){case`x`:t.add(`right`),t.add(`left`);break;case`y`:t.add(`up`),t.add(`down`);break;default:t.add(n)}return t},`expandAndDeduplicateDirections`),Se=n(e=>ye.filter(t=>e.has(t)).join(`|`)||be,`getDirectionKey`),Ce={"right|left|up|down":n(({height:e,midpoint:t,padding:n,width:r})=>[{x:0,y:0},{x:t,y:0},{x:r/2,y:2*n},{x:r-t,y:0},{x:r,y:0},{x:r,y:-e/3},{x:r+2*n,y:-e/2},{x:r,y:-2*e/3},{x:r,y:-e},{x:r-t,y:-e},{x:r/2,y:-e-2*n},{x:t,y:-e},{x:0,y:-e},{x:0,y:-2*e/3},{x:-2*n,y:-e/2},{x:0,y:-e/3}],`right|left|up|down`),"right|left|up":n(({height:e,midpoint:t,width:n})=>[{x:t,y:0},{x:n-t,y:0},{x:n,y:-e/2},{x:n-t,y:-e},{x:t,y:-e},{x:0,y:-e/2}],`right|left|up`),"right|left|down":n(({height:e,midpoint:t,width:n})=>[{x:0,y:0},{x:t,y:-e},{x:n-t,y:-e},{x:n,y:0}],`right|left|down`),"right|up|down":n(({height:e,midpoint:t,width:n})=>[{x:0,y:0},{x:n,y:-t},{x:n,y:-e+t},{x:0,y:-e}],`right|up|down`),"left|up|down":n(({height:e,midpoint:t,width:n})=>[{x:n,y:0},{x:0,y:-t},{x:0,y:-e+t},{x:n,y:-e}],`left|up|down`),"right|left":n(({height:e,midpoint:t,padding:n,width:r})=>[{x:t,y:0},{x:t,y:-n},{x:r-t,y:-n},{x:r-t,y:0},{x:r,y:-e/2},{x:r-t,y:-e},{x:r-t,y:-e+n},{x:t,y:-e+n},{x:t,y:-e},{x:0,y:-e/2}],`right|left`),"up|down":n(({height:e,midpoint:t,padding:n,width:r})=>[{x:r/2,y:0},{x:0,y:-n},{x:t,y:-n},{x:t,y:-e+n},{x:0,y:-e+n},{x:r/2,y:-e},{x:r,y:-e+n},{x:r-t,y:-e+n},{x:r-t,y:-n},{x:r,y:-n}],`up|down`),"right|up":n(({height:e,midpoint:t,width:n})=>[{x:0,y:0},{x:n,y:-t},{x:0,y:-e}],`right|up`),"right|down":n(({height:e,width:t})=>[{x:0,y:0},{x:t,y:0},{x:0,y:-e}],`right|down`),"left|up":n(({height:e,midpoint:t,width:n})=>[{x:n,y:0},{x:0,y:-t},{x:n,y:-e}],`left|up`),"left|down":n(({height:e,width:t})=>[{x:t,y:0},{x:0,y:0},{x:t,y:-e}],`left|down`),right:n(({height:e,midpoint:t,padding:n,width:r})=>[{x:t,y:-n},{x:t,y:-n},{x:r-t,y:-n},{x:r-t,y:0},{x:r,y:-e/2},{x:r-t,y:-e},{x:r-t,y:-e+n},{x:t,y:-e+n},{x:t,y:-e+n}],`right`),left:n(({height:e,midpoint:t,padding:n,width:r})=>[{x:t,y:0},{x:t,y:-n},{x:r-t,y:-n},{x:r-t,y:-e+n},{x:t,y:-e+n},{x:t,y:-e},{x:0,y:-e/2}],`left`),up:n(({height:e,midpoint:t,padding:n,width:r})=>[{x:t,y:-n},{x:t,y:-e+n},{x:0,y:-e+n},{x:r/2,y:-e},{x:r,y:-e+n},{x:r-t,y:-e+n},{x:r-t,y:-n}],`up`),down:n(({height:e,midpoint:t,padding:n,width:r})=>[{x:r/2,y:0},{x:0,y:-n},{x:t,y:-n},{x:t,y:-e+n},{x:r-t,y:-e+n},{x:r-t,y:-n},{x:r,y:-n}],`down`),[be]:()=>[{x:0,y:0}]},we=n((e,t,n,r)=>{let i=xe(e),a=(n.padding??0)/2,o=t.height+4*a,s=o/2,c=r??t.width+2*s+2*a;return(Ce[Se(i)]??Ce[be])({height:o,midpoint:s,padding:a,width:c})},`getArrowPoints`);async function Te(e,t){let n=t,{shapeSvg:r,bbox:i}=await P(e,n,L(n)),a=n.padding??0,o=i.height+2*a,s=o/2,c=i.width+2*s+a,l=n.width??0,u=n.positioned&&(n.widthInColumns??1)>1&&l>c?l:c,d=we(n.directions??[],i,n,u),f=J(r,u,o,d);return f.attr(`style`,n.style??null),I(n,f),n.intersect=function(e){return K.polygon(n,d,e)},r}n(Te,`block_arrow`);async function Ee(e,n,{config:{themeVariables:r}}){let{labelStyles:i,nodeStyles:a}=S(n);n.labelStyle=i;let{shapeSvg:o,bbox:s,label:c}=await P(e,n,L(n)),l=r?.nodeBorder??r?.lineColor??`currentColor`,u=n.padding??12,d=Math.max(s.width+u*2,n.width??0,90),f=Math.max(s.height+u*2+18,n.height??0),p=-f/2,{cssStyles:m}=n,h=o.insert(`g`,`:first-child`).attr(`class`,`basic label-container`);if(n.look===`handDrawn`){let e=t.svg(o).path(q(-d/2,p,d,f,12),x(n,{}));h.node()?.appendChild(e),m&&h.attr(`style`,m)}else h.append(`rect`).attr(`x`,-d/2).attr(`y`,p).attr(`width`,d).attr(`height`,f).attr(`rx`,12).attr(`ry`,12).attr(`style`,a);h.append(`line`).attr(`x1`,-d/2).attr(`y1`,p+18).attr(`x2`,d/2).attr(`y2`,p+18).attr(`style`,`stroke:${l};stroke-width:1px`);for(let e=0;e<3;e++)h.append(`circle`).attr(`cx`,-d/2+12+e*9).attr(`cy`,p+9).attr(`r`,2.5).attr(`style`,`fill:${l};stroke:none`);h.append(`rect`).attr(`class`,`browser-address-bar`).attr(`x`,-d/2+44).attr(`y`,p+4).attr(`width`,Math.max(d-56,10)).attr(`height`,10).attr(`rx`,3).attr(`ry`,3).attr(`style`,`fill:none;stroke:${l};stroke-width:1px;opacity:0.6`),I(n,h);let g=p+18+(f-18)/2;return c.attr(`transform`,`translate(${-(s.width/2)-(s.x-(s.left??0))}, ${g-s.height/2-(s.y-(s.top??0))})`),n.intersect=function(e){return K.rect(n,e)},o}n(Ee,`browser`);var De=12;async function Oe(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.padding??0,o=n.look===`neo`?28:a,s=n.look===`neo`?24:a,{shapeSvg:c,bbox:l}=await P(e,n,L(n)),u=(n?.width??l.width)+(n.look===`neo`?o*2:o+De),d=(n?.height??l.height)+(n.look===`neo`?s*2:s),f=u,p=-d,m=[{x:0+De,y:p},{x:f,y:p},{x:f,y:0},{x:0,y:0},{x:0,y:p+De},{x:0+De,y:p}],h,{cssStyles:g}=n;if(n.look===`handDrawn`){let e=t.svg(c),r=x(n,{}),i=R(m),a=e.path(i,r);h=c.insert(()=>a,`:first-child`).attr(`transform`,`translate(${-u/2}, ${d/2})`),g&&h.attr(`style`,g)}else h=J(c,u,d,m);return i&&h.attr(`style`,i),I(n,h),n.intersect=function(e){return K.polygon(n,m,e)},c}n(Oe,`card`);function ke(e,n){let{nodeStyles:r}=S(n);n.label=``;let i=e.insert(`g`).attr(`class`,L(n)).attr(`id`,n.domId??n.id),{cssStyles:a}=n,o=Math.max(28,n.width??0),s=[{x:0,y:o/2},{x:o/2,y:0},{x:0,y:-o/2},{x:-o/2,y:0}],c=t.svg(i),l=x(n,{});n.look!==`handDrawn`&&(l.roughness=0,l.fillStyle=`solid`);let u=R(s),d=c.path(u,l),f=i.insert(()=>d,`:first-child`);return a&&n.look!==`handDrawn`&&f.selectAll(`path`).attr(`style`,a),r&&n.look!==`handDrawn`&&f.selectAll(`path`).attr(`style`,r),n.width=28,n.height=28,n.intersect=function(e){return K.polygon(n,s,e)},i}n(ke,`choice`);async function Ae(e,n,i){let{labelStyles:a,nodeStyles:o}=S(n);n.labelStyle=a;let{shapeSvg:s,bbox:c,halfPadding:l}=await P(e,n,L(n)),u=i?.padding??l,d=Math.sqrt(c.width**2+c.height**2)/2,f=n.look===`neo`?d+32:d+u,p,{cssStyles:m}=n;if(n.look===`handDrawn`){let e=t.svg(s),r=x(n,{}),i=e.circle(0,0,f*2,r);p=s.insert(()=>i,`:first-child`),p.attr(`class`,`basic label-container`).attr(`style`,g(m))}else p=s.insert(`circle`,`:first-child`).attr(`class`,`basic label-container`).attr(`style`,o).attr(`r`,f).attr(`cx`,0).attr(`cy`,0);return I(n,p),n.calcIntersect=function(e,t){let n=e.width/2;return K.circle(e,n,t)},n.intersect=function(e){return r.info(`Circle intersect`,n,f,e),K.circle(n,f,e)},s}n(Ae,`circle`);async function je(e,t){let n=t,{shapeSvg:r,bbox:i,halfPadding:a}=await P(e,n,[`node`,n.cssClasses,n.class].filter(Boolean).join(` `)),o=r.insert(`rect`,`:first-child`),s=n.padding??0,c=n.positioned?n.width??0:i.width+s,l=n.positioned?n.height??0:i.height+s,u=n.positioned?-c/2:-i.width/2-a,d=n.positioned?-l/2:-i.height/2-a;return o.attr(`class`,`basic cluster composite label-container`).attr(`style`,n.style??null).attr(`rx`,n.rx??null).attr(`ry`,n.ry??null).attr(`x`,u).attr(`y`,d).attr(`width`,c).attr(`height`,l),I(n,o),n.intersect=function(e){return K.rect(n,e)},r}n(je,`composite`);async function Me(e,n,{config:{themeVariables:r}}){let{labelStyles:i,nodeStyles:a}=S(n);n.labelStyle=i;let{shapeSvg:o,bbox:s,label:c}=await P(e,n,L(n)),l=r?.nodeBorder??r?.lineColor??`currentColor`,u=n.padding??12,d=Math.max(s.width+u*2,n.width??0,90),f=Math.max(s.height+u*2+20,n.height??0),p=-f/2,{cssStyles:m}=n,h=o.insert(`g`,`:first-child`).attr(`class`,`basic label-container`);if(n.look===`handDrawn`){let e=t.svg(o).path(q(-d/2,p,d,f,12),x(n,{}));h.node()?.appendChild(e),m&&h.attr(`style`,m)}else h.append(`rect`).attr(`x`,-d/2).attr(`y`,p).attr(`width`,d).attr(`height`,f).attr(`rx`,12).attr(`ry`,12).attr(`style`,a);h.append(`text`).attr(`x`,-d/2+12).attr(`y`,p+16).attr(`class`,`console-glyph`).attr(`style`,`font-family:monospace;font-weight:bold;font-size:14px;fill:${l}`).text(`>_`),I(n,h);let g=p+20+(f-20)/2;return c.attr(`transform`,`translate(${-(s.width/2)-(s.x-(s.left??0))}, ${g-s.height/2-(s.y-(s.top??0))})`),n.intersect=function(e){return K.rect(n,e)},o}n(Me,`consoleWindow`);function Ne(e){let t=Math.cos(Math.PI/4),n=Math.sin(Math.PI/4),r=e*2,i={x:r/2*t,y:r/2*n},a={x:-(r/2)*t,y:r/2*n},o={x:-(r/2)*t,y:-(r/2)*n},s={x:r/2*t,y:-(r/2)*n};return`M ${a.x},${a.y} L ${s.x},${s.y}
|
|
2
|
+
M ${i.x},${i.y} L ${o.x},${o.y}`}n(Ne,`createLine`);function Pe(e,n){let{labelStyles:i,nodeStyles:a}=S(n);n.labelStyle=i,n.label=``;let o=e.insert(`g`).attr(`class`,L(n)).attr(`id`,n.domId??n.id),s=Math.max(30,n?.width??0),{cssStyles:c}=n,l=t.svg(o),u=x(n,{});n.look!==`handDrawn`&&(u.roughness=0,u.fillStyle=`solid`);let d=l.circle(0,0,s*2,u),f=Ne(s),p=l.path(f,u),m=o.insert(()=>d,`:first-child`);return m.insert(()=>p),m.attr(`class`,`outer-path`),c&&n.look!==`handDrawn`&&m.selectAll(`path`).attr(`style`,c),a&&n.look!==`handDrawn`&&m.selectAll(`path`).attr(`style`,a),I(n,m),n.intersect=function(e){return r.info(`crossedCircle intersect`,n,{radius:s,point:e}),K.circle(n,s,e)},o}n(Pe,`crossedCircle`);function Y(e,t,n,r=100,i=0,a=180){let o=[],s=i*Math.PI/180,c=(a*Math.PI/180-s)/(r-1);for(let i=0;i<r;i++){let r=s+i*c,a=e+n*Math.cos(r),l=t+n*Math.sin(r);o.push({x:-a,y:-l})}return o}n(Y,`generateCirclePoints`);async function Fe(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let{shapeSvg:a,bbox:o,label:s}=await P(e,n,L(n)),c=n.look===`neo`?18:n.padding??0,l=n.look===`neo`?12:n.padding??0,u=o.width+c,d=o.height+l,f=Math.max(5,d*.1),{cssStyles:p}=n,m=[...Y(u/2,-d/2,f,30,-90,0),{x:-u/2-f,y:f},...Y(u/2+f*2,-f,f,20,-180,-270),...Y(u/2+f*2,f,f,20,-90,-180),{x:-u/2-f,y:-d/2},...Y(u/2,d/2,f,20,0,90)],h=[{x:u/2,y:-d/2-f},{x:-u/2,y:-d/2-f},...Y(u/2,-d/2,f,20,-90,0),{x:-u/2-f,y:-f},...Y(u/2+u*.1,-f,f,20,-180,-270),...Y(u/2+u*.1,f,f,20,-90,-180),{x:-u/2-f,y:d/2},...Y(u/2,d/2,f,20,0,90),{x:-u/2,y:d/2+f},{x:u/2,y:d/2+f}],g=t.svg(a),_=x(n,{fill:`none`});n.look!==`handDrawn`&&(_.roughness=0,_.fillStyle=`solid`);let v=R(m).replace(`Z`,``),y=g.path(v,_),b=R(h),C=g.path(b,{..._}),w=a.insert(`g`,`:first-child`);return w.insert(()=>C,`:first-child`).attr(`stroke-opacity`,0),w.insert(()=>y,`:first-child`),w.attr(`class`,`text`),p&&n.look!==`handDrawn`&&w.selectAll(`path`).attr(`style`,p),i&&n.look!==`handDrawn`&&w.selectAll(`path`).attr(`style`,i),w.attr(`transform`,`translate(${f}, 0)`),s.attr(`transform`,`translate(${-u/2+f-(o.x-(o.left??0))},${-d/2+(n.padding??0)/2-(o.y-(o.top??0))})`),I(n,w),n.intersect=function(e){return K.polygon(n,h,e)},a}n(Fe,`curlyBraceLeft`);function X(e,t,n,r=100,i=0,a=180){let o=[],s=i*Math.PI/180,c=(a*Math.PI/180-s)/(r-1);for(let i=0;i<r;i++){let r=s+i*c,a=e+n*Math.cos(r),l=t+n*Math.sin(r);o.push({x:a,y:l})}return o}n(X,`generateCirclePoints`);async function Ie(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let{shapeSvg:a,bbox:o,label:s}=await P(e,n,L(n)),c=n.look===`neo`?18:n.padding??0,l=n.look===`neo`?12:n.padding??0,u=o.width+(n.look===`neo`?c*2:c),d=o.height+(n.look===`neo`?l*2:l),f=Math.max(5,d*.1),{cssStyles:p}=n,m=[...X(u/2,-d/2,f,20,-90,0),{x:u/2+f,y:-f},...X(u/2+f*2,-f,f,20,-180,-270),...X(u/2+f*2,f,f,20,-90,-180),{x:u/2+f,y:d/2},...X(u/2,d/2,f,20,0,90)],h=[{x:-u/2,y:-d/2-f},{x:u/2,y:-d/2-f},...X(u/2,-d/2,f,20,-90,0),{x:u/2+f,y:-f},...X(u/2+f*2,-f,f,20,-180,-270),...X(u/2+f*2,f,f,20,-90,-180),{x:u/2+f,y:d/2},...X(u/2,d/2,f,20,0,90),{x:u/2,y:d/2+f},{x:-u/2,y:d/2+f}],g=t.svg(a),_=x(n,{fill:`none`});n.look!==`handDrawn`&&(_.roughness=0,_.fillStyle=`solid`);let v=R(m).replace(`Z`,``),y=g.path(v,_),b=R(h),C=g.path(b,{..._}),w=a.insert(`g`,`:first-child`);return w.insert(()=>C,`:first-child`).attr(`stroke-opacity`,0),w.insert(()=>y,`:first-child`),w.attr(`class`,`text`),p&&n.look!==`handDrawn`&&w.selectAll(`path`).attr(`style`,p),i&&n.look!==`handDrawn`&&w.selectAll(`path`).attr(`style`,i),w.attr(`transform`,`translate(${-f}, 0)`),s.attr(`transform`,`translate(${-u/2+(n.padding??0)/2-(o.x-(o.left??0))},${-d/2+(n.padding??0)/2-(o.y-(o.top??0))})`),I(n,w),n.intersect=function(e){return K.polygon(n,h,e)},a}n(Ie,`curlyBraceRight`);function Z(e,t,n,r=100,i=0,a=180){let o=[],s=i*Math.PI/180,c=(a*Math.PI/180-s)/(r-1);for(let i=0;i<r;i++){let r=s+i*c,a=e+n*Math.cos(r),l=t+n*Math.sin(r);o.push({x:-a,y:-l})}return o}n(Z,`generateCirclePoints`);async function Le(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let{shapeSvg:a,bbox:o,label:s}=await P(e,n,L(n)),c=n.look===`neo`?18:n.padding??0,l=n.look===`neo`?12:n.padding??0,u=o.width+(n.look===`neo`?c*2:c),d=o.height+(n.look===`neo`?l*2:l),f=Math.max(5,d*.1),{cssStyles:p}=n,m=[...Z(u/2,-d/2,f,30,-90,0),{x:-u/2-f,y:f},...Z(u/2+f*2,-f,f,20,-180,-270),...Z(u/2+f*2,f,f,20,-90,-180),{x:-u/2-f,y:-d/2},...Z(u/2,d/2,f,20,0,90)],h=[...Z(-u/2+f+f/2,-d/2,f,20,-90,-180),{x:u/2-f/2,y:f},...Z(-u/2-f/2,-f,f,20,0,90),...Z(-u/2-f/2,f,f,20,-90,0),{x:u/2-f/2,y:-f},...Z(-u/2+f+f/2,d/2,f,30,-180,-270)],g=[{x:u/2,y:-d/2-f},{x:-u/2,y:-d/2-f},...Z(u/2,-d/2,f,20,-90,0),{x:-u/2-f,y:-f},...Z(u/2+f*2,-f,f,20,-180,-270),...Z(u/2+f*2,f,f,20,-90,-180),{x:-u/2-f,y:d/2},...Z(u/2,d/2,f,20,0,90),{x:-u/2,y:d/2+f},{x:u/2-f-f/2,y:d/2+f},...Z(-u/2+f+f/2,-d/2,f,20,-90,-180),{x:u/2-f/2,y:f},...Z(-u/2-f/2,-f,f,20,0,90),...Z(-u/2-f/2,f,f,20,-90,0),{x:u/2-f/2,y:-f},...Z(-u/2+f+f/2,d/2,f,30,-180,-270)],_=t.svg(a),v=x(n,{fill:`none`});n.look!==`handDrawn`&&(v.roughness=0,v.fillStyle=`solid`);let y=R(m).replace(`Z`,``),b=_.path(y,v),C=R(h).replace(`Z`,``),w=_.path(C,v),T=R(g),E=_.path(T,{...v}),D=a.insert(`g`,`:first-child`);return D.insert(()=>E,`:first-child`).attr(`stroke-opacity`,0),D.insert(()=>b,`:first-child`),D.insert(()=>w,`:first-child`),D.attr(`class`,`text`),p&&n.look!==`handDrawn`&&D.selectAll(`path`).attr(`style`,p),i&&n.look!==`handDrawn`&&D.selectAll(`path`).attr(`style`,i),D.attr(`transform`,`translate(${f-f/4}, 0)`),s.attr(`transform`,`translate(${-u/2+(n.padding??0)/2-(o.x-(o.left??0))},${-d/2+(n.padding??0)/2-(o.y-(o.top??0))})`),I(n,D),n.intersect=function(e){return K.polygon(n,g,e)},a}n(Le,`curlyBraces`);async function Re(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.padding??0,o=n.look===`neo`?16:a,s=n.look===`neo`?12:a,{shapeSvg:c,bbox:l}=await P(e,n,L(n)),u=Math.max(5,l.height+s*2,n?.height??0),d=u/2,f=d-Math.sqrt(Math.max(0,d**2-(l.height/2)**2)),p=Math.max(u/4,f),m=Math.max(20,l.width+o*2+p*2,(l.width+o*2)*1.25,n?.width??0),{cssStyles:h}=n,g=t.svg(c),_=x(n,{});n.look!==`handDrawn`&&(_.roughness=0,_.fillStyle=`solid`);let v=m,y=u,b=v-d,C=y/4,w=[{x:b,y:0},{x:C,y:0},{x:0,y:y/2},{x:C,y},{x:b,y},...B(-b,-y/2,d,50,270,90)],T=R(w),E=g.path(T,_),D=c.insert(()=>E,`:first-child`);return D.attr(`class`,`basic label-container outer-path`),h&&n.look!==`handDrawn`&&D.selectChildren(`path`).attr(`style`,h),i&&n.look!==`handDrawn`&&D.selectChildren(`path`).attr(`style`,i),D.attr(`transform`,`translate(${-m/2}, ${-u/2})`),I(n,D),n.intersect=function(e){return K.polygon(n,w,e)},c}n(Re,`curvedTrapezoid`);async function ze(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let{shapeSvg:a,bbox:o,label:s}=await P(e,n,L(n)),c=n.padding??20,l=Math.max(o.width+c*2,n.width??0,100),u=Math.min(Math.max(l*.23,16),56),d=u*.27,f=Math.max(o.height+c*2,n.height?n.height-(2*u-d):0),p=Math.min(l*.177,f*.45),m=f+2*u-d,h=-m/2,g=h+2*u-d,_=a.insert(`g`,`:first-child`).attr(`class`,`basic label-container`),{cssStyles:v}=n;if(n.look===`handDrawn`){let e=t.svg(a),r=x(n,{}),i=e.path(q(-l/2,g,l,f,p),r),o=e.circle(0,h+u,u*2,r);_.insert(()=>o,`:first-child`),_.insert(()=>i,`:first-child`),v&&_.attr(`style`,v)}else _.append(`rect`).attr(`x`,-l/2).attr(`y`,g).attr(`width`,l).attr(`height`,f).attr(`rx`,p).attr(`ry`,p).attr(`style`,i),_.append(`circle`).attr(`cx`,0).attr(`cy`,h+u).attr(`r`,u).attr(`style`,i);I(n,_);let y=g+f/2;s.attr(`transform`,`translate(${-(o.width/2)-(o.x-(o.left??0))}, ${y-o.height/2-(o.y-(o.top??0))})`);let b=h+u,C=Math.asin(Math.min(1,(g-b)/u))*180/Math.PI,w=[...B(0,-b,u,24,180+C,-C),...B(-(-l/2+p),-(g+p),p,12,90,0),...B(-(-l/2+p),-(m/2-p),p,12,360,270),...B(-(l/2-p),-(m/2-p),p,12,270,180),...B(-(l/2-p),-(g+p),p,12,180,90)];return n.intersect=function(e){return K.polygon(n,w,e)},a}n(ze,`person`);var Be=n((e,t,n,r,i,a)=>[`M${e},${t+a}`,`a${i},${a} 0,0,0 ${n},0`,`a${i},${a} 0,0,0 ${-n},0`,`l0,${r}`,`a${i},${a} 0,0,0 ${n},0`,`l0,${-r}`].join(` `),`createCylinderPathD`),Ve=n((e,t,n,r,i,a)=>[`M${e},${t+a}`,`M${e+n},${t+a}`,`a${i},${a} 0,0,0 ${-n},0`,`l0,${r}`,`a${i},${a} 0,0,0 ${n},0`,`l0,${-r}`].join(` `),`createOuterCylinderPathD`),He=n((e,t,n,r,i,a)=>[`M${e-n/2},${-r/2}`,`a${i},${a} 0,0,0 ${n},0`].join(` `),`createInnerCylinderPathD`),Ue=8,We=8;async function Ge(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.padding??0,o=n.look===`neo`?24:a,s=n.look===`neo`?24:a,c=n.width??0;if(n.width&&(n.width-=s,n.width<We&&(n.width=We)),n.height){let e=c/2/(2.5+c/50);n.height=n.height-o-e*3,n.height<Ue&&(n.height=Ue)}let{shapeSvg:l,bbox:u,label:d}=await P(e,n,L(n)),f=Math.max(n.width??0,u.width)+s,p=f/2,m=p/(2.5+f/50),h=Math.max(n.height??0,u.height)+o+m,_,{cssStyles:v}=n;if(n.look===`handDrawn`){let e=t.svg(l),r=Ve(0,0,f,h,p,m),i=He(0,m,f,h,p,m),a=x(n,{}),o=e.path(r,a),s=e.path(i,x(n,{fill:`none`}));_=l.insert(()=>s,`:first-child`),_=l.insert(()=>o,`:first-child`),_.attr(`class`,`basic label-container`),v&&_.attr(`style`,v)}else{let e=Be(0,0,f,h,p,m);_=l.insert(`path`,`:first-child`).attr(`d`,e).attr(`class`,`basic label-container outer-path`).attr(`style`,g(v)).attr(`style`,i)}return _.attr(`label-offset-y`,m),_.attr(`transform`,`translate(${-f/2}, ${-(h/2+m)})`),I(n,_),d.attr(`transform`,`translate(${-(u.width/2)-(u.x-(u.left??0))}, ${-(u.height/2)+(n.padding??0)/1.5-(u.y-(u.top??0))})`),n.intersect=function(e){let t=K.rect(n,e),r=t.x-(n.x??0);if(p!=0&&(Math.abs(r)<(n.width??0)/2||Math.abs(r)==(n.width??0)/2&&Math.abs(t.y-(n.y??0))>(n.height??0)/2-m)){let i=m*m*(1-r*r/(p*p));i>0&&(i=Math.sqrt(i)),i=m-i,e.y-(n.y??0)>0&&(i=-i),t.y+=i}return t},l}n(Ge,`cylinder`);async function Ke(e,n,r){let{labelStyles:i,nodeStyles:a}=S(n);n.labelStyle=i;let{shapeSvg:o,bbox:s}=await P(e,n,L(n)),c=Math.max(s.width+r.labelPaddingX*2,n?.width||0),l=Math.max(s.height+r.labelPaddingY*2,n?.height||0),u=-c/2,d=-l/2,f,{rx:p,ry:m}=n,{cssStyles:h}=n;if(r?.rx&&r.ry&&(p=r.rx,m=r.ry),n.look===`handDrawn`){let e=t.svg(o),r=x(n,{}),i=p||m?e.path(q(u,d,c,l,p||0),r):e.rectangle(u,d,c,l,r);f=o.insert(()=>i,`:first-child`),f.attr(`class`,`basic label-container`).attr(`style`,g(h))}else f=o.insert(`rect`,`:first-child`),f.attr(`class`,`basic label-container`).attr(`style`,a).attr(`rx`,g(p)).attr(`ry`,g(m)).attr(`x`,u).attr(`y`,d).attr(`width`,c).attr(`height`,l);return I(n,f,n.look===`handDrawn`?void 0:{width:c,height:l}),n.calcIntersect=function(e,t){return K.rect(e,t)},n.intersect=function(e){return K.rect(n,e)},o}n(Ke,`drawRect`);async function qe(e,n){let{cssClasses:r,labelPaddingX:i,labelPaddingY:a,padding:o,width:s,height:c}=n,l=await Ke(e,n,{rx:0,ry:0,classes:r??``,labelPaddingX:i??(o??0)*2,labelPaddingY:a??o??0});if(n.look===`handDrawn`){let e=t.svg(l),r=x(n,{}),i=l.select(`.basic.label-container > path:nth-child(2)`),a=i.node();if(!a)return l;let o=null;if(a instanceof SVGGraphicsElement)o=a.getBBox();else return l;return l.insert(()=>e.line(o.x,o.y,o.x+o.width,o.y,r),`.basic.label-container g.label`),l.insert(()=>e.line(o.x,o.y+o.height,o.x+o.width,o.y+o.height,r),`.basic.label-container g.label`),i.remove(),l}let u=l.select(`.basic.label-container`),d=(Number(u.attr(`width`))||s)??0,f=(Number(u.attr(`height`))||c)??0;return d>0&&f>0&&u.attr(`stroke-dasharray`,`${d} ${f}`),l}n(qe,`datastore`);async function Je(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.look===`neo`?16:n.padding??0,o=n.look===`neo`?16:n.padding??0,{shapeSvg:s,bbox:c,label:l}=await P(e,n,L(n)),u=c.width+a,d=c.height+o,f=d*.2,p=-u/2,m=-d/2-f/2,{cssStyles:h}=n,g=t.svg(s),_=x(n,{});n.look!==`handDrawn`&&(_.roughness=0,_.fillStyle=`solid`);let v=[{x:p,y:m+f},{x:-p,y:m+f},{x:-p,y:-m},{x:p,y:-m},{x:p,y:m},{x:-p,y:m},{x:-p,y:m+f}],y=g.polygon(v.map(e=>[e.x,e.y]),_),b=s.insert(()=>y,`:first-child`);return b.attr(`class`,`basic label-container outer-path`),h&&n.look!==`handDrawn`&&b.selectAll(`path`).attr(`style`,h),i&&n.look!==`handDrawn`&&b.selectAll(`path`).attr(`style`,i),l.attr(`transform`,`translate(${p+(n.padding??0)/2-(c.x-(c.left??0))}, ${m+f+(n.padding??0)/2-(c.y-(c.top??0))})`),I(n,b),n.intersect=function(e){return K.rect(n,e)},s}n(Je,`dividedRectangle`);async function Ye(e,n){let{labelStyles:i,nodeStyles:a}=S(n),o=n.look===`neo`?12:5;n.labelStyle=i;let s=n.padding??0,c=n.look===`neo`?16:s,{shapeSvg:l,bbox:u}=await P(e,n,L(n)),d=Math.sqrt(u.width**2+u.height**2)/2,f=(n?.width?n?.width/2:d)+(c??0),p=f+o,m,{cssStyles:h}=n;if(n.look===`handDrawn`){let e=t.svg(l),r=x(n,{roughness:.2,strokeWidth:2.5}),i=x(n,{roughness:.2,strokeWidth:1.5}),a=e.circle(0,0,p*2,r),o=e.circle(0,0,f*2,i);m=l.insert(`g`,`:first-child`),m.attr(`class`,g(n.cssClasses)).attr(`style`,g(h)),m.node()?.appendChild(a),m.node()?.appendChild(o)}else{m=l.insert(`g`,`:first-child`);let e=m.insert(`circle`,`:first-child`),t=m.insert(`circle`);m.attr(`class`,`basic label-container`).attr(`style`,a),e.attr(`class`,`outer-circle`).attr(`style`,a).attr(`r`,p).attr(`cx`,0).attr(`cy`,0),t.attr(`class`,`inner-circle`).attr(`style`,a).attr(`r`,f).attr(`cx`,0).attr(`cy`,0)}return I(n,m),n.intersect=function(e){return r.info(`DoubleCircle intersect`,n,p,e),K.circle(n,p,e)},l}n(Ye,`doublecircle`);async function Xe(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let{shapeSvg:a,bbox:s,halfPadding:c}=await P(e,n,L(n)),{theme:l,themeVariables:u}=o();T(a,n.colorIndex,l,u.borderColorArray);let d=c??10,f=s.width/2+d*2,p=s.height/2+d*2,m,{cssStyles:h}=n;if(n.look===`handDrawn`){let e=t.svg(a),r=x(n,{}),i=e.ellipse(0,0,f*2,p*2,r);m=a.insert(()=>i,`:first-child`),m.attr(`class`,`basic label-container`),h&&m.attr(`style`,h)}else m=a.insert(`ellipse`,`:first-child`).attr(`class`,`basic label-container`).attr(`style`,i).attr(`rx`,f).attr(`ry`,p).attr(`cx`,0).attr(`cy`,0);return n.width=f*2,n.height=p*2,I(n,m),n.calcIntersect=function(e,t){let n=e.width/2,r=e.height/2;return K.ellipse(e,n,r,t)},n.intersect=function(e){return K.ellipse(n,f,p,e)},a}n(Xe,`usecaseEllipse`);function Ze(e,n,{config:{themeVariables:i}}){let{labelStyles:a,nodeStyles:o}=S(n);n.label=``,n.labelStyle=a;let s=e.insert(`g`).attr(`class`,L(n)).attr(`id`,n.domId??n.id),{cssStyles:c}=n,l=t.svg(s),{nodeBorder:u}=i,d=x(n,{fillStyle:`solid`});n.look!==`handDrawn`&&(d.roughness=0);let f=l.circle(0,0,14,d),p=s.insert(()=>f,`:first-child`);return p.selectAll(`path`).attr(`style`,`fill: ${u} !important;`),c&&c.length>0&&n.look!==`handDrawn`&&p.selectAll(`path`).attr(`style`,c),o&&n.look!==`handDrawn`&&p.selectAll(`path`).attr(`style`,o),I(n,p),n.intersect=function(e){return r.info(`filledCircle intersect`,n,{radius:7,point:e}),K.circle(n,7,e)},s}n(Ze,`filledCircle`);var Qe=10,$e=10;async function et(e,n){let{labelStyles:i,nodeStyles:a}=S(n);n.labelStyle=i;let o=n.padding??0,s=n.look===`neo`?o*2:o;(n.width||n.height)&&(n.height=n?.height??0,n.height<Qe&&(n.height=Qe),n.width=(n?.width??0)-s-s/2,n.width<$e&&(n.width=$e));let{shapeSvg:c,bbox:l,label:u}=await P(e,n,L(n)),d=(n?.width?n?.width:l.width)+(s??0),f=n?.height?n?.height:d+l.height,p=f,m=[{x:0,y:-f},{x:p,y:-f},{x:p/2,y:0}],{cssStyles:h}=n,g=t.svg(c),_=x(n,{});n.look!==`handDrawn`&&(_.roughness=0,_.fillStyle=`solid`);let v=R(m),y=g.path(v,_),b=c.insert(()=>y,`:first-child`).attr(`transform`,`translate(${-f/2}, ${f/2})`).attr(`class`,`outer-path`);return h&&n.look!==`handDrawn`&&b.selectChildren(`path`).attr(`style`,h),a&&n.look!==`handDrawn`&&b.selectChildren(`path`).attr(`style`,a),n.width=d,n.height=f,I(n,b),u.attr(`transform`,`translate(${-l.width/2-(l.x-(l.left??0))}, ${-f/2+(n.padding??0)/2+(l.y-(l.top??0))})`),n.intersect=function(e){return r.info(`Triangle intersect`,n,m,e),K.polygon(n,m,e)},c}n(et,`flippedTriangle`);async function tt(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let{shapeSvg:a,bbox:o,label:s}=await P(e,n,L(n)),c=n.padding??12,l=Math.max(o.width+c*2,n.width??0,90),u=o.height+c*2,d=Math.max(Math.min(u*.16,14),8),f=Math.max(u+d,n.height??0),p=f-d,m=Math.max(l*.38,28),h=-f/2,g=[{x:-l/2,y:h},{x:-l/2+m,y:h},{x:-l/2+m,y:h+d},{x:l/2,y:h+d},{x:l/2,y:f/2},{x:-l/2,y:f/2}],_=[`M${g[0].x},${g[0].y}`,...g.slice(1).map(e=>`L${e.x},${e.y}`),`Z`].join(` `),{cssStyles:v}=n,y;if(n.look===`handDrawn`){let e=t.svg(a).path(_,x(n,{}));y=a.insert(()=>e,`:first-child`).attr(`class`,`basic label-container`),v&&y.attr(`style`,v)}else y=a.insert(`path`,`:first-child`).attr(`d`,_).attr(`class`,`basic label-container`).attr(`style`,i);n.look===`handDrawn`?I(n,y):I(n,y,{width:l,height:f});let b=h+d+p/2;return s.attr(`transform`,`translate(${-(o.width/2)-(o.x-(o.left??0))}, ${b-o.height/2-(o.y-(o.top??0))})`),n.intersect=function(e){return K.polygon(n,g,e)},a}n(tt,`folder`);function nt(e,n,{dir:r,config:{state:i,themeVariables:a}}){let{nodeStyles:o}=S(n);n.label=``;let s=e.insert(`g`).attr(`class`,L(n)).attr(`id`,n.domId??n.id),{cssStyles:c}=n,l=Math.max(70,n?.width??0),u=Math.max(10,n?.height??0);(r===`LR`||r===`RL`)&&(l=Math.max(10,n?.width??0),u=Math.max(70,n?.height??0));let d=-1*l/2,f=-1*u/2,p=t.svg(s),m=x(n,{stroke:a.lineColor,fill:a.lineColor});n.look!==`handDrawn`&&(m.roughness=0,m.fillStyle=`solid`);let h=p.rectangle(d,f,l,u,m),g=s.insert(()=>h,`:first-child`);c&&n.look!==`handDrawn`&&g.selectAll(`path`).attr(`style`,c),o&&n.look!==`handDrawn`&&g.selectAll(`path`).attr(`style`,o),I(n,g);let _=i?.padding??0;return n.width&&n.height&&(n.width+=_/2||0,n.height+=_/2||0),n.intersect=function(e){return K.rect(n,e)},s}n(nt,`forkJoin`);async function rt(e,n){let{labelStyles:i,nodeStyles:a}=S(n);n.labelStyle=i;let o=n.look===`neo`?16:n.padding??0,s=n.look===`neo`?12:n.padding??0;(n.width||n.height)&&(n.height=(n?.height??0)-s*2,n.height<10&&(n.height=10),n.width=(n?.width??0)-o*2,n.width<15&&(n.width=15));let{shapeSvg:c,bbox:l}=await P(e,n,L(n)),u=(n?.height?n?.height:Math.max(10,l.height))+s*2,d=u/2,f=d-Math.sqrt(Math.max(0,d**2-(l.height/2)**2)),p=(n?.width?n?.width:Math.max(15,l.width)+f*2)+o*2,{cssStyles:m}=n,h=t.svg(c),g=x(n,{});n.look!==`handDrawn`&&(g.roughness=0,g.fillStyle=`solid`);let _=[{x:-p/2,y:-u/2},{x:p/2-d,y:-u/2},...B(-p/2+d,0,d,50,90,270),{x:p/2-d,y:u/2},{x:-p/2,y:u/2}],v=R(_),y=h.path(v,g),b=c.insert(()=>y,`:first-child`);return b.attr(`class`,`basic label-container outer-path`),m&&n.look!==`handDrawn`&&b.selectChildren(`path`).attr(`style`,m),a&&n.look!==`handDrawn`&&b.selectChildren(`path`).attr(`style`,a),I(n,b),n.intersect=function(e){return r.info(`Pill intersect`,n,{radius:d,point:e}),K.polygon(n,_,e)},c}n(rt,`halfRoundedRectangle`);var it=n((e,t,n,r,i)=>[`M${e+i},${t}`,`L${e+n-i},${t}`,`L${e+n},${t-r/2}`,`L${e+n-i},${t-r}`,`L${e+i},${t-r}`,`L${e},${t-r/2}`,`Z`].join(` `),`createHexagonPathD`);async function at(e,n){let{labelStyles:r,nodeStyles:i}=S(n),a=n.look===`neo`?3.5:4;n.labelStyle=r;let o=n.padding??0,s=n.look===`neo`?70:o,c=n.look===`neo`?32:o;if(n.width||n.height){let e=(n.height??0)/a;n.width=(n?.width??0)-2*e-c,n.height=(n.height??0)-s}let{shapeSvg:l,bbox:u}=await P(e,n,L(n)),d=(n?.height?n?.height:u.height)+s,f=d/a,p=(n?.width?n?.width:u.width)+2*f+c,m=[{x:f,y:0},{x:p-f,y:0},{x:p,y:-d/2},{x:p-f,y:-d},{x:f,y:-d},{x:0,y:-d/2}],h,{cssStyles:g}=n;if(n.look===`handDrawn`){let e=t.svg(l),r=x(n,{}),i=it(0,0,p,d,f),a=e.path(i,r);h=l.insert(()=>a,`:first-child`).attr(`transform`,`translate(${-p/2}, ${d/2})`),g&&h.attr(`style`,g)}else h=J(l,p,d,m);return i&&h.attr(`style`,i),n.width=p,n.height=d,I(n,h),n.intersect=function(e){return K.polygon(n,m,e)},l}n(at,`hexagon`);async function ot(e,n){let{labelStyles:i,nodeStyles:a}=S(n);n.label=``,n.labelStyle=i;let{shapeSvg:o}=await P(e,n,L(n)),s=Math.max(30,n?.width??0),c=Math.max(30,n?.height??0),{cssStyles:l}=n,u=t.svg(o),d=x(n,{});n.look!==`handDrawn`&&(d.roughness=0,d.fillStyle=`solid`);let f=[{x:0,y:0},{x:s,y:0},{x:0,y:c},{x:s,y:c}],p=R(f),m=u.path(p,d),h=o.insert(()=>m,`:first-child`);return h.attr(`class`,`basic label-container outer-path`),l&&n.look!==`handDrawn`&&h.selectChildren(`path`).attr(`style`,l),a&&n.look!==`handDrawn`&&h.selectChildren(`path`).attr(`style`,a),h.attr(`transform`,`translate(${-s/2}, ${-c/2})`),I(n,h),n.intersect=function(e){return r.info(`Pill intersect`,n,{points:f}),K.polygon(n,f,e)},o}n(ot,`hourglass`);async function st(e,n,{config:{themeVariables:i,flowchart:a}}){let{labelStyles:o}=S(n);n.labelStyle=o;let s=n.assetHeight??48,c=n.assetWidth??48,l=Math.max(s,c),u=a?.wrappingWidth;n.width=Math.max(l,u??0);let{shapeSvg:d,bbox:f,label:p}=await P(e,n,`icon-shape default`),h=n.pos===`t`,g=l,_=l,{nodeBorder:v}=i,{stylesMap:y}=w(n),b=-_/2,C=-g/2,T=n.label?8:0,E=t.svg(d),D=x(n,{stroke:`none`,fill:`none`});n.look!==`handDrawn`&&(D.roughness=0,D.fillStyle=`solid`);let O=E.rectangle(b,C,_,g,D),k=Math.max(_,f.width),A=g+f.height+T,j=E.rectangle(-k/2,-A/2,k,A,{...D,fill:`transparent`,stroke:`none`}),M=d.insert(()=>O,`:first-child`),N=d.insert(()=>j);if(n.icon){let e=d.append(`g`);e.html(`<g>${await m(n.icon,{height:l,width:l,fallbackPrefix:``})}</g>`);let t=e.node().getBBox(),r=t.width,i=t.height,a=t.x,o=t.y;e.attr(`transform`,`translate(${-r/2-a},${h?f.height/2+T/2-i/2-o:-f.height/2-T/2-i/2-o})`),e.attr(`style`,`color: ${y.get(`stroke`)??v};`)}return p.attr(`transform`,`translate(${-f.width/2-(f.x-(f.left??0))},${h?-A/2:A/2-f.height})`),M.attr(`transform`,`translate(0,${h?f.height/2+T/2:-f.height/2-T/2})`),I(n,N),n.intersect=function(e){if(r.info(`iconSquare intersect`,n,e),!n.label)return K.rect(n,e);let t=n.x??0,i=n.y??0,a=n.height??0,o=[];return o=h?[{x:t-f.width/2,y:i-a/2},{x:t+f.width/2,y:i-a/2},{x:t+f.width/2,y:i-a/2+f.height+T},{x:t+_/2,y:i-a/2+f.height+T},{x:t+_/2,y:i+a/2},{x:t-_/2,y:i+a/2},{x:t-_/2,y:i-a/2+f.height+T},{x:t-f.width/2,y:i-a/2+f.height+T}]:[{x:t-_/2,y:i-a/2},{x:t+_/2,y:i-a/2},{x:t+_/2,y:i-a/2+g},{x:t+f.width/2,y:i-a/2+g},{x:t+f.width/2/2,y:i+a/2},{x:t-f.width/2,y:i+a/2},{x:t-f.width/2,y:i-a/2+g},{x:t-_/2,y:i-a/2+g}],K.polygon(n,o,e)},d}n(st,`icon`);async function ct(e,n,{config:{themeVariables:i,flowchart:a}}){let{labelStyles:o}=S(n);n.labelStyle=o;let s=n.assetHeight??48,c=n.assetWidth??48,l=Math.max(s,c),u=a?.wrappingWidth;n.width=Math.max(l,u??0);let{shapeSvg:d,bbox:f,label:p}=await P(e,n,`icon-shape default`),h=n.label?8:0,g=n.pos===`t`,{nodeBorder:_,mainBkg:v}=i,{stylesMap:y}=w(n),b=t.svg(d),C=x(n,{});n.look!==`handDrawn`&&(C.roughness=0,C.fillStyle=`solid`),C.stroke=y.get(`fill`)??v;let T=d.append(`g`);n.icon&&T.html(`<g>${await m(n.icon,{height:l,width:l,fallbackPrefix:``})}</g>`);let E=T.node().getBBox(),D=E.width,O=E.height,k=E.x,A=E.y,j=Math.max(D,O)*Math.SQRT2+40,M=b.circle(0,0,j,C),N=Math.max(j,f.width),F=j+f.height+h,L=b.rectangle(-N/2,-F/2,N,F,{...C,fill:`transparent`,stroke:`none`}),R=d.insert(()=>M,`:first-child`),z=d.insert(()=>L);return T.attr(`transform`,`translate(${-D/2-k},${g?f.height/2+h/2-O/2-A:-f.height/2-h/2-O/2-A})`),T.attr(`style`,`color: ${y.get(`stroke`)??_};`),p.attr(`transform`,`translate(${-f.width/2-(f.x-(f.left??0))},${g?-F/2:F/2-f.height})`),R.attr(`transform`,`translate(0,${g?f.height/2+h/2:-f.height/2-h/2})`),I(n,z),n.intersect=function(e){return r.info(`iconSquare intersect`,n,e),K.rect(n,e)},d}n(ct,`iconCircle`);async function lt(e,n,{config:{themeVariables:i,flowchart:a}}){let{labelStyles:o}=S(n);n.labelStyle=o;let s=n.assetHeight??48,c=n.assetWidth??48,l=Math.max(s,c),u=a?.wrappingWidth;n.width=Math.max(l,u??0);let{shapeSvg:d,bbox:f,halfPadding:p,label:h}=await P(e,n,`icon-shape default`),g=n.pos===`t`,_=l+p*2,v=l+p*2,{nodeBorder:y,mainBkg:b}=i,{stylesMap:C}=w(n),T=-v/2,E=-_/2,D=n.label?8:0,O=t.svg(d),k=x(n,{});n.look!==`handDrawn`&&(k.roughness=0,k.fillStyle=`solid`),k.stroke=C.get(`fill`)??b;let A=O.path(q(T,E,v,_,5),k),j=Math.max(v,f.width),M=_+f.height+D,N=O.rectangle(-j/2,-M/2,j,M,{...k,fill:`transparent`,stroke:`none`}),F=d.insert(()=>A,`:first-child`).attr(`class`,`icon-shape2`),L=d.insert(()=>N);if(n.icon){let e=d.append(`g`);e.html(`<g>${await m(n.icon,{height:l,width:l,fallbackPrefix:``})}</g>`);let t=e.node().getBBox(),r=t.width,i=t.height,a=t.x,o=t.y;e.attr(`transform`,`translate(${-r/2-a},${g?f.height/2+D/2-i/2-o:-f.height/2-D/2-i/2-o})`),e.attr(`style`,`color: ${C.get(`stroke`)??y};`)}return h.attr(`transform`,`translate(${-f.width/2-(f.x-(f.left??0))},${g?-M/2:M/2-f.height})`),F.attr(`transform`,`translate(0,${g?f.height/2+D/2:-f.height/2-D/2})`),I(n,L),n.intersect=function(e){if(r.info(`iconSquare intersect`,n,e),!n.label)return K.rect(n,e);let t=n.x??0,i=n.y??0,a=n.height??0,o=[];return o=g?[{x:t-f.width/2,y:i-a/2},{x:t+f.width/2,y:i-a/2},{x:t+f.width/2,y:i-a/2+f.height+D},{x:t+v/2,y:i-a/2+f.height+D},{x:t+v/2,y:i+a/2},{x:t-v/2,y:i+a/2},{x:t-v/2,y:i-a/2+f.height+D},{x:t-f.width/2,y:i-a/2+f.height+D}]:[{x:t-v/2,y:i-a/2},{x:t+v/2,y:i-a/2},{x:t+v/2,y:i-a/2+_},{x:t+f.width/2,y:i-a/2+_},{x:t+f.width/2/2,y:i+a/2},{x:t-f.width/2,y:i+a/2},{x:t-f.width/2,y:i-a/2+_},{x:t-v/2,y:i-a/2+_}],K.polygon(n,o,e)},d}n(lt,`iconRounded`);async function ut(e,n,{config:{themeVariables:i,flowchart:a}}){let{labelStyles:o}=S(n);n.labelStyle=o;let s=n.assetHeight??48,c=n.assetWidth??48,l=Math.max(s,c),u=a?.wrappingWidth;n.width=Math.max(l,u??0);let{shapeSvg:d,bbox:f,halfPadding:p,label:h}=await P(e,n,`icon-shape default`),g=n.pos===`t`,_=l+p*2,v=l+p*2,{nodeBorder:y,mainBkg:b}=i,{stylesMap:C}=w(n),T=-v/2,E=-_/2,D=n.label?8:0,O=t.svg(d),k=x(n,{});n.look!==`handDrawn`&&(k.roughness=0,k.fillStyle=`solid`),k.stroke=C.get(`fill`)??b;let A=O.path(q(T,E,v,_,.1),k),j=Math.max(v,f.width),M=_+f.height+D,N=O.rectangle(-j/2,-M/2,j,M,{...k,fill:`transparent`,stroke:`none`}),F=d.insert(()=>A,`:first-child`),L=d.insert(()=>N);if(n.icon){let e=d.append(`g`);e.html(`<g>${await m(n.icon,{height:l,width:l,fallbackPrefix:``})}</g>`);let t=e.node().getBBox(),r=t.width,i=t.height,a=t.x,o=t.y;e.attr(`transform`,`translate(${-r/2-a},${g?f.height/2+D/2-i/2-o:-f.height/2-D/2-i/2-o})`),e.attr(`style`,`color: ${C.get(`stroke`)??y};`)}return h.attr(`transform`,`translate(${-f.width/2-(f.x-(f.left??0))},${g?-M/2:M/2-f.height})`),F.attr(`transform`,`translate(0,${g?f.height/2+D/2:-f.height/2-D/2})`),I(n,L),n.intersect=function(e){if(r.info(`iconSquare intersect`,n,e),!n.label)return K.rect(n,e);let t=n.x??0,i=n.y??0,a=n.height??0,o=[];return o=g?[{x:t-f.width/2,y:i-a/2},{x:t+f.width/2,y:i-a/2},{x:t+f.width/2,y:i-a/2+f.height+D},{x:t+v/2,y:i-a/2+f.height+D},{x:t+v/2,y:i+a/2},{x:t-v/2,y:i+a/2},{x:t-v/2,y:i-a/2+f.height+D},{x:t-f.width/2,y:i-a/2+f.height+D}]:[{x:t-v/2,y:i-a/2},{x:t+v/2,y:i-a/2},{x:t+v/2,y:i-a/2+_},{x:t+f.width/2,y:i-a/2+_},{x:t+f.width/2/2,y:i+a/2},{x:t-f.width/2,y:i+a/2},{x:t-f.width/2,y:i-a/2+_},{x:t-v/2,y:i-a/2+_}],K.polygon(n,o,e)},d}n(ut,`iconSquare`);async function dt(e,n,{config:{flowchart:i}}){let a=new Image;a.src=n?.img??``,await a.decode();let o=Number(a.naturalWidth.toString().replace(`px`,``)),s=Number(a.naturalHeight.toString().replace(`px`,``));n.imageAspectRatio=o/s;let{labelStyles:c}=S(n);n.labelStyle=c;let l=i?.wrappingWidth;n.defaultWidth=i?.wrappingWidth;let u=Math.max(n.label?l??0:0,n?.assetWidth??o),d=n.constraint===`on`&&n?.assetHeight?n.assetHeight*n.imageAspectRatio:u,f=n.constraint===`on`?d/n.imageAspectRatio:n?.assetHeight??s;n.width=Math.max(d,l??0);let{shapeSvg:p,bbox:m,label:h}=await P(e,n,`image-shape default`),g=n.pos===`t`,_=-d/2,v=-f/2,y=n.label?8:0,b=t.svg(p),C=x(n,{});n.look!==`handDrawn`&&(C.roughness=0,C.fillStyle=`solid`);let w=b.rectangle(_,v,d,f,C),T=Math.max(d,m.width),E=f+m.height+y,D=b.rectangle(-T/2,-E/2,T,E,{...C,fill:`none`,stroke:`none`}),O=p.insert(()=>w,`:first-child`),k=p.insert(()=>D);if(n.img){let e=p.append(`image`);e.attr(`href`,n.img),e.attr(`width`,d),e.attr(`height`,f),e.attr(`preserveAspectRatio`,`none`),e.attr(`transform`,`translate(${-d/2},${g?E/2-f:-E/2})`)}return h.attr(`transform`,`translate(${-m.width/2-(m.x-(m.left??0))},${g?-f/2-m.height/2-y/2:f/2-m.height/2+y/2})`),O.attr(`transform`,`translate(0,${g?m.height/2+y/2:-m.height/2-y/2})`),I(n,k),n.intersect=function(e){if(r.info(`iconSquare intersect`,n,e),!n.label)return K.rect(n,e);let t=n.x??0,i=n.y??0,a=n.height??0,o=[];return o=g?[{x:t-m.width/2,y:i-a/2},{x:t+m.width/2,y:i-a/2},{x:t+m.width/2,y:i-a/2+m.height+y},{x:t+d/2,y:i-a/2+m.height+y},{x:t+d/2,y:i+a/2},{x:t-d/2,y:i+a/2},{x:t-d/2,y:i-a/2+m.height+y},{x:t-m.width/2,y:i-a/2+m.height+y}]:[{x:t-d/2,y:i-a/2},{x:t+d/2,y:i-a/2},{x:t+d/2,y:i-a/2+f},{x:t+m.width/2,y:i-a/2+f},{x:t+m.width/2/2,y:i+a/2},{x:t-m.width/2,y:i+a/2},{x:t-m.width/2,y:i-a/2+f},{x:t-d/2,y:i-a/2+f}],K.polygon(n,o,e)},p}n(dt,`imageSquare`);async function ft(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.padding??0,o=a,s=n.look===`neo`?a*2:a,{shapeSvg:c,bbox:l}=await P(e,n,L(n)),u=Math.max(l.height+o*2,n.height??0),d=Math.max(l.width+s*2,(n.width??0)-u),f=[{x:0,y:0},{x:d,y:0},{x:d+3*u/6,y:-u},{x:-3*u/6,y:-u}],p,{cssStyles:m}=n;if(n.look===`handDrawn`){let e=t.svg(c),r=x(n,{}),i=R(f),a=e.path(i,r);p=c.insert(()=>a,`:first-child`).attr(`transform`,`translate(${-d/2}, ${u/2})`),m&&p.attr(`style`,m)}else p=J(c,d,u,f);return i&&p.attr(`style`,i),n.width=d,n.height=u,I(n,p),n.intersect=function(e){return K.polygon(n,f,e)},c}n(ft,`inv_trapezoid`);async function pt(e,t){let{shapeSvg:n,bbox:r,label:i}=await P(e,t,`label`),a=n.insert(`rect`,`:first-child`);return a.attr(`width`,.1).attr(`height`,.1),n.attr(`class`,`label edgeLabel`),i.attr(`transform`,`translate(${-(r.width/2)-(r.x-(r.left??0))}, ${-(r.height/2)-(r.y-(r.top??0))})`),I(t,a),t.intersect=function(e){return K.rect(t,e)},n}n(pt,`labelRect`);async function mt(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.padding??0,o=a,s=n.look===`neo`?a*2:a,{shapeSvg:c,bbox:l}=await P(e,n,L(n)),u=Math.max(l.height+o,n.height??0),d=Math.max(l.width+s,(n.width??0)-u),f=[{x:0,y:0},{x:d+3*u/6,y:0},{x:d,y:-u},{x:-(3*u)/6,y:-u}],p,{cssStyles:m}=n;if(n.look===`handDrawn`){let e=t.svg(c),r=x(n,{}),i=R(f),a=e.path(i,r);p=c.insert(()=>a,`:first-child`).attr(`transform`,`translate(${-d/2}, ${u/2})`),m&&p.attr(`style`,m)}else p=J(c,d,u,f);return i&&p.attr(`style`,i),n.width=d,n.height=u,I(n,p),n.intersect=function(e){return K.polygon(n,f,e)},c}n(mt,`lean_left`);async function ht(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.padding??0,o=a,s=n.look===`neo`?a*2:a,{shapeSvg:c,bbox:l}=await P(e,n,L(n)),u=Math.max(l.height+o,n.height??0),d=Math.max(l.width+s,(n.width??0)-u),f=[{x:-3*u/6,y:0},{x:d,y:0},{x:d+3*u/6,y:-u},{x:0,y:-u}],p,{cssStyles:m}=n;if(n.look===`handDrawn`){let e=t.svg(c),r=x(n,{}),i=R(f),a=e.path(i,r);p=c.insert(()=>a,`:first-child`).attr(`transform`,`translate(${-d/2}, ${u/2})`),m&&p.attr(`style`,m)}else p=J(c,d,u,f);return i&&p.attr(`style`,i),n.width=d,n.height=u,I(n,p),n.intersect=function(e){return K.polygon(n,f,e)},c}n(ht,`lean_right`);function gt(e,n){let{labelStyles:i,nodeStyles:a}=S(n);n.label=``,n.labelStyle=i;let o=e.insert(`g`).attr(`class`,L(n)).attr(`id`,n.domId??n.id),{cssStyles:s}=n,c=Math.max(35,n?.width??0),l=Math.max(35,n?.height??0),u=[{x:c,y:0},{x:0,y:l+7/2},{x:c-14,y:l+7/2},{x:0,y:2*l},{x:c,y:l-7/2},{x:14,y:l-7/2}],d=t.svg(o),f=x(n,{});n.look!==`handDrawn`&&(f.roughness=0,f.fillStyle=`solid`);let p=R(u),m=d.path(p,f),h=o.insert(()=>m,`:first-child`);return h.attr(`class`,`outer-path`),s&&n.look!==`handDrawn`&&h.selectAll(`path`).attr(`style`,s),a&&n.look!==`handDrawn`&&h.selectAll(`path`).attr(`style`,a),h.attr(`transform`,`translate(-${c/2},${-l})`),I(n,h),n.intersect=function(e){return r.info(`lightningBolt intersect`,n,e),K.polygon(n,u,e)},o}n(gt,`lightningBolt`);var _t=n((e,t,n,r,i,a,o)=>[`M${e},${t+a}`,`a${i},${a} 0,0,0 ${n},0`,`a${i},${a} 0,0,0 ${-n},0`,`l0,${r}`,`a${i},${a} 0,0,0 ${n},0`,`l0,${-r}`,`M${e},${t+a+o}`,`a${i},${a} 0,0,0 ${n},0`].join(` `),`createCylinderPathD`),vt=n((e,t,n,r,i,a,o)=>[`M${e},${t+a}`,`M${e+n},${t+a}`,`a${i},${a} 0,0,0 ${-n},0`,`l0,${r}`,`a${i},${a} 0,0,0 ${n},0`,`l0,${-r}`,`M${e},${t+a+o}`,`a${i},${a} 0,0,0 ${n},0`].join(` `),`createOuterCylinderPathD`),yt=n((e,t,n,r,i,a)=>[`M${e-n/2},${-r/2}`,`a${i},${a} 0,0,0 ${n},0`].join(` `),`createInnerCylinderPathD`),bt=10,xt=10;async function St(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.padding??0,o=n.look===`neo`?16:a,s=n.look===`neo`?24:a;if(n.width||n.height){let e=n.width??0;n.width=(n.width??0)-o,n.width<xt&&(n.width=xt);let t=e/2/(2.5+e/50);n.height=(n.height??0)-s-t*3,n.height<bt&&(n.height=bt)}let{shapeSvg:c,bbox:l,label:u}=await P(e,n,L(n)),d=(n?.width?n?.width:l.width)+o*2,f=d/2,p=f/(2.5+d/50),m=(n?.height?n?.height:l.height)+p+s*2,h=m*.1,_,{cssStyles:v}=n;if(n.look===`handDrawn`){let e=t.svg(c),r=vt(0,0,d,m,f,p,h),i=yt(0,p,d,m,f,p),a=x(n,{}),o=e.path(r,a),s=e.path(i,a);c.insert(()=>s,`:first-child`).attr(`class`,`line`),_=c.insert(()=>o,`:first-child`),_.attr(`class`,`basic label-container`),v&&_.attr(`style`,v)}else{let e=_t(0,0,d,m,f,p,h);_=c.insert(`path`,`:first-child`).attr(`d`,e).attr(`class`,`basic label-container outer-path`).attr(`style`,g(v)).attr(`style`,i)}return _.attr(`label-offset-y`,p),_.attr(`transform`,`translate(${-d/2}, ${-(m/2+p)})`),I(n,_),u.attr(`transform`,`translate(${-(l.width/2)-(l.x-(l.left??0))}, ${-(l.height/2)+p-(l.y-(l.top??0))})`),n.intersect=function(e){let t=K.rect(n,e),r=t.x-(n.x??0);if(f!=0&&(Math.abs(r)<(n.width??0)/2||Math.abs(r)==(n.width??0)/2&&Math.abs(t.y-(n.y??0))>(n.height??0)/2-p)){let i=p*p*(1-r*r/(f*f));i>0&&(i=Math.sqrt(i)),i=p-i,e.y-(n.y??0)>0&&(i=-i),t.y+=i}return t},c}n(St,`linedCylinder`);async function Ct(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.padding??0,o=n.look===`neo`?16:a,s=n.look===`neo`?12:a;(n.width||n.height)&&(n.width=(n.width??0)*10/11-o*2,n.width<10&&(n.width=10),n.height=(n?.height??0)-s*2,n.height<10&&(n.height=10));let{shapeSvg:c,bbox:l,label:u}=await P(e,n,L(n)),d=(n?.width?n?.width:l.width)+(o??0)*2,f=(n?.height?n?.height:l.height)+(s??0)*2,p=n.look===`neo`?f/4:f/8,m=f+p,{cssStyles:h}=n,g=t.svg(c),_=x(n,{});n.look!==`handDrawn`&&(_.roughness=0,_.fillStyle=`solid`);let v=[{x:-d/2-d/2*.1,y:-m/2},{x:-d/2-d/2*.1,y:m/2},...z(-d/2-d/2*.1,m/2,d/2+d/2*.1,m/2,p,.8),{x:d/2+d/2*.1,y:-m/2},{x:-d/2-d/2*.1,y:-m/2},{x:-d/2,y:-m/2},{x:-d/2,y:m/2*1.1},{x:-d/2,y:-m/2}],y=g.polygon(v.map(e=>[e.x,e.y]),_),b=c.insert(()=>y,`:first-child`);return b.attr(`class`,`basic label-container outer-path`),h&&n.look!==`handDrawn`&&b.selectAll(`path`).attr(`style`,h),i&&n.look!==`handDrawn`&&b.selectAll(`path`).attr(`style`,i),b.attr(`transform`,`translate(0,${-p/2})`),u.attr(`transform`,`translate(${-d/2+(n.padding??0)+d/2*.1/2-(l.x-(l.left??0))},${-f/2+(n.padding??0)-p-(l.y-(l.top??0))})`),I(n,b),n.intersect=function(e){return K.polygon(n,v,e)},c}n(Ct,`linedWaveEdgedRect`);var wt=56,Tt=72,Et=8,Dt=2,Ot=8,kt={normal:`usecase-actor-shape usecase-actor-normal`,hollow:`usecase-actor-hollow`,awesome:`usecase-actor-awesome`,icon:`usecase-actor-icon`},At=Math.PI/3,jt=.6,Mt=n((e,t)=>{let n=t*jt,r=t*Math.sqrt(1-jt**2),i=Math.cos(At),a=-Math.sin(At),o=n*-a,s=e+n*i,c=r*i,l=r*a;return`M ${o-c} ${s-l} L ${o+c} ${s+l}`},`businessMarkerPathForCircle`),Nt={normal:Mt(-24,12),hollow:Mt(-23,9),awesome:Mt(-21,13),icon:`M 12 -8 L 26 -26`},Pt=n((e,t,n)=>{let r=(t.x??0)-(t.left??0),i=(t.y??0)-(t.top??0);e.attr(`transform`,`translate(${-t.width/2-r},${n-t.height/2-i})`)},`positionLabel`),Ft=n((e,n,r,i,a=!1)=>{if(n.look===`handDrawn`){let o=t.svg(e).path(r,x(n,a?{fill:`none`}:{}));return e.insert(()=>o,`:first-child`).attr(`class`,i)}let o=e.append(`path`).attr(`class`,i).attr(`d`,r);return a&&o.attr(`fill`,`none`),o},`appendActorPath`),It=n((e,n,r,i,a,o,s=!1)=>{if(n.look===`handDrawn`){let c=t.svg(e).circle(r,i,a*2,x(n,s?{fill:`none`}:{}));return e.insert(()=>c,`:first-child`).attr(`class`,o)}let c=e.append(`circle`).attr(`class`,o).attr(`cx`,r).attr(`cy`,i).attr(`r`,a);return s&&c.attr(`fill`,`none`),c},`appendActorCircle`),Lt=n((e,t,n)=>{t.business&&e.append(`path`).attr(`class`,`usecase-business-marker usecase-actor-business-marker`).attr(`d`,Nt[n]).attr(`fill`,`none`).attr(`style`,`stroke: inherit !important; stroke-width: inherit !important`)},`appendBusinessActorMarker`);async function Rt(e,t,n,r){let{labelStyles:i,nodeStyles:a}=S(t);t.labelStyle=i;let{shapeSvg:s,bbox:c,label:l}=await P(e,n===`icon`||t.stereotype!==void 0?{...t,icon:n===`icon`?void 0:t.icon,stereotype:void 0}:t,L(t,`usecase-actor-variant usecase-actor-${n}`)),u=t.accessibleName??t.label;u&&s.attr(`role`,`img`).attr(`aria-label`,u),l.attr(`class`,`label actor-label usecase-actor-label`);let{theme:d,themeVariables:f}=o();T(s,t.colorIndex,d,f.borderColorArray);let p,m;if(t.stereotype){let e=await F(s,`\xAB${t.stereotype}\xBB`,{labelStyle:i,useHtmlLabels:t.useHtmlLabels,padding:0,centerLabel:!0,width:t.wrappingWidth});p=e.label.attr(`class`,`label usecase-stereotype`),m=e.bbox}let h=s.append(`g`).attr(`class`,`usecase-actor-glyph ${kt[n]}`).attr(`style`,a||null);await r(h,t),Lt(h,t,n);let g=t.padding??Ot,_=m?.height??0,v=Tt+Et+c.height+(m?_+Dt:0),y=Math.max(wt,c.width,m?.width??0)+g*2,b=v+g*2,x=-v/2;h.attr(`transform`,`translate(0,${x+Tt/2})`);let C=x+Tt+Et;return p&&m&&(C+=_/2,Pt(p,m,C),C+=_/2+Dt),Pt(l,c,C+c.height/2),I(t,s.insert(`rect`,`:first-child`).attr(`class`,`usecase-actor-outline`).attr(`x`,-y/2).attr(`y`,-b/2).attr(`width`,y).attr(`height`,b).attr(`opacity`,0).attr(`aria-hidden`,`true`)),t.intersect=e=>K.rect(t,e),s}n(Rt,`renderUsecaseActor`);var zt=[`M 0 -12`,`C 6.627 -12 12 -17.373 12 -24`,`C 12 -30.627 6.627 -36 0 -36`,`C -6.627 -36 -12 -30.627 -12 -24`,`C -12 -17.373 -6.627 -12 0 -12 Z`,`M 0 -12 V 8`,`M -17 -5 H 17`,`M 0 8 L -15 28`,`M 0 8 L 15 28`].join(` `);async function Bt(e,t){return Rt(e,t,`normal`,(e,t)=>{Ft(e,t,zt,`usecase-actor-stick`)})}n(Bt,`usecaseActor`);var Vt=[`M 0 -34`,`C 7.18 -34 13 -28.18 13 -21`,`C 13 -13.82 7.18 -8 0 -8`,`C -7.18 -8 -13 -13.82 -13 -21`,`C -13 -28.18 -7.18 -34 0 -34 Z`,`M -24 25`,`C -24 7 -14 -3 0 -3`,`C 14 -3 24 7 24 25`,`C 24 28 21 30 18 30`,`H -18`,`C -21 30 -24 28 -24 25 Z`].join(` `);async function Ht(e,t){return Rt(e,t,`awesome`,(e,t)=>{Ft(e,t,Vt,`usecase-actor-awesome-silhouette`)})}n(Ht,`usecaseActorAwesome`);var Ut=[`M -22 -10`,`H 22`,`V 0`,`H 6`,`L 22 17`,`L 13 28`,`L 0 13`,`L -13 28`,`L -22 17`,`L -6 0`,`H -22`,`Z`].join(` `);async function Wt(e,t){return Rt(e,t,`hollow`,(e,t)=>{It(e,t,0,-23,9,`usecase-actor-hollow-head`,!0),Ft(e,t,Ut,`usecase-actor-hollow-body`,!0)})}n(Wt,`usecaseActorHollow`);var Gt=52,Kt=42,qt=-2,Jt=n(async(e,n)=>{let r=-Gt/2,i=qt-Gt/2;if(n.look===`handDrawn`){let a=t.svg(e).rectangle(r,i,Gt,Gt,x(n,{}));e.insert(()=>a,`:first-child`).attr(`class`,`usecase-actor-icon-frame`)}else e.append(`rect`).attr(`class`,`usecase-actor-icon-frame`).attr(`x`,r).attr(`y`,i).attr(`width`,Gt).attr(`height`,Gt).attr(`rx`,4).attr(`ry`,4);let a=n.icon??``,o=await p(a.includes(`:`)?a:`fa:${a}`),s=await m(a,{height:Kt,width:Kt,fallbackPrefix:`fa`}),c=e.append(`g`).attr(`class`,`usecase-actor-icon-symbol${o?``:` usecase-actor-icon-fallback`}`).attr(`aria-hidden`,`true`).html(`<g>${s}</g>`),l=c.node()?.getBBox();l&&c.attr(`transform`,`translate(${-l.width/2-l.x},${qt-l.height/2-l.y})`)},`drawIconActor`);async function Yt(e,t){return Rt(e,t,`icon`,Jt)}n(Yt,`usecaseActorIcon`);var Xt=n((e,t,n)=>{let r=(t.x??0)-(t.left??0),i=(t.y??0)-(t.top??0);e.attr(`transform`,`translate(${-t.width/2-r},${n-t.height/2-i})`)},`positionLabel`);async function Zt(e,n){let r=n,{labelStyles:i,nodeStyles:a}=S(n);n.labelStyle=i;let{shapeSvg:s,bbox:c,halfPadding:l,label:u}=await P(e,r.stereotype?{...n,stereotype:void 0}:n,L(n,`usecase-business-shape`));u.attr(`class`,`label usecase-label`);let{theme:d,themeVariables:f}=o();T(s,n.colorIndex,d,f.borderColorArray);let p,m;if(r.stereotype){let e=await F(s,`\xAB${r.stereotype}\xBB`,{labelStyle:i,useHtmlLabels:n.useHtmlLabels,padding:0,centerLabel:!0,width:n.wrappingWidth});p=e.label.attr(`class`,`label usecase-stereotype`),m=e.bbox}let h=m?2:0,g=c.height+(m?.height??0)+h,_=Math.max(c.width,m?.width??0),v=l??10,y=_/2+v*2,b=g/2+v*2,C=Math.min(Math.max(v/5,1),v/2),w=_/2+C,E=y-C,D=w/y,O=E/y,k=b*Math.sqrt(Math.max(0,1-D*D)),A=-b*Math.sqrt(Math.max(0,1-O*O));p&&m&&Xt(p,m,-g/2+m.height/2),Xt(u,c,g/2-c.height/2);let j;if(n.look===`handDrawn`){let e=t.svg(s).ellipse(0,0,y*2,b*2,x(n,{}));j=s.insert(()=>e,`:first-child`).attr(`class`,`basic label-container usecase-business-ellipse`)}else j=s.insert(`ellipse`,`:first-child`).attr(`class`,`basic label-container usecase-business-ellipse`).attr(`style`,a).attr(`rx`,y).attr(`ry`,b).attr(`cx`,0).attr(`cy`,0);s.append(`path`).attr(`class`,`usecase-business-marker`).attr(`d`,`M ${w} ${k} L ${E} ${A}`).attr(`fill`,`none`).attr(`style`,a||null);let M=r.accessibleName??r.label;return M&&s.attr(`role`,`img`).attr(`aria-label`,M),I(n,j),n.calcIntersect=(e,t)=>K.ellipse(e,e.width/2,e.height/2,t),n.intersect=e=>K.ellipse(n,y,b,e),s}n(Zt,`usecaseBusiness`);var Qt=8,$t=4,en=1,tn=n((e,t,n,r)=>{let i=(t.x??0)-(t.left??0),a=(t.y??0)-(t.top??0);e.attr(`transform`,`translate(${n-t.width/2-i},${r-t.height/2-a})`)},`positionLabel`),nn=n(e=>{let t=Number.parseFloat(e??``);return Number.isFinite(t)&&t>=0?t:en},`numericStrokeWidth`);async function rn(e,r){let i=r,{labelStyles:a,nodeStyles:o}=S(r),{stylesMap:s}=w(r);r.labelStyle=a;let{shapeSvg:c,bbox:l,label:u}=await P(e,r,L(r,`usecase-json-table`));c.attr(`role`,`img`),i.accessibleName&&c.attr(`aria-label`,i.accessibleName),u.attr(`class`,`label usecase-json-title`);let d=c.append(`g`).attr(`class`,`usecase-json-table-grid`),f=[];for(let e of i.jsonRows??[]){let t=await F(d,e.key,{labelStyle:a,useHtmlLabels:r.useHtmlLabels,padding:0,centerLabel:!0}),n=await F(d,e.value,{labelStyle:a,useHtmlLabels:r.useHtmlLabels,padding:0,centerLabel:!0});f.push({key:{label:t.label.attr(`class`,`label usecase-json-key`),bbox:t.bbox},value:{label:n.label.attr(`class`,`label usecase-json-value`),bbox:n.bbox}})}let p=Math.max(0,...f.map(({key:e})=>e.bbox.width))+Qt*2,m=Math.max(0,...f.map(({value:e})=>e.bbox.width))+Qt*2,h=l.width+Qt*2,g=Math.max(h,p+m),_=m+Math.max(0,g-p-m),v=l.height+$t*2,y=f.map(({key:e,value:t})=>Math.max(e.bbox.height,t.bbox.height)+$t*2),b=v+y.reduce((e,t)=>e+t,0),C=nn(s.get(`stroke-width`)),T=g+C*2,E=b+C*2,D=-g/2,O=-b/2,k=r.look===`handDrawn`?t.svg(c):void 0,A=k?x(r,{}):void 0,j=n((e,t,n,r,i,a)=>{if(k&&A){let o=k.rectangle(n,r,i,a,A);return e.insert(()=>o,`:first-child`).attr(`class`,t)}return e.insert(`rect`,`:first-child`).attr(`class`,t).attr(`x`,n).attr(`y`,r).attr(`width`,i).attr(`height`,a).attr(`style`,o)},`insertCell`),M=j(c,`label-container usecase-json-border`,-T/2,-E/2,T,E);j(d,`usecase-json-cell usecase-json-title-cell`,D,O,g,v),d.node()?.append(u.node()),tn(u,l,0,O+v/2);let N=O+v;return f.forEach(({key:e,value:t},n)=>{let r=y[n],i=d.append(`g`).attr(`class`,`usecase-json-row`).attr(`data-row-index`,n).attr(`transform`,`translate(0,${N})`);j(i,`usecase-json-cell usecase-json-key-cell`,D,0,p,r),j(i,`usecase-json-cell usecase-json-value-cell`,D+p,0,_,r),i.node()?.append(e.label.node(),t.label.node()),tn(e.label,e.bbox,D+p/2,r/2),tn(t.label,t.bbox,D+p+_/2,r/2),N+=r}),I(r,M),r.intersect=e=>K.rect(r,e),c}n(rn,`usecaseJsonTable`);async function an(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.padding??0,o=n.look===`neo`?16:a,s=n.look===`neo`?12:a,c=n.look===`neo`?10:5;(n.width||n.height)&&(n.width=Math.max((n?.width??0)-o*2-2*c,10),n.height=Math.max((n?.height??0)-s*2-2*c,10));let{shapeSvg:l,bbox:u,label:d}=await P(e,n,L(n)),f=(n?.width?n?.width:u.width)+o*2+2*c,p=(n?.height?n?.height:u.height)+s*2+2*c,m=f-2*c,h=p-2*c,g=-m/2,_=-h/2,{cssStyles:v}=n,y=t.svg(l),b=x(n,{}),C=[{x:g-c,y:_+c},{x:g-c,y:_+h+c},{x:g+m-c,y:_+h+c},{x:g+m-c,y:_+h},{x:g+m,y:_+h},{x:g+m,y:_+h-c},{x:g+m+c,y:_+h-c},{x:g+m+c,y:_-c},{x:g+c,y:_-c},{x:g+c,y:_},{x:g,y:_},{x:g,y:_+c}],w=[{x:g,y:_+c},{x:g+m-c,y:_+c},{x:g+m-c,y:_+h},{x:g+m,y:_+h},{x:g+m,y:_},{x:g,y:_}];n.look!==`handDrawn`&&(b.roughness=0,b.fillStyle=`solid`);let T=R(C),E=y.path(T,b),D=R(w),O=y.path(D,b);n.look!==`handDrawn`&&(E=ee(E),O=ee(O));let k=l.insert(`g`,`:first-child`);return k.insert(()=>E),k.insert(()=>O),k.attr(`class`,`basic label-container outer-path`),v&&n.look!==`handDrawn`&&k.selectAll(`path`).attr(`style`,v),i&&n.look!==`handDrawn`&&k.selectAll(`path`).attr(`style`,i),d.attr(`transform`,`translate(${-(u.width/2)-c-(u.x-(u.left??0))}, ${-(u.height/2)+c-(u.y-(u.top??0))})`),I(n,k),n.intersect=function(e){return K.polygon(n,C,e)},l}n(an,`multiRect`);async function on(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let{shapeSvg:a,bbox:o,label:s}=await P(e,n,L(n)),c=n.padding??0,l=n.look===`neo`?16:c,u=n.look===`neo`?12:c,d=!0;(n.width||n.height)&&(d=!1,n.width=(n?.width??0)-l*2,n.height=(n?.height??0)-u*3);let f=Math.max(o.width,n?.width??0)+l*2,p=Math.max(o.height,n?.height??0)+u*3,m=n.look===`neo`?p/4:p/8,h=p+(d?m/2:-m/2),g=-f/2,_=-h/2,{cssStyles:v}=n,y=z(g-10,_+h+10,g+f-10,_+h+10,m,.8),b=y?.[y.length-1],C=[{x:g-10,y:_+10},{x:g-10,y:_+h+10},...y,{x:g+f-10,y:b.y-10},{x:g+f,y:b.y-10},{x:g+f,y:b.y-20},{x:g+f+10,y:b.y-20},{x:g+f+10,y:_-10},{x:g+10,y:_-10},{x:g+10,y:_},{x:g,y:_},{x:g,y:_+10}],w=[{x:g,y:_+10},{x:g+f-10,y:_+10},{x:g+f-10,y:b.y-10},{x:g+f,y:b.y-10},{x:g+f,y:_},{x:g,y:_}],T=t.svg(a),E=x(n,{});n.look!==`handDrawn`&&(E.roughness=0,E.fillStyle=`solid`);let D=R(C),O=T.path(D,E),k=R(w),A=T.path(k,E),j=a.insert(()=>O,`:first-child`);return j.insert(()=>A),j.attr(`class`,`basic label-container outer-path`),v&&n.look!==`handDrawn`&&j.selectAll(`path`).attr(`style`,v),i&&n.look!==`handDrawn`&&j.selectAll(`path`).attr(`style`,i),j.attr(`transform`,`translate(0,${-m/2})`),s.attr(`transform`,`translate(${-(o.width/2)-10-(o.x-(o.left??0))}, ${-(o.height/2)+10-m-(o.y-(o.top??0))})`),I(n,j),n.intersect=function(e){return K.polygon(n,C,e)},a}n(on,`multiWaveEdgedRectangle`);async function sn(e,n,{config:{themeVariables:r}}){let{labelStyles:i,nodeStyles:a}=S(n);n.labelStyle=i,n.useHtmlLabels||u(d())||(n.centerLabel=!0);let{shapeSvg:o,bbox:s,label:c}=await P(e,n,L(n)),l=Math.max(s.width+(n.padding??0)*2,n?.width??0),f=Math.max(s.height+(n.padding??0)*2,n?.height??0),p=-l/2,m=-f/2,{cssStyles:h}=n,g=t.svg(o),_=x(n,{fill:r.noteBkgColor,stroke:r.noteBorderColor});n.look!==`handDrawn`&&(_.roughness=0,_.fillStyle=`solid`);let v=g.rectangle(p,m,l,f,_),y=o.insert(()=>v,`:first-child`);return y.attr(`class`,`basic label-container outer-path`),c.attr(`class`,`label noteLabel`),h&&n.look!==`handDrawn`&&y.selectAll(`path`).attr(`style`,h),a&&n.look!==`handDrawn`&&y.selectAll(`path`).attr(`style`,a),c.attr(`transform`,`translate(${-s.width/2-(s.x-(s.left??0))}, ${-(s.height/2)-(s.y-(s.top??0))})`),I(n,y),n.intersect=function(e){return K.rect(n,e)},o}n(sn,`note`);var cn=n((e,t,n)=>[`M${e+n/2},${t}`,`L${e+n},${t-n/2}`,`L${e+n/2},${t-n}`,`L${e},${t-n/2}`,`Z`].join(` `),`createDecisionBoxPathD`);async function ln(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let{shapeSvg:a,bbox:o}=await P(e,n,L(n)),s=o.width+(n.padding??0)+(o.height+(n.padding??0)),c=.5,l=[{x:s/2,y:0},{x:s,y:-s/2},{x:s/2,y:-s},{x:0,y:-s/2}],u,{cssStyles:d}=n;if(n.look===`handDrawn`){let e=t.svg(a),r=x(n,{}),i=cn(0,0,s),o=e.path(i,r);u=a.insert(()=>o,`:first-child`).attr(`transform`,`translate(${-s/2+c}, ${s/2})`),d&&u.attr(`style`,d)}else u=J(a,s,s,l),u.attr(`transform`,`translate(${-s/2+c}, ${s/2})`);return i&&u.attr(`style`,i),I(n,u),n.calcIntersect=function(e,t){let n=e.width,r=[{x:n/2,y:0},{x:n,y:-n/2},{x:n/2,y:-n},{x:0,y:-n/2}];return K.polygon(e,r,t)},n.intersect=function(e){return this.calcIntersect(n,e)},a}n(ln,`question`);async function un(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.padding??0,o=n.look===`neo`?21:a??0,s=n.look===`neo`?12:a??0,{shapeSvg:c,bbox:l,label:u}=await P(e,n,L(n)),d=l.width+(n.look===`neo`?o*2:o),f=Math.max(l.height+(n.look===`neo`?s*2:s),n.height??0),p=f/4,m=-Math.max(d,(n.width??0)-p)/2,h=-f/2,g=h/2,_=[{x:m+g,y:h},{x:m,y:0},{x:m+g,y:-h},{x:-m,y:-h},{x:-m,y:h}],{cssStyles:v}=n,y=t.svg(c),b=x(n,{});n.look!==`handDrawn`&&(b.roughness=0,b.fillStyle=`solid`);let C=R(_),w=y.path(C,b),T=c.insert(()=>w,`:first-child`);return T.attr(`class`,`basic label-container outer-path`),v&&n.look!==`handDrawn`&&T.selectAll(`path`).attr(`style`,v),i&&n.look!==`handDrawn`&&T.selectAll(`path`).attr(`style`,i),T.attr(`transform`,`translate(${-g/2},0)`),u.attr(`transform`,`translate(${-g/2-l.width/2-(l.x-(l.left??0))}, ${-(l.height/2)-(l.y-(l.top??0))})`),I(n,T),n.intersect=function(e){return K.polygon(n,_,e)},c}n(un,`rect_left_inv_arrow`);async function dn(n,i){let{labelStyles:a,nodeStyles:s}=S(i);i.labelStyle=a;let c;c=i.cssClasses?`node `+i.cssClasses:`node default`;let l=n.insert(`g`).attr(`class`,c).attr(`id`,i.domId||i.id),d=l.insert(`g`),f=l.insert(`g`).attr(`class`,`label`).attr(`style`,s),p=i.description,m=i.label,h=await se(f,m,i.labelStyle,!0,!0),g={width:0,height:0};if(u(o())){let t=h.children[0],n=e(h);g=t.getBoundingClientRect(),n.attr(`width`,g.width),n.attr(`height`,g.height)}r.info(`Text 2`,p);let _=p||[],v=h.getBBox(),y=await se(f,Array.isArray(_)?_.join(`<br/>`):_,i.labelStyle,!0,!0),b=y.children[0],C=e(y);g=b.getBoundingClientRect(),C.attr(`width`,g.width),C.attr(`height`,g.height);let w=(i.padding||0)/2;e(y).attr(`transform`,`translate( `+(g.width>v.width?0:(v.width-g.width)/2)+`, `+(v.height+w+5)+`)`),e(h).attr(`transform`,`translate( `+(g.width<v.width?0:-(v.width-g.width)/2)+`, 0)`),g=f.node().getBBox(),f.attr(`transform`,`translate(`+-g.width/2+`, `+(-g.height/2-w+3)+`)`);let T=g.width+(i.padding||0),E=g.height+(i.padding||0),D=-g.width/2-w,O=-g.height/2-w,k,A;if(i.look===`handDrawn`){let e=t.svg(l),n=x(i,{}),a=e.path(q(D,O,T,E,i.rx||0),n),o=e.line(-g.width/2-w,-g.height/2-w+v.height+w,g.width/2+w,-g.height/2-w+v.height+w,n);A=l.insert(()=>(r.debug(`Rough node insert CXC`,a),o),`:first-child`),k=l.insert(()=>(r.debug(`Rough node insert CXC`,a),a),`:first-child`)}else k=d.insert(`rect`,`:first-child`),A=d.insert(`line`),k.attr(`class`,`outer title-state`).attr(`style`,s).attr(`x`,-g.width/2-w).attr(`y`,-g.height/2-w).attr(`width`,g.width+(i.padding||0)).attr(`height`,g.height+(i.padding||0)),A.attr(`class`,`divider`).attr(`x1`,-g.width/2-w).attr(`x2`,g.width/2+w).attr(`y1`,-g.height/2-w+v.height+w).attr(`y2`,-g.height/2-w+v.height+w);return I(i,k),i.intersect=function(e){return K.rect(i,e)},l}n(dn,`rectWithTitle`);async function fn(e,t,{config:{themeVariables:n}}){let r=n?.radius??5;return Ke(e,t,{rx:r,ry:r,classes:``,labelPaddingX:(t?.padding??0)*1,labelPaddingY:(t?.padding??0)*1})}n(fn,`roundedRect`);var pn=8;async function mn(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.look===`neo`?16:n.padding??0,o=n.look===`neo`?12:n.padding??0,{shapeSvg:s,bbox:c,label:l}=await P(e,n,L(n)),u=(n?.width??c.width)+a*2+(n.look===`neo`?pn:pn*2),d=(n?.height??c.height)+o*2,f=u-pn,p=d,m=pn-u/2,h=-d/2,{cssStyles:_}=n,v=t.svg(s),y=x(n,{});n.look!==`handDrawn`&&(y.roughness=0,y.fillStyle=`solid`);let b=[{x:m,y:h},{x:m+f,y:h},{x:m+f,y:h+p},{x:m-pn,y:h+p},{x:m-pn,y:h},{x:m,y:h},{x:m,y:h+p}],C=v.polygon(b.map(e=>[e.x,e.y]),y),w=s.insert(()=>C,`:first-child`);return w.attr(`class`,`basic label-container outer-path`).attr(`style`,g(_)),i&&n.look!==`handDrawn`&&w.selectAll(`path`).attr(`style`,i),_&&n.look!==`handDrawn`&&w.selectAll(`path`).attr(`style`,i),l.attr(`transform`,`translate(${pn/2-c.width/2-(c.x-(c.left??0))}, ${-(c.height/2)-(c.y-(c.top??0))})`),I(n,w),n.intersect=function(e){return K.rect(n,e)},s}n(mn,`shadedProcess`);async function hn(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.padding??0,o=n.look===`neo`?16:a,s=n.look===`neo`?12:a;(n.width||n.height)&&(n.width=Math.max((n?.width??0)-o*2,10),n.height=Math.max((n?.height??0)/1.5-s*2,10));let{shapeSvg:c,bbox:l,label:u}=await P(e,n,L(n)),d=(n?.width?n?.width:l.width)+o*2,f=((n?.height?n?.height:l.height)+s*2)*1.5,p=d,m=f/1.5,h=-p/2,g=-m/2,{cssStyles:_}=n,v=t.svg(c),y=x(n,{});n.look!==`handDrawn`&&(y.roughness=0,y.fillStyle=`solid`);let b=[{x:h,y:g},{x:h,y:g+m},{x:h+p,y:g+m},{x:h+p,y:g-m/2}],C=R(b),w=v.path(C,y),T=c.insert(()=>w,`:first-child`);return T.attr(`class`,`basic label-container outer-path`),_&&n.look!==`handDrawn`&&T.selectChildren(`path`).attr(`style`,_),i&&n.look!==`handDrawn`&&T.selectChildren(`path`).attr(`style`,i),T.attr(`transform`,`translate(0, ${m/4})`),u.attr(`transform`,`translate(${-p/2+(n.padding??0)-(l.x-(l.left??0))}, ${-m/4+(n.padding??0)-(l.y-(l.top??0))})`),I(n,T),n.intersect=function(e){return K.polygon(n,b,e)},c}n(hn,`slopedRect`);async function gn(e,t){let n=t.padding??0,r=t.look===`neo`?16:n*2,i=t.look===`neo`?12:n,a=await Ke(e,t,{rx:0,ry:0,classes:``,labelPaddingX:t.labelPaddingX??r,labelPaddingY:i});if(t.colorIndex!==void 0){let{theme:e,themeVariables:n}=o();T(a,t.colorIndex,e,n.borderColorArray)}return a}n(gn,`squareRect`);var _n=50,vn=n((e,t,n)=>{let r=e.height+n,i=r*Math.cos(Math.PI/(2*(_n-1))),a=Math.sqrt(Math.max(0,i**2-e.height**2));return{w:Math.max(e.width+r/4+t,1.5*r+(r-i),e.width+t+r-a),h:r}},`stadiumDimensions`);async function yn(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.padding??0,o=n.look===`neo`?40:a,s=n.look===`neo`?24:a,{shapeSvg:c,bbox:l}=await P(e,n,L(n)),{w:u,h:d}=vn(l,o,s),f=d/2,{cssStyles:p}=n,m=t.svg(c),h=x(n,{});n.look!==`handDrawn`&&(h.roughness=0,h.fillStyle=`solid`);let g=[{x:-u/2+f,y:-d/2},{x:u/2-f,y:-d/2},...B(-u/2+f,0,f,_n,90,270),{x:u/2-f,y:d/2},...B(u/2-f,0,f,_n,270,450)],_=R(g),v=m.path(_,h),y=c.insert(()=>v,`:first-child`);return y.attr(`class`,`basic label-container outer-path`),p&&n.look!==`handDrawn`&&y.selectChildren(`path`).attr(`style`,p),i&&n.look!==`handDrawn`&&y.selectChildren(`path`).attr(`style`,i),I(n,y),n.intersect=function(e){return K.polygon(n,g,e)},c}n(yn,`stadium`);async function bn(e,t){return Ke(e,t,{rx:t.look===`neo`?3:5,ry:t.look===`neo`?3:5,classes:`flowchart-node`})}n(bn,`state`);function xn(e,n,{config:{themeVariables:r}}){let{labelStyles:i,nodeStyles:a}=S(n);n.labelStyle=i;let{cssStyles:o}=n,{lineColor:s,stateBorder:c,nodeBorder:l,nodeShadow:u}=r;(n.width||n.height)&&((n.width??0)<14&&(n.width=14),(n.height??0)<14&&(n.height=14)),n.width||=14,n.height||=14;let d=e.insert(`g`).attr(`class`,`node default`).attr(`id`,n.domId??n.id),f=t.svg(d),p=x(n,{});n.look!==`handDrawn`&&(p.roughness=0,p.fillStyle=`solid`);let m=f.circle(0,0,n.width,{...p,stroke:s,strokeWidth:2}),h=c??l,g=(n.width??0)*5/14,_=f.circle(0,0,g,{...p,fill:h,stroke:h,strokeWidth:2,fillStyle:`solid`}),v=d.insert(()=>m,`:first-child`);if(v.insert(()=>_),n.look!==`handDrawn`&&v.attr(`class`,`outer-path`),o&&v.selectAll(`path`).attr(`style`,o),a&&v.selectAll(`path`).attr(`style`,a),n.width<25&&u&&n.look!==`handDrawn`){let t=e.node()?.ownerSVGElement?.id??``,n=t?`${t}-drop-shadow-small`:`drop-shadow-small`;v.attr(`style`,`filter:url(#${n})`)}return I(n,v),n.intersect=function(e){return K.circle(n,(n.width??0)/2,e)},d}n(xn,`stateEnd`);function Sn(e,n,{config:{themeVariables:r}}){let{lineColor:i,nodeShadow:a}=r;(n.width||n.height)&&((n.width??0)<14&&(n.width=14),(n.height??0)<14&&(n.height=14)),n.width||=14,n.height||=14;let o=e.insert(`g`).attr(`class`,`node default`).attr(`id`,n.domId||n.id),s;if(n.look===`handDrawn`){let e=t.svg(o).circle(0,0,n.width,C(i));s=o.insert(()=>e),s.attr(`class`,`state-start`).attr(`r`,(n.width??7)/2).attr(`width`,n.width??14).attr(`height`,n.height??14)}else s=o.insert(`circle`,`:first-child`),s.attr(`class`,`state-start`).attr(`r`,(n.width??7)/2).attr(`width`,n.width??14).attr(`height`,n.height??14);if(n.width<25&&a&&n.look!==`handDrawn`){let t=e.node()?.ownerSVGElement?.id??``,n=t?`${t}-drop-shadow-small`:`drop-shadow-small`;s.attr(`style`,`filter:url(#${n})`)}return I(n,s),n.intersect=function(e){return K.circle(n,(n.width??7)/2,e)},o}n(Sn,`stateStart`);var Cn=8;async function wn(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n?.padding??8,o=n.look===`neo`?28:a,s=n.look===`neo`?12:a,{shapeSvg:c,bbox:l}=await P(e,n,L(n)),u=Math.max(l.width+2*Cn+o,n.width??0),d=Math.max(l.height+s,n.height??0),f=u-2*Cn,p=d,m=-u/2,h=-d/2,_=[{x:0,y:0},{x:f,y:0},{x:f,y:-p},{x:0,y:-p},{x:0,y:0},{x:-8,y:0},{x:f+8,y:0},{x:f+8,y:-p},{x:-8,y:-p},{x:-8,y:0}];if(n.look===`handDrawn`){let e=t.svg(c),r=x(n,{}),i=e.rectangle(m,h,f+16,p,r),a=e.line(m+Cn,h,m+Cn,h+p,r),o=e.line(m+Cn+f,h,m+Cn+f,h+p,r);c.insert(()=>a,`:first-child`),c.insert(()=>o,`:first-child`);let s=c.insert(()=>i,`:first-child`),{cssStyles:l}=n;s.attr(`class`,`basic label-container`).attr(`style`,g(l)),I(n,s)}else{let e=J(c,f,p,_);i&&e.attr(`style`,i),I(n,e)}return n.intersect=function(e){return K.polygon(n,_,e)},c}n(wn,`subroutine`);var Tn=.2;async function En(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.padding??0,o=n.look===`neo`?16:a,s=n.look===`neo`?12:a;(n.width||n.height)&&(n.height=Math.max((n?.height??0)-s*2,10),n.width=Math.max((n?.width??0)-o*2-Tn*(n.height+s*2),10));let{shapeSvg:c,bbox:l}=await P(e,n,L(n)),u=(n?.height?n?.height:l.height)+s*2,d=Tn*u,f=Tn*u,p=(n?.width?n?.width:l.width)+o*2+d-d,m=u,h=-p/2,g=-m/2,{cssStyles:_}=n,v=t.svg(c),y=x(n,{}),b=[{x:h-d/2,y:g},{x:h+p+d/2,y:g},{x:h+p+d/2,y:g+m},{x:h-d/2,y:g+m}],C=[{x:h+p-d/2,y:g+m},{x:h+p+d/2,y:g+m},{x:h+p+d/2,y:g+m-f}];n.look!==`handDrawn`&&(y.roughness=0,y.fillStyle=`solid`);let w=R(b),T=v.path(w,y),E=R(C),D=v.path(E,{...y,fillStyle:`solid`}),O=c.insert(()=>D,`:first-child`);return O.insert(()=>T,`:first-child`),O.attr(`class`,`basic label-container outer-path`),_&&n.look!==`handDrawn`&&O.selectAll(`path`).attr(`style`,_),i&&n.look!==`handDrawn`&&O.selectAll(`path`).attr(`style`,i),I(n,O),n.intersect=function(e){return K.polygon(n,b,e)},c}n(En,`taggedRect`);async function Dn(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let{shapeSvg:a,bbox:o,label:s}=await P(e,n,L(n)),c=Math.max(o.width+(n.padding??0)*2,n?.width??0),l=Math.max(o.height+(n.padding??0)*2,n?.height??0),u=l/8,d=.2*c,f=.2*l,p=l+u,{cssStyles:m}=n,h=t.svg(a),g=x(n,{});n.look!==`handDrawn`&&(g.roughness=0,g.fillStyle=`solid`);let _=[{x:-c/2-c/2*.1,y:p/2},...z(-c/2-c/2*.1,p/2,c/2+c/2*.1,p/2,u,.8),{x:c/2+c/2*.1,y:-p/2},{x:-c/2-c/2*.1,y:-p/2}],v=-c/2+c/2*.1,y=-p/2-f*.4,b=[{x:v+c-d,y:(y+l)*1.3},{x:v+c,y:y+l-f},{x:v+c,y:(y+l)*.9},...z(v+c,(y+l)*1.25,v+c-d,(y+l)*1.3,-l*.02,.5)],C=R(_),w=h.path(C,g),T=R(b),E=h.path(T,{...g,fillStyle:`solid`}),D=a.insert(()=>E,`:first-child`);return D.insert(()=>w,`:first-child`),D.attr(`class`,`basic label-container outer-path`),m&&n.look!==`handDrawn`&&D.selectAll(`path`).attr(`style`,m),i&&n.look!==`handDrawn`&&D.selectAll(`path`).attr(`style`,i),D.attr(`transform`,`translate(0,${-u/2})`),s.attr(`transform`,`translate(${-c/2+(n.padding??0)-(o.x-(o.left??0))},${-l/2+(n.padding??0)-u/2-(o.y-(o.top??0))})`),I(n,D),n.intersect=function(e){return K.polygon(n,_,e)},a}n(Dn,`taggedWaveEdgedRectangle`);async function On(e,t){let{labelStyles:n,nodeStyles:r}=S(t);t.labelStyle=n;let{shapeSvg:i,bbox:a}=await P(e,t,L(t)),o=Math.max(a.width+(t.padding??0),t?.width||0),s=Math.max(a.height+(t.padding??0),t?.height||0),c=-o/2,l=-s/2,u=i.insert(`rect`,`:first-child`);return u.attr(`class`,`text`).attr(`style`,r).attr(`rx`,0).attr(`ry`,0).attr(`x`,c).attr(`y`,l).attr(`width`,o).attr(`height`,s),I(t,u),t.intersect=function(e){return K.rect(t,e)},i}n(On,`text`);var kn=n((e,t,n,r,i,a)=>`M${e},${t}
|
|
3
3
|
a${i},${a} 0,0,1 0,${-r}
|
|
4
4
|
l${n},0
|
|
5
5
|
a${i},${a} 0,0,1 0,${r}
|
|
6
6
|
M${n},${-r}
|
|
7
7
|
a${i},${a} 0,0,0 0,${r}
|
|
8
|
-
l${-n},0`,`createCylinderPathD`),An=n((e,t,n,r,i,a)=>[`M${e},${t}`,`M${e+n},${t}`,`a${i},${a} 0,0,0 0,${-r}`,`l${-n},0`,`a${i},${a} 0,0,0 0,${r}`,`l${n},0`].join(` `),`createOuterCylinderPathD`),jn=n((e,t,n,r,i,a)=>[`M${e+n/2},${-r/2}`,`a${i},${a} 0,0,0 0,${r}`].join(` `),`createInnerCylinderPathD`),Mn=5,Nn=10;async function Pn(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.padding??0,o=n.look===`neo`?12:a/2,s=n.height??0;if(n.height&&(n.height-=o,n.height<Mn&&(n.height=Mn)),n.width){let e=s/2/(2.5+s/50);n.width=n.width-o-e*3,n.width<Nn&&(n.width=Nn)}let{shapeSvg:c,bbox:l,label:u}=await P(e,n,L(n)),d=Math.max(n.height??0,l.height)+o,f=d/2,p=f/(2.5+d/50),m=Math.max(n.width??0,l.width)+p+o,{cssStyles:h}=n,
|
|
8
|
+
l${-n},0`,`createCylinderPathD`),An=n((e,t,n,r,i,a)=>[`M${e},${t}`,`M${e+n},${t}`,`a${i},${a} 0,0,0 0,${-r}`,`l${-n},0`,`a${i},${a} 0,0,0 0,${r}`,`l${n},0`].join(` `),`createOuterCylinderPathD`),jn=n((e,t,n,r,i,a)=>[`M${e+n/2},${-r/2}`,`a${i},${a} 0,0,0 0,${r}`].join(` `),`createInnerCylinderPathD`),Mn=5,Nn=10;async function Pn(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.padding??0,o=n.look===`neo`?12:a/2,s=n.height??0;if(n.height&&(n.height-=o,n.height<Mn&&(n.height=Mn)),n.width){let e=s/2/(2.5+s/50);n.width=n.width-o-e*3,n.width<Nn&&(n.width=Nn)}let{shapeSvg:c,bbox:l,label:u}=await P(e,n,L(n)),d=Math.max(n.height??0,l.height)+o,f=d/2,p=f/(2.5+d/50),m=Math.max(n.width??0,l.width)+p+o,{cssStyles:h}=n,_;if(n.look===`handDrawn`){let e=t.svg(c),r=An(0,0,m,d,p,f),i=jn(0,0,m,d,p,f),a=e.path(r,x(n,{})),o=e.path(i,x(n,{fill:`none`}));_=c.insert(()=>o,`:first-child`),_=c.insert(()=>a,`:first-child`),_.attr(`class`,`basic label-container`),h&&_.attr(`style`,h)}else{let e=kn(0,0,m,d,p,f);_=c.insert(`path`,`:first-child`).attr(`d`,e).attr(`class`,`basic label-container`).attr(`style`,g(h)).attr(`style`,i),_.attr(`class`,`basic label-container outer-path`),h&&_.selectAll(`path`).attr(`style`,h),i&&_.selectAll(`path`).attr(`style`,i)}return _.attr(`label-offset-x`,p),_.attr(`transform`,`translate(${-m/2}, ${d/2} )`),u.attr(`transform`,`translate(${-(l.width/2)-p-(l.x-(l.left??0))}, ${-(l.height/2)-(l.y-(l.top??0))})`),I(n,_),n.intersect=function(e){let t=K.rect(n,e),r=t.y-(n.y??0);if(f!=0&&(Math.abs(r)<(n.height??0)/2||Math.abs(r)==(n.height??0)/2&&Math.abs(t.x-(n.x??0))>(n.width??0)/2-p)){let i=p*p*(1-r*r/(f*f));i!=0&&(i=Math.sqrt(Math.abs(i))),i=p-i,e.x-(n.x??0)>0&&(i=-i),t.x+=i}return t},c}n(Pn,`tiltedCylinder`);async function Fn(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.padding??0,o=(n.look,a),s=n.look===`neo`?a*2:a,{shapeSvg:c,bbox:l}=await P(e,n,L(n)),u=Math.max(l.height+o,n.height??0),d=Math.max(l.width+s,(n.width??0)-u),f=[{x:-3*u/6,y:0},{x:d+3*u/6,y:0},{x:d,y:-u},{x:0,y:-u}],p,{cssStyles:m}=n;if(n.look===`handDrawn`){let e=t.svg(c),r=x(n,{}),i=R(f),a=e.path(i,r);p=c.insert(()=>a,`:first-child`).attr(`transform`,`translate(${-d/2}, ${u/2})`),m&&p.attr(`style`,m)}else p=J(c,d,u,f);return i&&p.attr(`style`,i),n.width=d,n.height=u,I(n,p),n.intersect=function(e){return K.polygon(n,f,e)},c}n(Fn,`trapezoid`);async function In(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.padding??0,o=n.look===`neo`?16:a,s=n.look===`neo`?12:a;(n.width||n.height)&&(n.height=(n.height??0)-s*2,n.height<5&&(n.height=5),n.width=(n.width??0)-o*2,n.width<15&&(n.width=15));let{shapeSvg:c,bbox:l}=await P(e,n,L(n)),u=(n?.width?n?.width:l.width)+o*2,d=(n?.height?n?.height:l.height)+s*2,{cssStyles:f}=n,p=t.svg(c),m=x(n,{});n.look!==`handDrawn`&&(m.roughness=0,m.fillStyle=`solid`);let h=[{x:-u/2*.8,y:-d/2},{x:u/2*.8,y:-d/2},{x:u/2,y:-d/2*.6},{x:u/2,y:d/2},{x:-u/2,y:d/2},{x:-u/2,y:-d/2*.6}],g=R(h),_=p.path(g,m),v=c.insert(()=>_,`:first-child`);return v.attr(`class`,`basic label-container outer-path`),f&&n.look!==`handDrawn`&&v.selectChildren(`path`).attr(`style`,f),i&&n.look!==`handDrawn`&&v.selectChildren(`path`).attr(`style`,i),I(n,v),n.intersect=function(e){return K.polygon(n,h,e)},c}n(In,`trapezoidalPentagon`);var Ln=10,Rn=10;async function zn(e,n){let{labelStyles:i,nodeStyles:a}=S(n);n.labelStyle=i;let s=n.padding??0,l=n.look===`neo`?s*2:s;(n.width||n.height)&&(n.width=((n?.width??0)-l)/2,n.width<Rn&&(n.width=Rn),n.height=n?.height??0,n.height<Ln&&(n.height=Ln));let{shapeSvg:u,bbox:d,label:f}=await P(e,n,L(n)),p=c(o().flowchart?.htmlLabels),m=(n?.width?n?.width:d.width)+l,h=n?.height?n?.height:m+d.height,g=h,_=[{x:0,y:0},{x:g,y:0},{x:g/2,y:-h}],{cssStyles:v}=n,y=t.svg(u),b=x(n,{});n.look!==`handDrawn`&&(b.roughness=0,b.fillStyle=`solid`);let C=R(_),w=y.path(C,b),T=u.insert(()=>w,`:first-child`).attr(`transform`,`translate(${-h/2}, ${h/2})`).attr(`class`,`outer-path`);return v&&n.look!==`handDrawn`&&T.selectChildren(`path`).attr(`style`,v),a&&n.look!==`handDrawn`&&T.selectChildren(`path`).attr(`style`,a),n.width=m,n.height=h,I(n,T),f.attr(`transform`,`translate(${-d.width/2-(d.x-(d.left??0))}, ${h/2-(d.height+(n.padding??0)/(p?2:1)-(d.y-(d.top??0)))})`),n.intersect=function(e){return r.info(`Triangle intersect`,n,_,e),K.polygon(n,_,e)},u}n(zn,`triangle`);async function Bn(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.padding??0,o=n.look===`neo`?16:a,s=n.look===`neo`?12:a,c=!0;(n.width||n.height)&&(c=!1,n.width=(n?.width??0)-o*2,n.width<10&&(n.width=10),n.height=(n?.height??0)-s*2,n.height<10&&(n.height=10));let{shapeSvg:l,bbox:u,label:d}=await P(e,n,L(n)),f=(n?.width?n?.width:u.width)+(o??0)*2,p=(n?.height?n?.height:u.height)+(s??0)*2,m=n.look===`neo`?p/4:p/8,h=p+(c?m:-m),{cssStyles:g}=n,_=14-f,v=_>0?_/2:0,y=t.svg(l),b=x(n,{});n.look!==`handDrawn`&&(b.roughness=0,b.fillStyle=`solid`);let C=[{x:-f/2-v,y:h/2},...z(-f/2-v,h/2,f/2+v,h/2,m,.8),{x:f/2+v,y:-h/2},{x:-f/2-v,y:-h/2}],w=R(C),T=y.path(w,b),E=l.insert(()=>T,`:first-child`);return E.attr(`class`,`basic label-container outer-path`),g&&n.look!==`handDrawn`&&E.selectAll(`path`).attr(`style`,g),i&&n.look!==`handDrawn`&&E.selectAll(`path`).attr(`style`,i),E.attr(`transform`,`translate(0,${-m/2})`),d.attr(`transform`,`translate(${-f/2+(n.padding??0)-(u.x-(u.left??0))},${-p/2+(n.padding??0)-m-(u.y-(u.top??0))})`),I(n,E),n.intersect=function(e){return K.polygon(n,C,e)},l}n(Bn,`waveEdgedRectangle`);async function Vn(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.padding??0,o=n.look===`neo`?16:a,s=n.look===`neo`?20:a;if(n.width||n.height){n.width=n?.width??0,n.width<20&&(n.width=20),n.height=n?.height??0,n.height<10&&(n.height=10);let e=Math.min(n.height*.2,n.height/4);n.height=Math.ceil(n.height-s-20/9*e),n.width-=o*2}let{shapeSvg:c,bbox:l}=await P(e,n,L(n)),u=(n?.width?n?.width:l.width)+o*2,d=(n?.height?n?.height:l.height)+s,f=d/8,p=d+f*2,{cssStyles:m}=n,h=t.svg(c),g=x(n,{});n.look!==`handDrawn`&&(g.roughness=0,g.fillStyle=`solid`);let _=[{x:-u/2,y:p/2},...z(-u/2,p/2,u/2,p/2,f,1),{x:u/2,y:-p/2},...z(u/2,-p/2,-u/2,-p/2,f,-1)],v=R(_),y=h.path(v,g),b=c.insert(()=>y,`:first-child`);return b.attr(`class`,`basic label-container`),m&&n.look!==`handDrawn`&&b.selectAll(`path`).attr(`style`,m),i&&n.look!==`handDrawn`&&b.selectAll(`path`).attr(`style`,i),I(n,b),n.intersect=function(e){return K.polygon(n,_,e)},c}n(Vn,`waveRectangle`);var Q=10;async function Hn(e,n){let{labelStyles:r,nodeStyles:i}=S(n);n.labelStyle=r;let a=n.look===`neo`?16:n.padding??0,o=n.look===`neo`?12:n.padding??0;(n.width||n.height)&&(n.width=Math.max((n?.width??0)-a*2-Q,10),n.height=Math.max((n?.height??0)-o*2-Q,10));let{shapeSvg:s,bbox:c,label:l}=await P(e,n,L(n)),u=(n?.width?n?.width:c.width)+a*2+Q,d=(n?.height?n?.height:c.height)+o*2+Q,f=u-Q,p=d-Q,m=-f/2,h=-p/2,{cssStyles:g}=n,_=t.svg(s),v=x(n,{}),y=[{x:m-Q,y:h-Q},{x:m-Q,y:h+p},{x:m+f,y:h+p},{x:m+f,y:h-Q}],b=`M${m-Q},${h-Q} L${m+f},${h-Q} L${m+f},${h+p} L${m-Q},${h+p} L${m-Q},${h-Q}
|
|
9
9
|
M${m-Q},${h} L${m+f},${h}
|
|
10
|
-
M${m},${h-Q} L${m},${h+p}`;n.look!==`handDrawn`&&(v.roughness=0,v.fillStyle=`solid`);let C=_.path(b,v),w=s.insert(()=>C,`:first-child`);return w.attr(`transform`,`translate(${Q/2}, ${Q/2})`),w.attr(`class`,`basic label-container outer-path`),g&&n.look!==`handDrawn`&&w.selectAll(`path`).attr(`style`,g),i&&n.look!==`handDrawn`&&w.selectAll(`path`).attr(`style`,i),l.attr(`transform`,`translate(${-(c.width/2)+Q/2-(c.x-(c.left??0))}, ${-(c.height/2)+Q/2-(c.y-(c.top??0))})`),I(n,w),n.intersect=function(e){return K.polygon(n,y,e)},s}n(Hn,`windowPane`);var Un=new Set([`redux-color`,`redux-dark-color`]),Wn=new Set([`redux`,`redux-dark`,`redux-color`,`redux-dark-color`]);async function Gn(n,r){let i=r;i.alias&&(r.label=i.alias);let{theme:a,themeVariables:o}=c(),{rowEven:s,rowOdd:l,nodeBorder:d,borderColorArray:f}=o;if(r.look===`handDrawn`){let{themeVariables:e}=c(),{background:t}=e;await Gn(n,{...r,id:r.id+`-background`,domId:(r.domId||r.id)+`-background`,look:`default`,cssStyles:[`stroke: none`,`fill: ${t}`]})}let p=c();r.useHtmlLabels=p.htmlLabels;let m=p.er?.diagramPadding??10,h=p.er?.entityPadding??6,{cssStyles:g}=r,{labelStyles:v,nodeStyles:y}=S(r);if(i.attributes.length===0&&r.label){let e={rx:0,ry:0,labelPaddingX:m,labelPaddingY:m*1.5,classes:``};_(r.label,p)+e.labelPaddingX*2<p.er.minEntityWidth&&(r.width=p.er.minEntityWidth);let t=await Ke(n,r,e);if(a!=null&&Un.has(a)){let e=i.colorIndex??0;t.attr(`data-color-id`,`color-${e%f.length}`)}if(!u(p.htmlLabels)){let e=t.select(`text`),n=e.node()?.getBBox();e.attr(`transform`,`translate(${-n.width/2}, 0)`)}return t}p.htmlLabels||(m*=1.25,h*=1.25);let b=L(r);b||=`node default`;let C=n.insert(`g`).attr(`class`,b).attr(`id`,r.domId||r.id),w=await Kn(C,r.label??``,p,0,0,[`name`],v);w.height+=h;let T=0,E=[],D=[],O=0,k=0,A=0,j=0,M=!0,N=!0;for(let e of i.attributes){let t=await Kn(C,e.type,p,0,T,[`attribute-type`],v);O=Math.max(O,t.width+m);let n=await Kn(C,e.name,p,0,T,[`attribute-name`],v);k=Math.max(k,n.width+m);let r=await Kn(C,e.keys.join(),p,0,T,[`attribute-keys`],v);A=Math.max(A,r.width+m);let i=await Kn(C,e.comment,p,0,T,[`attribute-comment`],v);j=Math.max(j,i.width+m);let a=Math.max(t.height,n.height,r.height,i.height)+h;D.push({yOffset:T,rowHeight:a}),T+=a}let P=4;A<=m&&(M=!1,A=0,P--),j<=m&&(N=!1,j=0,P--);let F=C.node().getBBox();if(w.width+m*2-(O+k+A+j)>0){let e=w.width+m*2-(O+k+A+j);O+=e/P,k+=e/P,A>0&&(A+=e/P),j>0&&(j+=e/P)}let R=O+k+A+j,z=t.svg(C),B=x(r,{});r.look!==`handDrawn`&&(B.roughness=0,B.fillStyle=`solid`);let ee=0;D.length>0&&(ee=D.reduce((e,t)=>e+(t?.rowHeight??0),0));let V=Math.max(F.width+m*2,r?.width||0,R),te=Math.max((ee??0)+w.height,r?.height||0),H=-V/2,U=-te/2;if(C.selectAll(`g:not(:first-child)`).each((t,n,r)=>{let i=e(r[n]),a=i.attr(`transform`),o=0,s=0;if(a){let e=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(a);e&&(o=parseFloat(e[1]),s=parseFloat(e[2]),i.attr(`class`).includes(`attribute-name`)?o+=O:i.attr(`class`).includes(`attribute-keys`)?o+=O+k:i.attr(`class`).includes(`attribute-comment`)&&(o+=O+k+A))}i.attr(`transform`,`translate(${H+m/2+o}, ${s+U+w.height+h/2})`)}),C.select(`.name`).attr(`transform`,`translate(`+-w.width/2+`, `+(U+h/2)+`)`),a!=null&&Un.has(a)){let e=i.colorIndex??0;C.attr(`data-color-id`,`color-${e%f.length}`)}let ne=z.rectangle(H,U,V,te,B),re=C.insert(()=>ne,`:first-child`).attr(`class`,`outer-path`).attr(`style`,g.join(``));E.push(0);for(let[e,t]of D.entries()){let n=(e+1)%2==0&&t.yOffset!==0,r=z.rectangle(H,w.height+U+t?.yOffset,V,t?.rowHeight,{...B,fill:n?s:l,stroke:d});C.insert(()=>r,`g.label`).attr(`style`,g.join(``)).attr(`class`,`row-rect-${n?`even`:`odd`}`)}let ie=1e-4,W=qn(H,w.height+U,V+H,w.height+U,ie),G=z.polygon(W.map(e=>[e.x,e.y]),B);if(C.insert(()=>G).attr(`class`,`divider`),W=qn(O+H,w.height+U,O+H,te+U,ie),G=z.polygon(W.map(e=>[e.x,e.y]),B),C.insert(()=>G).attr(`class`,`divider`),M){let e=O+k+H;W=qn(e,w.height+U,e,te+U,ie),G=z.polygon(W.map(e=>[e.x,e.y]),B),C.insert(()=>G).attr(`class`,`divider`)}if(N){let e=O+k+A+H;W=qn(e,w.height+U,e,te+U,ie),G=z.polygon(W.map(e=>[e.x,e.y]),B),C.insert(()=>G).attr(`class`,`divider`)}for(let e of E){let t=w.height+U+e;W=qn(H,t,V+H,t,ie),G=z.polygon(W.map(e=>[e.x,e.y]),B),C.insert(()=>G).attr(`class`,`divider`)}if(I(r,re),y&&r.look!==`handDrawn`){if(a!=null&&Wn.has(a))C.selectAll(`path`).attr(`style`,y);else{let e=y.split(`;`)?.filter(e=>e.includes(`stroke`))?.map(e=>`${e}`).join(`; `);C.selectAll(`path`).attr(`style`,e??``),C.selectAll(`.row-rect-even path`).attr(`style`,y)}}return r.intersect=function(e){return K.rect(r,e)},C}n(Gn,`erBox`);async function Kn(t,n,r,i=0,a=0,s=[],c=``){let l=t.insert(`g`).attr(`class`,`label ${s.join(` `)}`).attr(`transform`,`translate(${i}, ${a})`).attr(`style`,c);n!==o(n)&&(n=o(n),n=n.replaceAll(`<`,`<`).replaceAll(`>`,`>`));let d=l.node().appendChild(await y(l,n,{width:_(n,r)+100,style:c,useHtmlLabels:r.htmlLabels},r));if(n.includes(`<`)||n.includes(`>`)){let e=d.children[0];for(e.textContent=e.textContent.replaceAll(`<`,`<`).replaceAll(`>`,`>`);e.childNodes[0];)e=e.childNodes[0],e.textContent=e.textContent.replaceAll(`<`,`<`).replaceAll(`>`,`>`)}let f=d.getBBox();if(u(r.htmlLabels)){let t=d.children[0];t.style.textAlign=`start`;let n=e(d);f=t.getBoundingClientRect(),n.attr(`width`,f.width),n.attr(`height`,f.height)}return f}n(Kn,`addText`);function qn(e,t,n,r,i){return e===n?[{x:e-i/2,y:t},{x:e+i/2,y:t},{x:n+i/2,y:r},{x:n-i/2,y:r}]:[{x:e,y:t-i/2},{x:e,y:t+i/2},{x:n,y:r+i/2},{x:n,y:r-i/2}]}n(qn,`lineToPolygon`);async function Jn(e,t,n,r,i=n.class.padding??12){let a=r?0:3,o=e.insert(`g`).attr(`class`,L(t)).attr(`id`,t.domId||t.id),s=null,c=null,l=null,u=null,d=0,f=0,p=0;if(s=o.insert(`g`).attr(`class`,`annotation-group text`),t.annotations.length>0){let e=t.annotations[0];await Yn(s,{text:`\xAB${e}\xBB`},0),d=s.node().getBBox().height}c=o.insert(`g`).attr(`class`,`label-group text`),await Yn(c,t,0,[`font-weight: bolder`]);let m=c.node().getBBox();f=m.height,l=o.insert(`g`).attr(`class`,`members-group text`);let h=0;for(let e of t.members){let t=await Yn(l,e,h,[e.parseClassifier()]);h+=t+a}p=l.node().getBBox().height,p<=0&&(p=i/2),u=o.insert(`g`).attr(`class`,`methods-group text`);let g=0;for(let e of t.methods){let t=await Yn(u,e,g,[e.parseClassifier()]);g+=t+a}let _=o.node().getBBox();if(s!==null){let e=s.node().getBBox();s.attr(`transform`,`translate(${-e.width/2})`)}return c.attr(`transform`,`translate(${-m.width/2}, ${d})`),_=o.node().getBBox(),l.attr(`transform`,`translate(0, ${d+f+i*2})`),_=o.node().getBBox(),u.attr(`transform`,`translate(0, ${d+f+(p?p+i*4:i*2)})`),_=o.node().getBBox(),{shapeSvg:o,bbox:_}}n(Jn,`textHelper`);async function Yn(t,n,r,o=[]){let s=t.insert(`g`).attr(`class`,`label`).attr(`style`,o.join(`; `)),l=c(),d=`useHtmlLabels`in n?n.useHtmlLabels:u(l.htmlLabels)??!0,f=``;f=`text`in n?n.text:n.label,!d&&f.startsWith(`\\`)&&(f=f.substring(1)),i(f)&&(d=!0);let p=await y(s,a(h(f)),{width:_(f,l)+50,classes:`markdown-node-label`,useHtmlLabels:d},l),m,g=1;if(d){let t=p.children[0],n=e(p);g=t.innerHTML.split(`<br>`).length,t.innerHTML.includes(`</math>`)&&(g+=t.innerHTML.split(`<mrow>`).length-1),await O(t),m=t.getBoundingClientRect(),n.attr(`width`,m.width),n.attr(`height`,m.height)}else{o.includes(`font-weight: bolder`)&&e(p).selectAll(`tspan`).attr(`font-weight`,``),g=p.children.length;let t=p.children[0];(p.textContent===``||p.textContent.includes(`>`))&&(t.textContent=f[0]+f.substring(1).replaceAll(`>`,`>`).replaceAll(`<`,`<`).trim(),f[1]===` `&&(t.textContent=t.textContent[0]+` `+t.textContent.substring(1))),t.textContent===`undefined`&&(t.textContent=``),m=p.getBBox()}return s.attr(`transform`,`translate(0,`+(-m.height/(2*g)+r)+`)`),m.height}n(Yn,`addText`);async function Xn(n,r){let i=d(),{theme:a,themeVariables:o}=i,{useGradient:s,borderColorArray:c}=o,l=i.class.padding??12,f=l,p=r.useHtmlLabels??u(i.htmlLabels)??!0,m=r;m.annotations=m.annotations??[],m.members=m.members??[],m.methods=m.methods??[];let{shapeSvg:h,bbox:g}=await Jn(n,r,i,p,f);T(h,r.colorIndex,a,c);let{labelStyles:_,nodeStyles:v}=S(r);r.labelStyle=_,r.cssStyles=m.styles||``;let y=m.styles?.join(`;`)||v||``;r.cssStyles||=y.replaceAll(`!important`,``).split(`;`);let b=m.members.length===0&&m.methods.length===0&&!i.class?.hideEmptyMembersBox,C=t.svg(h),w=x(r,{});r.look!==`handDrawn`&&(w.roughness=0,w.fillStyle=`solid`);let E=Math.max(r.width??0,g.width),D=Math.max(r.height??0,g.height),O=(r.height??0)>g.height;m.members.length===0&&m.methods.length===0?D+=f:m.members.length>0&&m.methods.length===0&&(D+=f*2);let k=-E/2,A=-D/2,j=b?l*2:m.members.length===0&&m.methods.length===0?-l:0;O&&(j=l*2);let M=C.rectangle(k-l,A-l-(b?l:m.members.length===0&&m.methods.length===0?-l/2:0),E+2*l,D+2*l+j,w),N=h.insert(()=>M,`:first-child`);N.attr(`class`,`basic label-container outer-path`);let P=N.node().getBBox(),F=h.select(`.annotation-group`).node().getBBox().height-(b?l/2:0)||0,L=h.select(`.label-group`).node().getBBox().height-(b?l/2:0)||0,R=h.select(`.members-group`).node().getBBox().height-(b?l/2:0)||0,z=(F+L+A+l-(A-l-(b?l:m.members.length===0&&m.methods.length===0?-l/2:0)))/2;if(h.selectAll(`.text`).each((t,n,r)=>{let a=e(r[n]),o=a.attr(`transform`),s=0;if(o){let e=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(o);e&&(s=parseFloat(e[2]))}let c=s+A+l-(b?l:m.members.length===0&&m.methods.length===0?-l/2:0);if(a.attr(`class`).includes(`methods-group`)){let e=Math.max(R,f/2);c=O?Math.max(z,F+L+e+A+f*2+l)+f*2:F+L+e+A+f*4+l}m.members.length===0&&m.methods.length===0&&i.class?.hideEmptyMembersBox&&(c=m.annotations.length>0?s-f:s),p||(c-=4);let u=k;(a.attr(`class`).includes(`label-group`)||a.attr(`class`).includes(`annotation-group`))&&(u=-a.node()?.getBBox().width/2||0,h.selectAll(`text`).each(function(e,t,n){window.getComputedStyle(n[t]).textAnchor===`middle`&&(u=0)})),a.attr(`transform`,`translate(${u}, ${c})`)}),m.members.length>0||m.methods.length>0||b){let e=F+L+A+l,t=C.line(P.x,e,P.x+P.width,e+.001,w);h.insert(()=>t).attr(`class`,`divider${r.look===`neo`&&!s?` neo-line`:``}`).attr(`style`,y)}if(b||m.members.length>0||m.methods.length>0){let e=F+L+R+A+f*2+l,t=C.line(P.x,O?Math.max(z,e):e,P.x+P.width,(O?Math.max(z,e):e)+.001,w);h.insert(()=>t).attr(`class`,`divider${r.look===`neo`&&!s?` neo-line`:``}`).attr(`style`,y)}if(m.look!==`handDrawn`&&h.selectAll(`path`).attr(`style`,y),N.select(`:nth-child(2)`).attr(`style`,y),h.selectAll(`.divider`).select(`path`).attr(`style`,y),r.labelStyle?h.selectAll(`span`).attr(`style`,r.labelStyle):h.selectAll(`span`).attr(`style`,y),!p){let e=RegExp(/color\s*:\s*([^;]*)/),t=e.exec(y);if(t){let e=t[0].replace(`color`,`fill`);h.selectAll(`tspan`).attr(`style`,e)}else if(_){let t=e.exec(_);if(t){let e=t[0].replace(`color`,`fill`);h.selectAll(`tspan`).attr(`style`,e)}}}return I(r,N),r.intersect=function(e){return K.rect(r,e)},h}n(Xn,`classBox`);async function Zn(n,r){let{labelStyles:i,nodeStyles:a}=S(r);r.labelStyle=i;let o=r,s=r,c=`verifyMethod`in r,l=L(r),u=d(),{themeVariables:f}=u,{borderColorArray:p,requirementEdgeLabelBackground:m}=f,h=u.layout===`elk`?`start`:`center`,g=n.insert(`g`).attr(`class`,l).attr(`id`,r.domId??r.id),_;_=c?await $(g,`<<${o.type}>>`,0,r.labelStyle):await $(g,`<<Element>>`,0,r.labelStyle);let v=_,y=await $(g,o.name,v,r.labelStyle+`; font-weight: bold;`);if(v+=y+20,c){let e=await $(g,`${o.requirementId?`ID: ${o.requirementId}`:``}`,v,r.labelStyle,h);v+=e;let t=await $(g,`${o.text?`Text: ${o.text}`:``}`,v,r.labelStyle,h);v+=t;let n=await $(g,`${o.risk?`Risk: ${o.risk}`:``}`,v,r.labelStyle,h);v+=n,await $(g,`${o.verifyMethod?`Verification: ${o.verifyMethod}`:``}`,v,r.labelStyle,h)}else{let e=await $(g,`${s.type?`Type: ${s.type}`:``}`,v,r.labelStyle,h);v+=e,await $(g,`${s.docRef?`Doc Ref: ${s.docRef}`:``}`,v,r.labelStyle,h)}let b=(g.node()?.getBBox().width??200)+20,C=(g.node()?.getBBox().height??200)+20,w=-b/2,T=-C/2,E=t.svg(g),D=x(r,{});r.look!==`handDrawn`&&(D.roughness=0,D.fillStyle=`solid`);let O=E.rectangle(w,T,b,C,D),k=g.insert(()=>O,`:first-child`);if(k.attr(`class`,`basic label-container outer-path`).attr(`style`,a),p?.length){let e=r.colorIndex??0;g.attr(`data-color-id`,`color-${e%p.length}`)}if(g.selectAll(`.label`).each((t,n,r)=>{let i=e(r[n]),a=i.attr(`transform`),o=0,s=0;if(a){let e=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(a);e&&(o=parseFloat(e[1]),s=parseFloat(e[2]))}let c=s-C/2,l=w+10;(n===0||n===1)&&(l=o),i.attr(`transform`,`translate(${l}, ${c+20})`)}),v>_+y+20){let e=T+_+y+20,t;if(r.look===`neo`){let n=.001,r=[[w,e],[w+b,e],[w+b,e+n],[w,e+n]];t=E.polygon(r,D)}else t=E.line(w,e,w+b,e,D);g.insert(()=>t).attr(`class`,`divider`)}return I(r,k),r.intersect=function(e){return K.rect(r,e)},a&&r.look!==`handDrawn`&&(m||p?.length)&&g.selectAll(`path`).attr(`style`,a),g}n(Zn,`requirementBox`);async function $(t,n,r,i=``,o=`center`){if(n===``)return 0;let s=t.insert(`g`).attr(`class`,`label`).attr(`style`,i),c=d(),l=c.htmlLabels??!0,u=await y(s,a(h(n)),{width:_(n,c)+50,classes:`markdown-node-label`,useHtmlLabels:l,style:i},c),f;if(l){let t=u.children[0],n=e(u);o===`start`&&e(t).style(`text-align`,`left`),f=t.getBoundingClientRect(),n.attr(`width`,f.width),n.attr(`height`,f.height)}else{let e=u.children[0];for(let t of e.children)i&&t.setAttribute(`style`,i);if(o===`start`){e.setAttribute(`text-anchor`,`start`);for(let t of e.children)t.setAttribute(`text-anchor`,`start`)}f=u.getBBox(),f.height+=6}return s.attr(`transform`,`translate(${-f.width/2},${-f.height/2+r})`),f.height}n($,`addText`);var Qn=n(e=>{switch(e){case`Very High`:return`red`;case`High`:return`orange`;case`Medium`:return null;case`Low`:return`blue`;case`Very Low`:return`lightblue`}},`colorFromPriority`);async function $n(e,n,{config:r}){let{labelStyles:i,nodeStyles:a}=S(n);n.labelStyle=i||``;let o=n.width;n.width=(n.width??200)-10;let{shapeSvg:s,bbox:c,label:l}=await P(e,n,L(n)),u=n.padding||10,d=``,f;`ticket`in n&&n.ticket&&r?.kanban?.ticketBaseUrl&&(d=r?.kanban?.ticketBaseUrl.replace(`#TICKET#`,n.ticket),f=s.insert(`svg:a`,`:first-child`).attr(`class`,`kanban-ticket-link`).attr(`xlink:href`,d).attr(`target`,`_blank`));let p={useHtmlLabels:n.useHtmlLabels,labelStyle:n.labelStyle||``,width:n.width,img:n.img,padding:n.padding||8,centerLabel:!1},m,h;f?{label:m,bbox:h}=await F(f,`ticket`in n&&n.ticket||``,p):{label:m,bbox:h}=await F(s,`ticket`in n&&n.ticket||``,p);let{label:g,bbox:_}=await F(s,`assigned`in n&&n.assigned||``,p);n.width=o;let v=n?.width||0,y=Math.max(h.height,_.height)/2,b=Math.max(c.height+20,n?.height||0)+y,C=-v/2,w=-b/2;l.attr(`transform`,`translate(`+(u-v/2)+`, `+(-y-c.height/2)+`)`),m.attr(`transform`,`translate(`+(u-v/2)+`, `+(-y+c.height/2)+`)`),g.attr(`transform`,`translate(`+(u+v/2-_.width-20)+`, `+(-y+c.height/2)+`)`);let T,{rx:E,ry:D}=n,{cssStyles:O}=n;if(n.look===`handDrawn`){let e=t.svg(s),r=x(n,{}),i=E||D?e.path(q(C,w,v,b,E||0),r):e.rectangle(C,w,v,b,r);T=s.insert(()=>i,`:first-child`),T.attr(`class`,`basic label-container`).attr(`style`,O||null)}else{T=s.insert(`rect`,`:first-child`),T.attr(`class`,`basic label-container __APA__`).attr(`style`,a).attr(`rx`,E??5).attr(`ry`,D??5).attr(`x`,C).attr(`y`,w).attr(`width`,v).attr(`height`,b);let e=`priority`in n&&n.priority;if(e){let t=s.append(`line`),n=C+2,r=w+Math.floor((E??0)/2),i=w+b-Math.floor((E??0)/2);t.attr(`x1`,n).attr(`y1`,r).attr(`x2`,n).attr(`y2`,i).attr(`stroke-width`,`4`).attr(`stroke`,Qn(e))}}return I(n,T),n.height=b,n.intersect=function(e){return K.rect(n,e)},s}n($n,`kanbanItem`);async function er(e,n){let{labelStyles:i,nodeStyles:a}=S(n);n.labelStyle=i;let{shapeSvg:o,bbox:s,halfPadding:c,label:l}=await P(e,n,L(n)),u=s.width+10*c,d=s.height+8*c,f=.15*u,{cssStyles:p}=n,m=s.width+20,h=s.height+20,g=Math.max(u,m),_=Math.max(d,h);l.attr(`transform`,`translate(${-s.width/2}, ${-s.height/2})`);let y,b=`M0 0
|
|
11
|
-
a${f},${f} 1 0,0 ${
|
|
12
|
-
a${f},${f} 1 0,0 ${
|
|
13
|
-
a${f},${f} 1 0,0 ${
|
|
14
|
-
a${f},${f} 1 0,0 ${
|
|
10
|
+
M${m},${h-Q} L${m},${h+p}`;n.look!==`handDrawn`&&(v.roughness=0,v.fillStyle=`solid`);let C=_.path(b,v),w=s.insert(()=>C,`:first-child`);return w.attr(`transform`,`translate(${Q/2}, ${Q/2})`),w.attr(`class`,`basic label-container outer-path`),g&&n.look!==`handDrawn`&&w.selectAll(`path`).attr(`style`,g),i&&n.look!==`handDrawn`&&w.selectAll(`path`).attr(`style`,i),l.attr(`transform`,`translate(${-(c.width/2)+Q/2-(c.x-(c.left??0))}, ${-(c.height/2)+Q/2-(c.y-(c.top??0))})`),I(n,w),n.intersect=function(e){return K.polygon(n,y,e)},s}n(Hn,`windowPane`);var Un=new Set([`redux-color`,`redux-dark-color`]),Wn=new Set([`redux`,`redux-dark`,`redux-color`,`redux-dark-color`]);async function Gn(n,r){let i=r;i.alias&&(r.label=i.alias);let{theme:a,themeVariables:o}=d(),{rowEven:s,rowOdd:l,nodeBorder:u,borderColorArray:f}=o;if(r.look===`handDrawn`){let{themeVariables:e}=d(),{background:t}=e;await Gn(n,{...r,id:r.id+`-background`,domId:(r.domId||r.id)+`-background`,look:`default`,cssStyles:[`stroke: none`,`fill: ${t}`]})}let p=d();r.useHtmlLabels=p.htmlLabels;let m=p.er?.diagramPadding??10,h=p.er?.entityPadding??6,{cssStyles:g}=r,{labelStyles:_,nodeStyles:y}=S(r);if(i.attributes.length===0&&r.label){let e={rx:0,ry:0,labelPaddingX:m,labelPaddingY:m*1.5,classes:``};v(r.label,p)+e.labelPaddingX*2<p.er.minEntityWidth&&(r.width=p.er.minEntityWidth);let t=await Ke(n,r,e);if(a!=null&&Un.has(a)){let e=i.colorIndex??0;t.attr(`data-color-id`,`color-${e%f.length}`)}if(!c(p.htmlLabels)){let e=t.select(`text`),n=e.node()?.getBBox();e.attr(`transform`,`translate(${-n.width/2}, 0)`)}return t}p.htmlLabels||(m*=1.25,h*=1.25);let b=L(r);b||=`node default`;let C=n.insert(`g`).attr(`class`,b).attr(`id`,r.domId||r.id),w=await Kn(C,r.label??``,p,0,0,[`name`],_);w.height+=h;let T=0,E=[],D=[],O=0,k=0,A=0,j=0,M=!0,N=!0;for(let e of i.attributes){let t=await Kn(C,e.type,p,0,T,[`attribute-type`],_);O=Math.max(O,t.width+m);let n=await Kn(C,e.name,p,0,T,[`attribute-name`],_);k=Math.max(k,n.width+m);let r=await Kn(C,e.keys.join(),p,0,T,[`attribute-keys`],_);A=Math.max(A,r.width+m);let i=await Kn(C,e.comment,p,0,T,[`attribute-comment`],_);j=Math.max(j,i.width+m);let a=Math.max(t.height,n.height,r.height,i.height)+h;D.push({yOffset:T,rowHeight:a}),T+=a}let P=4;A<=m&&(M=!1,A=0,P--),j<=m&&(N=!1,j=0,P--);let F=C.node().getBBox();if(w.width+m*2-(O+k+A+j)>0){let e=w.width+m*2-(O+k+A+j);O+=e/P,k+=e/P,A>0&&(A+=e/P),j>0&&(j+=e/P)}let R=O+k+A+j,z=t.svg(C),B=x(r,{});r.look!==`handDrawn`&&(B.roughness=0,B.fillStyle=`solid`);let ee=0;D.length>0&&(ee=D.reduce((e,t)=>e+(t?.rowHeight??0),0));let V=Math.max(F.width+m*2,r?.width||0,R),te=Math.max((ee??0)+w.height,r?.height||0),H=-V/2,U=-te/2;if(C.selectAll(`g:not(:first-child)`).each((t,n,r)=>{let i=e(r[n]),a=i.attr(`transform`),o=0,s=0;if(a){let e=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(a);e&&(o=parseFloat(e[1]),s=parseFloat(e[2]),i.attr(`class`).includes(`attribute-name`)?o+=O:i.attr(`class`).includes(`attribute-keys`)?o+=O+k:i.attr(`class`).includes(`attribute-comment`)&&(o+=O+k+A))}i.attr(`transform`,`translate(${H+m/2+o}, ${s+U+w.height+h/2})`)}),C.select(`.name`).attr(`transform`,`translate(`+-w.width/2+`, `+(U+h/2)+`)`),a!=null&&Un.has(a)){let e=i.colorIndex??0;C.attr(`data-color-id`,`color-${e%f.length}`)}let ne=z.rectangle(H,U,V,te,B),re=C.insert(()=>ne,`:first-child`).attr(`class`,`outer-path`).attr(`style`,g.join(``));E.push(0);for(let[e,t]of D.entries()){let n=(e+1)%2==0&&t.yOffset!==0,r=z.rectangle(H,w.height+U+t?.yOffset,V,t?.rowHeight,{...B,fill:n?s:l,stroke:u});C.insert(()=>r,`g.label`).attr(`style`,g.join(``)).attr(`class`,`row-rect-${n?`even`:`odd`}`)}let ie=1e-4,W=qn(H,w.height+U,V+H,w.height+U,ie),G=z.polygon(W.map(e=>[e.x,e.y]),B);if(C.insert(()=>G).attr(`class`,`divider`),W=qn(O+H,w.height+U,O+H,te+U,ie),G=z.polygon(W.map(e=>[e.x,e.y]),B),C.insert(()=>G).attr(`class`,`divider`),M){let e=O+k+H;W=qn(e,w.height+U,e,te+U,ie),G=z.polygon(W.map(e=>[e.x,e.y]),B),C.insert(()=>G).attr(`class`,`divider`)}if(N){let e=O+k+A+H;W=qn(e,w.height+U,e,te+U,ie),G=z.polygon(W.map(e=>[e.x,e.y]),B),C.insert(()=>G).attr(`class`,`divider`)}for(let e of E){let t=w.height+U+e;W=qn(H,t,V+H,t,ie),G=z.polygon(W.map(e=>[e.x,e.y]),B),C.insert(()=>G).attr(`class`,`divider`)}if(I(r,re),y&&r.look!==`handDrawn`){if(a!=null&&Wn.has(a))C.selectAll(`path`).attr(`style`,y);else{let e=y.split(`;`)?.filter(e=>e.includes(`stroke`))?.map(e=>`${e}`).join(`; `);C.selectAll(`path`).attr(`style`,e??``),C.selectAll(`.row-rect-even path`).attr(`style`,y)}}return r.intersect=function(e){return K.rect(r,e)},C}n(Gn,`erBox`);async function Kn(t,n,r,i=0,o=0,s=[],l=``){let u=t.insert(`g`).attr(`class`,`label ${s.join(` `)}`).attr(`transform`,`translate(${i}, ${o})`).attr(`style`,l);n!==a(n)&&(n=a(n),n=n.replaceAll(`<`,`<`).replaceAll(`>`,`>`));let d=u.node().appendChild(await y(u,n,{width:v(n,r)+100,style:l,useHtmlLabels:r.htmlLabels},r));if(n.includes(`<`)||n.includes(`>`)){let e=d.children[0];for(e.textContent=e.textContent.replaceAll(`<`,`<`).replaceAll(`>`,`>`);e.childNodes[0];)e=e.childNodes[0],e.textContent=e.textContent.replaceAll(`<`,`<`).replaceAll(`>`,`>`)}let f=d.getBBox();if(c(r.htmlLabels)){let t=d.children[0];t.style.textAlign=`start`;let n=e(d);f=t.getBoundingClientRect(),n.attr(`width`,f.width),n.attr(`height`,f.height)}return f}n(Kn,`addText`);function qn(e,t,n,r,i){return e===n?[{x:e-i/2,y:t},{x:e+i/2,y:t},{x:n+i/2,y:r},{x:n-i/2,y:r}]:[{x:e,y:t-i/2},{x:e,y:t+i/2},{x:n,y:r+i/2},{x:n,y:r-i/2}]}n(qn,`lineToPolygon`);async function Jn(e,t,n,r,i=n.class.padding??12){let a=r?0:3,o=e.insert(`g`).attr(`class`,L(t)).attr(`id`,t.domId||t.id),s=null,c=null,l=null,u=null,d=0,f=0,p=0;if(s=o.insert(`g`).attr(`class`,`annotation-group text`),t.annotations.length>0){let e=t.annotations[0];await Yn(s,{text:`\xAB${e}\xBB`},0),d=s.node().getBBox().height}c=o.insert(`g`).attr(`class`,`label-group text`),await Yn(c,t,0,[`font-weight: bolder`]);let m=c.node().getBBox();f=m.height,l=o.insert(`g`).attr(`class`,`members-group text`);let h=0;for(let e of t.members){let t=await Yn(l,e,h,[e.parseClassifier()]);h+=t+a}p=l.node().getBBox().height,p<=0&&(p=i/2),u=o.insert(`g`).attr(`class`,`methods-group text`);let g=0;for(let e of t.methods){let t=await Yn(u,e,g,[e.parseClassifier()]);g+=t+a}let _=o.node().getBBox();if(s!==null){let e=s.node().getBBox();s.attr(`transform`,`translate(${-e.width/2})`)}return c.attr(`transform`,`translate(${-m.width/2}, ${d})`),_=o.node().getBBox(),l.attr(`transform`,`translate(0, ${d+f+i*2})`),_=o.node().getBBox(),u.attr(`transform`,`translate(0, ${d+f+(p?p+i*4:i*2)})`),_=o.node().getBBox(),{shapeSvg:o,bbox:_}}n(Jn,`textHelper`);async function Yn(t,n,r,a=[]){let o=t.insert(`g`).attr(`class`,`label`).attr(`style`,a.join(`; `)),s=d(),u=`useHtmlLabels`in n?n.useHtmlLabels:c(s.htmlLabels)??!0,f=``;f=`text`in n?n.text:n.label,!u&&f.startsWith(`\\`)&&(f=f.substring(1)),l(f)&&(u=!0);let p=await y(o,i(h(f)),{width:v(f,s)+50,classes:`markdown-node-label`,useHtmlLabels:u},s),m,g=1;if(u){let t=p.children[0],n=e(p);g=t.innerHTML.split(`<br>`).length,t.innerHTML.includes(`</math>`)&&(g+=t.innerHTML.split(`<mrow>`).length-1),await O(t),m=t.getBoundingClientRect(),n.attr(`width`,m.width),n.attr(`height`,m.height)}else{a.includes(`font-weight: bolder`)&&e(p).selectAll(`tspan`).attr(`font-weight`,``),g=p.children.length;let t=p.children[0];(p.textContent===``||p.textContent.includes(`>`))&&(t.textContent=f[0]+f.substring(1).replaceAll(`>`,`>`).replaceAll(`<`,`<`).trim(),f[1]===` `&&(t.textContent=t.textContent[0]+` `+t.textContent.substring(1))),t.textContent===`undefined`&&(t.textContent=``),m=p.getBBox()}return o.attr(`transform`,`translate(0,`+(-m.height/(2*g)+r)+`)`),m.height}n(Yn,`addText`);async function Xn(n,r){let i=o(),{theme:a,themeVariables:s}=i,{useGradient:l,borderColorArray:u}=s,d=i.class.padding??12,f=d,p=r.useHtmlLabels??c(i.htmlLabels)??!0,m=r;m.annotations=m.annotations??[],m.members=m.members??[],m.methods=m.methods??[];let{shapeSvg:h,bbox:g}=await Jn(n,r,i,p,f);T(h,r.colorIndex,a,u);let{labelStyles:_,nodeStyles:v}=S(r);r.labelStyle=_,r.cssStyles=m.styles||``;let y=m.styles?.join(`;`)||v||``;r.cssStyles||=y.replaceAll(`!important`,``).split(`;`);let b=m.members.length===0&&m.methods.length===0&&!i.class?.hideEmptyMembersBox,C=t.svg(h),w=x(r,{});r.look!==`handDrawn`&&(w.roughness=0,w.fillStyle=`solid`);let E=Math.max(r.width??0,g.width),D=Math.max(r.height??0,g.height),O=(r.height??0)>g.height;m.members.length===0&&m.methods.length===0?D+=f:m.members.length>0&&m.methods.length===0&&(D+=f*2);let k=-E/2,A=-D/2,j=b?d*2:m.members.length===0&&m.methods.length===0?-d:0;O&&(j=d*2);let M=C.rectangle(k-d,A-d-(b?d:m.members.length===0&&m.methods.length===0?-d/2:0),E+2*d,D+2*d+j,w),N=h.insert(()=>M,`:first-child`);N.attr(`class`,`basic label-container outer-path`);let P=N.node().getBBox(),F=h.select(`.annotation-group`).node().getBBox().height-(b?d/2:0)||0,L=h.select(`.label-group`).node().getBBox().height-(b?d/2:0)||0,R=h.select(`.members-group`).node().getBBox().height-(b?d/2:0)||0,z=(F+L+A+d-(A-d-(b?d:m.members.length===0&&m.methods.length===0?-d/2:0)))/2;if(h.selectAll(`.text`).each((t,n,r)=>{let a=e(r[n]),o=a.attr(`transform`),s=0;if(o){let e=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(o);e&&(s=parseFloat(e[2]))}let c=s+A+d-(b?d:m.members.length===0&&m.methods.length===0?-d/2:0);if(a.attr(`class`).includes(`methods-group`)){let e=Math.max(R,f/2);c=O?Math.max(z,F+L+e+A+f*2+d)+f*2:F+L+e+A+f*4+d}m.members.length===0&&m.methods.length===0&&i.class?.hideEmptyMembersBox&&(c=m.annotations.length>0?s-f:s),p||(c-=4);let l=k;(a.attr(`class`).includes(`label-group`)||a.attr(`class`).includes(`annotation-group`))&&(l=-a.node()?.getBBox().width/2||0,h.selectAll(`text`).each(function(e,t,n){window.getComputedStyle(n[t]).textAnchor===`middle`&&(l=0)})),a.attr(`transform`,`translate(${l}, ${c})`)}),m.members.length>0||m.methods.length>0||b){let e=F+L+A+d,t=C.line(P.x,e,P.x+P.width,e+.001,w);h.insert(()=>t).attr(`class`,`divider${r.look===`neo`&&!l?` neo-line`:``}`).attr(`style`,y)}if(b||m.members.length>0||m.methods.length>0){let e=F+L+R+A+f*2+d,t=C.line(P.x,O?Math.max(z,e):e,P.x+P.width,(O?Math.max(z,e):e)+.001,w);h.insert(()=>t).attr(`class`,`divider${r.look===`neo`&&!l?` neo-line`:``}`).attr(`style`,y)}if(m.look!==`handDrawn`&&h.selectAll(`path`).attr(`style`,y),N.select(`:nth-child(2)`).attr(`style`,y),h.selectAll(`.divider`).select(`path`).attr(`style`,y),r.labelStyle?h.selectAll(`span`).attr(`style`,r.labelStyle):h.selectAll(`span`).attr(`style`,y),!p){let e=RegExp(/color\s*:\s*([^;]*)/),t=e.exec(y);if(t){let e=t[0].replace(`color`,`fill`);h.selectAll(`tspan`).attr(`style`,e)}else if(_){let t=e.exec(_);if(t){let e=t[0].replace(`color`,`fill`);h.selectAll(`tspan`).attr(`style`,e)}}}return I(r,N),r.intersect=function(e){return K.rect(r,e)},h}n(Xn,`classBox`);async function Zn(n,r){let{labelStyles:i,nodeStyles:a}=S(r);r.labelStyle=i;let s=r,c=r,l=`verifyMethod`in r,u=L(r),d=o(),{themeVariables:f}=d,{borderColorArray:p,requirementEdgeLabelBackground:m}=f,h=d.layout===`elk`?`start`:`center`,g=n.insert(`g`).attr(`class`,u).attr(`id`,r.domId??r.id),_;_=l?await $(g,`<<${s.type}>>`,0,r.labelStyle):await $(g,`<<Element>>`,0,r.labelStyle);let v=_,y=await $(g,s.name,v,r.labelStyle+`; font-weight: bold;`);if(v+=y+20,l){let e=await $(g,`${s.requirementId?`ID: ${s.requirementId}`:``}`,v,r.labelStyle,h);v+=e;let t=await $(g,`${s.text?`Text: ${s.text}`:``}`,v,r.labelStyle,h);v+=t;let n=await $(g,`${s.risk?`Risk: ${s.risk}`:``}`,v,r.labelStyle,h);v+=n,await $(g,`${s.verifyMethod?`Verification: ${s.verifyMethod}`:``}`,v,r.labelStyle,h)}else{let e=await $(g,`${c.type?`Type: ${c.type}`:``}`,v,r.labelStyle,h);v+=e,await $(g,`${c.docRef?`Doc Ref: ${c.docRef}`:``}`,v,r.labelStyle,h)}let b=(g.node()?.getBBox().width??200)+20,C=(g.node()?.getBBox().height??200)+20,w=-b/2,T=-C/2,E=t.svg(g),D=x(r,{});r.look!==`handDrawn`&&(D.roughness=0,D.fillStyle=`solid`);let O=E.rectangle(w,T,b,C,D),k=g.insert(()=>O,`:first-child`);if(k.attr(`class`,`basic label-container outer-path`).attr(`style`,a),p?.length){let e=r.colorIndex??0;g.attr(`data-color-id`,`color-${e%p.length}`)}if(g.selectAll(`.label`).each((t,n,r)=>{let i=e(r[n]),a=i.attr(`transform`),o=0,s=0;if(a){let e=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(a);e&&(o=parseFloat(e[1]),s=parseFloat(e[2]))}let c=s-C/2,l=w+10;(n===0||n===1)&&(l=o),i.attr(`transform`,`translate(${l}, ${c+20})`)}),v>_+y+20){let e=T+_+y+20,t;if(r.look===`neo`){let n=.001,r=[[w,e],[w+b,e],[w+b,e+n],[w,e+n]];t=E.polygon(r,D)}else t=E.line(w,e,w+b,e,D);g.insert(()=>t).attr(`class`,`divider`)}return I(r,k),r.intersect=function(e){return K.rect(r,e)},a&&r.look!==`handDrawn`&&(m||p?.length)&&g.selectAll(`path`).attr(`style`,a),g}n(Zn,`requirementBox`);async function $(t,n,r,a=``,s=`center`){if(n===``)return 0;let c=t.insert(`g`).attr(`class`,`label`).attr(`style`,a),l=o(),u=l.htmlLabels??!0,d=await y(c,i(h(n)),{width:v(n,l)+50,classes:`markdown-node-label`,useHtmlLabels:u,style:a},l),f;if(u){let t=d.children[0],n=e(d);s===`start`&&e(t).style(`text-align`,`left`),f=t.getBoundingClientRect(),n.attr(`width`,f.width),n.attr(`height`,f.height)}else{let e=d.children[0];for(let t of e.children)a&&t.setAttribute(`style`,a);if(s===`start`){e.setAttribute(`text-anchor`,`start`);for(let t of e.children)t.setAttribute(`text-anchor`,`start`)}f=d.getBBox(),f.height+=6}return c.attr(`transform`,`translate(${-f.width/2},${-f.height/2+r})`),f.height}n($,`addText`);var Qn=n(e=>{switch(e){case`Very High`:return`red`;case`High`:return`orange`;case`Medium`:return null;case`Low`:return`blue`;case`Very Low`:return`lightblue`}},`colorFromPriority`);async function $n(e,n,{config:r}){let{labelStyles:i,nodeStyles:a}=S(n);n.labelStyle=i||``;let o=n.width;n.width=(n.width??200)-10;let{shapeSvg:s,bbox:c,label:l}=await P(e,n,L(n)),u=n.padding||10,d=``,f;`ticket`in n&&n.ticket&&r?.kanban?.ticketBaseUrl&&(d=r?.kanban?.ticketBaseUrl.replace(`#TICKET#`,n.ticket),f=s.insert(`svg:a`,`:first-child`).attr(`class`,`kanban-ticket-link`).attr(`xlink:href`,d).attr(`target`,`_blank`));let p={useHtmlLabels:n.useHtmlLabels,labelStyle:n.labelStyle||``,width:n.width,img:n.img,padding:n.padding||8,centerLabel:!1},m,h;f?{label:m,bbox:h}=await F(f,`ticket`in n&&n.ticket||``,p):{label:m,bbox:h}=await F(s,`ticket`in n&&n.ticket||``,p);let{label:g,bbox:_}=await F(s,`assigned`in n&&n.assigned||``,p);n.width=o;let v=n?.width||0,y=Math.max(h.height,_.height)/2,b=Math.max(c.height+20,n?.height||0)+y,C=-v/2,w=-b/2;l.attr(`transform`,`translate(`+(u-v/2)+`, `+(-y-c.height/2)+`)`),m.attr(`transform`,`translate(`+(u-v/2)+`, `+(-y+c.height/2)+`)`),g.attr(`transform`,`translate(`+(u+v/2-_.width-20)+`, `+(-y+c.height/2)+`)`);let T,{rx:E,ry:D}=n,{cssStyles:O}=n;if(n.look===`handDrawn`){let e=t.svg(s),r=x(n,{}),i=E||D?e.path(q(C,w,v,b,E||0),r):e.rectangle(C,w,v,b,r);T=s.insert(()=>i,`:first-child`),T.attr(`class`,`basic label-container`).attr(`style`,O||null)}else{T=s.insert(`rect`,`:first-child`),T.attr(`class`,`basic label-container __APA__`).attr(`style`,a).attr(`rx`,E??5).attr(`ry`,D??5).attr(`x`,C).attr(`y`,w).attr(`width`,v).attr(`height`,b);let e=`priority`in n&&n.priority;if(e){let t=s.append(`line`),n=C+2,r=w+Math.floor((E??0)/2),i=w+b-Math.floor((E??0)/2);t.attr(`x1`,n).attr(`y1`,r).attr(`x2`,n).attr(`y2`,i).attr(`stroke-width`,`4`).attr(`stroke`,Qn(e))}}return I(n,T),n.height=b,n.intersect=function(e){return K.rect(n,e)},s}n($n,`kanbanItem`);async function er(e,n){let{labelStyles:i,nodeStyles:a}=S(n);n.labelStyle=i;let{shapeSvg:o,bbox:s,halfPadding:c,label:l}=await P(e,n,L(n)),u=s.width+10*c,d=s.height+8*c,f=.15*u,{cssStyles:p}=n,m=s.width+20,h=s.height+20,_=Math.max(u,m),v=Math.max(d,h);l.attr(`transform`,`translate(${-s.width/2}, ${-s.height/2})`);let y,b=`M0 0
|
|
11
|
+
a${f},${f} 1 0,0 ${_*.25},${-1*v*.1}
|
|
12
|
+
a${f},${f} 1 0,0 ${_*.25},0
|
|
13
|
+
a${f},${f} 1 0,0 ${_*.25},0
|
|
14
|
+
a${f},${f} 1 0,0 ${_*.25},${v*.1}
|
|
15
15
|
|
|
16
|
-
a${f},${f} 1 0,0 ${
|
|
17
|
-
a${f*.8},${f*.8} 1 0,0 0,${
|
|
18
|
-
a${f},${f} 1 0,0 ${-1*
|
|
16
|
+
a${f},${f} 1 0,0 ${_*.15},${v*.33}
|
|
17
|
+
a${f*.8},${f*.8} 1 0,0 0,${v*.34}
|
|
18
|
+
a${f},${f} 1 0,0 ${-1*_*.15},${v*.33}
|
|
19
19
|
|
|
20
|
-
a${f},${f} 1 0,0 ${-1*
|
|
21
|
-
a${f},${f} 1 0,0 ${-1*
|
|
22
|
-
a${f},${f} 1 0,0 ${-1*
|
|
23
|
-
a${f},${f} 1 0,0 ${-1*
|
|
20
|
+
a${f},${f} 1 0,0 ${-1*_*.25},${v*.15}
|
|
21
|
+
a${f},${f} 1 0,0 ${-1*_*.25},0
|
|
22
|
+
a${f},${f} 1 0,0 ${-1*_*.25},0
|
|
23
|
+
a${f},${f} 1 0,0 ${-1*_*.25},${-1*v*.15}
|
|
24
24
|
|
|
25
|
-
a${f},${f} 1 0,0 ${-1*
|
|
26
|
-
a${f*.8},${f*.8} 1 0,0 0,${-1*
|
|
27
|
-
a${f},${f} 1 0,0 ${
|
|
28
|
-
H0 V0 Z`;if(n.look===`handDrawn`){let e=t.svg(o),r=x(n,{}),i=e.path(b,r);y=o.insert(()=>i,`:first-child`),y.attr(`class`,`basic label-container`).attr(`style`,
|
|
25
|
+
a${f},${f} 1 0,0 ${-1*_*.1},${-1*v*.33}
|
|
26
|
+
a${f*.8},${f*.8} 1 0,0 0,${-1*v*.34}
|
|
27
|
+
a${f},${f} 1 0,0 ${_*.1},${-1*v*.33}
|
|
28
|
+
H0 V0 Z`;if(n.look===`handDrawn`){let e=t.svg(o),r=x(n,{}),i=e.path(b,r);y=o.insert(()=>i,`:first-child`),y.attr(`class`,`basic label-container`).attr(`style`,g(p))}else y=o.insert(`path`,`:first-child`).attr(`class`,`basic label-container`).attr(`style`,a).attr(`d`,b);return y.attr(`transform`,`translate(${-_/2}, ${-v/2})`),I(n,y),n.calcIntersect=function(e,t){return K.rect(e,t)},n.intersect=function(e){return r.info(`Bang intersect`,n,e),K.rect(n,e)},o}n(er,`bang`);async function tr(e,n){let{labelStyles:i,nodeStyles:a}=S(n);n.labelStyle=i;let{shapeSvg:o,bbox:s,halfPadding:c,label:l}=await P(e,n,L(n)),u=s.width+2*c,d=s.height+2*c,f=.15*u,p=.25*u,m=.35*u,h=.2*u,{cssStyles:_}=n,v,y=`M0 0
|
|
29
29
|
a${f},${f} 0 0,1 ${u*.25},${-1*u*.1}
|
|
30
30
|
a${m},${m} 1 0,1 ${u*.4},${-1*u*.1}
|
|
31
31
|
a${p},${p} 1 0,1 ${u*.35},${u*.2}
|
|
@@ -39,7 +39,7 @@ import{p as e}from"./src-XiVvaevx.js";import{t}from"./rough.esm-Dy-Kn_BL.js";imp
|
|
|
39
39
|
|
|
40
40
|
a${f},${f} 1 0,1 ${-1*u*.1},${-1*d*.35}
|
|
41
41
|
a${h},${h} 1 0,1 ${u*.1},${-1*d*.65}
|
|
42
|
-
H0 V0 Z`;if(n.look===`handDrawn`){let e=t.svg(o),r=x(n,{}),i=e.path(y,r);
|
|
42
|
+
H0 V0 Z`;if(n.look===`handDrawn`){let e=t.svg(o),r=x(n,{}),i=e.path(y,r);v=o.insert(()=>i,`:first-child`),v.attr(`class`,`basic label-container`).attr(`style`,g(_))}else v=o.insert(`path`,`:first-child`).attr(`class`,`basic label-container`).attr(`style`,a).attr(`d`,y);return l.attr(`transform`,`translate(${-s.width/2}, ${-s.height/2})`),v.attr(`transform`,`translate(${-u/2}, ${-d/2})`),I(n,v),n.calcIntersect=function(e,t){return K.rect(e,t)},n.intersect=function(e){return r.info(`Cloud intersect`,n,e),K.rect(n,e)},o}n(tr,`cloud`);async function nr(e,t){let{labelStyles:n,nodeStyles:r}=S(t);t.labelStyle=n;let{shapeSvg:i,bbox:a,halfPadding:o,label:s}=await P(e,t,L(t)),c=a.width+8*o,l=a.height+2*o,u=t.look===`neo`?`
|
|
43
43
|
M${-c/2} ${l/2-5}
|
|
44
44
|
v${-l+10}
|
|
45
45
|
q0,-5 5,-5
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{C as e,S as t,m as n,n as r,o as i,t as a,u as o,w as s,x as c}from"./chunk-
|
|
1
|
+
import{C as e,S as t,m as n,n as r,o as i,t as a,u as o,w as s,x as c}from"./chunk-NGNAAXSQ-DqoPQk1a.js";var l=class extends a{static{c(this,`RailroadAbnfTokenBuilder`)}constructor(){super([`railroad-abnf-beta`])}},u=class extends r{static{c(this,`RailroadAbnfValueConverter`)}runConverter(e,t,n){let r=super.runConverter(e,t,n);if(e.name===`TITLE`&&typeof r==`string`){let e=r.trim();if(e.startsWith(`"`)&&e.endsWith(`"`)||e.startsWith(`'`)&&e.endsWith(`'`))return e.slice(1,-1)}return r}runCustomConverter(e,t,n){if(e.name===`ABNF_STRING`)return t.slice(1,-1)}},d={parser:{TokenBuilder:c(()=>new l,`TokenBuilder`),ValueConverter:c(()=>new u,`ValueConverter`)}};function f(r=i){let a=s(e(r),o),c=s(t({shared:a}),n,d);return a.ServiceRegistry.register(c),{shared:a,RailroadAbnf:c}}c(f,`createRailroadAbnfServices`);export{f as n,d as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as e}from"./src-XiVvaevx.js";import{n as t}from"./chunk-Y2CYZVJY-BbRBGnmc.js";import{
|
|
1
|
+
import{p as e}from"./src-XiVvaevx.js";import{n as t}from"./chunk-Y2CYZVJY-BbRBGnmc.js";import{b as n}from"./chunk-VPRB5NB3-BqaJfj_v.js";var r=t(t=>{let{securityLevel:r}=n(),i=e(`body`);if(r===`sandbox`){let n=e(`#i${t}`).node()?.contentDocument??document;i=e(n.body)}return i.select(`#${t}`)},`selectSvgElement`);export{r as t};
|