termdock 1.4.167 → 1.4.169

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.
Files changed (514) hide show
  1. package/dist/client/assets/ChangeWalkthroughPanel-u9y3e-pI.js +2 -0
  2. package/dist/client/assets/ChangeWalkthroughPanel-u9y3e-pI.js.br +0 -0
  3. package/dist/client/assets/ChangeWalkthroughPanel-u9y3e-pI.js.gz +0 -0
  4. package/dist/client/assets/DagPlayground-BLUwaOMM.js +1 -0
  5. package/dist/client/assets/DagPlayground-BLUwaOMM.js.br +0 -0
  6. package/dist/client/assets/DagPlayground-BLUwaOMM.js.gz +0 -0
  7. package/dist/client/assets/DiffLab-ThgXydJA.js +370 -0
  8. package/dist/client/assets/DiffLab-ThgXydJA.js.br +0 -0
  9. package/dist/client/assets/DiffLab-ThgXydJA.js.gz +0 -0
  10. package/dist/client/assets/DiffReview-DNkXOQ2y.js +1 -0
  11. package/dist/client/assets/DiffReview-DNkXOQ2y.js.br +0 -0
  12. package/dist/client/assets/DiffReview-DNkXOQ2y.js.gz +0 -0
  13. package/dist/client/assets/DiffReviewLab-CHyV1WMR.js +2 -0
  14. package/dist/client/assets/DiffReviewLab-CHyV1WMR.js.br +0 -0
  15. package/dist/client/assets/DiffReviewLab-CHyV1WMR.js.gz +0 -0
  16. package/dist/client/assets/DiffViewer-CxxOpsVz.js +35 -0
  17. package/dist/client/assets/DiffViewer-CxxOpsVz.js.br +0 -0
  18. package/dist/client/assets/DiffViewer-CxxOpsVz.js.gz +0 -0
  19. package/dist/client/assets/DiffViewer-T3uj2-aP.css +1 -0
  20. package/dist/client/assets/DiffViewer-T3uj2-aP.css.br +0 -0
  21. package/dist/client/assets/DiffViewer-T3uj2-aP.css.gz +0 -0
  22. package/dist/client/assets/ModelPreview-DZzx3Tzo.js +4112 -0
  23. package/dist/client/assets/ModelPreview-DZzx3Tzo.js.br +0 -0
  24. package/dist/client/assets/ModelPreview-DZzx3Tzo.js.gz +0 -0
  25. package/dist/client/assets/RightSidebar-Bv8Y6hqx.js +55 -0
  26. package/dist/client/assets/RightSidebar-Bv8Y6hqx.js.br +0 -0
  27. package/dist/client/assets/RightSidebar-Bv8Y6hqx.js.gz +0 -0
  28. package/dist/client/assets/RightSidebar-DW-JEgm2.css +1 -0
  29. package/dist/client/assets/{abnfDiagram-VRR7QNED-evEaZuvk.js → abnfDiagram-VCTEODGH-DKmZLRlf.js} +1 -1
  30. package/dist/client/assets/abnfDiagram-VCTEODGH-DKmZLRlf.js.br +0 -0
  31. package/dist/client/assets/abnfDiagram-VCTEODGH-DKmZLRlf.js.gz +0 -0
  32. package/dist/client/assets/app-tT08GaCs.js +175 -0
  33. package/dist/client/assets/app-tT08GaCs.js.br +0 -0
  34. package/dist/client/assets/app-tT08GaCs.js.gz +0 -0
  35. package/dist/client/assets/arc-CjmHoRed.js +1 -0
  36. package/dist/client/assets/arc-CjmHoRed.js.br +0 -0
  37. package/dist/client/assets/arc-CjmHoRed.js.gz +0 -0
  38. package/dist/client/assets/architectureDiagram-5GKGNRK7-B0EDOwYH.js +36 -0
  39. package/dist/client/assets/architectureDiagram-5GKGNRK7-B0EDOwYH.js.br +0 -0
  40. package/dist/client/assets/architectureDiagram-5GKGNRK7-B0EDOwYH.js.gz +0 -0
  41. package/dist/client/assets/blockDiagram-I7D4REHJ-CW-AaouZ.js +129 -0
  42. package/dist/client/assets/blockDiagram-I7D4REHJ-CW-AaouZ.js.br +0 -0
  43. package/dist/client/assets/blockDiagram-I7D4REHJ-CW-AaouZ.js.gz +0 -0
  44. package/dist/client/assets/c4Diagram-7LVT6UL2-aE7hFKfo.js +38 -0
  45. package/dist/client/assets/c4Diagram-7LVT6UL2-aE7hFKfo.js.br +0 -0
  46. package/dist/client/assets/c4Diagram-7LVT6UL2-aE7hFKfo.js.gz +0 -0
  47. package/dist/client/assets/channel-DhsPQnwY.js +1 -0
  48. package/dist/client/assets/{chunk-2Q5K7J3B-mc5fifzP.js → chunk-2Q5K7J3B-FAEL5P17.js} +1 -1
  49. package/dist/client/assets/{chunk-5VM5RSS4-BZB3rwoP.js → chunk-5VM5RSS4-BQJAvucM.js} +1 -1
  50. package/dist/client/assets/chunk-F27PBJKO-DEkt187T.js +1 -0
  51. package/dist/client/assets/chunk-F27PBJKO-DEkt187T.js.br +0 -0
  52. package/dist/client/assets/chunk-F27PBJKO-DEkt187T.js.gz +0 -0
  53. package/dist/client/assets/{chunk-EX3LRPZG-Bvw9RqK9.js → chunk-IMKFNOWR-BfOJ-x_l.js} +5 -5
  54. package/dist/client/assets/chunk-IMKFNOWR-BfOJ-x_l.js.br +0 -0
  55. package/dist/client/assets/chunk-IMKFNOWR-BfOJ-x_l.js.gz +0 -0
  56. package/dist/client/assets/{chunk-JWPE2WC7-CSO1rP6P.js → chunk-JWPE2WC7-BN6q6jKH.js} +1 -1
  57. package/dist/client/assets/chunk-POPQ4Y6H-BrhQRNCn.js +1 -0
  58. package/dist/client/assets/{chunk-MOJQB5TN-Ds4d9rRG.js → chunk-SVP7TREG-CjZOC5Dj.js} +4 -4
  59. package/dist/client/assets/chunk-SVP7TREG-CjZOC5Dj.js.br +0 -0
  60. package/dist/client/assets/chunk-SVP7TREG-CjZOC5Dj.js.gz +0 -0
  61. package/dist/client/assets/{chunk-V7JOEXUC-DXbeWqbK.js → chunk-TICWLB2K-Wshj9ws7.js} +3 -3
  62. package/dist/client/assets/chunk-TICWLB2K-Wshj9ws7.js.br +0 -0
  63. package/dist/client/assets/chunk-TICWLB2K-Wshj9ws7.js.gz +0 -0
  64. package/dist/client/assets/{chunk-XXDRQBXY-CQVKeEmY.js → chunk-XXDRQBXY-BPPghuc3.js} +1 -1
  65. package/dist/client/assets/classDiagram-ZZMXUADV-2OomHNTG.js +1 -0
  66. package/dist/client/assets/classDiagram-v2-VYDZK3BY-2OomHNTG.js +1 -0
  67. package/dist/client/assets/{cose-bilkent-JH36ORCC-CweTDwez.js → cose-bilkent-JH36ORCC-BjxJYQH8.js} +1 -1
  68. package/dist/client/assets/cose-bilkent-JH36ORCC-BjxJYQH8.js.br +0 -0
  69. package/dist/client/assets/cose-bilkent-JH36ORCC-BjxJYQH8.js.gz +0 -0
  70. package/dist/client/assets/{cynefin-VYW2F7L2-B_1TU70O.js → cynefin-OW5HDTMX-QmUTVmd_.js} +38 -38
  71. package/dist/client/assets/cynefin-OW5HDTMX-QmUTVmd_.js.br +0 -0
  72. package/dist/client/assets/cynefin-OW5HDTMX-QmUTVmd_.js.gz +0 -0
  73. package/dist/client/assets/cynefinDiagram-5FMLGOSQ-CBJtWB9m.js +62 -0
  74. package/dist/client/assets/cynefinDiagram-5FMLGOSQ-CBJtWB9m.js.br +0 -0
  75. package/dist/client/assets/cynefinDiagram-5FMLGOSQ-CBJtWB9m.js.gz +0 -0
  76. package/dist/client/assets/cytoscape.esm-D3_iZ_3b.js.br +0 -0
  77. package/dist/client/assets/cytoscape.esm-D3_iZ_3b.js.gz +0 -0
  78. package/dist/client/assets/dagre-GXQ25YYZ-CJFctjtR.js +4 -0
  79. package/dist/client/assets/dagre-GXQ25YYZ-CJFctjtR.js.br +0 -0
  80. package/dist/client/assets/dagre-GXQ25YYZ-CJFctjtR.js.gz +0 -0
  81. package/dist/client/assets/defaultLocale-CrowFXzY.js.br +0 -0
  82. package/dist/client/assets/defaultLocale-CrowFXzY.js.gz +0 -0
  83. package/dist/client/assets/diagram-S7CK7UJ4-e7Jn-RGH.js +30 -0
  84. package/dist/client/assets/diagram-S7CK7UJ4-e7Jn-RGH.js.br +0 -0
  85. package/dist/client/assets/diagram-S7CK7UJ4-e7Jn-RGH.js.gz +0 -0
  86. package/dist/client/assets/diagram-UQ7AKVKN-B1G-uMf2.js +41 -0
  87. package/dist/client/assets/diagram-UQ7AKVKN-B1G-uMf2.js.br +0 -0
  88. package/dist/client/assets/diagram-UQ7AKVKN-B1G-uMf2.js.gz +0 -0
  89. package/dist/client/assets/{diagram-FQU43EPY-CA9ZCbUn.js → diagram-VSXAHHWV-cp7u53yF.js} +3 -3
  90. package/dist/client/assets/diagram-VSXAHHWV-cp7u53yF.js.br +0 -0
  91. package/dist/client/assets/diagram-VSXAHHWV-cp7u53yF.js.gz +0 -0
  92. package/dist/client/assets/diagram-VX7I27RA-DJWrVfMd.js +24 -0
  93. package/dist/client/assets/diagram-VX7I27RA-DJWrVfMd.js.br +0 -0
  94. package/dist/client/assets/diagram-VX7I27RA-DJWrVfMd.js.gz +0 -0
  95. package/dist/client/assets/diagram-Z3DM3KII-B-IZbqzJ.js +24 -0
  96. package/dist/client/assets/diagram-Z3DM3KII-B-IZbqzJ.js.br +0 -0
  97. package/dist/client/assets/diagram-Z3DM3KII-B-IZbqzJ.js.gz +0 -0
  98. package/dist/client/assets/diffWorker-CAzvFFr7.js +27 -0
  99. package/dist/client/assets/diffWorker-CAzvFFr7.js.br +0 -0
  100. package/dist/client/assets/diffWorker-CAzvFFr7.js.gz +0 -0
  101. package/dist/client/assets/{ebnfDiagram-CCIWWBDH-C01FJ1W6.js → ebnfDiagram-PWID7BFC-Bt4zDbpn.js} +1 -1
  102. package/dist/client/assets/ebnfDiagram-PWID7BFC-Bt4zDbpn.js.br +0 -0
  103. package/dist/client/assets/ebnfDiagram-PWID7BFC-Bt4zDbpn.js.gz +0 -0
  104. package/dist/client/assets/erDiagram-RLTQ6QDP-DUPOkndO.js +99 -0
  105. package/dist/client/assets/erDiagram-RLTQ6QDP-DUPOkndO.js.br +0 -0
  106. package/dist/client/assets/erDiagram-RLTQ6QDP-DUPOkndO.js.gz +0 -0
  107. package/dist/client/assets/flowDiagram-HODETNUW-CBSvTIxa.js +168 -0
  108. package/dist/client/assets/flowDiagram-HODETNUW-CBSvTIxa.js.br +0 -0
  109. package/dist/client/assets/flowDiagram-HODETNUW-CBSvTIxa.js.gz +0 -0
  110. package/dist/client/assets/ganttDiagram-EL5Y4UJY-C7BvkSc8.js +292 -0
  111. package/dist/client/assets/ganttDiagram-EL5Y4UJY-C7BvkSc8.js.br +0 -0
  112. package/dist/client/assets/ganttDiagram-EL5Y4UJY-C7BvkSc8.js.gz +0 -0
  113. package/dist/client/assets/gitGraphDiagram-WWUBYQGX-C4v6Do2L.js +106 -0
  114. package/dist/client/assets/gitGraphDiagram-WWUBYQGX-C4v6Do2L.js.br +0 -0
  115. package/dist/client/assets/gitGraphDiagram-WWUBYQGX-C4v6Do2L.js.gz +0 -0
  116. package/dist/client/assets/index-BaBARzax.css +1 -0
  117. package/dist/client/assets/index-BaBARzax.css.br +0 -0
  118. package/dist/client/assets/index-BaBARzax.css.gz +0 -0
  119. package/dist/client/assets/{index-Ca-rq7yX.js → index-UqXCGE5m.js} +4 -4
  120. package/dist/client/assets/index-UqXCGE5m.js.br +0 -0
  121. package/dist/client/assets/index-UqXCGE5m.js.gz +0 -0
  122. package/dist/client/assets/infoDiagram-27XIBGKW-CVQtEdgb.js +2 -0
  123. package/dist/client/assets/{ishikawaDiagram-FXEZZL3T-B_RdP3jn.js → ishikawaDiagram-5VMMS53U-Cf7tUoyW.js} +5 -5
  124. package/dist/client/assets/ishikawaDiagram-5VMMS53U-Cf7tUoyW.js.br +0 -0
  125. package/dist/client/assets/ishikawaDiagram-5VMMS53U-Cf7tUoyW.js.gz +0 -0
  126. package/dist/client/assets/{journeyDiagram-5HDEW3XC-B2nObc7o.js → journeyDiagram-3NMN7TZE-B-9CWrlr.js} +5 -5
  127. package/dist/client/assets/journeyDiagram-3NMN7TZE-B-9CWrlr.js.br +0 -0
  128. package/dist/client/assets/journeyDiagram-3NMN7TZE-B-9CWrlr.js.gz +0 -0
  129. package/dist/client/assets/{kanban-definition-HUTT4EX6-7b37SN5M.js → kanban-definition-UXKFOSKX-LDN2IZeo.js} +7 -7
  130. package/dist/client/assets/kanban-definition-UXKFOSKX-LDN2IZeo.js.br +0 -0
  131. package/dist/client/assets/kanban-definition-UXKFOSKX-LDN2IZeo.js.gz +0 -0
  132. package/dist/client/assets/katex-55ZPZeOF.css.br +0 -0
  133. package/dist/client/assets/katex-55ZPZeOF.css.gz +0 -0
  134. package/dist/client/assets/katex-DnlPpQZa.js.br +0 -0
  135. package/dist/client/assets/katex-DnlPpQZa.js.gz +0 -0
  136. package/dist/client/assets/katex-HP8lGamR.js.br +0 -0
  137. package/dist/client/assets/katex-HP8lGamR.js.gz +0 -0
  138. package/dist/client/assets/layout-DvqSuFgF.js +1 -0
  139. package/dist/client/assets/layout-DvqSuFgF.js.br +0 -0
  140. package/dist/client/assets/layout-DvqSuFgF.js.gz +0 -0
  141. package/dist/client/assets/{linear-6VNI0WmU.js → linear-D43LQnis.js} +1 -1
  142. package/dist/client/assets/linear-D43LQnis.js.br +0 -0
  143. package/dist/client/assets/linear-D43LQnis.js.gz +0 -0
  144. package/dist/client/assets/mermaid.core-DiblHLKe.js +308 -0
  145. package/dist/client/assets/mermaid.core-DiblHLKe.js.br +0 -0
  146. package/dist/client/assets/mermaid.core-DiblHLKe.js.gz +0 -0
  147. package/dist/client/assets/{mindmap-definition-LN4V7U3C-DjuOw0RL.js → mindmap-definition-YA3MSWOX-k3f4uWuu.js} +3 -3
  148. package/dist/client/assets/mindmap-definition-YA3MSWOX-k3f4uWuu.js.br +0 -0
  149. package/dist/client/assets/mindmap-definition-YA3MSWOX-k3f4uWuu.js.gz +0 -0
  150. package/dist/client/assets/ordinal-Cboi1Yqb.js.br +0 -0
  151. package/dist/client/assets/ordinal-Cboi1Yqb.js.gz +0 -0
  152. package/dist/client/assets/{pegDiagram-2B236MQR-CflwKQn8.js → pegDiagram-XKGWAZYB-Dj32Fl3j.js} +1 -1
  153. package/dist/client/assets/pegDiagram-XKGWAZYB-Dj32Fl3j.js.br +0 -0
  154. package/dist/client/assets/pegDiagram-XKGWAZYB-Dj32Fl3j.js.gz +0 -0
  155. package/dist/client/assets/pieDiagram-E7YTZNPT-DWGSixfl.js +39 -0
  156. package/dist/client/assets/pieDiagram-E7YTZNPT-DWGSixfl.js.br +0 -0
  157. package/dist/client/assets/pieDiagram-E7YTZNPT-DWGSixfl.js.gz +0 -0
  158. package/dist/client/assets/purify.es-4eNOHKSq.js +3 -0
  159. package/dist/client/assets/purify.es-4eNOHKSq.js.br +0 -0
  160. package/dist/client/assets/purify.es-4eNOHKSq.js.gz +0 -0
  161. package/dist/client/assets/{quadrantDiagram-ABIIQ3AL-XlkePQlX.js → quadrantDiagram-AXDQQJYC-BPScfZWR.js} +1 -1
  162. package/dist/client/assets/quadrantDiagram-AXDQQJYC-BPScfZWR.js.br +0 -0
  163. package/dist/client/assets/quadrantDiagram-AXDQQJYC-BPScfZWR.js.gz +0 -0
  164. package/dist/client/assets/railroadDiagram-O6MQD6OU-CL00HIC2.js +1 -0
  165. package/dist/client/assets/railroadDiagram-O6MQD6OU-CL00HIC2.js.br +0 -0
  166. package/dist/client/assets/railroadDiagram-O6MQD6OU-CL00HIC2.js.gz +0 -0
  167. package/dist/client/assets/react-XDCjal2T.js.br +0 -0
  168. package/dist/client/assets/react-XDCjal2T.js.gz +0 -0
  169. package/dist/client/assets/{requirementDiagram-TGXJPOKE-DQzmk2Py.js → requirementDiagram-BXWQKSXE-CosES4L6.js} +12 -12
  170. package/dist/client/assets/requirementDiagram-BXWQKSXE-CosES4L6.js.br +0 -0
  171. package/dist/client/assets/requirementDiagram-BXWQKSXE-CosES4L6.js.gz +0 -0
  172. package/dist/client/assets/sankeyDiagram-P5KCCOFB-CjM8CYFn.js +40 -0
  173. package/dist/client/assets/sankeyDiagram-P5KCCOFB-CjM8CYFn.js.br +0 -0
  174. package/dist/client/assets/sankeyDiagram-P5KCCOFB-CjM8CYFn.js.gz +0 -0
  175. package/dist/client/assets/{sequenceDiagram-DBY2YBRQ-COlWE5v4.js → sequenceDiagram-WJ2MYXX4-3RKv_35o.js} +1 -1
  176. package/dist/client/assets/sequenceDiagram-WJ2MYXX4-3RKv_35o.js.br +0 -0
  177. package/dist/client/assets/sequenceDiagram-WJ2MYXX4-3RKv_35o.js.gz +0 -0
  178. package/dist/client/assets/{sizeCapture-X5ZJPWSS-BAyWY8FR.js → sizeCapture-INFHLROL-BrVkA4VD.js} +1 -1
  179. package/dist/client/assets/sizeCapture-INFHLROL-BrVkA4VD.js.br +0 -0
  180. package/dist/client/assets/sizeCapture-INFHLROL-BrVkA4VD.js.gz +0 -0
  181. package/dist/client/assets/sparkles-B3pwUd8-.js +1 -0
  182. package/dist/client/assets/stateDiagram-D77RDMKH-DeWhyAVC.js +1 -0
  183. package/dist/client/assets/stateDiagram-D77RDMKH-DeWhyAVC.js.br +0 -0
  184. package/dist/client/assets/stateDiagram-D77RDMKH-DeWhyAVC.js.gz +0 -0
  185. package/dist/client/assets/stateDiagram-v2-MP3YSRHH-DvdrGmTm.js +1 -0
  186. package/dist/client/assets/swimlanes-42K2YHIH-i2m0Wmhn.js +1 -0
  187. package/dist/client/assets/swimlanes-42K2YHIH-i2m0Wmhn.js.br +0 -0
  188. package/dist/client/assets/swimlanes-42K2YHIH-i2m0Wmhn.js.gz +0 -0
  189. package/dist/client/assets/swimlanesDiagram-VR7AAH4N-DIzij9pB.js +8 -0
  190. package/dist/client/assets/terminal-C7X98Amf.js.br +0 -0
  191. package/dist/client/assets/terminal-C7X98Amf.js.gz +0 -0
  192. package/dist/client/assets/{timeline-definition-FHXFAJF6-CBpp3qTq.js → timeline-definition-24CTP7MA-BImN0AS_.js} +1 -1
  193. package/dist/client/assets/timeline-definition-24CTP7MA-BImN0AS_.js.br +0 -0
  194. package/dist/client/assets/timeline-definition-24CTP7MA-BImN0AS_.js.gz +0 -0
  195. package/dist/client/assets/vennDiagram-4TSXK5OY-DVUHKmvC.js +34 -0
  196. package/dist/client/assets/vennDiagram-4TSXK5OY-DVUHKmvC.js.br +0 -0
  197. package/dist/client/assets/vennDiagram-4TSXK5OY-DVUHKmvC.js.gz +0 -0
  198. package/dist/client/assets/{wardleyDiagram-EHGQE667-BgYh502A.js → wardleyDiagram-VM6X3IG4-B9qi-hc7.js} +4 -4
  199. package/dist/client/assets/wardleyDiagram-VM6X3IG4-B9qi-hc7.js.br +0 -0
  200. package/dist/client/assets/wardleyDiagram-VM6X3IG4-B9qi-hc7.js.gz +0 -0
  201. package/dist/client/assets/xychartDiagram-S5SC5T6Z-3jgBcYVl.js +7 -0
  202. package/dist/client/assets/xychartDiagram-S5SC5T6Z-3jgBcYVl.js.br +0 -0
  203. package/dist/client/assets/xychartDiagram-S5SC5T6Z-3jgBcYVl.js.gz +0 -0
  204. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Bold-icons-38-022d7c89c800.woff2 +0 -0
  205. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Bold-icons-39-63f8fa5b3eba.woff2 +0 -0
  206. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Bold-icons-3a-2d8d46cc4dca.woff2 +0 -0
  207. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Bold-icons-3b-e75aed5d3969.woff2 +0 -0
  208. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Bold-icons-3c-ac2534aae681.woff2 +0 -0
  209. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Bold-icons-3c0-8c49a98e75c4.woff2 +0 -0
  210. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Bold-icons-3c1-971c5e7a86ce.woff2 +0 -0
  211. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Bold-icons-3c2-e5c4893acfb9.woff2 +0 -0
  212. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Bold-icons-3c3-156f2560c871.woff2 +0 -0
  213. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Bold-icons-3c4-49f0d18a7492.woff2 +0 -0
  214. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Bold-icons-3c5-33d81ad28c5c.woff2 +0 -0
  215. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Bold-icons-3c6-5c301879d053.woff2 +0 -0
  216. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Bold-icons-3d-52c90894de44.woff2 +0 -0
  217. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Bold-text-9e8d9df2dd02.woff2 +0 -0
  218. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-BoldItalic-icons-38-7942d3c93afb.woff2 +0 -0
  219. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-BoldItalic-icons-39-19989a2be535.woff2 +0 -0
  220. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-BoldItalic-icons-3a-7786ff4a4dd9.woff2 +0 -0
  221. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-BoldItalic-icons-3b-a759fd623d7e.woff2 +0 -0
  222. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-BoldItalic-icons-3c-2a1178076740.woff2 +0 -0
  223. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-BoldItalic-icons-3c0-6f2c7518f354.woff2 +0 -0
  224. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-BoldItalic-icons-3c1-4bf64cae9dd2.woff2 +0 -0
  225. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-BoldItalic-icons-3c2-7f26d4c7240b.woff2 +0 -0
  226. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-BoldItalic-icons-3c3-fc8e5a85d620.woff2 +0 -0
  227. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-BoldItalic-icons-3c4-91819b7977d3.woff2 +0 -0
  228. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-BoldItalic-icons-3c5-26933eec54e2.woff2 +0 -0
  229. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-BoldItalic-icons-3c6-af186404c8af.woff2 +0 -0
  230. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-BoldItalic-icons-3d-b004d85f5642.woff2 +0 -0
  231. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-BoldItalic-text-da002b4e56d3.woff2 +0 -0
  232. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Italic-icons-38-b3e69191d92f.woff2 +0 -0
  233. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Italic-icons-39-c4d8d66882cb.woff2 +0 -0
  234. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Italic-icons-3a-27609324e8a3.woff2 +0 -0
  235. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Italic-icons-3b-5e73d85d7506.woff2 +0 -0
  236. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Italic-icons-3c-7e535d65bbdb.woff2 +0 -0
  237. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Italic-icons-3c0-6465060a06a1.woff2 +0 -0
  238. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Italic-icons-3c1-9fd72ccd9350.woff2 +0 -0
  239. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Italic-icons-3c2-ea7dd77de270.woff2 +0 -0
  240. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Italic-icons-3c3-12808f88907a.woff2 +0 -0
  241. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Italic-icons-3c4-14b598e5e739.woff2 +0 -0
  242. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Italic-icons-3c5-3d40530ce6c2.woff2 +0 -0
  243. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Italic-icons-3c6-7020aec0d9e1.woff2 +0 -0
  244. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Italic-icons-3d-19831897003a.woff2 +0 -0
  245. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Italic-text-b7a9c776b048.woff2 +0 -0
  246. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Regular-icons-38-a637901140d8.woff2 +0 -0
  247. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Regular-icons-39-838726e8eeca.woff2 +0 -0
  248. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Regular-icons-3a-ec149087d0b9.woff2 +0 -0
  249. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Regular-icons-3b-db8e5a24d580.woff2 +0 -0
  250. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Regular-icons-3c-2290d2ad4621.woff2 +0 -0
  251. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Regular-icons-3c0-3b9edaf85d65.woff2 +0 -0
  252. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Regular-icons-3c1-5e7fb0696bbc.woff2 +0 -0
  253. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Regular-icons-3c2-cfad2884adf5.woff2 +0 -0
  254. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Regular-icons-3c3-d641de88278b.woff2 +0 -0
  255. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Regular-icons-3c4-3b0227356b3b.woff2 +0 -0
  256. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Regular-icons-3c5-9dc67c4d20b4.woff2 +0 -0
  257. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Regular-icons-3c6-c5b444110c62.woff2 +0 -0
  258. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Regular-icons-3d-2b19b65bb43a.woff2 +0 -0
  259. package/dist/client/fonts/terminal/JetBrainsMonoNLNerdFontMono-Regular-text-d7b9316fdf4f.woff2 +0 -0
  260. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-4e-46bdca5c323f.woff2 +0 -0
  261. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-4f-17200dc0dd0d.woff2 +0 -0
  262. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-50-370e36250c30.woff2 +0 -0
  263. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-51-66352f738581.woff2 +0 -0
  264. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-52-191f4025d2b5.woff2 +0 -0
  265. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-53-fb0a637c39bf.woff2 +0 -0
  266. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-54-66f2e72c9ca0.woff2 +0 -0
  267. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-55-54b538fd4fd8.woff2 +0 -0
  268. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-56-88f45aeb2030.woff2 +0 -0
  269. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-57-154d4324f0ce.woff2 +0 -0
  270. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-58-1660c86b8a05.woff2 +0 -0
  271. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-59-31a4c5afa3aa.woff2 +0 -0
  272. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-5a-fa1d1941710e.woff2 +0 -0
  273. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-5b-031a2b2ebeb7.woff2 +0 -0
  274. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-5c-065b634c07b3.woff2 +0 -0
  275. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-5d-71f6cd3ed180.woff2 +0 -0
  276. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-5e-f59de7a6e5c5.woff2 +0 -0
  277. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-5f-8cbe737b6011.woff2 +0 -0
  278. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-60-22913526da09.woff2 +0 -0
  279. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-61-c810c1d1a3a3.woff2 +0 -0
  280. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-62-9464d5d87d65.woff2 +0 -0
  281. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-63-79564d99f5da.woff2 +0 -0
  282. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-64-4b7cff1dae6f.woff2 +0 -0
  283. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-65-8dd48db5e297.woff2 +0 -0
  284. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-66-a808e22a3d14.woff2 +0 -0
  285. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-67-ae5f61af3f79.woff2 +0 -0
  286. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-68-a46bf47bd9ba.woff2 +0 -0
  287. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-69-28210414eafb.woff2 +0 -0
  288. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-6a-6bfb1f5e4fb7.woff2 +0 -0
  289. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-6b-39be890e04e4.woff2 +0 -0
  290. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-6c-79a4ff740d98.woff2 +0 -0
  291. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-6d-2de5a763980e.woff2 +0 -0
  292. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-6e-8e55b339244d.woff2 +0 -0
  293. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-6f-a56caf9fc7fc.woff2 +0 -0
  294. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-70-d70c6ee8e03c.woff2 +0 -0
  295. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-71-ac6f5f86dfef.woff2 +0 -0
  296. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-72-db3d346ecc61.woff2 +0 -0
  297. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-73-e7371bd71f0b.woff2 +0 -0
  298. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-74-43946d9b2f0b.woff2 +0 -0
  299. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-75-ea7cf53e31fa.woff2 +0 -0
  300. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-76-04c7fa4e0ebf.woff2 +0 -0
  301. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-77-24d70898f6b8.woff2 +0 -0
  302. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-78-c6a5d7135296.woff2 +0 -0
  303. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-79-7812cb6432aa.woff2 +0 -0
  304. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-7a-6e123be5cd36.woff2 +0 -0
  305. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-7b-a183ddc6890f.woff2 +0 -0
  306. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-7c-0895291ece9c.woff2 +0 -0
  307. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-7d-1d44252384cf.woff2 +0 -0
  308. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-7e-7be4dc6f056e.woff2 +0 -0
  309. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-7f-0d8e987db151.woff2 +0 -0
  310. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-80-c0c154bb8be0.woff2 +0 -0
  311. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-81-5343baca5ce7.woff2 +0 -0
  312. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-82-6d89af9614ce.woff2 +0 -0
  313. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-83-fa17ef529c5b.woff2 +0 -0
  314. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-84-287ecb493fad.woff2 +0 -0
  315. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-85-fea695c48165.woff2 +0 -0
  316. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-86-8bb35373cb82.woff2 +0 -0
  317. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-87-f83e9f70a6cc.woff2 +0 -0
  318. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-88-894cd19292c1.woff2 +0 -0
  319. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-89-2903a6eaf546.woff2 +0 -0
  320. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-8a-3ce275bfcf96.woff2 +0 -0
  321. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-8b-3aaeb26309a6.woff2 +0 -0
  322. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-8c-719b6608b746.woff2 +0 -0
  323. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-8d-a7f1ccd0dfb7.woff2 +0 -0
  324. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-8e-d503ad5c4958.woff2 +0 -0
  325. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-8f-18c6d04746c8.woff2 +0 -0
  326. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-90-e9d94d915dfe.woff2 +0 -0
  327. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-91-c258b07ec626.woff2 +0 -0
  328. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-92-e4833a556b60.woff2 +0 -0
  329. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-94-0889f5b84499.woff2 +0 -0
  330. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-95-7ef116efe7ee.woff2 +0 -0
  331. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-96-afbc0d2cacda.woff2 +0 -0
  332. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-97-df3903d86f65.woff2 +0 -0
  333. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-98-0f21094931ee.woff2 +0 -0
  334. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-99-eb95f4bead58.woff2 +0 -0
  335. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-9a-764e8b8723ec.woff2 +0 -0
  336. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-9b-33a540b9196a.woff2 +0 -0
  337. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-9c-60d6040aa049.woff2 +0 -0
  338. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-9e-4a64c65bf44d.woff2 +0 -0
  339. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-cjk-9f-4d84fba11345.woff2 +0 -0
  340. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Bold-Subset-punctuation-f1b7708e797a.woff2 +0 -0
  341. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-4e-bb1ec5541ecc.woff2 +0 -0
  342. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-4f-d6e8daa67360.woff2 +0 -0
  343. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-50-63c2ae7f85e8.woff2 +0 -0
  344. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-51-41b6e0624888.woff2 +0 -0
  345. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-52-57de15003b8d.woff2 +0 -0
  346. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-53-94382657e2bc.woff2 +0 -0
  347. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-54-177141086f32.woff2 +0 -0
  348. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-55-5ec6fae9813a.woff2 +0 -0
  349. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-56-720aa493b429.woff2 +0 -0
  350. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-57-a8884711a286.woff2 +0 -0
  351. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-58-42a3e7e1fe9a.woff2 +0 -0
  352. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-59-887ee4253daa.woff2 +0 -0
  353. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-5a-c45806889e3c.woff2 +0 -0
  354. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-5b-da142b99dca9.woff2 +0 -0
  355. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-5c-2bb495e5b511.woff2 +0 -0
  356. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-5d-9da87d6061f2.woff2 +0 -0
  357. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-5e-e4010764e593.woff2 +0 -0
  358. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-5f-a9c9021f6e01.woff2 +0 -0
  359. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-60-306f229a68e0.woff2 +0 -0
  360. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-61-6e4546c5f52a.woff2 +0 -0
  361. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-62-a73e47933059.woff2 +0 -0
  362. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-63-e8f49f472799.woff2 +0 -0
  363. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-64-37b54957eadc.woff2 +0 -0
  364. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-65-2742b20127ad.woff2 +0 -0
  365. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-66-239656e7fe56.woff2 +0 -0
  366. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-67-5dfa72b26c3f.woff2 +0 -0
  367. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-68-fe3d1fc05aae.woff2 +0 -0
  368. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-69-22535dbbd090.woff2 +0 -0
  369. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-6a-c4117cd520aa.woff2 +0 -0
  370. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-6b-895d3349f7de.woff2 +0 -0
  371. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-6c-56a0c71eb1b4.woff2 +0 -0
  372. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-6d-9ec807661604.woff2 +0 -0
  373. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-6e-3b633363cd57.woff2 +0 -0
  374. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-6f-91a1f1c31b75.woff2 +0 -0
  375. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-70-3a904a2a2371.woff2 +0 -0
  376. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-71-e8efb60879b0.woff2 +0 -0
  377. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-72-591318b99498.woff2 +0 -0
  378. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-73-d8f444050aa7.woff2 +0 -0
  379. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-74-55a832a12d7e.woff2 +0 -0
  380. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-75-660977996a4c.woff2 +0 -0
  381. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-76-441a04df9fb5.woff2 +0 -0
  382. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-77-5915143c4398.woff2 +0 -0
  383. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-78-242fbc33c745.woff2 +0 -0
  384. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-79-24d13953150a.woff2 +0 -0
  385. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-7a-41973af74017.woff2 +0 -0
  386. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-7b-f9661fdaf003.woff2 +0 -0
  387. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-7c-ef5167770bf7.woff2 +0 -0
  388. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-7d-d84ad5d95f37.woff2 +0 -0
  389. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-7e-66841a1c6381.woff2 +0 -0
  390. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-7f-5090e017351a.woff2 +0 -0
  391. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-80-9ad74a67c2b9.woff2 +0 -0
  392. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-81-423a60a6dcf1.woff2 +0 -0
  393. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-82-aad812217807.woff2 +0 -0
  394. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-83-3dc74dbac89c.woff2 +0 -0
  395. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-84-68db7802ffe8.woff2 +0 -0
  396. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-85-fa235a7160e4.woff2 +0 -0
  397. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-86-75a6a33d0db2.woff2 +0 -0
  398. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-87-7d98ea8ce063.woff2 +0 -0
  399. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-88-363fa8f178aa.woff2 +0 -0
  400. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-89-f2d185e8721f.woff2 +0 -0
  401. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-8a-e372253a07f5.woff2 +0 -0
  402. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-8b-0af53db9bdc1.woff2 +0 -0
  403. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-8c-6a43d3643480.woff2 +0 -0
  404. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-8d-09c4b5345b99.woff2 +0 -0
  405. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-8e-122a752954a6.woff2 +0 -0
  406. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-8f-c651bbfffeb3.woff2 +0 -0
  407. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-90-ab0a5fef3083.woff2 +0 -0
  408. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-91-e07b5cbe4792.woff2 +0 -0
  409. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-92-cba0a8ee6758.woff2 +0 -0
  410. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-94-e7a6bd14e248.woff2 +0 -0
  411. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-95-420f721d52ba.woff2 +0 -0
  412. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-96-90fd476b83f2.woff2 +0 -0
  413. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-97-34036fc287f7.woff2 +0 -0
  414. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-98-5c3cdd76911e.woff2 +0 -0
  415. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-99-73e6090fd7c8.woff2 +0 -0
  416. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-9a-673ebaebe683.woff2 +0 -0
  417. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-9b-90a5a3ee22d6.woff2 +0 -0
  418. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-9c-116d201c978b.woff2 +0 -0
  419. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-9e-78db36865caa.woff2 +0 -0
  420. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-cjk-9f-27e8d16243d5.woff2 +0 -0
  421. package/dist/client/fonts/terminal/NotoSansMonoCJKsc-Subset-punctuation-a4288065ed29.woff2 +0 -0
  422. package/dist/client/fonts/terminal/manifest.json +1349 -0
  423. package/dist/client/fonts/terminal/manifest.json.br +0 -0
  424. package/dist/client/fonts/terminal/manifest.json.gz +0 -0
  425. package/dist/client/icons/agents/claude.svg.br +0 -0
  426. package/dist/client/icons/agents/claude.svg.gz +0 -0
  427. package/dist/client/icons/agents/codex.svg.br +0 -0
  428. package/dist/client/icons/agents/codex.svg.gz +0 -0
  429. package/dist/client/icons/agents/copilot.svg.br +0 -0
  430. package/dist/client/icons/agents/copilot.svg.gz +0 -0
  431. package/dist/client/icons/agents/droid.svg.br +0 -0
  432. package/dist/client/icons/agents/droid.svg.gz +0 -0
  433. package/dist/client/icons/agents/gemini.svg.br +0 -0
  434. package/dist/client/icons/agents/gemini.svg.gz +0 -0
  435. package/dist/client/icons/agents/goose.svg.br +0 -0
  436. package/dist/client/icons/agents/goose.svg.gz +0 -0
  437. package/dist/client/index.html +7 -52
  438. package/dist/client/index.html.br +0 -0
  439. package/dist/client/index.html.gz +0 -0
  440. package/dist/client/sw-notifications.js.br +0 -0
  441. package/dist/client/sw-notifications.js.gz +0 -0
  442. package/dist/client/sw.js +1 -1
  443. package/dist/client/sw.js.br +0 -0
  444. package/dist/client/sw.js.gz +0 -0
  445. package/dist/client/workbox-9845bf53.js.br +0 -0
  446. package/dist/client/workbox-9845bf53.js.gz +0 -0
  447. package/dist/server/agent/installers.js +47 -27
  448. package/dist/server/cli.js +4 -4
  449. package/dist/server/entry.js +57 -145
  450. package/dist/server/routes/auth.js +9 -3
  451. package/dist/server/routes/filesystem.js +39 -9
  452. package/dist/server/routes/local.js +3 -2
  453. package/dist/server/routes/terminal.js +337 -225
  454. package/dist/server/utils/apiAccess.js +27 -0
  455. package/dist/server/utils/apiCachePolicy.js +10 -0
  456. package/dist/server/utils/authProtection.js +140 -38
  457. package/dist/server/utils/cookieSecurity.js +3 -2
  458. package/dist/server/utils/csrfProtection.js +2 -6
  459. package/dist/server/utils/previewValidation.js +16 -0
  460. package/dist/server/utils/publicSecurity.js +44 -0
  461. package/dist/server/utils/requestDeadline.js +2 -0
  462. package/dist/server/utils/requestSecurity.js +23 -28
  463. package/dist/server/utils/staticAssets.js +97 -0
  464. package/dist/server/utils/terminalClientAttachment.js +61 -0
  465. package/dist/server/utils/terminalHandshakeDimensions.js +9 -0
  466. package/dist/server/utils/terminalOutputDelivery.js +90 -0
  467. package/dist/server/utils/tmuxClientRedraw.js +16 -0
  468. package/dist/server/utils/tmuxInitialScreen.js +50 -0
  469. package/dist/server/utils/tmuxResizeReady.js +56 -0
  470. package/dist/server/utils/webSocketSecurity.js +28 -0
  471. package/package.json +7 -4
  472. package/runtime-manifest.json +4 -4
  473. package/scripts/generate-font-subsets.py +88 -0
  474. package/scripts/precompress-client.mjs +28 -0
  475. package/dist/client/assets/ModelPreview-BzNON-7A.js +0 -4108
  476. package/dist/client/assets/app-qUUCmslY.js +0 -632
  477. package/dist/client/assets/arc-Cc4T1vtw.js +0 -1
  478. package/dist/client/assets/architectureDiagram-ZJ3FMSHR-CA5578rJ.js +0 -36
  479. package/dist/client/assets/blockDiagram-677ZJIJ3-CCyKnFX-.js +0 -132
  480. package/dist/client/assets/c4Diagram-LMCZKHZV-SjGfmHL4.js +0 -10
  481. package/dist/client/assets/channel-DsQFJkms.js +0 -1
  482. package/dist/client/assets/chunk-32BRIVSS-CF9O6bVF.js +0 -1
  483. package/dist/client/assets/chunk-RYQCIY6F-DaVQTtgL.js +0 -1
  484. package/dist/client/assets/chunk-VR4S4FIN-DEcVDuQJ.js +0 -1
  485. package/dist/client/assets/classDiagram-OUVF2IWQ-BiBG6J-j.js +0 -1
  486. package/dist/client/assets/classDiagram-v2-EOCWNBFH-BiBG6J-j.js +0 -1
  487. package/dist/client/assets/cynefinDiagram-TSTJHNR4-DGjbhF2-.js +0 -62
  488. package/dist/client/assets/dagre-VKFMJZFB-CoLOphm4.js +0 -4
  489. package/dist/client/assets/diagram-G47NLZAW-BpR2yCdT.js +0 -24
  490. package/dist/client/assets/diagram-NH7WQ7WH-DIZpypfO.js +0 -24
  491. package/dist/client/assets/diagram-OA4YK3LP-S9oRNVSL.js +0 -30
  492. package/dist/client/assets/diagram-WEI45ONY-Dv-XqhXv.js +0 -41
  493. package/dist/client/assets/diffWorker-Bg2YXCD-.js +0 -27
  494. package/dist/client/assets/erDiagram-Q63AITRT-CMDd2A57.js +0 -85
  495. package/dist/client/assets/flowDiagram-23GEKE2U-Bu5kfa1t.js +0 -156
  496. package/dist/client/assets/ganttDiagram-NO4QXBWP-tfVpOhLu.js +0 -292
  497. package/dist/client/assets/gitGraphDiagram-IHSO6WYX-CWM8oPLo.js +0 -106
  498. package/dist/client/assets/graph-D2o_JWn5.js +0 -1
  499. package/dist/client/assets/index-C13NrW5y.css +0 -1
  500. package/dist/client/assets/infoDiagram-FWYZ7A6U-CYuG0BfG.js +0 -2
  501. package/dist/client/assets/layout-1eBIAoSl.js +0 -1
  502. package/dist/client/assets/map-BdqsVdb3.js +0 -1
  503. package/dist/client/assets/mermaid.core-BMGv3SNm.js +0 -306
  504. package/dist/client/assets/pieDiagram-ENE6RG2P-Dp5j3kXt.js +0 -39
  505. package/dist/client/assets/purify.es-CC4Brkr_.js +0 -3
  506. package/dist/client/assets/railroadDiagram-RFXS5EU6-Dzq5SEwb.js +0 -1
  507. package/dist/client/assets/sankeyDiagram-HTMAVEWB-Yuu-Dn7F.js +0 -40
  508. package/dist/client/assets/stateDiagram-2N3HPSRC-DE_g6UKp.js +0 -1
  509. package/dist/client/assets/stateDiagram-v2-6OUMAXLB-CuFHnjvX.js +0 -1
  510. package/dist/client/assets/swimlanes-5IMT3BWC-SdPYQWPe.js +0 -2
  511. package/dist/client/assets/swimlanesDiagram-G3AALYLV-f7M07VuB.js +0 -8
  512. package/dist/client/assets/vennDiagram-L72KCM5P-Cfm5mfc0.js +0 -34
  513. package/dist/client/assets/xychartDiagram-FW5EYKEG-mAm5oI6Y.js +0 -7
  514. package/dist/client/registerSW.js +0 -1
@@ -119,12 +119,11 @@
119
119
  <title>Termdock</title>
120
120
 
121
121
  <!-- Preload the faces commonly present in the first terminal viewport.
122
- They must settle before xterm opens; loading a bold face afterward
122
+ Only text shards are preloaded; CJK and Nerd glyph ranges load on demand.
123
+ Text faces must settle before xterm opens; loading a bold face afterward
123
124
  makes the DOM renderer temporarily rebuild every visible row. -->
124
- <link rel="preload" href="/fonts/JetBrainsMonoNLNerdFontMono-Regular.woff2" as="font" type="font/woff2" crossorigin="anonymous">
125
- <link rel="preload" href="/fonts/JetBrainsMonoNLNerdFontMono-Bold.woff2" as="font" type="font/woff2" crossorigin="anonymous">
126
- <link rel="preload" href="/fonts/NotoSansMonoCJKsc-Subset.woff2" as="font" type="font/woff2" crossorigin="anonymous">
127
- <link rel="preload" href="/fonts/NotoSansMonoCJKsc-Bold-Subset.woff2" as="font" type="font/woff2" crossorigin="anonymous">
125
+ <link rel="preload" href="/fonts/terminal/JetBrainsMonoNLNerdFontMono-Regular-text-d7b9316fdf4f.woff2" as="font" type="font/woff2" crossorigin="anonymous">
126
+ <link rel="preload" href="/fonts/terminal/JetBrainsMonoNLNerdFontMono-Bold-text-9e8d9df2dd02.woff2" as="font" type="font/woff2" crossorigin="anonymous">
128
127
  <link rel="preload" href="/fonts/TermdockStarSymbol-Subset.woff2" as="font" type="font/woff2" crossorigin="anonymous">
129
128
  <link rel="preload" href="/fonts/NotoSansSymbols2-Subset.woff2" as="font" type="font/woff2" crossorigin="anonymous">
130
129
 
@@ -138,34 +137,6 @@
138
137
  Mono NL 的无连字风格,同时内置 Nerd Font / Powerline / devicons。
139
138
  使用 Mono 版本保证图标按终端 cell 设计;首屏强等字体,避免从
140
139
  fallback/tofu 跳到完整图标。 */
141
- @font-face {
142
- font-family: 'Termdock Mono';
143
- src: url('/fonts/JetBrainsMonoNLNerdFontMono-Regular.woff2') format('woff2');
144
- font-weight: 400;
145
- font-style: normal;
146
- font-display: block;
147
- }
148
- @font-face {
149
- font-family: 'Termdock Mono';
150
- src: url('/fonts/JetBrainsMonoNLNerdFontMono-Bold.woff2') format('woff2');
151
- font-weight: 700;
152
- font-style: normal;
153
- font-display: block;
154
- }
155
- @font-face {
156
- font-family: 'Termdock Mono';
157
- src: url('/fonts/JetBrainsMonoNLNerdFontMono-Italic.woff2') format('woff2');
158
- font-weight: 400;
159
- font-style: italic;
160
- font-display: block;
161
- }
162
- @font-face {
163
- font-family: 'Termdock Mono';
164
- src: url('/fonts/JetBrainsMonoNLNerdFontMono-BoldItalic.woff2') format('woff2');
165
- font-weight: 700;
166
- font-style: italic;
167
- font-display: block;
168
- }
169
140
  /* Termdock Star Symbol —— 从 Menlo Regular 抽取 U+2726/U+2727
170
141
  (✦/✧) 的子集。Menlo 是 macOS 上这两个符号与等宽文本视觉大小
171
142
  最接近的系统字形,避免手机端走系统符号 fallback 后偏大。
@@ -206,29 +177,13 @@
206
177
  U+3400-4DBF (CJK Ext A) 和 U+FE30-FE4F (CJK Compat Forms) 在子集
207
178
  里为空,不声明,避免无谓的字体回退查找。
208
179
  Regular + Bold 两种变体自托管,替代 xterm 合成 bold CJK。 */
209
- @font-face {
210
- font-family: 'Noto Sans Mono CJK SC';
211
- src: url('/fonts/NotoSansMonoCJKsc-Subset.woff2') format('woff2');
212
- font-weight: 400;
213
- font-style: normal;
214
- font-display: swap;
215
- unicode-range: U+3000-303F, U+4E00-9FFF, U+FF00-FFEF;
216
- }
217
- @font-face {
218
- font-family: 'Noto Sans Mono CJK SC';
219
- src: url('/fonts/NotoSansMonoCJKsc-Bold-Subset.woff2') format('woff2');
220
- font-weight: 700;
221
- font-style: normal;
222
- font-display: swap;
223
- unicode-range: U+3000-303F, U+4E00-9FFF, U+FF00-FFEF;
224
- }
225
180
  </style>
226
- <script type="module" crossorigin src="/assets/app-qUUCmslY.js"></script>
181
+ <script type="module" crossorigin src="/assets/app-tT08GaCs.js"></script>
227
182
  <link rel="modulepreload" crossorigin href="/assets/react-XDCjal2T.js">
228
183
  <link rel="modulepreload" crossorigin href="/assets/dnd-BCFAPC0L.js">
229
184
  <link rel="modulepreload" crossorigin href="/assets/terminal-C7X98Amf.js">
230
- <link rel="stylesheet" crossorigin href="/assets/index-C13NrW5y.css">
231
- <link rel="manifest" href="/manifest.webmanifest"><script id="vite-plugin-pwa:register-sw" src="/registerSW.js"></script></head>
185
+ <link rel="stylesheet" crossorigin href="/assets/index-BaBARzax.css">
186
+ <link rel="manifest" href="/manifest.webmanifest"></head>
232
187
  <body>
233
188
  <div id="root">
234
189
  <div class="termdock-boot">
Binary file
Binary file
package/dist/client/sw.js CHANGED
@@ -1 +1 @@
1
- if(!self.define){let e,s={};const i=(i,n)=>(i=new URL(i+".js",n).href,s[i]||new Promise(s=>{if("document"in self){const e=document.createElement("script");e.src=i,e.onload=s,document.head.appendChild(e)}else e=i,importScripts(i),s()}).then(()=>{let e=s[i];if(!e)throw new Error(`Module ${i} didn’t register its module`);return e}));self.define=(n,c)=>{const o=e||("document"in self?document.currentScript.src:"")||location.href;if(s[o])return;let r={};const a=e=>i(e,o),t={module:{uri:o},exports:r,require:a};s[o]=Promise.all(n.map(e=>t[e]||a(e))).then(e=>(c(...e),r))}}define(["./workbox-9845bf53"],function(e){"use strict";importScripts("sw-notifications.js"),self.skipWaiting(),e.clientsClaim(),e.precacheAndRoute([{url:"index.html",revision:"5c6e1bab783943e204db6cc7467888bd"},{url:"registerSW.js",revision:"1872c500de691dce40960bb85481de07"},{url:"assets/app-qUUCmslY.js",revision:null},{url:"assets/react-XDCjal2T.js",revision:null},{url:"assets/dnd-BCFAPC0L.js",revision:null},{url:"assets/terminal-C7X98Amf.js",revision:null},{url:"assets/index-C13NrW5y.css",revision:null},{url:"icons/agents/opencode.svg",revision:"851c2931d95821ba2b39b68587b48976"},{url:"icons/agents/kimi.svg",revision:"5366c710f4f763022fe159a69cf17409"},{url:"icons/agents/grok.svg",revision:"cd745b0b964545bc7a6b4f36021c3298"},{url:"icons/agents/goose.svg",revision:"c79b927278983c19098d77b4b0c11ab3"},{url:"icons/agents/gemini.svg",revision:"7a64f6d6f80a908255e9c0256903882e"},{url:"icons/agents/droid.svg",revision:"f28723b8c5c115e0908ba3c72613e256"},{url:"icons/agents/cursor.svg",revision:"a1528f3d3cda497f75a5db28defb19de"},{url:"icons/agents/copilot.svg",revision:"dd52e96c1eac0b6ec4bedcd0ddd3b52d"},{url:"icons/agents/codex.svg",revision:"608e55babb0b217e1f2da287342b46d3"},{url:"icons/agents/claude.svg",revision:"08af0225b7acdd8e8f573f3247e5e1c3"},{url:"icons/agents/amp.svg",revision:"af12f8b33faa81e4d46ea7b93c7e43f3"},{url:"apple-touch-icon-180x180.png",revision:"628c2e2f28a9b545aa57be1352025643"},{url:"favicon.ico",revision:"2994debfa6f59a0898e24eb0c54d64b5"},{url:"maskable-icon-512x512.png",revision:"4d489331fd81f0713c400b26426442b9"},{url:"pwa-192x192.png",revision:"4d6f899888cfb8ccd7a1fd3c9e583ad2"},{url:"pwa-512x512.png",revision:"0885dd7ec8932e7f878b013d51a380a4"},{url:"robots.txt",revision:"d9339907142917dee4aac78494ac9cfe"},{url:"sw-notifications.js",revision:"051f4ad0b9931c67d8094c2db255ac34"},{url:"manifest.webmanifest",revision:"83f9a43b74c236012adafb077fb6d774"}],{}),e.cleanupOutdatedCaches(),e.registerRoute(new e.NavigationRoute(e.createHandlerBoundToURL("index.html"),{denylist:[/^\/api\//,/^\/health$/]})),e.registerRoute(/\/assets\/.*\.(?:js|css)$/,new e.CacheFirst({cacheName:"termdock-lazy-assets-v1",plugins:[new e.CacheableResponsePlugin({statuses:[0,200]}),new e.ExpirationPlugin({maxEntries:96,maxAgeSeconds:2592e3})]}),"GET"),e.registerRoute(/\/fonts\/.*\.(?:woff2|ttf)$/,new e.StaleWhileRevalidate({cacheName:"termdock-fonts-v1",plugins:[new e.CacheableResponsePlugin({statuses:[0,200]}),new e.ExpirationPlugin({maxEntries:24,maxAgeSeconds:2592e3})]}),"GET")});
1
+ if(!self.define){let e,s={};const n=(n,i)=>(n=new URL(n+".js",i).href,s[n]||new Promise(s=>{if("document"in self){const e=document.createElement("script");e.src=n,e.onload=s,document.head.appendChild(e)}else e=n,importScripts(n),s()}).then(()=>{let e=s[n];if(!e)throw new Error(`Module ${n} didn’t register its module`);return e}));self.define=(i,a)=>{const c=e||("document"in self?document.currentScript.src:"")||location.href;if(s[c])return;let o={};const r=e=>n(e,c),t={module:{uri:c},exports:o,require:r};s[c]=Promise.all(i.map(e=>t[e]||r(e))).then(e=>(a(...e),o))}}define(["./workbox-9845bf53"],function(e){"use strict";importScripts("sw-notifications.js"),self.addEventListener("message",e=>{e.data&&"SKIP_WAITING"===e.data.type&&self.skipWaiting()}),e.clientsClaim(),e.precacheAndRoute([{url:"index.html",revision:"4d335cfd193dbf0fce4f4d9fc503cae9"},{url:"assets/app-tT08GaCs.js",revision:null},{url:"assets/react-XDCjal2T.js",revision:null},{url:"assets/dnd-BCFAPC0L.js",revision:null},{url:"assets/terminal-C7X98Amf.js",revision:null},{url:"assets/index-BaBARzax.css",revision:null},{url:"icons/agents/opencode.svg",revision:"851c2931d95821ba2b39b68587b48976"},{url:"icons/agents/kimi.svg",revision:"5366c710f4f763022fe159a69cf17409"},{url:"icons/agents/grok.svg",revision:"cd745b0b964545bc7a6b4f36021c3298"},{url:"icons/agents/goose.svg",revision:"c79b927278983c19098d77b4b0c11ab3"},{url:"icons/agents/gemini.svg",revision:"7a64f6d6f80a908255e9c0256903882e"},{url:"icons/agents/droid.svg",revision:"f28723b8c5c115e0908ba3c72613e256"},{url:"icons/agents/cursor.svg",revision:"a1528f3d3cda497f75a5db28defb19de"},{url:"icons/agents/copilot.svg",revision:"dd52e96c1eac0b6ec4bedcd0ddd3b52d"},{url:"icons/agents/codex.svg",revision:"608e55babb0b217e1f2da287342b46d3"},{url:"icons/agents/claude.svg",revision:"08af0225b7acdd8e8f573f3247e5e1c3"},{url:"icons/agents/amp.svg",revision:"af12f8b33faa81e4d46ea7b93c7e43f3"},{url:"apple-touch-icon-180x180.png",revision:"628c2e2f28a9b545aa57be1352025643"},{url:"favicon.ico",revision:"2994debfa6f59a0898e24eb0c54d64b5"},{url:"maskable-icon-512x512.png",revision:"4d489331fd81f0713c400b26426442b9"},{url:"pwa-192x192.png",revision:"4d6f899888cfb8ccd7a1fd3c9e583ad2"},{url:"pwa-512x512.png",revision:"0885dd7ec8932e7f878b013d51a380a4"},{url:"robots.txt",revision:"d9339907142917dee4aac78494ac9cfe"},{url:"sw-notifications.js",revision:"051f4ad0b9931c67d8094c2db255ac34"},{url:"manifest.webmanifest",revision:"83f9a43b74c236012adafb077fb6d774"}],{}),e.cleanupOutdatedCaches(),e.registerRoute(new e.NavigationRoute(e.createHandlerBoundToURL("index.html"),{denylist:[/^\/api\//,/^\/health$/]})),e.registerRoute(/\/assets\/.*\.(?:js|css)$/,new e.CacheFirst({cacheName:"termdock-lazy-assets-v1",plugins:[new e.CacheableResponsePlugin({statuses:[0,200]}),new e.ExpirationPlugin({maxEntries:96,maxAgeSeconds:2592e3})]}),"GET"),e.registerRoute(/\/fonts\/terminal\/[^/]+-[a-f0-9]{12}\.woff2$/,new e.CacheFirst({cacheName:"termdock-fonts-v2",plugins:[new e.CacheableResponsePlugin({statuses:[0,200]}),new e.ExpirationPlugin({maxEntries:384,maxAgeSeconds:2592e3})]}),"GET"),e.registerRoute(/\/fonts\/.*\.(?:woff2|ttf)$/,new e.StaleWhileRevalidate({cacheName:"termdock-fonts-v1",plugins:[new e.ExpirationPlugin({maxEntries:24,maxAgeSeconds:2592e3})]}),"GET")});
Binary file
Binary file
@@ -130,6 +130,10 @@ const CODEX_HOOK_EVENTS = [
130
130
  ['Stop', 'stop'],
131
131
  ['SessionEnd', 'session-end'],
132
132
  ];
133
+ /** Shared budget for Termdock status emitters, in seconds. */
134
+ function hookTimeout(event) {
135
+ return event === 'session-end' ? 1 : 5;
136
+ }
133
137
  /**
134
138
  * Kimi Code's hook events (~/.kimi-code/config.toml `[[hooks]]` entries, TOML).
135
139
  * `PermissionRequest` is the genuine block (fires right before the approval
@@ -150,9 +154,6 @@ export const KIMI_HOOK_EVENTS = [
150
154
  ['Interrupt', 'stop'],
151
155
  ['SessionEnd', 'session-end'],
152
156
  ];
153
- /** Seconds Kimi gives one termdock hook before killing it (its default is
154
- * 30s; ours writes a few bytes). */
155
- const KIMI_HOOK_TIMEOUT_SECS = 5;
156
157
  /**
157
158
  * Grok Build's hook events — Claude Code's vocabulary (grok mirrors it
158
159
  * deliberately, it even reads ~/.claude/settings.json) — plus the matcher
@@ -171,9 +172,6 @@ const GROK_HOOK_EVENTS = [
171
172
  ['Stop', 'stop', null],
172
173
  ['SessionEnd', 'session-end', null],
173
174
  ];
174
- /** Seconds grok gives one termdock hook before killing it (its default is
175
- * 600s — a budget for hooks that run test suites; ours writes a few bytes). */
176
- const GROK_HOOK_TIMEOUT_SECS = 10;
177
175
  function readJsonObject(file) {
178
176
  let text;
179
177
  try {
@@ -226,6 +224,12 @@ function hookMapState(file, agent, events) {
226
224
  any = true;
227
225
  if (ours !== hookCommand(agent, sentinel))
228
226
  complete = false;
227
+ if (Array.isArray(list)) {
228
+ const entry = list.find((entry) => markerCommand(entry, mark) === ours);
229
+ const handler = entry.hooks.find((h) => h?.command === ours);
230
+ if (handler.timeout !== hookTimeout(sentinel))
231
+ complete = false;
232
+ }
229
233
  }
230
234
  else {
231
235
  complete = false;
@@ -269,7 +273,9 @@ function hookMapInstall(file, agent, events) {
269
273
  continue; // malformed user config; leave it alone
270
274
  // Drop any previous termdock entry (stale exe path), then append ours.
271
275
  const kept = list.filter((entry) => markerCommand(entry, mark) === null);
272
- kept.push({ hooks: [{ type: 'command', command }] });
276
+ const handler = { type: 'command', command };
277
+ handler.timeout = hookTimeout(sentinel);
278
+ kept.push({ hooks: [handler] });
273
279
  hooks[hookEvent] = kept;
274
280
  }
275
281
  writeAtomic(file, JSON.stringify(root, null, 2));
@@ -331,19 +337,19 @@ function enableCodexHooksFeature() {
331
337
  * every JSON file in that directory. Event names are Copilot's camelCase
332
338
  * vocabulary. `notification` is passed through and filtered in the emitter. */
333
339
  function copilotHooksJson() {
334
- const hook = (event, timeoutSec) => [{
340
+ const hook = (event) => [{
335
341
  type: 'command',
336
342
  bash: hookCommand('copilot', event),
337
- timeoutSec,
343
+ timeoutSec: hookTimeout(event),
338
344
  }];
339
345
  return JSON.stringify({
340
346
  version: 1,
341
347
  hooks: {
342
- sessionStart: hook('session-start', 5),
343
- userPromptSubmitted: hook('prompt-submit', 5),
344
- agentStop: hook('stop', 10),
345
- sessionEnd: hook('session-end', 5),
346
- notification: hook('notification', 5),
348
+ sessionStart: hook('session-start'),
349
+ userPromptSubmitted: hook('prompt-submit'),
350
+ agentStop: hook('stop'),
351
+ sessionEnd: hook('session-end'),
352
+ notification: hook('notification'),
347
353
  },
348
354
  }, null, 2);
349
355
  }
@@ -357,7 +363,7 @@ function grokHooksJson() {
357
363
  hooks: [{
358
364
  type: 'command',
359
365
  command: hookCommand('grok', sentinel),
360
- timeout: GROK_HOOK_TIMEOUT_SECS,
366
+ timeout: hookTimeout(sentinel),
361
367
  }],
362
368
  };
363
369
  if (match)
@@ -372,18 +378,28 @@ function grokHooksJson() {
372
378
  * emitter. Inert outside termdock (both the JS guard and the emitter check
373
379
  * TERMDOCK). */
374
380
  export function opencodePluginJs() {
375
- const prefix = JSON.stringify(`"${process.execPath}" "${resolveHookScript().script}" agent-hook opencode `);
381
+ const node = JSON.stringify(process.execPath);
382
+ const script = JSON.stringify(resolveHookScript().script);
376
383
  return `// termdock agent-hook opencode bridge — generated by termdock, do not edit.
377
384
  // Bridges OpenCode plugin events onto the termdock agent-hook emitter,
378
385
  // which is inert outside termdock (gated on the TERMDOCK env var).
379
- export const TermdockPresence = async ({ $ }) => {
386
+ import { execFile } from "node:child_process";
387
+ export const TermdockPresence = async () => {
380
388
  if (!process.env["TERMDOCK"]) return {}
381
- const cmd = ${prefix}
389
+ const exe = ${node}
390
+ const script = ${script}
382
391
  const announced = new Set()
383
392
  const childSessions = new Set()
384
393
  const emit = (event, sessionID) => {
385
394
  const payload = JSON.stringify(sessionID ? { session_id: sessionID } : {})
386
- return $\`printf "%s" \${payload} | sh -c \${cmd + event}\`.quiet().nothrow()
395
+ return new Promise((resolve) => {
396
+ const child = execFile(exe, [script, "agent-hook", "opencode", event], {
397
+ timeout: event === "session-end" ? ${hookTimeout('session-end') * 1000} : ${hookTimeout('stop') * 1000},
398
+ killSignal: "SIGKILL",
399
+ }, () => resolve())
400
+ child.stdin?.on("error", () => {})
401
+ child.stdin?.end(payload)
402
+ })
387
403
  }
388
404
  const ensureSession = async (sessionID) => {
389
405
  if (!sessionID || childSessions.has(sessionID) || announced.has(sessionID)) return false
@@ -458,7 +474,11 @@ const SCRIPT = ${script};
458
474
 
459
475
  function emit(event: string): void {
460
476
  try {
461
- spawnSync(EXE, [SCRIPT, "agent-hook", "pi", event], { stdio: ["ignore", "ignore", "ignore"] });
477
+ spawnSync(EXE, [SCRIPT, "agent-hook", "pi", event], {
478
+ stdio: ["ignore", "ignore", "ignore"],
479
+ timeout: event === "session-end" ? ${hookTimeout('session-end') * 1000} : ${hookTimeout('stop') * 1000},
480
+ killSignal: "SIGKILL",
481
+ });
462
482
  } catch {}
463
483
  }
464
484
 
@@ -575,8 +595,8 @@ function tomlSectionCommand(section) {
575
595
  }
576
596
  /** One `[[hooks]]` block as termdock writes it. Kimi allows exactly the
577
597
  * fields event/matcher/command/timeout. */
578
- function tomlHookBlock(hookEvent, command) {
579
- return `[[hooks]]\nevent = "${hookEvent}"\ncommand = '${command}'\ntimeout = ${KIMI_HOOK_TIMEOUT_SECS}`;
598
+ function tomlHookBlock(hookEvent, command, sentinel) {
599
+ return `[[hooks]]\nevent = "${hookEvent}"\ncommand = '${command}'\ntimeout = ${hookTimeout(sentinel)}`;
580
600
  }
581
601
  function readTextFile(file) {
582
602
  try {
@@ -598,7 +618,8 @@ export function tomlHooksState(file, agent, events) {
598
618
  return 'not-installed';
599
619
  for (const [hookEvent, sentinel] of events) {
600
620
  const expected = hookCommand(agent, sentinel);
601
- const ok = ours.some((s) => tomlSectionEvent(s) === hookEvent && tomlSectionCommand(s) === expected);
621
+ const ok = ours.some((s) => tomlSectionEvent(s) === hookEvent && tomlSectionCommand(s) === expected
622
+ && Number(s.match(/^\s*timeout\s*=\s*(\d+)\s*(?:#.*)?$/m)?.[1]) === hookTimeout(sentinel));
602
623
  if (!ok)
603
624
  return 'outdated';
604
625
  }
@@ -619,7 +640,7 @@ export function tomlHooksInstall(file, agent, events) {
619
640
  if (out.trim().length > 0)
620
641
  out += '\n';
621
642
  out += events
622
- .map(([hookEvent, sentinel]) => tomlHookBlock(hookEvent, hookCommand(agent, sentinel)))
643
+ .map(([hookEvent, sentinel]) => tomlHookBlock(hookEvent, hookCommand(agent, sentinel), sentinel))
623
644
  .join('\n\n');
624
645
  out += '\n';
625
646
  writeAtomic(file, out);
@@ -898,7 +919,7 @@ export function pluginHooksState(slug, file, events) {
898
919
  : {};
899
920
  if (handler.command !== hookCommandForPlugin(slug, sentinel, status)
900
921
  || (matcher ?? undefined) !== group.matcher
901
- || (timeout ?? undefined) !== handler.timeout)
922
+ || (timeout ?? hookTimeout(sentinel)) !== handler.timeout)
902
923
  complete = false;
903
924
  }
904
925
  else {
@@ -944,8 +965,7 @@ export function installPluginHooks(slug, file, events) {
944
965
  continue;
945
966
  const kept = list.filter((entry) => markerCommand(entry, mark) === null);
946
967
  const handler = { type: 'command', command };
947
- if (timeout !== undefined)
948
- handler.timeout = timeout;
968
+ handler.timeout = timeout ?? hookTimeout(sentinel);
949
969
  const entry = { hooks: [handler] };
950
970
  if (matcher)
951
971
  entry.matcher = matcher;
@@ -1138,7 +1138,7 @@ async function runSetPassword() {
1138
1138
  const wasEnabled = isAuthEnabled();
1139
1139
  if (isTty) {
1140
1140
  console.log(`${ICON.lock} ${c.bold('Termdock — set access password')}`);
1141
- console.log(c.dim(' Password must be at least 6 characters. Input is hidden.'));
1141
+ console.log(c.dim(' Password must be at least 16 characters. Input is hidden.'));
1142
1142
  console.log('');
1143
1143
  }
1144
1144
  const password = await promptHidden(' New password: ');
@@ -1146,8 +1146,8 @@ async function runSetPassword() {
1146
1146
  console.error(`\n${ICON.err} ${c.red('Password cannot be empty.')}`);
1147
1147
  process.exit(1);
1148
1148
  }
1149
- if (password.length < 6) {
1150
- console.error(`\n${ICON.err} ${c.red('Password must be at least 6 characters.')}`);
1149
+ if (password.length < 16) {
1150
+ console.error(`\n${ICON.err} ${c.red('Password must be at least 16 characters.')}`);
1151
1151
  process.exit(1);
1152
1152
  }
1153
1153
  if (isTty) {
@@ -1158,7 +1158,7 @@ async function runSetPassword() {
1158
1158
  }
1159
1159
  }
1160
1160
  const hash = hashPassword(password);
1161
- writeAuthFile(hash);
1161
+ writeAuthFile(hash, password.length);
1162
1162
  // Changing the password invalidates all existing sessions so old clients
1163
1163
  // are forced to re-authenticate.
1164
1164
  destroyAllSessions();