termdock 1.4.285 → 1.4.286
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/.desktop-dist/main.js +10 -553
- package/README.md +2 -4
- package/dist/client/assets/{App--hZmWk-u.js → App-qs0jye8B.js} +29 -28
- package/dist/client/assets/App-qs0jye8B.js.br +0 -0
- package/dist/client/assets/App-qs0jye8B.js.gz +0 -0
- package/dist/client/assets/{ChangeWalkthroughPanel-BQ1hdwzt.js → ChangeWalkthroughPanel-X-M6nxKJ.js} +1 -1
- package/dist/client/assets/ChangeWalkthroughPanel-X-M6nxKJ.js.br +0 -0
- package/dist/client/assets/ChangeWalkthroughPanel-X-M6nxKJ.js.gz +0 -0
- package/dist/client/assets/{DagPlayground-BERXHwib.js → DagPlayground-DgiUaUkH.js} +1 -1
- package/dist/client/assets/DagPlayground-DgiUaUkH.js.br +0 -0
- package/dist/client/assets/DagPlayground-DgiUaUkH.js.gz +0 -0
- package/dist/client/assets/{DiffLab-DF14_TAz.js → DiffLab-u8njwj0d.js} +1 -1
- package/dist/client/assets/DiffLab-u8njwj0d.js.br +0 -0
- package/dist/client/assets/DiffLab-u8njwj0d.js.gz +0 -0
- package/dist/client/assets/{DiffReview-BQcIn0zl.js → DiffReview-DoQY-klj.js} +1 -1
- package/dist/client/assets/DiffReview-DoQY-klj.js.br +0 -0
- package/dist/client/assets/DiffReview-DoQY-klj.js.gz +0 -0
- package/dist/client/assets/{DiffReviewLab-CgChwzQr.js → DiffReviewLab-DlKbMbfq.js} +1 -1
- package/dist/client/assets/DiffReviewLab-DlKbMbfq.js.br +0 -0
- package/dist/client/assets/DiffReviewLab-DlKbMbfq.js.gz +0 -0
- package/dist/client/assets/{DiffViewer-hDpe-wvG.js → DiffViewer-nlvDqGPJ.js} +1 -1
- package/dist/client/assets/DiffViewer-nlvDqGPJ.js.br +0 -0
- package/dist/client/assets/DiffViewer-nlvDqGPJ.js.gz +0 -0
- package/dist/client/assets/{ModelPreview-vg3vRIhx.js → ModelPreview-C3beTH3N.js} +1 -1
- package/dist/client/assets/ModelPreview-C3beTH3N.js.br +0 -0
- package/dist/client/assets/ModelPreview-C3beTH3N.js.gz +0 -0
- package/dist/client/assets/{RightSidebar-5H4vhn3k.js → RightSidebar-BtktcUdh.js} +5 -5
- package/dist/client/assets/RightSidebar-BtktcUdh.js.br +0 -0
- package/dist/client/assets/RightSidebar-BtktcUdh.js.gz +0 -0
- package/dist/client/assets/{abnfDiagram-VCTEODGH-DI7938HB.js → abnfDiagram-VCTEODGH-7J_hDjG2.js} +1 -1
- package/dist/client/assets/abnfDiagram-VCTEODGH-7J_hDjG2.js.br +0 -0
- package/dist/client/assets/abnfDiagram-VCTEODGH-7J_hDjG2.js.gz +0 -0
- package/dist/client/assets/{app-BeVXUQb-.js → app-CHKqaWIE.js} +7 -7
- package/dist/client/assets/app-CHKqaWIE.js.br +0 -0
- package/dist/client/assets/app-CHKqaWIE.js.gz +0 -0
- package/dist/client/assets/{arc-D4qDm5Yn.js → arc-Bg_CuCZm.js} +1 -1
- package/dist/client/assets/arc-Bg_CuCZm.js.br +0 -0
- package/dist/client/assets/arc-Bg_CuCZm.js.gz +0 -0
- package/dist/client/assets/{architectureDiagram-5GKGNRK7-C4IZCNC9.js → architectureDiagram-5GKGNRK7-CsSHwySz.js} +1 -1
- package/dist/client/assets/architectureDiagram-5GKGNRK7-CsSHwySz.js.br +0 -0
- package/dist/client/assets/architectureDiagram-5GKGNRK7-CsSHwySz.js.gz +0 -0
- package/dist/client/assets/{blockDiagram-I7D4REHJ-DHVOr_jQ.js → blockDiagram-I7D4REHJ-DePM_hkV.js} +1 -1
- package/dist/client/assets/blockDiagram-I7D4REHJ-DePM_hkV.js.br +0 -0
- package/dist/client/assets/blockDiagram-I7D4REHJ-DePM_hkV.js.gz +0 -0
- package/dist/client/assets/{c4Diagram-7LVT6UL2-kQqkOkIe.js → c4Diagram-7LVT6UL2-BQ8B9h53.js} +1 -1
- package/dist/client/assets/c4Diagram-7LVT6UL2-BQ8B9h53.js.br +0 -0
- package/dist/client/assets/c4Diagram-7LVT6UL2-BQ8B9h53.js.gz +0 -0
- package/dist/client/assets/channel-8p7Zocq1.js +1 -0
- package/dist/client/assets/{chunk-2Q5K7J3B-D2kOR60I.js → chunk-2Q5K7J3B-Bo9Nc-d4.js} +1 -1
- package/dist/client/assets/{chunk-5VM5RSS4-CxaDg0nL.js → chunk-5VM5RSS4-D_qQp7an.js} +1 -1
- package/dist/client/assets/{chunk-F27PBJKO-Bxf7XPNj.js → chunk-F27PBJKO-CJvGLWuF.js} +1 -1
- package/dist/client/assets/chunk-F27PBJKO-CJvGLWuF.js.br +0 -0
- package/dist/client/assets/chunk-F27PBJKO-CJvGLWuF.js.gz +0 -0
- package/dist/client/assets/{chunk-IMKFNOWR-BTifpaB5.js → chunk-IMKFNOWR-e4fa23mF.js} +1 -1
- package/dist/client/assets/chunk-IMKFNOWR-e4fa23mF.js.br +0 -0
- package/dist/client/assets/chunk-IMKFNOWR-e4fa23mF.js.gz +0 -0
- package/dist/client/assets/{chunk-JWPE2WC7-Deieql_u.js → chunk-JWPE2WC7-D9qVRvQs.js} +1 -1
- package/dist/client/assets/{chunk-POPQ4Y6H-CqZwUpjK.js → chunk-POPQ4Y6H-7eOizLll.js} +1 -1
- package/dist/client/assets/{chunk-SVP7TREG-Bm1spPMb.js → chunk-SVP7TREG-Co1wDBYI.js} +1 -1
- package/dist/client/assets/chunk-SVP7TREG-Co1wDBYI.js.br +0 -0
- package/dist/client/assets/chunk-SVP7TREG-Co1wDBYI.js.gz +0 -0
- package/dist/client/assets/{chunk-TICWLB2K-BGLj-zGP.js → chunk-TICWLB2K-yKjTtLNf.js} +1 -1
- package/dist/client/assets/chunk-TICWLB2K-yKjTtLNf.js.br +0 -0
- package/dist/client/assets/chunk-TICWLB2K-yKjTtLNf.js.gz +0 -0
- package/dist/client/assets/{chunk-XXDRQBXY-CR77bUfc.js → chunk-XXDRQBXY-DDFq5Eoi.js} +1 -1
- package/dist/client/assets/classDiagram-ZZMXUADV-DM8VyUpP.js +1 -0
- package/dist/client/assets/classDiagram-v2-VYDZK3BY-DM8VyUpP.js +1 -0
- package/dist/client/assets/{cose-bilkent-JH36ORCC-GTawhnoV.js → cose-bilkent-JH36ORCC-Ng2b-szu.js} +1 -1
- package/dist/client/assets/cose-bilkent-JH36ORCC-Ng2b-szu.js.br +0 -0
- package/dist/client/assets/cose-bilkent-JH36ORCC-Ng2b-szu.js.gz +0 -0
- package/dist/client/assets/{cynefin-OW5HDTMX-DHdRkQdW.js → cynefin-OW5HDTMX-BUzoxsoE.js} +1 -1
- package/dist/client/assets/cynefin-OW5HDTMX-BUzoxsoE.js.br +0 -0
- package/dist/client/assets/cynefin-OW5HDTMX-BUzoxsoE.js.gz +0 -0
- package/dist/client/assets/{cynefinDiagram-5FMLGOSQ-Cj2ytLun.js → cynefinDiagram-5FMLGOSQ-9sKimYPk.js} +1 -1
- package/dist/client/assets/cynefinDiagram-5FMLGOSQ-9sKimYPk.js.br +0 -0
- package/dist/client/assets/cynefinDiagram-5FMLGOSQ-9sKimYPk.js.gz +0 -0
- package/dist/client/assets/{dagre-GXQ25YYZ-BdFZmtIj.js → dagre-GXQ25YYZ-C6GZ4pYU.js} +1 -1
- package/dist/client/assets/dagre-GXQ25YYZ-C6GZ4pYU.js.br +0 -0
- package/dist/client/assets/dagre-GXQ25YYZ-C6GZ4pYU.js.gz +0 -0
- package/dist/client/assets/{diagram-S7CK7UJ4-D5WQNuKI.js → diagram-S7CK7UJ4-DHewWm_2.js} +1 -1
- package/dist/client/assets/diagram-S7CK7UJ4-DHewWm_2.js.br +0 -0
- package/dist/client/assets/diagram-S7CK7UJ4-DHewWm_2.js.gz +0 -0
- package/dist/client/assets/{diagram-UQ7AKVKN-ChwjfMce.js → diagram-UQ7AKVKN-BU-Qm_iS.js} +1 -1
- package/dist/client/assets/diagram-UQ7AKVKN-BU-Qm_iS.js.br +0 -0
- package/dist/client/assets/diagram-UQ7AKVKN-BU-Qm_iS.js.gz +0 -0
- package/dist/client/assets/{diagram-VSXAHHWV-DT4FET5f.js → diagram-VSXAHHWV-DEvxj92u.js} +1 -1
- package/dist/client/assets/diagram-VSXAHHWV-DEvxj92u.js.br +0 -0
- package/dist/client/assets/diagram-VSXAHHWV-DEvxj92u.js.gz +0 -0
- package/dist/client/assets/{diagram-VX7I27RA-BLJsAGx6.js → diagram-VX7I27RA-DwwnVInb.js} +1 -1
- package/dist/client/assets/diagram-VX7I27RA-DwwnVInb.js.br +0 -0
- package/dist/client/assets/diagram-VX7I27RA-DwwnVInb.js.gz +0 -0
- package/dist/client/assets/{diagram-Z3DM3KII-C1ofLllK.js → diagram-Z3DM3KII-DDhqqeca.js} +1 -1
- package/dist/client/assets/diagram-Z3DM3KII-DDhqqeca.js.br +0 -0
- package/dist/client/assets/diagram-Z3DM3KII-DDhqqeca.js.gz +0 -0
- package/dist/client/assets/{ebnfDiagram-PWID7BFC-apxDEeqe.js → ebnfDiagram-PWID7BFC-CQz2BRgT.js} +1 -1
- package/dist/client/assets/ebnfDiagram-PWID7BFC-CQz2BRgT.js.br +0 -0
- package/dist/client/assets/ebnfDiagram-PWID7BFC-CQz2BRgT.js.gz +0 -0
- package/dist/client/assets/{erDiagram-RLTQ6QDP-Dq9hBYpH.js → erDiagram-RLTQ6QDP-D2eLjKEA.js} +1 -1
- package/dist/client/assets/erDiagram-RLTQ6QDP-D2eLjKEA.js.br +0 -0
- package/dist/client/assets/erDiagram-RLTQ6QDP-D2eLjKEA.js.gz +0 -0
- package/dist/client/assets/{flowDiagram-HODETNUW-Juk-Qv9f.js → flowDiagram-HODETNUW-B7oJq5P3.js} +1 -1
- package/dist/client/assets/flowDiagram-HODETNUW-B7oJq5P3.js.br +0 -0
- package/dist/client/assets/flowDiagram-HODETNUW-B7oJq5P3.js.gz +0 -0
- package/dist/client/assets/{ganttDiagram-EL5Y4UJY-mmwd0mxs.js → ganttDiagram-EL5Y4UJY-BUA_LsMw.js} +1 -1
- package/dist/client/assets/ganttDiagram-EL5Y4UJY-BUA_LsMw.js.br +0 -0
- package/dist/client/assets/ganttDiagram-EL5Y4UJY-BUA_LsMw.js.gz +0 -0
- package/dist/client/assets/{gestureArbiter-CM_xJnCS.js → gestureArbiter-8VtxF9dg.js} +1 -1
- package/dist/client/assets/gestureArbiter-8VtxF9dg.js.br +0 -0
- package/dist/client/assets/gestureArbiter-8VtxF9dg.js.gz +0 -0
- package/dist/client/assets/{gitGraphDiagram-WWUBYQGX--UL7HV4P.js → gitGraphDiagram-WWUBYQGX-BlbsPdki.js} +1 -1
- package/dist/client/assets/gitGraphDiagram-WWUBYQGX-BlbsPdki.js.br +0 -0
- package/dist/client/assets/gitGraphDiagram-WWUBYQGX-BlbsPdki.js.gz +0 -0
- package/dist/client/assets/{index-pZsldTFS.css → index-DUCUcxTy.css} +1 -1
- package/dist/client/assets/index-DUCUcxTy.css.br +0 -0
- package/dist/client/assets/{index-pZsldTFS.css.gz → index-DUCUcxTy.css.gz} +0 -0
- package/dist/client/assets/{infoDiagram-27XIBGKW-CcsxyqYJ.js → infoDiagram-27XIBGKW-DdYvRIDS.js} +1 -1
- package/dist/client/assets/{ishikawaDiagram-5VMMS53U-CNVFPx1_.js → ishikawaDiagram-5VMMS53U-CZbBbDjz.js} +1 -1
- package/dist/client/assets/ishikawaDiagram-5VMMS53U-CZbBbDjz.js.br +0 -0
- package/dist/client/assets/ishikawaDiagram-5VMMS53U-CZbBbDjz.js.gz +0 -0
- package/dist/client/assets/{journeyDiagram-3NMN7TZE-BtIuJLUp.js → journeyDiagram-3NMN7TZE-DtxlqtaG.js} +1 -1
- package/dist/client/assets/journeyDiagram-3NMN7TZE-DtxlqtaG.js.br +0 -0
- package/dist/client/assets/journeyDiagram-3NMN7TZE-DtxlqtaG.js.gz +0 -0
- package/dist/client/assets/{kanban-definition-UXKFOSKX-gOFjuFZV.js → kanban-definition-UXKFOSKX-UMDV9UCG.js} +1 -1
- package/dist/client/assets/kanban-definition-UXKFOSKX-UMDV9UCG.js.br +0 -0
- package/dist/client/assets/kanban-definition-UXKFOSKX-UMDV9UCG.js.gz +0 -0
- package/dist/client/assets/{layout-KEP24zEE.js → layout-CAAXci79.js} +1 -1
- package/dist/client/assets/layout-CAAXci79.js.br +0 -0
- package/dist/client/assets/layout-CAAXci79.js.gz +0 -0
- package/dist/client/assets/{linear-BwUXWDLn.js → linear-BGBP_FE_.js} +1 -1
- package/dist/client/assets/linear-BGBP_FE_.js.br +0 -0
- package/dist/client/assets/linear-BGBP_FE_.js.gz +0 -0
- package/dist/client/assets/{mermaid.core-DkzJYwWa.js → mermaid.core-BH_WDKpZ.js} +5 -5
- package/dist/client/assets/mermaid.core-BH_WDKpZ.js.br +0 -0
- package/dist/client/assets/mermaid.core-BH_WDKpZ.js.gz +0 -0
- package/dist/client/assets/{mindmap-definition-YA3MSWOX-BE1H8WPd.js → mindmap-definition-YA3MSWOX-7yyx6kg5.js} +1 -1
- package/dist/client/assets/mindmap-definition-YA3MSWOX-7yyx6kg5.js.br +0 -0
- package/dist/client/assets/mindmap-definition-YA3MSWOX-7yyx6kg5.js.gz +0 -0
- package/dist/client/assets/{passwordBootstrap-Dhzj9-U2.js → passwordBootstrap-Dt3dN800.js} +1 -1
- package/dist/client/assets/passwordBootstrap-Dt3dN800.js.br +0 -0
- package/dist/client/assets/passwordBootstrap-Dt3dN800.js.gz +0 -0
- package/dist/client/assets/{pegDiagram-XKGWAZYB-CorBwvfP.js → pegDiagram-XKGWAZYB-D254I9Yl.js} +1 -1
- package/dist/client/assets/pegDiagram-XKGWAZYB-D254I9Yl.js.br +0 -0
- package/dist/client/assets/pegDiagram-XKGWAZYB-D254I9Yl.js.gz +0 -0
- package/dist/client/assets/{pieDiagram-E7YTZNPT-A017Uk-W.js → pieDiagram-E7YTZNPT-DTy-4KXi.js} +1 -1
- package/dist/client/assets/pieDiagram-E7YTZNPT-DTy-4KXi.js.br +0 -0
- package/dist/client/assets/pieDiagram-E7YTZNPT-DTy-4KXi.js.gz +0 -0
- package/dist/client/assets/{quadrantDiagram-AXDQQJYC-CNNywvhG.js → quadrantDiagram-AXDQQJYC-BMsaHxl0.js} +1 -1
- package/dist/client/assets/quadrantDiagram-AXDQQJYC-BMsaHxl0.js.br +0 -0
- package/dist/client/assets/quadrantDiagram-AXDQQJYC-BMsaHxl0.js.gz +0 -0
- package/dist/client/assets/{railroadDiagram-O6MQD6OU-DIxiWn5A.js → railroadDiagram-O6MQD6OU-D4c39AAQ.js} +1 -1
- package/dist/client/assets/railroadDiagram-O6MQD6OU-D4c39AAQ.js.br +0 -0
- package/dist/client/assets/railroadDiagram-O6MQD6OU-D4c39AAQ.js.gz +0 -0
- package/dist/client/assets/{referenceLongPress-Bp8q50sv.js → referenceLongPress-TTIbwCKV.js} +1 -1
- package/dist/client/assets/referenceLongPress-TTIbwCKV.js.br +0 -0
- package/dist/client/assets/referenceLongPress-TTIbwCKV.js.gz +0 -0
- package/dist/client/assets/{requirementDiagram-BXWQKSXE-Ob4lS23U.js → requirementDiagram-BXWQKSXE-CwJjBKnR.js} +1 -1
- package/dist/client/assets/requirementDiagram-BXWQKSXE-CwJjBKnR.js.br +0 -0
- package/dist/client/assets/requirementDiagram-BXWQKSXE-CwJjBKnR.js.gz +0 -0
- package/dist/client/assets/{sankeyDiagram-P5KCCOFB-Cc5e7umb.js → sankeyDiagram-P5KCCOFB-DVlRBDMK.js} +1 -1
- package/dist/client/assets/sankeyDiagram-P5KCCOFB-DVlRBDMK.js.br +0 -0
- package/dist/client/assets/sankeyDiagram-P5KCCOFB-DVlRBDMK.js.gz +0 -0
- package/dist/client/assets/{sequenceDiagram-WJ2MYXX4-CLTRKFht.js → sequenceDiagram-WJ2MYXX4-BsWqKeoD.js} +1 -1
- package/dist/client/assets/sequenceDiagram-WJ2MYXX4-BsWqKeoD.js.br +0 -0
- package/dist/client/assets/sequenceDiagram-WJ2MYXX4-BsWqKeoD.js.gz +0 -0
- package/dist/client/assets/{sizeCapture-INFHLROL-h6hFhQw6.js → sizeCapture-INFHLROL-1FEOsRFT.js} +1 -1
- package/dist/client/assets/sizeCapture-INFHLROL-1FEOsRFT.js.br +0 -0
- package/dist/client/assets/sizeCapture-INFHLROL-1FEOsRFT.js.gz +0 -0
- package/dist/client/assets/{sparkles-9OJtJfyK.js → sparkles-hN4VSTDx.js} +1 -1
- package/dist/client/assets/{stateDiagram-D77RDMKH-DSaJxX_r.js → stateDiagram-D77RDMKH-DWNE48Sc.js} +1 -1
- package/dist/client/assets/stateDiagram-D77RDMKH-DWNE48Sc.js.br +0 -0
- package/dist/client/assets/stateDiagram-D77RDMKH-DWNE48Sc.js.gz +0 -0
- package/dist/client/assets/stateDiagram-v2-MP3YSRHH-BMprFuVB.js +1 -0
- package/dist/client/assets/{swimlanes-42K2YHIH-CP7ABWyE.js → swimlanes-42K2YHIH-ghhxa8QM.js} +1 -1
- package/dist/client/assets/swimlanes-42K2YHIH-ghhxa8QM.js.br +0 -0
- package/dist/client/assets/swimlanes-42K2YHIH-ghhxa8QM.js.gz +0 -0
- package/dist/client/assets/swimlanesDiagram-VR7AAH4N-Dg4tYXGL.js +8 -0
- package/dist/client/assets/{timeline-definition-24CTP7MA-CdwVIVF6.js → timeline-definition-24CTP7MA-B0eZfCze.js} +1 -1
- package/dist/client/assets/timeline-definition-24CTP7MA-B0eZfCze.js.br +0 -0
- package/dist/client/assets/timeline-definition-24CTP7MA-B0eZfCze.js.gz +0 -0
- package/dist/client/assets/{triangle-alert-BvT4KSYf.js → triangle-alert-zb36qQ-j.js} +1 -1
- package/dist/client/assets/{vennDiagram-4TSXK5OY-BXGgQFVY.js → vennDiagram-4TSXK5OY-DCdV0A4l.js} +1 -1
- package/dist/client/assets/vennDiagram-4TSXK5OY-DCdV0A4l.js.br +0 -0
- package/dist/client/assets/vennDiagram-4TSXK5OY-DCdV0A4l.js.gz +0 -0
- package/dist/client/assets/{videoCompression-BFXJyhpz.js → videoCompression-BzT-9eWg.js} +1 -1
- package/dist/client/assets/videoCompression-BzT-9eWg.js.br +0 -0
- package/dist/client/assets/videoCompression-BzT-9eWg.js.gz +0 -0
- package/dist/client/assets/{wardleyDiagram-VM6X3IG4-CtLophqU.js → wardleyDiagram-VM6X3IG4-BQvk-8b6.js} +1 -1
- package/dist/client/assets/wardleyDiagram-VM6X3IG4-BQvk-8b6.js.br +0 -0
- package/dist/client/assets/wardleyDiagram-VM6X3IG4-BQvk-8b6.js.gz +0 -0
- package/dist/client/assets/{xychartDiagram-S5SC5T6Z-YZ9bnI1e.js → xychartDiagram-S5SC5T6Z-D1VdK6g5.js} +1 -1
- package/dist/client/assets/xychartDiagram-S5SC5T6Z-D1VdK6g5.js.br +0 -0
- package/dist/client/assets/xychartDiagram-S5SC5T6Z-D1VdK6g5.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/dist/server/entry.js +2 -6
- package/dist/server/routes/terminal.js +4 -22
- package/dist/server/utils/enableSupervision.js +2 -3
- package/dist/server/utils/runtimeClient.js +0 -32
- package/package.json +3 -3
- package/runtime-manifest.json +3 -3
- package/scripts/classify-release.mjs +0 -1
- package/dist/client/assets/App--hZmWk-u.js.br +0 -0
- package/dist/client/assets/App--hZmWk-u.js.gz +0 -0
- package/dist/client/assets/ChangeWalkthroughPanel-BQ1hdwzt.js.br +0 -0
- package/dist/client/assets/ChangeWalkthroughPanel-BQ1hdwzt.js.gz +0 -0
- package/dist/client/assets/DagPlayground-BERXHwib.js.br +0 -0
- package/dist/client/assets/DagPlayground-BERXHwib.js.gz +0 -0
- package/dist/client/assets/DiffLab-DF14_TAz.js.br +0 -0
- package/dist/client/assets/DiffLab-DF14_TAz.js.gz +0 -0
- package/dist/client/assets/DiffReview-BQcIn0zl.js.br +0 -0
- package/dist/client/assets/DiffReview-BQcIn0zl.js.gz +0 -0
- package/dist/client/assets/DiffReviewLab-CgChwzQr.js.br +0 -0
- package/dist/client/assets/DiffReviewLab-CgChwzQr.js.gz +0 -0
- package/dist/client/assets/DiffViewer-hDpe-wvG.js.br +0 -0
- package/dist/client/assets/DiffViewer-hDpe-wvG.js.gz +0 -0
- package/dist/client/assets/ModelPreview-vg3vRIhx.js.br +0 -0
- package/dist/client/assets/ModelPreview-vg3vRIhx.js.gz +0 -0
- package/dist/client/assets/RightSidebar-5H4vhn3k.js.br +0 -0
- package/dist/client/assets/RightSidebar-5H4vhn3k.js.gz +0 -0
- package/dist/client/assets/abnfDiagram-VCTEODGH-DI7938HB.js.br +0 -0
- package/dist/client/assets/abnfDiagram-VCTEODGH-DI7938HB.js.gz +0 -0
- package/dist/client/assets/app-BeVXUQb-.js.br +0 -0
- package/dist/client/assets/app-BeVXUQb-.js.gz +0 -0
- package/dist/client/assets/arc-D4qDm5Yn.js.br +0 -0
- package/dist/client/assets/arc-D4qDm5Yn.js.gz +0 -0
- package/dist/client/assets/architectureDiagram-5GKGNRK7-C4IZCNC9.js.br +0 -0
- package/dist/client/assets/architectureDiagram-5GKGNRK7-C4IZCNC9.js.gz +0 -0
- package/dist/client/assets/blockDiagram-I7D4REHJ-DHVOr_jQ.js.br +0 -0
- package/dist/client/assets/blockDiagram-I7D4REHJ-DHVOr_jQ.js.gz +0 -0
- package/dist/client/assets/c4Diagram-7LVT6UL2-kQqkOkIe.js.br +0 -0
- package/dist/client/assets/c4Diagram-7LVT6UL2-kQqkOkIe.js.gz +0 -0
- package/dist/client/assets/channel-DNlwrmA4.js +0 -1
- package/dist/client/assets/chunk-F27PBJKO-Bxf7XPNj.js.br +0 -0
- package/dist/client/assets/chunk-F27PBJKO-Bxf7XPNj.js.gz +0 -0
- package/dist/client/assets/chunk-IMKFNOWR-BTifpaB5.js.br +0 -0
- package/dist/client/assets/chunk-IMKFNOWR-BTifpaB5.js.gz +0 -0
- package/dist/client/assets/chunk-SVP7TREG-Bm1spPMb.js.br +0 -0
- package/dist/client/assets/chunk-SVP7TREG-Bm1spPMb.js.gz +0 -0
- package/dist/client/assets/chunk-TICWLB2K-BGLj-zGP.js.br +0 -0
- package/dist/client/assets/chunk-TICWLB2K-BGLj-zGP.js.gz +0 -0
- package/dist/client/assets/classDiagram-ZZMXUADV-CUt4JCwJ.js +0 -1
- package/dist/client/assets/classDiagram-v2-VYDZK3BY-CUt4JCwJ.js +0 -1
- package/dist/client/assets/cose-bilkent-JH36ORCC-GTawhnoV.js.br +0 -0
- package/dist/client/assets/cose-bilkent-JH36ORCC-GTawhnoV.js.gz +0 -0
- package/dist/client/assets/cynefin-OW5HDTMX-DHdRkQdW.js.br +0 -0
- package/dist/client/assets/cynefin-OW5HDTMX-DHdRkQdW.js.gz +0 -0
- package/dist/client/assets/cynefinDiagram-5FMLGOSQ-Cj2ytLun.js.br +0 -0
- package/dist/client/assets/cynefinDiagram-5FMLGOSQ-Cj2ytLun.js.gz +0 -0
- package/dist/client/assets/dagre-GXQ25YYZ-BdFZmtIj.js.br +0 -0
- package/dist/client/assets/dagre-GXQ25YYZ-BdFZmtIj.js.gz +0 -0
- package/dist/client/assets/diagram-S7CK7UJ4-D5WQNuKI.js.br +0 -0
- package/dist/client/assets/diagram-S7CK7UJ4-D5WQNuKI.js.gz +0 -0
- package/dist/client/assets/diagram-UQ7AKVKN-ChwjfMce.js.br +0 -0
- package/dist/client/assets/diagram-UQ7AKVKN-ChwjfMce.js.gz +0 -0
- package/dist/client/assets/diagram-VSXAHHWV-DT4FET5f.js.br +0 -0
- package/dist/client/assets/diagram-VSXAHHWV-DT4FET5f.js.gz +0 -0
- package/dist/client/assets/diagram-VX7I27RA-BLJsAGx6.js.br +0 -0
- package/dist/client/assets/diagram-VX7I27RA-BLJsAGx6.js.gz +0 -0
- package/dist/client/assets/diagram-Z3DM3KII-C1ofLllK.js.br +0 -0
- package/dist/client/assets/diagram-Z3DM3KII-C1ofLllK.js.gz +0 -0
- package/dist/client/assets/ebnfDiagram-PWID7BFC-apxDEeqe.js.br +0 -0
- package/dist/client/assets/ebnfDiagram-PWID7BFC-apxDEeqe.js.gz +0 -0
- package/dist/client/assets/erDiagram-RLTQ6QDP-Dq9hBYpH.js.br +0 -0
- package/dist/client/assets/erDiagram-RLTQ6QDP-Dq9hBYpH.js.gz +0 -0
- package/dist/client/assets/flowDiagram-HODETNUW-Juk-Qv9f.js.br +0 -0
- package/dist/client/assets/flowDiagram-HODETNUW-Juk-Qv9f.js.gz +0 -0
- package/dist/client/assets/ganttDiagram-EL5Y4UJY-mmwd0mxs.js.br +0 -0
- package/dist/client/assets/ganttDiagram-EL5Y4UJY-mmwd0mxs.js.gz +0 -0
- package/dist/client/assets/gestureArbiter-CM_xJnCS.js.br +0 -0
- package/dist/client/assets/gestureArbiter-CM_xJnCS.js.gz +0 -0
- package/dist/client/assets/gitGraphDiagram-WWUBYQGX--UL7HV4P.js.br +0 -0
- package/dist/client/assets/gitGraphDiagram-WWUBYQGX--UL7HV4P.js.gz +0 -0
- package/dist/client/assets/index-pZsldTFS.css.br +0 -0
- package/dist/client/assets/ishikawaDiagram-5VMMS53U-CNVFPx1_.js.br +0 -0
- package/dist/client/assets/ishikawaDiagram-5VMMS53U-CNVFPx1_.js.gz +0 -0
- package/dist/client/assets/journeyDiagram-3NMN7TZE-BtIuJLUp.js.br +0 -0
- package/dist/client/assets/journeyDiagram-3NMN7TZE-BtIuJLUp.js.gz +0 -0
- package/dist/client/assets/kanban-definition-UXKFOSKX-gOFjuFZV.js.br +0 -0
- package/dist/client/assets/kanban-definition-UXKFOSKX-gOFjuFZV.js.gz +0 -0
- package/dist/client/assets/layout-KEP24zEE.js.br +0 -0
- package/dist/client/assets/layout-KEP24zEE.js.gz +0 -0
- package/dist/client/assets/linear-BwUXWDLn.js.br +0 -0
- package/dist/client/assets/linear-BwUXWDLn.js.gz +0 -0
- package/dist/client/assets/mermaid.core-DkzJYwWa.js.br +0 -0
- package/dist/client/assets/mermaid.core-DkzJYwWa.js.gz +0 -0
- package/dist/client/assets/mindmap-definition-YA3MSWOX-BE1H8WPd.js.br +0 -0
- package/dist/client/assets/mindmap-definition-YA3MSWOX-BE1H8WPd.js.gz +0 -0
- package/dist/client/assets/passwordBootstrap-Dhzj9-U2.js.br +0 -0
- package/dist/client/assets/passwordBootstrap-Dhzj9-U2.js.gz +0 -0
- package/dist/client/assets/pegDiagram-XKGWAZYB-CorBwvfP.js.br +0 -0
- package/dist/client/assets/pegDiagram-XKGWAZYB-CorBwvfP.js.gz +0 -0
- package/dist/client/assets/pieDiagram-E7YTZNPT-A017Uk-W.js.br +0 -0
- package/dist/client/assets/pieDiagram-E7YTZNPT-A017Uk-W.js.gz +0 -0
- package/dist/client/assets/quadrantDiagram-AXDQQJYC-CNNywvhG.js.br +0 -0
- package/dist/client/assets/quadrantDiagram-AXDQQJYC-CNNywvhG.js.gz +0 -0
- package/dist/client/assets/railroadDiagram-O6MQD6OU-DIxiWn5A.js.br +0 -0
- package/dist/client/assets/railroadDiagram-O6MQD6OU-DIxiWn5A.js.gz +0 -0
- package/dist/client/assets/referenceLongPress-Bp8q50sv.js.br +0 -0
- package/dist/client/assets/referenceLongPress-Bp8q50sv.js.gz +0 -0
- package/dist/client/assets/requirementDiagram-BXWQKSXE-Ob4lS23U.js.br +0 -0
- package/dist/client/assets/requirementDiagram-BXWQKSXE-Ob4lS23U.js.gz +0 -0
- package/dist/client/assets/sankeyDiagram-P5KCCOFB-Cc5e7umb.js.br +0 -0
- package/dist/client/assets/sankeyDiagram-P5KCCOFB-Cc5e7umb.js.gz +0 -0
- package/dist/client/assets/sequenceDiagram-WJ2MYXX4-CLTRKFht.js.br +0 -0
- package/dist/client/assets/sequenceDiagram-WJ2MYXX4-CLTRKFht.js.gz +0 -0
- package/dist/client/assets/sizeCapture-INFHLROL-h6hFhQw6.js.br +0 -0
- package/dist/client/assets/sizeCapture-INFHLROL-h6hFhQw6.js.gz +0 -0
- package/dist/client/assets/stateDiagram-D77RDMKH-DSaJxX_r.js.br +0 -0
- package/dist/client/assets/stateDiagram-D77RDMKH-DSaJxX_r.js.gz +0 -0
- package/dist/client/assets/stateDiagram-v2-MP3YSRHH-CQ9iS9Nl.js +0 -1
- package/dist/client/assets/swimlanes-42K2YHIH-CP7ABWyE.js.br +0 -0
- package/dist/client/assets/swimlanes-42K2YHIH-CP7ABWyE.js.gz +0 -0
- package/dist/client/assets/swimlanesDiagram-VR7AAH4N-BbfCRvRt.js +0 -8
- package/dist/client/assets/timeline-definition-24CTP7MA-CdwVIVF6.js.br +0 -0
- package/dist/client/assets/timeline-definition-24CTP7MA-CdwVIVF6.js.gz +0 -0
- package/dist/client/assets/vennDiagram-4TSXK5OY-BXGgQFVY.js.br +0 -0
- package/dist/client/assets/vennDiagram-4TSXK5OY-BXGgQFVY.js.gz +0 -0
- package/dist/client/assets/videoCompression-BFXJyhpz.js.br +0 -0
- package/dist/client/assets/videoCompression-BFXJyhpz.js.gz +0 -0
- package/dist/client/assets/wardleyDiagram-VM6X3IG4-CtLophqU.js.br +0 -0
- package/dist/client/assets/wardleyDiagram-VM6X3IG4-CtLophqU.js.gz +0 -0
- package/dist/client/assets/xychartDiagram-S5SC5T6Z-YZ9bnI1e.js.br +0 -0
- package/dist/client/assets/xychartDiagram-S5SC5T6Z-YZ9bnI1e.js.gz +0 -0
- package/dist/server/utils/desktopRuntimeOwner.js +0 -105
- package/scripts/prepare-desktop-runtime.mjs +0 -228
|
@@ -1,228 +0,0 @@
|
|
|
1
|
-
import { execFileSync, spawnSync } from 'node:child_process';
|
|
2
|
-
import fs from 'node:fs';
|
|
3
|
-
import os from 'node:os';
|
|
4
|
-
import path from 'node:path';
|
|
5
|
-
import process from 'node:process';
|
|
6
|
-
import { fileURLToPath } from 'node:url';
|
|
7
|
-
|
|
8
|
-
const scriptDir = path.dirname(fileURLToPath(import.meta.url));
|
|
9
|
-
const root = path.resolve(scriptDir, '..');
|
|
10
|
-
const stage = path.join(root, '.desktop-runtime');
|
|
11
|
-
const runtimeDir = path.join(stage, 'runtime');
|
|
12
|
-
const serverDir = path.join(stage, 'server');
|
|
13
|
-
const toolchainDir = path.join(stage, 'toolchain');
|
|
14
|
-
const toolchainBinDir = path.join(toolchainDir, 'bin');
|
|
15
|
-
const toolchainLibDir = path.join(toolchainDir, 'lib');
|
|
16
|
-
const nodeDownloadDir = path.join(stage, 'node-download');
|
|
17
|
-
const nodeArchiveCacheDir = process.env.TERMDOCK_NODE_ARCHIVE_CACHE
|
|
18
|
-
? path.resolve(process.env.TERMDOCK_NODE_ARCHIVE_CACHE)
|
|
19
|
-
: path.join(os.homedir(), '.cache', 'termdock', 'node-archives');
|
|
20
|
-
const desktopBuildNodeMajor = 22;
|
|
21
|
-
|
|
22
|
-
const buildNodeMajor = Number.parseInt(process.versions.node.split('.')[0], 10);
|
|
23
|
-
if (buildNodeMajor !== desktopBuildNodeMajor) {
|
|
24
|
-
throw new Error(
|
|
25
|
-
`macOS desktop packaging requires Node.js ${desktopBuildNodeMajor}.x; `
|
|
26
|
-
+ `current build runtime is ${process.version}.`,
|
|
27
|
-
);
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
function run(command, args, options = {}) {
|
|
31
|
-
const result = spawnSync(command, args, {
|
|
32
|
-
cwd: options.cwd ?? root,
|
|
33
|
-
env: options.env ?? process.env,
|
|
34
|
-
encoding: 'utf8',
|
|
35
|
-
stdio: options.stdio ?? 'inherit',
|
|
36
|
-
});
|
|
37
|
-
if (result.status !== 0) {
|
|
38
|
-
throw new Error(`${command} ${args.join(' ')} failed with exit code ${result.status}`);
|
|
39
|
-
}
|
|
40
|
-
return result.stdout ?? '';
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
function executableOnPath(name) {
|
|
44
|
-
if (process.platform === 'darwin') {
|
|
45
|
-
for (const candidate of [
|
|
46
|
-
`/opt/homebrew/bin/${name}`,
|
|
47
|
-
`/usr/local/bin/${name}`,
|
|
48
|
-
]) {
|
|
49
|
-
if (fs.existsSync(candidate)) return candidate;
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
try {
|
|
53
|
-
return execFileSync('/usr/bin/which', [name], { encoding: 'utf8' }).trim() || null;
|
|
54
|
-
} catch {
|
|
55
|
-
return null;
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
function isSystemLibrary(libraryPath) {
|
|
60
|
-
return libraryPath.startsWith('/System/Library/')
|
|
61
|
-
|| libraryPath.startsWith('/usr/lib/');
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
function linkedLibraries(binaryPath) {
|
|
65
|
-
if (process.platform !== 'darwin') return [];
|
|
66
|
-
const output = execFileSync('/usr/bin/otool', ['-L', binaryPath], { encoding: 'utf8' });
|
|
67
|
-
return output
|
|
68
|
-
.split('\n')
|
|
69
|
-
.slice(1)
|
|
70
|
-
.map((line) => line.trim().split(/\s+\(/)[0])
|
|
71
|
-
.filter((entry) => entry && !entry.startsWith('@') && !isSystemLibrary(entry));
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
function copyMacBinary(sourcePath, destinationPath) {
|
|
75
|
-
fs.copyFileSync(sourcePath, destinationPath);
|
|
76
|
-
fs.chmodSync(destinationPath, 0o755);
|
|
77
|
-
if (process.platform !== 'darwin') return;
|
|
78
|
-
|
|
79
|
-
const queue = [{ source: sourcePath, destination: destinationPath, inLibDir: false }];
|
|
80
|
-
const copiedLibraries = new Map();
|
|
81
|
-
while (queue.length > 0) {
|
|
82
|
-
const current = queue.shift();
|
|
83
|
-
for (const dependency of linkedLibraries(current.source)) {
|
|
84
|
-
const basename = path.basename(dependency);
|
|
85
|
-
const bundledDependency = path.join(toolchainLibDir, basename);
|
|
86
|
-
if (!copiedLibraries.has(dependency)) {
|
|
87
|
-
if (!fs.existsSync(dependency)) {
|
|
88
|
-
throw new Error(`Missing linked library ${dependency} required by ${current.source}`);
|
|
89
|
-
}
|
|
90
|
-
fs.copyFileSync(dependency, bundledDependency);
|
|
91
|
-
fs.chmodSync(bundledDependency, 0o755);
|
|
92
|
-
copiedLibraries.set(dependency, bundledDependency);
|
|
93
|
-
queue.push({ source: dependency, destination: bundledDependency, inLibDir: true });
|
|
94
|
-
}
|
|
95
|
-
const relativeReference = current.inLibDir
|
|
96
|
-
? `@loader_path/${basename}`
|
|
97
|
-
: `@loader_path/../lib/${basename}`;
|
|
98
|
-
run('/usr/bin/install_name_tool', ['-change', dependency, relativeReference, current.destination]);
|
|
99
|
-
}
|
|
100
|
-
if (current.inLibDir) {
|
|
101
|
-
run('/usr/bin/install_name_tool', ['-id', `@loader_path/${path.basename(current.destination)}`, current.destination]);
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
function makeSpawnHelpersExecutable(directory) {
|
|
107
|
-
if (!fs.existsSync(directory)) return;
|
|
108
|
-
for (const entry of fs.readdirSync(directory, { withFileTypes: true })) {
|
|
109
|
-
const entryPath = path.join(directory, entry.name);
|
|
110
|
-
if (entry.isDirectory()) {
|
|
111
|
-
makeSpawnHelpersExecutable(entryPath);
|
|
112
|
-
} else if (entry.isFile() && entry.name === 'spawn-helper') {
|
|
113
|
-
fs.chmodSync(entryPath, 0o755);
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
|
|
118
|
-
fs.rmSync(stage, { recursive: true, force: true });
|
|
119
|
-
fs.mkdirSync(path.join(runtimeDir, 'bin'), { recursive: true });
|
|
120
|
-
fs.mkdirSync(serverDir, { recursive: true });
|
|
121
|
-
fs.mkdirSync(toolchainBinDir, { recursive: true });
|
|
122
|
-
fs.mkdirSync(toolchainLibDir, { recursive: true });
|
|
123
|
-
|
|
124
|
-
const runtimeNode = path.join(runtimeDir, 'bin', 'node');
|
|
125
|
-
const nodePlatform = process.platform === 'win32' ? 'win' : process.platform;
|
|
126
|
-
const nodeArch = process.arch === 'x64' ? 'x64' : process.arch;
|
|
127
|
-
const nodeArchiveExt = process.platform === 'win32' ? 'zip' : 'tar.gz';
|
|
128
|
-
const nodeArchiveName = `node-${process.version}-${nodePlatform}-${nodeArch}.${nodeArchiveExt}`;
|
|
129
|
-
const nodeArchiveUrl = `https://nodejs.org/dist/${process.version}/${nodeArchiveName}`;
|
|
130
|
-
fs.mkdirSync(nodeDownloadDir, { recursive: true });
|
|
131
|
-
const nodeArchivePath = path.join(nodeDownloadDir, nodeArchiveName);
|
|
132
|
-
fs.mkdirSync(nodeArchiveCacheDir, { recursive: true });
|
|
133
|
-
const cachedNodeArchivePath = path.join(nodeArchiveCacheDir, nodeArchiveName);
|
|
134
|
-
if (!fs.existsSync(cachedNodeArchivePath)) {
|
|
135
|
-
const temporaryArchivePath = `${cachedNodeArchivePath}.${process.pid}.tmp`;
|
|
136
|
-
try {
|
|
137
|
-
run('/usr/bin/curl', ['-fL', '--retry', '4', '--output', temporaryArchivePath, nodeArchiveUrl]);
|
|
138
|
-
run('/usr/bin/tar', ['-tzf', temporaryArchivePath], { stdio: 'ignore' });
|
|
139
|
-
fs.renameSync(temporaryArchivePath, cachedNodeArchivePath);
|
|
140
|
-
} finally {
|
|
141
|
-
fs.rmSync(temporaryArchivePath, { force: true });
|
|
142
|
-
}
|
|
143
|
-
}
|
|
144
|
-
fs.copyFileSync(cachedNodeArchivePath, nodeArchivePath);
|
|
145
|
-
if (nodeArchiveExt !== 'tar.gz') {
|
|
146
|
-
throw new Error(`Desktop runtime preparation is not implemented for ${process.platform}`);
|
|
147
|
-
}
|
|
148
|
-
run('/usr/bin/tar', ['-xzf', nodeArchivePath, '-C', nodeDownloadDir]);
|
|
149
|
-
const extractedNode = path.join(
|
|
150
|
-
nodeDownloadDir,
|
|
151
|
-
`node-${process.version}-${nodePlatform}-${nodeArch}`,
|
|
152
|
-
'bin',
|
|
153
|
-
'node',
|
|
154
|
-
);
|
|
155
|
-
copyMacBinary(extractedNode, runtimeNode);
|
|
156
|
-
|
|
157
|
-
const rootPackage = JSON.parse(fs.readFileSync(path.join(root, 'package.json'), 'utf8'));
|
|
158
|
-
const runtimeManifest = JSON.parse(
|
|
159
|
-
fs.readFileSync(path.join(root, 'runtime-manifest.json'), 'utf8'),
|
|
160
|
-
);
|
|
161
|
-
const runtimePackage = {
|
|
162
|
-
name: rootPackage.name,
|
|
163
|
-
version: rootPackage.version,
|
|
164
|
-
private: true,
|
|
165
|
-
type: 'module',
|
|
166
|
-
dependencies: rootPackage.dependencies,
|
|
167
|
-
overrides: rootPackage.overrides,
|
|
168
|
-
};
|
|
169
|
-
fs.writeFileSync(path.join(serverDir, 'package.json'), `${JSON.stringify(runtimePackage, null, 2)}\n`);
|
|
170
|
-
fs.copyFileSync(path.join(root, 'package-lock.json'), path.join(serverDir, 'package-lock.json'));
|
|
171
|
-
fs.copyFileSync(
|
|
172
|
-
path.join(root, 'runtime-manifest.json'),
|
|
173
|
-
path.join(serverDir, 'runtime-manifest.json'),
|
|
174
|
-
);
|
|
175
|
-
fs.cpSync(path.join(root, 'dist'), path.join(serverDir, 'dist'), { recursive: true });
|
|
176
|
-
|
|
177
|
-
run(process.platform === 'win32' ? 'npm.cmd' : 'npm', [
|
|
178
|
-
'ci',
|
|
179
|
-
'--omit=dev',
|
|
180
|
-
'--no-audit',
|
|
181
|
-
'--no-fund',
|
|
182
|
-
], {
|
|
183
|
-
cwd: serverDir,
|
|
184
|
-
env: {
|
|
185
|
-
...process.env,
|
|
186
|
-
PATH: `${path.dirname(process.execPath)}${path.delimiter}${process.env.PATH ?? ''}`,
|
|
187
|
-
},
|
|
188
|
-
});
|
|
189
|
-
|
|
190
|
-
// Ship the same repair gate for bundled and subsequently downloaded runtimes.
|
|
191
|
-
fs.cpSync(path.join(root, 'scripts'), path.join(serverDir, 'scripts'), { recursive: true });
|
|
192
|
-
run(runtimeNode, [path.join(serverDir, 'scripts/ensure-node-pty.cjs'), path.join(serverDir, 'node_modules/node-pty')], { cwd: serverDir });
|
|
193
|
-
makeSpawnHelpersExecutable(path.join(serverDir, 'node_modules', 'node-pty'));
|
|
194
|
-
run(runtimeNode, [
|
|
195
|
-
'-e',
|
|
196
|
-
[
|
|
197
|
-
"const {createRequire}=require('node:module')",
|
|
198
|
-
"const req=createRequire(process.cwd()+'/desktop-runtime-probe.cjs')",
|
|
199
|
-
"const pty=req('node-pty')",
|
|
200
|
-
"const child=pty.spawn(process.platform==='win32'?'cmd.exe':'/bin/sh',process.platform==='win32'?['/d','/s','/c','echo termdock-desktop-pty-ok']:['-lc','printf termdock-desktop-pty-ok'],{name:'xterm',cols:80,rows:24})",
|
|
201
|
-
"let output=''",
|
|
202
|
-
"child.onData((data)=>{output+=data})",
|
|
203
|
-
"child.onExit(()=>{if(!output.includes('termdock-desktop-pty-ok')){console.error(output);process.exit(1)}})",
|
|
204
|
-
].join(';'),
|
|
205
|
-
], { cwd: serverDir });
|
|
206
|
-
|
|
207
|
-
for (const name of ['tmux', 'rg', 'git', 'mkcert']) {
|
|
208
|
-
const source = executableOnPath(name);
|
|
209
|
-
if (!source) {
|
|
210
|
-
console.warn(`[desktop-runtime] optional bundled tool not found: ${name}`);
|
|
211
|
-
continue;
|
|
212
|
-
}
|
|
213
|
-
const destination = path.join(toolchainBinDir, name);
|
|
214
|
-
copyMacBinary(source, destination);
|
|
215
|
-
console.log(`[desktop-runtime] bundled ${name} from ${source}`);
|
|
216
|
-
}
|
|
217
|
-
|
|
218
|
-
const manifest = {
|
|
219
|
-
version: rootPackage.version,
|
|
220
|
-
platform: process.platform,
|
|
221
|
-
arch: process.arch,
|
|
222
|
-
nodeVersion: process.version,
|
|
223
|
-
createdAt: new Date().toISOString(),
|
|
224
|
-
tools: fs.readdirSync(toolchainBinDir).sort(),
|
|
225
|
-
runtimeCompatibility: runtimeManifest,
|
|
226
|
-
};
|
|
227
|
-
fs.writeFileSync(path.join(stage, 'manifest.json'), `${JSON.stringify(manifest, null, 2)}\n`);
|
|
228
|
-
console.log(`[desktop-runtime] ready at ${stage}`);
|