9remote 3.0.34 → 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 (478) hide show
  1. package/dist/cli.cjs +163 -161
  2. package/dist/extension/background.js +137 -88
  3. package/dist/extension/manifest.json +6 -5
  4. package/dist/extension/runner.js +606 -0
  5. package/dist/ptyDaemon.cjs +2 -2
  6. package/dist/server.cjs +725 -517
  7. package/dist/ui/assets/index-D_C1NTm1.js +8 -0
  8. package/dist/ui/index.html +1 -1
  9. package/dist/web/404.html +1 -1
  10. package/dist/web/__next.__PAGE__.txt +4 -4
  11. package/dist/web/__next._full.txt +17 -17
  12. package/dist/web/__next._head.txt +4 -4
  13. package/dist/web/__next._index.txt +10 -10
  14. package/dist/web/__next._tree.txt +3 -3
  15. package/dist/web/_next/static/chunks/{0fb7b532.2e7a08a3edb2d789.js → 025762a4.c49f8207624e1667.js} +1 -1
  16. package/dist/web/_next/static/chunks/101.bfb3898573e4245d.js +1 -0
  17. package/dist/web/_next/static/chunks/1342.3d5707800ea67dcb.js +1 -0
  18. package/dist/web/_next/static/chunks/153.d7a869e0874f32e0.js +1 -0
  19. package/dist/web/_next/static/chunks/1561.8d395206716b3967.js +1 -0
  20. package/dist/web/_next/static/chunks/{4314.6bbd89507909cad1.js → 1599.ed9aa4b461112c1a.js} +1 -1
  21. package/dist/web/_next/static/chunks/1694.7c4e72f21d4ce34c.js +1 -0
  22. package/dist/web/_next/static/chunks/1772-ef73c166e83f5eff.js +1 -0
  23. package/dist/web/_next/static/chunks/1878.724a4af779f951aa.js +138 -0
  24. package/dist/web/_next/static/chunks/1879.0252e2bd9153348f.js +1 -0
  25. package/dist/web/_next/static/chunks/1920-5ead25286846df83.js +1 -0
  26. package/dist/web/_next/static/chunks/1968-4d2969f0b7112e0b.js +32 -0
  27. package/dist/web/_next/static/chunks/2004.f975891d8a569296.js +24 -0
  28. package/dist/web/_next/static/chunks/2094.05efbc3414828946.js +1 -0
  29. package/dist/web/_next/static/chunks/2209.2ee6023fed2ac7a5.js +1 -0
  30. package/dist/web/_next/static/chunks/236.88ef102773dd3a91.js +1 -0
  31. package/dist/web/_next/static/chunks/2369.22023f63f0eaf8db.js +1 -0
  32. package/dist/web/_next/static/chunks/{6420.bfa7bc86d03dcefc.js → 2401.73a0315a75c7b051.js} +1 -1
  33. package/dist/web/_next/static/chunks/2427.3a468cdfabd25124.js +1 -0
  34. package/dist/web/_next/static/chunks/2436.da0ef064f744b8af.js +115 -0
  35. package/dist/web/_next/static/chunks/2488.87361126358794fd.js +1 -0
  36. package/dist/web/_next/static/chunks/2561.6c8eb8cf71429d5d.js +36 -0
  37. package/dist/web/_next/static/chunks/2581.d09a7f19c64e4b97.js +1 -0
  38. package/dist/web/_next/static/chunks/{8044.5f87392585c9f3e4.js → 2615.86c58079ec7c597c.js} +1 -1
  39. package/dist/web/_next/static/chunks/2934.0caeb8b2d8b67139.js +1 -0
  40. package/dist/web/_next/static/chunks/{6274.a3795ca6dacb3d62.js → 3011.fc80a2aad3ef8778.js} +2 -2
  41. package/dist/web/_next/static/chunks/3255.3c96f02d5eb06783.js +23 -0
  42. package/dist/web/_next/static/chunks/3284.e56b0102fb9a3920.js +62 -0
  43. package/dist/web/_next/static/chunks/329-15d3e36af1b2827f.js +1 -0
  44. package/dist/web/_next/static/chunks/3301.1f7e2bd5ccb55064.js +1 -0
  45. package/dist/web/_next/static/chunks/3314.b5b5b3cca99d832e.js +1 -0
  46. package/dist/web/_next/static/chunks/{20154aaa.868648f838e03bf1.js → 33d0405b.71576a1f83124ecd.js} +1 -1
  47. package/dist/web/_next/static/chunks/3428.8818e0ef88c0e743.js +1 -0
  48. package/dist/web/_next/static/chunks/3443.8d771dadb470603c.js +1 -0
  49. package/dist/web/_next/static/chunks/3704.bf80aa0d55f950d0.js +1 -0
  50. package/dist/web/_next/static/chunks/3916.141fb720bd1eee40.js +148 -0
  51. package/dist/web/_next/static/chunks/3973.e5c2013e2abeefd3.js +93 -0
  52. package/dist/web/_next/static/chunks/4065.7616cbd8f37a68e6.js +1 -0
  53. package/dist/web/_next/static/chunks/4129.a93c19870036f647.js +1 -0
  54. package/dist/web/_next/static/chunks/{6730.88fc6f2ccc49496c.js → 4171.b0e5c6dc86bc8a5f.js} +1 -1
  55. package/dist/web/_next/static/chunks/4330.a8740b63075e6886.js +1 -0
  56. package/dist/web/_next/static/chunks/4378.a0629cfcbc20c406.js +1 -0
  57. package/dist/web/_next/static/chunks/4553.cad71717d538a2e5.js +1 -0
  58. package/dist/web/_next/static/chunks/4589.9bd287581ccd378b.js +1 -0
  59. package/dist/web/_next/static/chunks/4594.53636acacf285911.js +34 -0
  60. package/dist/web/_next/static/chunks/466.908e4592c2b93997.js +77 -0
  61. package/dist/web/_next/static/chunks/468.2e48222bf3517040.js +1 -0
  62. package/dist/web/_next/static/chunks/4712.b7062faa67f544b5.js +1 -0
  63. package/dist/web/_next/static/chunks/{9675.be4a175f92aa2f26.js → 4724.e0dffedb6972b738.js} +1 -1
  64. package/dist/web/_next/static/chunks/482.a0b5af31d7354a82.js +1 -0
  65. package/dist/web/_next/static/chunks/4929.fce0c23972476c66.js +1 -0
  66. package/dist/web/_next/static/chunks/4964.5a41b2d776aee556.js +1 -0
  67. package/dist/web/_next/static/chunks/499.cf81a39b9e6ce4a4.js +94 -0
  68. package/dist/web/_next/static/chunks/{0a7753a9.4cb02a98e2e453b9.js → 4ff7191e.d68cdd8504937de5.js} +1 -1
  69. package/dist/web/_next/static/chunks/5035.f7175d1037807b62.js +90 -0
  70. package/dist/web/_next/static/chunks/5198.b8e3a08cb60bc349.js +1 -0
  71. package/dist/web/_next/static/chunks/5421.430fa3a5488e15a9.js +21 -0
  72. package/dist/web/_next/static/chunks/{9871-c277aedb0437cb82.js → 556-a8f04c41c5663ee8.js} +1 -1
  73. package/dist/web/_next/static/chunks/5587-fc5af8c76df14222.js +1 -0
  74. package/dist/web/_next/static/chunks/5710.b055a101d6b51ff3.js +27 -0
  75. package/dist/web/_next/static/chunks/5714.122f8cb7296bc9e1.js +1 -0
  76. package/dist/web/_next/static/chunks/5757.2c157c0924cea1c2.js +1 -0
  77. package/dist/web/_next/static/chunks/{3346-23aafd4add63869a.js → 5957-3d5d92b58dcc7d4e.js} +1 -1
  78. package/dist/web/_next/static/chunks/{565f33a6-fd3410bd29f39fdf.js → 5b8e7b36-a2678128cd5bdf5e.js} +1 -1
  79. package/dist/web/_next/static/chunks/6141-132d206408947c60.js +1 -0
  80. package/dist/web/_next/static/chunks/{7424.c8c9f85c8ea65885.js → 6181.6bdde6f59e3f2cea.js} +1 -1
  81. package/dist/web/_next/static/chunks/6221-cf883148bf8a4c1e.js +11 -0
  82. package/dist/web/_next/static/chunks/{3552.8dd9a3d2c3bcef65.js → 6372.51e578b15d566c0e.js} +2 -2
  83. package/dist/web/_next/static/chunks/6405.39e8b42a56b88bb5.js +1 -0
  84. package/dist/web/_next/static/chunks/641.7b1b12ccc56b3b3c.js +1 -0
  85. package/dist/web/_next/static/chunks/{6647.740ec32a32201eab.js → 6418.a86ca6012f0867ff.js} +1 -1
  86. package/dist/web/_next/static/chunks/{4924.3f5c77a103ac69a9.js → 6435.6aef0f9f1cc65be6.js} +1 -1
  87. package/dist/web/_next/static/chunks/6439.f02105d3687113e7.js +1 -0
  88. package/dist/web/_next/static/chunks/647.527b9a09373aab91.js +1 -0
  89. package/dist/web/_next/static/chunks/{8115.68d46fb961c724e0.js → 6470.7057ef6894a7f625.js} +16 -16
  90. package/dist/web/_next/static/chunks/6485.6ae2f3966cc25c9e.js +1 -0
  91. package/dist/web/_next/static/chunks/{6987.743a63813c6288ce.js → 6512.cc81f46437639a0e.js} +2 -2
  92. package/dist/web/_next/static/chunks/6520.73f10855f9d4b5a8.js +1 -0
  93. package/dist/web/_next/static/chunks/668.1ddcf2e38071ae57.js +24 -0
  94. package/dist/web/_next/static/chunks/6815.8126ae5481c3bfd8.js +1 -0
  95. package/dist/web/_next/static/chunks/6925-af784cffb03dd330.js +1 -0
  96. package/dist/web/_next/static/chunks/6e6d0562.6ebb8f7db67bd943.js +122 -0
  97. package/dist/web/_next/static/chunks/7058.affbacca3457f5a7.js +41 -0
  98. package/dist/web/_next/static/chunks/7207.72d8a01e77112af2.js +1 -0
  99. package/dist/web/_next/static/chunks/{4090.441fa61655da9b38.js → 7359.b09680f38f75e105.js} +1 -1
  100. package/dist/web/_next/static/chunks/7369.a824cc623274cf63.js +1 -0
  101. package/dist/web/_next/static/chunks/7489.24938d89538cd03e.js +1 -0
  102. package/dist/web/_next/static/chunks/{9641.f6f2982fc4b4735f.js → 7576.273c3d0faf5c3d02.js} +1 -1
  103. package/dist/web/_next/static/chunks/7620.5c5935fd937c0e84.js +1 -0
  104. package/dist/web/_next/static/chunks/7646.1c26e96ee36bc317.js +1 -0
  105. package/dist/web/_next/static/chunks/7712.cd8c3dc2d794d714.js +1 -0
  106. package/dist/web/_next/static/chunks/7812.aabc856212c93434.js +1 -0
  107. package/dist/web/_next/static/chunks/804.38f05d79313a8dcc.js +104 -0
  108. package/dist/web/_next/static/chunks/8126-0279fc9e17c08aff.js +1 -0
  109. package/dist/web/_next/static/chunks/820-99036fb63c5462c8.js +1 -0
  110. package/dist/web/_next/static/chunks/8304.936a74abe6f0a288.js +1 -0
  111. package/dist/web/_next/static/chunks/8314.7ff9d72cd8613f75.js +226 -0
  112. package/dist/web/_next/static/chunks/8390.5eda620e73ea6c5c.js +74 -0
  113. package/dist/web/_next/static/chunks/860.f7885efc630bcfd7.js +1 -0
  114. package/dist/web/_next/static/chunks/87c73c54-e11922cda838f8cc.js +1 -0
  115. package/dist/web/_next/static/chunks/887.15090f9a6a142a10.js +1 -0
  116. package/dist/web/_next/static/chunks/8977.1ab6ed8e2c098cf0.js +1 -0
  117. package/dist/web/_next/static/chunks/9121-3d281debd0f3e659.js +1 -0
  118. package/dist/web/_next/static/chunks/9491-6dc334192080d071.js +86 -0
  119. package/dist/web/_next/static/chunks/951ed0e8.98070dce91103a63.js +1 -0
  120. package/dist/web/_next/static/chunks/9651.d199fbbbc3de43b8.js +215 -0
  121. package/dist/web/_next/static/chunks/9692.dd07a90166f5e6ff.js +1 -0
  122. package/dist/web/_next/static/chunks/{6075.a6b8434732056526.js → 9700.c47024f592537718.js} +1 -1
  123. package/dist/web/_next/static/chunks/9711.cf7aaa7fa6ec7dd7.js +287 -0
  124. package/dist/web/_next/static/chunks/9736.63b4a559c8a23186.js +1 -0
  125. package/dist/web/_next/static/chunks/{bbfbfb6c.069db3c4cc981ed3.js → 98f82933.0c4f9e5e83926351.js} +1 -1
  126. package/dist/web/_next/static/chunks/{da9a53d6.df25e193f1f5bcae.js → a36ae3fc.d666935373d1f579.js} +4 -4
  127. package/dist/web/_next/static/chunks/{adcd17ec-9a2791632136b67b.js → ab6c8a12-9dac45de556d8a8d.js} +1 -1
  128. package/dist/web/_next/static/chunks/app/_global-error/page-2ece09c883187d82.js +1 -0
  129. package/dist/web/_next/static/chunks/app/_not-found/page-9f829d2c4beb1840.js +1 -0
  130. package/dist/web/_next/static/chunks/app/admin/access/page-45f45ad529e5b691.js +5 -0
  131. package/dist/web/_next/static/chunks/app/admin/login/page-382072b5b43d3c29.js +1 -0
  132. package/dist/web/_next/static/chunks/app/admin/ota/page-293c0743bd60f454.js +5 -0
  133. package/dist/web/_next/static/chunks/app/admin/page-fc676dae451dd646.js +5 -0
  134. package/dist/web/_next/static/chunks/app/admin/turn/page-2ab33033fc7f0919.js +5 -0
  135. package/dist/web/_next/static/chunks/app/dev/question/page-bafce0c9fd4e8488.js +1 -0
  136. package/dist/web/_next/static/chunks/app/download/{page-2811ea822a1e586a.js → page-a65d1c7fcf6397af.js} +1 -1
  137. package/dist/web/_next/static/chunks/app/layout-f1429d22e935695f.js +1 -0
  138. package/dist/web/_next/static/chunks/app/login/page-a5dd37d1cbbb394e.js +1 -0
  139. package/dist/web/_next/static/chunks/app/page-1e67d8a5f3775276.js +22 -0
  140. package/dist/web/_next/static/chunks/app/workspace/browse/page-2ece09c883187d82.js +1 -0
  141. package/dist/web/_next/static/chunks/app/workspace/editor/page-2ece09c883187d82.js +1 -0
  142. package/dist/web/_next/static/chunks/app/workspace/files/page-2ece09c883187d82.js +1 -0
  143. package/dist/web/_next/static/chunks/app/workspace/git/page-2ece09c883187d82.js +1 -0
  144. package/dist/web/_next/static/chunks/app/workspace/layout-d8bb677fa1caa5a7.js +20 -0
  145. package/dist/web/_next/static/chunks/app/workspace/mobile/page-2ece09c883187d82.js +1 -0
  146. package/dist/web/_next/static/chunks/app/workspace/page-2ece09c883187d82.js +1 -0
  147. package/dist/web/_next/static/chunks/app/workspace/pair/page-2ece09c883187d82.js +1 -0
  148. package/dist/web/_next/static/chunks/app/workspace/remote/page-2ece09c883187d82.js +1 -0
  149. package/dist/web/_next/static/chunks/app/workspace/terminal/[sessionId]/page-2ece09c883187d82.js +1 -0
  150. package/dist/web/_next/static/chunks/app/workspace/welcome/page-2ece09c883187d82.js +1 -0
  151. package/dist/web/_next/static/chunks/app/workspace/workspaces/page-2ece09c883187d82.js +1 -0
  152. package/dist/web/_next/static/chunks/b2b4fb58.d2a067fe7df4a0d0.js +1 -0
  153. package/dist/web/_next/static/chunks/baeaa4ff-8eac34d2e07d1bb3.js +1 -0
  154. package/dist/web/_next/static/chunks/{7c89255b.f727562586fa21cc.js → c2d9a0c9.b4e0bb73c2ed317c.js} +1 -1
  155. package/dist/web/_next/static/chunks/{a012e9f0.7dbb2fe05ec0b816.js → ccfb6294.add4177b76c37868.js} +11 -11
  156. package/dist/web/_next/static/chunks/{c7ea4e13.6153499d4c2fb1f2.js → db261188.134a04dd616706a4.js} +1 -1
  157. package/dist/web/_next/static/chunks/framework-59d2d1720fc2b396.js +1 -0
  158. package/dist/web/_next/static/chunks/main-app-72391b47e9393c1b.js +1 -0
  159. package/dist/web/_next/static/chunks/main-e10b0dbebb4de0a8.js +5 -0
  160. package/dist/web/_next/static/chunks/next/dist/client/components/builtin/app-error-2ece09c883187d82.js +1 -0
  161. package/dist/web/_next/static/chunks/next/dist/client/components/builtin/forbidden-2ece09c883187d82.js +1 -0
  162. package/dist/web/_next/static/chunks/next/dist/client/components/builtin/global-error-48f06b4c48a1eef3.js +1 -0
  163. package/dist/web/_next/static/chunks/next/dist/client/components/builtin/not-found-2ece09c883187d82.js +1 -0
  164. package/dist/web/_next/static/chunks/next/dist/client/components/builtin/unauthorized-2ece09c883187d82.js +1 -0
  165. package/dist/web/_next/static/chunks/webpack-dd1f7a5ae02e5d84.js +1 -0
  166. package/dist/web/_next/static/css/{b496025c9cd768cc.css → 15730e9f7c5c55ef.css} +1 -1
  167. package/dist/web/_next/static/css/1c2cca827fa36d54.css +1 -0
  168. package/dist/web/_not-found/__next._full.txt +15 -15
  169. package/dist/web/_not-found/__next._head.txt +4 -4
  170. package/dist/web/_not-found/__next._index.txt +10 -10
  171. package/dist/web/_not-found/__next._not-found.__PAGE__.txt +2 -2
  172. package/dist/web/_not-found/__next._not-found.txt +3 -3
  173. package/dist/web/_not-found/__next._tree.txt +3 -3
  174. package/dist/web/_not-found.html +1 -1
  175. package/dist/web/_not-found.txt +15 -15
  176. package/dist/web/admin/__next._full.txt +17 -17
  177. package/dist/web/admin/__next._head.txt +4 -4
  178. package/dist/web/admin/__next._index.txt +10 -10
  179. package/dist/web/admin/__next._tree.txt +3 -3
  180. package/dist/web/admin/__next.admin.__PAGE__.txt +4 -4
  181. package/dist/web/admin/__next.admin.txt +3 -3
  182. package/dist/web/admin/access/__next._full.txt +17 -17
  183. package/dist/web/admin/access/__next._head.txt +4 -4
  184. package/dist/web/admin/access/__next._index.txt +10 -10
  185. package/dist/web/admin/access/__next._tree.txt +3 -3
  186. package/dist/web/admin/access/__next.admin.access.__PAGE__.txt +4 -4
  187. package/dist/web/admin/access/__next.admin.access.txt +3 -3
  188. package/dist/web/admin/access/__next.admin.txt +3 -3
  189. package/dist/web/admin/access.html +1 -1
  190. package/dist/web/admin/access.txt +17 -17
  191. package/dist/web/admin/login/__next._full.txt +17 -17
  192. package/dist/web/admin/login/__next._head.txt +4 -4
  193. package/dist/web/admin/login/__next._index.txt +10 -10
  194. package/dist/web/admin/login/__next._tree.txt +3 -3
  195. package/dist/web/admin/login/__next.admin.login.__PAGE__.txt +4 -4
  196. package/dist/web/admin/login/__next.admin.login.txt +3 -3
  197. package/dist/web/admin/login/__next.admin.txt +3 -3
  198. package/dist/web/admin/login.html +1 -1
  199. package/dist/web/admin/login.txt +17 -17
  200. package/dist/web/admin/ota/__next._full.txt +17 -17
  201. package/dist/web/admin/ota/__next._head.txt +4 -4
  202. package/dist/web/admin/ota/__next._index.txt +10 -10
  203. package/dist/web/admin/ota/__next._tree.txt +3 -3
  204. package/dist/web/admin/ota/__next.admin.ota.__PAGE__.txt +4 -4
  205. package/dist/web/admin/ota/__next.admin.ota.txt +3 -3
  206. package/dist/web/admin/ota/__next.admin.txt +3 -3
  207. package/dist/web/admin/ota.html +1 -1
  208. package/dist/web/admin/ota.txt +17 -17
  209. package/dist/web/admin/turn/__next._full.txt +17 -17
  210. package/dist/web/admin/turn/__next._head.txt +4 -4
  211. package/dist/web/admin/turn/__next._index.txt +10 -10
  212. package/dist/web/admin/turn/__next._tree.txt +3 -3
  213. package/dist/web/admin/turn/__next.admin.turn.__PAGE__.txt +4 -4
  214. package/dist/web/admin/turn/__next.admin.turn.txt +3 -3
  215. package/dist/web/admin/turn/__next.admin.txt +3 -3
  216. package/dist/web/admin/turn.html +1 -1
  217. package/dist/web/admin/turn.txt +17 -17
  218. package/dist/web/admin.html +1 -1
  219. package/dist/web/admin.txt +17 -17
  220. package/dist/web/dev/question/__next._full.txt +17 -17
  221. package/dist/web/dev/question/__next._head.txt +4 -4
  222. package/dist/web/dev/question/__next._index.txt +10 -10
  223. package/dist/web/dev/question/__next._tree.txt +3 -3
  224. package/dist/web/dev/question/__next.dev.question.__PAGE__.txt +4 -4
  225. package/dist/web/dev/question/__next.dev.question.txt +3 -3
  226. package/dist/web/dev/question/__next.dev.txt +3 -3
  227. package/dist/web/dev/question.html +1 -1
  228. package/dist/web/dev/question.txt +17 -17
  229. package/dist/web/download/__next._full.txt +16 -16
  230. package/dist/web/download/__next._head.txt +4 -4
  231. package/dist/web/download/__next._index.txt +10 -10
  232. package/dist/web/download/__next._tree.txt +3 -3
  233. package/dist/web/download/__next.download.__PAGE__.txt +3 -3
  234. package/dist/web/download/__next.download.txt +3 -3
  235. package/dist/web/download.html +1 -1
  236. package/dist/web/download.txt +16 -16
  237. package/dist/web/index.html +1 -1
  238. package/dist/web/index.txt +17 -17
  239. package/dist/web/login/__next._full.txt +17 -17
  240. package/dist/web/login/__next._head.txt +4 -4
  241. package/dist/web/login/__next._index.txt +10 -10
  242. package/dist/web/login/__next._tree.txt +3 -3
  243. package/dist/web/login/__next.login.__PAGE__.txt +4 -4
  244. package/dist/web/login/__next.login.txt +3 -3
  245. package/dist/web/login.html +1 -1
  246. package/dist/web/login.txt +17 -17
  247. package/dist/web/workspace/__next._full.txt +17 -17
  248. package/dist/web/workspace/__next._head.txt +4 -4
  249. package/dist/web/workspace/__next._index.txt +10 -10
  250. package/dist/web/workspace/__next._tree.txt +3 -3
  251. package/dist/web/workspace/__next.workspace.__PAGE__.txt +2 -2
  252. package/dist/web/workspace/__next.workspace.txt +5 -5
  253. package/dist/web/workspace/browse/__next._full.txt +17 -17
  254. package/dist/web/workspace/browse/__next._head.txt +4 -4
  255. package/dist/web/workspace/browse/__next._index.txt +10 -10
  256. package/dist/web/workspace/browse/__next._tree.txt +3 -3
  257. package/dist/web/workspace/browse/__next.workspace.browse.__PAGE__.txt +2 -2
  258. package/dist/web/workspace/browse/__next.workspace.browse.txt +3 -3
  259. package/dist/web/workspace/browse/__next.workspace.txt +5 -5
  260. package/dist/web/workspace/browse.html +1 -1
  261. package/dist/web/workspace/browse.txt +17 -17
  262. package/dist/web/workspace/editor/__next._full.txt +17 -17
  263. package/dist/web/workspace/editor/__next._head.txt +4 -4
  264. package/dist/web/workspace/editor/__next._index.txt +10 -10
  265. package/dist/web/workspace/editor/__next._tree.txt +3 -3
  266. package/dist/web/workspace/editor/__next.workspace.editor.__PAGE__.txt +2 -2
  267. package/dist/web/workspace/editor/__next.workspace.editor.txt +3 -3
  268. package/dist/web/workspace/editor/__next.workspace.txt +5 -5
  269. package/dist/web/workspace/editor.html +1 -1
  270. package/dist/web/workspace/editor.txt +17 -17
  271. package/dist/web/workspace/files/__next._full.txt +17 -17
  272. package/dist/web/workspace/files/__next._head.txt +4 -4
  273. package/dist/web/workspace/files/__next._index.txt +10 -10
  274. package/dist/web/workspace/files/__next._tree.txt +3 -3
  275. package/dist/web/workspace/files/__next.workspace.files.__PAGE__.txt +2 -2
  276. package/dist/web/workspace/files/__next.workspace.files.txt +3 -3
  277. package/dist/web/workspace/files/__next.workspace.txt +5 -5
  278. package/dist/web/workspace/files.html +1 -1
  279. package/dist/web/workspace/files.txt +17 -17
  280. package/dist/web/workspace/git/__next._full.txt +17 -17
  281. package/dist/web/workspace/git/__next._head.txt +4 -4
  282. package/dist/web/workspace/git/__next._index.txt +10 -10
  283. package/dist/web/workspace/git/__next._tree.txt +3 -3
  284. package/dist/web/workspace/git/__next.workspace.git.__PAGE__.txt +2 -2
  285. package/dist/web/workspace/git/__next.workspace.git.txt +3 -3
  286. package/dist/web/workspace/git/__next.workspace.txt +5 -5
  287. package/dist/web/workspace/git.html +1 -1
  288. package/dist/web/workspace/git.txt +17 -17
  289. package/dist/web/workspace/mobile/__next._full.txt +17 -17
  290. package/dist/web/workspace/mobile/__next._head.txt +4 -4
  291. package/dist/web/workspace/mobile/__next._index.txt +10 -10
  292. package/dist/web/workspace/mobile/__next._tree.txt +3 -3
  293. package/dist/web/workspace/mobile/__next.workspace.mobile.__PAGE__.txt +2 -2
  294. package/dist/web/workspace/mobile/__next.workspace.mobile.txt +3 -3
  295. package/dist/web/workspace/mobile/__next.workspace.txt +5 -5
  296. package/dist/web/workspace/mobile.html +1 -1
  297. package/dist/web/workspace/mobile.txt +17 -17
  298. package/dist/web/workspace/pair/__next._full.txt +17 -17
  299. package/dist/web/workspace/pair/__next._head.txt +4 -4
  300. package/dist/web/workspace/pair/__next._index.txt +10 -10
  301. package/dist/web/workspace/pair/__next._tree.txt +3 -3
  302. package/dist/web/workspace/pair/__next.workspace.pair.__PAGE__.txt +2 -2
  303. package/dist/web/workspace/pair/__next.workspace.pair.txt +3 -3
  304. package/dist/web/workspace/pair/__next.workspace.txt +5 -5
  305. package/dist/web/workspace/pair.html +1 -1
  306. package/dist/web/workspace/pair.txt +17 -17
  307. package/dist/web/workspace/remote/__next._full.txt +17 -17
  308. package/dist/web/workspace/remote/__next._head.txt +4 -4
  309. package/dist/web/workspace/remote/__next._index.txt +10 -10
  310. package/dist/web/workspace/remote/__next._tree.txt +3 -3
  311. package/dist/web/workspace/remote/__next.workspace.remote.__PAGE__.txt +2 -2
  312. package/dist/web/workspace/remote/__next.workspace.remote.txt +3 -3
  313. package/dist/web/workspace/remote/__next.workspace.txt +5 -5
  314. package/dist/web/workspace/remote.html +1 -1
  315. package/dist/web/workspace/remote.txt +17 -17
  316. package/dist/web/workspace/terminal/default/__next._full.txt +26 -25
  317. package/dist/web/workspace/terminal/default/__next._head.txt +4 -4
  318. package/dist/web/workspace/terminal/default/__next._index.txt +10 -10
  319. package/dist/web/workspace/terminal/default/__next._tree.txt +3 -3
  320. package/dist/web/workspace/terminal/default/__next.workspace.terminal.$d$sessionId.__PAGE__.txt +2 -2
  321. package/dist/web/workspace/terminal/default/__next.workspace.terminal.$d$sessionId.txt +3 -3
  322. package/dist/web/workspace/terminal/default/__next.workspace.terminal.txt +3 -3
  323. package/dist/web/workspace/terminal/default/__next.workspace.txt +5 -5
  324. package/dist/web/workspace/terminal/default.html +1 -1
  325. package/dist/web/workspace/terminal/default.txt +26 -25
  326. package/dist/web/workspace/welcome/__next._full.txt +17 -17
  327. package/dist/web/workspace/welcome/__next._head.txt +4 -4
  328. package/dist/web/workspace/welcome/__next._index.txt +10 -10
  329. package/dist/web/workspace/welcome/__next._tree.txt +3 -3
  330. package/dist/web/workspace/welcome/__next.workspace.txt +5 -5
  331. package/dist/web/workspace/welcome/__next.workspace.welcome.__PAGE__.txt +2 -2
  332. package/dist/web/workspace/welcome/__next.workspace.welcome.txt +3 -3
  333. package/dist/web/workspace/welcome.html +1 -1
  334. package/dist/web/workspace/welcome.txt +17 -17
  335. package/dist/web/workspace/workspaces/__next._full.txt +17 -17
  336. package/dist/web/workspace/workspaces/__next._head.txt +4 -4
  337. package/dist/web/workspace/workspaces/__next._index.txt +10 -10
  338. package/dist/web/workspace/workspaces/__next._tree.txt +3 -3
  339. package/dist/web/workspace/workspaces/__next.workspace.txt +5 -5
  340. package/dist/web/workspace/workspaces/__next.workspace.workspaces.__PAGE__.txt +2 -2
  341. package/dist/web/workspace/workspaces/__next.workspace.workspaces.txt +3 -3
  342. package/dist/web/workspace/workspaces.html +1 -1
  343. package/dist/web/workspace/workspaces.txt +17 -17
  344. package/dist/web/workspace.html +1 -1
  345. package/dist/web/workspace.txt +17 -17
  346. package/package.json +1 -1
  347. package/dist/ui/assets/index-DbuftNJF.js +0 -8
  348. package/dist/web/_next/static/chunks/1050-b9af41e8856b58c0.js +0 -1
  349. package/dist/web/_next/static/chunks/1222.a2ce7d7f04241e2a.js +0 -1
  350. package/dist/web/_next/static/chunks/1228.046ad5fd038f5192.js +0 -1
  351. package/dist/web/_next/static/chunks/1243.1d11020940b8a88b.js +0 -1
  352. package/dist/web/_next/static/chunks/132.1ed2fce3a4b6f7ee.js +0 -1
  353. package/dist/web/_next/static/chunks/133.1106654a28b5afda.js +0 -1
  354. package/dist/web/_next/static/chunks/1385.086b560acb0d7a68.js +0 -115
  355. package/dist/web/_next/static/chunks/1642.cac26d30ac331cb4.js +0 -1
  356. package/dist/web/_next/static/chunks/1733.f06c240b3ef8a428.js +0 -77
  357. package/dist/web/_next/static/chunks/1750.09ca4eade7a6e5d3.js +0 -1
  358. package/dist/web/_next/static/chunks/1763.28beedca593b5e19.js +0 -138
  359. package/dist/web/_next/static/chunks/179.b9e8f385bd414d1c.js +0 -62
  360. package/dist/web/_next/static/chunks/1838.7c8990f903e3524a.js +0 -215
  361. package/dist/web/_next/static/chunks/2038.b7c72b442a1b2d92.js +0 -1
  362. package/dist/web/_next/static/chunks/2112.d72eefbdf81659b3.js +0 -23
  363. package/dist/web/_next/static/chunks/2125.61c6e4a3541e30ad.js +0 -1
  364. package/dist/web/_next/static/chunks/2129.61afb2f4ff59e46a.js +0 -24
  365. package/dist/web/_next/static/chunks/213.f07a816120a320ba.js +0 -1
  366. package/dist/web/_next/static/chunks/2179.3f55be0b79e3cca7.js +0 -1
  367. package/dist/web/_next/static/chunks/2180.23585bd3f3308f3a.js +0 -1
  368. package/dist/web/_next/static/chunks/2264.0fc1474d26067a01.js +0 -1
  369. package/dist/web/_next/static/chunks/2376.ed6302a91a9de1ae.js +0 -36
  370. package/dist/web/_next/static/chunks/2545.3ff192a933baf11e.js +0 -1
  371. package/dist/web/_next/static/chunks/2620.d17f4fac0eec88a5.js +0 -1
  372. package/dist/web/_next/static/chunks/2847.d3124853ca727b78.js +0 -1
  373. package/dist/web/_next/static/chunks/2849.360e2c64521fa795.js +0 -1
  374. package/dist/web/_next/static/chunks/3189.64c6546d621eec0b.js +0 -1
  375. package/dist/web/_next/static/chunks/3348-9ef29f9cedf6c0df.js +0 -1
  376. package/dist/web/_next/static/chunks/3429.98d7e79ff6d2a6ce.js +0 -1
  377. package/dist/web/_next/static/chunks/3514.9079bf49bb3e05c9.js +0 -1
  378. package/dist/web/_next/static/chunks/3606.b59e695fd05b4eb3.js +0 -74
  379. package/dist/web/_next/static/chunks/3736.4a5662ceeecc6acb.js +0 -94
  380. package/dist/web/_next/static/chunks/392.842b338137824bb8.js +0 -1
  381. package/dist/web/_next/static/chunks/4136-d7c1ff2da0833b42.js +0 -86
  382. package/dist/web/_next/static/chunks/4300-7d6c9b3328075562.js +0 -1
  383. package/dist/web/_next/static/chunks/4303.54c4aa0b89834fc6.js +0 -1
  384. package/dist/web/_next/static/chunks/4551.d0d6723cacfb90b9.js +0 -226
  385. package/dist/web/_next/static/chunks/4566.d8e009823b8647d1.js +0 -90
  386. package/dist/web/_next/static/chunks/4643.ddf3ea3a760e73a5.js +0 -1
  387. package/dist/web/_next/static/chunks/4930.42e564644c94a93b.js +0 -1
  388. package/dist/web/_next/static/chunks/5155.d7e8db52ab4c95e0.js +0 -27
  389. package/dist/web/_next/static/chunks/5158-267908d069475cdc.js +0 -32
  390. package/dist/web/_next/static/chunks/543.5636e97aa68eb9c8.js +0 -41
  391. package/dist/web/_next/static/chunks/5506.98304a1821200439.js +0 -1
  392. package/dist/web/_next/static/chunks/5622.5ead5e748ecedbd1.js +0 -1
  393. package/dist/web/_next/static/chunks/5708.22b4531ceebf3eca.js +0 -1
  394. package/dist/web/_next/static/chunks/5788-d4b8dc2ab68396b6.js +0 -1
  395. package/dist/web/_next/static/chunks/5804.ff72a927135eb74c.js +0 -93
  396. package/dist/web/_next/static/chunks/588.78e2528ff24df85c.js +0 -287
  397. package/dist/web/_next/static/chunks/6001.e5bcb28bb9ce6571.js +0 -1
  398. package/dist/web/_next/static/chunks/6180.82fa683aa16f21df.js +0 -1
  399. package/dist/web/_next/static/chunks/6276.aa48f74970f7ef3d.js +0 -1
  400. package/dist/web/_next/static/chunks/6419.99aa173d83f20370.js +0 -1
  401. package/dist/web/_next/static/chunks/6552-cebe84e4399a184f.js +0 -1
  402. package/dist/web/_next/static/chunks/6739.22a05398bfd34922.js +0 -1
  403. package/dist/web/_next/static/chunks/674.97a7237f011fb986.js +0 -1
  404. package/dist/web/_next/static/chunks/6742.bc3783b9784ead96.js +0 -1
  405. package/dist/web/_next/static/chunks/7202.dad90ce4a1d78f67.js +0 -1
  406. package/dist/web/_next/static/chunks/7233.0f252f6c1cce8058.js +0 -1
  407. package/dist/web/_next/static/chunks/7248.d89bf328a0dc1b4c.js +0 -1
  408. package/dist/web/_next/static/chunks/7263.6f224c3924155294.js +0 -1
  409. package/dist/web/_next/static/chunks/7341.6958eac888a96823.js +0 -34
  410. package/dist/web/_next/static/chunks/7507.28a3807b5d02a5c1.js +0 -1
  411. package/dist/web/_next/static/chunks/7811.19082afa63eb73ba.js +0 -1
  412. package/dist/web/_next/static/chunks/7853.d01982fa0afc1ee2.js +0 -24
  413. package/dist/web/_next/static/chunks/7908.432ab9feeb9ae756.js +0 -1
  414. package/dist/web/_next/static/chunks/7960.026e07028dd25edb.js +0 -1
  415. package/dist/web/_next/static/chunks/7967.6c62be01fad1603c.js +0 -1
  416. package/dist/web/_next/static/chunks/8054.feeb01b8acdb31d4.js +0 -1
  417. package/dist/web/_next/static/chunks/817.cd0f4d221eca4c8b.js +0 -104
  418. package/dist/web/_next/static/chunks/8207-45554e2570bc59e6.js +0 -1
  419. package/dist/web/_next/static/chunks/8467.290e9bde34b58e7c.js +0 -1
  420. package/dist/web/_next/static/chunks/8495.d6cea1be03635fa8.js +0 -148
  421. package/dist/web/_next/static/chunks/8638.237712645dcdcb8a.js +0 -1
  422. package/dist/web/_next/static/chunks/8669-8d1fb8dce08c886d.js +0 -11
  423. package/dist/web/_next/static/chunks/8716.1ad6febb58e8560e.js +0 -1
  424. package/dist/web/_next/static/chunks/8762-cb470d05070f5ead.js +0 -1
  425. package/dist/web/_next/static/chunks/8839.1ad64faf06fb4a33.js +0 -1
  426. package/dist/web/_next/static/chunks/8922-8660f73e9cd42406.js +0 -1
  427. package/dist/web/_next/static/chunks/910.43be9c3be85c7fa0.js +0 -21
  428. package/dist/web/_next/static/chunks/925.fe600c6039a3201d.js +0 -1
  429. package/dist/web/_next/static/chunks/9259.c450f561db04037d.js +0 -1
  430. package/dist/web/_next/static/chunks/9299.83236781dfa74eb0.js +0 -1
  431. package/dist/web/_next/static/chunks/9387.96263a2d1602a078.js +0 -1
  432. package/dist/web/_next/static/chunks/9568-0bfadca4fcb105aa.js +0 -1
  433. package/dist/web/_next/static/chunks/9860.05fa134ae44699e0.js +0 -1
  434. package/dist/web/_next/static/chunks/9b87412a.d2cfae4121762dec.js +0 -122
  435. package/dist/web/_next/static/chunks/a096f98a-5a93977f5f5de413.js +0 -1
  436. package/dist/web/_next/static/chunks/ab1da478.d051e56375dab6d8.js +0 -1
  437. package/dist/web/_next/static/chunks/app/_global-error/page-e656bb9bc0f3fd3d.js +0 -1
  438. package/dist/web/_next/static/chunks/app/_not-found/page-877523282abd5a7c.js +0 -1
  439. package/dist/web/_next/static/chunks/app/admin/access/page-65febd13b3d1fc91.js +0 -5
  440. package/dist/web/_next/static/chunks/app/admin/login/page-8ff8150184b7ccaa.js +0 -1
  441. package/dist/web/_next/static/chunks/app/admin/ota/page-d8766baa3680522d.js +0 -5
  442. package/dist/web/_next/static/chunks/app/admin/page-6237b1487c05f33e.js +0 -5
  443. package/dist/web/_next/static/chunks/app/admin/turn/page-6a6b695b67d59451.js +0 -5
  444. package/dist/web/_next/static/chunks/app/dev/question/page-bdedfcfce7a3c516.js +0 -1
  445. package/dist/web/_next/static/chunks/app/layout-a0e78c8427f97e4f.js +0 -1
  446. package/dist/web/_next/static/chunks/app/login/page-edc7457ddecf9262.js +0 -1
  447. package/dist/web/_next/static/chunks/app/page-b76772608a876c23.js +0 -22
  448. package/dist/web/_next/static/chunks/app/workspace/browse/page-e656bb9bc0f3fd3d.js +0 -1
  449. package/dist/web/_next/static/chunks/app/workspace/editor/page-e656bb9bc0f3fd3d.js +0 -1
  450. package/dist/web/_next/static/chunks/app/workspace/files/page-e656bb9bc0f3fd3d.js +0 -1
  451. package/dist/web/_next/static/chunks/app/workspace/git/page-e656bb9bc0f3fd3d.js +0 -1
  452. package/dist/web/_next/static/chunks/app/workspace/layout-0fd9ea03182e9c89.js +0 -15
  453. package/dist/web/_next/static/chunks/app/workspace/mobile/page-e656bb9bc0f3fd3d.js +0 -1
  454. package/dist/web/_next/static/chunks/app/workspace/page-e656bb9bc0f3fd3d.js +0 -1
  455. package/dist/web/_next/static/chunks/app/workspace/pair/page-e656bb9bc0f3fd3d.js +0 -1
  456. package/dist/web/_next/static/chunks/app/workspace/remote/page-e656bb9bc0f3fd3d.js +0 -1
  457. package/dist/web/_next/static/chunks/app/workspace/terminal/[sessionId]/page-e656bb9bc0f3fd3d.js +0 -1
  458. package/dist/web/_next/static/chunks/app/workspace/welcome/page-e656bb9bc0f3fd3d.js +0 -1
  459. package/dist/web/_next/static/chunks/app/workspace/workspaces/page-e656bb9bc0f3fd3d.js +0 -1
  460. package/dist/web/_next/static/chunks/c7879cf7-0d16fce1674078f9.js +0 -1
  461. package/dist/web/_next/static/chunks/cdcce140.7a440644c3dd52b8.js +0 -1
  462. package/dist/web/_next/static/chunks/framework-42053c69543a55f9.js +0 -1
  463. package/dist/web/_next/static/chunks/main-255c95c36766ce86.js +0 -5
  464. package/dist/web/_next/static/chunks/main-app-1831d4f902c3fcb9.js +0 -1
  465. package/dist/web/_next/static/chunks/next/dist/client/components/builtin/app-error-e656bb9bc0f3fd3d.js +0 -1
  466. package/dist/web/_next/static/chunks/next/dist/client/components/builtin/forbidden-e656bb9bc0f3fd3d.js +0 -1
  467. package/dist/web/_next/static/chunks/next/dist/client/components/builtin/global-error-76800531999827bd.js +0 -1
  468. package/dist/web/_next/static/chunks/next/dist/client/components/builtin/not-found-e656bb9bc0f3fd3d.js +0 -1
  469. package/dist/web/_next/static/chunks/next/dist/client/components/builtin/unauthorized-e656bb9bc0f3fd3d.js +0 -1
  470. package/dist/web/_next/static/chunks/webpack-f3500fd1fae71c88.js +0 -1
  471. package/dist/web/_next/static/css/1b307dedbb687210.css +0 -1
  472. package/dist/web/proxy.html +0 -179
  473. package/dist/web/sw-site.js +0 -283
  474. package/dist/web/swBridgeClaim.js +0 -57
  475. /package/dist/web/_next/static/{DdbafQkcX_ZaKRMjMeNKp → 55Oo1FQxj9HIxB7QE1XWG}/_buildManifest.js +0 -0
  476. /package/dist/web/_next/static/{DdbafQkcX_ZaKRMjMeNKp → 55Oo1FQxj9HIxB7QE1XWG}/_ssgManifest.js +0 -0
  477. /package/dist/web/_next/static/chunks/{1311.8c6b8930e22ceea0.js → 6153.8c6b8930e22ceea0.js} +0 -0
  478. /package/dist/web/_next/static/chunks/{3692.8c6b8930e22ceea0.js → 8534.8c6b8930e22ceea0.js} +0 -0
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[4300],{38415:(e,t,r)=>{r.d(t,{Gf:()=>d,Gi:()=>x,Hu:()=>c,Nn:()=>m,O8:()=>l,cu:()=>i,el:()=>a,ij:()=>p,l7:()=>n,no:()=>u,pe:()=>o,rl:()=>s,xO:()=>b});let o="https://api.github.com",s="https://github.com/decolua/9remote",l=`${o}/repos/decolua/9remote`,a=`${l}/releases?per_page=100`,n=!1,c=".devcontainer/devcontainer.json",d="NREMOTE_API_KEY",i={name:"9Remote",image:"mcr.microsoft.com/devcontainers/universal:latest",postCreateCommand:"npm install -g 9remote@latest",postAttachCommand:"nohup 9remote start > /tmp/9remote.log 2>&1 &",forwardPorts:[2208],portsAttributes:{2208:{label:"9Remote Server",onAutoForward:"silent",visibility:"public"}}},m=3e3,p=60,x={available:"Available",starting:"Starting",shutdown:"Shutdown",unknown:"Unknown"},u={user:"/user",codespaces:"/user/codespaces",codespaceByName:e=>`/user/codespaces/${e}`,startCodespace:e=>`/user/codespaces/${e}/start`,userReposList:"/user/repos?per_page=100&sort=updated&affiliation=owner,collaborator",repoContents:(e,t,r)=>`/repos/${e}/${t}/contents/${r}`,createCodespaceForRepo:(e,t)=>`/repos/${e}/${t}/codespaces`,codespaceSecretsPublicKey:"/user/codespaces/secrets/public-key",codespaceSecret:e=>`/user/codespaces/secrets/${e}`,codespaceSecretRepos:(e,t)=>`/user/codespaces/secrets/${e}/repositories/${t}`};function b(e){return`https://${e}-2208.app.github.dev`}},48310:(e,t,r)=>{r.d(t,{w:()=>a});var o=r(1521),s=r(38415);let l="9remote_github_stars";function a(){let[e,t]=(0,o.useState)(null);return(0,o.useEffect)(()=>{try{let e=localStorage.getItem(l);if(e){let{count:r,timestamp:o}=JSON.parse(e);if("number"==typeof r&&t(r),Date.now()-o<36e5)return}}catch{}let e=!0;return fetch(s.O8).then(e=>e.ok?e.json():null).then(r=>{if(!e||"number"!=typeof r?.stargazers_count)return;let o=r.stargazers_count;t(o);try{localStorage.setItem(l,JSON.stringify({count:o,timestamp:Date.now()}))}catch{}}).catch(()=>{}),()=>{e=!1}},[]),{stars:e,formattedStars:null==e?"":e>=1e3?(e/1e3).toFixed(1).replace(/\.0$/,"")+"k":String(e)}}},59255:(e,t,r)=>{r.d(t,{CV:()=>o,E4:()=>u,Is:()=>p,JN:()=>a,Ji:()=>x,KC:()=>n,Kd:()=>b,UH:()=>d,UP:()=>i,Yu:()=>m,od:()=>l,rl:()=>c,uI:()=>h});let o={bg:"var(--color-bg)",bgElevated:"var(--color-surface)",bgPanel:"var(--color-surface-2)",border:"var(--color-border)",borderStrong:"var(--color-border)",borderAccent:"color-mix(in srgb, var(--color-accent) 35%, transparent)",text:"var(--color-text)",textDim:"var(--color-text-muted)",textMuted:"var(--color-text-subtle)",accent:"var(--color-accent)",accentGlow:"color-mix(in srgb, var(--color-accent) 40%, transparent)",accentSoft:"color-mix(in srgb, var(--color-accent) 12%, transparent)",success:"var(--color-success)",warn:"#F59E0B",err:"var(--color-danger)"},s="https://github.com/decolua/9remote",l="https://apps.apple.com/us/app/9remote/id6796664210",a="https://play.google.com/store/apps/details?id=cc.remote9.app&pli=1",n="/download",c=s;function d(){if("u"<typeof navigator)return"other";let e=navigator.userAgent;return/iPhone|iPad|iPod/.test(e)?"other":/Mac/.test(e)?"macos":/Win/.test(e)?"windows":"other"}let i=[{id:"dmg",os:"macOS",short:"macOS",label:"Universal \xb7 Intel + Apple silicon",ext:".dmg",asset:"9Remote-macos-universal.dmg"},{id:"setup",os:"Windows",short:"Win setup",label:"Installer \xb7 x64",ext:".exe",asset:"9Remote-windows-x64-setup.exe"},{id:"portable",os:"Windows",short:"Win portable",label:"Portable \xb7 no install",ext:".exe",asset:"9Remote-windows-x64-portable.exe"}],m=[{tag:"v3.0.31",date:"2026-09-28"},{tag:"v3.0.3",date:"2026-09-21"},{tag:"v3.0.0",date:"2026-09-20"},{tag:"v3.5.9",date:"2026-09-15"}],p=(e,t)=>`${s}/releases/download/${e}/${t}`,x={tag:"v3.0.31",assets:{dmg:`${s}/releases/download/v3.0.31/9Remote-macos-universal.dmg`,setup:`${s}/releases/download/v3.0.31/9Remote-windows-x64-setup.exe`,portable:`${s}/releases/download/v3.0.31/9Remote-windows-x64-portable.exe`,debAmd64:`${s}/releases/download/v3.0.30/9Remote-linux-amd64.deb`,debArm64:`${s}/releases/download/v3.0.30/9Remote-linux-arm64.deb`,appImageArm64:`${s}/releases/download/v3.0.30/9Remote-linux-arm64.AppImage`}},u=e=>e.replace(/^v/,""),b=e=>[...e].sort((e,t)=>t.date.localeCompare(e.date)),h=[{role:"Host",title:"On your machine",desc:"Serves your terminals, screen and files."},{role:"Client",title:"With you anywhere",desc:"Same session on any screen — nothing to sync."}]},69475:(e,t,r)=>{r.d(t,{A:()=>i});var o=r(73365),s=r(1521),l=r(99568),a=r(59255),n=r(90753),c=r(48310);let d=[{href:"#features",label:"Features"},{href:"#security",label:"Security"},{href:"#how-it-works",label:"How It Works"},{href:"https://docs.9remote.cc/",label:"Docs",external:!0},{href:"https://github.com/decolua/9remote",label:"GitHub",external:!0}];function i(){let[e,t]=(0,s.useState)(!1),[r,i]=(0,s.useState)(!1),{formattedStars:m}=(0,c.w)(),p="3.0.34";return(0,s.useEffect)(()=>{let e=()=>t(window.scrollY>20);return window.addEventListener("scroll",e),()=>window.removeEventListener("scroll",e)},[]),(0,o.jsxs)("nav",{className:"fixed top-0 left-0 right-0 z-50 transition-all duration-300",style:{background:e?"color-mix(in srgb, var(--color-bg) 75%, transparent)":"transparent",backdropFilter:e?"blur(16px)":"none",borderBottom:e?`1px solid ${a.CV.border}`:"1px solid transparent"},children:[(0,o.jsxs)("div",{className:"max-w-7xl mx-auto px-6 h-16 flex items-center justify-between",children:[(0,o.jsxs)(l,{href:"/",className:"flex items-center gap-3 group",children:[(0,o.jsx)("img",{src:"/icon-192.png",alt:"9Remote Logo",className:"w-8 h-8 rounded-lg object-contain shadow-md shadow-brand-500/20"}),(0,o.jsx)("span",{className:"text-xl font-bold tracking-tight",style:{color:a.CV.text},children:"9Remote"}),p&&(0,o.jsxs)("span",{className:"px-2 py-0.5 text-xs font-mono font-medium rounded-full bg-brand-500/10 text-brand-400 border border-brand-500/20",children:["v",p]})]}),(0,o.jsx)("div",{className:"hidden md:flex items-center gap-7",children:d.map(e=>(0,o.jsxs)("a",{href:e.href,target:e.external?"_blank":void 0,rel:e.external?"noopener noreferrer":void 0,className:"text-sm transition-colors flex items-center gap-1.5",style:{color:a.CV.textDim},onMouseEnter:e=>e.currentTarget.style.color=a.CV.text,onMouseLeave:e=>e.currentTarget.style.color=a.CV.textDim,children:[(0,o.jsx)("span",{children:e.label}),"GitHub"===e.label&&m&&(0,o.jsxs)("span",{className:"text-[11px] font-mono px-1.5 py-0.5 rounded-full border border-border-subtle bg-surface-2/80 text-text",children:["★ ",m]})]},e.label))}),(0,o.jsxs)("div",{className:"hidden md:flex items-center gap-3",children:[(0,o.jsx)(n.A,{}),(0,o.jsx)(l,{href:a.KC,className:"px-4 py-2 rounded-lg font-semibold text-sm border transition-transform hover:scale-[1.03]",style:{background:a.CV.bgPanel,borderColor:a.CV.border,color:a.CV.text},children:(0,o.jsx)("span",{children:"Download Host"})}),(0,o.jsx)(l,{href:"/login",className:"btn-cta px-5 py-2 rounded-lg font-semibold text-sm transition-transform hover:scale-[1.03]",style:{background:"var(--color-text)",color:"var(--color-bg)"},children:(0,o.jsx)("span",{children:"Remote"})})]}),(0,o.jsxs)("div",{className:"md:hidden flex items-center gap-1.5",children:[(0,o.jsx)(n.A,{}),(0,o.jsx)("button",{onClick:()=>i(!r),className:"p-2",style:{color:a.CV.text},children:(0,o.jsx)("svg",{className:"w-6 h-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:r?(0,o.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"}):(0,o.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M4 6h16M4 12h16M4 18h16"})})})]})]}),r&&(0,o.jsx)("div",{className:"md:hidden",style:{background:"color-mix(in srgb, var(--color-bg) 95%, transparent)",backdropFilter:"blur(16px)",borderTop:`1px solid ${a.CV.border}`},children:(0,o.jsxs)("div",{className:"flex flex-col gap-4 p-6",children:[d.map(e=>(0,o.jsxs)("a",{href:e.href,target:e.external?"_blank":void 0,rel:e.external?"noopener noreferrer":void 0,onClick:()=>i(!1),className:"text-sm flex items-center justify-between",style:{color:a.CV.textDim},children:[(0,o.jsx)("span",{children:e.label}),"GitHub"===e.label&&m&&(0,o.jsxs)("span",{className:"text-xs font-mono px-2 py-0.5 rounded-full border border-border-subtle bg-surface-2 text-text",children:["★ ",m]})]},e.label)),(0,o.jsx)(l,{href:a.KC,onClick:()=>i(!1),className:"px-6 py-2 rounded-lg font-semibold text-sm text-center border",style:{background:a.CV.bgPanel,borderColor:a.CV.border,color:a.CV.text},children:"Download Host"}),(0,o.jsx)(l,{href:"/login",className:"px-6 py-2 rounded-lg font-semibold text-sm text-center",style:{background:"var(--color-text)",color:"var(--color-bg)"},children:"Remote"})]})})]})}},83974:(e,t,r)=>{r.d(t,{A:()=>d});var o=r(73365),s=r(99568),l=r(59255);let a=[{href:"/login",label:"Remote",internal:!0},{href:"/workspace",label:"Terminal",internal:!0},{href:"/remote",label:"Remote Desktop",internal:!0},{href:"https://apps.apple.com/us/app/9remote/id6796664210",label:"iOS (App Store)"},{href:"https://play.google.com/store/apps/details?id=cc.remote9.app&pli=1",label:"Android (Google Play)"}],n=[{href:"https://github.com/decolua/9remote",label:"GitHub"},{href:"https://www.npmjs.com/package/9remote",label:"NPM"},{href:"https://docs.9remote.cc/",label:"Documentation"},{href:"https://www.facebook.com/groups/9teamvn",label:"Community"}];function c({href:e,label:t,internal:r}){return(0,o.jsx)(r?s:"a",{href:e,...r?{}:{target:"_blank",rel:"noopener noreferrer"},className:"text-sm transition-colors",style:{color:l.CV.textDim},onMouseEnter:e=>e.currentTarget.style.color=l.CV.accent,onMouseLeave:e=>e.currentTarget.style.color=l.CV.textDim,children:t})}function d(){let e="3.0.34";return(0,o.jsx)("footer",{className:"relative py-14 px-4 sm:px-6 lg:px-8 border-t",style:{background:l.CV.bg,borderColor:l.CV.border},children:(0,o.jsxs)("div",{className:"max-w-7xl mx-auto",children:[(0,o.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-4 gap-8 mb-8",children:[(0,o.jsxs)("div",{className:"col-span-1 md:col-span-2",children:[(0,o.jsxs)("div",{className:"flex items-center gap-3 mb-4",children:[(0,o.jsx)("img",{src:"/icon-192.png",alt:"9Remote Logo",className:"w-9 h-9 rounded-lg object-contain shadow-md shadow-brand-500/20"}),(0,o.jsx)("h3",{className:"text-xl font-bold",style:{color:l.CV.text},children:"9Remote"})]}),(0,o.jsx)("p",{className:"text-sm max-w-md mb-4",style:{color:l.CV.textDim},children:"Remote everything, everywhere. Remote IDE, 60fps desktop, files, emulator & vibe coding on any screen."}),(0,o.jsxs)("p",{className:"text-xs",style:{color:l.CV.textMuted},children:["\xa9 ",new Date().getFullYear()," 9Remote. All rights reserved.",e&&(0,o.jsxs)("span",{className:"ml-2",children:["v",e]})]})]}),(0,o.jsxs)("div",{children:[(0,o.jsx)("h4",{className:"font-semibold mb-4 text-sm",style:{color:l.CV.text},children:"Product"}),(0,o.jsx)("ul",{className:"space-y-2",children:a.map(e=>(0,o.jsx)("li",{children:(0,o.jsx)(c,{...e})},e.label))})]}),(0,o.jsxs)("div",{children:[(0,o.jsx)("h4",{className:"font-semibold mb-4 text-sm",style:{color:l.CV.text},children:"Resources"}),(0,o.jsx)("ul",{className:"space-y-2",children:n.map(e=>(0,o.jsx)("li",{children:(0,o.jsx)(c,{...e})},e.label))})]})]}),(0,o.jsxs)("div",{className:"pt-8 flex flex-col sm:flex-row justify-between items-center gap-4 border-t",style:{borderColor:l.CV.border},children:[(0,o.jsx)("p",{className:"text-xs",style:{color:l.CV.textMuted},children:"Built with Next.js, Socket.io, and Cloudflare Workers"}),(0,o.jsx)("div",{className:"flex gap-6",children:n.slice(0,3).map(e=>(0,o.jsx)("a",{href:e.href,target:"_blank",rel:"noopener noreferrer",className:"text-xs transition-colors",style:{color:l.CV.textMuted},onMouseEnter:e=>e.currentTarget.style.color=l.CV.accent,onMouseLeave:e=>e.currentTarget.style.color=l.CV.textMuted,children:e.label},e.label))})]})]})})}}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[4303],{44303:(e,s,a)=>{a.d(s,{createGitGraphServices:()=>c.b});var c=a(67413);a(24078)}}]);
@@ -1,226 +0,0 @@
1
- "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[4551],{25292:(t,e,s)=>{s.d(e,{P:()=>n});var i=s(84187),r=s(14561),a=s(68567),n=(0,a.K)((t,e,s,a)=>{t.attr("class",s);let{width:n,height:c,x:h,y:d}=o(t,e);(0,i.a$)(t,c,n,a);let u=l(h,d,n,c,e);t.attr("viewBox",u),r.R.debug(`viewBox configured: ${u} with padding: ${e}`)},"setupViewPortForSVG"),o=(0,a.K)((t,e)=>{let s=t.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:s.width+2*e,height:s.height+2*e,x:s.x,y:s.y}},"calculateDimensionsWithPadding"),l=(0,a.K)((t,e,s,i,r)=>`${t-r} ${e-r} ${s} ${i}`,"createViewBox")},32631:(t,e,s)=>{s.d(e,{A:()=>a});var i=s(68567),r=s(10312),a=(0,i.K)((t,e)=>{let s;return"sandbox"===e&&(s=(0,r.Ltv)("#i"+t)),("sandbox"===e?(0,r.Ltv)(s.nodes()[0].contentDocument.body):(0,r.Ltv)("body")).select(`[id="${t}"]`)},"getDiagramElement")},67106:(t,e,s)=>{s.d(e,{CP:()=>d,Ck:()=>y,HT:()=>p,PB:()=>u,aC:()=>h,lC:()=>l,m:()=>c,tk:()=>o});var i=s(84187),r=s(68567),a=s(83153),n=s(10312),o=(0,r.K)((t,e)=>{let s=t.append("rect");if(s.attr("x",e.x),s.attr("y",e.y),s.attr("fill",e.fill),s.attr("stroke",e.stroke),s.attr("width",e.width),s.attr("height",e.height),e.name&&s.attr("name",e.name),e.rx&&s.attr("rx",e.rx),e.ry&&s.attr("ry",e.ry),void 0!==e.attrs)for(let t in e.attrs)s.attr(t,e.attrs[t]);return e.class&&s.attr("class",e.class),s},"drawRect"),l=(0,r.K)((t,e)=>{o(t,{x:e.startx,y:e.starty,width:e.stopx-e.startx,height:e.stopy-e.starty,fill:e.fill,stroke:e.stroke,class:"rect"}).lower()},"drawBackgroundRect"),c=(0,r.K)((t,e)=>{let s=e.text.replace(i.H1," "),r=t.append("text");r.attr("x",e.x),r.attr("y",e.y),r.attr("class","legend"),r.style("text-anchor",e.anchor),e.class&&r.attr("class",e.class);let a=r.append("tspan");return a.attr("x",e.x+2*e.textMargin),a.text(s),r},"drawText"),h=(0,r.K)((t,e,s,i)=>{let r=t.append("image");r.attr("x",e),r.attr("y",s);let n=(0,a.J)(i);r.attr("xlink:href",n)},"drawImage"),d=(0,r.K)((t,e,s,i)=>{let r=t.append("use");r.attr("x",e),r.attr("y",s);let n=(0,a.J)(i);r.attr("xlink:href",`#${n}`)},"drawEmbeddedImage"),u=(0,r.K)(()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),"getNoteRect"),p=(0,r.K)(()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0}),"getTextObj"),y=(0,r.K)(()=>{let t=(0,n.Ltv)(".mermaidTooltip");return t.empty()&&(t=(0,n.Ltv)("body").append("div").attr("class","mermaidTooltip").style("opacity",0).style("position","absolute").style("text-align","center").style("max-width","200px").style("padding","2px").style("font-size","12px").style("background","#ffffde").style("border","1px solid #333").style("border-radius","2px").style("pointer-events","none").style("z-index","100")),t},"createTooltip")},74551:(t,e,s)=>{s.d(e,{Zk:()=>y,q7:()=>j,tM:()=>tn,u4:()=>ta});var i=s(32631),r=s(25292),a=s(27546),n=s(67106),o=s(49519),l=s(84187),c=s(14561),h=s(68567),d=s(10312),u=s(27724),p=function(){var t=(0,h.K)(function(t,e,s,i){for(s=s||{},i=t.length;i--;s[t[i]]=e);return s},"o"),e=[1,2],s=[1,3],i=[1,4],r=[2,4],a=[1,9],n=[1,11],o=[1,16],l=[1,17],c=[1,18],d=[1,19],u=[1,33],p=[1,20],y=[1,21],g=[1,22],f=[1,23],m=[1,24],S=[1,26],k=[1,27],b=[1,28],T=[1,29],_=[1,30],x=[1,31],E=[1,32],D=[1,35],$=[1,36],C=[1,37],v=[1,38],I=[1,34],w=[1,4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],A=[1,4,5,14,15,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,39,40,41,45,48,51,52,53,54,57],L=[4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],R={trace:(0,h.K)(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,SD:6,document:7,line:8,statement:9,classDefStatement:10,styleStatement:11,cssClassStatement:12,idStatement:13,DESCR:14,"--\x3e":15,HIDE_EMPTY:16,scale:17,WIDTH:18,COMPOSIT_STATE:19,STRUCT_START:20,STRUCT_STOP:21,STATE_DESCR:22,AS:23,ID:24,FORK:25,JOIN:26,CHOICE:27,CONCURRENT:28,note:29,notePosition:30,NOTE_TEXT:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,CLICK:38,STRING:39,HREF:40,classDef:41,CLASSDEF_ID:42,CLASSDEF_STYLEOPTS:43,DEFAULT:44,style:45,STYLE_IDS:46,STYLEDEF_STYLEOPTS:47,class:48,CLASSENTITY_IDS:49,STYLECLASS:50,direction_tb:51,direction_bt:52,direction_rl:53,direction_lr:54,eol:55,";":56,EDGE_STATE:57,STYLE_SEPARATOR:58,left_of:59,right_of:60,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",6:"SD",14:"DESCR",15:"--\x3e",16:"HIDE_EMPTY",17:"scale",18:"WIDTH",19:"COMPOSIT_STATE",20:"STRUCT_START",21:"STRUCT_STOP",22:"STATE_DESCR",23:"AS",24:"ID",25:"FORK",26:"JOIN",27:"CHOICE",28:"CONCURRENT",29:"note",31:"NOTE_TEXT",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",38:"CLICK",39:"STRING",40:"HREF",41:"classDef",42:"CLASSDEF_ID",43:"CLASSDEF_STYLEOPTS",44:"DEFAULT",45:"style",46:"STYLE_IDS",47:"STYLEDEF_STYLEOPTS",48:"class",49:"CLASSENTITY_IDS",50:"STYLECLASS",51:"direction_tb",52:"direction_bt",53:"direction_rl",54:"direction_lr",56:";",57:"EDGE_STATE",58:"STYLE_SEPARATOR",59:"left_of",60:"right_of"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,3],[9,4],[9,1],[9,2],[9,1],[9,4],[9,3],[9,6],[9,1],[9,1],[9,1],[9,1],[9,4],[9,4],[9,1],[9,2],[9,2],[9,1],[9,5],[9,5],[10,3],[10,3],[11,3],[12,3],[32,1],[32,1],[32,1],[32,1],[55,1],[55,1],[13,1],[13,1],[13,3],[13,3],[30,1],[30,1]],performAction:(0,h.K)(function(t,e,s,i,r,a,n){var o=a.length-1;switch(r){case 3:return i.setRootDoc(a[o]),a[o];case 4:this.$=[];break;case 5:"nl"!=a[o]&&(a[o-1].push(a[o]),this.$=a[o-1]);break;case 6:case 7:case 12:this.$=a[o];break;case 8:this.$="nl";break;case 13:let l=a[o-1];l.description=i.trimColon(a[o]),this.$=l;break;case 14:this.$={stmt:"relation",state1:a[o-2],state2:a[o]};break;case 15:let c=i.trimColon(a[o]);this.$={stmt:"relation",state1:a[o-3],state2:a[o-1],description:c};break;case 19:this.$={stmt:"state",id:a[o-3],type:"default",description:"",doc:a[o-1]};break;case 20:var h=a[o],d=a[o-2].trim();if(a[o].match(":")){var u=a[o].split(":");h=u[0],d=[d,u[1]]}this.$={stmt:"state",id:h,type:"default",description:d};break;case 21:this.$={stmt:"state",id:a[o-3],type:"default",description:a[o-5],doc:a[o-1]};break;case 22:this.$={stmt:"state",id:a[o],type:"fork"};break;case 23:this.$={stmt:"state",id:a[o],type:"join"};break;case 24:this.$={stmt:"state",id:a[o],type:"choice"};break;case 25:this.$={stmt:"state",id:i.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:a[o-1].trim(),note:{position:a[o-2].trim(),text:a[o].trim()}};break;case 29:this.$=a[o].trim(),i.setAccTitle(this.$);break;case 30:case 31:this.$=a[o].trim(),i.setAccDescription(this.$);break;case 32:this.$={stmt:"click",id:a[o-3],url:a[o-2],tooltip:a[o-1]};break;case 33:this.$={stmt:"click",id:a[o-3],url:a[o-1],tooltip:""};break;case 34:case 35:this.$={stmt:"classDef",id:a[o-1].trim(),classes:a[o].trim()};break;case 36:this.$={stmt:"style",id:a[o-1].trim(),styleClass:a[o].trim()};break;case 37:this.$={stmt:"applyClass",id:a[o-1].trim(),styleClass:a[o].trim()};break;case 38:i.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 39:i.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 40:i.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 41:i.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 44:case 45:this.$={stmt:"state",id:a[o].trim(),type:"default",description:""};break;case 46:case 47:this.$={stmt:"state",id:a[o-2].trim(),classes:[a[o].trim()],type:"default",description:""}}},"anonymous"),table:[{3:1,4:e,5:s,6:i},{1:[3]},{3:5,4:e,5:s,6:i},{3:6,4:e,5:s,6:i},t([1,4,5,16,17,19,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],r,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:a,5:n,8:8,9:10,10:12,11:13,12:14,13:15,16:o,17:l,19:c,22:d,24:u,25:p,26:y,27:g,28:f,29:m,32:25,33:S,35:k,37:b,38:T,41:_,45:x,48:E,51:D,52:$,53:C,54:v,57:I},t(w,[2,5]),{9:39,10:12,11:13,12:14,13:15,16:o,17:l,19:c,22:d,24:u,25:p,26:y,27:g,28:f,29:m,32:25,33:S,35:k,37:b,38:T,41:_,45:x,48:E,51:D,52:$,53:C,54:v,57:I},t(w,[2,7]),t(w,[2,8]),t(w,[2,9]),t(w,[2,10]),t(w,[2,11]),t(w,[2,12],{14:[1,40],15:[1,41]}),t(w,[2,16]),{18:[1,42]},t(w,[2,18],{20:[1,43]}),{23:[1,44]},t(w,[2,22]),t(w,[2,23]),t(w,[2,24]),t(w,[2,25]),{30:45,31:[1,46],59:[1,47],60:[1,48]},t(w,[2,28]),{34:[1,49]},{36:[1,50]},t(w,[2,31]),{13:51,24:u,57:I},{42:[1,52],44:[1,53]},{46:[1,54]},{49:[1,55]},t(A,[2,44],{58:[1,56]}),t(A,[2,45],{58:[1,57]}),t(w,[2,38]),t(w,[2,39]),t(w,[2,40]),t(w,[2,41]),t(w,[2,6]),t(w,[2,13]),{13:58,24:u,57:I},t(w,[2,17]),t(L,r,{7:59}),{24:[1,60]},{24:[1,61]},{23:[1,62]},{24:[2,48]},{24:[2,49]},t(w,[2,29]),t(w,[2,30]),{39:[1,63],40:[1,64]},{43:[1,65]},{43:[1,66]},{47:[1,67]},{50:[1,68]},{24:[1,69]},{24:[1,70]},t(w,[2,14],{14:[1,71]}),{4:a,5:n,8:8,9:10,10:12,11:13,12:14,13:15,16:o,17:l,19:c,21:[1,72],22:d,24:u,25:p,26:y,27:g,28:f,29:m,32:25,33:S,35:k,37:b,38:T,41:_,45:x,48:E,51:D,52:$,53:C,54:v,57:I},t(w,[2,20],{20:[1,73]}),{31:[1,74]},{24:[1,75]},{39:[1,76]},{39:[1,77]},t(w,[2,34]),t(w,[2,35]),t(w,[2,36]),t(w,[2,37]),t(A,[2,46]),t(A,[2,47]),t(w,[2,15]),t(w,[2,19]),t(L,r,{7:78}),t(w,[2,26]),t(w,[2,27]),{5:[1,79]},{5:[1,80]},{4:a,5:n,8:8,9:10,10:12,11:13,12:14,13:15,16:o,17:l,19:c,21:[1,81],22:d,24:u,25:p,26:y,27:g,28:f,29:m,32:25,33:S,35:k,37:b,38:T,41:_,45:x,48:E,51:D,52:$,53:C,54:v,57:I},t(w,[2,32]),t(w,[2,33]),t(w,[2,21])],defaultActions:{5:[2,1],6:[2,2],47:[2,48],48:[2,49]},parseError:(0,h.K)(function(t,e){if(e.recoverable)this.trace(t);else{var s=Error(t);throw s.hash=e,s}},"parseError"),parse:(0,h.K)(function(t){var e=this,s=[0],i=[],r=[null],a=[],n=this.table,o="",l=0,c=0,d=0,u=a.slice.call(arguments,1),p=Object.create(this.lexer),y={};for(var g in this.yy)Object.prototype.hasOwnProperty.call(this.yy,g)&&(y[g]=this.yy[g]);p.setInput(t,y),y.lexer=p,y.parser=this,void 0===p.yylloc&&(p.yylloc={});var f=p.yylloc;a.push(f);var m=p.options&&p.options.ranges;function S(){var t;return"number"!=typeof(t=i.pop()||p.lex()||1)&&(t instanceof Array&&(t=(i=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof y.parseError?this.parseError=y.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,h.K)(function(t){s.length=s.length-2*t,r.length=r.length-t,a.length=a.length-t},"popStack"),(0,h.K)(S,"lex");for(var k,b,T,_,x,E,D,$,C,v={};;){if(T=s[s.length-1],this.defaultActions[T]?_=this.defaultActions[T]:(null==k&&(k=S()),_=n[T]&&n[T][k]),void 0===_||!_.length||!_[0]){var I="";for(E in C=[],n[T])this.terminals_[E]&&E>2&&C.push("'"+this.terminals_[E]+"'");I=p.showPosition?"Parse error on line "+(l+1)+":\n"+p.showPosition()+"\nExpecting "+C.join(", ")+", got '"+(this.terminals_[k]||k)+"'":"Parse error on line "+(l+1)+": Unexpected "+(1==k?"end of input":"'"+(this.terminals_[k]||k)+"'"),this.parseError(I,{text:p.match,token:this.terminals_[k]||k,line:p.yylineno,loc:f,expected:C})}if(_[0]instanceof Array&&_.length>1)throw Error("Parse Error: multiple actions possible at state: "+T+", token: "+k);switch(_[0]){case 1:s.push(k),r.push(p.yytext),a.push(p.yylloc),s.push(_[1]),k=null,b?(k=b,b=null):(c=p.yyleng,o=p.yytext,l=p.yylineno,f=p.yylloc,d>0&&d--);break;case 2:if(D=this.productions_[_[1]][1],v.$=r[r.length-D],v._$={first_line:a[a.length-(D||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(D||1)].first_column,last_column:a[a.length-1].last_column},m&&(v._$.range=[a[a.length-(D||1)].range[0],a[a.length-1].range[1]]),void 0!==(x=this.performAction.apply(v,[o,c,l,y,_[1],r,a].concat(u))))return x;D&&(s=s.slice(0,-1*D*2),r=r.slice(0,-1*D),a=a.slice(0,-1*D)),s.push(this.productions_[_[1]][0]),r.push(v.$),a.push(v._$),$=n[s[s.length-2]][s[s.length-1]],s.push($);break;case 3:return!0}}return!0},"parse")};function N(){this.yy={}}return R.lexer={EOF:1,parseError:(0,h.K)(function(t,e){if(this.yy.parser)this.yy.parser.parseError(t,e);else throw Error(t)},"parseError"),setInput:(0,h.K)(function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:(0,h.K)(function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},"input"),unput:(0,h.K)(function(t){var e=t.length,s=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var i=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),s.length-1&&(this.yylineno-=s.length-1);var r=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:s?(s.length===i.length?this.yylloc.first_column:0)+i[i.length-s.length].length-s[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[r[0],r[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},"unput"),more:(0,h.K)(function(){return this._more=!0,this},"more"),reject:(0,h.K)(function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"reject"),less:(0,h.K)(function(t){this.unput(this.match.slice(t))},"less"),pastInput:(0,h.K)(function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:(0,h.K)(function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:(0,h.K)(function(){var t=this.pastInput(),e=Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},"showPosition"),test_match:(0,h.K)(function(t,e){var s,i,r;if(this.options.backtrack_lexer&&(r={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(r.yylloc.range=this.yylloc.range.slice(0))),(i=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=i.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:i?i[i.length-1].length-i[i.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],s=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),s)return s;if(this._backtrack)for(var a in r)this[a]=r[a];return!1},"test_match"),next:(0,h.K)(function(){if(this.done)return this.EOF;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var t,e,s,i,r=this._currentRules(),a=0;a<r.length;a++)if((s=this._input.match(this.rules[r[a]]))&&(!e||s[0].length>e[0].length)){if(e=s,i=a,this.options.backtrack_lexer){if(!1!==(t=this.test_match(s,r[a])))return t;if(!this._backtrack)return!1;e=!1;continue}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,r[i]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:(0,h.K)(function(){var t=this.next();return t||this.lex()},"lex"),begin:(0,h.K)(function(t){this.conditionStack.push(t)},"begin"),popState:(0,h.K)(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:(0,h.K)(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:(0,h.K)(function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},"topState"),pushState:(0,h.K)(function(t){this.begin(t)},"pushState"),stateStackSize:(0,h.K)(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,h.K)(function(t,e,s,i){function r(){let s=e.yytext.indexOf("%%");if(0===s)return!1;if(s>0){let i=e.yytext.slice(0,s),r=e.yytext.slice(s);r&&t.lexer.unput(r),e.yytext=i}return!0}switch((0,h.K)(r,"processId"),s){case 0:return 38;case 1:return 40;case 2:return 39;case 3:return 44;case 4:case 43:return 51;case 5:case 44:return 52;case 6:case 45:return 53;case 7:case 46:return 54;case 8:case 78:return 5;case 9:case 10:case 11:case 12:case 57:case 63:break;case 13:case 33:return this.pushState("SCALE"),17;case 14:case 34:return 18;case 15:case 21:case 35:case 50:case 54:this.popState();break;case 16:return this.begin("acc_title"),33;case 17:return this.popState(),"acc_title_value";case 18:return this.begin("acc_descr"),35;case 19:return this.popState(),"acc_descr_value";case 20:this.begin("acc_descr_multiline");break;case 22:return"acc_descr_multiline_value";case 23:return this.pushState("CLASSDEF"),41;case 24:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";case 25:return this.popState(),this.pushState("CLASSDEFID"),42;case 26:return this.popState(),43;case 27:return this.pushState("CLASS"),48;case 28:return this.popState(),this.pushState("CLASS_STYLE"),49;case 29:return this.popState(),50;case 30:return this.pushState("STYLE"),45;case 31:return this.popState(),this.pushState("STYLEDEF_STYLES"),46;case 32:return this.popState(),47;case 36:this.pushState("STATE");break;case 37:case 40:return this.popState(),e.yytext=e.yytext.slice(0,-8).trim(),25;case 38:case 41:return this.popState(),e.yytext=e.yytext.slice(0,-8).trim(),26;case 39:case 42:return this.popState(),e.yytext=e.yytext.slice(0,-10).trim(),27;case 47:this.pushState("STATE_STRING");break;case 48:return this.pushState("STATE_ID"),"AS";case 49:case 65:if(!r())return;return this.popState(),"ID";case 51:return"STATE_DESCR";case 52:throw Error('Error: State name must be a single word. Found: "'+e.yytext.trim()+'"');case 53:return 19;case 55:return this.popState(),this.pushState("struct"),20;case 56:return this.popState(),21;case 58:return this.begin("NOTE"),29;case 59:return this.popState(),this.pushState("NOTE_ID"),59;case 60:return this.popState(),this.pushState("NOTE_ID"),60;case 61:this.popState(),this.pushState("FLOATING_NOTE");break;case 62:return this.popState(),this.pushState("FLOATING_NOTE_ID"),"AS";case 64:return"NOTE_TEXT";case 66:if(!r())return;return this.popState(),this.pushState("NOTE_TEXT"),24;case 67:return this.popState(),e.yytext=e.yytext.substr(2).trim(),31;case 68:return this.popState(),e.yytext=e.yytext.slice(0,-8).trim(),31;case 69:case 70:return 6;case 71:return 16;case 72:return 57;case 73:if(!r())return;return 24;case 74:return e.yytext=e.yytext.trim(),14;case 75:return 15;case 76:return 28;case 77:return 58;case 79:return"INVALID"}},"anonymous"),rules:[/^(?:click\b)/i,/^(?:href\b)/i,/^(?:"[^"]*")/i,/^(?:default\b)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:[\n]+)/i,/^(?:[\s]+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:classDef\s+)/i,/^(?:DEFAULT\s+)/i,/^(?:\w+\s+)/i,/^(?:[^\n]*)/i,/^(?:class\s+)/i,/^(?:(\w+)+((,\s*\w+)*))/i,/^(?:[^\n]*)/i,/^(?:style\s+)/i,/^(?:[\w,]+\s+)/i,/^(?:[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:state\s+)/i,/^(?:.*<<fork>>)/i,/^(?:.*<<join>>)/i,/^(?:.*<<choice>>)/i,/^(?:.*\[\[fork\]\])/i,/^(?:.*\[\[join\]\])/i,/^(?:.*\[\[choice\]\])/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:["])/i,/^(?:\s*as\s+)/i,/^(?:[^\n\{]*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:\w+\s+\w+.*?\{)/i,/^(?:[^\n\s\{]+)/i,/^(?:\n)/i,/^(?:\{)/i,/^(?:\})/i,/^(?:[\n])/i,/^(?:note\s+)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:")/i,/^(?:\s*as\s*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n]*)/i,/^(?:\s*[^:\n\s\-]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:[\s\S]*?\n\s*end note\b)/i,/^(?:stateDiagram\s+)/i,/^(?:stateDiagram-v2\s+)/i,/^(?:hide empty description\b)/i,/^(?:\[\*\])/i,/^(?:[^:\n\s\-\{]+)/i,/^(?:\s*:(?:[^:\n;]|:[^:\n;])+)/i,/^(?:-->)/i,/^(?:--)/i,/^(?::::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{LINE:{rules:[10,11,12],inclusive:!1},struct:{rules:[10,11,12,23,27,30,36,43,44,45,46,56,57,58,72,73,74,75,76,77],inclusive:!1},FLOATING_NOTE_ID:{rules:[65],inclusive:!1},FLOATING_NOTE:{rules:[62,63,64],inclusive:!1},NOTE_TEXT:{rules:[67,68],inclusive:!1},NOTE_ID:{rules:[66],inclusive:!1},NOTE:{rules:[59,60,61],inclusive:!1},STYLEDEF_STYLEOPTS:{rules:[],inclusive:!1},STYLEDEF_STYLES:{rules:[32],inclusive:!1},STYLE_IDS:{rules:[],inclusive:!1},STYLE:{rules:[31],inclusive:!1},CLASS_STYLE:{rules:[29],inclusive:!1},CLASS:{rules:[28],inclusive:!1},CLASSDEFID:{rules:[26],inclusive:!1},CLASSDEF:{rules:[24,25],inclusive:!1},acc_descr_multiline:{rules:[21,22],inclusive:!1},acc_descr:{rules:[19],inclusive:!1},acc_title:{rules:[17],inclusive:!1},SCALE:{rules:[14,15,34,35],inclusive:!1},ALIAS:{rules:[],inclusive:!1},STATE_ID:{rules:[49],inclusive:!1},STATE_STRING:{rules:[50,51],inclusive:!1},FORK_STATE:{rules:[],inclusive:!1},STATE:{rules:[10,11,12,37,38,39,40,41,42,47,48,52,53,54,55],inclusive:!1},ID:{rules:[10,11,12],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,11,12,13,16,18,20,23,27,30,33,36,55,58,69,70,71,72,73,74,75,77,78,79],inclusive:!0}}},(0,h.K)(N,"Parser"),N.prototype=R,R.Parser=N,new N}();p.parser=p;var y=p,g="TB",f="state",m="root",S="relation",k="default",b="divider",T="fill:none",_="fill: #333",x="markdown",E="normal",D="rect",$="rectWithTitle",C="divider",v="roundedWithTitle",I="statediagram",w=`${I}-state`,A="transition",L=`${A} note-edge`,R=`${I}-note`,N=`${I}-cluster`,K=`${I}-cluster-alt`,O="parent",B="note",F="----",P=`${F}${B}`,Y=`${F}${O}`,G=(0,h.K)((t,e=g)=>{if(!t.doc)return e;let s=e;for(let e of t.doc)"dir"===e.stmt&&(s=e.value);return s},"getDir"),j={getClasses:(0,h.K)(function(t,e){return e.db.getClasses()},"getClasses"),draw:(0,h.K)(async function(t,e,s,n){c.R.info("REF0:"),c.R.info("Drawing state diagram (v2)",e);let{securityLevel:h,state:d,layout:u}=(0,l.D7)();n.db.extract(n.db.getRootDocV2());let p=n.db.getData(),y=(0,i.A)(e,h);p.type=n.type,p.layoutAlgorithm=u,p.nodeSpacing=d?.nodeSpacing||50,p.rankSpacing=d?.rankSpacing||50,"neo"===(0,l.D7)().look?p.markers=["barbNeo"]:p.markers=["barb"],p.diagramId=e,await (0,a.XX)(p,y);try{("function"==typeof n.db.getLinks?n.db.getLinks():new Map).forEach((t,e)=>{let s,i="string"==typeof e?e:"string"==typeof e?.id?e.id:"",r=p.nodes.find(t=>t.id===i);if(!i)return void c.R.warn("⚠️ Invalid or missing stateId from key:",JSON.stringify(e));let a=y.node()?.querySelectorAll("g.node, g.rough-node");if(a?.forEach(t=>{let e=t.textContent?.trim();(t.id===r?.domId||e===i)&&(s=t)}),!s)return void c.R.warn("⚠️ Could not find node matching text:",i);let n=s.parentNode;if(!n)return void c.R.warn("⚠️ Node has no parent, cannot wrap:",i);let o=document.createElementNS("http://www.w3.org/2000/svg","a"),l=t.url.replace(/^"+|"+$/g,"");if(o.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",l),o.setAttribute("target","_blank"),t.tooltip){let e=t.tooltip.replace(/^"+|"+$/g,"");o.setAttribute("title",e),s.setAttribute("title",e)}n.replaceChild(o,s),o.appendChild(s),c.R.info("\uD83D\uDD17 Wrapped node in <a> tag for:",i,t.url)})}catch(t){c.R.error("❌ Error injecting clickable links:",t)}o._K.insertTitle(y,"statediagramTitleText",d?.titleTopMargin??25,n.db.getDiagramTitle()),(0,r.P)(y,8,I,d?.useMaxWidth??!0)},"draw"),getDir:G},z=new Map,M=0;function W(t="",e=0,s="",i=F){let r=null!==s&&s.length>0?`${i}${s}`:"";return`state-${t}${r}-${e}`}(0,h.K)(W,"stateDomId");var U=(0,h.K)((t,e,s,i,r,a,n,o)=>{c.R.trace("items",e),e.forEach(e=>{switch(e.stmt){case f:case k:q(t,e,s,i,r,a,n,o);break;case S:{q(t,e.state1,s,i,r,a,n,o),q(t,e.state2,s,i,r,a,n,o);let c="neo"===n,h={id:"edge"+M,start:e.state1.id,end:e.state2.id,arrowhead:"normal",arrowTypeEnd:c?"arrow_barb_neo":"arrow_barb",style:T,labelStyle:"",label:l.Y2.sanitizeText(e.description??"",(0,l.D7)()),arrowheadStyle:_,labelpos:"c",labelType:x,thickness:E,classes:A,look:n};r.push(h),M++}}})},"setupDoc"),X=(0,h.K)((t,e=g)=>{let s=e;if(t.doc)for(let e of t.doc)"dir"===e.stmt&&(s=e.value);return s},"getDir");function H(t,e,s){if(!e.id||"</join></fork>"===e.id||"</choice>"===e.id)return;e.cssClasses&&(Array.isArray(e.cssCompiledStyles)||(e.cssCompiledStyles=[]),e.cssClasses.split(" ").forEach(t=>{let i=s.get(t);i&&(e.cssCompiledStyles=[...e.cssCompiledStyles??[],...i.styles])}));let i=t.find(t=>t.id===e.id);i?Object.assign(i,e):t.push(e)}function V(t){return t?.classes?.join(" ")??""}function J(t){return t?.styles??[]}(0,h.K)(H,"insertOrUpdateNode"),(0,h.K)(V,"getClassesFromDbInfo"),(0,h.K)(J,"getStylesFromDbInfo");var q=(0,h.K)((t,e,s,i,r,a,n,o)=>{let h=e.id,d=s.get(h),u=V(d),p=J(d),y=(0,l.D7)();if(c.R.info("dataFetcher parsedItem",e,d,p),"root"!==h){let s=D;!0===e.start?s="stateStart":!1===e.start&&(s="stateEnd"),e.type!==k&&(s=e.type),z.get(h)||z.set(h,{id:h,shape:s,description:l.Y2.sanitizeText(h,y),cssClasses:`${u} ${w}`,cssStyles:p});let d=z.get(h);e.description&&(Array.isArray(d.description)?(d.shape=$,d.description.push(e.description)):d.description?.length&&d.description.length>0?(d.shape=$,d.description===h?d.description=[e.description]:d.description=[d.description,e.description]):(d.shape=D,d.description=e.description),d.description=l.Y2.sanitizeTextOrArray(d.description,y)),d.description?.length===1&&d.shape===$&&("group"===d.type?d.shape=v:d.shape=D),!d.type&&e.doc&&(c.R.info("Setting cluster for XCX",h,X(e)),d.type="group",d.isGroup=!0,d.dir=X(e),d.shape=e.type===b?C:v,d.cssClasses=`${d.cssClasses} ${N} ${a?K:""}`);let g={labelStyle:"",shape:d.shape,label:d.description,cssClasses:d.cssClasses,cssCompiledStyles:[],cssStyles:d.cssStyles,id:h,dir:d.dir,domId:W(h,M),type:d.type,isGroup:"group"===d.type,padding:8,rx:10,ry:10,look:n,labelType:"markdown"};if(g.shape===C&&(g.label=""),t&&"root"!==t.id&&(c.R.trace("Setting node ",h," to be child of its parent ",t.id),g.parentId=t.id),g.centerLabel=!0,e.note){let t={labelStyle:"",shape:"note",label:e.note.text,labelType:"markdown",cssClasses:R,cssStyles:[],cssCompiledStyles:[],id:h+P+"-"+M,domId:W(h,M,B),type:d.type,isGroup:"group"===d.type,padding:y.flowchart?.padding,look:n,position:e.note.position},s=h+Y,a={labelStyle:"",shape:"noteGroup",label:e.note.text,cssClasses:d.cssClasses,cssStyles:[],id:h+Y,domId:W(h,M,O),type:"group",isGroup:!0,padding:16,look:n,position:e.note.position};M++,a.id=s,t.parentId=s,H(i,a,o),H(i,t,o),H(i,g,o);let l=h,c=t.id;"left of"===e.note.position&&(l=t.id,c=h),r.push({id:l+"-"+c,start:l,end:c,arrowhead:"none",arrowTypeEnd:"",style:T,labelStyle:"",classes:L,arrowheadStyle:_,labelpos:"c",labelType:x,thickness:E,look:n})}else H(i,g,o)}e.doc&&(c.R.trace("Adding nodes children "),U(e,e.doc,s,i,r,!a,n,o))},"dataFetcher"),Z=(0,h.K)(()=>{z.clear(),M=0},"reset"),Q="start",tt="color",te="fill",ts=(0,h.K)(()=>new Map,"newClassesList"),ti=(0,h.K)(()=>({relations:[],states:new Map,documents:{}}),"newDoc"),tr=(0,h.K)(t=>JSON.parse(JSON.stringify(t)),"clone"),ta=class{constructor(t){this.version=t,this.nodes=[],this.edges=[],this.rootDoc=[],this.classes=ts(),this.documents={root:ti()},this.currentDocument=this.documents.root,this.startEndCount=0,this.dividerCnt=0,this.links=new Map,this.funs=[],this.getAccTitle=l.iN,this.setAccTitle=l.SV,this.getAccDescription=l.m7,this.setAccDescription=l.EI,this.setDiagramTitle=l.ke,this.getDiagramTitle=l.ab,this.clear(),this.setRootDoc=this.setRootDoc.bind(this),this.getDividerId=this.getDividerId.bind(this),this.setDirection=this.setDirection.bind(this),this.trimColon=this.trimColon.bind(this),this.bindFunctions=this.bindFunctions.bind(this)}static{(0,h.K)(this,"StateDB")}static{this.relationType={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3}}extract(t){for(let e of(this.clear(!0),Array.isArray(t)?t:t.doc))switch(e.stmt){case f:this.addState(e.id.trim(),e.type,e.doc,e.description,e.note);break;case S:this.addRelation(e.state1,e.state2,e.description);break;case"classDef":this.addStyleClass(e.id.trim(),e.classes);break;case"style":this.handleStyleDef(e);break;case"applyClass":this.setCssClass(e.id.trim(),e.styleClass);break;case"click":this.addLink(e.id,e.url,e.tooltip)}let e=this.getStates(),s=(0,l.D7)();for(let t of(Z(),q(void 0,this.getRootDocV2(),e,this.nodes,this.edges,!0,s.look,this.classes),this.nodes))if(Array.isArray(t.label)){if(t.description=t.label.slice(1),t.isGroup&&t.description.length>0)throw Error(`Group nodes can only have label. Remove the additional description for node [${t.id}]`);t.label=t.label[0]}}handleStyleDef(t){let e=t.id.trim().split(","),s=t.styleClass.split(",");for(let t of e){let e=this.getState(t);if(!e){let s=t.trim();this.addState(s),e=this.getState(s)}e&&(e.styles=s.map(t=>t.replace(/;/g,"")?.trim()))}}setRootDoc(t){c.R.info("Setting root doc",t),this.rootDoc=t,1===this.version?this.extract(t):this.extract(this.getRootDocV2())}docTranslator(t,e,s){if(e.stmt===S){this.docTranslator(t,e.state1,!0),this.docTranslator(t,e.state2,!1);return}if(e.stmt===f&&("[*]"===e.id?(e.id=t.id+(s?"_start":"_end"),e.start=s):e.id=e.id.trim()),e.stmt!==m&&e.stmt!==f||!e.doc)return;let i=[],r=[];for(let t of e.doc)if(t.type===b){let e=tr(t);e.doc=tr(r),i.push(e),r=[]}else r.push(t);if(i.length>0&&r.length>0){let t={stmt:f,id:(0,o.$C)(),type:"divider",doc:tr(r)};i.push(tr(t)),e.doc=i}e.doc.forEach(t=>this.docTranslator(e,t,!0))}getRootDocV2(){return this.docTranslator({id:m,stmt:m},{id:m,stmt:m,doc:this.rootDoc},!0),{id:m,doc:this.rootDoc}}addState(t,e=k,s,i,r,a,n,o){let h=t?.trim();if(this.currentDocument.states.has(h)){let t=this.currentDocument.states.get(h);if(!t)throw Error(`State not found: ${h}`);t.doc||(t.doc=s),t.type||(t.type=e)}else c.R.info("Adding state ",h,i),this.currentDocument.states.set(h,{stmt:f,id:h,descriptions:[],type:e,doc:s,note:r,classes:[],styles:[],textStyles:[]});if(i&&(c.R.info("Setting state description",h,i),(Array.isArray(i)?i:[i]).forEach(t=>this.addDescription(h,t.trim()))),r){let t=this.currentDocument.states.get(h);if(!t)throw Error(`State not found: ${h}`);t.note=r,t.note.text=l.Y2.sanitizeText(t.note.text,(0,l.D7)())}a&&(c.R.info("Setting state classes",h,a),(Array.isArray(a)?a:[a]).forEach(t=>this.setCssClass(h,t.trim()))),n&&(c.R.info("Setting state styles",h,n),(Array.isArray(n)?n:[n]).forEach(t=>this.setStyle(h,t.trim()))),o&&(c.R.info("Setting state styles",h,n),(Array.isArray(o)?o:[o]).forEach(t=>this.setTextStyle(h,t.trim())))}clear(t){this.nodes=[],this.edges=[],this.funs=[this.setupToolTips.bind(this)],this.documents={root:ti()},this.currentDocument=this.documents.root,this.startEndCount=0,this.classes=ts(),t||(this.links=new Map,(0,l.IU)())}getState(t){return this.currentDocument.states.get(t)}getStates(){return this.currentDocument.states}logDocuments(){c.R.info("Documents = ",this.documents)}getRelations(){return this.currentDocument.relations}addLink(t,e,s){this.links.set(t,{url:e,tooltip:s}),c.R.warn("Adding link",t,e,s)}getLinks(){return this.links}startIdIfNeeded(t=""){return"[*]"===t?(this.startEndCount++,`${Q}${this.startEndCount}`):t}startTypeIfNeeded(t="",e=k){return"[*]"===t?Q:e}endIdIfNeeded(t=""){return"[*]"===t?(this.startEndCount++,`end${this.startEndCount}`):t}endTypeIfNeeded(t="",e=k){return"[*]"===t?"end":e}addRelationObjs(t,e,s=""){let i=this.startIdIfNeeded(t.id.trim()),r=this.startTypeIfNeeded(t.id.trim(),t.type),a=this.startIdIfNeeded(e.id.trim()),n=this.startTypeIfNeeded(e.id.trim(),e.type);this.addState(i,r,t.doc,t.description,t.note,t.classes,t.styles,t.textStyles),this.addState(a,n,e.doc,e.description,e.note,e.classes,e.styles,e.textStyles),this.currentDocument.relations.push({id1:i,id2:a,relationTitle:l.Y2.sanitizeText(s,(0,l.D7)())})}addRelation(t,e,s){if("object"==typeof t&&"object"==typeof e)this.addRelationObjs(t,e,s);else if("string"==typeof t&&"string"==typeof e){let i=this.startIdIfNeeded(t.trim()),r=this.startTypeIfNeeded(t),a=this.endIdIfNeeded(e.trim()),n=this.endTypeIfNeeded(e);this.addState(i,r),this.addState(a,n),this.currentDocument.relations.push({id1:i,id2:a,relationTitle:s?l.Y2.sanitizeText(s,(0,l.D7)()):void 0})}}addDescription(t,e){let s=this.currentDocument.states.get(t),i=e.startsWith(":")?e.replace(":","").trim():e;s?.descriptions?.push(l.Y2.sanitizeText(i,(0,l.D7)()))}cleanupLabel(t){return t.startsWith(":")?t.slice(2).trim():t.trim()}getDividerId(){return this.dividerCnt++,`divider-id-${this.dividerCnt}`}addStyleClass(t,e=""){this.classes.has(t)||this.classes.set(t,{id:t,styles:[],textStyles:[]});let s=this.classes.get(t);e&&s&&e.split(",").forEach(t=>{let e=t.replace(/([^;]*);/,"$1").trim();if(RegExp(tt).exec(t)){let t=e.replace(te,"bgFill").replace(tt,te);s.textStyles.push(t)}s.styles.push(e)})}getClasses(){return this.classes}setupToolTips(t){let e=(0,n.Ck)();(0,d.Ltv)(t).select("svg").selectAll("g.node, g.rough-node").on("mouseover",t=>{let s=(0,d.Ltv)(t.currentTarget),i=s.attr("title");if(null===i)return;let r=t.currentTarget?.getBoundingClientRect();e.transition().duration(200).style("opacity",".9"),e.style("left",window.scrollX+r.left+(r.right-r.left)/2+"px").style("top",window.scrollY+r.bottom+"px"),e.html(u.A.sanitize(i)),s.classed("hover",!0)}).on("mouseout",t=>{e.transition().duration(500).style("opacity",0),(0,d.Ltv)(t.currentTarget).classed("hover",!1)})}setCssClass(t,e){t.split(",").forEach(t=>{let s=this.getState(t);if(!s){let e=t.trim();this.addState(e),s=this.getState(e)}s?.classes?.push(e)})}setStyle(t,e){this.getState(t)?.styles?.push(e)}setTextStyle(t,e){this.getState(t)?.textStyles?.push(e)}bindFunctions(t){this.funs.forEach(e=>{e(t)})}getDirectionStatement(){return this.rootDoc.find(t=>"dir"===t.stmt)}getDirection(){return this.getDirectionStatement()?.value??"TB"}setDirection(t){let e=this.getDirectionStatement();e?e.value=t:this.rootDoc.unshift({stmt:"dir",value:t})}trimColon(t){return t.startsWith(":")?t.slice(1).trim():t.trim()}getData(){let t=(0,l.D7)();return{nodes:this.nodes,edges:this.edges,other:{},config:t,direction:G(this.getRootDocV2())}}getConfig(){return(0,l.D7)().state}},tn=(0,h.K)(t=>`
2
- defs [id$="-barbEnd"] {
3
- fill: ${t.transitionColor};
4
- stroke: ${t.transitionColor};
5
- }
6
- g.stateGroup text {
7
- fill: ${t.nodeBorder};
8
- stroke: none;
9
- font-size: 10px;
10
- }
11
- g.stateGroup text {
12
- fill: ${t.textColor};
13
- stroke: none;
14
- font-size: 10px;
15
-
16
- }
17
- g.stateGroup .state-title {
18
- font-weight: bolder;
19
- fill: ${t.stateLabelColor};
20
- }
21
-
22
- g.stateGroup rect {
23
- fill: ${t.mainBkg};
24
- stroke: ${t.nodeBorder};
25
- }
26
-
27
- g.stateGroup line {
28
- stroke: ${t.lineColor};
29
- stroke-width: ${t.strokeWidth||1};
30
- }
31
-
32
- .transition {
33
- stroke: ${t.transitionColor};
34
- stroke-width: ${t.strokeWidth||1};
35
- fill: none;
36
- }
37
-
38
- .stateGroup .composit {
39
- fill: ${t.background};
40
- border-bottom: 1px
41
- }
42
-
43
- .stateGroup .alt-composit {
44
- fill: #e0e0e0;
45
- border-bottom: 1px
46
- }
47
-
48
- .state-note {
49
- stroke: ${t.noteBorderColor};
50
- fill: ${t.noteBkgColor};
51
-
52
- text {
53
- fill: ${t.noteTextColor};
54
- stroke: none;
55
- font-size: 10px;
56
- }
57
- }
58
-
59
- .stateLabel .box {
60
- stroke: none;
61
- stroke-width: 0;
62
- fill: ${t.mainBkg};
63
- opacity: 0.5;
64
- }
65
-
66
- .edgeLabel .label rect {
67
- fill: ${t.labelBackgroundColor};
68
- opacity: 0.5;
69
- }
70
- .edgeLabel {
71
- background-color: ${t.edgeLabelBackground};
72
- p {
73
- background-color: ${t.edgeLabelBackground};
74
- }
75
- rect {
76
- opacity: 0.5;
77
- background-color: ${t.edgeLabelBackground};
78
- fill: ${t.edgeLabelBackground};
79
- }
80
- text-align: center;
81
- }
82
- .edgeLabel .label text {
83
- fill: ${t.transitionLabelColor||t.tertiaryTextColor};
84
- }
85
- .label div .edgeLabel {
86
- color: ${t.transitionLabelColor||t.tertiaryTextColor};
87
- }
88
-
89
- .stateLabel text {
90
- fill: ${t.stateLabelColor};
91
- font-size: 10px;
92
- font-weight: bold;
93
- }
94
-
95
- .node circle.state-start {
96
- fill: ${t.specialStateColor};
97
- stroke: ${t.specialStateColor};
98
- }
99
-
100
- .node .fork-join {
101
- fill: ${t.specialStateColor};
102
- stroke: ${t.specialStateColor};
103
- }
104
-
105
- .node circle.state-end {
106
- fill: ${t.innerEndBackground};
107
- stroke: ${t.background};
108
- stroke-width: 1.5
109
- }
110
- .end-state-inner {
111
- fill: ${t.compositeBackground||t.background};
112
- // stroke: ${t.background};
113
- stroke-width: 1.5
114
- }
115
-
116
- .node rect {
117
- fill: ${t.stateBkg||t.mainBkg};
118
- stroke: ${t.stateBorder||t.nodeBorder};
119
- stroke-width: ${t.strokeWidth||1}px;
120
- }
121
- .node polygon {
122
- fill: ${t.mainBkg};
123
- stroke: ${t.stateBorder||t.nodeBorder};;
124
- stroke-width: ${t.strokeWidth||1}px;
125
- }
126
- [id$="-barbEnd"] {
127
- fill: ${t.lineColor};
128
- }
129
-
130
- .statediagram-cluster rect {
131
- fill: ${t.compositeTitleBackground};
132
- stroke: ${t.stateBorder||t.nodeBorder};
133
- stroke-width: ${t.strokeWidth||1}px;
134
- }
135
-
136
- .cluster-label, .nodeLabel {
137
- color: ${t.stateLabelColor};
138
- // line-height: 1;
139
- }
140
-
141
- .statediagram-cluster rect.outer {
142
- rx: 5px;
143
- ry: 5px;
144
- }
145
- .statediagram-state .divider {
146
- stroke: ${t.stateBorder||t.nodeBorder};
147
- }
148
-
149
- .statediagram-state .title-state {
150
- rx: 5px;
151
- ry: 5px;
152
- }
153
- .statediagram-cluster.statediagram-cluster .inner {
154
- fill: ${t.compositeBackground||t.background};
155
- }
156
- .statediagram-cluster.statediagram-cluster-alt .inner {
157
- fill: ${t.altBackground?t.altBackground:"#efefef"};
158
- }
159
-
160
- .statediagram-cluster .inner {
161
- rx:0;
162
- ry:0;
163
- }
164
-
165
- .statediagram-state rect.basic {
166
- rx: 5px;
167
- ry: 5px;
168
- }
169
- .statediagram-state rect.divider {
170
- stroke-dasharray: 10,10;
171
- fill: ${t.altBackground?t.altBackground:"#efefef"};
172
- }
173
-
174
- .note-edge {
175
- stroke-dasharray: 5;
176
- }
177
-
178
- .statediagram-note rect {
179
- fill: ${t.noteBkgColor};
180
- stroke: ${t.noteBorderColor};
181
- stroke-width: 1px;
182
- rx: 0;
183
- ry: 0;
184
- }
185
- .statediagram-note rect {
186
- fill: ${t.noteBkgColor};
187
- stroke: ${t.noteBorderColor};
188
- stroke-width: 1px;
189
- rx: 0;
190
- ry: 0;
191
- }
192
-
193
- .statediagram-note text {
194
- fill: ${t.noteTextColor};
195
- }
196
-
197
- .statediagram-note .nodeLabel {
198
- color: ${t.noteTextColor};
199
- }
200
- .statediagram .edgeLabel {
201
- color: red; // ${t.noteTextColor};
202
- }
203
-
204
- [id$="-dependencyStart"], [id$="-dependencyEnd"] {
205
- fill: ${t.lineColor};
206
- stroke: ${t.lineColor};
207
- stroke-width: ${t.strokeWidth||1};
208
- }
209
-
210
- .statediagramTitleText {
211
- text-anchor: middle;
212
- font-size: 18px;
213
- fill: ${t.textColor};
214
- }
215
-
216
- [data-look="neo"].statediagram-cluster rect {
217
- fill: ${t.mainBkg};
218
- stroke: ${t.useGradient?"url("+t.svgId+"-gradient)":t.stateBorder||t.nodeBorder};
219
- stroke-width: ${t.strokeWidth??1};
220
- }
221
- [data-look="neo"].statediagram-cluster rect.outer {
222
- rx: ${t.radius}px;
223
- ry: ${t.radius}px;
224
- filter: ${t.dropShadow?t.dropShadow.replace("url(#drop-shadow)",`url(${t.svgId}-drop-shadow)`):"none"}
225
- }
226
- `,"getStyles")}}]);
@@ -1,90 +0,0 @@
1
- "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[4566],{4566:(e,t,n)=>{n.d(t,{diagram:()=>b});var i=n(32631),s=n(25292),o=n(27546);n(11016),n(42982),n(88921),n(34939),n(49877),n(16111),n(12989),n(49519);var r=n(84187),a=n(14561),c=n(68567);let l=new Uint8Array(16),h=[];for(let e=0;e<256;++e)h.push((e+256).toString(16).slice(1));var d=n(93836),g=n(66591),u=n(95191),p=function(){var e=(0,c.K)(function(e,t,n,i){for(n=n||{},i=e.length;i--;n[e[i]]=t);return n},"o"),t=[1,4],n=[1,13],i=[1,12],s=[1,15],o=[1,16],r=[1,20],a=[1,19],l=[6,7,8],h=[1,26],d=[1,24],g=[1,25],u=[6,7,11],p=[1,6,13,15,16,19,22],y=[1,33],m=[1,34],f=[1,6,7,11,13,15,16,19,22],_={trace:(0,c.K)(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mindMap:4,spaceLines:5,SPACELINE:6,NL:7,MINDMAP:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,node:14,ICON:15,CLASS:16,nodeWithId:17,nodeWithoutId:18,NODE_DSTART:19,NODE_DESCR:20,NODE_DEND:21,NODE_ID:22,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"MINDMAP",11:"EOF",13:"SPACELIST",15:"ICON",16:"CLASS",19:"NODE_DSTART",20:"NODE_DESCR",21:"NODE_DEND",22:"NODE_ID"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,2],[12,2],[12,2],[12,1],[12,1],[12,1],[12,1],[12,1],[14,1],[14,1],[18,3],[17,1],[17,4]],performAction:(0,c.K)(function(e,t,n,i,s,o,r){var a=o.length-1;switch(s){case 6:case 7:return i;case 8:i.getLogger().trace("Stop NL ");break;case 9:i.getLogger().trace("Stop EOF ");break;case 11:i.getLogger().trace("Stop NL2 ");break;case 12:i.getLogger().trace("Stop EOF2 ");break;case 15:i.getLogger().info("Node: ",o[a].id),i.addNode(o[a-1].length,o[a].id,o[a].descr,o[a].type);break;case 16:i.getLogger().trace("Icon: ",o[a]),i.decorateNode({icon:o[a]});break;case 17:case 21:i.decorateNode({class:o[a]});break;case 18:i.getLogger().trace("SPACELIST");break;case 19:i.getLogger().trace("Node: ",o[a].id),i.addNode(0,o[a].id,o[a].descr,o[a].type);break;case 20:i.decorateNode({icon:o[a]});break;case 25:i.getLogger().trace("node found ..",o[a-2]),this.$={id:o[a-1],descr:o[a-1],type:i.getType(o[a-2],o[a])};break;case 26:this.$={id:o[a],descr:o[a],type:i.nodeType.DEFAULT};break;case 27:i.getLogger().trace("node found ..",o[a-3]),this.$={id:o[a-3],descr:o[a-1],type:i.getType(o[a-2],o[a])}}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:t},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:t},{6:n,7:[1,10],9:9,12:11,13:i,14:14,15:s,16:o,17:17,18:18,19:r,22:a},e(l,[2,3]),{1:[2,2]},e(l,[2,4]),e(l,[2,5]),{1:[2,6],6:n,12:21,13:i,14:14,15:s,16:o,17:17,18:18,19:r,22:a},{6:n,9:22,12:11,13:i,14:14,15:s,16:o,17:17,18:18,19:r,22:a},{6:h,7:d,10:23,11:g},e(u,[2,22],{17:17,18:18,14:27,15:[1,28],16:[1,29],19:r,22:a}),e(u,[2,18]),e(u,[2,19]),e(u,[2,20]),e(u,[2,21]),e(u,[2,23]),e(u,[2,24]),e(u,[2,26],{19:[1,30]}),{20:[1,31]},{6:h,7:d,10:32,11:g},{1:[2,7],6:n,12:21,13:i,14:14,15:s,16:o,17:17,18:18,19:r,22:a},e(p,[2,14],{7:y,11:m}),e(f,[2,8]),e(f,[2,9]),e(f,[2,10]),e(u,[2,15]),e(u,[2,16]),e(u,[2,17]),{20:[1,35]},{21:[1,36]},e(p,[2,13],{7:y,11:m}),e(f,[2,11]),e(f,[2,12]),{21:[1,37]},e(u,[2,25]),e(u,[2,27])],defaultActions:{2:[2,1],6:[2,2]},parseError:(0,c.K)(function(e,t){if(t.recoverable)this.trace(e);else{var n=Error(e);throw n.hash=t,n}},"parseError"),parse:(0,c.K)(function(e){var t=this,n=[0],i=[],s=[null],o=[],r=this.table,a="",l=0,h=0,d=0,g=o.slice.call(arguments,1),u=Object.create(this.lexer),p={};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(p[y]=this.yy[y]);u.setInput(e,p),p.lexer=u,p.parser=this,void 0===u.yylloc&&(u.yylloc={});var m=u.yylloc;o.push(m);var f=u.options&&u.options.ranges;function _(){var e;return"number"!=typeof(e=i.pop()||u.lex()||1)&&(e instanceof Array&&(e=(i=e).pop()),e=t.symbols_[e]||e),e}"function"==typeof p.parseError?this.parseError=p.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,c.K)(function(e){n.length=n.length-2*e,s.length=s.length-e,o.length=o.length-e},"popStack"),(0,c.K)(_,"lex");for(var E,b,k,S,N,x,L,D,$,v={};;){if(k=n[n.length-1],this.defaultActions[k]?S=this.defaultActions[k]:(null==E&&(E=_()),S=r[k]&&r[k][E]),void 0===S||!S.length||!S[0]){var I="";for(x in $=[],r[k])this.terminals_[x]&&x>2&&$.push("'"+this.terminals_[x]+"'");I=u.showPosition?"Parse error on line "+(l+1)+":\n"+u.showPosition()+"\nExpecting "+$.join(", ")+", got '"+(this.terminals_[E]||E)+"'":"Parse error on line "+(l+1)+": Unexpected "+(1==E?"end of input":"'"+(this.terminals_[E]||E)+"'"),this.parseError(I,{text:u.match,token:this.terminals_[E]||E,line:u.yylineno,loc:m,expected:$})}if(S[0]instanceof Array&&S.length>1)throw Error("Parse Error: multiple actions possible at state: "+k+", token: "+E);switch(S[0]){case 1:n.push(E),s.push(u.yytext),o.push(u.yylloc),n.push(S[1]),E=null,b?(E=b,b=null):(h=u.yyleng,a=u.yytext,l=u.yylineno,m=u.yylloc,d>0&&d--);break;case 2:if(L=this.productions_[S[1]][1],v.$=s[s.length-L],v._$={first_line:o[o.length-(L||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(L||1)].first_column,last_column:o[o.length-1].last_column},f&&(v._$.range=[o[o.length-(L||1)].range[0],o[o.length-1].range[1]]),void 0!==(N=this.performAction.apply(v,[a,h,l,p,S[1],s,o].concat(g))))return N;L&&(n=n.slice(0,-1*L*2),s=s.slice(0,-1*L),o=o.slice(0,-1*L)),n.push(this.productions_[S[1]][0]),s.push(v.$),o.push(v._$),D=r[n[n.length-2]][n[n.length-1]],n.push(D);break;case 3:return!0}}return!0},"parse")};function E(){this.yy={}}return _.lexer={EOF:1,parseError:(0,c.K)(function(e,t){if(this.yy.parser)this.yy.parser.parseError(e,t);else throw Error(e)},"parseError"),setInput:(0,c.K)(function(e,t){return this.yy=t||this.yy||{},this._input=e,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:(0,c.K)(function(){var e=this._input[0];return this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e,e.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},"input"),unput:(0,c.K)(function(e){var t=e.length,n=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var i=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var s=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===i.length?this.yylloc.first_column:0)+i[i.length-n.length].length-n[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[s[0],s[0]+this.yyleng-t]),this.yyleng=this.yytext.length,this},"unput"),more:(0,c.K)(function(){return this._more=!0,this},"more"),reject:(0,c.K)(function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"reject"),less:(0,c.K)(function(e){this.unput(this.match.slice(e))},"less"),pastInput:(0,c.K)(function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:(0,c.K)(function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:(0,c.K)(function(){var e=this.pastInput(),t=Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"},"showPosition"),test_match:(0,c.K)(function(e,t){var n,i,s;if(this.options.backtrack_lexer&&(s={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(s.yylloc.range=this.yylloc.range.slice(0))),(i=e[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=i.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:i?i[i.length-1].length-i[i.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(e[0].length),this.matched+=e[0],n=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack)for(var o in s)this[o]=s[o];return!1},"test_match"),next:(0,c.K)(function(){if(this.done)return this.EOF;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var e,t,n,i,s=this._currentRules(),o=0;o<s.length;o++)if((n=this._input.match(this.rules[s[o]]))&&(!t||n[0].length>t[0].length)){if(t=n,i=o,this.options.backtrack_lexer){if(!1!==(e=this.test_match(n,s[o])))return e;if(!this._backtrack)return!1;t=!1;continue}if(!this.options.flex)break}return t?!1!==(e=this.test_match(t,s[i]))&&e:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:(0,c.K)(function(){var e=this.next();return e||this.lex()},"lex"),begin:(0,c.K)(function(e){this.conditionStack.push(e)},"begin"),popState:(0,c.K)(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:(0,c.K)(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:(0,c.K)(function(e){return(e=this.conditionStack.length-1-Math.abs(e||0))>=0?this.conditionStack[e]:"INITIAL"},"topState"),pushState:(0,c.K)(function(e){this.begin(e)},"pushState"),stateStackSize:(0,c.K)(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,c.K)(function(e,t,n,i){switch(n){case 0:return e.getLogger().trace("Found comment",t.yytext),6;case 1:return 8;case 2:this.begin("CLASS");break;case 3:return this.popState(),16;case 4:case 23:case 26:this.popState();break;case 5:e.getLogger().trace("Begin icon"),this.begin("ICON");break;case 6:return e.getLogger().trace("SPACELINE"),6;case 7:return 7;case 8:return 15;case 9:e.getLogger().trace("end icon"),this.popState();break;case 10:return e.getLogger().trace("Exploding node"),this.begin("NODE"),19;case 11:return e.getLogger().trace("Cloud"),this.begin("NODE"),19;case 12:return e.getLogger().trace("Explosion Bang"),this.begin("NODE"),19;case 13:return e.getLogger().trace("Cloud Bang"),this.begin("NODE"),19;case 14:case 15:case 16:case 17:return this.begin("NODE"),19;case 18:return 13;case 19:return 22;case 20:return 11;case 21:this.begin("NSTR2");break;case 22:return"NODE_DESCR";case 24:e.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 25:return e.getLogger().trace("description:",t.yytext),"NODE_DESCR";case 27:return this.popState(),e.getLogger().trace("node end ))"),"NODE_DEND";case 28:return this.popState(),e.getLogger().trace("node end )"),"NODE_DEND";case 29:return this.popState(),e.getLogger().trace("node end ...",t.yytext),"NODE_DEND";case 30:case 33:case 34:return this.popState(),e.getLogger().trace("node end (("),"NODE_DEND";case 31:case 32:return this.popState(),e.getLogger().trace("node end (-"),"NODE_DEND";case 35:case 36:return e.getLogger().trace("Long description:",t.yytext),20}},"anonymous"),rules:[/^(?:\s*%%.*)/i,/^(?:mindmap\b)/i,/^(?::::)/i,/^(?:.+)/i,/^(?:\n)/i,/^(?:::icon\()/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[^\)]+)/i,/^(?:\))/i,/^(?:-\))/i,/^(?:\(-)/i,/^(?:\)\))/i,/^(?:\))/i,/^(?:\(\()/i,/^(?:\{\{)/i,/^(?:\()/i,/^(?:\[)/i,/^(?:[\s]+)/i,/^(?:[^\(\[\n\)\{\}]+)/i,/^(?:$)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:[^"]+)/i,/^(?:["])/i,/^(?:[\)]\))/i,/^(?:[\)])/i,/^(?:[\]])/i,/^(?:\}\})/i,/^(?:\(-)/i,/^(?:-\))/i,/^(?:\(\()/i,/^(?:\()/i,/^(?:[^\)\]\(\}]+)/i,/^(?:.+(?!\(\())/i],conditions:{CLASS:{rules:[3,4],inclusive:!1},ICON:{rules:[8,9],inclusive:!1},NSTR2:{rules:[22,23],inclusive:!1},NSTR:{rules:[25,26],inclusive:!1},NODE:{rules:[21,24,27,28,29,30,31,32,33,34,35,36],inclusive:!1},INITIAL:{rules:[0,1,2,5,6,7,10,11,12,13,14,15,16,17,18,19,20],inclusive:!0}}},(0,c.K)(E,"Parser"),E.prototype=_,_.Parser=E,new E}();p.parser=p;var y={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},m=class{constructor(){this.nodes=[],this.count=0,this.elements={},this.getLogger=this.getLogger.bind(this),this.nodeType=y,this.clear(),this.getType=this.getType.bind(this),this.getElementById=this.getElementById.bind(this),this.getParent=this.getParent.bind(this),this.getMindmap=this.getMindmap.bind(this),this.addNode=this.addNode.bind(this),this.decorateNode=this.decorateNode.bind(this)}static{(0,c.K)(this,"MindmapDB")}clear(){this.nodes=[],this.count=0,this.elements={},this.baseLevel=void 0}getParent(e){for(let t=this.nodes.length-1;t>=0;t--)if(this.nodes[t].level<e)return this.nodes[t];return null}getMindmap(){return this.nodes.length>0?this.nodes[0]:null}addNode(e,t,n,i){a.R.info("addNode",e,t,n,i);let s=!1;0===this.nodes.length?(this.baseLevel=e,e=0,s=!0):void 0!==this.baseLevel&&(e-=this.baseLevel,s=!1);let o=(0,r.D7)(),c=o.mindmap?.padding??r.UI.mindmap.padding;switch(i){case this.nodeType.ROUNDED_RECT:case this.nodeType.RECT:case this.nodeType.HEXAGON:c*=2}let l={id:this.count++,nodeId:(0,r.jZ)(t,o),level:e,descr:(0,r.jZ)(n,o),type:i,children:[],width:o.mindmap?.maxNodeWidth??r.UI.mindmap.maxNodeWidth,padding:c,isRoot:s},h=this.getParent(e);if(h)h.children.push(l),this.nodes.push(l);else if(s)this.nodes.push(l);else throw Error(`There can be only one root. No parent could be found for ("${l.descr}")`)}getType(e,t){switch(a.R.debug("In get type",e,t),e){case"[":return this.nodeType.RECT;case"(":return")"===t?this.nodeType.ROUNDED_RECT:this.nodeType.CLOUD;case"((":return this.nodeType.CIRCLE;case")":return this.nodeType.CLOUD;case"))":return this.nodeType.BANG;case"{{":return this.nodeType.HEXAGON;default:return this.nodeType.DEFAULT}}setElementForId(e,t){this.elements[e]=t}getElementById(e){return this.elements[e]}decorateNode(e){if(!e)return;let t=(0,r.D7)(),n=this.nodes[this.nodes.length-1];e.icon&&(n.icon=(0,r.jZ)(e.icon,t)),e.class&&(n.class=(0,r.jZ)(e.class,t))}type2Str(e){switch(e){case this.nodeType.DEFAULT:return"no-border";case this.nodeType.RECT:return"rect";case this.nodeType.ROUNDED_RECT:return"rounded-rect";case this.nodeType.CIRCLE:return"circle";case this.nodeType.CLOUD:return"cloud";case this.nodeType.BANG:return"bang";case this.nodeType.HEXAGON:return"hexgon";default:return"no-border"}}assignSections(e,t){if(0===e.level?e.section=void 0:e.section=t,e.children)for(let[n,i]of e.children.entries()){let s=0===e.level?n%11:t;this.assignSections(i,s)}}flattenNodes(e,t){let n=(0,r.D7)(),i=["mindmap-node"];!0===e.isRoot?i.push("section-root","section--1"):void 0!==e.section&&i.push(`section-${e.section}`),e.class&&i.push(e.class);let s=i.join(" "),o=(0,c.K)(e=>{let t=(n.theme?.toLowerCase()??"").includes("redux");switch(e){case y.CIRCLE:return"mindmapCircle";case y.RECT:return"rect";case y.ROUNDED_RECT:return"rounded";case y.CLOUD:return"cloud";case y.BANG:return"bang";case y.HEXAGON:return"hexagon";case y.DEFAULT:return t?"rounded":"defaultMindmapNode";case y.NO_BORDER:default:return"rect"}},"getShapeFromType"),a={id:e.id.toString(),domId:"node_"+e.id.toString(),label:e.descr,labelType:"markdown",isGroup:!1,shape:o(e.type),width:e.width,height:e.height??0,padding:e.padding,cssClasses:s,cssStyles:[],look:n.look,icon:e.icon,x:e.x,y:e.y,level:e.level,nodeId:e.nodeId,type:e.type,section:e.section};if(t.push(a),e.children)for(let n of e.children)this.flattenNodes(n,t)}generateEdges(e,t){if(!e.children)return;let n=(0,r.D7)();for(let i of e.children){let s="edge";void 0!==i.section&&(s+=` section-edge-${i.section}`);let o=e.level+1;s+=` edge-depth-${o}`;let r={id:`edge_${e.id}_${i.id}`,start:e.id.toString(),end:i.id.toString(),type:"normal",curve:"basis",thickness:"normal",look:n.look,classes:s,depth:e.level,section:i.section};t.push(r),this.generateEdges(i,t)}}getData(){let e=this.getMindmap(),t=(0,r.D7)();if(void 0!==(0,r.TM)().layout||(t.layout="cose-bilkent"),!e)return{nodes:[],edges:[],config:t};a.R.debug("getData: mindmapRoot",e,t),this.assignSections(e);let n=[],i=[];this.flattenNodes(e,n),this.generateEdges(e,i),a.R.debug(`getData: processed ${n.length} nodes and ${i.length} edges`);let s=new Map;for(let e of n)s.set(e.id,{shape:e.shape,width:e.width,height:e.height,padding:e.padding});return{nodes:n,edges:i,config:t,rootNode:e,markers:["point"],direction:"TB",nodeSpacing:50,rankSpacing:50,shapes:Object.fromEntries(s),type:"mindmap",diagramId:"mindmap-"+(crypto.randomUUID?crypto.randomUUID():function(e,t,n){let i=(e=e||{}).random??e.rng?.()??crypto.getRandomValues(l);if(i.length<16)throw Error("Random bytes length must be >= 16");if(i[6]=15&i[6]|64,i[8]=63&i[8]|128,t){if((n=n||0)<0||n+16>t.length)throw RangeError(`UUID byte range ${n}:${n+15} is out of buffer bounds`);for(let e=0;e<16;++e)t[n+e]=i[e];return t}return function(e,t=0){return(h[e[t+0]]+h[e[t+1]]+h[e[t+2]]+h[e[t+3]]+"-"+h[e[t+4]]+h[e[t+5]]+"-"+h[e[t+6]]+h[e[t+7]]+"-"+h[e[t+8]]+h[e[t+9]]+"-"+h[e[t+10]]+h[e[t+11]]+h[e[t+12]]+h[e[t+13]]+h[e[t+14]]+h[e[t+15]]).toLowerCase()}(i)}(void 0,void 0,void 0))}}getLogger(){return a.R}},f=(0,c.K)(async(e,t,n,c)=>{a.R.debug("Rendering mindmap diagram\n"+e);let l=c.db,h=l.getData(),d=(0,i.A)(t,h.config.securityLevel);if(h.type=c.type,h.layoutAlgorithm=(0,o.q7)(h.config.layout,{fallback:"cose-bilkent"}),h.diagramId=t,!l.getMindmap())return;h.nodes.forEach(e=>{"rounded"===e.shape?(e.radius=15,e.taper=15,e.stroke="none",e.width=0,e.padding=15):"circle"===e.shape?e.padding=10:"rect"===e.shape?(e.width=0,e.padding=10):"hexagon"===e.shape&&(e.width=0,e.height=0)}),await (0,o.XX)(h,d);let{themeVariables:g}=(0,r.zj)(),{useGradient:u,gradientStart:p,gradientStop:y}=g;if(u&&p&&y){let e=d.attr("id"),t=d.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",p).attr("stop-opacity",1),t.append("stop").attr("offset","100%").attr("stop-color",y).attr("stop-opacity",1)}(0,s.P)(d,h.config.mindmap?.padding??r.UI.mindmap.padding,"mindmapDiagram",h.config.mindmap?.useMaxWidth??r.UI.mindmap.useMaxWidth)},"draw"),_=(0,c.K)(e=>{let{theme:t,look:n}=e,i="";for(let t=0;t<e.THEME_COLOR_LIMIT;t++)e["lineColor"+t]=e["lineColor"+t]||e["cScaleInv"+t],(0,d.A)(e["lineColor"+t])?e["lineColor"+t]=(0,g.A)(e["lineColor"+t],20):e["lineColor"+t]=(0,u.A)(e["lineColor"+t],20);for(let s=0;s<e.THEME_COLOR_LIMIT;s++){let o=""+("neo"===n?Math.max(10-(s-1)*2,2):17-3*s);i+=`
2
- .section-${s-1} rect, .section-${s-1} path, .section-${s-1} circle, .section-${s-1} polygon, .section-${s-1} path {
3
- fill: ${e["cScale"+s]};
4
- }
5
- .section-${s-1} text {
6
- fill: ${e["cScaleLabel"+s]};
7
- }
8
- .section-${s-1} span {
9
- color: ${e["cScaleLabel"+s]};
10
- }
11
- .node-icon-${s-1} {
12
- font-size: 40px;
13
- color: ${e["cScaleLabel"+s]};
14
- }
15
- .section-edge-${s-1}{
16
- stroke: ${e["cScale"+s]};
17
- }
18
- .edge-depth-${s-1}{
19
- stroke-width: ${o};
20
- }
21
- .section-${s-1} line {
22
- stroke: ${e["cScaleInv"+s]} ;
23
- stroke-width: 3;
24
- }
25
-
26
- .disabled, .disabled circle, .disabled text {
27
- fill: lightgray;
28
- }
29
- .disabled text {
30
- fill: #efefef;
31
- }
32
- [data-look="neo"].mindmap-node.section-${s-1} rect, [data-look="neo"].mindmap-node.section-${s-1} path, [data-look="neo"].mindmap-node.section-${s-1} circle, [data-look="neo"].mindmap-node.section-${s-1} polygon {
33
- fill: ${"redux"===t||"redux-dark"===t||"neutral"===t?e.mainBkg:e["cScale"+s]};
34
- stroke: ${"redux"===t||"redux-dark"===t?e.nodeBorder:e["cScale"+s]};
35
- stroke-width: ${e.strokeWidth??2}px;
36
- }
37
- [data-look="neo"].section-edge-${s-1}{
38
- stroke: ${t?.includes("redux")||"neo-dark"===t?e.nodeBorder:e["cScale"+s]};
39
- }
40
- [data-look="neo"].mindmap-node.section-${s-1} text {
41
- fill: ${"redux"===t||"redux-dark"===t?e.nodeBorder:e["cScaleLabel"+("neutral"===t?1:s)]};
42
- }
43
- `}return i},"genSections"),E=(0,c.K)((e,t,n)=>{let i="";for(let s=0;s<e;s++)i+=`
44
- [data-look="neo"].mindmap-node.section-${s-1} rect, [data-look="neo"].mindmap-node.section-${s-1} path, [data-look="neo"].mindmap-node.section-${s-1} circle, [data-look="neo"].mindmap-node.section-${s-1} polygon {
45
- stroke: url(${t}-gradient);
46
- fill: ${n};
47
- }
48
- .section-${s-1} line {
49
- stroke-width: 0;
50
- }`;return i},"genGradient"),b={get db(){return new m},renderer:{draw:f},parser:p,styles:(0,c.K)(e=>{let{theme:t}=e,n=e.svgId,i=e.dropShadow?e.dropShadow.replace("url(#drop-shadow)",`url(${n}-drop-shadow)`):"none";return`
51
- .edge {
52
- stroke-width: 3;
53
- }
54
- ${_(e)}
55
- .section-root rect, .section-root path, .section-root circle, .section-root polygon {
56
- fill: ${e.git0};
57
- }
58
- .section-root text {
59
- fill: ${e.gitBranchLabel0};
60
- }
61
- .section-root span {
62
- color: ${t?.includes("redux")?e.nodeBorder:e.gitBranchLabel0};
63
- }
64
- .icon-container {
65
- height:100%;
66
- display: flex;
67
- justify-content: center;
68
- align-items: center;
69
- }
70
- .edge {
71
- fill: none;
72
- }
73
- .mindmap-node-label {
74
- dy: 1em;
75
- alignment-baseline: middle;
76
- text-anchor: middle;
77
- dominant-baseline: middle;
78
- text-align: center;
79
- }
80
- [data-look="neo"].mindmap-node {
81
- filter: ${i};
82
- }
83
- [data-look="neo"].mindmap-node.section-root rect, [data-look="neo"].mindmap-node.section-root path, [data-look="neo"].mindmap-node.section-root circle, [data-look="neo"].mindmap-node.section-root polygon {
84
- fill: ${t?.includes("redux")?e.mainBkg:e.git0};
85
- }
86
- [data-look="neo"].mindmap-node.section-root .text-inner-tspan {
87
- fill: ${t?.includes("redux")?e.nodeBorder:e["cScaleLabel"+ +("neutral"===t)]};
88
- }
89
- ${e.useGradient&&n&&e.mainBkg?E(e.THEME_COLOR_LIMIT,n,e.mainBkg):""}
90
- `},"getStyles")}},25292:(e,t,n)=>{n.d(t,{P:()=>r});var i=n(84187),s=n(14561),o=n(68567),r=(0,o.K)((e,t,n,o)=>{e.attr("class",n);let{width:r,height:l,x:h,y:d}=a(e,t);(0,i.a$)(e,l,r,o);let g=c(h,d,r,l,t);e.attr("viewBox",g),s.R.debug(`viewBox configured: ${g} with padding: ${t}`)},"setupViewPortForSVG"),a=(0,o.K)((e,t)=>{let n=e.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:n.width+2*t,height:n.height+2*t,x:n.x,y:n.y}},"calculateDimensionsWithPadding"),c=(0,o.K)((e,t,n,i,s)=>`${e-s} ${t-s} ${n} ${i}`,"createViewBox")},32631:(e,t,n)=>{n.d(t,{A:()=>o});var i=n(68567),s=n(10312),o=(0,i.K)((e,t)=>{let n;return"sandbox"===t&&(n=(0,s.Ltv)("#i"+e)),("sandbox"===t?(0,s.Ltv)(n.nodes()[0].contentDocument.body):(0,s.Ltv)("body")).select(`[id="${e}"]`)},"getDiagramElement")}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[4643],{24643:(e,a,o)=>{o.r(a),o.d(a,{default:()=>t});let t={common:{statusIdle:"Idle",statusWorking:"Working",statusBlocked:"Needs input",statusDone:"Your turn",loading:"Carregando...",cancel:"Cancelar",confirm:"Confirmar",save:"Salvar",delete:"Excluir",close:"Fechar",back:"Voltar",edit:"Editar",rename:"Renomear",remove:"Remover",open:"Abrir",yes:"Sim",no:"N\xe3o",ok:"OK",error:"Erro",success:"Sucesso",failed:"Falhou",retry:"Tentar novamente",refresh:"Atualizar",clipboard:"Clipboard",clipboardCopy:"Copy",clipboardEmpty:"Clipboard is empty",search:"Buscar",create:"Criar",new:"Novo",add:"Adicionar",copy:"Copiar",copied:"Copiado",download:"Baixar",upload:"Enviar",enabled:"Ativado",disabled:"Desativado",on:"ligado",off:"desligado",minute:"min",hour:"h",day:"d",minutesAgo:"{n} min atr\xe1s",hoursAgo:"{n} horas atr\xe1s",daysAgo:"{n} dias atr\xe1s"},login:{tagline:"Acesse seu terminal de qualquer lugar",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:"Chave de Acesso",placeholder:"sk-xxx... ou Chave \xdanica (ABC123)",rememberKey:"Lembrar esta chave",connect:"Conectar",connecting:"Conectando...",authenticating:"Autenticando com token...",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:"Chaves Salvas",login:"Entrar",lastLogin:"\xdaltimo login",namePlaceholder:"Name this key (optional)",rename:"Rename",deleteKeyTitle:"Delete key",deleteKeyConfirm:'Are you sure you want to delete "{name}"?',justNow:"Agora mesmo",minutesAgo:"{n}m atr\xe1s",hoursAgo:"{n}h atr\xe1s",daysAgo:"{n}d atr\xe1s",tapToScan:"Toque para escanear",orEnterManually:"ou insira a chave manualmente",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:"In\xedcio",docs:"Documenta\xe7\xe3o"},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:"Menu",language:"Idioma",theme:"Tema",notifications:"Notifica\xe7\xf5es",webgl:"GPU Render (Faster)",webglHint:"Desative se o texto parecer errado",notificationsHint:"Notify when agent finishes",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:"Sites",commandNotes:"Notas de Comandos",community:"Comunidade",installApp:"Instalar App",codespace:"Codespace",logout:"Sair",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:"Recarregar app",remoteDesktop:"\xc1rea de Trabalho Remota",settings:"Configura\xe7\xf5es",enablePush:"Ativar Notifica\xe7\xf5es Push",disablePush:"Desativar Notifica\xe7\xf5es Push",pushHint:"Ative as notifica\xe7\xf5es push para ser avisado quando a IA concluir tarefas",pushActiveHint:"Push notifications are on for this device. You'll be alerted when AI completes tasks.",versionMismatch:"Agente {version} est\xe1 desatualizado",versionMismatchHint:"Alguns recursos podem n\xe3o funcionar. Execute:",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:"Vers\xe3o"},workspace:{loading:"Carregando...",logoutTitle:"Sair",logoutMessage:"Tem certeza de que deseja sair?",failedCreateSession:"Falha ao criar sess\xe3o: {error}",failedRenameSession:"Falha ao renomear sess\xe3o: {error}"},sessions:{headerTitle:"9remote.cc",connected:"Conectado",disconnected:"Desconectado",codespaceStopped:"Codespace parado",placeholder:"Nome do terminal (opcional)",newButton:"+ Novo",empty:"Nenhuma sess\xe3o ativa",emptyHint:"Crie uma nova sess\xe3o para come\xe7ar",created:"Criado {time}",deleteTitle:"Excluir Sess\xe3o",deleteMessage:'Tem certeza de que deseja excluir "{name}"?',editName:"Editar nome",newTerminal:"Novo terminal",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:"Voltar",menu:"Menu",newTerminal:"Novo terminal",remoteDesktop:"\xc1rea de Trabalho Remota",defaultName:"Term"},files:{selectWorkspace:"Selecionar Workspace",recentWorkspaces:"Workspaces Recentes",home:"In\xedcio",root:"Raiz",drive:"Disco {letter}",codespaces:"Codespaces",removeRecent:"Remover dos recentes",removeTitle:"Remover Workspace",removeMessage:'Remover "{name}" dos workspaces recentes?',setAsWorkspace:"Definir como Workspace",openFolder:"Abrir Pasta",newFile:"Novo Arquivo",newFolder:"Nova Pasta",rename:"Renomear",delete:"Excluir",deleteFile:"Excluir Arquivo",deleteFolder:"Excluir Pasta",deleteFileMessage:'Excluir "{name}"?',deleteFolderMessage:'Excluir a pasta "{name}" e todo o seu conte\xfado?',emptyFolder:"Pasta vazia",git:"Git",parent:"Pasta superior",workspace:"Workspace",failedLoad:"Falha ao carregar: {error}",failedDelete:"Falha ao excluir: {error}",failedCreate:"Falha ao criar: {error}",failedRename:"Falha ao renomear: {error}",enterName:"Digite o nome",confirmRename:"Renomear para:",setWorkspace:"Definir Workspace",setAsWorkspaceTitle:"Definir como workspace",switchWorkspace:"Alternar workspace",searchFiles:"Buscar arquivos",toggleHidden:"Alternar arquivos ocultos",searchPlaceholder:"Buscar arquivos...",searching:"Buscando...",noFilesFound:"Nenhum arquivo encontrado",noGitRepo:"Nenhum reposit\xf3rio Git",cannotOpenBinary:"N\xe3o \xe9 poss\xedvel abrir arquivo bin\xe1rio",createNew:"Criar Novo",file:"Arquivo",folder:"Pasta",placeholderFile:"filename.js",placeholderFolder:"nome-da-pasta",pickFile:"Choose files",pickFolder:"Choose folder",copyPath:"Copiar caminho",copyRelPath:"Copy Relative Path",copyName:"Copy Filename",delete:"Excluir",rename:"Renomear",deleteConfirmTitle:"Excluir",deleteConfirmMessage:'Excluir "{name}"?'},editor:{save:"Salvar",saving:"Salvando...",saved:"Salvo",unsaved:"Altera\xe7\xf5es n\xe3o salvas",close:"Fechar",discard:"Descartar",discardTitle:"Descartar Altera\xe7\xf5es",discardMessage:"Voc\xea tem altera\xe7\xf5es n\xe3o salvas. Descart\xe1-las?",unsavedTitle:"Save changes to {name}?",unsavedBody:"Your changes will be lost if you don't save them.",failedLoad:"Falha ao carregar arquivo: {error}",failedSave:"Falha ao salvar: {error}",openFull:"Open in full editor",artifact:"Artifact",readOnly:"Somente leitura",line:"Linha",column:"Coluna",gitDiff:"Diff do Git",typeText:"Digite o texto e insira...",insert:"Inserir",statusModified:"Modificado",statusAdded:"Adicionado",statusUntracked:"N\xe3o rastreado"},git:{title:"Git",branch:"Branch",changes:"Altera\xe7\xf5es",staged:"Em stage",unstaged:"Fora do stage",untracked:"N\xe3o rastreado",commit:"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:"Mensagem de commit",push:"Push",pull:"Pull",fetch:"Fetch",stage:"Stage",stageAll:"Adicionar tudo ao stage",unstage:"Remover do stage",discard:"Descartar",discardChanges:"Descartar Altera\xe7\xf5es",discardMessage:'Descartar altera\xe7\xf5es em "{name}"?',noChanges:"Nenhuma altera\xe7\xe3o",diff:"Diff",pushing:"Enviando...",pulling:"Baixando...",committing:"Realizando commit...",failedCommit:"Falha no commit: {error}",failedPush:"Falha no push: {error}",failedPull:"Falha no pull: {error}",status:"Status",diffTab:"Diff",modified:"Modificado",added:"Adicionado",deleted:"Exclu\xeddo",untrackedTitle:"N\xe3o rastreado",openFile:"Abrir arquivo",discardChangesTitle:"Descartar altera\xe7\xf5es",discardConfirmTitle:"Descartar Altera\xe7\xf5es",discardConfirmDelete:'Tem certeza de que deseja excluir "{name}"? Isso n\xe3o pode ser desfeito.',discardConfirmDiscard:'Tem certeza de que deseja descartar as altera\xe7\xf5es em "{name}"? Isso n\xe3o pode ser desfeito.'},remote:{title:"\xc1rea de Trabalho Remota",connecting:"Conectando...",disconnected:"Desconectado",fullscreen:"Tela Cheia",exitFullscreen:"Sair da Tela Cheia",receivingImage:"Receiving screen…",keyboard:"Teclado",mouse:"Mouse",quality:"Qualidade",fps:"FPS",debug:"Depurar",help:"Ajuda",close:"Fechar",sendKey:"Enviar Tecla",helpTitle:"Ajuda da \xc1rea de Trabalho Remota",notAvailable:"\xc1rea de trabalho remota n\xe3o dispon\xedvel",customizeKeys:"Personalizar teclas",back:"Voltar",resetZoom:"Redefinir zoom",refresh:"Atualizar",rectangleSelection:"Sele\xe7\xe3o retangular",handMode:"Modo m\xe3o",toggleKeyboard:"Alternar teclado nativo",hideControls:"Hide controls",showControls:"Show controls",textBatchInput:"Entrada de texto em lote",extraKeys:"Teclas extras",customizeRemoteKeys:"Personalizar Teclas Remotas",exitRemote:"Sair da \xe1rea de trabalho remota",debugTitle:"Estat\xedsticas de Depura\xe7\xe3o",minimize:"Minimizar",transport:"Transporte",latency:"Lat\xeancia",tilesPerSec:"Tiles/seg",bandwidth:"Largura de banda",clearStats:"Limpar Estat\xedsticas",lockTitle:"Windows est\xe1 bloqueado",lockGrantDesc:'Ative "Desbloquear PC remotamente" no 9remote host deste PC.',lockDesc:"Digite o PIN ou a senha do Windows para este computador",lockPlaceholder:"PIN ou senha do Windows",unlock:"Desbloquear",unlocking:"Desbloqueando…",unlockFailed:"Falha ao desbloquear — verifique seu PIN/senha e tente novamente."},remoteHelp:{modePc:"PC / Mouse",modeTrackpad:"Toque \xb7 Trackpad",modeDirect:"Toque \xb7 Direto",mouseTitle:"Mouse",keyboardTitle:"Teclado",gesturesTrackpadTitle:"Gestos (Trackpad ✋)",gesturesDirectTitle:"Gestos (Direto)",toolbarTitle:"Barra de ferramentas",mouseClickKey:"Clique / Arrastar",mouseClickDesc:"Clique esquerdo, arraste para selecionar/mover",mouseRightKey:"Clique direito",mouseRightDesc:"Menu de contexto no remoto",mouseWheelKey:"Roda",mouseWheelDesc:"Rolar remoto (Shift + Roda = horizontal)",mouseDoubleKey:"Clique duplo",mouseDoubleDesc:"Clique duplo no remoto",keyPhysicalKey:"Teclas f\xedsicas",keyPhysicalDesc:"Enviadas diretamente (Tab, teclas F, etc. capturadas)",keyModifierKey:"Ctrl / Alt / Shift / ⌘",keyModifierDesc:"Modificador fixo — combine com a pr\xf3xima tecla",trackpadSwipeKey:"Deslizar com 1 dedo",trackpadSwipeDesc:"Mover cursor virtual",trackpadTapKey:"Toque com 1 dedo",trackpadTapDesc:"Clique esquerdo no cursor",trackpad2TapKey:"Toque com 2 dedos",trackpad2TapDesc:"Clique direito no cursor",trackpad2SwipeKey:"Deslizar com 2 dedos",trackpad2SwipeDesc:"Rolar na posi\xe7\xe3o do cursor",trackpadPinchKey:"Pin\xe7ar com 2 dedos",trackpadPinchDesc:"Zoom no canvas",trackpadScrollLockKey:"Segurar + arrastar",trackpadScrollLockDesc:"Segure para travar a rolagem, arraste em qualquer dire\xe7\xe3o",directTapKey:"Toque com 1 dedo",directTapDesc:"Clique na posi\xe7\xe3o do toque",directLongKey:"Pressionar longo com 1 dedo",directLongDesc:"Clique direito",directDoubleKey:"Toque duplo com 1 dedo",directDoubleDesc:"Clique duplo",directScrollKey:"Deslizar com 2 dedos",directScrollDesc:"Rolar remoto",directPinchKey:"Pin\xe7ar com 2 dedos",directPinchDesc:"Zoom no canvas",directPanKey:"Arrastar com 1 dedo (zoom>1)",directPanDesc:"Mover canvas",toolbarHandDesc:"Manter clique esquerdo (modo arrastar) — toque novamente para soltar",toolbarMouseDirectDesc:"Mudar para modo Direto",toolbarMouseTrackpadDesc:"Mudar para Trackpad (cursor virtual)",toolbarKeyboardDesc:"Teclado nativo / entrada de texto em lote",toolbarRectDesc:"Modo sele\xe7\xe3o retangular"},remoteControls:{enterToSend:"Tab / Ctrl+Num para mudar de aba",typeToSend:"Digite o texto para enviar...",send:"Enviar",trackpadMode:"Modo trackpad",directMode:"Modo direto",bottomRow:"Linha Inferior",extraPanel:"Painel Extra",exitConfirmMessage:"Tem certeza de que deseja sair da sess\xe3o atual da \xe1rea de trabalho remota?"},connection:{retrying:"Reconectando...",waitingApproval:"Aguardando Aprova\xe7\xe3o",approvalDescription:"O 9Remote host precisa aprovar este dispositivo antes que voc\xea possa se conectar.",approvalHint:"Verifique o terminal na sua m\xe1quina.",rejectedTitle:"Dispositivo Rejeitado",rejectedDescription:"Este dispositivo n\xe3o foi aprovado pelo 9Remote host.",backToLogin:"Voltar ao Login",failed:"Falha na Conex\xe3o",failedDescription:"N\xe3o foi poss\xedvel conectar ap\xf3s {n} tentativas",attemptOf:"Tentativa {n} de {total}",exit:"Sair",cancel:"Cancelar",retry:"Tentar agora"},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:"Sites",localSites:"Sites Locais",selectSitePreview:"Selecione um site para visualizar",browserNewTab:"New tab",browserAddressPlaceholder:"localhost:3000 or /path",browserNotConnected:"Connect to your host first",portPlaceholder:"porta",loadingSites:"Carregando Sites...",notConnected:"Not connected to the host",noSitesFound:"Nenhum site encontrado",startServerHint:"Inicie um servidor local de desenvolvimento para v\xea-lo aqui",siteNamePlaceholder:"Nome do site",saveTitle:"Salvar",editNameTitle:"Editar nome",removeTitle:"Remover",removePortTitle:"Remover Porta",removePortMessage:"Remover a porta {port} da lista salva?",popupBlocked:"Pop-up bloqueado! Permita pop-ups para este site.",startProxyFailed:"Falha ao iniciar sess\xe3o de proxy para {name}",foundCount:"{n} site{suffix} encontrado",focusOpenedTab:"Focar aba aberta",openInNewTab:"Abrir em nova aba",goBack:"Voltar",goForward:"Avan\xe7ar",loadingSite:"Carregando...",empty:"Nenhum site ativo",emptyHint:"Execute um servidor local para v\xea-lo aqui",open:"Abrir",refresh:"Atualizar"},commandNotes:{title:"Notas de Comandos",noSavedCommands:"Nenhum comando salvo",addFirstBelow:"Adicione seu primeiro comando abaixo",clickToCopy:"Clique para copiar",copiedBang:"Copiado!",copy:"Copiar",edit:"Editar",delete:"Excluir",editCommandPlaceholder:"Editar comando...",addCommandPlaceholder:"Adicionar comando...",update:"Atualizar",add:"Adicionar Nota",empty:"Ainda n\xe3o h\xe1 notas",emptyHint:"Salve comandos para acesso r\xe1pido",edit:"Editar Nota",delete:"Excluir Nota",deleteMessage:"Excluir esta nota?",name:"Nome",command:"Comando",save:"Salvar",placeholderName:"ex.: Iniciar servidor de dev",placeholderCommand:"ex.: npm run dev"},mobileKeyboard:{pasteHere:"Cole aqui (Cmd+V)",enterToSend:"Tab / Ctrl+Num para mudar de aba",typeCommand:"Digite o comando e envie...",send:"Enviar",toggleExtraKeys:"Alternar teclas extras",toggleTextInput:"Alternar entrada de texto",customizeTerminalKeys:"Personalizar Teclas do Terminal",mainBar:"Barra Principal",extraPanel:"Painel Extra",fileTooLarge:"Arquivo muito grande (m\xe1x. 5MB)",readFileFailed:"Falha ao ler arquivo",uploadFailed:"Falha ao enviar arquivo: {error}"},terminalPane:{scrollToBottom:"Rolar at\xe9 o final",changedFiles:"Changed files",pasteOrType:"Cole ou digite aqui",paste:"Colar"},pwaGuide:{copyYourKey:"Copie Sua Chave",copyKeyHint:"Toque na chave abaixo para copiar — voc\xea precisar\xe1 dela para entrar ap\xf3s instalar",tapToCopyApiKey:"Toque para copiar a chave de API",copiedBang:"Copiado!",copy:"Copiar",tapShareButton:"Toque no Bot\xe3o Compartilhar",tapShareHint:"Toque no bot\xe3o compartilhar na parte inferior do iOS Safari",addToHome:"Adicionar \xe0 Tela de In\xedcio",addToHomeHint:'Role para baixo e toque em "Adicionar \xe0 Tela de In\xedcio"',openAppPasteKey:"Abrir App e Colar Chave",openAppPasteKeyHint:"Abra o app instalado e cole sua chave para entrar",openMenu:"Abrir Menu",openMenuHint:"Toque no bot\xe3o de menu (tr\xeas pontos) no Android Chrome",installApp:"Instalar App",installAppHint:'Toque em "Instalar app" ou "Adicionar \xe0 tela inicial"',lookInstallIcon:"Procure o \xcdcone de Instala\xe7\xe3o",lookInstallIconHint:"Procure o \xedcone de instala\xe7\xe3o na barra de endere\xe7o",clickInstallPaste:"Clique em Instalar e Cole a Chave",installNow:"Install Now",installNowHint:"Install 9Remote as an app for quick access",installing:"Installing...",clickInstallPasteHint:"Clique em instalar, abra o app e cole sua chave para entrar",alternativeHint:'Alternativa: Abra o menu do navegador → "Instalar 9Remote" ou "Criar atalho"',loadingPlatform:"Carregando detec\xe7\xe3o de plataforma...",iosPlatform:"iOS (iPhone/iPad)",androidPlatform:"Android",macosPlatform:"macOS",windowsPlatform:"Windows",desktopPlatform:"Desktop",alreadyInstalled:"J\xe1 Instalado!",alreadyInstalledHint:"Voc\xea j\xe1 est\xe1 usando o 9Remote como app instalado",installationGuide:"Guia de Instala\xe7\xe3o",installationSteps:"Passos de Instala\xe7\xe3o:"},community:{title:"Comunidade",description:"Junte-se \xe0 comunidade 9Remote"},pwa:{title:"Instalar como App",description:"Instale o 9Remote no seu dispositivo para a melhor experi\xeancia",iosTitle:"iOS Safari",androidTitle:"Android Chrome",desktopTitle:"Desktop"},codespace:{title:"Codespace",name:"Nome",status:"Status",running:"Em execu\xe7\xe3o",autoStart:"Iniciar 9Remote automaticamente",autoStartHint:"Iniciar o 9Remote quando o codespace abrir",stop:"Parar Codespace",stopHint:"Pare para economizar uso",restartHint:"Para reiniciar, v\xe1 ao GitHub",unknown:"Desconhecido"}}}}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[4930],{30402:()=>{},57571:()=>{}}]);
@@ -1,27 +0,0 @@
1
- "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[5155],{5155:(e,t,i)=>{i.d(t,{diagram:()=>j});var r=i(88982),n=i(96910),o=i(58609),s=i(12989),a=i(49519),l=i(84187),d=i(14561),c=i(68567),h=i(97811),p=/[─━│┃└┗├┣]/,f=/[└┗├┣]/,g=/[─━]/,u=/^[\s│┃]+$/,w=/^\s*(title[\t ]|accTitle[\t ]*:|accDescr[\t ]*[:{])/,x=/^\s*%%/;function m(e){return e.some(e=>p.test(e))}function b(e){for(let t of e){let e=f.exec(t);if(e?.index&&e.index>0)return e.index}return 4}function y(e,t){return e.replace(/\bline\s+(\d+)\b/gi,(e,i)=>{let r=parseInt(i,10),n=t.get(r);return n?`line ${n}`:e})}function $(e){let t=e.split("\n"),i=new Map,r=-1;for(let[e,i]of t.entries())if("treeView-beta"===i.trim()){r=e;break}if(-1===r)return{text:e,lineMap:i};let n=[];for(let e=r+1;e<t.length;e++){let i=t[e];!(""===i.trim()||x.test(i)||w.test(i))&&(u.test(i)||n.push(i.replace(/\t/g," ")))}if(!m(n))return{text:e,lineMap:i};let o=b(n),s=[],a=0;for(let e=0;e<=r;e++)s.push(t[e]),a++,i.set(a,e+1);for(let e=r+1;e<t.length;e++){let r=t[e],n=r.trim(),l=e+1;if(""===n||x.test(r)||w.test(r)){s.push(r),a++,i.set(a,l);continue}if(u.test(r))continue;let d=r.replace(/\t/g," "),c=f.exec(d);if(c?.index!==void 0){let e=c.index,t=Math.round(e/o)+1,r=e+1;for(;r<d.length&&g.test(d[r]);)r++;for(;r<d.length&&" "===d[r];)r++;let n=d.slice(r).trimEnd();if(!n)throw Error(`Line ${l}: Empty node \u2014 expected a filename or directory name after the box-drawing prefix`);let h=" ".repeat(t);s.push(h+n),a++,i.set(a,l)}else if(/^[\s─━│┃└┗├┣]+$/.test(d))continue;else if(p.test(d))s.push(r),a++,i.set(a,l);else if(/^\s+/.test(d))throw Error(`Line ${l}: Unexpected indentation without box-drawing characters. In box-drawing format, use \u251C\u2500\u2500 or \u2514\u2500\u2500 prefixes for indented nodes.`);else s.push(r),a++,i.set(a,l)}return{text:s.join("\n"),lineMap:i}}(0,c.K)(m,"isBoxDrawingFormat"),(0,c.K)(b,"inferSegmentWidth"),(0,c.K)(y,"remapErrorLines"),(0,c.K)($,"preprocessBoxDrawing");var k=new r.m(()=>({cnt:1,stack:[{id:0,level:-1,name:"/",nodeType:"directory",children:[]}]})),K=(0,c.K)(()=>{k.reset(),(0,l.IU)()},"clear"),v=(0,c.K)(()=>k.records.stack[0],"getRoot"),V=(0,c.K)(()=>k.records.cnt,"getCount"),B=l.UI.treeView,C=(0,c.K)(()=>(0,a.$t)(B,(0,l.zj)().treeView),"getConfig"),I={clear:K,addNode:(0,c.K)((e,t,i,r,n,o)=>{for(;e<=k.records.stack[k.records.stack.length-1].level;)k.records.stack.pop();let s={id:k.records.cnt++,level:e,name:t,nodeType:i,icon:n,cssClass:r,description:o,children:[]};k.records.stack[k.records.stack.length-1].children.push(s),k.records.stack.push(s)},"addNode"),getRoot:v,getCount:V,getConfig:C,getAccTitle:l.iN,getAccDescription:l.m7,getDiagramTitle:l.ab,setAccDescription:l.EI,setAccTitle:l.SV,setDiagramTitle:l.ke},T=(0,c.K)(e=>{for(let t of((0,n.S)(e,I),e.nodes)){let e="number"==typeof t.indent?t.indent:0,i=t.name,r=i.endsWith("/");r&&(i=i.slice(0,-1));let n=r?"directory":"file",o=t.classAnnotation||void 0,s=t.iconAnnotation,a=void 0!==s?s||"none":void 0,d=t.descAnnotation||void 0,c=d?(0,l.jZ)(d,(0,l.zj)()):void 0;I.addNode(e,i,n,o,a,c)}},"populate"),D={parse:(0,c.K)(async e=>{let{text:t,lineMap:i}=$(e);try{let e=await (0,h.qg)("treeView",t);d.R.debug(e),T(e)}catch(e){throw i.size>0&&e instanceof Error&&(e.message=y(e.message,i)),e}},"parse")},E={prefix:"mermaid-treeview",height:24,width:24,icons:{folder:{body:'<path fill="currentColor" d="M10.59 4.59A2 2 0 0 0 9.17 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.17z"/>'},file:{body:'<path fill="currentColor" fill-rule="evenodd" d="M6 2a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8.83a2 2 0 0 0-.59-1.42l-4.82-4.82A2 2 0 0 0 13.17 2H6Zm7.5 1.9l4.6 4.6h-3.6a1 1 0 0 1-1-1V3.9Z" clip-rule="evenodd"/>'}}};function A(e,t){let i=t?.filenameIcons?.[e];if(i)return i;let r=e.lastIndexOf(".");if(r>0){let i=e.substring(r).toLowerCase(),n=t?.extensionIcons;return n?.[i]??n?.[i.slice(1)]}}function M(e,t){return e.includes(":")?e:e in E.icons||!t?`${E.prefix}:${e}`:`${t}:${e}`}function N(e,t){if("none"!==e.icon){if(e.icon)return M(e.icon,t.defaultIconPack);if(t.showIcons){if("file"===e.nodeType){let i=A(e.name,t);if("none"===i)return;if(i)return M(i,t.defaultIconPack)}return`${E.prefix}:${"directory"===e.nodeType?"folder":"file"}`}}}(0,c.K)(A,"detectIcon"),(0,c.K)(M,"qualifyIcon"),(0,c.K)(N,"getNodeIcon"),(0,s.pC)([{name:E.prefix,icons:E}]);var z=(0,c.K)(async(e,t)=>{let i=[],r=(0,c.K)(e=>{let n=N(e,t);n&&i.push({icon:n,node:e}),e.children.forEach(r)},"collect");return r(e),new Map((await Promise.all(i.map(async({icon:e,node:t})=>({id:t.id,svg:await (0,s.WY)(e,{height:14,width:14})})))).map(({id:e,svg:t})=>[e,t]))},"resolveNodeIcons"),S=(0,c.K)((e,t,i,r,n,o)=>{let s=r.append("g"),a="treeView-node-label";"directory"===i.nodeType&&(a+=" treeView-node-dir"),i.cssClass&&(a+=` ${i.cssClass}`);let l=N(i,n),d=void 0!==l;l&&s.append("g").attr("class","treeView-node-icon").attr("transform",`translate(${e+n.paddingX}, ${t+n.paddingY})`).html(o.get(i.id)??"");let c=s.append("text").text(i.name).attr("dominant-baseline","middle").attr("class",a),{height:h,width:p}=c.node().getBBox(),f=h+2*n.paddingY,g=e+n.paddingX+18*!!d;c.attr("x",g),c.attr("y",t+f/2);let u=g+p;return i.BBox={x:e,y:t,width:p+2*n.paddingX+18*!!d,height:f},i.cssClass?.split(/\s+/).includes("highlight")&&s.insert("rect",":first-child").attr("x",e).attr("y",t+1).attr("width",0).attr("height",f-2).attr("rx",3).attr("class","treeView-highlight-bg"),{node:i,nodeGroup:s,labelRightEdge:u,centerY:t+f/2}},"positionLabel"),X=(0,c.K)((e,t,i,r,n,o)=>e.append("line").attr("x1",t).attr("y1",i).attr("x2",r).attr("y2",n).attr("stroke-width",o).attr("class","treeView-node-line"),"positionLine"),L=(0,c.K)((e,t,i,r)=>{let n=0,o=0,s=[],a=(0,c.K)((e,t,i,a)=>{let l=a*(i.rowIndent+i.paddingX),d=S(l,n,t,e,i,r);s.push(d);let{height:c,width:h}=t.BBox;X(e,l-i.rowIndent,n+c/2,l,n+c/2,i.lineThickness),o=Math.max(o,l+h),n+=c},"drawNode"),l=(0,c.K)((t,r=0)=>{a(e,t,i,r),t.children.forEach(e=>{l(e,r+1)});let{x:n,y:o,height:s}=t.BBox;if(t.children.length){let{y:r,height:a}=t.children[t.children.length-1].BBox;X(e,n+i.paddingX,o+s,n+i.paddingX,r+a/2+i.lineThickness/2,i.lineThickness)}},"processNode");l(t);let d=s.filter(e=>e.node.description);if(d.length>0){let e=Math.max(...s.map(e=>e.labelRightEdge))+16;for(let t of d){let r=t.nodeGroup.append("text").text(t.node.description).attr("dominant-baseline","middle").attr("class","treeView-node-description").attr("x",e).attr("y",t.centerY).node().getBBox();o=Math.max(o,e+r.width+i.paddingX)}}for(let e of s)if(e.node.cssClass?.split(/\s+/).includes("highlight")){let t=e.nodeGroup.select(".treeView-highlight-bg");if(!t.empty()){let i=o-e.node.BBox.x+8;t.attr("width",i),o=Math.max(o,e.node.BBox.x+i+2)}}return{totalHeight:n,totalWidth:o}},"drawTree"),R=(0,c.K)(async(e,t,i,r)=>{d.R.debug("Rendering treeView diagram\n"+e);let n=r.db,s=n.getRoot(),a=n.getConfig(),c=(0,o.D)(t),h=c.append("g");h.attr("class","tree-view");let p=await z(s,a),{totalHeight:f,totalWidth:g}=L(h,s,a,p);c.attr("viewBox",`-${a.lineThickness/2} 0 ${g} ${f}`),(0,l.a$)(c,f,g,a.useMaxWidth)},"draw"),Y={labelFontSize:"16px",labelColor:"black",lineColor:"black",iconColor:"#546e7a",descriptionColor:"#6a9955",highlightBg:"rgba(255, 193, 7, 0.15)",highlightStroke:"#ffc107"},j={db:I,renderer:{draw:R},parser:D,styles:(0,c.K)(({treeView:e})=>{let{labelFontSize:t,labelColor:i,lineColor:r,iconColor:n,descriptionColor:o,highlightBg:s,highlightStroke:l}=(0,a.$t)(Y,e);return`
2
- .treeView-node-label {
3
- font-size: ${t};
4
- fill: ${i};
5
- white-space: pre;
6
- }
7
- .treeView-node-dir {
8
- font-weight: bold;
9
- }
10
- .treeView-node-line {
11
- stroke: ${r};
12
- }
13
- .treeView-node-icon {
14
- color: ${n};
15
- }
16
- .treeView-node-description {
17
- font-size: ${t};
18
- fill: ${o};
19
- font-style: italic;
20
- white-space: pre;
21
- }
22
- .treeView-highlight-bg {
23
- fill: ${s};
24
- stroke: ${l};
25
- stroke-width: 1;
26
- }
27
- `},"styles")}},88982:(e,t,i)=>{i.d(t,{m:()=>n});var r=i(68567),n=class{constructor(e){this.init=e,this.records=this.init()}static{(0,r.K)(this,"ImperativeState")}reset(){this.records=this.init()}}},96910:(e,t,i)=>{function r(e,t){e.accDescr&&t.setAccDescription?.(e.accDescr),e.accTitle&&t.setAccTitle?.(e.accTitle),e.title&&t.setDiagramTitle?.(e.title)}i.d(t,{S:()=>r}),(0,i(68567).K)(r,"populateCommonDb")}}]);