zen-gitsync 2.19.8 → 2.19.9
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/README.md +1 -1
- package/package.json +3 -1
- package/src/ui/public/assets/AgentView-BRSZKJfA.css +1 -0
- package/src/ui/public/assets/AgentView-CR5usdnH.js +46 -0
- package/src/ui/public/assets/AppVersionBadge-BHHCcK4D.js +2 -0
- package/src/ui/public/assets/{AppVersionBadge-Ct7s9klu.css → AppVersionBadge-BX4JDHtP.css} +1 -1
- package/src/ui/public/assets/BranchSelector-CXCOcQdJ.js +4 -0
- package/src/ui/public/assets/BranchSelector-F4ibldMN.css +1 -0
- package/src/ui/public/assets/CommitForm-CZmDbdjy.css +1 -0
- package/src/ui/public/assets/CommitForm-DgU5ceFS.js +19 -0
- package/src/ui/public/assets/CommonDialog-BK-EP7t_.js +1 -0
- package/src/ui/public/assets/CommonDialog-w6EmBEXv.css +1 -0
- package/src/ui/public/assets/EditorView-5E2HoEPA.js +11 -0
- package/src/ui/public/assets/EditorView-DCe3Zd1T.css +1 -0
- package/src/ui/public/assets/FlowExecutionViewer-X1ZAwtUs.js +1 -0
- package/src/ui/public/assets/FlowExecutionViewer-jNHI5zdm.css +1 -0
- package/src/ui/public/assets/FlowOrchestrationWorkspace-BuDFxeDm.js +21 -0
- package/src/ui/public/assets/{FlowOrchestrationWorkspace-y58xFQli.css → FlowOrchestrationWorkspace-Cmz-2kXx.css} +1 -1
- package/src/ui/public/assets/IconButton-Ca_axHSP.css +1 -0
- package/src/ui/public/assets/IconButton-rWXbHMlj.js +1 -0
- package/src/ui/public/assets/LogList-2uilXsDH.js +7 -0
- package/src/ui/public/assets/LogList-mx0vNycQ.css +1 -0
- package/src/ui/public/assets/MindmapView-BCC9REDW.css +1 -0
- package/src/ui/public/assets/MindmapView-Dc70h590.js +2 -0
- package/src/ui/public/assets/MonacoDiffViewer-DmY_9w3f.js +2 -0
- package/src/ui/public/assets/MonacoDiffViewer-OeHzOcJT.css +1 -0
- package/src/ui/public/assets/MonacoEditor-B51BvXN7.js +2 -0
- package/src/ui/public/assets/MonacoEditor-Bfmsc0eP.css +1 -0
- package/src/ui/public/assets/MonitorView-1wNAygfd.js +3 -0
- package/src/ui/public/assets/{MonitorView-GIgcNrpD.css → MonitorView-B55J58oZ.css} +1 -1
- package/src/ui/public/assets/ProjectManagerView-BDMDqu3Q.js +10 -0
- package/src/ui/public/assets/ProjectManagerView-BPnAWNBJ.css +1 -0
- package/src/ui/public/assets/ProjectStartupButton-D1vkpfo0.js +1 -0
- package/src/ui/public/assets/ProjectStartupButton-pw0T64va.css +1 -0
- package/src/ui/public/assets/RemoteManagerDialog-7wO9c5YX.js +4 -0
- package/src/ui/public/assets/RemoteManagerDialog-CR_UOc7g.css +1 -0
- package/src/ui/public/assets/RemoteRepoCard-46FT5fIA.js +7 -0
- package/src/ui/public/assets/RemoteRepoCard-o01IrbVz.css +1 -0
- package/src/ui/public/assets/SourceMapView-BTBl_dQF.js +16 -0
- package/src/ui/public/assets/SourceMapView-BYzPczgV.css +1 -0
- package/src/ui/public/assets/{SvgIcon-BQ6bR7l0.css → SvgIcon-CDNsk4-Q.css} +1 -1
- package/src/ui/public/assets/SvgIcon-CdV2Vf7y.js +1 -0
- package/src/ui/public/assets/{TemplateManager-Dn5A-o9I.css → TemplateManager-DtDpRU-r.css} +1 -1
- package/src/ui/public/assets/TemplateManager-Xw10gkAg.js +1 -0
- package/src/ui/public/assets/UserInputNode-BtDF3aoX.js +1 -0
- package/src/ui/public/assets/UserInputNode-CaYsfbJq.css +1 -0
- package/src/ui/public/assets/WorkbenchView-DKm1nASZ.css +1 -0
- package/src/ui/public/assets/WorkbenchView-DP7JxjQs.js +397 -0
- package/src/ui/public/assets/_plugin-vue_export-helper-iXNJ6JSE.js +1 -0
- package/src/ui/public/assets/{abnfDiagram-VCTEODGH-ChA5oDs2.js → abnfDiagram-VCTEODGH-9BmTgIB0.js} +1 -1
- package/src/ui/public/assets/architecture-7GRP2DOG-DlkuS1af.js +1 -0
- package/src/ui/public/assets/{architectureDiagram-5GKGNRK7-62mYFGCE.js → architectureDiagram-5GKGNRK7-M_VCUB78.js} +1 -1
- package/src/ui/public/assets/{blockDiagram-I7D4REHJ-wLpwzhBJ.js → blockDiagram-I7D4REHJ-Djm1wJGG.js} +1 -1
- package/src/ui/public/assets/{c4Diagram-7LVT6UL2-XZx8JHL8.js → c4Diagram-7LVT6UL2-CuX13vZ-.js} +1 -1
- package/src/ui/public/assets/channel-vbR9N9U-.js +1 -0
- package/src/ui/public/assets/checkbox-B7YbNGuH.js +1 -0
- package/src/ui/public/assets/{chunk-4HAMMTFA-CFFbJkK0.js → chunk-4HAMMTFA-DAZqGrza.js} +1 -1
- package/src/ui/public/assets/{chunk-75Z2AOVW-DQtYeQr5.js → chunk-75Z2AOVW-_W5tuIwa.js} +1 -1
- package/src/ui/public/assets/{chunk-DU6HZSFF-2F8cLTjH.js → chunk-DU6HZSFF-yMMoBTo7.js} +1 -1
- package/src/ui/public/assets/{chunk-F27PBJKO-Bo076A-I.js → chunk-F27PBJKO-D3tdEy9d.js} +1 -1
- package/src/ui/public/assets/{chunk-GMAD6QVW-FuFwI_Oi.js → chunk-GMAD6QVW-Due4bpzp.js} +1 -1
- package/src/ui/public/assets/{chunk-GVQU2GXP-CV8ZMXP4.js → chunk-GVQU2GXP-BBBf3tdJ.js} +1 -1
- package/src/ui/public/assets/{chunk-IMKFNOWR-kx_YRlPF.js → chunk-IMKFNOWR-BdNGOHkD.js} +1 -1
- package/src/ui/public/assets/{chunk-L3NEJ4N5-C8tgpiPP.js → chunk-L3NEJ4N5-ATCHpAfZ.js} +1 -1
- package/src/ui/public/assets/{chunk-OSK3NFVY-C6c3NtM_.js → chunk-OSK3NFVY-BH7eo5Tf.js} +1 -1
- package/src/ui/public/assets/{chunk-P2QGCYS3-B80r0Q9v.js → chunk-P2QGCYS3-DTr4IL_e.js} +1 -1
- package/src/ui/public/assets/{chunk-POPQ4Y6H-Do7M9MiP.js → chunk-POPQ4Y6H-BaV7NNDh.js} +1 -1
- package/src/ui/public/assets/{chunk-PWAF6VOD-CSbxmz13.js → chunk-PWAF6VOD-D3SA0mzG.js} +1 -1
- package/src/ui/public/assets/{chunk-SHT3W25Y-CcjtRGjI.js → chunk-SHT3W25Y-B0R4yLS8.js} +1 -1
- package/src/ui/public/assets/{chunk-SVP7TREG-Di_ciK9x.js → chunk-SVP7TREG-DIMcJWWD.js} +1 -1
- package/src/ui/public/assets/{chunk-TICWLB2K-0CfG2yxE.js → chunk-TICWLB2K-HdKmxWOg.js} +1 -1
- package/src/ui/public/assets/classDiagram-ZZMXUADV-D3NlOWpc.js +1 -0
- package/src/ui/public/assets/classDiagram-v2-VYDZK3BY-D3NlOWpc.js +1 -0
- package/src/ui/public/assets/{configStore-DzSV1BYm.js → configStore-Bu9Y7yi8.js} +2 -2
- package/src/ui/public/assets/css-B0yAvfNS.js +1 -0
- package/src/ui/public/assets/{css-DqcEMNnr.js → css-BNFbzzrw.js} +11 -8
- package/src/ui/public/assets/css-COonD8vo.js +5 -0
- package/src/ui/public/assets/css-CeOw7pBa.js +1 -0
- package/src/ui/public/assets/css-DHMJKOSk.js +1 -0
- package/src/ui/public/assets/css-DUZNM4Y2.js +1 -0
- package/src/ui/public/assets/css-DUozUjEY.js +1 -0
- package/src/ui/public/assets/{css-B6iB_IBc.js → css-DY0EjKnI.js} +1 -1
- package/src/ui/public/assets/css-DuOCaNNA.js +1 -0
- package/src/ui/public/assets/css-Dv_BkLAU.js +1 -0
- package/src/ui/public/assets/css-LiAyzznX.js +1 -0
- package/src/ui/public/assets/css-ltJ3T38X.js +1 -0
- package/src/ui/public/assets/css-zjLlfHGW.js +1 -0
- package/src/ui/public/assets/{cssMode-DjTbS4Wq.js → cssMode-hbRIlUMk.js} +1 -1
- package/src/ui/public/assets/{cynefin-OW5HDTMX-B7yxXktH.js → cynefin-OW5HDTMX-t2yRwCcY.js} +1 -1
- package/src/ui/public/assets/{cynefinDiagram-5FMLGOSQ-CmnybSAP.js → cynefinDiagram-5FMLGOSQ-C2e7HWCJ.js} +1 -1
- package/src/ui/public/assets/{dagre-GXQ25YYZ-CoXdn31O.js → dagre-GXQ25YYZ-C9a9pURj.js} +1 -1
- package/src/ui/public/assets/{diagram-S7CK7UJ4-Dn_nD9gA.js → diagram-S7CK7UJ4-Cm-RU4j0.js} +1 -1
- package/src/ui/public/assets/{diagram-UQ7AKVKN-BIi5ZTzR.js → diagram-UQ7AKVKN-DWRHvZqO.js} +1 -1
- package/src/ui/public/assets/{diagram-VSXAHHWV-B6VAL5Zj.js → diagram-VSXAHHWV-DHPokpBs.js} +1 -1
- package/src/ui/public/assets/{diagram-VX7I27RA-isKTV1kf.js → diagram-VX7I27RA-CwF3R0ac.js} +1 -1
- package/src/ui/public/assets/{diagram-Z3DM3KII-CCMf2rm-.js → diagram-Z3DM3KII-DIVaf_QG.js} +1 -1
- package/src/ui/public/assets/{dropdown-BavttwJK.js → dropdown-CtU-luuS.js} +1 -1
- package/src/ui/public/assets/{ebnfDiagram-PWID7BFC-BsbZk3o3.js → ebnfDiagram-PWID7BFC-Du4bymdU.js} +1 -1
- package/src/ui/public/assets/{editor.main-CdUvhqnN.js → editor.main-CMmnTvm1.js} +2 -2
- package/src/ui/public/assets/empty-BsRc9htE.js +1 -0
- package/src/ui/public/assets/{erDiagram-RLTQ6QDP-BJhHfI6b.js → erDiagram-RLTQ6QDP-Bgccqyp8.js} +1 -1
- package/src/ui/public/assets/eventmodeling-NTZA5JFV-BojrOVAZ.js +1 -0
- package/src/ui/public/assets/file-picker-Gn9LzhB0.js +1 -0
- package/src/ui/public/assets/flowDiagram-HODETNUW-C5_mSTs9.js +1 -0
- package/src/ui/public/assets/{ganttDiagram-EL5Y4UJY-z_PhL7PF.js → ganttDiagram-EL5Y4UJY-B1jLr_ff.js} +1 -1
- package/src/ui/public/assets/{gitGraph-4MIJSDKK-C-8-T-QE.js → gitGraph-4MIJSDKK-CEtzqNOb.js} +1 -1
- package/src/ui/public/assets/{gitGraphDiagram-WWUBYQGX-neC7vfjM.js → gitGraphDiagram-WWUBYQGX-DYxRWDG1.js} +1 -1
- package/src/ui/public/assets/{htmlMode-CORVBMgh.js → htmlMode-Ci1PugwK.js} +1 -1
- package/src/ui/public/assets/{index-AOD6hKOd.css → index-BJM2x7X4.css} +1 -1
- package/src/ui/public/assets/index-C1m5EhFo.js +399 -0
- package/src/ui/public/assets/{info-A6RAGUB7-oSUydmXL.js → info-A6RAGUB7-B2CPEMrg.js} +1 -1
- package/src/ui/public/assets/{infoDiagram-27XIBGKW-CHh9KJ6J.js → infoDiagram-27XIBGKW-DcBDWrbC.js} +1 -1
- package/src/ui/public/assets/{ishikawaDiagram-5VMMS53U-a3TkIBT6.js → ishikawaDiagram-5VMMS53U-BcrzKNax.js} +1 -1
- package/src/ui/public/assets/{journeyDiagram-3NMN7TZE-B_yxlGTt.js → journeyDiagram-3NMN7TZE-DB6vqC8g.js} +1 -1
- package/src/ui/public/assets/{jsonMode-5N-oul1n.js → jsonMode-gqPTLeA3.js} +1 -1
- package/src/ui/public/assets/{kanban-definition-UXKFOSKX-C_JW8O7H.js → kanban-definition-UXKFOSKX-CV70bZlu.js} +1 -1
- package/src/ui/public/assets/{lib-DqOQiVl9.js → lib-C043e2hc.js} +1 -1
- package/src/ui/public/assets/lib-CQSScEg5.js +10 -0
- package/src/ui/public/assets/{lib-CpAs2Wj-.js → lib-DvKbuLjs.js} +1 -1
- package/src/ui/public/assets/lib-aDQlNW-L.js +74 -0
- package/src/ui/public/assets/{line-B1cJ2uj_.js → line-12OdRdcE.js} +1 -1
- package/src/ui/public/assets/{mermaid-parser.core-qyaZuPY1.js → mermaid-parser.core-C3pC5XqX.js} +3 -3
- package/src/ui/public/assets/{mermaid.core-BnwRGK85.js → mermaid.core-DT2IMBeS.js} +4 -4
- package/src/ui/public/assets/message-box-CXom4_oM.js +1 -0
- package/src/ui/public/assets/{mindmap-definition-YA3MSWOX-CedMhfH_.js → mindmap-definition-YA3MSWOX-Bz7FDKXU.js} +1 -1
- package/src/ui/public/assets/overlay-BLdJhxTh.js +3 -0
- package/src/ui/public/assets/{packet-AYTQ26CC-BY3WwKkj.js → packet-AYTQ26CC-Bb_El6Ek.js} +1 -1
- package/src/ui/public/assets/{pegDiagram-XKGWAZYB-BIUio9w_.js → pegDiagram-XKGWAZYB-_UGvHWjY.js} +1 -1
- package/src/ui/public/assets/{pie-WAS4IAKB-DBmbJ4Ci.js → pie-WAS4IAKB-CEyQz8oV.js} +1 -1
- package/src/ui/public/assets/{pieDiagram-E7YTZNPT-DlWPQ8tP.js → pieDiagram-E7YTZNPT-Cp0hcHv1.js} +1 -1
- package/src/ui/public/assets/pinia-B1dVyVSb.js +5 -0
- package/src/ui/public/assets/{quadrantDiagram-AXDQQJYC-DtkxMT2U.js → quadrantDiagram-AXDQQJYC-D3P8RRGn.js} +1 -1
- package/src/ui/public/assets/{radar-RG4KPBEZ-BLAgIhup.js → radar-RG4KPBEZ-Ct7UV-yn.js} +1 -1
- package/src/ui/public/assets/{railroad-74A4TZTK-BkwLxF0x.js → railroad-74A4TZTK-BG1IrPR6.js} +1 -1
- package/src/ui/public/assets/railroad-abnf-HS5TGJTU-CRhndnlq.js +1 -0
- package/src/ui/public/assets/railroad-ebnf-LZEXJU2U-CkTh9H6T.js +1 -0
- package/src/ui/public/assets/railroad-peg-WCYAUIDC-DgqvJCaH.js +1 -0
- package/src/ui/public/assets/{railroadDiagram-O6MQD6OU-BtCF9aCR.js → railroadDiagram-O6MQD6OU-DKQlif8Z.js} +1 -1
- package/src/ui/public/assets/{relativeTime-B8664fn0.js → relativeTime-D99DdDf4.js} +1 -1
- package/src/ui/public/assets/{repeat-click-BIbf_jnH.js → repeat-click-B7DOHmvB.js} +1 -1
- package/src/ui/public/assets/{requirementDiagram-BXWQKSXE-h7P36yGJ.js → requirementDiagram-BXWQKSXE-Rd_wG9uK.js} +1 -1
- package/src/ui/public/assets/runtime-dom.esm-bundler-BicOLibD.js +25 -0
- package/src/ui/public/assets/{sankeyDiagram-P5KCCOFB-tOr_1xic.js → sankeyDiagram-P5KCCOFB-BLL_Ya-r.js} +1 -1
- package/src/ui/public/assets/scrollbar-BFArGC-B.js +1 -0
- package/src/ui/public/assets/select-B1mzQ7WN.js +1 -0
- package/src/ui/public/assets/{sequenceDiagram-WJ2MYXX4-BfQLLi3B.js → sequenceDiagram-WJ2MYXX4-CnEAZGeL.js} +1 -1
- package/src/ui/public/assets/{stateDiagram-D77RDMKH-BBSAJdXV.js → stateDiagram-D77RDMKH-ButJt2r0.js} +1 -1
- package/src/ui/public/assets/stateDiagram-v2-MP3YSRHH-DfWAkCkk.js +1 -0
- package/src/ui/public/assets/{swimlanes-42K2YHIH-DNgBV8QY.js → swimlanes-42K2YHIH-CkJuu_tI.js} +1 -1
- package/src/ui/public/assets/swimlanesDiagram-VR7AAH4N-BnHmf8d6.js +8 -0
- package/src/ui/public/assets/table-DydILIY8.js +1 -0
- package/src/ui/public/assets/tag-B4v4gfl_.js +1 -0
- package/src/ui/public/assets/{taskExecutionExport-CkmJ2TPt.js → taskExecutionExport-CfnqRWvh.js} +12 -12
- package/src/ui/public/assets/{taskExecutionExport-BW-iMfDj.css → taskExecutionExport-Ct3WPeis.css} +1 -1
- package/src/ui/public/assets/{timeline-definition-24CTP7MA-cg7CFdnn.js → timeline-definition-24CTP7MA-K3R4Ikor.js} +1 -1
- package/src/ui/public/assets/{toolsStore-AtvXNDnx.js → toolsStore-BTA83WTy.js} +1 -1
- package/src/ui/public/assets/{treeView-Q6P3EWNA-B9UM19dT.js → treeView-Q6P3EWNA-C29hh9uK.js} +1 -1
- package/src/ui/public/assets/{treemap-WGGIJYW6-d4-stV9I.js → treemap-WGGIJYW6-CHDwdfMX.js} +1 -1
- package/src/ui/public/assets/{tsMode-DtEE5Q2d.js → tsMode-Cy0CWBnf.js} +1 -1
- package/src/ui/public/assets/useWorkbenchProjects-9dWumVO1.css +1 -0
- package/src/ui/public/assets/useWorkbenchProjects-C14Jw1yS.js +9 -0
- package/src/ui/public/assets/{vennDiagram-4TSXK5OY-C6UZLLEC.js → vennDiagram-4TSXK5OY-BSCgY5MN.js} +1 -1
- package/src/ui/public/assets/vue-flow-controls-zeko7WMo.js +26 -0
- package/src/ui/public/assets/{wardley-WFR3VGLG-CPJl3V1e.js → wardley-WFR3VGLG-CsM9MTWy.js} +1 -1
- package/src/ui/public/assets/{wardleyDiagram-VM6X3IG4-BCT1k7hd.js → wardleyDiagram-VM6X3IG4-HBJSanUr.js} +1 -1
- package/src/ui/public/assets/{xychartDiagram-S5SC5T6Z-B_7qu4Hj.js → xychartDiagram-S5SC5T6Z-CT-wpDt-.js} +1 -1
- package/src/ui/public/index.html +38 -38
- package/src/ui/server/routes/workbench/index.js +97 -1
- package/src/ui/server/routes/workbench/projectRegistry.js +34 -7
- package/src/ui/server/routes/workbench/replyTriage.js +381 -0
- package/src/ui/server/routes/workbench/shared.js +12 -0
- package/src/ui/server/routes/workbench/taskRunner.js +9 -6
- package/src/ui/public/assets/AgentView-CrW73qMr.js +0 -15
- package/src/ui/public/assets/AgentView-D5MiIZuz.css +0 -1
- package/src/ui/public/assets/AppVersionBadge-B3bjwS49.js +0 -2
- package/src/ui/public/assets/BranchSelector-B4jxlVma.js +0 -1
- package/src/ui/public/assets/BranchSelector-BHbCgJEE.css +0 -1
- package/src/ui/public/assets/CommitForm-CydgbA2C.css +0 -1
- package/src/ui/public/assets/CommitForm-nML0Hd7l.js +0 -2
- package/src/ui/public/assets/CommonDialog-Bzi5ISqT.css +0 -1
- package/src/ui/public/assets/CommonDialog-Xczdxiq2.js +0 -1
- package/src/ui/public/assets/EditorView-BXFaXYHN.css +0 -1
- package/src/ui/public/assets/EditorView-DzsMTIKX.js +0 -1
- package/src/ui/public/assets/FlowExecutionViewer-B5kh7VxS.css +0 -1
- package/src/ui/public/assets/FlowExecutionViewer-DXJpoonX.js +0 -1
- package/src/ui/public/assets/FlowOrchestrationWorkspace-DDTd023p.js +0 -21
- package/src/ui/public/assets/IconButton-CTVZizUz.js +0 -1
- package/src/ui/public/assets/IconButton-DmetnIEM.css +0 -1
- package/src/ui/public/assets/LogList-CdbfO-Vy.js +0 -7
- package/src/ui/public/assets/LogList-DViWAYe9.css +0 -1
- package/src/ui/public/assets/MindmapView-CohUDqAD.css +0 -1
- package/src/ui/public/assets/MindmapView-D1pNx2gE.js +0 -1
- package/src/ui/public/assets/MonacoDiffViewer-CJkqe7R6.css +0 -1
- package/src/ui/public/assets/MonacoDiffViewer-DOAyDjNA.js +0 -2
- package/src/ui/public/assets/MonacoEditor-BXELa4Z1.css +0 -1
- package/src/ui/public/assets/MonacoEditor-DF9Sx8uD.js +0 -2
- package/src/ui/public/assets/MonitorView-DvSXxpuz.js +0 -1
- package/src/ui/public/assets/ProjectManagerView-BFTSvt7X.css +0 -1
- package/src/ui/public/assets/ProjectManagerView-Bv15QOWG.js +0 -1
- package/src/ui/public/assets/ProjectStartupButton-BZYOKfYI.js +0 -1
- package/src/ui/public/assets/ProjectStartupButton-CYJNbO_s.css +0 -1
- package/src/ui/public/assets/RemoteManagerDialog-DecRuME6.css +0 -1
- package/src/ui/public/assets/RemoteManagerDialog-m4xHH1i1.js +0 -1
- package/src/ui/public/assets/RemoteRepoCard-BMHjSbhD.js +0 -1
- package/src/ui/public/assets/RemoteRepoCard-Bud571e2.css +0 -1
- package/src/ui/public/assets/SourceMapView-CyRaXNRJ.js +0 -16
- package/src/ui/public/assets/SourceMapView-W3kEDGi8.css +0 -1
- package/src/ui/public/assets/SvgIcon-BhcuOgBu.js +0 -1
- package/src/ui/public/assets/TemplateManager-v_HdR3uT.js +0 -1
- package/src/ui/public/assets/UserInputNode-4Dz76KjZ.js +0 -1
- package/src/ui/public/assets/UserInputNode-wfqZIucW.css +0 -1
- package/src/ui/public/assets/WorkbenchView-BLHw8-bZ.css +0 -1
- package/src/ui/public/assets/WorkbenchView-BmhoLXyf.js +0 -6
- package/src/ui/public/assets/_plugin-vue_export-helper-C-FFoFVt.js +0 -1
- package/src/ui/public/assets/architecture-7GRP2DOG-BWMpt-wx.js +0 -1
- package/src/ui/public/assets/channel-Bv1i9WZP.js +0 -1
- package/src/ui/public/assets/checkbox-bGrNAhEe.js +0 -1
- package/src/ui/public/assets/classDiagram-ZZMXUADV-C1yU0S1P.js +0 -1
- package/src/ui/public/assets/classDiagram-v2-VYDZK3BY-C1yU0S1P.js +0 -1
- package/src/ui/public/assets/css-97U79mqY.js +0 -1
- package/src/ui/public/assets/css-9c4ARN8B.js +0 -1
- package/src/ui/public/assets/css-BO8scIW3.js +0 -1
- package/src/ui/public/assets/css-C5Ep_hUU.js +0 -5
- package/src/ui/public/assets/css-DA1Hkb0c.js +0 -1
- package/src/ui/public/assets/css-DBfNr0B8.js +0 -1
- package/src/ui/public/assets/css-DUoOEAIc.js +0 -1
- package/src/ui/public/assets/css-DcJScsU6.js +0 -1
- package/src/ui/public/assets/css-DgfxjIuW.js +0 -1
- package/src/ui/public/assets/css-GGntyoo4.js +0 -1
- package/src/ui/public/assets/css-svLaNjH3.js +0 -1
- package/src/ui/public/assets/empty-DYtkD7dz.js +0 -1
- package/src/ui/public/assets/eventmodeling-NTZA5JFV-CuIdpoaV.js +0 -1
- package/src/ui/public/assets/file-picker-DIldo8KL.js +0 -1
- package/src/ui/public/assets/flowDiagram-HODETNUW-DWnAtNvY.js +0 -1
- package/src/ui/public/assets/index-CyaDtSLw.js +0 -215
- package/src/ui/public/assets/lib-BkKP8HsA.js +0 -9
- package/src/ui/public/assets/lib-DHw1U3Aw.js +0 -60
- package/src/ui/public/assets/message-box-B-scWapo.js +0 -1
- package/src/ui/public/assets/overlay-hK0FJjVv.js +0 -3
- package/src/ui/public/assets/pinia-BPF12Yrb.js +0 -1
- package/src/ui/public/assets/railroad-abnf-HS5TGJTU-Dec5uKlc.js +0 -1
- package/src/ui/public/assets/railroad-ebnf-LZEXJU2U-DFXH-gfF.js +0 -1
- package/src/ui/public/assets/railroad-peg-WCYAUIDC-D15mQk0-.js +0 -1
- package/src/ui/public/assets/runtime-dom.esm-bundler-CwnCPTno.js +0 -5
- package/src/ui/public/assets/scrollbar-B3cTlIQS.js +0 -1
- package/src/ui/public/assets/select-C6NmiyE8.js +0 -1
- package/src/ui/public/assets/stateDiagram-v2-MP3YSRHH-Bv-sCrPA.js +0 -1
- package/src/ui/public/assets/swimlanesDiagram-VR7AAH4N-CV5_GTGx.js +0 -8
- package/src/ui/public/assets/table-Y7ONhuJj.js +0 -1
- package/src/ui/public/assets/tag-D5DStZq7.js +0 -1
- package/src/ui/public/assets/useWorkbenchProjects-ClDzjpmk.js +0 -1
- package/src/ui/public/assets/useWorkbenchProjects-oOV26kNH.css +0 -1
- package/src/ui/public/assets/vue-flow-controls-d97G_mZX.js +0 -26
package/src/ui/public/assets/{vennDiagram-4TSXK5OY-C6UZLLEC.js → vennDiagram-4TSXK5OY-BSCgY5MN.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{n as e}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{p as t}from"./src-Bd6kVAy5.js";import{H as n,K as r,U as i,a,b as o,c as s,et as c,f as l,nt as u,rt as d,tt as f,v as p,w as m,y as h}from"./chunk-DU6HZSFF-2F8cLTjH.js";import{i as g}from"./chunk-75Z2AOVW-DQtYeQr5.js";import{t as _}from"./rough.esm-Dy-Kn_BL.js";import{f as v}from"./mermaid.core-BnwRGK85.js";var y=(e,t)=>u(e,`a`,-t),b=1e-10;function x(e,t){let n=C(e),r=n.filter(t=>S(t,e)),i=0,a=0,o=[];if(r.length>1){let t=O(r);for(let e=0;e<r.length;++e){let n=r[e];n.angle=Math.atan2(n.x-t.x,n.y-t.y)}r.sort((e,t)=>t.angle-e.angle);let n=r[r.length-1];for(let t=0;t<r.length;++t){let s=r[t];a+=(n.x+s.x)*(s.y-n.y);let c={x:(s.x+n.x)/2,y:(s.y+n.y)/2},l=null;for(let t=0;t<s.parentIndex.length;++t)if(n.parentIndex.includes(s.parentIndex[t])){let r=e[s.parentIndex[t]],i=Math.atan2(s.x-r.x,s.y-r.y),a=Math.atan2(n.x-r.x,n.y-r.y),o=a-i;o<0&&(o+=2*Math.PI);let u=a-o/2,d=T(c,{x:r.x+r.radius*Math.sin(u),y:r.y+r.radius*Math.cos(u)});d>r.radius*2&&(d=r.radius*2),(l==null||l.width>d)&&(l={circle:r,width:d,p1:s,p2:n,large:d>r.radius,sweep:!0})}l!=null&&(o.push(l),i+=w(l.circle.radius,l.width),n=s)}}else{let t=e[0];for(let n=1;n<e.length;++n)e[n].radius<t.radius&&(t=e[n]);let n=!1;for(let r=0;r<e.length;++r)if(T(e[r],t)>Math.abs(t.radius-e[r].radius)){n=!0;break}n?i=a=0:(i=t.radius*t.radius*Math.PI,o.push({circle:t,p1:{x:t.x,y:t.y+t.radius},p2:{x:t.x-b,y:t.y+t.radius},width:t.radius*2,large:!0,sweep:!0}))}return a/=2,t&&(t.area=i+a,t.arcArea=i,t.polygonArea=a,t.arcs=o,t.innerPoints=r,t.intersectionPoints=n),i+a}function S(e,t){return t.every(t=>T(e,t)<t.radius+b)}function C(e){let t=[];for(let n=0;n<e.length;++n)for(let r=n+1;r<e.length;++r){let i=D(e[n],e[r]);for(let e of i)e.parentIndex=[n,r],t.push(e)}return t}function w(e,t){return e*e*Math.acos(1-t/e)-(e-t)*Math.sqrt(t*(2*e-t))}function T(e,t){return Math.sqrt((e.x-t.x)*(e.x-t.x)+(e.y-t.y)*(e.y-t.y))}function E(e,t,n){if(n>=e+t)return 0;if(n<=Math.abs(e-t))return Math.PI*Math.min(e,t)*Math.min(e,t);let r=e-(n*n-t*t+e*e)/(2*n),i=t-(n*n-e*e+t*t)/(2*n);return w(e,r)+w(t,i)}function D(e,t){let n=T(e,t),r=e.radius,i=t.radius;if(n>=r+i||n<=Math.abs(r-i))return[];let a=(r*r-i*i+n*n)/(2*n),o=Math.sqrt(r*r-a*a),s=e.x+a*(t.x-e.x)/n,c=e.y+a*(t.y-e.y)/n,l=-(t.y-e.y)*(o/n),u=-(t.x-e.x)*(o/n);return[{x:s+l,y:c-u},{x:s-l,y:c+u}]}function O(e){let t={x:0,y:0};for(let n of e)t.x+=n.x,t.y+=n.y;return t.x/=e.length,t.y/=e.length,t}function k(e,t,n,r){r||={};let i=r.maxIterations||100,a=r.tolerance||1e-10,o=e(t),s=e(n),c=n-t;if(o*s>0)throw`Initial bisect points must have opposite signs`;if(o===0)return t;if(s===0)return n;for(let n=0;n<i;++n){c/=2;let n=t+c,r=e(n);if(r*o>=0&&(t=n),Math.abs(c)<a||r===0)return n}return t+c}function A(e){let t=Array(e);for(let n=0;n<e;++n)t[n]=0;return t}function j(e,t){return A(e).map(()=>A(t))}function M(e,t){let n=0;for(let r=0;r<e.length;++r)n+=e[r]*t[r];return n}function N(e){return Math.sqrt(M(e,e))}function P(e,t,n){for(let r=0;r<t.length;++r)e[r]=t[r]*n}function F(e,t,n,r,i){for(let a=0;a<e.length;++a)e[a]=t*n[a]+r*i[a]}function I(e,t,n){n||={};let r=n.maxIterations||t.length*200,i=n.nonZeroDelta||1.05,a=n.zeroDelta||.001,o=n.minErrorDelta||1e-6,s=n.minErrorDelta||1e-5,c=n.rho===void 0?1:n.rho,l=n.chi===void 0?2:n.chi,u=n.psi===void 0?-.5:n.psi,d=n.sigma===void 0?.5:n.sigma,f,p=t.length,m=Array(p+1);m[0]=t,m[0].fx=e(t),m[0].id=0;for(let n=0;n<p;++n){let r=t.slice();r[n]=r[n]?r[n]*i:a,m[n+1]=r,m[n+1].fx=e(r),m[n+1].id=n+1}function h(e){for(let t=0;t<e.length;t++)m[p][t]=e[t];m[p].fx=e.fx}let g=(e,t)=>e.fx-t.fx,_=t.slice(),v=t.slice(),y=t.slice(),b=t.slice();for(let t=0;t<r;++t){if(m.sort(g),n.history){let e=m.map(e=>{let t=e.slice();return t.fx=e.fx,t.id=e.id,t});e.sort((e,t)=>e.id-t.id),n.history.push({x:m[0].slice(),fx:m[0].fx,simplex:e})}f=0;for(let e=0;e<p;++e)f=Math.max(f,Math.abs(m[0][e]-m[1][e]));if(Math.abs(m[0].fx-m[p].fx)<o&&f<s)break;for(let e=0;e<p;++e){_[e]=0;for(let t=0;t<p;++t)_[e]+=m[t][e];_[e]/=p}let t=m[p];if(F(v,1+c,_,-c,t),v.fx=e(v),v.fx<m[0].fx)F(b,1+l,_,-l,t),b.fx=e(b),b.fx<v.fx?h(b):h(v);else if(v.fx>=m[p-1].fx){let n=!1;if(v.fx>t.fx?(F(y,1+u,_,-u,t),y.fx=e(y),y.fx<t.fx?h(y):n=!0):(F(y,1-u*c,_,u*c,t),y.fx=e(y),y.fx<v.fx?h(y):n=!0),n){if(d>=1)break;for(let t=1;t<m.length;++t)F(m[t],1-d,m[0],d,m[t]),m[t].fx=e(m[t])}}else h(v)}return m.sort(g),{fx:m[0].fx,x:m[0]}}function L(e,t,n,r,i,a,o){let s=n.fx,c=M(n.fxprime,t),l=s,u=s,d=c,f=0;i||=1,a||=1e-6,o||=.1;function p(u,f,p){for(let m=0;m<16;++m)if(i=(u+f)/2,F(r.x,1,n.x,i,t),l=r.fx=e(r.x,r.fxprime),d=M(r.fxprime,t),l>s+a*i*c||l>=p)f=i;else{if(Math.abs(d)<=-o*c)return i;d*(f-u)>=0&&(f=u),u=i,p=l}return 0}for(let m=0;m<10;++m){if(F(r.x,1,n.x,i,t),l=r.fx=e(r.x,r.fxprime),d=M(r.fxprime,t),l>s+a*i*c||m&&l>=u)return p(f,i,u);if(Math.abs(d)<=-o*c)return i;if(d>=0)return p(i,f,l);u=l,f=i,i*=2}return i}function R(e,t,n){let r={x:t.slice(),fx:0,fxprime:t.slice()},i={x:t.slice(),fx:0,fxprime:t.slice()},a=t.slice(),o,s,c=1,l;n||={},l=n.maxIterations||t.length*20,r.fx=e(r.x,r.fxprime),o=r.fxprime.slice(),P(o,r.fxprime,-1);for(let t=0;t<l;++t){if(c=L(e,o,r,i,c),n.history&&n.history.push({x:r.x.slice(),fx:r.fx,fxprime:r.fxprime.slice(),alpha:c}),!c)P(o,r.fxprime,-1);else{F(a,1,i.fxprime,-1,r.fxprime);let e=M(r.fxprime,r.fxprime),t=Math.max(0,M(a,i.fxprime)/e);F(o,t,o,-1,i.fxprime),s=r,r=i,i=s}if(N(r.fxprime)<=1e-5)break}return n.history&&n.history.push({x:r.x.slice(),fx:r.fx,fxprime:r.fxprime.slice(),alpha:c}),r}function ee(e,t={}){t.maxIterations=t.maxIterations||500;let n=t.initialLayout||ae,r=t.lossFunction||B,i=ne(e,t),a=n(i,t),o=Object.keys(a),s=[];for(let e of o)s.push(a[e].x),s.push(a[e].y);let c=I(e=>{let t={};for(let n=0;n<o.length;++n){let r=o[n];t[r]={x:e[2*n],y:e[2*n+1],radius:a[r].radius}}return r(t,i)},s,t).x;for(let e=0;e<o.length;++e){let t=o[e];a[t].x=c[2*e],a[t].y=c[2*e+1]}return a}var te=1e-10;function z(e,t,n){return Math.min(e,t)*Math.min(e,t)*Math.PI<=n+te?Math.abs(e-t):k(r=>E(e,t,r)-n,0,e+t)}function ne(e,t={}){let n=t.distinct,r=e.map(e=>Object.assign({},e));function i(e){return e.join(`;`)}if(n){let e=new Map;for(let t of r)for(let n=0;n<t.sets.length;n++){let r=String(t.sets[n]);e.set(r,t.size+(e.get(r)||0));for(let i=n+1;i<t.sets.length;i++){let n=String(t.sets[i]),a=`${r};${n}`,o=`${n};${r}`;e.set(a,t.size+(e.get(a)||0)),e.set(o,t.size+(e.get(o)||0))}}for(let t of r)t.sets.length<3&&(t.size=e.get(i(t.sets)))}let a=[],o=new Set;for(let e of r)if(e.sets.length===1)a.push(e.sets[0]);else if(e.sets.length===2){let t=e.sets[0],n=e.sets[1];o.add(i(e.sets)),o.add(i([n,t]))}a.sort((e,t)=>e===t?0:e<t?-1:1);for(let e=0;e<a.length;++e){let t=a[e];for(let n=e+1;n<a.length;++n){let e=a[n];o.has(i([t,e]))||r.push({sets:[t,e],size:0})}}return r}function re(e,t,n){let r=j(t.length,t.length),i=j(t.length,t.length);return e.filter(e=>e.sets.length===2).forEach(e=>{let a=n[e.sets[0]],o=n[e.sets[1]],s=z(Math.sqrt(t[a].size/Math.PI),Math.sqrt(t[o].size/Math.PI),e.size);r[a][o]=r[o][a]=s;let c=0;e.size+1e-10>=Math.min(t[a].size,t[o].size)?c=1:e.size<=1e-10&&(c=-1),i[a][o]=i[o][a]=c}),{distances:r,constraints:i}}function ie(e,t,n,r){for(let e=0;e<t.length;++e)t[e]=0;let i=0;for(let a=0;a<n.length;++a){let o=e[2*a],s=e[2*a+1];for(let c=a+1;c<n.length;++c){let l=e[2*c],u=e[2*c+1],d=n[a][c],f=r[a][c],p=(l-o)*(l-o)+(u-s)*(u-s),m=Math.sqrt(p),h=p-d*d;f>0&&m<=d||f<0&&m>=d||(i+=2*h*h,t[2*a]+=4*h*(o-l),t[2*a+1]+=4*h*(s-u),t[2*c]+=4*h*(l-o),t[2*c+1]+=4*h*(u-s))}}return i}function ae(e,t={}){let n=se(e,t),r=t.lossFunction||B;if(e.length>=8){let i=oe(e,t),a=r(i,e),o=r(n,e);a+1e-8<o&&(n=i)}return n}function oe(e,t={}){let n=t.restarts||10,r=[],i={};for(let t of e)t.sets.length===1&&(i[t.sets[0]]=r.length,r.push(t));let{distances:a,constraints:o}=re(e,r,i),s=N(a.map(N))/a.length;a=a.map(e=>e.map(e=>e/s));let c=(e,t)=>ie(e,t,a,o),l=null;for(let e=0;e<n;++e){let e=R(c,A(a.length*2).map(Math.random),t);(!l||e.fx<l.fx)&&(l=e)}let u=l.x,d={};for(let e=0;e<r.length;++e){let t=r[e];d[t.sets[0]]={x:u[2*e]*s,y:u[2*e+1]*s,radius:Math.sqrt(t.size/Math.PI)}}if(t.history)for(let e of t.history)P(e.x,s);return d}function se(e,t){let n=t&&t.lossFunction?t.lossFunction:B,r={},i={};for(let t of e)if(t.sets.length===1){let e=t.sets[0];r[e]={x:1e10,y:1e10,rowid:r.length,size:t.size,radius:Math.sqrt(t.size/Math.PI)},i[e]=[]}e=e.filter(e=>e.sets.length===2);for(let t of e){let e=t.weight==null?1:t.weight,n=t.sets[0],a=t.sets[1];t.size+te>=Math.min(r[n].size,r[a].size)&&(e=0),i[n].push({set:a,size:t.size,weight:e}),i[a].push({set:n,size:t.size,weight:e})}let a=[];Object.keys(i).forEach(e=>{let t=0;for(let n=0;n<i[e].length;++n)t+=i[e][n].size*i[e][n].weight;a.push({set:e,size:t})});function o(e,t){return t.size-e.size}a.sort(o);let s={};function c(e){return e.set in s}function l(e,t){r[t].x=e.x,r[t].y=e.y,s[t]=!0}l({x:0,y:0},a[0].set);for(let t=1;t<a.length;++t){let s=a[t].set,d=i[s].filter(c),f=r[s];if(d.sort(o),d.length===0)throw`ERROR: missing pairwise overlap information`;let p=[];for(var u=0;u<d.length;++u){let e=r[d[u].set],t=z(f.radius,e.radius,d[u].size);p.push({x:e.x+t,y:e.y}),p.push({x:e.x-t,y:e.y}),p.push({y:e.y+t,x:e.x}),p.push({y:e.y-t,x:e.x});for(let n=u+1;n<d.length;++n){let i=r[d[n].set],a=z(f.radius,i.radius,d[n].size),o=D({x:e.x,y:e.y,radius:t},{x:i.x,y:i.y,radius:a});p.push(...o)}}let m=1e50,h=p[0];for(let t of p){r[s].x=t.x,r[s].y=t.y;let i=n(r,e);i<m&&(m=i,h=t)}l(h,s)}return r}function B(e,t){let n=0;for(let r of t){if(r.sets.length===1)continue;let t;if(r.sets.length===2){let n=e[r.sets[0]],i=e[r.sets[1]];t=E(n.radius,i.radius,T(n,i))}else t=x(r.sets.map(t=>e[t]));let i=r.weight==null?1:r.weight;n+=i*(t-r.size)*(t-r.size)}return n}function ce(e,t){let n=0;for(let r of t){if(r.sets.length===1)continue;let t;if(r.sets.length===2){let n=e[r.sets[0]],i=e[r.sets[1]];t=E(n.radius,i.radius,T(n,i))}else t=x(r.sets.map(t=>e[t]));let i=r.weight==null?1:r.weight,a=Math.log((t+1)/(r.size+1));n+=i*a*a}return n}function le(e,t,n){if(n==null?e.sort((e,t)=>t.radius-e.radius):e.sort(n),e.length>0){let t=e[0].x,n=e[0].y;for(let r of e)r.x-=t,r.y-=n}if(e.length===2&&T(e[0],e[1])<Math.abs(e[1].radius-e[0].radius)&&(e[1].x=e[0].x+e[0].radius-e[1].radius-1e-10,e[1].y=e[0].y),e.length>1){let n=Math.atan2(e[1].x,e[1].y)-t,r=Math.cos(n),i=Math.sin(n);for(let t of e){let e=t.x,n=t.y;t.x=r*e-i*n,t.y=i*e+r*n}}if(e.length>2){let n=Math.atan2(e[2].x,e[2].y)-t;for(;n<0;)n+=2*Math.PI;for(;n>2*Math.PI;)n-=2*Math.PI;if(n>Math.PI){let t=e[1].y/(1e-10+e[1].x);for(let n of e){var r=(n.x+t*n.y)/(1+t*t);n.x=2*r-n.x,n.y=2*r*t-n.y}}}}function ue(e){e.forEach(e=>{e.parent=e});function t(e){return e.parent!==e&&(e.parent=t(e.parent)),e.parent}function n(e,n){let r=t(e);r.parent=t(n)}for(let t=0;t<e.length;++t)for(let r=t+1;r<e.length;++r){let i=e[t].radius+e[r].radius;T(e[t],e[r])+1e-10<i&&n(e[r],e[t])}let r=new Map;for(let n=0;n<e.length;++n){let i=t(e[n]).parent.setid;r.has(i)||r.set(i,[]),r.get(i).push(e[n])}return e.forEach(e=>{delete e.parent}),Array.from(r.values())}function V(e){let t=t=>({max:e.reduce((e,n)=>Math.max(e,n[t]+n.radius),-1/0),min:e.reduce((e,n)=>Math.min(e,n[t]-n.radius),1/0)});return{xRange:t(`x`),yRange:t(`y`)}}function de(e,t,n){t??=Math.PI/2;let r=me(e).map(e=>Object.assign({},e)),i=ue(r);for(let e of i){le(e,t,n);let r=V(e);e.size=(r.xRange.max-r.xRange.min)*(r.yRange.max-r.yRange.min),e.bounds=r}i.sort((e,t)=>t.size-e.size),r=i[0];let a=r.bounds,o=(a.xRange.max-a.xRange.min)/50;function s(e,t,n){if(!e)return;let i=e.bounds,s,c;if(t)s=a.xRange.max-i.xRange.min+o;else{s=a.xRange.max-i.xRange.max;let e=(i.xRange.max-i.xRange.min)/2-(a.xRange.max-a.xRange.min)/2;e<0&&(s+=e)}if(n)c=a.yRange.max-i.yRange.min+o;else{c=a.yRange.max-i.yRange.max;let e=(i.yRange.max-i.yRange.min)/2-(a.yRange.max-a.yRange.min)/2;e<0&&(c+=e)}for(let t of e)t.x+=s,t.y+=c,r.push(t)}let c=1;for(;c<i.length;)s(i[c],!0,!1),s(i[c+1],!1,!0),s(i[c+2],!0,!0),c+=3,a=V(r);return pe(r)}function fe(e,t,n,r,i){let a=me(e);t-=2*r,n-=2*r;let{xRange:o,yRange:s}=V(a);if(o.max===o.min||s.max===s.min)return console.log(`not scaling solution: zero size detected`),e;let c,l;if(i){let e=Math.sqrt(i/Math.PI)*2;c=t/e,l=n/e}else c=t/(o.max-o.min),l=n/(s.max-s.min);let u=Math.min(l,c),d=(t-(o.max-o.min)*u)/2,f=(n-(s.max-s.min)*u)/2;return pe(a.map(e=>({radius:u*e.radius,x:r+d+(e.x-o.min)*u,y:r+f+(e.y-s.min)*u,setid:e.setid})))}function pe(e){let t={};for(let n of e)t[n.setid]=n;return t}function me(e){return Object.keys(e).map(t=>Object.assign(e[t],{setid:t}))}function he(e={}){let t=!1,n=600,r=350,i=15,a=1e3,o=Math.PI/2,s=!0,c=null,l=!0,u=!0,d=null,f=null,p=!1,m=null,h=e&&e.symmetricalTextCentre?e.symmetricalTextCentre:!1,g={},_=e&&e.colourScheme?e.colourScheme:e&&e.colorScheme?e.colorScheme:[`#1f77b4`,`#ff7f0e`,`#2ca02c`,`#d62728`,`#9467bd`,`#8c564b`,`#e377c2`,`#7f7f7f`,`#bcbd22`,`#17becf`],v=0,y=function(e){if(e in g)return g[e];var t=g[e]=_[v];return v+=1,v>=_.length&&(v=0),t},b=ee,x=B;function S(g){let _=g.datum(),v=new Set;_.forEach(e=>{e.size==0&&e.sets.length==1&&v.add(e.sets[0])}),_=_.filter(e=>!e.sets.some(e=>v.has(e)));let S={},C={};if(_.length>0){let e=b(_,{lossFunction:x,distinct:p});s&&(e=de(e,o,f)),S=fe(e,n,r,i,c),C=ve(S,_,h)}let w={};_.forEach(e=>{e.label&&(w[e.sets]=e.label)});function T(e){if(e.sets in w)return w[e.sets];if(e.sets.length==1)return``+e.sets[0]}g.selectAll(`svg`).data([S]).enter().append(`svg`);let E=g.select(`svg`);t?E.attr(`viewBox`,`0 0 ${n} ${r}`):E.attr(`width`,n).attr(`height`,r);let D={},O=!1;E.selectAll(`.venn-area path`).each(function(e){let t=this.getAttribute(`d`);e.sets.length==1&&t&&!p&&(O=!0,D[e.sets[0]]=be(t))});function k(e){return t=>Ce(e.sets.map(e=>{let i=D[e],a=S[e];return i||={x:n/2,y:r/2,radius:1},a||={x:n/2,y:r/2,radius:1},{x:i.x*(1-t)+a.x*t,y:i.y*(1-t)+a.y*t,radius:i.radius*(1-t)+a.radius*t}}),m)}let A=E.selectAll(`.venn-area`).data(_,e=>e.sets),j=A.enter().append(`g`).attr(`class`,e=>`venn-area venn-${e.sets.length==1?`circle`:`intersection`}${e.colour||e.color?` venn-coloured`:``}`).attr(`data-venn-sets`,e=>e.sets.join(`_`)),M=j.append(`path`),N=j.append(`text`).attr(`class`,`label`).text(e=>T(e)).attr(`text-anchor`,`middle`).attr(`dy`,`.35em`).attr(`x`,n/2).attr(`y`,r/2);u&&(M.style(`fill-opacity`,`0`).filter(e=>e.sets.length==1).style(`fill`,e=>e.colour?e.colour:e.color?e.color:y(e.sets)).style(`fill-opacity`,`.25`),N.style(`fill`,t=>t.colour||t.color?`#FFF`:e.textFill?e.textFill:t.sets.length==1?y(t.sets):`#444`));function P(e){return typeof e.transition==`function`?e.transition(`venn`).duration(a):e}let F=g;O&&typeof F.transition==`function`?(F=P(g),F.selectAll(`path`).attrTween(`d`,k)):F.selectAll(`path`).attr(`d`,e=>Ce(e.sets.map(e=>S[e])),m);let I=F.selectAll(`text`).filter(e=>e.sets in C).text(e=>T(e)).attr(`x`,e=>Math.floor(C[e.sets].x)).attr(`y`,e=>Math.floor(C[e.sets].y));l&&(O?`on`in I?I.on(`end`,H(S,T)):I.each(`end`,H(S,T)):I.each(H(S,T)));let L=P(A.exit()).remove();typeof A.transition==`function`&&L.selectAll(`path`).attrTween(`d`,k);let R=L.selectAll(`text`).attr(`x`,n/2).attr(`y`,r/2);return d!==null&&(N.style(`font-size`,`0px`),I.style(`font-size`,d),R.style(`font-size`,`0px`)),{circles:S,textCentres:C,nodes:A,enter:j,update:F,exit:L}}return S.wrap=function(e){return arguments.length?(l=e,S):l},S.useViewBox=function(){return t=!0,S},S.width=function(e){return arguments.length?(n=e,S):n},S.height=function(e){return arguments.length?(r=e,S):r},S.padding=function(e){return arguments.length?(i=e,S):i},S.distinct=function(e){return arguments.length?(p=e,S):p},S.colours=function(e){return arguments.length?(y=e,S):y},S.colors=function(e){return arguments.length?(y=e,S):y},S.fontSize=function(e){return arguments.length?(d=e,S):d},S.round=function(e){return arguments.length?(m=e,S):m},S.duration=function(e){return arguments.length?(a=e,S):a},S.layoutFunction=function(e){return arguments.length?(b=e,S):b},S.normalize=function(e){return arguments.length?(s=e,S):s},S.scaleToFit=function(e){return arguments.length?(c=e,S):c},S.styled=function(e){return arguments.length?(u=e,S):u},S.orientation=function(e){return arguments.length?(o=e,S):o},S.orientationOrder=function(e){return arguments.length?(f=e,S):f},S.lossFunction=function(e){return arguments.length?(x=e==="default"?B:e===`logRatio`?ce:e,S):x},S}function H(e,t){return function(n){let r=this,i=e[n.sets[0]].radius||50,a=t(n)||``,o=a.split(/\s+/).reverse(),s=(a.length+o.length)/3,c=o.pop(),l=[c],u=0,d=1.1;r.textContent=null;let f=[];function p(e){let t=r.ownerDocument.createElementNS(r.namespaceURI,`tspan`);return t.textContent=e,f.push(t),r.append(t),t}let m=p(c);for(;c=o.pop(),c;){l.push(c);let e=l.join(` `);m.textContent=e,e.length>s&&m.getComputedTextLength()>i&&(l.pop(),m.textContent=l.join(` `),l=[c],m=p(c),u++)}let h=.35-u*d/2,g=r.getAttribute(`x`),_=r.getAttribute(`y`);f.forEach((e,t)=>{e.setAttribute(`x`,g),e.setAttribute(`y`,_),e.setAttribute(`dy`,`${h+t*d}em`)})}}function U(e,t,n){let r=t[0].radius-T(t[0],e);for(let n=1;n<t.length;++n){let i=t[n].radius-T(t[n],e);i<=r&&(r=i)}for(let t=0;t<n.length;++t){let i=T(n[t],e)-n[t].radius;i<=r&&(r=i)}return r}function ge(e,t,n){let r=[];for(let t of e)r.push({x:t.x,y:t.y}),r.push({x:t.x+t.radius/2,y:t.y}),r.push({x:t.x-t.radius/2,y:t.y}),r.push({x:t.x,y:t.y+t.radius/2}),r.push({x:t.x,y:t.y-t.radius/2});let i=r[0],a=U(r[0],e,t);for(let n=1;n<r.length;++n){let o=U(r[n],e,t);o>=a&&(i=r[n],a=o)}let o=I(n=>-1*U({x:n[0],y:n[1]},e,t),[i.x,i.y],{maxIterations:500,minErrorDelta:1e-10}).x,s={x:n?0:o[0],y:o[1]},c=!0;for(let t of e)if(T(s,t)>t.radius){c=!1;break}for(let e of t)if(T(s,e)<e.radius){c=!1;break}if(c)return s;if(e.length==1)return{x:e[0].x,y:e[0].y};let l={};return x(e,l),l.arcs.length===0?{x:0,y:-1e3,disjoint:!0}:l.arcs.length==1?{x:l.arcs[0].circle.x,y:l.arcs[0].circle.y}:t.length?ge(e,[]):O(l.arcs.map(e=>e.p1))}function _e(e){let t={},n=Object.keys(e);for(let e of n)t[e]=[];for(let r=0;r<n.length;r++){let i=n[r],a=e[i];for(let o=r+1;o<n.length;++o){let r=n[o],s=e[r],c=T(a,s);c+s.radius<=a.radius+1e-10?t[r].push(i):c+a.radius<=s.radius+1e-10&&t[i].push(r)}}return t}function ve(e,t,n){let r={},i=_e(e);for(let a=0;a<t.length;++a){let o=t[a].sets,s={},c={};for(let e=0;e<o.length;++e){s[o[e]]=!0;let t=i[o[e]];for(let e=0;e<t.length;++e)c[t[e]]=!0}let l=[],u=[];for(let t in e)t in s?l.push(e[t]):t in c||u.push(e[t]);let d=ge(l,u,n);r[o]=d,d.disjoint&&t[a].size>0&&console.log(`WARNING: area `+o+` not represented on screen`)}return r}function ye(e,t,n){let r=[];return r.push(`
|
|
1
|
+
import{n as e}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{p as t}from"./src-Bd6kVAy5.js";import{H as n,K as r,U as i,a,b as o,c as s,et as c,f as l,nt as u,rt as d,tt as f,v as p,w as m,y as h}from"./chunk-DU6HZSFF-yMMoBTo7.js";import{i as g}from"./chunk-75Z2AOVW-_W5tuIwa.js";import{t as _}from"./rough.esm-Dy-Kn_BL.js";import{f as v}from"./mermaid.core-DT2IMBeS.js";var y=(e,t)=>u(e,`a`,-t),b=1e-10;function x(e,t){let n=C(e),r=n.filter(t=>S(t,e)),i=0,a=0,o=[];if(r.length>1){let t=O(r);for(let e=0;e<r.length;++e){let n=r[e];n.angle=Math.atan2(n.x-t.x,n.y-t.y)}r.sort((e,t)=>t.angle-e.angle);let n=r[r.length-1];for(let t=0;t<r.length;++t){let s=r[t];a+=(n.x+s.x)*(s.y-n.y);let c={x:(s.x+n.x)/2,y:(s.y+n.y)/2},l=null;for(let t=0;t<s.parentIndex.length;++t)if(n.parentIndex.includes(s.parentIndex[t])){let r=e[s.parentIndex[t]],i=Math.atan2(s.x-r.x,s.y-r.y),a=Math.atan2(n.x-r.x,n.y-r.y),o=a-i;o<0&&(o+=2*Math.PI);let u=a-o/2,d=T(c,{x:r.x+r.radius*Math.sin(u),y:r.y+r.radius*Math.cos(u)});d>r.radius*2&&(d=r.radius*2),(l==null||l.width>d)&&(l={circle:r,width:d,p1:s,p2:n,large:d>r.radius,sweep:!0})}l!=null&&(o.push(l),i+=w(l.circle.radius,l.width),n=s)}}else{let t=e[0];for(let n=1;n<e.length;++n)e[n].radius<t.radius&&(t=e[n]);let n=!1;for(let r=0;r<e.length;++r)if(T(e[r],t)>Math.abs(t.radius-e[r].radius)){n=!0;break}n?i=a=0:(i=t.radius*t.radius*Math.PI,o.push({circle:t,p1:{x:t.x,y:t.y+t.radius},p2:{x:t.x-b,y:t.y+t.radius},width:t.radius*2,large:!0,sweep:!0}))}return a/=2,t&&(t.area=i+a,t.arcArea=i,t.polygonArea=a,t.arcs=o,t.innerPoints=r,t.intersectionPoints=n),i+a}function S(e,t){return t.every(t=>T(e,t)<t.radius+b)}function C(e){let t=[];for(let n=0;n<e.length;++n)for(let r=n+1;r<e.length;++r){let i=D(e[n],e[r]);for(let e of i)e.parentIndex=[n,r],t.push(e)}return t}function w(e,t){return e*e*Math.acos(1-t/e)-(e-t)*Math.sqrt(t*(2*e-t))}function T(e,t){return Math.sqrt((e.x-t.x)*(e.x-t.x)+(e.y-t.y)*(e.y-t.y))}function E(e,t,n){if(n>=e+t)return 0;if(n<=Math.abs(e-t))return Math.PI*Math.min(e,t)*Math.min(e,t);let r=e-(n*n-t*t+e*e)/(2*n),i=t-(n*n-e*e+t*t)/(2*n);return w(e,r)+w(t,i)}function D(e,t){let n=T(e,t),r=e.radius,i=t.radius;if(n>=r+i||n<=Math.abs(r-i))return[];let a=(r*r-i*i+n*n)/(2*n),o=Math.sqrt(r*r-a*a),s=e.x+a*(t.x-e.x)/n,c=e.y+a*(t.y-e.y)/n,l=-(t.y-e.y)*(o/n),u=-(t.x-e.x)*(o/n);return[{x:s+l,y:c-u},{x:s-l,y:c+u}]}function O(e){let t={x:0,y:0};for(let n of e)t.x+=n.x,t.y+=n.y;return t.x/=e.length,t.y/=e.length,t}function k(e,t,n,r){r||={};let i=r.maxIterations||100,a=r.tolerance||1e-10,o=e(t),s=e(n),c=n-t;if(o*s>0)throw`Initial bisect points must have opposite signs`;if(o===0)return t;if(s===0)return n;for(let n=0;n<i;++n){c/=2;let n=t+c,r=e(n);if(r*o>=0&&(t=n),Math.abs(c)<a||r===0)return n}return t+c}function A(e){let t=Array(e);for(let n=0;n<e;++n)t[n]=0;return t}function j(e,t){return A(e).map(()=>A(t))}function M(e,t){let n=0;for(let r=0;r<e.length;++r)n+=e[r]*t[r];return n}function N(e){return Math.sqrt(M(e,e))}function P(e,t,n){for(let r=0;r<t.length;++r)e[r]=t[r]*n}function F(e,t,n,r,i){for(let a=0;a<e.length;++a)e[a]=t*n[a]+r*i[a]}function I(e,t,n){n||={};let r=n.maxIterations||t.length*200,i=n.nonZeroDelta||1.05,a=n.zeroDelta||.001,o=n.minErrorDelta||1e-6,s=n.minErrorDelta||1e-5,c=n.rho===void 0?1:n.rho,l=n.chi===void 0?2:n.chi,u=n.psi===void 0?-.5:n.psi,d=n.sigma===void 0?.5:n.sigma,f,p=t.length,m=Array(p+1);m[0]=t,m[0].fx=e(t),m[0].id=0;for(let n=0;n<p;++n){let r=t.slice();r[n]=r[n]?r[n]*i:a,m[n+1]=r,m[n+1].fx=e(r),m[n+1].id=n+1}function h(e){for(let t=0;t<e.length;t++)m[p][t]=e[t];m[p].fx=e.fx}let g=(e,t)=>e.fx-t.fx,_=t.slice(),v=t.slice(),y=t.slice(),b=t.slice();for(let t=0;t<r;++t){if(m.sort(g),n.history){let e=m.map(e=>{let t=e.slice();return t.fx=e.fx,t.id=e.id,t});e.sort((e,t)=>e.id-t.id),n.history.push({x:m[0].slice(),fx:m[0].fx,simplex:e})}f=0;for(let e=0;e<p;++e)f=Math.max(f,Math.abs(m[0][e]-m[1][e]));if(Math.abs(m[0].fx-m[p].fx)<o&&f<s)break;for(let e=0;e<p;++e){_[e]=0;for(let t=0;t<p;++t)_[e]+=m[t][e];_[e]/=p}let t=m[p];if(F(v,1+c,_,-c,t),v.fx=e(v),v.fx<m[0].fx)F(b,1+l,_,-l,t),b.fx=e(b),b.fx<v.fx?h(b):h(v);else if(v.fx>=m[p-1].fx){let n=!1;if(v.fx>t.fx?(F(y,1+u,_,-u,t),y.fx=e(y),y.fx<t.fx?h(y):n=!0):(F(y,1-u*c,_,u*c,t),y.fx=e(y),y.fx<v.fx?h(y):n=!0),n){if(d>=1)break;for(let t=1;t<m.length;++t)F(m[t],1-d,m[0],d,m[t]),m[t].fx=e(m[t])}}else h(v)}return m.sort(g),{fx:m[0].fx,x:m[0]}}function L(e,t,n,r,i,a,o){let s=n.fx,c=M(n.fxprime,t),l=s,u=s,d=c,f=0;i||=1,a||=1e-6,o||=.1;function p(u,f,p){for(let m=0;m<16;++m)if(i=(u+f)/2,F(r.x,1,n.x,i,t),l=r.fx=e(r.x,r.fxprime),d=M(r.fxprime,t),l>s+a*i*c||l>=p)f=i;else{if(Math.abs(d)<=-o*c)return i;d*(f-u)>=0&&(f=u),u=i,p=l}return 0}for(let m=0;m<10;++m){if(F(r.x,1,n.x,i,t),l=r.fx=e(r.x,r.fxprime),d=M(r.fxprime,t),l>s+a*i*c||m&&l>=u)return p(f,i,u);if(Math.abs(d)<=-o*c)return i;if(d>=0)return p(i,f,l);u=l,f=i,i*=2}return i}function R(e,t,n){let r={x:t.slice(),fx:0,fxprime:t.slice()},i={x:t.slice(),fx:0,fxprime:t.slice()},a=t.slice(),o,s,c=1,l;n||={},l=n.maxIterations||t.length*20,r.fx=e(r.x,r.fxprime),o=r.fxprime.slice(),P(o,r.fxprime,-1);for(let t=0;t<l;++t){if(c=L(e,o,r,i,c),n.history&&n.history.push({x:r.x.slice(),fx:r.fx,fxprime:r.fxprime.slice(),alpha:c}),!c)P(o,r.fxprime,-1);else{F(a,1,i.fxprime,-1,r.fxprime);let e=M(r.fxprime,r.fxprime),t=Math.max(0,M(a,i.fxprime)/e);F(o,t,o,-1,i.fxprime),s=r,r=i,i=s}if(N(r.fxprime)<=1e-5)break}return n.history&&n.history.push({x:r.x.slice(),fx:r.fx,fxprime:r.fxprime.slice(),alpha:c}),r}function ee(e,t={}){t.maxIterations=t.maxIterations||500;let n=t.initialLayout||ae,r=t.lossFunction||B,i=ne(e,t),a=n(i,t),o=Object.keys(a),s=[];for(let e of o)s.push(a[e].x),s.push(a[e].y);let c=I(e=>{let t={};for(let n=0;n<o.length;++n){let r=o[n];t[r]={x:e[2*n],y:e[2*n+1],radius:a[r].radius}}return r(t,i)},s,t).x;for(let e=0;e<o.length;++e){let t=o[e];a[t].x=c[2*e],a[t].y=c[2*e+1]}return a}var te=1e-10;function z(e,t,n){return Math.min(e,t)*Math.min(e,t)*Math.PI<=n+te?Math.abs(e-t):k(r=>E(e,t,r)-n,0,e+t)}function ne(e,t={}){let n=t.distinct,r=e.map(e=>Object.assign({},e));function i(e){return e.join(`;`)}if(n){let e=new Map;for(let t of r)for(let n=0;n<t.sets.length;n++){let r=String(t.sets[n]);e.set(r,t.size+(e.get(r)||0));for(let i=n+1;i<t.sets.length;i++){let n=String(t.sets[i]),a=`${r};${n}`,o=`${n};${r}`;e.set(a,t.size+(e.get(a)||0)),e.set(o,t.size+(e.get(o)||0))}}for(let t of r)t.sets.length<3&&(t.size=e.get(i(t.sets)))}let a=[],o=new Set;for(let e of r)if(e.sets.length===1)a.push(e.sets[0]);else if(e.sets.length===2){let t=e.sets[0],n=e.sets[1];o.add(i(e.sets)),o.add(i([n,t]))}a.sort((e,t)=>e===t?0:e<t?-1:1);for(let e=0;e<a.length;++e){let t=a[e];for(let n=e+1;n<a.length;++n){let e=a[n];o.has(i([t,e]))||r.push({sets:[t,e],size:0})}}return r}function re(e,t,n){let r=j(t.length,t.length),i=j(t.length,t.length);return e.filter(e=>e.sets.length===2).forEach(e=>{let a=n[e.sets[0]],o=n[e.sets[1]],s=z(Math.sqrt(t[a].size/Math.PI),Math.sqrt(t[o].size/Math.PI),e.size);r[a][o]=r[o][a]=s;let c=0;e.size+1e-10>=Math.min(t[a].size,t[o].size)?c=1:e.size<=1e-10&&(c=-1),i[a][o]=i[o][a]=c}),{distances:r,constraints:i}}function ie(e,t,n,r){for(let e=0;e<t.length;++e)t[e]=0;let i=0;for(let a=0;a<n.length;++a){let o=e[2*a],s=e[2*a+1];for(let c=a+1;c<n.length;++c){let l=e[2*c],u=e[2*c+1],d=n[a][c],f=r[a][c],p=(l-o)*(l-o)+(u-s)*(u-s),m=Math.sqrt(p),h=p-d*d;f>0&&m<=d||f<0&&m>=d||(i+=2*h*h,t[2*a]+=4*h*(o-l),t[2*a+1]+=4*h*(s-u),t[2*c]+=4*h*(l-o),t[2*c+1]+=4*h*(u-s))}}return i}function ae(e,t={}){let n=se(e,t),r=t.lossFunction||B;if(e.length>=8){let i=oe(e,t),a=r(i,e),o=r(n,e);a+1e-8<o&&(n=i)}return n}function oe(e,t={}){let n=t.restarts||10,r=[],i={};for(let t of e)t.sets.length===1&&(i[t.sets[0]]=r.length,r.push(t));let{distances:a,constraints:o}=re(e,r,i),s=N(a.map(N))/a.length;a=a.map(e=>e.map(e=>e/s));let c=(e,t)=>ie(e,t,a,o),l=null;for(let e=0;e<n;++e){let e=R(c,A(a.length*2).map(Math.random),t);(!l||e.fx<l.fx)&&(l=e)}let u=l.x,d={};for(let e=0;e<r.length;++e){let t=r[e];d[t.sets[0]]={x:u[2*e]*s,y:u[2*e+1]*s,radius:Math.sqrt(t.size/Math.PI)}}if(t.history)for(let e of t.history)P(e.x,s);return d}function se(e,t){let n=t&&t.lossFunction?t.lossFunction:B,r={},i={};for(let t of e)if(t.sets.length===1){let e=t.sets[0];r[e]={x:1e10,y:1e10,rowid:r.length,size:t.size,radius:Math.sqrt(t.size/Math.PI)},i[e]=[]}e=e.filter(e=>e.sets.length===2);for(let t of e){let e=t.weight==null?1:t.weight,n=t.sets[0],a=t.sets[1];t.size+te>=Math.min(r[n].size,r[a].size)&&(e=0),i[n].push({set:a,size:t.size,weight:e}),i[a].push({set:n,size:t.size,weight:e})}let a=[];Object.keys(i).forEach(e=>{let t=0;for(let n=0;n<i[e].length;++n)t+=i[e][n].size*i[e][n].weight;a.push({set:e,size:t})});function o(e,t){return t.size-e.size}a.sort(o);let s={};function c(e){return e.set in s}function l(e,t){r[t].x=e.x,r[t].y=e.y,s[t]=!0}l({x:0,y:0},a[0].set);for(let t=1;t<a.length;++t){let s=a[t].set,d=i[s].filter(c),f=r[s];if(d.sort(o),d.length===0)throw`ERROR: missing pairwise overlap information`;let p=[];for(var u=0;u<d.length;++u){let e=r[d[u].set],t=z(f.radius,e.radius,d[u].size);p.push({x:e.x+t,y:e.y}),p.push({x:e.x-t,y:e.y}),p.push({y:e.y+t,x:e.x}),p.push({y:e.y-t,x:e.x});for(let n=u+1;n<d.length;++n){let i=r[d[n].set],a=z(f.radius,i.radius,d[n].size),o=D({x:e.x,y:e.y,radius:t},{x:i.x,y:i.y,radius:a});p.push(...o)}}let m=1e50,h=p[0];for(let t of p){r[s].x=t.x,r[s].y=t.y;let i=n(r,e);i<m&&(m=i,h=t)}l(h,s)}return r}function B(e,t){let n=0;for(let r of t){if(r.sets.length===1)continue;let t;if(r.sets.length===2){let n=e[r.sets[0]],i=e[r.sets[1]];t=E(n.radius,i.radius,T(n,i))}else t=x(r.sets.map(t=>e[t]));let i=r.weight==null?1:r.weight;n+=i*(t-r.size)*(t-r.size)}return n}function ce(e,t){let n=0;for(let r of t){if(r.sets.length===1)continue;let t;if(r.sets.length===2){let n=e[r.sets[0]],i=e[r.sets[1]];t=E(n.radius,i.radius,T(n,i))}else t=x(r.sets.map(t=>e[t]));let i=r.weight==null?1:r.weight,a=Math.log((t+1)/(r.size+1));n+=i*a*a}return n}function le(e,t,n){if(n==null?e.sort((e,t)=>t.radius-e.radius):e.sort(n),e.length>0){let t=e[0].x,n=e[0].y;for(let r of e)r.x-=t,r.y-=n}if(e.length===2&&T(e[0],e[1])<Math.abs(e[1].radius-e[0].radius)&&(e[1].x=e[0].x+e[0].radius-e[1].radius-1e-10,e[1].y=e[0].y),e.length>1){let n=Math.atan2(e[1].x,e[1].y)-t,r=Math.cos(n),i=Math.sin(n);for(let t of e){let e=t.x,n=t.y;t.x=r*e-i*n,t.y=i*e+r*n}}if(e.length>2){let n=Math.atan2(e[2].x,e[2].y)-t;for(;n<0;)n+=2*Math.PI;for(;n>2*Math.PI;)n-=2*Math.PI;if(n>Math.PI){let t=e[1].y/(1e-10+e[1].x);for(let n of e){var r=(n.x+t*n.y)/(1+t*t);n.x=2*r-n.x,n.y=2*r*t-n.y}}}}function ue(e){e.forEach(e=>{e.parent=e});function t(e){return e.parent!==e&&(e.parent=t(e.parent)),e.parent}function n(e,n){let r=t(e);r.parent=t(n)}for(let t=0;t<e.length;++t)for(let r=t+1;r<e.length;++r){let i=e[t].radius+e[r].radius;T(e[t],e[r])+1e-10<i&&n(e[r],e[t])}let r=new Map;for(let n=0;n<e.length;++n){let i=t(e[n]).parent.setid;r.has(i)||r.set(i,[]),r.get(i).push(e[n])}return e.forEach(e=>{delete e.parent}),Array.from(r.values())}function V(e){let t=t=>({max:e.reduce((e,n)=>Math.max(e,n[t]+n.radius),-1/0),min:e.reduce((e,n)=>Math.min(e,n[t]-n.radius),1/0)});return{xRange:t(`x`),yRange:t(`y`)}}function de(e,t,n){t??=Math.PI/2;let r=me(e).map(e=>Object.assign({},e)),i=ue(r);for(let e of i){le(e,t,n);let r=V(e);e.size=(r.xRange.max-r.xRange.min)*(r.yRange.max-r.yRange.min),e.bounds=r}i.sort((e,t)=>t.size-e.size),r=i[0];let a=r.bounds,o=(a.xRange.max-a.xRange.min)/50;function s(e,t,n){if(!e)return;let i=e.bounds,s,c;if(t)s=a.xRange.max-i.xRange.min+o;else{s=a.xRange.max-i.xRange.max;let e=(i.xRange.max-i.xRange.min)/2-(a.xRange.max-a.xRange.min)/2;e<0&&(s+=e)}if(n)c=a.yRange.max-i.yRange.min+o;else{c=a.yRange.max-i.yRange.max;let e=(i.yRange.max-i.yRange.min)/2-(a.yRange.max-a.yRange.min)/2;e<0&&(c+=e)}for(let t of e)t.x+=s,t.y+=c,r.push(t)}let c=1;for(;c<i.length;)s(i[c],!0,!1),s(i[c+1],!1,!0),s(i[c+2],!0,!0),c+=3,a=V(r);return pe(r)}function fe(e,t,n,r,i){let a=me(e);t-=2*r,n-=2*r;let{xRange:o,yRange:s}=V(a);if(o.max===o.min||s.max===s.min)return console.log(`not scaling solution: zero size detected`),e;let c,l;if(i){let e=Math.sqrt(i/Math.PI)*2;c=t/e,l=n/e}else c=t/(o.max-o.min),l=n/(s.max-s.min);let u=Math.min(l,c),d=(t-(o.max-o.min)*u)/2,f=(n-(s.max-s.min)*u)/2;return pe(a.map(e=>({radius:u*e.radius,x:r+d+(e.x-o.min)*u,y:r+f+(e.y-s.min)*u,setid:e.setid})))}function pe(e){let t={};for(let n of e)t[n.setid]=n;return t}function me(e){return Object.keys(e).map(t=>Object.assign(e[t],{setid:t}))}function he(e={}){let t=!1,n=600,r=350,i=15,a=1e3,o=Math.PI/2,s=!0,c=null,l=!0,u=!0,d=null,f=null,p=!1,m=null,h=e&&e.symmetricalTextCentre?e.symmetricalTextCentre:!1,g={},_=e&&e.colourScheme?e.colourScheme:e&&e.colorScheme?e.colorScheme:[`#1f77b4`,`#ff7f0e`,`#2ca02c`,`#d62728`,`#9467bd`,`#8c564b`,`#e377c2`,`#7f7f7f`,`#bcbd22`,`#17becf`],v=0,y=function(e){if(e in g)return g[e];var t=g[e]=_[v];return v+=1,v>=_.length&&(v=0),t},b=ee,x=B;function S(g){let _=g.datum(),v=new Set;_.forEach(e=>{e.size==0&&e.sets.length==1&&v.add(e.sets[0])}),_=_.filter(e=>!e.sets.some(e=>v.has(e)));let S={},C={};if(_.length>0){let e=b(_,{lossFunction:x,distinct:p});s&&(e=de(e,o,f)),S=fe(e,n,r,i,c),C=ve(S,_,h)}let w={};_.forEach(e=>{e.label&&(w[e.sets]=e.label)});function T(e){if(e.sets in w)return w[e.sets];if(e.sets.length==1)return``+e.sets[0]}g.selectAll(`svg`).data([S]).enter().append(`svg`);let E=g.select(`svg`);t?E.attr(`viewBox`,`0 0 ${n} ${r}`):E.attr(`width`,n).attr(`height`,r);let D={},O=!1;E.selectAll(`.venn-area path`).each(function(e){let t=this.getAttribute(`d`);e.sets.length==1&&t&&!p&&(O=!0,D[e.sets[0]]=be(t))});function k(e){return t=>Ce(e.sets.map(e=>{let i=D[e],a=S[e];return i||={x:n/2,y:r/2,radius:1},a||={x:n/2,y:r/2,radius:1},{x:i.x*(1-t)+a.x*t,y:i.y*(1-t)+a.y*t,radius:i.radius*(1-t)+a.radius*t}}),m)}let A=E.selectAll(`.venn-area`).data(_,e=>e.sets),j=A.enter().append(`g`).attr(`class`,e=>`venn-area venn-${e.sets.length==1?`circle`:`intersection`}${e.colour||e.color?` venn-coloured`:``}`).attr(`data-venn-sets`,e=>e.sets.join(`_`)),M=j.append(`path`),N=j.append(`text`).attr(`class`,`label`).text(e=>T(e)).attr(`text-anchor`,`middle`).attr(`dy`,`.35em`).attr(`x`,n/2).attr(`y`,r/2);u&&(M.style(`fill-opacity`,`0`).filter(e=>e.sets.length==1).style(`fill`,e=>e.colour?e.colour:e.color?e.color:y(e.sets)).style(`fill-opacity`,`.25`),N.style(`fill`,t=>t.colour||t.color?`#FFF`:e.textFill?e.textFill:t.sets.length==1?y(t.sets):`#444`));function P(e){return typeof e.transition==`function`?e.transition(`venn`).duration(a):e}let F=g;O&&typeof F.transition==`function`?(F=P(g),F.selectAll(`path`).attrTween(`d`,k)):F.selectAll(`path`).attr(`d`,e=>Ce(e.sets.map(e=>S[e])),m);let I=F.selectAll(`text`).filter(e=>e.sets in C).text(e=>T(e)).attr(`x`,e=>Math.floor(C[e.sets].x)).attr(`y`,e=>Math.floor(C[e.sets].y));l&&(O?`on`in I?I.on(`end`,H(S,T)):I.each(`end`,H(S,T)):I.each(H(S,T)));let L=P(A.exit()).remove();typeof A.transition==`function`&&L.selectAll(`path`).attrTween(`d`,k);let R=L.selectAll(`text`).attr(`x`,n/2).attr(`y`,r/2);return d!==null&&(N.style(`font-size`,`0px`),I.style(`font-size`,d),R.style(`font-size`,`0px`)),{circles:S,textCentres:C,nodes:A,enter:j,update:F,exit:L}}return S.wrap=function(e){return arguments.length?(l=e,S):l},S.useViewBox=function(){return t=!0,S},S.width=function(e){return arguments.length?(n=e,S):n},S.height=function(e){return arguments.length?(r=e,S):r},S.padding=function(e){return arguments.length?(i=e,S):i},S.distinct=function(e){return arguments.length?(p=e,S):p},S.colours=function(e){return arguments.length?(y=e,S):y},S.colors=function(e){return arguments.length?(y=e,S):y},S.fontSize=function(e){return arguments.length?(d=e,S):d},S.round=function(e){return arguments.length?(m=e,S):m},S.duration=function(e){return arguments.length?(a=e,S):a},S.layoutFunction=function(e){return arguments.length?(b=e,S):b},S.normalize=function(e){return arguments.length?(s=e,S):s},S.scaleToFit=function(e){return arguments.length?(c=e,S):c},S.styled=function(e){return arguments.length?(u=e,S):u},S.orientation=function(e){return arguments.length?(o=e,S):o},S.orientationOrder=function(e){return arguments.length?(f=e,S):f},S.lossFunction=function(e){return arguments.length?(x=e==="default"?B:e===`logRatio`?ce:e,S):x},S}function H(e,t){return function(n){let r=this,i=e[n.sets[0]].radius||50,a=t(n)||``,o=a.split(/\s+/).reverse(),s=(a.length+o.length)/3,c=o.pop(),l=[c],u=0,d=1.1;r.textContent=null;let f=[];function p(e){let t=r.ownerDocument.createElementNS(r.namespaceURI,`tspan`);return t.textContent=e,f.push(t),r.append(t),t}let m=p(c);for(;c=o.pop(),c;){l.push(c);let e=l.join(` `);m.textContent=e,e.length>s&&m.getComputedTextLength()>i&&(l.pop(),m.textContent=l.join(` `),l=[c],m=p(c),u++)}let h=.35-u*d/2,g=r.getAttribute(`x`),_=r.getAttribute(`y`);f.forEach((e,t)=>{e.setAttribute(`x`,g),e.setAttribute(`y`,_),e.setAttribute(`dy`,`${h+t*d}em`)})}}function U(e,t,n){let r=t[0].radius-T(t[0],e);for(let n=1;n<t.length;++n){let i=t[n].radius-T(t[n],e);i<=r&&(r=i)}for(let t=0;t<n.length;++t){let i=T(n[t],e)-n[t].radius;i<=r&&(r=i)}return r}function ge(e,t,n){let r=[];for(let t of e)r.push({x:t.x,y:t.y}),r.push({x:t.x+t.radius/2,y:t.y}),r.push({x:t.x-t.radius/2,y:t.y}),r.push({x:t.x,y:t.y+t.radius/2}),r.push({x:t.x,y:t.y-t.radius/2});let i=r[0],a=U(r[0],e,t);for(let n=1;n<r.length;++n){let o=U(r[n],e,t);o>=a&&(i=r[n],a=o)}let o=I(n=>-1*U({x:n[0],y:n[1]},e,t),[i.x,i.y],{maxIterations:500,minErrorDelta:1e-10}).x,s={x:n?0:o[0],y:o[1]},c=!0;for(let t of e)if(T(s,t)>t.radius){c=!1;break}for(let e of t)if(T(s,e)<e.radius){c=!1;break}if(c)return s;if(e.length==1)return{x:e[0].x,y:e[0].y};let l={};return x(e,l),l.arcs.length===0?{x:0,y:-1e3,disjoint:!0}:l.arcs.length==1?{x:l.arcs[0].circle.x,y:l.arcs[0].circle.y}:t.length?ge(e,[]):O(l.arcs.map(e=>e.p1))}function _e(e){let t={},n=Object.keys(e);for(let e of n)t[e]=[];for(let r=0;r<n.length;r++){let i=n[r],a=e[i];for(let o=r+1;o<n.length;++o){let r=n[o],s=e[r],c=T(a,s);c+s.radius<=a.radius+1e-10?t[r].push(i):c+a.radius<=s.radius+1e-10&&t[i].push(r)}}return t}function ve(e,t,n){let r={},i=_e(e);for(let a=0;a<t.length;++a){let o=t[a].sets,s={},c={};for(let e=0;e<o.length;++e){s[o[e]]=!0;let t=i[o[e]];for(let e=0;e<t.length;++e)c[t[e]]=!0}let l=[],u=[];for(let t in e)t in s?l.push(e[t]):t in c||u.push(e[t]);let d=ge(l,u,n);r[o]=d,d.disjoint&&t[a].size>0&&console.log(`WARNING: area `+o+` not represented on screen`)}return r}function ye(e,t,n){let r=[];return r.push(`
|
|
2
2
|
M`,e,t),r.push(`
|
|
3
3
|
m`,-n,0),r.push(`
|
|
4
4
|
a`,n,n,0,1,0,n*2,0),r.push(`
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import{$ as e,A as t,At as n,B as r,C as i,Ct as a,D as o,E as s,Gt as c,I as l,K as u,Mt as d,N as f,Ot as p,P as m,Pt as h,S as g,St as _,T as v,Tt as y,U as b,V as x,W as S,X as C,Z as w,_ as T,_t as E,at as D,bt as O,cn as k,dt as A,et as j,gt as M,ht as N,j as P,jt as F,lt as I,mn as L,nt as R,pt as z,q as B,rt as ee,st as V,tt as H,un as U,vt as W,w as G,wt as te,xt as K,z as q}from"./runtime-dom.esm-bundler-BicOLibD.js";import"./_plugin-vue_export-helper-iXNJ6JSE.js";W(),q(),c();function ne(e){return E()?(_(e),!0):!1}function re(e){return typeof e==`function`?e():h(e)}var ie=typeof window<`u`&&typeof document<`u`,ae=e=>e!==void 0,oe=Object.prototype.toString,se=e=>oe.call(e)===`[object Object]`,ce=()=>{};function le(e,t){function n(...n){return new Promise((r,i)=>{Promise.resolve(e(()=>t.apply(this,n),{fn:t,thisArg:this,args:n})).then(r).catch(i)})}return n}var ue=e=>e();function de(e=ue){let t=y(!0);function n(){t.value=!1}function r(){t.value=!0}return{isActive:te(t),pause:n,resume:r,eventFilter:(...n)=>{t.value&&e(...n)}}}function fe(e,t=!1,n=`Timeout`){return new Promise((r,i)=>{setTimeout(t?()=>i(n):r,e)})}function pe(e,t,n={}){let{eventFilter:r=ue,...i}=n;return A(e,le(r,t),i)}function me(e,t,n={}){let{eventFilter:r,...i}=n,{eventFilter:a,pause:o,resume:s,isActive:c}=de(r);return{stop:pe(e,t,{...i,eventFilter:a}),pause:o,resume:s,isActive:c}}function he(e,t={}){if(!O(e))return F(e);let n=Array.isArray(e.value)?Array.from({length:e.value.length}):{};for(let r in e.value)n[r]=N(()=>({get(){return e.value[r]},set(n){if(re(t.replaceRef)??!0){if(Array.isArray(e.value)){let t=[...e.value];t[r]=n,e.value=t}else{let t={...e.value,[r]:n};Object.setPrototypeOf(t,Object.getPrototypeOf(e.value)),e.value=t}}else e.value[r]=n}}));return n}function ge(e,t=!1){function n(n,{flush:r=`sync`,deep:i=!1,timeout:a,throwOnTimeout:o}={}){let s=null,c=[new Promise(a=>{s=A(e,e=>{n(e)!==t&&(s?.(),a(e))},{flush:r,deep:i,immediate:!0})})];return a!=null&&c.push(fe(a,o).then(()=>re(e)).finally(()=>s?.())),Promise.race(c)}function r(r,i){if(!O(r))return n(e=>e===r,i);let{flush:a=`sync`,deep:o=!1,timeout:s,throwOnTimeout:c}=i??{},l=null,u=[new Promise(n=>{l=A([e,r],([e,r])=>{t!==(e===r)&&(l?.(),n(e))},{flush:a,deep:o,immediate:!0})})];return s!=null&&u.push(fe(s,c).then(()=>re(e)).finally(()=>(l?.(),re(e)))),Promise.race(u)}function i(e){return n(e=>!!e,e)}function a(e){return r(null,e)}function o(e){return r(void 0,e)}function s(e){return n(Number.isNaN,e)}function c(e,t){return n(t=>{let n=Array.from(t);return n.includes(e)||n.includes(re(e))},t)}function l(e){return u(1,e)}function u(e=1,t){let r=-1;return n(()=>(r+=1,r>=e),t)}return Array.isArray(re(e))?{toMatch:n,toContains:c,changed:l,changedTimes:u,get not(){return ge(e,!t)}}:{toMatch:n,toBe:r,toBeTruthy:i,toBeNull:a,toBeNaN:s,toBeUndefined:o,changed:l,changedTimes:u,get not(){return ge(e,!t)}}}function _e(e){return ge(e)}function ve(e){let t=re(e);return t?.$el??t}var ye=ie?window:void 0;function be(...e){let t,n,r,i;if(typeof e[0]==`string`||Array.isArray(e[0])?([n,r,i]=e,t=ye):[t,n,r,i]=e,!t)return ce;Array.isArray(n)||(n=[n]),Array.isArray(r)||(r=[r]);let a=[],o=()=>{a.forEach(e=>e()),a.length=0},s=(e,t,n,r)=>(e.addEventListener(t,n,r),()=>e.removeEventListener(t,n,r)),c=A(()=>[ve(t),re(i)],([e,t])=>{if(o(),!e)return;let i=se(t)?{...t}:t;a.push(...n.flatMap(t=>r.map(n=>s(e,t,n,i))))},{immediate:!0,flush:`post`}),l=()=>{c(),o()};return ne(l),l}function xe(e){return typeof e==`function`?e:typeof e==`string`?t=>t.key===e:Array.isArray(e)?t=>e.includes(t.key):()=>!0}function Se(...e){let t,n,r={};e.length===3?(t=e[0],n=e[1],r=e[2]):e.length===2?typeof e[1]==`object`?(t=!0,n=e[0],r=e[1]):(t=e[0],n=e[1]):(t=!0,n=e[0]);let{target:i=ye,eventName:a=`keydown`,passive:o=!1,dedupe:s=!1}=r,c=xe(t);return be(i,a,e=>{e.repeat&&re(s)||c(e)&&n(e)},o)}function Ce(e){return JSON.parse(JSON.stringify(e))}function we(e,t,n,r={}){let{clone:i=!1,passive:a=!1,eventName:o,deep:s=!1,defaultValue:c,shouldEmit:l}=r,u=m(),d=n||u?.emit||(u?.$emit)?.bind(u)||(u?.proxy?.$emit)?.bind(u?.proxy),f=o;t||=`modelValue`,f||=`update:${t.toString()}`;let p=e=>i?typeof i==`function`?i(e):Ce(e):e,h=()=>ae(e[t])?p(e[t]):c,_=e=>{l?l(e)&&d(f,e):d(f,e)};if(a){let n=h(),r=y(n),i=!1;return A(()=>e[t],e=>{i||(i=!0,r.value=p(e),S(()=>i=!1))}),A(r,n=>{!i&&(n!==e[t]||s)&&_(n)},{deep:s}),r}return g({get(){return h()},set(e){_(e)}})}var Te={value:()=>{}};function Ee(){for(var e=0,t=arguments.length,n={},r;e<t;++e){if(!(r=arguments[e]+``)||r in n||/[\s.]/.test(r))throw Error(`illegal type: `+r);n[r]=[]}return new De(n)}function De(e){this._=e}function Oe(e,t){return e.trim().split(/^|\s+/).map(function(e){var n=``,r=e.indexOf(`.`);if(r>=0&&(n=e.slice(r+1),e=e.slice(0,r)),e&&!t.hasOwnProperty(e))throw Error(`unknown type: `+e);return{type:e,name:n}})}De.prototype=Ee.prototype={constructor:De,on:function(e,t){var n=this._,r=Oe(e+``,n),i,a=-1,o=r.length;if(arguments.length<2){for(;++a<o;)if((i=(e=r[a]).type)&&(i=ke(n[i],e.name)))return i;return}if(t!=null&&typeof t!=`function`)throw Error(`invalid callback: `+t);for(;++a<o;)if(i=(e=r[a]).type)n[i]=Ae(n[i],e.name,t);else if(t==null)for(i in n)n[i]=Ae(n[i],e.name,null);return this},copy:function(){var e={},t=this._;for(var n in t)e[n]=t[n].slice();return new De(e)},call:function(e,t){if((i=arguments.length-2)>0)for(var n=Array(i),r=0,i,a;r<i;++r)n[r]=arguments[r+2];if(!this._.hasOwnProperty(e))throw Error(`unknown type: `+e);for(a=this._[e],r=0,i=a.length;r<i;++r)a[r].value.apply(t,n)},apply:function(e,t,n){if(!this._.hasOwnProperty(e))throw Error(`unknown type: `+e);for(var r=this._[e],i=0,a=r.length;i<a;++i)r[i].value.apply(t,n)}};function ke(e,t){for(var n=0,r=e.length,i;n<r;++n)if((i=e[n]).name===t)return i.value}function Ae(e,t,n){for(var r=0,i=e.length;r<i;++r)if(e[r].name===t){e[r]=Te,e=e.slice(0,r).concat(e.slice(r+1));break}return n!=null&&e.push({name:t,value:n}),e}var je=`http://www.w3.org/1999/xhtml`,Me={svg:`http://www.w3.org/2000/svg`,xhtml:je,xlink:`http://www.w3.org/1999/xlink`,xml:`http://www.w3.org/XML/1998/namespace`,xmlns:`http://www.w3.org/2000/xmlns/`};function Ne(e){var t=e+=``,n=t.indexOf(`:`);return n>=0&&(t=e.slice(0,n))!==`xmlns`&&(e=e.slice(n+1)),Me.hasOwnProperty(t)?{space:Me[t],local:e}:e}function Pe(e){return function(){var t=this.ownerDocument,n=this.namespaceURI;return n===je&&t.documentElement.namespaceURI===je?t.createElement(e):t.createElementNS(n,e)}}function Fe(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function Ie(e){var t=Ne(e);return(t.local?Fe:Pe)(t)}function Le(){}function Re(e){return e==null?Le:function(){return this.querySelector(e)}}function ze(e){typeof e!=`function`&&(e=Re(e));for(var t=this._groups,n=t.length,r=Array(n),i=0;i<n;++i)for(var a=t[i],o=a.length,s=r[i]=Array(o),c,l,u=0;u<o;++u)(c=a[u])&&(l=e.call(c,c.__data__,u,a))&&(`__data__`in c&&(l.__data__=c.__data__),s[u]=l);return new On(r,this._parents)}function Be(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function Ve(){return[]}function He(e){return e==null?Ve:function(){return this.querySelectorAll(e)}}function Ue(e){return function(){return Be(e.apply(this,arguments))}}function We(e){e=typeof e==`function`?Ue(e):He(e);for(var t=this._groups,n=t.length,r=[],i=[],a=0;a<n;++a)for(var o=t[a],s=o.length,c,l=0;l<s;++l)(c=o[l])&&(r.push(e.call(c,c.__data__,l,o)),i.push(c));return new On(r,i)}function Ge(e){return function(){return this.matches(e)}}function Ke(e){return function(t){return t.matches(e)}}var qe=Array.prototype.find;function Je(e){return function(){return qe.call(this.children,e)}}function Ye(){return this.firstElementChild}function Xe(e){return this.select(e==null?Ye:Je(typeof e==`function`?e:Ke(e)))}var Ze=Array.prototype.filter;function Qe(){return Array.from(this.children)}function $e(e){return function(){return Ze.call(this.children,e)}}function et(e){return this.selectAll(e==null?Qe:$e(typeof e==`function`?e:Ke(e)))}function tt(e){typeof e!=`function`&&(e=Ge(e));for(var t=this._groups,n=t.length,r=Array(n),i=0;i<n;++i)for(var a=t[i],o=a.length,s=r[i]=[],c,l=0;l<o;++l)(c=a[l])&&e.call(c,c.__data__,l,a)&&s.push(c);return new On(r,this._parents)}function nt(e){return Array(e.length)}function rt(){return new On(this._enter||this._groups.map(nt),this._parents)}function it(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}it.prototype={constructor:it,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,t){return this._parent.insertBefore(e,t)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}};function at(e){return function(){return e}}function ot(e,t,n,r,i,a){for(var o=0,s,c=t.length,l=a.length;o<l;++o)(s=t[o])?(s.__data__=a[o],r[o]=s):n[o]=new it(e,a[o]);for(;o<c;++o)(s=t[o])&&(i[o]=s)}function st(e,t,n,r,i,a,o){var s,c,l=new Map,u=t.length,d=a.length,f=Array(u),p;for(s=0;s<u;++s)(c=t[s])&&(f[s]=p=o.call(c,c.__data__,s,t)+``,l.has(p)?i[s]=c:l.set(p,c));for(s=0;s<d;++s)p=o.call(e,a[s],s,a)+``,(c=l.get(p))?(r[s]=c,c.__data__=a[s],l.delete(p)):n[s]=new it(e,a[s]);for(s=0;s<u;++s)(c=t[s])&&l.get(f[s])===c&&(i[s]=c)}function ct(e){return e.__data__}function lt(e,t){if(!arguments.length)return Array.from(this,ct);var n=t?st:ot,r=this._parents,i=this._groups;typeof e!=`function`&&(e=at(e));for(var a=i.length,o=Array(a),s=Array(a),c=Array(a),l=0;l<a;++l){var u=r[l],d=i[l],f=d.length,p=ut(e.call(u,u&&u.__data__,l,r)),m=p.length,h=s[l]=Array(m),g=o[l]=Array(m);n(u,d,h,g,c[l]=Array(f),p,t);for(var _=0,v=0,y,b;_<m;++_)if(y=h[_]){for(_>=v&&(v=_+1);!(b=g[v])&&++v<m;);y._next=b||null}}return o=new On(o,r),o._enter=s,o._exit=c,o}function ut(e){return typeof e==`object`&&`length`in e?e:Array.from(e)}function dt(){return new On(this._exit||this._groups.map(nt),this._parents)}function ft(e,t,n){var r=this.enter(),i=this,a=this.exit();return typeof e==`function`?(r=e(r),r&&=r.selection()):r=r.append(e+``),t!=null&&(i=t(i),i&&=i.selection()),n==null?a.remove():n(a),r&&i?r.merge(i).order():i}function pt(e){for(var t=e.selection?e.selection():e,n=this._groups,r=t._groups,i=n.length,a=r.length,o=Math.min(i,a),s=Array(i),c=0;c<o;++c)for(var l=n[c],u=r[c],d=l.length,f=s[c]=Array(d),p,m=0;m<d;++m)(p=l[m]||u[m])&&(f[m]=p);for(;c<i;++c)s[c]=n[c];return new On(s,this._parents)}function mt(){for(var e=this._groups,t=-1,n=e.length;++t<n;)for(var r=e[t],i=r.length-1,a=r[i],o;--i>=0;)(o=r[i])&&(a&&o.compareDocumentPosition(a)^4&&a.parentNode.insertBefore(o,a),a=o);return this}function ht(e){e||=gt;function t(t,n){return t&&n?e(t.__data__,n.__data__):!t-!n}for(var n=this._groups,r=n.length,i=Array(r),a=0;a<r;++a){for(var o=n[a],s=o.length,c=i[a]=Array(s),l,u=0;u<s;++u)(l=o[u])&&(c[u]=l);c.sort(t)}return new On(i,this._parents).order()}function gt(e,t){return e<t?-1:e>t?1:e>=t?0:NaN}function _t(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function vt(){return Array.from(this)}function yt(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],i=0,a=r.length;i<a;++i){var o=r[i];if(o)return o}return null}function bt(){let e=0;for(let t of this)++e;return e}function xt(){return!this.node()}function St(e){for(var t=this._groups,n=0,r=t.length;n<r;++n)for(var i=t[n],a=0,o=i.length,s;a<o;++a)(s=i[a])&&e.call(s,s.__data__,a,i);return this}function Ct(e){return function(){this.removeAttribute(e)}}function wt(e){return function(){this.removeAttributeNS(e.space,e.local)}}function Tt(e,t){return function(){this.setAttribute(e,t)}}function Et(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}function Dt(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttribute(e):this.setAttribute(e,n)}}function Ot(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,n)}}function kt(e,t){var n=Ne(e);if(arguments.length<2){var r=this.node();return n.local?r.getAttributeNS(n.space,n.local):r.getAttribute(n)}return this.each((t==null?n.local?wt:Ct:typeof t==`function`?n.local?Ot:Dt:n.local?Et:Tt)(n,t))}function At(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function jt(e){return function(){this.style.removeProperty(e)}}function Mt(e,t,n){return function(){this.style.setProperty(e,t,n)}}function Nt(e,t,n){return function(){var r=t.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,n)}}function Pt(e,t,n){return arguments.length>1?this.each((t==null?jt:typeof t==`function`?Nt:Mt)(e,t,n??``)):Ft(this.node(),e)}function Ft(e,t){return e.style.getPropertyValue(t)||At(e).getComputedStyle(e,null).getPropertyValue(t)}function It(e){return function(){delete this[e]}}function Lt(e,t){return function(){this[e]=t}}function Rt(e,t){return function(){var n=t.apply(this,arguments);n==null?delete this[e]:this[e]=n}}function zt(e,t){return arguments.length>1?this.each((t==null?It:typeof t==`function`?Rt:Lt)(e,t)):this.node()[e]}function Bt(e){return e.trim().split(/^|\s+/)}function Vt(e){return e.classList||new Ht(e)}function Ht(e){this._node=e,this._names=Bt(e.getAttribute(`class`)||``)}Ht.prototype={add:function(e){this._names.indexOf(e)<0&&(this._names.push(e),this._node.setAttribute(`class`,this._names.join(` `)))},remove:function(e){var t=this._names.indexOf(e);t>=0&&(this._names.splice(t,1),this._node.setAttribute(`class`,this._names.join(` `)))},contains:function(e){return this._names.indexOf(e)>=0}};function Ut(e,t){for(var n=Vt(e),r=-1,i=t.length;++r<i;)n.add(t[r])}function Wt(e,t){for(var n=Vt(e),r=-1,i=t.length;++r<i;)n.remove(t[r])}function Gt(e){return function(){Ut(this,e)}}function Kt(e){return function(){Wt(this,e)}}function qt(e,t){return function(){(t.apply(this,arguments)?Ut:Wt)(this,e)}}function Jt(e,t){var n=Bt(e+``);if(arguments.length<2){for(var r=Vt(this.node()),i=-1,a=n.length;++i<a;)if(!r.contains(n[i]))return!1;return!0}return this.each((typeof t==`function`?qt:t?Gt:Kt)(n,t))}function Yt(){this.textContent=``}function Xt(e){return function(){this.textContent=e}}function Zt(e){return function(){var t=e.apply(this,arguments);this.textContent=t??``}}function Qt(e){return arguments.length?this.each(e==null?Yt:(typeof e==`function`?Zt:Xt)(e)):this.node().textContent}function $t(){this.innerHTML=``}function en(e){return function(){this.innerHTML=e}}function tn(e){return function(){var t=e.apply(this,arguments);this.innerHTML=t??``}}function nn(e){return arguments.length?this.each(e==null?$t:(typeof e==`function`?tn:en)(e)):this.node().innerHTML}function rn(){this.nextSibling&&this.parentNode.appendChild(this)}function an(){return this.each(rn)}function on(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function sn(){return this.each(on)}function cn(e){var t=typeof e==`function`?e:Ie(e);return this.select(function(){return this.appendChild(t.apply(this,arguments))})}function ln(){return null}function un(e,t){var n=typeof e==`function`?e:Ie(e),r=t==null?ln:typeof t==`function`?t:Re(t);return this.select(function(){return this.insertBefore(n.apply(this,arguments),r.apply(this,arguments)||null)})}function dn(){var e=this.parentNode;e&&e.removeChild(this)}function fn(){return this.each(dn)}function pn(){var e=this.cloneNode(!1),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function mn(){var e=this.cloneNode(!0),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function hn(e){return this.select(e?mn:pn)}function gn(e){return arguments.length?this.property(`__data__`,e):this.node().__data__}function _n(e){return function(t){e.call(this,t,this.__data__)}}function vn(e){return e.trim().split(/^|\s+/).map(function(e){var t=``,n=e.indexOf(`.`);return n>=0&&(t=e.slice(n+1),e=e.slice(0,n)),{type:e,name:t}})}function yn(e){return function(){var t=this.__on;if(t){for(var n=0,r=-1,i=t.length,a;n<i;++n)a=t[n],(!e.type||a.type===e.type)&&a.name===e.name?this.removeEventListener(a.type,a.listener,a.options):t[++r]=a;++r?t.length=r:delete this.__on}}}function bn(e,t,n){return function(){var r=this.__on,i,a=_n(t);if(r){for(var o=0,s=r.length;o<s;++o)if((i=r[o]).type===e.type&&i.name===e.name){this.removeEventListener(i.type,i.listener,i.options),this.addEventListener(i.type,i.listener=a,i.options=n),i.value=t;return}}this.addEventListener(e.type,a,n),i={type:e.type,name:e.name,value:t,listener:a,options:n},r?r.push(i):this.__on=[i]}}function xn(e,t,n){var r=vn(e+``),i,a=r.length,o;if(arguments.length<2){var s=this.node().__on;if(s){for(var c=0,l=s.length,u;c<l;++c)for(i=0,u=s[c];i<a;++i)if((o=r[i]).type===u.type&&o.name===u.name)return u.value}return}for(s=t?bn:yn,i=0;i<a;++i)this.each(s(r[i],t,n));return this}function Sn(e,t,n){var r=At(e),i=r.CustomEvent;typeof i==`function`?i=new i(t,n):(i=r.document.createEvent(`Event`),n?(i.initEvent(t,n.bubbles,n.cancelable),i.detail=n.detail):i.initEvent(t,!1,!1)),e.dispatchEvent(i)}function Cn(e,t){return function(){return Sn(this,e,t)}}function wn(e,t){return function(){return Sn(this,e,t.apply(this,arguments))}}function Tn(e,t){return this.each((typeof t==`function`?wn:Cn)(e,t))}function*En(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],i=0,a=r.length,o;i<a;++i)(o=r[i])&&(yield o)}var Dn=[null];function On(e,t){this._groups=e,this._parents=t}function kn(){return new On([[document.documentElement]],Dn)}function An(){return this}On.prototype=kn.prototype={constructor:On,select:ze,selectAll:We,selectChild:Xe,selectChildren:et,filter:tt,data:lt,enter:rt,exit:dt,join:ft,merge:pt,selection:An,order:mt,sort:ht,call:_t,nodes:vt,node:yt,size:bt,empty:xt,each:St,attr:kt,style:Pt,property:zt,classed:Jt,text:Qt,html:nn,raise:an,lower:sn,append:cn,insert:un,remove:fn,clone:hn,datum:gn,on:xn,dispatch:Tn,[Symbol.iterator]:En};function jn(e){return typeof e==`string`?new On([[document.querySelector(e)]],[document.documentElement]):new On([[e]],Dn)}function Mn(e){let t;for(;t=e.sourceEvent;)e=t;return e}function Nn(e,t){if(e=Mn(e),t===void 0&&(t=e.currentTarget),t){var n=t.ownerSVGElement||t;if(n.createSVGPoint){var r=n.createSVGPoint();return r.x=e.clientX,r.y=e.clientY,r=r.matrixTransform(t.getScreenCTM().inverse()),[r.x,r.y]}if(t.getBoundingClientRect){var i=t.getBoundingClientRect();return[e.clientX-i.left-t.clientLeft,e.clientY-i.top-t.clientTop]}}return[e.pageX,e.pageY]}var Pn={passive:!1},Fn={capture:!0,passive:!1};function In(e){e.stopImmediatePropagation()}function Ln(e){e.preventDefault(),e.stopImmediatePropagation()}function Rn(e){var t=e.document.documentElement,n=jn(e).on(`dragstart.drag`,Ln,Fn);`onselectstart`in t?n.on(`selectstart.drag`,Ln,Fn):(t.__noselect=t.style.MozUserSelect,t.style.MozUserSelect=`none`)}function zn(e,t){var n=e.document.documentElement,r=jn(e).on(`dragstart.drag`,null);t&&(r.on(`click.drag`,Ln,Fn),setTimeout(function(){r.on(`click.drag`,null)},0)),`onselectstart`in n?r.on(`selectstart.drag`,null):(n.style.MozUserSelect=n.__noselect,delete n.__noselect)}var Bn=e=>()=>e;function Vn(e,{sourceEvent:t,subject:n,target:r,identifier:i,active:a,x:o,y:s,dx:c,dy:l,dispatch:u}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},subject:{value:n,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},identifier:{value:i,enumerable:!0,configurable:!0},active:{value:a,enumerable:!0,configurable:!0},x:{value:o,enumerable:!0,configurable:!0},y:{value:s,enumerable:!0,configurable:!0},dx:{value:c,enumerable:!0,configurable:!0},dy:{value:l,enumerable:!0,configurable:!0},_:{value:u}})}Vn.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function Hn(e){return!e.ctrlKey&&!e.button}function Un(){return this.parentNode}function Wn(e,t){return t??{x:e.x,y:e.y}}function Gn(){return navigator.maxTouchPoints||`ontouchstart`in this}function Kn(){var e=Hn,t=Un,n=Wn,r=Gn,i={},a=Ee(`start`,`drag`,`end`),o=0,s,c,l,u,d=0;function f(e){e.on(`mousedown.drag`,p).filter(r).on(`touchstart.drag`,g).on(`touchmove.drag`,_,Pn).on(`touchend.drag touchcancel.drag`,v).style(`touch-action`,`none`).style(`-webkit-tap-highlight-color`,`rgba(0,0,0,0)`)}function p(n,r){if(!u&&e.call(this,n,r)){var i=y(this,t.call(this,n,r),n,r,`mouse`);i&&(jn(n.view).on(`mousemove.drag`,m,Fn).on(`mouseup.drag`,h,Fn),Rn(n.view),In(n),l=!1,s=n.clientX,c=n.clientY,i(`start`,n))}}function m(e){if(Ln(e),!l){var t=e.clientX-s,n=e.clientY-c;l=t*t+n*n>d}i.mouse(`drag`,e)}function h(e){jn(e.view).on(`mousemove.drag mouseup.drag`,null),zn(e.view,l),Ln(e),i.mouse(`end`,e)}function g(n,r){if(e.call(this,n,r))for(var i=n.changedTouches,a=t.call(this,n,r),o=i.length,s=0,c;s<o;++s)(c=y(this,a,n,r,i[s].identifier,i[s]))&&(In(n),c(`start`,n,i[s]))}function _(e){for(var t=e.changedTouches,n=t.length,r=0,a;r<n;++r)(a=i[t[r].identifier])&&(Ln(e),a(`drag`,e,t[r]))}function v(e){var t=e.changedTouches,n=t.length,r,a;for(u&&clearTimeout(u),u=setTimeout(function(){u=null},500),r=0;r<n;++r)(a=i[t[r].identifier])&&(In(e),a(`end`,e,t[r]))}function y(e,t,r,s,c,l){var u=a.copy(),d=Nn(l||r,t),p,m,h;if((h=n.call(e,new Vn(`beforestart`,{sourceEvent:r,target:f,identifier:c,active:o,x:d[0],y:d[1],dx:0,dy:0,dispatch:u}),s))!=null)return p=h.x-d[0]||0,m=h.y-d[1]||0,function n(r,a,l){var g=d,_;switch(r){case`start`:i[c]=n,_=o++;break;case`end`:delete i[c],--o;case`drag`:d=Nn(l||a,t),_=o}u.call(r,e,new Vn(r,{sourceEvent:a,subject:h,target:f,identifier:c,active:_,x:d[0]+p,y:d[1]+m,dx:d[0]-g[0],dy:d[1]-g[1],dispatch:u}),s)}}return f.filter=function(t){return arguments.length?(e=typeof t==`function`?t:Bn(!!t),f):e},f.container=function(e){return arguments.length?(t=typeof e==`function`?e:Bn(e),f):t},f.subject=function(e){return arguments.length?(n=typeof e==`function`?e:Bn(e),f):n},f.touchable=function(e){return arguments.length?(r=typeof e==`function`?e:Bn(!!e),f):r},f.on=function(){var e=a.on.apply(a,arguments);return e===a?f:e},f.clickDistance=function(e){return arguments.length?(d=(e=+e)*e,f):Math.sqrt(d)},f}function qn(e,t,n){e.prototype=t.prototype=n,n.constructor=e}function Jn(e,t){var n=Object.create(e.prototype);for(var r in t)n[r]=t[r];return n}function Yn(){}var Xn=.7,Zn=1/Xn,Qn=`\\s*([+-]?\\d+)\\s*`,$n=`\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*`,er=`\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*`,tr=/^#([0-9a-f]{3,8})$/,nr=RegExp(`^rgb\\(${Qn},${Qn},${Qn}\\)$`),rr=RegExp(`^rgb\\(${er},${er},${er}\\)$`),ir=RegExp(`^rgba\\(${Qn},${Qn},${Qn},${$n}\\)$`),ar=RegExp(`^rgba\\(${er},${er},${er},${$n}\\)$`),or=RegExp(`^hsl\\(${$n},${er},${er}\\)$`),sr=RegExp(`^hsla\\(${$n},${er},${er},${$n}\\)$`),cr={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};qn(Yn,pr,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:lr,formatHex:lr,formatHex8:ur,formatHsl:dr,formatRgb:fr,toString:fr});function lr(){return this.rgb().formatHex()}function ur(){return this.rgb().formatHex8()}function dr(){return Er(this).formatHsl()}function fr(){return this.rgb().formatRgb()}function pr(e){var t,n;return e=(e+``).trim().toLowerCase(),(t=tr.exec(e))?(n=t[1].length,t=parseInt(t[1],16),n===6?mr(t):n===3?new vr(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?hr(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?hr(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=nr.exec(e))?new vr(t[1],t[2],t[3],1):(t=rr.exec(e))?new vr(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=ir.exec(e))?hr(t[1],t[2],t[3],t[4]):(t=ar.exec(e))?hr(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=or.exec(e))?Tr(t[1],t[2]/100,t[3]/100,1):(t=sr.exec(e))?Tr(t[1],t[2]/100,t[3]/100,t[4]):cr.hasOwnProperty(e)?mr(cr[e]):e===`transparent`?new vr(NaN,NaN,NaN,0):null}function mr(e){return new vr(e>>16&255,e>>8&255,e&255,1)}function hr(e,t,n,r){return r<=0&&(e=t=n=NaN),new vr(e,t,n,r)}function gr(e){return e instanceof Yn||(e=pr(e)),e?(e=e.rgb(),new vr(e.r,e.g,e.b,e.opacity)):new vr}function _r(e,t,n,r){return arguments.length===1?gr(e):new vr(e,t,n,r??1)}function vr(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}qn(vr,_r,Jn(Yn,{brighter(e){return e=e==null?Zn:Zn**+e,new vr(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?Xn:Xn**+e,new vr(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new vr(Cr(this.r),Cr(this.g),Cr(this.b),Sr(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:yr,formatHex:yr,formatHex8:br,formatRgb:xr,toString:xr}));function yr(){return`#${wr(this.r)}${wr(this.g)}${wr(this.b)}`}function br(){return`#${wr(this.r)}${wr(this.g)}${wr(this.b)}${wr((isNaN(this.opacity)?1:this.opacity)*255)}`}function xr(){let e=Sr(this.opacity);return`${e===1?`rgb(`:`rgba(`}${Cr(this.r)}, ${Cr(this.g)}, ${Cr(this.b)}${e===1?`)`:`, ${e})`}`}function Sr(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Cr(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function wr(e){return e=Cr(e),(e<16?`0`:``)+e.toString(16)}function Tr(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new Or(e,t,n,r)}function Er(e){if(e instanceof Or)return new Or(e.h,e.s,e.l,e.opacity);if(e instanceof Yn||(e=pr(e)),!e)return new Or;if(e instanceof Or)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,i=Math.min(t,n,r),a=Math.max(t,n,r),o=NaN,s=a-i,c=(a+i)/2;return s?(o=t===a?(n-r)/s+(n<r)*6:n===a?(r-t)/s+2:(t-n)/s+4,s/=c<.5?a+i:2-a-i,o*=60):s=c>0&&c<1?0:o,new Or(o,s,c,e.opacity)}function Dr(e,t,n,r){return arguments.length===1?Er(e):new Or(e,t,n,r??1)}function Or(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}qn(Or,Dr,Jn(Yn,{brighter(e){return e=e==null?Zn:Zn**+e,new Or(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?Xn:Xn**+e,new Or(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*t,i=2*n-r;return new vr(jr(e>=240?e-240:e+120,i,r),jr(e,i,r),jr(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new Or(kr(this.h),Ar(this.s),Ar(this.l),Sr(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let e=Sr(this.opacity);return`${e===1?`hsl(`:`hsla(`}${kr(this.h)}, ${Ar(this.s)*100}%, ${Ar(this.l)*100}%${e===1?`)`:`, ${e})`}`}}));function kr(e){return e=(e||0)%360,e<0?e+360:e}function Ar(e){return Math.max(0,Math.min(1,e||0))}function jr(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}var Mr=e=>()=>e;function Nr(e,t){return function(n){return e+n*t}}function Pr(e,t,n){return e**=+n,t=t**+n-e,n=1/n,function(r){return(e+r*t)**+n}}function Fr(e){return(e=+e)==1?Ir:function(t,n){return n-t?Pr(t,n,e):Mr(isNaN(t)?n:t)}}function Ir(e,t){var n=t-e;return n?Nr(e,n):Mr(isNaN(e)?t:e)}var Lr=function e(t){var n=Fr(t);function r(e,t){var r=n((e=_r(e)).r,(t=_r(t)).r),i=n(e.g,t.g),a=n(e.b,t.b),o=Ir(e.opacity,t.opacity);return function(t){return e.r=r(t),e.g=i(t),e.b=a(t),e.opacity=o(t),e+``}}return r.gamma=e,r}(1);function Rr(e,t){t||=[];var n=e?Math.min(t.length,e.length):0,r=t.slice(),i;return function(a){for(i=0;i<n;++i)r[i]=e[i]*(1-a)+t[i]*a;return r}}function zr(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function Br(e,t){for(var n=t?t.length:0,r=e?Math.min(n,e.length):0,i=Array(r),a=Array(n),o=0;o<r;++o)i[o]=Yr(e[o],t[o]);for(;o<n;++o)a[o]=t[o];return function(e){for(o=0;o<r;++o)a[o]=i[o](e);return a}}function Vr(e,t){var n=new Date;return e=+e,t=+t,function(r){return n.setTime(e*(1-r)+t*r),n}}function Hr(e,t){return e=+e,t=+t,function(n){return e*(1-n)+t*n}}function Ur(e,t){var n={},r={},i;for(i in(typeof e!=`object`||!e)&&(e={}),(typeof t!=`object`||!t)&&(t={}),t)i in e?n[i]=Yr(e[i],t[i]):r[i]=t[i];return function(e){for(i in n)r[i]=n[i](e);return r}}var Wr=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Gr=new RegExp(Wr.source,`g`);function Kr(e){return function(){return e}}function qr(e){return function(t){return e(t)+``}}function Jr(e,t){var n=Wr.lastIndex=Gr.lastIndex=0,r,i,a,o=-1,s=[],c=[];for(e+=``,t+=``;(r=Wr.exec(e))&&(i=Gr.exec(t));)(a=i.index)>n&&(a=t.slice(n,a),s[o]?s[o]+=a:s[++o]=a),(r=r[0])===(i=i[0])?s[o]?s[o]+=i:s[++o]=i:(s[++o]=null,c.push({i:o,x:Hr(r,i)})),n=Gr.lastIndex;return n<t.length&&(a=t.slice(n),s[o]?s[o]+=a:s[++o]=a),s.length<2?c[0]?qr(c[0].x):Kr(t):(t=c.length,function(e){for(var n=0,r;n<t;++n)s[(r=c[n]).i]=r.x(e);return s.join(``)})}function Yr(e,t){var n=typeof t,r;return t==null||n===`boolean`?Mr(t):(n===`number`?Hr:n===`string`?(r=pr(t))?(t=r,Lr):Jr:t instanceof pr?Lr:t instanceof Date?Vr:zr(t)?Rr:Array.isArray(t)?Br:typeof t.valueOf!=`function`&&typeof t.toString!=`function`||isNaN(t)?Ur:Hr)(e,t)}var Xr=180/Math.PI,Zr={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function Qr(e,t,n,r,i,a){var o,s,c;return(o=Math.sqrt(e*e+t*t))&&(e/=o,t/=o),(c=e*n+t*r)&&(n-=e*c,r-=t*c),(s=Math.sqrt(n*n+r*r))&&(n/=s,r/=s,c/=s),e*r<t*n&&(e=-e,t=-t,c=-c,o=-o),{translateX:i,translateY:a,rotate:Math.atan2(t,e)*Xr,skewX:Math.atan(c)*Xr,scaleX:o,scaleY:s}}var $r;function ei(e){let t=new(typeof DOMMatrix==`function`?DOMMatrix:WebKitCSSMatrix)(e+``);return t.isIdentity?Zr:Qr(t.a,t.b,t.c,t.d,t.e,t.f)}function ti(e){return e==null||($r||=document.createElementNS(`http://www.w3.org/2000/svg`,`g`),$r.setAttribute(`transform`,e),!(e=$r.transform.baseVal.consolidate()))?Zr:(e=e.matrix,Qr(e.a,e.b,e.c,e.d,e.e,e.f))}function ni(e,t,n,r){function i(e){return e.length?e.pop()+` `:``}function a(e,r,i,a,o,s){if(e!==i||r!==a){var c=o.push(`translate(`,null,t,null,n);s.push({i:c-4,x:Hr(e,i)},{i:c-2,x:Hr(r,a)})}else(i||a)&&o.push(`translate(`+i+t+a+n)}function o(e,t,n,a){e===t?t&&n.push(i(n)+`rotate(`+t+r):(e-t>180?t+=360:t-e>180&&(e+=360),a.push({i:n.push(i(n)+`rotate(`,null,r)-2,x:Hr(e,t)}))}function s(e,t,n,a){e===t?t&&n.push(i(n)+`skewX(`+t+r):a.push({i:n.push(i(n)+`skewX(`,null,r)-2,x:Hr(e,t)})}function c(e,t,n,r,a,o){if(e!==n||t!==r){var s=a.push(i(a)+`scale(`,null,`,`,null,`)`);o.push({i:s-4,x:Hr(e,n)},{i:s-2,x:Hr(t,r)})}else(n!==1||r!==1)&&a.push(i(a)+`scale(`+n+`,`+r+`)`)}return function(t,n){var r=[],i=[];return t=e(t),n=e(n),a(t.translateX,t.translateY,n.translateX,n.translateY,r,i),o(t.rotate,n.rotate,r,i),s(t.skewX,n.skewX,r,i),c(t.scaleX,t.scaleY,n.scaleX,n.scaleY,r,i),t=n=null,function(e){for(var t=-1,n=i.length,a;++t<n;)r[(a=i[t]).i]=a.x(e);return r.join(``)}}}var ri=ni(ei,`px, `,`px)`,`deg)`),ii=ni(ti,`, `,`)`,`)`),ai=1e-12;function oi(e){return((e=Math.exp(e))+1/e)/2}function si(e){return((e=Math.exp(e))-1/e)/2}function ci(e){return((e=Math.exp(2*e))-1)/(e+1)}var li=function e(t,n,r){function i(e,i){var a=e[0],o=e[1],s=e[2],c=i[0],l=i[1],u=i[2],d=c-a,f=l-o,p=d*d+f*f,m,h;if(p<ai)h=Math.log(u/s)/t,m=function(e){return[a+e*d,o+e*f,s*Math.exp(t*e*h)]};else{var g=Math.sqrt(p),_=(u*u-s*s+r*p)/(2*s*n*g),v=(u*u-s*s-r*p)/(2*u*n*g),y=Math.log(Math.sqrt(_*_+1)-_);h=(Math.log(Math.sqrt(v*v+1)-v)-y)/t,m=function(e){var r=e*h,i=oi(y),c=s/(n*g)*(i*ci(t*r+y)-si(y));return[a+c*d,o+c*f,s*i/oi(t*r+y)]}}return m.duration=h*1e3*t/Math.SQRT2,m}return i.rho=function(t){var n=Math.max(.001,+t),r=n*n;return e(n,r,r*r)},i}(Math.SQRT2,2,4),ui=0,di=0,fi=0,pi=1e3,mi,hi,gi=0,_i=0,vi=0,yi=typeof performance==`object`&&performance.now?performance:Date,bi=typeof window==`object`&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function xi(){return _i||=(bi(Si),yi.now()+vi)}function Si(){_i=0}function Ci(){this._call=this._time=this._next=null}Ci.prototype=wi.prototype={constructor:Ci,restart:function(e,t,n){if(typeof e!=`function`)throw TypeError(`callback is not a function`);n=(n==null?xi():+n)+(t==null?0:+t),!this._next&&hi!==this&&(hi?hi._next=this:mi=this,hi=this),this._call=e,this._time=n,ki()},stop:function(){this._call&&(this._call=null,this._time=1/0,ki())}};function wi(e,t,n){var r=new Ci;return r.restart(e,t,n),r}function Ti(){xi(),++ui;for(var e=mi,t;e;)(t=_i-e._time)>=0&&e._call.call(void 0,t),e=e._next;--ui}function Ei(){_i=(gi=yi.now())+vi,ui=di=0;try{Ti()}finally{ui=0,Oi(),_i=0}}function Di(){var e=yi.now(),t=e-gi;t>pi&&(vi-=t,gi=e)}function Oi(){for(var e,t=mi,n,r=1/0;t;)t._call?(r>t._time&&(r=t._time),e=t,t=t._next):(n=t._next,t._next=null,t=e?e._next=n:mi=n);hi=e,ki(r)}function ki(e){ui||(di&&=clearTimeout(di),e-_i>24?(e<1/0&&(di=setTimeout(Ei,e-yi.now()-vi)),fi&&=clearInterval(fi)):(fi||=(gi=yi.now(),setInterval(Di,pi)),ui=1,bi(Ei)))}function Ai(e,t,n){var r=new Ci;return t=t==null?0:+t,r.restart(n=>{r.stop(),e(n+t)},t,n),r}var ji=Ee(`start`,`end`,`cancel`,`interrupt`),Mi=[],Ni=0,Pi=1,Fi=2,Ii=3,Li=4,Ri=5,zi=6;function Bi(e,t,n,r,i,a){var o=e.__transition;if(!o)e.__transition={};else if(n in o)return;Wi(e,n,{name:t,index:r,group:i,on:ji,tween:Mi,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:Ni})}function Vi(e,t){var n=Ui(e,t);if(n.state>Ni)throw Error(`too late; already scheduled`);return n}function Hi(e,t){var n=Ui(e,t);if(n.state>Ii)throw Error(`too late; already running`);return n}function Ui(e,t){var n=e.__transition;if(!n||!(n=n[t]))throw Error(`transition not found`);return n}function Wi(e,t,n){var r=e.__transition,i;r[t]=n,n.timer=wi(a,0,n.time);function a(e){n.state=Pi,n.timer.restart(o,n.delay,n.time),n.delay<=e&&o(e-n.delay)}function o(a){var l,u,d,f;if(n.state!==Pi)return c();for(l in r)if(f=r[l],f.name===n.name){if(f.state===Ii)return Ai(o);f.state===Li?(f.state=zi,f.timer.stop(),f.on.call(`interrupt`,e,e.__data__,f.index,f.group),delete r[l]):+l<t&&(f.state=zi,f.timer.stop(),f.on.call(`cancel`,e,e.__data__,f.index,f.group),delete r[l])}if(Ai(function(){n.state===Ii&&(n.state=Li,n.timer.restart(s,n.delay,n.time),s(a))}),n.state=Fi,n.on.call(`start`,e,e.__data__,n.index,n.group),n.state===Fi){for(n.state=Ii,i=Array(d=n.tween.length),l=0,u=-1;l<d;++l)(f=n.tween[l].value.call(e,e.__data__,n.index,n.group))&&(i[++u]=f);i.length=u+1}}function s(t){for(var r=t<n.duration?n.ease.call(null,t/n.duration):(n.timer.restart(c),n.state=Ri,1),a=-1,o=i.length;++a<o;)i[a].call(e,r);n.state===Ri&&(n.on.call(`end`,e,e.__data__,n.index,n.group),c())}function c(){for(var i in n.state=zi,n.timer.stop(),delete r[t],r)return;delete e.__transition}}function Gi(e,t){var n=e.__transition,r,i,a=!0,o;if(n){for(o in t=t==null?null:t+``,n){if((r=n[o]).name!==t){a=!1;continue}i=r.state>Fi&&r.state<Ri,r.state=zi,r.timer.stop(),r.on.call(i?`interrupt`:`cancel`,e,e.__data__,r.index,r.group),delete n[o]}a&&delete e.__transition}}function Ki(e){return this.each(function(){Gi(this,e)})}function qi(e,t){var n,r;return function(){var i=Hi(this,e),a=i.tween;if(a!==n){r=n=a;for(var o=0,s=r.length;o<s;++o)if(r[o].name===t){r=r.slice(),r.splice(o,1);break}}i.tween=r}}function Ji(e,t,n){var r,i;if(typeof n!=`function`)throw Error();return function(){var a=Hi(this,e),o=a.tween;if(o!==r){i=(r=o).slice();for(var s={name:t,value:n},c=0,l=i.length;c<l;++c)if(i[c].name===t){i[c]=s;break}c===l&&i.push(s)}a.tween=i}}function Yi(e,t){var n=this._id;if(e+=``,arguments.length<2){for(var r=Ui(this.node(),n).tween,i=0,a=r.length,o;i<a;++i)if((o=r[i]).name===e)return o.value;return null}return this.each((t==null?qi:Ji)(n,e,t))}function Xi(e,t,n){var r=e._id;return e.each(function(){var e=Hi(this,r);(e.value||={})[t]=n.apply(this,arguments)}),function(e){return Ui(e,r).value[t]}}function Zi(e,t){var n;return(typeof t==`number`?Hr:t instanceof pr?Lr:(n=pr(t))?(t=n,Lr):Jr)(e,t)}function Qi(e){return function(){this.removeAttribute(e)}}function $i(e){return function(){this.removeAttributeNS(e.space,e.local)}}function ea(e,t,n){var r,i=n+``,a;return function(){var o=this.getAttribute(e);return o===i?null:o===r?a:a=t(r=o,n)}}function ta(e,t,n){var r,i=n+``,a;return function(){var o=this.getAttributeNS(e.space,e.local);return o===i?null:o===r?a:a=t(r=o,n)}}function na(e,t,n){var r,i,a;return function(){var o,s=n(this),c;return s==null?void this.removeAttribute(e):(o=this.getAttribute(e),c=s+``,o===c?null:o===r&&c===i?a:(i=c,a=t(r=o,s)))}}function ra(e,t,n){var r,i,a;return function(){var o,s=n(this),c;return s==null?void this.removeAttributeNS(e.space,e.local):(o=this.getAttributeNS(e.space,e.local),c=s+``,o===c?null:o===r&&c===i?a:(i=c,a=t(r=o,s)))}}function ia(e,t){var n=Ne(e),r=n===`transform`?ii:Zi;return this.attrTween(e,typeof t==`function`?(n.local?ra:na)(n,r,Xi(this,`attr.`+e,t)):t==null?(n.local?$i:Qi)(n):(n.local?ta:ea)(n,r,t))}function aa(e,t){return function(n){this.setAttribute(e,t.call(this,n))}}function oa(e,t){return function(n){this.setAttributeNS(e.space,e.local,t.call(this,n))}}function sa(e,t){var n,r;function i(){var i=t.apply(this,arguments);return i!==r&&(n=(r=i)&&oa(e,i)),n}return i._value=t,i}function ca(e,t){var n,r;function i(){var i=t.apply(this,arguments);return i!==r&&(n=(r=i)&&aa(e,i)),n}return i._value=t,i}function la(e,t){var n=`attr.`+e;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(t==null)return this.tween(n,null);if(typeof t!=`function`)throw Error();var r=Ne(e);return this.tween(n,(r.local?sa:ca)(r,t))}function ua(e,t){return function(){Vi(this,e).delay=+t.apply(this,arguments)}}function da(e,t){return t=+t,function(){Vi(this,e).delay=t}}function fa(e){var t=this._id;return arguments.length?this.each((typeof e==`function`?ua:da)(t,e)):Ui(this.node(),t).delay}function pa(e,t){return function(){Hi(this,e).duration=+t.apply(this,arguments)}}function ma(e,t){return t=+t,function(){Hi(this,e).duration=t}}function ha(e){var t=this._id;return arguments.length?this.each((typeof e==`function`?pa:ma)(t,e)):Ui(this.node(),t).duration}function ga(e,t){if(typeof t!=`function`)throw Error();return function(){Hi(this,e).ease=t}}function _a(e){var t=this._id;return arguments.length?this.each(ga(t,e)):Ui(this.node(),t).ease}function va(e,t){return function(){var n=t.apply(this,arguments);if(typeof n!=`function`)throw Error();Hi(this,e).ease=n}}function ya(e){if(typeof e!=`function`)throw Error();return this.each(va(this._id,e))}function ba(e){typeof e!=`function`&&(e=Ge(e));for(var t=this._groups,n=t.length,r=Array(n),i=0;i<n;++i)for(var a=t[i],o=a.length,s=r[i]=[],c,l=0;l<o;++l)(c=a[l])&&e.call(c,c.__data__,l,a)&&s.push(c);return new Ya(r,this._parents,this._name,this._id)}function xa(e){if(e._id!==this._id)throw Error();for(var t=this._groups,n=e._groups,r=t.length,i=n.length,a=Math.min(r,i),o=Array(r),s=0;s<a;++s)for(var c=t[s],l=n[s],u=c.length,d=o[s]=Array(u),f,p=0;p<u;++p)(f=c[p]||l[p])&&(d[p]=f);for(;s<r;++s)o[s]=t[s];return new Ya(o,this._parents,this._name,this._id)}function Sa(e){return(e+``).trim().split(/^|\s+/).every(function(e){var t=e.indexOf(`.`);return t>=0&&(e=e.slice(0,t)),!e||e===`start`})}function Ca(e,t,n){var r,i,a=Sa(t)?Vi:Hi;return function(){var o=a(this,e),s=o.on;s!==r&&(i=(r=s).copy()).on(t,n),o.on=i}}function wa(e,t){var n=this._id;return arguments.length<2?Ui(this.node(),n).on.on(e):this.each(Ca(n,e,t))}function Ta(e){return function(){var t=this.parentNode;for(var n in this.__transition)if(+n!==e)return;t&&t.removeChild(this)}}function Ea(){return this.on(`end.remove`,Ta(this._id))}function Da(e){var t=this._name,n=this._id;typeof e!=`function`&&(e=Re(e));for(var r=this._groups,i=r.length,a=Array(i),o=0;o<i;++o)for(var s=r[o],c=s.length,l=a[o]=Array(c),u,d,f=0;f<c;++f)(u=s[f])&&(d=e.call(u,u.__data__,f,s))&&(`__data__`in u&&(d.__data__=u.__data__),l[f]=d,Bi(l[f],t,n,f,l,Ui(u,n)));return new Ya(a,this._parents,t,n)}function Oa(e){var t=this._name,n=this._id;typeof e!=`function`&&(e=He(e));for(var r=this._groups,i=r.length,a=[],o=[],s=0;s<i;++s)for(var c=r[s],l=c.length,u,d=0;d<l;++d)if(u=c[d]){for(var f=e.call(u,u.__data__,d,c),p,m=Ui(u,n),h=0,g=f.length;h<g;++h)(p=f[h])&&Bi(p,t,n,h,f,m);a.push(f),o.push(u)}return new Ya(a,o,t,n)}var ka=kn.prototype.constructor;function Aa(){return new ka(this._groups,this._parents)}function ja(e,t){var n,r,i;return function(){var a=Ft(this,e),o=(this.style.removeProperty(e),Ft(this,e));return a===o?null:a===n&&o===r?i:i=t(n=a,r=o)}}function Ma(e){return function(){this.style.removeProperty(e)}}function Na(e,t,n){var r,i=n+``,a;return function(){var o=Ft(this,e);return o===i?null:o===r?a:a=t(r=o,n)}}function Pa(e,t,n){var r,i,a;return function(){var o=Ft(this,e),s=n(this),c=s+``;return s??(c=s=(this.style.removeProperty(e),Ft(this,e))),o===c?null:o===r&&c===i?a:(i=c,a=t(r=o,s))}}function Fa(e,t){var n,r,i,a=`style.`+t,o=`end.`+a,s;return function(){var c=Hi(this,e),l=c.on,u=c.value[a]==null?s||=Ma(t):void 0;(l!==n||i!==u)&&(r=(n=l).copy()).on(o,i=u),c.on=r}}function Ia(e,t,n){var r=(e+=``)==`transform`?ri:Zi;return t==null?this.styleTween(e,ja(e,r)).on(`end.style.`+e,Ma(e)):typeof t==`function`?this.styleTween(e,Pa(e,r,Xi(this,`style.`+e,t))).each(Fa(this._id,e)):this.styleTween(e,Na(e,r,t),n).on(`end.style.`+e,null)}function La(e,t,n){return function(r){this.style.setProperty(e,t.call(this,r),n)}}function Ra(e,t,n){var r,i;function a(){var a=t.apply(this,arguments);return a!==i&&(r=(i=a)&&La(e,a,n)),r}return a._value=t,a}function za(e,t,n){var r=`style.`+(e+=``);if(arguments.length<2)return(r=this.tween(r))&&r._value;if(t==null)return this.tween(r,null);if(typeof t!=`function`)throw Error();return this.tween(r,Ra(e,t,n??``))}function Ba(e){return function(){this.textContent=e}}function Va(e){return function(){var t=e(this);this.textContent=t??``}}function Ha(e){return this.tween(`text`,typeof e==`function`?Va(Xi(this,`text`,e)):Ba(e==null?``:e+``))}function Ua(e){return function(t){this.textContent=e.call(this,t)}}function Wa(e){var t,n;function r(){var r=e.apply(this,arguments);return r!==n&&(t=(n=r)&&Ua(r)),t}return r._value=e,r}function Ga(e){var t=`text`;if(arguments.length<1)return(t=this.tween(t))&&t._value;if(e==null)return this.tween(t,null);if(typeof e!=`function`)throw Error();return this.tween(t,Wa(e))}function Ka(){for(var e=this._name,t=this._id,n=Xa(),r=this._groups,i=r.length,a=0;a<i;++a)for(var o=r[a],s=o.length,c,l=0;l<s;++l)if(c=o[l]){var u=Ui(c,t);Bi(c,e,n,l,o,{time:u.time+u.delay+u.duration,delay:0,duration:u.duration,ease:u.ease})}return new Ya(r,this._parents,e,n)}function qa(){var e,t,n=this,r=n._id,i=n.size();return new Promise(function(a,o){var s={value:o},c={value:function(){--i===0&&a()}};n.each(function(){var n=Hi(this,r),i=n.on;i!==e&&(t=(e=i).copy(),t._.cancel.push(s),t._.interrupt.push(s),t._.end.push(c)),n.on=t}),i===0&&a()})}var Ja=0;function Ya(e,t,n,r){this._groups=e,this._parents=t,this._name=n,this._id=r}function Xa(){return++Ja}var Za=kn.prototype;Ya.prototype={constructor:Ya,select:Da,selectAll:Oa,selectChild:Za.selectChild,selectChildren:Za.selectChildren,filter:ba,merge:xa,selection:Aa,transition:Ka,call:Za.call,nodes:Za.nodes,node:Za.node,size:Za.size,empty:Za.empty,each:Za.each,on:wa,attr:ia,attrTween:la,style:Ia,styleTween:za,text:Ha,textTween:Ga,remove:Ea,tween:Yi,delay:fa,duration:ha,ease:_a,easeVarying:ya,end:qa,[Symbol.iterator]:Za[Symbol.iterator]};function Qa(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var $a={time:null,delay:0,duration:250,ease:Qa};function eo(e,t){for(var n;!(n=e.__transition)||!(n=n[t]);)if(!(e=e.parentNode))throw Error(`transition ${t} not found`);return n}function to(e){var t,n;e instanceof Ya?(t=e._id,e=e._name):(t=Xa(),(n=$a).time=xi(),e=e==null?null:e+``);for(var r=this._groups,i=r.length,a=0;a<i;++a)for(var o=r[a],s=o.length,c,l=0;l<s;++l)(c=o[l])&&Bi(c,e,t,l,o,n||eo(c,t));return new Ya(r,this._parents,e,t)}kn.prototype.interrupt=Ki,kn.prototype.transition=to;var no=e=>()=>e;function ro(e,{sourceEvent:t,target:n,transform:r,dispatch:i}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},target:{value:n,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:i}})}function io(e,t,n){this.k=e,this.x=t,this.y=n}io.prototype={constructor:io,scale:function(e){return e===1?this:new io(this.k*e,this.x,this.y)},translate:function(e,t){return e===0&t===0?this:new io(this.k,this.x+this.k*e,this.y+this.k*t)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return`translate(`+this.x+`,`+this.y+`) scale(`+this.k+`)`}};var ao=new io(1,0,0);io.prototype;function oo(e){e.stopImmediatePropagation()}function so(e){e.preventDefault(),e.stopImmediatePropagation()}function co(e){return(!e.ctrlKey||e.type===`wheel`)&&!e.button}function lo(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e,e.hasAttribute(`viewBox`)?(e=e.viewBox.baseVal,[[e.x,e.y],[e.x+e.width,e.y+e.height]]):[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]):[[0,0],[e.clientWidth,e.clientHeight]]}function uo(){return this.__zoom||ao}function fo(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function po(){return navigator.maxTouchPoints||`ontouchstart`in this}function mo(e,t,n){var r=e.invertX(t[0][0])-n[0][0],i=e.invertX(t[1][0])-n[1][0],a=e.invertY(t[0][1])-n[0][1],o=e.invertY(t[1][1])-n[1][1];return e.translate(i>r?(r+i)/2:Math.min(0,r)||Math.max(0,i),o>a?(a+o)/2:Math.min(0,a)||Math.max(0,o))}function ho(){var e=co,t=lo,n=mo,r=fo,i=po,a=[0,1/0],o=[[-1/0,-1/0],[1/0,1/0]],s=250,c=li,l=Ee(`start`,`zoom`,`end`),u,d,f,p=500,m=150,h=0,g=10;function _(e){e.property(`__zoom`,uo).on(`wheel.zoom`,w,{passive:!1}).on(`mousedown.zoom`,T).on(`dblclick.zoom`,E).filter(i).on(`touchstart.zoom`,D).on(`touchmove.zoom`,O).on(`touchend.zoom touchcancel.zoom`,k).style(`-webkit-tap-highlight-color`,`rgba(0,0,0,0)`)}_.transform=function(e,t,n,r){var i=e.selection?e.selection():e;i.property(`__zoom`,uo),e===i?i.interrupt().each(function(){S(this,arguments).event(r).start().zoom(null,typeof t==`function`?t.apply(this,arguments):t).end()}):x(e,t,n,r)},_.scaleBy=function(e,t,n,r){_.scaleTo(e,function(){return this.__zoom.k*(typeof t==`function`?t.apply(this,arguments):t)},n,r)},_.scaleTo=function(e,r,i,a){_.transform(e,function(){var e=t.apply(this,arguments),a=this.__zoom,s=i==null?b(e):typeof i==`function`?i.apply(this,arguments):i,c=a.invert(s),l=typeof r==`function`?r.apply(this,arguments):r;return n(y(v(a,l),s,c),e,o)},i,a)},_.translateBy=function(e,r,i,a){_.transform(e,function(){return n(this.__zoom.translate(typeof r==`function`?r.apply(this,arguments):r,typeof i==`function`?i.apply(this,arguments):i),t.apply(this,arguments),o)},null,a)},_.translateTo=function(e,r,i,a,s){_.transform(e,function(){var e=t.apply(this,arguments),s=this.__zoom,c=a==null?b(e):typeof a==`function`?a.apply(this,arguments):a;return n(ao.translate(c[0],c[1]).scale(s.k).translate(typeof r==`function`?-r.apply(this,arguments):-r,typeof i==`function`?-i.apply(this,arguments):-i),e,o)},a,s)};function v(e,t){return t=Math.max(a[0],Math.min(a[1],t)),t===e.k?e:new io(t,e.x,e.y)}function y(e,t,n){var r=t[0]-n[0]*e.k,i=t[1]-n[1]*e.k;return r===e.x&&i===e.y?e:new io(e.k,r,i)}function b(e){return[(+e[0][0]+ +e[1][0])/2,(+e[0][1]+ +e[1][1])/2]}function x(e,n,r,i){e.on(`start.zoom`,function(){S(this,arguments).event(i).start()}).on(`interrupt.zoom end.zoom`,function(){S(this,arguments).event(i).end()}).tween(`zoom`,function(){var e=this,a=arguments,o=S(e,a).event(i),s=t.apply(e,a),l=r==null?b(s):typeof r==`function`?r.apply(e,a):r,u=Math.max(s[1][0]-s[0][0],s[1][1]-s[0][1]),d=e.__zoom,f=typeof n==`function`?n.apply(e,a):n,p=c(d.invert(l).concat(u/d.k),f.invert(l).concat(u/f.k));return function(e){if(e===1)e=f;else{var t=p(e),n=u/t[2];e=new io(n,l[0]-t[0]*n,l[1]-t[1]*n)}o.zoom(null,e)}})}function S(e,t,n){return!n&&e.__zooming||new C(e,t)}function C(e,n){this.that=e,this.args=n,this.active=0,this.sourceEvent=null,this.extent=t.apply(e,n),this.taps=0}C.prototype={event:function(e){return e&&(this.sourceEvent=e),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit(`start`)),this},zoom:function(e,t){return this.mouse&&e!==`mouse`&&(this.mouse[1]=t.invert(this.mouse[0])),this.touch0&&e!==`touch`&&(this.touch0[1]=t.invert(this.touch0[0])),this.touch1&&e!==`touch`&&(this.touch1[1]=t.invert(this.touch1[0])),this.that.__zoom=t,this.emit(`zoom`),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit(`end`)),this},emit:function(e){var t=jn(this.that).datum();l.call(e,this.that,new ro(e,{sourceEvent:this.sourceEvent,target:_,type:e,transform:this.that.__zoom,dispatch:l}),t)}};function w(t,...i){if(!e.apply(this,arguments))return;var s=S(this,i).event(t),c=this.__zoom,l=Math.max(a[0],Math.min(a[1],c.k*2**r.apply(this,arguments))),u=Nn(t);if(s.wheel)(s.mouse[0][0]!==u[0]||s.mouse[0][1]!==u[1])&&(s.mouse[1]=c.invert(s.mouse[0]=u)),clearTimeout(s.wheel);else if(c.k===l)return;else s.mouse=[u,c.invert(u)],Gi(this),s.start();so(t),s.wheel=setTimeout(d,m),s.zoom(`mouse`,n(y(v(c,l),s.mouse[0],s.mouse[1]),s.extent,o));function d(){s.wheel=null,s.end()}}function T(t,...r){if(f||!e.apply(this,arguments))return;var i=t.currentTarget,a=S(this,r,!0).event(t),s=jn(t.view).on(`mousemove.zoom`,d,!0).on(`mouseup.zoom`,p,!0),c=Nn(t,i),l=t.clientX,u=t.clientY;Rn(t.view),oo(t),a.mouse=[c,this.__zoom.invert(c)],Gi(this),a.start();function d(e){if(so(e),!a.moved){var t=e.clientX-l,r=e.clientY-u;a.moved=t*t+r*r>h}a.event(e).zoom(`mouse`,n(y(a.that.__zoom,a.mouse[0]=Nn(e,i),a.mouse[1]),a.extent,o))}function p(e){s.on(`mousemove.zoom mouseup.zoom`,null),zn(e.view,a.moved),so(e),a.event(e).end()}}function E(r,...i){if(e.apply(this,arguments)){var a=this.__zoom,c=Nn(r.changedTouches?r.changedTouches[0]:r,this),l=a.invert(c),u=a.k*(r.shiftKey?.5:2),d=n(y(v(a,u),c,l),t.apply(this,i),o);so(r),s>0?jn(this).transition().duration(s).call(x,d,c,r):jn(this).call(_.transform,d,c,r)}}function D(t,...n){if(e.apply(this,arguments)){var r=t.touches,i=r.length,a=S(this,n,t.changedTouches.length===i).event(t),o,s,c,l;for(oo(t),s=0;s<i;++s)c=r[s],l=Nn(c,this),l=[l,this.__zoom.invert(l),c.identifier],a.touch0?!a.touch1&&a.touch0[2]!==l[2]&&(a.touch1=l,a.taps=0):(a.touch0=l,o=!0,a.taps=1+!!u);u&&=clearTimeout(u),o&&(a.taps<2&&(d=l[0],u=setTimeout(function(){u=null},p)),Gi(this),a.start())}}function O(e,...t){if(this.__zooming){var r=S(this,t).event(e),i=e.changedTouches,a=i.length,s,c,l,u;for(so(e),s=0;s<a;++s)c=i[s],l=Nn(c,this),r.touch0&&r.touch0[2]===c.identifier?r.touch0[0]=l:r.touch1&&r.touch1[2]===c.identifier&&(r.touch1[0]=l);if(c=r.that.__zoom,r.touch1){var d=r.touch0[0],f=r.touch0[1],p=r.touch1[0],m=r.touch1[1],h=(h=p[0]-d[0])*h+(h=p[1]-d[1])*h,g=(g=m[0]-f[0])*g+(g=m[1]-f[1])*g;c=v(c,Math.sqrt(h/g)),l=[(d[0]+p[0])/2,(d[1]+p[1])/2],u=[(f[0]+m[0])/2,(f[1]+m[1])/2]}else if(r.touch0)l=r.touch0[0],u=r.touch0[1];else return;r.zoom(`touch`,n(y(c,l,u),r.extent,o))}}function k(e,...t){if(this.__zooming){var n=S(this,t).event(e),r=e.changedTouches,i=r.length,a,o;for(oo(e),f&&clearTimeout(f),f=setTimeout(function(){f=null},p),a=0;a<i;++a)o=r[a],n.touch0&&n.touch0[2]===o.identifier?delete n.touch0:n.touch1&&n.touch1[2]===o.identifier&&delete n.touch1;if(n.touch1&&!n.touch0&&(n.touch0=n.touch1,delete n.touch1),n.touch0)n.touch0[1]=this.__zoom.invert(n.touch0[0]);else if(n.end(),n.taps===2&&(o=Nn(o,this),Math.hypot(d[0]-o[0],d[1]-o[1])<g)){var s=jn(this).on(`dblclick.zoom`);s&&s.apply(this,arguments)}}}return _.wheelDelta=function(e){return arguments.length?(r=typeof e==`function`?e:no(+e),_):r},_.filter=function(t){return arguments.length?(e=typeof t==`function`?t:no(!!t),_):e},_.touchable=function(e){return arguments.length?(i=typeof e==`function`?e:no(!!e),_):i},_.extent=function(e){return arguments.length?(t=typeof e==`function`?e:no([[+e[0][0],+e[0][1]],[+e[1][0],+e[1][1]]]),_):t},_.scaleExtent=function(e){return arguments.length?(a[0]=+e[0],a[1]=+e[1],_):[a[0],a[1]]},_.translateExtent=function(e){return arguments.length?(o[0][0]=+e[0][0],o[1][0]=+e[1][0],o[0][1]=+e[0][1],o[1][1]=+e[1][1],_):[[o[0][0],o[0][1]],[o[1][0],o[1][1]]]},_.constrain=function(e){return arguments.length?(n=e,_):n},_.duration=function(e){return arguments.length?(s=+e,_):s},_.interpolate=function(e){return arguments.length?(c=e,_):c},_.on=function(){var e=l.on.apply(l,arguments);return e===l?_:e},_.clickDistance=function(e){return arguments.length?(h=(e=+e)*e,_):Math.sqrt(h)},_.tapDistance=function(e){return arguments.length?(g=+e,_):g},_}var J=(e=>(e.Left=`left`,e.Top=`top`,e.Right=`right`,e.Bottom=`bottom`,e))(J||{}),go=(e=>(e.Partial=`partial`,e.Full=`full`,e))(go||{}),_o=(e=>(e.Bezier=`default`,e.SimpleBezier=`simple-bezier`,e.Straight=`straight`,e.Step=`step`,e.SmoothStep=`smoothstep`,e))(_o||{}),vo=(e=>(e.Strict=`strict`,e.Loose=`loose`,e))(vo||{}),yo=(e=>(e.Arrow=`arrow`,e.ArrowClosed=`arrowclosed`,e))(yo||{}),bo=(e=>(e.Free=`free`,e.Vertical=`vertical`,e.Horizontal=`horizontal`,e))(bo||{}),xo=(e=>(e.TopLeft=`top-left`,e.TopCenter=`top-center`,e.TopRight=`top-right`,e.BottomLeft=`bottom-left`,e.BottomCenter=`bottom-center`,e.BottomRight=`bottom-right`,e))(xo||{}),So=[`INPUT`,`SELECT`,`TEXTAREA`],Co=typeof document<`u`?document:null;function wo(e){let t=e.composedPath?.call(e)?.[0]||e.target,n=typeof t?.hasAttribute==`function`&&t.hasAttribute(`contenteditable`),r=typeof t?.closest==`function`?t.closest(`.nokey`):null;return So.includes(t?.nodeName)||n||!!r}function To(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey}function Eo(e,t,n,r){let i=t.replace(`+`,`
|
|
2
|
+
`).replace(`
|
|
3
|
+
|
|
4
|
+
`,`
|
|
5
|
+
+`).split(`
|
|
6
|
+
`).map(e=>e.trim().toLowerCase());if(i.length===1)return e.toLowerCase()===t.toLowerCase();r||n.add(e.toLowerCase());let a=i.every((e,t)=>n.has(e)&&Array.from(n.values())[t]===i[t]);return r&&n.delete(e.toLowerCase()),a}function Do(e,t){return n=>{if(!n.code&&!n.key)return!1;let r=Oo(n.code,e);return Array.isArray(e)?e.some(e=>Eo(n[r],e,t,n.type===`keyup`)):Eo(n[r],e,t,n.type===`keyup`)}}function Oo(e,t){return t.includes(e)?`code`:`key`}function ko(e,t){let n=g(()=>d(t?.target)??Co),r=p(d(e)===!0),i=!1,a=new Set,o=c(d(e));A(()=>d(e),(e,t)=>{typeof t==`boolean`&&typeof e!=`boolean`&&s(),o=c(e)},{immediate:!0}),be([`blur`,`contextmenu`],s),Se((...e)=>o(...e),e=>{let n=d(t?.actInsideInputWithModifier)??!0,a=d(t?.preventDefault)??!1;if(i=To(e),(!i||i&&!n)&&wo(e))return;let o=e.composedPath?.call(e)?.[0]||e.target,s=o?.nodeName===`BUTTON`||o?.nodeName===`A`;!a&&(i||!s)&&e.preventDefault(),r.value=!0},{eventName:`keydown`,target:n}),Se((...e)=>o(...e),e=>{let n=d(t?.actInsideInputWithModifier)??!0;if(r.value){if((!i||i&&!n)&&wo(e))return;i=!1,r.value=!1}},{eventName:`keyup`,target:n});function s(){i=!1,a.clear(),r.value=d(e)===!0}function c(e){return e===null?(s(),()=>!1):typeof e==`boolean`?(s(),r.value=e,()=>!1):Array.isArray(e)||typeof e==`string`?Do(e,a):e}return r}var Ao=`vue-flow__node-desc`,jo=`vue-flow__edge-desc`,Mo=`vue-flow__aria-live`,No=[`Enter`,` `,`Escape`],Po={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}};function Fo(e){return{...e.computedPosition||{x:0,y:0},width:e.dimensions.width||0,height:e.dimensions.height||0}}function Io(e,t){let n=Math.max(0,Math.min(e.x+e.width,t.x+t.width)-Math.max(e.x,t.x)),r=Math.max(0,Math.min(e.y+e.height,t.y+t.height)-Math.max(e.y,t.y));return Math.ceil(n*r)}function Lo(e){return{width:e.offsetWidth,height:e.offsetHeight}}function Ro(e,t=0,n=1){return Math.min(Math.max(e,t),n)}function zo(e,t){return{x:Ro(e.x,t[0][0],t[1][0]),y:Ro(e.y,t[0][1],t[1][1])}}function Bo(e){let t=e.getRootNode();return`elementFromPoint`in t?t:window.document}function Vo(e){return e&&typeof e==`object`&&`id`in e&&`source`in e&&`target`in e}function Ho(e){return e&&typeof e==`object`&&`id`in e&&`position`in e&&!Vo(e)}function Uo(e){return Ho(e)&&`computedPosition`in e}function Wo(e){return!Number.isNaN(e)&&Number.isFinite(e)}function Go(e){return Wo(e.width)&&Wo(e.height)&&Wo(e.x)&&Wo(e.y)}function Ko(e,t,n){let r={id:e.id.toString(),type:e.type??`default`,dimensions:K({width:0,height:0}),computedPosition:K({z:0,...e.position}),handleBounds:{source:[],target:[]},draggable:void 0,selectable:void 0,connectable:void 0,focusable:void 0,selected:!1,dragging:!1,resizing:!1,initialized:!1,isParent:!1,position:{x:0,y:0},data:Q(e.data)?e.data:{},events:K(Q(e.events)?e.events:{})};return Object.assign(t??r,e,{id:e.id.toString(),parentNode:n})}function qo(e,t,n){let r={id:e.id.toString(),type:e.type??t?.type??`default`,source:e.source.toString(),target:e.target.toString(),sourceHandle:e.sourceHandle?.toString(),targetHandle:e.targetHandle?.toString(),updatable:e.updatable??n?.updatable,selectable:e.selectable??n?.selectable,focusable:e.focusable??n?.focusable,data:Q(e.data)?e.data:{},events:K(Q(e.events)?e.events:{}),label:e.label??``,interactionWidth:e.interactionWidth??n?.interactionWidth,...n??{}};return Object.assign(t??r,e,{id:e.id.toString()})}function Jo(e,t,n,r){let i=typeof e==`string`?e:e.id,a=new Set,o=r===`source`?`target`:`source`;for(let e of n)e[o]===i&&a.add(e[r]);return t.filter(e=>a.has(e.id))}function Yo(...e){if(e.length===3){let[t,n,r]=e;return Jo(t,n,r,`target`)}let[t,n]=e,r=typeof t==`string`?t:t.id;return n.filter(e=>Vo(e)&&e.source===r).map(e=>n.find(t=>Ho(t)&&t.id===e.target))}function Xo(...e){if(e.length===3){let[t,n,r]=e;return Jo(t,n,r,`source`)}let[t,n]=e,r=typeof t==`string`?t:t.id;return n.filter(e=>Vo(e)&&e.target===r).map(e=>n.find(t=>Ho(t)&&t.id===e.source))}function Zo({source:e,sourceHandle:t,target:n,targetHandle:r}){return`vueflow__edge-${e}${t??``}-${n}${r??``}`}function Qo(e,t){return t.some(t=>Vo(t)&&t.source===e.source&&t.target===e.target&&(t.sourceHandle===e.sourceHandle||!t.sourceHandle&&!e.sourceHandle)&&(t.targetHandle===e.targetHandle||!t.targetHandle&&!e.targetHandle))}function $o({x:e,y:t},{x:n,y:r,zoom:i}){return{x:e*i+n,y:t*i+r}}function es({x:e,y:t},{x:n,y:r,zoom:i},a=!1,o=[1,1]){let s={x:(e-n)/i,y:(t-r)/i};return a?Ws(s,o):s}function ts(e,t){return{x:Math.min(e.x,t.x),y:Math.min(e.y,t.y),x2:Math.max(e.x2,t.x2),y2:Math.max(e.y2,t.y2)}}function ns({x:e,y:t,width:n,height:r}){return{x:e,y:t,x2:e+n,y2:t+r}}function rs({x:e,y:t,x2:n,y2:r}){return{x:e,y:t,width:n-e,height:r-t}}function is(e,t){return rs(ts(ns(e),ns(t)))}function as(e){let t={x:1/0,y:1/0,x2:-1/0,y2:-1/0};for(let n=0;n<e.length;n++){let r=e[n];t=ts(t,ns({...r.computedPosition,...r.dimensions}))}return rs(t)}function os(e,t,n={x:0,y:0,zoom:1},r=!1,i=!1){let a={...es(t,n),width:t.width/n.zoom,height:t.height/n.zoom},o=[];for(let t of e){let{dimensions:e,selectable:n=!0,hidden:s=!1}=t,c=e.width??t.width??null,l=e.height??t.height??null;if(i&&!n||s)continue;let u=Io(a,Fo(t)),d=c===null||l===null,f=r&&u>0,p=(c??0)*(l??0);(d||f||u>=p||t.dragging)&&o.push(t)}return o}function ss(e,t){let n=new Set;if(typeof e==`string`)n.add(e);else if(e.length>=1)for(let t of e)n.add(t.id);return t.filter(e=>n.has(e.source)||n.has(e.target))}function cs(e,t){if(typeof e==`number`)return Math.floor((t-t/(1+e))*.5);if(typeof e==`string`&&e.endsWith(`px`)){let t=Number.parseFloat(e);if(!Number.isNaN(t))return Math.floor(t)}if(typeof e==`string`&&e.endsWith(`%`)){let n=Number.parseFloat(e);if(!Number.isNaN(n))return Math.floor(t*n*.01)}return rc(`The padding value "${e}" is invalid. Please provide a number or a string with a valid unit (px or %).`),0}function ls(e,t,n){if(typeof e==`string`||typeof e==`number`){let r=cs(e,n),i=cs(e,t);return{top:r,right:i,bottom:r,left:i,x:i*2,y:r*2}}if(typeof e==`object`){let r=cs(e.top??e.y??0,n),i=cs(e.bottom??e.y??0,n),a=cs(e.left??e.x??0,t),o=cs(e.right??e.x??0,t);return{top:r,right:o,bottom:i,left:a,x:a+o,y:r+i}}return{top:0,right:0,bottom:0,left:0,x:0,y:0}}function us(e,t,n,r,i,a){let{x:o,y:s}=$o(e,{x:t,y:n,zoom:r}),{x:c,y:l}=$o({x:e.x+e.width,y:e.y+e.height},{x:t,y:n,zoom:r}),u=i-c,d=a-l;return{left:Math.floor(o),top:Math.floor(s),right:Math.floor(u),bottom:Math.floor(d)}}function ds(e,t,n,r,i,a=.1){let o=ls(a,t,n),s=(t-o.x)/e.width,c=(n-o.y)/e.height,l=Ro(Math.min(s,c),r,i),u=e.x+e.width/2,d=e.y+e.height/2,f=t/2-u*l,p=n/2-d*l,m=us(e,f,p,l,t,n),h={left:Math.min(m.left-o.left,0),top:Math.min(m.top-o.top,0),right:Math.min(m.right-o.right,0),bottom:Math.min(m.bottom-o.bottom,0)};return{x:f-h.left+h.right,y:p-h.top+h.bottom,zoom:l}}function fs(e,t){return{x:t.x+e.x,y:t.y+e.y,z:(e.z>t.z?e.z:t.z)+1}}function ps(e,t){if(!e.parentNode)return!1;let n=t.get(e.parentNode);return n?n.selected?!0:ps(n,t):!1}function ms(e,t){return e===void 0?``:typeof e==`string`?e:`${t?`${t}__`:``}${Object.keys(e).sort().map(t=>`${t}=${e[t]}`).join(`&`)}`}function hs(e){let t=e.ctrlKey&&Hs()?10:1;return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*t}function gs(e,t,n){return e<t?Ro(Math.abs(e-t),1,t)/t:e>n?-Ro(Math.abs(e-n),1,t)/t:0}function _s(e,t,n=15,r=40){return[gs(e.x,r,t.width-r)*n,gs(e.y,r,t.height-r)*n]}function vs(e,t){if(t){let n=e.position.x+e.dimensions.width-t.dimensions.width,r=e.position.y+e.dimensions.height-t.dimensions.height;if(n>0||r>0||e.position.x<0||e.position.y<0){let i={};if(typeof t.style==`function`?i={...t.style(t)}:t.style&&(i={...t.style}),i.width=i.width??`${t.dimensions.width}px`,i.height=i.height??`${t.dimensions.height}px`,n>0){if(typeof i.width==`string`){let e=Number(i.width.replace(`px`,``));i.width=`${e+n}px`}else i.width+=n}if(r>0){if(typeof i.height==`string`){let e=Number(i.height.replace(`px`,``));i.height=`${e+r}px`}else i.height+=r}if(e.position.x<0){let n=Math.abs(e.position.x);if(t.position.x=t.position.x-n,typeof i.width==`string`){let e=Number(i.width.replace(`px`,``));i.width=`${e+n}px`}else i.width+=n;e.position.x=0}if(e.position.y<0){let n=Math.abs(e.position.y);if(t.position.y=t.position.y-n,typeof i.height==`string`){let e=Number(i.height.replace(`px`,``));i.height=`${e+n}px`}else i.height+=n;e.position.y=0}t.dimensions.width=Number(i.width.toString().replace(`px`,``)),t.dimensions.height=Number(i.height.toString().replace(`px`,``)),t.style=typeof t.style==`function`?e=>{let n=t.style;return{...n(e),...i}}:{...t.style,...i}}}}function ys(e,t){let n=e.filter(e=>e.type===`add`||e.type===`remove`);for(let e of n)if(e.type===`add`)t.findIndex(t=>t.id===e.item.id)===-1&&t.push(e.item);else if(e.type===`remove`){let n=t.findIndex(t=>t.id===e.id);n!==-1&&t.splice(n,1)}let r=t.map(e=>e.id);for(let n of t)for(let i of e)if(i.id===n.id)switch(i.type){case`select`:n.selected=i.selected;break;case`position`:if(Uo(n)&&(i.position!==void 0&&(n.position=i.position),i.dragging!==void 0&&(n.dragging=i.dragging),n.expandParent&&n.parentNode)){let e=t[r.indexOf(n.parentNode)];e&&Uo(e)&&vs(n,e)}break;case`dimensions`:if(Uo(n)&&(i.dimensions!==void 0&&(n.dimensions=i.dimensions),i.updateStyle!==void 0&&i.updateStyle&&(n.style={...n.style||{},width:`${i.dimensions?.width}px`,height:`${i.dimensions?.height}px`}),i.resizing!==void 0&&(n.resizing=i.resizing),n.expandParent&&n.parentNode)){let e=t[r.indexOf(n.parentNode)];e&&Uo(e)&&(e.dimensions.width&&e.dimensions.height?vs(n,e):S(()=>{vs(n,e)}))}}return t}function bs(e,t){return{id:e,type:`select`,selected:t}}function xs(e){return{item:e,type:`add`}}function Ss(e){return{id:e,type:`remove`}}function Cs(e,t,n,r,i){return{id:e,source:t,target:n,sourceHandle:r||null,targetHandle:i||null,type:`remove`}}function ws(e,t=new Set,n=!1){let r=[];for(let[i,a]of e){let e=t.has(i);(a.selected!==void 0||e)&&a.selected!==e&&(n&&(a.selected=e),r.push(bs(a.id,e)))}return r}var Ts=()=>{};function Y(e){let t=new Set,n=Ts,r=()=>!1,i=()=>t.size>0||r(),a=e=>{n=e},o=()=>{n=Ts},s=e=>{r=e},c=()=>{r=()=>!1},l=e=>{t.delete(e)};return{on:e=>{t.add(e);let n=()=>l(e);return ne(n),{off:n}},off:l,trigger:r=>{let a=[n];return i()?a.push(...t):e&&a.push(e),Promise.allSettled(a.map(e=>e(r)))},hasListeners:i,listeners:t,setEmitter:a,removeEmitter:o,setHasEmitListeners:s,removeHasEmitListeners:c}}function Es(e,t,n){let r=e;do{if(r&&r.matches(t))return!0;if(r===n)return!1;r=r.parentElement}while(r);return!1}function Ds(e,t,n,r){let i=new Map;for(let[a,o]of e)(o.selected||o.id===r)&&(!o.parentNode||!ps(o,e))&&(o.draggable||t&&o.draggable===void 0)&&e.get(a)&&i.set(a,{id:o.id,position:o.position||{x:0,y:0},distance:{x:n.x-o.computedPosition?.x||0,y:n.y-o.computedPosition?.y||0},from:{x:o.computedPosition.x,y:o.computedPosition.y},extent:o.extent,parentNode:o.parentNode,dimensions:{...o.dimensions},expandParent:o.expandParent});return Array.from(i.values())}function Os({id:e,dragItems:t,findNode:n}){let r=[];for(let e of t){let t=n(e.id);t&&r.push(t)}return[e?r.find(t=>t.id===e):r[0],r]}function ks(e){if(Array.isArray(e))switch(e.length){case 1:return[e[0],e[0],e[0],e[0]];case 2:return[e[0],e[1],e[0],e[1]];case 3:return[e[0],e[1],e[2],e[1]];case 4:return e;default:return[0,0,0,0]}return[e,e,e,e]}function As(e,t,n){let[r,i,a,o]=typeof e==`string`?[0,0,0,0]:ks(e.padding);return n&&n.computedPosition.x!==void 0&&n.computedPosition.y!==void 0&&n.dimensions.width!==void 0&&n.dimensions.height!==void 0?[[n.computedPosition.x+o,n.computedPosition.y+r],[n.computedPosition.x+n.dimensions.width-i,n.computedPosition.y+n.dimensions.height-a]]:!1}function js(e,t,n,r){let i=e.extent||n;if((i===`parent`||!Array.isArray(i)&&i?.range===`parent`)&&!e.expandParent){if(e.parentNode&&r&&e.dimensions.width&&e.dimensions.height){let t=As(i,e,r);t&&(i=t)}else t(new Z(X.NODE_EXTENT_INVALID,e.id)),i=n}else if(Array.isArray(i)){let e=r?.computedPosition.x||0,t=r?.computedPosition.y||0;i=[[i[0][0]+e,i[0][1]+t],[i[1][0]+e,i[1][1]+t]]}else if(i!==`parent`&&i?.range&&Array.isArray(i.range)){let[e,t,n,a]=ks(i.padding),o=r?.computedPosition.x||0,s=r?.computedPosition.y||0;i=[[i.range[0][0]+o+a,i.range[0][1]+s+e],[i.range[1][0]+o-t,i.range[1][1]+s-n]]}return i===`parent`?[[-1/0,-1/0],[1/0,1/0]]:i}function Ms({width:e,height:t},n){return[n[0],[n[1][0]-(e||0),n[1][1]-(t||0)]]}function Ns(e,t,n,r,i){let a=zo(t,Ms(e.dimensions,js(e,n,r,i)));return{position:{x:a.x-(i?.computedPosition.x||0),y:a.y-(i?.computedPosition.y||0)},computedPosition:a}}function Ps(e,t,n=J.Left,r=!1){let i=(t?.x??0)+e.computedPosition.x,a=(t?.y??0)+e.computedPosition.y,{width:o,height:s}=t??Us(e);if(r)return{x:i+o/2,y:a+s/2};switch(t?.position??n){case J.Top:return{x:i+o/2,y:a};case J.Right:return{x:i+o,y:a+s/2};case J.Bottom:return{x:i+o/2,y:a+s};case J.Left:return{x:i,y:a+s/2}}}function Fs(e,t){return e&&(t?e.find(e=>e.id===t):e[0])||null}function Is({sourcePos:e,targetPos:t,sourceWidth:n,sourceHeight:r,targetWidth:i,targetHeight:a,width:o,height:s,viewport:c}){let l={x:Math.min(e.x,t.x),y:Math.min(e.y,t.y),x2:Math.max(e.x+n,t.x+i),y2:Math.max(e.y+r,t.y+a)};l.x===l.x2&&(l.x2+=1),l.y===l.y2&&(l.y2+=1);let u=ns({x:(0-c.x)/c.zoom,y:(0-c.y)/c.zoom,width:o/c.zoom,height:s/c.zoom}),d=Math.max(0,Math.min(u.x2,l.x2)-Math.max(u.x,l.x)),f=Math.max(0,Math.min(u.y2,l.y2)-Math.max(u.y,l.y));return Math.ceil(d*f)>0}function Ls(e,t,n=!1){let r=typeof e.zIndex==`number`,i=r?e.zIndex:0,a=t(e.source),o=t(e.target);return!a||!o?0:(n&&(i=r?e.zIndex:Math.max(a.computedPosition.z||0,o.computedPosition.z||0)),i)}var X=(e=>(e.MISSING_STYLES=`MISSING_STYLES`,e.MISSING_VIEWPORT_DIMENSIONS=`MISSING_VIEWPORT_DIMENSIONS`,e.NODE_INVALID=`NODE_INVALID`,e.NODE_NOT_FOUND=`NODE_NOT_FOUND`,e.NODE_MISSING_PARENT=`NODE_MISSING_PARENT`,e.NODE_TYPE_MISSING=`NODE_TYPE_MISSING`,e.NODE_EXTENT_INVALID=`NODE_EXTENT_INVALID`,e.EDGE_INVALID=`EDGE_INVALID`,e.EDGE_NOT_FOUND=`EDGE_NOT_FOUND`,e.EDGE_SOURCE_MISSING=`EDGE_SOURCE_MISSING`,e.EDGE_TARGET_MISSING=`EDGE_TARGET_MISSING`,e.EDGE_TYPE_MISSING=`EDGE_TYPE_MISSING`,e.EDGE_SOURCE_TARGET_SAME=`EDGE_SOURCE_TARGET_SAME`,e.EDGE_SOURCE_TARGET_MISSING=`EDGE_SOURCE_TARGET_MISSING`,e.EDGE_ORPHANED=`EDGE_ORPHANED`,e.USEVUEFLOW_OPTIONS=`USEVUEFLOW_OPTIONS`,e))(X||{}),Rs={MISSING_STYLES:()=>`It seems that you haven't loaded the necessary styles. Please import '@vue-flow/core/dist/style.css' to ensure that the graph is rendered correctly`,MISSING_VIEWPORT_DIMENSIONS:()=>`The Vue Flow parent container needs a width and a height to render the graph`,NODE_INVALID:e=>`Node is invalid
|
|
7
|
+
Node: ${e}`,NODE_NOT_FOUND:e=>`Node not found
|
|
8
|
+
Node: ${e}`,NODE_MISSING_PARENT:(e,t)=>`Node is missing a parent
|
|
9
|
+
Node: ${e}
|
|
10
|
+
Parent: ${t}`,NODE_TYPE_MISSING:e=>`Node type is missing
|
|
11
|
+
Type: ${e}`,NODE_EXTENT_INVALID:e=>`Only child nodes can use a parent extent
|
|
12
|
+
Node: ${e}`,EDGE_INVALID:e=>`An edge needs a source and a target
|
|
13
|
+
Edge: ${e}`,EDGE_SOURCE_MISSING:(e,t)=>`Edge source is missing
|
|
14
|
+
Edge: ${e}
|
|
15
|
+
Source: ${t}`,EDGE_TARGET_MISSING:(e,t)=>`Edge target is missing
|
|
16
|
+
Edge: ${e}
|
|
17
|
+
Target: ${t}`,EDGE_TYPE_MISSING:e=>`Edge type is missing
|
|
18
|
+
Type: ${e}`,EDGE_SOURCE_TARGET_SAME:(e,t,n)=>`Edge source and target are the same
|
|
19
|
+
Edge: ${e}
|
|
20
|
+
Source: ${t}
|
|
21
|
+
Target: ${n}`,EDGE_SOURCE_TARGET_MISSING:(e,t,n)=>`Edge source or target is missing
|
|
22
|
+
Edge: ${e}
|
|
23
|
+
Source: ${t}
|
|
24
|
+
Target: ${n}`,EDGE_ORPHANED:e=>`Edge was orphaned (suddenly missing source or target) and has been removed
|
|
25
|
+
Edge: ${e}`,EDGE_NOT_FOUND:e=>`Edge not found
|
|
26
|
+
Edge: ${e}`,USEVUEFLOW_OPTIONS:()=>`The options parameter is deprecated and will be removed in the next major version. Please use the id parameter instead`},Z=class extends Error{constructor(e,...t){super(Rs[e]?.call(Rs,...t)),this.name=`VueFlowError`,this.code=e,this.args=t}};function zs(e){return`clientX`in e}function Bs(e){return`sourceEvent`in e}function Vs(e,t){let n=zs(e),r,i;return n?(r=e.clientX,i=e.clientY):`touches`in e&&e.touches.length>0?(r=e.touches[0].clientX,i=e.touches[0].clientY):`changedTouches`in e&&e.changedTouches.length>0?(r=e.changedTouches[0].clientX,i=e.changedTouches[0].clientY):(r=0,i=0),{x:r-(t?.left??0),y:i-(t?.top??0)}}var Hs=()=>typeof navigator<`u`&&(navigator==null?void 0:navigator.userAgent)?.indexOf(`Mac`)>=0;function Us(e){return{width:e.dimensions?.width??e.width??0,height:e.dimensions?.height??e.height??0}}function Ws(e,t=[1,1]){return{x:t[0]*Math.round(e.x/t[0]),y:t[1]*Math.round(e.y/t[1])}}var Gs=()=>!0;function Ks(e){e?.classList.remove(`valid`,`connecting`,`vue-flow__handle-valid`,`vue-flow__handle-connecting`)}function qs(e,t,n){let r=[],i={x:e.x-n,y:e.y-n,width:n*2,height:n*2};for(let e of t.values())Io(i,Fo(e))>0&&r.push(e);return r}var Js=250;function Ys(e,t,n,r){let i=[],a=1/0,o=qs(e,n,t+Js);for(let n of o){let o=[...n.handleBounds?.source??[],...n.handleBounds?.target??[]];for(let s of o){if(r.nodeId===s.nodeId&&r.type===s.type&&r.id===s.id)continue;let{x:o,y:c}=Ps(n,s,s.position,!0),l=Math.sqrt((o-e.x)**2+(c-e.y)**2);l>t||(l<a?(i=[{...s,x:o,y:c}],a=l):l===a&&i.push({...s,x:o,y:c}))}}if(!i.length)return null;if(i.length>1){let e=r.type===`source`?`target`:`source`;return i.find(t=>t.type===e)??i[0]}return i[0]}function Xs(e,{handle:t,connectionMode:n,fromNodeId:r,fromHandleId:i,fromType:a,doc:o,lib:s,flowId:c,isValidConnection:l=Gs},u,d,f,p){let m=a===`target`,h=t?o.querySelector(`.${s}-flow__handle[data-id="${c}-${t?.nodeId}-${t?.id}-${t?.type}"]`):null,{x:g,y:_}=Vs(e),v=o.elementFromPoint(g,_),y=v?.classList.contains(`${s}-flow__handle`)?v:h,b={handleDomNode:y,isValid:!1,connection:null,toHandle:null};if(y){let e=Zs(void 0,y),t=y.getAttribute(`data-nodeid`),a=y.getAttribute(`data-handleid`),o=y.classList.contains(`connectable`),s=y.classList.contains(`connectableend`);if(!t||!e)return b;let c={source:m?t:r,sourceHandle:m?a:i,target:m?r:t,targetHandle:m?i:a};b.connection=c,b.isValid=o&&s&&(n===vo.Strict?m&&e===`source`||!m&&e===`target`:t!==r||a!==i)&&l(c,{nodes:d,edges:u,sourceNode:f(c.source),targetNode:f(c.target)}),b.toHandle=ec(t,e,a,p,n,!0)}return b}function Zs(e,t){return e||(t?.classList.contains(`target`)?`target`:t?.classList.contains(`source`)?`source`:null)}function Qs(e,t){let n=null;return t?n=`valid`:e&&!t&&(n=`invalid`),n}function $s(e,t){let n=null;return t?n=!0:e&&!t&&(n=!1),n}function ec(e,t,n,r,i,a=!1){let o=r.get(e);if(!o)return null;let s=i===vo.Strict?o.handleBounds?.[t]:[...o.handleBounds?.source??[],...o.handleBounds?.target??[]],c=(n?s?.find(e=>e.id===n):s?.[0])??null;return c&&a?{...c,...Ps(o,c,c.position,!0)}:c}var tc={[J.Left]:J.Right,[J.Right]:J.Left,[J.Top]:J.Bottom,[J.Bottom]:J.Top},nc=[`production`,`prod`];function rc(e,...t){ic()&&console.warn(`[Vue Flow]: ${e}`,...t)}function ic(){return!nc.includes(`development`)}function ac(e,t,n,r,i){let a=t.querySelectorAll(`.vue-flow__handle.${e}`);return a?.length?Array.from(a).map(t=>{let a=t.getBoundingClientRect();return{id:t.getAttribute(`data-handleid`),type:e,nodeId:i,position:t.getAttribute(`data-handlepos`),x:(a.left-n.left)/r,y:(a.top-n.top)/r,...Lo(t)}}):null}function oc(e,t,n,r,i,a=!1,o){i.value=!1,e.selected?(a||e.selected&&t)&&(r([e]),S(()=>{o.blur()})):n([e])}function Q(e){return h(e)!==void 0}function sc(e,t,n,r){if(!e||!e.source||!e.target)return n(new Z(X.EDGE_INVALID,e?.id??`[ID UNKNOWN]`)),!1;let i;return i=Vo(e)?e:{...e,id:Zo(e)},i=qo(i,void 0,r),!Qo(i,t)&&i}function cc(e,t,n,r,i){if(!t.source||!t.target)return i(new Z(X.EDGE_INVALID,e.id)),!1;if(!n)return i(new Z(X.EDGE_NOT_FOUND,e.id)),!1;let{id:a,...o}=e;return{...o,id:r?Zo(t):a,source:t.source,target:t.target,sourceHandle:t.sourceHandle,targetHandle:t.targetHandle}}function lc(e,t,n){let r={},i=[];for(let a=0;a<e.length;++a){let o=e[a];if(!Ho(o)){n(new Z(X.NODE_INVALID,o?.id));continue}let s=Ko(o,t(o.id),o.parentNode);o.parentNode&&(r[o.parentNode]=!0),i[a]=s}for(let e of i){let a=t(e.parentNode)||i.find(t=>t.id===e.parentNode);e.parentNode&&!a&&n(new Z(X.NODE_MISSING_PARENT,e.id,e.parentNode)),(e.parentNode||r[e.id])&&(r[e.id]&&(e.isParent=!0),a&&(a.isParent=!0))}return i}function uc(e,t,n,r,i,a){let o=i,s=r.get(o)||new Map;r.set(o,s.set(n,t)),o=`${i}-${e}`;let c=r.get(o)||new Map;if(r.set(o,c.set(n,t)),a){o=`${i}-${e}-${a}`;let s=r.get(o)||new Map;r.set(o,s.set(n,t))}}function dc(e,t,n){e.clear();for(let t of n){let{source:n,target:r,sourceHandle:i=null,targetHandle:a=null}=t,o={edgeId:t.id,source:n,target:r,sourceHandle:i,targetHandle:a},s=`${n}-${i}--${r}-${a}`;uc(`source`,o,`${r}-${a}--${n}-${i}`,e,n,i),uc(`target`,o,s,e,r,a)}}function fc(e,t){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}function pc(e,t,n,r,i,a,o,s){let c=[];for(let l of e){let e=Vo(l)?l:sc(l,s,i,a);if(!e)continue;let u=n(e.source),d=n(e.target);if(!u||!d){i(new Z(X.EDGE_SOURCE_TARGET_MISSING,e.id,e.source,e.target));continue}if(!u){i(new Z(X.EDGE_SOURCE_MISSING,e.id,e.source));continue}if(!d){i(new Z(X.EDGE_TARGET_MISSING,e.id,e.target));continue}if(t&&!t(e,{edges:s,nodes:o,sourceNode:u,targetNode:d})){i(new Z(X.EDGE_INVALID,e.id));continue}let f=r(e.id);c.push({...qo(e,f,a),sourceNode:u,targetNode:d})}return c}var mc=Symbol(`vueFlow`),hc=Symbol(`nodeId`),gc=Symbol(`nodeRef`),_c=Symbol(`edgeId`),vc=Symbol(`edgeRef`),yc=Symbol(`slots`);function bc(e){let{vueFlowRef:t,snapToGrid:n,snapGrid:r,noDragClassName:i,nodeLookup:a,nodeExtent:o,nodeDragThreshold:s,viewport:c,autoPanOnNodeDrag:l,autoPanSpeed:u,nodesDraggable:f,panBy:m,findNode:h,multiSelectionActive:g,nodesSelectionActive:_,selectNodesOnDrag:v,removeSelectedElements:y,addSelectedNodes:b,updateNodePositions:x,emits:S}=$(),{onStart:C,onDrag:w,onStop:T,onClick:E,el:D,disabled:O,id:k,selectable:j,dragHandle:M}=e,N=p(!1),P=[],F,I=null,L={x:void 0,y:void 0},R={x:0,y:0},z=null,B=!1,ee=!1,V=0,H=!1,U=Cc(),W=({x:e,y:t})=>{L={x:e,y:t};let i=!1;if(P=P.map(a=>{let s={x:e-a.distance.x,y:t-a.distance.y},{computedPosition:c}=Ns(a,n.value?Ws(s,r.value):s,S.error,o.value,a.parentNode?h(a.parentNode):void 0);return i=i||a.position.x!==c.x||a.position.y!==c.y,a.position=c,a}),ee||=i,i&&(x(P,!0,!0),N.value=!0,z)){let[e,t]=Os({id:k,dragItems:P,findNode:h});w({event:z,node:e,nodes:t})}},G=()=>{if(!I)return;let[e,t]=_s(R,I,u.value);if(e!==0||t!==0){let n={x:(L.x??0)-e/c.value.zoom,y:(L.y??0)-t/c.value.zoom};m({x:e,y:t})&&W(n)}V=requestAnimationFrame(G)},te=(e,t)=>{B=!0;let n=h(k);!v.value&&!g.value&&n&&(n.selected||y()),n&&d(j)&&v.value&&oc(n,g.value,b,y,_,!1,t);let r=U(e.sourceEvent);if(L=r,P=Ds(a.value,f.value,r,k),P.length){let[t,n]=Os({id:k,dragItems:P,findNode:h});C({event:e.sourceEvent,node:t,nodes:n})}},K=(e,n)=>{e.sourceEvent.type===`touchmove`&&e.sourceEvent.touches.length>1||(ee=!1,s.value===0&&te(e,n),L=U(e.sourceEvent),I=t.value?.getBoundingClientRect()||null,R=Vs(e.sourceEvent,I))},q=(e,t)=>{let n=U(e.sourceEvent);if(!H&&B&&l.value&&(H=!0,G()),!B){let r=n.xSnapped-(L.x??0),i=n.ySnapped-(L.y??0);Math.sqrt(r*r+i*i)>s.value&&te(e,t)}(L.x!==n.xSnapped||L.y!==n.ySnapped)&&P.length&&B&&(z=e.sourceEvent,R=Vs(e.sourceEvent,I),W(n))},ne=e=>{let t=!1;if(!B&&!N.value&&!g.value){let n=e.sourceEvent,r=U(n),i=r.xSnapped-(L.x??0),a=r.ySnapped-(L.y??0),o=Math.sqrt(i*i+a*a);o!==0&&o<=s.value&&(E?.(n),t=!0)}if(P.length&&!t){ee&&=(x(P,!1,!1),!1);let[t,n]=Os({id:k,dragItems:P,findNode:h});T({event:e.sourceEvent,node:t,nodes:n})}P=[],N.value=!1,H=!1,B=!1,L={x:void 0,y:void 0},cancelAnimationFrame(V)};return A([()=>d(O),D],([e,t],n,r)=>{if(t){let n=jn(t);e||(F=Kn().on(`start`,e=>K(e,t)).on(`drag`,e=>q(e,t)).on(`end`,e=>ne(e)).filter(e=>{let n=e.target,r=d(M);return!e.button&&(!i.value||!Es(n,`.${i.value}`,t)&&(!r||Es(n,r,t)))}),n.call(F)),r(()=>{n.on(`.drag`,null),F&&(F.on(`start`,null),F.on(`drag`,null),F.on(`end`,null))})}}),N}function xc(){return{doubleClick:Y(),click:Y(),mouseEnter:Y(),mouseMove:Y(),mouseLeave:Y(),contextMenu:Y(),updateStart:Y(),update:Y(),updateEnd:Y()}}function Sc(e,t){let n=xc();return n.doubleClick.on(n=>{var r,i;t.edgeDoubleClick(n),(i=(r=e.events)?.doubleClick)==null||i.call(r,n)}),n.click.on(n=>{var r,i;t.edgeClick(n),(i=(r=e.events)?.click)==null||i.call(r,n)}),n.mouseEnter.on(n=>{var r,i;t.edgeMouseEnter(n),(i=(r=e.events)?.mouseEnter)==null||i.call(r,n)}),n.mouseMove.on(n=>{var r,i;t.edgeMouseMove(n),(i=(r=e.events)?.mouseMove)==null||i.call(r,n)}),n.mouseLeave.on(n=>{var r,i;t.edgeMouseLeave(n),(i=(r=e.events)?.mouseLeave)==null||i.call(r,n)}),n.contextMenu.on(n=>{var r,i;t.edgeContextMenu(n),(i=(r=e.events)?.contextMenu)==null||i.call(r,n)}),n.updateStart.on(n=>{var r,i;t.edgeUpdateStart(n),(i=(r=e.events)?.updateStart)==null||i.call(r,n)}),n.update.on(n=>{var r,i;t.edgeUpdate(n),(i=(r=e.events)?.update)==null||i.call(r,n)}),n.updateEnd.on(n=>{var r,i;t.edgeUpdateEnd(n),(i=(r=e.events)?.updateEnd)==null||i.call(r,n)}),Object.entries(n).reduce((e,[t,n])=>(e.emit[t]=n.trigger,e.on[t]=n.on,e),{emit:{},on:{}})}function Cc(){let{viewport:e,snapGrid:t,snapToGrid:n,vueFlowRef:r}=$();return i=>{let a=r.value?.getBoundingClientRect()??{left:0,top:0},{x:o,y:s}=Vs(Bs(i)?i.sourceEvent:i,a),c=es({x:o,y:s},e.value),{x:l,y:u}=n.value?Ws(c,t.value):c;return{xSnapped:l,ySnapped:u,...c}}}function wc(){return!0}function Tc({handleId:e,nodeId:t,type:n,isValidConnection:r,edgeUpdaterType:i,onEdgeUpdate:a,onEdgeUpdateEnd:o}){let{id:s,vueFlowRef:c,connectionMode:l,connectionRadius:u,connectOnClick:f,connectionClickStartHandle:p,nodesConnectable:m,autoPanOnConnect:h,autoPanSpeed:g,findNode:_,panBy:v,startConnection:y,updateConnection:b,endConnection:x,emits:S,viewport:C,edges:w,nodes:T,isValidConnection:E,nodeLookup:D}=$(),O=null,k=!1,A=null;function j(f){let p=d(n)===`target`,m=zs(f),j=Bo(f.target),M=f.currentTarget;if(M&&(m&&f.button===0||!m)){let n=function(n){H=Vs(n,B),F=Ys(es(H,C.value,!1,[1,1]),u.value,D.value,G),U||=(W(),!0);let r=Xs(n,{handle:F,connectionMode:l.value,fromNodeId:d(t),fromHandleId:d(e),fromType:p?`target`:`source`,isValidConnection:P,doc:j,lib:`vue`,flowId:s,nodeLookup:D.value},w.value,T.value,_,D.value);A=r.handleDomNode,O=r.connection,k=$s(!!F,r.isValid);let i={...q,isValid:k,to:r.toHandle&&k?$o({x:r.toHandle.x,y:r.toHandle.y},C.value):H,toHandle:r.toHandle,toPosition:k&&r.toHandle?r.toHandle.position:tc[G.position],toNode:r.toHandle?D.value.get(r.toHandle.nodeId):null};if(k&&F&&q?.toHandle&&i.toHandle&&q.toHandle.type===i.toHandle.type&&q.toHandle.nodeId===i.toHandle.nodeId&&q.toHandle.id===i.toHandle.id&&q.to.x===i.to.x&&q.to.y===i.to.y)return;let a=F??r.toHandle;if(b(a&&k?$o({x:a.x,y:a.y},C.value):H,a,Qs(!!a,k)),q=i,!F&&!k&&!A)return Ks(V);O&&O.source!==O.target&&A&&(Ks(V),V=A,A.classList.add(`connecting`,`vue-flow__handle-connecting`),A.classList.toggle(`valid`,!!k),A.classList.toggle(`vue-flow__handle-valid`,!!k))},m=function(e){`touches`in e&&e.touches.length>0||((F||A)&&O&&k&&(a?a(e,O):S.connect(O)),S.connectEnd(e),i&&o?.(e),Ks(V),cancelAnimationFrame(I),x(e),U=!1,k=!1,O=null,A=null,j.removeEventListener(`mousemove`,n),j.removeEventListener(`mouseup`,m),j.removeEventListener(`touchmove`,n),j.removeEventListener(`touchend`,m))},N=_(d(t)),P=d(r)||E.value||wc;!P&&N&&(P=(p?N.isValidSourcePos:N.isValidTargetPos)||wc);let F,I=0,{x:L,y:R}=Vs(f),z=Zs(d(i),M),B=c.value?.getBoundingClientRect();if(!B||!z)return;let ee=ec(d(t),z,d(e),D.value,l.value);if(!ee)return;let V,H=Vs(f,B),U=!1,W=()=>{if(!h.value)return;let[e,t]=_s(H,B,g.value);v({x:e,y:t}),I=requestAnimationFrame(W)},G={...ee,nodeId:d(t),type:z,position:ee.position},te=D.value.get(d(t)),K={inProgress:!0,isValid:null,from:Ps(te,G,J.Left,!0),fromHandle:G,fromPosition:G.position,fromNode:te,to:H,toHandle:null,toPosition:tc[G.position],toNode:null};y({nodeId:d(t),id:d(e),type:z,position:M?.getAttribute(`data-handlepos`)||J.Top,...H},{x:L-B.left,y:R-B.top}),S.connectStart({event:f,nodeId:d(t),handleId:d(e),handleType:z});let q=K;j.addEventListener(`mousemove`,n),j.addEventListener(`mouseup`,m),j.addEventListener(`touchmove`,n),j.addEventListener(`touchend`,m)}}function M(i){if(!f.value)return;let a=d(n)===`target`;if(!p.value){S.clickConnectStart({event:i,nodeId:d(t),handleId:d(e)}),y({nodeId:d(t),type:d(n),id:d(e),position:J.Top,...Vs(i)},void 0,!0);return}let o=d(r)||E.value||wc,c=_(d(t));if(!o&&c&&(o=(a?c.isValidSourcePos:c.isValidTargetPos)||wc),c&&(c.connectable===void 0?m.value:c.connectable)===!1)return;let u=Bo(i.target),h=Xs(i,{handle:{nodeId:d(t),id:d(e),type:d(n),position:J.Top,...Vs(i)},connectionMode:l.value,fromNodeId:p.value.nodeId,fromHandleId:p.value.id??null,fromType:p.value.type,isValidConnection:o,doc:u,lib:`vue`,flowId:s,nodeLookup:D.value},w.value,T.value,_,D.value),g=h.connection?.source===h.connection?.target;h.isValid&&h.connection&&!g&&S.connect(h.connection),S.clickConnectEnd(i),x(i,!0)}return{handlePointerDown:j,handleClick:M}}function Ec(){return r(hc,``)}function Dc(e){let t=e??Ec()??``,n=r(gc,y(null)),{findNode:i,edges:a,emits:o}=$(),s=i(t);return s||o.error(new Z(X.NODE_NOT_FOUND,t)),{id:t,nodeEl:n,node:s,parentNode:g(()=>i(s.parentNode)),connectedEdges:g(()=>ss([s],a.value))}}function Oc(){return{doubleClick:Y(),click:Y(),mouseEnter:Y(),mouseMove:Y(),mouseLeave:Y(),contextMenu:Y(),dragStart:Y(),drag:Y(),dragStop:Y()}}function kc(e,t){let n=Oc();return n.doubleClick.on(n=>{var r,i;t.nodeDoubleClick(n),(i=(r=e.events)?.doubleClick)==null||i.call(r,n)}),n.click.on(n=>{var r,i;t.nodeClick(n),(i=(r=e.events)?.click)==null||i.call(r,n)}),n.mouseEnter.on(n=>{var r,i;t.nodeMouseEnter(n),(i=(r=e.events)?.mouseEnter)==null||i.call(r,n)}),n.mouseMove.on(n=>{var r,i;t.nodeMouseMove(n),(i=(r=e.events)?.mouseMove)==null||i.call(r,n)}),n.mouseLeave.on(n=>{var r,i;t.nodeMouseLeave(n),(i=(r=e.events)?.mouseLeave)==null||i.call(r,n)}),n.contextMenu.on(n=>{var r,i;t.nodeContextMenu(n),(i=(r=e.events)?.contextMenu)==null||i.call(r,n)}),n.dragStart.on(n=>{var r,i;t.nodeDragStart(n),(i=(r=e.events)?.dragStart)==null||i.call(r,n)}),n.drag.on(n=>{var r,i;t.nodeDrag(n),(i=(r=e.events)?.drag)==null||i.call(r,n)}),n.dragStop.on(n=>{var r,i;t.nodeDragStop(n),(i=(r=e.events)?.dragStop)==null||i.call(r,n)}),Object.entries(n).reduce((e,[t,n])=>(e.emit[t]=n.trigger,e.on[t]=n.on,e),{emit:{},on:{}})}function Ac(){let{getSelectedNodes:e,nodeExtent:t,updateNodePositions:n,findNode:r,snapGrid:i,snapToGrid:a,nodesDraggable:o,emits:s}=$();return(c,l=!1)=>{let u=a.value?i.value[0]:5,d=a.value?i.value[1]:5,f=l?4:1,p=c.x*u*f,m=c.y*d*f,h=[];for(let n of e.value)if(n.draggable||o&&n.draggable===void 0){let{position:e}=Ns(n,{x:n.computedPosition.x+p,y:n.computedPosition.y+m},s.error,t.value,n.parentNode?r(n.parentNode):void 0);h.push({id:n.id,position:e,from:n.position,distance:{x:c.x,y:c.y},dimensions:n.dimensions})}n(h,!0,!1)}}var jc=.1,Mc=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2;function Nc(){return rc(`Viewport not initialized yet.`),Promise.resolve(!1)}var Pc={zoomIn:Nc,zoomOut:Nc,zoomTo:Nc,fitView:Nc,setCenter:Nc,fitBounds:Nc,project:e=>e,screenToFlowCoordinate:e=>e,flowToScreenCoordinate:e=>e,setViewport:Nc,setTransform:Nc,getViewport:()=>({x:0,y:0,zoom:1}),getTransform:()=>({x:0,y:0,zoom:1}),viewportInitialized:!1};function Fc(e){function t(t,n){return new Promise(r=>{e.d3Selection&&e.d3Zoom?e.d3Zoom.interpolate(n?.interpolate===`linear`?Yr:li).scaleBy(Ic(e.d3Selection,n?.duration,n?.ease,()=>{r(!0)}),t):r(!1)})}function n(t,n,r,i){return new Promise(a=>{var o;let{x:s,y:c}=zo({x:-t,y:-n},e.translateExtent),l=ao.translate(-s,-c).scale(r);e.d3Selection&&e.d3Zoom?(o=e.d3Zoom)==null||o.interpolate(i?.interpolate===`linear`?Yr:li).transform(Ic(e.d3Selection,i?.duration,i?.ease,()=>{a(!0)}),l):a(!1)})}return g(()=>e.d3Zoom&&e.d3Selection&&e.dimensions.width&&e.dimensions.height?{viewportInitialized:!0,zoomIn:e=>t(1.2,e),zoomOut:e=>t(1/1.2,e),zoomTo:(t,n)=>new Promise(r=>{e.d3Selection&&e.d3Zoom?e.d3Zoom.interpolate(n?.interpolate===`linear`?Yr:li).scaleTo(Ic(e.d3Selection,n?.duration,n?.ease,()=>{r(!0)}),t):r(!1)}),setViewport:(e,t)=>n(e.x,e.y,e.zoom,t),setTransform:(e,t)=>n(e.x,e.y,e.zoom,t),getViewport:()=>({x:e.viewport.x,y:e.viewport.y,zoom:e.viewport.zoom}),getTransform:()=>({x:e.viewport.x,y:e.viewport.y,zoom:e.viewport.zoom}),fitView:(t={padding:jc,includeHiddenNodes:!1,duration:0})=>{let r=[];for(let n of e.nodes)n.dimensions.width&&n.dimensions.height&&(t?.includeHiddenNodes||!n.hidden)&&(!t.nodes?.length||t.nodes?.length&&t.nodes.includes(n.id))&&r.push(n);if(!r.length)return Promise.resolve(!1);let{x:i,y:a,zoom:o}=ds(as(r),e.dimensions.width,e.dimensions.height,t.minZoom??e.minZoom,t.maxZoom??e.maxZoom,t.padding??jc);return n(i,a,o,t)},setCenter:(t,r,i)=>{let a=i?.zoom===void 0?e.maxZoom:i.zoom;return n(e.dimensions.width/2-t*a,e.dimensions.height/2-r*a,a,i)},fitBounds:(t,r={padding:jc})=>{let{x:i,y:a,zoom:o}=ds(t,e.dimensions.width,e.dimensions.height,e.minZoom,e.maxZoom,r.padding??jc);return n(i,a,o,r)},project:t=>es(t,e.viewport,e.snapToGrid,e.snapGrid),screenToFlowCoordinate:t=>{if(e.vueFlowRef){let{x:n,y:r}=e.vueFlowRef.getBoundingClientRect();return es({x:t.x-n,y:t.y-r},e.viewport,e.snapToGrid,e.snapGrid)}return{x:0,y:0}},flowToScreenCoordinate:t=>{if(e.vueFlowRef){let{x:n,y:r}=e.vueFlowRef.getBoundingClientRect();return $o({x:t.x+n,y:t.y+r},e.viewport)}return{x:0,y:0}}}:Pc)}function Ic(e,t=0,n=Mc,r=()=>{}){let i=typeof t==`number`&&t>0;return i||r(),i?e.transition().duration(t).ease(n).on(`end`,r):e}function Lc(e,t,r){let i=M(!0);return i.run(()=>{i.run(()=>{let t,n,i=!!(r.nodes.value.length||r.edges.value.length);t=me([e.modelValue,()=>e.modelValue?.value?.length],([e])=>{e&&Array.isArray(e)&&(n?.pause(),r.setElements(e),!n&&!i&&e.length?i=!0:n?.resume())}),n=me([r.nodes,r.edges,()=>r.edges.value.length,()=>r.nodes.value.length],([n,r])=>{e.modelValue?.value&&Array.isArray(e.modelValue.value)&&(t?.pause(),e.modelValue.value=[...n,...r],S(()=>{t?.resume()}))},{immediate:i}),_(()=>{t?.stop(),n?.stop()})}),i.run(()=>{let t,n,i=!!r.nodes.value.length;t=me([e.nodes,()=>e.nodes?.value?.length],([e])=>{e&&Array.isArray(e)&&(n?.pause(),r.setNodes(e),!n&&!i&&e.length?i=!0:n?.resume())}),n=me([r.nodes,()=>r.nodes.value.length],([n])=>{e.nodes?.value&&Array.isArray(e.nodes.value)&&(t?.pause(),e.nodes.value=[...n],S(()=>{t?.resume()}))},{immediate:i}),_(()=>{t?.stop(),n?.stop()})}),i.run(()=>{let t,n,i=!!r.edges.value.length;t=me([e.edges,()=>e.edges?.value?.length],([e])=>{e&&Array.isArray(e)&&(n?.pause(),r.setEdges(e),!n&&!i&&e.length?i=!0:n?.resume())}),n=me([r.edges,()=>r.edges.value.length],([n])=>{e.edges?.value&&Array.isArray(e.edges.value)&&(t?.pause(),e.edges.value=[...n],S(()=>{t?.resume()}))},{immediate:i}),_(()=>{t?.stop(),n?.stop()})}),i.run(()=>{A(()=>t.minZoom,()=>{t.minZoom&&Q(t.minZoom)&&r.setMinZoom(t.minZoom)},{immediate:!0})}),i.run(()=>{A(()=>t.maxZoom,()=>{t.maxZoom&&Q(t.maxZoom)&&r.setMaxZoom(t.maxZoom)},{immediate:!0})}),i.run(()=>{A(()=>t.translateExtent,()=>{t.translateExtent&&Q(t.translateExtent)&&r.setTranslateExtent(t.translateExtent)},{immediate:!0})}),i.run(()=>{A(()=>t.nodeExtent,()=>{t.nodeExtent&&Q(t.nodeExtent)&&r.setNodeExtent(t.nodeExtent)},{immediate:!0})}),i.run(()=>{A(()=>t.applyDefault,()=>{Q(t.applyDefault)&&(r.applyDefault.value=t.applyDefault)},{immediate:!0})}),i.run(()=>{let e=async e=>{let n=e;typeof t.autoConnect==`function`&&(n=await t.autoConnect(e)),n!==!1&&r.addEdges([n])};A(()=>t.autoConnect,()=>{Q(t.autoConnect)&&(r.autoConnect.value=t.autoConnect)},{immediate:!0}),A(r.autoConnect,(t,n,i)=>{t?r.onConnect(e):r.hooks.value.connect.off(e),i(()=>{r.hooks.value.connect.off(e)})},{immediate:!0})}),(()=>{let e=[`id`,`modelValue`,`translateExtent`,`nodeExtent`,`edges`,`nodes`,`maxZoom`,`minZoom`,`applyDefault`,`autoConnect`];for(let a of Object.keys(t)){let o=a;if(!e.includes(o)){let e=n(()=>t[o]),a=r[o];O(a)&&i.run(()=>{A(e,e=>{Q(e)&&(a.value=e)},{immediate:!0})})}}})()}),()=>i.stop()}function Rc(){return{edgesChange:Y(),nodesChange:Y(),nodeDoubleClick:Y(),nodeClick:Y(),nodeMouseEnter:Y(),nodeMouseMove:Y(),nodeMouseLeave:Y(),nodeContextMenu:Y(),nodeDragStart:Y(),nodeDrag:Y(),nodeDragStop:Y(),nodesInitialized:Y(),miniMapNodeClick:Y(),miniMapNodeDoubleClick:Y(),miniMapNodeMouseEnter:Y(),miniMapNodeMouseMove:Y(),miniMapNodeMouseLeave:Y(),connect:Y(),connectStart:Y(),connectEnd:Y(),clickConnectStart:Y(),clickConnectEnd:Y(),paneReady:Y(),init:Y(),move:Y(),moveStart:Y(),moveEnd:Y(),selectionDragStart:Y(),selectionDrag:Y(),selectionDragStop:Y(),selectionContextMenu:Y(),selectionStart:Y(),selectionEnd:Y(),viewportChangeStart:Y(),viewportChange:Y(),viewportChangeEnd:Y(),paneScroll:Y(),paneClick:Y(),paneContextMenu:Y(),paneMouseEnter:Y(),paneMouseMove:Y(),paneMouseLeave:Y(),edgeContextMenu:Y(),edgeMouseEnter:Y(),edgeMouseMove:Y(),edgeMouseLeave:Y(),edgeDoubleClick:Y(),edgeClick:Y(),edgeUpdateStart:Y(),edgeUpdate:Y(),edgeUpdateEnd:Y(),updateNodeInternals:Y(),error:Y(e=>rc(e.message))}}function zc(e,t){let n=m();u(()=>{for(let[n,i]of Object.entries(t.value))i.setEmitter(t=>{e(n,t)}),ne(i.removeEmitter),i.setHasEmitListeners(()=>r(n)),ne(i.removeHasEmitListeners)});function r(e){let t=Bc(e);return!!n?.vnode.props?.[t]}}function Bc(e){let[t,...n]=e.split(`:`);return`on${t.replace(/(?:^|-)(\w)/g,(e,t)=>t.toUpperCase())}${n.length?`:${n.join(`:`)}`:``}`}function Vc(){return{vueFlowRef:null,viewportRef:null,nodes:[],edges:[],connectionLookup:new Map,nodeTypes:{},edgeTypes:{},initialized:!1,dimensions:{width:0,height:0},viewport:{x:0,y:0,zoom:1},d3Zoom:null,d3Selection:null,d3ZoomHandler:null,minZoom:.5,maxZoom:2,translateExtent:[[-1/0,-1/0],[1/0,1/0]],nodeExtent:[[-1/0,-1/0],[1/0,1/0]],selectionMode:go.Full,paneDragging:!1,preventScrolling:!0,zoomOnScroll:!0,zoomOnPinch:!0,zoomOnDoubleClick:!0,panOnScroll:!1,panOnScrollSpeed:.5,panOnScrollMode:bo.Free,paneClickDistance:0,panOnDrag:!0,edgeUpdaterRadius:10,onlyRenderVisibleElements:!1,defaultViewport:{x:0,y:0,zoom:1},nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,defaultMarkerColor:`#b1b1b7`,connectionLineStyle:{},connectionLineType:null,connectionLineOptions:{type:_o.Bezier,style:{}},connectionMode:vo.Loose,connectionStartHandle:null,connectionEndHandle:null,connectionClickStartHandle:null,connectionPosition:{x:NaN,y:NaN},connectionRadius:20,connectOnClick:!0,connectionStatus:null,isValidConnection:null,snapGrid:[15,15],snapToGrid:!1,edgesUpdatable:!1,edgesFocusable:!0,nodesFocusable:!0,nodesConnectable:!0,nodesDraggable:!0,nodeDragThreshold:1,elementsSelectable:!0,selectNodesOnDrag:!0,multiSelectionActive:!1,selectionKeyCode:`Shift`,multiSelectionKeyCode:Hs()?`Meta`:`Control`,zoomActivationKeyCode:Hs()?`Meta`:`Control`,deleteKeyCode:`Backspace`,panActivationKeyCode:`Space`,hooks:Rc(),applyDefault:!0,autoConnect:!1,fitViewOnInit:!1,fitViewOnInitDone:!1,noDragClassName:`nodrag`,noWheelClassName:`nowheel`,noPanClassName:`nopan`,defaultEdgeOptions:void 0,elevateEdgesOnSelect:!1,elevateNodesOnSelect:!0,autoPanOnNodeDrag:!0,autoPanOnConnect:!0,autoPanSpeed:15,disableKeyboardA11y:!1,ariaLiveMessage:``}}var Hc=[`id`,`vueFlowRef`,`viewportRef`,`initialized`,`modelValue`,`nodes`,`edges`,`maxZoom`,`minZoom`,`translateExtent`,`hooks`,`defaultEdgeOptions`];function Uc(e,t,n){let r=Fc(e),i=t=>{let n=t??[];e.hooks.updateNodeInternals.trigger(n)},a=t=>Xo(t,e.nodes,e.edges),o=t=>Yo(t,e.nodes,e.edges),s=t=>ss(t,e.edges),c=({id:t,type:n,nodeId:r})=>{let i=t?`-${n}-${t}`:`-${n}`;return Array.from(e.connectionLookup.get(`${r}${i}`)?.values()??[])},l=e=>{if(e)return t.value.get(e)},u=e=>{if(e)return n.value.get(e)},d=(t,n,r)=>{let i=[];for(let e of t){let t={id:e.id,type:`position`,dragging:r,from:e.from};if(n&&(t.position=e.position,e.parentNode)){let n=l(e.parentNode);t.position={x:t.position.x-(n?.computedPosition?.x??0),y:t.position.y-(n?.computedPosition?.y??0)}}i.push(t)}i?.length&&e.hooks.nodesChange.trigger(i)},f=t=>{if(!e.vueFlowRef)return;let n=e.vueFlowRef.querySelector(`.vue-flow__transformationpane`);if(!n)return;let i=window.getComputedStyle(n),{m22:a}=new window.DOMMatrixReadOnly(i.transform),o=[];for(let e of t){let t=e,n=l(t.id);if(n){let e=Lo(t.nodeElement);if(e.width&&e.height&&(n.dimensions.width!==e.width||n.dimensions.height!==e.height||t.forceUpdate)){let r=t.nodeElement.getBoundingClientRect();n.dimensions=e,n.handleBounds.source=ac(`source`,t.nodeElement,r,a,n.id),n.handleBounds.target=ac(`target`,t.nodeElement,r,a,n.id),o.push({id:n.id,type:`dimensions`,dimensions:e})}}}!e.fitViewOnInitDone&&e.fitViewOnInit&&r.value.fitView().then(()=>{e.fitViewOnInitDone=!0}),o.length&&e.hooks.nodesChange.trigger(o)},p=(r,i)=>{let a=new Set,o=new Set;for(let e of r)Ho(e)?a.add(e.id):Vo(e)&&o.add(e.id);let s=ws(t.value,a,!0),c=ws(n.value,o);if(e.multiSelectionActive){for(let e of a)s.push(bs(e,i));for(let e of o)c.push(bs(e,i))}s.length&&e.hooks.nodesChange.trigger(s),c.length&&e.hooks.edgesChange.trigger(c)},m=r=>{if(e.multiSelectionActive){let t=r.map(e=>bs(e.id,!0));e.hooks.nodesChange.trigger(t);return}e.hooks.nodesChange.trigger(ws(t.value,new Set(r.map(e=>e.id)),!0)),e.hooks.edgesChange.trigger(ws(n.value))},h=r=>{if(e.multiSelectionActive){let t=r.map(e=>bs(e.id,!0));e.hooks.edgesChange.trigger(t);return}e.hooks.edgesChange.trigger(ws(n.value,new Set(r.map(e=>e.id)))),e.hooks.nodesChange.trigger(ws(t.value,new Set,!0))},g=e=>{p(e,!0)},_=t=>{let n=(t||e.nodes).map(e=>(e.selected=!1,bs(e.id,!1)));e.hooks.nodesChange.trigger(n)},v=t=>{let n=(t||e.edges).map(e=>(e.selected=!1,bs(e.id,!1)));e.hooks.edgesChange.trigger(n)},y=t=>{if(!t||!t.length)return p([],!1);let n=t.reduce((e,t)=>{let n=bs(t.id,!1);return Ho(t)?e.nodes.push(n):e.edges.push(n),e},{nodes:[],edges:[]});n.nodes.length&&e.hooks.nodesChange.trigger(n.nodes),n.edges.length&&e.hooks.edgesChange.trigger(n.edges)},b=t=>{var n;(n=e.d3Zoom)==null||n.scaleExtent([t,e.maxZoom]),e.minZoom=t},x=t=>{var n;(n=e.d3Zoom)==null||n.scaleExtent([e.minZoom,t]),e.maxZoom=t},S=t=>{var n;(n=e.d3Zoom)==null||n.translateExtent(t),e.translateExtent=t},C=t=>{e.nodeExtent=t,i()},w=t=>{var n;(n=e.d3Zoom)==null||n.clickDistance(t)},T=t=>{e.nodesDraggable=t,e.nodesConnectable=t,e.elementsSelectable=t},E=t=>{let n=t instanceof Function?t(e.nodes):t;(e.initialized||n.length)&&(e.nodes=lc(n,l,e.hooks.error.trigger))},D=t=>{let r=t instanceof Function?t(e.edges):t;if(!e.initialized&&!r.length)return;let i=pc(r,e.isValidConnection,l,u,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);dc(e.connectionLookup,n.value,i),e.edges=i},O=t=>{let n=t instanceof Function?t([...e.nodes,...e.edges]):t;(e.initialized||n.length)&&(E(n.filter(Ho)),D(n.filter(Vo)))},k=t=>{let n=t instanceof Function?t(e.nodes):t;n=Array.isArray(n)?n:[n];let r=lc(n,l,e.hooks.error.trigger),i=[];for(let e of r)i.push(xs(e));i.length&&e.hooks.nodesChange.trigger(i)},A=t=>{let n=t instanceof Function?t(e.edges):t;n=Array.isArray(n)?n:[n];let r=pc(n,e.isValidConnection,l,u,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges),i=[];for(let e of r)i.push(xs(e));i.length&&e.hooks.edgesChange.trigger(i)},j=(t,n=!0,r=!1)=>{let i=t instanceof Function?t(e.nodes):t,a=Array.isArray(i)?i:[i],o=[],c=[];function u(e){let t=s(e);for(let e of t)(!Q(e.deletable)||e.deletable)&&c.push(Cs(e.id,e.source,e.target,e.sourceHandle,e.targetHandle))}function d(t){let r=[];for(let n of e.nodes)n.parentNode===t&&r.push(n);if(r.length){for(let e of r)o.push(Ss(e.id));n&&u(r);for(let e of r)d(e.id)}}for(let e of a){let t=typeof e==`string`?l(e):e;t&&(!Q(t.deletable)||t.deletable)&&(o.push(Ss(t.id)),n&&u([t]),r&&d(t.id))}c.length&&e.hooks.edgesChange.trigger(c),o.length&&e.hooks.nodesChange.trigger(o)},M=t=>{let n=t instanceof Function?t(e.edges):t,r=Array.isArray(n)?n:[n],i=[];for(let e of r){let t=typeof e==`string`?u(e):e;t&&(!Q(t.deletable)||t.deletable)&&i.push(Cs(typeof e==`string`?e:e.id,t.source,t.target,t.sourceHandle,t.targetHandle))}e.hooks.edgesChange.trigger(i)},N=(t,r,i=!0)=>{let a=u(t.id);if(!a)return!1;let o=e.edges.indexOf(a),s=cc(t,r,a,i,e.hooks.error.trigger);if(s){let[t]=pc([s],e.isValidConnection,l,u,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);return e.edges=e.edges.map((e,n)=>n===o?t:e),dc(e.connectionLookup,n.value,[t]),t}return!1},P=(e,t,n={replace:!1})=>{let r=u(e);if(!r)return;let i=typeof t==`function`?t(r):t;r.data=n.replace?i:{...r.data,...i}},F=t=>ys(t,e.nodes),I=t=>{let r=ys(t,e.edges);return dc(e.connectionLookup,n.value,r),r},L=(t,n,r={replace:!1})=>{let i=l(t);if(!i)return;let a=typeof n==`function`?n(i):n;r.replace?e.nodes.splice(e.nodes.indexOf(i),1,a):Object.assign(i,a)},R=(e,t,n={replace:!1})=>{let r=l(e);if(!r)return;let i=typeof t==`function`?t(r):t;r.data=n.replace?i:{...r.data,...i}},z=(t,n,r=!1)=>{r?e.connectionClickStartHandle=t:e.connectionStartHandle=t,e.connectionEndHandle=null,e.connectionStatus=null,n&&(e.connectionPosition=n)},B=(t,n=null,r=null)=>{e.connectionStartHandle&&(e.connectionPosition=t,e.connectionEndHandle=n,e.connectionStatus=r)},ee=(t,n)=>{e.connectionPosition={x:NaN,y:NaN},e.connectionEndHandle=null,e.connectionStatus=null,n?e.connectionClickStartHandle=null:e.connectionStartHandle=null},V=e=>{let t=Go(e),n=t?null:Uo(e)?e:l(e.id);return!t&&!n?[null,null,t]:[t?e:Fo(n),n,t]},H=(t,n=!0,r=e.nodes)=>{let[i,a,o]=V(t);if(!i)return[];let s=[];for(let t of r||e.nodes){if(!o&&(t.id===a.id||!t.computedPosition))continue;let e=Fo(t),r=Io(e,i);(n&&r>0||r>=e.width*e.height||r>=Number(i.width)*Number(i.height))&&s.push(t)}return s},U=(e,t,n=!0)=>{let[r]=V(e);if(!r)return!1;let i=Io(r,t);return n&&i>0||i>=Number(r.width)*Number(r.height)},W=t=>{let{viewport:n,dimensions:r,d3Zoom:i,d3Selection:a,translateExtent:o}=e;if(!i||!a||!t.x&&!t.y)return!1;let s=ao.translate(n.x+t.x,n.y+t.y).scale(n.zoom),c=[[0,0],[r.width,r.height]],l=i.constrain()(s,c,o),u=e.viewport.x!==l.x||e.viewport.y!==l.y||e.viewport.zoom!==l.k;return i.transform(a,l),u},G=t=>{let n=t instanceof Function?t(e):t,r=[`d3Zoom`,`d3Selection`,`d3ZoomHandler`,`viewportRef`,`vueFlowRef`,`dimensions`,`hooks`];Q(n.defaultEdgeOptions)&&(e.defaultEdgeOptions=n.defaultEdgeOptions);let i=n.modelValue||n.nodes||n.edges?[]:void 0;i&&(n.modelValue&&i.push(...n.modelValue),n.nodes&&i.push(...n.nodes),n.edges&&i.push(...n.edges),O(i));let a=()=>{Q(n.maxZoom)&&x(n.maxZoom),Q(n.minZoom)&&b(n.minZoom),Q(n.translateExtent)&&S(n.translateExtent)};for(let t of Object.keys(n)){let i=t,a=n[i];![...Hc,...r].includes(i)&&Q(a)&&(e[i]=a)}_e(()=>e.d3Zoom).not.toBeNull().then(a),e.initialized||=!0};return{updateNodePositions:d,updateNodeDimensions:f,setElements:O,setNodes:E,setEdges:D,addNodes:k,addEdges:A,removeNodes:j,removeEdges:M,findNode:l,findEdge:u,updateEdge:N,updateEdgeData:P,updateNode:L,updateNodeData:R,applyEdgeChanges:I,applyNodeChanges:F,addSelectedElements:g,addSelectedNodes:m,addSelectedEdges:h,setMinZoom:b,setMaxZoom:x,setTranslateExtent:S,setNodeExtent:C,setPaneClickDistance:w,removeSelectedElements:y,removeSelectedNodes:_,removeSelectedEdges:v,startConnection:z,updateConnection:B,endConnection:ee,setInteractive:T,setState:G,getIntersectingNodes:H,getIncomers:a,getOutgoers:o,getConnectedEdges:s,getHandleConnections:c,isNodeIntersecting:U,panBy:W,fitView:e=>r.value.fitView(e),zoomIn:e=>r.value.zoomIn(e),zoomOut:e=>r.value.zoomOut(e),zoomTo:(e,t)=>r.value.zoomTo(e,t),setViewport:(e,t)=>r.value.setViewport(e,t),setTransform:(e,t)=>r.value.setTransform(e,t),getViewport:()=>r.value.getViewport(),getTransform:()=>r.value.getTransform(),setCenter:(e,t,n)=>r.value.setCenter(e,t,n),fitBounds:(e,t)=>r.value.fitBounds(e,t),project:e=>r.value.project(e),screenToFlowCoordinate:e=>r.value.screenToFlowCoordinate(e),flowToScreenCoordinate:e=>r.value.flowToScreenCoordinate(e),toObject:()=>{let t=[],n=[];for(let n of e.nodes){let{computedPosition:e,handleBounds:r,selected:i,dimensions:a,isParent:o,resizing:s,dragging:c,events:l,...u}=n;t.push(u)}for(let t of e.edges){let{selected:e,sourceNode:r,targetNode:i,events:a,...o}=t;n.push(o)}return JSON.parse(JSON.stringify({nodes:t,edges:n,position:[e.viewport.x,e.viewport.y],zoom:e.viewport.zoom,viewport:e.viewport}))},fromObject:t=>new Promise(n=>{let{nodes:i,edges:a,position:o,zoom:s,viewport:c}=t;i&&E(i),a&&D(a);let[l,u]=c?.x&&c?.y?[c.x,c.y]:o??[null,null];if(l&&u){let t=c?.zoom||s||e.viewport.zoom;return _e(()=>r.value.viewportInitialized).toBe(!0).then(()=>{r.value.setViewport({x:l,y:u,zoom:t}).then(()=>{n(!0)})})}n(!0)}),updateNodeInternals:i,viewportHelper:r,$reset:()=>{let t=Vc();if(e.edges=[],e.nodes=[],e.d3Zoom&&e.d3Selection){let n=ao.translate(t.defaultViewport.x??0,t.defaultViewport.y??0).scale(Ro(t.defaultViewport.zoom??1,t.minZoom,t.maxZoom)),r=e.viewportRef.getBoundingClientRect(),i=[[0,0],[r.width,r.height]],a=e.d3Zoom.constrain()(n,i,t.translateExtent);e.d3Zoom.transform(e.d3Selection,a)}G(t)},$destroy:()=>{}}}var Wc=[`data-id`,`data-handleid`,`data-nodeid`,`data-handlepos`],Gc=f({name:`Handle`,compatConfig:{MODE:3},props:{id:{default:null},type:{},position:{default:()=>J.Top},isValidConnection:{type:Function},connectable:{type:[Boolean,Number,String,Function],default:void 0},connectableStart:{type:Boolean,default:!0},connectableEnd:{type:Boolean,default:!0}},setup(t,{expose:r}){let i=o(t,[`position`,`connectable`,`connectableStart`,`connectableEnd`,`id`]),a=n(()=>i.type??`source`),c=n(()=>i.isValidConnection??null),{id:l,connectionStartHandle:u,connectionClickStartHandle:d,connectionEndHandle:f,vueFlowRef:p,nodesConnectable:m,noDragClassName:_,noPanClassName:v}=$(),{id:b,node:x,nodeEl:S,connectedEdges:w}=Dc(),T=y(),E=n(()=>t.connectableStart===void 0||t.connectableStart),D=n(()=>t.connectableEnd===void 0||t.connectableEnd),O=n(()=>u.value?.nodeId===b&&u.value?.id===t.id&&u.value?.type===a.value||f.value?.nodeId===b&&f.value?.id===t.id&&f.value?.type===a.value),A=n(()=>d.value?.nodeId===b&&d.value?.id===t.id&&d.value?.type===a.value),{handlePointerDown:j,handleClick:M}=Tc({nodeId:b,handleId:t.id,isValidConnection:c,type:a}),N=g(()=>typeof t.connectable==`string`&&t.connectable===`single`?!w.value.some(e=>{let n=e[`${a.value}Handle`];return e[a.value]===b?!n||n===t.id:!1}):typeof t.connectable==`number`?w.value.filter(e=>{let n=e[`${a.value}Handle`];return e[a.value]===b?!n||n===t.id:!1}).length<t.connectable:typeof t.connectable==`function`?t.connectable(x,w.value):Q(t.connectable)?t.connectable:m.value);C(()=>{if(!x.dimensions.width||!x.dimensions.height)return;let e=x.handleBounds[a.value]?.find(e=>e.id===t.id);if(!p.value||e)return;let n=p.value.querySelector(`.vue-flow__transformationpane`);if(!S.value||!T.value||!n||!t.id)return;let r=S.value.getBoundingClientRect(),i=T.value.getBoundingClientRect(),o=window.getComputedStyle(n),{m22:s}=new window.DOMMatrixReadOnly(o.transform),c={id:t.id,position:t.position,x:(i.left-r.left)/s,y:(i.top-r.top)/s,type:a.value,nodeId:b,...Lo(T.value)};x.handleBounds[a.value]=[...x.handleBounds[a.value]??[],c]});function P(e){let t=zs(e);N.value&&E.value&&(t&&e.button===0||!t)&&j(e)}function F(e){b&&(d.value||E.value)&&N.value&&M(e)}return r({handleClick:M,handlePointerDown:j,onClick:F,onPointerDown:P}),(n,r)=>(e(),s(`div`,{ref_key:`handle`,ref:T,"data-id":`${h(l)}-${h(b)}-${t.id}-${a.value}`,"data-handleid":t.id,"data-nodeid":h(b),"data-handlepos":n.position,class:k([`vue-flow__handle`,[`vue-flow__handle-${n.position}`,`vue-flow__handle-${t.id}`,h(_),h(v),a.value,{connectable:N.value,connecting:A.value,connectablestart:E.value,connectableend:D.value,connectionindicator:N.value&&(E.value&&!O.value||D.value&&O.value)}]]),onMousedown:P,onTouchstartPassive:P,onClick:F},[R(n.$slots,`default`,{id:n.id})],42,Wc))}}),Kc=function({sourcePosition:e=J.Bottom,targetPosition:t=J.Top,label:n,connectable:r=!0,isValidTargetPos:i,isValidSourcePos:a,data:o}){let s=o.label??n;return[l(Gc,{type:`target`,position:t,connectable:r,isValidConnection:i}),typeof s!=`string`&&s?l(s):l(T,[s]),l(Gc,{type:`source`,position:e,connectable:r,isValidConnection:a})]};Kc.props=[`sourcePosition`,`targetPosition`,`label`,`isValidTargetPos`,`isValidSourcePos`,`connectable`,`data`],Kc.inheritAttrs=!1,Kc.compatConfig={MODE:3};var qc=Kc,Jc=function({targetPosition:e=J.Top,label:t,connectable:n=!0,isValidTargetPos:r,data:i}){let a=i.label??t;return[l(Gc,{type:`target`,position:e,connectable:n,isValidConnection:r}),typeof a!=`string`&&a?l(a):l(T,[a])]};Jc.props=[`targetPosition`,`label`,`isValidTargetPos`,`connectable`,`data`],Jc.inheritAttrs=!1,Jc.compatConfig={MODE:3};var Yc=Jc,Xc=function({sourcePosition:e=J.Bottom,label:t,connectable:n=!0,isValidSourcePos:r,data:i}){let a=i.label??t;return[typeof a!=`string`&&a?l(a):l(T,[a]),l(Gc,{type:`source`,position:e,connectable:n,isValidConnection:r})]};Xc.props=[`sourcePosition`,`label`,`isValidSourcePos`,`connectable`,`data`],Xc.inheritAttrs=!1,Xc.compatConfig={MODE:3};var Zc=Xc,Qc=[`transform`],$c=[`width`,`height`,`x`,`y`,`rx`,`ry`],el=[`y`],tl=f({name:`EdgeText`,compatConfig:{MODE:3},props:{x:{},y:{},label:{},labelStyle:{default:()=>({})},labelShowBg:{type:Boolean,default:!0},labelBgStyle:{default:()=>({})},labelBgPadding:{default:()=>[2,4]},labelBgBorderRadius:{default:2}},setup(n){let r=y({x:0,y:0,width:0,height:0}),a=y(null),o=g(()=>`translate(${n.x-r.value.width/2} ${n.y-r.value.height/2})`);C(c),A([()=>n.x,()=>n.y,a,()=>n.label],c);function c(){if(!a.value)return;let e=a.value.getBBox();(e.width!==r.value.width||e.height!==r.value.height)&&(r.value=e)}return(n,c)=>(e(),s(`g`,{transform:o.value,class:`vue-flow__edge-textwrapper`},[n.labelShowBg?(e(),s(`rect`,{key:0,class:`vue-flow__edge-textbg`,width:`${r.value.width+2*n.labelBgPadding[0]}px`,height:`${r.value.height+2*n.labelBgPadding[1]}px`,x:-n.labelBgPadding[0],y:-n.labelBgPadding[1],style:U(n.labelBgStyle),rx:n.labelBgBorderRadius,ry:n.labelBgBorderRadius},null,12,$c)):v(``,!0),i(`text`,b(n.$attrs,{ref_key:`el`,ref:a,class:`vue-flow__edge-text`,y:r.value.height/2,dy:`0.3em`,style:n.labelStyle}),[R(n.$slots,`default`,{},()=>[typeof n.label==`string`?(e(),s(T,{key:1},[t(L(n.label),1)],64)):(e(),G(D(n.label),{key:0}))])],16,el)],8,Qc))}}),nl=[`id`,`d`,`marker-end`,`marker-start`],rl=[`d`,`stroke-width`],il=f({name:`BaseEdge`,inheritAttrs:!1,compatConfig:{MODE:3},props:{id:{},labelX:{},labelY:{},path:{},label:{},markerStart:{},markerEnd:{},interactionWidth:{default:20},labelStyle:{},labelShowBg:{type:Boolean},labelBgStyle:{},labelBgPadding:{},labelBgBorderRadius:{}},setup(t,{expose:n}){let r=y(null),a=y(null),o=y(null),c=V();return n({pathEl:r,interactionEl:a,labelEl:o}),(t,n)=>(e(),s(T,null,[i(`path`,b(h(c),{id:t.id,ref_key:`pathEl`,ref:r,d:t.path,class:`vue-flow__edge-path`,"marker-end":t.markerEnd,"marker-start":t.markerStart}),null,16,nl),t.interactionWidth?(e(),s(`path`,{key:0,ref_key:`interactionEl`,ref:a,fill:`none`,d:t.path,"stroke-width":t.interactionWidth,"stroke-opacity":0,class:`vue-flow__edge-interaction`},null,8,rl)):v(``,!0),t.label&&t.labelX&&t.labelY?(e(),G(tl,{key:1,ref_key:`labelEl`,ref:o,x:t.labelX,y:t.labelY,label:t.label,"label-show-bg":t.labelShowBg,"label-bg-style":t.labelBgStyle,"label-bg-padding":t.labelBgPadding,"label-bg-border-radius":t.labelBgBorderRadius,"label-style":t.labelStyle},null,8,[`x`,`y`,`label`,`label-show-bg`,`label-bg-style`,`label-bg-padding`,`label-bg-border-radius`,`label-style`])):v(``,!0)],64))}});function al({sourceX:e,sourceY:t,targetX:n,targetY:r}){let i=Math.abs(n-e)/2,a=n<e?n+i:n-i,o=Math.abs(r-t)/2;return[a,r<t?r+o:r-o,i,o]}function ol({sourceX:e,sourceY:t,targetX:n,targetY:r,sourceControlX:i,sourceControlY:a,targetControlX:o,targetControlY:s}){let c=e*.125+i*.375+o*.375+n*.125,l=t*.125+a*.375+s*.375+r*.125;return[c,l,Math.abs(c-e),Math.abs(l-t)]}function sl(e,t){return e>=0?.5*e:t*25*Math.sqrt(-e)}function cl({pos:e,x1:t,y1:n,x2:r,y2:i,c:a}){let o,s;switch(e){case J.Left:o=t-sl(t-r,a),s=n;break;case J.Right:o=t+sl(r-t,a),s=n;break;case J.Top:o=t,s=n-sl(n-i,a);break;case J.Bottom:o=t,s=n+sl(i-n,a)}return[o,s]}function ll(e){let{sourceX:t,sourceY:n,sourcePosition:r=J.Bottom,targetX:i,targetY:a,targetPosition:o=J.Top,curvature:s=.25}=e,[c,l]=cl({pos:r,x1:t,y1:n,x2:i,y2:a,c:s}),[u,d]=cl({pos:o,x1:i,y1:a,x2:t,y2:n,c:s}),[f,p,m,h]=ol({sourceX:t,sourceY:n,targetX:i,targetY:a,sourceControlX:c,sourceControlY:l,targetControlX:u,targetControlY:d});return[`M${t},${n} C${c},${l} ${u},${d} ${i},${a}`,f,p,m,h]}function ul({pos:e,x1:t,y1:n,x2:r,y2:i}){let a,o;switch(e){case J.Left:case J.Right:a=.5*(t+r),o=n;break;case J.Top:case J.Bottom:a=t,o=.5*(n+i)}return[a,o]}function dl(e){let{sourceX:t,sourceY:n,sourcePosition:r=J.Bottom,targetX:i,targetY:a,targetPosition:o=J.Top}=e,[s,c]=ul({pos:r,x1:t,y1:n,x2:i,y2:a}),[l,u]=ul({pos:o,x1:i,y1:a,x2:t,y2:n}),[d,f,p,m]=ol({sourceX:t,sourceY:n,targetX:i,targetY:a,sourceControlX:s,sourceControlY:c,targetControlX:l,targetControlY:u});return[`M${t},${n} C${s},${c} ${l},${u} ${i},${a}`,d,f,p,m]}var fl={[J.Left]:{x:-1,y:0},[J.Right]:{x:1,y:0},[J.Top]:{x:0,y:-1},[J.Bottom]:{x:0,y:1}};function pl({source:e,sourcePosition:t=J.Bottom,target:n}){return t===J.Left||t===J.Right?e.x<n.x?{x:1,y:0}:{x:-1,y:0}:e.y<n.y?{x:0,y:1}:{x:0,y:-1}}function ml(e,t){return Math.sqrt((t.x-e.x)**2+(t.y-e.y)**2)}function hl({source:e,sourcePosition:t=J.Bottom,target:n,targetPosition:r=J.Top,center:i,offset:a}){let o=fl[t],s=fl[r],c={x:e.x+o.x*a,y:e.y+o.y*a},l={x:n.x+s.x*a,y:n.y+s.y*a},u=pl({source:c,sourcePosition:t,target:l}),d=u.x===0?`y`:`x`,f=u[d],p,m,h,g={x:0,y:0},_={x:0,y:0},[v,y,b,x]=al({sourceX:e.x,sourceY:e.y,targetX:n.x,targetY:n.y});if(o[d]*s[d]===-1){m=i.x??v,h=i.y??y;let e=[{x:m,y:c.y},{x:m,y:l.y}],t=[{x:c.x,y:h},{x:l.x,y:h}];p=o[d]===f?d===`x`?e:t:d===`x`?t:e}else{let i=[{x:c.x,y:l.y}],u=[{x:l.x,y:c.y}];if(p=d===`x`?o.x===f?u:i:o.y===f?i:u,t===r){let t=Math.abs(e[d]-n[d]);if(t<=a){let r=Math.min(a-1,a-t);o[d]===f?g[d]=(c[d]>e[d]?-1:1)*r:_[d]=(l[d]>n[d]?-1:1)*r}}if(t!==r){let e=d===`x`?`y`:`x`,t=o[d]===s[e],n=c[e]>l[e],r=c[e]<l[e];(o[d]===1&&(!t&&n||t&&r)||o[d]!==1&&(!t&&r||t&&n))&&(p=d===`x`?i:u)}let v={x:c.x+g.x,y:c.y+g.y},y={x:l.x+_.x,y:l.y+_.y};Math.max(Math.abs(v.x-p[0].x),Math.abs(y.x-p[0].x))>=Math.max(Math.abs(v.y-p[0].y),Math.abs(y.y-p[0].y))?(m=(v.x+y.x)/2,h=p[0].y):(m=p[0].x,h=(v.y+y.y)/2)}return[[e,{x:c.x+g.x,y:c.y+g.y},...p,{x:l.x+_.x,y:l.y+_.y},n],m,h,b,x]}function gl(e,t,n,r){let i=Math.min(ml(e,t)/2,ml(t,n)/2,r),{x:a,y:o}=t;if(e.x===a&&a===n.x||e.y===o&&o===n.y)return`L${a} ${o}`;if(e.y===o){let t=e.x<n.x?-1:1,r=e.y<n.y?1:-1;return`L ${a+i*t},${o}Q ${a},${o} ${a},${o+i*r}`}let s=e.x<n.x?1:-1;return`L ${a},${o+i*(e.y<n.y?-1:1)}Q ${a},${o} ${a+i*s},${o}`}function _l(e){let{sourceX:t,sourceY:n,sourcePosition:r=J.Bottom,targetX:i,targetY:a,targetPosition:o=J.Top,borderRadius:s=5,centerX:c,centerY:l,offset:u=20}=e,[d,f,p,m,h]=hl({source:{x:t,y:n},sourcePosition:r,target:{x:i,y:a},targetPosition:o,center:{x:c,y:l},offset:u});return[d.reduce((e,t,n)=>{let r;return r=n>0&&n<d.length-1?gl(d[n-1],t,d[n+1],s):`${n===0?`M`:`L`}${t.x} ${t.y}`,e+=r,e},``),f,p,m,h]}function vl(e){let{sourceX:t,sourceY:n,targetX:r,targetY:i}=e,[a,o,s,c]=al({sourceX:t,sourceY:n,targetX:r,targetY:i});return[`M ${t},${n}L ${r},${i}`,a,o,s,c]}var yl=f({name:`StraightEdge`,props:[`label`,`labelStyle`,`labelShowBg`,`labelBgStyle`,`labelBgPadding`,`labelBgBorderRadius`,`sourceY`,`sourceX`,`targetX`,`targetY`,`markerEnd`,`markerStart`,`interactionWidth`],compatConfig:{MODE:3},setup(e,{attrs:t}){return()=>{let[n,r,i]=vl(e);return l(il,{path:n,labelX:r,labelY:i,...t,...e})}}}),bl=f({name:`SmoothStepEdge`,props:[`sourcePosition`,`targetPosition`,`label`,`labelStyle`,`labelShowBg`,`labelBgStyle`,`labelBgPadding`,`labelBgBorderRadius`,`sourceY`,`sourceX`,`targetX`,`targetY`,`borderRadius`,`markerEnd`,`markerStart`,`interactionWidth`,`offset`],compatConfig:{MODE:3},setup(e,{attrs:t}){return()=>{let[n,r,i]=_l({...e,sourcePosition:e.sourcePosition??J.Bottom,targetPosition:e.targetPosition??J.Top});return l(il,{path:n,labelX:r,labelY:i,...t,...e})}}}),xl=f({name:`StepEdge`,props:[`sourcePosition`,`targetPosition`,`label`,`labelStyle`,`labelShowBg`,`labelBgStyle`,`labelBgPadding`,`labelBgBorderRadius`,`sourceY`,`sourceX`,`targetX`,`targetY`,`markerEnd`,`markerStart`,`interactionWidth`],setup(e,{attrs:t}){return()=>l(bl,{...e,...t,borderRadius:0})}}),Sl=f({name:`BezierEdge`,props:[`sourcePosition`,`targetPosition`,`label`,`labelStyle`,`labelShowBg`,`labelBgStyle`,`labelBgPadding`,`labelBgBorderRadius`,`sourceY`,`sourceX`,`targetX`,`targetY`,`curvature`,`markerEnd`,`markerStart`,`interactionWidth`],compatConfig:{MODE:3},setup(e,{attrs:t}){return()=>{let[n,r,i]=ll({...e,sourcePosition:e.sourcePosition??J.Bottom,targetPosition:e.targetPosition??J.Top});return l(il,{path:n,labelX:r,labelY:i,...t,...e})}}}),Cl=f({name:`SimpleBezierEdge`,props:[`sourcePosition`,`targetPosition`,`label`,`labelStyle`,`labelShowBg`,`labelBgStyle`,`labelBgPadding`,`labelBgBorderRadius`,`sourceY`,`sourceX`,`targetX`,`targetY`,`markerEnd`,`markerStart`,`interactionWidth`],compatConfig:{MODE:3},setup(e,{attrs:t}){return()=>{let[n,r,i]=dl({...e,sourcePosition:e.sourcePosition??J.Bottom,targetPosition:e.targetPosition??J.Top});return l(il,{path:n,labelX:r,labelY:i,...t,...e})}}}),wl={input:Zc,default:qc,output:Yc},Tl={default:Sl,straight:yl,step:xl,smoothstep:bl,simplebezier:Cl};function El(e,t,n){let r=g(()=>e=>t.value.get(e)),i=g(()=>e=>n.value.get(e)),a=g(()=>{let t={...Tl,...e.edgeTypes},n=Object.keys(t);for(let r of e.edges)r.type&&!n.includes(r.type)&&(t[r.type]=r.type);return t}),o=g(()=>{let t={...wl,...e.nodeTypes},n=Object.keys(t);for(let r of e.nodes)r.type&&!n.includes(r.type)&&(t[r.type]=r.type);return t}),s=g(()=>e.onlyRenderVisibleElements?os(e.nodes,{x:0,y:0,width:e.dimensions.width,height:e.dimensions.height},e.viewport,!0):e.nodes),c=g(()=>{if(e.onlyRenderVisibleElements){let n=[];for(let r of e.edges){let i=t.value.get(r.source),a=t.value.get(r.target);Is({sourcePos:i.computedPosition||{x:0,y:0},targetPos:a.computedPosition||{x:0,y:0},sourceWidth:i.dimensions.width,sourceHeight:i.dimensions.height,targetWidth:a.dimensions.width,targetHeight:a.dimensions.height,width:e.dimensions.width,height:e.dimensions.height,viewport:e.viewport})&&n.push(r)}return n}return e.edges}),l=g(()=>[...s.value,...c.value]),u=g(()=>{let t=[];for(let n of e.nodes)n.selected&&t.push(n);return t}),d=g(()=>{let t=[];for(let n of e.edges)n.selected&&t.push(n);return t}),f=g(()=>[...u.value,...d.value]),p=g(()=>{let t=[];for(let n of e.nodes)n.dimensions.width&&n.dimensions.height&&n.handleBounds!==void 0&&t.push(n);return t});return{getNode:r,getEdge:i,getElements:l,getEdgeTypes:a,getNodeTypes:o,getEdges:c,getNodes:s,getSelectedElements:f,getSelectedNodes:u,getSelectedEdges:d,getNodesInitialized:p,areNodesInitialized:g(()=>s.value.length>0&&p.value.length===s.value.length)}}var Dl=class e{constructor(){this.currentId=0,this.flows=new Map}static getInstance(){let t=m()?.appContext.app,n=t?.config.globalProperties.$vueFlowStorage??e.instance;return e.instance=n??new e,t&&(t.config.globalProperties.$vueFlowStorage=e.instance),e.instance}set(e,t){return this.flows.set(e,t)}get(e){return this.flows.get(e)}remove(e){return this.flows.delete(e)}create(e,t){let n=Vc(),r=a(n),i={};for(let[e,t]of Object.entries(r.hooks)){let n=`on${e.charAt(0).toUpperCase()+e.slice(1)}`;i[n]=t.on}let o={};for(let[e,t]of Object.entries(r.hooks))o[e]=t.trigger;let s=g(()=>{let e=new Map;for(let t of r.nodes)e.set(t.id,t);return e}),c=g(()=>{let e=new Map;for(let t of r.edges)e.set(t.id,t);return e}),l=El(r,s,c),u=Uc(r,s,c);u.setState({...r,...t});let d={...i,...l,...u,...he(r),nodeLookup:s,edgeLookup:c,emits:o,id:e,vueFlowVersion:`1.48.2`,$destroy:()=>{this.remove(e)}};return this.set(e,d),d}getId(){return`vue-flow-${this.currentId++}`}};function $(e){let t=Dl.getInstance(),n=E(),i=typeof e==`object`,a=i?e:{id:e},o=a.id,s=o??n?.vueFlowId,c;if(n){let e=r(mc,null);e!=null&&(!s||e.id===s)&&(c=e)}if(c||s&&(c=t.get(s)),!c||s&&c.id!==s){let e=o??t.getId(),r=t.create(e,a);c=r,(n??M(!0)).run(()=>{A(r.applyDefault,(e,t,n)=>{let i=e=>{r.applyNodeChanges(e)},a=e=>{r.applyEdgeChanges(e)};e?(r.onNodesChange(i),r.onEdgesChange(a)):(r.hooks.value.nodesChange.off(i),r.hooks.value.edgesChange.off(a)),n(()=>{r.hooks.value.nodesChange.off(i),r.hooks.value.edgesChange.off(a)})},{immediate:!0}),ne(()=>{if(c){let e=t.get(c.id);e?e.$destroy():rc(`No store instance found for id ${c.id} in storage.`)}})})}else i&&c.setState(a);return n&&(j(mc,c),n.vueFlowId=c.id),i&&m()?.type.name!==`VueFlow`&&c.emits.error(new Z(X.USEVUEFLOW_OPTIONS)),c}function Ol(e){let{emits:t,dimensions:n}=$(),r;C(()=>{let i=()=>{var r;if(!e.value||!((r=e.value).checkVisibility?.call(r)??!0))return;let i=Lo(e.value);(i.width===0||i.height===0)&&t.error(new Z(X.MISSING_VIEWPORT_DIMENSIONS)),n.value={width:i.width||500,height:i.height||500}};i(),window.addEventListener(`resize`,i),e.value&&(r=new ResizeObserver(()=>i()),r.observe(e.value)),B(()=>{window.removeEventListener(`resize`,i),r&&e.value&&r.unobserve(e.value)})})}var kl=f({name:`UserSelection`,compatConfig:{MODE:3},props:{userSelectionRect:{}},setup(t){return(t,n)=>(e(),s(`div`,{class:`vue-flow__selection vue-flow__container`,style:U({width:`${t.userSelectionRect.width}px`,height:`${t.userSelectionRect.height}px`,transform:`translate(${t.userSelectionRect.x}px, ${t.userSelectionRect.y}px)`})},null,4))}}),Al=[`tabIndex`],jl=f({name:`NodesSelection`,compatConfig:{MODE:3},setup(t){let{emits:n,viewport:r,getSelectedNodes:a,noPanClassName:o,disableKeyboardA11y:c,userSelectionActive:l}=$(),u=Ac(),d=y(null),f=bc({el:d,onStart(e){n.selectionDragStart(e),n.nodeDragStart(e)},onDrag(e){n.selectionDrag(e),n.nodeDrag(e)},onStop(e){n.selectionDragStop(e),n.nodeDragStop(e)}});C(()=>{var e;c.value||(e=d.value)==null||e.focus({preventScroll:!0})});let p=g(()=>as(a.value)),m=g(()=>({width:`${p.value.width}px`,height:`${p.value.height}px`,top:`${p.value.y}px`,left:`${p.value.x}px`}));function _(e){n.selectionContextMenu({event:e,nodes:a.value})}function b(e){c.value||Po[e.key]&&(e.preventDefault(),u({x:Po[e.key].x,y:Po[e.key].y},e.shiftKey))}return(t,n)=>!h(l)&&p.value.width&&p.value.height?(e(),s(`div`,{key:0,class:k([`vue-flow__nodesselection vue-flow__container`,h(o)]),style:U({transform:`translate(${h(r).x}px,${h(r).y}px) scale(${h(r).zoom})`})},[i(`div`,{ref_key:`el`,ref:d,class:k([{dragging:h(f)},`vue-flow__nodesselection-rect`]),style:U(m.value),tabIndex:h(c)?void 0:-1,onContextmenu:_,onKeydown:b},null,46,Al)],6)):v(``,!0)}});function Ml(e,t){return{x:e.clientX-t.left,y:e.clientY-t.top}}var Nl=f({name:`Pane`,compatConfig:{MODE:3},props:{isSelecting:{type:Boolean},selectionKeyPressed:{type:Boolean}},setup(t){let{vueFlowRef:r,nodes:i,viewport:a,emits:o,userSelectionActive:c,removeSelectedElements:l,userSelectionRect:u,elementsSelectable:d,nodesSelectionActive:f,getSelectedEdges:m,getSelectedNodes:g,removeNodes:_,removeEdges:y,selectionMode:b,deleteKeyCode:x,multiSelectionKeyCode:S,multiSelectionActive:C,edgeLookup:w,nodeLookup:T,connectionLookup:E,defaultEdgeOptions:D,connectionStartHandle:O,panOnDrag:j}=$(),M=p(null),N=p(new Set),P=p(new Set),F=p(null),I=n(()=>d.value&&(t.isSelecting||c.value)),L=n(()=>O.value!==null),z=!1,B=!1,ee=ko(x,{actInsideInputWithModifier:!1}),V=ko(S);A(ee,e=>{e&&(_(g.value),y(m.value),f.value=!1)}),A(V,e=>{C.value=e});function H(e,t){return n=>{n.target===t&&e?.(n)}}function U(e){if(z||L.value){z=!1;return}o.paneClick(e),l(),f.value=!1}function W(e){if(Array.isArray(j.value)&&j.value?.includes(2)){e.preventDefault();return}o.paneContextMenu(e)}function te(e){o.paneScroll(e)}function K(e){var n,i;if(F.value=r.value?.getBoundingClientRect()??null,!d.value||!t.isSelecting||e.button!==0||e.target!==M.value||!F.value)return;(i=(n=e.target)?.setPointerCapture)==null||i.call(n,e.pointerId);let{x:a,y:s}=Ml(e,F.value);B=!0,z=!1,l(),u.value={width:0,height:0,startX:a,startY:s,x:a,y:s},o.selectionStart(e)}function q(e){if(!F.value||!u.value)return;z=!0;let{x:t,y:n}=Vs(e,F.value),{startX:r=0,startY:s=0}=u.value,l={startX:r,startY:s,x:t<r?t:r,y:n<s?n:s,width:Math.abs(t-r),height:Math.abs(n-s)},d=N.value,p=P.value;N.value=new Set(os(i.value,l,a.value,b.value===go.Partial,!0).map(e=>e.id)),P.value=new Set;let m=D.value?.selectable??!0;for(let e of N.value){let t=E.value.get(e);if(t)for(let{edgeId:e}of t.values()){let t=w.value.get(e);t&&(t.selectable??m)&&P.value.add(e)}}if(!fc(d,N.value)){let e=ws(T.value,N.value,!0);o.nodesChange(e)}if(!fc(p,P.value)){let e=ws(w.value,P.value);o.edgesChange(e)}u.value=l,c.value=!0,f.value=!1}function ne(e){var n;e.button===0&&B&&((n=e.target)==null||n.releasePointerCapture(e.pointerId),!c.value&&u.value&&e.target===M.value&&U(e),c.value=!1,u.value=null,f.value=N.value.size>0,o.selectionEnd(e),t.selectionKeyPressed&&(z=!1),B=!1)}return(t,n)=>(e(),s(`div`,{ref_key:`container`,ref:M,class:k([`vue-flow__pane vue-flow__container`,{selection:t.isSelecting}]),onClick:n[0]||=e=>I.value?void 0:H(U,M.value)(e),onContextmenu:n[1]||=e=>H(W,M.value)(e),onWheelPassive:n[2]||=e=>H(te,M.value)(e),onPointerenter:n[3]||=e=>I.value?void 0:h(o).paneMouseEnter(e),onPointerdown:n[4]||=e=>I.value?K(e):h(o).paneMouseMove(e),onPointermove:n[5]||=e=>I.value?q(e):h(o).paneMouseMove(e),onPointerup:n[6]||=e=>I.value?ne(e):void 0,onPointerleave:n[7]||=e=>h(o).paneMouseLeave(e)},[R(t.$slots,`default`),h(c)&&h(u)?(e(),G(kl,{key:0,"user-selection-rect":h(u)},null,8,[`user-selection-rect`])):v(``,!0),h(f)&&h(g).length?(e(),G(jl,{key:1})):v(``,!0)],34))}}),Pl=f({name:`Transform`,compatConfig:{MODE:3},setup(t){let{viewport:n,fitViewOnInit:r,fitViewOnInitDone:i}=$(),a=g(()=>r.value?!i.value:!1),o=g(()=>`translate(${n.value.x}px,${n.value.y}px) scale(${n.value.zoom})`);return(t,n)=>(e(),s(`div`,{class:`vue-flow__transformationpane vue-flow__container`,style:U({transform:o.value,opacity:a.value?0:void 0})},[R(t.$slots,`default`)],4))}}),Fl=f({name:`Viewport`,compatConfig:{MODE:3},setup(t){let{minZoom:r,maxZoom:i,defaultViewport:a,translateExtent:o,zoomActivationKeyCode:c,selectionKeyCode:l,panActivationKeyCode:u,panOnScroll:d,panOnScrollMode:f,panOnScrollSpeed:m,panOnDrag:g,zoomOnDoubleClick:_,zoomOnPinch:v,zoomOnScroll:y,preventScrolling:b,noWheelClassName:x,noPanClassName:S,emits:w,connectionStartHandle:T,userSelectionActive:E,paneDragging:D,d3Zoom:O,d3Selection:j,d3ZoomHandler:M,viewport:N,viewportRef:F,paneClickDistance:I}=$();Ol(F);let L=p(!1),B=p(!1),ee=null,V=!1,H=0,U={x:0,y:0,zoom:0},W=ko(u),G=ko(l),te=ko(c),K=n(()=>(!G.value||G.value&&l.value===!0)&&(W.value||g.value)),q=n(()=>W.value||d.value),ne=n(()=>l.value===!0&&K.value!==!0),re=n(()=>G.value&&l.value!==!0||E.value||ne.value),ie=n(()=>T.value!==null);C(()=>{if(!F.value){rc(`Viewport element is missing`);return}let e=F.value,t=e.getBoundingClientRect(),n=ho().clickDistance(I.value).scaleExtent([r.value,i.value]).translateExtent(o.value),s=jn(e).call(n),c=s.on(`wheel.zoom`),u=ao.translate(a.value.x??0,a.value.y??0).scale(Ro(a.value.zoom??1,r.value,i.value)),p=[[0,0],[t.width,t.height]],h=n.constrain()(u,p,o.value);n.transform(s,h),n.wheelDelta(hs),O.value=n,j.value=s,M.value=c,N.value={x:h.x,y:h.y,zoom:h.k},n.on(`start`,e=>{if(!e.sourceEvent)return null;H=e.sourceEvent.button,L.value=!0;let t=se(e.transform);e.sourceEvent?.type===`mousedown`&&(D.value=!0),U=t,w.viewportChangeStart(t),w.moveStart({event:e,flowTransform:t})}),n.on(`end`,e=>{if(!e.sourceEvent)return null;if(L.value=!1,D.value=!1,ae(K.value,H??0)&&!V&&w.paneContextMenu(e.sourceEvent),V=!1,oe(U,e.transform)){let t=se(e.transform);U=t,w.viewportChangeEnd(t),w.moveEnd({event:e,flowTransform:t})}}),n.filter(e=>{let t=te.value||y.value,n=v.value&&e.ctrlKey,r=e.button,i=e.type===`wheel`;if(r===1&&e.type===`mousedown`&&(ce(e,`vue-flow__node`)||ce(e,`vue-flow__edge`)))return!0;if(!K.value&&!t&&!q.value&&!_.value&&!v.value||E.value||ie.value&&!i||!_.value&&e.type===`dblclick`||ce(e,x.value)&&i||ce(e,S.value)&&(!i||q.value&&i&&!te.value)||!v.value&&e.ctrlKey&&i||!t&&!q.value&&!n&&i)return!1;if(!v&&e.type===`touchstart`&&e.touches?.length>1)return e.preventDefault(),!1;if(!K.value&&(e.type===`mousedown`||e.type===`touchstart`)||ne.value&&Array.isArray(g.value)&&g.value.includes(0)&&r===0||Array.isArray(g.value)&&!g.value.includes(r)&&(e.type===`mousedown`||e.type===`touchstart`))return!1;let a=Array.isArray(g.value)&&g.value.includes(r)||l.value===!0&&Array.isArray(g.value)&&!g.value.includes(0)||!r||r<=1;return(!e.ctrlKey||W.value||i)&&a}),A([E,K],()=>{E.value&&!L.value?n.on(`zoom`,null):E.value||n.on(`zoom`,e=>{N.value={x:e.transform.x,y:e.transform.y,zoom:e.transform.k};let t=se(e.transform);V=ae(K.value,H??0),w.viewportChange(t),w.move({event:e,flowTransform:t})})},{immediate:!0}),A([E,q,f,te,v,b,x],()=>{q.value&&!te.value&&!E.value?s.on(`wheel.zoom`,e=>{if(ce(e,x.value))return!1;let t=te.value||y.value,r=v.value&&e.ctrlKey;if(!(!b.value||q.value||t||r))return!1;e.preventDefault(),e.stopImmediatePropagation();let i=s.property(`__zoom`).k||1,a=Hs();if(!W.value&&e.ctrlKey&&v.value&&a){let t=Nn(e),r=i*2**hs(e);n.scaleTo(s,r,t,e);return}let o=e.deltaMode===1?20:1,c=f.value===bo.Vertical?0:e.deltaX*o,l=f.value===bo.Horizontal?0:e.deltaY*o;!a&&e.shiftKey&&f.value!==bo.Vertical&&!c&&l&&(c=l,l=0),n.translateBy(s,-(c/i)*m.value,-(l/i)*m.value);let u=se(s.property(`__zoom`));ee&&clearTimeout(ee),B.value?(w.move({event:e,flowTransform:u}),w.viewportChange(u),ee=setTimeout(()=>{w.moveEnd({event:e,flowTransform:u}),w.viewportChangeEnd(u),B.value=!1},150)):(B.value=!0,w.moveStart({event:e,flowTransform:u}),w.viewportChangeStart(u))},{passive:!1}):c!==void 0&&s.on(`wheel.zoom`,function(e,t){let n=!b.value&&e.type===`wheel`&&!e.ctrlKey,r=te.value||y.value,i=v.value&&e.ctrlKey;if(!r&&!d.value&&!i&&e.type===`wheel`||n||ce(e,x.value))return null;e.preventDefault(),c.call(this,e,t)},{passive:!1})},{immediate:!0})});function ae(e,t){return t===2&&Array.isArray(e)&&e.includes(2)}function oe(e,t){return e.x!==t.x&&!Number.isNaN(t.x)||e.y!==t.y&&!Number.isNaN(t.y)||e.zoom!==t.k&&!Number.isNaN(t.k)}function se(e){return{x:e.x,y:e.y,zoom:e.k}}function ce(e,t){return e.target.closest(`.${t}`)}return(t,n)=>(e(),s(`div`,{ref_key:`viewportRef`,ref:F,class:`vue-flow__viewport vue-flow__container`},[P(Nl,{"is-selecting":re.value,"selection-key-pressed":h(G),class:k({connecting:ie.value,dragging:h(D),draggable:h(g)===!0||Array.isArray(h(g))&&h(g).includes(0)})},{default:z(()=>[P(Pl,null,{default:z(()=>[R(t.$slots,`default`)]),_:3})]),_:3},8,[`is-selecting`,`selection-key-pressed`,`class`])],512))}}),Il=[`id`],Ll=[`id`],Rl=[`id`],zl=f({name:`A11yDescriptions`,compatConfig:{MODE:3},setup(t){let{id:n,disableKeyboardA11y:r,ariaLiveMessage:a}=$();return(t,o)=>(e(),s(T,null,[i(`div`,{id:`${h(Ao)}-${h(n)}`,style:{display:`none`}},` Press enter or space to select a node. `+L(h(r)?``:`You can then use the arrow keys to move the node around.`)+` You can then use the arrow keys to move the node around, press delete to remove it and press escape to cancel. `,9,Il),i(`div`,{id:`${h(jo)}-${h(n)}`,style:{display:`none`}},` Press enter or space to select an edge. You can then press delete to remove it or press escape to cancel. `,8,Ll),h(r)?v(``,!0):(e(),s(`div`,{key:0,id:`${h(Mo)}-${h(n)}`,"aria-live":`assertive`,"aria-atomic":`true`,style:{position:`absolute`,width:`1px`,height:`1px`,margin:`-1px`,border:`0`,padding:`0`,overflow:`hidden`,clip:`rect(0px, 0px, 0px, 0px)`,"clip-path":`inset(100%)`}},L(h(a)),9,Rl))],64))}});function Bl(){let e=$();A(()=>e.viewportHelper.value.viewportInitialized,t=>{t&&setTimeout(()=>{e.emits.init(e),e.emits.paneReady(e)},1)})}function Vl(e,t,n){return n===J.Left?e-t:n===J.Right?e+t:e}function Hl(e,t,n){return n===J.Top?e-t:n===J.Bottom?e+t:e}var Ul=function({radius:e=10,centerX:t=0,centerY:n=0,position:r=J.Top,type:i}){return l(`circle`,{class:`vue-flow__edgeupdater vue-flow__edgeupdater-${i}`,cx:Vl(t,e,r),cy:Hl(n,e,r),r:e,stroke:`transparent`,fill:`transparent`})};Ul.props=[`radius`,`centerX`,`centerY`,`position`,`type`],Ul.compatConfig={MODE:3};var Wl=Ul,Gl=f({name:`Edge`,compatConfig:{MODE:3},props:[`id`],setup(e){let{id:t,addSelectedEdges:i,connectionMode:a,edgeUpdaterRadius:o,emits:s,nodesSelectionActive:c,noPanClassName:u,getEdgeTypes:d,removeSelectedEdges:f,findEdge:p,findNode:h,isValidConnection:_,multiSelectionActive:v,disableKeyboardA11y:b,elementsSelectable:x,edgesUpdatable:S,edgesFocusable:C,hooks:w}=$(),T=g(()=>p(e.id)),{emit:E,on:D}=Sc(T.value,s),O=r(yc),k=m(),A=y(!1),M=y(!1),N=y(``),P=y(null),F=y(`source`),I=y(null),L=n(()=>T.value.selectable===void 0?x.value:T.value.selectable),R=n(()=>T.value.updatable===void 0?S.value:T.value.updatable),z=n(()=>T.value.focusable===void 0?C.value:T.value.focusable);j(_c,e.id),j(vc,I);let B=g(()=>T.value.class instanceof Function?T.value.class(T.value):T.value.class),V=g(()=>T.value.style instanceof Function?T.value.style(T.value):T.value.style),H=g(()=>{let e=T.value.type||`default`,t=O?.[`edge-${e}`];if(t)return t;let n=T.value.template??d.value[e];if(typeof n==`string`&&k){let t=Object.keys(k.appContext.components);t&&t.includes(e)&&(n=ee(e,!1))}return n&&typeof n!=`string`?n:(s.error(new Z(X.EDGE_TYPE_MISSING,n)),!1)}),{handlePointerDown:U}=Tc({nodeId:N,handleId:P,type:F,isValidConnection:_,edgeUpdaterType:F,onEdgeUpdate:te,onEdgeUpdateEnd:K});return()=>{let n=h(T.value.source),r=h(T.value.target),i=`pathOptions`in T.value?T.value.pathOptions:{};if(!n&&!r)return s.error(new Z(X.EDGE_SOURCE_TARGET_MISSING,T.value.id,T.value.source,T.value.target)),null;if(!n)return s.error(new Z(X.EDGE_SOURCE_MISSING,T.value.id,T.value.source)),null;if(!r)return s.error(new Z(X.EDGE_TARGET_MISSING,T.value.id,T.value.target)),null;if(!T.value||T.value.hidden||n.hidden||r.hidden)return null;let c;c=a.value===vo.Strict?n.handleBounds.source:[...n.handleBounds.source||[],...n.handleBounds.target||[]];let f=Fs(c,T.value.sourceHandle),p;p=a.value===vo.Strict?r.handleBounds.target:[...r.handleBounds.target||[],...r.handleBounds.source||[]];let m=Fs(p,T.value.targetHandle),g=f?.position||J.Bottom,_=m?.position||J.Top,{x:v,y}=Ps(n,f,g),{x:b,y:x}=Ps(r,m,_);return T.value.sourceX=v,T.value.sourceY=y,T.value.targetX=b,T.value.targetY=x,l(`g`,{ref:I,key:e.id,"data-id":e.id,class:[`vue-flow__edge`,`vue-flow__edge-${H.value===!1?`default`:T.value.type||`default`}`,u.value,B.value,{updating:A.value,selected:T.value.selected,animated:T.value.animated,inactive:!L.value&&!w.value.edgeClick.hasListeners()}],tabIndex:z.value?0:void 0,"aria-label":T.value.ariaLabel===null?void 0:T.value.ariaLabel??`Edge from ${T.value.source} to ${T.value.target}`,"aria-describedby":z.value?`${jo}-${t}`:void 0,"aria-roledescription":`edge`,role:z.value?`group`:`img`,...T.value.domAttributes,onClick:ne,onContextmenu:re,onDblclick:ie,onMouseenter:ae,onMousemove:oe,onMouseleave:se,onKeyDown:z.value?ue:void 0},[M.value?null:l(H.value===!1?d.value.default:H.value,{id:e.id,sourceNode:n,targetNode:r,source:T.value.source,target:T.value.target,type:T.value.type,updatable:R.value,selected:T.value.selected,animated:T.value.animated,label:T.value.label,labelStyle:T.value.labelStyle,labelShowBg:T.value.labelShowBg,labelBgStyle:T.value.labelBgStyle,labelBgPadding:T.value.labelBgPadding,labelBgBorderRadius:T.value.labelBgBorderRadius,data:T.value.data,events:{...T.value.events,...D},style:V.value,markerStart:`url('#${ms(T.value.markerStart,t)}')`,markerEnd:`url('#${ms(T.value.markerEnd,t)}')`,sourcePosition:g,targetPosition:_,sourceX:v,sourceY:y,targetX:b,targetY:x,sourceHandleId:T.value.sourceHandle,targetHandleId:T.value.targetHandle,interactionWidth:T.value.interactionWidth,...i}),[R.value===`source`||R.value===!0?[l(`g`,{onMousedown:ce,onMouseenter:W,onMouseout:G},l(Wl,{position:g,centerX:v,centerY:y,radius:o.value,type:`source`,"data-type":`source`}))]:null,R.value===`target`||R.value===!0?[l(`g`,{onMousedown:le,onMouseenter:W,onMouseout:G},l(Wl,{position:_,centerX:b,centerY:x,radius:o.value,type:`target`,"data-type":`target`}))]:null]])};function W(){A.value=!0}function G(){A.value=!1}function te(e,t){E.update({event:e,edge:T.value,connection:t})}function K(e){E.updateEnd({event:e,edge:T.value}),M.value=!1}function q(e,t){e.button===0&&(M.value=!0,N.value=t?T.value.target:T.value.source,P.value=(t?T.value.targetHandle:T.value.sourceHandle)??null,F.value=t?`target`:`source`,E.updateStart({event:e,edge:T.value}),U(e))}function ne(e){var t;let n={event:e,edge:T.value};L.value&&(c.value=!1,T.value.selected&&v.value?(f([T.value]),(t=I.value)==null||t.blur()):i([T.value])),E.click(n)}function re(e){E.contextMenu({event:e,edge:T.value})}function ie(e){E.doubleClick({event:e,edge:T.value})}function ae(e){E.mouseEnter({event:e,edge:T.value})}function oe(e){E.mouseMove({event:e,edge:T.value})}function se(e){E.mouseLeave({event:e,edge:T.value})}function ce(e){q(e,!0)}function le(e){q(e,!1)}function ue(t){var n;!b.value&&No.includes(t.key)&&L.value&&(t.key===`Escape`?((n=I.value)==null||n.blur(),f([p(e.id)])):i([p(e.id)]))}}}),Kl=f({name:`ConnectionLine`,compatConfig:{MODE:3},setup(){let{id:e,connectionMode:t,connectionStartHandle:n,connectionEndHandle:i,connectionPosition:a,connectionLineType:o,connectionLineStyle:s,connectionLineOptions:c,connectionStatus:u,viewport:d,findNode:f}=$(),p=r(yc)?.[`connection-line`],m=g(()=>f(n.value?.nodeId)),h=g(()=>f(i.value?.nodeId)??null),_=g(()=>({x:(a.value.x-d.value.x)/d.value.zoom,y:(a.value.y-d.value.y)/d.value.zoom})),v=g(()=>c.value.markerStart?`url(#${ms(c.value.markerStart,e)})`:``),y=g(()=>c.value.markerEnd?`url(#${ms(c.value.markerEnd,e)})`:``);return()=>{if(!m.value||!n.value)return null;let e=n.value.id,r=n.value.type,a=m.value.handleBounds,d=a?.[r]??[];if(t.value===vo.Loose){let e=a?.[r===`source`?`target`:`source`]??[];d=[...d,...e]}if(!d)return null;let f=(e?d.find(t=>t.id===e):d[0])??null,g=f?.position??J.Top,{x:b,y:x}=Ps(m.value,f,g),S=null;h.value&&(S=t.value===vo.Strict?h.value.handleBounds[r===`source`?`target`:`source`]?.find(e=>e.id===i.value?.id)||null:[...h.value.handleBounds.source??[],...h.value.handleBounds.target??[]].find(e=>e.id===i.value?.id)||null);let C=i.value?.position??(g?tc[g]:null);if(!g||!C)return null;let w=o.value??c.value.type??_o.Bezier,T=``,E={sourceX:b,sourceY:x,sourcePosition:g,targetX:_.value.x,targetY:_.value.y,targetPosition:C};return w===_o.Bezier?[T]=ll(E):w===_o.Step?[T]=_l({...E,borderRadius:0}):w===_o.SmoothStep?[T]=_l(E):w===_o.SimpleBezier?[T]=dl(E):T=`M${b},${x} ${_.value.x},${_.value.y}`,l(`svg`,{class:`vue-flow__edges vue-flow__connectionline vue-flow__container`},l(`g`,{class:`vue-flow__connection`},p?l(p,{sourceX:b,sourceY:x,sourcePosition:g,targetX:_.value.x,targetY:_.value.y,targetPosition:C,sourceNode:m.value,sourceHandle:f,targetNode:h.value,targetHandle:S,markerEnd:y.value,markerStart:v.value,connectionStatus:u.value}):l(`path`,{d:T,class:[c.value.class,u.value,`vue-flow__connection-path`],style:{...s.value,...c.value.style},"marker-end":y.value,"marker-start":v.value})))}}}),ql=[`id`,`markerWidth`,`markerHeight`,`markerUnits`,`orient`],Jl=f({name:`MarkerType`,compatConfig:{MODE:3},props:{id:{},type:{},color:{default:`none`},width:{default:12.5},height:{default:12.5},markerUnits:{default:`strokeWidth`},orient:{default:`auto-start-reverse`},strokeWidth:{default:1}},setup(t){return(t,n)=>(e(),s(`marker`,{id:t.id,class:`vue-flow__arrowhead`,viewBox:`-10 -10 20 20`,refX:`0`,refY:`0`,markerWidth:`${t.width}`,markerHeight:`${t.height}`,markerUnits:t.markerUnits,orient:t.orient},[t.type===h(yo).ArrowClosed?(e(),s(`polyline`,{key:0,style:U({stroke:t.color,fill:t.color,strokeWidth:t.strokeWidth}),"stroke-linecap":`round`,"stroke-linejoin":`round`,points:`-5,-4 0,0 -5,4 -5,-4`},null,4)):v(``,!0),t.type===h(yo).Arrow?(e(),s(`polyline`,{key:1,style:U({stroke:t.color,strokeWidth:t.strokeWidth}),"stroke-linecap":`round`,"stroke-linejoin":`round`,fill:`none`,points:`-5,-4 0,0 -5,4`},null,4)):v(``,!0)],8,ql))}}),Yl={class:`vue-flow__marker vue-flow__container`,"aria-hidden":`true`},Xl=f({name:`MarkerDefinitions`,compatConfig:{MODE:3},setup(t){let{id:n,edges:r,connectionLineOptions:a,defaultMarkerColor:o}=$(),c=g(()=>{let e=new Set,t=[],i=r=>{if(r){let i=ms(r,n);e.has(i)||(typeof r==`object`?t.push({...r,id:i,color:r.color||o.value}):t.push({id:i,color:o.value,type:r}),e.add(i))}};for(let e of[a.value.markerEnd,a.value.markerStart])i(e);for(let e of r.value)for(let t of[e.markerStart,e.markerEnd])i(t);return t.sort((e,t)=>e.id.localeCompare(t.id))});return(t,n)=>(e(),s(`svg`,Yl,[i(`defs`,null,[(e(!0),s(T,null,H(c.value,t=>(e(),G(Jl,{id:t.id,key:t.id,type:t.type,color:t.color,width:t.width,height:t.height,markerUnits:t.markerUnits,"stroke-width":t.strokeWidth,orient:t.orient},null,8,[`id`,`type`,`color`,`width`,`height`,`markerUnits`,`stroke-width`,`orient`]))),128))])]))}}),Zl=f({name:`Edges`,compatConfig:{MODE:3},setup(t){let{findNode:n,getEdges:r,elevateEdgesOnSelect:i}=$();return(t,a)=>(e(),s(T,null,[P(Xl),(e(!0),s(T,null,H(h(r),t=>(e(),s(`svg`,{key:t.id,class:`vue-flow__edges vue-flow__container`,style:U({zIndex:h(Ls)(t,h(n),h(i))})},[P(h(Gl),{id:t.id},null,8,[`id`])],4))),128)),P(h(Kl))],64))}}),Ql=f({name:`Node`,compatConfig:{MODE:3},props:[`id`,`resizeObserver`],setup(e){let{id:t,noPanClassName:i,selectNodesOnDrag:a,nodesSelectionActive:o,multiSelectionActive:s,emits:c,removeSelectedNodes:u,addSelectedNodes:d,updateNodeDimensions:f,onUpdateNodeInternals:p,getNodeTypes:h,nodeExtent:_,elevateNodesOnSelect:v,disableKeyboardA11y:b,ariaLiveMessage:x,snapToGrid:w,snapGrid:T,nodeDragThreshold:E,nodesDraggable:D,elementsSelectable:O,nodesConnectable:k,nodesFocusable:M,hooks:N}=$(),P=y(null);j(gc,P),j(hc,e.id);let F=r(yc),I=m(),L=Ac(),{node:R,parentNode:z}=Dc(e.id),{emit:B,on:V}=kc(R,c),H=n(()=>R.draggable===void 0?D.value:R.draggable),U=n(()=>R.selectable===void 0?O.value:R.selectable),W=n(()=>R.connectable===void 0?k.value:R.connectable),G=n(()=>R.focusable===void 0?M.value:R.focusable),te=g(()=>U.value||H.value||N.value.nodeClick.hasListeners()||N.value.nodeDoubleClick.hasListeners()||N.value.nodeMouseEnter.hasListeners()||N.value.nodeMouseMove.hasListeners()||N.value.nodeMouseLeave.hasListeners()),K=n(()=>!!R.dimensions.width&&!!R.dimensions.height),q=g(()=>{let e=R.type||`default`,t=F?.[`node-${e}`];if(t)return t;let n=R.template||h.value[e];if(typeof n==`string`&&I){let t=Object.keys(I.appContext.components);t&&t.includes(e)&&(n=ee(e,!1))}return n&&typeof n!=`string`?n:(c.error(new Z(X.NODE_TYPE_MISSING,n)),!1)}),ne=bc({id:e.id,el:P,disabled:()=>!H.value,selectable:U,dragHandle:()=>R.dragHandle,onStart(e){B.dragStart(e)},onDrag(e){B.drag(e)},onStop(e){B.dragStop(e)},onClick(e){pe(e)}}),re=g(()=>R.class instanceof Function?R.class(R):R.class),ie=g(()=>{let e=(R.style instanceof Function?R.style(R):R.style)||{},t=R.width instanceof Function?R.width(R):R.width,n=R.height instanceof Function?R.height(R):R.height;return!e.width&&t&&(e.width=typeof t==`string`?t:`${t}px`),!e.height&&n&&(e.height=typeof n==`string`?n:`${n}px`),e}),ae=n(()=>Number(R.zIndex??ie.value.zIndex??0));return p(t=>{(t.includes(e.id)||!t.length)&&se()}),C(()=>{A(()=>R.hidden,(t=!1,n,r)=>{!t&&P.value&&(e.resizeObserver.observe(P.value),r(()=>{P.value&&e.resizeObserver.unobserve(P.value)}))},{immediate:!0,flush:`post`})}),A([()=>R.type,()=>R.sourcePosition,()=>R.targetPosition],()=>{S(()=>{f([{id:e.id,nodeElement:P.value,forceUpdate:!0}])})}),A([()=>R.position.x,()=>R.position.y,()=>z.value?.computedPosition.x,()=>z.value?.computedPosition.y,()=>z.value?.computedPosition.z,ae,()=>R.selected,()=>R.dimensions.height,()=>R.dimensions.width,()=>z.value?.dimensions.height,()=>z.value?.dimensions.width],([e,t,n,r,i,a])=>{let o={x:e,y:t,z:a+(v.value&&R.selected?1e3:0)};n!==void 0&&r!==void 0?R.computedPosition=fs({x:n,y:r,z:i},o):R.computedPosition=o},{flush:`post`,immediate:!0}),A([()=>R.extent,_],([e,t],[n,r])=>{(e!==n||t!==r)&&oe()}),R.extent===`parent`||typeof R.extent==`object`&&`range`in R.extent&&R.extent.range===`parent`?_e(()=>K).toBe(!0).then(oe):oe(),()=>R.hidden?null:l(`div`,{ref:P,"data-id":R.id,class:[`vue-flow__node`,`vue-flow__node-${q.value===!1?`default`:R.type||`default`}`,{[i.value]:H.value,dragging:ne?.value,draggable:H.value,selected:R.selected,selectable:U.value,parent:R.isParent},re.value],style:{visibility:K.value?`visible`:`hidden`,zIndex:R.computedPosition.z??ae.value,transform:`translate(${R.computedPosition.x}px,${R.computedPosition.y}px)`,pointerEvents:te.value?`all`:`none`,...ie.value},tabIndex:G.value?0:void 0,role:G.value?`group`:void 0,"aria-describedby":b.value?void 0:`${Ao}-${t}`,"aria-label":R.ariaLabel,"aria-roledescription":`node`,...R.domAttributes,onMouseenter:ce,onMousemove:le,onMouseleave:ue,onContextmenu:de,onClick:pe,onDblclick:fe,onKeydown:me},[l(q.value===!1?h.value.default:q.value,{id:R.id,type:R.type,data:R.data,events:{...R.events,...V},selected:R.selected,resizing:R.resizing,dragging:ne.value,connectable:W.value,position:R.computedPosition,dimensions:R.dimensions,isValidTargetPos:R.isValidTargetPos,isValidSourcePos:R.isValidSourcePos,parent:R.parentNode,parentNodeId:R.parentNode,zIndex:R.computedPosition.z??ae.value,targetPosition:R.targetPosition,sourcePosition:R.sourcePosition,label:R.label,dragHandle:R.dragHandle,onUpdateNodeInternals:se})]);function oe(){let e=R.computedPosition,{computedPosition:t,position:n}=Ns(R,w.value?Ws(e,T.value):e,c.error,_.value,z.value);(R.computedPosition.x!==t.x||R.computedPosition.y!==t.y)&&(R.computedPosition={...R.computedPosition,...t}),(R.position.x!==n.x||R.position.y!==n.y)&&(R.position=n)}function se(){P.value&&f([{id:e.id,nodeElement:P.value,forceUpdate:!0}])}function ce(e){ne?.value||B.mouseEnter({event:e,node:R})}function le(e){ne?.value||B.mouseMove({event:e,node:R})}function ue(e){ne?.value||B.mouseLeave({event:e,node:R})}function de(e){return B.contextMenu({event:e,node:R})}function fe(e){return B.doubleClick({event:e,node:R})}function pe(e){U.value&&(!a.value||!H.value||E.value>0)&&oc(R,s.value,d,u,o,!1,P.value),B.click({event:e,node:R})}function me(e){if(!(wo(e)||b.value)){if(No.includes(e.key)&&U.value){let t=e.key===`Escape`;oc(R,s.value,d,u,o,t,P.value)}else H.value&&R.selected&&Po[e.key]&&(e.preventDefault(),x.value=`Moved selected node ${e.key.replace(`Arrow`,``).toLowerCase()}. New position, x: ${~~R.position.x}, y: ${~~R.position.y}`,L({x:Po[e.key].x,y:Po[e.key].y},e.shiftKey))}}}});function $l(e={includeHiddenNodes:!1}){let{nodes:t}=$();return g(()=>{if(t.value.length===0)return!1;for(let n of t.value)if((e.includeHiddenNodes||!n.hidden)&&(n?.handleBounds===void 0||n.dimensions.width===0||n.dimensions.height===0))return!1;return!0})}var eu={class:`vue-flow__nodes vue-flow__container`},tu=f({name:`Nodes`,compatConfig:{MODE:3},setup(t){let{getNodes:n,updateNodeDimensions:r,emits:i}=$(),a=$l(),o=y();return A(a,e=>{e&&S(()=>{i.nodesInitialized(n.value)})},{immediate:!0}),C(()=>{o.value=new ResizeObserver(e=>{let t=e.map(e=>({id:e.target.getAttribute(`data-id`),nodeElement:e.target,forceUpdate:!0}));S(()=>r(t))})}),B(()=>o.value?.disconnect()),(t,r)=>(e(),s(`div`,eu,[o.value?(e(!0),s(T,{key:0},H(h(n),(t,n,r,i)=>{let a=[t.id];if(i&&i.key===t.id&&x(i,a))return i;let s=(e(),G(h(Ql),{id:t.id,key:t.id,"resize-observer":o.value},null,8,[`id`,`resize-observer`]));return s.memo=a,s},r,0),128)):v(``,!0)]))}});function nu(){let{emits:e}=$();C(()=>{if(ic()){let t=document.querySelector(`.vue-flow__pane`);t&&window.getComputedStyle(t).zIndex!==`1`&&e.error(new Z(X.MISSING_STYLES))}})}var ru=i(`div`,{class:`vue-flow__edge-labels`},null,-1),iu=f({name:`VueFlow`,compatConfig:{MODE:3},props:{id:{},modelValue:{},nodes:{},edges:{},edgeTypes:{},nodeTypes:{},connectionMode:{},connectionLineType:{},connectionLineStyle:{default:void 0},connectionLineOptions:{default:void 0},connectionRadius:{},isValidConnection:{type:[Function,null],default:void 0},deleteKeyCode:{default:void 0},selectionKeyCode:{type:[Boolean,null],default:void 0},multiSelectionKeyCode:{default:void 0},zoomActivationKeyCode:{default:void 0},panActivationKeyCode:{default:void 0},snapToGrid:{type:Boolean,default:void 0},snapGrid:{},onlyRenderVisibleElements:{type:Boolean,default:void 0},edgesUpdatable:{type:[Boolean,String],default:void 0},nodesDraggable:{type:Boolean,default:void 0},nodesConnectable:{type:Boolean,default:void 0},nodeDragThreshold:{},elementsSelectable:{type:Boolean,default:void 0},selectNodesOnDrag:{type:Boolean,default:void 0},panOnDrag:{type:[Boolean,Array],default:void 0},minZoom:{},maxZoom:{},defaultViewport:{},translateExtent:{},nodeExtent:{},defaultMarkerColor:{},zoomOnScroll:{type:Boolean,default:void 0},zoomOnPinch:{type:Boolean,default:void 0},panOnScroll:{type:Boolean,default:void 0},panOnScrollSpeed:{},panOnScrollMode:{},paneClickDistance:{},zoomOnDoubleClick:{type:Boolean,default:void 0},preventScrolling:{type:Boolean,default:void 0},selectionMode:{},edgeUpdaterRadius:{},fitViewOnInit:{type:Boolean,default:void 0},connectOnClick:{type:Boolean,default:void 0},applyDefault:{type:Boolean,default:void 0},autoConnect:{type:[Boolean,Function],default:void 0},noDragClassName:{},noWheelClassName:{},noPanClassName:{},defaultEdgeOptions:{},elevateEdgesOnSelect:{type:Boolean,default:void 0},elevateNodesOnSelect:{type:Boolean,default:void 0},disableKeyboardA11y:{type:Boolean,default:void 0},edgesFocusable:{type:Boolean,default:void 0},nodesFocusable:{type:Boolean,default:void 0},autoPanOnConnect:{type:Boolean,default:void 0},autoPanOnNodeDrag:{type:Boolean,default:void 0},autoPanSpeed:{}},emits:`nodesChange.edgesChange.nodesInitialized.paneReady.init.updateNodeInternals.error.connect.connectStart.connectEnd.clickConnectStart.clickConnectEnd.moveStart.move.moveEnd.selectionDragStart.selectionDrag.selectionDragStop.selectionContextMenu.selectionStart.selectionEnd.viewportChangeStart.viewportChange.viewportChangeEnd.paneScroll.paneClick.paneContextMenu.paneMouseEnter.paneMouseMove.paneMouseLeave.edgeUpdate.edgeContextMenu.edgeMouseEnter.edgeMouseMove.edgeMouseLeave.edgeDoubleClick.edgeClick.edgeUpdateStart.edgeUpdateEnd.nodeContextMenu.nodeMouseEnter.nodeMouseMove.nodeMouseLeave.nodeDoubleClick.nodeClick.nodeDragStart.nodeDrag.nodeDragStop.miniMapNodeClick.miniMapNodeDoubleClick.miniMapNodeMouseEnter.miniMapNodeMouseMove.miniMapNodeMouseLeave.update:modelValue.update:nodes.update:edges`.split(`.`),setup(t,{expose:n,emit:r}){let i=t,a=I(),o=we(i,`modelValue`,r),c=we(i,`nodes`,r),l=we(i,`edges`,r),u=$(i),d=Lc({modelValue:o,nodes:c,edges:l},i,u);return zc(r,u.hooks),Bl(),nu(),j(yc,a),w(d),n(u),(t,n)=>(e(),s(`div`,{ref:h(u).vueFlowRef,class:`vue-flow`},[P(Fl,null,{default:z(()=>[P(Zl),ru,P(tu),R(t.$slots,`zoom-pane`)]),_:3}),R(t.$slots,`default`),P(zl)],512))}}),au=f({name:`Panel`,compatConfig:{MODE:3},props:{position:{}},setup(t){let n=t,{userSelectionActive:r}=$(),i=g(()=>`${n.position}`.split(`-`));return(t,n)=>(e(),s(`div`,{class:k([`vue-flow__panel`,i.value]),style:U({pointerEvents:h(r)?`none`:`all`})},[R(t.$slots,`default`)],6))}});q(),W(),c();var ou=(e=>(e.Lines=`lines`,e.Dots=`dots`,e))(ou||{}),su=function({dimensions:e,size:t,color:n}){return l(`path`,{stroke:n,"stroke-width":t,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`})},cu=function({radius:e,color:t}){return l(`circle`,{cx:e,cy:e,r:e,fill:t})};ou.Lines,ou.Dots;var lu={[ou.Dots]:`#81818a`,[ou.Lines]:`#eee`},uu=[`id`,`x`,`y`,`width`,`height`,`patternTransform`],du={key:2,height:`100`,width:`100`},fu=[`fill`],pu=[`x`,`y`,`fill`],mu=f({name:`Background`,compatConfig:{MODE:3},props:{id:{},variant:{default:()=>ou.Dots},gap:{default:20},size:{default:1},lineWidth:{default:1},patternColor:{},color:{},bgColor:{},height:{default:100},width:{default:100},x:{default:0},y:{default:0},offset:{default:0}},setup(t){let{id:r,viewport:a}=$(),o=g(()=>{let e=a.value.zoom,[n,r]=Array.isArray(t.gap)?t.gap:[t.gap,t.gap],i=[n*e||1,r*e||1],o=t.size*e,[s,c]=Array.isArray(t.offset)?t.offset:[t.offset,t.offset];return{scaledGap:i,offset:[s*e||1+i[0]/2,c*e||1+i[1]/2],size:o}}),c=n(()=>`pattern-${r}${t.id?`-${t.id}`:``}`),l=n(()=>t.color||t.patternColor||lu[t.variant||ou.Dots]);return(t,n)=>(e(),s(`svg`,{class:`vue-flow__background vue-flow__container`,style:U({height:`${t.height>100?100:t.height}%`,width:`${t.width>100?100:t.width}%`})},[R(t.$slots,`pattern-container`,{id:c.value},()=>[i(`pattern`,{id:c.value,x:h(a).x%o.value.scaledGap[0],y:h(a).y%o.value.scaledGap[1],width:o.value.scaledGap[0],height:o.value.scaledGap[1],patternTransform:`translate(-${o.value.offset[0]},-${o.value.offset[1]})`,patternUnits:`userSpaceOnUse`},[R(t.$slots,`pattern`,{},()=>[t.variant===h(ou).Lines?(e(),G(h(su),{key:0,size:t.lineWidth,color:l.value,dimensions:o.value.scaledGap},null,8,[`size`,`color`,`dimensions`])):t.variant===h(ou).Dots?(e(),G(h(cu),{key:1,color:l.value,radius:o.value.size/2},null,8,[`color`,`radius`])):v(``,!0),t.bgColor?(e(),s(`svg`,du,[i(`rect`,{width:`100%`,height:`100%`,fill:t.bgColor},null,8,fu)])):v(``,!0)])],8,uu)]),i(`rect`,{x:t.x,y:t.y,width:`100%`,height:`100%`,fill:`url(#${c.value})`},null,8,pu),R(t.$slots,`default`,{id:c.value})],4))}});q(),W();var hu={name:`ControlButton`,compatConfig:{MODE:3}},gu=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},_u={type:`button`,class:`vue-flow__controls-button`};function vu(t,n,r,i,a,o){return e(),s(`button`,_u,[R(t.$slots,`default`)])}var yu=gu(hu,[[`render`,vu]]),bu={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 32`},xu=[i(`path`,{d:`M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z`},null,-1)];function Su(t,n){return e(),s(`svg`,bu,xu)}var Cu={render:Su},wu={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 5`},Tu=[i(`path`,{d:`M0 0h32v4.2H0z`},null,-1)];function Eu(t,n){return e(),s(`svg`,wu,Tu)}var Du={render:Eu},Ou={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 30`},ku=[i(`path`,{d:`M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0 0 27.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94a.919.919 0 0 1-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z`},null,-1)];function Au(t,n){return e(),s(`svg`,Ou,ku)}var ju={render:Au},Mu={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 25 32`},Nu=[i(`path`,{d:`M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 0 0 0 13.714v15.238A3.056 3.056 0 0 0 3.048 32h18.285a3.056 3.056 0 0 0 3.048-3.048V13.714a3.056 3.056 0 0 0-3.048-3.047zM12.19 24.533a3.056 3.056 0 0 1-3.047-3.047 3.056 3.056 0 0 1 3.047-3.048 3.056 3.056 0 0 1 3.048 3.048 3.056 3.056 0 0 1-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z`},null,-1)];function Pu(t,n){return e(),s(`svg`,Mu,Nu)}var Fu={render:Pu},Iu={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 25 32`},Lu=[i(`path`,{d:`M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 0 0 0 13.714v15.238A3.056 3.056 0 0 0 3.048 32h18.285a3.056 3.056 0 0 0 3.048-3.048V13.714a3.056 3.056 0 0 0-3.048-3.047zM12.19 24.533a3.056 3.056 0 0 1-3.047-3.047 3.056 3.056 0 0 1 3.047-3.048 3.056 3.056 0 0 1 3.048 3.048 3.056 3.056 0 0 1-3.048 3.047z`},null,-1)];function Ru(t,n){return e(),s(`svg`,Iu,Lu)}var zu={render:Ru},Bu=f({name:`Controls`,compatConfig:{MODE:3},props:{showZoom:{type:Boolean,default:!0},showFitView:{type:Boolean,default:!0},showInteractive:{type:Boolean,default:!0},fitViewParams:{},position:{default:()=>xo.BottomLeft}},emits:[`zoomIn`,`zoomOut`,`fitView`,`interactionChange`],setup(t,{emit:r}){let{nodesDraggable:i,nodesConnectable:a,elementsSelectable:o,setInteractive:c,zoomIn:l,zoomOut:u,fitView:d,viewport:f,minZoom:p,maxZoom:m}=$(),g=n(()=>i.value||a.value||o.value),_=n(()=>f.value.zoom<=p.value),y=n(()=>f.value.zoom>=m.value);function b(){l(),r(`zoomIn`)}function x(){u(),r(`zoomOut`)}function S(){d(t.fitViewParams),r(`fitView`)}function C(){c(!g.value),r(`interactionChange`,!g.value)}return(t,n)=>(e(),G(h(au),{class:`vue-flow__controls`,position:t.position},{default:z(()=>[R(t.$slots,`top`),t.showZoom?(e(),s(T,{key:0},[R(t.$slots,`control-zoom-in`,{},()=>[P(yu,{class:`vue-flow__controls-zoomin`,disabled:y.value,onClick:b},{default:z(()=>[R(t.$slots,`icon-zoom-in`,{},()=>[(e(),G(D(h(Cu))))])]),_:3},8,[`disabled`])]),R(t.$slots,`control-zoom-out`,{},()=>[P(yu,{class:`vue-flow__controls-zoomout`,disabled:_.value,onClick:x},{default:z(()=>[R(t.$slots,`icon-zoom-out`,{},()=>[(e(),G(D(h(Du))))])]),_:3},8,[`disabled`])])],64)):v(``,!0),t.showFitView?R(t.$slots,`control-fit-view`,{key:1},()=>[P(yu,{class:`vue-flow__controls-fitview`,onClick:S},{default:z(()=>[R(t.$slots,`icon-fit-view`,{},()=>[(e(),G(D(h(ju))))])]),_:3})]):v(``,!0),t.showInteractive?R(t.$slots,`control-interactive`,{key:2},()=>[t.showInteractive?(e(),G(yu,{key:0,class:`vue-flow__controls-interactive`,onClick:C},{default:z(()=>[g.value?R(t.$slots,`icon-unlock`,{key:0},()=>[(e(),G(D(h(zu))))]):v(``,!0),g.value?v(``,!0):R(t.$slots,`icon-lock`,{key:1},()=>[(e(),G(D(h(Fu))))])]),_:3})):v(``,!0)]):v(``,!0),R(t.$slots,`default`)]),_:3},8,[`position`]))}});export{J as a,Gc as c,as as d,Hs as f,yo as i,is as l,hs as m,ou as n,au as o,$ as p,mu as r,iu as s,Bu as t,ss as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./chunk-FOHPRMQF-CoA4358r.js";import{i as e}from"./mermaid-parser.core-
|
|
1
|
+
import"./chunk-FOHPRMQF-CoA4358r.js";import{i as e}from"./mermaid-parser.core-C3pC5XqX.js";export{e as createWardleyServices};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{n as e}from"./mermaid-parser.core-
|
|
1
|
+
import{n as e}from"./mermaid-parser.core-C3pC5XqX.js";import{n as t}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{m as n}from"./src-Bd6kVAy5.js";import{D as r,H as i,K as a,U as o,a as s,b as c,c as l,v as u,w as d,x as f,y as p}from"./chunk-DU6HZSFF-yMMoBTo7.js";import{i as m}from"./chunk-75Z2AOVW-_W5tuIwa.js";import{t as h}from"./chunk-JWPE2WC7-DVXcaiue.js";import{f as g}from"./mermaid.core-DT2IMBeS.js";var _=t((e,t)=>{let n=e<=1?e*100:e;if(n<0||n>100)throw Error(`${t} must be between 0-1 (decimal) or 0-100 (percentage). Received: ${e}`);return n},`toPercent`),v=t((e,t,n)=>({x:_(t,`${n} evolution`),y:_(e,`${n} visibility`)}),`toCoordinates`),y=t(e=>{if(e){if(e===`+<>`)return`bidirectional`;if(e===`+<`)return`backward`;if(e===`+>`)return`forward`}},`getFlowFromPort`),b=t(e=>{if(!e?.startsWith(`+`))return{};let t=/^\+'([^']*)'/.exec(e)?.[1];return e.includes(`<>`)?{flow:`bidirectional`,label:t}:e.includes(`<`)?{flow:`backward`,label:t}:e.includes(`>`)?{flow:`forward`,label:t}:{label:t}},`extractFlowFromArrow`),x=t((e,t)=>{if(h(e,t),e.size&&t.setSize(e.size.width,e.size.height),e.evolution){let n=e.evolution.stages.map(e=>e.secondName?`${e.name.trim()} / ${e.secondName.trim()}`:e.name.trim()),r=e.evolution.stages.filter(e=>e.boundary!==void 0).map(e=>e.boundary);t.updateAxes({stages:n,stageBoundaries:r})}if(e.anchors.forEach(e=>{let n=v(e.visibility,e.evolution,`Anchor "${e.name}"`);t.addNode(e.name,e.name,n.x,n.y,`anchor`)}),e.components.forEach(e=>{let n=v(e.visibility,e.evolution,`Component "${e.name}"`),r=e.label?(e.label.negX?-1:1)*e.label.offsetX:void 0,i=e.label?(e.label.negY?-1:1)*e.label.offsetY:void 0,a=e.decorator?.strategy;t.addNode(e.name,e.name,n.x,n.y,`component`,r,i,e.inertia,a)}),e.notes.forEach(e=>{let n=v(e.visibility,e.evolution,`Note "${e.text}"`);t.addNote(e.text,n.x,n.y)}),e.pipelines.forEach(e=>{let n=t.getNode(e.parent);if(!n||typeof n.y!=`number`)throw Error(`Pipeline "${e.parent}" must reference an existing component with coordinates.`);let r=n.y;t.startPipeline(e.parent),e.components.forEach(n=>{let i=`${e.parent}_${n.name}`,a=n.label?(n.label.negX?-1:1)*n.label.offsetX:void 0,o=n.label?(n.label.negY?-1:1)*n.label.offsetY:void 0,s=_(n.evolution,`Pipeline component "${n.name}" evolution`);t.addNode(i,n.name,s,r,`pipeline-component`,a,o),t.addPipelineComponent(e.parent,i)})}),e.links.forEach(e=>{let n=!!e.arrow&&(e.arrow.includes(`-.->`)||e.arrow.includes(`.-.`)),r=y(e.fromPort)??y(e.toPort),{flow:i,label:a}=b(e.arrow);!r&&i&&(r=i);let o=e.linkLabel,s=a??o;t.addLink(t.resolveNodeId(e.from),t.resolveNodeId(e.to),n,s,r)}),e.evolves.forEach(e=>{let n=t.getNode(e.component);if(n?.y!==void 0){let r=_(e.target,`Evolve target for "${e.component}"`);t.addTrend(e.component,r,n.y)}}),e.annotations.length>0){let n=e.annotations[0],r=v(n.x,n.y,`Annotations box`);t.setAnnotationsBox(r.x,r.y)}e.annotation.forEach(e=>{let n=v(e.x,e.y,`Annotation ${e.number}`);t.addAnnotation(e.number,[{x:n.x,y:n.y}],e.text)}),e.accelerators.forEach(e=>{let n=v(e.x,e.y,`Accelerator "${e.name}"`);t.addAccelerator(e.name,n.x,n.y)}),e.deaccelerators.forEach(e=>{let n=v(e.x,e.y,`Deaccelerator "${e.name}"`);t.addDeaccelerator(e.name,n.x,n.y)})},`populateDb`),S={parser:{yy:void 0},parse:t(async t=>{let r=await e(`wardley`,t);n.debug(r);let i=S.parser?.yy;if(!i||typeof i.addNode!=`function`)throw Error(`parser.parser?.yy was not a WardleyDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.`);x(r,i)},`parse`)},C=new class{constructor(){this.nodes=new Map,this.links=[],this.trends=new Map,this.pipelines=new Map,this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.axes={}}static{t(this,`WardleyBuilder`)}addNode(e){let t=this.nodes.get(e.id)??{id:e.id,label:e.label},n={...t,...e,className:e.className??t.className,labelOffsetX:e.labelOffsetX??t.labelOffsetX,labelOffsetY:e.labelOffsetY??t.labelOffsetY};this.nodes.set(e.id,n)}addLink(e){this.links.push(e)}addTrend(e){this.trends.set(e.nodeId,e)}startPipeline(e){this.pipelines.set(e,{nodeId:e,componentIds:[]});let t=this.nodes.get(e);t&&(t.isPipelineParent=!0)}addPipelineComponent(e,t){let n=this.pipelines.get(e);n&&n.componentIds.push(t);let r=this.nodes.get(t);r&&(r.inPipeline=!0)}addAnnotation(e){this.annotations.push(e)}addNote(e){this.notes.push(e)}addAccelerator(e){this.accelerators.push(e)}addDeaccelerator(e){this.deaccelerators.push(e)}setAnnotationsBox(e,t){this.annotationsBox={x:e,y:t}}setAxes(e){this.axes={...this.axes,...e}}setSize(e,t){this.size={width:e,height:t}}getNode(e){return this.nodes.get(e)}resolveNodeId(e){if(this.nodes.has(e))return e;for(let[t,n]of this.nodes)if(n.label===e)return t;return e}build(){let e=[];for(let t of this.nodes.values()){if(typeof t.x!=`number`||typeof t.y!=`number`)throw Error(`Node "${t.label}" is missing coordinates`);e.push(t)}return{nodes:e,links:[...this.links],trends:[...this.trends.values()],pipelines:[...this.pipelines.values()],annotations:[...this.annotations],notes:[...this.notes],accelerators:[...this.accelerators],deaccelerators:[...this.deaccelerators],annotationsBox:this.annotationsBox,axes:{...this.axes},size:this.size}}clear(){this.nodes.clear(),this.links=[],this.trends.clear(),this.pipelines.clear(),this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.annotationsBox=void 0,this.axes={},this.size=void 0}};function w(){return f()[`wardley-beta`]}t(w,`getConfig`);function T(e,t,n,r,i,a,o,s,c){C.addNode({id:e,label:t,x:n,y:r,className:i,labelOffsetX:a,labelOffsetY:o,inertia:s,sourceStrategy:c})}t(T,`addNode`);function E(e,t,n=!1,r,i){C.addLink({source:e,target:t,dashed:n,label:r,flow:i})}t(E,`addLink`);function D(e,t,n){C.addTrend({nodeId:e,targetX:t,targetY:n})}t(D,`addTrend`);function O(e,t,n){C.addAnnotation({number:e,coordinates:t,text:n})}t(O,`addAnnotation`);function k(e,t,n){C.addNote({text:e,x:t,y:n})}t(k,`addNote`);function A(e,t,n){C.addAccelerator({name:e,x:t,y:n})}t(A,`addAccelerator`);function j(e,t,n){C.addDeaccelerator({name:e,x:t,y:n})}t(j,`addDeaccelerator`);function M(e,t){C.setAnnotationsBox(e,t)}t(M,`setAnnotationsBox`);function N(e,t){C.setSize(e,t)}t(N,`setSize`);function P(e){C.startPipeline(e)}t(P,`startPipeline`);function F(e,t){C.addPipelineComponent(e,t)}t(F,`addPipelineComponent`);function I(e){C.setAxes(e)}t(I,`updateAxes`);function L(e){return C.getNode(e)}t(L,`getNode`);function R(e){return C.resolveNodeId(e)}t(R,`resolveNodeId`);function z(){return C.build()}t(z,`getWardleyData`);function B(){C.clear(),s()}t(B,`clear`);var V={getConfig:w,addNode:T,addLink:E,addTrend:D,addAnnotation:O,addNote:k,addAccelerator:A,addDeaccelerator:j,setAnnotationsBox:M,setSize:N,startPipeline:P,addPipelineComponent:F,updateAxes:I,getNode:L,resolveNodeId:R,getWardleyData:z,clear:B,setAccTitle:o,getAccTitle:p,setDiagramTitle:a,getDiagramTitle:d,getAccDescription:u,setAccDescription:i},H=[`Genesis`,`Custom Built`,`Product`,`Commodity`],U=t(()=>{let{themeVariables:e}=f();return{backgroundColor:e.wardley?.backgroundColor??e.background??`#fff`,axisColor:e.wardley?.axisColor??`#000`,axisTextColor:e.wardley?.axisTextColor??e.primaryTextColor??`#222`,gridColor:e.wardley?.gridColor??`rgba(100, 100, 100, 0.2)`,componentFill:e.wardley?.componentFill??`#fff`,componentStroke:e.wardley?.componentStroke??`#000`,componentLabelColor:e.wardley?.componentLabelColor??e.primaryTextColor??`#222`,linkStroke:e.wardley?.linkStroke??`#000`,evolutionStroke:e.wardley?.evolutionStroke??`#dc3545`,annotationStroke:e.wardley?.annotationStroke??`#000`,annotationTextColor:e.wardley?.annotationTextColor??e.primaryTextColor??`#222`,annotationFill:e.wardley?.annotationFill??e.background??`#fff`}},`getTheme`),W=t(()=>{let e=f()[`wardley-beta`];return{width:e?.width??900,height:e?.height??600,padding:e?.padding??48,nodeRadius:e?.nodeRadius??6,nodeLabelOffset:e?.nodeLabelOffset??8,axisFontSize:e?.axisFontSize??12,labelFontSize:e?.labelFontSize??10,showGrid:e?.showGrid??!1,useMaxWidth:e?.useMaxWidth??!0}},`getConfigValues`),G={parser:S,db:V,renderer:{draw:t((e,r,i,a)=>{n.debug(`Rendering Wardley map
|
|
2
2
|
`+e);let o=W(),s=U(),c=o.nodeRadius*1.6,u=a.db,d=u.getWardleyData(),f=u.getDiagramTitle(),p=d.size?.width??o.width,m=d.size?.height??o.height,h=g(r);h.selectAll(`*`).remove(),l(h,m,p,o.useMaxWidth),h.attr(`viewBox`,`0 0 ${p} ${m}`);let _=h.append(`g`).attr(`class`,`wardley-map`),v=h.append(`defs`);v.append(`marker`).attr(`id`,`arrow-${r}`).attr(`viewBox`,`0 0 10 10`).attr(`refX`,9).attr(`refY`,5).attr(`markerWidth`,6).attr(`markerHeight`,6).attr(`orient`,`auto-start-reverse`).append(`path`).attr(`d`,`M 0 0 L 10 5 L 0 10 z`).attr(`fill`,s.evolutionStroke).attr(`stroke`,`none`),v.append(`marker`).attr(`id`,`link-arrow-end-${r}`).attr(`viewBox`,`0 0 10 10`).attr(`refX`,9).attr(`refY`,5).attr(`markerWidth`,5).attr(`markerHeight`,5).attr(`orient`,`auto`).append(`path`).attr(`d`,`M 0 0 L 10 5 L 0 10 z`).attr(`fill`,s.linkStroke).attr(`stroke`,`none`),v.append(`marker`).attr(`id`,`link-arrow-start-${r}`).attr(`viewBox`,`0 0 10 10`).attr(`refX`,1).attr(`refY`,5).attr(`markerWidth`,5).attr(`markerHeight`,5).attr(`orient`,`auto`).append(`path`).attr(`d`,`M 10 0 L 0 5 L 10 10 z`).attr(`fill`,s.linkStroke).attr(`stroke`,`none`),_.append(`rect`).attr(`class`,`wardley-background`).attr(`width`,p).attr(`height`,m).attr(`fill`,s.backgroundColor);let y=p-o.padding*2,b=m-o.padding*2;f&&_.append(`text`).attr(`class`,`wardley-title`).attr(`x`,p/2).attr(`y`,o.padding/2).attr(`fill`,s.axisTextColor).attr(`font-size`,o.axisFontSize*1.05).attr(`font-weight`,`bold`).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,`middle`).text(f);let x=t(e=>o.padding+e/100*y,`projectX`),S=t(e=>m-o.padding-e/100*b,`projectY`),C=_.append(`g`).attr(`class`,`wardley-axes`);C.append(`line`).attr(`x1`,o.padding).attr(`x2`,p-o.padding).attr(`y1`,m-o.padding).attr(`y2`,m-o.padding).attr(`stroke`,s.axisColor).attr(`stroke-width`,1),C.append(`line`).attr(`x1`,o.padding).attr(`x2`,o.padding).attr(`y1`,o.padding).attr(`y2`,m-o.padding).attr(`stroke`,s.axisColor).attr(`stroke-width`,1);let w=d.axes.xLabel??`Evolution`,T=d.axes.yLabel??`Visibility`;C.append(`text`).attr(`class`,`wardley-axis-label wardley-axis-label-x`).attr(`x`,o.padding+y/2).attr(`y`,m-o.padding/4).attr(`fill`,s.axisTextColor).attr(`font-size`,o.axisFontSize).attr(`font-weight`,`bold`).attr(`text-anchor`,`middle`).text(w),C.append(`text`).attr(`class`,`wardley-axis-label wardley-axis-label-y`).attr(`x`,o.padding/3).attr(`y`,o.padding+b/2).attr(`fill`,s.axisTextColor).attr(`font-size`,o.axisFontSize).attr(`font-weight`,`bold`).attr(`text-anchor`,`middle`).attr(`transform`,`rotate(-90 ${o.padding/3} ${o.padding+b/2})`).text(T);let E=d.axes.stages&&d.axes.stages.length>0?d.axes.stages:H;if(E.length>0){let e=_.append(`g`).attr(`class`,`wardley-stages`),t=d.axes.stageBoundaries,n=[];if(t&&t.length===E.length){let e=0;t.forEach(t=>{n.push({start:e,end:t}),e=t})}else{let e=1/E.length;E.forEach((t,r)=>{n.push({start:r*e,end:(r+1)*e})})}E.forEach((t,r)=>{let i=n[r],a=o.padding+i.start*y,c=(a+(o.padding+i.end*y))/2;r>0&&e.append(`line`).attr(`x1`,a).attr(`x2`,a).attr(`y1`,o.padding).attr(`y2`,m-o.padding).attr(`stroke`,`#000`).attr(`stroke-width`,1).attr(`stroke-dasharray`,`5 5`).attr(`opacity`,.8),e.append(`text`).attr(`class`,`wardley-stage-label`).attr(`x`,c).attr(`y`,m-o.padding/1.5).attr(`fill`,s.axisTextColor).attr(`font-size`,o.axisFontSize-2).attr(`text-anchor`,`middle`).text(t)})}if(o.showGrid){let e=_.append(`g`).attr(`class`,`wardley-grid`);for(let t=1;t<4;t++){let n=t/4,r=o.padding+y*n;e.append(`line`).attr(`x1`,r).attr(`x2`,r).attr(`y1`,o.padding).attr(`y2`,m-o.padding).attr(`stroke`,s.gridColor).attr(`stroke-dasharray`,`2 6`),e.append(`line`).attr(`x1`,o.padding).attr(`x2`,p-o.padding).attr(`y1`,m-o.padding-b*n).attr(`y2`,m-o.padding-b*n).attr(`stroke`,s.gridColor).attr(`stroke-dasharray`,`2 6`)}}let D=new Map;if(d.nodes.forEach(e=>{D.set(e.id,{x:x(e.x),y:S(e.y),node:e})}),d.pipelines.length>0){let e=_.append(`g`).attr(`class`,`wardley-pipelines`),t=_.append(`g`).attr(`class`,`wardley-pipeline-links`);d.pipelines.forEach(n=>{if(n.componentIds.length===0)return;let r=n.componentIds.map(e=>({id:e,pos:D.get(e),node:d.nodes.find(t=>t.id===e)})).filter(e=>e.pos&&e.node).sort((e,t)=>e.node.x-t.node.x);for(let e=0;e<r.length-1;e++){let n=r[e],i=r[e+1];t.append(`line`).attr(`class`,`wardley-pipeline-evolution-link`).attr(`x1`,n.pos.x).attr(`y1`,n.pos.y).attr(`x2`,i.pos.x).attr(`y2`,i.pos.y).attr(`stroke`,s.linkStroke).attr(`stroke-width`,1).attr(`stroke-dasharray`,`4 4`)}let i=1/0,a=-1/0,l=0;if(n.componentIds.forEach(e=>{let t=D.get(e);t&&(i=Math.min(i,t.x),a=Math.max(a,t.x),l=t.y)}),i!==1/0&&a!==-1/0){let t=o.nodeRadius*4,r=l-t/2,u=D.get(n.nodeId);u&&(u.x=(i+a)/2,u.y=r-c/6),e.append(`rect`).attr(`class`,`wardley-pipeline-box`).attr(`x`,i-15).attr(`y`,r).attr(`width`,a-i+30).attr(`height`,t).attr(`fill`,`none`).attr(`stroke`,s.axisColor).attr(`stroke-width`,1.5).attr(`rx`,4).attr(`ry`,4)}})}let O=_.append(`g`).attr(`class`,`wardley-links`),k=new Map;d.pipelines.forEach(e=>{k.set(e.nodeId,new Set(e.componentIds))});let A=d.links.filter(e=>!(!D.has(e.source)||!D.has(e.target)||k.get(e.target)?.has(e.source)));O.selectAll(`line`).data(A).enter().append(`line`).attr(`class`,e=>`wardley-link${e.dashed?` wardley-link--dashed`:``}`).attr(`x1`,e=>{let t=D.get(e.source),n=D.get(e.target),r=d.nodes.find(t=>t.id===e.source).isPipelineParent?c/Math.sqrt(2):o.nodeRadius,i=n.x-t.x,a=n.y-t.y,s=Math.sqrt(i*i+a*a);return t.x+i/s*r}).attr(`y1`,e=>{let t=D.get(e.source),n=D.get(e.target),r=d.nodes.find(t=>t.id===e.source).isPipelineParent?c/Math.sqrt(2):o.nodeRadius,i=n.x-t.x,a=n.y-t.y,s=Math.sqrt(i*i+a*a);return t.y+a/s*r}).attr(`x2`,e=>{let t=D.get(e.source),n=D.get(e.target),r=d.nodes.find(t=>t.id===e.target).isPipelineParent?c/Math.sqrt(2):o.nodeRadius,i=t.x-n.x,a=t.y-n.y,s=Math.sqrt(i*i+a*a);return n.x+i/s*r}).attr(`y2`,e=>{let t=D.get(e.source),n=D.get(e.target),r=d.nodes.find(t=>t.id===e.target).isPipelineParent?c/Math.sqrt(2):o.nodeRadius,i=t.x-n.x,a=t.y-n.y,s=Math.sqrt(i*i+a*a);return n.y+a/s*r}).attr(`stroke`,s.linkStroke).attr(`stroke-width`,1).attr(`stroke-dasharray`,e=>e.dashed?`6 6`:null).attr(`marker-end`,e=>e.flow===`forward`||e.flow===`bidirectional`?`url(#link-arrow-end-${r})`:null).attr(`marker-start`,e=>e.flow===`backward`||e.flow===`bidirectional`?`url(#link-arrow-start-${r})`:null),O.selectAll(`text`).data(A.filter(e=>e.label)).enter().append(`text`).attr(`class`,`wardley-link-label`).attr(`x`,e=>{let t=D.get(e.source),n=D.get(e.target),r=(t.x+n.x)/2,i=n.y-t.y,a=n.x-t.x;return r+i/Math.sqrt(a*a+i*i)*8}).attr(`y`,e=>{let t=D.get(e.source),n=D.get(e.target),r=(t.y+n.y)/2,i=n.x-t.x,a=n.y-t.y,o=Math.sqrt(i*i+a*a);return r+-i/o*8}).attr(`fill`,s.axisTextColor).attr(`font-size`,o.labelFontSize).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,`middle`).attr(`transform`,e=>{let t=D.get(e.source),n=D.get(e.target),r=(t.x+n.x)/2,i=(t.y+n.y)/2,a=n.x-t.x,o=n.y-t.y,s=Math.sqrt(a*a+o*o),c=o/s,l=-a/s,u=r+c*8,d=i+l*8,f=Math.atan2(o,a)*180/Math.PI;return(f>90||f<-90)&&(f+=180),`rotate(${f} ${u} ${d})`}).text(e=>e.label);let j=_.append(`g`).attr(`class`,`wardley-trends`),M=d.trends.map(e=>{let t=D.get(e.nodeId);if(!t)return null;let n=x(e.targetX),r=S(e.targetY),i=n-t.x,a=r-t.y,s=Math.sqrt(i*i+a*a),c=o.nodeRadius+2;return{origin:t,targetX:n,targetY:r,adjustedX2:s>c?n-i/s*c:n,adjustedY2:s>c?r-a/s*c:r}}).filter(e=>e!==null);j.selectAll(`line`).data(M).enter().append(`line`).attr(`class`,`wardley-trend`).attr(`x1`,e=>e.origin.x).attr(`y1`,e=>e.origin.y).attr(`x2`,e=>e.adjustedX2).attr(`y2`,e=>e.adjustedY2).attr(`stroke`,s.evolutionStroke).attr(`stroke-width`,1).attr(`stroke-dasharray`,`4 4`).attr(`marker-end`,`url(#arrow-${r})`);let N=_.append(`g`).attr(`class`,`wardley-nodes`).selectAll(`g`).data(d.nodes).enter().append(`g`).attr(`class`,e=>[`wardley-node`,e.className?`wardley-node--${e.className}`:``].filter(Boolean).join(` `));N.filter(e=>e.sourceStrategy===`outsource`).append(`circle`).attr(`class`,`wardley-outsource-overlay`).attr(`cx`,e=>D.get(e.id).x).attr(`cy`,e=>D.get(e.id).y).attr(`r`,o.nodeRadius*2).attr(`fill`,`#666`).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),N.filter(e=>e.sourceStrategy===`buy`).append(`circle`).attr(`class`,`wardley-buy-overlay`).attr(`cx`,e=>D.get(e.id).x).attr(`cy`,e=>D.get(e.id).y).attr(`r`,o.nodeRadius*2).attr(`fill`,`#ccc`).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),N.filter(e=>e.sourceStrategy===`build`).append(`circle`).attr(`class`,`wardley-build-overlay`).attr(`cx`,e=>D.get(e.id).x).attr(`cy`,e=>D.get(e.id).y).attr(`r`,o.nodeRadius*2).attr(`fill`,`#eee`).attr(`stroke`,`#000`).attr(`stroke-width`,1);let P=N.filter(e=>e.sourceStrategy===`market`);P.append(`circle`).attr(`class`,`wardley-market-overlay`).attr(`cx`,e=>D.get(e.id).x).attr(`cy`,e=>D.get(e.id).y).attr(`r`,o.nodeRadius*2).attr(`fill`,`white`).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),N.filter(e=>!e.isPipelineParent&&e.sourceStrategy!==`market`&&e.className!==`anchor`).append(`circle`).attr(`cx`,e=>D.get(e.id).x).attr(`cy`,e=>D.get(e.id).y).attr(`r`,o.nodeRadius).attr(`fill`,s.componentFill).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1);let F=o.nodeRadius*.7,I=o.nodeRadius*1.2;if(P.append(`line`).attr(`class`,`wardley-market-line`).attr(`x1`,e=>D.get(e.id).x).attr(`y1`,e=>D.get(e.id).y-I).attr(`x2`,e=>D.get(e.id).x-I*Math.cos(Math.PI/6)).attr(`y2`,e=>D.get(e.id).y+I*Math.sin(Math.PI/6)).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),P.append(`line`).attr(`class`,`wardley-market-line`).attr(`x1`,e=>D.get(e.id).x-I*Math.cos(Math.PI/6)).attr(`y1`,e=>D.get(e.id).y+I*Math.sin(Math.PI/6)).attr(`x2`,e=>D.get(e.id).x+I*Math.cos(Math.PI/6)).attr(`y2`,e=>D.get(e.id).y+I*Math.sin(Math.PI/6)).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),P.append(`line`).attr(`class`,`wardley-market-line`).attr(`x1`,e=>D.get(e.id).x+I*Math.cos(Math.PI/6)).attr(`y1`,e=>D.get(e.id).y+I*Math.sin(Math.PI/6)).attr(`x2`,e=>D.get(e.id).x).attr(`y2`,e=>D.get(e.id).y-I).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),P.append(`circle`).attr(`class`,`wardley-market-dot`).attr(`cx`,e=>D.get(e.id).x).attr(`cy`,e=>D.get(e.id).y-I).attr(`r`,F).attr(`fill`,`white`).attr(`stroke`,s.componentStroke).attr(`stroke-width`,2),P.append(`circle`).attr(`class`,`wardley-market-dot`).attr(`cx`,e=>D.get(e.id).x-I*Math.cos(Math.PI/6)).attr(`cy`,e=>D.get(e.id).y+I*Math.sin(Math.PI/6)).attr(`r`,F).attr(`fill`,`white`).attr(`stroke`,s.componentStroke).attr(`stroke-width`,2),P.append(`circle`).attr(`class`,`wardley-market-dot`).attr(`cx`,e=>D.get(e.id).x+I*Math.cos(Math.PI/6)).attr(`cy`,e=>D.get(e.id).y+I*Math.sin(Math.PI/6)).attr(`r`,F).attr(`fill`,`white`).attr(`stroke`,s.componentStroke).attr(`stroke-width`,2),N.filter(e=>e.isPipelineParent===!0).append(`rect`).attr(`x`,e=>D.get(e.id).x-c/2).attr(`y`,e=>D.get(e.id).y-c/2).attr(`width`,c).attr(`height`,c).attr(`fill`,s.componentFill).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),N.filter(e=>e.inertia===!0).append(`line`).attr(`class`,`wardley-inertia`).attr(`x1`,e=>{let t=D.get(e.id),n=e.isPipelineParent?c/2+15:o.nodeRadius+15;return e.sourceStrategy&&(n+=o.nodeRadius+10),t.x+n}).attr(`y1`,e=>{let t=D.get(e.id),n=e.isPipelineParent?c:o.nodeRadius*2;return t.y-n/2}).attr(`x2`,e=>{let t=D.get(e.id),n=e.isPipelineParent?c/2+15:o.nodeRadius+15;return e.sourceStrategy&&(n+=o.nodeRadius+10),t.x+n}).attr(`y2`,e=>{let t=D.get(e.id),n=e.isPipelineParent?c:o.nodeRadius*2;return t.y+n/2}).attr(`stroke`,s.componentStroke).attr(`stroke-width`,6),N.append(`text`).attr(`x`,e=>{let t=D.get(e.id);if(e.className===`anchor`)return e.labelOffsetX===void 0?t.x:t.x+e.labelOffsetX;let n=o.nodeLabelOffset;e.sourceStrategy&&e.labelOffsetX===void 0&&(n+=10);let r=e.labelOffsetX??n;return t.x+r}).attr(`y`,e=>{let t=D.get(e.id);if(e.className===`anchor`)return e.labelOffsetY===void 0?t.y-3:t.y+e.labelOffsetY;let n=-o.nodeLabelOffset;e.sourceStrategy&&e.labelOffsetY===void 0&&(n-=10);let r=e.labelOffsetY??n;return t.y+r}).attr(`class`,`wardley-node-label`).attr(`fill`,e=>e.className===`evolved`?s.evolutionStroke:e.className===`anchor`?`#000`:s.componentLabelColor).attr(`font-size`,o.labelFontSize).attr(`font-weight`,e=>e.className===`anchor`?`bold`:`normal`).attr(`text-anchor`,e=>e.className===`anchor`?`middle`:`start`).attr(`dominant-baseline`,e=>e.className===`anchor`?`middle`:`auto`).text(e=>e.label),d.annotations.length>0){let e=_.append(`g`).attr(`class`,`wardley-annotations`);if(d.annotations.forEach(t=>{let n=t.coordinates.map(e=>({x:x(e.x),y:S(e.y)}));if(n.length>1)for(let t=0;t<n.length-1;t++)e.append(`line`).attr(`class`,`wardley-annotation-line`).attr(`x1`,n[t].x).attr(`y1`,n[t].y).attr(`x2`,n[t+1].x).attr(`y2`,n[t+1].y).attr(`stroke`,s.axisColor).attr(`stroke-width`,1.5).attr(`stroke-dasharray`,`4 4`);n.forEach(n=>{let r=e.append(`g`).attr(`class`,`wardley-annotation`);r.append(`circle`).attr(`cx`,n.x).attr(`cy`,n.y).attr(`r`,10).attr(`fill`,`white`).attr(`stroke`,s.axisColor).attr(`stroke-width`,1.5),r.append(`text`).attr(`x`,n.x).attr(`y`,n.y).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,`central`).attr(`font-size`,10).attr(`fill`,s.axisTextColor).attr(`font-weight`,`bold`).text(t.number)})}),d.annotationsBox){let t=x(d.annotationsBox.x),n=S(d.annotationsBox.y),r=e.append(`g`).attr(`class`,`wardley-annotations-box`),i=[...d.annotations].filter(e=>e.text).sort((e,t)=>e.number-t.number),a=[];if(i.forEach((e,i)=>{let o=r.append(`text`).attr(`x`,t+10).attr(`y`,n+10+(i+1)*16).attr(`font-size`,11).attr(`fill`,s.axisTextColor).attr(`text-anchor`,`start`).attr(`dominant-baseline`,`middle`).text(`${e.number}. ${e.text}`);a.push(o)}),a.length>0){let e=0,c=0;a.forEach(t=>{let n=t.node(),r=n.getComputedTextLength();e=Math.max(e,r);let i=n.getBBox();c=Math.max(c,i.height)});let l=e+20+105,u=i.length*16+20+c/2,d=o.padding,f=p-o.padding-l,h=o.padding,g=m-o.padding-u;t=Math.max(d,Math.min(t,f)),n=Math.max(h,Math.min(n,g)),a.forEach((e,r)=>{e.attr(`x`,t+10).attr(`y`,n+10+(r+1)*16)}),r.insert(`rect`,`text`).attr(`x`,t).attr(`y`,n).attr(`width`,l).attr(`height`,u).attr(`fill`,`white`).attr(`stroke`,s.axisColor).attr(`stroke-width`,1.5).attr(`rx`,4).attr(`ry`,4)}}}if(d.notes.length>0){let e=_.append(`g`).attr(`class`,`wardley-notes`);d.notes.forEach(t=>{let n=x(t.x),r=S(t.y);e.append(`text`).attr(`x`,n).attr(`y`,r).attr(`text-anchor`,`start`).attr(`font-size`,11).attr(`fill`,s.axisTextColor).attr(`font-weight`,`bold`).text(t.text)})}if(d.accelerators.length>0){let e=_.append(`g`).attr(`class`,`wardley-accelerators`);d.accelerators.forEach(t=>{let n=x(t.x),r=S(t.y),i=`
|
|
3
3
|
M ${n} ${r-15}
|
|
4
4
|
L ${n+60-20} ${r-15}
|