termdock 1.4.359 → 1.4.360
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/{AndroidMirrorView-SpjoKKYZ.js → AndroidMirrorView-DvaQ4bWE.js} +1 -1
- package/dist/client/assets/AndroidMirrorView-DvaQ4bWE.js.br +0 -0
- package/dist/client/assets/{AndroidMirrorView-SpjoKKYZ.js.gz → AndroidMirrorView-DvaQ4bWE.js.gz} +0 -0
- package/dist/client/assets/{App-BXyQinZW.js → App-Bb2gVHKa.js} +7 -7
- package/dist/client/assets/App-Bb2gVHKa.js.br +0 -0
- package/dist/client/assets/App-Bb2gVHKa.js.gz +0 -0
- package/dist/client/assets/{ArchitecturePanel-DUwBHRpo.js → ArchitecturePanel-DFFG7FcG.js} +2 -2
- package/dist/client/assets/ArchitecturePanel-DFFG7FcG.js.br +0 -0
- package/dist/client/assets/ArchitecturePanel-DFFG7FcG.js.gz +0 -0
- package/dist/client/assets/{ChangeWalkthroughPanel-CVBQbHpG.js → ChangeWalkthroughPanel-BC7zpkq3.js} +1 -1
- package/dist/client/assets/ChangeWalkthroughPanel-BC7zpkq3.js.br +0 -0
- package/dist/client/assets/ChangeWalkthroughPanel-BC7zpkq3.js.gz +0 -0
- package/dist/client/assets/{ChatRichContent-BI5iYvRf.js → ChatRichContent-C9mQPbwk.js} +3 -3
- package/dist/client/assets/ChatRichContent-C9mQPbwk.js.br +0 -0
- package/dist/client/assets/ChatRichContent-C9mQPbwk.js.gz +0 -0
- package/dist/client/assets/{CollaborationMainWorkspace-qYw6Sv3a.js → CollaborationMainWorkspace-v_Kf8bk2.js} +1 -1
- package/dist/client/assets/CollaborationMainWorkspace-v_Kf8bk2.js.br +0 -0
- package/dist/client/assets/CollaborationMainWorkspace-v_Kf8bk2.js.gz +0 -0
- package/dist/client/assets/CollaborationTaskContent-Cm0uanGi.js +1 -0
- package/dist/client/assets/{ComputerControlView-Dmmuxujg.js → ComputerControlView-BQnieqiC.js} +3 -3
- package/dist/client/assets/ComputerControlView-BQnieqiC.js.br +0 -0
- package/dist/client/assets/ComputerControlView-BQnieqiC.js.gz +0 -0
- package/dist/client/assets/{DagPlayground-D1FkpA0b.js → DagPlayground-DditHOVX.js} +1 -1
- package/dist/client/assets/DagPlayground-DditHOVX.js.br +0 -0
- package/dist/client/assets/DagPlayground-DditHOVX.js.gz +0 -0
- package/dist/client/assets/{DiffLab-C4y3Mu1m.js → DiffLab-p4rsngvx.js} +1 -1
- package/dist/client/assets/DiffLab-p4rsngvx.js.br +0 -0
- package/dist/client/assets/DiffLab-p4rsngvx.js.gz +0 -0
- package/dist/client/assets/{DiffReview-DVaOXs0z.js → DiffReview-9a_DXlXn.js} +1 -1
- package/dist/client/assets/DiffReview-9a_DXlXn.js.br +0 -0
- package/dist/client/assets/DiffReview-9a_DXlXn.js.gz +0 -0
- package/dist/client/assets/{DiffReviewLab-C49n0eG5.js → DiffReviewLab-BpI3iTts.js} +1 -1
- package/dist/client/assets/DiffReviewLab-BpI3iTts.js.br +0 -0
- package/dist/client/assets/DiffReviewLab-BpI3iTts.js.gz +0 -0
- package/dist/client/assets/{DiffViewer-C_YHDsAf.js → DiffViewer-25DyaFuh.js} +1 -1
- package/dist/client/assets/DiffViewer-25DyaFuh.js.br +0 -0
- package/dist/client/assets/DiffViewer-25DyaFuh.js.gz +0 -0
- package/dist/client/assets/{GitLoadingSkeleton-Bm1UqrDS.js → GitLoadingSkeleton-D5nkNhPE.js} +1 -1
- package/dist/client/assets/GitLoadingSkeleton-D5nkNhPE.js.br +0 -0
- package/dist/client/assets/GitLoadingSkeleton-D5nkNhPE.js.gz +0 -0
- package/dist/client/assets/{Markdown-CohgsLqO.js → Markdown-BQK61rwW.js} +2 -2
- package/dist/client/assets/Markdown-BQK61rwW.js.br +0 -0
- package/dist/client/assets/Markdown-BQK61rwW.js.gz +0 -0
- package/dist/client/assets/{ModelPreview-a0HGTXuA.js → ModelPreview-DSMm4U4j.js} +1 -1
- package/dist/client/assets/ModelPreview-DSMm4U4j.js.br +0 -0
- package/dist/client/assets/ModelPreview-DSMm4U4j.js.gz +0 -0
- package/dist/client/assets/{RecordingSaveDialog-BKec4LtD.js → RecordingSaveDialog-SqE6T39W.js} +1 -1
- package/dist/client/assets/RecordingSaveDialog-SqE6T39W.js.br +0 -0
- package/dist/client/assets/RecordingSaveDialog-SqE6T39W.js.gz +0 -0
- package/dist/client/assets/{RightSidebar-CxeEK1fi.js → RightSidebar-Cyd0Hm6s.js} +3 -3
- package/dist/client/assets/RightSidebar-Cyd0Hm6s.js.br +0 -0
- package/dist/client/assets/RightSidebar-Cyd0Hm6s.js.gz +0 -0
- package/dist/client/assets/SessionChatView-BNFqLvSD.js +25 -0
- package/dist/client/assets/SessionChatView-BNFqLvSD.js.br +0 -0
- package/dist/client/assets/SessionChatView-BNFqLvSD.js.gz +0 -0
- package/dist/client/assets/{SessionResourceSidebar-D8kJh4k1.js → SessionResourceSidebar-yPQNWbtX.js} +2 -2
- package/dist/client/assets/SessionResourceSidebar-yPQNWbtX.js.br +0 -0
- package/dist/client/assets/SessionResourceSidebar-yPQNWbtX.js.gz +0 -0
- package/dist/client/assets/{TodoWorkspace-ByyjDuIT.js → TodoWorkspace-B_GBeg3U.js} +1 -1
- package/dist/client/assets/TodoWorkspace-B_GBeg3U.js.br +0 -0
- package/dist/client/assets/TodoWorkspace-B_GBeg3U.js.gz +0 -0
- package/dist/client/assets/{abnfDiagram-VCTEODGH-9jetKIey.js → abnfDiagram-VCTEODGH-CPmxTXWR.js} +1 -1
- package/dist/client/assets/abnfDiagram-VCTEODGH-CPmxTXWR.js.br +0 -0
- package/dist/client/assets/abnfDiagram-VCTEODGH-CPmxTXWR.js.gz +0 -0
- package/dist/client/assets/{app-CjIJnhRC.js → app-CG7UnlvD.js} +4 -4
- package/dist/client/assets/app-CG7UnlvD.js.br +0 -0
- package/dist/client/assets/app-CG7UnlvD.js.gz +0 -0
- package/dist/client/assets/{arc-D_lxie76.js → arc-B4o5ErLe.js} +1 -1
- package/dist/client/assets/arc-B4o5ErLe.js.br +0 -0
- package/dist/client/assets/arc-B4o5ErLe.js.gz +0 -0
- package/dist/client/assets/{architectureDiagram-5GKGNRK7-IgNQYras.js → architectureDiagram-5GKGNRK7-CxB-DJ3M.js} +1 -1
- package/dist/client/assets/architectureDiagram-5GKGNRK7-CxB-DJ3M.js.br +0 -0
- package/dist/client/assets/architectureDiagram-5GKGNRK7-CxB-DJ3M.js.gz +0 -0
- package/dist/client/assets/{arrow-down-Dd0wVXN3.js → arrow-down-C3OQpvij.js} +1 -1
- package/dist/client/assets/{blockDiagram-I7D4REHJ-Rzz3EdOw.js → blockDiagram-I7D4REHJ-DMH3Ew64.js} +1 -1
- package/dist/client/assets/blockDiagram-I7D4REHJ-DMH3Ew64.js.br +0 -0
- package/dist/client/assets/blockDiagram-I7D4REHJ-DMH3Ew64.js.gz +0 -0
- package/dist/client/assets/{c4Diagram-7LVT6UL2-BDooBgn9.js → c4Diagram-7LVT6UL2-BeAPmp6T.js} +1 -1
- package/dist/client/assets/c4Diagram-7LVT6UL2-BeAPmp6T.js.br +0 -0
- package/dist/client/assets/c4Diagram-7LVT6UL2-BeAPmp6T.js.gz +0 -0
- package/dist/client/assets/channel-D0j6Em2u.js +1 -0
- package/dist/client/assets/{chevron-left-gddD8oDV.js → chevron-left-BS8PE--U.js} +1 -1
- package/dist/client/assets/{chunk-2Q5K7J3B-CaRGzemz.js → chunk-2Q5K7J3B-N1tJpI75.js} +1 -1
- package/dist/client/assets/{chunk-5VM5RSS4-DwFHSPNj.js → chunk-5VM5RSS4-Bk2ct6QD.js} +1 -1
- package/dist/client/assets/{chunk-F27PBJKO-DURRKDWg.js → chunk-F27PBJKO-CxZzshwv.js} +1 -1
- package/dist/client/assets/chunk-F27PBJKO-CxZzshwv.js.br +0 -0
- package/dist/client/assets/chunk-F27PBJKO-CxZzshwv.js.gz +0 -0
- package/dist/client/assets/{chunk-IMKFNOWR-DiI7TuKc.js → chunk-IMKFNOWR-B1kZ4qQ8.js} +1 -1
- package/dist/client/assets/chunk-IMKFNOWR-B1kZ4qQ8.js.br +0 -0
- package/dist/client/assets/chunk-IMKFNOWR-B1kZ4qQ8.js.gz +0 -0
- package/dist/client/assets/{chunk-JWPE2WC7-Cg9jVt2w.js → chunk-JWPE2WC7-BrLueD3X.js} +1 -1
- package/dist/client/assets/{chunk-POPQ4Y6H-BnV4j8Y0.js → chunk-POPQ4Y6H-CLdvlIcP.js} +1 -1
- package/dist/client/assets/{chunk-SVP7TREG-DO0KH1lL.js → chunk-SVP7TREG-DnY33T6h.js} +1 -1
- package/dist/client/assets/chunk-SVP7TREG-DnY33T6h.js.br +0 -0
- package/dist/client/assets/chunk-SVP7TREG-DnY33T6h.js.gz +0 -0
- package/dist/client/assets/{chunk-TICWLB2K-DOcrTdPc.js → chunk-TICWLB2K-CF5UiDQa.js} +1 -1
- package/dist/client/assets/chunk-TICWLB2K-CF5UiDQa.js.br +0 -0
- package/dist/client/assets/chunk-TICWLB2K-CF5UiDQa.js.gz +0 -0
- package/dist/client/assets/{chunk-XXDRQBXY-DR-p5Zy1.js → chunk-XXDRQBXY-IxRQZCF6.js} +1 -1
- package/dist/client/assets/{circle-DhTLygNL.js → circle-BbMJmnZN.js} +1 -1
- package/dist/client/assets/classDiagram-ZZMXUADV-DqwCeJFc.js +1 -0
- package/dist/client/assets/classDiagram-v2-VYDZK3BY-DqwCeJFc.js +1 -0
- package/dist/client/assets/{clipboard-HGyJkE2L.js → clipboard-Bc3Y4SV-.js} +1 -1
- package/dist/client/assets/{clipboardText-DN1ZamHf.js → clipboardText-CQBpBKPz.js} +1 -1
- package/dist/client/assets/clipboardText-CQBpBKPz.js.br +0 -0
- package/dist/client/assets/clipboardText-CQBpBKPz.js.gz +0 -0
- package/dist/client/assets/{clipboardText-DfV7Sfy1.css → clipboardText-CvzDT_9N.css} +1 -1
- package/dist/client/assets/clipboardText-CvzDT_9N.css.br +0 -0
- package/dist/client/assets/clipboardText-CvzDT_9N.css.gz +0 -0
- package/dist/client/assets/{cose-bilkent-JH36ORCC-DAd_FgYn.js → cose-bilkent-JH36ORCC-BzcBs1L3.js} +1 -1
- package/dist/client/assets/cose-bilkent-JH36ORCC-BzcBs1L3.js.br +0 -0
- package/dist/client/assets/cose-bilkent-JH36ORCC-BzcBs1L3.js.gz +0 -0
- package/dist/client/assets/{cynefin-OW5HDTMX-gLgHGAg1.js → cynefin-OW5HDTMX-B28ddXz6.js} +1 -1
- package/dist/client/assets/cynefin-OW5HDTMX-B28ddXz6.js.br +0 -0
- package/dist/client/assets/{cynefin-OW5HDTMX-gLgHGAg1.js.gz → cynefin-OW5HDTMX-B28ddXz6.js.gz} +0 -0
- package/dist/client/assets/{cynefinDiagram-5FMLGOSQ-CfZcuwNN.js → cynefinDiagram-5FMLGOSQ-CvnkcRMN.js} +1 -1
- package/dist/client/assets/cynefinDiagram-5FMLGOSQ-CvnkcRMN.js.br +0 -0
- package/dist/client/assets/cynefinDiagram-5FMLGOSQ-CvnkcRMN.js.gz +0 -0
- package/dist/client/assets/{dagre-GXQ25YYZ-D4hv95zo.js → dagre-GXQ25YYZ-CbpdGfwk.js} +1 -1
- package/dist/client/assets/dagre-GXQ25YYZ-CbpdGfwk.js.br +0 -0
- package/dist/client/assets/dagre-GXQ25YYZ-CbpdGfwk.js.gz +0 -0
- package/dist/client/assets/{diagram-S7CK7UJ4-C6QPCa-U.js → diagram-S7CK7UJ4-CkzVORHp.js} +1 -1
- package/dist/client/assets/diagram-S7CK7UJ4-CkzVORHp.js.br +0 -0
- package/dist/client/assets/diagram-S7CK7UJ4-CkzVORHp.js.gz +0 -0
- package/dist/client/assets/{diagram-UQ7AKVKN-BGJFrMY0.js → diagram-UQ7AKVKN-CVYt9t-d.js} +1 -1
- package/dist/client/assets/diagram-UQ7AKVKN-CVYt9t-d.js.br +0 -0
- package/dist/client/assets/diagram-UQ7AKVKN-CVYt9t-d.js.gz +0 -0
- package/dist/client/assets/{diagram-VSXAHHWV-N_wUYR-P.js → diagram-VSXAHHWV-CGajU0EV.js} +1 -1
- package/dist/client/assets/diagram-VSXAHHWV-CGajU0EV.js.br +0 -0
- package/dist/client/assets/diagram-VSXAHHWV-CGajU0EV.js.gz +0 -0
- package/dist/client/assets/{diagram-VX7I27RA-TTIdEQxJ.js → diagram-VX7I27RA-vYtp1P52.js} +1 -1
- package/dist/client/assets/diagram-VX7I27RA-vYtp1P52.js.br +0 -0
- package/dist/client/assets/diagram-VX7I27RA-vYtp1P52.js.gz +0 -0
- package/dist/client/assets/{diagram-Z3DM3KII-B5T47CF8.js → diagram-Z3DM3KII-DrlbY-rQ.js} +1 -1
- package/dist/client/assets/diagram-Z3DM3KII-DrlbY-rQ.js.br +0 -0
- package/dist/client/assets/diagram-Z3DM3KII-DrlbY-rQ.js.gz +0 -0
- package/dist/client/assets/{ebnfDiagram-PWID7BFC-BCVWN-6S.js → ebnfDiagram-PWID7BFC-Li843jVA.js} +1 -1
- package/dist/client/assets/ebnfDiagram-PWID7BFC-Li843jVA.js.br +0 -0
- package/dist/client/assets/ebnfDiagram-PWID7BFC-Li843jVA.js.gz +0 -0
- package/dist/client/assets/{erDiagram-RLTQ6QDP-carErB-Q.js → erDiagram-RLTQ6QDP-Bk6D65-Y.js} +1 -1
- package/dist/client/assets/erDiagram-RLTQ6QDP-Bk6D65-Y.js.br +0 -0
- package/dist/client/assets/erDiagram-RLTQ6QDP-Bk6D65-Y.js.gz +0 -0
- package/dist/client/assets/{external-link-BB8IuvZq.js → external-link-CUbXNBYc.js} +1 -1
- package/dist/client/assets/{flowDiagram-HODETNUW-Cntq-S4F.js → flowDiagram-HODETNUW-BBEGJbRE.js} +1 -1
- package/dist/client/assets/flowDiagram-HODETNUW-BBEGJbRE.js.br +0 -0
- package/dist/client/assets/flowDiagram-HODETNUW-BBEGJbRE.js.gz +0 -0
- package/dist/client/assets/{ganttDiagram-EL5Y4UJY-CDSctkKx.js → ganttDiagram-EL5Y4UJY-DcqIS8PT.js} +1 -1
- package/dist/client/assets/ganttDiagram-EL5Y4UJY-DcqIS8PT.js.br +0 -0
- package/dist/client/assets/ganttDiagram-EL5Y4UJY-DcqIS8PT.js.gz +0 -0
- package/dist/client/assets/{git-compare-9RABXSu5.js → git-compare-TvhljhDy.js} +1 -1
- package/dist/client/assets/{gitGraphDiagram-WWUBYQGX-bQpGwghF.js → gitGraphDiagram-WWUBYQGX-BO_waWtj.js} +1 -1
- package/dist/client/assets/gitGraphDiagram-WWUBYQGX-BO_waWtj.js.br +0 -0
- package/dist/client/assets/gitGraphDiagram-WWUBYQGX-BO_waWtj.js.gz +0 -0
- package/dist/client/assets/{index-VX_KQ4Kx.css → index-Db6cTvcd.css} +1 -1
- package/dist/client/assets/index-Db6cTvcd.css.br +0 -0
- package/dist/client/assets/{index-VX_KQ4Kx.css.gz → index-Db6cTvcd.css.gz} +0 -0
- package/dist/client/assets/{infoDiagram-27XIBGKW-RiSy10Xu.js → infoDiagram-27XIBGKW-eURiwH5i.js} +1 -1
- package/dist/client/assets/{ishikawaDiagram-5VMMS53U-aIPkdxQG.js → ishikawaDiagram-5VMMS53U-jYYxASiy.js} +1 -1
- package/dist/client/assets/ishikawaDiagram-5VMMS53U-jYYxASiy.js.br +0 -0
- package/dist/client/assets/ishikawaDiagram-5VMMS53U-jYYxASiy.js.gz +0 -0
- package/dist/client/assets/{journeyDiagram-3NMN7TZE-B_qkh4CF.js → journeyDiagram-3NMN7TZE-DnW1TBIv.js} +1 -1
- package/dist/client/assets/journeyDiagram-3NMN7TZE-DnW1TBIv.js.br +0 -0
- package/dist/client/assets/journeyDiagram-3NMN7TZE-DnW1TBIv.js.gz +0 -0
- package/dist/client/assets/{kanban-definition-UXKFOSKX-Cqg9G98I.js → kanban-definition-UXKFOSKX-CcPfae--.js} +1 -1
- package/dist/client/assets/kanban-definition-UXKFOSKX-CcPfae--.js.br +0 -0
- package/dist/client/assets/kanban-definition-UXKFOSKX-CcPfae--.js.gz +0 -0
- package/dist/client/assets/{layout-DsxXkS4m.js → layout-HBanbinE.js} +1 -1
- package/dist/client/assets/layout-HBanbinE.js.br +0 -0
- package/dist/client/assets/layout-HBanbinE.js.gz +0 -0
- package/dist/client/assets/{linear-YxCELrSW.js → linear-OVIirOu4.js} +1 -1
- package/dist/client/assets/{linear-YxCELrSW.js.br → linear-OVIirOu4.js.br} +0 -0
- package/dist/client/assets/linear-OVIirOu4.js.gz +0 -0
- package/dist/client/assets/{link-C7B3CQkJ.js → link-DP9WqPQf.js} +1 -1
- package/dist/client/assets/link-DP9WqPQf.js.br +0 -0
- package/dist/client/assets/link-DP9WqPQf.js.gz +0 -0
- package/dist/client/assets/{list-tree-CA4WMncL.js → list-tree-TZoK4D1s.js} +1 -1
- package/dist/client/assets/{maximize-2-C2r-kY_c.js → maximize-2-Duk9ucVy.js} +1 -1
- package/dist/client/assets/{mermaid.core-BX4Yidib.js → mermaid.core-Dkp6JxgQ.js} +5 -5
- package/dist/client/assets/mermaid.core-Dkp6JxgQ.js.br +0 -0
- package/dist/client/assets/mermaid.core-Dkp6JxgQ.js.gz +0 -0
- package/dist/client/assets/{mindmap-definition-YA3MSWOX-Bj2fCwN5.js → mindmap-definition-YA3MSWOX-LqBs5pfH.js} +1 -1
- package/dist/client/assets/mindmap-definition-YA3MSWOX-LqBs5pfH.js.br +0 -0
- package/dist/client/assets/mindmap-definition-YA3MSWOX-LqBs5pfH.js.gz +0 -0
- package/dist/client/assets/{passwordBootstrap-CPlia7G3.js → passwordBootstrap-D8EJVph5.js} +1 -1
- package/dist/client/assets/passwordBootstrap-D8EJVph5.js.br +0 -0
- package/dist/client/assets/passwordBootstrap-D8EJVph5.js.gz +0 -0
- package/dist/client/assets/{pegDiagram-XKGWAZYB-DCJ-5qA2.js → pegDiagram-XKGWAZYB-BZWd3pI7.js} +1 -1
- package/dist/client/assets/pegDiagram-XKGWAZYB-BZWd3pI7.js.br +0 -0
- package/dist/client/assets/pegDiagram-XKGWAZYB-BZWd3pI7.js.gz +0 -0
- package/dist/client/assets/{pieDiagram-E7YTZNPT-DFxDtRlY.js → pieDiagram-E7YTZNPT-DmhK_nc-.js} +1 -1
- package/dist/client/assets/pieDiagram-E7YTZNPT-DmhK_nc-.js.br +0 -0
- package/dist/client/assets/pieDiagram-E7YTZNPT-DmhK_nc-.js.gz +0 -0
- package/dist/client/assets/{quadrantDiagram-AXDQQJYC-BlwkSa_A.js → quadrantDiagram-AXDQQJYC-Dt5EPEjj.js} +1 -1
- package/dist/client/assets/quadrantDiagram-AXDQQJYC-Dt5EPEjj.js.br +0 -0
- package/dist/client/assets/quadrantDiagram-AXDQQJYC-Dt5EPEjj.js.gz +0 -0
- package/dist/client/assets/{quote-DYO_qxPl.js → quote-BWHaYR1j.js} +1 -1
- package/dist/client/assets/{railroadDiagram-O6MQD6OU-DjtRafKE.js → railroadDiagram-O6MQD6OU-RSvmvEvu.js} +1 -1
- package/dist/client/assets/railroadDiagram-O6MQD6OU-RSvmvEvu.js.br +0 -0
- package/dist/client/assets/railroadDiagram-O6MQD6OU-RSvmvEvu.js.gz +0 -0
- package/dist/client/assets/{rdpSession-De-iS1CL.js → rdpSession-lNNwVCpP.js} +1 -1
- package/dist/client/assets/rdpSession-lNNwVCpP.js.br +0 -0
- package/dist/client/assets/rdpSession-lNNwVCpP.js.gz +0 -0
- package/dist/client/assets/{referenceSelection-Cb24Tb01.js → referenceSelection-CYduiLc1.js} +1 -1
- package/dist/client/assets/referenceSelection-CYduiLc1.js.br +0 -0
- package/dist/client/assets/referenceSelection-CYduiLc1.js.gz +0 -0
- package/dist/client/assets/{requirementDiagram-BXWQKSXE-B1skd4Aj.js → requirementDiagram-BXWQKSXE-CXFONPV2.js} +1 -1
- package/dist/client/assets/requirementDiagram-BXWQKSXE-CXFONPV2.js.br +0 -0
- package/dist/client/assets/requirementDiagram-BXWQKSXE-CXFONPV2.js.gz +0 -0
- package/dist/client/assets/{sankeyDiagram-P5KCCOFB-2hK1yoP1.js → sankeyDiagram-P5KCCOFB-Dl-Bi6cO.js} +1 -1
- package/dist/client/assets/sankeyDiagram-P5KCCOFB-Dl-Bi6cO.js.br +0 -0
- package/dist/client/assets/sankeyDiagram-P5KCCOFB-Dl-Bi6cO.js.gz +0 -0
- package/dist/client/assets/{search-DwVySubQ.js → search-g7nZaX-p.js} +1 -1
- package/dist/client/assets/{sequenceDiagram-WJ2MYXX4-DIqwThjL.js → sequenceDiagram-WJ2MYXX4-ri1bCZN1.js} +1 -1
- package/dist/client/assets/sequenceDiagram-WJ2MYXX4-ri1bCZN1.js.br +0 -0
- package/dist/client/assets/sequenceDiagram-WJ2MYXX4-ri1bCZN1.js.gz +0 -0
- package/dist/client/assets/{sizeCapture-INFHLROL-CwYlm-u0.js → sizeCapture-INFHLROL-BgXXpEV-.js} +1 -1
- package/dist/client/assets/sizeCapture-INFHLROL-BgXXpEV-.js.br +0 -0
- package/dist/client/assets/sizeCapture-INFHLROL-BgXXpEV-.js.gz +0 -0
- package/dist/client/assets/{stateDiagram-D77RDMKH-D8Zz2h7U.js → stateDiagram-D77RDMKH-MOS7hXrp.js} +1 -1
- package/dist/client/assets/stateDiagram-D77RDMKH-MOS7hXrp.js.br +0 -0
- package/dist/client/assets/stateDiagram-D77RDMKH-MOS7hXrp.js.gz +0 -0
- package/dist/client/assets/stateDiagram-v2-MP3YSRHH-qosY6j11.js +1 -0
- package/dist/client/assets/{sun-E4HSsh7y.js → sun-Docz24Gq.js} +1 -1
- package/dist/client/assets/{swimlanes-42K2YHIH-ChciX-e9.js → swimlanes-42K2YHIH-_nzqhPpE.js} +1 -1
- package/dist/client/assets/swimlanes-42K2YHIH-_nzqhPpE.js.br +0 -0
- package/dist/client/assets/swimlanes-42K2YHIH-_nzqhPpE.js.gz +0 -0
- package/dist/client/assets/swimlanesDiagram-VR7AAH4N-L8D1VDHW.js +8 -0
- package/dist/client/assets/{swiper-CDQegRag.js → swiper-Bge5b7oc.js} +1 -1
- package/dist/client/assets/swiper-Bge5b7oc.js.br +0 -0
- package/dist/client/assets/swiper-Bge5b7oc.js.gz +0 -0
- package/dist/client/assets/{timeline-definition-24CTP7MA-Dm-MR8Y4.js → timeline-definition-24CTP7MA-EoOfhpT4.js} +1 -1
- package/dist/client/assets/timeline-definition-24CTP7MA-EoOfhpT4.js.br +0 -0
- package/dist/client/assets/timeline-definition-24CTP7MA-EoOfhpT4.js.gz +0 -0
- package/dist/client/assets/{triangle-alert-BM5V0mRC.js → triangle-alert-DUjdvUeM.js} +1 -1
- package/dist/client/assets/{unplug-Dp1XvCMt.js → unplug-wUkIQYu0.js} +1 -1
- package/dist/client/assets/{use-gesture-react.esm-BHdJ-ZCI.js → use-gesture-react.esm-uKjWuDRY.js} +1 -1
- package/dist/client/assets/use-gesture-react.esm-uKjWuDRY.js.br +0 -0
- package/dist/client/assets/use-gesture-react.esm-uKjWuDRY.js.gz +0 -0
- package/dist/client/assets/{vennDiagram-4TSXK5OY-DIjmm5vd.js → vennDiagram-4TSXK5OY-Ch6yr7S0.js} +1 -1
- package/dist/client/assets/vennDiagram-4TSXK5OY-Ch6yr7S0.js.br +0 -0
- package/dist/client/assets/vennDiagram-4TSXK5OY-Ch6yr7S0.js.gz +0 -0
- package/dist/client/assets/{videoCompression-DPpn-S8r.js → videoCompression-cikNovzj.js} +1 -1
- package/dist/client/assets/videoCompression-cikNovzj.js.br +0 -0
- package/dist/client/assets/videoCompression-cikNovzj.js.gz +0 -0
- package/dist/client/assets/{wardleyDiagram-VM6X3IG4-Dxxn-JlX.js → wardleyDiagram-VM6X3IG4-D2PomnGY.js} +1 -1
- package/dist/client/assets/wardleyDiagram-VM6X3IG4-D2PomnGY.js.br +0 -0
- package/dist/client/assets/wardleyDiagram-VM6X3IG4-D2PomnGY.js.gz +0 -0
- package/dist/client/assets/{xychartDiagram-S5SC5T6Z-B7fqiF5T.js → xychartDiagram-S5SC5T6Z-Wj3WqOzn.js} +1 -1
- package/dist/client/assets/xychartDiagram-S5SC5T6Z-Wj3WqOzn.js.br +0 -0
- package/dist/client/assets/xychartDiagram-S5SC5T6Z-Wj3WqOzn.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.js +1 -1
- package/dist/client/sw.js.br +0 -0
- package/dist/client/sw.js.gz +0 -0
- package/package.json +1 -1
- package/runtime-manifest.json +2 -2
- package/dist/client/assets/AndroidMirrorView-SpjoKKYZ.js.br +0 -0
- package/dist/client/assets/App-BXyQinZW.js.br +0 -0
- package/dist/client/assets/App-BXyQinZW.js.gz +0 -0
- package/dist/client/assets/ArchitecturePanel-DUwBHRpo.js.br +0 -0
- package/dist/client/assets/ArchitecturePanel-DUwBHRpo.js.gz +0 -0
- package/dist/client/assets/ChangeWalkthroughPanel-CVBQbHpG.js.br +0 -0
- package/dist/client/assets/ChangeWalkthroughPanel-CVBQbHpG.js.gz +0 -0
- package/dist/client/assets/ChatRichContent-BI5iYvRf.js.br +0 -0
- package/dist/client/assets/ChatRichContent-BI5iYvRf.js.gz +0 -0
- package/dist/client/assets/CollaborationMainWorkspace-qYw6Sv3a.js.br +0 -0
- package/dist/client/assets/CollaborationMainWorkspace-qYw6Sv3a.js.gz +0 -0
- package/dist/client/assets/CollaborationTaskContent-DLxe6Zyf.js +0 -1
- package/dist/client/assets/ComputerControlView-Dmmuxujg.js.br +0 -0
- package/dist/client/assets/ComputerControlView-Dmmuxujg.js.gz +0 -0
- package/dist/client/assets/DagPlayground-D1FkpA0b.js.br +0 -0
- package/dist/client/assets/DagPlayground-D1FkpA0b.js.gz +0 -0
- package/dist/client/assets/DiffLab-C4y3Mu1m.js.br +0 -0
- package/dist/client/assets/DiffLab-C4y3Mu1m.js.gz +0 -0
- package/dist/client/assets/DiffReview-DVaOXs0z.js.br +0 -0
- package/dist/client/assets/DiffReview-DVaOXs0z.js.gz +0 -0
- package/dist/client/assets/DiffReviewLab-C49n0eG5.js.br +0 -0
- package/dist/client/assets/DiffReviewLab-C49n0eG5.js.gz +0 -0
- package/dist/client/assets/DiffViewer-C_YHDsAf.js.br +0 -0
- package/dist/client/assets/DiffViewer-C_YHDsAf.js.gz +0 -0
- package/dist/client/assets/GitLoadingSkeleton-Bm1UqrDS.js.br +0 -0
- package/dist/client/assets/GitLoadingSkeleton-Bm1UqrDS.js.gz +0 -0
- package/dist/client/assets/Markdown-CohgsLqO.js.br +0 -0
- package/dist/client/assets/Markdown-CohgsLqO.js.gz +0 -0
- package/dist/client/assets/ModelPreview-a0HGTXuA.js.br +0 -0
- package/dist/client/assets/ModelPreview-a0HGTXuA.js.gz +0 -0
- package/dist/client/assets/RecordingSaveDialog-BKec4LtD.js.br +0 -0
- package/dist/client/assets/RecordingSaveDialog-BKec4LtD.js.gz +0 -0
- package/dist/client/assets/RightSidebar-CxeEK1fi.js.br +0 -0
- package/dist/client/assets/RightSidebar-CxeEK1fi.js.gz +0 -0
- package/dist/client/assets/SessionChatView-Bk5DIrLU.js +0 -20
- package/dist/client/assets/SessionChatView-Bk5DIrLU.js.br +0 -0
- package/dist/client/assets/SessionChatView-Bk5DIrLU.js.gz +0 -0
- package/dist/client/assets/SessionResourceSidebar-D8kJh4k1.js.br +0 -0
- package/dist/client/assets/SessionResourceSidebar-D8kJh4k1.js.gz +0 -0
- package/dist/client/assets/TodoWorkspace-ByyjDuIT.js.br +0 -0
- package/dist/client/assets/TodoWorkspace-ByyjDuIT.js.gz +0 -0
- package/dist/client/assets/abnfDiagram-VCTEODGH-9jetKIey.js.br +0 -0
- package/dist/client/assets/abnfDiagram-VCTEODGH-9jetKIey.js.gz +0 -0
- package/dist/client/assets/app-CjIJnhRC.js.br +0 -0
- package/dist/client/assets/app-CjIJnhRC.js.gz +0 -0
- package/dist/client/assets/arc-D_lxie76.js.br +0 -0
- package/dist/client/assets/arc-D_lxie76.js.gz +0 -0
- package/dist/client/assets/architectureDiagram-5GKGNRK7-IgNQYras.js.br +0 -0
- package/dist/client/assets/architectureDiagram-5GKGNRK7-IgNQYras.js.gz +0 -0
- package/dist/client/assets/blockDiagram-I7D4REHJ-Rzz3EdOw.js.br +0 -0
- package/dist/client/assets/blockDiagram-I7D4REHJ-Rzz3EdOw.js.gz +0 -0
- package/dist/client/assets/c4Diagram-7LVT6UL2-BDooBgn9.js.br +0 -0
- package/dist/client/assets/c4Diagram-7LVT6UL2-BDooBgn9.js.gz +0 -0
- package/dist/client/assets/channel-DCcxp7JL.js +0 -1
- package/dist/client/assets/chunk-F27PBJKO-DURRKDWg.js.br +0 -0
- package/dist/client/assets/chunk-F27PBJKO-DURRKDWg.js.gz +0 -0
- package/dist/client/assets/chunk-IMKFNOWR-DiI7TuKc.js.br +0 -0
- package/dist/client/assets/chunk-IMKFNOWR-DiI7TuKc.js.gz +0 -0
- package/dist/client/assets/chunk-SVP7TREG-DO0KH1lL.js.br +0 -0
- package/dist/client/assets/chunk-SVP7TREG-DO0KH1lL.js.gz +0 -0
- package/dist/client/assets/chunk-TICWLB2K-DOcrTdPc.js.br +0 -0
- package/dist/client/assets/chunk-TICWLB2K-DOcrTdPc.js.gz +0 -0
- package/dist/client/assets/classDiagram-ZZMXUADV-B34NqDOF.js +0 -1
- package/dist/client/assets/classDiagram-v2-VYDZK3BY-B34NqDOF.js +0 -1
- package/dist/client/assets/clipboardText-DN1ZamHf.js.br +0 -0
- package/dist/client/assets/clipboardText-DN1ZamHf.js.gz +0 -0
- package/dist/client/assets/clipboardText-DfV7Sfy1.css.br +0 -0
- package/dist/client/assets/clipboardText-DfV7Sfy1.css.gz +0 -0
- package/dist/client/assets/cose-bilkent-JH36ORCC-DAd_FgYn.js.br +0 -0
- package/dist/client/assets/cose-bilkent-JH36ORCC-DAd_FgYn.js.gz +0 -0
- package/dist/client/assets/cynefin-OW5HDTMX-gLgHGAg1.js.br +0 -0
- package/dist/client/assets/cynefinDiagram-5FMLGOSQ-CfZcuwNN.js.br +0 -0
- package/dist/client/assets/cynefinDiagram-5FMLGOSQ-CfZcuwNN.js.gz +0 -0
- package/dist/client/assets/dagre-GXQ25YYZ-D4hv95zo.js.br +0 -0
- package/dist/client/assets/dagre-GXQ25YYZ-D4hv95zo.js.gz +0 -0
- package/dist/client/assets/diagram-S7CK7UJ4-C6QPCa-U.js.br +0 -0
- package/dist/client/assets/diagram-S7CK7UJ4-C6QPCa-U.js.gz +0 -0
- package/dist/client/assets/diagram-UQ7AKVKN-BGJFrMY0.js.br +0 -0
- package/dist/client/assets/diagram-UQ7AKVKN-BGJFrMY0.js.gz +0 -0
- package/dist/client/assets/diagram-VSXAHHWV-N_wUYR-P.js.br +0 -0
- package/dist/client/assets/diagram-VSXAHHWV-N_wUYR-P.js.gz +0 -0
- package/dist/client/assets/diagram-VX7I27RA-TTIdEQxJ.js.br +0 -0
- package/dist/client/assets/diagram-VX7I27RA-TTIdEQxJ.js.gz +0 -0
- package/dist/client/assets/diagram-Z3DM3KII-B5T47CF8.js.br +0 -0
- package/dist/client/assets/diagram-Z3DM3KII-B5T47CF8.js.gz +0 -0
- package/dist/client/assets/ebnfDiagram-PWID7BFC-BCVWN-6S.js.br +0 -0
- package/dist/client/assets/ebnfDiagram-PWID7BFC-BCVWN-6S.js.gz +0 -0
- package/dist/client/assets/erDiagram-RLTQ6QDP-carErB-Q.js.br +0 -0
- package/dist/client/assets/erDiagram-RLTQ6QDP-carErB-Q.js.gz +0 -0
- package/dist/client/assets/flowDiagram-HODETNUW-Cntq-S4F.js.br +0 -0
- package/dist/client/assets/flowDiagram-HODETNUW-Cntq-S4F.js.gz +0 -0
- package/dist/client/assets/ganttDiagram-EL5Y4UJY-CDSctkKx.js.br +0 -0
- package/dist/client/assets/ganttDiagram-EL5Y4UJY-CDSctkKx.js.gz +0 -0
- package/dist/client/assets/gitGraphDiagram-WWUBYQGX-bQpGwghF.js.br +0 -0
- package/dist/client/assets/gitGraphDiagram-WWUBYQGX-bQpGwghF.js.gz +0 -0
- package/dist/client/assets/index-VX_KQ4Kx.css.br +0 -0
- package/dist/client/assets/ishikawaDiagram-5VMMS53U-aIPkdxQG.js.br +0 -0
- package/dist/client/assets/ishikawaDiagram-5VMMS53U-aIPkdxQG.js.gz +0 -0
- package/dist/client/assets/journeyDiagram-3NMN7TZE-B_qkh4CF.js.br +0 -0
- package/dist/client/assets/journeyDiagram-3NMN7TZE-B_qkh4CF.js.gz +0 -0
- package/dist/client/assets/kanban-definition-UXKFOSKX-Cqg9G98I.js.br +0 -0
- package/dist/client/assets/kanban-definition-UXKFOSKX-Cqg9G98I.js.gz +0 -0
- package/dist/client/assets/layout-DsxXkS4m.js.br +0 -0
- package/dist/client/assets/layout-DsxXkS4m.js.gz +0 -0
- package/dist/client/assets/linear-YxCELrSW.js.gz +0 -0
- package/dist/client/assets/link-C7B3CQkJ.js.br +0 -0
- package/dist/client/assets/link-C7B3CQkJ.js.gz +0 -0
- package/dist/client/assets/mermaid.core-BX4Yidib.js.br +0 -0
- package/dist/client/assets/mermaid.core-BX4Yidib.js.gz +0 -0
- package/dist/client/assets/mindmap-definition-YA3MSWOX-Bj2fCwN5.js.br +0 -0
- package/dist/client/assets/mindmap-definition-YA3MSWOX-Bj2fCwN5.js.gz +0 -0
- package/dist/client/assets/passwordBootstrap-CPlia7G3.js.br +0 -0
- package/dist/client/assets/passwordBootstrap-CPlia7G3.js.gz +0 -0
- package/dist/client/assets/pegDiagram-XKGWAZYB-DCJ-5qA2.js.br +0 -0
- package/dist/client/assets/pegDiagram-XKGWAZYB-DCJ-5qA2.js.gz +0 -0
- package/dist/client/assets/pieDiagram-E7YTZNPT-DFxDtRlY.js.br +0 -0
- package/dist/client/assets/pieDiagram-E7YTZNPT-DFxDtRlY.js.gz +0 -0
- package/dist/client/assets/quadrantDiagram-AXDQQJYC-BlwkSa_A.js.br +0 -0
- package/dist/client/assets/quadrantDiagram-AXDQQJYC-BlwkSa_A.js.gz +0 -0
- package/dist/client/assets/railroadDiagram-O6MQD6OU-DjtRafKE.js.br +0 -0
- package/dist/client/assets/railroadDiagram-O6MQD6OU-DjtRafKE.js.gz +0 -0
- package/dist/client/assets/rdpSession-De-iS1CL.js.br +0 -0
- package/dist/client/assets/rdpSession-De-iS1CL.js.gz +0 -0
- package/dist/client/assets/referenceSelection-Cb24Tb01.js.br +0 -0
- package/dist/client/assets/referenceSelection-Cb24Tb01.js.gz +0 -0
- package/dist/client/assets/requirementDiagram-BXWQKSXE-B1skd4Aj.js.br +0 -0
- package/dist/client/assets/requirementDiagram-BXWQKSXE-B1skd4Aj.js.gz +0 -0
- package/dist/client/assets/sankeyDiagram-P5KCCOFB-2hK1yoP1.js.br +0 -0
- package/dist/client/assets/sankeyDiagram-P5KCCOFB-2hK1yoP1.js.gz +0 -0
- package/dist/client/assets/sequenceDiagram-WJ2MYXX4-DIqwThjL.js.br +0 -0
- package/dist/client/assets/sequenceDiagram-WJ2MYXX4-DIqwThjL.js.gz +0 -0
- package/dist/client/assets/sizeCapture-INFHLROL-CwYlm-u0.js.br +0 -0
- package/dist/client/assets/sizeCapture-INFHLROL-CwYlm-u0.js.gz +0 -0
- package/dist/client/assets/stateDiagram-D77RDMKH-D8Zz2h7U.js.br +0 -0
- package/dist/client/assets/stateDiagram-D77RDMKH-D8Zz2h7U.js.gz +0 -0
- package/dist/client/assets/stateDiagram-v2-MP3YSRHH-e3_uvNTv.js +0 -1
- package/dist/client/assets/swimlanes-42K2YHIH-ChciX-e9.js.br +0 -0
- package/dist/client/assets/swimlanes-42K2YHIH-ChciX-e9.js.gz +0 -0
- package/dist/client/assets/swimlanesDiagram-VR7AAH4N-CnK3uMUF.js +0 -8
- package/dist/client/assets/swiper-CDQegRag.js.br +0 -0
- package/dist/client/assets/swiper-CDQegRag.js.gz +0 -0
- package/dist/client/assets/timeline-definition-24CTP7MA-Dm-MR8Y4.js.br +0 -0
- package/dist/client/assets/timeline-definition-24CTP7MA-Dm-MR8Y4.js.gz +0 -0
- package/dist/client/assets/use-gesture-react.esm-BHdJ-ZCI.js.br +0 -0
- package/dist/client/assets/use-gesture-react.esm-BHdJ-ZCI.js.gz +0 -0
- package/dist/client/assets/vennDiagram-4TSXK5OY-DIjmm5vd.js.br +0 -0
- package/dist/client/assets/vennDiagram-4TSXK5OY-DIjmm5vd.js.gz +0 -0
- package/dist/client/assets/videoCompression-DPpn-S8r.js.br +0 -0
- package/dist/client/assets/videoCompression-DPpn-S8r.js.gz +0 -0
- package/dist/client/assets/wardleyDiagram-VM6X3IG4-Dxxn-JlX.js.br +0 -0
- package/dist/client/assets/wardleyDiagram-VM6X3IG4-Dxxn-JlX.js.gz +0 -0
- package/dist/client/assets/xychartDiagram-S5SC5T6Z-B7fqiF5T.js.br +0 -0
- package/dist/client/assets/xychartDiagram-S5SC5T6Z-B7fqiF5T.js.gz +0 -0
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/ChatRichContent-BI5iYvRf.js","assets/app-CjIJnhRC.js","assets/react-XDCjal2T.js","assets/dnd-BCFAPC0L.js","assets/terminal-DaiFCKy_.js","assets/index-VX_KQ4Kx.css","assets/circle-DhTLygNL.js","assets/search-DwVySubQ.js","assets/external-link-BB8IuvZq.js","assets/clipboardText-DN1ZamHf.js","assets/clipboardText-DfV7Sfy1.css","assets/Markdown-CohgsLqO.js","assets/swiper-CDQegRag.js","assets/swiper-C2J0D0kV.css","assets/use-gesture-react.esm-BHdJ-ZCI.js","assets/referenceSelection-Cb24Tb01.js","assets/list-tree-CA4WMncL.js","assets/Markdown-DKQhs57e.css","assets/quote-DYO_qxPl.js","assets/arrow-down-Dd0wVXN3.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{a$ as Ht,ce as Bt,a4 as Ct,eR as vn,aI as yn,a9 as wn,cr as t,a5 as jn,r as Nn,a8 as de,C as Tt,m as Lt,f as En,et as kn,es as Sn,be as Cn,dH as Rt,b2 as B,bn as Je,eG as Tn,ec as Ln,cy as Rn,dE as Kt,eQ as $n,eF as An,eu as $t,eL as Dn,bj as ue,S as At,G as In,R as On,w as Dt,Z as It,bX as Ot,cX as Mn,eP as zn,ak as Pn}from"./app-CjIJnhRC.js";import{f as Fn,d as _n,j as qn,e as Wn,i as Hn,r as Ue,c as Mt,s as Bn,w as Kn,C as Vn,P as zt,a as Un,g as Gn}from"./clipboardText-DN1ZamHf.js";import{b as n}from"./dnd-BCFAPC0L.js";import{M as Jn}from"./Markdown-CohgsLqO.js";import{Q as ft}from"./quote-DYO_qxPl.js";import{A as Yn}from"./arrow-down-Dd0wVXN3.js";import{A as Qn}from"./use-gesture-react.esm-BHdJ-ZCI.js";const Xn=[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M16 8v5a3 3 0 0 0 6 0v-1a10 10 0 1 0-4 8",key:"7n84p3"}]],Pt=Ht("at-sign",Xn);const Zn=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}]],er=Ht("image",Zn);function tr(r,a,o){n.useEffect(()=>{const s=r.current;if(!o||!s)return;let u;const p=()=>{const v=a.current;u=v&&document.activeElement===v?{input:v,at:performance.now()}:void 0},x=v=>{v.pointerType==="touch"&&v.isPrimary&&p()},d=v=>{v.touches.length===1?p():u=void 0},y=v=>{const R=a.current;if(!R||document.activeElement!==R||v.button!==0||!v.cancelable)return;const E=v.sourceCapabilities;if(!(E?E.firesTouchEvents:u?.input===R&&performance.now()-u.at<1200)||!(v.target instanceof Element))return;const c=v.target.closest('input, textarea, select, button, a, label, summary, [contenteditable]:not([contenteditable="false"]), [role="button"]');c&&c!==s||v.preventDefault()};return s.addEventListener("pointerdown",x,{capture:!0,passive:!0}),s.addEventListener("touchstart",d,{capture:!0,passive:!0}),s.addEventListener("mousedown",y,{capture:!0,passive:!1}),()=>{s.removeEventListener("pointerdown",x,!0),s.removeEventListener("touchstart",d,!0),s.removeEventListener("mousedown",y,!0)}},[r,a,o])}function nr(r,a){n.useEffect(()=>{const o=r.current;if(!a||!Bt()||!o)return;let s,u=0,p=0,x=!1;const d=()=>{s!==void 0&&clearTimeout(s),s=void 0},y=h=>{if(!h)return null;const f=h.getBoundingClientRect();return{top:Math.round(f.top),bottom:Math.round(f.bottom),height:Math.round(f.height)}},v=h=>{if(!x||u>=3||document.visibilityState!=="visible")return;u++;const f=vn(),N=f.visualViewport,T=getComputedStyle(document.documentElement),k=ee=>Number.parseFloat(T.getPropertyValue(ee))||0,D=document.getElementById("root");yn("info","INPUT_VIEWPORT_GEOMETRY",{revision:"native-focus-layout-2",source:h,sequence:p,sample:u,focused:document.activeElement===o,frame:f!==window,window:{height:f.innerHeight,scrollY:f.scrollY},viewport:N?{height:N.height,offsetTop:N.offsetTop,pageTop:N.pageTop,scale:N.scale}:null,baseHeight:k("--app-base-vh"),keyboardHeight:k("--kb-height"),nativePan:k("--app-native-pan"),safeTop:k("--safe-top-inset"),safeBottom:k("--safe-bottom-inset"),root:y(D),ownerRoot:y(f.document.getElementById("root")),rootPaddingBottom:D&&Number.parseFloat(getComputedStyle(D).paddingBottom)||0,panel:y(o.closest("[data-session-chat]")),composer:y(o.closest(".session-chat-composer")),input:y(o),opacity:getComputedStyle(o).opacity})},R=()=>{!x||u>=3||(d(),s=setTimeout(()=>{s=void 0,v("layout.settled")},250))},E=()=>{d(),u=0,p++,x=!0,v("focus"),R()},m=()=>{d(),v("blur"),x=!1},c=()=>{d(),v("native.input")};return o.addEventListener("focus",E),o.addEventListener("blur",m),o.addEventListener("input",c),document.addEventListener(Ct,R),document.activeElement===o&&E(),()=>{d(),o.removeEventListener("focus",E),o.removeEventListener("blur",m),o.removeEventListener("input",c),document.removeEventListener(Ct,R)}},[r,a])}function rr(r){const a=[];for(const o of r){const s=a[a.length-1];o.role==="assistant"&&s?.role==="assistant"?s.messages.push(o):a.push({id:o.id,role:o.role,messages:[o]})}return a}function sr(r){const a=r.slice().reverse().find(o=>o.role==="user");return!a||["failed","expired"].includes(a.status)?!1:!r.some(o=>o.role==="assistant"&&o.replyTo===a.id&&!["ack","progress"].includes(o.responseKind||""))}function ar(r){return{pending:"已发送",delivered:"已发送",stored:"已发送",failed:"发送失败",expired:"发送失败"}[r]||"待确认"}function or(r,a){const o=new Map(r.map(u=>[u.id,u]));let s=!1;for(const u of a){const p=o.get(u.id);(!p||JSON.stringify(p)!==JSON.stringify(u))&&(o.set(u.id,u),s=!0)}return s?[...o.values()].sort((u,p)=>(u.sequence??u.createdAt)-(p.sequence??p.createdAt)):r}let Vt;const ir=()=>Vt?.ChatRichContent;let Ft;function _t(){return Ft??=wn(()=>import("./ChatRichContent-BI5iYvRf.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19])).then(r=>(Vt=r,r)).catch(r=>{throw Ft=void 0,r})}function cr(r,a,o){const[s,u]=n.useState(!1),p=n.useRef(o);p.current=o;const x=n.useRef();return n.useLayoutEffect(()=>{const d=r.current;if(!a||!d||!Bt())return;let y,v,R;const E=()=>{y!==void 0&&cancelAnimationFrame(y),v!==void 0&&clearTimeout(v),y=void 0,v=void 0,R?.(),R=void 0,u(!1)},m=()=>{R&&(y!==void 0&&cancelAnimationFrame(y),y=requestAnimationFrame(()=>{y=requestAnimationFrame(E)}))};x.current=m;const c=()=>{if(!R){const k=d.style.opacity,D=d.style.transition;R=()=>{d.style.opacity=k,d.style.transition=D}}d.style.transition="none",d.style.opacity="0",u(!0),v!==void 0&&clearTimeout(v),v=setTimeout(E,1200),p.current.isOpen&&p.current.isSettled&&m()},h=d.focus,f=Object.getOwnPropertyDescriptor(d,"focus");d.focus=k=>{c(),h.call(d,{...k,preventScroll:!0})};const N=()=>{(document.activeElement!==d||!p.current.isOpen)&&c()},T=()=>{p.current.isOpen||E()};return d.addEventListener("pointerdown",N,!0),d.addEventListener("focus",c,!0),d.addEventListener("blur",E),d.addEventListener("keydown",T),()=>{d.removeEventListener("pointerdown",N,!0),d.removeEventListener("focus",c,!0),d.removeEventListener("blur",E),d.removeEventListener("keydown",T),f?Object.defineProperty(d,"focus",f):Reflect.deleteProperty(d,"focus"),x.current=void 0,E()}},[r,a]),n.useLayoutEffect(()=>{o.isOpen&&o.isSettled&&x.current?.()},[o.isOpen,o.isSettled]),a&&s}function qt(r,a){return a?`> ${a.author.replace(/[\r\n]/g," ")} · ${a.time}
|
|
3
|
-
${a.text.replace(/\r\n?/g,`
|
|
4
|
-
`).split(`
|
|
5
|
-
`).map(o=>`> ${o}`).join(`
|
|
6
|
-
`)}
|
|
7
|
-
|
|
8
|
-
${r.trim()}`:r.trim()}function ut(r){const a=r.split(`
|
|
9
|
-
`),o=a[0].match(/^> (.+) · (\d{2}:\d{2})$/);if(!o)return{text:r,reference:null};let s=1;for(;s<a.length&&a[s].startsWith(">");)s++;return s<2||a[s]!==""?{text:r,reference:null}:{text:a.slice(s+1).join(`
|
|
10
|
-
`),reference:{author:o[1],time:o[2],text:a.slice(1,s).map(u=>u.replace(/^> ?/,"")).join(`
|
|
11
|
-
`)}}}function Wt({id:r,root:a,heights:o,estimate:s,eager:u,preserve:p,nearby:x,children:d}){const[y,v]=n.useState(()=>!a||typeof IntersectionObserver>"u"||u),R=n.useRef(null),E=n.useRef(o?.get(r)??s);return n.useEffect(()=>{const m=a?.current,c=R.current;if(!m||!c||typeof IntersectionObserver>"u")return;const h=new IntersectionObserver(f=>{if(!m.clientHeight)return;const N=f.find(T=>T.target===c);if(N){if(N.isIntersecting?x?.add(r):x?.delete(r),N.isIntersecting)v(!0);else if(!p&&!c.contains(document.activeElement)){const T=window.getSelection();(!T?.toString()||!c.contains(T.anchorNode)&&!c.contains(T.focusNode))&&v(!1)}}},{root:m,rootMargin:`${m.clientHeight}px 0px`});return h.observe(c),()=>h.disconnect()},[a,p,x,r]),n.useLayoutEffect(()=>{const m=R.current;if(!y||!m)return;const c=()=>{const f=m.getBoundingClientRect().height;if(f<=0)return;const N=E.current,T=a?.current;T?.clientHeight&&m.getBoundingClientRect().top+N<=T.getBoundingClientRect().top+1&&(T.scrollTop+=f-N),E.current=f,o?.set(r,f)};if(c(),typeof ResizeObserver>"u")return;const h=new ResizeObserver(c);return h.observe(m),()=>h.disconnect()},[y,d,r,a,o]),t.jsx("div",{ref:R,"data-chat-viewport-row":r,style:y?void 0:{height:E.current},children:y?d:t.jsxs("div",{"aria-hidden":"true",className:"space-y-3 py-3",children:[t.jsx("div",{className:"chat-loading-skeleton h-3 w-3/4 rounded bg-surface-2"}),t.jsx("div",{className:"chat-loading-skeleton h-3 w-1/2 rounded bg-surface-2"})]})})}const lr=n.memo(function({content:a}){return t.jsx(Jn,{content:a})}),dt="```termdock-context\n",Te=r=>`@「${r.name} · ${r.groupName}」`,Ge=r=>r.reference?`【${r.reference}】`:"";function Ut(r,a){return a.filter(o=>r.includes(Te(o)))}function ct(r,a,o){const s=Ut(r,o),u=r.trim();return u+(a.length||s.length?`${u?`
|
|
12
|
-
|
|
13
|
-
`:""}${dt}${JSON.stringify({attachments:a,mentions:s})}
|
|
14
|
-
\`\`\``:"")}function fe(r){const a={text:r,attachments:[],mentions:[]},o=r.lastIndexOf(dt);if(o<0||o>0&&!r.slice(0,o).endsWith(`
|
|
15
|
-
|
|
16
|
-
`)||!r.endsWith("\n```"))return a;try{const s=JSON.parse(r.slice(o+dt.length,-4));return!Array.isArray(s.attachments)||!Array.isArray(s.mentions)||!s.attachments.every(u=>u&&typeof u.path=="string"&&typeof u.name=="string"&&(u.type===void 0||typeof u.type=="string")&&(u.size===void 0||typeof u.size=="number")&&(u.reference===void 0||typeof u.reference=="string"))||!s.mentions.every(u=>u&&["sessionId","groupId","groupName","name"].every(p=>typeof u[p]=="string")&&(u.subtitle===void 0||typeof u.subtitle=="string"))?a:{text:r.slice(0,o?o-2:0),attachments:s.attachments,mentions:s.mentions}}catch{return a}}function mt(r){return r.type?.startsWith("image/")||/\.(png|jpe?g|gif|webp|heic|avif|svg)$/i.test(r.name)?"图片":r.type?.startsWith("video/")||/\.(mp4|mov|webm|m4v|mkv)$/i.test(r.name)?"视频":"文件"}function ur(r){const a=fe(r);return[a.text,...a.attachments.map(o=>`${o.reference||mt(o)}:${o.name}`)].filter(Boolean).join(`
|
|
17
|
-
`)}function Gt({files:r,onRemove:a,onReference:o}){return r.length?t.jsx("ul",{"aria-label":"消息附件",className:"mb-2 grid max-h-[min(9rem,calc(var(--app-visible-vh,100dvh)*0.2))] grid-cols-1 gap-1.5 overflow-y-auto sm:grid-cols-2",children:r.map((s,u)=>{const p=mt(s),x=p==="图片"?er:p==="视频"?jn:Nn,d=s.size===void 0?"":s.size<1024*1024?`${Math.max(1,Math.round(s.size/1024))} KB`:`${(s.size/(1024*1024)).toFixed(1)} MB`;return t.jsxs("li",{className:"flex min-w-0 items-center gap-2.5 rounded-xl border border-border/60 bg-surface-2 px-3 py-1.5",children:[t.jsx(x,{size:19,"aria-hidden":"true",className:"shrink-0 text-primary"}),t.jsxs("div",{className:"min-w-0 flex-1",children:[t.jsx("p",{className:"truncate text-sm",title:s.name,children:s.name}),t.jsxs("p",{className:"text-[11px] text-muted-foreground",children:[s.reference||p,d&&` · ${d}`]})]}),o&&s.reference&&t.jsx("button",{type:"button","aria-label":`插入引用 ${s.reference}`,title:"在光标处插入引用",className:"min-h-11 shrink-0 rounded-lg px-2 text-xs text-primary hover:bg-surface-elevated",onPointerDown:y=>y.preventDefault(),onClick:()=>o(s),children:"引用"}),a&&t.jsx("button",{type:"button","aria-label":`移除附件 ${s.name}`,className:"inline-flex h-11 w-11 shrink-0 items-center justify-center rounded-lg text-muted-foreground hover:bg-surface-elevated focus-visible:ring-2 focus-visible:ring-ring",onPointerDown:y=>y.preventDefault(),onClick:()=>a(u),children:t.jsx(de,{size:14})})]},`${u}:${s.path}`)})}):null}function Jt({text:r,files:a,mentions:o}){const s=[...a.map(Ge),...o.map(Te)].filter(Boolean).sort((x,d)=>d.length-x.length);if(!s.length)return t.jsx(t.Fragment,{children:r});const u=[];let p=r;for(;p;){let x=p.length,d="";for(const y of s){const v=p.indexOf(y);v>=0&&v<x&&(x=v,d=y)}if(!d){u.push({text:p,token:!1});break}x&&u.push({text:p.slice(0,x),token:!1}),u.push({text:d,token:!0}),p=p.slice(x+d.length)}return t.jsx(t.Fragment,{children:u.map((x,d)=>x.token?t.jsx("span",{className:"rounded bg-primary/10 text-primary",children:x.text},d):t.jsx("span",{children:x.text},d))})}const ht=r=>new Date(r).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit",hourCycle:"h23"}),dr=new Set(["amp","claude","codex","copilot","cursor","droid","gemini","goose","grok","kimi","opencode"]);function Yt({name:r,slug:a}){const o=a&&dr.has(a)?`url(/icons/agents/${a}.svg) center / contain no-repeat`:void 0;return t.jsxs("span",{className:"inline-flex items-center gap-2 font-medium text-foreground/75",children:[o?t.jsx("span",{"aria-hidden":"true",className:"h-4 w-4 shrink-0 bg-current",style:{mask:o,WebkitMask:o}}):t.jsx(En,{size:15,"aria-hidden":"true"}),t.jsx("span",{children:r})]})}function Qt({reference:r,onRemove:a}){return t.jsxs("blockquote",{className:"mb-2 min-w-0 rounded-lg border-l-2 border-primary/50 bg-surface px-3 py-2 text-left",children:[t.jsxs("div",{className:"flex items-center gap-2 text-[11px] leading-5 text-muted-foreground",children:[t.jsx(ft,{size:12}),t.jsxs("span",{className:"min-w-0 flex-1 truncate",children:[r.author," · ",r.time]}),a&&t.jsx("button",{type:"button","aria-label":"移除消息引用",title:"移除引用",className:"inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-md hover:bg-surface-2",onPointerDown:o=>o.preventDefault(),onClick:a,children:t.jsx(de,{size:13})})]}),t.jsx("p",{className:"line-clamp-3 whitespace-pre-wrap break-words text-[13px] leading-6 text-foreground/75",title:r.text,children:r.text})]})}function fr({content:r}){const a=ut(r),o=fe(a.text);return t.jsxs(t.Fragment,{children:[a.reference&&t.jsx(Qt,{reference:a.reference}),t.jsx(Gt,{files:o.attachments}),o.text&&t.jsx("p",{className:"whitespace-pre-wrap break-words text-[15px] leading-7 sm:text-base",children:t.jsx(Jt,{text:o.text,files:o.attachments,mentions:o.mentions})})]})}function Xt({content:r,createdAt:a,status:o,messageId:s,actionsOpen:u,children:p}){return t.jsxs("article",{"data-chat-turn":"user","data-chat-message":s,"data-actions-open":u||void 0,className:"ml-auto flex w-fit max-w-[88%] flex-col items-end sm:max-w-[85%]",children:[t.jsx("div",{"data-chat-user-bubble":!0,className:"w-fit max-w-full rounded-2xl bg-surface-2 px-4 py-3",children:t.jsx(fr,{content:r})}),t.jsxs("div",{"data-chat-message-actions":!0,className:"chat-user-meta mt-1 flex min-h-8 flex-wrap items-center justify-end gap-2 text-[10px] text-muted-foreground",children:[t.jsx("span",{children:o}),t.jsx("time",{dateTime:new Date(a).toISOString(),title:new Date(a).toLocaleString(),className:"opacity-60",children:ht(a)}),p]})]})}const lt="chat-message-action inline-flex h-8 min-w-8 items-center justify-center gap-1 rounded-lg text-muted-foreground/60 transition hover:bg-surface-2 hover:text-foreground focus-visible:ring-2 focus-visible:ring-ring",mr=n.memo(function({messages:a,agentName:o,agentSlug:s,canWrite:u,copied:p,onCopy:x,onReference:d,sessionId:y,uiWritable:v,onAction:R,pendingMessage:E,scrollRoot:m,rowHeights:c,nearbyIds:h,initialVisibleIds:f}){const N=n.useMemo(()=>new Set([...f??[],...a.slice(-6).map(w=>w.id)]),[a,f]),T=w=>Math.min(1200,Math.max(80,Math.ceil(w.content.length/65)*28+40)),k=ir(),D=n.useRef(new Map),ee=n.useMemo(()=>rr(a).map(w=>{if(w.role==="user")return w;const L=w.messages.map(A=>D.current.get(A.id)).find(Boolean)||w.id;for(const A of w.messages)D.current.set(A.id,L);return{...w,id:L}}),[a]),[me,$]=n.useState(null),q=n.useRef(null),J=n.useRef("");return n.useEffect(()=>{const w=A=>{A.target instanceof Node&&!q.current?.contains(A.target)&&$(null)},L=A=>{A.key==="Escape"&&$(null)};return document.addEventListener("pointerdown",w),document.addEventListener("keydown",L),()=>{document.removeEventListener("pointerdown",w),document.removeEventListener("keydown",L)}},[]),t.jsxs("div",{ref:q,className:"space-y-6 sm:space-y-7",onPointerDownCapture:w=>{J.current=w.pointerType},onClick:w=>{if(!w.detail||J.current!=="touch"&&!window.matchMedia?.("(hover: none)").matches)return;const L=w.target instanceof Element?w.target:null;if(!L||L.closest('button, a, input, textarea, select, label, summary, [role="button"], [contenteditable="true"]')||window.getSelection()?.toString().trim())return;const A=L.closest("[data-chat-message]")?.dataset.chatMessage;$(re=>A&&re!==A?A:null)},children:[ee.map(w=>{const L=w.messages[w.messages.length-1],A=w.role==="user",re=w.messages.map(S=>S.content).join(`
|
|
18
|
-
|
|
19
|
-
`),he=S=>u&&t.jsx("button",{type:"button","aria-label":"引用消息",title:"引用这条消息",className:`${lt} shrink-0`,onPointerDown:Y=>Y.preventDefault(),onClick:()=>{$(null),d(S)},children:t.jsx(ft,{size:13})});return A?t.jsx(Wt,{id:w.id,root:m,heights:c,nearby:h,estimate:T(L),eager:N.has(L.id),children:t.jsx(Xt,{messageId:w.id,actionsOpen:me===w.id,content:re,createdAt:L.createdAt,status:ar(L.status),children:t.jsxs("span",{className:"chat-message-tools",children:[he(L),t.jsxs("button",{type:"button",className:lt,"aria-label":"复制消息",title:"复制",onClick:()=>x(re,w.id),children:[p===w.id?t.jsx(Tt,{size:13}):t.jsx(Lt,{size:13}),p===w.id&&t.jsx("span",{className:"text-[10px]",children:"已复制"})]})]})})},w.id):t.jsxs("article",{"data-chat-turn":"assistant",className:"w-full",children:[t.jsx("div",{className:"mb-2 flex min-h-8 items-center text-[11px] leading-4",children:t.jsx(Yt,{name:o,slug:s})}),t.jsx("div",{className:"chat-replies min-w-0",children:w.messages.map((S,Y)=>t.jsx(Wt,{id:S.id,root:m,heights:c,nearby:h,estimate:T(S),eager:N.has(S.id),preserve:!!S.ui,children:t.jsxs("div",{"data-chat-message":S.id,"data-actions-open":me===S.id||void 0,className:"chat-reply min-w-0",children:[t.jsx("div",{className:"session-chat-markdown min-w-0 break-words",children:S.ui&&k?t.jsx(k,{message:S,sessionId:y,canWrite:v,onAction:R},S.id):t.jsx(lr,{content:S.content})}),t.jsxs("div",{"data-chat-message-actions":!0,className:"chat-reply-meta flex items-center justify-between gap-2",children:[t.jsxs("span",{className:"chat-message-tools",children:[he(S),t.jsxs("button",{type:"button",className:lt,"aria-label":"复制回复",title:"复制",onClick:()=>x(S.content,S.id),children:[p===S.id?t.jsx(Tt,{size:13}):t.jsx(Lt,{size:13}),p===S.id&&t.jsx("span",{className:"text-[10px]",children:"已复制"})]})]}),Y<w.messages.length-1&&t.jsx("span",{"aria-hidden":"true",className:"chat-reply-divider min-w-0 flex-1"}),t.jsx("time",{className:"shrink-0 text-[11px] tabular-nums text-muted-foreground/60",dateTime:new Date(S.createdAt).toISOString(),title:new Date(S.createdAt).toLocaleString(),children:ht(S.createdAt)})]})]})},S.id))})]},w.id)}),E]})});function hr(r){const a=n.useRef(r);a.current=r;const[o,s]=n.useState(null),u=n.useRef(null),p=n.useRef(!0),x=n.useCallback(()=>{u.current?.controller.abort();const m=a.current,c=Rt(),h=B(),f=Je(),N=document.activeElement,T=new AbortController,k=m.input.current,D={controller:T,at:{value:k?.value||"",start:k?.selectionStart??0,end:k?.selectionEnd??0},current:()=>p.current&&!T.signal.aborted&&u.current===D&&a.current.active&&a.current.canWrite&&a.current.sessionId===m.sessionId&&Rt()===c&&B()===h&&!h?.closed&&Je()===f,focus:()=>document.activeElement===N||document.activeElement===m.input.current||document.activeElement===document.body};return u.current=D,D},[]);n.useEffect(()=>{const m=()=>{u.current&&!u.current.current()&&(u.current.controller.abort(),u.current=null,s(null))};m();const c=()=>{u.current?.controller.abort(),u.current=null,s(null)};return window.addEventListener("termdock:secure-state",m),window.addEventListener("auth:unauthorized",c),document.addEventListener("focusin",m),()=>{window.removeEventListener("termdock:secure-state",m),window.removeEventListener("auth:unauthorized",c),document.removeEventListener("focusin",m)}},[r.active,r.canWrite,r.sessionId]),n.useEffect(()=>(p.current=!0,()=>{p.current=!1,u.current?.controller.abort()}),[]);const d=n.useCallback(async(m,c,h=[])=>{if(m.current()){s({stage:"uploading",percent:c.length?0:void 0,files:c,paths:h}),a.current.error("");try{if(c.length&&!a.current.directory&&!a.current.sessionAttachments)throw new Error("附件上传暂不可用,请重试");const f=k=>{m.current()&&s({stage:"uploading",percent:Math.round(k),files:c,paths:h})},N=c.length?a.current.sessionAttachments?await kn(a.current.sessionId,c,m.controller.signal,f,m.current):await Sn(a.current.directory,c,m.controller.signal,f,m.current):{files:[]};if(!m.current())return;if(N.files.length!==c.length||N.files.some(k=>!k.path))throw new Error("部分文件未上传成功,请重试");const T=[...h,...N.files.map(k=>k.path)];if(!T.length)throw new Error("没有可添加的文件");a.current.attach?a.current.attach([...h.map(k=>({path:k,name:k.split("/").pop()||k})),...N.files.map((k,D)=>({path:k.path,name:c[D].name,type:c[D].type,size:c[D].size}))],m.focus(),m.at):a.current.insert(`${T.map(Cn).join(" ")} `,m.focus()),s(null),u.current=null}catch(f){if(!m.current())return;s({stage:"failed",files:c,paths:h}),a.current.error(f instanceof Error?f.message:"文件上传失败,请重试")}}},[]),y=n.useCallback(m=>{!a.current.active||!a.current.canWrite||!m.length||d(x(),m)},[x,d]),v=n.useCallback(async m=>{if(!a.current.active||!a.current.canWrite)return;const c=x();s({stage:"reading"}),a.current.error("");const h=f=>{c.current()&&(a.current.insert(f,c.focus()),s(null),u.current=null)};try{const f=await Fn(m,c.current);if(f.kind==="text"){h(f.text);return}if(f.kind==="files"){const N=f.files.length===1&&f.files[0].type.startsWith("image/")?[_n(f.files[0])]:f.files;return await d(c,N,f.paths)}throw new Error("剪贴板没有可读取的内容,请使用系统粘贴或选择文件")}catch(f){c.current()&&(s(null),a.current.error(f instanceof Error?f.message:"粘贴失败,请重试"))}},[x,d]);return{transfer:o,addFiles:y,paste:v,cancel:()=>{u.current?.controller.abort(),u.current=null,s(m=>m?{...m,stage:"cancelled"}:null)},retry:()=>{(o?.files?.length||o?.paths?.length)&&d(x(),o.files||[],o.paths)},dismiss:()=>s(null),busy:o?.stage==="reading"||o?.stage==="uploading"}}function pr(r,a,o){const s=Tn(),[u,p]=n.useState([]),[x,d]=n.useState("idle"),[y,v]=n.useState(0);return n.useEffect(()=>{if(!a||!o)return;let E=!0;d("loading");const m=h=>{E&&(p(h.groups),d("ready"))},c=Ln(m);return Rn().then(m).catch(()=>{E&&d("error")}),()=>{E=!1,c()}},[r,a,o,y]),{members:n.useMemo(()=>{const E=[];for(const m of u)if(!(m.archivedAt||!m.sessionIds.includes(r)))for(const c of m.sessionIds){const h=s.find(f=>f.sessionId===c);c!==r&&h?.agent&&E.push({sessionId:c,groupId:m.id,groupName:m.name,name:h.displayName,...h.displaySubtitle?{subtitle:h.displaySubtitle}:{}})}return E},[s,u,r]),status:x,retry:()=>v(E=>E+1)}}const Ce="inline-flex min-h-11 items-center justify-center gap-2 rounded-xl px-3 text-sm transition hover:bg-surface-2 disabled:opacity-40 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring";function gr({sessionId:r,name:a="当前会话",canWrite:o=!0,active:s=!0,terminalLink:u=!1,onKeyboardChange:p,onReadyChange:x,onTerminal:d}){const y=$n(),v=Gn(y),R=qn({enabled:s&&y}),E=n.useRef(p);E.current=p,n.useEffect(()=>{E.current?.(s&&R.isOpen)},[s,R.isOpen]);const m=An(),c=o&&m.has("session.input");n.useEffect(()=>(x?.(!0),()=>x?.(!1)),[x]);const h=`termdock:chat:${Kt()?.targetPeerId||location.origin}:${r}`,[f]=n.useState(()=>Wn(h)),[N,T]=n.useState(f?.hasOlder??!1),[k,D]=n.useState(!1),[ee,me]=n.useState(f?.replyPending),[$,q]=n.useState(()=>{try{return sessionStorage.getItem(`${h}:draft`)||""}catch{return""}}),[J,w]=n.useState(()=>{try{return fe(sessionStorage.getItem(`${h}:extras`)||"")}catch{return fe("")}}),L=J.attachments,A=Ut($,J.mentions),[re,he]=n.useState(!1),S=!re&&(L.some(e=>e.reference)||A.length>0),[Y,Le]=n.useState($.length),[Zt,se]=n.useState(null),[en,pt]=n.useState(0),Re=n.useId(),pe=c&&m.has("collaboration.mention"),ae=pe?$.slice(0,Y).match(/(?:^|\s)@([^\s@「」]*)$/u):null,ge=ae?`${Y}:${ae[1]}`:null,oe=s&&!!ae&&Zt!==ge,ie=pr(r,s&&pe,oe),U=ie.members.filter(e=>`${e.name} ${e.subtitle||""} ${e.groupName}`.toLocaleLowerCase().includes((ae?.[1]||"").toLocaleLowerCase())),xe=Math.min(en,Math.max(0,U.length-1));n.useEffect(()=>{pt(0)},[ge]),n.useEffect(()=>{try{sessionStorage.setItem(`${h}:extras`,ct(J.mentions.map(Te).join(" "),L,J.mentions))}catch{}},[h,J,L]);const[te,$e]=n.useState(()=>{try{const e=JSON.parse(sessionStorage.getItem(`${h}:reference`)||"null");return e&&typeof e.author=="string"&&typeof e.time=="string"&&typeof e.text=="string"?e:null}catch{return null}}),[Ae,be]=n.useState(null),[Q,tn]=n.useState(f?.agentName??"助手"),[De,nn]=n.useState(f?.agentSlug),[rn,Ye]=n.useState(!1),[I,Ie]=n.useState(()=>{try{return JSON.parse(sessionStorage.getItem(`${h}:pending`)||"null")}catch{return null}}),[W,gt]=n.useState(f?.messages??[]),[sn,Qe]=n.useState(!f),[X,an]=n.useState(f?.agentAvailable),[Xe,Z]=n.useState(""),[on,ce]=n.useState(!1),[cn,xt]=n.useState(!!f);$t(s&&on?{tone:"recovering",message:"正在恢复对话同步…"}:null),$t(s&&Xe?{message:Xe}:null);const[Oe,bt]=n.useState(!1),[ln,Ze]=n.useState(!1),[un,dn]=n.useState(""),K=n.useRef(null),M=n.useRef(null),Me=n.useRef(null);tr(K,M,s&&y);const fn=n.useRef(null),ze=cr(M,s&&y&&!zn(),R);nr(M,s&&y),n.useLayoutEffect(()=>{const e=M.current,i=Me.current;if(!e||!i)return;const l=()=>{i.style.width=`${e.clientWidth}px`,i.scrollTop=e.scrollTop};if(l(),typeof ResizeObserver>"u")return;const g=new ResizeObserver(l);return g.observe(e),()=>g.disconnect()},[S,ze]);const V=n.useRef(f?.nearBottom??!0),et=n.useRef(!1),ve=n.useRef(0),tt=n.useRef(0),nt=n.useRef(null),Pe=n.useRef(null),vt=n.useRef(null),ye=n.useRef(0);Hn(Pe,s&&y);const rt=n.useRef(I);rt.current=I;const st=n.useRef(),we=n.useRef(W);we.current=W;const _=n.useRef({hasOlder:f?.hasOlder??!1,hasNewer:f?.hasNewer??!1}),Fe=n.useRef(!1),le=n.useRef(),_e=n.useRef(0),at=n.useRef(0),yt=n.useRef(null),[qe]=n.useState(()=>new Set(f?.visibleMessageIds)),[wt]=n.useState(()=>new Map(f?.rowHeights)),je=n.useRef(f?.scrollTop??0),Ne=n.useRef(),H=n.useRef({active:s,canWrite:c,sessionId:r});H.current={active:s,canWrite:c,sessionId:r};const ot=Dn(),G=n.useCallback((e,i=!0,l)=>{const g=M.current,b=g?.selectionStart,C=g?.selectionEnd,z=H.current,j=B(),Se=Je();q(P=>{const Ke=l&&P.startsWith(l.value.slice(0,l.start)),ne=l?P===l.value||Ke?Math.min(l.start,P.length):P.length:Math.min(b??P.length,P.length),F=l?P===l.value?Math.min(l.end,P.length):ne:Math.min(C??ne,P.length),Ve=P.slice(0,ne)+e+P.slice(F);return requestAnimationFrame(()=>{g?.isConnected&&g.value===Ve&&H.current.active&&H.current.canWrite&&H.current.sessionId===z.sessionId&&B()===j&&Je()===Se&&(i&&ue(g),g.setSelectionRange(ne+e.length,ne+e.length))}),Ve})},[]),mn=(e,i,l)=>{let g=Math.max(0,...L.map(C=>Number(C.reference?.match(/\d+$/)?.[0])||0));const b=e.map(C=>({...C,reference:`${mt(C)}${++g}`}));w(C=>({...C,attachments:[...C.attachments,...b]})),G(`${b.map(Ge).join(" ")} `,i,l)},jt=e=>{if(!ae||!s||!pe)return;const i=Y-ae[1].length-1,l=`${Te(e)} `,g=$.slice(0,i)+l+$.slice(Y);q(g),Le(i+l.length),se(ge),w(b=>({...b,mentions:[...b.mentions.filter(C=>C.sessionId!==e.sessionId||C.groupId!==e.groupId),e]})),requestAnimationFrame(()=>{ue(M.current),M.current?.setSelectionRange(i+l.length,i+l.length)})},O=hr({sessionId:r,active:s,canWrite:c,input:M,insert:G,attach:mn,error:Z,sessionAttachments:!!ot,directory:ot?ot.directories?.find(e=>e.access==="write")?.path:"/tmp"}),Nt=n.useCallback((e,i)=>{if(!s||!c)return;const l=i||ur(ut(e.content).text);if(new TextEncoder().encode(l).byteLength>8e3){Z("这条消息较长,请选中需要引用的内容。");return}be(null),$e({author:e.role==="user"?"用户":Q,time:ht(e.createdAt),text:l}),Z(""),window.getSelection()?.removeAllRanges(),ue(M.current)},[s,c,Q]);n.useEffect(()=>{if(!s||!c){be(null);return}const e=()=>{const i=window.getSelection(),l=i?.toString().trim(),g=j=>j instanceof Element?j:j?.parentElement,b=g(i?.anchorNode)?.closest("[data-chat-message]"),C=g(i?.focusNode)?.closest("[data-chat-message]"),z=l&&b===C&&b&&Pe.current?.contains(b)?{id:b.dataset.chatMessage,text:l}:null;be(j=>j?.id===z?.id&&j?.text===z?.text?j:z)};return document.addEventListener("selectionchange",e),()=>document.removeEventListener("selectionchange",e)},[s,c]),n.useEffect(()=>{try{te?sessionStorage.setItem(`${h}:reference`,JSON.stringify(te)):sessionStorage.removeItem(`${h}:reference`)}catch{}},[h,te]);const hn=`/api/terminal/${encodeURIComponent(r)}/chat`,We=n.useCallback((e,i=!1)=>{const l=or(i?[]:we.current,e);we.current=l,gt(l)},[]),He=n.useCallback(async(e,i=!1)=>{e=AbortSignal.any([...e?[e]:[],AbortSignal.timeout(15e3)]);const l=++tt.current,g=B(),b=we.current,C=i?void 0:b[b.length-1]?.id,z=rt.current?{requestId:rt.current.requestId}:{};let j;try{j=await Ue(r,e,i?void 0:st.current,{...C?{after:C}:{},...z})}catch(F){if(!C||F.status!==404)throw F;j=await Ue(r,e,void 0,z),i=!0}if(e.aborted||l!==tt.current||B()!==g)return;if(j.unchanged&&j.revision&&j.revision===st.current){Qe(!1),ce(!1),xt(!0);return}j.page?.hasNewer&&V.current&&!_.current.hasNewer&&(j=await Ue(r,e,void 0,z),i=!0);const Se=j.messages;if(!Array.isArray(Se)||j.updates!==void 0&&!Array.isArray(j.updates))throw new Error("暂时无法读取对话,请重试");const P=[...j.updates??[],...Se];if(P.some(F=>F.ui)&&await _t(),e.aborted||l!==tt.current||B()!==g)return;an(j.agentAvailable===!0),tn(typeof j.agent?.displayName=="string"&&j.agent.displayName.trim()?j.agent.displayName:"助手"),nn(typeof j.agent?.slug=="string"?j.agent.slug:void 0),st.current=typeof j.revision=="string"?j.revision:void 0;const Ke=i||b.length===0;Ke&&(qe.clear(),at.current++,le.current?.abort(),_.current.hasOlder=j.page?.hasOlder===!0,T(_.current.hasOlder)),me(j.replyPending),_.current.hasNewer=j.page?.hasNewer===!0;const ne=new Set(b.map(F=>F.id));(_.current.hasNewer||b.length&&!V.current&&Se.some(F=>!ne.has(F.id)))&&Ze(!0),We(P,Ke),Ie(F=>F&&(j.confirmedRequestId===F.requestId||P.some(Ve=>Ve.requestId===F.requestId))?null:F),Qe(!1),ce(!1),xt(!0)},[r,We,qe]),Be=n.useCallback(async()=>{const e=we.current[0]?.id;if(!H.current.active||!_.current.hasOlder||!e||Fe.current||Date.now()<_e.current)return;const i=new AbortController,l=B(),g=at.current;le.current=i,Fe.current=!0,D(!0);try{const b=await Ue(r,i.signal,void 0,{before:e});if(!Array.isArray(b.messages))throw new Error("对话分页无效");if(b.messages.some(z=>z.ui)&&await _t(),i.signal.aborted||B()!==l||g!==at.current||!H.current.active)return;const C=K.current;C&&(Ne.current={top:C.scrollTop,height:C.scrollHeight}),_.current.hasOlder=b.page?.hasOlder===!0,T(_.current.hasOlder),We(b.messages),_e.current=0}catch(b){i.signal.aborted||(b.status===404?(_.current.hasOlder=!1,T(!1)):(_e.current=Date.now()+5e3,ce(!0)))}finally{le.current===i&&(Fe.current=!1,le.current=void 0,H.current.active&&D(!1))}},[r,We]);n.useEffect(()=>{const e=yt.current,i=K.current;if(!s||!N||!e||!i)return;const l=()=>{_e.current=0,i.scrollTop<i.clientHeight&&Be()};window.addEventListener("online",l);const g=typeof IntersectionObserver>"u"?void 0:new IntersectionObserver(b=>{b.some(C=>C.isIntersecting)&&Be()},{root:i,rootMargin:`${i.clientHeight}px 0px`});return g?.observe(e),()=>{g?.disconnect(),window.removeEventListener("online",l)}},[s,N,W.length,Be]),n.useEffect(()=>(s||D(!1),()=>{le.current?.abort(),le.current=void 0,Fe.current=!1}),[s]),n.useEffect(()=>{if(!s)return;const e=new AbortController;let i=!1,l=0,g;const b=async()=>{if(!(i||document.visibilityState==="hidden")){clearTimeout(g),i=!0;try{await He(e.signal),l=0}catch{e.signal.aborted||(l++,ce(!0),Qe(!1))}finally{i=!1,e.signal.aborted||(g=setTimeout(()=>{b()},Math.min(3e4,2500*2**l)))}}};return b(),window.addEventListener("online",b),window.addEventListener(At,b),document.addEventListener("visibilitychange",b),()=>{e.abort(),clearTimeout(g),window.removeEventListener("online",b),window.removeEventListener(At,b),document.removeEventListener("visibilitychange",b)}},[s,He]),n.useEffect(()=>()=>{ve.current++},[]),n.useEffect(()=>{try{sessionStorage.setItem(`${h}:draft`,$)}catch{}},[h,$]),n.useEffect(()=>{try{I?sessionStorage.setItem(`${h}:pending`,JSON.stringify(I)):sessionStorage.removeItem(`${h}:pending`)}catch{}},[h,I]);const Ee=n.useCallback(()=>{const e=K.current;e&&e.clientHeight&&(e.scrollTop=e.scrollHeight,je.current=e.scrollTop,V.current=!0,_.current.hasNewer||Ze(!1))},[]),it=n.useRef(!1);it.current=W.length>0||!!I,n.useEffect(()=>{if(!nt.current||typeof ResizeObserver>"u")return;const e=new ResizeObserver(()=>{H.current.active&&it.current&&V.current&&Ee()});return e.observe(nt.current),K.current&&e.observe(K.current),()=>e.disconnect()},[Ee]),n.useLayoutEffect(()=>{const e=K.current;!s||!e||(Ne.current?(e.scrollTop=Ne.current.top+e.scrollHeight-Ne.current.height,je.current=e.scrollTop,Ne.current=void 0):V.current&&it.current?Ee():e.scrollTop=je.current)},[W,I,s,N,Ee]);const Et=n.useRef({messages:W,agentName:Q,agentSlug:De,agentAvailable:X,replyPending:ee,hasOlder:N,hasNewer:_.current.hasNewer});Et.current={messages:W,agentName:Q,agentSlug:De,agentAvailable:X,replyPending:ee,hasOlder:N,hasNewer:_.current.hasNewer},n.useEffect(()=>{const e=B(),i=Mt();return()=>{const l=Et.current;l.agentAvailable!==void 0&&B()===e&&i===Mt()&&Bn(h,{...l,agentAvailable:l.agentAvailable,scrollTop:je.current,nearBottom:V.current,rowHeights:[...wt],visibleMessageIds:[...qe]})}},[h]);const ke=async(e,i)=>{if(et.current||O.busy||!H.current.active||!H.current.canWrite||X!==!0)return!1;const l=e||{content:i??qt(ct($,L,A),te),requestId:crypto.randomUUID(),createdAt:Date.now()};if(!l.content||new TextEncoder().encode(l.content).byteLength>32e3)return!1;et.current=!0,bt(!0),Z(""),me(void 0),Ie(l),V.current=!0,!e&&i===void 0&&(q(""),$e(null),w(fe("")),se(null));const g=ve.current;try{const b=await fetch(hn,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({content:l.content,requestId:l.requestId}),signal:AbortSignal.timeout(2e4)}),C=await b.json();if(!b.ok)throw new Error("发送失败,请重试。");if(g!==ve.current)return!1;Ie(null),gt(z=>z.some(j=>j.id===C.id)?z:[...z,{...l,id:C.id,role:"user",status:C.status}]);try{await He()}catch{ce(!0)}return!0}catch(b){return g===ve.current&&Z(b instanceof Error&&b.name==="TimeoutError"?"发送状态待确认,请重试。":"发送失败,请重试。"),!1}finally{et.current=!1,g===ve.current&&bt(!1)}};n.useEffect(()=>{const e=i=>{const l=i.detail;s&&c&&l.sessionId===r&&G(l.text)};return window.addEventListener("termdock:chat-insert",e),()=>window.removeEventListener("termdock:chat-insert",e)},[r,s,c,G]),n.useEffect(()=>{if(!s)return;const e=i=>{const l=i.detail;if(!l?.text||l.sessionId!==r)return;i.stopImmediatePropagation();const g=c&&(!l.ownedPaste||!!Pn(l,r));g&&G(l.text,l.focus!==!1),l.nonce&&window.dispatchEvent(new CustomEvent("termdock-insert-reference-ack",{detail:{nonce:l.nonce,ok:g}}))};return window.addEventListener("termdock-insert-reference",e,!0),()=>window.removeEventListener("termdock-insert-reference",e,!0)},[r,s,c,G]);const kt=n.useRef(ke);kt.current=ke;const pn=n.useCallback(e=>kt.current(void 0,e),[]),gn=n.useCallback((e,i)=>{Kn(e,()=>Pe.current?.isConnected===!0).then(l=>{l?dn(i):Z("复制失败,请选择正文复制")})},[]),xn=async()=>{if(_.current.hasNewer){V.current=!0;try{await He(void 0,!0)}catch{ce(!0)}}Ee()},bn=X===!0&&!I&&(ee??sr(W)),St=new TextEncoder().encode(qt(ct($,L,A),te)).byteLength>32e3;return t.jsxs("section",{ref:Pe,style:v.rootStyle,"data-session-chat":!0,onDragEnter:e=>{e.dataTransfer.types.includes("Files")&&(e.preventDefault(),ye.current++,c&&Ye(!0))},onDragOver:e=>{e.dataTransfer.types.includes("Files")&&(e.preventDefault(),e.dataTransfer.dropEffect=c?"copy":"none")},onDragLeave:e=>{e.dataTransfer.types.includes("Files")&&(ye.current=Math.max(0,ye.current-1),ye.current||Ye(!1))},onDrop:e=>{let i;try{i=Mn(e.dataTransfer)}catch(g){e.preventDefault(),Z(g instanceof Error?g.message:"文件引用无效");return}if(i&&c){e.preventDefault(),e.stopPropagation(),G(i);return}const l=Array.from(e.dataTransfer.files);if(l.length)e.preventDefault(),e.stopPropagation(),Ye(!1),ye.current=0,O.addFiles(l);else if(c&&e.target.closest("[data-chat-composer]")){const g=e.dataTransfer.getData("text/plain");g&&(e.preventDefault(),G(g))}},onKeyDown:e=>e.stopPropagation(),className:"session-chat relative flex h-full min-h-0 flex-col overflow-hidden bg-[var(--chrome-bg)] text-foreground","aria-label":`${a}对话`,children:[t.jsx("div",{ref:K,style:v.contentStyle,className:"session-chat-scroll min-h-0 flex-1 overflow-y-auto overscroll-contain px-4 [overflow-anchor:none] sm:px-8",onScroll:()=>{const e=K.current;!s||!e.clientHeight||(je.current=e.scrollTop,V.current=e.scrollHeight-e.scrollTop-e.clientHeight<96,V.current&&!_.current.hasNewer&&Ze(!1),e.scrollTop<e.clientHeight&&Be())},children:t.jsxs("div",{ref:nt,className:"mx-auto flex min-h-full w-full max-w-screen-2xl flex-col py-5 sm:py-8",children:[N&&t.jsx("div",{ref:yt,"data-chat-older-edge":!0,"aria-hidden":"true",className:"h-12 shrink-0",children:k&&t.jsxs("div",{className:"space-y-2 py-2",children:[t.jsx("div",{className:"chat-loading-skeleton h-3 w-3/4 rounded bg-surface-2"}),t.jsx("div",{className:"chat-loading-skeleton h-3 w-1/2 rounded bg-surface-2"})]})}),(sn||!cn)&&!W.length&&!I?t.jsx(Vn,{}):!W.length&&!I?t.jsxs("div",{className:"session-chat-welcome shrink-0 py-6",children:[t.jsx(In,{size:27,strokeWidth:1.5,className:"mb-4 text-primary"}),t.jsx("h2",{className:"text-xl font-semibold tracking-tight sm:text-2xl",children:"想一起完成什么?"}),t.jsx("p",{className:"mt-2 max-w-md text-[15px] leading-7 text-muted-foreground",children:"直接描述你的目标,或从一个问题开始。"}),t.jsx("div",{className:"mt-5 flex flex-wrap gap-2",children:["帮我梳理一下当前工作","请解释一下刚才的结果","我们继续下一步"].map(e=>t.jsx("button",{type:"button",className:`${Ce} border border-border/60 text-left text-xs text-muted-foreground`,disabled:!c,onClick:()=>{q(e),ue(M.current)},children:e},e))})]}):t.jsx(mr,{pendingMessage:I&&t.jsx(Xt,{content:I.content,createdAt:I.createdAt,status:Oe?"发送中…":"待重试",children:!Oe&&t.jsxs(t.Fragment,{children:[t.jsx("button",{type:"button",className:"min-h-9 rounded-lg px-2 hover:bg-surface-2",onClick:()=>{const e=ut(I.content),i=fe(e.text);q(i.text),w(i),$e(e.reference),Ie(null),Z(""),ue(M.current)},children:"修改草稿"}),t.jsxs("button",{type:"button",className:"inline-flex min-h-9 items-center gap-1 rounded-lg px-2 text-primary hover:bg-surface-2",disabled:!c||X!==!0,onClick:()=>{ke(I)},children:[t.jsx(On,{size:12}),"重试发送"]})]})}),sessionId:r,uiWritable:s&&c&&!I&&!Oe&&X===!0,onAction:pn,messages:W,scrollRoot:K,rowHeights:wt,nearbyIds:qe,initialVisibleIds:f?.visibleMessageIds,agentName:Q,agentSlug:De,canWrite:c,copied:un,onReference:Nt,onCopy:gn}),bn&&!Xe&&t.jsxs("div",{"data-chat-reply-status":!0,role:"status","aria-label":`${Q}工作中`,"aria-live":"polite",className:"mt-6 inline-flex w-fit max-w-full items-center gap-3 self-start rounded-lg border border-border/50 bg-[color-mix(in_srgb,var(--surface)_35%,var(--chrome-bg))] px-3 py-2 text-xs text-muted-foreground",children:[t.jsx(Yt,{name:Q,slug:De}),t.jsxs("span",{className:"inline-flex shrink-0 items-center gap-1.5",children:[t.jsx(Dt,{size:14,className:"animate-spin text-primary motion-reduce:animate-none"}),t.jsx("span",{children:"工作中…"})]})]})]})}),rn&&t.jsxs("div",{className:"pointer-events-none absolute inset-3 z-20 flex items-center justify-center rounded-2xl border-2 border-dashed border-primary bg-surface/95 text-sm text-primary",children:[t.jsx(zt,{size:18,className:"mr-2"}),"松开以添加文件"]}),t.jsxs("div",{ref:fn,className:"session-chat-composer relative z-20 shrink-0 px-3 pb-3 pt-1 sm:px-8 sm:pb-4",children:[ln&&t.jsx("div",{className:"flex justify-center pb-2",children:t.jsxs("button",{type:"button",className:`${Ce} rounded-full border border-border bg-surface text-xs shadow-lg`,onClick:()=>{xn()},children:[t.jsx(Yn,{size:14}),"查看新消息"]})}),t.jsxs("div",{className:"relative mx-auto max-w-screen-2xl",children:[X===!1&&t.jsxs("div",{role:"status",className:"mb-2 flex flex-wrap items-center gap-2 text-xs text-muted-foreground",children:[t.jsx("span",{children:"当前对话暂不可用。"}),t.jsxs("button",{type:"button",className:Ce,onClick:d,children:[t.jsx(It,{size:14}),"打开终端"]})]}),Ae&&t.jsx("div",{className:"pointer-events-none absolute inset-x-0 bottom-full z-20 mb-2 flex justify-center",children:t.jsxs("div",{className:"pointer-events-auto flex max-w-full items-center overflow-hidden rounded-xl border border-border bg-surface-2 shadow-lg transition-colors hover:bg-surface-elevated focus-within:bg-surface-elevated",children:[t.jsxs("button",{type:"button","aria-label":"引用选中内容",className:"inline-flex min-h-11 min-w-0 flex-1 items-center gap-2 rounded-l-xl px-3 py-1 text-left text-xs focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring",onPointerDown:e=>e.preventDefault(),onClick:()=>{const e=W.find(i=>i.id===Ae.id);e&&Nt(e,Ae.text)},children:[t.jsx(ft,{size:13,className:"shrink-0 text-primary"}),t.jsx("span",{className:"shrink-0 text-primary",children:"引用选中内容"}),t.jsx("span",{className:"hidden min-w-0 max-w-sm truncate text-muted-foreground sm:block",children:Ae.text})]}),t.jsx("button",{type:"button","aria-label":"取消选中引用",className:"inline-flex h-11 w-11 shrink-0 items-center justify-center rounded-r-xl text-muted-foreground transition-colors hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring",onClick:()=>{be(null),window.getSelection()?.removeAllRanges()},children:t.jsx(de,{size:13})})]})}),O.transfer&&t.jsxs("div",{role:"status",className:"mb-2 flex min-h-9 items-center gap-2 px-1 text-xs text-muted-foreground",children:[O.busy&&t.jsx(Dt,{size:13,className:"animate-spin text-primary"}),t.jsx("span",{className:"min-w-0 flex-1",children:O.transfer.stage==="reading"?"正在读取剪贴板…":O.transfer.stage==="uploading"?`正在上传文件${O.transfer.percent===void 0?"…":` · ${O.transfer.percent}%`}`:O.transfer.stage==="cancelled"?"已取消上传":"上传未完成,文件尚未添加"}),O.busy?t.jsx("button",{type:"button",className:"min-h-9 px-2",onClick:O.cancel,children:"取消"}):t.jsxs(t.Fragment,{children:[t.jsx("button",{type:"button",className:"min-h-9 px-2 text-primary",onClick:O.retry,children:"重试上传"}),t.jsx("button",{type:"button","aria-label":"关闭上传提示",className:"min-h-9 px-2",onClick:O.dismiss,children:t.jsx(de,{size:13})})]})]}),oe&&t.jsxs("div",{id:Re,role:"listbox","aria-label":"选择协作成员","data-chat-no-swipe":!0,className:"absolute inset-x-0 bottom-full z-30 mb-2 flex max-h-[min(20rem,calc(var(--app-visible-vh,100dvh)*0.45))] flex-col overflow-hidden rounded-2xl border border-border bg-surface shadow-xl",children:[t.jsxs("div",{className:"flex items-center justify-between gap-2 shrink-0 border-b border-border/50 px-3 py-2 text-xs text-muted-foreground",children:[t.jsx("span",{children:"@ 协作成员"}),t.jsx("button",{type:"button","aria-label":"关闭成员选择",className:"inline-flex h-9 w-9 items-center justify-center rounded-lg hover:bg-surface-2",onPointerDown:e=>e.preventDefault(),onClick:()=>se(ge),children:t.jsx(de,{size:14})})]}),t.jsx("div",{className:"min-h-0 flex-1 overflow-y-auto p-1.5",children:ie.status==="loading"?t.jsx("p",{role:"status",className:"px-3 py-4 text-sm text-muted-foreground",children:"正在加载成员…"}):ie.status==="error"?t.jsxs("div",{className:"flex items-center justify-between px-3 py-2 text-sm text-muted-foreground",children:["暂时无法读取成员",t.jsx("button",{type:"button",className:Ce,onClick:ie.retry,children:"重试"})]}):U.length?U.map((e,i)=>t.jsxs("button",{id:`${Re}-${i}`,role:"option","aria-selected":i===xe,type:"button",className:`flex min-h-11 w-full items-center gap-3 rounded-lg px-3 py-2 text-left text-sm hover:bg-surface-2 ${i===xe?"bg-surface-2":""}`,onPointerDown:l=>l.preventDefault(),onClick:()=>jt(e),children:[t.jsx(Pt,{size:15,className:"shrink-0 text-primary"}),t.jsxs("span",{className:"min-w-0 flex-1",children:[t.jsx("span",{className:"block truncate",children:e.name}),e.subtitle&&t.jsx("span",{className:"block truncate text-xs text-muted-foreground",children:e.subtitle})]}),t.jsx("span",{className:"max-w-[40%] truncate text-xs text-muted-foreground",children:e.groupName})]},`${e.groupId}:${e.sessionId}`)):t.jsx("p",{className:"px-3 py-4 text-sm text-muted-foreground",children:ie.members.length?"没有匹配的成员":"当前协作组暂无其他 Agent 成员"})}),t.jsx("p",{className:"shrink-0 border-t border-border/50 px-3 py-2 text-[11px] text-muted-foreground",children:"让当前 Agent 按你的要求联系该成员"})]}),t.jsxs("form",{"data-chat-composer":!0,className:"rounded-2xl border border-border bg-surface p-2.5 transition-colors focus-within:border-primary/60",onSubmit:e=>{e.preventDefault(),I||ke()},children:[te&&t.jsx(Qt,{reference:te,onRemove:()=>$e(null)}),t.jsx(Gt,{files:L,onReference:c?e=>G(Ge(e)+" "):void 0,onRemove:c?e=>{const i=Ge(L[e]);i&&q(l=>l.split(i).join("")),w(l=>({...l,attachments:l.attachments.filter((g,b)=>b!==e)}))}:void 0}),A.length>0&&t.jsx("ul",{"aria-label":"已提及的成员",className:"mb-2 flex max-h-24 flex-wrap gap-1.5 overflow-y-auto",children:A.map(e=>t.jsxs("li",{className:"inline-flex min-w-0 max-w-full items-center gap-1 rounded-lg bg-primary/10 pl-2 text-xs text-primary",children:[t.jsxs("span",{className:"truncate",children:["@",e.name," · ",e.groupName]}),t.jsx("button",{type:"button","aria-label":`移除提及 ${e.name}`,disabled:!c,className:"inline-flex h-9 w-9 shrink-0 items-center justify-center rounded-lg hover:bg-primary/10",onPointerDown:i=>i.preventDefault(),onClick:()=>{q(i=>i.split(Te(e)).join("")),w(i=>({...i,mentions:i.mentions.filter(l=>l!==e)}))},children:t.jsx(de,{size:12})})]},`${e.groupId}:${e.sessionId}`))}),t.jsx("input",{ref:vt,type:"file",multiple:!0,tabIndex:-1,className:"hidden","aria-label":"选择附件",onChange:e=>{O.addFiles(Array.from(e.currentTarget.files||[])),e.currentTarget.value=""}}),t.jsxs("div",{className:"relative min-w-0 w-full",children:[t.jsx("div",{"aria-hidden":"true",className:`session-chat-input-sizer pointer-events-none col-start-1 row-start-1 overflow-hidden whitespace-pre-wrap break-words px-1 py-2 text-base leading-7 ${ze?"":"invisible"} ${$?"":"text-muted-foreground/60"}`,children:($||(ze?c?"输入消息…":"此会话仅允许查看":""))+" "}),S&&!ze&&t.jsx("div",{ref:Me,"aria-hidden":"true",className:"pointer-events-none absolute inset-0 overflow-hidden whitespace-pre-wrap break-words px-1 py-2 text-base leading-7",children:t.jsx(Jt,{text:$+($.endsWith(`
|
|
20
|
-
`)?"":""),files:L,mentions:A})}),t.jsx("textarea",{ref:M,"data-rich-draft":S||void 0,style:S?{color:"transparent",caretColor:"var(--foreground)"}:void 0,onScroll:e=>{Me.current&&(Me.current.scrollTop=e.currentTarget.scrollTop)},onCompositionStart:()=>he(!0),onCompositionEnd:()=>he(!1),onFocus:()=>be(null),onPaste:e=>{const{files:i,text:l}=Un(e.clipboardData);(i.length||Ot()?.readClipboardFiles||!l&&(Ot()||typeof navigator.clipboard?.read=="function"))&&(e.preventDefault(),O.paste({files:i,text:l}))},rows:1,autoComplete:"off",className:"session-chat-input col-start-1 row-start-1 block w-full min-w-0 self-stretch resize-none overflow-y-auto break-words bg-transparent px-1 py-2 text-base leading-7 outline-none placeholder:text-muted-foreground/60","aria-label":`给${Q}的消息`,placeholder:c?"输入消息…":"此会话仅允许查看",value:$,disabled:!c,"aria-controls":oe?Re:void 0,"aria-expanded":oe,"aria-autocomplete":pe?"list":void 0,"aria-activedescendant":oe&&U.length?`${Re}-${xe}`:void 0,onSelect:e=>Le(e.currentTarget.selectionStart),onChange:e=>{q(e.target.value),Le(e.target.selectionStart),se(null)},onKeyDown:e=>{if(e.stopPropagation(),oe&&!e.nativeEvent.isComposing&&e.nativeEvent.keyCode!==229){if(e.key==="Escape"){e.preventDefault(),se(ge);return}if(["ArrowDown","ArrowUp"].includes(e.key)&&U.length){e.preventDefault(),pt((xe+(e.key==="ArrowDown"?1:-1)+U.length)%U.length);return}if((e.key==="Enter"&&!e.shiftKey||e.key==="Tab")&&U.length&&ie.status==="ready"){e.preventDefault(),jt(U[xe]);return}if(e.key==="Enter"&&!e.shiftKey){e.preventDefault();return}}e.key==="Enter"&&!y&&!e.shiftKey&&!e.altKey&&!e.nativeEvent.isComposing&&e.nativeEvent.keyCode!==229&&(e.preventDefault(),I||ke())}})]}),t.jsxs("div",{"data-chat-composer-toolbar":!0,className:"mt-1 flex items-center gap-1",children:[t.jsx("button",{type:"button","aria-label":"添加文件",title:"添加文件,也可拖入或粘贴",className:"inline-flex h-11 w-11 shrink-0 items-center justify-center rounded-lg text-muted-foreground transition hover:bg-surface-2 disabled:opacity-30",disabled:!c||O.busy,onPointerDown:e=>e.preventDefault(),onClick:()=>vt.current?.click(),children:t.jsx(zt,{size:18})}),pe&&t.jsx("button",{type:"button","aria-label":"提及协作成员",title:"提及协作成员",className:"inline-flex h-11 w-11 shrink-0 items-center justify-center rounded-lg text-muted-foreground hover:bg-surface-2",onPointerDown:e=>e.preventDefault(),onClick:()=>{const e=M.current,i=e?.selectionStart??$.length,l=e?.selectionEnd??i,g=i&&!/\s$/.test($.slice(0,i))?" @":"@";q($.slice(0,i)+g+$.slice(l)),Le(i+g.length),se(null),ue(M.current),requestAnimationFrame(()=>M.current?.setSelectionRange(i+g.length,i+g.length))},children:t.jsx(Pt,{size:18})}),t.jsx("span",{className:"session-chat-keyboard-hint hidden min-w-0 flex-1 px-2 text-[11px] text-muted-foreground/60 sm:block",children:"Enter 发送 · Shift + Enter 换行"}),t.jsx("span",{className:"flex-1 sm:hidden","aria-hidden":"true"}),t.jsx("button",{type:"submit","aria-label":"发送消息",onPointerDown:e=>{document.activeElement===M.current&&e.preventDefault()},className:"inline-flex h-11 w-11 shrink-0 items-center justify-center rounded-xl bg-primary text-primary-foreground transition hover:opacity-90 disabled:opacity-30",disabled:Oe||O.busy||!!I||!$.trim()&&!L.length||St||!c||X!==!0,children:t.jsx(Qn,{size:19})})]})]}),St?t.jsx("p",{className:"mt-2 px-1 text-xs text-destructive",children:"消息过长,请缩短后发送。"}):c?null:t.jsx("p",{className:"mt-2 px-1 text-[11px] text-muted-foreground",children:"仅查看"}),u&&t.jsx("div",{className:"mt-1 flex justify-end",children:t.jsxs("button",{type:"button",className:`${Ce} min-h-9 px-2 text-xs text-muted-foreground`,onClick:d,children:[t.jsx(It,{size:13}),"查看终端"]})})]})]})]})}function xr(r){return t.jsx(gr,{...r},`${Kt()?.targetPeerId||location.origin}:${r.sessionId}`)}const kr=Object.freeze(Object.defineProperty({__proto__:null,SessionChatView:xr},Symbol.toStringTag,{value:"Module"}));export{lr as C,kr as S};
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{c as a,C as n}from"./mermaid.core-BX4Yidib.js";const t=(r,o)=>a.lang.round(n.parse(r)[o]);export{t as c};
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{s as a,a as s,c as t,C as e}from"./chunk-TICWLB2K-DOcrTdPc.js";import{d as i}from"./mermaid.core-BX4Yidib.js";import"./chunk-5VM5RSS4-DwFHSPNj.js";import"./chunk-XXDRQBXY-DR-p5Zy1.js";import"./chunk-POPQ4Y6H-BnV4j8Y0.js";import"./chunk-F27PBJKO-DURRKDWg.js";import"./purify.es-4eNOHKSq.js";import"./app-CjIJnhRC.js";import"./react-XDCjal2T.js";import"./dnd-BCFAPC0L.js";import"./terminal-DaiFCKy_.js";var g={parser:t,get db(){return new e},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{g as diagram};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{s as a,a as s,c as t,C as e}from"./chunk-TICWLB2K-DOcrTdPc.js";import{d as i}from"./mermaid.core-BX4Yidib.js";import"./chunk-5VM5RSS4-DwFHSPNj.js";import"./chunk-XXDRQBXY-DR-p5Zy1.js";import"./chunk-POPQ4Y6H-BnV4j8Y0.js";import"./chunk-F27PBJKO-DURRKDWg.js";import"./purify.es-4eNOHKSq.js";import"./app-CjIJnhRC.js";import"./react-XDCjal2T.js";import"./dnd-BCFAPC0L.js";import"./terminal-DaiFCKy_.js";var g={parser:t,get db(){return new e},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{g as diagram};
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{b as r,a as e,s as a,S as i}from"./chunk-IMKFNOWR-DiI7TuKc.js";import{d as s}from"./mermaid.core-BX4Yidib.js";import"./chunk-XXDRQBXY-DR-p5Zy1.js";import"./chunk-POPQ4Y6H-BnV4j8Y0.js";import"./chunk-F27PBJKO-DURRKDWg.js";import"./purify.es-4eNOHKSq.js";import"./app-CjIJnhRC.js";import"./react-XDCjal2T.js";import"./dnd-BCFAPC0L.js";import"./terminal-DaiFCKy_.js";var g={parser:a,get db(){return new i(2)},renderer:e,styles:r,init:s(t=>{t.state||(t.state={}),t.state.arrowMarkerAbsolute=t.arrowMarkerAbsolute},"init")};export{g as diagram};
|
|
Binary file
|
|
Binary file
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import{c as r,s as e}from"./flowDiagram-HODETNUW-Cntq-S4F.js";import{d as o}from"./mermaid.core-BX4Yidib.js";import"./chunk-5VM5RSS4-DwFHSPNj.js";import"./chunk-XXDRQBXY-DR-p5Zy1.js";import"./chunk-POPQ4Y6H-BnV4j8Y0.js";import"./chunk-F27PBJKO-DURRKDWg.js";import"./purify.es-4eNOHKSq.js";import"./channel-DCcxp7JL.js";import"./app-CjIJnhRC.js";import"./react-XDCjal2T.js";import"./dnd-BCFAPC0L.js";import"./terminal-DaiFCKy_.js";var a=o(t=>`${e(t)}
|
|
2
|
-
.swimlane.cluster rect {
|
|
3
|
-
stroke: ${t.clusterBorder} !important;
|
|
4
|
-
}
|
|
5
|
-
[data-look="neo"].cluster rect {
|
|
6
|
-
filter: none;
|
|
7
|
-
}
|
|
8
|
-
`,"getStyles"),m=a,v=r({defaultLayout:"swimlane",styles:m});export{v as diagram};
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|