termdock 1.4.350 → 1.4.351
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/client/assets/{App-TPJoJbGD.js → App-BiDKeTpx.js} +6 -6
- package/dist/client/assets/App-BiDKeTpx.js.br +0 -0
- package/dist/client/assets/App-BiDKeTpx.js.gz +0 -0
- package/dist/client/assets/{ArchitecturePanel-DzVy71gM.js → ArchitecturePanel-DfRsqSBx.js} +2 -2
- package/dist/client/assets/ArchitecturePanel-DfRsqSBx.js.br +0 -0
- package/dist/client/assets/ArchitecturePanel-DfRsqSBx.js.gz +0 -0
- package/dist/client/assets/{ChangeWalkthroughPanel-DN7BCzqC.js → ChangeWalkthroughPanel-DksecDp5.js} +1 -1
- package/dist/client/assets/ChangeWalkthroughPanel-DksecDp5.js.br +0 -0
- package/dist/client/assets/ChangeWalkthroughPanel-DksecDp5.js.gz +0 -0
- package/dist/client/assets/{CollaborationMainWorkspace-B1PZuCC6.js → CollaborationMainWorkspace-D-TgDrxX.js} +1 -1
- package/dist/client/assets/CollaborationMainWorkspace-D-TgDrxX.js.br +0 -0
- package/dist/client/assets/CollaborationMainWorkspace-D-TgDrxX.js.gz +0 -0
- package/dist/client/assets/CollaborationTaskContent-Ce6gFw26.js +2 -0
- package/dist/client/assets/{ComputerControlView-BlI9Ai_k.js → ComputerControlView-BKwuceeG.js} +3 -3
- package/dist/client/assets/ComputerControlView-BKwuceeG.js.br +0 -0
- package/dist/client/assets/ComputerControlView-BKwuceeG.js.gz +0 -0
- package/dist/client/assets/{DagPlayground-V0hTKB-S.js → DagPlayground-Cshoqo5l.js} +1 -1
- package/dist/client/assets/DagPlayground-Cshoqo5l.js.br +0 -0
- package/dist/client/assets/DagPlayground-Cshoqo5l.js.gz +0 -0
- package/dist/client/assets/{DiffLab-DEw4y4Hk.js → DiffLab-DFut8ZHi.js} +1 -1
- package/dist/client/assets/DiffLab-DFut8ZHi.js.br +0 -0
- package/dist/client/assets/DiffLab-DFut8ZHi.js.gz +0 -0
- package/dist/client/assets/{DiffReview-Cnnt3TMK.js → DiffReview-DkEi5c3c.js} +1 -1
- package/dist/client/assets/DiffReview-DkEi5c3c.js.br +0 -0
- package/dist/client/assets/DiffReview-DkEi5c3c.js.gz +0 -0
- package/dist/client/assets/{DiffReviewLab-CDXsy0jE.js → DiffReviewLab-Y9JlI5DQ.js} +1 -1
- package/dist/client/assets/DiffReviewLab-Y9JlI5DQ.js.br +0 -0
- package/dist/client/assets/DiffReviewLab-Y9JlI5DQ.js.gz +0 -0
- package/dist/client/assets/{DiffViewer-Dh40XiCM.js → DiffViewer-3JGF6U0m.js} +1 -1
- package/dist/client/assets/DiffViewer-3JGF6U0m.js.br +0 -0
- package/dist/client/assets/DiffViewer-3JGF6U0m.js.gz +0 -0
- package/dist/client/assets/{ModelPreview-BEiOgE0G.js → ModelPreview-Cv6JgunE.js} +1 -1
- package/dist/client/assets/ModelPreview-Cv6JgunE.js.br +0 -0
- package/dist/client/assets/ModelPreview-Cv6JgunE.js.gz +0 -0
- package/dist/client/assets/{RightSidebar-DiECnX5D.js → RightSidebar-akYx_nRq.js} +3 -3
- package/dist/client/assets/RightSidebar-akYx_nRq.js.br +0 -0
- package/dist/client/assets/RightSidebar-akYx_nRq.js.gz +0 -0
- package/dist/client/assets/{abnfDiagram-VCTEODGH-ByzlUu_B.js → abnfDiagram-VCTEODGH-CcCffdpj.js} +1 -1
- package/dist/client/assets/abnfDiagram-VCTEODGH-CcCffdpj.js.br +0 -0
- package/dist/client/assets/abnfDiagram-VCTEODGH-CcCffdpj.js.gz +0 -0
- package/dist/client/assets/app-BB0CAQ8D.js +35 -0
- package/dist/client/assets/app-BB0CAQ8D.js.br +0 -0
- package/dist/client/assets/app-BB0CAQ8D.js.gz +0 -0
- package/dist/client/assets/{arc-BA6JM6vl.js → arc-CXcCuzb3.js} +1 -1
- package/dist/client/assets/arc-CXcCuzb3.js.br +0 -0
- package/dist/client/assets/arc-CXcCuzb3.js.gz +0 -0
- package/dist/client/assets/{architectureDiagram-5GKGNRK7-hCHxOfKw.js → architectureDiagram-5GKGNRK7-CmR7whZz.js} +1 -1
- package/dist/client/assets/architectureDiagram-5GKGNRK7-CmR7whZz.js.br +0 -0
- package/dist/client/assets/architectureDiagram-5GKGNRK7-CmR7whZz.js.gz +0 -0
- package/dist/client/assets/{blockDiagram-I7D4REHJ-OmEN9hUB.js → blockDiagram-I7D4REHJ-DODhUpHm.js} +1 -1
- package/dist/client/assets/blockDiagram-I7D4REHJ-DODhUpHm.js.br +0 -0
- package/dist/client/assets/blockDiagram-I7D4REHJ-DODhUpHm.js.gz +0 -0
- package/dist/client/assets/{c4Diagram-7LVT6UL2-DfLTv8zh.js → c4Diagram-7LVT6UL2-BF9eEb2Y.js} +1 -1
- package/dist/client/assets/c4Diagram-7LVT6UL2-BF9eEb2Y.js.br +0 -0
- package/dist/client/assets/c4Diagram-7LVT6UL2-BF9eEb2Y.js.gz +0 -0
- package/dist/client/assets/channel-BKkTA-X_.js +1 -0
- package/dist/client/assets/{chunk-2Q5K7J3B-C3O76PNZ.js → chunk-2Q5K7J3B-CB7-8Zex.js} +1 -1
- package/dist/client/assets/{chunk-5VM5RSS4-CsWZd30k.js → chunk-5VM5RSS4-8Uxe2lki.js} +1 -1
- package/dist/client/assets/{chunk-F27PBJKO-yxCv2Uqk.js → chunk-F27PBJKO-Bv45U-az.js} +1 -1
- package/dist/client/assets/chunk-F27PBJKO-Bv45U-az.js.br +0 -0
- package/dist/client/assets/chunk-F27PBJKO-Bv45U-az.js.gz +0 -0
- package/dist/client/assets/{chunk-IMKFNOWR-CdPjlb9f.js → chunk-IMKFNOWR-CfEErbEd.js} +1 -1
- package/dist/client/assets/chunk-IMKFNOWR-CfEErbEd.js.br +0 -0
- package/dist/client/assets/chunk-IMKFNOWR-CfEErbEd.js.gz +0 -0
- package/dist/client/assets/{chunk-JWPE2WC7-BiiOLq2R.js → chunk-JWPE2WC7-CjUqcCSL.js} +1 -1
- package/dist/client/assets/{chunk-POPQ4Y6H-BOu_1Brt.js → chunk-POPQ4Y6H-BHbP3O75.js} +1 -1
- package/dist/client/assets/{chunk-SVP7TREG-D1tOJung.js → chunk-SVP7TREG-CbyJW-OT.js} +1 -1
- package/dist/client/assets/chunk-SVP7TREG-CbyJW-OT.js.br +0 -0
- package/dist/client/assets/chunk-SVP7TREG-CbyJW-OT.js.gz +0 -0
- package/dist/client/assets/{chunk-TICWLB2K-DZjDfYNw.js → chunk-TICWLB2K-t93EivmS.js} +1 -1
- package/dist/client/assets/chunk-TICWLB2K-t93EivmS.js.br +0 -0
- package/dist/client/assets/chunk-TICWLB2K-t93EivmS.js.gz +0 -0
- package/dist/client/assets/{chunk-XXDRQBXY-CtGPyXWh.js → chunk-XXDRQBXY-C_Pe8Osb.js} +1 -1
- package/dist/client/assets/classDiagram-ZZMXUADV-D9nwA51-.js +1 -0
- package/dist/client/assets/classDiagram-v2-VYDZK3BY-D9nwA51-.js +1 -0
- package/dist/client/assets/{cose-bilkent-JH36ORCC-C4Wb5lqD.js → cose-bilkent-JH36ORCC-CksG0bvP.js} +1 -1
- package/dist/client/assets/cose-bilkent-JH36ORCC-CksG0bvP.js.br +0 -0
- package/dist/client/assets/cose-bilkent-JH36ORCC-CksG0bvP.js.gz +0 -0
- package/dist/client/assets/{cynefin-OW5HDTMX-BvWKB1Xk.js → cynefin-OW5HDTMX-CV3T078G.js} +1 -1
- package/dist/client/assets/cynefin-OW5HDTMX-CV3T078G.js.br +0 -0
- package/dist/client/assets/{cynefin-OW5HDTMX-BvWKB1Xk.js.gz → cynefin-OW5HDTMX-CV3T078G.js.gz} +0 -0
- package/dist/client/assets/{cynefinDiagram-5FMLGOSQ-7tAkHD2P.js → cynefinDiagram-5FMLGOSQ-BQnJabEs.js} +1 -1
- package/dist/client/assets/cynefinDiagram-5FMLGOSQ-BQnJabEs.js.br +0 -0
- package/dist/client/assets/cynefinDiagram-5FMLGOSQ-BQnJabEs.js.gz +0 -0
- package/dist/client/assets/{dagre-GXQ25YYZ-Bs6IPwks.js → dagre-GXQ25YYZ-BeIQp5Pv.js} +1 -1
- package/dist/client/assets/dagre-GXQ25YYZ-BeIQp5Pv.js.br +0 -0
- package/dist/client/assets/dagre-GXQ25YYZ-BeIQp5Pv.js.gz +0 -0
- package/dist/client/assets/{diagram-S7CK7UJ4-CmYXaTya.js → diagram-S7CK7UJ4-D-Mibxiq.js} +1 -1
- package/dist/client/assets/diagram-S7CK7UJ4-D-Mibxiq.js.br +0 -0
- package/dist/client/assets/diagram-S7CK7UJ4-D-Mibxiq.js.gz +0 -0
- package/dist/client/assets/{diagram-UQ7AKVKN-CqxoefB7.js → diagram-UQ7AKVKN-eiIMWp9t.js} +1 -1
- package/dist/client/assets/diagram-UQ7AKVKN-eiIMWp9t.js.br +0 -0
- package/dist/client/assets/diagram-UQ7AKVKN-eiIMWp9t.js.gz +0 -0
- package/dist/client/assets/{diagram-VSXAHHWV-Dxp1MKPT.js → diagram-VSXAHHWV-CTVOWtNL.js} +1 -1
- package/dist/client/assets/diagram-VSXAHHWV-CTVOWtNL.js.br +0 -0
- package/dist/client/assets/diagram-VSXAHHWV-CTVOWtNL.js.gz +0 -0
- package/dist/client/assets/{diagram-VX7I27RA-BKbWvvEr.js → diagram-VX7I27RA-NKKk6uh7.js} +1 -1
- package/dist/client/assets/diagram-VX7I27RA-NKKk6uh7.js.br +0 -0
- package/dist/client/assets/diagram-VX7I27RA-NKKk6uh7.js.gz +0 -0
- package/dist/client/assets/{diagram-Z3DM3KII-BZnNaP7F.js → diagram-Z3DM3KII-DKYdBuNs.js} +1 -1
- package/dist/client/assets/diagram-Z3DM3KII-DKYdBuNs.js.br +0 -0
- package/dist/client/assets/diagram-Z3DM3KII-DKYdBuNs.js.gz +0 -0
- package/dist/client/assets/{ebnfDiagram-PWID7BFC-BXVlN_P7.js → ebnfDiagram-PWID7BFC-DaM3D5Ed.js} +1 -1
- package/dist/client/assets/ebnfDiagram-PWID7BFC-DaM3D5Ed.js.br +0 -0
- package/dist/client/assets/ebnfDiagram-PWID7BFC-DaM3D5Ed.js.gz +0 -0
- package/dist/client/assets/{erDiagram-RLTQ6QDP-CEdYDZU7.js → erDiagram-RLTQ6QDP-Df9kQwWg.js} +1 -1
- package/dist/client/assets/erDiagram-RLTQ6QDP-Df9kQwWg.js.br +0 -0
- package/dist/client/assets/erDiagram-RLTQ6QDP-Df9kQwWg.js.gz +0 -0
- package/dist/client/assets/{flowDiagram-HODETNUW-Bbw8GPCZ.js → flowDiagram-HODETNUW-CWjDvpsN.js} +1 -1
- package/dist/client/assets/flowDiagram-HODETNUW-CWjDvpsN.js.br +0 -0
- package/dist/client/assets/flowDiagram-HODETNUW-CWjDvpsN.js.gz +0 -0
- package/dist/client/assets/{ganttDiagram-EL5Y4UJY-CcFbtP2y.js → ganttDiagram-EL5Y4UJY-mKt-CgrH.js} +1 -1
- package/dist/client/assets/ganttDiagram-EL5Y4UJY-mKt-CgrH.js.br +0 -0
- package/dist/client/assets/ganttDiagram-EL5Y4UJY-mKt-CgrH.js.gz +0 -0
- package/dist/client/assets/{gestureArbiter-sdzs-66-.js → gestureArbiter-C8TBuoU3.js} +1 -1
- package/dist/client/assets/gestureArbiter-C8TBuoU3.js.br +0 -0
- package/dist/client/assets/gestureArbiter-C8TBuoU3.js.gz +0 -0
- package/dist/client/assets/{gitGraphDiagram-WWUBYQGX-Eiust154.js → gitGraphDiagram-WWUBYQGX-BqnaVVZ0.js} +1 -1
- package/dist/client/assets/gitGraphDiagram-WWUBYQGX-BqnaVVZ0.js.br +0 -0
- package/dist/client/assets/gitGraphDiagram-WWUBYQGX-BqnaVVZ0.js.gz +0 -0
- package/dist/client/assets/index-3lPto_1X.css +1 -0
- package/dist/client/assets/index-3lPto_1X.css.br +0 -0
- package/dist/client/assets/{index-DtPsPZ7W.css.gz → index-3lPto_1X.css.gz} +0 -0
- package/dist/client/assets/{infoDiagram-27XIBGKW-DUmaNZJW.js → infoDiagram-27XIBGKW-CkniyUX9.js} +1 -1
- package/dist/client/assets/{ishikawaDiagram-5VMMS53U-qTwgXfx_.js → ishikawaDiagram-5VMMS53U-CKo9urjS.js} +1 -1
- package/dist/client/assets/ishikawaDiagram-5VMMS53U-CKo9urjS.js.br +0 -0
- package/dist/client/assets/ishikawaDiagram-5VMMS53U-CKo9urjS.js.gz +0 -0
- package/dist/client/assets/{journeyDiagram-3NMN7TZE-DKy1msWo.js → journeyDiagram-3NMN7TZE-Cd4jK-oI.js} +1 -1
- package/dist/client/assets/journeyDiagram-3NMN7TZE-Cd4jK-oI.js.br +0 -0
- package/dist/client/assets/journeyDiagram-3NMN7TZE-Cd4jK-oI.js.gz +0 -0
- package/dist/client/assets/{kanban-definition-UXKFOSKX-BxibybDd.js → kanban-definition-UXKFOSKX-BuulZGO-.js} +1 -1
- package/dist/client/assets/kanban-definition-UXKFOSKX-BuulZGO-.js.br +0 -0
- package/dist/client/assets/kanban-definition-UXKFOSKX-BuulZGO-.js.gz +0 -0
- package/dist/client/assets/{layout-Bh6fKHRM.js → layout-BpJ2ofrz.js} +1 -1
- package/dist/client/assets/layout-BpJ2ofrz.js.br +0 -0
- package/dist/client/assets/layout-BpJ2ofrz.js.gz +0 -0
- package/dist/client/assets/{linear-SRlL3VWX.js → linear-CaSbGLIA.js} +1 -1
- package/dist/client/assets/linear-CaSbGLIA.js.br +0 -0
- package/dist/client/assets/linear-CaSbGLIA.js.gz +0 -0
- package/dist/client/assets/{mermaid.core-D0bcNdw3.js → mermaid.core-BlkorXd6.js} +5 -5
- package/dist/client/assets/mermaid.core-BlkorXd6.js.br +0 -0
- package/dist/client/assets/mermaid.core-BlkorXd6.js.gz +0 -0
- package/dist/client/assets/{mindmap-definition-YA3MSWOX-CImZ_aI0.js → mindmap-definition-YA3MSWOX-BqKhK1NJ.js} +1 -1
- package/dist/client/assets/mindmap-definition-YA3MSWOX-BqKhK1NJ.js.br +0 -0
- package/dist/client/assets/mindmap-definition-YA3MSWOX-BqKhK1NJ.js.gz +0 -0
- package/dist/client/assets/{passwordBootstrap-f7-mFb1b.js → passwordBootstrap-DLUamTjd.js} +1 -1
- package/dist/client/assets/passwordBootstrap-DLUamTjd.js.br +0 -0
- package/dist/client/assets/passwordBootstrap-DLUamTjd.js.gz +0 -0
- package/dist/client/assets/{pegDiagram-XKGWAZYB-BT4pTf8O.js → pegDiagram-XKGWAZYB-BlWgUklx.js} +1 -1
- package/dist/client/assets/pegDiagram-XKGWAZYB-BlWgUklx.js.br +0 -0
- package/dist/client/assets/pegDiagram-XKGWAZYB-BlWgUklx.js.gz +0 -0
- package/dist/client/assets/{pieDiagram-E7YTZNPT-C5K58ien.js → pieDiagram-E7YTZNPT-Bp32kHHQ.js} +1 -1
- package/dist/client/assets/pieDiagram-E7YTZNPT-Bp32kHHQ.js.br +0 -0
- package/dist/client/assets/pieDiagram-E7YTZNPT-Bp32kHHQ.js.gz +0 -0
- package/dist/client/assets/{quadrantDiagram-AXDQQJYC-DzSugYXz.js → quadrantDiagram-AXDQQJYC-0qeSh9-W.js} +1 -1
- package/dist/client/assets/quadrantDiagram-AXDQQJYC-0qeSh9-W.js.br +0 -0
- package/dist/client/assets/quadrantDiagram-AXDQQJYC-0qeSh9-W.js.gz +0 -0
- package/dist/client/assets/{railroadDiagram-O6MQD6OU-BY07SouQ.js → railroadDiagram-O6MQD6OU-COmWghVD.js} +1 -1
- package/dist/client/assets/railroadDiagram-O6MQD6OU-COmWghVD.js.br +0 -0
- package/dist/client/assets/railroadDiagram-O6MQD6OU-COmWghVD.js.gz +0 -0
- package/dist/client/assets/{rdpSession-RNjO6yLw.js → rdpSession-Bbycnmly.js} +1 -1
- package/dist/client/assets/rdpSession-Bbycnmly.js.br +0 -0
- package/dist/client/assets/rdpSession-Bbycnmly.js.gz +0 -0
- package/dist/client/assets/{referenceLongPress-B9K9yPKR.js → referenceLongPress-CQ9ote5C.js} +1 -1
- package/dist/client/assets/referenceLongPress-CQ9ote5C.js.br +0 -0
- package/dist/client/assets/referenceLongPress-CQ9ote5C.js.gz +0 -0
- package/dist/client/assets/{requirementDiagram-BXWQKSXE-C7WieVuE.js → requirementDiagram-BXWQKSXE-CeohDJAC.js} +1 -1
- package/dist/client/assets/requirementDiagram-BXWQKSXE-CeohDJAC.js.br +0 -0
- package/dist/client/assets/requirementDiagram-BXWQKSXE-CeohDJAC.js.gz +0 -0
- package/dist/client/assets/{sankeyDiagram-P5KCCOFB-BJsDWNs4.js → sankeyDiagram-P5KCCOFB-rA5x9iOw.js} +1 -1
- package/dist/client/assets/sankeyDiagram-P5KCCOFB-rA5x9iOw.js.br +0 -0
- package/dist/client/assets/sankeyDiagram-P5KCCOFB-rA5x9iOw.js.gz +0 -0
- package/dist/client/assets/{sequenceDiagram-WJ2MYXX4-BeJ_7853.js → sequenceDiagram-WJ2MYXX4-Cw2BZ0po.js} +1 -1
- package/dist/client/assets/sequenceDiagram-WJ2MYXX4-Cw2BZ0po.js.br +0 -0
- package/dist/client/assets/sequenceDiagram-WJ2MYXX4-Cw2BZ0po.js.gz +0 -0
- package/dist/client/assets/{sizeCapture-INFHLROL-DOsjXKPV.js → sizeCapture-INFHLROL-Dz1ykd8a.js} +1 -1
- package/dist/client/assets/sizeCapture-INFHLROL-Dz1ykd8a.js.br +0 -0
- package/dist/client/assets/sizeCapture-INFHLROL-Dz1ykd8a.js.gz +0 -0
- package/dist/client/assets/{sparkles-e9SkpP7a.js → sparkles-0HeBLLwx.js} +1 -1
- package/dist/client/assets/{stateDiagram-D77RDMKH-6s709_RT.js → stateDiagram-D77RDMKH-DHfjTfLj.js} +1 -1
- package/dist/client/assets/stateDiagram-D77RDMKH-DHfjTfLj.js.br +0 -0
- package/dist/client/assets/stateDiagram-D77RDMKH-DHfjTfLj.js.gz +0 -0
- package/dist/client/assets/stateDiagram-v2-MP3YSRHH-B9AqPaxQ.js +1 -0
- package/dist/client/assets/{swimlanes-42K2YHIH-5R5dw9_R.js → swimlanes-42K2YHIH-CAJkSUVz.js} +1 -1
- package/dist/client/assets/swimlanes-42K2YHIH-CAJkSUVz.js.br +0 -0
- package/dist/client/assets/swimlanes-42K2YHIH-CAJkSUVz.js.gz +0 -0
- package/dist/client/assets/swimlanesDiagram-VR7AAH4N-DPbqRuWV.js +8 -0
- package/dist/client/assets/{timeline-definition-24CTP7MA-B4YN0lsx.js → timeline-definition-24CTP7MA-plr9yv12.js} +1 -1
- package/dist/client/assets/timeline-definition-24CTP7MA-plr9yv12.js.br +0 -0
- package/dist/client/assets/timeline-definition-24CTP7MA-plr9yv12.js.gz +0 -0
- package/dist/client/assets/{triangle-alert-BzBDJvJX.js → triangle-alert-ibl6FV9I.js} +1 -1
- package/dist/client/assets/{vennDiagram-4TSXK5OY-Wd83SmWI.js → vennDiagram-4TSXK5OY-Cz04de3S.js} +1 -1
- package/dist/client/assets/vennDiagram-4TSXK5OY-Cz04de3S.js.br +0 -0
- package/dist/client/assets/vennDiagram-4TSXK5OY-Cz04de3S.js.gz +0 -0
- package/dist/client/assets/{videoCompression-Bsw--tMn.js → videoCompression-DCsUD6X6.js} +1 -1
- package/dist/client/assets/videoCompression-DCsUD6X6.js.br +0 -0
- package/dist/client/assets/videoCompression-DCsUD6X6.js.gz +0 -0
- package/dist/client/assets/{wardleyDiagram-VM6X3IG4-CGsYvqWN.js → wardleyDiagram-VM6X3IG4-DnT-q6At.js} +1 -1
- package/dist/client/assets/wardleyDiagram-VM6X3IG4-DnT-q6At.js.br +0 -0
- package/dist/client/assets/wardleyDiagram-VM6X3IG4-DnT-q6At.js.gz +0 -0
- package/dist/client/assets/{xychartDiagram-S5SC5T6Z-ednJq1_u.js → xychartDiagram-S5SC5T6Z-C0y08MEX.js} +1 -1
- package/dist/client/assets/xychartDiagram-S5SC5T6Z-C0y08MEX.js.br +0 -0
- package/dist/client/assets/xychartDiagram-S5SC5T6Z-C0y08MEX.js.gz +0 -0
- package/dist/client/index.html +2 -2
- package/dist/client/index.html.br +0 -0
- package/dist/client/index.html.gz +0 -0
- package/dist/client/sw-encrypted-background.js +1 -1
- package/dist/client/sw-encrypted-background.js.br +0 -0
- package/dist/client/sw-encrypted-background.js.gz +0 -0
- package/dist/client/sw.js +1 -1
- package/dist/client/sw.js.br +0 -0
- package/dist/client/sw.js.gz +0 -0
- package/dist/server/agent/collaborationRoutes.js +2 -0
- package/dist/server/entry.js +1 -0
- package/dist/server/federation/relay.js +21 -3
- package/dist/server/federation/runtime.js +7 -1
- package/dist/server/federation/socketDuplex.js +3 -3
- package/dist/server/utils/version.js +2 -0
- package/docs/integrations.md +23 -0
- package/package.json +1 -1
- package/runtime-manifest.json +3 -3
- package/dist/client/assets/App-TPJoJbGD.js.br +0 -0
- package/dist/client/assets/App-TPJoJbGD.js.gz +0 -0
- package/dist/client/assets/ArchitecturePanel-DzVy71gM.js.br +0 -0
- package/dist/client/assets/ArchitecturePanel-DzVy71gM.js.gz +0 -0
- package/dist/client/assets/ChangeWalkthroughPanel-DN7BCzqC.js.br +0 -0
- package/dist/client/assets/ChangeWalkthroughPanel-DN7BCzqC.js.gz +0 -0
- package/dist/client/assets/CollaborationMainWorkspace-B1PZuCC6.js.br +0 -0
- package/dist/client/assets/CollaborationMainWorkspace-B1PZuCC6.js.gz +0 -0
- package/dist/client/assets/CollaborationTaskContent-CG7g1LMH.js +0 -2
- package/dist/client/assets/ComputerControlView-BlI9Ai_k.js.br +0 -0
- package/dist/client/assets/ComputerControlView-BlI9Ai_k.js.gz +0 -0
- package/dist/client/assets/DagPlayground-V0hTKB-S.js.br +0 -0
- package/dist/client/assets/DagPlayground-V0hTKB-S.js.gz +0 -0
- package/dist/client/assets/DiffLab-DEw4y4Hk.js.br +0 -0
- package/dist/client/assets/DiffLab-DEw4y4Hk.js.gz +0 -0
- package/dist/client/assets/DiffReview-Cnnt3TMK.js.br +0 -0
- package/dist/client/assets/DiffReview-Cnnt3TMK.js.gz +0 -0
- package/dist/client/assets/DiffReviewLab-CDXsy0jE.js.br +0 -0
- package/dist/client/assets/DiffReviewLab-CDXsy0jE.js.gz +0 -0
- package/dist/client/assets/DiffViewer-Dh40XiCM.js.br +0 -0
- package/dist/client/assets/DiffViewer-Dh40XiCM.js.gz +0 -0
- package/dist/client/assets/ModelPreview-BEiOgE0G.js.br +0 -0
- package/dist/client/assets/ModelPreview-BEiOgE0G.js.gz +0 -0
- package/dist/client/assets/RightSidebar-DiECnX5D.js.br +0 -0
- package/dist/client/assets/RightSidebar-DiECnX5D.js.gz +0 -0
- package/dist/client/assets/abnfDiagram-VCTEODGH-ByzlUu_B.js.br +0 -0
- package/dist/client/assets/abnfDiagram-VCTEODGH-ByzlUu_B.js.gz +0 -0
- package/dist/client/assets/app-CKAFlgMD.js +0 -35
- package/dist/client/assets/app-CKAFlgMD.js.br +0 -0
- package/dist/client/assets/app-CKAFlgMD.js.gz +0 -0
- package/dist/client/assets/arc-BA6JM6vl.js.br +0 -0
- package/dist/client/assets/arc-BA6JM6vl.js.gz +0 -0
- package/dist/client/assets/architectureDiagram-5GKGNRK7-hCHxOfKw.js.br +0 -0
- package/dist/client/assets/architectureDiagram-5GKGNRK7-hCHxOfKw.js.gz +0 -0
- package/dist/client/assets/blockDiagram-I7D4REHJ-OmEN9hUB.js.br +0 -0
- package/dist/client/assets/blockDiagram-I7D4REHJ-OmEN9hUB.js.gz +0 -0
- package/dist/client/assets/c4Diagram-7LVT6UL2-DfLTv8zh.js.br +0 -0
- package/dist/client/assets/c4Diagram-7LVT6UL2-DfLTv8zh.js.gz +0 -0
- package/dist/client/assets/channel-gcmN0N0m.js +0 -1
- package/dist/client/assets/chunk-F27PBJKO-yxCv2Uqk.js.br +0 -0
- package/dist/client/assets/chunk-F27PBJKO-yxCv2Uqk.js.gz +0 -0
- package/dist/client/assets/chunk-IMKFNOWR-CdPjlb9f.js.br +0 -0
- package/dist/client/assets/chunk-IMKFNOWR-CdPjlb9f.js.gz +0 -0
- package/dist/client/assets/chunk-SVP7TREG-D1tOJung.js.br +0 -0
- package/dist/client/assets/chunk-SVP7TREG-D1tOJung.js.gz +0 -0
- package/dist/client/assets/chunk-TICWLB2K-DZjDfYNw.js.br +0 -0
- package/dist/client/assets/chunk-TICWLB2K-DZjDfYNw.js.gz +0 -0
- package/dist/client/assets/classDiagram-ZZMXUADV-k4BRymfG.js +0 -1
- package/dist/client/assets/classDiagram-v2-VYDZK3BY-k4BRymfG.js +0 -1
- package/dist/client/assets/cose-bilkent-JH36ORCC-C4Wb5lqD.js.br +0 -0
- package/dist/client/assets/cose-bilkent-JH36ORCC-C4Wb5lqD.js.gz +0 -0
- package/dist/client/assets/cynefin-OW5HDTMX-BvWKB1Xk.js.br +0 -0
- package/dist/client/assets/cynefinDiagram-5FMLGOSQ-7tAkHD2P.js.br +0 -0
- package/dist/client/assets/cynefinDiagram-5FMLGOSQ-7tAkHD2P.js.gz +0 -0
- package/dist/client/assets/dagre-GXQ25YYZ-Bs6IPwks.js.br +0 -0
- package/dist/client/assets/dagre-GXQ25YYZ-Bs6IPwks.js.gz +0 -0
- package/dist/client/assets/diagram-S7CK7UJ4-CmYXaTya.js.br +0 -0
- package/dist/client/assets/diagram-S7CK7UJ4-CmYXaTya.js.gz +0 -0
- package/dist/client/assets/diagram-UQ7AKVKN-CqxoefB7.js.br +0 -0
- package/dist/client/assets/diagram-UQ7AKVKN-CqxoefB7.js.gz +0 -0
- package/dist/client/assets/diagram-VSXAHHWV-Dxp1MKPT.js.br +0 -0
- package/dist/client/assets/diagram-VSXAHHWV-Dxp1MKPT.js.gz +0 -0
- package/dist/client/assets/diagram-VX7I27RA-BKbWvvEr.js.br +0 -0
- package/dist/client/assets/diagram-VX7I27RA-BKbWvvEr.js.gz +0 -0
- package/dist/client/assets/diagram-Z3DM3KII-BZnNaP7F.js.br +0 -0
- package/dist/client/assets/diagram-Z3DM3KII-BZnNaP7F.js.gz +0 -0
- package/dist/client/assets/ebnfDiagram-PWID7BFC-BXVlN_P7.js.br +0 -0
- package/dist/client/assets/ebnfDiagram-PWID7BFC-BXVlN_P7.js.gz +0 -0
- package/dist/client/assets/erDiagram-RLTQ6QDP-CEdYDZU7.js.br +0 -0
- package/dist/client/assets/erDiagram-RLTQ6QDP-CEdYDZU7.js.gz +0 -0
- package/dist/client/assets/flowDiagram-HODETNUW-Bbw8GPCZ.js.br +0 -0
- package/dist/client/assets/flowDiagram-HODETNUW-Bbw8GPCZ.js.gz +0 -0
- package/dist/client/assets/ganttDiagram-EL5Y4UJY-CcFbtP2y.js.br +0 -0
- package/dist/client/assets/ganttDiagram-EL5Y4UJY-CcFbtP2y.js.gz +0 -0
- package/dist/client/assets/gestureArbiter-sdzs-66-.js.br +0 -0
- package/dist/client/assets/gestureArbiter-sdzs-66-.js.gz +0 -0
- package/dist/client/assets/gitGraphDiagram-WWUBYQGX-Eiust154.js.br +0 -0
- package/dist/client/assets/gitGraphDiagram-WWUBYQGX-Eiust154.js.gz +0 -0
- package/dist/client/assets/index-DtPsPZ7W.css +0 -1
- package/dist/client/assets/index-DtPsPZ7W.css.br +0 -0
- package/dist/client/assets/ishikawaDiagram-5VMMS53U-qTwgXfx_.js.br +0 -0
- package/dist/client/assets/ishikawaDiagram-5VMMS53U-qTwgXfx_.js.gz +0 -0
- package/dist/client/assets/journeyDiagram-3NMN7TZE-DKy1msWo.js.br +0 -0
- package/dist/client/assets/journeyDiagram-3NMN7TZE-DKy1msWo.js.gz +0 -0
- package/dist/client/assets/kanban-definition-UXKFOSKX-BxibybDd.js.br +0 -0
- package/dist/client/assets/kanban-definition-UXKFOSKX-BxibybDd.js.gz +0 -0
- package/dist/client/assets/layout-Bh6fKHRM.js.br +0 -0
- package/dist/client/assets/layout-Bh6fKHRM.js.gz +0 -0
- package/dist/client/assets/linear-SRlL3VWX.js.br +0 -0
- package/dist/client/assets/linear-SRlL3VWX.js.gz +0 -0
- package/dist/client/assets/mermaid.core-D0bcNdw3.js.br +0 -0
- package/dist/client/assets/mermaid.core-D0bcNdw3.js.gz +0 -0
- package/dist/client/assets/mindmap-definition-YA3MSWOX-CImZ_aI0.js.br +0 -0
- package/dist/client/assets/mindmap-definition-YA3MSWOX-CImZ_aI0.js.gz +0 -0
- package/dist/client/assets/passwordBootstrap-f7-mFb1b.js.br +0 -0
- package/dist/client/assets/passwordBootstrap-f7-mFb1b.js.gz +0 -0
- package/dist/client/assets/pegDiagram-XKGWAZYB-BT4pTf8O.js.br +0 -0
- package/dist/client/assets/pegDiagram-XKGWAZYB-BT4pTf8O.js.gz +0 -0
- package/dist/client/assets/pieDiagram-E7YTZNPT-C5K58ien.js.br +0 -0
- package/dist/client/assets/pieDiagram-E7YTZNPT-C5K58ien.js.gz +0 -0
- package/dist/client/assets/quadrantDiagram-AXDQQJYC-DzSugYXz.js.br +0 -0
- package/dist/client/assets/quadrantDiagram-AXDQQJYC-DzSugYXz.js.gz +0 -0
- package/dist/client/assets/railroadDiagram-O6MQD6OU-BY07SouQ.js.br +0 -0
- package/dist/client/assets/railroadDiagram-O6MQD6OU-BY07SouQ.js.gz +0 -0
- package/dist/client/assets/rdpSession-RNjO6yLw.js.br +0 -0
- package/dist/client/assets/rdpSession-RNjO6yLw.js.gz +0 -0
- package/dist/client/assets/referenceLongPress-B9K9yPKR.js.br +0 -0
- package/dist/client/assets/referenceLongPress-B9K9yPKR.js.gz +0 -0
- package/dist/client/assets/requirementDiagram-BXWQKSXE-C7WieVuE.js.br +0 -0
- package/dist/client/assets/requirementDiagram-BXWQKSXE-C7WieVuE.js.gz +0 -0
- package/dist/client/assets/sankeyDiagram-P5KCCOFB-BJsDWNs4.js.br +0 -0
- package/dist/client/assets/sankeyDiagram-P5KCCOFB-BJsDWNs4.js.gz +0 -0
- package/dist/client/assets/sequenceDiagram-WJ2MYXX4-BeJ_7853.js.br +0 -0
- package/dist/client/assets/sequenceDiagram-WJ2MYXX4-BeJ_7853.js.gz +0 -0
- package/dist/client/assets/sizeCapture-INFHLROL-DOsjXKPV.js.br +0 -0
- package/dist/client/assets/sizeCapture-INFHLROL-DOsjXKPV.js.gz +0 -0
- package/dist/client/assets/stateDiagram-D77RDMKH-6s709_RT.js.br +0 -0
- package/dist/client/assets/stateDiagram-D77RDMKH-6s709_RT.js.gz +0 -0
- package/dist/client/assets/stateDiagram-v2-MP3YSRHH-B43A9Hsz.js +0 -1
- package/dist/client/assets/swimlanes-42K2YHIH-5R5dw9_R.js.br +0 -0
- package/dist/client/assets/swimlanes-42K2YHIH-5R5dw9_R.js.gz +0 -0
- package/dist/client/assets/swimlanesDiagram-VR7AAH4N-DoFbqN_4.js +0 -8
- package/dist/client/assets/timeline-definition-24CTP7MA-B4YN0lsx.js.br +0 -0
- package/dist/client/assets/timeline-definition-24CTP7MA-B4YN0lsx.js.gz +0 -0
- package/dist/client/assets/vennDiagram-4TSXK5OY-Wd83SmWI.js.br +0 -0
- package/dist/client/assets/vennDiagram-4TSXK5OY-Wd83SmWI.js.gz +0 -0
- package/dist/client/assets/videoCompression-Bsw--tMn.js.br +0 -0
- package/dist/client/assets/videoCompression-Bsw--tMn.js.gz +0 -0
- package/dist/client/assets/wardleyDiagram-VM6X3IG4-CGsYvqWN.js.br +0 -0
- package/dist/client/assets/wardleyDiagram-VM6X3IG4-CGsYvqWN.js.gz +0 -0
- package/dist/client/assets/xychartDiagram-S5SC5T6Z-ednJq1_u.js.br +0 -0
- package/dist/client/assets/xychartDiagram-S5SC5T6Z-ednJq1_u.js.gz +0 -0
|
Binary file
|
|
Binary file
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/mermaid.core-
|
|
2
|
-
import{ah as Br,dg as ht,bA as e,h as Po,cv as Gd,ar as Zu,_ as Ln,bI as ef,L as ft,e as hs,X as Lt,dm as V,du as At,bV as gt,a as ca,b3 as tf,C as Ao,d as da,dc as ra,dd as vl,U as Kd,c_ as Xm,cA as Jm,bl as Qm,O as Vs,aA as Zm,bs as ep,bu as Ul,bv as tp,bw as Hl,bt as Ys,aQ as rp,E as np,k as sp,bp as ap,bX as op,bZ as ip,b_ as lp,bg as cp,bY as qd,N as jt,g as dp,j as Yi,I as up,b as fp,de as Xi,bf as Vd,aK as Yd,aG as hp,aU as Ji,aV as Xd,dv as aa,ax as Xs,aW as mp,bN as pp,cX as Jd,aN as gp,da as bp,cq as xp,dn as Qr,aZ as vp,a2 as Qd,a1 as wp,aH as Zd,aM as yp,aS as eu,cs as kp,z as tu,l as ru,r as nu,J as rf,av as nf,ci as Sp,ds as jp,n as Rp}from"./app-CKAFlgMD.js";import{b as a,r as yr}from"./dnd-BCFAPC0L.js";import{i as zl,F as Np,O as sf,y as Cp,s as su,Q as au,W as Ro,m as Ep,aj as af,Z as Mp,x as $p,I as Pp,t as Ap,M as Lp,R as No,a6 as of,a7 as Tp,S as ms,n as lf,g as Ip,ap as cf,A as Qi,am as Dp,aa as Zi,ak as Pn,a8 as Fp,a9 as ou,an as _p,ac as iu,r as lu,k as cu,E as el,B as mo,h as Bp,T as Op,z as Up,N as du,Y as Hp,q as zp,U as Wp,o as uu,C as Gp,c as Kp,G as qp,f as Vp}from"./App-TPJoJbGD.js";import{F as wl,a as fu,S as hu,b as df,c as yl}from"./gestureArbiter-sdzs-66-.js";import{D as kl,C as oa,L as uf,f as Yp,n as Xp}from"./DiffReview-Cnnt3TMK.js";import{T as Jp,L as Lo,M as ff,G as xr}from"./triangle-alert-BzBDJvJX.js";import{S as ua}from"./sparkles-e9SkpP7a.js";import{C as hf,M as mf}from"./ChangeWalkthroughPanel-DN7BCzqC.js";import{r as pf,s as gf,l as bf,a as mu,h as Sl,u as Qp,g as jl,b as xf}from"./DiffViewer-Dh40XiCM.js";import{u as vf,G as wf}from"./referenceLongPress-B9K9yPKR.js";const Zp=[["path",{d:"m2 16 4.039-9.69a.5.5 0 0 1 .923 0L11 16",key:"d5nyq2"}],["path",{d:"M22 9v7",key:"pvm9v3"}],["path",{d:"M3.304 13h6.392",key:"1q3zxz"}],["circle",{cx:"18.5",cy:"12.5",r:"3.5",key:"z97x68"}]],eg=Br("case-sensitive",Zp);const tg=[["path",{d:"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49",key:"ct8e1f"}],["path",{d:"M14.084 14.158a3 3 0 0 1-4.242-4.242",key:"151rxh"}],["path",{d:"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143",key:"13bj9a"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]],rg=Br("eye-off",tg);const ng=[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]],Rl=Br("eye",ng);const sg=[["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 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]],Nl=Br("file-text",sg);const ag=[["path",{d:"M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z",key:"sc7q7i"}]],og=Br("funnel",ag);const ig=[["path",{d:"M16 5h6",key:"1vod17"}],["path",{d:"M19 2v6",key:"4bpg5p"}],["path",{d:"M21 11.5V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h7.5",key:"1ue2ih"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}]],lg=Br("image-plus",ig);const cg=[["path",{d:"M17 3v10",key:"15fgeh"}],["path",{d:"m12.67 5.5 8.66 5",key:"1gpheq"}],["path",{d:"m12.67 10.5 8.66-5",key:"1dkfa6"}],["path",{d:"M9 17a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v2a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2v-2z",key:"swwfx4"}]],dg=Br("regex",cg);const ug=[["path",{d:"M3 7V5a2 2 0 0 1 2-2h2",key:"aa7l1z"}],["path",{d:"M17 3h2a2 2 0 0 1 2 2v2",key:"4qcy5o"}],["path",{d:"M21 17v2a2 2 0 0 1-2 2h-2",key:"6vwrx8"}],["path",{d:"M7 21H5a2 2 0 0 1-2-2v-2",key:"ioqczr"}]],fg=Br("scan",ug);const hg=[["circle",{cx:"7",cy:"12",r:"3",key:"12clwm"}],["path",{d:"M10 9v6",key:"17i7lo"}],["circle",{cx:"17",cy:"12",r:"3",key:"gl7c2s"}],["path",{d:"M14 7v8",key:"dl84cr"}],["path",{d:"M22 17v1c0 .5-.5 1-1 1H3c-.5 0-1-.5-1-1v-1",key:"lt2kga"}]],mg=Br("whole-word",hg),pg=100,gg=5e5,bg=1e4,pu=16384,xg=32,vg=1e5;class cs extends Error{constructor(n){super(`Markdown preview parsing stopped: ${n}`),this.reason=n,this.name="MarkdownParseError"}reason}class wg{startedAt=performance.now();operations=0;depth=0;check(){if(++this.operations>vg)throw new cs("complexity");if(performance.now()-this.startedAt>=pg)throw new cs("timeout")}validateLines(n){if(n.length>bg)throw new cs("size");let s=0;for(const l of n)if(this.check(),s+=l.length+1,s>gg||l.length>pu)throw new cs("size")}validateInline(n){if(this.check(),n.length>pu)throw new cs("size")}nested(n){if(this.check(),this.depth>=xg)throw new cs("depth");this.depth+=1;try{return n()}finally{this.depth-=1}}}const gu=new RegExp(`(\\\\\\([^)]*\\\\\\)|\\$[^$\\n]+\\$|<br\\s*\\/?>|<\\s*img\\b[^>]*>|<\\s*video\\b[^>]*>[\\s\\S]*?<\\/video\\s*>|<(?:a|abbr|span|b|strong|em|i|u|s|del|code|kbd|mark|sub|sup)\\b[\\s\\S]*?<\\/(?:a|abbr|span|b|strong|em|i|u|s|del|code|kbd|mark|sub|sup)>|!?\\[[^\\]]*\\]\\((?:<[^>]+>|(?:[^\\s()]|\\([^()\\s]*\\))+)(?:\\s+(?:"[^"]*"|'[^']*'|\\([^)]*\\)))?\\)|!?\\[[^\\]]+\\]\\[[^\\]]*\\]|!?\\[[^\\]]+\\]|\\[\\^[^\\]]+\\]|~~[^~]+~~|\\*\\*[^*]+\\*\\*|(?<![\\p{L}\\p{N}_])__[^_]+__(?![\\p{L}\\p{N}_])|\\*[^*\\s][^*]*\\*|(?<![\\p{L}\\p{N}_])_[^_\\s][^_]*_(?![\\p{L}\\p{N}_])|<https?:\\/\\/[^>\\s]+>|<[^\\s@<>]+@[^\\s@<>]+\\.[^\\s@<>]+>|https?:\\/\\/[^\\s<]+|www\\.[^\\s<]+|[^\\s@<>]+@[^\\s@<>]+\\.[^\\s@<>]+)`,"iyu");function yg(r,n,s){let l=n;for(;r[l]==="`";)l+=1;const d=l-n;let c=l;for(;c<r.length;){s.check();const m=r.indexOf("`",c);if(m<0)return null;for(c=m;r[c]==="`";)c+=1;if(c-m===d)return c}return null}function*kg(r,n){n.validateInline(r);const s=new RegExp(gu.source,gu.flags);let l=0;for(;l<r.length;){if(n.check(),r[l]==="`"){const c=yg(r,l,n);if(c!==null)yield{index:l,token:r.slice(l,c)},l=c;else for(;r[l]==="`";)l+=1;continue}s.lastIndex=l;const d=s.exec(r);n.check(),d?(yield{index:l,token:d[0]},l=s.lastIndex):l+=(r.codePointAt(l)??0)>65535?2:1}}function bu({children:r,actions:n}){const{t:s}=ht(),[l,d]=a.useState(!1),c=a.useId(),m=a.useRef(null),g=a.useRef(null),h=()=>{d(!1),m.current?.focus({preventScroll:!0})};return a.useLayoutEffect(()=>{if(!l)return;const p=m.current,x=g.current;if(!p||!x)return;const f=window.visualViewport,b=()=>{const j=p.getBoundingClientRect(),T=(f?.offsetLeft??0)+8,D=(f?.offsetTop??0)+8,F=Math.max(0,(f?.width??window.innerWidth)-16),M=D+(f?.height??window.innerHeight)-16,N=Math.min(240,F),A=Math.max(0,j.top-D-6),_=Math.max(0,M-j.bottom-6),q=x.scrollHeight>_&&A>_;Object.assign(x.style,{width:`${N}px`,left:`${Math.max(T,Math.min(j.right-N,T+F-N))}px`,top:`${q?j.top-6:j.bottom+6}px`,maxHeight:`${q?A:_}px`,transform:q?"translateY(-100%)":"none"})};b();const E=typeof ResizeObserver>"u"?null:new ResizeObserver(b);return E?.observe(p),E?.observe(x),window.addEventListener("resize",b),window.addEventListener("scroll",b,!0),f?.addEventListener("resize",b),f?.addEventListener("scroll",b),()=>{E?.disconnect(),window.removeEventListener("resize",b),window.removeEventListener("scroll",b,!0),f?.removeEventListener("resize",b),f?.removeEventListener("scroll",b)}},[l]),a.useEffect(()=>{if(!l)return;g.current?.querySelector("button:not(:disabled)")?.focus({preventScroll:!0});const p=x=>{x.target instanceof Node&&!m.current?.contains(x.target)&&!g.current?.contains(x.target)&&d(!1)};return document.addEventListener("pointerdown",p),()=>document.removeEventListener("pointerdown",p)},[l]),e.jsxs("div",{className:"mt-2",children:[e.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-1.5",children:[r,e.jsxs("button",{ref:m,type:"button","aria-haspopup":"menu","aria-expanded":l,"aria-controls":l?c:void 0,onClick:()=>d(p=>!p),onKeyDown:p=>{(p.key==="ArrowDown"||p.key==="ArrowUp")&&(p.preventDefault(),d(!0))},className:`ml-auto inline-flex h-8 shrink-0 items-center gap-1.5 whitespace-nowrap rounded-md px-2 text-[11px] font-medium transition focus-visible:outline focus-visible:outline-2 focus-visible:outline-primary ${l?"bg-surface-2 text-foreground":"text-muted-foreground hover:bg-surface-2 hover:text-foreground"}`,children:[e.jsx(Po,{size:14}),s("sidebar.moreActions")]})]}),typeof document<"u"&&yr.createPortal(e.jsx("div",{ref:g,id:c,hidden:!l,role:"menu","data-sidebar-gesture-ignore":!0,"aria-label":s("sidebar.moreActions"),className:"fixed z-menu-panel overflow-y-auto overscroll-contain rounded-lg border border-border/30 bg-surface p-1 shadow-[0_8px_24px_var(--app-shadow-soft)]",onKeyDown:p=>{if(!p.currentTarget.contains(p.target))return;const x=[...p.currentTarget.querySelectorAll("button:not(:disabled)")],f=x.indexOf(document.activeElement);let b;if(p.key==="Escape"){p.preventDefault(),p.stopPropagation(),h();return}if(p.key==="Tab"){h();return}if(p.key==="ArrowDown")b=(f+1)%x.length;else if(p.key==="ArrowUp")b=(f-1+x.length)%x.length;else if(p.key==="Home")b=0;else if(p.key==="End")b=x.length-1;else return;p.preventDefault(),x[b]?.focus({preventScroll:!0})},children:n(h)}),document.body)]})}const tl="a[href],button,input,select,textarea,[tabindex],[contenteditable],iframe,summary,audio[controls],video[controls]",ds=a.memo(function({active:n,mounted:s=!0,fallback:l=null,children:d}){const c=a.useRef(null);return a.useLayoutEffect(()=>{const m=c.current;if(!m||n)return;const g=new Map,h=f=>{g.has(f)||(g.set(f,f.inert),f.inert=!0)},p=f=>{f instanceof HTMLElement&&f.matches(tl)&&h(f),f.querySelectorAll(tl).forEach(h)};p(m);const x=new MutationObserver(f=>{for(const b of f)b.type==="attributes"?b.target instanceof HTMLElement&&b.target.matches(tl)&&h(b.target):b.addedNodes.forEach(E=>{E instanceof Element&&p(E)})});return x.observe(m,{subtree:!0,childList:!0,attributes:!0,attributeFilter:["tabindex","href","contenteditable","controls"]}),()=>{x.disconnect();for(const[f,b]of g)f.inert=b}},[n,s]),e.jsx("div",{ref:c,className:"absolute inset-0 min-h-0 overflow-hidden bg-surface text-foreground",style:n?void 0:{clipPath:"inset(100%)"},"aria-hidden":!n,children:s?typeof d=="function"?d():d:l})},(r,n)=>!r.active&&!n.active&&r.mounted===n.mounted);async function Sg(r){let n;try{await Promise.race([r(),new Promise(s=>{n=setTimeout(s,3e3)})])}catch{}finally{clearTimeout(n)}}function jg({active:r,rootPath:n,loading:s,delay:l,lastStartedRoot:d,load:c}){a.useEffect(()=>{if(!r||!n||s||d.current===n)return;const m=window.setTimeout(()=>{d.current=n,c(n)},l);return()=>window.clearTimeout(m)},[r,n,s,l,d,c])}async function Rg(r){if(r.kind==="mermaid"){await Gd(new Blob([r.svg],{type:"image/svg+xml"}),"mermaid.svg");return}const n=new URL(r.src,window.location.href);if(n.origin===window.location.origin&&n.pathname==="/api/terminal/fs/blob"){const c=n.searchParams.get("path");if(!c)throw new Error("Missing image path");await Zu(c);return}const s=await fetch(r.src);if(!s.ok)throw new Error(`HTTP ${s.status}`);const l=await s.blob(),d=decodeURIComponent(n.pathname.split("/").pop()||"")||`image.${{"image/svg+xml":"svg","image/jpeg":"jpg","image/webp":"webp","image/gif":"gif"}[l.type]||"png"}`;await Gd(l,d)}let po=null,xu=!1;function Ng(){return po||(po=Ln(()=>import("./mermaid.core-D0bcNdw3.js").then(r=>r.bl),__vite__mapDeps([0,1,2,3,4,5,6])).then(r=>r.default??r).catch(r=>{throw po=null,r})),po}function Cg(r){xu||(r.initialize({startOnLoad:!1,securityLevel:"strict",theme:"neutral"}),xu=!0)}function Eg({rootPath:r,paths:n,disabled:s,onChange:l}){const{t:d}=ht(),[c,m]=a.useState(""),[g,h]=a.useState(0),[p,x]=a.useState(null),[f,b]=a.useState(!1),[E,j]=a.useState(!1),T=`${r.replace(/[\\/]+$/,"")}/${c}`;a.useEffect(()=>{const N=new AbortController;return x(null),b(!1),ef(T,N.signal,!0,"pick_git_ignore_exception").then(A=>{N.signal.aborted||x({directory:c,entries:A.entries,truncated:!!A.truncated})}).catch(()=>{N.signal.aborted||b(!0)}),()=>N.abort()},[T,c,g]);const D=N=>{x(null),b(!1),m(N)},F=p?.directory===c,M=N=>{if(N.length>200){j(!0);return}j(!1),l(N)};return e.jsxs("div",{className:"flex flex-col gap-3",children:[e.jsxs("div",{className:"overflow-hidden rounded-lg border border-border/30 bg-surface-2",children:[e.jsxs("div",{className:"flex items-center gap-2 border-b border-border/20 p-2",children:[e.jsx("button",{type:"button",disabled:s||!c,onClick:()=>D(c.slice(0,Math.max(0,c.lastIndexOf("/")))),"aria-label":d("rightSidebar.parentFolder"),className:"inline-flex h-8 w-8 shrink-0 items-center justify-center rounded-md text-muted-foreground hover:bg-surface-elevated hover:text-foreground disabled:opacity-30",children:e.jsx(zl,{size:14})}),e.jsx("button",{type:"button",disabled:s||!c,onClick:()=>D(""),"aria-label":d("rightSidebar.backToProjectRoot"),className:"inline-flex h-8 w-8 shrink-0 items-center justify-center rounded-md text-muted-foreground hover:bg-surface-elevated hover:text-foreground disabled:opacity-30",children:e.jsx(wl,{size:14})}),e.jsx("span",{className:"min-w-0 flex-1 truncate font-mono text-xs",title:T,children:c||"./"})]}),e.jsxs("div",{className:"h-56 overflow-y-auto overscroll-contain p-1",role:"group","aria-label":d("rightSidebar.gitIgnoreExceptionsPaths"),"aria-busy":!F&&!f,children:[f?e.jsxs("div",{className:"flex flex-col items-center gap-2 p-4 text-center text-xs",children:[e.jsx("p",{role:"alert",className:"text-destructive",children:d("rightSidebar.gitIgnoreExceptionsLoadFailed")}),e.jsx("button",{type:"button",disabled:s,onClick:()=>{b(!1),h(N=>N+1)},className:"rounded-md px-3 py-2 text-primary hover:bg-surface-elevated disabled:opacity-40",children:d("common.retry")})]}):F?p.entries.length===0?e.jsx("p",{className:"p-4 text-center text-xs text-muted-foreground",children:d("rightSidebar.gitIgnoreExceptionsEmptyDirectory")}):p.entries.map(N=>{const A=c?`${c}/${N.name}`:N.name,_=A+(N.type==="directory"?"/":""),q=n.includes(_)||n.includes(A),S=n.some(B=>B.endsWith("/")&&A.startsWith(B)),o=N.type==="directory"?wl:Np;return e.jsxs("div",{className:"flex items-center gap-1 rounded-md hover:bg-surface-elevated",children:[e.jsxs("label",{className:"flex min-h-10 min-w-0 flex-1 cursor-pointer items-center gap-2 px-2 text-xs",children:[e.jsx("input",{type:"checkbox",checked:q||S,disabled:s||S,onChange:()=>M(q?n.filter(B=>B!==_&&B!==A):[...n,_]),className:"h-4 w-4 shrink-0 accent-[var(--primary)] disabled:opacity-40"}),e.jsx(o,{size:14,className:"shrink-0 text-muted-foreground"}),e.jsx("span",{className:"truncate",title:N.name,children:N.name})]}),N.type==="directory"&&e.jsx("button",{type:"button",disabled:s,onClick:()=>D(A),"aria-label":d("rightSidebar.gitIgnoreExceptionsOpenDirectory",{name:N.name}),className:"inline-flex h-10 w-10 shrink-0 items-center justify-center rounded-md text-muted-foreground hover:bg-surface hover:text-foreground disabled:opacity-40",children:e.jsx(hs,{size:15})})]},N.name)}):e.jsx("div",{className:"flex h-full items-center justify-center",children:e.jsx(ft,{size:18})}),F&&p.truncated&&e.jsx("p",{className:"px-2 py-3 text-xs text-muted-foreground",children:d("rightSidebar.gitIgnoreExceptionsTruncated")})]})]}),e.jsxs("div",{className:"flex items-center justify-between gap-2 text-xs",children:[e.jsx("span",{className:"font-medium",children:d("rightSidebar.gitIgnoreExceptionsSelected",{count:n.length})}),e.jsx("button",{type:"button",disabled:s||n.length===0,onClick:()=>M([]),className:"rounded-md px-2 py-1 text-muted-foreground hover:bg-surface-2 hover:text-foreground disabled:opacity-40",children:d("rightSidebar.gitIgnoreExceptionsClear")})]}),n.length>0&&e.jsx("ul",{className:"max-h-24 overflow-y-auto overscroll-contain",children:n.map(N=>e.jsxs("li",{className:"flex items-center gap-2 rounded-md pl-2 text-xs hover:bg-surface-2",children:[e.jsx("span",{className:"min-w-0 flex-1 truncate font-mono",title:N,children:N}),e.jsx("button",{type:"button",disabled:s,onClick:()=>M(n.filter(A=>A!==N)),"aria-label":d("rightSidebar.gitIgnoreExceptionsRemove",{path:N}),className:"inline-flex h-8 w-8 shrink-0 items-center justify-center rounded-md text-muted-foreground hover:bg-surface-elevated hover:text-foreground disabled:opacity-40",children:e.jsx(Lt,{size:13})})]},N))}),E&&e.jsx("p",{role:"alert",className:"text-xs text-destructive",children:d("rightSidebar.gitIgnoreExceptionsInvalid")})]})}function Mg({rootPath:r,disabled:n,pressed:s,saving:l,onToggle:d}){const{t:c}=ht(),m=a.useId(),g=a.useRef(null),h=a.useRef(null),p=a.useRef(null),x=a.useRef(null),f=a.useRef(!1),[b,E]=a.useState(!1),[j,T]=a.useState([]),[D,F]=a.useState(!1),[M,N]=a.useState(null),A=V(I=>I.setGitIgnoreExceptions),_=()=>{p.current!==null&&clearTimeout(p.current),p.current=null,x.current=null},q=()=>{_(),!(n||D||!r)&&(T([...V.getState().gitIgnoreExceptions[r]??[]]),N(null),E(!0))},S=()=>{D||E(!1)},o=I=>{_(),f.current=!1,!(I.button!==0||!I.isPrimary||n)&&(I.currentTarget.setPointerCapture(I.pointerId),x.current={x:I.clientX,y:I.clientY},p.current=setTimeout(()=>{f.current=!0,q()},450))};a.useEffect(()=>(E(!1),_(),_),[r]),a.useEffect(()=>{if(b)return h.current?.focus(),()=>g.current?.focus()},[b]);const B=c(s?"rightSidebar.showGitIgnoredFiles":"rightSidebar.hideGitIgnoredFiles");return e.jsxs(e.Fragment,{children:[e.jsx("button",{ref:g,type:"button",disabled:n||D,"aria-pressed":s,"aria-label":B,"aria-description":c("rightSidebar.gitIgnoreConfigureHint"),title:`${B} · ${c("rightSidebar.gitIgnoreConfigureHint")}`,onClick:I=>{if(f.current&&I.detail!==0){f.current=!1,I.preventDefault();return}d()},onContextMenu:I=>{I.preventDefault(),f.current=!0,b||q()},onPointerDown:o,onPointerMove:I=>{const Y=x.current;Y&&Math.hypot(I.clientX-Y.x,I.clientY-Y.y)>10&&_()},onPointerUp:_,onPointerCancel:_,onLostPointerCapture:_,className:`inline-flex h-7 w-7 shrink-0 select-none items-center justify-center rounded-md transition active:scale-95 disabled:cursor-not-allowed disabled:opacity-35 [-webkit-touch-callout:none] ${s?"bg-surface-2 text-primary hover:bg-surface-elevated":"text-muted-foreground hover:bg-surface-2 hover:text-foreground"}`,children:l?e.jsx(ft,{size:14}):e.jsx(og,{size:14})}),b&&yr.createPortal(e.jsx("div",{className:"fixed inset-0 z-modal-backdrop flex items-center justify-center bg-[var(--app-backdrop)] p-3 backdrop-blur-sm",onClick:S,children:e.jsxs("form",{ref:h,role:"dialog",tabIndex:-1,"aria-modal":"true","aria-labelledby":`${m}-title`,"aria-describedby":`${m}-hint`,className:"relative z-modal-panel flex max-h-[80dvh] w-full max-w-lg flex-col gap-3 overflow-y-auto rounded-xl border border-border/20 bg-surface p-4 text-foreground shadow-2xl",onClick:I=>I.stopPropagation(),onKeyDown:I=>{if(I.key==="Escape"&&(I.preventDefault(),I.stopPropagation(),S()),I.key==="Tab"){const Y=Array.from(h.current?.querySelectorAll("button:not(:disabled), input:not(:disabled)")??[]);if(!Y.length){I.preventDefault(),h.current?.focus();return}const H=Y[0],U=Y[Y.length-1];I.shiftKey&&document.activeElement===H&&(I.preventDefault(),U?.focus()),document.activeElement===h.current?(I.preventDefault(),(I.shiftKey?U:H)?.focus()):!I.shiftKey&&document.activeElement===U&&(I.preventDefault(),H?.focus())}},onSubmit:I=>{if(I.preventDefault(),!(!r||D)){if(j.length>200){N(c("rightSidebar.gitIgnoreExceptionsInvalid"));return}F(!0),N(null),A(r,j).then(()=>E(!1)).catch(()=>N(c("rightSidebar.gitIgnoreExceptionsSaveFailed"))).finally(()=>F(!1))}},children:[e.jsxs("div",{className:"flex items-center justify-between gap-3",children:[e.jsx("h2",{id:`${m}-title`,className:"text-sm font-medium",children:c("rightSidebar.gitIgnoreExceptionsTitle")}),e.jsx("button",{type:"button",disabled:D,onClick:S,"aria-label":c("common.close"),className:"inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-md text-muted-foreground hover:bg-surface-2 hover:text-foreground disabled:opacity-40",children:e.jsx(Lt,{size:16})})]}),e.jsx("p",{className:"truncate text-xs text-muted-foreground",title:r??void 0,children:r}),e.jsx("p",{id:`${m}-hint`,className:"text-xs leading-relaxed text-muted-foreground",children:c("rightSidebar.gitIgnoreExceptionsHint")}),e.jsx("p",{className:"text-xs font-medium",children:c("rightSidebar.gitIgnoreExceptionsPaths")}),r&&e.jsx(Eg,{rootPath:r,paths:j,onChange:T,disabled:D}),M&&e.jsx("p",{role:"alert",className:"text-xs text-destructive",children:M}),e.jsxs("div",{className:"flex justify-end gap-2",children:[e.jsx("button",{type:"button",disabled:D,onClick:S,className:"rounded-lg px-3 py-2 text-xs text-muted-foreground hover:bg-surface-2 disabled:opacity-40",children:c("common.cancel")}),e.jsxs("button",{type:"submit",disabled:D,className:"inline-flex items-center gap-2 rounded-lg bg-primary px-3 py-2 text-xs font-medium text-primary-foreground disabled:opacity-50",children:[D&&e.jsx(ft,{size:13}),c("common.save")]})]})]})}),document.body)]})}function $g(r,n,s){try{const l=r instanceof HTMLImageElement?r.naturalWidth:r.width,d=r instanceof HTMLImageElement?r.naturalHeight:r.height;if(!l||!d)return Promise.resolve(null);const c=r instanceof HTMLImageElement?1400/Math.max(l,d):Math.min(1,1400/Math.max(l,d)),m=document.createElement("canvas");m.width=Math.max(1,Math.round(l*c)),m.height=Math.max(1,Math.round(d*c));const g=m.getContext("2d");if(!g)return Promise.resolve(null);const h=getComputedStyle(document.documentElement);if(g.fillStyle=h.getPropertyValue("--surface").trim()||"white",g.fillRect(0,0,m.width,m.height),g.drawImage(r,0,0,m.width,m.height),s){const p=Math.max(10,Math.min(16,m.width/35));g.font=`${p}px sans-serif`;const x=[];let f="";for(const b of s.split(" "))f&&g.measureText(`${f} ${b}`).width>m.width-20?(x.push(f),f=b):f=f?`${f} ${b}`:b;f&&x.push(f),g.fillStyle=h.getPropertyValue("--surface").trim()||"white",g.fillRect(0,0,m.width,x.length*(p+4)+12),g.fillStyle=h.getPropertyValue("--foreground").trim()||"black",x.forEach((b,E)=>g.fillText(b,10,8+p+E*(p+4)))}if(n){const p=n.xPercent*m.width/100,x=n.yPercent*m.height/100,f=Math.max(4,Math.min(12,Math.min(m.width,m.height)*.015)),b=f*1.6;g.strokeStyle=h.getPropertyValue("--primary").trim()||"black",g.lineWidth=Math.max(1,f/3),g.beginPath(),g.arc(p,x,f,0,Math.PI*2),g.stroke(),g.beginPath(),g.moveTo(p-b,x),g.lineTo(p+b,x),g.moveTo(p,x-b),g.lineTo(p,x+b),g.stroke()}return new Promise(p=>m.toBlob(p,"image/png"))}catch{return Promise.resolve(null)}}function Pg(r,n,s,l){return[r.trim(),n.trim(),l?`截图:${l}`:""].filter(Boolean).join(`
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/mermaid.core-BlkorXd6.js","assets/app-BB0CAQ8D.js","assets/react-XDCjal2T.js","assets/dnd-BCFAPC0L.js","assets/terminal-Dea8wJF3.js","assets/index-3lPto_1X.css","assets/purify.es-4eNOHKSq.js","assets/ModelPreview-Cv6JgunE.js","assets/App-BiDKeTpx.js","assets/gestureArbiter-C8TBuoU3.js","assets/gestureArbiter-C2J0D0kV.css","assets/triangle-alert-ibl6FV9I.js","assets/referenceLongPress-CQ9ote5C.js","assets/DiffReview-DkEi5c3c.js","assets/sparkles-0HeBLLwx.js","assets/DiffViewer-3JGF6U0m.js","assets/DiffViewer-T3uj2-aP.css","assets/ChangeWalkthroughPanel-DksecDp5.js","assets/ArchitecturePanel-DfRsqSBx.js","assets/ArchitecturePanel-B_BDrrfR.css","assets/ComputerControlView-BKwuceeG.js","assets/katex-55ZPZeOF.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{ah as Br,dg as ht,bA as e,h as Po,cv as Gd,ar as Zu,_ as Ln,bI as ef,L as ft,e as hs,X as Lt,dm as V,du as At,bV as gt,a as ca,b3 as tf,C as Ao,d as da,dc as ra,dd as vl,U as Kd,c_ as Xm,cA as Jm,bl as Qm,O as Vs,aA as Zm,bs as ep,bu as Ul,bv as tp,bw as Hl,bt as Ys,aQ as rp,E as np,k as sp,bp as ap,bX as op,bZ as ip,b_ as lp,bg as cp,bY as qd,N as jt,g as dp,j as Yi,I as up,b as fp,de as Xi,bf as Vd,aK as Yd,aG as hp,aU as Ji,aV as Xd,dv as aa,ax as Xs,aW as mp,bN as pp,cX as Jd,aN as gp,da as bp,cq as xp,dn as Qr,aZ as vp,a2 as Qd,a1 as wp,aH as Zd,aM as yp,aS as eu,cs as kp,z as tu,l as ru,r as nu,J as rf,av as nf,ci as Sp,ds as jp,n as Rp}from"./app-BB0CAQ8D.js";import{b as a,r as yr}from"./dnd-BCFAPC0L.js";import{i as zl,F as Np,O as sf,y as Cp,s as su,Q as au,W as Ro,m as Ep,aj as af,Z as Mp,x as $p,I as Pp,t as Ap,M as Lp,R as No,a6 as of,a7 as Tp,S as ms,n as lf,g as Ip,ap as cf,A as Qi,am as Dp,aa as Zi,ak as Pn,a8 as Fp,a9 as ou,an as _p,ac as iu,r as lu,k as cu,E as el,B as mo,h as Bp,T as Op,z as Up,N as du,Y as Hp,q as zp,U as Wp,o as uu,C as Gp,c as Kp,G as qp,f as Vp}from"./App-BiDKeTpx.js";import{F as wl,a as fu,S as hu,b as df,c as yl}from"./gestureArbiter-C8TBuoU3.js";import{D as kl,C as oa,L as uf,f as Yp,n as Xp}from"./DiffReview-DkEi5c3c.js";import{T as Jp,L as Lo,M as ff,G as xr}from"./triangle-alert-ibl6FV9I.js";import{S as ua}from"./sparkles-0HeBLLwx.js";import{C as hf,M as mf}from"./ChangeWalkthroughPanel-DksecDp5.js";import{r as pf,s as gf,l as bf,a as mu,h as Sl,u as Qp,g as jl,b as xf}from"./DiffViewer-3JGF6U0m.js";import{u as vf,G as wf}from"./referenceLongPress-CQ9ote5C.js";const Zp=[["path",{d:"m2 16 4.039-9.69a.5.5 0 0 1 .923 0L11 16",key:"d5nyq2"}],["path",{d:"M22 9v7",key:"pvm9v3"}],["path",{d:"M3.304 13h6.392",key:"1q3zxz"}],["circle",{cx:"18.5",cy:"12.5",r:"3.5",key:"z97x68"}]],eg=Br("case-sensitive",Zp);const tg=[["path",{d:"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49",key:"ct8e1f"}],["path",{d:"M14.084 14.158a3 3 0 0 1-4.242-4.242",key:"151rxh"}],["path",{d:"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143",key:"13bj9a"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]],rg=Br("eye-off",tg);const ng=[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]],Rl=Br("eye",ng);const sg=[["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 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]],Nl=Br("file-text",sg);const ag=[["path",{d:"M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z",key:"sc7q7i"}]],og=Br("funnel",ag);const ig=[["path",{d:"M16 5h6",key:"1vod17"}],["path",{d:"M19 2v6",key:"4bpg5p"}],["path",{d:"M21 11.5V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h7.5",key:"1ue2ih"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}]],lg=Br("image-plus",ig);const cg=[["path",{d:"M17 3v10",key:"15fgeh"}],["path",{d:"m12.67 5.5 8.66 5",key:"1gpheq"}],["path",{d:"m12.67 10.5 8.66-5",key:"1dkfa6"}],["path",{d:"M9 17a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v2a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2v-2z",key:"swwfx4"}]],dg=Br("regex",cg);const ug=[["path",{d:"M3 7V5a2 2 0 0 1 2-2h2",key:"aa7l1z"}],["path",{d:"M17 3h2a2 2 0 0 1 2 2v2",key:"4qcy5o"}],["path",{d:"M21 17v2a2 2 0 0 1-2 2h-2",key:"6vwrx8"}],["path",{d:"M7 21H5a2 2 0 0 1-2-2v-2",key:"ioqczr"}]],fg=Br("scan",ug);const hg=[["circle",{cx:"7",cy:"12",r:"3",key:"12clwm"}],["path",{d:"M10 9v6",key:"17i7lo"}],["circle",{cx:"17",cy:"12",r:"3",key:"gl7c2s"}],["path",{d:"M14 7v8",key:"dl84cr"}],["path",{d:"M22 17v1c0 .5-.5 1-1 1H3c-.5 0-1-.5-1-1v-1",key:"lt2kga"}]],mg=Br("whole-word",hg),pg=100,gg=5e5,bg=1e4,pu=16384,xg=32,vg=1e5;class cs extends Error{constructor(n){super(`Markdown preview parsing stopped: ${n}`),this.reason=n,this.name="MarkdownParseError"}reason}class wg{startedAt=performance.now();operations=0;depth=0;check(){if(++this.operations>vg)throw new cs("complexity");if(performance.now()-this.startedAt>=pg)throw new cs("timeout")}validateLines(n){if(n.length>bg)throw new cs("size");let s=0;for(const l of n)if(this.check(),s+=l.length+1,s>gg||l.length>pu)throw new cs("size")}validateInline(n){if(this.check(),n.length>pu)throw new cs("size")}nested(n){if(this.check(),this.depth>=xg)throw new cs("depth");this.depth+=1;try{return n()}finally{this.depth-=1}}}const gu=new RegExp(`(\\\\\\([^)]*\\\\\\)|\\$[^$\\n]+\\$|<br\\s*\\/?>|<\\s*img\\b[^>]*>|<\\s*video\\b[^>]*>[\\s\\S]*?<\\/video\\s*>|<(?:a|abbr|span|b|strong|em|i|u|s|del|code|kbd|mark|sub|sup)\\b[\\s\\S]*?<\\/(?:a|abbr|span|b|strong|em|i|u|s|del|code|kbd|mark|sub|sup)>|!?\\[[^\\]]*\\]\\((?:<[^>]+>|(?:[^\\s()]|\\([^()\\s]*\\))+)(?:\\s+(?:"[^"]*"|'[^']*'|\\([^)]*\\)))?\\)|!?\\[[^\\]]+\\]\\[[^\\]]*\\]|!?\\[[^\\]]+\\]|\\[\\^[^\\]]+\\]|~~[^~]+~~|\\*\\*[^*]+\\*\\*|(?<![\\p{L}\\p{N}_])__[^_]+__(?![\\p{L}\\p{N}_])|\\*[^*\\s][^*]*\\*|(?<![\\p{L}\\p{N}_])_[^_\\s][^_]*_(?![\\p{L}\\p{N}_])|<https?:\\/\\/[^>\\s]+>|<[^\\s@<>]+@[^\\s@<>]+\\.[^\\s@<>]+>|https?:\\/\\/[^\\s<]+|www\\.[^\\s<]+|[^\\s@<>]+@[^\\s@<>]+\\.[^\\s@<>]+)`,"iyu");function yg(r,n,s){let l=n;for(;r[l]==="`";)l+=1;const d=l-n;let c=l;for(;c<r.length;){s.check();const m=r.indexOf("`",c);if(m<0)return null;for(c=m;r[c]==="`";)c+=1;if(c-m===d)return c}return null}function*kg(r,n){n.validateInline(r);const s=new RegExp(gu.source,gu.flags);let l=0;for(;l<r.length;){if(n.check(),r[l]==="`"){const c=yg(r,l,n);if(c!==null)yield{index:l,token:r.slice(l,c)},l=c;else for(;r[l]==="`";)l+=1;continue}s.lastIndex=l;const d=s.exec(r);n.check(),d?(yield{index:l,token:d[0]},l=s.lastIndex):l+=(r.codePointAt(l)??0)>65535?2:1}}function bu({children:r,actions:n}){const{t:s}=ht(),[l,d]=a.useState(!1),c=a.useId(),m=a.useRef(null),g=a.useRef(null),h=()=>{d(!1),m.current?.focus({preventScroll:!0})};return a.useLayoutEffect(()=>{if(!l)return;const p=m.current,x=g.current;if(!p||!x)return;const f=window.visualViewport,b=()=>{const j=p.getBoundingClientRect(),T=(f?.offsetLeft??0)+8,D=(f?.offsetTop??0)+8,F=Math.max(0,(f?.width??window.innerWidth)-16),M=D+(f?.height??window.innerHeight)-16,N=Math.min(240,F),A=Math.max(0,j.top-D-6),_=Math.max(0,M-j.bottom-6),q=x.scrollHeight>_&&A>_;Object.assign(x.style,{width:`${N}px`,left:`${Math.max(T,Math.min(j.right-N,T+F-N))}px`,top:`${q?j.top-6:j.bottom+6}px`,maxHeight:`${q?A:_}px`,transform:q?"translateY(-100%)":"none"})};b();const E=typeof ResizeObserver>"u"?null:new ResizeObserver(b);return E?.observe(p),E?.observe(x),window.addEventListener("resize",b),window.addEventListener("scroll",b,!0),f?.addEventListener("resize",b),f?.addEventListener("scroll",b),()=>{E?.disconnect(),window.removeEventListener("resize",b),window.removeEventListener("scroll",b,!0),f?.removeEventListener("resize",b),f?.removeEventListener("scroll",b)}},[l]),a.useEffect(()=>{if(!l)return;g.current?.querySelector("button:not(:disabled)")?.focus({preventScroll:!0});const p=x=>{x.target instanceof Node&&!m.current?.contains(x.target)&&!g.current?.contains(x.target)&&d(!1)};return document.addEventListener("pointerdown",p),()=>document.removeEventListener("pointerdown",p)},[l]),e.jsxs("div",{className:"mt-2",children:[e.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-1.5",children:[r,e.jsxs("button",{ref:m,type:"button","aria-haspopup":"menu","aria-expanded":l,"aria-controls":l?c:void 0,onClick:()=>d(p=>!p),onKeyDown:p=>{(p.key==="ArrowDown"||p.key==="ArrowUp")&&(p.preventDefault(),d(!0))},className:`ml-auto inline-flex h-8 shrink-0 items-center gap-1.5 whitespace-nowrap rounded-md px-2 text-[11px] font-medium transition focus-visible:outline focus-visible:outline-2 focus-visible:outline-primary ${l?"bg-surface-2 text-foreground":"text-muted-foreground hover:bg-surface-2 hover:text-foreground"}`,children:[e.jsx(Po,{size:14}),s("sidebar.moreActions")]})]}),typeof document<"u"&&yr.createPortal(e.jsx("div",{ref:g,id:c,hidden:!l,role:"menu","data-sidebar-gesture-ignore":!0,"aria-label":s("sidebar.moreActions"),className:"fixed z-menu-panel overflow-y-auto overscroll-contain rounded-lg border border-border/30 bg-surface p-1 shadow-[0_8px_24px_var(--app-shadow-soft)]",onKeyDown:p=>{if(!p.currentTarget.contains(p.target))return;const x=[...p.currentTarget.querySelectorAll("button:not(:disabled)")],f=x.indexOf(document.activeElement);let b;if(p.key==="Escape"){p.preventDefault(),p.stopPropagation(),h();return}if(p.key==="Tab"){h();return}if(p.key==="ArrowDown")b=(f+1)%x.length;else if(p.key==="ArrowUp")b=(f-1+x.length)%x.length;else if(p.key==="Home")b=0;else if(p.key==="End")b=x.length-1;else return;p.preventDefault(),x[b]?.focus({preventScroll:!0})},children:n(h)}),document.body)]})}const tl="a[href],button,input,select,textarea,[tabindex],[contenteditable],iframe,summary,audio[controls],video[controls]",ds=a.memo(function({active:n,mounted:s=!0,fallback:l=null,children:d}){const c=a.useRef(null);return a.useLayoutEffect(()=>{const m=c.current;if(!m||n)return;const g=new Map,h=f=>{g.has(f)||(g.set(f,f.inert),f.inert=!0)},p=f=>{f instanceof HTMLElement&&f.matches(tl)&&h(f),f.querySelectorAll(tl).forEach(h)};p(m);const x=new MutationObserver(f=>{for(const b of f)b.type==="attributes"?b.target instanceof HTMLElement&&b.target.matches(tl)&&h(b.target):b.addedNodes.forEach(E=>{E instanceof Element&&p(E)})});return x.observe(m,{subtree:!0,childList:!0,attributes:!0,attributeFilter:["tabindex","href","contenteditable","controls"]}),()=>{x.disconnect();for(const[f,b]of g)f.inert=b}},[n,s]),e.jsx("div",{ref:c,className:"absolute inset-0 min-h-0 overflow-hidden bg-surface text-foreground",style:n?void 0:{clipPath:"inset(100%)"},"aria-hidden":!n,children:s?typeof d=="function"?d():d:l})},(r,n)=>!r.active&&!n.active&&r.mounted===n.mounted);async function Sg(r){let n;try{await Promise.race([r(),new Promise(s=>{n=setTimeout(s,3e3)})])}catch{}finally{clearTimeout(n)}}function jg({active:r,rootPath:n,loading:s,delay:l,lastStartedRoot:d,load:c}){a.useEffect(()=>{if(!r||!n||s||d.current===n)return;const m=window.setTimeout(()=>{d.current=n,c(n)},l);return()=>window.clearTimeout(m)},[r,n,s,l,d,c])}async function Rg(r){if(r.kind==="mermaid"){await Gd(new Blob([r.svg],{type:"image/svg+xml"}),"mermaid.svg");return}const n=new URL(r.src,window.location.href);if(n.origin===window.location.origin&&n.pathname==="/api/terminal/fs/blob"){const c=n.searchParams.get("path");if(!c)throw new Error("Missing image path");await Zu(c);return}const s=await fetch(r.src);if(!s.ok)throw new Error(`HTTP ${s.status}`);const l=await s.blob(),d=decodeURIComponent(n.pathname.split("/").pop()||"")||`image.${{"image/svg+xml":"svg","image/jpeg":"jpg","image/webp":"webp","image/gif":"gif"}[l.type]||"png"}`;await Gd(l,d)}let po=null,xu=!1;function Ng(){return po||(po=Ln(()=>import("./mermaid.core-BlkorXd6.js").then(r=>r.bl),__vite__mapDeps([0,1,2,3,4,5,6])).then(r=>r.default??r).catch(r=>{throw po=null,r})),po}function Cg(r){xu||(r.initialize({startOnLoad:!1,securityLevel:"strict",theme:"neutral"}),xu=!0)}function Eg({rootPath:r,paths:n,disabled:s,onChange:l}){const{t:d}=ht(),[c,m]=a.useState(""),[g,h]=a.useState(0),[p,x]=a.useState(null),[f,b]=a.useState(!1),[E,j]=a.useState(!1),T=`${r.replace(/[\\/]+$/,"")}/${c}`;a.useEffect(()=>{const N=new AbortController;return x(null),b(!1),ef(T,N.signal,!0,"pick_git_ignore_exception").then(A=>{N.signal.aborted||x({directory:c,entries:A.entries,truncated:!!A.truncated})}).catch(()=>{N.signal.aborted||b(!0)}),()=>N.abort()},[T,c,g]);const D=N=>{x(null),b(!1),m(N)},F=p?.directory===c,M=N=>{if(N.length>200){j(!0);return}j(!1),l(N)};return e.jsxs("div",{className:"flex flex-col gap-3",children:[e.jsxs("div",{className:"overflow-hidden rounded-lg border border-border/30 bg-surface-2",children:[e.jsxs("div",{className:"flex items-center gap-2 border-b border-border/20 p-2",children:[e.jsx("button",{type:"button",disabled:s||!c,onClick:()=>D(c.slice(0,Math.max(0,c.lastIndexOf("/")))),"aria-label":d("rightSidebar.parentFolder"),className:"inline-flex h-8 w-8 shrink-0 items-center justify-center rounded-md text-muted-foreground hover:bg-surface-elevated hover:text-foreground disabled:opacity-30",children:e.jsx(zl,{size:14})}),e.jsx("button",{type:"button",disabled:s||!c,onClick:()=>D(""),"aria-label":d("rightSidebar.backToProjectRoot"),className:"inline-flex h-8 w-8 shrink-0 items-center justify-center rounded-md text-muted-foreground hover:bg-surface-elevated hover:text-foreground disabled:opacity-30",children:e.jsx(wl,{size:14})}),e.jsx("span",{className:"min-w-0 flex-1 truncate font-mono text-xs",title:T,children:c||"./"})]}),e.jsxs("div",{className:"h-56 overflow-y-auto overscroll-contain p-1",role:"group","aria-label":d("rightSidebar.gitIgnoreExceptionsPaths"),"aria-busy":!F&&!f,children:[f?e.jsxs("div",{className:"flex flex-col items-center gap-2 p-4 text-center text-xs",children:[e.jsx("p",{role:"alert",className:"text-destructive",children:d("rightSidebar.gitIgnoreExceptionsLoadFailed")}),e.jsx("button",{type:"button",disabled:s,onClick:()=>{b(!1),h(N=>N+1)},className:"rounded-md px-3 py-2 text-primary hover:bg-surface-elevated disabled:opacity-40",children:d("common.retry")})]}):F?p.entries.length===0?e.jsx("p",{className:"p-4 text-center text-xs text-muted-foreground",children:d("rightSidebar.gitIgnoreExceptionsEmptyDirectory")}):p.entries.map(N=>{const A=c?`${c}/${N.name}`:N.name,_=A+(N.type==="directory"?"/":""),q=n.includes(_)||n.includes(A),S=n.some(B=>B.endsWith("/")&&A.startsWith(B)),o=N.type==="directory"?wl:Np;return e.jsxs("div",{className:"flex items-center gap-1 rounded-md hover:bg-surface-elevated",children:[e.jsxs("label",{className:"flex min-h-10 min-w-0 flex-1 cursor-pointer items-center gap-2 px-2 text-xs",children:[e.jsx("input",{type:"checkbox",checked:q||S,disabled:s||S,onChange:()=>M(q?n.filter(B=>B!==_&&B!==A):[...n,_]),className:"h-4 w-4 shrink-0 accent-[var(--primary)] disabled:opacity-40"}),e.jsx(o,{size:14,className:"shrink-0 text-muted-foreground"}),e.jsx("span",{className:"truncate",title:N.name,children:N.name})]}),N.type==="directory"&&e.jsx("button",{type:"button",disabled:s,onClick:()=>D(A),"aria-label":d("rightSidebar.gitIgnoreExceptionsOpenDirectory",{name:N.name}),className:"inline-flex h-10 w-10 shrink-0 items-center justify-center rounded-md text-muted-foreground hover:bg-surface hover:text-foreground disabled:opacity-40",children:e.jsx(hs,{size:15})})]},N.name)}):e.jsx("div",{className:"flex h-full items-center justify-center",children:e.jsx(ft,{size:18})}),F&&p.truncated&&e.jsx("p",{className:"px-2 py-3 text-xs text-muted-foreground",children:d("rightSidebar.gitIgnoreExceptionsTruncated")})]})]}),e.jsxs("div",{className:"flex items-center justify-between gap-2 text-xs",children:[e.jsx("span",{className:"font-medium",children:d("rightSidebar.gitIgnoreExceptionsSelected",{count:n.length})}),e.jsx("button",{type:"button",disabled:s||n.length===0,onClick:()=>M([]),className:"rounded-md px-2 py-1 text-muted-foreground hover:bg-surface-2 hover:text-foreground disabled:opacity-40",children:d("rightSidebar.gitIgnoreExceptionsClear")})]}),n.length>0&&e.jsx("ul",{className:"max-h-24 overflow-y-auto overscroll-contain",children:n.map(N=>e.jsxs("li",{className:"flex items-center gap-2 rounded-md pl-2 text-xs hover:bg-surface-2",children:[e.jsx("span",{className:"min-w-0 flex-1 truncate font-mono",title:N,children:N}),e.jsx("button",{type:"button",disabled:s,onClick:()=>M(n.filter(A=>A!==N)),"aria-label":d("rightSidebar.gitIgnoreExceptionsRemove",{path:N}),className:"inline-flex h-8 w-8 shrink-0 items-center justify-center rounded-md text-muted-foreground hover:bg-surface-elevated hover:text-foreground disabled:opacity-40",children:e.jsx(Lt,{size:13})})]},N))}),E&&e.jsx("p",{role:"alert",className:"text-xs text-destructive",children:d("rightSidebar.gitIgnoreExceptionsInvalid")})]})}function Mg({rootPath:r,disabled:n,pressed:s,saving:l,onToggle:d}){const{t:c}=ht(),m=a.useId(),g=a.useRef(null),h=a.useRef(null),p=a.useRef(null),x=a.useRef(null),f=a.useRef(!1),[b,E]=a.useState(!1),[j,T]=a.useState([]),[D,F]=a.useState(!1),[M,N]=a.useState(null),A=V(I=>I.setGitIgnoreExceptions),_=()=>{p.current!==null&&clearTimeout(p.current),p.current=null,x.current=null},q=()=>{_(),!(n||D||!r)&&(T([...V.getState().gitIgnoreExceptions[r]??[]]),N(null),E(!0))},S=()=>{D||E(!1)},o=I=>{_(),f.current=!1,!(I.button!==0||!I.isPrimary||n)&&(I.currentTarget.setPointerCapture(I.pointerId),x.current={x:I.clientX,y:I.clientY},p.current=setTimeout(()=>{f.current=!0,q()},450))};a.useEffect(()=>(E(!1),_(),_),[r]),a.useEffect(()=>{if(b)return h.current?.focus(),()=>g.current?.focus()},[b]);const B=c(s?"rightSidebar.showGitIgnoredFiles":"rightSidebar.hideGitIgnoredFiles");return e.jsxs(e.Fragment,{children:[e.jsx("button",{ref:g,type:"button",disabled:n||D,"aria-pressed":s,"aria-label":B,"aria-description":c("rightSidebar.gitIgnoreConfigureHint"),title:`${B} · ${c("rightSidebar.gitIgnoreConfigureHint")}`,onClick:I=>{if(f.current&&I.detail!==0){f.current=!1,I.preventDefault();return}d()},onContextMenu:I=>{I.preventDefault(),f.current=!0,b||q()},onPointerDown:o,onPointerMove:I=>{const Y=x.current;Y&&Math.hypot(I.clientX-Y.x,I.clientY-Y.y)>10&&_()},onPointerUp:_,onPointerCancel:_,onLostPointerCapture:_,className:`inline-flex h-7 w-7 shrink-0 select-none items-center justify-center rounded-md transition active:scale-95 disabled:cursor-not-allowed disabled:opacity-35 [-webkit-touch-callout:none] ${s?"bg-surface-2 text-primary hover:bg-surface-elevated":"text-muted-foreground hover:bg-surface-2 hover:text-foreground"}`,children:l?e.jsx(ft,{size:14}):e.jsx(og,{size:14})}),b&&yr.createPortal(e.jsx("div",{className:"fixed inset-0 z-modal-backdrop flex items-center justify-center bg-[var(--app-backdrop)] p-3 backdrop-blur-sm",onClick:S,children:e.jsxs("form",{ref:h,role:"dialog",tabIndex:-1,"aria-modal":"true","aria-labelledby":`${m}-title`,"aria-describedby":`${m}-hint`,className:"relative z-modal-panel flex max-h-[80dvh] w-full max-w-lg flex-col gap-3 overflow-y-auto rounded-xl border border-border/20 bg-surface p-4 text-foreground shadow-2xl",onClick:I=>I.stopPropagation(),onKeyDown:I=>{if(I.key==="Escape"&&(I.preventDefault(),I.stopPropagation(),S()),I.key==="Tab"){const Y=Array.from(h.current?.querySelectorAll("button:not(:disabled), input:not(:disabled)")??[]);if(!Y.length){I.preventDefault(),h.current?.focus();return}const H=Y[0],U=Y[Y.length-1];I.shiftKey&&document.activeElement===H&&(I.preventDefault(),U?.focus()),document.activeElement===h.current?(I.preventDefault(),(I.shiftKey?U:H)?.focus()):!I.shiftKey&&document.activeElement===U&&(I.preventDefault(),H?.focus())}},onSubmit:I=>{if(I.preventDefault(),!(!r||D)){if(j.length>200){N(c("rightSidebar.gitIgnoreExceptionsInvalid"));return}F(!0),N(null),A(r,j).then(()=>E(!1)).catch(()=>N(c("rightSidebar.gitIgnoreExceptionsSaveFailed"))).finally(()=>F(!1))}},children:[e.jsxs("div",{className:"flex items-center justify-between gap-3",children:[e.jsx("h2",{id:`${m}-title`,className:"text-sm font-medium",children:c("rightSidebar.gitIgnoreExceptionsTitle")}),e.jsx("button",{type:"button",disabled:D,onClick:S,"aria-label":c("common.close"),className:"inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-md text-muted-foreground hover:bg-surface-2 hover:text-foreground disabled:opacity-40",children:e.jsx(Lt,{size:16})})]}),e.jsx("p",{className:"truncate text-xs text-muted-foreground",title:r??void 0,children:r}),e.jsx("p",{id:`${m}-hint`,className:"text-xs leading-relaxed text-muted-foreground",children:c("rightSidebar.gitIgnoreExceptionsHint")}),e.jsx("p",{className:"text-xs font-medium",children:c("rightSidebar.gitIgnoreExceptionsPaths")}),r&&e.jsx(Eg,{rootPath:r,paths:j,onChange:T,disabled:D}),M&&e.jsx("p",{role:"alert",className:"text-xs text-destructive",children:M}),e.jsxs("div",{className:"flex justify-end gap-2",children:[e.jsx("button",{type:"button",disabled:D,onClick:S,className:"rounded-lg px-3 py-2 text-xs text-muted-foreground hover:bg-surface-2 disabled:opacity-40",children:c("common.cancel")}),e.jsxs("button",{type:"submit",disabled:D,className:"inline-flex items-center gap-2 rounded-lg bg-primary px-3 py-2 text-xs font-medium text-primary-foreground disabled:opacity-50",children:[D&&e.jsx(ft,{size:13}),c("common.save")]})]})]})}),document.body)]})}function $g(r,n,s){try{const l=r instanceof HTMLImageElement?r.naturalWidth:r.width,d=r instanceof HTMLImageElement?r.naturalHeight:r.height;if(!l||!d)return Promise.resolve(null);const c=r instanceof HTMLImageElement?1400/Math.max(l,d):Math.min(1,1400/Math.max(l,d)),m=document.createElement("canvas");m.width=Math.max(1,Math.round(l*c)),m.height=Math.max(1,Math.round(d*c));const g=m.getContext("2d");if(!g)return Promise.resolve(null);const h=getComputedStyle(document.documentElement);if(g.fillStyle=h.getPropertyValue("--surface").trim()||"white",g.fillRect(0,0,m.width,m.height),g.drawImage(r,0,0,m.width,m.height),s){const p=Math.max(10,Math.min(16,m.width/35));g.font=`${p}px sans-serif`;const x=[];let f="";for(const b of s.split(" "))f&&g.measureText(`${f} ${b}`).width>m.width-20?(x.push(f),f=b):f=f?`${f} ${b}`:b;f&&x.push(f),g.fillStyle=h.getPropertyValue("--surface").trim()||"white",g.fillRect(0,0,m.width,x.length*(p+4)+12),g.fillStyle=h.getPropertyValue("--foreground").trim()||"black",x.forEach((b,E)=>g.fillText(b,10,8+p+E*(p+4)))}if(n){const p=n.xPercent*m.width/100,x=n.yPercent*m.height/100,f=Math.max(4,Math.min(12,Math.min(m.width,m.height)*.015)),b=f*1.6;g.strokeStyle=h.getPropertyValue("--primary").trim()||"black",g.lineWidth=Math.max(1,f/3),g.beginPath(),g.arc(p,x,f,0,Math.PI*2),g.stroke(),g.beginPath(),g.moveTo(p-b,x),g.lineTo(p+b,x),g.moveTo(p,x-b),g.lineTo(p,x+b),g.stroke()}return new Promise(p=>m.toBlob(p,"image/png"))}catch{return Promise.resolve(null)}}function Pg(r,n,s,l){return[r.trim(),n.trim(),l?`截图:${l}`:""].filter(Boolean).join(`
|
|
3
3
|
`)}function T0(r,n,s){const l=n*Math.PI/360,d=Math.min(l,Math.atan(Math.tan(l)*Math.max(s,.05)));return Math.max(r,1e-6)/Math.sin(d)*1.15}async function Ag(r,n,s,l){if(!s?.snapshot)return l.isCurrent()?await l.insert(r,n):!1;const d=new Date().toISOString(),c=new AbortController;let m,g;try{g=await Promise.race([(async()=>{const h=await s.snapshot;if(!(!h||c.signal.aborted||!l.isCurrent()))return l.upload(new File([h],`termdock-review-${crypto.randomUUID()}.png`,{type:"image/png"}),c.signal)})(),new Promise(h=>{m=setTimeout(()=>{c.abort(),h(void 0)},3e3)})])}catch{}finally{clearTimeout(m),c.abort()}return l.isCurrent()?await l.insert(g?Pg(r,"",d,g):r,n):!1}function Lg(r,n){return r===n||n.endsWith(`/${r}`)||r.endsWith(`/${n}`)}function vu(r,n){return`${r??""}\0${n}`}function Tg(r,n,s){if(!r||r.length===0||!s)return{explained:0,stale:0};const l=vu(n,s);let d=0,c=0;for(const m of r){const g=[m.filePath,m.newPath,m.oldPath].filter(p=>typeof p=="string"&&p.length>0);(g.some(p=>vu(m.repoRoot,p)===l)||g.some(p=>Lg(p,s)))&&(d+=1)}return{explained:d,stale:c}}function Ig({status:r}){if(!r)return null;const n=r.stale>0&&r.explained===0;if(!(r.explained>0||r.stale>0))return null;const l=n?"AI audit explanation is stale":"AI audit explanation available";return e.jsx("span",{className:`inline-flex h-4 w-4 shrink-0 items-center justify-center rounded-full ${n?"bg-[color:var(--warning)]/15 text-[color:var(--warning)]":"bg-accent/10 text-accent"}`,title:l,"aria-label":l,children:n?e.jsx(Jp,{size:10}):e.jsx(ua,{size:10})})}function Cl({changeStatus:r,auditStatus:n,renderChangeBadge:s}){return e.jsxs("span",{className:"inline-flex items-center gap-1",children:[s(r),e.jsx(Ig,{status:n})]})}const yf="termdock:right-sidebar:diff-change-list-mode:v1";function Dg(r){return r==="list"||r==="tree"}function Fg(){return gt(yf,Dg)??"tree"}function _g(r){for(const n of r){const s=n.hunk;if(s.oldPath&&s.newPath&&s.oldPath!==s.newPath)return"renamed";if(s.oldPath===null&&s.newPath)return"added";if(s.oldPath&&s.newPath===null)return"deleted"}return"modified"}function Bg(r){const n=new Map;for(const l of r){const d=n.get(l.hunk.filePath)??{key:l.hunk.filePath,filePath:l.hunk.filePath,items:[],additions:0,deletions:0,explained:0,stale:0,changeType:"modified"};d.items.push(l),d.additions+=l.hunk.additions,d.deletions+=l.hunk.deletions,l.current&&(d.explained+=1),l.stale&&(d.stale+=1),n.set(l.hunk.filePath,d)}const s=Array.from(n.values()).sort((l,d)=>l.filePath.localeCompare(d.filePath));for(const l of s)l.changeType=_g(l.items);return s}function Og(r){const n=r.filePath.split("/").pop()??r.filePath;return{key:r.key,path:r.filePath,displayName:n,displayDir:r.filePath.includes("/")?r.filePath.slice(0,-n.length-1):"",status:r.changeType,title:r.filePath}}function Ug(r,n){const s=r.filter(c=>c.trim().length>0);if(s.length<=1)return s[0]??"";const l=[],d=new Set;for(const[c,m]of s.entries()){const g=m.split(`
|
|
4
4
|
`),h=g.findIndex(f=>f.startsWith("@@ "));if(h<0){l.push(...g);continue}c===0&&l.push(...g.slice(0,h));const p=n[c];let x=h;for(;x>=0&&x<g.length;){const f=g.findIndex((F,M)=>M>x&&F.startsWith("@@ ")),b=f>=0?f:g.length,E=g.slice(x,b),j=E[0]??"",T=p?j===p:!0,D=j||p||E.join(`
|
|
5
5
|
`);T&&!d.has(D)&&(l.push(...E),d.add(D)),x=f}}return l.join(`
|
|
@@ -1635,7 +1635,7 @@ function installPreviewRuntime(capability, base, externalOrigins, shimUrl) {
|
|
|
1635
1635
|
`,xo="/api/terminal/fs/preview/",Tb=8*1024*1024,Ib=32*1024*1024,Db=128,Fb="data:,";function Pt(r){throw new Error(r)}function _b(r){return JSON.stringify(r).replace(/</g,"\\u003c")}async function Nu(r,n,s){let l="",d=0;for(const c of r.matchAll(n))l+=r.slice(d,c.index)+await s(c),d=c.index+c[0].length;return l+r.slice(d)}async function Cf(r,n){const s=n.origin??location.origin,l=new URL(r,s);(l.origin!==s||!Vs(l.pathname)?.startsWith(xo))&&Pt("预览地址不是有效的本地文件入口");const d=crypto.randomUUID(),c=`https://termdock-preview.invalid/${d}/`,m=[],g=z=>{!m.includes(z)&&m.length<20&&m.push(z)},h=new Set,p=[],x=new Set,f=new Map,b=new Map;let E=0,j=!1;const T=new Set,D=()=>{j=!0;for(const z of[...T])z();h.clear(),p.length=0};async function F(z){z.ok||Pt(`预览资源读取失败(${z.status})`);const Z=z.body?.getReader(),P=[];let G=0;try{if(Z)for(;;){const pe=await Z.read();if(pe.done)break;G+=pe.value.byteLength,E+=pe.value.byteLength,(G>Tb||E>Ib)&&Pt("预览资源超出大小限制"),P.push(pe.value)}}catch(pe){throw await Z?.cancel().catch(()=>{}),pe}finally{Z?.releaseLock()}const J=new Uint8Array(G);let ie=0;for(const pe of P)J.set(pe,ie),ie+=pe.length;return{bytes:J,type:z.headers.get("content-type")??"application/octet-stream",status:z.status}}let M=l,N;for(let z=0;z<4;z++){const Z=await n.fetch(M.pathname+M.search,{signal:n.signal,redirect:"manual"});if(![301,302,303,307,308].includes(Z.status)){N=Z;break}const P=Z.headers.get("location");await Z.body?.cancel(),P||Pt("预览重定向缺少目标");const G=new URL(P,M);(G.origin!==s||!Vs(G.pathname)?.startsWith(xo))&&Pt("预览重定向越出文件范围"),M=G}N||Pt("预览重定向次数过多");const A=Vs(M.pathname),_=A.slice(xo.length).split("/");/^[a-f0-9]{32}$/.test(_[0])||Pt("服务未提供有效的预览资源授权");const q=Vs(l.pathname).slice(xo.length).split("/");/^[a-f0-9]{32}$/.test(q[0])&&q.shift(),q.join("/").replace(/\/$/,"")!==_.slice(1).join("/").replace(/\/$/,"")&&Pt("预览重定向改变了文件范围");const S=A.endsWith("/")?A:A.slice(0,A.lastIndexOf("/")+1),o=new URL(M.pathname.endsWith("/")?M.pathname:M.pathname.slice(0,M.pathname.lastIndexOf("/")+1),s);function B(z,Z){const P=new URL(z,Z);return P.origin!==s?null:(Vs(P.pathname)?.startsWith(S)||Pt("已阻止预览访问目录之外的资源"),P)}function I(z){const Z=new URL(z,c);(Z.origin!==new URL(c).origin||!Z.pathname.startsWith(new URL(c).pathname))&&Pt("已阻止预览访问服务接口或目录之外的资源");const P=Z.pathname.slice(new URL(c).pathname.length)+Z.search;return B(P,o)??Pt("预览资源无效")}function Y(z){const Z=z.pathname+z.search,P=f.get(Z);if(P)return P;if(j||n.signal?.aborted)return Promise.reject(new Error("预览已关闭"));if(f.size>=Db)return Promise.reject(new Error("预览资源数量超出限制"));const G=n.fetch(Z,{signal:n.signal,redirect:"manual"}).then(F);return f.set(Z,G),G}function H(z,Z){j&&Pt("预览已关闭");const P=`termdock-resource-${d}-${p.length}`;return p.push({token:P,data:z,type:Z}),h.add(P),P}async function U(z,Z,P,G=new Set){if(!z||z.startsWith("#")||/^data:(?:image|font)\//i.test(z)&&P==="resource")return z;try{const J=B(z,Z);if(!J){const Me=new URL(z,Z);return(Me.protocol!=="https:"||Me.username||Me.password||Me.origin===new URL(c).origin)&&Pt("已阻止不安全的外部资源"),x.add(Me.origin),Me.href}const ie=`${P}:${J.href}`;(G.has(ie)||G.size>=8)&&Pt("预览资源存在循环或过深引用");const pe=b.get(ie);if(pe)return pe;const Se=new Set(G);Se.add(ie);const ke=(async()=>{const Me=await Y(J);return P==="css"?H(await R(new TextDecoder().decode(Me.bytes),J,Se),"text/css"):P==="script"?H(Me.bytes,"text/javascript"):H(Me.bytes,Me.type)})();return b.set(ie,ke),await ke}catch(J){return g(J instanceof Error?J.message:"部分预览资源未能加载"),Fb}}async function R(z,Z,P){return z=await Nu(z,/@import\s+(?:url\(\s*)?["']([^"']+)["']\s*\)?([^;]*);/gi,async G=>`@import url("${await U(G[1],Z,"css",P)}")${G[2]};`),Nu(z,/url\(\s*(?:"([^"]*)"|'([^']*)'|([^)]*))\s*\)/gi,async G=>{const J=(G[1]??G[2]??G[3]).trim();return h.has(J)?G[0]:`url("${await U(J,Z,"resource",P)}")`})}try{const z=await F(N),Z=H(Ab,"text/javascript"),P=new DOMParser().parseFromString(new TextDecoder().decode(z.bytes),"text/html");P.querySelectorAll("base,meta[http-equiv],iframe,frame,object,embed").forEach(Q=>Q.remove());for(const Q of P.querySelectorAll("*")){if(Q.removeAttribute("ping"),Q.removeAttribute("srcdoc"),Q.hasAttribute("style")&&Q.setAttribute("style",await R(Q.getAttribute("style"),M,new Set)),Q.tagName==="STYLE"&&(Q.textContent=await R(Q.textContent??"",M,new Set)),Q.tagName==="A"||Q.tagName==="AREA"){const ge=Q.getAttribute("href");try{if(ge&&!ge.startsWith("#")){const ue=B(ge,M);if(ue)Q.setAttribute("href",new URL(ue.pathname.slice(o.pathname.length)+ue.search+ue.hash,c).href);else{const _e=new URL(ge,M);if(_e.protocol!=="https:"){Q.removeAttribute("href");continue}x.add(_e.origin),Q.setAttribute("href",_e.href)}}}catch(ue){Q.removeAttribute("href"),g(ue instanceof Error?ue.message:"预览链接无法加载")}}for(const ge of["data","manifest"])Q.removeAttribute(ge);if(Q.tagName==="SCRIPT"&&Q.getAttribute("type")==="module"){Q.setAttribute("type","module-shim");const ge=Q.getAttribute("src");if(ge){const ue=B(ge,M);if(ue)Q.setAttribute("src",new URL(ue.pathname.slice(o.pathname.length)+ue.search,c).href);else{const _e=new URL(ge,M);if(_e.protocol!=="https:"){Q.remove();continue}x.add(_e.origin),Q.setAttribute("src",_e.href)}}continue}if(Q.tagName==="SCRIPT"&&Q.getAttribute("type")==="importmap"){Q.setAttribute("type","importmap-shim");continue}if(Q.tagName==="LINK"){const ge=(Q.getAttribute("rel")??"").toLowerCase();if(!["stylesheet","icon"].includes(ge)){Q.remove();continue}const ue=Q.getAttribute("href");ue&&Q.setAttribute("href",await U(ue,M,ge==="stylesheet"?"css":"resource"))}if(Q.hasAttribute("src")&&Q.setAttribute("src",await U(Q.getAttribute("src"),M,Q.tagName==="SCRIPT"?"script":"resource")),Q.hasAttribute("poster")&&Q.setAttribute("poster",await U(Q.getAttribute("poster"),M,"resource")),Q.hasAttribute("srcset")){const ge=Q.getAttribute("srcset");/data:/i.test(ge)?(Q.removeAttribute("srcset"),g("混合内嵌图片候选暂不支持安全预览")):Q.setAttribute("srcset",(await Promise.all(ge.split(",").map(async ue=>{const[_e,...Ue]=ue.trim().split(/\s+/);return`${await U(_e,M,"resource")} ${Ue.join(" ")}`}))).join(", "))}Q.setAttribute("referrerpolicy","no-referrer"),Q.removeAttribute("integrity"),Q.removeAttribute("crossorigin")}const G=[...x].join(" "),J=P.createElement("meta");J.httpEquiv="Content-Security-Policy",J.content=`default-src 'none'; script-src 'unsafe-inline' 'wasm-unsafe-eval' blob: ${G}; style-src 'unsafe-inline' blob: ${G}; img-src blob: data: ${G}; font-src blob: data: ${G}; media-src blob: data: ${G}; connect-src blob: ${G} ${[...x].map(Q=>Q.replace(/^https:/,"wss:")).join(" ")}; worker-src blob:; frame-src 'none'; object-src 'none'; base-uri https://termdock-preview.invalid; form-action 'none'`;const ie=P.createElement("base");ie.href=c;const pe=P.createElement("meta");pe.name="referrer",pe.content="no-referrer";const Se=P.createElement("script");Se.textContent=Lb+`
|
|
1636
1636
|
installPreviewRuntime(`+[d,c,[...x],Z].map(_b).join(",")+");";const ke=P.createElement("script");ke.src=Z,P.head.prepend(J,pe,ie,Se,ke);const Me=`<!doctype html>
|
|
1637
1637
|
`+P.documentElement.outerHTML;return{html:Me,shellUrl:`/preview-shell.html#${d}`,errors:m,attach(Q,ge){const ue=new Set,_e=W=>{if(W.source!==Q.contentWindow||W.data?.capability!==d)return;if(W.data.type==="preview-ready"){Q.contentWindow?.postMessage({type:"preview-init",capability:d,html:Me,resources:p},"*");return}if(W.data.type==="preview-error"){ge("部分动态内容被安全预览限制");return}if(W.data.type==="preview-navigate"){(async()=>{const we=I(String(W.data.url)),He=await Cf(we.pathname+we.search,n);if(j){He.dispose();return}const Ke=He.attach(Q,ge);T.add(()=>{Ke(),He.dispose()}),Q.src=He.shellUrl.replace("#","?navigation="+crypto.randomUUID()+"#")})().catch(we=>ge(we instanceof Error?we.message:"无法打开预览页面"));return}if(W.data.type==="preview-external"){try{const we=new URL(String(W.data.url));we.protocol==="https:"&&x.has(we.origin)&&window.open(we.href,"_blank","noopener,noreferrer")}catch{}return}if(W.data.type!=="preview-fetch"||W.ports.length!==1)return;const ye=W.ports[0];if(ue.size>=8||!["GET","HEAD"].includes(W.data.method)){ye.postMessage({error:"预览仅允许读取已授权目录资源"}),ye.close();return}ue.add(ye),(async()=>{const we=I(String(W.data.url)),He=await Y(we);if(!ue.has(ye)||j)return;const Ke=W.data.method==="HEAD"?new Uint8Array:He.bytes.slice();ye.postMessage({status:He.status,headers:{"content-type":He.type},data:Ke.buffer},[Ke.buffer])})().catch(()=>{ye.postMessage({error:"预览资源不在授权范围或无法加载"}),ge("部分动态资源不可用或超出预览目录")}).finally(()=>{ue.delete(ye),ye.close()})};window.addEventListener("message",_e);const Ue=()=>{window.removeEventListener("message",_e);for(const W of ue)W.close();ue.clear(),T.delete(Ue)};return T.add(Ue),Ue},dispose:D}}catch(z){throw D(),z}}const Bb=a.forwardRef(function({src:n,title:s,exitFullscreenLabel:l,onFullscreenChange:d},c){const m=a.useRef(null),[g,h]=a.useState(null),[p,x]=a.useState(),[f,b]=a.useState("");a.useEffect(()=>{const A=new AbortController;let _;return x(void 0),b(""),(async()=>{const q=await Zm();if(_=await Cf(n,{fetch:(S,o)=>q.fetch(S,o),signal:A.signal}),A.signal.aborted){_.dispose();return}x(_),_.errors.length&&b(_.errors.join(";"))})().catch(q=>{A.signal.aborted||b(q instanceof Error?q.message:"安全预览加载失败")}),()=>{A.abort(),_?.dispose()}},[n]),a.useEffect(()=>{if(!(!p||!g))return p.attach(g,b)},[p,g]);const[E,j]=a.useState(!1),[T,D]=a.useState(!1),F=E||T;a.useEffect(()=>{d?.(F)},[F,d]),a.useEffect(()=>{const A=()=>{j(document.fullscreenElement===m.current)};return document.addEventListener("fullscreenchange",A),()=>document.removeEventListener("fullscreenchange",A)},[]),a.useEffect(()=>{if(!T)return;const A=_=>{_.key==="Escape"&&D(!1)};return document.addEventListener("keydown",A),()=>document.removeEventListener("keydown",A)},[T]);const M=a.useCallback(async()=>{const A=m.current;if(A){if(T){D(!1);return}if(document.fullscreenElement===A){await document.exitFullscreen();return}if(A.requestFullscreen&&document.fullscreenEnabled!==!1)try{await A.requestFullscreen();return}catch{}D(!0)}},[T]);a.useImperativeHandle(c,()=>({toggleFullscreen:M}),[M]);const N=e.jsxs("div",{ref:m,"data-html-preview-frame":!0,className:F?"fixed inset-0 z-modal-panel flex min-h-0 flex-col overflow-hidden bg-surface pt-[env(safe-area-inset-top,0px)] text-foreground":"flex h-full min-h-0 flex-col overflow-hidden bg-surface",children:[F&&e.jsxs("div",{className:"flex h-12 shrink-0 items-center justify-between gap-3 border-b border-border/15 bg-[var(--chrome-bg)] px-3",children:[e.jsx("span",{className:"min-w-0 truncate text-[12px] font-semibold",children:s}),e.jsx("button",{type:"button",onClick:()=>{M()},"aria-label":l,title:`${l} (Esc)`,className:"inline-flex h-9 w-9 shrink-0 items-center justify-center rounded-full bg-surface-2 text-muted-foreground transition hover:bg-surface-elevated hover:text-foreground active:scale-95",children:e.jsx(mf,{size:15})})]}),f&&e.jsx("div",{role:"status",className:"shrink-0 border-b border-border px-3 py-2 text-xs text-muted-foreground",children:f}),!p&&!f&&e.jsx("div",{role:"status",className:"p-3 text-xs text-muted-foreground",children:"正在安全加载预览资源…"}),e.jsx("iframe",{ref:h,src:p?.shellUrl,referrerPolicy:"no-referrer",title:s,sandbox:"allow-scripts",className:"block min-h-0 w-full flex-1 border-0 bg-white"})]});return T?yr.createPortal(N,document.body):N}),Ef="termdock-file-search-match",$l="termdock-file-search-current";function Ob(r,n,s){return!!(n&&r?.isConnected&&!s.defaultPrevented&&!r.closest('[inert], [aria-hidden="true"], [hidden]')&&s.target instanceof Node&&r.contains(s.target))}function Ub(r){const n=r.metaKey||r.ctrlKey,s=r.key.toLocaleLowerCase();return n&&s==="f"?"open":n&&s==="g"||r.key==="F3"?r.shiftKey?"previous":"next":r.key==="Escape"?"close":null}function Hb(r){return r.parentElement?.closest("[data-markdown-preview-block-start], [data-file-preview-line]")??null}function zb(r,n){const s=n.trim().toLocaleLowerCase();if(!s)return[];const l=[];let d="",c=null;const m=document.createTreeWalker(r,NodeFilter.SHOW_TEXT);for(let x=m.nextNode();x;x=m.nextNode()){if(!(x instanceof Text)||!x.data)continue;const f=Hb(x);if(!f)continue;c&&c!==f&&(d+=`
|
|
1638
|
-
`);const b=d.length;d+=x.data,l.push({node:x,start:b,end:d.length,group:f}),c=f}const g=d.toLocaleLowerCase(),h=[];let p=0;for(;p<=g.length-s.length;){const x=g.indexOf(s,p);if(x<0)break;const f=x+s.length,b=l.find(j=>j.start<=x&&j.end>x),E=l.find(j=>j.start<f&&j.end>=f);if(b&&E&&b.group===E.group){const j=document.createRange();j.setStart(b.node,x-b.start),j.setEnd(E.node,f-E.start),h.push(j)}p=x+Math.max(s.length,1)}return h}function Mf(){return typeof CSS<"u"&&CSS.highlights?CSS.highlights:null}let To;function Cu(r){return To===r}function vo(r){if(r&&To!==r)return;const n=Mf();n?.delete(Ef),n?.delete($l),To=void 0}function sl(r,n,s){const l=Mf();if(!l||typeof Highlight>"u")return;To=s,l.set(Ef,new Highlight(...r));const d=r[n];d?l.set($l,new Highlight(d)):l.delete($l)}function Eu(r){r?.startContainer.parentElement?.scrollIntoView({block:"center",inline:"nearest",behavior:"smooth"})}function Wb(r){return Array.from(new Set(r.split(/[\n,]/).map(n=>n.trim().replace(/^!+/,"")).filter(Boolean))).slice(0,24)}function Gb(r,n){const s=n.trim();return!s||s==="."?r:/^(?:[/\\]|[A-Za-z]:[/\\])/.test(s)?s.replace(/[\\/]+$/,""):`${r.replace(/[\\/]+$/,"")}/${s.replace(/^\.?[\\/]+/,"").replace(/[\\/]+$/,"")}`}function Kb(r,n){if(n===r)return".";const s=`${r.replace(/[\\/]+$/,"")}/`;return n.startsWith(s)?n.slice(s.length):n}function $f(r,n,s){return n?r:yr.createPortal(r,s)}const Wl="termdock:right-sidebar:file-tree-scroll:v1",Gl="termdock:right-sidebar:file-preview-reading-state:v1",na="termdock:right-sidebar:file-tree-width:v1",Pf="termdock:right-sidebar:markdown-view-mode:v1",Af="termdock:right-sidebar:diff-change-list-mode:v1",Lf="termdock:right-sidebar:diff-wrap:v1",Tf="termdock:diff-viewer:view-type:v1",If="termdock:right-sidebar:file-search-mode:v1",al="termdock:right-sidebar:collapsed-git-repo-groups:v1",Mu="termdock:right-sidebar:collapsed-diff-directories:v1",ol="termdock:right-sidebar:branch-audit-module-open:v1",Df="termdock:right-sidebar:branch-audit-module:v1",qb=150,$u="termdock:right-sidebar:context-draft-enabled:v1",Pu="termdock:right-sidebar:context-draft-collapsed:v1",Au="termdock:right-sidebar:context-draft-auto-collapse:v1",il="termdock:right-sidebar:context-draft-text:v1",Vb=300,Yb=20,Xb=120,Jb=250,Qb=250,Zb=120,ex=700,ll=600,tx=6e4;function Js(r){return!!(r&&V.getState().nestedGitScanRoots[r])}const Lu=[2e3,5e3,15e3,3e4],rx=320,nx=500,sx=20,ax=12e3,Pl=300,Tu=240,ox=560,Ff="border-r px-2 py-1.5 sm:px-3 sm:py-2",Io="min-w-full max-w-[18rem] whitespace-normal break-words sm:max-w-[27rem]",_f=`${Ff} border-b border-border/15 font-semibold last:border-r-0`,Bf=`${Ff} border-border/10 align-top text-muted-foreground last:border-r-0`,Kl="termdock-file-preview-horizontal-scroll",Iu=a.lazy(()=>Ln(()=>import("./ModelPreview-BEiOgE0G.js"),__vite__mapDeps([7,1,2,3,4,5,8,9,10,11,12,13,14,15,16,17]))),ix=a.lazy(()=>Ln(()=>import("./ArchitecturePanel-DzVy71gM.js"),__vite__mapDeps([18,1,2,3,4,5,8,9,10,11,12,15,16,6,14,13,17,19])).then(r=>({default:r.ArchitecturePanel}))),lx=a.lazy(()=>Ln(()=>import("./ComputerControlView-BlI9Ai_k.js").then(r=>r.a),__vite__mapDeps([20,1,2,3,4,5,17,14,11,8,9,10,12]))),Of=`${Kl} termdock-md-table-scroll max-w-full overflow-x-auto overflow-y-hidden rounded-lg border border-border/20 bg-surface`;function Uf(r,n,s){return r&&!n?"unified":s}const cx=new Set([".md",".markdown",".mdown",".mkdn",".mkd"]);function dx(r){return r==="preview"||r==="source"}function ux(r){return r==="list"||r==="tree"||r==="ai"}function Du(){return gt(Pf,dx)??"preview"}function fx(){return gt(Af,ux)??"tree"}function sa(r){return typeof r=="boolean"}function hx(r){return typeof r=="string"}function mx(){return gt(Lf,sa)??!0}function px(r){return r==="unified"||r==="split"}function gx(){return gt(Tf,px)??"unified"}function bx(r){return r==="name"||r==="content"||r==="regex"}function xx(){return gt(If,bx)??"name"}function Hf(r){return r.repositories??(r.context?.root?[{id:r.context.root,root:r.context.root,relativeRoot:".",name:yt(r.context.root)||r.context.root,depth:0,nested:!1,available:r.available,files:r.files,context:r.context,error:r.error}]:[])}function vx(r,n){if(!n)return null;const s=new Set((r.repoFilters??[]).map(l=>l.root));return s.has(n)?n:s.size>0?null:(r.repositories??[]).some(l=>l.root===n)?n:null}function Al(r){return!r.activeGitRepoRoot&&(r.groupCount>1||r.label!==r.rootName)}function zf(...r){const n=new Set;for(const s of r)for(const l of s)n.add(l.root);return n}function Ll(r){return Array.isArray(r)&&r.every(n=>typeof n=="string")}function Fu(r){const n=gt(r,Ll);return n?new Set(n):new Set}function cl(r,n){At(r,[...n])}function wx(r){if(!r||typeof r!="object"||Array.isArray(r))return!1;const n=r;return typeof n.filePath=="string"&&typeof n.hunkHeader=="string"&&typeof n.hunkIndex=="number"&&typeof n.fingerprint=="string"&&typeof n.additions=="number"&&typeof n.deletions=="number"&&typeof n.diff=="string"&&(n.oldPath===void 0||n.oldPath===null||typeof n.oldPath=="string")&&(n.newPath===void 0||n.newPath===null||typeof n.newPath=="string")&&(n.source===void 0||n.source==="committed"||n.source==="uncommitted"||n.source==="unknown")&&(n.commit===void 0||n.commit===null||typeof n.commit=="string")}function yx(r){if(!r||typeof r!="object"||Array.isArray(r))return!1;const n=r;return typeof n.available=="boolean"&&(n.repoRoot===void 0||typeof n.repoRoot=="string")&&(n.workspaceRoot===void 0||typeof n.workspaceRoot=="string")&&(n.baseRef===void 0||typeof n.baseRef=="string")&&(n.baseBranch===void 0||typeof n.baseBranch=="string")&&(n.currentBranch===void 0||n.currentBranch===null||typeof n.currentBranch=="string")&&(n.headRef===void 0||n.headRef===null||typeof n.headRef=="string")&&(n.diffFingerprint===void 0||typeof n.diffFingerprint=="string")&&(n.stat===void 0||typeof n.stat=="string")&&(n.files===void 0||Ll(n.files))&&(n.hunks===void 0||Array.isArray(n.hunks)&&n.hunks.every(wx))&&(n.commits===void 0||Ll(n.commits))&&(n.commitCount===void 0||typeof n.commitCount=="number")&&(n.diff===void 0||typeof n.diff=="string")&&(n.truncated===void 0||typeof n.truncated=="boolean")&&(n.error===void 0||typeof n.error=="string")}function kx(r){if(!r||typeof r!="object"||Array.isArray(r))return!1;const n=r;return typeof n.key=="string"&&yx(n.diff)&&typeof n.repoLabel=="string"&&typeof n.createdAt=="number"}function Sx(r){return!r||typeof r!="object"||Array.isArray(r)?!1:Object.values(r).every(n=>{if(!n||typeof n!="object"||Array.isArray(n))return!1;const s=n;return Array.isArray(s.selectedRepoRoots)&&s.selectedRepoRoots.every(l=>typeof l=="string")&&!!s.repoTargetBranches&&typeof s.repoTargetBranches=="object"&&!Array.isArray(s.repoTargetBranches)&&Object.values(s.repoTargetBranches).every(l=>typeof l=="string")&&(s.repoBaseBranches===void 0||!!s.repoBaseBranches&&typeof s.repoBaseBranches=="object"&&!Array.isArray(s.repoBaseBranches)&&Object.values(s.repoBaseBranches).every(l=>typeof l=="string"))&&(s.previewEntries===void 0||Array.isArray(s.previewEntries)&&s.previewEntries.every(kx))&&(s.selectedPreviewKey===void 0||s.selectedPreviewKey===null||typeof s.selectedPreviewKey=="string")&&(s.selectedPreviewFileKey===void 0||s.selectedPreviewFileKey===null||typeof s.selectedPreviewFileKey=="string")&&(s.previewDetailOpen===void 0||typeof s.previewDetailOpen=="boolean")&&(s.previewScrollTops===void 0||!!s.previewScrollTops&&typeof s.previewScrollTops=="object"&&!Array.isArray(s.previewScrollTops)&&Object.values(s.previewScrollTops).every(l=>typeof l=="number"))&&(s.previewMobileSlideIndex===void 0||typeof s.previewMobileSlideIndex=="number")&&(s.repoIncludeUncommitted===void 0||!!s.repoIncludeUncommitted&&typeof s.repoIncludeUncommitted=="object"&&!Array.isArray(s.repoIncludeUncommitted)&&Object.values(s.repoIncludeUncommitted).every(l=>typeof l=="boolean"))&&(s.includeUncommitted===void 0||typeof s.includeUncommitted=="boolean")&&typeof s.updatedAt=="number"})}function _u(){return gt(Df,Sx)??{}}function Bu(r){return[r.repoRoot,r.baseRef,r.branchName??"",r.headRef??"",r.diffFingerprint??""].join("\0")}function Ou(r){const n=r?.trim()??"",s=n.indexOf("/");return s>=0?n.slice(s+1):n}function Wf(r,n){const s=r?.trim(),l=n?.trim();return!s||!l?!1:s===l||Ou(s)===Ou(l)}function Uu(r){const n=r?.branch??null;return[r?.upstream,...r?.remoteBranches??[],...r?.branches??[]].find(l=>l&&!Wf(l,n))??""}function Tl(r,n){const s=Math.max(Tu,n-320),l=Math.min(ox,s);return Math.min(l,Math.max(Tu,r))}function jx(r){return typeof r=="number"&&Number.isFinite(r)}function Rx(r){return Tl(gt(na,jx)??Pl,r)}function Gf(r){const n=r.split(/[\\/]/).pop()??r,s=n.lastIndexOf(".");return s>=0?n.slice(s).toLowerCase():""}function Qs(r){return cx.has(Gf(r))}function Kf(r){const n=r.trim().replace(/\s+/g,"");return/^-{3,}$/.test(n)||/^\*{3,}$/.test(n)||/^_{3,}$/.test(n)}function Il(r){const n=r.trim();return/^#{1,6}\s+/.test(n)||Kf(r)||/^>\s?/.test(n)||/^(```|~~~)/.test(n)||/^<video\b/i.test(n)||/^(?:[-+*]|\d+[.)])\s+/.test(n)}function qf(r){const n=r.trim();return/^(https?:|mailto:|#|\/|\.\/|\.\.\/)/i.test(n)||!/^[a-z][a-z0-9+.-]*:/i.test(n)&&!/[<>]/.test(n)?n:null}const Vf=a.createContext(null);function Eo(r){return r.trim().replace(/\s+/g," ").toLowerCase()}function Yf(r){return r.replace(/!\[([^\]]*)\]\([^)]+\)/g,"$1").replace(/\[([^\]]+)\]\([^)]+\)/g,"$1").replace(/\[([^\]]+)\]\[[^\]]*\]/g,"$1").replace(/[`*_~]/g,"").replace(/<[^>]+>/g,"").trim()}function Xf(r){return r.replace(/\s+#+\s*$/,"").trim()}function Dl(r,n){const l=Yf(r).toLowerCase().replace(/[^\p{L}\p{N}\s-]/gu,"").trim().replace(/\s+/g,"-")||"section",d=n.headingSlugCounts.get(l)??0;return n.headingSlugCounts.set(l,d+1),d===0?l:`${l}-${d}`}function Hu(r){return Yf(r)||r.trim()}function Do(r){const n=r.match(/^\s{0,3}\[([^\]]+)\]:\s+(.+?)\s*$/);if(!n)return null;const s=_l(n[2]);return s?{id:Eo(n[1]),definition:{href:s.href,title:s.title}}:null}function Nx(r){const n=new Map;for(const s of r){const l=Do(s);l&&n.set(l.id,l.definition)}return n}function Jf(r){return r.trim().toLowerCase()}function Qf(r){const n=r.match(/^\s{0,3}\[\^([^\]]+)\]:\s+(.+)\s*$/);return n?{id:Jf(n[1]),text:n[2]}:null}function Cx(r){const n=new Map;let s=null;for(const l of r){const d=Qf(l);if(d){s=d.id,n.set(d.id,{id:d.id,text:d.text,index:n.size+1});continue}if(s&&/^\s{4,}\S/.test(l)){const c=n.get(s);c&&(c.text=`${c.text} ${l.trim()}`);continue}l.trim()&&(s=null)}return n}function Zf(r){const n=new Set;let s=!1;return r.forEach((l,d)=>{if(Qf(l)){n.add(d),s=!0;return}if(s&&/^\s{4,}\S/.test(l)){n.add(d);return}l.trim()&&(s=!1)}),n}function Ex(r){const n=[...r];let s=0;const l=r[0]?.trim();if(l==="---"||l==="+++"){for(n[0]="",s=1;s<r.length&&r[s].trim()!==l;)n[s]="",s+=1;s<r.length&&(n[s]="",s+=1)}for(;s<r.length;){const d=r[s].trim();if(d.startsWith("<!--")){if(n[s]="",!d.includes("-->")){for(s+=1;s<r.length&&!r[s].includes("-->");)n[s]="",s+=1;s<r.length&&(n[s]="")}s+=1;continue}s+=1}return n}function eh(r){const n=r.replace(/\/+$/,""),s=n.lastIndexOf("/");return s<=0?s===0?"/":"":n.slice(0,s)}function ia(r){const n=r.split(/[?#]/,1)[0],s=n.startsWith("/"),l=[];for(const c of n.split("/"))if(!(!c||c===".")){if(c===".."){l.length>0&&l.pop();continue}l.push(c)}return`${s?"/":""}${l.join("/")}`||(s?"/":".")}function Go(r,n,s){const l=r.trim();if(!l||/^(?:https?:|mailto:|javascript:|data:)/i.test(l)||/^[a-z][a-z0-9+.-]*:/i.test(l))return null;if(l.startsWith("#")){if(!n)return null;try{return{path:n,fragment:decodeURIComponent(l.slice(1))||null,directory:!1}}catch{return null}}const d=l.indexOf("#"),c=d>=0?l.slice(0,d):l,m=d>=0?l.slice(d+1):"",g=c.split("?",1)[0];if(!g)return null;let h,p=null;try{h=decodeURIComponent(g),p=m?decodeURIComponent(m):null}catch{return null}const x=s?ia(s):null;let f;if(h.startsWith("/")){const b=x&&(h===x||h.startsWith(`${x}/`));f=ia(x&&!b?`${x}/${h.slice(1)}`:h)}else{if(!n)return null;f=ia(`${eh(n)}/${h}`)}return x&&f!==x&&!f.startsWith(`${x}/`)?null:{path:f,fragment:p,directory:/\/$/.test(g)}}function th(r,n,s,l,d){const c=r.trim();if(!c||/^(?:javascript|data):/i.test(c))return null;if(/^https?:\/\//i.test(c))return c;if(!l(c.split(/[?#]/,1)[0]))return null;let m;if(c.startsWith("/")){const g=s&&(c===s||c.startsWith(`${s}/`));m=ia(s&&!g?`${s}/${c.slice(1)}`:c)}else{if(!n)return null;m=ia(`${eh(n)}/${c}`)}return d(m)}function rh(r,n,s){return th(r,n,s,Ul,l=>`/api/terminal/fs/blob?path=${encodeURIComponent(l)}`)}function ql(r,n,s){if(/^https?:\/\//i.test(r.trim()))return r.trim();const l=Go(r,n,s);return!l||!Hl(l.path)?null:rf(l.path)+(l.fragment?`#${l.fragment}`:"")}function nh(r){try{return Hl(decodeURIComponent(new URL(r,"https://markdown.invalid/").pathname))}catch{return!1}}const Fl=128,Mx=360,dl=480;function ga(r){try{return/\.svg(?=$|[?#&])/i.test(decodeURIComponent(r))}catch{return!1}}function sh(r,n,s,l,d=0){if(!n||!s)return null;let c,m;return d>0?(c=l>0?Math.min(d,l):d,m=s*c/n):ga(r)?(m=Math.min(Math.max(s,Fl),Mx),c=n*m/s):(c=n,m=s),l>0&&c>l&&(m=m*l/c,c=l),m>dl&&(c=c*dl/m,m=dl),{width:Math.max(1,Math.round(c)),height:Math.max(1,Math.round(m))}}function $x(r){if(!r.startsWith("/api/terminal/fs/blob?"))return null;try{return new URLSearchParams(r.slice(r.indexOf("?"))).get("path")}catch{return null}}function ah(r){const n=$x(r),s=V(l=>n?(l.fileChangeVersions.get(n)??0)+l.fileWatchEpoch:0);return n&&s>0?`${r}&v=${s}`:r}function Px({src:r,alt:n,title:s,requestedWidthPx:l}){const d=ga(r),c=ah(r),m=fa(c),g=a.useRef(null),[h,p]=a.useState(!1),[x,f]=a.useState(0),[b,E]=a.useState({status:"loading"}),[j,T]=a.useState(null);a.useLayoutEffect(()=>{const M=g.current;let N=M?.parentElement?.parentElement??M?.parentElement;for(;N;){const S=window.getComputedStyle(N).display;if(S!=="inline"&&S!=="contents")break;N=N.parentElement}if(!N)return;const A=N,_=()=>{const S=window.getComputedStyle(A),o=(parseFloat(S.paddingLeft)||0)+(parseFloat(S.paddingRight)||0);f(Math.max(0,A.clientWidth-o))};if(_(),typeof ResizeObserver>"u")return;const q=new ResizeObserver(_);return q.observe(A),()=>q.disconnect()},[]),a.useEffect(()=>{if(h)return;const M=g.current;if(!M||typeof IntersectionObserver>"u"){p(!0);return}const N=new IntersectionObserver(A=>{A.some(_=>_.isIntersecting)&&(p(!0),N.disconnect())},{rootMargin:"400px"});return N.observe(M),()=>N.disconnect()},[h]),a.useEffect(()=>{if(!h)return;const M=new AbortController;let N=null;E({status:"loading"});const A=window.setTimeout(()=>{M.abort(new DOMException("Image fetch timed out","TimeoutError"))},15e3);return nf(c,{signal:M.signal}).then(async _=>{if(!_.ok)throw new Error(`HTTP ${_.status}`);const q=Number(_.headers.get("X-Image-Width"))||0,S=Number(_.headers.get("X-Image-Height"))||0;return{blob:await _.blob(),width:q,height:S}}).then(({blob:_,width:q,height:S})=>{M.signal.aborted||(N=URL.createObjectURL(_),q>0&&S>0&&T({width:q,height:S}),E({status:"ready",objectUrl:N}))}).catch(()=>{const _=M.signal.reason;M.signal.aborted&&!(_ instanceof DOMException&&_.name==="TimeoutError")||E({status:"fallback"})}).finally(()=>{window.clearTimeout(A)}),()=>{window.clearTimeout(A),M.abort(),N&&URL.revokeObjectURL(N)}},[h,c]);const D=sh(r,j?.width??0,j?.height??0,x,l??0),F=D??(l?{width:x>0?Math.min(l,x):l,height:Math.round(l*.75)}:{width:Fl*2,height:Fl});return e.jsx("div",{ref:g,className:"block max-w-full",style:D?{width:D.width,height:D.height}:void 0,children:b.status==="ready"?e.jsx("img",{src:b.objectUrl,alt:n,title:s,decoding:"async",className:`${d?"":"termdock-fade-in "}block max-h-[480px] max-w-full object-contain`,style:D?{width:D.width,height:D.height}:void 0,onLoad:M=>{const N=M.currentTarget;N.naturalWidth>0&&N.naturalHeight>0&&(j?.width!==N.naturalWidth||j?.height!==N.naturalHeight)&&T({width:N.naturalWidth,height:N.naturalHeight})}}):b.status==="fallback"?e.jsx("img",{src:m,alt:n,title:s,loading:"lazy",decoding:"async",className:"block max-h-[480px] max-w-full object-contain",style:D?{width:D.width,height:D.height}:void 0,onLoad:M=>{const N=M.currentTarget;N.naturalWidth>0&&N.naturalHeight>0&&(j?.width!==N.naturalWidth||j?.height!==N.naturalHeight)&&T({width:N.naturalWidth,height:N.naturalHeight})}}):e.jsx("div",{"aria-hidden":!0,className:"flex max-w-full animate-pulse items-center justify-center rounded bg-surface-elevated/60",style:{width:F.width,height:F.height},children:e.jsx("span",{className:"text-[10px] text-muted-foreground/60",children:n||"…"})})})}function la(r,n,s,l,d,c){if(!c?.fallbackText&&nh(s)){const p=ql(s,d.markdownFilePath,d.rootPath);if(p)return e.jsx(Vl,{url:p,label:n,title:l,hasControls:!0},r)}const m=rh(s,d.markdownFilePath,d.rootPath);if(!m)return c?.fallbackText??``;const g=d.images.length;d.images.push({kind:"image",src:m,alt:n,title:l});const h=e.jsx(Px,{src:m,alt:n,title:l,requestedWidthPx:c?.requestedWidthPx});return d.onImageOpen&&c?.interactive!==!1?e.jsx("button",{type:"button",className:"my-2 block max-w-full overflow-hidden rounded-md border border-border/20 bg-surface-2 text-left transition hover:border-border-strong focus:outline-none focus:ring-2 focus:ring-ring/45",title:l||n||"Open image",onClick:p=>{p.stopPropagation(),d.onImageOpen?.(g)},children:h},r):e.jsx("span",{className:"my-2 block max-w-full overflow-hidden rounded-md border border-border/20 bg-surface-2",children:h},r)}function ul(r){let n=r,s="";for(;/[.,;:!?)]$/.test(n);)s=`${n.slice(-1)}${s}`,n=n.slice(0,-1);return{linkText:n,suffix:s}}function zu(r){return/^[^\s@<>]+@[^\s@<>]+\.[^\s@<>]+$/.test(r)}function _l(r){const n=r.trim(),s=n.match(/^<([^>]+)>(?:\s+(?:"([^"]*)"|'([^']*)'|\(([^)]*)\)))?$/);if(s)return{href:s[1],title:s[2]??s[3]??s[4]};const l=n.match(/^(\S+)(?:\s+(?:"([^"]*)"|'([^']*)'|\(([^)]*)\)))?$/);return l?{href:l[1],title:l[2]??l[3]??l[4]}:null}const oh="",Ax=/\\([\\`*{}\[\]#+\-.!_|~>$])/g;function Lx(r){return r.replace(Ax,(n,s)=>`${oh}${s.charCodeAt(0).toString(16).padStart(4,"0")}`)}function Wu(r){return r.replace(new RegExp(`${oh}([0-9a-f]{4})`,"g"),(n,s)=>String.fromCharCode(Number.parseInt(s,16))).replace(/\\([()])/g,"$1")}function Tx(r){const n=r.replace(/[\r\n]+/g," ");return/^ .+ $/.test(n)&&/[^ ]/.test(n.slice(1,-1))?n.slice(1,-1):n}const ih={ALLOWED_TAGS:["a","abbr","b","blockquote","br","code","del","details","div","em","i","kbd","li","mark","ol","p","pre","s","span","strong","sub","summary","sup","table","tbody","td","th","thead","tr","u","ul"],ALLOWED_ATTR:["href","title","class","id","colspan","rowspan"],ALLOW_DATA_ATTR:!1,ALLOW_ARIA_ATTR:!0};let wo=null;function lh(){return wo||(wo=Ln(()=>import("./purify.es-4eNOHKSq.js"),[]).then(r=>r.default??r).catch(r=>{throw wo=null,r})),wo}function ch({html:r}){const{t:n}=ht(),[s,l]=a.useState(null);return a.useEffect(()=>{let d=!1;return l(null),lh().then(c=>{d||l(c.sanitize(r,ih))}).catch(()=>{d||l("")}),()=>{d=!0}},[r]),s===null?e.jsx("div",{className:"py-2 text-xs text-muted-foreground",children:n("rightSidebar.renderingHtml")}):s?e.jsx("div",{className:"text-muted-foreground",dangerouslySetInnerHTML:{__html:s}}):null}function Ix({html:r}){const[n,s]=a.useState(null);return a.useEffect(()=>{let l=!1;return s(null),lh().then(d=>{l||s(d.sanitize(r,ih))}).catch(()=>{l||s("")}),()=>{l=!0}},[r]),n===null?null:n?e.jsx("span",{dangerouslySetInnerHTML:{__html:n}}):r}function dh(r){const n=r.trim().match(/^<(div|section|article|aside|table|p|ul|ol|li|blockquote|pre|figure|figcaption)\b[^>]*>/i);if(!n)return null;const s=n[1].toLowerCase();return{tag:s,selfContained:new RegExp(`</${s}>`,"i").test(r)}}let yo=null;function Dx(){return yo||(yo=Promise.all([Ln(()=>import("./katex-DnlPpQZa.js"),[]),Ln(()=>Promise.resolve({}),__vite__mapDeps([21]))]).then(([r])=>r.default??r).catch(r=>{throw yo=null,r})),yo}function ha({tex:r,display:n=!1}){const[s,l]=a.useState(null),[d,c]=a.useState(!1);if(a.useEffect(()=>{let g=!1;return l(null),c(!1),Dx().then(h=>{g||l(h.renderToString(r,{displayMode:n,throwOnError:!1,trust:!1,strict:"ignore"}))}).catch(()=>{g||c(!0)}),()=>{g=!0}},[n,r]),d)return e.jsx("code",{className:"rounded bg-surface-2 px-1 py-0.5 font-mono text-[0.92em] text-foreground",children:n?`$$${r}$$`:`$${r}$`});if(!s)return e.jsx("span",{className:"text-muted-foreground/70",children:n?"Rendering formula...":r});const m=n?"my-2 overflow-auto rounded-md bg-surface-2 px-3 py-2 text-center":"inline-block align-middle";return e.jsx("span",{className:m,dangerouslySetInnerHTML:{__html:s}})}function Fo(r){const n=new Map;for(const s of r.matchAll(/([a-zA-Z_:][-a-zA-Z0-9_:.]*)\s*=\s*(?:"([^"]*)"|'([^']*)'|([^\s"'=<>`]+))/gi))n.set(s[1].toLowerCase(),s[2]??s[3]??s[4]);return n}function Gu(r){const n=Fo(r),s=n.get("src")?.trim()??"",l=n.get("width")?.trim().match(/^(\d+(?:\.\d+)?)(?:px)?$/i);return{src:s,alt:n.get("alt"),title:n.get("title"),widthPx:l?Number(l[1]):void 0}}function Fx(r){const n=r.indexOf(">"),s=n<0?r:r.slice(0,n+1),l=Fo(s),d=l.get("src")?.trim()??"",c=d?[d]:Array.from(r.slice(n+1).matchAll(/<source\b[^>]*>/gi),x=>Fo(x[0]).get("src")?.trim()??"").filter(Boolean),m=l.get("width")?.trim().match(/^(\d+(?:\.\d+)?)(?:px)?$/i),g=l.get("style")?.match(/(?:^|;)\s*max-width\s*:\s*(\d+(?:\.\d+)?)px\s*(?:;|$)/i),h=s.replace(/=\s*(?:"[^"]*"|'[^']*')/g," "),p=n<0?"":r.slice(n+1).replace(/<\/video\s*>$/i,"").replace(/<[^>]*>/g,"").trim();return{sources:c,poster:l.get("poster"),fallbackText:p,widthPx:m?Number(m[1]):void 0,maxWidthPx:g?Number(g[1]):void 0,controls:/\bcontrols\b/i.test(h)}}function Vl({url:r,poster:n,fallbackText:s,widthPx:l,maxWidthPx:d,hasControls:c,label:m,title:g}){const{t:h}=ht(),[p,x]=a.useState(!1),f=fa(r,()=>x(!0)),b=fa(n??"");return a.useEffect(()=>x(!1),[r]),!f&&!p?null:e.jsx("span",{className:"my-2 block max-w-full overflow-hidden rounded-md border border-border/20 bg-surface-2",children:p?e.jsx("span",{className:"block px-3 py-2 text-xs text-muted-foreground",children:s?.trim()||h("rightSidebar.videoUnsupported")}):e.jsx("video",{className:"block max-w-full",src:f,poster:b||void 0,"aria-label":m,title:g,style:{width:l?`${l}px`:"100%",maxWidth:d?`${d}px`:void 0},controls:c,preload:"metadata",playsInline:!0,onError:()=>x(!0)})})}function _x(r,n,s){if(/^<a\b[^>]*>\s*<\s*img\b[^>]*>\s*<\/a\s*>$/i.test(r)){const m=r.slice(0,r.indexOf(">")+1),g=Fo(m).get("href")?.trim()??"",h=r.match(/<\s*img\b[^>]*>/i)?.[0]??"",{src:p,alt:x,title:f,widthPx:b}=Gu(h);if(!p)return null;const E=th(p,s.markdownFilePath,s.rootPath,Ul,M=>M);if(!E)return null;const j=g?Go(g,s.markdownFilePath,s.rootPath):null,D=!!!(j&&j.path===E)&&g?qf(g):null,F=la(n,x??"",p,f,s,{requestedWidthPx:b,interactive:D?!1:void 0});return D?e.jsx("a",{href:D,target:"_blank",rel:"noreferrer",children:F},n):F}if(/^<\s*img\b[^>]*>$/i.test(r)){const{src:m,alt:g,title:h,widthPx:p}=Gu(r);return m?la(n,g??"",m,h,s,{fallbackText:r,requestedWidthPx:p}):null}if(/^<\s*video\b[^>]*>[\s\S]*?<\/video\s*>$/i.test(r)){const{sources:m,poster:g,fallbackText:h,widthPx:p,maxWidthPx:x,controls:f}=Fx(r),b=m.map(j=>ql(j,s.markdownFilePath,s.rootPath)).find(Boolean);if(!b)return null;const E=g?rh(g,s.markdownFilePath,s.rootPath):null;return e.jsx(Vl,{url:b,poster:E??void 0,fallbackText:h,widthPx:p,maxWidthPx:x,hasControls:f},n)}if(/^<br\s*\/?>$/i.test(r))return e.jsx("br",{},n);const l=r.match(/^<(kbd|mark|sub|sup)>(.*?)<\/\1>$/i);if(!l)return/^<(a|abbr|span|b|strong|em|i|u|s|del|code)\b[\s\S]*<\/\1>$/i.test(r)?e.jsx(Ix,{html:r},n):null;const d=l[1].toLowerCase(),c=ct(l[2],`${n}-${d}`,!0,s);return d==="kbd"?e.jsx("kbd",{className:"rounded border border-border/30 bg-surface-2 px-1.5 py-0.5 font-mono text-[0.85em] text-foreground shadow-sm",children:c},n):d==="mark"?e.jsx("mark",{className:"rounded bg-warning/25 px-0.5 text-foreground",children:c},n):d==="sub"?e.jsx("sub",{children:c},n):e.jsx("sup",{children:c},n)}function ct(r,n,s=!0,l){return l.budget.nested(()=>Bx(r,n,s,l))}function Bx(r,n,s=!0,l){l.budget.validateInline(r);const d=Lx(r),c=[];let m=0;for(const{index:g,token:h}of kg(d,l.budget)){g>m&&c.push(Wu(d.slice(m,g)));const p=`${n}-${g}`,x=h.startsWith("<")?_x(h,p,l):null;if(x)c.push(x);else if(h.startsWith("\\(")&&h.endsWith("\\)"))c.push(e.jsx(ha,{tex:h.slice(2,-2)},p));else if(h.startsWith("$")&&h.endsWith("$"))c.push(e.jsx(ha,{tex:h.slice(1,-1)},p));else if(h.startsWith("`")){const f=h.match(/^`+/)?.[0].length??1;c.push(e.jsx("code",{className:`${s?"break-all":"whitespace-nowrap"} rounded bg-surface-2 px-1 py-0.5 font-mono text-[0.92em] text-foreground`,children:Tx(h.slice(f,-f))},p))}else if(h.startsWith("~~"))c.push(e.jsx("del",{className:"text-muted-foreground decoration-border-strong",children:ct(h.slice(2,-2),`${p}-del`,s,l)},p));else if(h.startsWith("**")||h.startsWith("__"))c.push(e.jsx("strong",{className:"font-semibold text-foreground",children:ct(h.slice(2,-2),`${p}-strong`,s,l)},p));else if(h.startsWith("*")||h.startsWith("_"))c.push(e.jsx("em",{className:"italic",children:ct(h.slice(1,-1),`${p}-em`,s,l)},p));else if(h.startsWith("![")){const f=h.match(/^!\[([^\]]*)\]\((.*)\)$/),b=h.match(/^!\[([^\]]+)\]\[([^\]]*)\]$/),E=h.match(/^!\[([^\]]+)\]$/);if(f){const j=_l(f[2]);c.push(j?la(p,f[1],j.href,j.title,l):h)}else if(b){const j=b[2]||b[1],T=l.referenceDefinitions.get(Eo(j));c.push(T?la(p,b[1],T.href,T.title,l):h)}else if(E){const j=l.referenceDefinitions.get(Eo(E[1]));c.push(j?la(p,E[1],j.href,j.title,l):h)}else c.push(h)}else if(h.startsWith("[^")){const f=Jf(h.slice(2,-1)),b=l.footnoteDefinitions.get(f);c.push(b?e.jsx("sup",{id:`fnref-${b.id}`,title:b.text,className:"ml-0.5 rounded bg-surface-2 px-1 text-[0.72em] font-semibold text-primary",children:e.jsx("a",{href:`#fn-${b.id}`,className:"text-primary no-underline",children:b.index})},p):h)}else if(h.startsWith("<http")){const f=h.slice(1,-1);c.push(e.jsx("a",{href:f,target:"_blank",rel:"noreferrer",className:`${s?"break-all":"whitespace-nowrap"} text-primary underline decoration-primary/40 underline-offset-2 hover:decoration-primary`,children:f},p))}else if(h.startsWith("<")&&h.endsWith(">")&&zu(h.slice(1,-1))){const f=h.slice(1,-1);c.push(e.jsx("a",{href:`mailto:${f}`,className:`${s?"break-all":"whitespace-nowrap"} text-primary underline decoration-primary/40 underline-offset-2 hover:decoration-primary`,children:f},p))}else if(zu(ul(h).linkText)){const{linkText:f,suffix:b}=ul(h);c.push(e.jsx("a",{href:`mailto:${f}`,className:`${s?"break-all":"whitespace-nowrap"} text-primary underline decoration-primary/40 underline-offset-2 hover:decoration-primary`,children:f},p)),b&&c.push(b)}else if(h.startsWith("http")||h.startsWith("www.")){const{linkText:f,suffix:b}=ul(h),E=f.startsWith("www.")?`https://${f}`:f;c.push(e.jsx("a",{href:E,target:"_blank",rel:"noreferrer",className:`${s?"break-all":"whitespace-nowrap"} text-primary underline decoration-primary/40 underline-offset-2 hover:decoration-primary`,children:f},p)),b&&c.push(b)}else{const f=h.match(/^\[([^\]]+)\]\((.*)\)$/),b=h.match(/^\[([^\]]+)\]\[([^\]]*)\]$/),E=h.match(/^\[([^\]]+)\]$/),j=b?b[2]||b[1]:E?.[1]??null,T=j?l.referenceDefinitions.get(Eo(j)):null,D=f?_l(f[2]):null,F=D?.href??T?.href??null,M=F?qf(F):null,N=f?.[1]??b?.[1]??E?.[1]??"",A=M&&nh(M)?ql(M,l.markdownFilePath,l.rootPath):null,_=M?e.jsx("a",{href:M,title:D?.title??T?.title,target:"_blank",rel:"noreferrer",className:`${s?"break-all":"whitespace-nowrap"} text-primary underline decoration-primary/40 underline-offset-2 hover:decoration-primary`,children:ct(N,`${p}-link`,s,l)},p):h;c.push(A?e.jsxs("span",{children:[e.jsx(Vl,{url:A,label:N,title:D?.title??T?.title,hasControls:!0}),_]},p):_)}m=g+h.length}return m<d.length&&c.push(Wu(d.slice(m))),c.length>0?c:[r]}function uh(r){return/(?: {2,}|\\)$/.test(r)}function fh(r){return r.replace(/(?: {2,}|\\)$/,"")}function _o(r){return/^(?: {4}|\t)/.test(r)}function hh(r){return r.startsWith(" ")?r.slice(1):r.replace(/^ {4}/,"")}function mh(r,n,s){const l=[];return r.forEach((d,c)=>{const m=uh(d);l.push(...ct(fh(d),`${n}-${c}`,!0,s)),c<r.length-1&&l.push(m?e.jsx("br",{},`${n}-${c}-br`):" ")}),l}function Bl(r,n,s){const l=[],d=[];return r.forEach((c,m)=>{d.push(uh(c)),l.push(ct(fh(c),`${n}-${m}`,!0,s))}),{perLine:l,hardBreaks:d}}function Ol(r,n,s,l,d){const c=[];return r.forEach((m,g)=>{const h=s[g]??0,p=!!(d&&h>=d.start&&h<=d.end);c.push(e.jsx("span",{"data-md-ref-start":h,"data-md-ref-end":h,"data-selected":p?"true":void 0,children:m},`${l}-ref-${g}`)),g<r.length-1&&c.push(n[g]?e.jsx("br",{},`${l}-${g}-br`):" ")}),c}function ma(r){const n=r.trim().replace(/^\|/,"").replace(/\|$/,""),s=[];let l="",d=!1,c=0,m=0;for(let g=0;g<n.length;g+=1){const h=n[g];if(d){l+=h,d=!1;continue}if(h==="\\"){d=!0;continue}if(h==="`"){const p=g;for(;g+1<n.length&&n[g+1]==="`";)g+=1;const x=g-p+1;l+="`".repeat(x),c===0?c=x:c===x&&(c=0);continue}if(c===0&&h==="["?m+=1:c===0&&h==="]"&&m>0&&(m-=1),h==="|"&&c===0&&m===0){s.push(l.trim()),l="";continue}l+=h}return d&&(l+="\\"),s.push(l.trim()),s}function ph(r){return ma(r).map(n=>/^:-+:$/.test(n)?"center":/^-+:$/.test(n)?"right":/^:-+$/.test(n)?"left":null)}function Bo(r){return r==="center"?"text-center":r==="right"?"text-right":"text-left"}function Oo(r){return/^\|?\s*:?-{3,}:?\s*(?:\|\s*:?-{3,}:?\s*)*\|?$/.test(r.trim())}function gh(r,n){return r>96||r>44&&n>.35}function Ko(r){return(r.match(/^\s*/)?.[0]??"").replace(/\t/g," ").length}function pa(r){const n=r.trim().match(/^([-+*]|\d+[.)])\s+(.+)$/);if(!n)return null;const s=/^\d+[.)]$/.test(n[1]);return{ordered:s,start:s?Number.parseInt(n[1],10):void 0,content:n[2]}}function Yl(r,n,s,l,d,c=new Set){const m=[],g=[];let h=n;for(;h<r.length;){const p=r[h];if(d&&(Do(p)||c.has(h))){h+=1;continue}const x=pa(p),f=Ko(p);if(!x){if(f>s&&g.length>0){([...g].reverse().find(T=>T.indent<f)?.item??g[g.length-1].item).paragraphs.push(p.trim());for(const T of g)T.item.lineEnd=h+1;h+=1;continue}break}if(f<s||f===s&&x.ordered!==l)break;const b={content:x.content,ordered:x.ordered,start:x.start,children:[],paragraphs:[],lineStart:h+1,lineEnd:h+1};for(;g.length>0&&g[g.length-1].indent>=f;)g.pop();const E=g[g.length-1]?.item??null;E?E.children.push(b):m.push(b),g.push({indent:f,item:b});for(const j of g)j.item.lineEnd=h+1;h+=1}return{items:m,nextIndex:h}}function Ox(r){const n=r.find(l=>pa(l));if(!n)return[];const s=pa(n);return s?Yl(r,0,Ko(n),s.ordered,!0,Zf(r)).items:[]}function Xl(r,n,s,l=0){return s.budget.nested(()=>Ux(r,n,s,l))}function Ux(r,n,s,l=0){return r.map((d,c)=>{const m=d.content.match(/^\[([ xX])\]\s+(.+)$/);return{key:`item-${c}`,taskItem:!!m,refStart:d.lineStart+l,refEnd:d.lineEnd+l,content:e.jsxs(e.Fragment,{children:[m?e.jsx("input",{type:"checkbox",checked:m[1].toLowerCase()==="x",readOnly:!0,className:"mr-2 align-[-2px] accent-primary"}):null,ct(m?.[2]??d.content,`li-${n}-${c}`,!0,s),d.paragraphs.length>0&&e.jsx("div",{className:"mt-1 space-y-1 text-muted-foreground",children:d.paragraphs.map((g,h)=>e.jsx("p",{children:ct(g,`li-${n}-${c}-p-${h}`,!0,s)},`paragraph-${h}`))})]}),groups:Hx(d.children,`${n}-${c}`,s,l)}})}function Hx(r,n,s,l=0){const d=[];for(const c of r){const m=d[d.length-1];m&&m.ordered===c.ordered?m.items.push(c):d.push({ordered:c.ordered,items:[c]})}return d.map((c,m)=>({ordered:c.ordered,start:c.ordered?c.items[0]?.start:void 0,items:Xl(c.items,`${n}-g${m}`,s,l)}))}function Jl(r,n){return r.map(s=>{const l=!!(n&&s.refStart<=n.end&&s.refEnd>=n.start);return e.jsxs("li",{className:s.taskItem?"list-none":void 0,"data-md-ref-start":s.refStart,"data-md-ref-end":s.refEnd,"data-selected":l?"true":void 0,children:[s.content,s.groups.length>0&&zx(s.groups,n)]},s.key)})}function zx(r,n){return r.map((s,l)=>{const d=s.ordered?"ol":"ul";return e.jsx(d,{start:s.start,className:`${s.ordered?"list-decimal":"list-disc"} mt-1 space-y-0.5 pl-4 marker:text-muted-foreground/60`,children:Jl(s.items,n)},`nested-${l}`)})}function Wx(r){const n=Array.from(r.footnoteDefinitions.values()).sort((s,l)=>s.index-l.index);return n.length===0?null:e.jsxs("section",{className:"mt-3 border-t border-border/20 pt-2 text-[12px] leading-5 text-muted-foreground",children:[e.jsx("div",{className:"mb-1 text-[10px] font-semibold uppercase tracking-wide text-muted-foreground/80",children:r.footnotesLabel}),e.jsx("ol",{className:"list-decimal space-y-1 pl-5",children:n.map(s=>e.jsxs("li",{id:`fn-${s.id}`,children:[ct(s.text,`footnote-${s.id}`,!0,r)," ",e.jsx("a",{href:`#fnref-${s.id}`,className:"text-primary no-underline","aria-label":r.backToFootnoteLabel(s.index),children:"↩"})]},s.id))})]})}function Gx(r,n,s,l){const d=[];let c=0;const m=g=>l?.[g]??g+1;for(;c<r.length;){s.budget.check();const g=r[c],h=g.trim();if(!h){c+=1;continue}if(/^<details>\s*$/i.test(h)){const F=c;let M="Details";const N=[];for(c+=1;c<r.length&&!/^<\/details>\s*$/i.test(r[c].trim());){const A=r[c].trim().match(/^<summary>(.*?)<\/summary>\s*$/i);A?M=A[1].trim()||M:N.push(r[c].trimStart()),c+=1}c<r.length&&(c+=1),d.push({kind:"static",node:e.jsxs("details",{className:"overflow-hidden rounded-lg border border-border/20 bg-surface px-3 py-2 text-muted-foreground",children:[e.jsx("summary",{className:"cursor-pointer text-sm font-semibold text-foreground",children:ct(M,`${n}-details-${F}-summary`,!0,s)}),N.length>0&&e.jsx("div",{className:"mt-2 text-sm leading-6",children:mh(N,`${n}-details-${F}`,s)})]},`${n}-details-${F}`)});continue}if(/^<video\b/i.test(h)){const F=c,M=[g];for(c+=1;!M[M.length-1].match(/<\/video\s*>/i)&&c<r.length&&r[c].trim();)s.budget.check(),M.push(r[c++]);const N=M.join(`
|
|
1638
|
+
`);const b=d.length;d+=x.data,l.push({node:x,start:b,end:d.length,group:f}),c=f}const g=d.toLocaleLowerCase(),h=[];let p=0;for(;p<=g.length-s.length;){const x=g.indexOf(s,p);if(x<0)break;const f=x+s.length,b=l.find(j=>j.start<=x&&j.end>x),E=l.find(j=>j.start<f&&j.end>=f);if(b&&E&&b.group===E.group){const j=document.createRange();j.setStart(b.node,x-b.start),j.setEnd(E.node,f-E.start),h.push(j)}p=x+Math.max(s.length,1)}return h}function Mf(){return typeof CSS<"u"&&CSS.highlights?CSS.highlights:null}let To;function Cu(r){return To===r}function vo(r){if(r&&To!==r)return;const n=Mf();n?.delete(Ef),n?.delete($l),To=void 0}function sl(r,n,s){const l=Mf();if(!l||typeof Highlight>"u")return;To=s,l.set(Ef,new Highlight(...r));const d=r[n];d?l.set($l,new Highlight(d)):l.delete($l)}function Eu(r){r?.startContainer.parentElement?.scrollIntoView({block:"center",inline:"nearest",behavior:"smooth"})}function Wb(r){return Array.from(new Set(r.split(/[\n,]/).map(n=>n.trim().replace(/^!+/,"")).filter(Boolean))).slice(0,24)}function Gb(r,n){const s=n.trim();return!s||s==="."?r:/^(?:[/\\]|[A-Za-z]:[/\\])/.test(s)?s.replace(/[\\/]+$/,""):`${r.replace(/[\\/]+$/,"")}/${s.replace(/^\.?[\\/]+/,"").replace(/[\\/]+$/,"")}`}function Kb(r,n){if(n===r)return".";const s=`${r.replace(/[\\/]+$/,"")}/`;return n.startsWith(s)?n.slice(s.length):n}function $f(r,n,s){return n?r:yr.createPortal(r,s)}const Wl="termdock:right-sidebar:file-tree-scroll:v1",Gl="termdock:right-sidebar:file-preview-reading-state:v1",na="termdock:right-sidebar:file-tree-width:v1",Pf="termdock:right-sidebar:markdown-view-mode:v1",Af="termdock:right-sidebar:diff-change-list-mode:v1",Lf="termdock:right-sidebar:diff-wrap:v1",Tf="termdock:diff-viewer:view-type:v1",If="termdock:right-sidebar:file-search-mode:v1",al="termdock:right-sidebar:collapsed-git-repo-groups:v1",Mu="termdock:right-sidebar:collapsed-diff-directories:v1",ol="termdock:right-sidebar:branch-audit-module-open:v1",Df="termdock:right-sidebar:branch-audit-module:v1",qb=150,$u="termdock:right-sidebar:context-draft-enabled:v1",Pu="termdock:right-sidebar:context-draft-collapsed:v1",Au="termdock:right-sidebar:context-draft-auto-collapse:v1",il="termdock:right-sidebar:context-draft-text:v1",Vb=300,Yb=20,Xb=120,Jb=250,Qb=250,Zb=120,ex=700,ll=600,tx=6e4;function Js(r){return!!(r&&V.getState().nestedGitScanRoots[r])}const Lu=[2e3,5e3,15e3,3e4],rx=320,nx=500,sx=20,ax=12e3,Pl=300,Tu=240,ox=560,Ff="border-r px-2 py-1.5 sm:px-3 sm:py-2",Io="min-w-full max-w-[18rem] whitespace-normal break-words sm:max-w-[27rem]",_f=`${Ff} border-b border-border/15 font-semibold last:border-r-0`,Bf=`${Ff} border-border/10 align-top text-muted-foreground last:border-r-0`,Kl="termdock-file-preview-horizontal-scroll",Iu=a.lazy(()=>Ln(()=>import("./ModelPreview-Cv6JgunE.js"),__vite__mapDeps([7,1,2,3,4,5,8,9,10,11,12,13,14,15,16,17]))),ix=a.lazy(()=>Ln(()=>import("./ArchitecturePanel-DfRsqSBx.js"),__vite__mapDeps([18,1,2,3,4,5,8,9,10,11,12,15,16,6,14,13,17,19])).then(r=>({default:r.ArchitecturePanel}))),lx=a.lazy(()=>Ln(()=>import("./ComputerControlView-BKwuceeG.js").then(r=>r.a),__vite__mapDeps([20,1,2,3,4,5,17,14,11,8,9,10,12]))),Of=`${Kl} termdock-md-table-scroll max-w-full overflow-x-auto overflow-y-hidden rounded-lg border border-border/20 bg-surface`;function Uf(r,n,s){return r&&!n?"unified":s}const cx=new Set([".md",".markdown",".mdown",".mkdn",".mkd"]);function dx(r){return r==="preview"||r==="source"}function ux(r){return r==="list"||r==="tree"||r==="ai"}function Du(){return gt(Pf,dx)??"preview"}function fx(){return gt(Af,ux)??"tree"}function sa(r){return typeof r=="boolean"}function hx(r){return typeof r=="string"}function mx(){return gt(Lf,sa)??!0}function px(r){return r==="unified"||r==="split"}function gx(){return gt(Tf,px)??"unified"}function bx(r){return r==="name"||r==="content"||r==="regex"}function xx(){return gt(If,bx)??"name"}function Hf(r){return r.repositories??(r.context?.root?[{id:r.context.root,root:r.context.root,relativeRoot:".",name:yt(r.context.root)||r.context.root,depth:0,nested:!1,available:r.available,files:r.files,context:r.context,error:r.error}]:[])}function vx(r,n){if(!n)return null;const s=new Set((r.repoFilters??[]).map(l=>l.root));return s.has(n)?n:s.size>0?null:(r.repositories??[]).some(l=>l.root===n)?n:null}function Al(r){return!r.activeGitRepoRoot&&(r.groupCount>1||r.label!==r.rootName)}function zf(...r){const n=new Set;for(const s of r)for(const l of s)n.add(l.root);return n}function Ll(r){return Array.isArray(r)&&r.every(n=>typeof n=="string")}function Fu(r){const n=gt(r,Ll);return n?new Set(n):new Set}function cl(r,n){At(r,[...n])}function wx(r){if(!r||typeof r!="object"||Array.isArray(r))return!1;const n=r;return typeof n.filePath=="string"&&typeof n.hunkHeader=="string"&&typeof n.hunkIndex=="number"&&typeof n.fingerprint=="string"&&typeof n.additions=="number"&&typeof n.deletions=="number"&&typeof n.diff=="string"&&(n.oldPath===void 0||n.oldPath===null||typeof n.oldPath=="string")&&(n.newPath===void 0||n.newPath===null||typeof n.newPath=="string")&&(n.source===void 0||n.source==="committed"||n.source==="uncommitted"||n.source==="unknown")&&(n.commit===void 0||n.commit===null||typeof n.commit=="string")}function yx(r){if(!r||typeof r!="object"||Array.isArray(r))return!1;const n=r;return typeof n.available=="boolean"&&(n.repoRoot===void 0||typeof n.repoRoot=="string")&&(n.workspaceRoot===void 0||typeof n.workspaceRoot=="string")&&(n.baseRef===void 0||typeof n.baseRef=="string")&&(n.baseBranch===void 0||typeof n.baseBranch=="string")&&(n.currentBranch===void 0||n.currentBranch===null||typeof n.currentBranch=="string")&&(n.headRef===void 0||n.headRef===null||typeof n.headRef=="string")&&(n.diffFingerprint===void 0||typeof n.diffFingerprint=="string")&&(n.stat===void 0||typeof n.stat=="string")&&(n.files===void 0||Ll(n.files))&&(n.hunks===void 0||Array.isArray(n.hunks)&&n.hunks.every(wx))&&(n.commits===void 0||Ll(n.commits))&&(n.commitCount===void 0||typeof n.commitCount=="number")&&(n.diff===void 0||typeof n.diff=="string")&&(n.truncated===void 0||typeof n.truncated=="boolean")&&(n.error===void 0||typeof n.error=="string")}function kx(r){if(!r||typeof r!="object"||Array.isArray(r))return!1;const n=r;return typeof n.key=="string"&&yx(n.diff)&&typeof n.repoLabel=="string"&&typeof n.createdAt=="number"}function Sx(r){return!r||typeof r!="object"||Array.isArray(r)?!1:Object.values(r).every(n=>{if(!n||typeof n!="object"||Array.isArray(n))return!1;const s=n;return Array.isArray(s.selectedRepoRoots)&&s.selectedRepoRoots.every(l=>typeof l=="string")&&!!s.repoTargetBranches&&typeof s.repoTargetBranches=="object"&&!Array.isArray(s.repoTargetBranches)&&Object.values(s.repoTargetBranches).every(l=>typeof l=="string")&&(s.repoBaseBranches===void 0||!!s.repoBaseBranches&&typeof s.repoBaseBranches=="object"&&!Array.isArray(s.repoBaseBranches)&&Object.values(s.repoBaseBranches).every(l=>typeof l=="string"))&&(s.previewEntries===void 0||Array.isArray(s.previewEntries)&&s.previewEntries.every(kx))&&(s.selectedPreviewKey===void 0||s.selectedPreviewKey===null||typeof s.selectedPreviewKey=="string")&&(s.selectedPreviewFileKey===void 0||s.selectedPreviewFileKey===null||typeof s.selectedPreviewFileKey=="string")&&(s.previewDetailOpen===void 0||typeof s.previewDetailOpen=="boolean")&&(s.previewScrollTops===void 0||!!s.previewScrollTops&&typeof s.previewScrollTops=="object"&&!Array.isArray(s.previewScrollTops)&&Object.values(s.previewScrollTops).every(l=>typeof l=="number"))&&(s.previewMobileSlideIndex===void 0||typeof s.previewMobileSlideIndex=="number")&&(s.repoIncludeUncommitted===void 0||!!s.repoIncludeUncommitted&&typeof s.repoIncludeUncommitted=="object"&&!Array.isArray(s.repoIncludeUncommitted)&&Object.values(s.repoIncludeUncommitted).every(l=>typeof l=="boolean"))&&(s.includeUncommitted===void 0||typeof s.includeUncommitted=="boolean")&&typeof s.updatedAt=="number"})}function _u(){return gt(Df,Sx)??{}}function Bu(r){return[r.repoRoot,r.baseRef,r.branchName??"",r.headRef??"",r.diffFingerprint??""].join("\0")}function Ou(r){const n=r?.trim()??"",s=n.indexOf("/");return s>=0?n.slice(s+1):n}function Wf(r,n){const s=r?.trim(),l=n?.trim();return!s||!l?!1:s===l||Ou(s)===Ou(l)}function Uu(r){const n=r?.branch??null;return[r?.upstream,...r?.remoteBranches??[],...r?.branches??[]].find(l=>l&&!Wf(l,n))??""}function Tl(r,n){const s=Math.max(Tu,n-320),l=Math.min(ox,s);return Math.min(l,Math.max(Tu,r))}function jx(r){return typeof r=="number"&&Number.isFinite(r)}function Rx(r){return Tl(gt(na,jx)??Pl,r)}function Gf(r){const n=r.split(/[\\/]/).pop()??r,s=n.lastIndexOf(".");return s>=0?n.slice(s).toLowerCase():""}function Qs(r){return cx.has(Gf(r))}function Kf(r){const n=r.trim().replace(/\s+/g,"");return/^-{3,}$/.test(n)||/^\*{3,}$/.test(n)||/^_{3,}$/.test(n)}function Il(r){const n=r.trim();return/^#{1,6}\s+/.test(n)||Kf(r)||/^>\s?/.test(n)||/^(```|~~~)/.test(n)||/^<video\b/i.test(n)||/^(?:[-+*]|\d+[.)])\s+/.test(n)}function qf(r){const n=r.trim();return/^(https?:|mailto:|#|\/|\.\/|\.\.\/)/i.test(n)||!/^[a-z][a-z0-9+.-]*:/i.test(n)&&!/[<>]/.test(n)?n:null}const Vf=a.createContext(null);function Eo(r){return r.trim().replace(/\s+/g," ").toLowerCase()}function Yf(r){return r.replace(/!\[([^\]]*)\]\([^)]+\)/g,"$1").replace(/\[([^\]]+)\]\([^)]+\)/g,"$1").replace(/\[([^\]]+)\]\[[^\]]*\]/g,"$1").replace(/[`*_~]/g,"").replace(/<[^>]+>/g,"").trim()}function Xf(r){return r.replace(/\s+#+\s*$/,"").trim()}function Dl(r,n){const l=Yf(r).toLowerCase().replace(/[^\p{L}\p{N}\s-]/gu,"").trim().replace(/\s+/g,"-")||"section",d=n.headingSlugCounts.get(l)??0;return n.headingSlugCounts.set(l,d+1),d===0?l:`${l}-${d}`}function Hu(r){return Yf(r)||r.trim()}function Do(r){const n=r.match(/^\s{0,3}\[([^\]]+)\]:\s+(.+?)\s*$/);if(!n)return null;const s=_l(n[2]);return s?{id:Eo(n[1]),definition:{href:s.href,title:s.title}}:null}function Nx(r){const n=new Map;for(const s of r){const l=Do(s);l&&n.set(l.id,l.definition)}return n}function Jf(r){return r.trim().toLowerCase()}function Qf(r){const n=r.match(/^\s{0,3}\[\^([^\]]+)\]:\s+(.+)\s*$/);return n?{id:Jf(n[1]),text:n[2]}:null}function Cx(r){const n=new Map;let s=null;for(const l of r){const d=Qf(l);if(d){s=d.id,n.set(d.id,{id:d.id,text:d.text,index:n.size+1});continue}if(s&&/^\s{4,}\S/.test(l)){const c=n.get(s);c&&(c.text=`${c.text} ${l.trim()}`);continue}l.trim()&&(s=null)}return n}function Zf(r){const n=new Set;let s=!1;return r.forEach((l,d)=>{if(Qf(l)){n.add(d),s=!0;return}if(s&&/^\s{4,}\S/.test(l)){n.add(d);return}l.trim()&&(s=!1)}),n}function Ex(r){const n=[...r];let s=0;const l=r[0]?.trim();if(l==="---"||l==="+++"){for(n[0]="",s=1;s<r.length&&r[s].trim()!==l;)n[s]="",s+=1;s<r.length&&(n[s]="",s+=1)}for(;s<r.length;){const d=r[s].trim();if(d.startsWith("<!--")){if(n[s]="",!d.includes("-->")){for(s+=1;s<r.length&&!r[s].includes("-->");)n[s]="",s+=1;s<r.length&&(n[s]="")}s+=1;continue}s+=1}return n}function eh(r){const n=r.replace(/\/+$/,""),s=n.lastIndexOf("/");return s<=0?s===0?"/":"":n.slice(0,s)}function ia(r){const n=r.split(/[?#]/,1)[0],s=n.startsWith("/"),l=[];for(const c of n.split("/"))if(!(!c||c===".")){if(c===".."){l.length>0&&l.pop();continue}l.push(c)}return`${s?"/":""}${l.join("/")}`||(s?"/":".")}function Go(r,n,s){const l=r.trim();if(!l||/^(?:https?:|mailto:|javascript:|data:)/i.test(l)||/^[a-z][a-z0-9+.-]*:/i.test(l))return null;if(l.startsWith("#")){if(!n)return null;try{return{path:n,fragment:decodeURIComponent(l.slice(1))||null,directory:!1}}catch{return null}}const d=l.indexOf("#"),c=d>=0?l.slice(0,d):l,m=d>=0?l.slice(d+1):"",g=c.split("?",1)[0];if(!g)return null;let h,p=null;try{h=decodeURIComponent(g),p=m?decodeURIComponent(m):null}catch{return null}const x=s?ia(s):null;let f;if(h.startsWith("/")){const b=x&&(h===x||h.startsWith(`${x}/`));f=ia(x&&!b?`${x}/${h.slice(1)}`:h)}else{if(!n)return null;f=ia(`${eh(n)}/${h}`)}return x&&f!==x&&!f.startsWith(`${x}/`)?null:{path:f,fragment:p,directory:/\/$/.test(g)}}function th(r,n,s,l,d){const c=r.trim();if(!c||/^(?:javascript|data):/i.test(c))return null;if(/^https?:\/\//i.test(c))return c;if(!l(c.split(/[?#]/,1)[0]))return null;let m;if(c.startsWith("/")){const g=s&&(c===s||c.startsWith(`${s}/`));m=ia(s&&!g?`${s}/${c.slice(1)}`:c)}else{if(!n)return null;m=ia(`${eh(n)}/${c}`)}return d(m)}function rh(r,n,s){return th(r,n,s,Ul,l=>`/api/terminal/fs/blob?path=${encodeURIComponent(l)}`)}function ql(r,n,s){if(/^https?:\/\//i.test(r.trim()))return r.trim();const l=Go(r,n,s);return!l||!Hl(l.path)?null:rf(l.path)+(l.fragment?`#${l.fragment}`:"")}function nh(r){try{return Hl(decodeURIComponent(new URL(r,"https://markdown.invalid/").pathname))}catch{return!1}}const Fl=128,Mx=360,dl=480;function ga(r){try{return/\.svg(?=$|[?#&])/i.test(decodeURIComponent(r))}catch{return!1}}function sh(r,n,s,l,d=0){if(!n||!s)return null;let c,m;return d>0?(c=l>0?Math.min(d,l):d,m=s*c/n):ga(r)?(m=Math.min(Math.max(s,Fl),Mx),c=n*m/s):(c=n,m=s),l>0&&c>l&&(m=m*l/c,c=l),m>dl&&(c=c*dl/m,m=dl),{width:Math.max(1,Math.round(c)),height:Math.max(1,Math.round(m))}}function $x(r){if(!r.startsWith("/api/terminal/fs/blob?"))return null;try{return new URLSearchParams(r.slice(r.indexOf("?"))).get("path")}catch{return null}}function ah(r){const n=$x(r),s=V(l=>n?(l.fileChangeVersions.get(n)??0)+l.fileWatchEpoch:0);return n&&s>0?`${r}&v=${s}`:r}function Px({src:r,alt:n,title:s,requestedWidthPx:l}){const d=ga(r),c=ah(r),m=fa(c),g=a.useRef(null),[h,p]=a.useState(!1),[x,f]=a.useState(0),[b,E]=a.useState({status:"loading"}),[j,T]=a.useState(null);a.useLayoutEffect(()=>{const M=g.current;let N=M?.parentElement?.parentElement??M?.parentElement;for(;N;){const S=window.getComputedStyle(N).display;if(S!=="inline"&&S!=="contents")break;N=N.parentElement}if(!N)return;const A=N,_=()=>{const S=window.getComputedStyle(A),o=(parseFloat(S.paddingLeft)||0)+(parseFloat(S.paddingRight)||0);f(Math.max(0,A.clientWidth-o))};if(_(),typeof ResizeObserver>"u")return;const q=new ResizeObserver(_);return q.observe(A),()=>q.disconnect()},[]),a.useEffect(()=>{if(h)return;const M=g.current;if(!M||typeof IntersectionObserver>"u"){p(!0);return}const N=new IntersectionObserver(A=>{A.some(_=>_.isIntersecting)&&(p(!0),N.disconnect())},{rootMargin:"400px"});return N.observe(M),()=>N.disconnect()},[h]),a.useEffect(()=>{if(!h)return;const M=new AbortController;let N=null;E({status:"loading"});const A=window.setTimeout(()=>{M.abort(new DOMException("Image fetch timed out","TimeoutError"))},15e3);return nf(c,{signal:M.signal}).then(async _=>{if(!_.ok)throw new Error(`HTTP ${_.status}`);const q=Number(_.headers.get("X-Image-Width"))||0,S=Number(_.headers.get("X-Image-Height"))||0;return{blob:await _.blob(),width:q,height:S}}).then(({blob:_,width:q,height:S})=>{M.signal.aborted||(N=URL.createObjectURL(_),q>0&&S>0&&T({width:q,height:S}),E({status:"ready",objectUrl:N}))}).catch(()=>{const _=M.signal.reason;M.signal.aborted&&!(_ instanceof DOMException&&_.name==="TimeoutError")||E({status:"fallback"})}).finally(()=>{window.clearTimeout(A)}),()=>{window.clearTimeout(A),M.abort(),N&&URL.revokeObjectURL(N)}},[h,c]);const D=sh(r,j?.width??0,j?.height??0,x,l??0),F=D??(l?{width:x>0?Math.min(l,x):l,height:Math.round(l*.75)}:{width:Fl*2,height:Fl});return e.jsx("div",{ref:g,className:"block max-w-full",style:D?{width:D.width,height:D.height}:void 0,children:b.status==="ready"?e.jsx("img",{src:b.objectUrl,alt:n,title:s,decoding:"async",className:`${d?"":"termdock-fade-in "}block max-h-[480px] max-w-full object-contain`,style:D?{width:D.width,height:D.height}:void 0,onLoad:M=>{const N=M.currentTarget;N.naturalWidth>0&&N.naturalHeight>0&&(j?.width!==N.naturalWidth||j?.height!==N.naturalHeight)&&T({width:N.naturalWidth,height:N.naturalHeight})}}):b.status==="fallback"?e.jsx("img",{src:m,alt:n,title:s,loading:"lazy",decoding:"async",className:"block max-h-[480px] max-w-full object-contain",style:D?{width:D.width,height:D.height}:void 0,onLoad:M=>{const N=M.currentTarget;N.naturalWidth>0&&N.naturalHeight>0&&(j?.width!==N.naturalWidth||j?.height!==N.naturalHeight)&&T({width:N.naturalWidth,height:N.naturalHeight})}}):e.jsx("div",{"aria-hidden":!0,className:"flex max-w-full animate-pulse items-center justify-center rounded bg-surface-elevated/60",style:{width:F.width,height:F.height},children:e.jsx("span",{className:"text-[10px] text-muted-foreground/60",children:n||"…"})})})}function la(r,n,s,l,d,c){if(!c?.fallbackText&&nh(s)){const p=ql(s,d.markdownFilePath,d.rootPath);if(p)return e.jsx(Vl,{url:p,label:n,title:l,hasControls:!0},r)}const m=rh(s,d.markdownFilePath,d.rootPath);if(!m)return c?.fallbackText??``;const g=d.images.length;d.images.push({kind:"image",src:m,alt:n,title:l});const h=e.jsx(Px,{src:m,alt:n,title:l,requestedWidthPx:c?.requestedWidthPx});return d.onImageOpen&&c?.interactive!==!1?e.jsx("button",{type:"button",className:"my-2 block max-w-full overflow-hidden rounded-md border border-border/20 bg-surface-2 text-left transition hover:border-border-strong focus:outline-none focus:ring-2 focus:ring-ring/45",title:l||n||"Open image",onClick:p=>{p.stopPropagation(),d.onImageOpen?.(g)},children:h},r):e.jsx("span",{className:"my-2 block max-w-full overflow-hidden rounded-md border border-border/20 bg-surface-2",children:h},r)}function ul(r){let n=r,s="";for(;/[.,;:!?)]$/.test(n);)s=`${n.slice(-1)}${s}`,n=n.slice(0,-1);return{linkText:n,suffix:s}}function zu(r){return/^[^\s@<>]+@[^\s@<>]+\.[^\s@<>]+$/.test(r)}function _l(r){const n=r.trim(),s=n.match(/^<([^>]+)>(?:\s+(?:"([^"]*)"|'([^']*)'|\(([^)]*)\)))?$/);if(s)return{href:s[1],title:s[2]??s[3]??s[4]};const l=n.match(/^(\S+)(?:\s+(?:"([^"]*)"|'([^']*)'|\(([^)]*)\)))?$/);return l?{href:l[1],title:l[2]??l[3]??l[4]}:null}const oh="",Ax=/\\([\\`*{}\[\]#+\-.!_|~>$])/g;function Lx(r){return r.replace(Ax,(n,s)=>`${oh}${s.charCodeAt(0).toString(16).padStart(4,"0")}`)}function Wu(r){return r.replace(new RegExp(`${oh}([0-9a-f]{4})`,"g"),(n,s)=>String.fromCharCode(Number.parseInt(s,16))).replace(/\\([()])/g,"$1")}function Tx(r){const n=r.replace(/[\r\n]+/g," ");return/^ .+ $/.test(n)&&/[^ ]/.test(n.slice(1,-1))?n.slice(1,-1):n}const ih={ALLOWED_TAGS:["a","abbr","b","blockquote","br","code","del","details","div","em","i","kbd","li","mark","ol","p","pre","s","span","strong","sub","summary","sup","table","tbody","td","th","thead","tr","u","ul"],ALLOWED_ATTR:["href","title","class","id","colspan","rowspan"],ALLOW_DATA_ATTR:!1,ALLOW_ARIA_ATTR:!0};let wo=null;function lh(){return wo||(wo=Ln(()=>import("./purify.es-4eNOHKSq.js"),[]).then(r=>r.default??r).catch(r=>{throw wo=null,r})),wo}function ch({html:r}){const{t:n}=ht(),[s,l]=a.useState(null);return a.useEffect(()=>{let d=!1;return l(null),lh().then(c=>{d||l(c.sanitize(r,ih))}).catch(()=>{d||l("")}),()=>{d=!0}},[r]),s===null?e.jsx("div",{className:"py-2 text-xs text-muted-foreground",children:n("rightSidebar.renderingHtml")}):s?e.jsx("div",{className:"text-muted-foreground",dangerouslySetInnerHTML:{__html:s}}):null}function Ix({html:r}){const[n,s]=a.useState(null);return a.useEffect(()=>{let l=!1;return s(null),lh().then(d=>{l||s(d.sanitize(r,ih))}).catch(()=>{l||s("")}),()=>{l=!0}},[r]),n===null?null:n?e.jsx("span",{dangerouslySetInnerHTML:{__html:n}}):r}function dh(r){const n=r.trim().match(/^<(div|section|article|aside|table|p|ul|ol|li|blockquote|pre|figure|figcaption)\b[^>]*>/i);if(!n)return null;const s=n[1].toLowerCase();return{tag:s,selfContained:new RegExp(`</${s}>`,"i").test(r)}}let yo=null;function Dx(){return yo||(yo=Promise.all([Ln(()=>import("./katex-DnlPpQZa.js"),[]),Ln(()=>Promise.resolve({}),__vite__mapDeps([21]))]).then(([r])=>r.default??r).catch(r=>{throw yo=null,r})),yo}function ha({tex:r,display:n=!1}){const[s,l]=a.useState(null),[d,c]=a.useState(!1);if(a.useEffect(()=>{let g=!1;return l(null),c(!1),Dx().then(h=>{g||l(h.renderToString(r,{displayMode:n,throwOnError:!1,trust:!1,strict:"ignore"}))}).catch(()=>{g||c(!0)}),()=>{g=!0}},[n,r]),d)return e.jsx("code",{className:"rounded bg-surface-2 px-1 py-0.5 font-mono text-[0.92em] text-foreground",children:n?`$$${r}$$`:`$${r}$`});if(!s)return e.jsx("span",{className:"text-muted-foreground/70",children:n?"Rendering formula...":r});const m=n?"my-2 overflow-auto rounded-md bg-surface-2 px-3 py-2 text-center":"inline-block align-middle";return e.jsx("span",{className:m,dangerouslySetInnerHTML:{__html:s}})}function Fo(r){const n=new Map;for(const s of r.matchAll(/([a-zA-Z_:][-a-zA-Z0-9_:.]*)\s*=\s*(?:"([^"]*)"|'([^']*)'|([^\s"'=<>`]+))/gi))n.set(s[1].toLowerCase(),s[2]??s[3]??s[4]);return n}function Gu(r){const n=Fo(r),s=n.get("src")?.trim()??"",l=n.get("width")?.trim().match(/^(\d+(?:\.\d+)?)(?:px)?$/i);return{src:s,alt:n.get("alt"),title:n.get("title"),widthPx:l?Number(l[1]):void 0}}function Fx(r){const n=r.indexOf(">"),s=n<0?r:r.slice(0,n+1),l=Fo(s),d=l.get("src")?.trim()??"",c=d?[d]:Array.from(r.slice(n+1).matchAll(/<source\b[^>]*>/gi),x=>Fo(x[0]).get("src")?.trim()??"").filter(Boolean),m=l.get("width")?.trim().match(/^(\d+(?:\.\d+)?)(?:px)?$/i),g=l.get("style")?.match(/(?:^|;)\s*max-width\s*:\s*(\d+(?:\.\d+)?)px\s*(?:;|$)/i),h=s.replace(/=\s*(?:"[^"]*"|'[^']*')/g," "),p=n<0?"":r.slice(n+1).replace(/<\/video\s*>$/i,"").replace(/<[^>]*>/g,"").trim();return{sources:c,poster:l.get("poster"),fallbackText:p,widthPx:m?Number(m[1]):void 0,maxWidthPx:g?Number(g[1]):void 0,controls:/\bcontrols\b/i.test(h)}}function Vl({url:r,poster:n,fallbackText:s,widthPx:l,maxWidthPx:d,hasControls:c,label:m,title:g}){const{t:h}=ht(),[p,x]=a.useState(!1),f=fa(r,()=>x(!0)),b=fa(n??"");return a.useEffect(()=>x(!1),[r]),!f&&!p?null:e.jsx("span",{className:"my-2 block max-w-full overflow-hidden rounded-md border border-border/20 bg-surface-2",children:p?e.jsx("span",{className:"block px-3 py-2 text-xs text-muted-foreground",children:s?.trim()||h("rightSidebar.videoUnsupported")}):e.jsx("video",{className:"block max-w-full",src:f,poster:b||void 0,"aria-label":m,title:g,style:{width:l?`${l}px`:"100%",maxWidth:d?`${d}px`:void 0},controls:c,preload:"metadata",playsInline:!0,onError:()=>x(!0)})})}function _x(r,n,s){if(/^<a\b[^>]*>\s*<\s*img\b[^>]*>\s*<\/a\s*>$/i.test(r)){const m=r.slice(0,r.indexOf(">")+1),g=Fo(m).get("href")?.trim()??"",h=r.match(/<\s*img\b[^>]*>/i)?.[0]??"",{src:p,alt:x,title:f,widthPx:b}=Gu(h);if(!p)return null;const E=th(p,s.markdownFilePath,s.rootPath,Ul,M=>M);if(!E)return null;const j=g?Go(g,s.markdownFilePath,s.rootPath):null,D=!!!(j&&j.path===E)&&g?qf(g):null,F=la(n,x??"",p,f,s,{requestedWidthPx:b,interactive:D?!1:void 0});return D?e.jsx("a",{href:D,target:"_blank",rel:"noreferrer",children:F},n):F}if(/^<\s*img\b[^>]*>$/i.test(r)){const{src:m,alt:g,title:h,widthPx:p}=Gu(r);return m?la(n,g??"",m,h,s,{fallbackText:r,requestedWidthPx:p}):null}if(/^<\s*video\b[^>]*>[\s\S]*?<\/video\s*>$/i.test(r)){const{sources:m,poster:g,fallbackText:h,widthPx:p,maxWidthPx:x,controls:f}=Fx(r),b=m.map(j=>ql(j,s.markdownFilePath,s.rootPath)).find(Boolean);if(!b)return null;const E=g?rh(g,s.markdownFilePath,s.rootPath):null;return e.jsx(Vl,{url:b,poster:E??void 0,fallbackText:h,widthPx:p,maxWidthPx:x,hasControls:f},n)}if(/^<br\s*\/?>$/i.test(r))return e.jsx("br",{},n);const l=r.match(/^<(kbd|mark|sub|sup)>(.*?)<\/\1>$/i);if(!l)return/^<(a|abbr|span|b|strong|em|i|u|s|del|code)\b[\s\S]*<\/\1>$/i.test(r)?e.jsx(Ix,{html:r},n):null;const d=l[1].toLowerCase(),c=ct(l[2],`${n}-${d}`,!0,s);return d==="kbd"?e.jsx("kbd",{className:"rounded border border-border/30 bg-surface-2 px-1.5 py-0.5 font-mono text-[0.85em] text-foreground shadow-sm",children:c},n):d==="mark"?e.jsx("mark",{className:"rounded bg-warning/25 px-0.5 text-foreground",children:c},n):d==="sub"?e.jsx("sub",{children:c},n):e.jsx("sup",{children:c},n)}function ct(r,n,s=!0,l){return l.budget.nested(()=>Bx(r,n,s,l))}function Bx(r,n,s=!0,l){l.budget.validateInline(r);const d=Lx(r),c=[];let m=0;for(const{index:g,token:h}of kg(d,l.budget)){g>m&&c.push(Wu(d.slice(m,g)));const p=`${n}-${g}`,x=h.startsWith("<")?_x(h,p,l):null;if(x)c.push(x);else if(h.startsWith("\\(")&&h.endsWith("\\)"))c.push(e.jsx(ha,{tex:h.slice(2,-2)},p));else if(h.startsWith("$")&&h.endsWith("$"))c.push(e.jsx(ha,{tex:h.slice(1,-1)},p));else if(h.startsWith("`")){const f=h.match(/^`+/)?.[0].length??1;c.push(e.jsx("code",{className:`${s?"break-all":"whitespace-nowrap"} rounded bg-surface-2 px-1 py-0.5 font-mono text-[0.92em] text-foreground`,children:Tx(h.slice(f,-f))},p))}else if(h.startsWith("~~"))c.push(e.jsx("del",{className:"text-muted-foreground decoration-border-strong",children:ct(h.slice(2,-2),`${p}-del`,s,l)},p));else if(h.startsWith("**")||h.startsWith("__"))c.push(e.jsx("strong",{className:"font-semibold text-foreground",children:ct(h.slice(2,-2),`${p}-strong`,s,l)},p));else if(h.startsWith("*")||h.startsWith("_"))c.push(e.jsx("em",{className:"italic",children:ct(h.slice(1,-1),`${p}-em`,s,l)},p));else if(h.startsWith("![")){const f=h.match(/^!\[([^\]]*)\]\((.*)\)$/),b=h.match(/^!\[([^\]]+)\]\[([^\]]*)\]$/),E=h.match(/^!\[([^\]]+)\]$/);if(f){const j=_l(f[2]);c.push(j?la(p,f[1],j.href,j.title,l):h)}else if(b){const j=b[2]||b[1],T=l.referenceDefinitions.get(Eo(j));c.push(T?la(p,b[1],T.href,T.title,l):h)}else if(E){const j=l.referenceDefinitions.get(Eo(E[1]));c.push(j?la(p,E[1],j.href,j.title,l):h)}else c.push(h)}else if(h.startsWith("[^")){const f=Jf(h.slice(2,-1)),b=l.footnoteDefinitions.get(f);c.push(b?e.jsx("sup",{id:`fnref-${b.id}`,title:b.text,className:"ml-0.5 rounded bg-surface-2 px-1 text-[0.72em] font-semibold text-primary",children:e.jsx("a",{href:`#fn-${b.id}`,className:"text-primary no-underline",children:b.index})},p):h)}else if(h.startsWith("<http")){const f=h.slice(1,-1);c.push(e.jsx("a",{href:f,target:"_blank",rel:"noreferrer",className:`${s?"break-all":"whitespace-nowrap"} text-primary underline decoration-primary/40 underline-offset-2 hover:decoration-primary`,children:f},p))}else if(h.startsWith("<")&&h.endsWith(">")&&zu(h.slice(1,-1))){const f=h.slice(1,-1);c.push(e.jsx("a",{href:`mailto:${f}`,className:`${s?"break-all":"whitespace-nowrap"} text-primary underline decoration-primary/40 underline-offset-2 hover:decoration-primary`,children:f},p))}else if(zu(ul(h).linkText)){const{linkText:f,suffix:b}=ul(h);c.push(e.jsx("a",{href:`mailto:${f}`,className:`${s?"break-all":"whitespace-nowrap"} text-primary underline decoration-primary/40 underline-offset-2 hover:decoration-primary`,children:f},p)),b&&c.push(b)}else if(h.startsWith("http")||h.startsWith("www.")){const{linkText:f,suffix:b}=ul(h),E=f.startsWith("www.")?`https://${f}`:f;c.push(e.jsx("a",{href:E,target:"_blank",rel:"noreferrer",className:`${s?"break-all":"whitespace-nowrap"} text-primary underline decoration-primary/40 underline-offset-2 hover:decoration-primary`,children:f},p)),b&&c.push(b)}else{const f=h.match(/^\[([^\]]+)\]\((.*)\)$/),b=h.match(/^\[([^\]]+)\]\[([^\]]*)\]$/),E=h.match(/^\[([^\]]+)\]$/),j=b?b[2]||b[1]:E?.[1]??null,T=j?l.referenceDefinitions.get(Eo(j)):null,D=f?_l(f[2]):null,F=D?.href??T?.href??null,M=F?qf(F):null,N=f?.[1]??b?.[1]??E?.[1]??"",A=M&&nh(M)?ql(M,l.markdownFilePath,l.rootPath):null,_=M?e.jsx("a",{href:M,title:D?.title??T?.title,target:"_blank",rel:"noreferrer",className:`${s?"break-all":"whitespace-nowrap"} text-primary underline decoration-primary/40 underline-offset-2 hover:decoration-primary`,children:ct(N,`${p}-link`,s,l)},p):h;c.push(A?e.jsxs("span",{children:[e.jsx(Vl,{url:A,label:N,title:D?.title??T?.title,hasControls:!0}),_]},p):_)}m=g+h.length}return m<d.length&&c.push(Wu(d.slice(m))),c.length>0?c:[r]}function uh(r){return/(?: {2,}|\\)$/.test(r)}function fh(r){return r.replace(/(?: {2,}|\\)$/,"")}function _o(r){return/^(?: {4}|\t)/.test(r)}function hh(r){return r.startsWith(" ")?r.slice(1):r.replace(/^ {4}/,"")}function mh(r,n,s){const l=[];return r.forEach((d,c)=>{const m=uh(d);l.push(...ct(fh(d),`${n}-${c}`,!0,s)),c<r.length-1&&l.push(m?e.jsx("br",{},`${n}-${c}-br`):" ")}),l}function Bl(r,n,s){const l=[],d=[];return r.forEach((c,m)=>{d.push(uh(c)),l.push(ct(fh(c),`${n}-${m}`,!0,s))}),{perLine:l,hardBreaks:d}}function Ol(r,n,s,l,d){const c=[];return r.forEach((m,g)=>{const h=s[g]??0,p=!!(d&&h>=d.start&&h<=d.end);c.push(e.jsx("span",{"data-md-ref-start":h,"data-md-ref-end":h,"data-selected":p?"true":void 0,children:m},`${l}-ref-${g}`)),g<r.length-1&&c.push(n[g]?e.jsx("br",{},`${l}-${g}-br`):" ")}),c}function ma(r){const n=r.trim().replace(/^\|/,"").replace(/\|$/,""),s=[];let l="",d=!1,c=0,m=0;for(let g=0;g<n.length;g+=1){const h=n[g];if(d){l+=h,d=!1;continue}if(h==="\\"){d=!0;continue}if(h==="`"){const p=g;for(;g+1<n.length&&n[g+1]==="`";)g+=1;const x=g-p+1;l+="`".repeat(x),c===0?c=x:c===x&&(c=0);continue}if(c===0&&h==="["?m+=1:c===0&&h==="]"&&m>0&&(m-=1),h==="|"&&c===0&&m===0){s.push(l.trim()),l="";continue}l+=h}return d&&(l+="\\"),s.push(l.trim()),s}function ph(r){return ma(r).map(n=>/^:-+:$/.test(n)?"center":/^-+:$/.test(n)?"right":/^:-+$/.test(n)?"left":null)}function Bo(r){return r==="center"?"text-center":r==="right"?"text-right":"text-left"}function Oo(r){return/^\|?\s*:?-{3,}:?\s*(?:\|\s*:?-{3,}:?\s*)*\|?$/.test(r.trim())}function gh(r,n){return r>96||r>44&&n>.35}function Ko(r){return(r.match(/^\s*/)?.[0]??"").replace(/\t/g," ").length}function pa(r){const n=r.trim().match(/^([-+*]|\d+[.)])\s+(.+)$/);if(!n)return null;const s=/^\d+[.)]$/.test(n[1]);return{ordered:s,start:s?Number.parseInt(n[1],10):void 0,content:n[2]}}function Yl(r,n,s,l,d,c=new Set){const m=[],g=[];let h=n;for(;h<r.length;){const p=r[h];if(d&&(Do(p)||c.has(h))){h+=1;continue}const x=pa(p),f=Ko(p);if(!x){if(f>s&&g.length>0){([...g].reverse().find(T=>T.indent<f)?.item??g[g.length-1].item).paragraphs.push(p.trim());for(const T of g)T.item.lineEnd=h+1;h+=1;continue}break}if(f<s||f===s&&x.ordered!==l)break;const b={content:x.content,ordered:x.ordered,start:x.start,children:[],paragraphs:[],lineStart:h+1,lineEnd:h+1};for(;g.length>0&&g[g.length-1].indent>=f;)g.pop();const E=g[g.length-1]?.item??null;E?E.children.push(b):m.push(b),g.push({indent:f,item:b});for(const j of g)j.item.lineEnd=h+1;h+=1}return{items:m,nextIndex:h}}function Ox(r){const n=r.find(l=>pa(l));if(!n)return[];const s=pa(n);return s?Yl(r,0,Ko(n),s.ordered,!0,Zf(r)).items:[]}function Xl(r,n,s,l=0){return s.budget.nested(()=>Ux(r,n,s,l))}function Ux(r,n,s,l=0){return r.map((d,c)=>{const m=d.content.match(/^\[([ xX])\]\s+(.+)$/);return{key:`item-${c}`,taskItem:!!m,refStart:d.lineStart+l,refEnd:d.lineEnd+l,content:e.jsxs(e.Fragment,{children:[m?e.jsx("input",{type:"checkbox",checked:m[1].toLowerCase()==="x",readOnly:!0,className:"mr-2 align-[-2px] accent-primary"}):null,ct(m?.[2]??d.content,`li-${n}-${c}`,!0,s),d.paragraphs.length>0&&e.jsx("div",{className:"mt-1 space-y-1 text-muted-foreground",children:d.paragraphs.map((g,h)=>e.jsx("p",{children:ct(g,`li-${n}-${c}-p-${h}`,!0,s)},`paragraph-${h}`))})]}),groups:Hx(d.children,`${n}-${c}`,s,l)}})}function Hx(r,n,s,l=0){const d=[];for(const c of r){const m=d[d.length-1];m&&m.ordered===c.ordered?m.items.push(c):d.push({ordered:c.ordered,items:[c]})}return d.map((c,m)=>({ordered:c.ordered,start:c.ordered?c.items[0]?.start:void 0,items:Xl(c.items,`${n}-g${m}`,s,l)}))}function Jl(r,n){return r.map(s=>{const l=!!(n&&s.refStart<=n.end&&s.refEnd>=n.start);return e.jsxs("li",{className:s.taskItem?"list-none":void 0,"data-md-ref-start":s.refStart,"data-md-ref-end":s.refEnd,"data-selected":l?"true":void 0,children:[s.content,s.groups.length>0&&zx(s.groups,n)]},s.key)})}function zx(r,n){return r.map((s,l)=>{const d=s.ordered?"ol":"ul";return e.jsx(d,{start:s.start,className:`${s.ordered?"list-decimal":"list-disc"} mt-1 space-y-0.5 pl-4 marker:text-muted-foreground/60`,children:Jl(s.items,n)},`nested-${l}`)})}function Wx(r){const n=Array.from(r.footnoteDefinitions.values()).sort((s,l)=>s.index-l.index);return n.length===0?null:e.jsxs("section",{className:"mt-3 border-t border-border/20 pt-2 text-[12px] leading-5 text-muted-foreground",children:[e.jsx("div",{className:"mb-1 text-[10px] font-semibold uppercase tracking-wide text-muted-foreground/80",children:r.footnotesLabel}),e.jsx("ol",{className:"list-decimal space-y-1 pl-5",children:n.map(s=>e.jsxs("li",{id:`fn-${s.id}`,children:[ct(s.text,`footnote-${s.id}`,!0,r)," ",e.jsx("a",{href:`#fnref-${s.id}`,className:"text-primary no-underline","aria-label":r.backToFootnoteLabel(s.index),children:"↩"})]},s.id))})]})}function Gx(r,n,s,l){const d=[];let c=0;const m=g=>l?.[g]??g+1;for(;c<r.length;){s.budget.check();const g=r[c],h=g.trim();if(!h){c+=1;continue}if(/^<details>\s*$/i.test(h)){const F=c;let M="Details";const N=[];for(c+=1;c<r.length&&!/^<\/details>\s*$/i.test(r[c].trim());){const A=r[c].trim().match(/^<summary>(.*?)<\/summary>\s*$/i);A?M=A[1].trim()||M:N.push(r[c].trimStart()),c+=1}c<r.length&&(c+=1),d.push({kind:"static",node:e.jsxs("details",{className:"overflow-hidden rounded-lg border border-border/20 bg-surface px-3 py-2 text-muted-foreground",children:[e.jsx("summary",{className:"cursor-pointer text-sm font-semibold text-foreground",children:ct(M,`${n}-details-${F}-summary`,!0,s)}),N.length>0&&e.jsx("div",{className:"mt-2 text-sm leading-6",children:mh(N,`${n}-details-${F}`,s)})]},`${n}-details-${F}`)});continue}if(/^<video\b/i.test(h)){const F=c,M=[g];for(c+=1;!M[M.length-1].match(/<\/video\s*>/i)&&c<r.length&&r[c].trim();)s.budget.check(),M.push(r[c++]);const N=M.join(`
|
|
1639
1639
|
`);d.push({kind:"static",node:e.jsx("div",{children:ct(N,`${n}-video-${F}`,!0,s)},`${n}-video-${F}`)});continue}const p=dh(g);if(p){const F=[g],M=c;for(c+=1;c<r.length&&!p.selfContained&&!new RegExp(`</${p.tag}>`,"i").test(r[c]);)F.push(r[c]),c+=1;c<r.length&&!p.selfContained&&(F.push(r[c]),c+=1),d.push({kind:"static",node:e.jsx(ch,{html:F.join(`
|
|
1640
1640
|
`)},`${n}-html-${M}`)});continue}const x=h.match(/^(```|~~~)\s*(.*)$/);if(x){const F=[],M=x[1],N=x[2]?.trim(),A=c;for(c+=1;c<r.length&&!r[c].trim().startsWith(M);)F.push(r[c]),c+=1;c<r.length&&(c+=1),N.toLowerCase()==="mermaid"?d.push({kind:"static",node:e.jsx(xh,{code:F.join(`
|
|
1641
1641
|
`),blockKey:`${n}-code-${A}`},`${n}-code-${A}`)}):["math","latex","tex"].includes(N.toLowerCase())?d.push({kind:"static",node:e.jsx(ha,{tex:F.join(`
|
|
Binary file
|
|
Binary file
|
package/dist/client/assets/{abnfDiagram-VCTEODGH-ByzlUu_B.js → abnfDiagram-VCTEODGH-CcCffdpj.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{g as p,r as u,d as a}from"./chunk-SVP7TREG-
|
|
1
|
+
import{g as p,r as u,d as a}from"./chunk-SVP7TREG-CbyJW-OT.js";import{p as f}from"./chunk-JWPE2WC7-CjUqcCSL.js";import{d as n,bg as o}from"./mermaid.core-BlkorXd6.js";import{M as c,c as d}from"./cynefin-OW5HDTMX-CV3T078G.js";import"./app-BB0CAQ8D.js";import"./react-XDCjal2T.js";import"./dnd-BCFAPC0L.js";import"./terminal-Dea8wJF3.js";import"./purify.es-4eNOHKSq.js";var g=d().RailroadAbnf.parser.LangiumParser,i=n(e=>{const r=e.alternatives.map(v);return r.length===1?r[0]:{type:"choice",alternatives:r}},"transformAlternation"),v=n(e=>{const r=e.elements.map(y);return r.length===1?r[0]:{type:"sequence",elements:r}},"transformConcatenation"),b=n(e=>{if(e.includes("*")){const[t,s]=e.split("*"),m=t?parseInt(t,10):0,l=s?parseInt(s,10):1/0;return{min:m,max:l}}const r=parseInt(e,10);return{min:r,max:r}},"parseRepeat"),y=n(e=>{const r=A(e.primary);if(!e.repeat)return r;const{min:t,max:s}=b(e.repeat);return t===0&&s===1?{type:"optional",element:r}:{type:"repetition",element:r,min:t,max:s}},"transformElement"),A=n(e=>{switch(e.$type){case"AbnfStringLiteral":return{type:"terminal",value:e.value};case"AbnfNumVal":return{type:"terminal",value:e.value};case"AbnfRuleName":return{type:"nonterminal",name:e.name};case"AbnfGroup":return i(e.element);case"AbnfOptionalGroup":return{type:"optional",element:i(e.element)};default:throw new Error(`Unsupported ABNF primary node: ${e.$type}`)}},"transformPrimary"),P=n(e=>({name:e.name,definition:i(e.definition)}),"transformRule"),h=n(e=>{f(e,a),e.title&&a.setTitle(e.title),e.rules.map(r=>a.addRule(P(r)))},"populateDb"),R={parse:n(e=>{a.clear(),o.debug("[ABNF Parser] Starting Langium parse");const r=g.parse(e);if(r.lexerErrors.length>0||r.parserErrors.length>0)throw new c(r);const t=r.value;o.debug("[ABNF Parser] Parsed rules:",t.rules.length),h(t),o.debug("[ABNF Parser] Parse complete")},"parse"),parser:{yy:a}},D={parser:R,db:a,renderer:u,styles:p};export{D as diagram};
|
|
Binary file
|
|
Binary file
|