dorkos 0.126.2 → 0.126.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bin/cli.js +133 -38
- package/dist/browser/native/package-manifest.json +1 -1
- package/dist/browser/source-manifest.json +1 -1
- package/dist/client/assets/{AboutPage-BQ66xWcJ.js → AboutPage-ycWTfXI8.js} +1 -1
- package/dist/client/assets/{ActivityErrorState-CPbfgXjw.js → ActivityErrorState-DBecAo4-.js} +1 -1
- package/dist/client/assets/{ActivityPage-CesljfZn.js → ActivityPage-CGuIeDGm.js} +1 -1
- package/dist/client/assets/{ActivityRow-DzhwE0ht.js → ActivityRow-BRiUvjHA.js} +1 -1
- package/dist/client/assets/{AdapterIcon-BXJkyF5g.js → AdapterIcon-z6z9LKwd.js} +1 -1
- package/dist/client/assets/{AdapterSetupWizard-CwKYl1vG.js → AdapterSetupWizard-Cp56Zx24.js} +1 -1
- package/dist/client/assets/{AgentOptionRow-0VdNzXCF.js → AgentOptionRow-BLuSwpNh.js} +1 -1
- package/dist/client/assets/{AgentPicker-Ldh64iOA.js → AgentPicker-DazquIgR.js} +1 -1
- package/dist/client/assets/{AgentRequestCard-CmAlDGTr.js → AgentRequestCard-BoRmxLKy.js} +1 -1
- package/dist/client/assets/{AppearancePage-DmsZPHst.js → AppearancePage-BMiVpe48.js} +1 -1
- package/dist/client/assets/{ApplyToOverridesDialog-Ct1W283T.js → ApplyToOverridesDialog-BHIrnfPf.js} +1 -1
- package/dist/client/assets/{AttentionSignalRow-B7gezgzA.js → AttentionSignalRow-CjN8lCWI.js} +1 -1
- package/dist/client/assets/{BaseTanStackRouterDevtoolsPanel-B-iktbLX-Nqvr65_g.js → BaseTanStackRouterDevtoolsPanel-B-iktbLX-BMBnO0fv.js} +1 -1
- package/dist/client/assets/{BindingDialog-CpBZoSZU.js → BindingDialog-Bw55sMTh.js} +1 -1
- package/dist/client/assets/{BlintzCanvas-BCtfZPrs.js → BlintzCanvas-Dd3bC9vw.js} +3 -3
- package/dist/client/assets/{CanvasCsvContent-DYksqzaf.js → CanvasCsvContent-B2S75f6B.js} +1 -1
- package/dist/client/assets/{CanvasFileContent-CqEqSxuJ.js → CanvasFileContent-CVSfg4MO.js} +2 -2
- package/dist/client/assets/{CanvasModel3dContent-vR6ze4IR.js → CanvasModel3dContent-CNmJsBTS.js} +2 -2
- package/dist/client/assets/{ChannelComposer-BVACOdph.js → ChannelComposer-7KpffyFv.js} +3 -3
- package/dist/client/assets/{ChatAppsOff-VsPP2Hye.js → ChatAppsOff-D7anOG3n.js} +1 -1
- package/dist/client/assets/{CodeMirrorDiff-CmKjH03N.js → CodeMirrorDiff-CfOmRCky.js} +1 -1
- package/dist/client/assets/{CodeMirrorEditor-BtNgazuc.js → CodeMirrorEditor-Cyz227_1.js} +1 -1
- package/dist/client/assets/{CommitmentList-D9I-CmNy.js → CommitmentList-DKo1Fb1A.js} +1 -1
- package/dist/client/assets/{CommitmentsPage-BORMYDZb.js → CommitmentsPage-DIcEZ2ka.js} +1 -1
- package/dist/client/assets/{ComputerResourceView-BZ9BxgOi.js → ComputerResourceView-Ck7rJ-SP.js} +1 -1
- package/dist/client/assets/{ComputerViewer-CbuU9tXK.js → ComputerViewer-Dw_VpNjD.js} +1 -1
- package/dist/client/assets/{ConnectionAccessLists-uE-Fzp6Y.js → ConnectionAccessLists-CETLVH7o.js} +1 -1
- package/dist/client/assets/{ConnectionsPage-D7QTHeQQ.js → ConnectionsPage-ZVWDffcl.js} +1 -1
- package/dist/client/assets/{ConventionPage-PS2WWCyB.js → ConventionPage-DkJ91wrN.js} +1 -1
- package/dist/client/assets/{ExtensionPageRoute-Cn7bYxGB.js → ExtensionPageRoute-FbJo1Qc0.js} +1 -1
- package/dist/client/assets/{FloatingTanStackRouterDevtools-CqogiFob-DKGNSXVz.js → FloatingTanStackRouterDevtools-CqogiFob-DCLR3iKw.js} +1 -1
- package/dist/client/assets/{ForwardConsentHost-CLIHtWwq.js → ForwardConsentHost-Buy5XlH7.js} +1 -1
- package/dist/client/assets/HandlePage-CByGC3B8.js +1 -0
- package/dist/client/assets/{HeartbeatPage-7MTowke-.js → HeartbeatPage-GXBEcZoJ.js} +1 -1
- package/dist/client/assets/{KeyEntry-Cf7D0Oo6.js → KeyEntry-g2VQ33KW.js} +1 -1
- package/dist/client/assets/{LexicalField-DqvzeMr3.js → LexicalField-CLd77PuB.js} +1 -1
- package/dist/client/assets/{ManagesPage-DxR4zWMf.js → ManagesPage-qCwzJ4Cx.js} +1 -1
- package/dist/client/assets/{Marketplace-V_92jKOn.js → Marketplace-DdkdIVPQ.js} +1 -1
- package/dist/client/assets/{MarketplaceSourcesView-CjCVMP_d.js → MarketplaceSourcesView-D44G21ff.js} +1 -1
- package/dist/client/assets/{McpAppFrame-4JDJsrmg.js → McpAppFrame-DVNWJHrn.js} +1 -1
- package/dist/client/assets/{McpSigninBody-DG1XX7XT.js → McpSigninBody-BO0OkvOw.js} +1 -1
- package/dist/client/assets/{Model3dViewer-DedBFHsl.js → Model3dViewer-Cvcyx2yv.js} +1 -1
- package/dist/client/assets/NamePage-5VUtswMH.js +1 -0
- package/dist/client/assets/{NewDirectMessageMenu-C8t7x-sB.js → NewDirectMessageMenu-C_hXtliM.js} +1 -1
- package/dist/client/assets/{NotificationsPage-DwGFE3F6.js → NotificationsPage-DP4HAVMA.js} +1 -1
- package/dist/client/assets/{OpenMeshSwitch-DPmTA9eg.js → OpenMeshSwitch-0Mkl8abo.js} +1 -1
- package/dist/client/assets/{OperatorIdentityForm-Cu0h8Xqy.js → OperatorIdentityForm-BRftJqRq.js} +1 -1
- package/dist/client/assets/{PermissionHistory-zD6ksrl2.js → PermissionHistory-Czl5PWN3.js} +1 -1
- package/dist/client/assets/{PermissionsPage-Durcnmie.js → PermissionsPage-DAsbrl6Q.js} +1 -1
- package/dist/client/assets/{PersonalityPopover-DuRjJuLj.js → PersonalityPopover-liTJ0Lns.js} +1 -1
- package/dist/client/assets/PhotoPage-DDcbiGjb.js +1 -0
- package/dist/client/assets/{PreviewRefusedNotice-hlYrFDQM.js → PreviewRefusedNotice-DcD1EY2c.js} +1 -1
- package/dist/client/assets/{ProfileFields-x-x8vgNo.js → ProfileFields-Bi_AfHOE.js} +1 -1
- package/dist/client/assets/{ProfilePanelContainer-8WxopRj2.js → ProfilePanelContainer-BIbOulLu.js} +1 -1
- package/dist/client/assets/{ProfileRolePicker-BfciiNpr.js → ProfileRolePicker-BadkFi4V.js} +1 -1
- package/dist/client/assets/{PromptSuggestionChips-D34Zeaq_.js → PromptSuggestionChips-C653MlaU.js} +1 -1
- package/dist/client/assets/{ReportsToPopover-BhqA5qXi.js → ReportsToPopover-dIbt6aes.js} +1 -1
- package/dist/client/assets/{RoomSurface-BlMNuQsT.js → RoomSurface-CssMcozl.js} +1 -1
- package/dist/client/assets/{RoomsPage-C52AOHIE.js → RoomsPage-CxwTRRNu.js} +1 -1
- package/dist/client/assets/{RunsOnPopover-DLhEKwXF.js → RunsOnPopover-lp8n4lgI.js} +1 -1
- package/dist/client/assets/{RuntimeConnectFlow-D3H5Fpkc.js → RuntimeConnectFlow-BAqkzthF.js} +1 -1
- package/dist/client/assets/{RuntimeSetupDialog-DPU4QIY9.js → RuntimeSetupDialog-E6f7Rd2W.js} +1 -1
- package/dist/client/assets/{SeenDevices-CDSHTsL7.js → SeenDevices-xdR3YQNr.js} +1 -1
- package/dist/client/assets/{SessionsPage-Crh3D3Jj.js → SessionsPage-BNZTufty.js} +1 -1
- package/dist/client/assets/{SettingsDialog-D0Oh-ku1.js → SettingsDialog-d7SQTDNy.js} +1 -1
- package/dist/client/assets/{SkillsPage-BPexZwnJ.js → SkillsPage-DiqUOZup.js} +1 -1
- package/dist/client/assets/{TaskDialogWrapper-D6RB8E59.js → TaskDialogWrapper-5gb-f-Uo.js} +1 -1
- package/dist/client/assets/{TasksEmptyState-Di3SbhJM.js → TasksEmptyState-g-CavcMv.js} +1 -1
- package/dist/client/assets/{TasksPage-CDLsY1Ww.js → TasksPage-BexV_pxB.js} +1 -1
- package/dist/client/assets/{TeamComputerEntry-B_q-oVSs.js → TeamComputerEntry-BFYqGL-G.js} +1 -1
- package/dist/client/assets/{ToolsPage-gvIVTnwf.js → ToolsPage-Dxt6qOdF.js} +1 -1
- package/dist/client/assets/{TopologyGraph-Bp8aL_qw.js → TopologyGraph-Cx_6gdbV.js} +1 -1
- package/dist/client/assets/{TourHost-Cg8EHvod.js → TourHost-DvAjpsug.js} +1 -1
- package/dist/client/assets/{UnlinkDialog-Ddd1Yxfk.js → UnlinkDialog-fgubvOUd.js} +1 -1
- package/dist/client/assets/{UnreadDivider-LL4_YtF0.js → UnreadDivider-BoLcTO_Z.js} +1 -1
- package/dist/client/assets/{WidgetErrorCard-BA3P7hNv.js → WidgetErrorCard-CgRMeAEO.js} +1 -1
- package/dist/client/assets/{WithheldExtensionsNotice-quqWNbus.js → WithheldExtensionsNotice-CFHBDyIh.js} +1 -1
- package/dist/client/assets/{WorkView-C_h8sclU.js → WorkView-5jzcnod5.js} +1 -1
- package/dist/client/assets/{_shell-D9q8zLfr.js → _shell-DFfXd1ys.js} +1 -1
- package/dist/client/assets/{_shell._home-CrTxBB3h.js → _shell._home-D2GJeGbi.js} +1 -1
- package/dist/client/assets/{_shell._home.activity-2M0BJkbQ.js → _shell._home.activity-DRXBBtAq.js} +1 -1
- package/dist/client/assets/{_shell._home.index-BTJhhEWN.js → _shell._home.index-CA_GnaUK.js} +1 -1
- package/dist/client/assets/{_shell._home.tasks-Dfrqv2nl.js → _shell._home.tasks-Cr4gak8T.js} +1 -1
- package/dist/client/assets/{_shell._home.workspaces-DPLQXDdH.js → _shell._home.workspaces-DbWciI1g.js} +1 -1
- package/dist/client/assets/{_shell.channels-CJqfUTZ1.js → _shell.channels-C31Txlqh.js} +1 -1
- package/dist/client/assets/{_shell.connections-Cpe1hru3.js → _shell.connections-gfevZyC-.js} +1 -1
- package/dist/client/assets/{_shell.feedback-requests-BeWCqScf.js → _shell.feedback-requests-CQc7aVrV.js} +1 -1
- package/dist/client/assets/_shell.marketplace-BepG1fJe.js +1 -0
- package/dist/client/assets/_shell.marketplace_.sources-BBQESbqU.js +1 -0
- package/dist/client/assets/_shell.session-DzeI9YIK.js +1 -0
- package/dist/client/assets/{_shell.team-EPvcS7RS.js → _shell.team-BlLU5BMC.js} +3 -3
- package/dist/client/assets/{_shell.threads-NJDzq9dv.js → _shell.threads-YmF9dQnZ.js} +1 -1
- package/dist/client/assets/_shell.x._extensionId-ByRocZjS.js +1 -0
- package/dist/client/assets/_shell.x._extensionId_._-ByRocZjS.js +1 -0
- package/dist/client/assets/{abnfDiagram-WEYOIA3C-DUHshdrR.js → abnfDiagram-WEYOIA3C-DLiXaMmC.js} +1 -1
- package/dist/client/assets/{access-copy-DHfPjN3G.js → access-copy-xWnaUps1.js} +1 -1
- package/dist/client/assets/{arc-sP6zNsGB.js → arc-AndXXvZc.js} +1 -1
- package/dist/client/assets/{architectureDiagram-ZHVYKT53-C8PTjsPx.js → architectureDiagram-ZHVYKT53-CM4tGveM.js} +1 -1
- package/dist/client/assets/{banner-CVrzHqOT.js → banner-BH1gXPTc.js} +1 -1
- package/dist/client/assets/{blockDiagram-RJAE7QA3-Cydde2fz.js → blockDiagram-RJAE7QA3-DenkdFXV.js} +1 -1
- package/dist/client/assets/{c4Diagram-XDPPPE54-DbM6KAK7.js → c4Diagram-XDPPPE54-DMAlFuoX.js} +1 -1
- package/dist/client/assets/{card-DA_Z-FYX.js → card-TbpEl6EH.js} +1 -1
- package/dist/client/assets/channel-5-dQamNX.js +1 -0
- package/dist/client/assets/{chunk-2E7WHVMD-CEbspaNh.js → chunk-2E7WHVMD-u0q5vCEc.js} +1 -1
- package/dist/client/assets/{chunk-2Q5K7J3B-DDP1SiE0.js → chunk-2Q5K7J3B-DBTggfjR.js} +1 -1
- package/dist/client/assets/{chunk-4EMNKR2T-BFjozJqd.js → chunk-4EMNKR2T-zu55wq-c.js} +1 -1
- package/dist/client/assets/{chunk-55XCU76K-0JSp6acZ.js → chunk-55XCU76K-XLIA3Qss.js} +1 -1
- package/dist/client/assets/{chunk-5VM5RSS4-DswTXnmp.js → chunk-5VM5RSS4-DmGjbtZg.js} +1 -1
- package/dist/client/assets/{chunk-JWPE2WC7-D0PYncYV.js → chunk-JWPE2WC7-ikMrk6md.js} +1 -1
- package/dist/client/assets/{chunk-VQ5W62QI-r5T-ZVBs.js → chunk-VQ5W62QI-cfwin8SC.js} +1 -1
- package/dist/client/assets/{chunk-XXDRQBXY-D8kkjktE.js → chunk-XXDRQBXY-Cn3e0QEQ.js} +1 -1
- package/dist/client/assets/{chunk-ZCHMQSOR-D6XtRzln.js → chunk-ZCHMQSOR-7RkBP94K.js} +2 -2
- package/dist/client/assets/{classDiagram-v2-4MYWR3UA-DUPDMGfm.js → classDiagram-v2-4MYWR3UA-CqVol7t8.js} +1 -1
- package/dist/client/assets/{command-BvXBgZfv.js → command-2pl_Cn7b.js} +1 -1
- package/dist/client/assets/{cose-bilkent-JH36ORCC-tiQpE-Q8.js → cose-bilkent-JH36ORCC-m0tmlDnx.js} +1 -1
- package/dist/client/assets/{cpu-mx7zDf7k.js → cpu-CdCfSlSR.js} +1 -1
- package/dist/client/assets/{cynefin-EF2NZ3EQ-BjAUxFfb.js → cynefin-EF2NZ3EQ-Cf7ajLou.js} +1 -1
- package/dist/client/assets/{cynefinDiagram-WF24UDRP-PmlyltXR.js → cynefinDiagram-WF24UDRP-Dl8GJr0l.js} +1 -1
- package/dist/client/assets/{dagre-NK4GIZVX-DDePjPkn.js → dagre-NK4GIZVX-2yAF6nW_.js} +1 -1
- package/dist/client/assets/{diagram-CBK3MWTC-D7N3T4Fx.js → diagram-CBK3MWTC-DaBb9JFm.js} +1 -1
- package/dist/client/assets/{diagram-I5XIIV2D-BfZHSbR2.js → diagram-I5XIIV2D-BMeCfhD1.js} +1 -1
- package/dist/client/assets/{diagram-ODIL2UCW-sXAa9bzN.js → diagram-ODIL2UCW-ClVKCieB.js} +1 -1
- package/dist/client/assets/{diagram-PFBEJUXE-Dfd_61WO.js → diagram-PFBEJUXE-DFIKk-tB.js} +1 -1
- package/dist/client/assets/{diagram-RJA3I4VV-BCzdEfnM.js → diagram-RJA3I4VV-DzC_xtYu.js} +1 -1
- package/dist/client/assets/{diagram-TYUNFSNR-BMqtz6sZ.js → diagram-TYUNFSNR-BroMVHm2.js} +1 -1
- package/dist/client/assets/{ebnfDiagram-V4P3TTPT-CyWj1615.js → ebnfDiagram-V4P3TTPT-GMsyIh86.js} +1 -1
- package/dist/client/assets/{elk-QONTBCTQ-BkQMBXse.js → elk-QONTBCTQ-DIpw6SW5.js} +1 -1
- package/dist/client/assets/{empty-state-Dv5iV4jb.js → empty-state-B7ufhAFk.js} +1 -1
- package/dist/client/assets/{erDiagram-KYQIGQAA-DiPsX7uU.js → erDiagram-KYQIGQAA-CsezeWpx.js} +1 -1
- package/dist/client/assets/{execution-config-Bej0Ot8e.js → execution-config-DRqIsff0.js} +1 -1
- package/dist/client/assets/{file-DXbyb23e.js → file-DHPgnMgj.js} +1 -1
- package/dist/client/assets/{file-exclamation-point-C8XqHyzY.js → file-exclamation-point-DtjBa2XX.js} +1 -1
- package/dist/client/assets/{file-text-CRTgqqkn.js → file-text-wmrSy3Io.js} +1 -1
- package/dist/client/assets/{find-latest-widget-fence-D1i7qNny.js → find-latest-widget-fence-Bv9D10ve.js} +1 -1
- package/dist/client/assets/{flowDiagram-IUGLLWBU-BSM44aJP.js → flowDiagram-IUGLLWBU-BGwNqglr.js} +1 -1
- package/dist/client/assets/{form-DYSiVEri.js → form-CA_eiUg-.js} +1 -1
- package/dist/client/assets/{format-cron-DYYwmo-o.js → format-cron-YPhIy57w.js} +1 -1
- package/dist/client/assets/{ganttDiagram-R7GPNTJY-BWCjYexX.js → ganttDiagram-R7GPNTJY-4IlzTCzA.js} +1 -1
- package/dist/client/assets/{git-branch-1zYKSuur.js → git-branch-BLIYLcM4.js} +1 -1
- package/dist/client/assets/{gitGraphDiagram-PDYL7XHY-ULC7Zunc.js → gitGraphDiagram-PDYL7XHY-HeaC8vlP.js} +1 -1
- package/dist/client/assets/{graph-BsZzo5TN.js → graph-Ch9lnHSS.js} +1 -1
- package/dist/client/assets/{heart-C4CSHUW7.js → heart-D4fTvM5q.js} +1 -1
- package/dist/client/assets/{highlighted-body-KPVGNVTW-CFECg7iB.js → highlighted-body-KPVGNVTW-KPma22SA.js} +1 -1
- package/dist/client/assets/{image-lightbox-M9t3Wulc.js → image-lightbox-DI18fB2Q.js} +1 -1
- package/dist/client/assets/{image-off-c01kxBAm.js → image-off-DRgXXpgv.js} +1 -1
- package/dist/client/assets/{index-BScgHCO_.js → index--2mMmier.js} +1 -1
- package/dist/client/assets/{index-DG13Cp5o.js → index-2J89pJxF.js} +1 -1
- package/dist/client/assets/{index-C1XazYWZ.js → index-3UGWygRZ.js} +1 -1
- package/dist/client/assets/{index-Dt7RONID.js → index-B-4XmK5Q.js} +1 -1
- package/dist/client/assets/index-B9X2-pzp.js +1 -0
- package/dist/client/assets/{index-Du4HX97h.js → index-BAd8jUzo.js} +2 -2
- package/dist/client/assets/{index-UJq1qaku.js → index-BMYGo6Ki.js} +1 -1
- package/dist/client/assets/{index-B3xeyV6n.js → index-BY0SKYuc.js} +1 -1
- package/dist/client/assets/{index-DIDUjTkq.js → index-B_56Srtt.js} +1 -1
- package/dist/client/assets/{index-uLbyd6YP.js → index-BmlBYrxT.js} +1 -1
- package/dist/client/assets/{index-Br35Gqfz.js → index-BtRM2yox.js} +1 -1
- package/dist/client/assets/{index-DyN65ufd.js → index-ButY6gKr.js} +1 -1
- package/dist/client/assets/{index-BYY8HEOz.js → index-C-X6jaVm.js} +1 -1
- package/dist/client/assets/{index-XEE1k4cl.js → index-C3IsCAxA.js} +1 -1
- package/dist/client/assets/{index-BTGRc0hC.js → index-COoO8dzi.js} +1 -1
- package/dist/client/assets/{index-BIVIHPoe.js → index-CRCfkwyN.js} +1 -1
- package/dist/client/assets/{index-BRH6C3LJ.js → index-CTTaeOCw.js} +1 -1
- package/dist/client/assets/index-CgpRBcA4.js +1 -0
- package/dist/client/assets/{index-DrENuQdJ.js → index-ClbMjgcZ.js} +1 -1
- package/dist/client/assets/{index-CnltS8ym.js → index-CucieFDK.js} +1 -1
- package/dist/client/assets/{index-DQTTC52E.js → index-D0cIffaH.js} +1 -1
- package/dist/client/assets/{index-B-7P1Q9s.js → index-D9w0FBQG.js} +1 -1
- package/dist/client/assets/{index-BqwCOIbF.js → index-DHZS9Lod.js} +1 -1
- package/dist/client/assets/{index-DsasLE1l.js → index-DSIdPh8G.js} +1 -1
- package/dist/client/assets/{index-CAAsqmfP.js → index-DTRAR0KK.js} +1 -1
- package/dist/client/assets/{index-LpaxG4VS.js → index-DbV3-jog.js} +1 -1
- package/dist/client/assets/{index-JG_0k1NX.js → index-Dbujw1c2.js} +1 -1
- package/dist/client/assets/{index-C3swXqWW.js → index-DpvGUFpV.js} +1 -1
- package/dist/client/assets/{index-CAjKQnAd.js → index-DuvW22xi.js} +1 -1
- package/dist/client/assets/{index-D847rJXW.js → index-Dy9bWvna.js} +1 -1
- package/dist/client/assets/{index-B_he44rF.js → index-EDXuyCOT.js} +1 -1
- package/dist/client/assets/{index-FwAvbbet.js → index-Ix2nCAz0.js} +1 -1
- package/dist/client/assets/{index-BSxkprTm.js → index-JoxvTUfo.js} +3 -3
- package/dist/client/assets/{index-YXyEu3Ia.js → index-QSo53dH-.js} +1 -1
- package/dist/client/assets/{index-DhkfALZp.js → index-bzM-k5lI.js} +1 -1
- package/dist/client/assets/{index-Ce3HZQem.js → index-jk2K24il.js} +1 -1
- package/dist/client/assets/{index-DzHj8lCz.js → index-mRMaqxu5.js} +9 -9
- package/dist/client/assets/{index-B6Scr7KJ.js → index-p3WivF1M.js} +226 -226
- package/dist/client/assets/{index-DrQqkQq_.js → index-qEI7Rsr1.js} +1 -1
- package/dist/client/assets/{index-DhoaVQXu.js → index-rPJ8b_DO.js} +1 -1
- package/dist/client/assets/{index-jLIoULQt.js → index-uG06zgQo.js} +1 -1
- package/dist/client/assets/{index-DhYnXLRT.js → index-uy36h8lC.js} +1 -1
- package/dist/client/assets/{index-BnXWm8Db.js → index-zvAbU6ah.js} +1 -1
- package/dist/client/assets/{index.esm-CZ68Qd2t.js → index.esm-CxXuMuQv.js} +1 -1
- package/dist/client/assets/{infoDiagram-MVDRKAX5-BCjhXqIT.js → infoDiagram-MVDRKAX5-g9EeD2xH.js} +1 -1
- package/dist/client/assets/{inline-code-BKPMIXZR.js → inline-code-14c1Gacs.js} +1 -1
- package/dist/client/assets/{ishikawaDiagram-HPEHV2GE-C9rsv2nh.js → ishikawaDiagram-HPEHV2GE-Zv5DrRnv.js} +1 -1
- package/dist/client/assets/{journeyDiagram-BOSHW7O7-BRYr1XL1.js → journeyDiagram-BOSHW7O7-COiWWTez.js} +1 -1
- package/dist/client/assets/{kanban-definition-FNSA4HC5-2ey8FXEn.js → kanban-definition-FNSA4HC5-DnQa8qXB.js} +1 -1
- package/dist/client/assets/{layers-DE3wjQuk.js → layers-D_NEJsnH.js} +1 -1
- package/dist/client/assets/{lightbulb-BXJIRUdm.js → lightbulb-EadQi_Lr.js} +1 -1
- package/dist/client/assets/{link-2-DzWm9OxA.js → link-2-DugR2HHU.js} +1 -1
- package/dist/client/assets/{list-runtime-types-BhkZkTrB.js → list-runtime-types-iJaKcim4.js} +1 -1
- package/dist/client/assets/{markdown-content-Bk9lCksw.js → markdown-content-BFHUHPgi.js} +1 -1
- package/dist/client/assets/{mention-pill-os_7QQu2.js → mention-pill-DXBno6EY.js} +1 -1
- package/dist/client/assets/{mermaid.core-BcRUBvZd.js → mermaid.core-C6ckWvkG.js} +4 -4
- package/dist/client/assets/{message-square-off-DuOiETNI.js → message-square-off-BH8wbm2a.js} +1 -1
- package/dist/client/assets/{mindmap-definition-6OY57UG3-DBhXkS2i.js → mindmap-definition-6OY57UG3-DV4PNLc-.js} +1 -1
- package/dist/client/assets/{more-details-Bt9nlPmS.js → more-details-DhdX4DGU.js} +1 -1
- package/dist/client/assets/{owner-notice-4ZSBxa2K.js → owner-notice-FMj3k7-f.js} +1 -1
- package/dist/client/assets/{package-BmOMrNwc.js → package-0mI7-RiJ.js} +1 -1
- package/dist/client/assets/{page-container-LomhzyuS.js → page-container-DRyYoDkA.js} +1 -1
- package/dist/client/assets/{pane-resize-handle-BOtzx5Q4.js → pane-resize-handle-OBc3uYxQ.js} +1 -1
- package/dist/client/assets/{paperclip-C1tkiT74.js → paperclip-BsTJpkyE.js} +1 -1
- package/dist/client/assets/{path-input-JHTlL97W.js → path-input-CFm1b1pk.js} +1 -1
- package/dist/client/assets/{pegDiagram-ECIUJNBX-B01fb3t0.js → pegDiagram-ECIUJNBX-Cboo0f6B.js} +1 -1
- package/dist/client/assets/{pieDiagram-GNMPY74T-BJ7JYrTk.js → pieDiagram-GNMPY74T-CiihSor1.js} +1 -1
- package/dist/client/assets/{plug-CsqfQsYq.js → plug-BdnJAo1j.js} +1 -1
- package/dist/client/assets/{primer-trigger-DLdK7lVr.js → primer-trigger-BV4xZfFz.js} +1 -1
- package/dist/client/assets/{profile-errors-CpvSy5wY.js → profile-errors-B08zStmk.js} +1 -1
- package/dist/client/assets/{progress-qB87L0zJ.js → progress-CpiQE0rv.js} +1 -1
- package/dist/client/assets/{quadrantDiagram-D57K4MC3-mJYGGmOV.js → quadrantDiagram-D57K4MC3-dF0oKeMn.js} +1 -1
- package/dist/client/assets/{query-error-state-MyJ1ivia.js → query-error-state-B0RUeb10.js} +1 -1
- package/dist/client/assets/{radio-DJV7l0fv.js → radio-CAGXbJK_.js} +1 -1
- package/dist/client/assets/{railroadDiagram-Y72NRBL7-BlXWwQe2.js → railroadDiagram-Y72NRBL7-ClkFJVq1.js} +1 -1
- package/dist/client/assets/{registry-tJrGs7kB.js → registry-Cog_2xvt.js} +4 -4
- package/dist/client/assets/registry-DLWJMbtY.js +1 -0
- package/dist/client/assets/{relay-trace-schemas-TH0-GYCB.js → relay-trace-schemas-CNDSmhcJ.js} +1 -1
- package/dist/client/assets/{repeat-CBnopqBr.js → repeat-Dag80z5v.js} +1 -1
- package/dist/client/assets/{requirementDiagram-EQYSW5RA-Dqr1Y74x.js → requirementDiagram-EQYSW5RA-Cey6FmFd.js} +1 -1
- package/dist/client/assets/{room-files-source-BFo0FEUP.js → room-files-source-BKUFMU_b.js} +1 -1
- package/dist/client/assets/{rotate-ccw-clock-D9XRHj5E.js → rotate-ccw-clock-egrvXlKX.js} +1 -1
- package/dist/client/assets/{rotate-cw-DNa7ENG3.js → rotate-cw-Po-L3HFe.js} +1 -1
- package/dist/client/assets/{sankeyDiagram-SY24JHO5-DGYZs_kW.js → sankeyDiagram-SY24JHO5-BsIuHjbJ.js} +1 -1
- package/dist/client/assets/{scroll-area-Bf6IGziJ.js → scroll-area-C7vKp2H4.js} +1 -1
- package/dist/client/assets/{search-x-DFBBEouE.js → search-x-C_BEqIuX.js} +1 -1
- package/dist/client/assets/{sequenceDiagram-BLEHNHQU-BW3u4L9y.js → sequenceDiagram-BLEHNHQU-BJZXJxwu.js} +1 -1
- package/dist/client/assets/{shield-x-WGxwrtNV.js → shield-x-hHpT8rAA.js} +1 -1
- package/dist/client/assets/{signed-in-eV4_EXuv.js → signed-in-BhArfIJC.js} +1 -1
- package/dist/client/assets/{sizeCapture-INFHLROL-C1TpueOu.js → sizeCapture-INFHLROL-DYCQyn7S.js} +1 -1
- package/dist/client/assets/{soul-file-e1iYX9IV.js → soul-file-Doekkv7n.js} +1 -1
- package/dist/client/assets/{stateDiagram-v2-A6IESKWZ-DvrHUauN.js → stateDiagram-v2-A6IESKWZ-C6bUDAO7.js} +1 -1
- package/dist/client/assets/{swimlanes-B3ENRKFQ-BUbTcoId.js → swimlanes-B3ENRKFQ-DGyTrJBT.js} +1 -1
- package/dist/client/assets/swimlanesDiagram-AYQRV4AK-DrZ99xGr.js +8 -0
- package/dist/client/assets/{table-DsxLk3Gx.js → table-9KRGRv_s.js} +1 -1
- package/dist/client/assets/{timeline-definition-JXYKGLGB-CzbVpGxn.js → timeline-definition-JXYKGLGB-CHAJwSq6.js} +1 -1
- package/dist/client/assets/{trust-posture-Blofy7eE.js → trust-posture-BQE9NSf_.js} +1 -1
- package/dist/client/assets/{unplug-B6dUhqA7.js → unplug-CklGWwz7.js} +1 -1
- package/dist/client/assets/untrusted-text-BDygHCRk.js +1 -0
- package/dist/client/assets/{unverified-catalog-notice-6pwZtIjx.js → unverified-catalog-notice-9mykZSlO.js} +1 -1
- package/dist/client/assets/{use-adapter-catalog-J43bUHJu.js → use-adapter-catalog-CDxy08u_.js} +1 -1
- package/dist/client/assets/{use-bindings-BgXZ0D7k.js → use-bindings-CPbqKyo6.js} +1 -1
- package/dist/client/assets/{use-composer-prefs--zO2mm_M.js → use-composer-prefs-C7v03Xx_.js} +1 -1
- package/dist/client/assets/{use-connector-management-9Q7wHb06.js → use-connector-management-COqWo76Y.js} +1 -1
- package/dist/client/assets/{use-deep-link-scroll-CXqwdwGr.js → use-deep-link-scroll-BuYR3PaO.js} +1 -1
- package/dist/client/assets/{use-delete-binding-BBQNMtUY.js → use-delete-binding-Dfz8BlLn.js} +1 -1
- package/dist/client/assets/{use-dev-links-C643CCcq.js → use-dev-links-Cu2JmM-_.js} +1 -1
- package/dist/client/assets/{use-direct-message-panel-BD_daG2E.js → use-direct-message-panel-DobIp_O4.js} +1 -1
- package/dist/client/assets/{use-external-adapter-catalog-BjbC1V6t.js → use-external-adapter-catalog-OLn4l20Q.js} +1 -1
- package/dist/client/assets/{use-full-activity-feed-DUH8r8jx.js → use-full-activity-feed-DNrhQueu.js} +1 -1
- package/dist/client/assets/use-is-below-desktop-7gY1n-47.js +1 -0
- package/dist/client/assets/{use-local-browser-P93oA-F5.js → use-local-browser-DPdkgs06.js} +1 -1
- package/dist/client/assets/{use-mesh-topology-B0k0gLoW.js → use-mesh-topology-Ci7r-pAi.js} +1 -1
- package/dist/client/assets/{use-mounted-ref-DE7EQsBF.js → use-mounted-ref-CWXhSyZ8.js} +1 -1
- package/dist/client/assets/{use-notification-prefs-B8JtshQ0.js → use-notification-prefs-GJ2coibL.js} +1 -1
- package/dist/client/assets/use-pending-read-DcVJ8fZb.js +1 -0
- package/dist/client/assets/{use-personality-commit-Dh5Sejj_.js → use-personality-commit-Da2BJ_58.js} +1 -1
- package/dist/client/assets/{use-promo-activation-C9FWA7ru.js → use-promo-activation-D4PAd7pd.js} +1 -1
- package/dist/client/assets/{use-promo-dismissals-BIfafj9f.js → use-promo-dismissals-BCBu0s3k.js} +1 -1
- package/dist/client/assets/{use-pulse-freshness-CxzVMmVK.js → use-pulse-freshness-CHLSUL-h.js} +1 -1
- package/dist/client/assets/{use-relay-config-DQE3dmJ2.js → use-relay-config-C6rPlEud.js} +1 -1
- package/dist/client/assets/{use-room-follow-claim-B1QPFaUb.js → use-room-follow-claim-BSijPV3c.js} +1 -1
- package/dist/client/assets/{use-room-sessions-CdjzO67_.js → use-room-sessions-CNqHgLVa.js} +1 -1
- package/dist/client/assets/{use-roving-tab-list-Nu-MIapD.js → use-roving-tab-list-EsqX22Ik.js} +1 -1
- package/dist/client/assets/use-session-canvas-DAGOz8a6.js +27 -0
- package/dist/client/assets/{use-status-budget-DgeTxC3h.js → use-status-budget-CHln-8aP.js} +1 -1
- package/dist/client/assets/{use-transform-CiJqtMBf.js → use-transform-BmyqpcvO.js} +1 -1
- package/dist/client/assets/{use-unclaimed-chats-Blkq6U4D.js → use-unclaimed-chats-9Clj_rwl.js} +1 -1
- package/dist/client/assets/use-update-config-T78vOnRy.js +1 -0
- package/dist/client/assets/{useMutationState-lbcdmnfE.js → useMutationState-B61VoWtY.js} +1 -1
- package/dist/client/assets/{usecaseDiagram-WPOLBNNX-BM36oESm.js → usecaseDiagram-WPOLBNNX-BUqj8rIH.js} +1 -1
- package/dist/client/assets/{vennDiagram-Q3Y3IDCW-Zrybcs91.js → vennDiagram-Q3Y3IDCW-B09oli-Z.js} +1 -1
- package/dist/client/assets/{wardleyDiagram-IVAIDKWA-CO4pzGG0.js → wardleyDiagram-IVAIDKWA-BE7gzLdw.js} +1 -1
- package/dist/client/assets/{xychartDiagram-4URNHDU4-pi_wF1CM.js → xychartDiagram-4URNHDU4-CbGKfmuW.js} +1 -1
- package/dist/client/index.html +1 -1
- package/dist/server/index.js +5692 -4710
- package/dist/server/index.js.map +2 -2
- package/package.json +4 -4
- package/dist/client/assets/HandlePage-BjlcYr_l.js +0 -1
- package/dist/client/assets/NamePage-A8X09lY7.js +0 -1
- package/dist/client/assets/PhotoPage-DP5WoeFd.js +0 -1
- package/dist/client/assets/_shell.marketplace-CzLqm8iR.js +0 -1
- package/dist/client/assets/_shell.marketplace_.sources-DtraxnMx.js +0 -1
- package/dist/client/assets/_shell.session-72JEfodU.js +0 -1
- package/dist/client/assets/_shell.x._extensionId-CcJi8pKR.js +0 -1
- package/dist/client/assets/_shell.x._extensionId_._-CcJi8pKR.js +0 -1
- package/dist/client/assets/channel-DMgpNBDz.js +0 -1
- package/dist/client/assets/index-e6oawwKv.js +0 -1
- package/dist/client/assets/index-j30EyYIU.js +0 -1
- package/dist/client/assets/registry-BrjQCdmG.js +0 -1
- package/dist/client/assets/swimlanesDiagram-AYQRV4AK-wkooBe_N.js +0 -8
- package/dist/client/assets/untrusted-text-pHjcUwfI.js +0 -1
- package/dist/client/assets/use-is-below-desktop-DAZnwJGB.js +0 -1
- package/dist/client/assets/use-pending-read-DeGO1wGC.js +0 -1
- package/dist/client/assets/use-session-canvas-BfKGOpNy.js +0 -27
- package/dist/client/assets/use-update-config-BFFW_6Mc.js +0 -1
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/BlintzCanvas-Dd3bC9vw.js","assets/index-p3WivF1M.js","assets/index-CujX3mpY.css","assets/index-DSIdPh8G.js","assets/index-JoxvTUfo.js","assets/BlintzCanvas-DCXOV_yN.css","assets/CanvasFileContent-CVSfg4MO.js","assets/rotate-cw-Po-L3HFe.js","assets/query-keys-DeYqUDia.js","assets/index.esm-CxXuMuQv.js","assets/WidgetErrorCard-CgRMeAEO.js","assets/index-BY0SKYuc.js","assets/card-TbpEl6EH.js","assets/progress-CpiQE0rv.js","assets/markdown-content-BFHUHPgi.js","assets/table-9KRGRv_s.js","assets/package-0mI7-RiJ.js","assets/heart-D4fTvM5q.js","assets/git-branch-BLIYLcM4.js","assets/file-text-wmrSy3Io.js","assets/file-DHPgnMgj.js","assets/McpAppFrame-DVNWJHrn.js","assets/more-details-DhdX4DGU.js","assets/CanvasModel3dContent-CNmJsBTS.js","assets/CanvasCsvContent-B2S75f6B.js","assets/index-Dbujw1c2.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
var tn=Object.defineProperty;var Qt=e=>{throw TypeError(e)};var rn=(e,t,r)=>t in e?tn(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var re=(e,t,r)=>rn(e,typeof t!="symbol"?t+"":t,r),gt=(e,t,r)=>t.has(e)||Qt("Cannot "+r);var Me=(e,t,r)=>(gt(e,t,"read from private field"),r?r.call(e):t.get(e)),Le=(e,t,r)=>t.has(e)?Qt("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),ve=(e,t,r,n)=>(gt(e,t,"write to private field"),n?n.call(e,r):t.set(e,r),r),be=(e,t,r)=>(gt(e,t,"access private method"),r);import{O as ft,a1 as oe,a2 as nn,a3 as sn,r as p,l8 as ht,fI as X,fT as K,fM as jt,fP as Be,fJ as ce,nK as on,nL as an,nM as cn,aZ as Oe,cm as Mt,dW as un,aY as V,j as h,nN as ln,kb as dn,i6 as fn,i7 as hn,es as pn,G as Lt,I as mn,fB as gn,fL as it,ct as vn,nO as bn,js as wn,jw as xn,a7 as yn,nP as kn,nQ as yr,fH as Kt,nR as Ct,nS as ot,nT as kr,nU as jn,nV as Cn,nW as Rn,h9 as J,nX as On,nY as En,B as rt,J as jr,gh as Cr,C as _n,aN as Sn,nZ as Dn,n_ as In,n$ as er}from"./index-p3WivF1M.js";import{R as Nn}from"./rotate-cw-Po-L3HFe.js";import{d as Rt}from"./query-keys-DeYqUDia.js";import{T as Tn,a as An,u as zn}from"./index.esm-CxXuMuQv.js";import{v as Fn,a as Mn,W as Ln}from"./WidgetErrorCard-CgRMeAEO.js";import{M as qn}from"./McpAppFrame-DVNWJHrn.js";/**
|
|
3
|
+
* @license lucide-react v1.48.0 - ISC
|
|
4
|
+
*
|
|
5
|
+
* This source code is licensed under the ISC license.
|
|
6
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
7
|
+
*/const Rr={name:"file-code",size:24,node:[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 12.5 8 15l2 2.5",key:"1tg20x"}],["path",{d:"m14 12.5 2 2.5-2 2.5",key:"yinavb"}]]};Rr.node;const Fo=ft(Rr);/**
|
|
8
|
+
* @license lucide-react v1.48.0 - ISC
|
|
9
|
+
*
|
|
10
|
+
* This source code is licensed under the ISC license.
|
|
11
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
12
|
+
*/const Or={name:"maximize",size:24,node:[["path",{d:"M8 3H5a2 2 0 0 0-2 2v3",key:"1dcmit"}],["path",{d:"M21 8V5a2 2 0 0 0-2-2h-3",key:"1e4gt3"}],["path",{d:"M3 16v3a2 2 0 0 0 2 2h3",key:"wsl5sc"}],["path",{d:"M16 21h3a2 2 0 0 0 2-2v-3",key:"18trek"}]]};Or.node;const Pn=ft(Or);/**
|
|
13
|
+
* @license lucide-react v1.48.0 - ISC
|
|
14
|
+
*
|
|
15
|
+
* This source code is licensed under the ISC license.
|
|
16
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
17
|
+
*/const Er={name:"zoom-in",size:24,node:[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["line",{x1:"21",x2:"16.65",y1:"21",y2:"16.65",key:"13gj7c"}],["line",{x1:"11",x2:"11",y1:"8",y2:"14",key:"1vmskp"}],["line",{x1:"8",x2:"14",y1:"11",y2:"11",key:"durymu"}]]};Er.node;const Bn=ft(Er);/**
|
|
18
|
+
* @license lucide-react v1.48.0 - ISC
|
|
19
|
+
*
|
|
20
|
+
* This source code is licensed under the ISC license.
|
|
21
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
22
|
+
*/const _r={name:"zoom-out",size:24,node:[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["line",{x1:"21",x2:"16.65",y1:"21",y2:"16.65",key:"13gj7c"}],["line",{x1:"8",x2:"14",y1:"11",y2:"11",key:"durymu"}]]};_r.node;const Un=ft(_r);function Wn(e,t){const r=oe();return nn({queryKey:Rt.index(e??""),queryFn:()=>r.getDocIndex(e),enabled:t&&e!==null,refetchOnWindowFocus:!0})}function $n(){const e=sn();return p.useCallback(t=>{e.invalidateQueries({queryKey:t?Rt.index(t):Rt.all})},[e])}const _e={pending:64,queueBytes:1048576,batchMs:300,frames:62,imageChars:9e5,imageEdge:1568,resourceErrors:1e4},at=ce().min(1).max(128),Te={bridgeGeneration:at},Gn=X({...Te,__dorkosDevtools:K("capture-result"),requestId:at,dataUrl:ce().max(9e5).optional(),error:ce().max(2048).optional()}),Hn=on.omit({hostOutcome:!0}).extend({...Te,__dorkosDevtools:K("act-result"),dataUrl:ce().max(9e5).optional()}),Vn=an.extend({status:Be().int().min(0).max(599),durationMs:Be().min(0),responseSize:Be().int().min(0).max(Number.MAX_SAFE_INTEGER).optional(),timestamp:Be().min(0)}),Jn=cn.refine(e=>e.timestamp>=0),Zn=ht("__dorkosDevtools",[X({__dorkosDevtools:K("hello"),pageInstanceId:at,bridgeVersion:K(2)}),X({...Te,__dorkosDevtools:K("ready"),pageInstanceId:at}),X({...Te,__dorkosDevtools:K("navigated")}),X({...Te,__dorkosDevtools:K("resource-error")}),X({...Te,__dorkosDevtools:K("batch"),seq:Be().int().min(0).max(Number.MAX_SAFE_INTEGER),console:jt(Jn).max(500),network:jt(Vn).max(200)}),Gn,Hn]);function Xn(e){const t=new Set;let r=0,n=0;const s=a=>(n+=a)<=16384;function o(a){if(!s(2))return!1;for(let i=0;i<a.length;i++){const d=a.charCodeAt(i);if(d>=55296&&d<=56319&&i+1<a.length&&a.charCodeAt(i+1)>=56320&&a.charCodeAt(i+1)<=57343){if(!s(2))return!1;i++;continue}const u=d===34||d===92||[8,9,10,12,13].includes(d)?2:d<32||d>=55296&&d<=57343?6:1;if(!s(u))return!1}return!0}function c(a,i){if(++r>2048||i>8)return!1;if(a===null)return s(4);if(typeof a=="boolean")return s(a?4:5);if(typeof a=="string")return o(a);if(typeof a=="number")return Number.isFinite(a)&&s(String(a).length);if(typeof a!="object"||t.has(a))return!1;const d=Object.getPrototypeOf(a);if(d!==Object.prototype&&d!==null&&d!==Array.prototype)return!1;const u=Array.isArray(a);if(u&&a.length>2048||Object.getOwnPropertySymbols(a).length||!s(2))return!1;t.add(a);let f=0;for(const l in a){if(!Object.prototype.hasOwnProperty.call(a,l))continue;if(++f>2048||u&&(!/^\d+$/.test(l)||Number(l)>=a.length))return!1;const m=Object.getOwnPropertyDescriptor(a,l);if(["__proto__","constructor","prototype"].includes(l)||!("value"in m)||!m.enumerable||f>1&&!s(1)||!u&&(!o(l)||!s(1))||!c(m.value,i+1))return!1}return t.delete(a),!u||f===a.length}try{return c(e,0)}catch{return!1}}function Yn(e){try{if(!e||typeof e!="object")return null;const t=e;if(t.__dorkosDevtools==="capture-result"&&t.dataUrl===void 0&&t.error===void 0)return null;if(t.__dorkosDevtools==="batch"){if(!Array.isArray(t.console)||t.console.length>500||!Array.isArray(t.network)||t.network.length>200)return null;for(const s of t.console){if(!s||typeof s!="object")return null;const o=s.args;if(o!==void 0&&(!Array.isArray(o)||o.length>50||!Xn(o)))return null}}const r=Zn.safeParse(e);if(!r.success)return null;const n=r.data;return"dataUrl"in n&&n.dataUrl!==void 0&&!Sr(n.dataUrl)?null:n}catch{return null}}function Sr(e){if(e.length>9e5||!/^data:image\/png;base64,[A-Za-z0-9+/]+={0,2}$/.test(e))return null;try{const t=atob(e.slice(e.indexOf(",")+1));if(t.length<24||t.slice(0,8)!==`PNG\r
|
|
23
|
+
|
|
24
|
+
`||t.slice(12,16)!=="IHDR")return null;const r=o=>t.charCodeAt(o)*2**24+(t.charCodeAt(o+1)<<16)+(t.charCodeAt(o+2)<<8)+t.charCodeAt(o+3),n=r(16),s=r(20);return n>0&&s>0&&n<=1568&&s<=1568?{width:n,height:s}:null}catch{return null}}let vt=null;async function tr(){return vt===null&&(vt=(await Oe(()=>import("./html-to-image-cl8bZGTj.js"),[])).default),vt}let bt=null;async function Qn(){if(bt===null){const e=await Oe(()=>import("./gifenc.esm-sOOlYEo8.js"),[]);bt={GIFEncoder:e.GIFEncoder,quantize:e.quantize,applyPalette:e.applyPalette}}return bt}async function rr(e,t,r=()=>{}){if(e.length===0)return{ok:!1,error:"The recording has no frames in it."};r();const{GIFEncoder:n,quantize:s,applyPalette:o}=await Qn();r();const c=e[0],a=e[e.length-1],i=new Uint8ClampedArray(c.data.length+a.data.length);i.set(c.data,0),i.set(a.data,c.data.length);const d=s(i,256),u=n();for(let l=0;l<e.length;l++){r();const m=e[l];if(u.writeFrame(o(m.data,d),m.width,m.height,{...l===0?{palette:d,repeat:0}:{},delay:t.frameMs}),u.bytesView().byteLength>t.maxBytes)return{ok:!1,error:`The recording came out bigger than ${Math.round(t.maxBytes/1024/1024)} MB, so it was not saved.`}}u.finish();const f=u.bytes();return f.byteLength>t.maxBytes?{ok:!1,error:`The recording came out bigger than ${Math.round(t.maxBytes/1024/1024)} MB, so it was not saved.`}:{ok:!0,bytes:f}}async function Kn(e,t,r=()=>{}){const n=[],s=document.createElement("canvas");let o=0,c=0;try{for(let a=0;a<Math.min(e.length,62);a++){r();const i=e[a];if(!Sr(i)){e[a]="";continue}const d=await ts(i);e[a]="";try{if(r(),!d)continue;if(!o){const l=Math.min(1,Math.min(800,t)/Math.max(d.width,d.height,1));o=Math.max(1,Math.round(d.width*l)),c=Math.max(1,Math.round(d.height*l)),s.width=o,s.height=c}const u=s.getContext("2d",{willReadFrequently:!0});if(!u)return[];u.fillStyle="#ffffff",u.fillRect(0,0,o,c);const f=Math.min(o/d.width,c/d.height);u.drawImage(d,0,0,Math.round(d.width*f),Math.round(d.height*f)),r(),n.push({data:u.getImageData(0,0,o,c).data,width:o,height:c})}finally{d&&(d.src="")}}return n}catch(a){throw n.length=0,a}finally{e.length=0,s.width=0,s.height=0}}function es(e,t=()=>{}){const r=document.createElement("canvas"),n=document.createElement("canvas");try{for(let s=0;s<e.length;s++){t();const o=e[s];n.width=o.width,n.height=o.height,r.width=Math.max(1,Math.round(o.width/2)),r.height=Math.max(1,Math.round(o.height/2));const c=n.getContext("2d"),a=r.getContext("2d",{willReadFrequently:!0});if(!c||!a)throw new Error("Canvas pixels are unavailable");c.putImageData(new ImageData(new Uint8ClampedArray(o.data),o.width,o.height),0,0),a.drawImage(n,0,0,r.width,r.height),e[s]={data:a.getImageData(0,0,r.width,r.height).data,width:r.width,height:r.height}}}finally{n.width=n.height=r.width=r.height=0}}function ts(e){return new Promise(t=>{const r=new Image;r.onload=()=>{r.onload=r.onerror=null,t(r)},r.onerror=()=>{r.onload=r.onerror=null,r.src="",t(null)},r.src=e})}function nr(e,t,r){const n=r.slice().buffer;return{name:e,type:t,size:r.byteLength,arrayBuffer:async()=>n}}function rs(e){const t=atob(e.slice(e.indexOf(",")+1));return Uint8Array.from(t,r=>r.charCodeAt(0))}const ns=8e3;function ss(e){const t=oe(),r=p.useRef(t);p.useLayoutEffect(()=>{r.current=t});const[n]=Mt(),[s,o]=p.useState(0),c=p.useRef(null),a=p.useRef(new Map),i=p.useRef(null),d=p.useRef({console:[],network:[],entryBytes:0,overheadBytes:0}),u=p.useRef(null),f=p.useRef(-1),l=p.useRef(null),m=p.useRef(null),w=p.useRef(!1),g=p.useRef(-1/0),v=p.useRef(!1),D=p.useRef(null),N=p.useRef(0),C=p.useRef(null),z=p.useRef(null),F=p.useRef(!1),G=p.useRef(null),L=p.useRef({...e,sessionId:n}),q=p.useRef(Promise.resolve()),U=p.useRef(()=>{}),Y=p.useRef({initialize:x,retire:S,consume:ue,register:P,eligiblePending:te,refuseRequest:y,live:k,captureFrame:mt,valid:Ke,reportRecordingStart:Ae,cancelReservation:Wt,finish:$t});p.useLayoutEffect(()=>{Y.current={initialize:x,retire:S,consume:ue,register:P,eligiblePending:te,refuseRequest:y,live:k,captureFrame:mt,valid:Ke,reportRecordingStart:Ae,cancelReservation:Wt,finish:$t}});const he=O=>G.current===O||V.getState().openDocuments.some(b=>b.id===O&&b.openedHere);function j(O,{active:b,activation:E=!1,keepalive:R=!1,reset:T=!1}){if(!O.sessionId)return;const Q={documentId:O.documentId,logicalUrl:O.logicalUrl,bridgeGeneration:O.generation,seq:Math.max(0,f.current),console:[],network:[],active:b,activation:E,instrumented:O.ready&&!O.retired,...T?{reset:!0}:{}};q.current=q.current.then(()=>r.current.ingestDevtoolsCapture(O.sessionId,Q,R?{keepalive:!0}:void 0)).catch(()=>{})}function S(){var E;const O=c.current;O&&(O.retired=!0),c.current=null,u.current!==null&&clearTimeout(u.current),u.current=null,i.current=null,d.current={console:[],network:[],entryBytes:0,overheadBytes:0},f.current=-1,g.current=-1/0,v.current=!1;for(const[R,T]of a.current)T.life.sessionId&&T.deadline>Date.now()&&T.kind!=="frame"&&y(R,T.kind,T.life,"The frame changed while this request was pending."),clearTimeout(T.timer),(E=T.resolve)==null||E.call(T,null);a.current.clear(),O&&j(O,{active:!1});const b=D.current;b&&(clearTimeout(b.reservationTimer),b.cancelled=!0,b.abort.abort(),b.frames.length=0,b.finishing||(b.drawn.length=0,D.current=null)),C.current!==null&&cancelAnimationFrame(C.current),C.current=null,N.current=0,o(0)}function x({loadActivation:O,reset:b=!1}={}){var $,se;const E=L.current,R=($=E.iframeRef.current)==null?void 0:$.contentWindow;if(w.current||!R||!E.bridgeEligibility||!E.resolvedSource)return;const T={generation:crypto.randomUUID(),frame:R,sessionId:E.sessionId,documentId:E.documentId,logicalUrl:E.logicalUrl,source:E.resolvedSource,origin:E.bridgeEligibility==="served-document"?"null":E.previewOrigin,ready:!1,activation:!1,retired:!1};c.current=T;const Q=O??(F.current||z.current!==T.documentId&&he(T.documentId));T.activation=Q,F.current=!1,z.current=T.documentId,j(T,{active:!0,activation:Q,reset:b}),((se=l.current)==null?void 0:se.frame)===R&&l.current.source===E.resolvedSource&&l.current.reload===E.reloadNonce&&l.current.documentId===E.documentId&&l.current.logicalUrl===E.logicalUrl&&R.postMessage({__dorkosDevtools:"init",bridgeGeneration:T.generation},"*")}p.useLayoutEffect(()=>{var R;L.current={...e,sessionId:n};const O={frame:(R=e.iframeRef.current)==null?void 0:R.contentWindow,sessionId:n,documentId:e.documentId,logicalUrl:e.logicalUrl,source:e.resolvedSource,eligibility:e.bridgeEligibility,origin:e.previewOrigin,reload:e.reloadNonce},b=m.current;if(!b||Object.keys(O).some(T=>O[T]!==b[T])){const T=!b||b.frame!==O.frame||b.documentId!==O.documentId||b.logicalUrl!==O.logicalUrl||b.source!==O.source||b.reload!==O.reload;m.current=O,w.current=!1,S(),x({reset:T})}});const A=p.useCallback(()=>{var Q,$,se;const{initialize:O,retire:b}=Y.current,E=L.current,R=(Q=E.iframeRef.current)==null?void 0:Q.contentWindow,T=($=c.current)!=null&&$.ready?!1:(se=c.current)==null?void 0:se.activation;R&&E.resolvedSource&&(l.current={frame:R,source:E.resolvedSource,reload:E.reloadNonce,documentId:E.documentId,logicalUrl:E.logicalUrl}),w.current=!1,b(),O({loadActivation:T,reset:!0})},[]),I=p.useCallback(()=>{const O=c.current;F.current=!0,G.current=L.current.documentId,O&&U.current({active:!0,activation:!0})},[]);p.useLayoutEffect(()=>{U.current=O=>{c.current&&j(c.current,O)}});function k(O){return c.current===O&&!O.retired}function y(O,b,E,R){if(!E.sessionId)return;const T={requestId:O,bridgeGeneration:E.generation,documentId:E.documentId,hostOutcome:"host",error:R};b==="action"?r.current.postDevtoolsAction(E.sessionId,{...T,ok:!1}).catch(()=>{}):r.current.ingestDevtoolsCapture(E.sessionId,{...T,logicalUrl:E.logicalUrl,seq:Math.max(0,f.current),console:[],network:[],screenshot:{requestId:O,error:R}}).catch(()=>{})}function P(O,b,E,{capture:R=!1,resolve:T,timeoutMs:Q=8e3}={}){if(a.current.size>=_e.pending||a.current.has(O))return null;const $=setTimeout(()=>W(O,se),Q),se={kind:b,life:E,capture:R,deadline:Date.now()+Q,timer:$,resolve:T};return a.current.set(O,se),se}function W(O,b){var E;a.current.get(O)===b&&(a.current.delete(O),clearTimeout(b.timer),(E=b.resolve)==null||E.call(b,null))}function te(O,b,E){return a.current.get(O)!==b||b.life!==E||!k(E)?!1:Date.now()>=b.deadline?(W(O,b),!1):!0}function ue(O,b,E){const R=a.current.get(O);return!R||R.life!==E||R.kind!==b&&!(b==="capture"&&R.kind==="frame")||!te(O,R,E)?null:(a.current.delete(O),clearTimeout(R.timer),R)}p.useEffect(()=>{const{initialize:O,retire:b,consume:E}=Y.current;function R(){u.current=null;const de=i.current;i.current=null,d.current={console:[],network:[],entryBytes:0,overheadBytes:0};const _=c.current;de&&_&&!_.retired&&_.sessionId&&de.bridgeGeneration===_.generation&&r.current.ingestDevtoolsCapture(_.sessionId,de)}function T(de){var Ht,Vt,Jt,Zt;const _=c.current;if(!_||_.retired||de.source!==_.frame||de.origin!==_.origin||((Ht=l.current)==null?void 0:Ht.frame)!==_.frame||l.current.source!==_.source||l.current.reload!==L.current.reloadNonce||l.current.documentId!==_.documentId||l.current.logicalUrl!==_.logicalUrl)return;const M=de.data;if(!M||typeof M!="object"||typeof M.__dorkosDevtools!="string"||!["hello","ready","navigated","resource-error","batch","capture-result","act-result"].includes(M.__dorkosDevtools)||M.__dorkosDevtools!=="hello"&&M.bridgeGeneration!==_.generation)return;const ie=M.__dorkosDevtools==="batch";if(ie){if(!_.ready||!_.sessionId||M.bridgeGeneration!==_.generation||!Number.isSafeInteger(M.seq)||M.seq<0||M.seq<=f.current)return;const H=Date.now();if(H-g.current<_e.batchMs){i.current?i.current.dropped=!0:v.current=!0;return}g.current=H}const B=Yn(M);if(!B){ie&&(v.current=!0);return}if(B.__dorkosDevtools==="hello"){_.frame.postMessage({__dorkosDevtools:"init",bridgeGeneration:_.generation},"*");return}if(B.bridgeGeneration!==_.generation)return;if(B.__dorkosDevtools==="ready"){_.ready||(_.ready=!0,_.activation=!1,j(_,{active:!0}));return}if(!_.ready)return;if(B.__dorkosDevtools==="navigated"){w.current=!0,b();return}if(B.__dorkosDevtools==="resource-error"){N.current=Math.min(_e.resourceErrors,N.current+1),C.current===null&&(C.current=requestAnimationFrame(()=>{C.current=null,k(_)&&o(N.current)}));return}if(!_.sessionId)return;if(B.__dorkosDevtools==="batch"){if(B.seq<=f.current)return;f.current=B.seq;const H=i.current??{documentId:_.documentId,logicalUrl:_.logicalUrl,bridgeGeneration:_.generation,seq:B.seq,console:[],network:[]};H.seq=B.seq,v.current&&(H.dropped=!0),v.current=!1;const je=d.current,Xt=new TextEncoder;if(i.current||(je.overheadBytes=Xt.encode(JSON.stringify({...H,seq:Number.MAX_SAFE_INTEGER,dropped:!0,console:[],network:[]})).length),je.overheadBytes>_e.queueBytes){i.current=null,d.current={console:[],network:[],entryBytes:0,overheadBytes:0},v.current=!0;return}for(const[Fe,Kr]of[["console",B.console],["network",B.network]])for(const en of Kr){const Yt=Xt.encode(JSON.stringify(en)).length;je[Fe].push(Yt),je.entryBytes+=Yt}H.console.push(...B.console),H.network.push(...B.network);const Qr=()=>je.overheadBytes+je.entryBytes+Math.max(0,H.console.length-1)+Math.max(0,H.network.length-1);for(;H.console.length>500||H.network.length>200||Qr()>_e.queueBytes;){H.dropped=!0;const Fe=(((Vt=H.console[0])==null?void 0:Vt.timestamp)??1/0)<=(((Jt=H.network[0])==null?void 0:Jt.timestamp)??1/0)?"console":"network";if(!H[Fe].length)break;H[Fe].shift(),je.entryBytes-=je[Fe].shift()}i.current=H,u.current===null&&(u.current=setTimeout(R,_e.batchMs));return}if(B.__dorkosDevtools==="capture-result"){const H=E(B.requestId,"capture",_);if(!H)return;if(H.kind==="frame"){(Zt=H.resolve)==null||Zt.call(H,B.dataUrl??null);return}r.current.ingestDevtoolsCapture(_.sessionId,{bridgeGeneration:_.generation,documentId:_.documentId,logicalUrl:_.logicalUrl,seq:Math.max(0,f.current),console:[],network:[],hostOutcome:"page-reported",screenshot:{requestId:B.requestId,dataUrl:B.dataUrl,error:B.error}});return}const ze=E(B.requestId,"action",_);if(!ze)return;const Ee=D.current,Gt=ze.capture&&B.dataUrl!==void 0&&Ee!==null&&Ee.life===_&&Ee.activated&&!Ee.finishing&&!Ee.cancelled&&Ee.frames.length<61;Gt&&Ee.frames.push(B.dataUrl);const{__dorkosDevtools:Eo,dataUrl:_o,...Yr}=B;r.current.postDevtoolsAction(_.sessionId,{...Yr,hostOutcome:"page-reported",documentId:_.documentId,captured:Gt||void 0})}window.addEventListener("message",T);const Q=setInterval(()=>U.current({active:!0}),15e3),$=()=>{c.current||O(),U.current({active:!0,activation:!0})},se=()=>{U.current({active:!1,keepalive:!0}),b()},ae=()=>{document.visibilityState==="visible"&&$()};return window.addEventListener("focus",$),window.addEventListener("pagehide",se),window.addEventListener("pageshow",$),document.addEventListener("visibilitychange",ae),()=>{window.removeEventListener("message",T),clearInterval(Q),window.removeEventListener("focus",$),window.removeEventListener("pagehide",se),window.removeEventListener("pageshow",$),document.removeEventListener("visibilitychange",ae),b()}},[]),p.useEffect(()=>un.subscribeSessionEvent((O,b)=>{if(b.type!=="devtools_capture_request"&&b.type!=="devtools_action_request"&&b.type!=="devtools_recording_request")return;const{register:E,eligiblePending:R,refuseRequest:T,captureFrame:Q,valid:$,finish:se,reportRecordingStart:ae,cancelReservation:de}=Y.current,_=c.current;if(!(!(_!=null&&_.ready)||!_.sessionId||_.retired||b.targetClientId!==r.current.clientId||b.documentId!==_.documentId||b.bridgeGeneration!==_.generation)){if(b.type==="devtools_capture_request"||b.type==="devtools_action_request"){const M=b.type==="devtools_action_request",ie=E(b.requestId,M?"action":"capture",_,{capture:M&&!!b.capture,timeoutMs:M&&b.command.action==="wait_for"?Math.min(1e4,b.command.timeoutMs)+2e3:8e3});if(!ie){a.current.has(b.requestId)||T(b.requestId,M?"action":"capture",_,"Too many browser requests are waiting. Try again when one finishes.");return}const B=ze=>{R(b.requestId,ie,_)&&_.frame.postMessage(M?{__dorkosDevtools:"act-request",bridgeGeneration:_.generation,requestId:b.requestId,documentId:_.documentId,command:b.command,...b.capture?{capture:!0,lib:ze}:{}}:{__dorkosDevtools:"capture-request",bridgeGeneration:_.generation,requestId:b.requestId,lib:ze},"*")};!M||b.capture?tr().then(B,()=>B()):B()}if(b.type==="devtools_recording_request"){if(b.action==="cancel-start"){de(b.recordingId,b.requestId,_);return}if(b.action==="confirm-start"){const M=D.current;if(!M||M.id!==b.recordingId||M.startRequestId!==b.requestId||M.life!==_||M.finishing||!$(M))return;if(!M.activated){if(performance.now()>=M.reservationDeadline){de(M.id,M.startRequestId,_),ae(b,_,{phase:"started",ok:!1,error:"This recording reservation expired before capture could start."});return}clearTimeout(M.reservationTimer),M.activated=!0,M.startedAt=Date.now(),Q(_).then(ie=>{ie&&$(M)&&M.frames.push(ie)})}ae(b,_,{phase:"started",ok:!0});return}if(b.action==="start"){const M=b.reservationTimeoutMs;if(!Number.isSafeInteger(M)||!M||M<1||M>ns){ae(b,_,{phase:"reserved",ok:!1,error:"This recording request has no valid reservation timeout."});return}if(D.current){ae(b,_,{phase:"reserved",ok:!1,error:"Another recording in this window is still running or being saved. Wait for it to finish, then start again."});return}const ie={id:b.recordingId,startRequestId:b.requestId,activated:!1,reservationDeadline:performance.now()+M,life:_,startedAt:Date.now(),frames:[],drawn:[],finishing:!1,cancelled:!1,abort:new AbortController};D.current=ie,ie.reservationTimer=setTimeout(()=>{D.current===ie&&!ie.activated&&de(ie.id,ie.startRequestId,_)},M),ae(b,_,{phase:"reserved",ok:!0})}else se(b.requestId,b.recordingId,_)}}}),[]);function Ae(O,b,E){!k(b)||!b.sessionId||r.current.ingestDevtoolsCapture(b.sessionId,{hostOutcome:"host",documentId:b.documentId,bridgeGeneration:b.generation,seq:0,console:[],network:[],recordingStart:{...E,requestId:O.requestId,recordingId:O.recordingId}}).catch(()=>{})}function Wt(O,b,E){var T;const R=D.current;if(!(!R||R.id!==O||R.startRequestId!==b||R.life!==E||R.finishing)){clearTimeout(R.reservationTimer),R.cancelled=!0,R.abort.abort(),R.frames.length=0,R.drawn.length=0;for(const[Q,$]of a.current)$.life===E&&$.kind==="frame"&&(clearTimeout($.timer),(T=$.resolve)==null||T.call($,null),a.current.delete(Q));D.current=null}}function Ke(O){return D.current===O&&!O.cancelled&&k(O.life)}function mt(O){const b=`frame-${crypto.randomUUID()}`;return new Promise(E=>{const R=P(b,"frame",O,{resolve:E});if(!R){E(null);return}tr().then(T=>{te(b,R,O)&&O.frame.postMessage({__dorkosDevtools:"capture-request",bridgeGeneration:O.generation,requestId:b,lib:T},"*")},()=>{W(b,R)})})}async function $t(O,b,E){const R=D.current;if(!R||!R.activated||R.id!==b||R.life!==E){k(E)&&await r.current.uploadDevtoolsRecording(E.sessionId,{requestId:O,bridgeGeneration:E.generation,documentId:E.documentId,hostOutcome:"host",error:"The window showing that page stopped recording before it could be saved."}).catch(()=>{});return}if(R.finishing)return;R.finishing=!0;const T=()=>{if(!Ke(R))throw new Error("retired")},Q={requestId:O,bridgeGeneration:E.generation,documentId:E.documentId};try{const $=await mt(E);T(),$&&R.frames.length<_e.frames&&R.frames.push($);const se=R.frames.length?rs(R.frames[R.frames.length-1]):new Uint8Array;R.drawn=await Kn(R.frames,800,T),T();let ae=await rr(R.drawn,{frameMs:500,maxBytes:8*1024*1024},T);if(T(),!ae.ok&&R.drawn.length&&(es(R.drawn,T),ae=await rr(R.drawn,{frameMs:500,maxBytes:8*1024*1024},T),T()),!ae.ok){await r.current.uploadDevtoolsRecording(E.sessionId,{...Q,hostOutcome:"host",error:ae.error},{signal:R.abort.signal}),T();return}T(),await r.current.uploadDevtoolsRecording(E.sessionId,{...Q,frames:R.drawn.length,durationMs:Date.now()-R.startedAt,recording:nr(`${b}.gif`,"image/gif",ae.bytes),keyframe:nr(`${b}.png`,"image/png",se)},{signal:R.abort.signal}),T()}catch{Ke(R)&&await r.current.uploadDevtoolsRecording(E.sessionId,{...Q,hostOutcome:"host",error:"This window could not turn that recording into a file."},{signal:R.abort.signal}).catch(()=>{})}finally{R.frames.length=0,R.drawn.length=0,D.current===R&&(D.current=null)}}return{resourceErrorCount:s,notePersonNavigated:I,noteFrameLoaded:A}}function is(e,t,r){return r!=null&&r.bridgeEligibility?e.mode==="serve"?t===null?null:{kind:"serve",cwd:t,path:e.path}:e.mode==="proxy"?{kind:"proxy",port:e.port,path:e.path}:null:null}function os({iframeRef:e,target:t,cwd:r,resolved:n,reloadNonce:s}){const o=oe(),c=p.useRef(o);p.useEffect(()=>{c.current=o});const a=is(t,r,n),i=a?JSON.stringify(a):null,d=i?`${i}
|
|
25
|
+
${n==null?void 0:n.src}
|
|
26
|
+
${s}`:null,[u,f]=p.useState(null);return p.useLayoutEffect(()=>{if(d===null||i===null)return;const l=JSON.parse(i);let m=!0,w=0;const g=new WeakSet,v=D=>{const N=D.target;if(N===null||N!==e.current)return;const C=++w;if(g.has(N)){f(null);return}g.add(N),c.current.getFrameBridgeStatus(l).then(z=>{!m||C!==w||f(z.bridge==="refused"&&z.reason?{pageKey:d,reason:z.reason}:null)},()=>{})};return document.addEventListener("load",v,!0),()=>{m=!1,document.removeEventListener("load",v,!0)}},[d,i,e]),u!==null&&u.pageKey===d?u.reason:null}const as=15e3;function cs(e){const t=e instanceof Error?e.message.trim():"";return t.length>0?t:"Couldn’t reach DorkOS. Check your network and try again."}function us(e){const t=oe();return{open:p.useCallback(async r=>{await t.openRoomCanvasDocument(e,r)},[t,e]),update:p.useCallback(async(r,n)=>{await t.updateRoomCanvasDocument(e,r,{content:n})},[t,e]),pin:p.useCallback(async(r,n)=>{await t.updateRoomCanvasDocument(e,r,{pinned:n})},[t,e]),close:p.useCallback(async r=>{await t.closeRoomCanvasDocument(e,r)},[t,e])}}function ls(e,t){const r=oe(),n=V(s=>s.setRoomCanvasEditing);p.useEffect(()=>{if(n(e,t),t===null)return;const s=c=>{r.setRoomCanvasEditing(e,t,c).catch(a=>{console.warn("[room-canvas] edit lock failed",{roomId:e,documentId:t,err:a})})};s(!0);const o=setInterval(()=>s(!0),as);return()=>{clearInterval(o),s(!1),n(e,null)}},[r,e,t,n])}const ds=400;function Mo(e,t){const r=oe(),n=V(s=>s.roomCanvasPresenceEpoch[e]??0);p.useEffect(()=>{const s=a=>{r.setRoomCanvasViewing(e,a).catch(i=>{console.warn("[room-canvas] could not say where we are looking",{roomId:e,err:i})})};let o=!1;const c=setTimeout(()=>{o=!0,s(t)},ds);return()=>{clearTimeout(c),o&&s(null)}},[r,e,t,n])}const fs="allow-scripts allow-forms allow-popups allow-modals",wt="allow-scripts allow-same-origin allow-popups allow-forms allow-modals allow-downloads",hs=new Set(["javascript:","data:","blob:"]),ps=new Set(["localhost","127.0.0.1","0.0.0.0","[::1]","::1"]);function qt(e){return ps.has(e)||e.endsWith(".localhost")}function ms(e){return qt(e)?"direct":"server"}function gs(e,t){let r;try{r=new URL(e)}catch{return null}const n=r.searchParams.get(sr),s=new URL(r.origin),o=t.indexOf("?");return s.pathname=(o===-1?t:t.slice(0,o))||"/",s.search=o===-1?"":t.slice(o),n!==null&&s.searchParams.set(sr,n),s.toString()}const sr="__dorkos_preview",vs="/__dorkos_preview/health";function bs(e){return e==="https:"?443:80}function Dr(e){let t;try{t=new URL(e)}catch{return{mode:"serve",path:e}}if(hs.has(t.protocol))return{mode:"blocked"};if(t.protocol==="file:")return{mode:"serve",path:decodeURIComponent(t.pathname)};if(t.protocol==="http:"||t.protocol==="https:"){if(qt(t.hostname)){const r=t.port?Number(t.port):bs(t.protocol);return{mode:"proxy",hostname:t.hostname,port:r,path:`${t.pathname}${t.search}`}}return{mode:"external",url:e}}return{mode:"blocked"}}function ws(e){const t=e.trim();if(t===""||/^[a-z][a-z0-9+.-]*:\/\//i.test(t)||t.startsWith("/")||t.startsWith("./")||t.startsWith("../"))return t;const r=t.split("/")[0];if(t.includes("/")&&!r.includes(".")&&!r.includes(":"))return t;const s=r.split(":")[0];return`${qt(s)?"http":"https"}://${t}`}function xs(e){const t=Dr(e);if(t.mode==="serve")return{kind:"local",path:t.path};if(t.mode==="blocked")return{kind:"raw",text:e};try{const r=new URL(e),n=r.host.replace(/^www\./,""),s=r.pathname==="/"&&r.search===""&&r.hash===""?"":`${r.pathname}${r.search}${r.hash}`;return{kind:"url",host:n,rest:s}}catch{return{kind:"raw",text:e}}}const ys=2e3;async function ir(e,t=globalThis.fetch,r=ys){const n=new AbortController,s=setTimeout(()=>n.abort(),r);try{return await t(e,{mode:"no-cors",cache:"no-store",signal:n.signal}),!0}catch{return n.signal.aborted}finally{clearTimeout(s)}}function ks({target:e,currentUrl:t,strategy:r,cwd:n,reloadNonce:s}){const o=JSON.stringify([t,r,n,s]),[c,a]=p.useState(null),[i,d]=p.useState(null),[u,f]=p.useState(null),l=oe(),m=p.useRef(l);return p.useEffect(()=>{m.current=l}),p.useEffect(()=>{const w=m.current;let g=!1;const v=z=>{a(o),d(z)};async function D(z){if(n===null){f({kind:"no-session"});return}try{const F=await w.createServeUrl(n,z);if(g)return;F===null?f({kind:"unsupported"}):v({src:F,sandbox:fs,previewOrigin:null,bridgeEligibility:"served-document"})}catch{g||f({kind:"failed"})}}async function N(z,F){let G;try{const q=await w.probeLoopbackPort(z);G=q===null?"unknown":q.listening}catch{G="unknown"}if(g)return;let L=null;if(G!==!1){let q=null;try{q=await w.createProxyUrl(z)}catch{if(g)return;L={kind:"failed"}}if(g)return;if((q==null?void 0:q.unavailable)==="tunnel"){f({kind:"tunnel"});return}if((q==null?void 0:q.unavailable)==="no-port"&&(L={kind:"no-port"}),q!=null&&q.url){const U=new URL(q.url);if(await ir(`${U.origin}${vs}`)){if(g)return;const Y=gs(q.url,F);if(Y!==null){v({src:Y,sandbox:wt,previewOrigin:U.origin,bridgeEligibility:"preview-listener"});return}}if(g)return;L={kind:"origin-unreachable",host:U.hostname,listenPort:U.port}}}if(r==="direct"&&await ir(t)){if(g)return;v({src:t,sandbox:wt,previewOrigin:null,bridgeEligibility:null});return}g||f(L??{kind:"no-upstream"})}async function C(){if(f(null),d(null),e.mode!=="blocked"){if(e.mode==="external"){v({src:e.url,sandbox:wt,previewOrigin:null,bridgeEligibility:null});return}return e.mode==="serve"?D(e.path):N(e.port,e.path)}}return C(),()=>{g=!0}},[e,t,r,n,s,o]),{resolved:c===o?i:null,resolveError:u}}const js=ln/(1024*1024),Cs={csp:"This page’s security policy blocks added scripts, so it can’t talk to its agent.",encoding:"This page isn’t saved as UTF-8, so it can’t talk to its agent.",oversize:`This page is over ${js} MB, so it can’t talk to its agent.`,"no-head":"This page has no <head> tag, so it can’t talk to its agent.",markup:"DorkOS can’t safely read this page’s <head>, so it can’t talk to its agent.","fixed-source":"DorkOS couldn’t connect this page to its agent."};function Rs({reason:e}){return h.jsx("p",{role:"status","data-bridge-refusal":e,className:"text-muted-foreground border-border/60 border-b px-2 py-1 text-xs",children:Cs[e]})}const Os=1e4;function Es(e,t){if(e&&e.contentUrl===t&&e.stack.length>0){const r=Math.min(Math.max(e.cursor,0),e.stack.length-1);return{stack:e.stack,cursor:r}}return{stack:[t],cursor:0}}function _s({documentId:e,content:t}){const r=V(I=>I.selectedCwd),n=V(I=>I.writeBrowserHistory),[s]=p.useState(()=>Es(V.getState().browserHistories[e],t.url)),[o,c]=p.useState(s.stack),[a,i]=p.useState(s.cursor),[d,u]=p.useState(0);p.useEffect(()=>{n(e,{contentUrl:t.url,stack:o,cursor:a})},[e,t.url,o,a,n]);const f=o[a],l=p.useMemo(()=>Dr(f),[f]),m=p.useMemo(()=>l.mode==="proxy"?ms(window.location.hostname):null,[l]),w=p.useRef(null),{resolved:g,resolveError:v}=ks({target:l,currentUrl:f,strategy:m,cwd:r,reloadNonce:d}),{resourceErrorCount:D,notePersonNavigated:N,noteFrameLoaded:C}=ss({iframeRef:w,documentId:e,logicalUrl:f,reloadNonce:d,previewOrigin:(g==null?void 0:g.previewOrigin)??null,bridgeEligibility:(g==null?void 0:g.bridgeEligibility)??null,resolvedSource:(g==null?void 0:g.src)??null}),z=os({iframeRef:w,target:l,cwd:r,resolved:g,reloadNonce:d}),F=V(I=>I.roomCanvasLiveRoomId),{open:G}=us(F??""),[L,q]=p.useState(null),U=p.useCallback(I=>{c(k=>[...k.slice(0,a+1),I]),i(k=>k+1)},[a]),Y=dn(F),he=V(I=>F?I.roomCanvasEditing[F]??null:null);p.useEffect(()=>{if(Y===null||he!==null||Y.documentId!==e)return;const I=Y.url;I===void 0||I===f||U(I)},[Y,he,e,f,U]);const j=a>0,S=a<o.length-1,x=p.useCallback(I=>{const k=ws(I);if(!k||k===f){N(),u(y=>y+1);return}if(F){q(null),G({type:"browser",url:k}).catch(y=>{q({url:k,message:cs(y)})});return}N(),U(k)},[f,U,F,G,N]),A=()=>gn(f);return h.jsxs("div",{className:"flex h-full flex-col",children:[h.jsxs("div",{className:"border-border/60 flex shrink-0 flex-wrap items-center gap-1 border-b px-2 py-1 lg:h-9 lg:flex-nowrap lg:py-0",children:[h.jsx(et,{label:"Back",disabled:!j,onClick:()=>i(I=>I-1),children:h.jsx(fn,{className:"size-4"})}),h.jsx(et,{label:"Forward",disabled:!S,onClick:()=>i(I=>I+1),children:h.jsx(hn,{className:"size-4"})}),h.jsx(et,{label:"Reload",onClick:()=>u(I=>I+1),children:h.jsx(Nn,{className:"size-4"})}),h.jsx("div",{className:"order-first flex w-full min-w-0 lg:order-none lg:w-auto lg:flex-1",children:h.jsx(Ss,{url:(L==null?void 0:L.url)??f,startEditing:L!==null,onSubmit:x},L===null?"address":`retry:${L.url}`)}),h.jsx(et,{label:"Open in system browser",onClick:A,children:h.jsx(pn,{className:"size-4"})})]}),L!==null&&h.jsx("p",{role:"status",className:"text-destructive border-border/60 border-b px-2 py-1 text-xs",children:L.message}),z!==null&&h.jsx(Rs,{reason:z}),h.jsx(Ts,{target:l,resolved:g,resolveError:v,reloadNonce:d,resourceErrorCount:D,title:t.title??"Embedded browser",onOpenExternally:A,onReload:()=>{N(),u(I=>I+1)},iframeRef:w,onFrameLoad:C})]})}function Ss({url:e,startEditing:t=!1,onSubmit:r}){const[n,s]=p.useState(t),[o,c]=p.useState(e);if(!n)return h.jsx(Is,{url:e,onActivate:()=>{c(e),s(!0)}});const a=i=>{i.preventDefault(),s(!1),r(o)};return h.jsx("form",{onSubmit:a,className:"min-w-0 flex-1",children:h.jsx(mn,{"aria-label":"Address",autoFocus:!0,value:o,onChange:i=>c(i.target.value),onFocus:i=>i.currentTarget.select(),onBlur:()=>s(!1),onKeyDown:i=>{i.key==="Escape"&&(i.preventDefault(),s(!1))},spellCheck:!1,autoCapitalize:"off",autoCorrect:"off",className:"h-11 w-full text-base lg:h-7 lg:text-sm"})})}function Ds(e){return e.kind==="local"?e.path:e.kind==="url"?`${e.host}${e.rest}`:e.text}function Is({url:e,onActivate:t}){const r=p.useMemo(()=>xs(e),[e]);return h.jsxs("button",{type:"button","aria-label":`Address: ${Ds(r)}`,onClick:t,className:"text-muted-foreground hover:bg-muted focus-ring flex h-11 min-w-0 flex-1 items-center gap-1.5 rounded-md px-2 text-left text-sm transition-colors lg:h-7",children:[r.kind==="local"&&h.jsxs(h.Fragment,{children:[h.jsx("span",{className:"bg-muted-foreground/15 text-3xs rounded px-1 py-0.5 font-medium tracking-wide uppercase",children:"local"}),h.jsx("span",{className:"text-foreground truncate",children:r.path})]}),r.kind==="url"&&h.jsxs("span",{className:"truncate",children:[h.jsx("span",{className:"text-foreground",children:r.host}),h.jsx("span",{className:"text-muted-foreground",children:r.rest})]}),r.kind==="raw"&&h.jsx("span",{className:"truncate",children:r.text})]})}function Ns(e,t){switch(e.kind){case"no-session":return"Open a chat to preview local files.";case"unsupported":return"Local previews aren’t available in this environment.";case"failed":return"Couldn’t load this preview. Reload, or open the app in your browser.";case"tunnel":return"Dev server previews don’t work remotely. Open DorkOS on the computer running it.";case"no-port":return"All preview ports are in use. Close a preview, then reload.";case"origin-unreachable":return`This view can’t reach port ${e.listenPort} on ${e.host}. Open DorkOS on the computer running it.`;case"no-upstream":return`Nothing is listening on ${t.mode==="proxy"?`${t.hostname}:${t.port}`:"that address"}. Start the dev server, then reload.`}}function Ts({target:e,resolved:t,resolveError:r,reloadNonce:n,resourceErrorCount:s,title:o,onOpenExternally:c,onReload:a,iframeRef:i,onFrameLoad:d}){if(e.mode==="blocked")return h.jsx(xt,{children:"This address is blocked for safety."});if(r!==null)return h.jsxs(xt,{children:[h.jsx("p",{children:Ns(r,e)}),r.kind!=="no-session"&&r.kind!=="unsupported"&&h.jsx("button",{type:"button",onClick:a,className:"text-foreground mt-3 hover:underline",children:"Reload"})]});if(t===null)return h.jsx(xt,{children:"Loading…"});const u=e.mode==="external";return h.jsx(As,{src:t.src,sandbox:t.sandbox,title:o,iframeRef:i,onFrameLoad:d,watchLoadDeadline:!u,resourceErrorCount:s,showEmbedFallback:u,onOpenExternally:c,onReload:a},`${t.src}:${n}`)}function As({src:e,sandbox:t,title:r,iframeRef:n,onFrameLoad:s,watchLoadDeadline:o,resourceErrorCount:c,showEmbedFallback:a,onOpenExternally:i,onReload:d}){const[u,f]=p.useState(!1),[l,m]=p.useState(!1);return p.useEffect(()=>{if(!o)return;const w=setTimeout(()=>m(!0),Os);return()=>clearTimeout(w)},[o]),h.jsxs("div",{className:"flex min-h-0 flex-1 flex-col",children:[l&&!u&&h.jsx(or,{onOpenExternally:i,onReload:d,children:"This preview is slow to load."}),c>0&&h.jsxs(or,{onOpenExternally:i,children:["This page hit ",c===1e4?"at least 10,000":c," ",c===1?"error":"errors"," while loading."]}),h.jsx("iframe",{ref:n,src:e,sandbox:t,onLoad:()=>{f(!0),s()},className:"min-h-0 w-full flex-1 border-0",title:r}),a&&h.jsxs("div",{className:"text-muted-foreground border-border/60 flex items-center justify-between gap-2 border-t px-3 py-1.5 text-xs",children:[h.jsx("span",{children:"This site can’t always be embedded here."}),h.jsx("button",{type:"button",onClick:i,className:"text-foreground hover:underline",children:"Open in system browser"})]})]})}function or({children:e,onOpenExternally:t,onReload:r}){return h.jsxs("div",{className:"text-muted-foreground border-border/60 flex items-center justify-between gap-2 border-b px-3 py-1.5 text-xs",children:[h.jsx("span",{children:e}),h.jsxs("span",{className:"flex shrink-0 items-center gap-3",children:[r&&h.jsx("button",{type:"button",onClick:r,className:"text-foreground hover:underline",children:"Reload"}),h.jsx("button",{type:"button",onClick:t,className:"text-foreground hover:underline",children:"Open in system browser"})]})]})}function et({label:e,disabled:t,onClick:r,children:n}){return h.jsx("button",{type:"button","aria-label":e,disabled:t,onClick:r,className:Lt("text-muted-foreground hover:text-foreground hover:bg-muted focus-ring flex size-11 shrink-0 items-center justify-center rounded-md transition-colors lg:size-7",t&&"pointer-events-none opacity-40"),children:n})}function xt({children:e}){return h.jsx("div",{className:"text-muted-foreground flex min-h-0 flex-1 flex-col items-center justify-center p-8 text-center",children:e})}const zs=4096;function Fs(e){return e.toLowerCase().endsWith(".md")?e.slice(0,-3):e}function Ms(e){const t=e.trim(),r=/^(["'])(.*)\1$/.exec(t);return r?r[2].trim():/^[|>][+-]?\d*$/.test(t)?"":t.replace(/\s+#.*$/,"").trim()}function Ls(e,t){var o;const r=e.replace(/^\uFEFF/,"").split(/\r?\n/);let n=0;if(r[0]==="---"){for(n=1;n<r.length;n+=1){const c=r[n];if(c==="---"||c==="...")break;const a=/^title:(.*)$/.exec(c);if(a){const i=Ms(a[1]);if(i!=="")return i}}n+=1}let s=null;for(;n<r.length;n+=1){const c=r[n],a=(o=/^ {0,3}(`{3,}|~{3,})/.exec(c))==null?void 0:o[1];if(a){s===null?s=a[0]:a[0]===s&&(s=null);continue}if(s!==null)continue;const i=/^ {0,3}#[ \t]+(.*?)(?:[ \t]+#+)?[ \t]*$/.exec(c);if(i&&i[1].trim()!=="")return i[1].trim()}return Fs(t)}function qs(e,t,r=zs){let n=new TextDecoder().decode(e.subarray(0,r));return e.length>=r&&(n=n.slice(0,Math.max(0,n.lastIndexOf(`
|
|
27
|
+
`)))),Ls(n,t)}function Ps(e,t){return qs(new TextEncoder().encode(e),t)}const Ir=X({path:ce().min(1),title:ce(),slug:ce()});X({root:ce(),docs:jt(Ir),truncated:it()});X({cwd:ce().min(1)});X({cwd:ce().min(1),target:ce().min(1).max(1e3),from:ce().min(1).optional()});X({doc:Ir.nullable(),complete:it()});const Ot=".md";function we(e){return e.normalize("NFC").trim().toLowerCase()}function Nr(e){return we(e).replace(/\s+/g,"-")}function qe(e){return e.toLowerCase().endsWith(Ot)?e.slice(0,-Ot.length):e}function ar(e){return e.slice(e.lastIndexOf("/")+1)}function nt(e){const t=e.lastIndexOf("/");return t===-1?"":e.slice(0,t)}function ct(e){return e===""?[]:e.split("/")}function Bs(e,t){const r=ct(e);for(const n of t.split("/"))if(!(n===""||n==="."))if(n===".."){if(r.length===0)return null;r.pop()}else r.push(n);return r.length===0?null:r.join("/")}function cr(e,t){const r=ct(e),n=ct(t);let s=0;for(;s<r.length&&s<n.length&&r[s]===n[s];)s+=1;return r.length-s+(n.length-s)}function Us(e){return Nr(e).replace(/[^\p{L}\p{N}_-]/gu,"")}function Ws(e,t,r=null){const n=r&&r.trim()!==""?`#${Us(r)}`:"",s=e===null?null:e.normalize("NFC"),o=t.normalize("NFC");if(s===o&&n)return n;const c=ct(s===null?"":nt(s)),a=o.split("/");let i=0;for(;i<c.length&&i<a.length-1&&c[i]===a[i];)i+=1;return[...Array.from({length:c.length-i},()=>".."),...a.slice(i)].map(encodeURIComponent).join("/")+n}const $s=/[[\]|#\n\r]/,Gs=20;function Hs(e){const t=e.map(a=>({doc:a,folder:nt(a.path),path:we(a.path),title:we(a.title),base:we(qe(ar(a.path)))})),r=new Map(t.map(a=>[a.path,a])),n=a=>(i,d)=>cr(a,i.folder)-cr(a,d.folder)||i.doc.path.length-d.doc.path.length||(i.doc.path<d.doc.path?-1:i.doc.path>d.doc.path?1:0);function s(a,i){const d=qe(a),u=a.startsWith("/")?[""]:[i,""];for(const f of u){const l=Bs(f,d);if(l===null)continue;const m=r.get(we(l+Ot));if(m)return m}}function o(a,i){const d=a.normalize("NFC").trim();if(d==="")return null;const u=i===null?"":nt(i);if(d.includes("/")){const g=s(d,u);if(g)return g}const f=we(d),l=we(qe(d)),m=Nr(l),w=t.filter(g=>g.title===f||g.base===l||g.doc.slug===m);return w.length===0?null:w.sort(n(u))[0]??null}function c(a,i){const d=[a.doc.title.trim(),qe(ar(a.doc.path)),`/${qe(a.doc.path)}`];for(const u of d)if(!(u===""||$s.test(u))&&o(u,i)===a)return u;return null}return{docs:e,resolve:(a,i)=>{var d;return((d=o(a,i))==null?void 0:d.doc)??null},search(a,i,d=Gs){const u=we(a),f=i===null?"":nt(i),l=i===null?null:we(i),m=[];for(const v of t){if(v.path===l)continue;const D=u===""||v.title.startsWith(u)?0:v.title.split(/[\s\-_/]+/).some(N=>N.startsWith(u))?1:v.title.includes(u)?2:v.path.includes(u)?3:-1;D>=0&&m.push({entry:v,score:D})}const w=n(f);m.sort((v,D)=>v.score-D.score||w(v.entry,D.entry));const g=[];for(const{entry:v}of m){if(g.length>=d)break;const D=c(v,i);D!==null&&g.push({target:D,title:v.doc.title,description:v.doc.path})}return g}}}function ur(e,t){const r=t.normalize("NFC").replaceAll("\\","/"),n=r.startsWith("/")||/^[A-Za-z]:\//.test(r);let s=r;if(n){const c=e.normalize("NFC").replaceAll("\\","/").replace(/\/+$/,"");if(!r.startsWith(`${c}/`))return null;s=r.slice(c.length+1)}const o=[];for(const c of s.split("/"))if(!(c===""||c==="."))if(c===".."){if(o.length===0)return null;o.pop()}else o.push(c);return o.length===0?null:o.join("/")}const lr="Links within this doc don’t open.",dr="This folder is too big to check this link.",fr="Couldn’t check this link.";function hr(e,t,r){return{exists:!0,href:Ws(e,t.path,r),title:t.title}}function Vs(e){const{index:t,truncated:r,docPath:n,lookup:s,open:o,refuse:c}=e,a=new Map,i=f=>{const l=f.normalize("NFC").trim().toLowerCase();let m=a.get(l);return m||(m=s(f.trim()).catch(()=>null),a.set(l,m)),m};return{resolve:f=>{if(f.target.trim()==="")return{exists:!1,title:lr};const l=t.resolve(f.target,n);return l?hr(n,l,f.heading):r?i(f.target).then(m=>m===null?{exists:!0,title:fr}:m.doc?hr(n,m.doc,f.heading):m.complete?{exists:!1}:{exists:!0,title:dr}):{exists:!1}},search:f=>t.search(f,n),onOpen:f=>{const l=f.target.trim();if(l===""){c(lr);return}const m=`No doc called “${l}” yet.`,w=t.resolve(l,n);if(w){o(w.path);return}if(!r){c(m);return}i(l).then(g=>{g!=null&&g.doc?o(g.doc.path):c(g===null?fr:g.complete?m:dr)})}}}function Js({cwd:e,sourcePath:t,content:r="",saved:n=!1}){const{enabled:s}=vn(bn),o=s&&!!e&&!!t,{data:c}=Wn(e,o),a=$n(),i=oe(),{setTheme:d}=wn(),u=o&&c&&e&&t?ur(e,t)??ur(c.root,t):null,f=p.useMemo(()=>c?Hs(c.docs):null,[c]),l=p.useRef({index:f,docPath:u,content:r,cwd:e});p.useEffect(()=>{l.current={index:f,docPath:u,content:r,cwd:e}}),p.useEffect(()=>{const{index:w,docPath:g,content:v,cwd:D}=l.current;if(!n||!w||g===null)return;const N=w.docs.find(z=>z.path.normalize("NFC").toLowerCase()===g.toLowerCase()),C=g.slice(g.lastIndexOf("/")+1);(!N||N.title!==Ps(v,C))&&a(D)},[n,a]);const m=p.useCallback(w=>{xn({getStore:V.getState,setTheme:d,supportsTerminal:i.supportsTerminal},{action:"open_file",sourcePath:w},"user")},[d,i]);return p.useMemo(()=>{if(!(!f||!c||u===null||!e))return Vs({index:f,truncated:c.truncated,docPath:u,lookup:w=>i.resolveDocLink(e,w,u),open:m,refuse:w=>yn.info(w)})},[f,c,u,e,i,m])}const Je=ce().min(1).max(128),pe={protocol:K("dorkos-doc"),v:K(1),nonce:Je,requestToken:Je,loadToken:Ct,generation:yr.shape.generation};ht("kind",[X({...pe,kind:K("challenge")}).strict(),X({...pe,kind:K("ack")}).strict(),X({...pe,kind:K("connect")}).strict()]);ht("kind",[X({...pe,kind:K("emit"),requestId:Je,event:ot}).strict(),X({...pe,kind:K("retire")}).strict()]);ht("kind",[X({...pe,kind:K("receipt"),requestId:Je,receipt:kr}).strict(),X({...pe,kind:K("refused"),requestId:Je,outcome:Kt(["cancelled","unconfirmed","refused"])}).strict(),X({...pe,kind:K("state"),state:jn,stateRev:Ct,docSeq:Ct,reset:it()}).strict(),X({...pe,kind:K("event"),frame:Cn}).strict(),X({...pe,kind:K("status"),status:Kt(["connecting","ready","offline","revoked"]),unconfirmed:it()}).strict()]);function Zs(e,t){try{if(kn(t,1048576)!==void 0)return null;const r=e.safeParse(t);return r.success?r.data:null}catch{return null}}function Xs(e){return typeof e=="object"&&e!==null&&e.status===404}function Ys({owner:e,getOwner:t,readTail:r,writeTail:n,transport:s,cwd:o,sourcePath:c,documentId:a,pending:i}){const d=()=>{var g,v;return((g=t())==null?void 0:g.recoveryGate)==="unsupported"||((v=t())==null?void 0:v.recoveryGate)==="observed_clear"},u=g=>{var N;const v=Rn.parse(g),D=(N=t())==null?void 0:N.recoveryBinding;if(!D||v.documentId!==a||!J(v.incarnation,D.incarnation))throw new Error("Original save scope changed");return v},f=s.originalFileSaveRecovery,l=()=>{var g;try{const v=t();return(v==null?void 0:v.identity)===e&&v.active&&!!((g=v.recoveryBinding)!=null&&g.current())}catch{return!1}},m=(g,v,D=!1,N=!1)=>{if(!f||!l())return Promise.resolve({status:"idle"});const C=t(),z={},F=()=>t()===C&&l()&&(!v||C.recoveryBinding===v)&&(!D||C.recoveryWork===z),G=C.discovery;let L=!1;C.recoveryWork=z,C.recoveryGate="pending",C.recoveryBusy=!0;const q=r().catch(()=>{}).then(async()=>{try{if(!F())return{status:"idle"};const U=await g();return F()?(D&&(C.recoveryGate="observed_clear"),L=!0,{status:"observed",value:U}):{status:"idle"}}catch(U){return F()?(C.recoveryGate="unavailable",{status:N&&Xs(U)?"refused":"unavailable"}):{status:"idle"}}finally{!L&&C.discovery===G&&(C.discovery=void 0),C.recoveryWork===z&&(C.recoveryBusy=!1,C.recoveryWork=void 0)}});return D||n(q.then(()=>{})),q};return{identity:e,supported:!!f,current:l,discover:(g=!1)=>{if(!f||!l())return Promise.resolve({status:"idle"});const v=t(),D=v.recoveryBinding;if(v.discoveryBinding===D&&v.discovery&&(v.pendingDiscovery===v.discovery||!g&&v.recoveryGate==="observed_clear"))return v.discovery;const N=m(async()=>{const C=u(await f.discover(a));return t()===v&&v.recoveryBinding===D&&l()&&(v.recoveryGate=C.admission==="blocked"?"blocked":"observed_clear"),C},D,!1,!0);return v.discoveryBinding=D,v.discovery=N,v.pendingDiscovery=N,N.then(C=>{v.pendingDiscovery===N&&(v.pendingDiscovery=void 0),C.status==="idle"&&v.discovery===N&&(v.discovery=void 0)}),N},recover(g){if(i())return Promise.resolve({status:"local_uncertain"});const v=t();return m(async()=>{if(!v||i())throw new Error("Mounted original still uncertain");const D=v.recoveryBinding,N=On.parse(await f.recover(a,g,D.incarnation));if(t()!==v||!l()||N.documentId!==a||N.entry.eventId!==g||!J(N.incarnation,D.incarnation))throw new Error("Original recovery scope changed");const C=u(await f.discover(a));return t()===v&&l()&&(v.recoveryGate=C.admission==="blocked"?"blocked":"observed_clear"),{result:N,discovery:C}})},inspectCurrent(){const g=t();return!g||!l()||i()||!d()?Promise.resolve({status:"local_uncertain"}):m(async()=>{const v=await s.readFileContent(o,c);if(!v||typeof v.content!="string"||typeof v.hash!="string"||!/^[a-f0-9]{64}$/u.test(v.hash))throw new Error("Current file evidence missing");return{content:v.content,hash:v.hash}},g.recoveryBinding,!0)}}}class Se extends Error{constructor(){super("The original save is not confirmed. Retry it before saving another draft.")}}class Ge extends Error{}function Qs(){const e=crypto.getRandomValues(new Uint8Array(16));e[6]=e[6]&15|64,e[8]=e[8]&63|128;const t=[...e].map(r=>r.toString(16).padStart(2,"0")).join("");return`${t.slice(0,8)}-${t.slice(8,12)}-${t.slice(12,16)}-${t.slice(16,20)}-${t.slice(20)}`}function Ks(e){const t=e;return(t==null?void 0:t.status)===412&&t.code==="DOC_SAVE_FAILED"}var fe,Ie,Ye,Et;class ei{constructor(){Le(this,Ye);Le(this,fe);Le(this,Ie)}get pending(){return Me(this,fe)!==void 0}get receipt(){return Me(this,Ie)}async write(t,r,n,s,o,c,a=!1){if(Me(this,fe))throw new Se;if(ve(this,Ie,void 0),!c)return t.writeFile(r,n,s,o);if(!a&&!c.current())throw new Ge;const i=Object.freeze({cwd:r,path:n,content:s,options:Object.freeze({...o,documentSave:Object.freeze({documentId:c.incarnation.documentId,eventId:Qs(),incarnation:Object.freeze({...c.incarnation})})})});return ve(this,fe,i),be(this,Ye,Et).call(this,t,i)}async retry(t,r){const n=Me(this,fe);if(!(n!=null&&n.options.documentSave)||!r.current()||!J(n.options.documentSave.incarnation,r.incarnation))throw new Ge;return{result:await be(this,Ye,Et).call(this,t,n),content:n.content}}}fe=new WeakMap,Ie=new WeakMap,Ye=new WeakSet,Et=async function(t,r){try{const n=await t.writeFile(r.cwd,r.path,r.content,r.options);if(!n||typeof n!="object"||typeof n.ok!="boolean")throw new Se;if(!n.ok){if(!n.conflict||typeof n.conflict.currentHash!="string"||!n.conflict.currentHash||typeof n.conflict.currentContent!="string")throw new Se;return ve(this,fe,void 0),n}if(typeof n.hash!="string"||!n.hash||n.effect!=="changed"&&n.effect!=="no_op")throw new Se;const s="documentReceipt"in n?En.parse(n.documentReceipt):void 0,o=r.options.documentSave;if(!s&&n.effect!=="no_op")throw new Se;if(s&&(s.documentId!==o.documentId||s.eventId!==o.eventId||!J(s.incarnation,o.incarnation)||s.fileHash!==n.hash||(s.status==="accepted"?n.effect!=="changed":n.effect!=="no_op")))throw new Se;if((s==null?void 0:s.status)==="duplicate"){const c=await t.readFileContent(r.cwd,r.path);if(!c||typeof c!="object"||Array.isArray(c)||typeof c.hash!="string"||!c.hash||typeof c.content!="string")throw new Se;if(c.hash!==s.fileHash||c.content!==r.content)return ve(this,Ie,s),ve(this,fe,void 0),{ok:!1,conflict:{currentHash:c.hash,currentContent:c.content}}}return ve(this,Ie,s),ve(this,fe,void 0),n}catch(n){throw Ks(n)&&ve(this,fe,void 0),n}};function ti({sourcePath:e,cwd:t,loadedContent:r,documentId:n,documentSaveBinding:s,documentRecoveryBinding:o}){const c=oe(),a=(s==null?void 0:s.incarnation)??(o==null?void 0:o.incarnation),i=a?JSON.stringify([a.documentId,a.physicalOpenedAt,a.channelCreatedAt,a.generation]):void 0,d=p.useRef(new ei),u=p.useMemo(()=>({sourcePath:e,cwd:t,documentId:n,transport:c,birthKey:i}),[e,t,n,c,i]),f=p.useRef(null),l=p.useRef(null),m=p.useRef(Promise.resolve()),w=p.useCallback(()=>{var k;return((k=l.current)==null?void 0:k.identity)===u&&l.current.active},[u]);p.useLayoutEffect(()=>{var k;return((k=l.current)==null?void 0:k.identity)!==u?l.current={identity:u,baseHash:null,baseContent:r,active:!0,recoveryBinding:o,recoveryGate:o&&c.originalFileSaveRecovery?"pending":"unsupported"}:(l.current.active=!0,l.current.recoveryBinding=o),()=>{var y;((y=l.current)==null?void 0:y.identity)===u&&(l.current.active=!1)}},[u,r,o,c]);const[g,v]=p.useState({owner:u,status:"idle",conflict:null}),D=g.owner===u?g.status:"idle",N=g.owner===u?g.conflict:null,C=p.useCallback((k,y,P)=>{w()&&v(W=>({owner:u,status:k,documentReceipt:y,confirmedContent:P,conflict:W.owner===u?W.conflict:null}))},[u,w]),z=p.useCallback(k=>{w()&&v(y=>({owner:u,conflict:k,status:y.owner===u?y.status:"idle"}))},[u,w]),F=p.useCallback(()=>{var k,y;return((k=l.current)==null?void 0:k.recoveryGate)==="unsupported"||((y=l.current)==null?void 0:y.recoveryGate)==="observed_clear"},[]),G=p.useMemo(()=>{const k=()=>Ys({owner:u,getOwner:()=>l.current,readTail:()=>m.current,writeTail:y=>{m.current=y},transport:c,cwd:t,sourcePath:e,documentId:n,pending:()=>d.current.pending});return{identity:u,supported:!!c.originalFileSaveRecovery,current:()=>k().current(),discover:y=>k().discover(y),recover:y=>k().recover(y),inspectCurrent:()=>k().inspectCurrent()}},[u,c,t,e,n]),L=!!(e&&t),q=p.useCallback((k,y,P,W=!1)=>{const te=()=>w()&&l.current===k&&(!s||s.current());if(y.ok){if(typeof y.hash!="string"||!y.hash||y.effect!=="changed"&&y.effect!=="no_op")throw new Error("Invalid file save acknowledgement");return k.baseHash=y.hash,k.baseContent=P,!W&&!te()?{status:"idle"}:(W||(z(null),C("saved",d.current.receipt,P)),{status:y.effect,confirmed:{hash:y.hash,content:P}})}return!W&&!te()?{status:"idle"}:(W||(z(y.conflict),C("conflict")),{status:"conflict"})},[w,s,z,C]),U=p.useCallback(async(k,y)=>{if(!w())return{status:"idle"};const P=l.current;s&&!d.current.pending&&(f.current=u);const W=await d.current.write(c,t,e,k,y,s);return q(P,W,k)},[w,c,t,e,s,q,u]),Y=p.useCallback(k=>{var W;if(!L||!w())return Promise.resolve({status:"idle"});const y=((W=l.current.finalToken)==null?void 0:W.content)===k?l.current.finalToken:void 0,P=m.current.catch(()=>{}).then(async()=>{if(!w()||s&&!s.current())return{status:"idle"};if(d.current.pending)return C("uncertain"),{status:"uncertain"};if(!F())return C("error"),{status:"error"};l.current.finalToken===y&&(l.current.finalToken=void 0),C("saving");try{const te=l.current.baseHash!==null?{expectedHash:l.current.baseHash}:{expectedContent:l.current.baseContent};return await U(k,te)}catch(te){if(te instanceof Ge)return{status:"idle"};if(!w()||s&&!s.current())return{status:"idle"};const ue=d.current.pending?"uncertain":"error";return C(ue),{status:ue}}});return m.current=P.then(()=>{}),P},[L,U,w,C,s,F]),he=p.useCallback(k=>{if(!L||!w()||s&&!s.current())return null;const y=l.current,P={content:k,id:Symbol("buffered canvas draft")};return y.finalToken=P,{cancel(){y.finalToken===P&&(y.finalToken=void 0)},flush(){if(y.finalToken!==P||l.current!==y||y.active)return Promise.resolve({status:"idle"});y.finalToken=void 0;const W=m.current.catch(()=>{}).then(async()=>{if(l.current!==y||y.active)return{status:"idle"};try{if(y.recoveryGate!=="unsupported"&&y.recoveryGate!=="observed_clear")return{status:"error"};const te=y.baseHash!==null?{expectedHash:y.baseHash}:{expectedContent:y.baseContent};s&&!d.current.pending&&(f.current=u);const ue=await d.current.write(c,t,e,k,te,s,!0);return q(y,ue,k,!0)}catch{return{status:"error"}}});return m.current=W.then(()=>{}),W}}},[L,w,c,t,e,s,q,u]),j=p.useCallback(async k=>{const y=l.current;return!y||y.identity!==u?!1:(await m.current.catch(()=>{}),l.current===y&&!d.current.pending&&y.baseContent===k)},[u]),S=p.useCallback(()=>{if(!w()||!s||f.current!==u)return Promise.resolve({status:"idle"});const k=l.current,y=m.current.catch(()=>{}).then(async()=>{if(!w()||l.current!==k||f.current!==u)return{status:"idle"};try{C("saving");const P=await d.current.retry(c,s);return q(k,P.result,P.content)}catch(P){if(P instanceof Ge||!w()||l.current!==k)return{status:"idle"};const W=d.current.pending?"uncertain":"error";return C(W),{status:W}}});return m.current=y.then(()=>{}),y},[w,s,c,q,C,u]),x=p.useCallback(k=>{var te;if(!L||!N||!w())return Promise.resolve({status:"idle"});const y=N.currentHash,P=((te=l.current.finalToken)==null?void 0:te.content)===k?l.current.finalToken:void 0,W=m.current.catch(()=>{}).then(async()=>{if(!w()||s&&!s.current())return{status:"idle"};if(d.current.pending)return C("uncertain"),{status:"uncertain"};if(!F())return C("error"),{status:"error"};l.current.finalToken===P&&(l.current.finalToken=void 0),C("saving");try{return await U(k,{expectedHash:y})}catch(ue){if(ue instanceof Ge)return{status:"idle"};if(!w()||s&&!s.current())return{status:"idle"};const Ae=d.current.pending?"uncertain":"error";return C(Ae),{status:Ae}}});return m.current=W.then(()=>{}),W},[L,N,U,w,C,s,F]),A=p.useCallback(()=>{var k;return((k=l.current)==null?void 0:k.identity)===u?{hash:l.current.baseHash,content:l.current.baseContent}:{hash:null,content:r}},[u,r]),I=p.useCallback(()=>{if(!N||!w()||s&&!s.current())return null;l.current.finalToken=void 0;const k=N.currentContent;return l.current.baseHash=N.currentHash,l.current.baseContent=k,z(null),C("idle"),k},[N,w,z,C,s]);return{recovery:G,status:D,conflict:N,canSave:L,save:Y,overwrite:x,adoptDisk:I,getConfirmedBase:A,prepareFinalSave:he,retryUnconfirmed:S,waitForCloseDrain:j,documentReceipt:g.owner===u?g.documentReceipt:void 0,confirmedContent:g.owner===u?g.confirmedContent:void 0}}const ri=p.lazy(()=>Oe(()=>import("./BlintzCanvas-Dd3bC9vw.js").then(e=>e.B),__vite__mapDeps([0,1,2,3,4,5])).then(e=>({default:e.BlintzCanvas}))),ni=500;function si(e){switch(e){case"saving":return"Saving…";case"saved":return"Saved";case"error":return"Couldn’t save";default:return null}}function ii({content:e,documentId:t,onContentChange:r}){const[n,s]=p.useState(!1),[o,c]=p.useState(e.content),a=V(x=>x.canvasSessionId),i=V(x=>x.setDocumentEditing),d=V(x=>{var A;return((A=x.openDocuments.find(I=>I.id===t))==null?void 0:A.editing)??!1}),u=V(x=>x.selectedCwd),f=n&&d,l=ti({documentId:t,sourcePath:e.sourcePath,cwd:u,loadedContent:e.content}),m=l.canSave,w=Js({cwd:u,sourcePath:m?e.sourcePath:null,content:o,saved:l.status==="saved"}),g=p.useRef(null),v=p.useRef(null),D=p.useRef(o),N=p.useRef(e),C=p.useRef(r),z=p.useRef(l.save),F=p.useRef(l.prepareFinalSave),G=p.useRef(null);p.useEffect(()=>{D.current=o,N.current=e,C.current=r,z.current=l.save,F.current=l.prepareFinalSave});const L=p.useCallback(x=>{V.getState().canvasSessionId===g.current&&(C.current({...N.current,content:x}),z.current(x))},[]),q=p.useCallback(x=>{var A;c(x),D.current=x,(A=G.current)==null||A.cancel(),G.current=F.current(x),v.current&&clearTimeout(v.current),v.current=setTimeout(()=>{v.current=null,L(x)},ni)},[L]),U=()=>{g.current=V.getState().canvasSessionId,c(e.content),s(!0),i(t,!0)},Y=()=>{v.current&&(clearTimeout(v.current),v.current=null,L(D.current)),s(!1),i(t,!1)};p.useEffect(()=>{var x;f&&a!==g.current&&(v.current&&(clearTimeout(v.current),v.current=null),(x=G.current)==null||x.cancel(),G.current=null,s(!1),i(t,!1))},[a,f,t,i]),p.useEffect(()=>{var x;!n||f||(v.current&&clearTimeout(v.current),v.current=null,(x=G.current)==null||x.cancel(),G.current=null)},[f,n]),p.useEffect(()=>()=>{var x,A;v.current&&(clearTimeout(v.current),v.current=null,V.getState().canvasSessionId===g.current&&C.current({...N.current,content:D.current})),V.getState().canvasSessionId===g.current?(x=G.current)==null||x.flush():(A=G.current)==null||A.cancel(),G.current=null,i(t,!1)},[L,t,i]);const he=()=>{const x=l.adoptDisk();x!=null&&(r({...e,content:x}),c(x))},j=()=>{l.overwrite(D.current)},S=si(l.status);return h.jsxs("div",{className:"relative flex h-full flex-col",children:[h.jsxs("div",{className:"sticky top-0 z-10 flex h-0 items-start justify-end gap-2 pr-2",children:[m&&S&&h.jsx("span",{className:"text-muted-foreground mt-3 text-xs","aria-live":"polite",children:S}),m&&h.jsx(rt,{type:"button",variant:"ghost",size:"icon-md",className:"text-muted-foreground hover:text-foreground mt-2",onClick:f?Y:U,"aria-label":f?"Finish editing":"Edit document",children:f?h.jsx(jr,{className:"size-4"}):h.jsx(Cr,{className:"size-4"})})]}),l.status==="conflict"&&h.jsxs("div",{className:"bg-destructive/10 text-destructive mx-2 mt-2 flex flex-wrap items-center gap-x-3 gap-y-1 rounded-md px-3 py-2 text-sm",children:[h.jsx("span",{className:"flex-1",children:"This file changed on disk since you opened it."}),h.jsx(rt,{type:"button",variant:"ghost",size:"sm",className:"h-7",onClick:he,children:"Reload"}),h.jsx(rt,{type:"button",variant:"destructive",size:"sm",className:"h-7",onClick:j,children:"Overwrite"})]}),h.jsx("div",{className:"flex-1 px-2 pb-6",children:h.jsx(p.Suspense,{fallback:h.jsx("div",{className:"text-muted-foreground p-4 text-sm",children:"Loading editor…"}),children:h.jsx(ri,{value:f?o:e.content,editable:f,onChange:f?q:void 0,wikiLinks:w})})})]})}function oi({content:e}){return h.jsx("div",{className:"p-4 font-mono text-sm",children:h.jsx(Tr,{value:e.data,depth:0})})}const ai=20;function Tr({value:e,depth:t,keyName:r}){const[n,s]=p.useState(t>2),o=p.useCallback(()=>s(u=>!u),[]);if(t>=ai)return h.jsx(Pe,{keyName:r,value:"[max depth]",className:"text-muted-foreground"});if(e===null)return h.jsx(Pe,{keyName:r,value:"null",className:"text-muted-foreground"});if(typeof e=="boolean")return h.jsx(Pe,{keyName:r,value:String(e),className:"text-blue-500"});if(typeof e=="number")return h.jsx(Pe,{keyName:r,value:String(e),className:"text-green-500"});if(typeof e=="string")return h.jsx(Pe,{keyName:r,value:`"${e}"`,className:"text-amber-500"});const c=Array.isArray(e),a=c?e.map((u,f)=>[String(f),u]):Object.entries(e),i=c?"[":"{",d=c?"]":"}";return h.jsxs("div",{style:{paddingLeft:t>0?16:0},children:[h.jsxs("button",{type:"button",className:"hover:bg-muted -ml-0.5 inline-flex items-center gap-0.5 rounded px-0.5 transition-colors duration-150",onClick:o,children:[h.jsx(_n,{className:Lt("size-3 transition-transform",!n&&"rotate-90")}),r!=null&&h.jsxs("span",{className:"text-foreground",children:[r,": "]}),h.jsxs("span",{className:"text-muted-foreground",children:[i,n&&` … ${a.length} items `,n&&d]})]}),!n&&h.jsxs(h.Fragment,{children:[a.map(([u,f])=>h.jsx(Tr,{keyName:c?void 0:u,value:f,depth:t+1},u)),h.jsx("div",{className:"text-muted-foreground",children:d})]})]})}function Pe({keyName:e,value:t,className:r}){return h.jsxs("div",{style:{paddingLeft:16},children:[e!=null&&h.jsxs("span",{className:"text-foreground",children:[e,": "]}),h.jsx("span",{className:r,children:t})]})}const ci=/^\/api\/rooms\/([A-Za-z0-9][A-Za-z0-9._-]*)\/canvas\/media\/([0-9a-f]{16}-[0-9a-f]{64}(?:\.[a-z0-9]{1,10})?)$/;function Ar(e,t){const r=ci.exec(e.trim());return r?t===void 0||r[1]===t:!1}const ui=new Set(["http:","https:"]);function li(e){const t=/^([a-zA-Z][a-zA-Z0-9+.-]*):/.exec(e);return!t||t[1].length===1?null:`${t[1].toLowerCase()}:`}const di={image:"data:image/",pdf:"data:application/pdf"};function zr(e,t,r){const n=e.trim();if(n.startsWith("data:"))return n.toLowerCase().startsWith(di[t])?{url:n,error:null}:{url:null,error:"unsupported-data"};if(Ar(n))return{url:n,error:null};const s=li(n);if(s!==null)return ui.has(s)?{url:n,error:null}:{url:null,error:"blocked"};const o=r(n);return o?{url:o,error:null}:{url:null,error:"local-unavailable"}}function Fr(e,t){switch(e){case"blocked":return`This ${t} source is blocked for safety.`;case"unsupported-data":return`This data URI isn’t a valid ${t} source.`;case"local-unavailable":return`Local ${t} files can’t be displayed here.`}}function fi({content:e}){const t=oe(),r=V(u=>u.selectedCwd),n=p.useMemo(()=>zr(e.src,"image",u=>t.mediaUrl(r??"",u)),[e.src,t,r]),[s,o]=p.useState("loading"),[c,a]=p.useState(e.src);c!==e.src&&(a(e.src),o("loading"));const i=e.alt??e.title??"Canvas image";if(n.url===null){const u=n.error?Fr(n.error,"image"):"";return h.jsx(pr,{children:u})}const d=n.url;return h.jsxs("div",{className:"bg-muted/40 relative flex h-full items-center justify-center",children:[s==="loading"&&h.jsx("p",{className:"text-muted-foreground absolute text-sm","aria-live":"polite",children:"Loading image…"}),s==="error"?h.jsx(pr,{children:"This image couldn’t be loaded."}):h.jsxs(Tn,{centerOnInit:!0,doubleClick:{mode:"toggle"},wheel:{step:.15},children:[h.jsx(hi,{}),h.jsx(An,{wrapperClass:"!h-full !w-full",contentClass:"!h-full !w-full flex items-center justify-center",children:h.jsx("img",{src:d,alt:i,onLoad:()=>o("loaded"),onError:()=>o("error"),className:Lt("max-h-full max-w-full object-contain transition-opacity",s==="loaded"?"opacity-100":"opacity-0")})})]})]})}function hi(){const{zoomIn:e,zoomOut:t,resetTransform:r}=zn();return h.jsxs("div",{className:"absolute top-2 right-2 z-10 flex gap-1",children:[h.jsx(yt,{label:"Zoom in",onClick:()=>e(),children:h.jsx(Bn,{className:"size-4"})}),h.jsx(yt,{label:"Zoom out",onClick:()=>t(),children:h.jsx(Un,{className:"size-4"})}),h.jsx(yt,{label:"Reset zoom",onClick:()=>r(),children:h.jsx(Pn,{className:"size-4"})})]})}function yt({label:e,onClick:t,children:r}){return h.jsx("button",{type:"button",onClick:t,"aria-label":e,className:"bg-background/80 text-muted-foreground hover:text-foreground focus-ring rounded-md border p-1.5 backdrop-blur transition-colors",children:r})}function pr({children:e}){return h.jsx("div",{className:"text-muted-foreground flex h-full items-center justify-center p-8 text-center",children:h.jsx("p",{children:e})})}function pi({content:e}){const t=oe(),r=Sn().data,n=V(i=>i.selectedCwd),s=p.useMemo(()=>zr(e.src,"pdf",i=>t.mediaUrl(n??"",i)),[e.src,t,n]);if(s.url===null){const i=s.error?Fr(s.error,"pdf"):"";return h.jsx("div",{className:"text-muted-foreground flex h-full items-center justify-center p-8 text-center",children:h.jsx("p",{children:i})})}const o=s.url,c=e.title??"PDF document",a=new URL(o,window.location.href).origin===window.location.origin;return a&&!r?null:a&&(r==null?void 0:r.serverRole)==="hub"?h.jsxs("div",{className:"text-muted-foreground flex h-full flex-col items-center justify-center gap-3 p-8 text-center",children:[h.jsx("p",{children:"PDFs download here instead of opening."}),h.jsxs("a",{href:o,download:!0,className:"text-foreground focus-ring rounded-md underline underline-offset-4",children:["Download ",c]})]}):h.jsx("object",{data:o,type:"application/pdf",title:c,className:"h-full w-full",children:h.jsxs("div",{className:"text-muted-foreground flex h-full flex-col items-center justify-center gap-3 p-8 text-center",children:[h.jsx("p",{children:"This PDF can’t be shown here."}),h.jsxs("a",{href:o,target:"_blank",rel:"noreferrer",className:"text-foreground focus-ring rounded-md underline underline-offset-4",children:["Open ",c," in a new tab"]})]})})}function mi(e){const t=/^([a-zA-Z][a-zA-Z0-9+.-]*):/.exec(e);return!t||t[1].length===1?null:`${t[1].toLowerCase()}:`}const gi=new Set(["http:","https:","data:"]);function Mr(e,t,r){const n=e.trim();if(Ar(n))return{url:n};const s=mi(n);return s!==null?gi.has(s)?s==="data:"&&r!==void 0?n.toLowerCase().startsWith(r)?{url:n}:{url:null}:{url:n}:{url:null}:{url:t(n)}}function vi({content:e}){const t=oe(),r=V(o=>o.selectedCwd),n=p.useMemo(()=>Mr(e.src,o=>t.mediaUrl(r??"",o),"data:audio/"),[e.src,t,r]),s=e.title??"Canvas audio";return n.url===null?h.jsx("div",{className:"text-muted-foreground flex h-full items-center justify-center p-8 text-center",children:h.jsx("p",{children:"This audio can’t be played here."})}):h.jsx("div",{className:"bg-muted/40 flex h-full w-full items-center justify-center p-8",children:h.jsx("audio",{controls:!0,src:n.url,"aria-label":s,className:"w-full max-w-2xl",children:h.jsxs("p",{className:"text-muted-foreground text-sm",children:["Your browser can’t play this audio."," ",h.jsxs("a",{href:n.url,className:"text-foreground underline underline-offset-4",children:["Download ",s]}),"."]})})})}function bi({content:e}){const t=oe(),r=V(o=>o.selectedCwd),n=p.useMemo(()=>Mr(e.src,o=>t.mediaUrl(r??"",o),"data:video/"),[e.src,t,r]),s=e.title??"Canvas video";return n.url===null?h.jsx("div",{className:"text-muted-foreground flex h-full items-center justify-center p-8 text-center",children:h.jsx("p",{children:"This video can’t be played here."})}):h.jsx("div",{className:"bg-muted/40 flex h-full w-full items-center justify-center",children:h.jsx("video",{controls:!0,src:n.url,"aria-label":s,className:"max-h-full w-full max-w-full object-contain",children:h.jsxs("p",{className:"text-muted-foreground p-8 text-sm",children:["Your browser can’t play this video."," ",h.jsxs("a",{href:n.url,className:"text-foreground underline underline-offset-4",children:["Download ",s]}),"."]})})})}function Lr({content:e,documentId:t,channel:r}){const[n]=Mt(),s=Fn(e.definition),o=p.useMemo(()=>JSON.stringify(e.definition),[e.definition]);return h.jsx("div",{className:"p-4",children:s.ok?h.jsx(Mn,{channel:r,document:s.document,sessionId:n??void 0},r?t??r.documentId:o):h.jsx(Ln,{error:s.error,raw:s.raw})})}class wi{constructor(){re(this,"contiguous",0);re(this,"through",0);re(this,"pending",new Map)}get highest(){return this.contiguous}get catchUpThrough(){return this.through}get pendingCount(){return this.pending.size}reset(){this.contiguous=0,this.through=0,this.pending.clear()}resetHighest(){this.contiguous=0}advance(t){this.contiguous=Math.max(this.contiguous,t)}markThrough(t){this.through=Math.max(this.through,t)}recordGap(t){return this.markThrough(t.docSeq),this.pending.set(t.docSeq,t),this.pending.size<=200?!1:(this.pending.clear(),!0)}takeNextContiguous(){for(const n of this.pending.keys())n<=this.contiguous&&this.pending.delete(n);const t=this.contiguous+1,r=this.pending.get(t);return r&&this.pending.delete(t),r}clearReachedTarget(){return this.contiguous<this.through?!1:(this.through=0,!0)}}const _t=new WeakMap,Qe=new WeakMap,ye=new WeakMap,He=new WeakMap;function Re(e){Ne(e);const t=_t.get(e);if(!t)throw new Error("Replay owner lifetime is absent.");return t}function xi(e,t){const r=Qe.get(t);if(!r||r.owner!==e)throw new Error("Replay run is foreign.");return r}function qr(e){if(e&&typeof e=="object"&&!Object.isFrozen(e)){for(const t of Object.values(e))qr(t);Object.freeze(e)}return e}function yi(e){if(Ne(e),_t.has(e))throw new Error("Replay owner lifetime is already initialized.");_t.set(e,new wi)}function Pt(e){const t=Re(e);return Object.freeze({highest:t.highest,through:t.catchUpThrough,pending:t.pendingCount})}function mr(e){Re(e).reset()}function gr(e,t){const r=Qe.get(t);if(!(!r||r.owner!==e))return Object.freeze({subject:r.subject,epoch:r.epoch,revision:r.revision,observation:r.observation,ended:r.ended})}function ki(e,t,r){const n=ye.get(r),s=Qe.get(t);if(!(!s||s.owner!==e||!n||n.owner!==e||n.run!==t||n.phase!=="consuming"||n.admissionRead||!ne(e,t)))return n.admissionRead=!0,Object.freeze({response:n.response,since:n.since,revision:n.revision,observation:n.observation,targetBirth:s.targetBirth})}function ji(e,t,r){const n=xi(e,t),s=ye.get(r),o=$r(e,t,r);if(!o||!s||s.owner!==e||s.run!==t||s.phase!=="consuming"||!s.admissionRead||n.ended||n.epoch!==o.epoch||n.subject!==o.previous)throw new Error("Replay own issuance is foreign or stale.");n.subject=o.subject}function Pr(e,t,r,n){if(!ne(e,t))return;if(n){const o=He.get(r);return o&&o.owner===e&&o.run===t&&o.phase==="dispatching"&&!o.advanced?o.frame:void 0}const s=ye.get(r);return s&&s.owner===e&&s.run===t&&s.phase==="frames"&&s.dispatching!==void 0&&!s.advanced?s.frames[s.dispatching]:void 0}function Ci(e,t,r,n){const s=Yi(e,t,r,n);if(!s||!ne(e,t))throw new Error("Replay cursor advance has no genuine core witness.");const o=n?He.get(r):ye.get(r);if(!o||o.advanced)throw new Error("Replay frame advance was consumed.");o.advanced=!0,Re(e).advance(s.docSeq)}function Ri(e,t){const r=Qe.get(t),n=(r==null?void 0:r.lastPage)&&ye.get(r.lastPage);if(!r||r.owner!==e||!ne(e,t)||r.target===void 0||!n||n.phase!=="finished"||n.next!==n.frames.length||n.response.events.length>=200&&Re(e).highest<r.target)return;const s=Re(e);return Object.freeze({highest:s.highest,through:s.catchUpThrough,target:r.target})}function Oi(e,t){const r=Xe(e,t);if(!r)throw new Error("Replay notice is foreign or stale.");const n=Re(e),s=r.notification;if(r.mode==="quarantine")n.markThrough(s.type==="canvas_channel_snapshot"?s.snapshot.highWatermark:s.docSeq),s.type!=="canvas_channel_snapshot"&&n.recordGap(s);else{if(r.mode==="gap"&&s.type!=="canvas_channel_snapshot")return n.recordGap(s);r.mode==="event"&&lo(e,t)}return!1}function Ei(e,t){const r=Xe(e,t);if(!r||r.mode!=="event"||r.notification.type==="canvas_channel_snapshot")throw new Error("Notice cursor advance is foreign.");Re(e).advance(r.notification.docSeq)}function _i(e){const t=le(e),r=Re(e),n=Object.freeze({}),s={owner:e,subject:t.subject,epoch:t.epoch,revision:t.revision,observation:t.observation,ended:!1,starting:r.highest,succeeded:!1};Qe.set(n,s),to(e,n);const o=()=>ne(e,n),c=()=>le(e).live?o()?void 0:"restart":"stop";return Object.freeze({async readPage(){if(!o())return null;const a=le(e),i=r.highest,d=pt(e),u=d.getCanvasChannel;if(!o())return null;const f=await u.call(d,t.documentId,{since:i,limit:200});if(!o())return null;const l=qr(Dn.parse(f));if(!o())return null;const m=Object.freeze({});return ye.set(m,{owner:e,run:n,response:l,since:i,revision:a.revision,observation:a.observation,phase:"read",admissionRead:!1,frames:[],next:0,advanced:!1}),m},consumePage(a){const i=ye.get(a);return!o()||!i||i.owner!==e||i.run!==n||i.phase!=="read"?{kind:"done"}:(i.phase="consuming",ro(e,n,a)!=="accepted"||!o()?(i.phase="finished",{kind:"done"}):(s.target??(s.target=i.response.highWatermark),s.targetBirth=i.response.incarnation,i.frames=Object.freeze(i.response.events.filter(u=>u.docSeq<=s.target)),i.phase="frames",s.lastPage=a,i.response.resetRequired&&r.advance(i.response.retentionFloor-1),{kind:"frames",count:i.frames.length}))},advancePageFrame(a,i){const d=ye.get(a);if(!o()||!d||d.owner!==e||d.run!==n||d.phase!=="frames"||i!==d.next||!d.frames[i])return!1;d.next=i+1,d.dispatching=i,d.advanced=!1;try{return br(e,n,a,!1)&&o()}finally{d.dispatching=void 0}},finishPage(a){const i=ye.get(a);if(!o()||!i||i.owner!==e||i.run!==n||i.phase!=="frames"||i.next!==i.frames.length||s.target===void 0)return"done";if(i.phase="finished",i.response.events.length<200||r.highest>=s.target)return r.advance(s.target),!o()||(wr(e,n),!o())||(s.succeeded=!0),"done";if(r.highest<=i.since)throw new Error("Document replay made no progress.");return"again"},failed(){o()&&no(e,n)},beginFinalization(){return c()??(s.succeeded?"drain":"stop")},takePending(){if(!o())return null;const a=r.takeNextContiguous();if(!a||!o())return null;const i=Object.freeze({});return He.set(i,{owner:e,run:n,frame:a,phase:"taken",advanced:!1}),i},advancePending(a){const i=He.get(a);if(!o()||!i||i.owner!==e||i.run!==n||i.phase!=="taken")return!1;i.phase="dispatching";try{return br(e,n,a,!0)&&o()}finally{i.phase="finished",He.delete(a)}},finishFinalization(){const a=c();if(a)return a;if(r.clearReachedTarget()){const i=c();if(i)return i;wr(e,n);const d=c();if(d)return d}if(r.pendingCount||r.catchUpThrough>r.highest){const i=le(e);if(r.highest>s.starting||i.revision>s.revision||i.observation>s.observation)return"restart";so(e,n)}return c()??"stop"},current:o,end:()=>{s.ended=!0}})}var ge,Dt,Ue;class St{constructor(){Le(this,ge);re(this,"current",null);re(this,"token",0);re(this,"retiring",!1);re(this,"subscribers",new Set);re(this,"resources",new Map);re(this,"doc",null);re(this,"docClaims",new WeakMap);re(this,"retiringDoc",!1);re(this,"docResources",new Map);re(this,"bindings",new WeakSet)}getCurrent(){return this.current}observeHostContext(t){if(this.retiring)return null;if(!t.transportOwner||typeof t.transportOwner!="object"||!Number.isSafeInteger(t.publisherEpoch)||t.publisherEpoch<0)throw new Error("Explicit transport owner and epoch required.");const r=["frame","documentId","resolvedSource","logicalUrl","reloadKey","sessionId","eligibility","exactOrigin","transportOwner","publisherEpoch"];if(r.some(s=>!Object.hasOwn(t,s))||typeof t.documentId!="string"||!t.documentId||typeof t.logicalUrl!="string"||typeof t.reloadKey!="string")throw new Error("Complete host context required.");const n=this.current;return n&&r.every(s=>Object.is(n[s],t[s]))?n:(this.retire(),this.current=Object.freeze({...t,token:this.token,loaded:!1}),this.current)}observeLoaded(t){return this.retiring||this.current!==t||!t.frame?null:(this.retire(),this.current=Object.freeze({...t,token:this.token,loaded:!0}),this.current)}retire(){if(this.retiring)return;const t=this.current;this.current=null;const r=this.doc;this.doc=null,this.token++,this.retiring=!0;const n=[...t?this.resources.get(t)??[]:[],...r?this.docResources.get(r)??[]:[],...this.subscribers];r&&this.docResources.delete(r),t&&this.resources.delete(t);try{for(const s of n)try{const o=s();o&&typeof o.then=="function"&&Promise.resolve(o).catch(()=>{})}catch{}}finally{this.retiring=!1}}subscribe(t){return this.subscribers.add(t),()=>{this.subscribers.delete(t)}}own(t,r){if(this.retiring||this.current!==t)throw new Error("Frame observation retired.");const n=this.resources.get(t)??new Set;return n.add(r),this.resources.set(t,n),()=>{n.delete(r)}}bindDoc(t,r,n){return be(this,ge,Dt).call(this,t,r,n)}acquireDoc(t,r,n){const s=be(this,ge,Dt).call(this,t,r,n),o=Object.freeze({});this.docClaims.set(s,o);let c=!1;return Object.freeze({binding:s,release:()=>{c||(c=!0,this.docClaims.get(s)===o&&(this.docClaims.delete(s),this.doc===s&&this.bindings.has(s)&&be(this,ge,Ue).call(this)))}})}disableDoc(){be(this,ge,Ue).call(this)}retireDoc(t){this.doc===t&&this.bindings.has(t)&&be(this,ge,Ue).call(this)}ownDoc(t,r){if(!this.isCurrent(t))throw new Error("Doc binding retired.");const n=this.docResources.get(t)??new Set;return n.add(r),this.docResources.set(t,n),()=>{n.delete(r)}}isCurrent(t){return!this.retiring&&!this.retiringDoc&&this.doc===t&&this.bindings.has(t)&&this.current===t.observation}}ge=new WeakSet,Dt=function(t,r,n){const s=this.doc,o=this.token,c=Zs(yr,r);if(!c)throw this.disableDoc(),new Error("Established server Doc birth required.");const a=c,i=t.exactOrigin,d=t.eligibility==="served-document"?i==="null":t.eligibility==="preview-listener"&&i!==null&&new URL(i).origin===i;if(!t.loaded||!t.frame||typeof t.frame.postMessage!="function"||!t.resolvedSource||!d||t.documentId!==a.documentId||!n||n.length>200)throw new Error("Loaded eligible frame and established Doc birth required.");if(this.retiring||this.retiringDoc||this.current!==t||this.doc!==s||this.token!==o)throw new Error("Frame observation retired during Doc admission.");if(this.doc){if(this.doc.observation!==t)throw new Error("Doc binding belongs to another host load.");if(J(this.doc.incarnation,a)&&this.doc.scope===n)return this.doc;throw this.retire(),new Error("Doc birth changed; a fresh host load is required.")}const u=Object.freeze({observation:t,incarnation:Object.freeze(a),scope:n});try{return this.doc=u,this.bindings.add(u),u}catch(f){throw this.doc===u&&be(this,ge,Ue).call(this),f}},Ue=function(){if(this.retiringDoc)return;const t=this.doc;this.doc=null,this.retiringDoc=!0;const r=[...t?this.docResources.get(t)??[]:[]];t&&this.docResources.delete(t);try{for(const n of r)try{const s=n();s&&typeof s.then=="function"&&Promise.resolve(s).catch(()=>{})}catch{}}finally{this.retiringDoc=!1}};function Si(e,t,r){if(!r||typeof r.captureOriginal!="function"||typeof r.submit!="function"||typeof r.inspect!="function"||typeof r.isCurrentOwner!="function"||r.owner!==t.observation.transportOwner||r.publisherEpoch!==t.observation.publisherEpoch)throw new Error("Explicit current transport submit and inspect ports required.");const{owner:n,publisherEpoch:s,isCurrentOwner:o,submit:c,inspect:a,captureOriginal:i}=r,d=Object.freeze({expectedGeneration:t.incarnation.generation}),u=()=>{try{return e.isCurrent(t)?o(n,s)===!0&&e.isCurrent(t):!1}catch{return!1}};if(!u())throw new Error("Doc binding unavailable.");const f=()=>{if(!u())throw new Error("Doc binding retired.")};return Object.freeze({binding:t,current:u,captureOriginal:l=>{f();const m=l.id;f();const w=l.bytes;f();const g=Reflect.apply(i,r,[Object.freeze({id:m,bytes:w})]);if(f(),!g)return null;const v=g.id;f();const D=g.bytes;f();const N=g.submit;f();const C=g.inspect;return f(),v!==m||D!==w||typeof N!="function"||typeof C!="function"?null:Object.freeze({id:m,bytes:w,submit:async z=>{f(),z.throwIfAborted();const F=await Reflect.apply(N,g,[z]);return f(),z.throwIfAborted(),F},inspect:async z=>{f(),z.throwIfAborted();const F=await Reflect.apply(C,g,[z]);return f(),z.throwIfAborted(),F}})},retireObservation:()=>{u()&&e.retire()},onRetire:l=>e.ownDoc(t,l),submit:(l,m)=>(f(),m.throwIfAborted(),c(l,d,m)),inspect:(l,m)=>(f(),m.throwIfAborted(),a(l,d,m))})}class Di{constructor(){re(this,"revision",0);re(this,"draining",!1);re(this,"cleanup");re(this,"subscribers",new Set);re(this,"retirements",new WeakMap)}captureRetirement(){const t=Object.freeze({}),r=++this.revision,n=this.cleanup;return this.cleanup=void 0,this.retirements.set(t,{revision:r,cleanup:n,callbacks:this.draining?[]:[...this.subscribers]}),t}drainRetirement(t){const r=this.retirements.get(t);if(!r)throw new Error("Frame resource retirement is foreign or consumed.");this.retirements.delete(t);const n=this.draining;this.draining=!0;try{this.drain(r.cleanup);for(const s of r.callbacks)this.drain(s)}finally{this.draining=n}}begin(){const t=this.captureRetirement(),r=this.revision;return this.drainRetirement(t),r}once(t,r,n){let s=!1;return()=>{if(s||(s=!0,!this.current(t)||!r()||!this.current(t)))return null;const o=n();return!this.current(t)||!r()||!this.current(t)?null:o}}drain(t){try{Promise.resolve(t==null?void 0:t()).catch(()=>{})}catch{}}current(t){return this.revision===t}install(t,r){return this.current(t)?(this.cleanup=r,!0):!1}subscribe(t){return this.subscribers.add(t),()=>{this.subscribers.delete(t)}}}function Ii(e,t,r){const n=()=>e.current(t)&&r.current()===!0&&e.current(t),s=e.once(t,n,r.complete);return Object.freeze({completeLoad:()=>{const o=s();return!o||!n()||r.accept(o)!==!0||!n()?null:o}})}function Ni(e,t,r){const n=()=>e.current(t)&&r.current()===!0&&e.current(t);if(!n())return null;const s=r.acquire();if(!s)return null;let o=!1,c=null,a;try{const i=s.binding;if(n()&&r.bindingCurrent(i)===!0&&n()){const d=r.createPort(i);n()&&r.portCurrent(d)===!0&&n()&&e.install(t,s.release)&&(o=!0,c=d)}}catch(i){a={cause:i}}if(!o)try{s.release()}catch(i){a??(a={cause:i})}if(a)throw a.cause;return c}function Ti(e){const t=()=>Object.assign(new Error("Document actions are unavailable."),{status:409}),r=(s,o)=>{if(o.aborted||!e.current(s)||o.aborted)throw t()},n=(s,o)=>{const c=kr.parse(o);if(c.receipt.id!==s)throw new Error("Document receipt does not match this action.");return c};return Object.freeze({current:e.current,submit:async(s,o)=>{const c=ot.parse(JSON.parse(JSON.stringify(s))),a=c.id;r("submit",o);const i=await e.submit(c,o);r("read",o);const d=n(a,i);return r("read",o),d},inspect:async(s,o)=>{r("read",o);const c=await e.inspect(s,o);r("read",o);const a=n(s,c);return r("read",o),a},captureOriginal:s=>{const o=ot.parse(JSON.parse(JSON.stringify(s))),c=o.id,a=JSON.stringify(o);if(!e.current("submit"))return null;const i=e.capture(o,a);if(!i||!e.current("submit")||!i.current("submit"))return null;let d=!1;const u=f=>i.current(f)===!0;return Object.freeze({id:c,bytes:a,current:u,submit:async f=>{if(d||f.aborted||!u("submit"))throw t();d=!0;const l=await i.submit(JSON.parse(a),f);if(f.aborted||!u("read"))throw t();const m=n(c,l);if(f.aborted||!u("read"))throw t();return m},inspect:async f=>{if(f.aborted||!u("read"))throw t();const l=await i.inspect(c,f);if(f.aborted||!u("read"))throw t();const m=n(c,l);if(f.aborted||!u("read"))throw t();return m}})}})}function Ai(e){return Object.freeze({id:e.id,bytes:e.bytes,submit:async t=>{try{return{kind:"accepted",receipt:await e.submit(t)}}catch{return{kind:"uncertain"}}},inspect:async t=>{try{return{kind:"accepted",receipt:await e.inspect(t)}}catch{return{kind:"unknown"}}}})}function zi(e,t,r){const n=ot.parse(JSON.parse(e.bytes));if(n.id!==e.id||JSON.stringify(n)!==e.bytes||!r())return null;const s=t(n);return!r()||!s?null:Ai(s)}const Fi=St.prototype.acquireDoc,ut=new WeakMap,It=new WeakMap;function Mi(e,t){const r=pt(e),n=new WeakMap,s=(c,a)=>t.current(a)&&Ce(e,c,!0);return Object.freeze({prepareFrameLoad:(c,a)=>{var l;if(!(c instanceof St)||a.loaded)return null;const i=vr(e),d=i?(l=De(e,i))==null?void 0:l.httpBaseline:void 0,u=t.begin();if(!i||!d||!t.current(u)||!Ce(e,i,!0)||c.getCurrent()!==a||a.transportOwner!==r||!s(i,u))return null;let f=null;return Ii(t,u,{current:()=>{var m;return Ce(e,i,!0)&&((m=De(e,i))==null?void 0:m.httpBaseline)===d&&c.getCurrent()===(f??a)&&t.current(u)&&Ce(e,i,!0)},complete:()=>(f=c.observeLoaded(a),f),accept:m=>{var w,g;return!t.current(u)||!Ce(e,i,!0)||((w=De(e,i))==null?void 0:w.httpBaseline)!==d||c.getCurrent()!==m||!t.current(u)||!Ce(e,i,!0)||((g=De(e,i))==null?void 0:g.httpBaseline)!==d?!1:(n.set(m,{record:i,birth:d.birth}),!0)}})},subscribeInvalidation:c=>t.subscribe(c),attachFrame:(c,a)=>{if(!(c instanceof St))return null;const i=vr(e),d=t.begin();if(!i||!t.current(d)||!Ce(e,i,!0)||c.getCurrent()!==a||a.transportOwner!==r||!s(i,d))return null;const u=n.get(a);return!u||u.record!==i||!J(u.birth,De(e,i).birth)?null:Ni(t,d,{current:()=>s(i,d),acquire:()=>{const f=Fi.call(c,a,De(e,i).birth,De(e,i).birth.documentId);let l=!1,m=null,w;try{s(i,d)&&c.getCurrent()===a&&s(i,d)&&(m=Object.freeze({binding:f.binding,release:f.release}),l=!0)}catch(g){w={cause:g}}if(!l)try{f.release()}catch(g){w??(w={cause:g})}if(w)throw w.cause;return m},bindingCurrent:f=>c.isCurrent(f)&&s(i,d),createPort:f=>Si(c,f,{owner:r,publisherEpoch:a.publisherEpoch,isCurrentOwner:(l,m)=>l===r&&m===a.publisherEpoch&&t.current(d)&&Ce(e,i),captureOriginal:l=>zi(l,m=>{var w;return((w=eo(e,i))==null?void 0:w.captureOriginal(m))??null},()=>s(i,d)),submit:async()=>({kind:"terminal"}),inspect:async()=>({kind:"unknown"})}),portCurrent:f=>f.current()&&s(i,d)})}})}function Li(e){if(Ne(e),ut.has(e))throw new Error("Frame owner is already initialized.");const t=new Di,r=Mi(e,t);return ut.set(e,{frames:t,facade:r}),r}function qi(e){var t;return Ne(e),(t=ut.get(e))==null?void 0:t.facade}function We(e){Ne(e);const t=ut.get(e);if(!t)return;const r=Object.freeze({});return It.set(r,{owner:e,frames:t.frames,ticket:t.frames.captureRetirement()}),r}function $e(e,t){if(!t)return;const r=It.get(t);if(!r||r.owner!==e)throw new Error("Frame retirement is foreign or consumed.");It.delete(t),r.frames.drainRetirement(r.ticket)}function Br(e,t){const r=xe(e,t),n=Xi(e,t);if(!(!r||!n))return{owner:t,verified:r.verified,...Ti(n)}}function me(e,t){return{documentId:e,transport:t,events:[],available:!1}}function Pi(e,t,r,n,s,o){var i,d;const c=e.documentId===r&&e.transport===n?e:me(r,n);if(c.snapshot&&(t.highWatermark<c.snapshot.highWatermark||t.stateRev<c.snapshot.stateRev))return c;const a=new Map((((i=c.snapshot)==null?void 0:i.receipts)??[]).filter(u=>u.receipt.docSeq>=t.receiptRetentionFloor).map(u=>[u.receipt.id,u]));for(const u of t.receipts)a.set(u.receipt.id,u);return{...c,available:o,snapshot:{...t,...s?{}:{routing:(d=c.snapshot)==null?void 0:d.routing},receipts:[...a.values()].sort((u,f)=>f.receipt.docSeq-u.receipt.docSeq).slice(0,400)},events:t.resetRequired?c.events.filter(u=>u.docSeq>=t.retentionFloor):c.events}}function Bi(e){var r,n,s,o,c,a,i,d,u,f,l,m;const t=async()=>{throw Object.assign(new Error("Document actions are unavailable."),{status:409})};return{documentId:e.documentId,enabled:e.available&&((r=e.binding)==null?void 0:r.verified)===!0&&((s=(n=e.snapshot)==null?void 0:n.routing)==null?void 0:s.enabled)===!0,submissionOwner:(o=e.binding)==null?void 0:o.owner,current:((c=e.binding)==null?void 0:c.current)??(()=>!1),approvedEventTypes:e.available?((i=(a=e.snapshot)==null?void 0:a.routing)==null?void 0:i.approvedEventTypes)??[]:[],destinationLabel:e.available?((u=(d=e.snapshot)==null?void 0:d.routing)==null?void 0:u.destinationLabel)??"Actions unavailable":"Actions unavailable",...e.snapshot?{snapshot:e.snapshot}:{},submit:((f=e.binding)==null?void 0:f.submit)??t,inspect:((l=e.binding)==null?void 0:l.inspect)??t,captureOriginal:(m=e.binding)==null?void 0:m.captureOriginal}}function Ui(e,t,r){return!!(e&&t&&r.incarnation&&J(t,r.incarnation)&&(r.highWatermark<e.highWatermark||r.stateRev<e.stateRev))}function Ur(e,t,r,n){const s=e.documentId===r&&e.transport===n?e:me(r,n);return{...s,events:[...s.events,t].slice(-200)}}function Wi(e,t){if(e.incarnation&&(e.incarnation.documentId!==t||e.events.some(r=>r.documentId!==t||!r.incarnation||!J(e.incarnation,r.incarnation))))throw new Error("Document replay identity changed.")}const Nt=new WeakMap;function $i(e,t,r){const n=ki(e,t,r);if(n)return Nt.set(r,{owner:e,run:t,witness:n}),n}const Wr=new WeakMap,Ze=new WeakMap,Tt=new WeakMap,At=new WeakMap;function ke(e,t){Ne(e);const r=t??Ze.get(e),n=r&&Wr.get(r);return n&&n.owner===e&&Ze.get(e)===r&&n.active?n:void 0}function Z(e){return Ne(e),Ze.get(e)}function xe(e,t){const r=ke(e,t);return r?Object.freeze({birth:r.birth,httpBaseline:r.httpBaseline,snapshot:r.snapshot,verified:r.verified}):void 0}function Ve(e,t,r=!1){var o,c;const n=ke(e,t),s=le(e);return!!n&&s.live&&n.verified&&n.transport===pt(e)&&(!r||((c=(o=n.snapshot)==null?void 0:o.routing)==null?void 0:c.enabled)===!0)}function Gi(e){const t=ke(e);Ze.delete(e),t&&(t.active=!1,t.verified=!1)}function kt(e,t){const r=ke(e,t);r&&(r.verified=!1)}function Hi(e,t,r){const n=ke(e,r);return!n||!ne(e,t)?!1:(n.verified=!0,ne(e,t))}function Vi(e,t,r){const n=Nt.get(r);Nt.delete(r);const s=(n==null?void 0:n.owner)===e&&n.run===t?n.witness:void 0;if(!s||!ne(e,t))return!1;const o=s.response.incarnation;let c=ke(e);if(!c&&!o)return ne(e,t);if(!c&&o){const a=le(e),i=()=>{const w=le(e);return ne(e,t)&&w.epoch===a.epoch&&w.observation===a.observation&&Z(e)===a.subject},d=pt(e),u=d.ingestCanvasEvent;if(!i())return!1;const f=Function.prototype.bind.call(u,d),l=d.getCanvasEventReceipt;if(!i())return!1;const m=Function.prototype.bind.call(l,d);if(!i())return!1;c={owner:e,token:Object.freeze({}),birth:Object.freeze({...o}),active:!0,verified:!1,submit:f,inspect:m,transport:d},Wr.set(c.token,c),Ze.set(e,c.token),c.httpBaseline=Object.freeze({birth:c.birth,floor:s.response.receiptRetentionFloor}),Tt.set(r,Object.freeze({owner:e,run:t,epoch:a.epoch,previous:a.subject,subject:c.token}));try{ji(e,t,r)}catch(w){throw ke(e)===c&&ao(e,t,r),w}finally{Tt.delete(r)}if(!ne(e,t))return!1}else if(c){if(!o||!J(c.birth,o))return!1;c.httpBaseline=Object.freeze({birth:c.birth,floor:s.response.receiptRetentionFloor})}return ne(e,t)?(c&&(c.verified=co(e)||c.verified),!0):!1}function Bt(e,t,r){const n=Ut(e),s=n.subject,o=()=>Vr(e,n,r);if(!s||!Ve(e,s)){const i=We(e);$e(e,i)}if(!o())return;const c=s&&Br(e,s),a=qi(e);n.dispatch(i=>{var f;if(!o())return i;const d=((f=i.binding)==null?void 0:f.owner)===s?i:me(n.documentId,n.transport),u=typeof t=="function"?t(d):t;return o()?{...u,...u.snapshot?{snapshot:Object.freeze({...u.snapshot})}:{},binding:c,frameAdmission:a}:i})}function Ji(e,t,r,n,s){const o=Ut(e),c=ke(e);Vr(e,o,s)&&(c&&(c.snapshot=t),Bt(e,a=>Pi(a,t,o.documentId,o.transport,r,n),s))}function Zi(e,t,r,n){const s=Pr(e,t,r,n);if(!ne(e,t)||!s)return!1;if(s.docSeq<=Pt(e).highest)return ne(e,t);At.set(r,{owner:e,run:t,pending:n,frame:s});try{Ci(e,t,r,n)}finally{At.delete(r)}if(!ne(e,t))return!1;const o=Ut(e);return Bt(e,c=>Ur(c,s,o.documentId,o.transport),t),ne(e,t)}function Xi(e,t){const r=ke(e,t);if(!r)return;const n=le(e).documentId;return{current:s=>Ve(e,t,s==="submit"),submit:(s,o)=>r.submit(n,s,{expectedGeneration:r.birth.generation},o),inspect:(s,o)=>r.inspect(n,s,{expectedGeneration:r.birth.generation},o),capture:()=>{const s=r.httpBaseline;return!s||!Ve(e,t,!0)||!J(s.birth,r.birth)?null:Object.freeze({current:o=>Ve(e,t,o==="submit")&&(o==="read"||r.httpBaseline===s),submit:(o,c)=>r.submit(n,o,{expectedGeneration:s.birth.generation},c),inspect:(o,c)=>r.inspect(n,o,{expectedGeneration:s.birth.generation},c)})}}}function $r(e,t,r){const n=Tt.get(r),s=le(e);return n&&n.owner===e&&n.run===t&&s.epoch===n.epoch&&s.subject===n.subject&&s.live?n:void 0}function Yi(e,t,r,n){const s=At.get(r);return s&&s.owner===e&&s.run===t&&s.pending===n&&ne(e,t)?s.frame:void 0}const Gr=new WeakMap,lt=new WeakMap;function Qi(e){const t=lt.get(e);if(!t)throw new Error("Document construction ticket is foreign or consumed.");return lt.delete(e),t}function Ki(e,t,r){const n=Object.freeze({});lt.set(n,Object.freeze({documentId:e,transport:t,dispatch:r}));try{const s=uo(n);return Gr.set(n,s),n}finally{lt.delete(n)}}function ee(e){const t=Gr.get(e);if(!t)throw new Error("Document owner is foreign.");return t}function Ne(e){ee(e)}function le(e){return ee(e).facts()}function pt(e){return ee(e).transport()}function vr(e){return ee(e).subject()}function De(e,t){return ee(e).subjectFacts(t)}function Ce(e,t,r=!1){return ee(e).subjectCurrent(t,r)}function eo(e,t){return ee(e).binding(t)}function to(e,t){ee(e).reserve(t)}function ne(e,t){return ee(e).current(t)}function ro(e,t,r){return ee(e).admit(t,r)}function br(e,t,r,n){return ee(e).frame(t,r,n)}function wr(e,t){return ee(e).qualify(t)}function no(e,t){ee(e).failed(t)}function so(e,t){ee(e).unavailable(t)}function io(e,t){ee(e).start(t)}function oo(e){ee(e).dispose()}const Hr=new WeakMap;function Ut(e){const t=Object.freeze(ee(e).projection());return Hr.set(t,Object.freeze({custodyKey:e,capture:t})),t}function Vr(e,t,r){const n=Hr.get(t);return(n==null?void 0:n.custodyKey)===e&&n.capture===t&&ee(e).projectionCurrent(t.epoch,t.subject,r)}function ao(e,t,r){ee(e).abortAdmission(t,r)}function co(e){return ee(e).qualified()}const zt=new WeakMap;function uo(e){const{documentId:t,transport:r,dispatch:n}=Qi(e);let s,o=!1,c;const a={live:!0};let i=0,d,u,f=!1,l,m,w=0;const g=()=>a.live,v=()=>Gi(e);let D=0;const N=()=>Pt(e),C=j=>{const S=gr(e,j);return!!S&&!S.ended&&g()&&s===j&&S.epoch===i&&S.subject===Z(e)},z=(j=!1)=>{const S=We(e);v(),i++,s=void 0,j&&mr(e),$e(e,S)},F=(j,S)=>Bt(e,j,S),G=j=>{const S=Ri(e,j),x=Z(e),A=x&&xe(e,x);return!C(j)||!S||S.through>S.highest||!l||!A||!J(l,A.birth)||!Hi(e,j,x)?!1:(l=void 0,F(I=>({...I,available:!0}),j),C(j))},L=(j,S,x)=>{const A=Z(e),I=A&&xe(e,A),k=i,y=()=>g()&&k===i&&Z(e)===A&&(!x||C(x));if(!y()||Ui(I==null?void 0:I.snapshot,I==null?void 0:I.birth,j))return;const P=S?j.routing:u;j={...j,routing:P&&Object.freeze({enabled:P.enabled,destinationLabel:P.destinationLabel,approvedEventTypes:Object.freeze([...P.approvedEventTypes])})},S&&(u=j.routing),!A&&!j.incarnation&&(f=!0),y()&&Ji(e,j,S,l===void 0,x)},q=(j,S)=>{var ue;const x=$i(e,j,S);if(!C(j)||!x)return"discard";const A=x.response;Wi(A,t);const I=A.incarnation;if((Z(e)||l||m)&&!I)throw new Error("Document replay identity is unavailable.");if(m&&I&&!J(m,I))return z(!0),F(me(t,r)),"restart";const k=Z(e),y=(k&&((ue=xe(e,k))==null?void 0:ue.birth))??l;if(I&&(y&&!J(y,I)||!y&&f||x.targetBirth&&!J(x.targetBirth,I)))return l=I,f=!1,u=void 0,d=void 0,z(!0),F(me(t,r)),"restart";const{events:P,...W}=A,te=Z(e);return!te&&I&&(l=m??I),!Vi(e,j,S)||!C(j)?"discard":(!te&&I&&(m=void 0),L(W,x.revision===D,j),C(j)?"accepted":"discard")},U=(j,S,x)=>{var y;const A=Pr(e,j,S,x),I=Z(e),k=(I&&((y=xe(e,I))==null?void 0:y.birth))??l;return!C(j)||!A||A.documentId!==t||k&&(!A.incarnation||!J(k,A.incarnation))?!1:Zi(e,j,S,x)},Y=(j,S)=>{const x=Object.freeze({});zt.set(x,Object.freeze({owner:e,revision:D,observation:w,epoch:i,notification:j,mode:S}));try{return Oi(e,x)}finally{zt.delete(x)}},he=j=>{if(o||!g()||(o=!0,F(me(t,r)),!g()))return;const S=In(void 0,x=>{if(!g()||x.documentId!==t)return;const A=x.type==="canvas_channel_snapshot"?x.snapshot.incarnation:x.incarnation,I=Z(e);if(!I){if(l&&!m&&(!A||!J(l,A))||!A||A.documentId!==t)return;if(!m||!J(m,A)){const k=!!m||!!l;if(m=Object.freeze({...A}),w++,u=void 0,d=void 0,f=!1,k&&(z(!0),F(me(t,r))),!g()||!m||!J(m,A))return}Y(x,"quarantine"),g()&&j();return}if(l&&(!A||!J(l,A))){A&&j();return}if(A&&!J(xe(e,I).birth,A)){l=A,f=!1,u=void 0,d=void 0,z(!0),F(me(t,r)),g()&&j();return}if(A){if(d!==void 0&&d!==x.scope){const k=We(e);if(d=x.scope,kt(e,I),i++,s=void 0,D++,$e(e,k),Z(e)!==I||!g())return;F(y=>({...y,available:!1})),Z(e)===I&&g()&&j();return}d=x.scope,D++,x.type==="canvas_channel_snapshot"?L(x.snapshot,!0):x.docSeq>N().highest+1?(Y(x,"gap")&&g()&&F(y=>({...y,available:!1})),g()&&j()):Y(x,"event")}},r,()=>{if(!g())return;const x=We(e),A=Z(e);A&&kt(e,A),i++,s=void 0,D++,$e(e,x),F(I=>({...I,available:!1})),g()&&j()});g()?c=S:S(),g()&&j()};return Jr.set(e,j=>{const S=Xe(e,j);if(!S||S.notification.type==="canvas_channel_snapshot")return;const x=Z(e),A=i;!x||!S.notification.incarnation||!J(xe(e,x).birth,S.notification.incarnation)||(F(I=>Ur(I,S.notification,t,r)),!g()||A!==i||Z(e))}),{facts:()=>Object.freeze({documentId:t,live:g(),epoch:i,revision:D,observation:w,subject:Z(e)}),transport:()=>r,subject:()=>Z(e),subjectFacts:j=>xe(e,j),subjectCurrent:(j,S)=>Ve(e,j,S),binding:j=>Br(e,j),qualified:()=>l===void 0,projection:()=>({documentId:t,transport:r,dispatch:n,epoch:i,run:s,subject:Z(e)}),projectionCurrent:(j,S,x)=>g()&&j===i&&S===Z(e)&&(!x||s===x),abortAdmission:(j,S)=>{$r(e,j,S)&&z(!0)},reserve:j=>{const S=gr(e,j);if(!S||S.ended||!g()||S.epoch!==i||S.subject!==Z(e))throw new Error("Replay run is foreign or stale.");s=j},current:C,admit:q,frame:U,qualify:G,failed:j=>{if(!C(j))return;const S=Z(e);S&&kt(e,S),F(x=>({...x,available:!1}),j)},unavailable:j=>{C(j)&&F(S=>({...S,available:!1}),j)},start:he,dispose:()=>{if(!g())return;const j=We(e);a.live=!1,s=void 0;const S=c;c=void 0,v(),i++,mr(e);try{$e(e,j)}finally{S==null||S()}}}}function Xe(e,t){const r=zt.get(t),n=le(e);if(!(!r||r.owner!==e||!n.live||n.epoch!==r.epoch||n.revision!==r.revision||n.observation!==r.observation))return r}function lo(e,t){var a;const r=Xe(e,t);if(!r||r.notification.type==="canvas_channel_snapshot")return;const n=r.notification,o=le(e).subject,c=o&&xe(e,o);!c||!n.incarnation||!J(c.birth,n.incarnation)||n.docSeq<=Pt(e).highest||(Ei(e,t),!(!Xe(e,t)||le(e).subject!==o)&&((a=Jr.get(e))==null||a(t)))}const Jr=new WeakMap;function fo(e,t,r){const n=Ki(e,t,r);yi(n);const s=Li(n);return Object.freeze({beginRun:()=>_i(n),frameAdmission:s,start:o=>io(n,o),dispose:()=>oo(n)})}function ho(e,t){let r,n=0;const s=f=>{try{t==null||t(f)}catch{}},o=f=>{r===f&&(r=void 0)},c=(f,l)=>{f.settled||(f.settled=!0,r||s(!1),l?f.reject(l.cause):f.resolve())},a=()=>{u().catch(()=>{})},i=(f,l)=>{const m=()=>n===f.revision;if(!m())return;const w=l.beginFinalization();if(m()){if(w==="restart"){a();return}if(w==="drain")for(;m();){const g=l.drainOne();if(!m())return;if(g!=="again"){if(g==="restart")a();else if(g==="tail"){const v=l.finishFinalization();m()&&v==="restart"&&a()}return}}}},d=async f=>{let l,m;try{l=e();try{for(;await l.page()==="again";);}catch(w){l.failed(w)}}catch(w){m={cause:w}}finally{o(f);try{l&&i(f,l)}catch(w){m={cause:w}}finally{c(f,m)}}},u=()=>{if(r)return r.promise;let f,l;const m=new Promise((g,v)=>{f=g,l=v}),w={revision:++n,promise:m,resolve:f,reject:l,settled:!1};return r=w,s(!0),d(w),m};return Object.freeze({request:u})}function po(e,t,r,n){const s=fo(e,t,r);let o=!1;const c=ho(()=>{const a=s.beginRun();return{async page(){const i=await a.readPage();if(!i)return"done";const d=a.consumePage(i);if(d.kind!=="frames")return d.kind;for(let u=0;u<d.count;u++)if(!a.advancePageFrame(i,u))return"done";return a.finishPage(i)},failed:()=>a.failed(),beginFinalization:()=>{const i=a.beginFinalization();return i!=="drain"&&a.end(),i},drainOne(){if(!a.current())return a.end(),"stop";const i=a.takePending();return i?a.advancePending(i)?"again":(a.end(),"stop"):"tail"},finishFinalization:()=>{try{return a.finishFinalization()}finally{a.end()}}}},a=>{o||n==null||n(a)});return s.start(()=>{c.request().catch(()=>{})}),Object.freeze({dispose(){o=!0,s.dispose()}})}function mo(e){var d,u,f;const t=oe(),[r,n]=p.useState(()=>me(e,t)),[s,o]=p.useState({documentId:e,transport:t,pending:!0});p.useLayoutEffect(()=>{const l=po(e,t,n,m=>{o({documentId:e,transport:t,pending:m})});return()=>l.dispose()},[e,t]);const c=r.documentId===e&&r.transport===t?r:me(e,t),a=p.useMemo(()=>Bi(c),[c]),i=p.useMemo(()=>{var w;const l=(w=c.snapshot)==null?void 0:w.incarnation,m=c.binding;return l&&m?Object.freeze({incarnation:Object.freeze({...l}),current:()=>m.current("read")}):void 0},[(d=c.snapshot)==null?void 0:d.incarnation,c.binding]);return{channel:a,events:c.events,frameAdmission:c.frameAdmission,fileSaveBinding:i,fileSaveObservation:s.documentId!==e||s.transport!==t||s.pending?"pending":c.available&&((u=c.binding)!=null&&u.verified)&&((f=c.snapshot)!=null&&f.incarnation)?"ready":"unavailable"}}function go({content:e}){const[t]=Mt();return t?h.jsx("div",{className:"h-full w-full",children:h.jsx(qn,{sessionId:t,serverName:e.serverName,uri:e.uri,title:e.title})}):null}const vo=p.lazy(()=>Oe(()=>import("./CanvasFileContent-CVSfg4MO.js"),__vite__mapDeps([6,1,2,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22])).then(e=>({default:e.CanvasFileContent}))),bo=p.lazy(()=>Oe(()=>import("./CanvasModel3dContent-CNmJsBTS.js"),__vite__mapDeps([23,1,2,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22])).then(e=>({default:e.CanvasModel3dContent}))),wo=p.lazy(()=>Oe(()=>import("./CanvasCsvContent-B2S75f6B.js"),__vite__mapDeps([24,1,2,25,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22])).then(e=>({default:e.CanvasCsvContent}))),xo=p.lazy(()=>Oe(()=>import("./index-p3WivF1M.js").then(e=>e.vo),__vite__mapDeps([1,2])).then(e=>({default:e.CanvasDiffContent})));function Lo({documentId:e,widgetChannel:t,content:r,onContentChange:n}){switch(r.type){case"url":case"browser":return h.jsx(_s,{documentId:e,content:r},`${e}:${r.url}`);case"markdown":return h.jsx(ii,{documentId:e,content:r,onContentChange:n},r.sourcePath??"generated");case"json":return h.jsx(oi,{content:r});case"image":return h.jsx(fi,{content:r});case"pdf":return h.jsx(pi,{content:r});case"audio":return h.jsx(vi,{content:r});case"video":return h.jsx(bi,{content:r});case"widget":return t?h.jsx(Lr,{content:r,documentId:e,channel:t}):h.jsx(yo,{documentId:e,content:r});case"mcp_app":return h.jsx(go,{content:r});case"file":return h.jsx(p.Suspense,{fallback:h.jsx(tt,{}),children:h.jsx(vo,{documentId:e,content:r})});case"model3d":return h.jsx(p.Suspense,{fallback:h.jsx(tt,{}),children:h.jsx(bo,{content:r})});case"csv":return h.jsx(p.Suspense,{fallback:h.jsx(tt,{}),children:h.jsx(wo,{content:r})});case"diff":return h.jsx(p.Suspense,{fallback:h.jsx(tt,{}),children:h.jsx(xo,{documentId:e,content:r},r.sourcePath)})}}function tt(){return h.jsx("div",{className:"text-muted-foreground p-4 text-sm",children:"Loading…"})}function yo({documentId:e,content:t}){const{channel:r}=mo(e);return h.jsx(Lr,{documentId:e,content:t,channel:r})}const ko=p.lazy(()=>Oe(()=>import("./BlintzCanvas-Dd3bC9vw.js").then(e=>e.B),__vite__mapDeps([0,1,2,3,4,5])).then(e=>({default:e.BlintzCanvas})));function qo({roomId:e,document:t,content:r,onSave:n}){const[s,o]=p.useState(null),[c,a]=p.useState(!1),[i,d]=p.useState(null),u=s!==null,f=r.sourcePath===void 0;ls(e,u?t.id:null);const l=async()=>{if(s===null)return;if(s===r.content){o(null),d(null);return}a(!0),d(null);const m=await n(t.id,{...r,content:s});a(!1),m?o(null):d("Couldn’t save. Your words are still here. Try again.")};return h.jsxs("div",{className:"flex h-full flex-col",children:[f&&h.jsxs("div",{className:"flex items-center justify-end gap-2 border-b px-2 py-1",children:[u&&h.jsx("span",{className:"text-muted-foreground text-xs",children:c?"Saving…":"Everyone sees your save."}),h.jsx(rt,{type:"button",size:"xs",variant:"ghost",disabled:c,"aria-label":u?"Save for the room":"Edit this document",onClick:()=>u?void l():o(r.content),children:u?h.jsx(jr,{className:"size-3.5"}):h.jsx(Cr,{className:"size-3.5"})})]}),i!==null&&h.jsx("p",{role:"status",className:"text-destructive border-b px-2 py-1 text-xs",children:i}),h.jsx("div",{className:"flex-1 px-2 pb-6",children:h.jsx(p.Suspense,{fallback:h.jsx("div",{className:"text-muted-foreground p-4 text-sm",children:"Loading…"}),children:h.jsx(ko,{value:s??r.content,editable:u,onChange:o},u?"editing":`rev-${t.rev}`)})})]})}const Ft="dorkos-canvas-sessions",jo=1440*60*60*1e3;function Zr(){try{const e=localStorage.getItem(Ft);if(!e)return null;const t=JSON.parse(e);return t===null||typeof t!="object"?null:t}catch{return null}}function Xr(e){try{Object.keys(e).length===0?localStorage.removeItem(Ft):localStorage.setItem(Ft,JSON.stringify(e))}catch{}}function Co(e){return Array.isArray(e.documents)?[...e.documents].sort((t,r)=>(t.openedAt??0)-(r.openedAt??0)).map(t=>t.content).filter(t=>!!t):e.content?[e.content]:[]}function dt(e){return e===null||typeof e!="object"?JSON.stringify(e)??"null":Array.isArray(e)?`[${e.map(dt).join(",")}]`:`{${Object.entries(e).filter(([,r])=>r!==void 0).sort(([r],[n])=>r<n?-1:r>n?1:0).map(([r,n])=>`${JSON.stringify(r)}:${dt(n)}`).join(",")}}`}function Ro(e,t){const r=new Set,n=new Map;for(const o of e){const c=er(o.content);if(c!==null){r.add(c);continue}const a=dt(o.content);n.set(a,(n.get(a)??0)+1)}const s=[];for(const o of t){const c=er(o);if(c!==null){r.has(c)||s.push(o);continue}const a=dt(o),i=n.get(a)??0;i>0?n.set(a,i-1):s.push(o)}return s}const st=new Set;function Po(){st.clear()}function Bo(e,t={}){const r=oe(),n=t.canonical??!0;p.useEffect(()=>{e&&V.getState().loadCanvasForSession(e)},[e]),p.useEffect(()=>{if(!e||!n||st.has(e))return;const s=Zr();if(!s)return;const o=s[e];if(!o){Oo(s);return}st.add(e),(async()=>{try{const c=Co(o),a=Ro(await r.listSessionCanvas(e),c);if(a.length===0){xr(e);return}for(const i of a)await r.openSessionCanvasDocument(e,i);xr(e),V.getState().hydrateCanvasFromSnapshot(e,await r.listSessionCanvas(e))}catch{st.delete(e)}})()},[e,n,r])}function xr(e){const t=Zr();if(!t)return;const{[e]:r,...n}=t;Xr(n)}function Oo(e){const t=Date.now()-jo,r=Object.entries(e).filter(([,n])=>n.accessedAt===void 0||n.accessedAt>=t);r.length!==Object.keys(e).length&&Xr(Object.fromEntries(r))}export{Lo as C,Fo as F,qo as R,Js as a,mo as b,us as c,cs as d,Mo as e,Lr as f,Po as g,ss as h,Ar as i,Bo as j,Mr as r,ti as u};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{O as re,aN as De,a1 as os,a3 as Me,a4 as ls,aH as cs,aI as O,r as h,m0 as us,j as s,G as N,by as ae,ar as oe,em as ds,m1 as ee,m2 as ms,cP as ps,m3 as hs,jx as Oe,m4 as fs,m5 as xs,bX as le,gO as gs,y as Pe,aY as js,it as Le,cV as U,gW as Ns,m6 as bs,m7 as ys,gU as vs,m8 as $,dl as _,dm as R,dn as D,bz as ce,bA as ue,bB as de,bD as me,gY as ks,aQ as Ue,gV as Ts,m9 as he,ma as Ss,mb as Cs,ga as ze,gb as ws,gc as $e,ea as Be,mc as Es,md as se,me as Is,ba as As,B as P,mf as _s,mg as Rs,a9 as Ds,mh as Fe,eQ as Ms,ed as Os,mi as fe,mj as Ps,k6 as Ls,k7 as Us,k8 as zs,k9 as $s,mk as Bs,ml as Fs,ka as xe,mm as Gs,f as Ws,ef as Y,jW as Hs,hh as Ge,mn as Vs,mo as Qs,mp as We,mq as He,mr as Xs,bJ as qs,bK as Ks,bL as Ys,bM as Js,_ as V,bN as Zs,bO as et,bP as st,bR as tt,e as G,eS as Ve,ll as ge,dV as nt,I as it,lm as rt,jV as at,ec as ot,aV as Qe,aS as pe,cx as lt,ms as ct,e9 as Q,mt as ut,cz as J,mu as te,mv as Xe,mw as qe,cA as Ke,mx as dt,my as mt,mz as pt,mA as ht,cB as ft,lY as xt,bE as W,cD as Ye,mB as gt,kg as jt,aq as Nt,g0 as bt,mC as yt,gZ as vt,mD as kt,mE as Tt,ip as St,jr as Ct,J as wt,X as Et,ad as It,h8 as At,g3 as _t,ib as Rt,ez as Dt,hU as Mt,k3 as Ot,$ as Pt,hl as Lt}from"./index-
|
|
1
|
+
import{O as re,aN as De,a1 as os,a3 as Me,a4 as ls,aH as cs,aI as O,r as h,m0 as us,j as s,G as N,by as ae,ar as oe,em as ds,m1 as ee,m2 as ms,cP as ps,m3 as hs,jx as Oe,m4 as fs,m5 as xs,bX as le,gO as gs,y as Pe,aY as js,it as Le,cV as U,gW as Ns,m6 as bs,m7 as ys,gU as vs,m8 as $,dl as _,dm as R,dn as D,bz as ce,bA as ue,bB as de,bD as me,gY as ks,aQ as Ue,gV as Ts,m9 as he,ma as Ss,mb as Cs,ga as ze,gb as ws,gc as $e,ea as Be,mc as Es,md as se,me as Is,ba as As,B as P,mf as _s,mg as Rs,a9 as Ds,mh as Fe,eQ as Ms,ed as Os,mi as fe,mj as Ps,k6 as Ls,k7 as Us,k8 as zs,k9 as $s,mk as Bs,ml as Fs,ka as xe,mm as Gs,f as Ws,ef as Y,jW as Hs,hh as Ge,mn as Vs,mo as Qs,mp as We,mq as He,mr as Xs,bJ as qs,bK as Ks,bL as Ys,bM as Js,_ as V,bN as Zs,bO as et,bP as st,bR as tt,e as G,eS as Ve,ll as ge,dV as nt,I as it,lm as rt,jV as at,ec as ot,aV as Qe,aS as pe,cx as lt,ms as ct,e9 as Q,mt as ut,cz as J,mu as te,mv as Xe,mw as qe,cA as Ke,mx as dt,my as mt,mz as pt,mA as ht,cB as ft,lY as xt,bE as W,cD as Ye,mB as gt,kg as jt,aq as Nt,g0 as bt,mC as yt,gZ as vt,mD as kt,mE as Tt,ip as St,jr as Ct,J as wt,X as Et,ad as It,h8 as At,g3 as _t,ib as Rt,ez as Dt,hU as Mt,k3 as Ot,$ as Pt,hl as Lt}from"./index-p3WivF1M.js";import{G as H}from"./git-branch-BLIYLcM4.js";import{u as Ut}from"./use-update-config-T78vOnRy.js";import{s as zt}from"./settings-for-runtime-BoOa-ZFG.js";import{C as $t}from"./card-TbpEl6EH.js";import{R as Bt,H as Ft,a as Gt,b as Wt}from"./RuntimeSetupDialog-E6f7Rd2W.js";import{r as Ht}from"./RuntimeConnectFlow-BAqkzthF.js";import{U as je}from"./unverified-catalog-notice-9mykZSlO.js";import{L as Vt}from"./layers-D_NEJsnH.js";import{C as Qt,a as Xt}from"./cpu-CdCfSlSR.js";/**
|
|
2
2
|
* @license lucide-react v1.48.0 - ISC
|
|
3
3
|
*
|
|
4
4
|
* This source code is licensed under the ISC license.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f7 as A,f8 as u,f9 as h,r as i,fa as C,fb as V,fc as k,fd as x,fe as l}from"./index-
|
|
1
|
+
import{f7 as A,f8 as u,f9 as h,r as i,fa as C,fb as V,fc as k,fd as x,fe as l}from"./index-p3WivF1M.js";function E(...t){const s=!Array.isArray(t[0]),e=s?0:-1,n=t[0+e],o=t[1+e],r=t[2+e],c=t[3+e],f=A(o,r,c);return s?f(n):f}function b(t){const s=u(()=>h(t)),{isStatic:e}=i.useContext(C);if(e){const[,n]=i.useState(t);i.useEffect(()=>s.on("change",n),[])}return s}function d(t,s){const e=b(s()),n=()=>e.set(s());return n(),V(()=>{const o=()=>x.preRender(n,!1,!0),r=t.map(c=>c.on("change",o));return()=>{r.forEach(c=>c()),k(n)}}),e}function L(t){l.current=[],t();const s=d(l.current,t);return l.current=void 0,s}function I(t,s,e,n){if(typeof t=="function")return L(t);if(e!==void 0&&!Array.isArray(e)&&typeof s!="function")return S(t,s,e,n);const c=typeof s=="function"?s:E(s,e,n),f=Array.isArray(t)?y(t,c):y([t],([m])=>c(m)),a=Array.isArray(t)?void 0:t.accelerate;return a&&!a.isTransformed&&typeof s!="function"&&Array.isArray(e)&&(n==null?void 0:n.clamp)!==!1&&(f.accelerate={...a,times:s,keyframes:e,isTransformed:!0}),f}function y(t,s){const e=u(()=>[]);return d(t,()=>{e.length=0;const n=t.length;for(let o=0;o<n;o++)e[o]=t[o].get();return s(e)})}function S(t,s,e,n){const o=u(()=>Object.keys(e)),r=u(()=>({}));for(const c of o)r[c]=I(t,s,e[c],n);return r}export{I as a,b as u};
|
package/dist/client/assets/{use-unclaimed-chats-Blkq6U4D.js → use-unclaimed-chats-9Clj_rwl.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a1 as a,a2 as l,a3 as r,ap as o,a4 as s}from"./index-
|
|
1
|
+
import{a1 as a,a2 as l,a3 as r,ap as o,a4 as s}from"./index-p3WivF1M.js";import{B as d}from"./use-bindings-CPbqKyo6.js";const u=["relay","unclaimed-chats"];function m(e){return[...u,e]}function y(e="pending",t=!0){const n=a();return l({queryKey:m(e),queryFn:()=>n.listUnclaimedChats(e),enabled:t})}function U(){const e=r(),t=()=>{e.invalidateQueries({queryKey:[...u]})};o("relay_chat_unclaimed",t),o("relay_chat_unclaimed_burst",t)}function i(e){e.invalidateQueries({queryKey:[...u]})}function p(){const e=a(),t=r();return s({mutationFn:({id:n,input:c})=>e.claimUnclaimedChat(n,c),meta:{suppressErrorToast:!0},onSuccess:()=>{i(t),t.invalidateQueries({queryKey:[...d]})}})}function v(){const e=a(),t=r();return s({mutationFn:n=>e.ignoreUnclaimedChat(n),meta:{errorLabel:"Couldn’t ignore this chat"},onSuccess:()=>i(t)})}function f(){const e=a(),t=r();return s({mutationFn:n=>e.blockUnclaimedChat(n),meta:{errorLabel:"Couldn’t block this chat"},onSuccess:()=>i(t)})}function q(){const e=a(),t=r();return s({mutationFn:n=>e.leaveUnclaimedChat(n),meta:{errorLabel:"Couldn’t leave this chat"},onSuccess:()=>i(t)})}export{u as U,U as a,p as b,v as c,f as d,q as e,y as u};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a1 as n,a3 as s,a4 as u,aH as o,aI as r}from"./index-p3WivF1M.js";function c(){const e=n(),t=s();return u({mutationKey:o,mutationFn:a=>e.updateConfig(a),onSuccess:()=>{t.invalidateQueries({queryKey:r.current()})}})}export{c as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a3 as f,r as n,an as i,ao as o}from"./index-
|
|
1
|
+
import{a3 as f,r as n,an as i,ao as o}from"./index-p3WivF1M.js";function a(r,u){return r.findAll(u.filters).map(e=>u.select?u.select(e):e.state)}function x(r={},u){const e=f(u).getMutationCache(),c=n.useRef(r),t=n.useRef(null);return t.current===null&&(t.current=a(e,r)),n.useEffect(()=>{c.current=r}),n.useSyncExternalStore(n.useCallback(l=>e.subscribe(()=>{const s=i(t.current,a(e,c.current));t.current!==s&&(t.current=s,o.schedule(l))}),[e]),()=>t.current,()=>t.current)}export{x as u};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{g as Ni}from"./chunk-XXDRQBXY-
|
|
1
|
+
import{g as Ni}from"./chunk-XXDRQBXY-Cn3e0QEQ.js";import{s as Ci}from"./chunk-VQ5W62QI-cfwin8SC.js";import{g as Zs,s as jt,a as Qs,b as Gt,v as bi,t as vi,_ as u,E as je,l as _i,c as en,q as Mi,r as xi,u as wi,j as Ui,A as Pi,P as Di,D as Fi,M as Bi,F as $i,K as ji,bj as Gi}from"./mermaid.core-C6ckWvkG.js";import{s as Wi}from"./transform-BqqRT-Iy.js";import"./index-p3WivF1M.js";import"./BlintzCanvas-Dd3bC9vw.js";import"./index-DSIdPh8G.js";import"./index-JoxvTUfo.js";function Wt(s){console&&console.error&&console.error(`Error: ${s}`)}function tn(s){console&&console.warn&&console.warn(`Warning: ${s}`)}function sn(s){const e=new Date().getTime(),t=s();return{time:new Date().getTime()-e,value:t}}function nn(s){function e(){}e.prototype=s;const t=new e;function n(){return typeof t.bar}return n(),n(),s}function Ki(s){return Vi(s)?s.LABEL:s.name}function Vi(s){return typeof s.LABEL=="string"&&s.LABEL!==""}class te{get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){this._definition=e}accept(e){e.visit(this),this.definition.forEach(t=>{t.accept(e)})}}class K extends te{constructor(e){super([]),this.idx=1,Object.assign(this,ie(e))}set definition(e){}get definition(){return this.referencedRule!==void 0?this.referencedRule.definition:[]}accept(e){e.visit(this)}}class _e extends te{constructor(e){super(e.definition),this.orgText="",Object.assign(this,ie(e))}}class W extends te{constructor(e){super(e.definition),this.ignoreAmbiguities=!1,Object.assign(this,ie(e))}}class G extends te{constructor(e){super(e.definition),this.idx=1,Object.assign(this,ie(e))}}class se extends te{constructor(e){super(e.definition),this.idx=1,Object.assign(this,ie(e))}}class ne extends te{constructor(e){super(e.definition),this.idx=1,Object.assign(this,ie(e))}}class x extends te{constructor(e){super(e.definition),this.idx=1,Object.assign(this,ie(e))}}class J extends te{constructor(e){super(e.definition),this.idx=1,Object.assign(this,ie(e))}}class Z extends te{get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){super(e.definition),this.idx=1,this.ignoreAmbiguities=!1,this.hasPredicates=!1,Object.assign(this,ie(e))}}class k{constructor(e){this.idx=1,Object.assign(this,ie(e))}accept(e){e.visit(this)}}function zi(s){return s.map(at)}function at(s){function e(t){return t.map(at)}if(s instanceof K){const t={type:"NonTerminal",name:s.nonTerminalName,idx:s.idx};return typeof s.label=="string"&&(t.label=s.label),t}else{if(s instanceof W)return{type:"Alternative",definition:e(s.definition)};if(s instanceof G)return{type:"Option",idx:s.idx,definition:e(s.definition)};if(s instanceof se)return{type:"RepetitionMandatory",idx:s.idx,definition:e(s.definition)};if(s instanceof ne)return{type:"RepetitionMandatoryWithSeparator",idx:s.idx,separator:at(new k({terminalType:s.separator})),definition:e(s.definition)};if(s instanceof J)return{type:"RepetitionWithSeparator",idx:s.idx,separator:at(new k({terminalType:s.separator})),definition:e(s.definition)};if(s instanceof x)return{type:"Repetition",idx:s.idx,definition:e(s.definition)};if(s instanceof Z)return{type:"Alternation",idx:s.idx,definition:e(s.definition)};if(s instanceof k){const t={type:"Terminal",name:s.terminalType.name,label:Ki(s.terminalType),idx:s.idx};typeof s.label=="string"&&(t.terminalLabel=s.label);const n=s.terminalType.PATTERN;return s.terminalType.PATTERN&&(t.pattern=n instanceof RegExp?n.source:n),t}else{if(s instanceof _e)return{type:"Rule",name:s.name,orgText:s.orgText,definition:e(s.definition)};throw Error("non exhaustive match")}}}function ie(s){return Object.fromEntries(Object.entries(s).filter(([,e])=>e!==void 0))}class Me{visit(e){const t=e;switch(t.constructor){case K:return this.visitNonTerminal(t);case W:return this.visitAlternative(t);case G:return this.visitOption(t);case se:return this.visitRepetitionMandatory(t);case ne:return this.visitRepetitionMandatoryWithSeparator(t);case J:return this.visitRepetitionWithSeparator(t);case x:return this.visitRepetition(t);case Z:return this.visitAlternation(t);case k:return this.visitTerminal(t);case _e:return this.visitRule(t);default:throw Error("non exhaustive match")}}visitNonTerminal(e){}visitAlternative(e){}visitOption(e){}visitRepetition(e){}visitRepetitionMandatory(e){}visitRepetitionMandatoryWithSeparator(e){}visitRepetitionWithSeparator(e){}visitAlternation(e){}visitTerminal(e){}visitRule(e){}}function Hi(s){return s instanceof W||s instanceof G||s instanceof x||s instanceof se||s instanceof ne||s instanceof J||s instanceof k||s instanceof _e}function Tt(s,e=[]){return s instanceof G||s instanceof x||s instanceof J?!0:s instanceof Z?s.definition.some(n=>Tt(n,e)):s instanceof K&&e.includes(s)?!1:s instanceof te?(s instanceof K&&e.push(s),s.definition.every(n=>Tt(n,e))):!1}function Xi(s){return s instanceof Z}function ee(s){if(s instanceof K)return"SUBRULE";if(s instanceof G)return"OPTION";if(s instanceof Z)return"OR";if(s instanceof se)return"AT_LEAST_ONE";if(s instanceof ne)return"AT_LEAST_ONE_SEP";if(s instanceof J)return"MANY_SEP";if(s instanceof x)return"MANY";if(s instanceof k)return"CONSUME";throw Error("non exhaustive match")}class kt{walk(e,t=[]){e.definition.forEach((n,i)=>{const a=e.definition.slice(i+1);if(n instanceof K)this.walkProdRef(n,a,t);else if(n instanceof k)this.walkTerminal(n,a,t);else if(n instanceof W)this.walkFlat(n,a,t);else if(n instanceof G)this.walkOption(n,a,t);else if(n instanceof se)this.walkAtLeastOne(n,a,t);else if(n instanceof ne)this.walkAtLeastOneSep(n,a,t);else if(n instanceof J)this.walkManySep(n,a,t);else if(n instanceof x)this.walkMany(n,a,t);else if(n instanceof Z)this.walkOr(n,a,t);else throw Error("non exhaustive match")})}walkTerminal(e,t,n){}walkProdRef(e,t,n){}walkFlat(e,t,n){const i=t.concat(n);this.walk(e,i)}walkOption(e,t,n){const i=t.concat(n);this.walk(e,i)}walkAtLeastOne(e,t,n){const i=[new G({definition:e.definition})].concat(t,n);this.walk(e,i)}walkAtLeastOneSep(e,t,n){const i=ys(e,t,n);this.walk(e,i)}walkMany(e,t,n){const i=[new G({definition:e.definition})].concat(t,n);this.walk(e,i)}walkManySep(e,t,n){const i=ys(e,t,n);this.walk(e,i)}walkOr(e,t,n){const i=t.concat(n);e.definition.forEach(a=>{const r=new W({definition:[a]});this.walk(r,i)})}}function ys(s,e,t){return[new G({definition:[new k({terminalType:s.separator})].concat(s.definition)})].concat(e,t)}function qe(s){if(s instanceof K)return qe(s.referencedRule);if(s instanceof k)return Ji(s);if(Hi(s))return Yi(s);if(Xi(s))return qi(s);throw Error("non exhaustive match")}function Yi(s){let e=[];const t=s.definition;let n=0,i=t.length>n,a,r=!0;for(;i&&r;)a=t[n],r=Tt(a),e=e.concat(qe(a)),n=n+1,i=t.length>n;return[...new Set(e)]}function qi(s){const e=s.definition.map(t=>qe(t));return[...new Set(e.flat())]}function Ji(s){return[s.terminalType]}const an="_~IN~_";class Zi extends kt{constructor(e){super(),this.topProd=e,this.follows={}}startWalking(){return this.walk(this.topProd),this.follows}walkTerminal(e,t,n){}walkProdRef(e,t,n){const i=ea(e.referencedRule,e.idx)+this.topProd.name,a=t.concat(n),r=new W({definition:a}),o=qe(r);this.follows[i]=o}}function Qi(s){const e={};return s.forEach(t=>{const n=new Zi(t).startWalking();Object.assign(e,n)}),e}function ea(s,e){return s.name+e+an}function y(s){return s.charCodeAt(0)}function Pt(s,e){Array.isArray(s)?s.forEach(function(t){e.push(t)}):e.push(s)}function Fe(s,e){if(s[e]===!0)throw"duplicate flag "+e;s[e],s[e]=!0}function Se(s){if(s===void 0)throw Error("Internal Error - Should never get here!");return!0}function ta(){throw Error("Internal Error - Should never get here!")}function Rs(s){return s.type==="Character"}const gt=[];for(let s=y("0");s<=y("9");s++)gt.push(s);const At=[y("_")].concat(gt);for(let s=y("a");s<=y("z");s++)At.push(s);for(let s=y("A");s<=y("Z");s++)At.push(s);const Os=[y(" "),y("\f"),y(`
|
|
2
2
|
`),y("\r"),y(" "),y("\v"),y(" "),y(" "),y(" "),y(" "),y(" "),y(" "),y(" "),y(" "),y(" "),y(" "),y(" "),y(" "),y(" "),y(" "),y("\u2028"),y("\u2029"),y(" "),y(" "),y(" "),y("\uFEFF")],sa=/[0-9a-fA-F]/,tt=/[0-9]/,na=/[1-9]/;class ia{constructor(){this.idx=0,this.input="",this.groupIdx=0}saveState(){return{idx:this.idx,input:this.input,groupIdx:this.groupIdx}}restoreState(e){this.idx=e.idx,this.input=e.input,this.groupIdx=e.groupIdx}pattern(e){this.idx=0,this.input=e,this.groupIdx=0,this.consumeChar("/");const t=this.disjunction();this.consumeChar("/");const n={type:"Flags",loc:{begin:this.idx,end:e.length},global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};for(;this.isRegExpFlag();)switch(this.popChar()){case"g":Fe(n,"global");break;case"i":Fe(n,"ignoreCase");break;case"m":Fe(n,"multiLine");break;case"u":Fe(n,"unicode");break;case"y":Fe(n,"sticky");break}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:n,value:t,loc:this.loc(0)}}disjunction(){const e=[],t=this.idx;for(e.push(this.alternative());this.peekChar()==="|";)this.consumeChar("|"),e.push(this.alternative());return{type:"Disjunction",value:e,loc:this.loc(t)}}alternative(){const e=[],t=this.idx;for(;this.isTerm();)e.push(this.term());return{type:"Alternative",value:e,loc:this.loc(t)}}term(){return this.isAssertion()?this.assertion():this.atom()}assertion(){const e=this.idx;switch(this.popChar()){case"^":return{type:"StartAnchor",loc:this.loc(e)};case"$":return{type:"EndAnchor",loc:this.loc(e)};case"\\":switch(this.popChar()){case"b":return{type:"WordBoundary",loc:this.loc(e)};case"B":return{type:"NonWordBoundary",loc:this.loc(e)}}throw Error("Invalid Assertion Escape");case"(":this.consumeChar("?");let t;switch(this.popChar()){case"=":t="Lookahead";break;case"!":t="NegativeLookahead";break;case"<":{switch(this.popChar()){case"=":t="Lookbehind";break;case"!":t="NegativeLookbehind"}break}}Se(t);const n=this.disjunction();return this.consumeChar(")"),{type:t,value:n,loc:this.loc(e)}}return ta()}quantifier(e=!1){let t;const n=this.idx;switch(this.popChar()){case"*":t={atLeast:0,atMost:1/0};break;case"+":t={atLeast:1,atMost:1/0};break;case"?":t={atLeast:0,atMost:1};break;case"{":const i=this.integerIncludingZero();switch(this.popChar()){case"}":t={atLeast:i,atMost:i};break;case",":let a;this.isDigit()?(a=this.integerIncludingZero(),t={atLeast:i,atMost:a}):t={atLeast:i,atMost:1/0},this.consumeChar("}");break}if(e===!0&&t===void 0)return;Se(t);break}if(!(e===!0&&t===void 0)&&Se(t))return this.peekChar(0)==="?"?(this.consumeChar("?"),t.greedy=!1):t.greedy=!0,t.type="Quantifier",t.loc=this.loc(n),t}atom(){let e;const t=this.idx;switch(this.peekChar()){case".":e=this.dotAll();break;case"\\":e=this.atomEscape();break;case"[":e=this.characterClass();break;case"(":e=this.group();break}if(e===void 0&&this.isPatternCharacter()&&(e=this.patternCharacter()),Se(e))return e.loc=this.loc(t),this.isQuantifier()&&(e.quantifier=this.quantifier()),e}dotAll(){return this.consumeChar("."),{type:"Set",complement:!0,value:[y(`
|
|
3
3
|
`),y("\r"),y("\u2028"),y("\u2029")]}}atomEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return this.decimalEscapeAtom();case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}decimalEscapeAtom(){return{type:"GroupBackReference",value:this.positiveInteger()}}characterClassEscape(){let e,t=!1;switch(this.popChar()){case"d":e=gt;break;case"D":e=gt,t=!0;break;case"s":e=Os;break;case"S":e=Os,t=!0;break;case"w":e=At;break;case"W":e=At,t=!0;break}if(Se(e))return{type:"Set",value:e,complement:t}}controlEscapeAtom(){let e;switch(this.popChar()){case"f":e=y("\f");break;case"n":e=y(`
|
|
4
4
|
`);break;case"r":e=y("\r");break;case"t":e=y(" ");break;case"v":e=y("\v");break}if(Se(e))return{type:"Character",value:e}}controlLetterEscapeAtom(){this.consumeChar("c");const e=this.popChar();if(/[a-zA-Z]/.test(e)===!1)throw Error("Invalid ");return{type:"Character",value:e.toUpperCase().charCodeAt(0)-64}}nulCharacterAtom(){return this.consumeChar("0"),{type:"Character",value:y("\0")}}hexEscapeSequenceAtom(){return this.consumeChar("x"),this.parseHexDigits(2)}regExpUnicodeEscapeSequenceAtom(){return this.consumeChar("u"),this.parseHexDigits(4)}identityEscapeAtom(){const e=this.popChar();return{type:"Character",value:y(e)}}classPatternCharacterAtom(){switch(this.peekChar()){case`
|
package/dist/client/assets/{vennDiagram-Q3Y3IDCW-Zrybcs91.js → vennDiagram-Q3Y3IDCW-B09oli-Z.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{b8 as Wt,s as Kt,g as Ht,v as Yt,t as Xt,a as Zt,b as Jt,_ as S,M as St,R as Qt,ar as $t,ag as te,ah as ee,ai as ne,d as se,A as ie,O as re,P as oe}from"./mermaid.core-BcRUBvZd.js";import{s as rt}from"./transform-BqqRT-Iy.js";import"./index-B6Scr7KJ.js";import"./BlintzCanvas-BCtfZPrs.js";import"./index-DsasLE1l.js";import"./index-BSxkprTm.js";const kt=(t,n)=>Wt(t,"a",-n),_t=1e-10;function st(t,n){const s=le(t),e=s.filter(l=>ae(l,t));let i=0,r=0;const o=[];if(e.length>1){const l=Et(e);for(let u=0;u<e.length;++u){const a=e[u];a.angle=Math.atan2(a.x-l.x,a.y-l.y)}e.sort((u,a)=>a.angle-u.angle);let h=e[e.length-1];for(let u=0;u<e.length;++u){const a=e[u];r+=(h.x+a.x)*(a.y-h.y);const p={x:(a.x+h.x)/2,y:(a.y+h.y)/2};let d=null;for(let m=0;m<a.parentIndex.length;++m)if(h.parentIndex.includes(a.parentIndex[m])){const y=t[a.parentIndex[m]],M=Math.atan2(a.x-y.x,a.y-y.y),E=Math.atan2(h.x-y.x,h.y-y.y);let T=E-M;T<0&&(T+=2*Math.PI);const w=E-T/2;let g=K(p,{x:y.x+y.radius*Math.sin(w),y:y.y+y.radius*Math.cos(w)});g>y.radius*2&&(g=y.radius*2),(d==null||d.width>g)&&(d={circle:y,width:g,p1:a,p2:h,large:g>y.radius,sweep:!0})}d!=null&&(o.push(d),i+=lt(d.circle.radius,d.width),h=a)}}else{let l=t[0];for(let u=1;u<t.length;++u)t[u].radius<l.radius&&(l=t[u]);let h=!1;for(let u=0;u<t.length;++u)if(K(t[u],l)>Math.abs(l.radius-t[u].radius)){h=!0;break}h?i=r=0:(i=l.radius*l.radius*Math.PI,o.push({circle:l,p1:{x:l.x,y:l.y+l.radius},p2:{x:l.x-_t,y:l.y+l.radius},width:l.radius*2,large:!0,sweep:!0}))}return r/=2,n&&(n.area=i+r,n.arcArea=i,n.polygonArea=r,n.arcs=o,n.innerPoints=e,n.intersectionPoints=s),i+r}function ae(t,n){return n.every(s=>K(t,s)<s.radius+_t)}function le(t){const n=[];for(let s=0;s<t.length;++s)for(let e=s+1;e<t.length;++e){const i=Tt(t[s],t[e]);for(const r of i)r.parentIndex=[s,e],n.push(r)}return n}function lt(t,n){return t*t*Math.acos(1-n/t)-(t-n)*Math.sqrt(n*(2*t-n))}function K(t,n){return Math.sqrt((t.x-n.x)*(t.x-n.x)+(t.y-n.y)*(t.y-n.y))}function xt(t,n,s){if(s>=t+n)return 0;if(s<=Math.abs(t-n))return Math.PI*Math.min(t,n)*Math.min(t,n);const e=t-(s*s-n*n+t*t)/(2*s),i=n-(s*s-t*t+n*n)/(2*s);return lt(t,e)+lt(n,i)}function Tt(t,n){const s=K(t,n),e=t.radius,i=n.radius;if(s>=e+i||s<=Math.abs(e-i))return[];const r=(e*e-i*i+s*s)/(2*s),o=Math.sqrt(e*e-r*r),l=t.x+r*(n.x-t.x)/s,h=t.y+r*(n.y-t.y)/s,u=-(n.y-t.y)*(o/s),a=-(n.x-t.x)*(o/s);return[{x:l+u,y:h-a},{x:l-u,y:h+a}]}function Et(t){const n={x:0,y:0};for(const s of t)n.x+=s.x,n.y+=s.y;return n.x/=t.length,n.y/=t.length,n}function ce(t,n,s,e){e=e||{};const i=e.maxIterations||100,r=e.tolerance||1e-10,o=t(n),l=t(s);let h=s-n;if(o*l>0)throw"Initial bisect points must have opposite signs";if(o===0)return n;if(l===0)return s;for(let u=0;u<i;++u){h/=2;const a=n+h,p=t(a);if(p*o>=0&&(n=a),Math.abs(h)<r||p===0)return a}return n+h}function ct(t){const n=new Array(t);for(let s=0;s<t;++s)n[s]=0;return n}function Mt(t,n){return ct(t).map(()=>ct(n))}function tt(t,n){let s=0;for(let e=0;e<t.length;++e)s+=t[e]*n[e];return s}function ut(t){return Math.sqrt(tt(t,t))}function ht(t,n,s){for(let e=0;e<n.length;++e)t[e]=n[e]*s}function J(t,n,s,e,i){for(let r=0;r<t.length;++r)t[r]=n*s[r]+e*i[r]}function zt(t,n,s){s=s||{};const e=s.maxIterations||n.length*200,i=s.nonZeroDelta||1.05,r=s.zeroDelta||.001,o=s.minErrorDelta||1e-6,l=s.minErrorDelta||1e-5,h=s.rho!==void 0?s.rho:1,u=s.chi!==void 0?s.chi:2,a=s.psi!==void 0?s.psi:-.5,p=s.sigma!==void 0?s.sigma:.5;let d;const m=n.length,y=new Array(m+1);y[0]=n,y[0].fx=t(n),y[0].id=0;for(let v=0;v<m;++v){const c=n.slice();c[v]=c[v]?c[v]*i:r,y[v+1]=c,y[v+1].fx=t(c),y[v+1].id=v+1}function M(v){for(let c=0;c<v.length;c++)y[m][c]=v[c];y[m].fx=v.fx}const E=(v,c)=>v.fx-c.fx,T=n.slice(),w=n.slice(),g=n.slice(),b=n.slice();for(let v=0;v<e;++v){if(y.sort(E),s.history){const x=y.map(f=>{const O=f.slice();return O.fx=f.fx,O.id=f.id,O});x.sort((f,O)=>f.id-O.id),s.history.push({x:y[0].slice(),fx:y[0].fx,simplex:x})}d=0;for(let x=0;x<m;++x)d=Math.max(d,Math.abs(y[0][x]-y[1][x]));if(Math.abs(y[0].fx-y[m].fx)<o&&d<l)break;for(let x=0;x<m;++x){T[x]=0;for(let f=0;f<m;++f)T[x]+=y[f][x];T[x]/=m}const c=y[m];if(J(w,1+h,T,-h,c),w.fx=t(w),w.fx<y[0].fx)J(b,1+u,T,-u,c),b.fx=t(b),b.fx<w.fx?M(b):M(w);else if(w.fx>=y[m-1].fx){let x=!1;if(w.fx>c.fx?(J(g,1+a,T,-a,c),g.fx=t(g),g.fx<c.fx?M(g):x=!0):(J(g,1-a*h,T,a*h,c),g.fx=t(g),g.fx<w.fx?M(g):x=!0),x){if(p>=1)break;for(let f=1;f<y.length;++f)J(y[f],1-p,y[0],p,y[f]),y[f].fx=t(y[f])}}else M(w)}return y.sort(E),{fx:y[0].fx,x:y[0]}}function ue(t,n,s,e,i,r,o){const l=s.fx,h=tt(s.fxprime,n);let u=l,a=l,p=h,d=0;i=i||1,r=r||1e-6,o=o||.1;function m(y,M,E){for(let T=0;T<16;++T)if(i=(y+M)/2,J(e.x,1,s.x,i,n),u=e.fx=t(e.x,e.fxprime),p=tt(e.fxprime,n),u>l+r*i*h||u>=E)M=i;else{if(Math.abs(p)<=-o*h)return i;p*(M-y)>=0&&(M=y),y=i,E=u}return 0}for(let y=0;y<10;++y){if(J(e.x,1,s.x,i,n),u=e.fx=t(e.x,e.fxprime),p=tt(e.fxprime,n),u>l+r*i*h||y&&u>=a)return m(d,i,a);if(Math.abs(p)<=-o*h)return i;if(p>=0)return m(i,d,u);a=u,d=i,i*=2}return i}function he(t,n,s){let e={x:n.slice(),fx:0,fxprime:n.slice()},i={x:n.slice(),fx:0,fxprime:n.slice()};const r=n.slice();let o,l,h=1,u;s=s||{},u=s.maxIterations||n.length*20,e.fx=t(e.x,e.fxprime),o=e.fxprime.slice(),ht(o,e.fxprime,-1);for(let a=0;a<u;++a){if(h=ue(t,o,e,i,h),s.history&&s.history.push({x:e.x.slice(),fx:e.fx,fxprime:e.fxprime.slice(),alpha:h}),!h)ht(o,e.fxprime,-1);else{J(r,1,i.fxprime,-1,e.fxprime);const p=tt(e.fxprime,e.fxprime),d=Math.max(0,tt(r,i.fxprime)/p);J(o,d,o,-1,i.fxprime),l=e,e=i,i=l}if(ut(e.fxprime)<=1e-5)break}return s.history&&s.history.push({x:e.x.slice(),fx:e.fx,fxprime:e.fxprime.slice(),alpha:h}),e}function At(t,n={}){n.maxIterations=n.maxIterations||500;const s=n.initialLayout||xe,e=n.lossFunction||et,i=fe(t,n),r=s(i,n),o=Object.keys(r),l=[];for(const a of o)l.push(r[a].x),l.push(r[a].y);const u=zt(a=>{const p={};for(let d=0;d<o.length;++d){const m=o[d];p[m]={x:a[2*d],y:a[2*d+1],radius:r[m].radius}}return e(p,i)},l,n).x;for(let a=0;a<o.length;++a){const p=o[a];r[p].x=u[2*a],r[p].y=u[2*a+1]}return r}const Rt=1e-10;function ft(t,n,s){return Math.min(t,n)*Math.min(t,n)*Math.PI<=s+Rt?Math.abs(t-n):ce(e=>xt(t,n,e)-s,0,t+n)}function fe(t,n={}){const s=n.distinct,e=t.map(l=>Object.assign({},l));function i(l){return l.join(";")}if(s){const l=new Map;for(const h of e)for(let u=0;u<h.sets.length;u++){const a=String(h.sets[u]);l.set(a,h.size+(l.get(a)||0));for(let p=u+1;p<h.sets.length;p++){const d=String(h.sets[p]),m=`${a};${d}`,y=`${d};${a}`;l.set(m,h.size+(l.get(m)||0)),l.set(y,h.size+(l.get(y)||0))}}for(const h of e)h.sets.length<3&&(h.size=l.get(i(h.sets)))}const r=[],o=new Set;for(const l of e)if(l.sets.length===1)r.push(l.sets[0]);else if(l.sets.length===2){const h=l.sets[0],u=l.sets[1];o.add(i(l.sets)),o.add(i([u,h]))}r.sort((l,h)=>l===h?0:l<h?-1:1);for(let l=0;l<r.length;++l){const h=r[l];for(let u=l+1;u<r.length;++u){const a=r[u];o.has(i([h,a]))||e.push({sets:[h,a],size:0})}}return e}function de(t,n,s){const e=Mt(n.length,n.length),i=Mt(n.length,n.length);return t.filter(r=>r.sets.length===2).forEach(r=>{const o=s[r.sets[0]],l=s[r.sets[1]],h=Math.sqrt(n[o].size/Math.PI),u=Math.sqrt(n[l].size/Math.PI),a=ft(h,u,r.size);e[o][l]=e[l][o]=a;let p=0;r.size+1e-10>=Math.min(n[o].size,n[l].size)?p=1:r.size<=1e-10&&(p=-1),i[o][l]=i[l][o]=p}),{distances:e,constraints:i}}function ge(t,n,s,e){for(let r=0;r<n.length;++r)n[r]=0;let i=0;for(let r=0;r<s.length;++r){const o=t[2*r],l=t[2*r+1];for(let h=r+1;h<s.length;++h){const u=t[2*h],a=t[2*h+1],p=s[r][h],d=e[r][h],m=(u-o)*(u-o)+(a-l)*(a-l),y=Math.sqrt(m),M=m-p*p;d>0&&y<=p||d<0&&y>=p||(i+=2*M*M,n[2*r]+=4*M*(o-u),n[2*r+1]+=4*M*(l-a),n[2*h]+=4*M*(u-o),n[2*h+1]+=4*M*(a-l))}}return i}function xe(t,n={}){let s=pe(t,n);const e=n.lossFunction||et;if(t.length>=8){const i=ye(t,n),r=e(i,t),o=e(s,t);r+1e-8<o&&(s=i)}return s}function ye(t,n={}){const s=n.restarts||10,e=[],i={};for(const d of t)d.sets.length===1&&(i[d.sets[0]]=e.length,e.push(d));let{distances:r,constraints:o}=de(t,e,i);const l=ut(r.map(ut))/r.length;r=r.map(d=>d.map(m=>m/l));const h=(d,m)=>ge(d,m,r,o);let u=null;for(let d=0;d<s;++d){const m=ct(r.length*2).map(Math.random),y=he(h,m,n);(!u||y.fx<u.fx)&&(u=y)}const a=u.x,p={};for(let d=0;d<e.length;++d){const m=e[d];p[m.sets[0]]={x:a[2*d]*l,y:a[2*d+1]*l,radius:Math.sqrt(m.size/Math.PI)}}if(n.history)for(const d of n.history)ht(d.x,l);return p}function pe(t,n){const s=n&&n.lossFunction?n.lossFunction:et,e={},i={};for(const p of t)if(p.sets.length===1){const d=p.sets[0];e[d]={x:1e10,y:1e10,rowid:e.length,size:p.size,radius:Math.sqrt(p.size/Math.PI)},i[d]=[]}t=t.filter(p=>p.sets.length===2);for(const p of t){let d=p.weight!=null?p.weight:1;const m=p.sets[0],y=p.sets[1];p.size+Rt>=Math.min(e[m].size,e[y].size)&&(d=0),i[m].push({set:y,size:p.size,weight:d}),i[y].push({set:m,size:p.size,weight:d})}const r=[];Object.keys(i).forEach(p=>{let d=0;for(let m=0;m<i[p].length;++m)d+=i[p][m].size*i[p][m].weight;r.push({set:p,size:d})});function o(p,d){return d.size-p.size}r.sort(o);const l={};function h(p){return p.set in l}function u(p,d){e[d].x=p.x,e[d].y=p.y,l[d]=!0}u({x:0,y:0},r[0].set);for(let p=1;p<r.length;++p){const d=r[p].set,m=i[d].filter(h),y=e[d];if(m.sort(o),m.length===0)throw"ERROR: missing pairwise overlap information";const M=[];for(var a=0;a<m.length;++a){const w=e[m[a].set],g=ft(y.radius,w.radius,m[a].size);M.push({x:w.x+g,y:w.y}),M.push({x:w.x-g,y:w.y}),M.push({y:w.y+g,x:w.x}),M.push({y:w.y-g,x:w.x});for(let b=a+1;b<m.length;++b){const v=e[m[b].set],c=ft(y.radius,v.radius,m[b].size),x=Tt({x:w.x,y:w.y,radius:g},{x:v.x,y:v.y,radius:c});M.push(...x)}}let E=1e50,T=M[0];for(const w of M){e[d].x=w.x,e[d].y=w.y;const g=s(e,t);g<E&&(E=g,T=w)}u(T,d)}return e}function et(t,n){let s=0;for(const e of n){if(e.sets.length===1)continue;let i;if(e.sets.length===2){const o=t[e.sets[0]],l=t[e.sets[1]];i=xt(o.radius,l.radius,K(o,l))}else i=st(e.sets.map(o=>t[o]));const r=e.weight!=null?e.weight:1;s+=r*(i-e.size)*(i-e.size)}return s}function Ct(t,n){let s=0;for(const e of n){if(e.sets.length===1)continue;let i;if(e.sets.length===2){const l=t[e.sets[0]],h=t[e.sets[1]];i=xt(l.radius,h.radius,K(l,h))}else i=st(e.sets.map(l=>t[l]));const r=e.weight!=null?e.weight:1,o=Math.log((i+1)/(e.size+1));s+=r*o*o}return s}function me(t,n,s){if(s==null?t.sort((i,r)=>r.radius-i.radius):t.sort(s),t.length>0){const i=t[0].x,r=t[0].y;for(const o of t)o.x-=i,o.y-=r}if(t.length===2&&K(t[0],t[1])<Math.abs(t[1].radius-t[0].radius)&&(t[1].x=t[0].x+t[0].radius-t[1].radius-1e-10,t[1].y=t[0].y),t.length>1){const i=Math.atan2(t[1].x,t[1].y)-n,r=Math.cos(i),o=Math.sin(i);for(const l of t){const h=l.x,u=l.y;l.x=r*h-o*u,l.y=o*h+r*u}}if(t.length>2){let i=Math.atan2(t[2].x,t[2].y)-n;for(;i<0;)i+=2*Math.PI;for(;i>2*Math.PI;)i-=2*Math.PI;if(i>Math.PI){const r=t[1].y/(1e-10+t[1].x);for(const o of t){var e=(o.x+r*o.y)/(1+r*r);o.x=2*e-o.x,o.y=2*e*r-o.y}}}}function be(t){t.forEach(i=>{i.parent=i});function n(i){return i.parent!==i&&(i.parent=n(i.parent)),i.parent}function s(i,r){const o=n(i),l=n(r);o.parent=l}for(let i=0;i<t.length;++i)for(let r=i+1;r<t.length;++r){const o=t[i].radius+t[r].radius;K(t[i],t[r])+1e-10<o&&s(t[r],t[i])}const e=new Map;for(let i=0;i<t.length;++i){const r=n(t[i]).parent.setid;e.has(r)||e.set(r,[]),e.get(r).push(t[i])}return t.forEach(i=>{delete i.parent}),Array.from(e.values())}function dt(t){const n=s=>{const e=t.reduce((r,o)=>Math.max(r,o[s]+o.radius),Number.NEGATIVE_INFINITY),i=t.reduce((r,o)=>Math.min(r,o[s]-o.radius),Number.POSITIVE_INFINITY);return{max:e,min:i}};return{xRange:n("x"),yRange:n("y")}}function Dt(t,n,s){n==null&&(n=Math.PI/2);let e=Ft(t).map(u=>Object.assign({},u));const i=be(e);for(const u of i){me(u,n,s);const a=dt(u);u.size=(a.xRange.max-a.xRange.min)*(a.yRange.max-a.yRange.min),u.bounds=a}i.sort((u,a)=>a.size-u.size),e=i[0];let r=e.bounds;const o=(r.xRange.max-r.xRange.min)/50;function l(u,a,p){if(!u)return;const d=u.bounds;let m,y;if(a)m=r.xRange.max-d.xRange.min+o;else{m=r.xRange.max-d.xRange.max;const M=(d.xRange.max-d.xRange.min)/2-(r.xRange.max-r.xRange.min)/2;M<0&&(m+=M)}if(p)y=r.yRange.max-d.yRange.min+o;else{y=r.yRange.max-d.yRange.max;const M=(d.yRange.max-d.yRange.min)/2-(r.yRange.max-r.yRange.min)/2;M<0&&(y+=M)}for(const M of u)M.x+=m,M.y+=y,e.push(M)}let h=1;for(;h<i.length;)l(i[h],!0,!1),l(i[h+1],!1,!0),l(i[h+2],!0,!0),h+=3,r=dt(e);return Nt(e)}function Ot(t,n,s,e,i){const r=Ft(t);n-=2*e,s-=2*e;const{xRange:o,yRange:l}=dt(r);if(o.max===o.min||l.max===l.min)return console.log("not scaling solution: zero size detected"),t;let h,u;if(i){const m=Math.sqrt(i/Math.PI)*2;h=n/m,u=s/m}else h=n/(o.max-o.min),u=s/(l.max-l.min);const a=Math.min(u,h),p=(n-(o.max-o.min)*a)/2,d=(s-(l.max-l.min)*a)/2;return Nt(r.map(m=>({radius:a*m.radius,x:e+p+(m.x-o.min)*a,y:e+d+(m.y-l.min)*a,setid:m.setid})))}function Nt(t){const n={};for(const s of t)n[s.setid]=s;return n}function Ft(t){return Object.keys(t).map(s=>Object.assign(t[s],{setid:s}))}function ve(t={}){let n=!1,s=600,e=350,i=15,r=1e3,o=Math.PI/2,l=!0,h=null,u=!0,a=!0,p=null,d=null,m=!1,y=null,M=t&&t.symmetricalTextCentre?t.symmetricalTextCentre:!1,E={},T=t&&t.colourScheme?t.colourScheme:t&&t.colorScheme?t.colorScheme:["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"],w=0,g=function(x){if(x in E)return E[x];var f=E[x]=T[w];return w+=1,w>=T.length&&(w=0),f},b=At,v=et;function c(x){let f=x.datum();const O=new Set;f.forEach(I=>{I.size==0&&I.sets.length==1&&O.add(I.sets[0])}),f=f.filter(I=>!I.sets.some(C=>O.has(C)));let k={},D={};if(f.length>0){let I=b(f,{lossFunction:v,distinct:m});l&&(I=Dt(I,o,d)),k=Ot(I,s,e,i,h),D=Lt(k,f,M)}const X={};f.forEach(I=>{I.label&&(X[I.sets]=I.label)});function G(I){if(I.sets in X)return X[I.sets];if(I.sets.length==1)return""+I.sets[0]}x.selectAll("svg").data([k]).enter().append("svg");const B=x.select("svg");n?B.attr("viewBox",`0 0 ${s} ${e}`):B.attr("width",s).attr("height",e);const V={};let z=!1;B.selectAll(".venn-area path").each(function(I){const C=this.getAttribute("d");I.sets.length==1&&C&&!m&&(z=!0,V[I.sets[0]]=Me(C))});function q(I){return C=>{const H=I.sets.map(Q=>{let W=V[Q],Y=k[Q];return W||(W={x:s/2,y:e/2,radius:1}),Y||(Y={x:s/2,y:e/2,radius:1}),{x:W.x*(1-C)+Y.x*C,y:W.y*(1-C)+Y.y*C,radius:W.radius*(1-C)+Y.radius*C}});return wt(H,y)}}const R=B.selectAll(".venn-area").data(f,I=>I.sets),N=R.enter().append("g").attr("class",I=>`venn-area venn-${I.sets.length==1?"circle":"intersection"}${I.colour||I.color?" venn-coloured":""}`).attr("data-venn-sets",I=>I.sets.join("_")),j=N.append("path"),L=N.append("text").attr("class","label").text(I=>G(I)).attr("text-anchor","middle").attr("dy",".35em").attr("x",s/2).attr("y",e/2);a&&(j.style("fill-opacity","0").filter(I=>I.sets.length==1).style("fill",I=>I.colour?I.colour:I.color?I.color:g(I.sets)).style("fill-opacity",".25"),L.style("fill",I=>I.colour||I.color?"#FFF":t.textFill?t.textFill:I.sets.length==1?g(I.sets):"#444"));function P(I){return typeof I.transition=="function"?I.transition("venn").duration(r):I}let _=x;z&&typeof _.transition=="function"?(_=P(x),_.selectAll("path").attrTween("d",q)):_.selectAll("path").attr("d",I=>wt(I.sets.map(C=>k[C])),y);const F=_.selectAll("text").filter(I=>I.sets in D).text(I=>G(I)).attr("x",I=>Math.floor(D[I.sets].x)).attr("y",I=>Math.floor(D[I.sets].y));u&&(z?"on"in F?F.on("end",ot(k,G)):F.each("end",ot(k,G)):F.each(ot(k,G)));const A=P(R.exit()).remove();typeof R.transition=="function"&&A.selectAll("path").attrTween("d",q);const Z=A.selectAll("text").attr("x",s/2).attr("y",e/2);return p!==null&&(L.style("font-size","0px"),F.style("font-size",p),Z.style("font-size","0px")),{circles:k,textCentres:D,nodes:R,enter:N,update:_,exit:A}}return c.wrap=function(x){return arguments.length?(u=x,c):u},c.useViewBox=function(){return n=!0,c},c.width=function(x){return arguments.length?(s=x,c):s},c.height=function(x){return arguments.length?(e=x,c):e},c.padding=function(x){return arguments.length?(i=x,c):i},c.distinct=function(x){return arguments.length?(m=x,c):m},c.colours=function(x){return arguments.length?(g=x,c):g},c.colors=function(x){return arguments.length?(g=x,c):g},c.fontSize=function(x){return arguments.length?(p=x,c):p},c.round=function(x){return arguments.length?(y=x,c):y},c.duration=function(x){return arguments.length?(r=x,c):r},c.layoutFunction=function(x){return arguments.length?(b=x,c):b},c.normalize=function(x){return arguments.length?(l=x,c):l},c.scaleToFit=function(x){return arguments.length?(h=x,c):h},c.styled=function(x){return arguments.length?(a=x,c):a},c.orientation=function(x){return arguments.length?(o=x,c):o},c.orientationOrder=function(x){return arguments.length?(d=x,c):d},c.lossFunction=function(x){return arguments.length?(v=x==="default"?et:x==="logRatio"?Ct:x,c):v},c}function ot(t,n){return function(s){const e=this,i=t[s.sets[0]].radius||50,r=n(s)||"",o=r.split(/\s+/).reverse(),h=(r.length+o.length)/3;let u=o.pop(),a=[u],p=0;const d=1.1;e.textContent=null;const m=[];function y(g){const b=e.ownerDocument.createElementNS(e.namespaceURI,"tspan");return b.textContent=g,m.push(b),e.append(b),b}let M=y(u);for(;u=o.pop(),!!u;){a.push(u);const g=a.join(" ");M.textContent=g,g.length>h&&M.getComputedTextLength()>i&&(a.pop(),M.textContent=a.join(" "),a=[u],M=y(u),p++)}const E=.35-p*d/2,T=e.getAttribute("x"),w=e.getAttribute("y");m.forEach((g,b)=>{g.setAttribute("x",T),g.setAttribute("y",w),g.setAttribute("dy",`${E+b*d}em`)})}}function at(t,n,s){let e=n[0].radius-K(n[0],t);for(let i=1;i<n.length;++i){const r=n[i].radius-K(n[i],t);r<=e&&(e=r)}for(let i=0;i<s.length;++i){const r=K(s[i],t)-s[i].radius;r<=e&&(e=r)}return e}function jt(t,n,s){const e=[];for(const a of t)e.push({x:a.x,y:a.y}),e.push({x:a.x+a.radius/2,y:a.y}),e.push({x:a.x-a.radius/2,y:a.y}),e.push({x:a.x,y:a.y+a.radius/2}),e.push({x:a.x,y:a.y-a.radius/2});let i=e[0],r=at(e[0],t,n);for(let a=1;a<e.length;++a){const p=at(e[a],t,n);p>=r&&(i=e[a],r=p)}const o=zt(a=>-1*at({x:a[0],y:a[1]},t,n),[i.x,i.y],{maxIterations:500,minErrorDelta:1e-10}).x,l={x:s?0:o[0],y:o[1]};let h=!0;for(const a of t)if(K(l,a)>a.radius){h=!1;break}for(const a of n)if(K(l,a)<a.radius){h=!1;break}if(h)return l;if(t.length==1)return{x:t[0].x,y:t[0].y};const u={};return st(t,u),u.arcs.length===0?{x:0,y:-1e3,disjoint:!0}:u.arcs.length==1?{x:u.arcs[0].circle.x,y:u.arcs[0].circle.y}:n.length?jt(t,[]):Et(u.arcs.map(a=>a.p1))}function Ie(t){const n={},s=Object.keys(t);for(const e of s)n[e]=[];for(let e=0;e<s.length;e++){const i=s[e],r=t[i];for(let o=e+1;o<s.length;++o){const l=s[o],h=t[l],u=K(r,h);u+h.radius<=r.radius+1e-10?n[l].push(i):u+r.radius<=h.radius+1e-10&&n[i].push(l)}}return n}function Lt(t,n,s){const e={},i=Ie(t);for(let r=0;r<n.length;++r){const o=n[r].sets,l={},h={};for(let d=0;d<o.length;++d){l[o[d]]=!0;const m=i[o[d]];for(let y=0;y<m.length;++y)h[m[y]]=!0}const u=[],a=[];for(let d in t)d in l?u.push(t[d]):d in h||a.push(t[d]);const p=jt(u,a,s);e[o]=p,p.disjoint&&n[r].size>0&&console.log("WARNING: area "+o+" not represented on screen")}return e}function ke(t,n,s){const e=[];return e.push(`
|
|
1
|
+
import{b8 as Wt,s as Kt,g as Ht,v as Yt,t as Xt,a as Zt,b as Jt,_ as S,M as St,R as Qt,ar as $t,ag as te,ah as ee,ai as ne,d as se,A as ie,O as re,P as oe}from"./mermaid.core-C6ckWvkG.js";import{s as rt}from"./transform-BqqRT-Iy.js";import"./index-p3WivF1M.js";import"./BlintzCanvas-Dd3bC9vw.js";import"./index-DSIdPh8G.js";import"./index-JoxvTUfo.js";const kt=(t,n)=>Wt(t,"a",-n),_t=1e-10;function st(t,n){const s=le(t),e=s.filter(l=>ae(l,t));let i=0,r=0;const o=[];if(e.length>1){const l=Et(e);for(let u=0;u<e.length;++u){const a=e[u];a.angle=Math.atan2(a.x-l.x,a.y-l.y)}e.sort((u,a)=>a.angle-u.angle);let h=e[e.length-1];for(let u=0;u<e.length;++u){const a=e[u];r+=(h.x+a.x)*(a.y-h.y);const p={x:(a.x+h.x)/2,y:(a.y+h.y)/2};let d=null;for(let m=0;m<a.parentIndex.length;++m)if(h.parentIndex.includes(a.parentIndex[m])){const y=t[a.parentIndex[m]],M=Math.atan2(a.x-y.x,a.y-y.y),E=Math.atan2(h.x-y.x,h.y-y.y);let T=E-M;T<0&&(T+=2*Math.PI);const w=E-T/2;let g=K(p,{x:y.x+y.radius*Math.sin(w),y:y.y+y.radius*Math.cos(w)});g>y.radius*2&&(g=y.radius*2),(d==null||d.width>g)&&(d={circle:y,width:g,p1:a,p2:h,large:g>y.radius,sweep:!0})}d!=null&&(o.push(d),i+=lt(d.circle.radius,d.width),h=a)}}else{let l=t[0];for(let u=1;u<t.length;++u)t[u].radius<l.radius&&(l=t[u]);let h=!1;for(let u=0;u<t.length;++u)if(K(t[u],l)>Math.abs(l.radius-t[u].radius)){h=!0;break}h?i=r=0:(i=l.radius*l.radius*Math.PI,o.push({circle:l,p1:{x:l.x,y:l.y+l.radius},p2:{x:l.x-_t,y:l.y+l.radius},width:l.radius*2,large:!0,sweep:!0}))}return r/=2,n&&(n.area=i+r,n.arcArea=i,n.polygonArea=r,n.arcs=o,n.innerPoints=e,n.intersectionPoints=s),i+r}function ae(t,n){return n.every(s=>K(t,s)<s.radius+_t)}function le(t){const n=[];for(let s=0;s<t.length;++s)for(let e=s+1;e<t.length;++e){const i=Tt(t[s],t[e]);for(const r of i)r.parentIndex=[s,e],n.push(r)}return n}function lt(t,n){return t*t*Math.acos(1-n/t)-(t-n)*Math.sqrt(n*(2*t-n))}function K(t,n){return Math.sqrt((t.x-n.x)*(t.x-n.x)+(t.y-n.y)*(t.y-n.y))}function xt(t,n,s){if(s>=t+n)return 0;if(s<=Math.abs(t-n))return Math.PI*Math.min(t,n)*Math.min(t,n);const e=t-(s*s-n*n+t*t)/(2*s),i=n-(s*s-t*t+n*n)/(2*s);return lt(t,e)+lt(n,i)}function Tt(t,n){const s=K(t,n),e=t.radius,i=n.radius;if(s>=e+i||s<=Math.abs(e-i))return[];const r=(e*e-i*i+s*s)/(2*s),o=Math.sqrt(e*e-r*r),l=t.x+r*(n.x-t.x)/s,h=t.y+r*(n.y-t.y)/s,u=-(n.y-t.y)*(o/s),a=-(n.x-t.x)*(o/s);return[{x:l+u,y:h-a},{x:l-u,y:h+a}]}function Et(t){const n={x:0,y:0};for(const s of t)n.x+=s.x,n.y+=s.y;return n.x/=t.length,n.y/=t.length,n}function ce(t,n,s,e){e=e||{};const i=e.maxIterations||100,r=e.tolerance||1e-10,o=t(n),l=t(s);let h=s-n;if(o*l>0)throw"Initial bisect points must have opposite signs";if(o===0)return n;if(l===0)return s;for(let u=0;u<i;++u){h/=2;const a=n+h,p=t(a);if(p*o>=0&&(n=a),Math.abs(h)<r||p===0)return a}return n+h}function ct(t){const n=new Array(t);for(let s=0;s<t;++s)n[s]=0;return n}function Mt(t,n){return ct(t).map(()=>ct(n))}function tt(t,n){let s=0;for(let e=0;e<t.length;++e)s+=t[e]*n[e];return s}function ut(t){return Math.sqrt(tt(t,t))}function ht(t,n,s){for(let e=0;e<n.length;++e)t[e]=n[e]*s}function J(t,n,s,e,i){for(let r=0;r<t.length;++r)t[r]=n*s[r]+e*i[r]}function zt(t,n,s){s=s||{};const e=s.maxIterations||n.length*200,i=s.nonZeroDelta||1.05,r=s.zeroDelta||.001,o=s.minErrorDelta||1e-6,l=s.minErrorDelta||1e-5,h=s.rho!==void 0?s.rho:1,u=s.chi!==void 0?s.chi:2,a=s.psi!==void 0?s.psi:-.5,p=s.sigma!==void 0?s.sigma:.5;let d;const m=n.length,y=new Array(m+1);y[0]=n,y[0].fx=t(n),y[0].id=0;for(let v=0;v<m;++v){const c=n.slice();c[v]=c[v]?c[v]*i:r,y[v+1]=c,y[v+1].fx=t(c),y[v+1].id=v+1}function M(v){for(let c=0;c<v.length;c++)y[m][c]=v[c];y[m].fx=v.fx}const E=(v,c)=>v.fx-c.fx,T=n.slice(),w=n.slice(),g=n.slice(),b=n.slice();for(let v=0;v<e;++v){if(y.sort(E),s.history){const x=y.map(f=>{const O=f.slice();return O.fx=f.fx,O.id=f.id,O});x.sort((f,O)=>f.id-O.id),s.history.push({x:y[0].slice(),fx:y[0].fx,simplex:x})}d=0;for(let x=0;x<m;++x)d=Math.max(d,Math.abs(y[0][x]-y[1][x]));if(Math.abs(y[0].fx-y[m].fx)<o&&d<l)break;for(let x=0;x<m;++x){T[x]=0;for(let f=0;f<m;++f)T[x]+=y[f][x];T[x]/=m}const c=y[m];if(J(w,1+h,T,-h,c),w.fx=t(w),w.fx<y[0].fx)J(b,1+u,T,-u,c),b.fx=t(b),b.fx<w.fx?M(b):M(w);else if(w.fx>=y[m-1].fx){let x=!1;if(w.fx>c.fx?(J(g,1+a,T,-a,c),g.fx=t(g),g.fx<c.fx?M(g):x=!0):(J(g,1-a*h,T,a*h,c),g.fx=t(g),g.fx<w.fx?M(g):x=!0),x){if(p>=1)break;for(let f=1;f<y.length;++f)J(y[f],1-p,y[0],p,y[f]),y[f].fx=t(y[f])}}else M(w)}return y.sort(E),{fx:y[0].fx,x:y[0]}}function ue(t,n,s,e,i,r,o){const l=s.fx,h=tt(s.fxprime,n);let u=l,a=l,p=h,d=0;i=i||1,r=r||1e-6,o=o||.1;function m(y,M,E){for(let T=0;T<16;++T)if(i=(y+M)/2,J(e.x,1,s.x,i,n),u=e.fx=t(e.x,e.fxprime),p=tt(e.fxprime,n),u>l+r*i*h||u>=E)M=i;else{if(Math.abs(p)<=-o*h)return i;p*(M-y)>=0&&(M=y),y=i,E=u}return 0}for(let y=0;y<10;++y){if(J(e.x,1,s.x,i,n),u=e.fx=t(e.x,e.fxprime),p=tt(e.fxprime,n),u>l+r*i*h||y&&u>=a)return m(d,i,a);if(Math.abs(p)<=-o*h)return i;if(p>=0)return m(i,d,u);a=u,d=i,i*=2}return i}function he(t,n,s){let e={x:n.slice(),fx:0,fxprime:n.slice()},i={x:n.slice(),fx:0,fxprime:n.slice()};const r=n.slice();let o,l,h=1,u;s=s||{},u=s.maxIterations||n.length*20,e.fx=t(e.x,e.fxprime),o=e.fxprime.slice(),ht(o,e.fxprime,-1);for(let a=0;a<u;++a){if(h=ue(t,o,e,i,h),s.history&&s.history.push({x:e.x.slice(),fx:e.fx,fxprime:e.fxprime.slice(),alpha:h}),!h)ht(o,e.fxprime,-1);else{J(r,1,i.fxprime,-1,e.fxprime);const p=tt(e.fxprime,e.fxprime),d=Math.max(0,tt(r,i.fxprime)/p);J(o,d,o,-1,i.fxprime),l=e,e=i,i=l}if(ut(e.fxprime)<=1e-5)break}return s.history&&s.history.push({x:e.x.slice(),fx:e.fx,fxprime:e.fxprime.slice(),alpha:h}),e}function At(t,n={}){n.maxIterations=n.maxIterations||500;const s=n.initialLayout||xe,e=n.lossFunction||et,i=fe(t,n),r=s(i,n),o=Object.keys(r),l=[];for(const a of o)l.push(r[a].x),l.push(r[a].y);const u=zt(a=>{const p={};for(let d=0;d<o.length;++d){const m=o[d];p[m]={x:a[2*d],y:a[2*d+1],radius:r[m].radius}}return e(p,i)},l,n).x;for(let a=0;a<o.length;++a){const p=o[a];r[p].x=u[2*a],r[p].y=u[2*a+1]}return r}const Rt=1e-10;function ft(t,n,s){return Math.min(t,n)*Math.min(t,n)*Math.PI<=s+Rt?Math.abs(t-n):ce(e=>xt(t,n,e)-s,0,t+n)}function fe(t,n={}){const s=n.distinct,e=t.map(l=>Object.assign({},l));function i(l){return l.join(";")}if(s){const l=new Map;for(const h of e)for(let u=0;u<h.sets.length;u++){const a=String(h.sets[u]);l.set(a,h.size+(l.get(a)||0));for(let p=u+1;p<h.sets.length;p++){const d=String(h.sets[p]),m=`${a};${d}`,y=`${d};${a}`;l.set(m,h.size+(l.get(m)||0)),l.set(y,h.size+(l.get(y)||0))}}for(const h of e)h.sets.length<3&&(h.size=l.get(i(h.sets)))}const r=[],o=new Set;for(const l of e)if(l.sets.length===1)r.push(l.sets[0]);else if(l.sets.length===2){const h=l.sets[0],u=l.sets[1];o.add(i(l.sets)),o.add(i([u,h]))}r.sort((l,h)=>l===h?0:l<h?-1:1);for(let l=0;l<r.length;++l){const h=r[l];for(let u=l+1;u<r.length;++u){const a=r[u];o.has(i([h,a]))||e.push({sets:[h,a],size:0})}}return e}function de(t,n,s){const e=Mt(n.length,n.length),i=Mt(n.length,n.length);return t.filter(r=>r.sets.length===2).forEach(r=>{const o=s[r.sets[0]],l=s[r.sets[1]],h=Math.sqrt(n[o].size/Math.PI),u=Math.sqrt(n[l].size/Math.PI),a=ft(h,u,r.size);e[o][l]=e[l][o]=a;let p=0;r.size+1e-10>=Math.min(n[o].size,n[l].size)?p=1:r.size<=1e-10&&(p=-1),i[o][l]=i[l][o]=p}),{distances:e,constraints:i}}function ge(t,n,s,e){for(let r=0;r<n.length;++r)n[r]=0;let i=0;for(let r=0;r<s.length;++r){const o=t[2*r],l=t[2*r+1];for(let h=r+1;h<s.length;++h){const u=t[2*h],a=t[2*h+1],p=s[r][h],d=e[r][h],m=(u-o)*(u-o)+(a-l)*(a-l),y=Math.sqrt(m),M=m-p*p;d>0&&y<=p||d<0&&y>=p||(i+=2*M*M,n[2*r]+=4*M*(o-u),n[2*r+1]+=4*M*(l-a),n[2*h]+=4*M*(u-o),n[2*h+1]+=4*M*(a-l))}}return i}function xe(t,n={}){let s=pe(t,n);const e=n.lossFunction||et;if(t.length>=8){const i=ye(t,n),r=e(i,t),o=e(s,t);r+1e-8<o&&(s=i)}return s}function ye(t,n={}){const s=n.restarts||10,e=[],i={};for(const d of t)d.sets.length===1&&(i[d.sets[0]]=e.length,e.push(d));let{distances:r,constraints:o}=de(t,e,i);const l=ut(r.map(ut))/r.length;r=r.map(d=>d.map(m=>m/l));const h=(d,m)=>ge(d,m,r,o);let u=null;for(let d=0;d<s;++d){const m=ct(r.length*2).map(Math.random),y=he(h,m,n);(!u||y.fx<u.fx)&&(u=y)}const a=u.x,p={};for(let d=0;d<e.length;++d){const m=e[d];p[m.sets[0]]={x:a[2*d]*l,y:a[2*d+1]*l,radius:Math.sqrt(m.size/Math.PI)}}if(n.history)for(const d of n.history)ht(d.x,l);return p}function pe(t,n){const s=n&&n.lossFunction?n.lossFunction:et,e={},i={};for(const p of t)if(p.sets.length===1){const d=p.sets[0];e[d]={x:1e10,y:1e10,rowid:e.length,size:p.size,radius:Math.sqrt(p.size/Math.PI)},i[d]=[]}t=t.filter(p=>p.sets.length===2);for(const p of t){let d=p.weight!=null?p.weight:1;const m=p.sets[0],y=p.sets[1];p.size+Rt>=Math.min(e[m].size,e[y].size)&&(d=0),i[m].push({set:y,size:p.size,weight:d}),i[y].push({set:m,size:p.size,weight:d})}const r=[];Object.keys(i).forEach(p=>{let d=0;for(let m=0;m<i[p].length;++m)d+=i[p][m].size*i[p][m].weight;r.push({set:p,size:d})});function o(p,d){return d.size-p.size}r.sort(o);const l={};function h(p){return p.set in l}function u(p,d){e[d].x=p.x,e[d].y=p.y,l[d]=!0}u({x:0,y:0},r[0].set);for(let p=1;p<r.length;++p){const d=r[p].set,m=i[d].filter(h),y=e[d];if(m.sort(o),m.length===0)throw"ERROR: missing pairwise overlap information";const M=[];for(var a=0;a<m.length;++a){const w=e[m[a].set],g=ft(y.radius,w.radius,m[a].size);M.push({x:w.x+g,y:w.y}),M.push({x:w.x-g,y:w.y}),M.push({y:w.y+g,x:w.x}),M.push({y:w.y-g,x:w.x});for(let b=a+1;b<m.length;++b){const v=e[m[b].set],c=ft(y.radius,v.radius,m[b].size),x=Tt({x:w.x,y:w.y,radius:g},{x:v.x,y:v.y,radius:c});M.push(...x)}}let E=1e50,T=M[0];for(const w of M){e[d].x=w.x,e[d].y=w.y;const g=s(e,t);g<E&&(E=g,T=w)}u(T,d)}return e}function et(t,n){let s=0;for(const e of n){if(e.sets.length===1)continue;let i;if(e.sets.length===2){const o=t[e.sets[0]],l=t[e.sets[1]];i=xt(o.radius,l.radius,K(o,l))}else i=st(e.sets.map(o=>t[o]));const r=e.weight!=null?e.weight:1;s+=r*(i-e.size)*(i-e.size)}return s}function Ct(t,n){let s=0;for(const e of n){if(e.sets.length===1)continue;let i;if(e.sets.length===2){const l=t[e.sets[0]],h=t[e.sets[1]];i=xt(l.radius,h.radius,K(l,h))}else i=st(e.sets.map(l=>t[l]));const r=e.weight!=null?e.weight:1,o=Math.log((i+1)/(e.size+1));s+=r*o*o}return s}function me(t,n,s){if(s==null?t.sort((i,r)=>r.radius-i.radius):t.sort(s),t.length>0){const i=t[0].x,r=t[0].y;for(const o of t)o.x-=i,o.y-=r}if(t.length===2&&K(t[0],t[1])<Math.abs(t[1].radius-t[0].radius)&&(t[1].x=t[0].x+t[0].radius-t[1].radius-1e-10,t[1].y=t[0].y),t.length>1){const i=Math.atan2(t[1].x,t[1].y)-n,r=Math.cos(i),o=Math.sin(i);for(const l of t){const h=l.x,u=l.y;l.x=r*h-o*u,l.y=o*h+r*u}}if(t.length>2){let i=Math.atan2(t[2].x,t[2].y)-n;for(;i<0;)i+=2*Math.PI;for(;i>2*Math.PI;)i-=2*Math.PI;if(i>Math.PI){const r=t[1].y/(1e-10+t[1].x);for(const o of t){var e=(o.x+r*o.y)/(1+r*r);o.x=2*e-o.x,o.y=2*e*r-o.y}}}}function be(t){t.forEach(i=>{i.parent=i});function n(i){return i.parent!==i&&(i.parent=n(i.parent)),i.parent}function s(i,r){const o=n(i),l=n(r);o.parent=l}for(let i=0;i<t.length;++i)for(let r=i+1;r<t.length;++r){const o=t[i].radius+t[r].radius;K(t[i],t[r])+1e-10<o&&s(t[r],t[i])}const e=new Map;for(let i=0;i<t.length;++i){const r=n(t[i]).parent.setid;e.has(r)||e.set(r,[]),e.get(r).push(t[i])}return t.forEach(i=>{delete i.parent}),Array.from(e.values())}function dt(t){const n=s=>{const e=t.reduce((r,o)=>Math.max(r,o[s]+o.radius),Number.NEGATIVE_INFINITY),i=t.reduce((r,o)=>Math.min(r,o[s]-o.radius),Number.POSITIVE_INFINITY);return{max:e,min:i}};return{xRange:n("x"),yRange:n("y")}}function Dt(t,n,s){n==null&&(n=Math.PI/2);let e=Ft(t).map(u=>Object.assign({},u));const i=be(e);for(const u of i){me(u,n,s);const a=dt(u);u.size=(a.xRange.max-a.xRange.min)*(a.yRange.max-a.yRange.min),u.bounds=a}i.sort((u,a)=>a.size-u.size),e=i[0];let r=e.bounds;const o=(r.xRange.max-r.xRange.min)/50;function l(u,a,p){if(!u)return;const d=u.bounds;let m,y;if(a)m=r.xRange.max-d.xRange.min+o;else{m=r.xRange.max-d.xRange.max;const M=(d.xRange.max-d.xRange.min)/2-(r.xRange.max-r.xRange.min)/2;M<0&&(m+=M)}if(p)y=r.yRange.max-d.yRange.min+o;else{y=r.yRange.max-d.yRange.max;const M=(d.yRange.max-d.yRange.min)/2-(r.yRange.max-r.yRange.min)/2;M<0&&(y+=M)}for(const M of u)M.x+=m,M.y+=y,e.push(M)}let h=1;for(;h<i.length;)l(i[h],!0,!1),l(i[h+1],!1,!0),l(i[h+2],!0,!0),h+=3,r=dt(e);return Nt(e)}function Ot(t,n,s,e,i){const r=Ft(t);n-=2*e,s-=2*e;const{xRange:o,yRange:l}=dt(r);if(o.max===o.min||l.max===l.min)return console.log("not scaling solution: zero size detected"),t;let h,u;if(i){const m=Math.sqrt(i/Math.PI)*2;h=n/m,u=s/m}else h=n/(o.max-o.min),u=s/(l.max-l.min);const a=Math.min(u,h),p=(n-(o.max-o.min)*a)/2,d=(s-(l.max-l.min)*a)/2;return Nt(r.map(m=>({radius:a*m.radius,x:e+p+(m.x-o.min)*a,y:e+d+(m.y-l.min)*a,setid:m.setid})))}function Nt(t){const n={};for(const s of t)n[s.setid]=s;return n}function Ft(t){return Object.keys(t).map(s=>Object.assign(t[s],{setid:s}))}function ve(t={}){let n=!1,s=600,e=350,i=15,r=1e3,o=Math.PI/2,l=!0,h=null,u=!0,a=!0,p=null,d=null,m=!1,y=null,M=t&&t.symmetricalTextCentre?t.symmetricalTextCentre:!1,E={},T=t&&t.colourScheme?t.colourScheme:t&&t.colorScheme?t.colorScheme:["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"],w=0,g=function(x){if(x in E)return E[x];var f=E[x]=T[w];return w+=1,w>=T.length&&(w=0),f},b=At,v=et;function c(x){let f=x.datum();const O=new Set;f.forEach(I=>{I.size==0&&I.sets.length==1&&O.add(I.sets[0])}),f=f.filter(I=>!I.sets.some(C=>O.has(C)));let k={},D={};if(f.length>0){let I=b(f,{lossFunction:v,distinct:m});l&&(I=Dt(I,o,d)),k=Ot(I,s,e,i,h),D=Lt(k,f,M)}const X={};f.forEach(I=>{I.label&&(X[I.sets]=I.label)});function G(I){if(I.sets in X)return X[I.sets];if(I.sets.length==1)return""+I.sets[0]}x.selectAll("svg").data([k]).enter().append("svg");const B=x.select("svg");n?B.attr("viewBox",`0 0 ${s} ${e}`):B.attr("width",s).attr("height",e);const V={};let z=!1;B.selectAll(".venn-area path").each(function(I){const C=this.getAttribute("d");I.sets.length==1&&C&&!m&&(z=!0,V[I.sets[0]]=Me(C))});function q(I){return C=>{const H=I.sets.map(Q=>{let W=V[Q],Y=k[Q];return W||(W={x:s/2,y:e/2,radius:1}),Y||(Y={x:s/2,y:e/2,radius:1}),{x:W.x*(1-C)+Y.x*C,y:W.y*(1-C)+Y.y*C,radius:W.radius*(1-C)+Y.radius*C}});return wt(H,y)}}const R=B.selectAll(".venn-area").data(f,I=>I.sets),N=R.enter().append("g").attr("class",I=>`venn-area venn-${I.sets.length==1?"circle":"intersection"}${I.colour||I.color?" venn-coloured":""}`).attr("data-venn-sets",I=>I.sets.join("_")),j=N.append("path"),L=N.append("text").attr("class","label").text(I=>G(I)).attr("text-anchor","middle").attr("dy",".35em").attr("x",s/2).attr("y",e/2);a&&(j.style("fill-opacity","0").filter(I=>I.sets.length==1).style("fill",I=>I.colour?I.colour:I.color?I.color:g(I.sets)).style("fill-opacity",".25"),L.style("fill",I=>I.colour||I.color?"#FFF":t.textFill?t.textFill:I.sets.length==1?g(I.sets):"#444"));function P(I){return typeof I.transition=="function"?I.transition("venn").duration(r):I}let _=x;z&&typeof _.transition=="function"?(_=P(x),_.selectAll("path").attrTween("d",q)):_.selectAll("path").attr("d",I=>wt(I.sets.map(C=>k[C])),y);const F=_.selectAll("text").filter(I=>I.sets in D).text(I=>G(I)).attr("x",I=>Math.floor(D[I.sets].x)).attr("y",I=>Math.floor(D[I.sets].y));u&&(z?"on"in F?F.on("end",ot(k,G)):F.each("end",ot(k,G)):F.each(ot(k,G)));const A=P(R.exit()).remove();typeof R.transition=="function"&&A.selectAll("path").attrTween("d",q);const Z=A.selectAll("text").attr("x",s/2).attr("y",e/2);return p!==null&&(L.style("font-size","0px"),F.style("font-size",p),Z.style("font-size","0px")),{circles:k,textCentres:D,nodes:R,enter:N,update:_,exit:A}}return c.wrap=function(x){return arguments.length?(u=x,c):u},c.useViewBox=function(){return n=!0,c},c.width=function(x){return arguments.length?(s=x,c):s},c.height=function(x){return arguments.length?(e=x,c):e},c.padding=function(x){return arguments.length?(i=x,c):i},c.distinct=function(x){return arguments.length?(m=x,c):m},c.colours=function(x){return arguments.length?(g=x,c):g},c.colors=function(x){return arguments.length?(g=x,c):g},c.fontSize=function(x){return arguments.length?(p=x,c):p},c.round=function(x){return arguments.length?(y=x,c):y},c.duration=function(x){return arguments.length?(r=x,c):r},c.layoutFunction=function(x){return arguments.length?(b=x,c):b},c.normalize=function(x){return arguments.length?(l=x,c):l},c.scaleToFit=function(x){return arguments.length?(h=x,c):h},c.styled=function(x){return arguments.length?(a=x,c):a},c.orientation=function(x){return arguments.length?(o=x,c):o},c.orientationOrder=function(x){return arguments.length?(d=x,c):d},c.lossFunction=function(x){return arguments.length?(v=x==="default"?et:x==="logRatio"?Ct:x,c):v},c}function ot(t,n){return function(s){const e=this,i=t[s.sets[0]].radius||50,r=n(s)||"",o=r.split(/\s+/).reverse(),h=(r.length+o.length)/3;let u=o.pop(),a=[u],p=0;const d=1.1;e.textContent=null;const m=[];function y(g){const b=e.ownerDocument.createElementNS(e.namespaceURI,"tspan");return b.textContent=g,m.push(b),e.append(b),b}let M=y(u);for(;u=o.pop(),!!u;){a.push(u);const g=a.join(" ");M.textContent=g,g.length>h&&M.getComputedTextLength()>i&&(a.pop(),M.textContent=a.join(" "),a=[u],M=y(u),p++)}const E=.35-p*d/2,T=e.getAttribute("x"),w=e.getAttribute("y");m.forEach((g,b)=>{g.setAttribute("x",T),g.setAttribute("y",w),g.setAttribute("dy",`${E+b*d}em`)})}}function at(t,n,s){let e=n[0].radius-K(n[0],t);for(let i=1;i<n.length;++i){const r=n[i].radius-K(n[i],t);r<=e&&(e=r)}for(let i=0;i<s.length;++i){const r=K(s[i],t)-s[i].radius;r<=e&&(e=r)}return e}function jt(t,n,s){const e=[];for(const a of t)e.push({x:a.x,y:a.y}),e.push({x:a.x+a.radius/2,y:a.y}),e.push({x:a.x-a.radius/2,y:a.y}),e.push({x:a.x,y:a.y+a.radius/2}),e.push({x:a.x,y:a.y-a.radius/2});let i=e[0],r=at(e[0],t,n);for(let a=1;a<e.length;++a){const p=at(e[a],t,n);p>=r&&(i=e[a],r=p)}const o=zt(a=>-1*at({x:a[0],y:a[1]},t,n),[i.x,i.y],{maxIterations:500,minErrorDelta:1e-10}).x,l={x:s?0:o[0],y:o[1]};let h=!0;for(const a of t)if(K(l,a)>a.radius){h=!1;break}for(const a of n)if(K(l,a)<a.radius){h=!1;break}if(h)return l;if(t.length==1)return{x:t[0].x,y:t[0].y};const u={};return st(t,u),u.arcs.length===0?{x:0,y:-1e3,disjoint:!0}:u.arcs.length==1?{x:u.arcs[0].circle.x,y:u.arcs[0].circle.y}:n.length?jt(t,[]):Et(u.arcs.map(a=>a.p1))}function Ie(t){const n={},s=Object.keys(t);for(const e of s)n[e]=[];for(let e=0;e<s.length;e++){const i=s[e],r=t[i];for(let o=e+1;o<s.length;++o){const l=s[o],h=t[l],u=K(r,h);u+h.radius<=r.radius+1e-10?n[l].push(i):u+r.radius<=h.radius+1e-10&&n[i].push(l)}}return n}function Lt(t,n,s){const e={},i=Ie(t);for(let r=0;r<n.length;++r){const o=n[r].sets,l={},h={};for(let d=0;d<o.length;++d){l[o[d]]=!0;const m=i[o[d]];for(let y=0;y<m.length;++y)h[m[y]]=!0}const u=[],a=[];for(let d in t)d in l?u.push(t[d]):d in h||a.push(t[d]);const p=jt(u,a,s);e[o]=p,p.disjoint&&n[r].size>0&&console.log("WARNING: area "+o+" not represented on screen")}return e}function ke(t,n,s){const e=[];return e.push(`
|
|
2
2
|
M`,t,n),e.push(`
|
|
3
3
|
m`,-s,0),e.push(`
|
|
4
4
|
a`,s,s,0,1,0,s*2,0),e.push(`
|