9remote 3.0.39 → 3.0.40

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 (464) hide show
  1. package/dist/cli.cjs +86 -86
  2. package/dist/extension/background.js +136 -123
  3. package/dist/extension/manifest.json +6 -5
  4. package/dist/extension/runner.js +606 -0
  5. package/dist/server.cjs +239 -243
  6. package/dist/ui/assets/index-D_C1NTm1.js +8 -0
  7. package/dist/ui/index.html +1 -1
  8. package/dist/web/404.html +1 -1
  9. package/dist/web/__next.__PAGE__.txt +4 -4
  10. package/dist/web/__next._full.txt +17 -17
  11. package/dist/web/__next._head.txt +4 -4
  12. package/dist/web/__next._index.txt +10 -10
  13. package/dist/web/__next._tree.txt +3 -3
  14. package/dist/web/_next/static/chunks/{0fb7b532.2e7a08a3edb2d789.js → 025762a4.c49f8207624e1667.js} +1 -1
  15. package/dist/web/_next/static/chunks/101.bfb3898573e4245d.js +1 -0
  16. package/dist/web/_next/static/chunks/1342.3d5707800ea67dcb.js +1 -0
  17. package/dist/web/_next/static/chunks/153.d7a869e0874f32e0.js +1 -0
  18. package/dist/web/_next/static/chunks/1561.8d395206716b3967.js +1 -0
  19. package/dist/web/_next/static/chunks/{4314.6bbd89507909cad1.js → 1599.ed9aa4b461112c1a.js} +1 -1
  20. package/dist/web/_next/static/chunks/1694.7c4e72f21d4ce34c.js +1 -0
  21. package/dist/web/_next/static/chunks/1772-ef73c166e83f5eff.js +1 -0
  22. package/dist/web/_next/static/chunks/1878.724a4af779f951aa.js +138 -0
  23. package/dist/web/_next/static/chunks/1879.0252e2bd9153348f.js +1 -0
  24. package/dist/web/_next/static/chunks/1920-5ead25286846df83.js +1 -0
  25. package/dist/web/_next/static/chunks/1968-4d2969f0b7112e0b.js +32 -0
  26. package/dist/web/_next/static/chunks/2004.f975891d8a569296.js +24 -0
  27. package/dist/web/_next/static/chunks/2094.05efbc3414828946.js +1 -0
  28. package/dist/web/_next/static/chunks/2209.2ee6023fed2ac7a5.js +1 -0
  29. package/dist/web/_next/static/chunks/236.88ef102773dd3a91.js +1 -0
  30. package/dist/web/_next/static/chunks/2369.22023f63f0eaf8db.js +1 -0
  31. package/dist/web/_next/static/chunks/{6420.bfa7bc86d03dcefc.js → 2401.73a0315a75c7b051.js} +1 -1
  32. package/dist/web/_next/static/chunks/2427.3a468cdfabd25124.js +1 -0
  33. package/dist/web/_next/static/chunks/2436.da0ef064f744b8af.js +115 -0
  34. package/dist/web/_next/static/chunks/{1222.16edfbb0beb9081f.js → 2488.87361126358794fd.js} +1 -1
  35. package/dist/web/_next/static/chunks/2561.6c8eb8cf71429d5d.js +36 -0
  36. package/dist/web/_next/static/chunks/2581.d09a7f19c64e4b97.js +1 -0
  37. package/dist/web/_next/static/chunks/{8044.5f87392585c9f3e4.js → 2615.86c58079ec7c597c.js} +1 -1
  38. package/dist/web/_next/static/chunks/2934.0caeb8b2d8b67139.js +1 -0
  39. package/dist/web/_next/static/chunks/{6274.a3795ca6dacb3d62.js → 3011.fc80a2aad3ef8778.js} +2 -2
  40. package/dist/web/_next/static/chunks/3255.3c96f02d5eb06783.js +23 -0
  41. package/dist/web/_next/static/chunks/3284.e56b0102fb9a3920.js +62 -0
  42. package/dist/web/_next/static/chunks/329-15d3e36af1b2827f.js +1 -0
  43. package/dist/web/_next/static/chunks/3301.1f7e2bd5ccb55064.js +1 -0
  44. package/dist/web/_next/static/chunks/3314.b5b5b3cca99d832e.js +1 -0
  45. package/dist/web/_next/static/chunks/{20154aaa.868648f838e03bf1.js → 33d0405b.71576a1f83124ecd.js} +1 -1
  46. package/dist/web/_next/static/chunks/3428.8818e0ef88c0e743.js +1 -0
  47. package/dist/web/_next/static/chunks/{3429.e69c6bd48e1207a9.js → 3443.8d771dadb470603c.js} +1 -1
  48. package/dist/web/_next/static/chunks/{6742.88fddf128fbeb43d.js → 3704.bf80aa0d55f950d0.js} +1 -1
  49. package/dist/web/_next/static/chunks/3916.141fb720bd1eee40.js +148 -0
  50. package/dist/web/_next/static/chunks/3973.e5c2013e2abeefd3.js +93 -0
  51. package/dist/web/_next/static/chunks/4065.7616cbd8f37a68e6.js +1 -0
  52. package/dist/web/_next/static/chunks/{9299.e37149b455be7e9d.js → 4129.a93c19870036f647.js} +1 -1
  53. package/dist/web/_next/static/chunks/{6730.88fc6f2ccc49496c.js → 4171.b0e5c6dc86bc8a5f.js} +1 -1
  54. package/dist/web/_next/static/chunks/4330.a8740b63075e6886.js +1 -0
  55. package/dist/web/_next/static/chunks/4378.a0629cfcbc20c406.js +1 -0
  56. package/dist/web/_next/static/chunks/4553.cad71717d538a2e5.js +1 -0
  57. package/dist/web/_next/static/chunks/4589.9bd287581ccd378b.js +1 -0
  58. package/dist/web/_next/static/chunks/4594.53636acacf285911.js +34 -0
  59. package/dist/web/_next/static/chunks/466.908e4592c2b93997.js +77 -0
  60. package/dist/web/_next/static/chunks/468.2e48222bf3517040.js +1 -0
  61. package/dist/web/_next/static/chunks/4712.b7062faa67f544b5.js +1 -0
  62. package/dist/web/_next/static/chunks/{9675.be4a175f92aa2f26.js → 4724.e0dffedb6972b738.js} +1 -1
  63. package/dist/web/_next/static/chunks/482.a0b5af31d7354a82.js +1 -0
  64. package/dist/web/_next/static/chunks/4929.fce0c23972476c66.js +1 -0
  65. package/dist/web/_next/static/chunks/4964.5a41b2d776aee556.js +1 -0
  66. package/dist/web/_next/static/chunks/499.cf81a39b9e6ce4a4.js +94 -0
  67. package/dist/web/_next/static/chunks/{0a7753a9.4cb02a98e2e453b9.js → 4ff7191e.d68cdd8504937de5.js} +1 -1
  68. package/dist/web/_next/static/chunks/5035.f7175d1037807b62.js +90 -0
  69. package/dist/web/_next/static/chunks/5198.b8e3a08cb60bc349.js +1 -0
  70. package/dist/web/_next/static/chunks/5421.430fa3a5488e15a9.js +21 -0
  71. package/dist/web/_next/static/chunks/{9871-c277aedb0437cb82.js → 556-a8f04c41c5663ee8.js} +1 -1
  72. package/dist/web/_next/static/chunks/5587-fc5af8c76df14222.js +1 -0
  73. package/dist/web/_next/static/chunks/5710.b055a101d6b51ff3.js +27 -0
  74. package/dist/web/_next/static/chunks/{2180.edcf5dc3d77ceee8.js → 5714.122f8cb7296bc9e1.js} +1 -1
  75. package/dist/web/_next/static/chunks/{1243.3f23d89283c156ea.js → 5757.2c157c0924cea1c2.js} +1 -1
  76. package/dist/web/_next/static/chunks/{3346-23aafd4add63869a.js → 5957-3d5d92b58dcc7d4e.js} +1 -1
  77. package/dist/web/_next/static/chunks/{565f33a6-fd3410bd29f39fdf.js → 5b8e7b36-a2678128cd5bdf5e.js} +1 -1
  78. package/dist/web/_next/static/chunks/6141-132d206408947c60.js +1 -0
  79. package/dist/web/_next/static/chunks/{7424.c8c9f85c8ea65885.js → 6181.6bdde6f59e3f2cea.js} +1 -1
  80. package/dist/web/_next/static/chunks/6221-cf883148bf8a4c1e.js +11 -0
  81. package/dist/web/_next/static/chunks/{3552.8dd9a3d2c3bcef65.js → 6372.51e578b15d566c0e.js} +2 -2
  82. package/dist/web/_next/static/chunks/6405.39e8b42a56b88bb5.js +1 -0
  83. package/dist/web/_next/static/chunks/641.7b1b12ccc56b3b3c.js +1 -0
  84. package/dist/web/_next/static/chunks/{6647.740ec32a32201eab.js → 6418.a86ca6012f0867ff.js} +1 -1
  85. package/dist/web/_next/static/chunks/{4924.3f5c77a103ac69a9.js → 6435.6aef0f9f1cc65be6.js} +1 -1
  86. package/dist/web/_next/static/chunks/6439.f02105d3687113e7.js +1 -0
  87. package/dist/web/_next/static/chunks/647.527b9a09373aab91.js +1 -0
  88. package/dist/web/_next/static/chunks/{8115.68d46fb961c724e0.js → 6470.7057ef6894a7f625.js} +16 -16
  89. package/dist/web/_next/static/chunks/{7507.77d9ac9eb03518f7.js → 6485.6ae2f3966cc25c9e.js} +1 -1
  90. package/dist/web/_next/static/chunks/{6987.743a63813c6288ce.js → 6512.cc81f46437639a0e.js} +2 -2
  91. package/dist/web/_next/static/chunks/6520.73f10855f9d4b5a8.js +1 -0
  92. package/dist/web/_next/static/chunks/668.1ddcf2e38071ae57.js +24 -0
  93. package/dist/web/_next/static/chunks/6815.8126ae5481c3bfd8.js +1 -0
  94. package/dist/web/_next/static/chunks/6925-af784cffb03dd330.js +1 -0
  95. package/dist/web/_next/static/chunks/6e6d0562.6ebb8f7db67bd943.js +122 -0
  96. package/dist/web/_next/static/chunks/7058.affbacca3457f5a7.js +41 -0
  97. package/dist/web/_next/static/chunks/7207.72d8a01e77112af2.js +1 -0
  98. package/dist/web/_next/static/chunks/{4090.441fa61655da9b38.js → 7359.b09680f38f75e105.js} +1 -1
  99. package/dist/web/_next/static/chunks/7369.a824cc623274cf63.js +1 -0
  100. package/dist/web/_next/static/chunks/7489.24938d89538cd03e.js +1 -0
  101. package/dist/web/_next/static/chunks/{9641.f6f2982fc4b4735f.js → 7576.273c3d0faf5c3d02.js} +1 -1
  102. package/dist/web/_next/static/chunks/7620.5c5935fd937c0e84.js +1 -0
  103. package/dist/web/_next/static/chunks/{1228.c4aa83586b3730b6.js → 7646.1c26e96ee36bc317.js} +1 -1
  104. package/dist/web/_next/static/chunks/7712.cd8c3dc2d794d714.js +1 -0
  105. package/dist/web/_next/static/chunks/{2038.b77e2c3d38385a76.js → 7812.aabc856212c93434.js} +1 -1
  106. package/dist/web/_next/static/chunks/804.38f05d79313a8dcc.js +104 -0
  107. package/dist/web/_next/static/chunks/8126-0279fc9e17c08aff.js +1 -0
  108. package/dist/web/_next/static/chunks/820-99036fb63c5462c8.js +1 -0
  109. package/dist/web/_next/static/chunks/8304.936a74abe6f0a288.js +1 -0
  110. package/dist/web/_next/static/chunks/8314.7ff9d72cd8613f75.js +226 -0
  111. package/dist/web/_next/static/chunks/8390.5eda620e73ea6c5c.js +74 -0
  112. package/dist/web/_next/static/chunks/860.f7885efc630bcfd7.js +1 -0
  113. package/dist/web/_next/static/chunks/87c73c54-e11922cda838f8cc.js +1 -0
  114. package/dist/web/_next/static/chunks/887.15090f9a6a142a10.js +1 -0
  115. package/dist/web/_next/static/chunks/8977.1ab6ed8e2c098cf0.js +1 -0
  116. package/dist/web/_next/static/chunks/9121-3d281debd0f3e659.js +1 -0
  117. package/dist/web/_next/static/chunks/9491-6dc334192080d071.js +86 -0
  118. package/dist/web/_next/static/chunks/951ed0e8.98070dce91103a63.js +1 -0
  119. package/dist/web/_next/static/chunks/9651.d199fbbbc3de43b8.js +215 -0
  120. package/dist/web/_next/static/chunks/9692.dd07a90166f5e6ff.js +1 -0
  121. package/dist/web/_next/static/chunks/{6075.a6b8434732056526.js → 9700.c47024f592537718.js} +1 -1
  122. package/dist/web/_next/static/chunks/9711.cf7aaa7fa6ec7dd7.js +287 -0
  123. package/dist/web/_next/static/chunks/9736.63b4a559c8a23186.js +1 -0
  124. package/dist/web/_next/static/chunks/{bbfbfb6c.069db3c4cc981ed3.js → 98f82933.0c4f9e5e83926351.js} +1 -1
  125. package/dist/web/_next/static/chunks/{da9a53d6.df25e193f1f5bcae.js → a36ae3fc.d666935373d1f579.js} +4 -4
  126. package/dist/web/_next/static/chunks/{adcd17ec-9a2791632136b67b.js → ab6c8a12-9dac45de556d8a8d.js} +1 -1
  127. package/dist/web/_next/static/chunks/app/_global-error/page-2ece09c883187d82.js +1 -0
  128. package/dist/web/_next/static/chunks/app/_not-found/page-9f829d2c4beb1840.js +1 -0
  129. package/dist/web/_next/static/chunks/app/admin/access/page-45f45ad529e5b691.js +5 -0
  130. package/dist/web/_next/static/chunks/app/admin/login/page-382072b5b43d3c29.js +1 -0
  131. package/dist/web/_next/static/chunks/app/admin/ota/page-293c0743bd60f454.js +5 -0
  132. package/dist/web/_next/static/chunks/app/admin/page-fc676dae451dd646.js +5 -0
  133. package/dist/web/_next/static/chunks/app/admin/turn/page-2ab33033fc7f0919.js +5 -0
  134. package/dist/web/_next/static/chunks/app/dev/question/page-bafce0c9fd4e8488.js +1 -0
  135. package/dist/web/_next/static/chunks/app/download/{page-2811ea822a1e586a.js → page-a65d1c7fcf6397af.js} +1 -1
  136. package/dist/web/_next/static/chunks/app/layout-f1429d22e935695f.js +1 -0
  137. package/dist/web/_next/static/chunks/app/login/page-a5dd37d1cbbb394e.js +1 -0
  138. package/dist/web/_next/static/chunks/app/{page-8387dba850541259.js → page-1e67d8a5f3775276.js} +3 -3
  139. package/dist/web/_next/static/chunks/app/workspace/browse/page-2ece09c883187d82.js +1 -0
  140. package/dist/web/_next/static/chunks/app/workspace/editor/page-2ece09c883187d82.js +1 -0
  141. package/dist/web/_next/static/chunks/app/workspace/files/page-2ece09c883187d82.js +1 -0
  142. package/dist/web/_next/static/chunks/app/workspace/git/page-2ece09c883187d82.js +1 -0
  143. package/dist/web/_next/static/chunks/app/workspace/layout-d8bb677fa1caa5a7.js +20 -0
  144. package/dist/web/_next/static/chunks/app/workspace/mobile/page-2ece09c883187d82.js +1 -0
  145. package/dist/web/_next/static/chunks/app/workspace/page-2ece09c883187d82.js +1 -0
  146. package/dist/web/_next/static/chunks/app/workspace/pair/page-2ece09c883187d82.js +1 -0
  147. package/dist/web/_next/static/chunks/app/workspace/remote/page-2ece09c883187d82.js +1 -0
  148. package/dist/web/_next/static/chunks/app/workspace/terminal/[sessionId]/page-2ece09c883187d82.js +1 -0
  149. package/dist/web/_next/static/chunks/app/workspace/welcome/page-2ece09c883187d82.js +1 -0
  150. package/dist/web/_next/static/chunks/app/workspace/workspaces/page-2ece09c883187d82.js +1 -0
  151. package/dist/web/_next/static/chunks/b2b4fb58.d2a067fe7df4a0d0.js +1 -0
  152. package/dist/web/_next/static/chunks/baeaa4ff-8eac34d2e07d1bb3.js +1 -0
  153. package/dist/web/_next/static/chunks/{7c89255b.f727562586fa21cc.js → c2d9a0c9.b4e0bb73c2ed317c.js} +1 -1
  154. package/dist/web/_next/static/chunks/{a012e9f0.7dbb2fe05ec0b816.js → ccfb6294.add4177b76c37868.js} +11 -11
  155. package/dist/web/_next/static/chunks/{c7ea4e13.6153499d4c2fb1f2.js → db261188.134a04dd616706a4.js} +1 -1
  156. package/dist/web/_next/static/chunks/framework-59d2d1720fc2b396.js +1 -0
  157. package/dist/web/_next/static/chunks/main-app-72391b47e9393c1b.js +1 -0
  158. package/dist/web/_next/static/chunks/main-e10b0dbebb4de0a8.js +5 -0
  159. package/dist/web/_next/static/chunks/next/dist/client/components/builtin/app-error-2ece09c883187d82.js +1 -0
  160. package/dist/web/_next/static/chunks/next/dist/client/components/builtin/forbidden-2ece09c883187d82.js +1 -0
  161. package/dist/web/_next/static/chunks/next/dist/client/components/builtin/global-error-48f06b4c48a1eef3.js +1 -0
  162. package/dist/web/_next/static/chunks/next/dist/client/components/builtin/not-found-2ece09c883187d82.js +1 -0
  163. package/dist/web/_next/static/chunks/next/dist/client/components/builtin/unauthorized-2ece09c883187d82.js +1 -0
  164. package/dist/web/_next/static/chunks/webpack-dd1f7a5ae02e5d84.js +1 -0
  165. package/dist/web/_next/static/css/{b496025c9cd768cc.css → 15730e9f7c5c55ef.css} +1 -1
  166. package/dist/web/_next/static/css/1c2cca827fa36d54.css +1 -0
  167. package/dist/web/_not-found/__next._full.txt +15 -15
  168. package/dist/web/_not-found/__next._head.txt +4 -4
  169. package/dist/web/_not-found/__next._index.txt +10 -10
  170. package/dist/web/_not-found/__next._not-found.__PAGE__.txt +2 -2
  171. package/dist/web/_not-found/__next._not-found.txt +3 -3
  172. package/dist/web/_not-found/__next._tree.txt +3 -3
  173. package/dist/web/_not-found.html +1 -1
  174. package/dist/web/_not-found.txt +15 -15
  175. package/dist/web/admin/__next._full.txt +17 -17
  176. package/dist/web/admin/__next._head.txt +4 -4
  177. package/dist/web/admin/__next._index.txt +10 -10
  178. package/dist/web/admin/__next._tree.txt +3 -3
  179. package/dist/web/admin/__next.admin.__PAGE__.txt +4 -4
  180. package/dist/web/admin/__next.admin.txt +3 -3
  181. package/dist/web/admin/access/__next._full.txt +17 -17
  182. package/dist/web/admin/access/__next._head.txt +4 -4
  183. package/dist/web/admin/access/__next._index.txt +10 -10
  184. package/dist/web/admin/access/__next._tree.txt +3 -3
  185. package/dist/web/admin/access/__next.admin.access.__PAGE__.txt +4 -4
  186. package/dist/web/admin/access/__next.admin.access.txt +3 -3
  187. package/dist/web/admin/access/__next.admin.txt +3 -3
  188. package/dist/web/admin/access.html +1 -1
  189. package/dist/web/admin/access.txt +17 -17
  190. package/dist/web/admin/login/__next._full.txt +17 -17
  191. package/dist/web/admin/login/__next._head.txt +4 -4
  192. package/dist/web/admin/login/__next._index.txt +10 -10
  193. package/dist/web/admin/login/__next._tree.txt +3 -3
  194. package/dist/web/admin/login/__next.admin.login.__PAGE__.txt +4 -4
  195. package/dist/web/admin/login/__next.admin.login.txt +3 -3
  196. package/dist/web/admin/login/__next.admin.txt +3 -3
  197. package/dist/web/admin/login.html +1 -1
  198. package/dist/web/admin/login.txt +17 -17
  199. package/dist/web/admin/ota/__next._full.txt +17 -17
  200. package/dist/web/admin/ota/__next._head.txt +4 -4
  201. package/dist/web/admin/ota/__next._index.txt +10 -10
  202. package/dist/web/admin/ota/__next._tree.txt +3 -3
  203. package/dist/web/admin/ota/__next.admin.ota.__PAGE__.txt +4 -4
  204. package/dist/web/admin/ota/__next.admin.ota.txt +3 -3
  205. package/dist/web/admin/ota/__next.admin.txt +3 -3
  206. package/dist/web/admin/ota.html +1 -1
  207. package/dist/web/admin/ota.txt +17 -17
  208. package/dist/web/admin/turn/__next._full.txt +17 -17
  209. package/dist/web/admin/turn/__next._head.txt +4 -4
  210. package/dist/web/admin/turn/__next._index.txt +10 -10
  211. package/dist/web/admin/turn/__next._tree.txt +3 -3
  212. package/dist/web/admin/turn/__next.admin.turn.__PAGE__.txt +4 -4
  213. package/dist/web/admin/turn/__next.admin.turn.txt +3 -3
  214. package/dist/web/admin/turn/__next.admin.txt +3 -3
  215. package/dist/web/admin/turn.html +1 -1
  216. package/dist/web/admin/turn.txt +17 -17
  217. package/dist/web/admin.html +1 -1
  218. package/dist/web/admin.txt +17 -17
  219. package/dist/web/dev/question/__next._full.txt +17 -17
  220. package/dist/web/dev/question/__next._head.txt +4 -4
  221. package/dist/web/dev/question/__next._index.txt +10 -10
  222. package/dist/web/dev/question/__next._tree.txt +3 -3
  223. package/dist/web/dev/question/__next.dev.question.__PAGE__.txt +4 -4
  224. package/dist/web/dev/question/__next.dev.question.txt +3 -3
  225. package/dist/web/dev/question/__next.dev.txt +3 -3
  226. package/dist/web/dev/question.html +1 -1
  227. package/dist/web/dev/question.txt +17 -17
  228. package/dist/web/download/__next._full.txt +16 -16
  229. package/dist/web/download/__next._head.txt +4 -4
  230. package/dist/web/download/__next._index.txt +10 -10
  231. package/dist/web/download/__next._tree.txt +3 -3
  232. package/dist/web/download/__next.download.__PAGE__.txt +3 -3
  233. package/dist/web/download/__next.download.txt +3 -3
  234. package/dist/web/download.html +1 -1
  235. package/dist/web/download.txt +16 -16
  236. package/dist/web/index.html +1 -1
  237. package/dist/web/index.txt +17 -17
  238. package/dist/web/login/__next._full.txt +17 -17
  239. package/dist/web/login/__next._head.txt +4 -4
  240. package/dist/web/login/__next._index.txt +10 -10
  241. package/dist/web/login/__next._tree.txt +3 -3
  242. package/dist/web/login/__next.login.__PAGE__.txt +4 -4
  243. package/dist/web/login/__next.login.txt +3 -3
  244. package/dist/web/login.html +1 -1
  245. package/dist/web/login.txt +17 -17
  246. package/dist/web/workspace/__next._full.txt +17 -17
  247. package/dist/web/workspace/__next._head.txt +4 -4
  248. package/dist/web/workspace/__next._index.txt +10 -10
  249. package/dist/web/workspace/__next._tree.txt +3 -3
  250. package/dist/web/workspace/__next.workspace.__PAGE__.txt +2 -2
  251. package/dist/web/workspace/__next.workspace.txt +5 -5
  252. package/dist/web/workspace/browse/__next._full.txt +17 -17
  253. package/dist/web/workspace/browse/__next._head.txt +4 -4
  254. package/dist/web/workspace/browse/__next._index.txt +10 -10
  255. package/dist/web/workspace/browse/__next._tree.txt +3 -3
  256. package/dist/web/workspace/browse/__next.workspace.browse.__PAGE__.txt +2 -2
  257. package/dist/web/workspace/browse/__next.workspace.browse.txt +3 -3
  258. package/dist/web/workspace/browse/__next.workspace.txt +5 -5
  259. package/dist/web/workspace/browse.html +1 -1
  260. package/dist/web/workspace/browse.txt +17 -17
  261. package/dist/web/workspace/editor/__next._full.txt +17 -17
  262. package/dist/web/workspace/editor/__next._head.txt +4 -4
  263. package/dist/web/workspace/editor/__next._index.txt +10 -10
  264. package/dist/web/workspace/editor/__next._tree.txt +3 -3
  265. package/dist/web/workspace/editor/__next.workspace.editor.__PAGE__.txt +2 -2
  266. package/dist/web/workspace/editor/__next.workspace.editor.txt +3 -3
  267. package/dist/web/workspace/editor/__next.workspace.txt +5 -5
  268. package/dist/web/workspace/editor.html +1 -1
  269. package/dist/web/workspace/editor.txt +17 -17
  270. package/dist/web/workspace/files/__next._full.txt +17 -17
  271. package/dist/web/workspace/files/__next._head.txt +4 -4
  272. package/dist/web/workspace/files/__next._index.txt +10 -10
  273. package/dist/web/workspace/files/__next._tree.txt +3 -3
  274. package/dist/web/workspace/files/__next.workspace.files.__PAGE__.txt +2 -2
  275. package/dist/web/workspace/files/__next.workspace.files.txt +3 -3
  276. package/dist/web/workspace/files/__next.workspace.txt +5 -5
  277. package/dist/web/workspace/files.html +1 -1
  278. package/dist/web/workspace/files.txt +17 -17
  279. package/dist/web/workspace/git/__next._full.txt +17 -17
  280. package/dist/web/workspace/git/__next._head.txt +4 -4
  281. package/dist/web/workspace/git/__next._index.txt +10 -10
  282. package/dist/web/workspace/git/__next._tree.txt +3 -3
  283. package/dist/web/workspace/git/__next.workspace.git.__PAGE__.txt +2 -2
  284. package/dist/web/workspace/git/__next.workspace.git.txt +3 -3
  285. package/dist/web/workspace/git/__next.workspace.txt +5 -5
  286. package/dist/web/workspace/git.html +1 -1
  287. package/dist/web/workspace/git.txt +17 -17
  288. package/dist/web/workspace/mobile/__next._full.txt +17 -17
  289. package/dist/web/workspace/mobile/__next._head.txt +4 -4
  290. package/dist/web/workspace/mobile/__next._index.txt +10 -10
  291. package/dist/web/workspace/mobile/__next._tree.txt +3 -3
  292. package/dist/web/workspace/mobile/__next.workspace.mobile.__PAGE__.txt +2 -2
  293. package/dist/web/workspace/mobile/__next.workspace.mobile.txt +3 -3
  294. package/dist/web/workspace/mobile/__next.workspace.txt +5 -5
  295. package/dist/web/workspace/mobile.html +1 -1
  296. package/dist/web/workspace/mobile.txt +17 -17
  297. package/dist/web/workspace/pair/__next._full.txt +17 -17
  298. package/dist/web/workspace/pair/__next._head.txt +4 -4
  299. package/dist/web/workspace/pair/__next._index.txt +10 -10
  300. package/dist/web/workspace/pair/__next._tree.txt +3 -3
  301. package/dist/web/workspace/pair/__next.workspace.pair.__PAGE__.txt +2 -2
  302. package/dist/web/workspace/pair/__next.workspace.pair.txt +3 -3
  303. package/dist/web/workspace/pair/__next.workspace.txt +5 -5
  304. package/dist/web/workspace/pair.html +1 -1
  305. package/dist/web/workspace/pair.txt +17 -17
  306. package/dist/web/workspace/remote/__next._full.txt +17 -17
  307. package/dist/web/workspace/remote/__next._head.txt +4 -4
  308. package/dist/web/workspace/remote/__next._index.txt +10 -10
  309. package/dist/web/workspace/remote/__next._tree.txt +3 -3
  310. package/dist/web/workspace/remote/__next.workspace.remote.__PAGE__.txt +2 -2
  311. package/dist/web/workspace/remote/__next.workspace.remote.txt +3 -3
  312. package/dist/web/workspace/remote/__next.workspace.txt +5 -5
  313. package/dist/web/workspace/remote.html +1 -1
  314. package/dist/web/workspace/remote.txt +17 -17
  315. package/dist/web/workspace/terminal/default/__next._full.txt +17 -17
  316. package/dist/web/workspace/terminal/default/__next._head.txt +4 -4
  317. package/dist/web/workspace/terminal/default/__next._index.txt +10 -10
  318. package/dist/web/workspace/terminal/default/__next._tree.txt +3 -3
  319. package/dist/web/workspace/terminal/default/__next.workspace.terminal.$d$sessionId.__PAGE__.txt +2 -2
  320. package/dist/web/workspace/terminal/default/__next.workspace.terminal.$d$sessionId.txt +3 -3
  321. package/dist/web/workspace/terminal/default/__next.workspace.terminal.txt +3 -3
  322. package/dist/web/workspace/terminal/default/__next.workspace.txt +5 -5
  323. package/dist/web/workspace/terminal/default.html +1 -1
  324. package/dist/web/workspace/terminal/default.txt +17 -17
  325. package/dist/web/workspace/welcome/__next._full.txt +17 -17
  326. package/dist/web/workspace/welcome/__next._head.txt +4 -4
  327. package/dist/web/workspace/welcome/__next._index.txt +10 -10
  328. package/dist/web/workspace/welcome/__next._tree.txt +3 -3
  329. package/dist/web/workspace/welcome/__next.workspace.txt +5 -5
  330. package/dist/web/workspace/welcome/__next.workspace.welcome.__PAGE__.txt +2 -2
  331. package/dist/web/workspace/welcome/__next.workspace.welcome.txt +3 -3
  332. package/dist/web/workspace/welcome.html +1 -1
  333. package/dist/web/workspace/welcome.txt +17 -17
  334. package/dist/web/workspace/workspaces/__next._full.txt +17 -17
  335. package/dist/web/workspace/workspaces/__next._head.txt +4 -4
  336. package/dist/web/workspace/workspaces/__next._index.txt +10 -10
  337. package/dist/web/workspace/workspaces/__next._tree.txt +3 -3
  338. package/dist/web/workspace/workspaces/__next.workspace.txt +5 -5
  339. package/dist/web/workspace/workspaces/__next.workspace.workspaces.__PAGE__.txt +2 -2
  340. package/dist/web/workspace/workspaces/__next.workspace.workspaces.txt +3 -3
  341. package/dist/web/workspace/workspaces.html +1 -1
  342. package/dist/web/workspace/workspaces.txt +17 -17
  343. package/dist/web/workspace.html +1 -1
  344. package/dist/web/workspace.txt +17 -17
  345. package/package.json +1 -1
  346. package/dist/ui/assets/index-BKC13tXO.js +0 -8
  347. package/dist/web/_next/static/chunks/1050-b9af41e8856b58c0.js +0 -1
  348. package/dist/web/_next/static/chunks/132.71f657e5a607b7d3.js +0 -1
  349. package/dist/web/_next/static/chunks/133.1106654a28b5afda.js +0 -1
  350. package/dist/web/_next/static/chunks/1385.086b560acb0d7a68.js +0 -115
  351. package/dist/web/_next/static/chunks/1642.cac26d30ac331cb4.js +0 -1
  352. package/dist/web/_next/static/chunks/1733.f06c240b3ef8a428.js +0 -77
  353. package/dist/web/_next/static/chunks/1750.ea89a41e86ac2790.js +0 -1
  354. package/dist/web/_next/static/chunks/1763.28beedca593b5e19.js +0 -138
  355. package/dist/web/_next/static/chunks/179.b9e8f385bd414d1c.js +0 -62
  356. package/dist/web/_next/static/chunks/1838.7c8990f903e3524a.js +0 -215
  357. package/dist/web/_next/static/chunks/2112.d72eefbdf81659b3.js +0 -23
  358. package/dist/web/_next/static/chunks/2125.61c6e4a3541e30ad.js +0 -1
  359. package/dist/web/_next/static/chunks/2129.61afb2f4ff59e46a.js +0 -24
  360. package/dist/web/_next/static/chunks/213.ae43f03862ad9cc1.js +0 -1
  361. package/dist/web/_next/static/chunks/2179.3f55be0b79e3cca7.js +0 -1
  362. package/dist/web/_next/static/chunks/2264.0fc1474d26067a01.js +0 -1
  363. package/dist/web/_next/static/chunks/2376.ed6302a91a9de1ae.js +0 -36
  364. package/dist/web/_next/static/chunks/2545.3ff192a933baf11e.js +0 -1
  365. package/dist/web/_next/static/chunks/2620.d17f4fac0eec88a5.js +0 -1
  366. package/dist/web/_next/static/chunks/2847.d3124853ca727b78.js +0 -1
  367. package/dist/web/_next/static/chunks/2849.d810c3fdb2054b14.js +0 -1
  368. package/dist/web/_next/static/chunks/3189.64c6546d621eec0b.js +0 -1
  369. package/dist/web/_next/static/chunks/3348-9ef29f9cedf6c0df.js +0 -1
  370. package/dist/web/_next/static/chunks/3514.20bd03c8194dec25.js +0 -1
  371. package/dist/web/_next/static/chunks/3606.b59e695fd05b4eb3.js +0 -74
  372. package/dist/web/_next/static/chunks/3736.4a5662ceeecc6acb.js +0 -94
  373. package/dist/web/_next/static/chunks/392.842b338137824bb8.js +0 -1
  374. package/dist/web/_next/static/chunks/4136-d7c1ff2da0833b42.js +0 -86
  375. package/dist/web/_next/static/chunks/4300-a66b52c9e1a27db3.js +0 -1
  376. package/dist/web/_next/static/chunks/4303.54c4aa0b89834fc6.js +0 -1
  377. package/dist/web/_next/static/chunks/4551.d0d6723cacfb90b9.js +0 -226
  378. package/dist/web/_next/static/chunks/4566.d8e009823b8647d1.js +0 -90
  379. package/dist/web/_next/static/chunks/4643.1e356e007756e19d.js +0 -1
  380. package/dist/web/_next/static/chunks/4930.42e564644c94a93b.js +0 -1
  381. package/dist/web/_next/static/chunks/5155.d7e8db52ab4c95e0.js +0 -27
  382. package/dist/web/_next/static/chunks/5158-267908d069475cdc.js +0 -32
  383. package/dist/web/_next/static/chunks/543.5636e97aa68eb9c8.js +0 -41
  384. package/dist/web/_next/static/chunks/5506.98304a1821200439.js +0 -1
  385. package/dist/web/_next/static/chunks/5622.5ead5e748ecedbd1.js +0 -1
  386. package/dist/web/_next/static/chunks/5708.22b4531ceebf3eca.js +0 -1
  387. package/dist/web/_next/static/chunks/5788-f0c87f9c14fa0ff9.js +0 -1
  388. package/dist/web/_next/static/chunks/5804.ff72a927135eb74c.js +0 -93
  389. package/dist/web/_next/static/chunks/588.78e2528ff24df85c.js +0 -287
  390. package/dist/web/_next/static/chunks/6001.e5bcb28bb9ce6571.js +0 -1
  391. package/dist/web/_next/static/chunks/6180.82fa683aa16f21df.js +0 -1
  392. package/dist/web/_next/static/chunks/6276.aa48f74970f7ef3d.js +0 -1
  393. package/dist/web/_next/static/chunks/6419.34fdd4aa97c5cc5d.js +0 -1
  394. package/dist/web/_next/static/chunks/6552-cebe84e4399a184f.js +0 -1
  395. package/dist/web/_next/static/chunks/6739.22a05398bfd34922.js +0 -1
  396. package/dist/web/_next/static/chunks/674.b2f5d5fc3fb84c4a.js +0 -1
  397. package/dist/web/_next/static/chunks/7202.dad90ce4a1d78f67.js +0 -1
  398. package/dist/web/_next/static/chunks/7233.0f252f6c1cce8058.js +0 -1
  399. package/dist/web/_next/static/chunks/7248.d89bf328a0dc1b4c.js +0 -1
  400. package/dist/web/_next/static/chunks/7263.6f224c3924155294.js +0 -1
  401. package/dist/web/_next/static/chunks/7341.6958eac888a96823.js +0 -34
  402. package/dist/web/_next/static/chunks/7811.19082afa63eb73ba.js +0 -1
  403. package/dist/web/_next/static/chunks/7853.d01982fa0afc1ee2.js +0 -24
  404. package/dist/web/_next/static/chunks/7908.432ab9feeb9ae756.js +0 -1
  405. package/dist/web/_next/static/chunks/7960.2754ce9111bef59e.js +0 -1
  406. package/dist/web/_next/static/chunks/7967.6c62be01fad1603c.js +0 -1
  407. package/dist/web/_next/static/chunks/8054.feeb01b8acdb31d4.js +0 -1
  408. package/dist/web/_next/static/chunks/817.cd0f4d221eca4c8b.js +0 -104
  409. package/dist/web/_next/static/chunks/8207-45554e2570bc59e6.js +0 -1
  410. package/dist/web/_next/static/chunks/8467.c2c0273ac5e97e34.js +0 -1
  411. package/dist/web/_next/static/chunks/8495.d6cea1be03635fa8.js +0 -148
  412. package/dist/web/_next/static/chunks/8638.f44546e4532d76e8.js +0 -1
  413. package/dist/web/_next/static/chunks/8669-8d1fb8dce08c886d.js +0 -11
  414. package/dist/web/_next/static/chunks/8716.1ad6febb58e8560e.js +0 -1
  415. package/dist/web/_next/static/chunks/8762-e88a7f91d20d82bd.js +0 -1
  416. package/dist/web/_next/static/chunks/8839.1ad64faf06fb4a33.js +0 -1
  417. package/dist/web/_next/static/chunks/8922-4c589850b01d2e12.js +0 -1
  418. package/dist/web/_next/static/chunks/910.43be9c3be85c7fa0.js +0 -21
  419. package/dist/web/_next/static/chunks/925.7cfb725e605559a0.js +0 -1
  420. package/dist/web/_next/static/chunks/9259.97e2f3306fc149c7.js +0 -1
  421. package/dist/web/_next/static/chunks/9387.96263a2d1602a078.js +0 -1
  422. package/dist/web/_next/static/chunks/9568-0bfadca4fcb105aa.js +0 -1
  423. package/dist/web/_next/static/chunks/9860.05fa134ae44699e0.js +0 -1
  424. package/dist/web/_next/static/chunks/9b87412a.d2cfae4121762dec.js +0 -122
  425. package/dist/web/_next/static/chunks/a096f98a-5a93977f5f5de413.js +0 -1
  426. package/dist/web/_next/static/chunks/ab1da478.d051e56375dab6d8.js +0 -1
  427. package/dist/web/_next/static/chunks/app/_global-error/page-e656bb9bc0f3fd3d.js +0 -1
  428. package/dist/web/_next/static/chunks/app/_not-found/page-877523282abd5a7c.js +0 -1
  429. package/dist/web/_next/static/chunks/app/admin/access/page-65febd13b3d1fc91.js +0 -5
  430. package/dist/web/_next/static/chunks/app/admin/login/page-8ff8150184b7ccaa.js +0 -1
  431. package/dist/web/_next/static/chunks/app/admin/ota/page-d8766baa3680522d.js +0 -5
  432. package/dist/web/_next/static/chunks/app/admin/page-6237b1487c05f33e.js +0 -5
  433. package/dist/web/_next/static/chunks/app/admin/turn/page-6a6b695b67d59451.js +0 -5
  434. package/dist/web/_next/static/chunks/app/dev/question/page-c7128ddf798789f1.js +0 -1
  435. package/dist/web/_next/static/chunks/app/layout-a0e78c8427f97e4f.js +0 -1
  436. package/dist/web/_next/static/chunks/app/login/page-2a046d10af50c87a.js +0 -1
  437. package/dist/web/_next/static/chunks/app/workspace/browse/page-e656bb9bc0f3fd3d.js +0 -1
  438. package/dist/web/_next/static/chunks/app/workspace/editor/page-e656bb9bc0f3fd3d.js +0 -1
  439. package/dist/web/_next/static/chunks/app/workspace/files/page-e656bb9bc0f3fd3d.js +0 -1
  440. package/dist/web/_next/static/chunks/app/workspace/git/page-e656bb9bc0f3fd3d.js +0 -1
  441. package/dist/web/_next/static/chunks/app/workspace/layout-9b28454945238595.js +0 -20
  442. package/dist/web/_next/static/chunks/app/workspace/mobile/page-e656bb9bc0f3fd3d.js +0 -1
  443. package/dist/web/_next/static/chunks/app/workspace/page-e656bb9bc0f3fd3d.js +0 -1
  444. package/dist/web/_next/static/chunks/app/workspace/pair/page-e656bb9bc0f3fd3d.js +0 -1
  445. package/dist/web/_next/static/chunks/app/workspace/remote/page-e656bb9bc0f3fd3d.js +0 -1
  446. package/dist/web/_next/static/chunks/app/workspace/terminal/[sessionId]/page-e656bb9bc0f3fd3d.js +0 -1
  447. package/dist/web/_next/static/chunks/app/workspace/welcome/page-e656bb9bc0f3fd3d.js +0 -1
  448. package/dist/web/_next/static/chunks/app/workspace/workspaces/page-e656bb9bc0f3fd3d.js +0 -1
  449. package/dist/web/_next/static/chunks/c7879cf7-0d16fce1674078f9.js +0 -1
  450. package/dist/web/_next/static/chunks/cdcce140.7a440644c3dd52b8.js +0 -1
  451. package/dist/web/_next/static/chunks/framework-42053c69543a55f9.js +0 -1
  452. package/dist/web/_next/static/chunks/main-255c95c36766ce86.js +0 -5
  453. package/dist/web/_next/static/chunks/main-app-1831d4f902c3fcb9.js +0 -1
  454. package/dist/web/_next/static/chunks/next/dist/client/components/builtin/app-error-e656bb9bc0f3fd3d.js +0 -1
  455. package/dist/web/_next/static/chunks/next/dist/client/components/builtin/forbidden-e656bb9bc0f3fd3d.js +0 -1
  456. package/dist/web/_next/static/chunks/next/dist/client/components/builtin/global-error-76800531999827bd.js +0 -1
  457. package/dist/web/_next/static/chunks/next/dist/client/components/builtin/not-found-e656bb9bc0f3fd3d.js +0 -1
  458. package/dist/web/_next/static/chunks/next/dist/client/components/builtin/unauthorized-e656bb9bc0f3fd3d.js +0 -1
  459. package/dist/web/_next/static/chunks/webpack-beef15eb580fc66b.js +0 -1
  460. package/dist/web/_next/static/css/c48f9629be2a67b4.css +0 -1
  461. /package/dist/web/_next/static/{hFRLMLaLieW6POo9cLvLQ → 55Oo1FQxj9HIxB7QE1XWG}/_buildManifest.js +0 -0
  462. /package/dist/web/_next/static/{hFRLMLaLieW6POo9cLvLQ → 55Oo1FQxj9HIxB7QE1XWG}/_ssgManifest.js +0 -0
  463. /package/dist/web/_next/static/chunks/{1311.8c6b8930e22ceea0.js → 6153.8c6b8930e22ceea0.js} +0 -0
  464. /package/dist/web/_next/static/chunks/{3692.8c6b8930e22ceea0.js → 8534.8c6b8930e22ceea0.js} +0 -0
@@ -1 +1 @@
1
- "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2038],{82038:(e,t,a)=>{a.r(t),a.d(t,{default:()=>o});let o={common:{statusIdle:"Idle",statusWorking:"Working",statusBlocked:"Needs input",statusDone:"Your turn",loading:"Загрузка...",cancel:"Отмена",confirm:"Подтвердить",save:"Сохранить",delete:"Удалить",close:"Закрыть",back:"Назад",edit:"Редактировать",rename:"Переименовать",remove:"Убрать",open:"Открыть",yes:"Да",no:"Нет",ok:"ОК",error:"Ошибка",success:"Успешно",failed:"Не удалось",retry:"Повторить",refresh:"Обновить",clipboard:"Clipboard",clipboardCopy:"Copy",clipboardEmpty:"Clipboard is empty",search:"Поиск",create:"Создать",new:"Новый",add:"Добавить",copy:"Копировать",copied:"Скопировано",download:"Скачать",upload:"Загрузить",enabled:"Включено",disabled:"Отключено",on:"вкл",off:"выкл",minute:"мин",hour:"ч",day:"д",minutesAgo:"{n} мин назад",hoursAgo:"{n} ч назад",daysAgo:"{n} д назад"},login:{tagline:"Доступ к терминалу из любого места",heroLine1:"Any machine.",heroLine2:"One terminal.",heroLine3:"In your pocket.",featureTerminal:"Terminal",featureDesktop:"Desktop",featureFiles:"Files",termConnected:"host connected",termTunnel:"tunnel established",termReady:"ready",accessKey:"Ключ доступа",placeholder:"sk-xxx... или одноразовый ключ (ABC123)",rememberKey:"Запомнить этот ключ",connect:"Подключиться",connecting:"Подключение...",authenticating:"Аутентификация по токену...",invalidKeyTail:"Wrong access key — check the last characters and try again.",scanQr:"Scan QR to login",qrScanTitle:"Scan QR Code",qrHint:"Point the camera at the QR code shown on the machine running 9Remote.",qrDetected:"QR Code detected!",qrAuthenticating:"Authenticating...",qrPleaseWait:"Please wait...",qrLibFail:"Failed to load the QR scanner library.",qrInitFail:"Could not start the scanner.",qrCamDenied:"Camera permission denied. Allow camera access and try again.",qrNoCamera:"No camera found on this device.",qrCamBusy:"Camera is in use by another app.",qrCamError:"Could not open the camera.",savedKeys:"Сохранённые ключи",login:"Войти",lastLogin:"Последний вход",namePlaceholder:"Name this key (optional)",rename:"Rename",deleteKeyTitle:"Delete key",deleteKeyConfirm:'Are you sure you want to delete "{name}"?',justNow:"Только что",minutesAgo:"{n} мин назад",hoursAgo:"{n} ч назад",daysAgo:"{n} д назад",tapToScan:"Нажмите, чтобы сканировать",orEnterManually:"или введите ключ вручную",addKey:"Add Key",secureTitle:"Secure & Encrypted",secureDesc:"All connections are end-to-end encrypted and secure.",featAccessTitle:"Access Anywhere",featAccessDesc:"Connect from any device, anywhere.",featSecureTitle:"Secure Connection",featSecureDesc:"End-to-end encryption keeps you safe.",featFastTitle:"Fast & Reliable",featFastDesc:"Low latency and high performance.",featSessionsTitle:"Multiple Sessions",featSessionsDesc:"Manage and switch between sessions.",home:"Главная",docs:"Документация"},menu:{reloadRestart:"Reload & Restart",restartHost:"Restart 9remote host",restartConfirmTitle:"Restart 9remote host?",restartConfirmMessage:"This restarts the host process (no reinstall). Terminal sessions are preserved. It takes a few seconds.",restartStarting:"Restarting host…",restartRestarting:"Restarting 9remote…",restartDone:"Restarted! Reconnecting…",restartTimeout:"Restart is taking too long",restartTimeoutHint:"Reconnect manually if it doesn't recover.",title:"Меню",language:"Язык",theme:"Тема",notifications:"Уведомления",webgl:"GPU Render (Faster)",webglHint:"Отключите, если текст выглядит неправильно",notificationsHint:"Notify when agent finishes",orientation:"Ориентация экрана",orientationPortrait:"Вертикально",orientationAuto:"Авто",files:"File Explorer",downloading:"Downloading",copying:"Copying",conflictTitle:"File already exists",conflictMessage:"{name} already exists. Replace or skip?",skip:"Skip",skipAll:"Skip all",replace:"Replace",replaceAll:"Replace all",sites:"Сайты",commandNotes:"Заметки команд",community:"Сообщество",installApp:"Установить приложение",codespace:"Codespace",logout:"Выйти",settingsGeneral:"General",settingsAppearance:"Appearance",settingsTerminalTab:"Terminal",settingsMcp:"Plugins",mcpIntro:"Extra abilities you can give your AI coding tools.",mcpTools:"Allow",mcpRestartHint:"Turning it off applies at once. Turning it on needs the AI tool restarted.",mcpUnavailable:"Update this host to use MCP.",artifactFormats:"Formats it can show",mcpClients:"Works with",settingsWorkspace:"Workspace",settingsApplication:"Application",settingsAccount:"Account",themeLight:"Light",themeDark:"Dark",reload:"Перезагрузить приложение",remoteDesktop:"Удалённый рабочий стол",settings:"Настройки",enablePush:"Включить push-уведомления",disablePush:"Отключить push-уведомления",pushHint:"Включите push-уведомления, чтобы получать оповещения о завершении задач ИИ",pushActiveHint:"Push notifications are on for this device. You'll be alerted when AI completes tasks.",versionMismatch:"Агент {version} устарел",versionMismatchHint:"Некоторые функции могут не работать. Запустите:",updateNow:"Update now",updating:"Updating… reconnecting",webReloadTitle:"New web version available",webReloadHint:"Reload to get the latest interface.",reloadWeb:"Reload",updateAvailableTitle:"9Remote host update available",updateStarting:"Starting update…",updateInstalling:"Installing new version…",updateTimeout:"Update is taking too long",updateTimeoutHint:"Reload manually if it doesn't recover.",updateRestarting:"Restarting host…",updateReconnecting:"Reconnecting…",updateDone:"Updated! Reloading…",version:"Версия"},workspace:{loading:"Загрузка...",logoutTitle:"Выход",logoutMessage:"Вы уверены, что хотите выйти?",failedCreateSession:"Не удалось создать сессию: {error}",failedRenameSession:"Не удалось переименовать сессию: {error}"},sessions:{headerTitle:"9remote.cc",connected:"Подключено",disconnected:"Отключено",codespaceStopped:"Codespace остановлен",placeholder:"Имя терминала (необязательно)",newButton:"+ Новый",empty:"Нет активных сессий",emptyHint:"Создайте новую сессию, чтобы начать",created:"Создано {time}",deleteTitle:"Удалить сессию",deleteMessage:'Вы уверены, что хотите удалить "{name}"?',editName:"Изменить имя",newTerminal:"Новый терминал",options:"Options"},workspaces:{title:"Groups",newWorkspace:"Group",newWorkspacePrompt:"Group name",defaultName:"New Group",ungrouped:"Ungrouped",addTerminal:"Add terminal to group",moveToWorkspace:"Move to group",rename:"Rename group",delete:"Delete group",emptyWorkspace:"No terminals in this group",deleteTitle:"Delete Group",deleteMessage:'Delete group "{name}"? Terminals move to Ungrouped.'},terminal:{quotaNoData:"No quota data",quotaUsageTitle:"usage",back:"Назад",menu:"Меню",newTerminal:"Новый терминал",remoteDesktop:"Удалённый рабочий стол",defaultName:"Терм"},files:{selectWorkspace:"Выбрать рабочую область",recentWorkspaces:"Недавние рабочие области",home:"Главная",root:"Корень",drive:"Диск {letter}",codespaces:"Codespaces",removeRecent:"Убрать из недавних",removeTitle:"Убрать рабочую область",removeMessage:'Убрать "{name}" из недавних рабочих областей?',setAsWorkspace:"Сделать рабочей областью",openFolder:"Открыть папку",newFile:"Новый файл",newFolder:"Новая папка",rename:"Переименовать",delete:"Удалить",deleteFile:"Удалить файл",deleteFolder:"Удалить папку",deleteFileMessage:'Удалить "{name}"?',deleteFolderMessage:'Удалить папку "{name}" и всё её содержимое?',emptyFolder:"Пустая папка",git:"Git",parent:"Родительская папка",workspace:"Рабочая область",failedLoad:"Не удалось загрузить: {error}",failedDelete:"Не удалось удалить: {error}",failedCreate:"Не удалось создать: {error}",failedRename:"Не удалось переименовать: {error}",enterName:"Введите имя",confirmRename:"Переименовать в:",setWorkspace:"Установить рабочую область",setAsWorkspaceTitle:"Сделать рабочей областью",switchWorkspace:"Сменить рабочую область",searchFiles:"Поиск файлов",toggleHidden:"Показать/скрыть скрытые файлы",searchPlaceholder:"Поиск файлов...",searching:"Поиск...",noFilesFound:"Файлы не найдены",noGitRepo:"Нет Git-репозитория",cannotOpenBinary:"Невозможно открыть бинарный файл",createNew:"Создать",file:"Файл",folder:"Папка",placeholderFile:"filename.js",placeholderFolder:"folder-name",pickFile:"Choose files",pickFolder:"Choose folder",copyPath:"Копировать путь",copyRelPath:"Copy Relative Path",copyName:"Copy Filename",delete:"Удалить",rename:"Переименовать",deleteConfirmTitle:"Удалить",deleteConfirmMessage:'Удалить "{name}"?'},editor:{save:"Сохранить",saving:"Сохранение...",saved:"Сохранено",unsaved:"Несохранённые изменения",close:"Закрыть",discard:"Отменить",discardTitle:"Отменить изменения",discardMessage:"У вас есть несохранённые изменения. Отменить их?",unsavedTitle:"Save changes to {name}?",unsavedBody:"Your changes will be lost if you don't save them.",failedLoad:"Не удалось загрузить файл: {error}",failedSave:"Не удалось сохранить: {error}",openFull:"Open in full editor",artifact:"Artifact",readOnly:"Только чтение",line:"Строка",column:"Столбец",gitDiff:"Git Diff",typeText:"Введите текст и вставьте...",insert:"Вставить",statusModified:"Изменён",statusAdded:"Добавлен",statusUntracked:"Не отслеживается"},git:{title:"Git",branch:"Ветка",changes:"Изменения",staged:"Подготовлено",unstaged:"Не подготовлено",untracked:"Не отслеживается",commit:"Коммит",commitAndPush:"Commit & Push",commitSuccess:"Commit successful",pushSuccess:"Push successful",stageFailed:"Failed to stage changes",commitFailed:"Commit failed",pushFailed:"Push failed",pullSuccess:"Pull successful",pullFailed:"Pull failed",stageAllConfirmTitle:"Stage All & Commit",stageAllConfirmMessage:"No changes are staged. Stage all changes and commit?",stageAndCommit:"Stage & Commit",gitActions:"Git actions",commitPlaceholder:"Commit message…",stageAllNote:"Stage all \xb7 {count}",upToDate:"Everything up-to-date",commitMessage:"Сообщение коммита",push:"Push",pull:"Pull",fetch:"Fetch",stage:"Подготовить",stageAll:"Подготовить всё",unstage:"Убрать из подготовленных",discard:"Отменить",discardChanges:"Отменить изменения",discardMessage:'Отменить изменения в "{name}"?',noChanges:"Нет изменений",diff:"Diff",pushing:"Push...",pulling:"Pull...",committing:"Создание коммита...",failedCommit:"Не удалось создать коммит: {error}",failedPush:"Не удалось выполнить push: {error}",failedPull:"Не удалось выполнить pull: {error}",status:"Статус",diffTab:"Diff",modified:"Изменён",added:"Добавлен",deleted:"Удалён",untrackedTitle:"Не отслеживается",openFile:"Открыть файл",discardChangesTitle:"Отменить изменения",discardConfirmTitle:"Отменить изменения",discardConfirmDelete:'Вы уверены, что хотите удалить "{name}"? Это нельзя отменить.',discardConfirmDiscard:'Вы уверены, что хотите отменить изменения в "{name}"? Это нельзя отменить.'},remote:{title:"Удалённый рабочий стол",connecting:"Подключение...",disconnected:"Отключено",fullscreen:"Полный экран",exitFullscreen:"Выйти из полного экрана",receivingImage:"Receiving screen…",keyboard:"Клавиатура",mouse:"Мышь",quality:"Качество",fps:"FPS",debug:"Отладка",help:"Помощь",close:"Закрыть",sendKey:"Отправить клавишу",helpTitle:"Помощь по удалённому рабочему столу",notAvailable:"Удалённый рабочий стол недоступен",customizeKeys:"Настроить клавиши",back:"Назад",resetZoom:"Сбросить масштаб",refresh:"Обновить",rectangleSelection:"Прямоугольное выделение",handMode:"Режим руки",toggleKeyboard:"Переключить системную клавиатуру",hideControls:"Hide controls",showControls:"Show controls",textBatchInput:"Пакетный ввод текста",extraKeys:"Дополнительные клавиши",customizeRemoteKeys:"Настроить удалённые клавиши",exitRemote:"Выйти из удалённого рабочего стола",debugTitle:"Статистика отладки",minimize:"Свернуть",transport:"Транспорт",latency:"Задержка",tilesPerSec:"Тайлов/сек",bandwidth:"Пропускная способность",clearStats:"Очистить статистику",lockTitle:"Windows заблокирована",lockGrantDesc:"Включите \xabУдалённая разблокировка ПК\xbb в 9remote host на этом ПК.",lockDesc:"Введите PIN-код или пароль Windows для этого компьютера",lockPlaceholder:"PIN-код или пароль Windows",unlock:"Разблокировать",unlocking:"Разблокировка…",unlockFailed:"Не удалось разблокировать — проверьте PIN-код/пароль и попробуйте снова."},remoteHelp:{modePc:"PC / Мышь",modeTrackpad:"Сенсор \xb7 Trackpad",modeDirect:"Сенсор \xb7 Прямой",mouseTitle:"Мышь",keyboardTitle:"Клавиатура",gesturesTrackpadTitle:"Жесты (Trackpad ✋)",gesturesDirectTitle:"Жесты (Прямой)",toolbarTitle:"Панель инструментов",mouseClickKey:"Клик / Перетаскивание",mouseClickDesc:"Левый клик, перетаскивание для выделения/перемещения",mouseRightKey:"Правый клик",mouseRightDesc:"Контекстное меню на удалённой стороне",mouseWheelKey:"Колёсико",mouseWheelDesc:"Прокрутка удалённой стороны (Shift + колёсико = горизонтально)",mouseDoubleKey:"Двойной клик",mouseDoubleDesc:"Двойной клик на удалённой стороне",keyPhysicalKey:"Физические клавиши",keyPhysicalDesc:"Отправляются напрямую (Tab, F-клавиши и т.д. перехватываются)",keyModifierKey:"Ctrl / Alt / Shift / ⌘",keyModifierDesc:"Залипающий модификатор — комбинируется со следующей клавишей",trackpadSwipeKey:"Свайп 1 пальцем",trackpadSwipeDesc:"Перемещение виртуального курсора",trackpadTapKey:"Касание 1 пальцем",trackpadTapDesc:"Левый клик в позиции курсора",trackpad2TapKey:"Касание 2 пальцами",trackpad2TapDesc:"Правый клик в позиции курсора",trackpad2SwipeKey:"Свайп 2 пальцами",trackpad2SwipeDesc:"Прокрутка в позиции курсора",trackpadPinchKey:"Щипок 2 пальцами",trackpadPinchDesc:"Масштабирование холста",trackpadScrollLockKey:"Удерживать + тянуть",trackpadScrollLockDesc:"Удерживайте для блокировки прокрутки, тяните в любом направлении",directTapKey:"Касание 1 пальцем",directTapDesc:"Клик в позиции касания",directLongKey:"Долгое нажатие 1 пальцем",directLongDesc:"Правый клик",directDoubleKey:"Двойное касание 1 пальцем",directDoubleDesc:"Двойной клик",directScrollKey:"Свайп 2 пальцами",directScrollDesc:"Прокрутка удалённой стороны",directPinchKey:"Щипок 2 пальцами",directPinchDesc:"Масштабирование холста",directPanKey:"Перетаскивание 1 пальцем (zoom>1)",directPanDesc:"Панорамирование холста",toolbarHandDesc:"Удерживать левый клик (режим перетаскивания) — нажмите ещё раз, чтобы отпустить",toolbarMouseDirectDesc:"Переключиться в прямой режим",toolbarMouseTrackpadDesc:"Переключиться на Trackpad (виртуальный курсор)",toolbarKeyboardDesc:"Системная клавиатура / пакетный ввод текста",toolbarRectDesc:"Режим прямоугольного выделения"},remoteControls:{enterToSend:"Tab / Ctrl+Num для переключения вкладок",typeToSend:"Введите текст для отправки...",send:"Отправить",trackpadMode:"Режим Trackpad",directMode:"Прямой режим",bottomRow:"Нижний ряд",extraPanel:"Дополнительная панель",exitConfirmMessage:"Вы уверены, что хотите выйти из текущей сессии удалённого рабочего стола?"},connection:{retrying:"Переподключение...",waitingApproval:"Ожидание подтверждения",approvalDescription:"9Remote host должен подтвердить это устройство, прежде чем вы сможете подключиться.",approvalHint:"Проверьте терминал на вашей машине.",rejectedTitle:"Устройство отклонено",rejectedDescription:"Это устройство не было подтверждено 9Remote host.",backToLogin:"Вернуться к входу",failed:"Ошибка подключения",failedDescription:"Не удалось подключиться после {n} попыток",attemptOf:"Попытка {n} из {total}",exit:"Выйти",cancel:"Отмена",retry:"Повторить сейчас"},notifications:{claudeCode:"Claude Code",codex:"Codex",geminiCli:"Gemini CLI",openCode:"OpenCode",needsInput:"needs input",badgeTitle:"{blocked} needs input, {done} your turn",replied:"replied",agent:"Agent"},sites:{title:"Сайты",localSites:"Локальные сайты",selectSitePreview:"Выберите сайт для предпросмотра",browserNewTab:"New tab",browserAddressPlaceholder:"localhost:3000 or /path",browserNotConnected:"Connect to your host first",portPlaceholder:"порт",loadingSites:"Загрузка сайтов...",notConnected:"Not connected to the host",noSitesFound:"Сайты не найдены",startServerHint:"Запустите локальный dev-сервер, чтобы увидеть его здесь",siteNamePlaceholder:"Имя сайта",saveTitle:"Сохранить",editNameTitle:"Изменить имя",removeTitle:"Убрать",removePortTitle:"Убрать порт",removePortMessage:"Убрать порт {port} из сохранённого списка?",popupBlocked:"Всплывающее окно заблокировано! Разрешите всплывающие окна для этого сайта.",startProxyFailed:"Не удалось запустить прокси-сессию для {name}",foundCount:"Найдено сайтов: {n}{suffix}",focusOpenedTab:"Сфокусировать открытую вкладку",openInNewTab:"Открыть в новой вкладке",goBack:"Назад",goForward:"Вперёд",loadingSite:"Загрузка...",empty:"Нет активных сайтов",emptyHint:"Запустите локальный сервер, чтобы увидеть его здесь",open:"Открыть",refresh:"Обновить"},commandNotes:{title:"Заметки команд",noSavedCommands:"Нет сохранённых команд",addFirstBelow:"Добавьте свою первую команду ниже",clickToCopy:"Нажмите, чтобы скопировать",copiedBang:"Скопировано!",copy:"Копировать",edit:"Редактировать",delete:"Удалить",editCommandPlaceholder:"Редактировать команду...",addCommandPlaceholder:"Добавить команду...",update:"Обновить",add:"Добавить",empty:"Заметок пока нет",emptyHint:"Сохраняйте команды для быстрого доступа",add:"Добавить заметку",edit:"Редактировать заметку",delete:"Удалить заметку",deleteMessage:"Удалить эту заметку?",name:"Имя",command:"Команда",save:"Сохранить",placeholderName:"напр. Запустить dev-сервер",placeholderCommand:"напр. npm run dev"},mobileKeyboard:{pasteHere:"Вставьте здесь (Cmd+V)",enterToSend:"Tab / Ctrl+Num для переключения вкладок",typeCommand:"Введите команду и отправьте...",send:"Отправить",toggleExtraKeys:"Переключить дополнительные клавиши",toggleTextInput:"Переключить ввод текста",customizeTerminalKeys:"Настроить клавиши терминала",mainBar:"Основная панель",extraPanel:"Дополнительная панель",fileTooLarge:"Файл слишком большой (макс. 5 МБ)",readFileFailed:"Не удалось прочитать файл",uploadFailed:"Не удалось загрузить файл: {error}"},terminalPane:{scrollToBottom:"Прокрутить вниз",changedFiles:"Changed files",pasteOrType:"Вставьте или введите здесь",paste:"Вставить"},pwaGuide:{copyYourKey:"Скопируйте ваш ключ",copyKeyHint:"Нажмите на ключ ниже, чтобы скопировать — он понадобится для входа после установки",tapToCopyApiKey:"Нажмите, чтобы скопировать API-ключ",copiedBang:"Скопировано!",copy:"Копировать",tapShareButton:"Нажмите кнопку \xabПоделиться\xbb",tapShareHint:"Нажмите кнопку \xabПоделиться\xbb внизу iOS Safari",addToHome:"Добавить на главный экран",addToHomeHint:"Прокрутите вниз и нажмите \xabНа экран Домой\xbb",openAppPasteKey:"Откройте приложение и вставьте ключ",openAppPasteKeyHint:"Откройте установленное приложение и вставьте ключ для входа",openMenu:"Откройте меню",openMenuHint:"Нажмите кнопку меню (три точки) в Android Chrome",installApp:"Установить приложение",installAppHint:"Нажмите \xabУстановить приложение\xbb или \xabДобавить на главный экран\xbb",lookInstallIcon:"Найдите значок установки",lookInstallIconHint:"Найдите значок установки в адресной строке",clickInstallPaste:"Нажмите \xabУстановить\xbb и вставьте ключ",installNow:"Install Now",installNowHint:"Install 9Remote as an app for quick access",installing:"Installing...",clickInstallPasteHint:"Нажмите \xabУстановить\xbb, откройте приложение и вставьте ключ для входа",alternativeHint:"Альтернатива: откройте меню браузера → \xabУстановить 9Remote\xbb или \xabСоздать ярлык\xbb",loadingPlatform:"Определение платформы...",iosPlatform:"iOS (iPhone/iPad)",androidPlatform:"Android",macosPlatform:"macOS",windowsPlatform:"Windows",desktopPlatform:"Десктоп",alreadyInstalled:"Уже установлено!",alreadyInstalledHint:"Вы уже используете 9Remote как установленное приложение",installationGuide:"Инструкция по установке",installationSteps:"Шаги установки:"},community:{title:"Сообщество",description:"Присоединяйтесь к сообществу 9Remote"},pwa:{title:"Установить как приложение",description:"Установите 9Remote на ваше устройство для лучшего опыта",iosTitle:"iOS Safari",androidTitle:"Android Chrome",desktopTitle:"Десктоп"},codespace:{title:"Codespace",name:"Имя",status:"Статус",running:"Работает",autoStart:"Автозапуск 9Remote",autoStartHint:"Запускать 9Remote при открытии Codespace",stop:"Остановить Codespace",stopHint:"Остановите, чтобы сэкономить использование",restartHint:"Чтобы перезапустить, перейдите на GitHub",unknown:"Неизвестно"}}}}]);
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7812],{37812:(e,t,a)=>{a.r(t),a.d(t,{default:()=>o});let o={common:{statusIdle:"Idle",statusWorking:"Working",statusBlocked:"Needs input",statusDone:"Your turn",loading:"Загрузка...",cancel:"Отмена",confirm:"Подтвердить",save:"Сохранить",delete:"Удалить",close:"Закрыть",back:"Назад",edit:"Редактировать",rename:"Переименовать",remove:"Убрать",open:"Открыть",yes:"Да",no:"Нет",ok:"ОК",error:"Ошибка",success:"Успешно",failed:"Не удалось",retry:"Повторить",refresh:"Обновить",clipboard:"Clipboard",clipboardCopy:"Copy",clipboardEmpty:"Clipboard is empty",search:"Поиск",create:"Создать",new:"Новый",add:"Добавить",copy:"Копировать",copied:"Скопировано",download:"Скачать",upload:"Загрузить",enabled:"Включено",disabled:"Отключено",on:"вкл",off:"выкл",minute:"мин",hour:"ч",day:"д",minutesAgo:"{n} мин назад",hoursAgo:"{n} ч назад",daysAgo:"{n} д назад"},login:{tagline:"Доступ к терминалу из любого места",heroLine1:"Any machine.",heroLine2:"One terminal.",heroLine3:"In your pocket.",featureTerminal:"Terminal",featureDesktop:"Desktop",featureFiles:"Files",termConnected:"host connected",termTunnel:"tunnel established",termReady:"ready",accessKey:"Ключ доступа",placeholder:"sk-xxx... или одноразовый ключ (ABC123)",rememberKey:"Запомнить этот ключ",connect:"Подключиться",connecting:"Подключение...",authenticating:"Аутентификация по токену...",invalidKeyTail:"Wrong access key — check the last characters and try again.",scanQr:"Scan QR to login",qrScanTitle:"Scan QR Code",qrHint:"Point the camera at the QR code shown on the machine running 9Remote.",qrDetected:"QR Code detected!",qrAuthenticating:"Authenticating...",qrPleaseWait:"Please wait...",qrLibFail:"Failed to load the QR scanner library.",qrInitFail:"Could not start the scanner.",qrCamDenied:"Camera permission denied. Allow camera access and try again.",qrNoCamera:"No camera found on this device.",qrCamBusy:"Camera is in use by another app.",qrCamError:"Could not open the camera.",savedKeys:"Сохранённые ключи",login:"Войти",lastLogin:"Последний вход",namePlaceholder:"Name this key (optional)",rename:"Rename",deleteKeyTitle:"Delete key",deleteKeyConfirm:'Are you sure you want to delete "{name}"?',justNow:"Только что",minutesAgo:"{n} мин назад",hoursAgo:"{n} ч назад",daysAgo:"{n} д назад",tapToScan:"Нажмите, чтобы сканировать",orEnterManually:"или введите ключ вручную",addKey:"Add Key",secureTitle:"Secure & Encrypted",secureDesc:"All connections are end-to-end encrypted and secure.",featAccessTitle:"Access Anywhere",featAccessDesc:"Connect from any device, anywhere.",featSecureTitle:"Secure Connection",featSecureDesc:"End-to-end encryption keeps you safe.",featFastTitle:"Fast & Reliable",featFastDesc:"Low latency and high performance.",featSessionsTitle:"Multiple Sessions",featSessionsDesc:"Manage and switch between sessions.",home:"Главная",docs:"Документация"},menu:{reloadRestart:"Reload & Restart",restartHost:"Restart 9remote host",restartConfirmTitle:"Restart 9remote host?",restartConfirmMessage:"This restarts the host process (no reinstall). Terminal sessions are preserved. It takes a few seconds.",restartStarting:"Restarting host…",restartRestarting:"Restarting 9remote…",restartDone:"Restarted! Reconnecting…",restartTimeout:"Restart is taking too long",restartTimeoutHint:"Reconnect manually if it doesn't recover.",title:"Меню",language:"Язык",theme:"Тема",notifications:"Уведомления",webgl:"GPU Render (Faster)",webglHint:"Отключите, если текст выглядит неправильно",notificationsHint:"Notify when agent finishes",orientation:"Ориентация экрана",orientationPortrait:"Вертикально",orientationAuto:"Авто",files:"File Explorer",downloading:"Downloading",copying:"Copying",conflictTitle:"File already exists",conflictMessage:"{name} already exists. Replace or skip?",skip:"Skip",skipAll:"Skip all",replace:"Replace",replaceAll:"Replace all",sites:"Сайты",commandNotes:"Заметки команд",community:"Сообщество",installApp:"Установить приложение",codespace:"Codespace",logout:"Выйти",settingsGeneral:"General",settingsAppearance:"Appearance",settingsTerminalTab:"Terminal",settingsMcp:"Plugins",mcpIntro:"Extra abilities you can give your AI coding tools.",mcpTools:"Allow",mcpRestartHint:"Turning it off applies at once. Turning it on needs the AI tool restarted.",mcpUnavailable:"Update this host to use MCP.",artifactFormats:"Formats it can show",mcpClients:"Works with",settingsWorkspace:"Workspace",settingsApplication:"Application",settingsAccount:"Account",themeLight:"Light",themeDark:"Dark",reload:"Перезагрузить приложение",remoteDesktop:"Удалённый рабочий стол",settings:"Настройки",enablePush:"Включить push-уведомления",disablePush:"Отключить push-уведомления",pushHint:"Включите push-уведомления, чтобы получать оповещения о завершении задач ИИ",pushActiveHint:"Push notifications are on for this device. You'll be alerted when AI completes tasks.",versionMismatch:"Агент {version} устарел",versionMismatchHint:"Некоторые функции могут не работать. Запустите:",updateNow:"Update now",updating:"Updating… reconnecting",webReloadTitle:"New web version available",webReloadHint:"Reload to get the latest interface.",reloadWeb:"Reload",updateAvailableTitle:"9Remote host update available",updateStarting:"Starting update…",updateInstalling:"Installing new version…",updateTimeout:"Update is taking too long",updateTimeoutHint:"Reload manually if it doesn't recover.",updateRestarting:"Restarting host…",updateReconnecting:"Reconnecting…",updateDone:"Updated! Reloading…",version:"Версия"},workspace:{loading:"Загрузка...",logoutTitle:"Выход",logoutMessage:"Вы уверены, что хотите выйти?",failedCreateSession:"Не удалось создать сессию: {error}",failedRenameSession:"Не удалось переименовать сессию: {error}"},sessions:{headerTitle:"9remote.cc",connected:"Подключено",disconnected:"Отключено",codespaceStopped:"Codespace остановлен",placeholder:"Имя терминала (необязательно)",newButton:"+ Новый",empty:"Нет активных сессий",emptyHint:"Создайте новую сессию, чтобы начать",created:"Создано {time}",deleteTitle:"Удалить сессию",deleteMessage:'Вы уверены, что хотите удалить "{name}"?',editName:"Изменить имя",newTerminal:"Новый терминал",options:"Options"},workspaces:{title:"Groups",newWorkspace:"Group",newWorkspacePrompt:"Group name",defaultName:"New Group",ungrouped:"Ungrouped",addTerminal:"Add terminal to group",moveToWorkspace:"Move to group",rename:"Rename group",delete:"Delete group",emptyWorkspace:"No terminals in this group",deleteTitle:"Delete Group",deleteMessage:'Delete group "{name}"? Terminals move to Ungrouped.'},terminal:{quotaNoData:"No quota data",quotaUsageTitle:"usage",back:"Назад",menu:"Меню",newTerminal:"Новый терминал",remoteDesktop:"Удалённый рабочий стол",defaultName:"Терм"},files:{selectWorkspace:"Выбрать рабочую область",recentWorkspaces:"Недавние рабочие области",home:"Главная",root:"Корень",drive:"Диск {letter}",codespaces:"Codespaces",removeRecent:"Убрать из недавних",removeTitle:"Убрать рабочую область",removeMessage:'Убрать "{name}" из недавних рабочих областей?',setAsWorkspace:"Сделать рабочей областью",openFolder:"Открыть папку",newFile:"Новый файл",newFolder:"Новая папка",rename:"Переименовать",delete:"Удалить",deleteFile:"Удалить файл",deleteFolder:"Удалить папку",deleteFileMessage:'Удалить "{name}"?',deleteFolderMessage:'Удалить папку "{name}" и всё её содержимое?',emptyFolder:"Пустая папка",git:"Git",parent:"Родительская папка",workspace:"Рабочая область",failedLoad:"Не удалось загрузить: {error}",failedDelete:"Не удалось удалить: {error}",failedCreate:"Не удалось создать: {error}",failedRename:"Не удалось переименовать: {error}",enterName:"Введите имя",confirmRename:"Переименовать в:",setWorkspace:"Установить рабочую область",setAsWorkspaceTitle:"Сделать рабочей областью",switchWorkspace:"Сменить рабочую область",searchFiles:"Поиск файлов",toggleHidden:"Показать/скрыть скрытые файлы",searchPlaceholder:"Поиск файлов...",searching:"Поиск...",noFilesFound:"Файлы не найдены",noGitRepo:"Нет Git-репозитория",cannotOpenBinary:"Невозможно открыть бинарный файл",createNew:"Создать",file:"Файл",folder:"Папка",placeholderFile:"filename.js",placeholderFolder:"folder-name",pickFile:"Choose files",pickFolder:"Choose folder",copyPath:"Копировать путь",copyRelPath:"Copy Relative Path",copyName:"Copy Filename",delete:"Удалить",rename:"Переименовать",deleteConfirmTitle:"Удалить",deleteConfirmMessage:'Удалить "{name}"?'},editor:{save:"Сохранить",saving:"Сохранение...",saved:"Сохранено",unsaved:"Несохранённые изменения",close:"Закрыть",discard:"Отменить",discardTitle:"Отменить изменения",discardMessage:"У вас есть несохранённые изменения. Отменить их?",unsavedTitle:"Save changes to {name}?",unsavedBody:"Your changes will be lost if you don't save them.",failedLoad:"Не удалось загрузить файл: {error}",failedSave:"Не удалось сохранить: {error}",openFull:"Open in full editor",artifact:"Artifact",readOnly:"Только чтение",line:"Строка",column:"Столбец",gitDiff:"Git Diff",typeText:"Введите текст и вставьте...",insert:"Вставить",statusModified:"Изменён",statusAdded:"Добавлен",statusUntracked:"Не отслеживается"},git:{title:"Git",branch:"Ветка",changes:"Изменения",staged:"Подготовлено",unstaged:"Не подготовлено",untracked:"Не отслеживается",commit:"Коммит",commitAndPush:"Commit & Push",commitSuccess:"Commit successful",pushSuccess:"Push successful",stageFailed:"Failed to stage changes",commitFailed:"Commit failed",pushFailed:"Push failed",pullSuccess:"Pull successful",pullFailed:"Pull failed",stageAllConfirmTitle:"Stage All & Commit",stageAllConfirmMessage:"No changes are staged. Stage all changes and commit?",stageAndCommit:"Stage & Commit",gitActions:"Git actions",commitPlaceholder:"Commit message…",stageAllNote:"Stage all \xb7 {count}",upToDate:"Everything up-to-date",commitMessage:"Сообщение коммита",push:"Push",pull:"Pull",fetch:"Fetch",stage:"Подготовить",stageAll:"Подготовить всё",unstage:"Убрать из подготовленных",discard:"Отменить",discardChanges:"Отменить изменения",discardMessage:'Отменить изменения в "{name}"?',noChanges:"Нет изменений",diff:"Diff",pushing:"Push...",pulling:"Pull...",committing:"Создание коммита...",failedCommit:"Не удалось создать коммит: {error}",failedPush:"Не удалось выполнить push: {error}",failedPull:"Не удалось выполнить pull: {error}",status:"Статус",diffTab:"Diff",modified:"Изменён",added:"Добавлен",deleted:"Удалён",untrackedTitle:"Не отслеживается",openFile:"Открыть файл",discardChangesTitle:"Отменить изменения",discardConfirmTitle:"Отменить изменения",discardConfirmDelete:'Вы уверены, что хотите удалить "{name}"? Это нельзя отменить.',discardConfirmDiscard:'Вы уверены, что хотите отменить изменения в "{name}"? Это нельзя отменить.'},remote:{title:"Удалённый рабочий стол",connecting:"Подключение...",disconnected:"Отключено",fullscreen:"Полный экран",exitFullscreen:"Выйти из полного экрана",receivingImage:"Receiving screen…",keyboard:"Клавиатура",mouse:"Мышь",quality:"Качество",fps:"FPS",debug:"Отладка",help:"Помощь",close:"Закрыть",sendKey:"Отправить клавишу",helpTitle:"Помощь по удалённому рабочему столу",notAvailable:"Удалённый рабочий стол недоступен",customizeKeys:"Настроить клавиши",back:"Назад",resetZoom:"Сбросить масштаб",refresh:"Обновить",rectangleSelection:"Прямоугольное выделение",handMode:"Режим руки",toggleKeyboard:"Переключить системную клавиатуру",hideControls:"Hide controls",showControls:"Show controls",textBatchInput:"Пакетный ввод текста",extraKeys:"Дополнительные клавиши",customizeRemoteKeys:"Настроить удалённые клавиши",exitRemote:"Выйти из удалённого рабочего стола",debugTitle:"Статистика отладки",minimize:"Свернуть",transport:"Транспорт",latency:"Задержка",tilesPerSec:"Тайлов/сек",bandwidth:"Пропускная способность",clearStats:"Очистить статистику",lockTitle:"Windows заблокирована",lockGrantDesc:"Включите \xabУдалённая разблокировка ПК\xbb в 9remote host на этом ПК.",lockDesc:"Введите PIN-код или пароль Windows для этого компьютера",lockPlaceholder:"PIN-код или пароль Windows",unlock:"Разблокировать",unlocking:"Разблокировка…",unlockFailed:"Не удалось разблокировать — проверьте PIN-код/пароль и попробуйте снова."},remoteHelp:{modePc:"PC / Мышь",modeTrackpad:"Сенсор \xb7 Trackpad",modeDirect:"Сенсор \xb7 Прямой",mouseTitle:"Мышь",keyboardTitle:"Клавиатура",gesturesTrackpadTitle:"Жесты (Trackpad ✋)",gesturesDirectTitle:"Жесты (Прямой)",toolbarTitle:"Панель инструментов",mouseClickKey:"Клик / Перетаскивание",mouseClickDesc:"Левый клик, перетаскивание для выделения/перемещения",mouseRightKey:"Правый клик",mouseRightDesc:"Контекстное меню на удалённой стороне",mouseWheelKey:"Колёсико",mouseWheelDesc:"Прокрутка удалённой стороны (Shift + колёсико = горизонтально)",mouseDoubleKey:"Двойной клик",mouseDoubleDesc:"Двойной клик на удалённой стороне",keyPhysicalKey:"Физические клавиши",keyPhysicalDesc:"Отправляются напрямую (Tab, F-клавиши и т.д. перехватываются)",keyModifierKey:"Ctrl / Alt / Shift / ⌘",keyModifierDesc:"Залипающий модификатор — комбинируется со следующей клавишей",trackpadSwipeKey:"Свайп 1 пальцем",trackpadSwipeDesc:"Перемещение виртуального курсора",trackpadTapKey:"Касание 1 пальцем",trackpadTapDesc:"Левый клик в позиции курсора",trackpad2TapKey:"Касание 2 пальцами",trackpad2TapDesc:"Правый клик в позиции курсора",trackpad2SwipeKey:"Свайп 2 пальцами",trackpad2SwipeDesc:"Прокрутка в позиции курсора",trackpadPinchKey:"Щипок 2 пальцами",trackpadPinchDesc:"Масштабирование холста",trackpadScrollLockKey:"Удерживать + тянуть",trackpadScrollLockDesc:"Удерживайте для блокировки прокрутки, тяните в любом направлении",directTapKey:"Касание 1 пальцем",directTapDesc:"Клик в позиции касания",directLongKey:"Долгое нажатие 1 пальцем",directLongDesc:"Правый клик",directDoubleKey:"Двойное касание 1 пальцем",directDoubleDesc:"Двойной клик",directScrollKey:"Свайп 2 пальцами",directScrollDesc:"Прокрутка удалённой стороны",directPinchKey:"Щипок 2 пальцами",directPinchDesc:"Масштабирование холста",directPanKey:"Перетаскивание 1 пальцем (zoom>1)",directPanDesc:"Панорамирование холста",toolbarHandDesc:"Удерживать левый клик (режим перетаскивания) — нажмите ещё раз, чтобы отпустить",toolbarMouseDirectDesc:"Переключиться в прямой режим",toolbarMouseTrackpadDesc:"Переключиться на Trackpad (виртуальный курсор)",toolbarKeyboardDesc:"Системная клавиатура / пакетный ввод текста",toolbarRectDesc:"Режим прямоугольного выделения"},remoteControls:{enterToSend:"Tab / Ctrl+Num для переключения вкладок",typeToSend:"Введите текст для отправки...",send:"Отправить",trackpadMode:"Режим Trackpad",directMode:"Прямой режим",bottomRow:"Нижний ряд",extraPanel:"Дополнительная панель",exitConfirmMessage:"Вы уверены, что хотите выйти из текущей сессии удалённого рабочего стола?"},connection:{retrying:"Переподключение...",waitingApproval:"Ожидание подтверждения",approvalDescription:"9Remote host должен подтвердить это устройство, прежде чем вы сможете подключиться.",approvalHint:"Проверьте терминал на вашей машине.",rejectedTitle:"Устройство отклонено",rejectedDescription:"Это устройство не было подтверждено 9Remote host.",backToLogin:"Вернуться к входу",failed:"Ошибка подключения",failedDescription:"Не удалось подключиться после {n} попыток",attemptOf:"Попытка {n} из {total}",exit:"Выйти",cancel:"Отмена",retry:"Повторить сейчас"},notifications:{claudeCode:"Claude Code",codex:"Codex",geminiCli:"Gemini CLI",openCode:"OpenCode",needsInput:"needs input",badgeTitle:"{blocked} needs input, {done} your turn",replied:"replied",agent:"Agent"},sites:{title:"Сайты",localSites:"Локальные сайты",selectSitePreview:"Выберите сайт для предпросмотра",browserNewTab:"New tab",browserAddressPlaceholder:"localhost:3000 or /path",browserNotConnected:"Connect to your host first",portPlaceholder:"порт",loadingSites:"Загрузка сайтов...",notConnected:"Not connected to the host",noSitesFound:"Сайты не найдены",startServerHint:"Запустите локальный dev-сервер, чтобы увидеть его здесь",siteNamePlaceholder:"Имя сайта",saveTitle:"Сохранить",editNameTitle:"Изменить имя",removeTitle:"Убрать",removePortTitle:"Убрать порт",removePortMessage:"Убрать порт {port} из сохранённого списка?",popupBlocked:"Всплывающее окно заблокировано! Разрешите всплывающие окна для этого сайта.",startProxyFailed:"Не удалось запустить прокси-сессию для {name}",foundCount:"Найдено сайтов: {n}{suffix}",focusOpenedTab:"Сфокусировать открытую вкладку",openInNewTab:"Открыть в новой вкладке",goBack:"Назад",goForward:"Вперёд",loadingSite:"Загрузка...",empty:"Нет активных сайтов",emptyHint:"Запустите локальный сервер, чтобы увидеть его здесь",open:"Открыть",refresh:"Обновить"},commandNotes:{title:"Заметки команд",noSavedCommands:"Нет сохранённых команд",addFirstBelow:"Добавьте свою первую команду ниже",clickToCopy:"Нажмите, чтобы скопировать",copiedBang:"Скопировано!",copy:"Копировать",edit:"Редактировать",delete:"Удалить",editCommandPlaceholder:"Редактировать команду...",addCommandPlaceholder:"Добавить команду...",update:"Обновить",add:"Добавить",empty:"Заметок пока нет",emptyHint:"Сохраняйте команды для быстрого доступа",add:"Добавить заметку",edit:"Редактировать заметку",delete:"Удалить заметку",deleteMessage:"Удалить эту заметку?",name:"Имя",command:"Команда",save:"Сохранить",placeholderName:"напр. Запустить dev-сервер",placeholderCommand:"напр. npm run dev"},mobileKeyboard:{pasteHere:"Вставьте здесь (Cmd+V)",enterToSend:"Tab / Ctrl+Num для переключения вкладок",typeCommand:"Введите команду и отправьте...",send:"Отправить",toggleExtraKeys:"Переключить дополнительные клавиши",toggleTextInput:"Переключить ввод текста",customizeTerminalKeys:"Настроить клавиши терминала",mainBar:"Основная панель",extraPanel:"Дополнительная панель",fileTooLarge:"Файл слишком большой (макс. 5 МБ)",readFileFailed:"Не удалось прочитать файл",uploadFailed:"Не удалось загрузить файл: {error}"},terminalPane:{scrollToBottom:"Прокрутить вниз",changedFiles:"Changed files",pasteOrType:"Вставьте или введите здесь",paste:"Вставить"},pwaGuide:{copyYourKey:"Скопируйте ваш ключ",copyKeyHint:"Нажмите на ключ ниже, чтобы скопировать — он понадобится для входа после установки",tapToCopyApiKey:"Нажмите, чтобы скопировать API-ключ",copiedBang:"Скопировано!",copy:"Копировать",tapShareButton:"Нажмите кнопку \xabПоделиться\xbb",tapShareHint:"Нажмите кнопку \xabПоделиться\xbb внизу iOS Safari",addToHome:"Добавить на главный экран",addToHomeHint:"Прокрутите вниз и нажмите \xabНа экран Домой\xbb",openAppPasteKey:"Откройте приложение и вставьте ключ",openAppPasteKeyHint:"Откройте установленное приложение и вставьте ключ для входа",openMenu:"Откройте меню",openMenuHint:"Нажмите кнопку меню (три точки) в Android Chrome",installApp:"Установить приложение",installAppHint:"Нажмите \xabУстановить приложение\xbb или \xabДобавить на главный экран\xbb",lookInstallIcon:"Найдите значок установки",lookInstallIconHint:"Найдите значок установки в адресной строке",clickInstallPaste:"Нажмите \xabУстановить\xbb и вставьте ключ",installNow:"Install Now",installNowHint:"Install 9Remote as an app for quick access",installing:"Installing...",clickInstallPasteHint:"Нажмите \xabУстановить\xbb, откройте приложение и вставьте ключ для входа",alternativeHint:"Альтернатива: откройте меню браузера → \xabУстановить 9Remote\xbb или \xabСоздать ярлык\xbb",loadingPlatform:"Определение платформы...",iosPlatform:"iOS (iPhone/iPad)",androidPlatform:"Android",macosPlatform:"macOS",windowsPlatform:"Windows",desktopPlatform:"Десктоп",alreadyInstalled:"Уже установлено!",alreadyInstalledHint:"Вы уже используете 9Remote как установленное приложение",installationGuide:"Инструкция по установке",installationSteps:"Шаги установки:"},community:{title:"Сообщество",description:"Присоединяйтесь к сообществу 9Remote"},pwa:{title:"Установить как приложение",description:"Установите 9Remote на ваше устройство для лучшего опыта",iosTitle:"iOS Safari",androidTitle:"Android Chrome",desktopTitle:"Десктоп"},codespace:{title:"Codespace",name:"Имя",status:"Статус",running:"Работает",autoStart:"Автозапуск 9Remote",autoStartHint:"Запускать 9Remote при открытии Codespace",stop:"Остановить Codespace",stopHint:"Остановите, чтобы сэкономить использование",restartHint:"Чтобы перезапустить, перейдите на GitHub",unknown:"Неизвестно"}}}}]);
@@ -0,0 +1,104 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[804],{23583:(t,e,r)=>{function o(t,e){t.accDescr&&e.setAccDescription?.(t.accDescr),t.accTitle&&e.setAccTitle?.(t.accTitle),t.title&&e.setDiagramTitle?.(t.title)}r.d(e,{S:()=>o}),(0,r(63634).K)(o,"populateCommonDb")},38983:(t,e,r)=>{r.d(e,{m:()=>a});var o=r(63634),a=class{constructor(t){this.init=t,this.records=this.init()}static{(0,o.K)(this,"ImperativeState")}reset(){this.records=this.init()}}},50804:(t,e,r)=>{r.d(e,{diagram:()=>tM});var o=r(38983),a=r(23583),i=r(80968),n=r(90598),s=r(88084),c=r(63634),d=r(34330),l=r(83903),h={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4},$=n.UI.gitGraph,m=(0,c.K)(()=>(0,i.$t)({...$,...(0,n.zj)().gitGraph}),"getConfig"),g=new o.m(()=>{let t=m(),e=t.mainBranchName,r=t.mainBranchOrder;return{mainBranchName:e,commits:new Map,head:null,branchConfig:new Map([[e,{name:e,order:r}]]),branches:new Map([[e,null]]),currBranch:e,direction:"LR",seq:0,options:{}}});function p(){return(0,i.yT)({length:7})}function y(t,e){let r=Object.create(null);return t.reduce((t,o)=>{let a=e(o);return r[a]||(r[a]=!0,t.push(o)),t},[])}(0,c.K)(p,"getID"),(0,c.K)(y,"uniqBy");var f=(0,c.K)(function(t){g.records.direction=t},"setDirection"),x=(0,c.K)(function(t){s.R.debug("options str",t),t=(t=t?.trim())||"{}";try{g.records.options=JSON.parse(t)}catch(t){s.R.error("error while parsing gitGraph options",t.message)}},"setOptions"),u=(0,c.K)(function(){return g.records.options},"getOptions"),b=(0,c.K)(function(t){let e=t.msg,r=t.id,o=t.type,a=t.tags;s.R.info("commit",e,r,o,a),s.R.debug("Entering commit:",e,r,o,a);let i=m();r=n.Y2.sanitizeText(r,i),e=n.Y2.sanitizeText(e,i),a=a?.map(t=>n.Y2.sanitizeText(t,i));let c={id:r||g.records.seq+"-"+p(),message:e,seq:g.records.seq++,type:o??h.NORMAL,tags:a??[],parents:null==g.records.head?[]:[g.records.head.id],branch:g.records.currBranch};g.records.head=c,s.R.info("main branch",i.mainBranchName),g.records.commits.has(c.id)&&s.R.warn(`Commit ID ${c.id} already exists`),g.records.commits.set(c.id,c),g.records.branches.set(g.records.currBranch,c.id),s.R.debug("in pushCommit "+c.id)},"commit"),k=(0,c.K)(function(t){let e=t.name,r=t.order;if(e=n.Y2.sanitizeText(e,m()),g.records.branches.has(e))throw Error(`Trying to create an existing branch. (Help: Either use a new name if you want create a new branch or try using "checkout ${e}")`);g.records.branches.set(e,null!=g.records.head?g.records.head.id:null),g.records.branchConfig.set(e,{name:e,order:r}),E(e),s.R.debug("in createBranch")},"branch"),B=(0,c.K)(t=>{let e=t.branch,r=t.id,o=t.type,a=t.tags,i=m();e=n.Y2.sanitizeText(e,i),r&&(r=n.Y2.sanitizeText(r,i));let c=g.records.branches.get(g.records.currBranch),d=g.records.branches.get(e),l=c?g.records.commits.get(c):void 0,$=d?g.records.commits.get(d):void 0;if(l&&$&&l.branch===e)throw Error(`Cannot merge branch '${e}' into itself.`);if(g.records.currBranch===e){let t=Error('Incorrect usage of "merge". Cannot merge a branch to itself');throw t.hash={text:`merge ${e}`,token:`merge ${e}`,expected:["branch abc"]},t}if(void 0===l||!l){let t=Error(`Incorrect usage of "merge". Current branch (${g.records.currBranch})has no commits`);throw t.hash={text:`merge ${e}`,token:`merge ${e}`,expected:["commit"]},t}if(!g.records.branches.has(e)){let t=Error('Incorrect usage of "merge". Branch to be merged ('+e+") does not exist");throw t.hash={text:`merge ${e}`,token:`merge ${e}`,expected:[`branch ${e}`]},t}if(void 0===$||!$){let t=Error('Incorrect usage of "merge". Branch to be merged ('+e+") has no commits");throw t.hash={text:`merge ${e}`,token:`merge ${e}`,expected:['"commit"']},t}if(l===$){let t=Error('Incorrect usage of "merge". Both branches have same head');throw t.hash={text:`merge ${e}`,token:`merge ${e}`,expected:["branch abc"]},t}if(r&&g.records.commits.has(r)){let t=Error('Incorrect usage of "merge". Commit with id:'+r+" already exists, use different custom id");throw t.hash={text:`merge ${e} ${r} ${o} ${a?.join(" ")}`,token:`merge ${e} ${r} ${o} ${a?.join(" ")}`,expected:[`merge ${e} ${r}_UNIQUE ${o} ${a?.join(" ")}`]},t}let y={id:r||`${g.records.seq}-${p()}`,message:`merged branch ${e} into ${g.records.currBranch}`,seq:g.records.seq++,parents:null==g.records.head?[]:[g.records.head.id,d||""],branch:g.records.currBranch,type:h.MERGE,customType:o,customId:!!r,tags:a??[]};g.records.head=y,g.records.commits.set(y.id,y),g.records.branches.set(g.records.currBranch,y.id),s.R.debug(g.records.branches),s.R.debug("in mergeBranch")},"merge"),w=(0,c.K)(function(t){let e=t.id,r=t.targetId,o=t.tags,a=t.parent;s.R.debug("Entering cherryPick:",e,r,o);let i=m();if(e=n.Y2.sanitizeText(e,i),r=n.Y2.sanitizeText(r,i),o=o?.map(t=>n.Y2.sanitizeText(t,i)),a=n.Y2.sanitizeText(a,i),!e||!g.records.commits.has(e)){let t=Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');throw t.hash={text:`cherryPick ${e} ${r}`,token:`cherryPick ${e} ${r}`,expected:["cherry-pick abc"]},t}let c=g.records.commits.get(e);if(void 0===c||!c)throw Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');if(a&&!(Array.isArray(c.parents)&&c.parents.includes(a)))throw Error("Invalid operation: The specified parent commit is not an immediate parent of the cherry-picked commit.");let d=c.branch;if(c.type===h.MERGE&&!a)throw Error("Incorrect usage of cherry-pick: If the source commit is a merge commit, an immediate parent commit must be specified.");if(!r||!g.records.commits.has(r)){if(d===g.records.currBranch){let t=Error('Incorrect usage of "cherryPick". Source commit is already on current branch');throw t.hash={text:`cherryPick ${e} ${r}`,token:`cherryPick ${e} ${r}`,expected:["cherry-pick abc"]},t}let t=g.records.branches.get(g.records.currBranch);if(void 0===t||!t){let t=Error(`Incorrect usage of "cherry-pick". Current branch (${g.records.currBranch})has no commits`);throw t.hash={text:`cherryPick ${e} ${r}`,token:`cherryPick ${e} ${r}`,expected:["cherry-pick abc"]},t}let i=g.records.commits.get(t);if(void 0===i||!i){let t=Error(`Incorrect usage of "cherry-pick". Current branch (${g.records.currBranch})has no commits`);throw t.hash={text:`cherryPick ${e} ${r}`,token:`cherryPick ${e} ${r}`,expected:["cherry-pick abc"]},t}let n={id:g.records.seq+"-"+p(),message:`cherry-picked ${c?.message} into ${g.records.currBranch}`,seq:g.records.seq++,parents:null==g.records.head?[]:[g.records.head.id,c.id],branch:g.records.currBranch,type:h.CHERRY_PICK,tags:o?o.filter(Boolean):[`cherry-pick:${c.id}${c.type===h.MERGE?`|parent:${a}`:""}`]};g.records.head=n,g.records.commits.set(n.id,n),g.records.branches.set(g.records.currBranch,n.id),s.R.debug(g.records.branches),s.R.debug("in cherryPick")}},"cherryPick"),E=(0,c.K)(function(t){if(t=n.Y2.sanitizeText(t,m()),g.records.branches.has(t)){g.records.currBranch=t;let e=g.records.branches.get(g.records.currBranch);void 0!==e&&e?g.records.head=g.records.commits.get(e)??null:g.records.head=null}else{let e=Error(`Trying to checkout branch which is not yet created. (Help try using "branch ${t}")`);throw e.hash={text:`checkout ${t}`,token:`checkout ${t}`,expected:[`branch ${t}`]},e}},"checkout");function T(t,e,r){let o=t.indexOf(e);-1===o?t.push(r):t.splice(o,1,r)}function C(t){let e=t.reduce((t,e)=>t.seq>e.seq?t:e,t[0]),r="";t.forEach(function(t){t===e?r+=" *":r+=" |"});let o=[r,e.id,e.seq];for(let t in g.records.branches)g.records.branches.get(t)===e.id&&o.push(t);if(s.R.debug(o.join(" ")),e.parents&&2==e.parents.length&&e.parents[0]&&e.parents[1]){let r=g.records.commits.get(e.parents[0]);T(t,e,r),e.parents[1]&&t.push(g.records.commits.get(e.parents[1]))}else if(0==e.parents.length)return;else if(e.parents[0]){let r=g.records.commits.get(e.parents[0]);T(t,e,r)}C(t=y(t,t=>t.id))}(0,c.K)(T,"upsert"),(0,c.K)(C,"prettyPrintCommitHistory");var L=(0,c.K)(function(){s.R.debug(g.records.commits),C([I()[0]])},"prettyPrint"),K=(0,c.K)(function(){g.reset(),(0,n.IU)()},"clear"),M=(0,c.K)(function(){return[...g.records.branchConfig.values()].map((t,e)=>null!==t.order&&void 0!==t.order?t:{...t,order:parseFloat(`0.${e}`)}).sort((t,e)=>(t.order??0)-(e.order??0)).map(({name:t})=>({name:t}))},"getBranchesAsObjArray"),R=(0,c.K)(function(){return g.records.branches},"getBranches"),v=(0,c.K)(function(){return g.records.commits},"getCommits"),I=(0,c.K)(function(){let t=[...g.records.commits.values()];return t.forEach(function(t){s.R.debug(t.id)}),t.sort((t,e)=>t.seq-e.seq),t},"getCommitsArray"),P={commitType:h,getConfig:m,setDirection:f,setOptions:x,getOptions:u,commit:b,branch:k,merge:B,cherryPick:w,checkout:E,prettyPrint:L,clear:K,getBranchesAsObjArray:M,getBranches:R,getCommits:v,getCommitsArray:I,getCurrentBranch:(0,c.K)(function(){return g.records.currBranch},"getCurrentBranch"),getDirection:(0,c.K)(function(){return g.records.direction},"getDirection"),getHead:(0,c.K)(function(){return g.records.head},"getHead"),setAccTitle:n.SV,getAccTitle:n.iN,getAccDescription:n.m7,setAccDescription:n.EI,setDiagramTitle:n.ke,getDiagramTitle:n.ab},O=(0,c.K)((t,e)=>{for(let r of((0,a.S)(t,e),t.dir&&e.setDirection(t.dir),t.statements))A(r,e)},"populate"),A=(0,c.K)((t,e)=>{let r={Commit:(0,c.K)(t=>e.commit(G(t)),"Commit"),Branch:(0,c.K)(t=>e.branch(S(t)),"Branch"),Merge:(0,c.K)(t=>e.merge(H(t)),"Merge"),Checkout:(0,c.K)(t=>e.checkout(D(t)),"Checkout"),CherryPicking:(0,c.K)(t=>e.cherryPick(W(t)),"CherryPicking")}[t.$type];r?r(t):s.R.error(`Unknown statement type: ${t.$type}`)},"parseStatement"),G=(0,c.K)(t=>({id:t.id,msg:t.message??"",type:void 0!==t.type?h[t.type]:h.NORMAL,tags:t.tags??void 0}),"parseCommit"),S=(0,c.K)(t=>({name:t.name,order:t.order??0}),"parseBranch"),H=(0,c.K)(t=>({branch:t.branch,id:t.id??"",type:void 0!==t.type?h[t.type]:void 0,tags:t.tags??void 0}),"parseMerge"),D=(0,c.K)(t=>t.branch,"parseCheckout"),W=(0,c.K)(t=>({id:t.id,targetId:"",tags:t.tags?.length===0?void 0:t.tags,parent:t.parent}),"parseCherryPicking"),q={parse:(0,c.K)(async t=>{let e=await (0,d.qg)("gitGraph",t);s.R.debug(e),O(e,P)},"parse")},_=new Set(["redux","redux-dark","redux-color","redux-dark-color"]),z=new Set(["redux-color","redux-dark-color"]),Y=new Set(["dark","redux-dark","redux-dark-color","neo-dark"]),N=(0,c.K)((t,e,r=!1)=>r&&t>0?(t-1)%(e-1)+1:t%e,"calcColorIndex"),j=new Map,F=new Map,U=new Map,V=[],J=0,Q="LR",X=(0,c.K)(()=>{j.clear(),F.clear(),U.clear(),J=0,V=[],Q="LR"},"clear"),Z=(0,c.K)(t=>{let e=document.createElementNS("http://www.w3.org/2000/svg","text");return("string"==typeof t?t.split(/\\n|\n|<br\s*\/?>/gi):t).forEach(t=>{let r=document.createElementNS("http://www.w3.org/2000/svg","tspan");r.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),r.setAttribute("dy","1em"),r.setAttribute("x","0"),r.setAttribute("class","row"),r.textContent=t.trim(),e.appendChild(r)}),e},"drawText"),tt=(0,c.K)(t=>{let e,r,o;return"BT"===Q?(r=(0,c.K)((t,e)=>t<=e,"comparisonFunc"),o=1/0):(r=(0,c.K)((t,e)=>t>=e,"comparisonFunc"),o=0),t.forEach(t=>{let a="TB"===Q||"BT"==Q?F.get(t)?.y:F.get(t)?.x;void 0!==a&&r(a,o)&&(e=t,o=a)}),e},"findClosestParent"),te=(0,c.K)(t=>{let e="",r=1/0;return t.forEach(t=>{let o=F.get(t).y;o<=r&&(e=t,r=o)}),e||void 0},"findClosestParentBT"),tr=(0,c.K)((t,e,r)=>{let o=r,a=r,i=[];t.forEach(t=>{let r=e.get(t);if(!r)throw Error(`Commit not found for key ${t}`);r.parents.length?a=Math.max(o=ta(r),a):i.push(r),ti(r,o)}),o=a,i.forEach(t=>{tn(t,o,r)}),t.forEach(t=>{let r=e.get(t);if(r?.parents.length){let t=te(r.parents);(o=F.get(t).y-40)<=a&&(a=o);let e=j.get(r.branch).pos,i=o-10;F.set(r.id,{x:e,y:i})}})},"setParallelBTPos"),to=(0,c.K)(t=>{let e=tt(t.parents.filter(t=>null!==t));if(!e)throw Error(`Closest parent not found for commit ${t.id}`);let r=F.get(e)?.y;if(void 0===r)throw Error(`Closest parent position not found for commit ${t.id}`);return r},"findClosestParentPos"),ta=(0,c.K)(t=>to(t)+40,"calculateCommitPosition"),ti=(0,c.K)((t,e)=>{let r=j.get(t.branch);if(!r)throw Error(`Branch not found for commit ${t.id}`);let o=r.pos,a=e+10;return F.set(t.id,{x:o,y:a}),{x:o,y:a}},"setCommitPosition"),tn=(0,c.K)((t,e,r)=>{let o=j.get(t.branch);if(!o)throw Error(`Branch not found for commit ${t.id}`);let a=o.pos;F.set(t.id,{x:a,y:e+r})},"setRootPosition"),ts=(0,c.K)((t,e,r,o,a,i)=>{let{theme:s}=(0,n.D7)(),c=_.has(s??""),d=z.has(s??""),l=Y.has(s??"");if(i===h.HIGHLIGHT)t.append("rect").attr("x",r.x-10+3*!!c).attr("y",r.y-10+3*!!c).attr("width",c?14:20).attr("height",c?14:20).attr("class",`commit ${e.id} commit-highlight${N(a,8,d)} ${o}-outer`),t.append("rect").attr("x",r.x-6+2*!!c).attr("y",r.y-6+2*!!c).attr("width",c?8:12).attr("height",c?8:12).attr("class",`commit ${e.id} commit${N(a,8,d)} ${o}-inner`);else if(i===h.CHERRY_PICK)t.append("circle").attr("cx",r.x).attr("cy",r.y).attr("r",c?7:10).attr("class",`commit ${e.id} ${o}`),t.append("circle").attr("cx",r.x-3).attr("cy",r.y+2).attr("r",c?2.5:2.75).attr("fill",l?"#000000":"#fff").attr("class",`commit ${e.id} ${o}`),t.append("circle").attr("cx",r.x+3).attr("cy",r.y+2).attr("r",c?2.5:2.75).attr("fill",l?"#000000":"#fff").attr("class",`commit ${e.id} ${o}`),t.append("line").attr("x1",r.x+3).attr("y1",r.y+1).attr("x2",r.x).attr("y2",r.y-5).attr("stroke",l?"#000000":"#fff").attr("class",`commit ${e.id} ${o}`),t.append("line").attr("x1",r.x-3).attr("y1",r.y+1).attr("x2",r.x).attr("y2",r.y-5).attr("stroke",l?"#000000":"#fff").attr("class",`commit ${e.id} ${o}`);else{let n=t.append("circle");if(n.attr("cx",r.x),n.attr("cy",r.y),n.attr("r",c?7:10),n.attr("class",`commit ${e.id} commit${N(a,8,d)}`),i===h.MERGE){let i=t.append("circle");i.attr("cx",r.x),i.attr("cy",r.y),i.attr("r",c?5:6),i.attr("class",`commit ${o} ${e.id} commit${N(a,8,d)}`)}if(i===h.REVERSE){let i=t.append("path"),n=c?4:5;i.attr("d",`M ${r.x-n},${r.y-n}L${r.x+n},${r.y+n}M${r.x-n},${r.y+n}L${r.x+n},${r.y-n}`).attr("class",`commit ${o} ${e.id} commit${N(a,8,d)}`)}}},"drawCommitBullet"),tc=(0,c.K)((t,e,r,o,a)=>{if(e.type!==h.CHERRY_PICK&&(e.customId&&e.type===h.MERGE||e.type!==h.MERGE)&&a.showCommitLabel){let i=t.append("g"),n=i.insert("rect").attr("class","commit-label-bkg"),s=i.append("text").attr("x",o).attr("y",r.y+25).attr("class","commit-label").text(e.id),c=s.node()?.getBBox();if(c&&(n.attr("x",r.posWithOffset-c.width/2-2).attr("y",r.y+13.5).attr("width",c.width+4).attr("height",c.height+4),"TB"===Q||"BT"===Q?(n.attr("x",r.x-(c.width+16+5)).attr("y",r.y-12),s.attr("x",r.x-(c.width+16)).attr("y",r.y+c.height-12)):s.attr("x",r.posWithOffset-c.width/2),a.rotateCommitLabel))if("TB"===Q||"BT"===Q)s.attr("transform","rotate(-45, "+r.x+", "+r.y+")"),n.attr("transform","rotate(-45, "+r.x+", "+r.y+")");else{let t=-7.5-(c.width+10)/25*9.5,e=10+c.width/25*8.5;i.attr("transform","translate("+t+", "+e+") rotate(-45, "+o+", "+r.y+")")}}},"drawCommitLabel"),td=(0,c.K)((t,e,r,o)=>{if(e.tags.length>0){let a=0,i=0,n=0,s=[];for(let o of e.tags.reverse()){let e=t.insert("polygon"),c=t.append("circle"),d=t.append("text").attr("y",r.y-16-a).attr("class","tag-label").text(o),l=d.node()?.getBBox();if(!l)throw Error("Tag bbox not found");i=Math.max(i,l.width),n=Math.max(n,l.height),d.attr("x",r.posWithOffset-l.width/2),s.push({tag:d,hole:c,rect:e,yOffset:a}),a+=20}for(let{tag:t,hole:e,rect:a,yOffset:c}of s){let s=n/2,d=r.y-19.2-c;if(a.attr("class","tag-label-bkg").attr("points",`
2
+ ${o-i/2-2},${d+2}
3
+ ${o-i/2-2},${d-2}
4
+ ${r.posWithOffset-i/2-4},${d-s-2}
5
+ ${r.posWithOffset+i/2+4},${d-s-2}
6
+ ${r.posWithOffset+i/2+4},${d+s+2}
7
+ ${r.posWithOffset-i/2-4},${d+s+2}`),e.attr("cy",d).attr("cx",o-i/2+2).attr("r",1.5).attr("class","tag-hole"),"TB"===Q||"BT"===Q){let n=o+c;a.attr("class","tag-label-bkg").attr("points",`
8
+ ${r.x},${n+2}
9
+ ${r.x},${n-2}
10
+ ${r.x+10},${n-s-2}
11
+ ${r.x+10+i+4},${n-s-2}
12
+ ${r.x+10+i+4},${n+s+2}
13
+ ${r.x+10},${n+s+2}`).attr("transform","translate(12,12) rotate(45, "+r.x+","+o+")"),e.attr("cx",r.x+2).attr("cy",n).attr("transform","translate(12,12) rotate(45, "+r.x+","+o+")"),t.attr("x",r.x+5).attr("y",n+3).attr("transform","translate(14,14) rotate(45, "+r.x+","+o+")")}}}},"drawCommitTags"),tl=(0,c.K)(t=>{switch(t.customType??t.type){case h.NORMAL:return"commit-normal";case h.REVERSE:return"commit-reverse";case h.HIGHLIGHT:return"commit-highlight";case h.MERGE:return"commit-merge";case h.CHERRY_PICK:return"commit-cherry-pick";default:return"commit-normal"}},"getCommitClassType"),th=(0,c.K)((t,e,r,o)=>{let a={x:0,y:0};if(t.parents.length>0){let r=tt(t.parents);if(r){let i=o.get(r)??a;return"TB"===e?i.y+40:"BT"===e?(o.get(t.id)??a).y-40:i.x+40}}else if("TB"===e)return 30;else if("BT"===e)return(o.get(t.id)??a).y-40;return 0},"calculatePosition"),t$=(0,c.K)((t,e,r)=>{let o="BT"===Q&&r?e:e+10,a=j.get(t.branch)?.pos,i="TB"===Q||"BT"===Q?j.get(t.branch)?.pos:o;if(void 0===i||void 0===a)throw Error(`Position were undefined for commit ${t.id}`);let s=_.has((0,n.D7)().theme??"");return{x:i,y:"TB"===Q||"BT"===Q?o:a+(s?7:-2),posWithOffset:o}},"getCommitPosition"),tm=(0,c.K)((t,e,r,o)=>{let a=t.append("g").attr("class","commit-bullets"),i=t.append("g").attr("class","commit-labels"),n=30*("TB"===Q||"BT"===Q),s=[...e.keys()],d=o.parallelCommits??!1,l=s.sort((0,c.K)((t,r)=>{let o=e.get(t)?.seq,a=e.get(r)?.seq;return void 0!==o&&void 0!==a?o-a:0},"sortKeys"));"BT"===Q&&(d&&tr(l,e,n),l=l.reverse()),l.forEach(t=>{let s=e.get(t);if(!s)throw Error(`Commit not found for key ${t}`);d&&(n=th(s,Q,n,F));let c=t$(s,n,d);if(r){let t=tl(s),e=s.customType??s.type,r=j.get(s.branch)?.index??0;ts(a,s,c,t,r,e),tc(i,s,c,n,o),td(i,s,c,n)}"TB"===Q||"BT"===Q?F.set(s.id,{x:c.x,y:c.posWithOffset}):F.set(s.id,{x:c.posWithOffset,y:c.y}),(n="BT"===Q&&d?n+40:n+40+10)>J&&(J=n)})},"drawCommits"),tg=(0,c.K)((t,e,r,o,a)=>{let i=("TB"===Q||"BT"===Q?r.x<o.x:r.y<o.y)?e.branch:t.branch,n=(0,c.K)(t=>t.branch===i,"isOnBranchToGetCurve"),s=(0,c.K)(r=>r.seq>t.seq&&r.seq<e.seq,"isBetweenCommits");return[...a.values()].some(t=>s(t)&&n(t))},"shouldRerouteArrow"),tp=(0,c.K)((t,e,r=0)=>{let o=t+Math.abs(t-e)/2;if(r>5)return o;if(V.every(t=>Math.abs(t-o)>=10))return V.push(o),o;let a=Math.abs(t-e);return tp(t,e-a/5,r+1)},"findLane"),ty=(0,c.K)((t,e,r,o)=>{let a,{theme:i}=(0,n.D7)(),s=z.has(i??""),c=F.get(e.id),d=F.get(r.id);if(void 0===c||void 0===d)throw Error(`Commit positions not found for commits ${e.id} and ${r.id}`);let l=tg(e,r,c,d,o),$="",m="",g=0,p=0,y=j.get(r.branch)?.index;if(r.type===h.MERGE&&e.id!==r.parents[0]&&(y=j.get(e.branch)?.index),l){$="A 10 10, 0, 0, 0,",m="A 10 10, 0, 0, 1,",g=10,p=10;let t=c.y<d.y?tp(c.y,d.y):tp(d.y,c.y),r=c.x<d.x?tp(c.x,d.x):tp(d.x,c.x);"TB"===Q?c.x<d.x?a=`M ${c.x} ${c.y} L ${r-g} ${c.y} ${m} ${r} ${c.y+p} L ${r} ${d.y-g} ${$} ${r+p} ${d.y} L ${d.x} ${d.y}`:(y=j.get(e.branch)?.index,a=`M ${c.x} ${c.y} L ${r+g} ${c.y} ${$} ${r} ${c.y+p} L ${r} ${d.y-g} ${m} ${r-p} ${d.y} L ${d.x} ${d.y}`):"BT"===Q?c.x<d.x?a=`M ${c.x} ${c.y} L ${r-g} ${c.y} ${$} ${r} ${c.y-p} L ${r} ${d.y+g} ${m} ${r+p} ${d.y} L ${d.x} ${d.y}`:(y=j.get(e.branch)?.index,a=`M ${c.x} ${c.y} L ${r+g} ${c.y} ${m} ${r} ${c.y-p} L ${r} ${d.y+g} ${$} ${r-p} ${d.y} L ${d.x} ${d.y}`):c.y<d.y?a=`M ${c.x} ${c.y} L ${c.x} ${t-g} ${$} ${c.x+p} ${t} L ${d.x-g} ${t} ${m} ${d.x} ${t+p} L ${d.x} ${d.y}`:(y=j.get(e.branch)?.index,a=`M ${c.x} ${c.y} L ${c.x} ${t+g} ${m} ${c.x+p} ${t} L ${d.x-g} ${t} ${$} ${d.x} ${t-p} L ${d.x} ${d.y}`)}else $="A 20 20, 0, 0, 0,",m="A 20 20, 0, 0, 1,",g=20,p=20,"TB"===Q?(c.x<d.x&&(a=r.type===h.MERGE&&e.id!==r.parents[0]?`M ${c.x} ${c.y} L ${c.x} ${d.y-g} ${$} ${c.x+p} ${d.y} L ${d.x} ${d.y}`:`M ${c.x} ${c.y} L ${d.x-g} ${c.y} ${m} ${d.x} ${c.y+p} L ${d.x} ${d.y}`),c.x>d.x&&($="A 20 20, 0, 0, 0,",m="A 20 20, 0, 0, 1,",g=20,p=20,a=r.type===h.MERGE&&e.id!==r.parents[0]?`M ${c.x} ${c.y} L ${c.x} ${d.y-g} ${m} ${c.x-p} ${d.y} L ${d.x} ${d.y}`:`M ${c.x} ${c.y} L ${d.x+g} ${c.y} ${$} ${d.x} ${c.y+p} L ${d.x} ${d.y}`),c.x===d.x&&(a=`M ${c.x} ${c.y} L ${d.x} ${d.y}`)):"BT"===Q?(c.x<d.x&&(a=r.type===h.MERGE&&e.id!==r.parents[0]?`M ${c.x} ${c.y} L ${c.x} ${d.y+g} ${m} ${c.x+p} ${d.y} L ${d.x} ${d.y}`:`M ${c.x} ${c.y} L ${d.x-g} ${c.y} ${$} ${d.x} ${c.y-p} L ${d.x} ${d.y}`),c.x>d.x&&($="A 20 20, 0, 0, 0,",m="A 20 20, 0, 0, 1,",g=20,p=20,a=r.type===h.MERGE&&e.id!==r.parents[0]?`M ${c.x} ${c.y} L ${c.x} ${d.y+g} ${$} ${c.x-p} ${d.y} L ${d.x} ${d.y}`:`M ${c.x} ${c.y} L ${d.x+g} ${c.y} ${m} ${d.x} ${c.y-p} L ${d.x} ${d.y}`),c.x===d.x&&(a=`M ${c.x} ${c.y} L ${d.x} ${d.y}`)):(c.y<d.y&&(a=r.type===h.MERGE&&e.id!==r.parents[0]?`M ${c.x} ${c.y} L ${d.x-g} ${c.y} ${m} ${d.x} ${c.y+p} L ${d.x} ${d.y}`:`M ${c.x} ${c.y} L ${c.x} ${d.y-g} ${$} ${c.x+p} ${d.y} L ${d.x} ${d.y}`),c.y>d.y&&(a=r.type===h.MERGE&&e.id!==r.parents[0]?`M ${c.x} ${c.y} L ${d.x-g} ${c.y} ${$} ${d.x} ${c.y-p} L ${d.x} ${d.y}`:`M ${c.x} ${c.y} L ${c.x} ${d.y+g} ${m} ${c.x+p} ${d.y} L ${d.x} ${d.y}`),c.y===d.y&&(a=`M ${c.x} ${c.y} L ${d.x} ${d.y}`));if(void 0===a)throw Error("Line definition not found");t.append("path").attr("d",a).attr("class","arrow arrow"+N(y,8,s))},"drawArrow"),tf=(0,c.K)((t,e)=>{let r=t.append("g").attr("class","commit-arrows");[...e.keys()].forEach(t=>{let o=e.get(t);o.parents&&o.parents.length>0&&o.parents.forEach(t=>{ty(r,e.get(t),o,e)})})},"drawArrows"),tx=(0,c.K)((t,e,r,o)=>{let{look:a,theme:i,themeVariables:s}=(0,n.D7)(),{dropShadow:c,THEME_COLOR_LIMIT:d}=s,l=_.has(i??""),h=z.has(i??""),$=t.append("g");e.forEach((t,e)=>{let i=N(e,l?d:8,h),n=j.get(t.name)?.pos;if(void 0===n)throw Error(`Position not found for branch ${t.name}`);let s="TB"===Q||"BT"===Q?n:l?n+6+1:n-2,m=$.append("line");m.attr("x1",0),m.attr("y1",s),m.attr("x2",J),m.attr("y2",s),m.attr("class","branch branch"+i),"TB"===Q?(m.attr("y1",30),m.attr("x1",n),m.attr("y2",J),m.attr("x2",n)):"BT"===Q&&(m.attr("y1",J),m.attr("x1",n),m.attr("y2",30),m.attr("x2",n)),V.push(s);let g=Z(t.name),p=$.insert("rect"),y=$.insert("g").attr("class","branchLabel").insert("g").attr("class","label branch-label"+i);y.node().appendChild(g);let f=g.getBBox(),x=4*!l,u=16*!!l,b=12*!!l;"neo"===a&&p.attr("data-look","neo"),p.attr("class","branchLabelBkg label"+i).attr("style","neo"===a?`filter:${l?`url(#${o}-drop-shadow)`:c}`:"").attr("rx",x).attr("ry",x).attr("x",-f.width-4-30*(!0===r.rotateCommitLabel)).attr("y",-f.height/2+10).attr("width",f.width+18+u).attr("height",f.height+4+b),y.attr("transform","translate("+(-f.width-14-30*(!0===r.rotateCommitLabel)+u/2)+", "+(s-f.height/2-2)+")"),"TB"===Q?(p.attr("x",n-f.width/2-10).attr("y",0),y.attr("transform","translate("+(n-f.width/2-5)+", 0)"),l&&(p.attr("transform",`translate(${-u/2-3}, ${-b-10})`),y.attr("transform","translate("+(n-f.width/2-5)+", "+(-(2*b)+7)+")"))):"BT"===Q?(p.attr("x",n-f.width/2-10).attr("y",J),y.attr("transform","translate("+(n-f.width/2-5)+", "+J+")"),l&&(p.attr("transform",`translate(${-u/2-3}, ${b+10})`),y.attr("transform","translate("+(n-f.width/2-5)+", "+(J+2*b+4)+")"))):p.attr("transform","translate(-19, "+(s-12-b/2)+")")})},"drawBranches"),tu=(0,c.K)(function(t,e,r,o,a){return j.set(t,{pos:e,index:r}),e+=50+40*!!a+("TB"===Q||"BT"===Q?o.width/2:0)},"setBranchPosition"),tb=(0,c.K)(function(t,e,r,o){X(),s.R.debug("in gitgraph renderer",t+"\n","id:",e,r);let a=o.db;if(!a.getConfig)return void s.R.error("getConfig method is not available on db");let c=a.getConfig(),d=c.rotateCommitLabel??!1;U=a.getCommits();let h=a.getBranchesAsObjArray();Q=a.getDirection();let $=(0,l.Ltv)(`[id="${e}"]`),{look:m,theme:g,themeVariables:p}=(0,n.D7)(),{useGradient:y,gradientStart:f,gradientStop:x,filterColor:u}=p;if(y){let t=$.append("defs").append("linearGradient").attr("id",e+"-gradient").attr("gradientUnits","objectBoundingBox").attr("x1","0%").attr("y1","0%").attr("x2","100%").attr("y2","0%");t.append("stop").attr("offset","0%").attr("stop-color",f).attr("stop-opacity",1),t.append("stop").attr("offset","100%").attr("stop-color",x).attr("stop-opacity",1)}"neo"===m&&_.has(g??"")&&$.append("defs").append("filter").attr("id",e+"-drop-shadow").attr("height","130%").attr("width","130%").append("feDropShadow").attr("dx","4").attr("dy","4").attr("stdDeviation",0).attr("flood-opacity","0.06").attr("flood-color",u);let b=0;h.forEach((t,e)=>{let r=Z(t.name),o=$.append("g"),a=o.insert("g").attr("class","branchLabel"),i=a.insert("g").attr("class","label branch-label");i.node()?.appendChild(r);let n=r.getBBox();b=tu(t.name,b,e,n,d),i.remove(),a.remove(),o.remove()}),tm($,U,!1,c),c.showBranches&&tx($,h,c,e),tf($,U),tm($,U,!0,c),i._K.insertTitle($,"gitTitleText",c.titleTopMargin??0,a.getDiagramTitle()),(0,n.mj)(void 0,$,c.diagramPadding,c.useMaxWidth)},"draw"),tk=new Set(["redux","redux-dark","redux-color","redux-dark-color"]),tB=new Set(["redux-color","redux-dark-color"]),tw=new Set(["neo","neo-dark"]),tE=new Set(["dark","redux-dark","redux-dark-color","neo-dark"]),tT=new Set(["redux","redux-dark","redux-color","redux-dark-color","neo","neo-dark"]),tC=(0,c.K)(t=>{let{svgId:e}=t,r="";if(t.useGradient&&e)for(let o=0;o<t.THEME_COLOR_LIMIT;o++)r+=`
14
+ .label${o} { fill: ${t.mainBkg}; stroke: url(${e}-gradient); stroke-width: ${t.strokeWidth};}
15
+ `;return r},"genGitGraphGradient"),tL=(0,c.K)(t=>{let{theme:e,themeVariables:r}=(0,n.zj)(),{borderColorArray:o}=r,a=tk.has(e);if(tw.has(e)){let e="";for(let r=0;r<t.THEME_COLOR_LIMIT;r++)if(0===r)e+=`
16
+ .branch-label${r} { fill: ${t.nodeBorder};}
17
+ .commit${r} { stroke: ${t.nodeBorder}; }
18
+ .commit-highlight${r} { stroke: ${t.nodeBorder}; fill: ${t.nodeBorder}; }
19
+ .arrow${r} { stroke: ${t.nodeBorder}; }
20
+ .commit-bullets { fill: ${t.nodeBorder}; }
21
+ .commit-cherry-pick${r} { stroke: ${t.nodeBorder}; }
22
+ ${tC(t)}`;else{let o=r%8;e+=`
23
+ .branch-label${r} { fill: ${t["gitBranchLabel"+o]}; }
24
+ .commit${r} { stroke: ${t["git"+o]}; fill: ${t["git"+o]}; }
25
+ .commit-highlight${r} { stroke: ${t["gitInv"+o]}; fill: ${t["gitInv"+o]}; }
26
+ .arrow${r} { stroke: ${t["git"+o]}; }
27
+ `}return e}if(tB.has(e)){let r="";for(let i=0;i<t.THEME_COLOR_LIMIT;i++)if(0===i)r+=`
28
+ .branch-label${i} { fill: ${t.nodeBorder}; ${a?`font-weight:${t.noteFontWeight}`:""} }
29
+ .commit${i} { stroke: ${t.nodeBorder}; }
30
+ .commit-highlight${i} { stroke: ${t.nodeBorder}; fill: ${t.mainBkg}; }
31
+ .label${i} { fill: ${t.mainBkg}; stroke: ${t.nodeBorder}; stroke-width: ${t.strokeWidth}; ${a?`font-weight:${t.noteFontWeight}`:""} }
32
+ .arrow${i} { stroke: ${t.nodeBorder}; }
33
+ .commit-bullets { fill: ${t.nodeBorder}; }
34
+ `;else{let n=i%o.length;r+=`
35
+ .branch-label${i} { fill: ${t.nodeBorder}; ${a?`font-weight:${t.noteFontWeight}`:""} }
36
+ .commit${i} { stroke: ${o[n]}; fill: ${o[n]}; }
37
+ .commit-highlight${i} { stroke: ${o[n]}; fill: ${o[n]}; }
38
+ .label${i} { fill: ${tE.has(e)?t.mainBkg:o[n]}; stroke: ${o[n]}; stroke-width: ${t.strokeWidth}; }
39
+ .arrow${i} { stroke: ${o[n]}; }
40
+ `}return r}{let e="";for(let r=0;r<t.THEME_COLOR_LIMIT;r++)e+=`
41
+ .branch-label${r} { fill: ${t.nodeBorder}; ${a?`font-weight:${t.noteFontWeight}`:""} }
42
+ .commit${r} { stroke: ${t.nodeBorder}; }
43
+ .commit-highlight${r} { stroke: ${t.nodeBorder}; fill: ${t.nodeBorder}; }
44
+ .label${r} { fill: ${t.mainBkg}; stroke: ${t.nodeBorder}; stroke-width: ${t.strokeWidth}; ${a?`font-weight:${t.noteFontWeight}`:""}}
45
+ .arrow${r} { stroke: ${t.nodeBorder}; }
46
+ .commit-bullets { fill: ${t.nodeBorder}; }
47
+ .commit-cherry-pick${r} { stroke: ${t.nodeBorder}; }
48
+ `;return e}},"genColor"),tK=(0,c.K)(t=>`${Array.from({length:t.THEME_COLOR_LIMIT},(t,e)=>e).map(e=>{let r=e%8;return`
49
+ .branch-label${e} { fill: ${t["gitBranchLabel"+r]}; }
50
+ .commit${e} { stroke: ${t["git"+r]}; fill: ${t["git"+r]}; }
51
+ .commit-highlight${e} { stroke: ${t["gitInv"+r]}; fill: ${t["gitInv"+r]}; }
52
+ .label${e} { fill: ${t["git"+r]}; }
53
+ .arrow${e} { stroke: ${t["git"+r]}; }
54
+ `}).join("\n")}`,"normalTheme"),tM={parser:q,db:P,renderer:{draw:tb},styles:(0,c.K)(t=>{let{theme:e}=(0,n.zj)(),r=tT.has(e);return`
55
+ .commit-id,
56
+ .commit-msg,
57
+ .branch-label {
58
+ fill: lightgrey;
59
+ color: lightgrey;
60
+ font-family: 'trebuchet ms', verdana, arial, sans-serif;
61
+ font-family: var(--mermaid-font-family);
62
+ }
63
+
64
+ ${r?tL(t):tK(t)}
65
+
66
+ .branch {
67
+ stroke-width: ${t.strokeWidth};
68
+ stroke: ${t.commitLineColor??t.lineColor};
69
+ stroke-dasharray: ${r?"4 2":"2"};
70
+ }
71
+ .commit-label { font-size: ${t.commitLabelFontSize}; fill: ${r?t.nodeBorder:t.commitLabelColor}; ${r?`font-weight:${t.noteFontWeight};`:""}}
72
+ .commit-label-bkg { font-size: ${t.commitLabelFontSize}; fill: ${r?"transparent":t.commitLabelBackground}; opacity: ${r?"":.5}; }
73
+ .tag-label { font-size: ${t.tagLabelFontSize}; fill: ${t.tagLabelColor};}
74
+ .tag-label-bkg { fill: ${r?t.mainBkg:t.tagLabelBackground}; stroke: ${r?t.nodeBorder:t.tagLabelBorder}; ${r?`filter:${t.dropShadow}`:""} }
75
+ .tag-hole { fill: ${t.textColor}; }
76
+
77
+ .commit-merge {
78
+ stroke: ${r?t.mainBkg:t.primaryColor};
79
+ fill: ${r?t.mainBkg:t.primaryColor};
80
+ }
81
+ .commit-reverse {
82
+ stroke: ${r?t.mainBkg:t.primaryColor};
83
+ fill: ${r?t.mainBkg:t.primaryColor};
84
+ stroke-width: ${r?t.strokeWidth:3};
85
+ }
86
+ .commit-highlight-outer {
87
+ }
88
+ .commit-highlight-inner {
89
+ stroke: ${r?t.mainBkg:t.primaryColor};
90
+ fill: ${r?t.mainBkg:t.primaryColor};
91
+ }
92
+
93
+ .arrow {
94
+ /* Intentional: neo themes keep the bold 8px arrow (like classic themes); only redux-geometry themes use the thinner options.strokeWidth. */
95
+ stroke-width: ${tk.has(e)?t.strokeWidth:8};
96
+ stroke-linecap: round;
97
+ fill: none
98
+ }
99
+ .gitTitleText {
100
+ text-anchor: middle;
101
+ font-size: 18px;
102
+ fill: ${t.textColor};
103
+ }
104
+ `},"getStyles")}}}]);