@surething/cockpit 1.0.222 → 1.0.224

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 (606) hide show
  1. package/.next-prod/BUILD_ID +1 -1
  2. package/.next-prod/app-path-routes-manifest.json +8 -3
  3. package/.next-prod/build-manifest.json +2 -2
  4. package/.next-prod/prerender-manifest.json +3 -3
  5. package/.next-prod/required-server-files.js +2 -1
  6. package/.next-prod/required-server-files.json +2 -1
  7. package/.next-prod/routes-manifest.json +30 -0
  8. package/.next-prod/server/app/_global-error/page.js +3 -3
  9. package/.next-prod/server/app/_global-error/page.js.nft.json +1 -1
  10. package/.next-prod/server/app/_global-error/page_client-reference-manifest.js +1 -1
  11. package/.next-prod/server/app/_global-error.html +1 -1
  12. package/.next-prod/server/app/_global-error.rsc +1 -1
  13. package/.next-prod/server/app/_global-error.segments/_full.segment.rsc +1 -1
  14. package/.next-prod/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  15. package/.next-prod/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  16. package/.next-prod/server/app/_global-error.segments/_head.segment.rsc +1 -1
  17. package/.next-prod/server/app/_global-error.segments/_index.segment.rsc +1 -1
  18. package/.next-prod/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  19. package/.next-prod/server/app/_not-found/page.js +2 -2
  20. package/.next-prod/server/app/_not-found/page.js.nft.json +1 -1
  21. package/.next-prod/server/app/_not-found/page_client-reference-manifest.js +1 -1
  22. package/.next-prod/server/app/_not-found.html +49 -1
  23. package/.next-prod/server/app/_not-found.rsc +65 -14
  24. package/.next-prod/server/app/_not-found.segments/_full.segment.rsc +65 -14
  25. package/.next-prod/server/app/_not-found.segments/_head.segment.rsc +1 -1
  26. package/.next-prod/server/app/_not-found.segments/_index.segment.rsc +53 -5
  27. package/.next-prod/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  28. package/.next-prod/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  29. package/.next-prod/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  30. package/.next-prod/server/app/api/agent/test/route.js +1 -1
  31. package/.next-prod/server/app/api/agent/test/route.js.nft.json +1 -1
  32. package/.next-prod/server/app/api/bash/route.js +1 -1
  33. package/.next-prod/server/app/api/bash/route.js.nft.json +1 -1
  34. package/.next-prod/server/app/api/chat/codex/route.js +16 -10
  35. package/.next-prod/server/app/api/chat/codex/route.js.nft.json +1 -1
  36. package/.next-prod/server/app/api/chat/deepseek/route.js +3 -3
  37. package/.next-prod/server/app/api/chat/deepseek/route.js.nft.json +1 -1
  38. package/.next-prod/server/app/api/chat/kimi/route.js +10 -10
  39. package/.next-prod/server/app/api/chat/kimi/route.js.nft.json +1 -1
  40. package/.next-prod/server/app/api/chat/ollama/route.js +8 -8
  41. package/.next-prod/server/app/api/chat/ollama/route.js.nft.json +1 -1
  42. package/.next-prod/server/app/api/chat/pty-input/route.js +1 -1
  43. package/.next-prod/server/app/api/chat/pty-input/route.js.nft.json +1 -1
  44. package/.next-prod/server/app/api/chat/route.js +12 -12
  45. package/.next-prod/server/app/api/chat/route.js.nft.json +1 -1
  46. package/.next-prod/server/app/api/chat/stop/route.js +1 -0
  47. package/.next-prod/server/app/api/chat/stop/route.js.nft.json +1 -0
  48. package/.next-prod/server/app/api/chat/stop/route_client-reference-manifest.js +1 -0
  49. package/.next-prod/server/app/api/claude-stats/route.js +1 -1
  50. package/.next-prod/server/app/api/claude-stats/route.js.nft.json +1 -1
  51. package/.next-prod/server/app/api/commands/route.js +1 -1
  52. package/.next-prod/server/app/api/commands/route.js.nft.json +1 -1
  53. package/.next-prod/server/app/api/comments/route.js +1 -1
  54. package/.next-prod/server/app/api/comments/route.js.nft.json +1 -1
  55. package/.next-prod/server/app/api/db/columns/route.js +2 -2
  56. package/.next-prod/server/app/api/db/columns/route.js.nft.json +1 -1
  57. package/.next-prod/server/app/api/db/connect/route.js +1 -1
  58. package/.next-prod/server/app/api/db/connect/route.js.nft.json +1 -1
  59. package/.next-prod/server/app/api/db/disconnect/route.js +1 -1
  60. package/.next-prod/server/app/api/db/disconnect/route.js.nft.json +1 -1
  61. package/.next-prod/server/app/api/db/export/route.js +1 -1
  62. package/.next-prod/server/app/api/db/export/route.js.nft.json +1 -1
  63. package/.next-prod/server/app/api/db/query/route.js +1 -1
  64. package/.next-prod/server/app/api/db/query/route.js.nft.json +1 -1
  65. package/.next-prod/server/app/api/db/schemas/route.js +1 -1
  66. package/.next-prod/server/app/api/db/schemas/route.js.nft.json +1 -1
  67. package/.next-prod/server/app/api/dev/spans/route.js +1 -1
  68. package/.next-prod/server/app/api/dev/spans/route.js.nft.json +1 -1
  69. package/.next-prod/server/app/api/extension/version/route.js +1 -1
  70. package/.next-prod/server/app/api/extension/version/route.js.nft.json +1 -1
  71. package/.next-prod/server/app/api/file/route.js +1 -1
  72. package/.next-prod/server/app/api/file/route.js.nft.json +1 -1
  73. package/.next-prod/server/app/api/files/blame/route.js +1 -1
  74. package/.next-prod/server/app/api/files/blame/route.js.nft.json +1 -1
  75. package/.next-prod/server/app/api/files/clipboard/route.js +1 -1
  76. package/.next-prod/server/app/api/files/clipboard/route.js.nft.json +1 -1
  77. package/.next-prod/server/app/api/files/copy/route.js +1 -1
  78. package/.next-prod/server/app/api/files/copy/route.js.nft.json +1 -1
  79. package/.next-prod/server/app/api/files/delete/route.js +1 -1
  80. package/.next-prod/server/app/api/files/delete/route.js.nft.json +1 -1
  81. package/.next-prod/server/app/api/files/expanded/route.js +1 -1
  82. package/.next-prod/server/app/api/files/expanded/route.js.nft.json +1 -1
  83. package/.next-prod/server/app/api/files/index/route.js +1 -1
  84. package/.next-prod/server/app/api/files/index/route.js.nft.json +1 -1
  85. package/.next-prod/server/app/api/files/init/route.js +1 -1
  86. package/.next-prod/server/app/api/files/init/route.js.nft.json +1 -1
  87. package/.next-prod/server/app/api/files/paste/route.js +1 -1
  88. package/.next-prod/server/app/api/files/paste/route.js.nft.json +1 -1
  89. package/.next-prod/server/app/api/files/read/route.js +1 -1
  90. package/.next-prod/server/app/api/files/read/route.js.nft.json +1 -1
  91. package/.next-prod/server/app/api/files/readdir/route.js +1 -1
  92. package/.next-prod/server/app/api/files/readdir/route.js.nft.json +1 -1
  93. package/.next-prod/server/app/api/files/recent/route.js +1 -1
  94. package/.next-prod/server/app/api/files/recent/route.js.nft.json +1 -1
  95. package/.next-prod/server/app/api/files/save/route.js +1 -1
  96. package/.next-prod/server/app/api/files/save/route.js.nft.json +1 -1
  97. package/.next-prod/server/app/api/files/search/route.js +1 -1
  98. package/.next-prod/server/app/api/files/search/route.js.nft.json +1 -1
  99. package/.next-prod/server/app/api/files/stat/route.js +1 -1
  100. package/.next-prod/server/app/api/files/stat/route.js.nft.json +1 -1
  101. package/.next-prod/server/app/api/files/text/route.js +1 -1
  102. package/.next-prod/server/app/api/files/text/route.js.nft.json +1 -1
  103. package/.next-prod/server/app/api/git/branch-diff/route.js +1 -1
  104. package/.next-prod/server/app/api/git/branch-diff/route.js.nft.json +1 -1
  105. package/.next-prod/server/app/api/git/branches/route.js +1 -1
  106. package/.next-prod/server/app/api/git/branches/route.js.nft.json +1 -1
  107. package/.next-prod/server/app/api/git/commit-diff/route.js +1 -1
  108. package/.next-prod/server/app/api/git/commit-diff/route.js.nft.json +1 -1
  109. package/.next-prod/server/app/api/git/commits/route.js +1 -1
  110. package/.next-prod/server/app/api/git/commits/route.js.nft.json +1 -1
  111. package/.next-prod/server/app/api/git/current-branch/route.js +1 -1
  112. package/.next-prod/server/app/api/git/current-branch/route.js.nft.json +1 -1
  113. package/.next-prod/server/app/api/git/diff/route.js +1 -1
  114. package/.next-prod/server/app/api/git/diff/route.js.nft.json +1 -1
  115. package/.next-prod/server/app/api/git/discard/route.js +1 -1
  116. package/.next-prod/server/app/api/git/discard/route.js.nft.json +1 -1
  117. package/.next-prod/server/app/api/git/stage/route.js +1 -1
  118. package/.next-prod/server/app/api/git/stage/route.js.nft.json +1 -1
  119. package/.next-prod/server/app/api/git/status/route.js +1 -1
  120. package/.next-prod/server/app/api/git/status/route.js.nft.json +1 -1
  121. package/.next-prod/server/app/api/git/unstage/route.js +1 -1
  122. package/.next-prod/server/app/api/git/unstage/route.js.nft.json +1 -1
  123. package/.next-prod/server/app/api/git/worktree/route.js +1 -1
  124. package/.next-prod/server/app/api/git/worktree/route.js.nft.json +1 -1
  125. package/.next-prod/server/app/api/global-state/route.js +1 -1
  126. package/.next-prod/server/app/api/global-state/route.js.nft.json +1 -1
  127. package/.next-prod/server/app/api/jupyter/load/route.js +1 -1
  128. package/.next-prod/server/app/api/jupyter/load/route.js.nft.json +1 -1
  129. package/.next-prod/server/app/api/jupyter/save/route.js +1 -1
  130. package/.next-prod/server/app/api/jupyter/save/route.js.nft.json +1 -1
  131. package/.next-prod/server/app/api/jupyter/shutdown/route.js +1 -1
  132. package/.next-prod/server/app/api/jupyter/shutdown/route.js.nft.json +1 -1
  133. package/.next-prod/server/app/api/lsp/definition/route.js +1 -1
  134. package/.next-prod/server/app/api/lsp/definition/route.js.nft.json +1 -1
  135. package/.next-prod/server/app/api/lsp/hover/route.js +1 -1
  136. package/.next-prod/server/app/api/lsp/hover/route.js.nft.json +1 -1
  137. package/.next-prod/server/app/api/lsp/references/route.js +1 -1
  138. package/.next-prod/server/app/api/lsp/references/route.js.nft.json +1 -1
  139. package/.next-prod/server/app/api/lsp/status/route.js +1 -1
  140. package/.next-prod/server/app/api/lsp/status/route.js.nft.json +1 -1
  141. package/.next-prod/server/app/api/lsp/warmup/route.js +1 -1
  142. package/.next-prod/server/app/api/lsp/warmup/route.js.nft.json +1 -1
  143. package/.next-prod/server/app/api/mysql/columns/route.js +2 -2
  144. package/.next-prod/server/app/api/mysql/columns/route.js.nft.json +1 -1
  145. package/.next-prod/server/app/api/mysql/connect/route.js +1 -1
  146. package/.next-prod/server/app/api/mysql/connect/route.js.nft.json +1 -1
  147. package/.next-prod/server/app/api/mysql/disconnect/route.js +1 -1
  148. package/.next-prod/server/app/api/mysql/disconnect/route.js.nft.json +1 -1
  149. package/.next-prod/server/app/api/mysql/export/route.js +1 -1
  150. package/.next-prod/server/app/api/mysql/export/route.js.nft.json +1 -1
  151. package/.next-prod/server/app/api/mysql/query/route.js +1 -1
  152. package/.next-prod/server/app/api/mysql/query/route.js.nft.json +1 -1
  153. package/.next-prod/server/app/api/mysql/schemas/route.js +1 -1
  154. package/.next-prod/server/app/api/mysql/schemas/route.js.nft.json +1 -1
  155. package/.next-prod/server/app/api/neo4j/connect/route.js +1 -1
  156. package/.next-prod/server/app/api/neo4j/connect/route.js.nft.json +1 -1
  157. package/.next-prod/server/app/api/neo4j/disconnect/route.js +1 -1
  158. package/.next-prod/server/app/api/neo4j/disconnect/route.js.nft.json +1 -1
  159. package/.next-prod/server/app/api/neo4j/query/route.js +1 -1
  160. package/.next-prod/server/app/api/neo4j/query/route.js.nft.json +1 -1
  161. package/.next-prod/server/app/api/neo4j/schema/route.js +1 -1
  162. package/.next-prod/server/app/api/neo4j/schema/route.js.nft.json +1 -1
  163. package/.next-prod/server/app/api/note/route.js +1 -1
  164. package/.next-prod/server/app/api/note/route.js.nft.json +1 -1
  165. package/.next-prod/server/app/api/ollama/models/route.js +1 -1
  166. package/.next-prod/server/app/api/ollama/models/route.js.nft.json +1 -1
  167. package/.next-prod/server/app/api/ollama/start/route.js +1 -1
  168. package/.next-prod/server/app/api/ollama/start/route.js.nft.json +1 -1
  169. package/.next-prod/server/app/api/open-cursor/route.js +1 -1
  170. package/.next-prod/server/app/api/open-cursor/route.js.nft.json +1 -1
  171. package/.next-prod/server/app/api/open-vscode/route.js +1 -1
  172. package/.next-prod/server/app/api/open-vscode/route.js.nft.json +1 -1
  173. package/.next-prod/server/app/api/pick-folder/route.js +1 -1
  174. package/.next-prod/server/app/api/pick-folder/route.js.nft.json +1 -1
  175. package/.next-prod/server/app/api/pinned-sessions/route.js +1 -1
  176. package/.next-prod/server/app/api/pinned-sessions/route.js.nft.json +1 -1
  177. package/.next-prod/server/app/api/project-settings/route.js +1 -1
  178. package/.next-prod/server/app/api/project-settings/route.js.nft.json +1 -1
  179. package/.next-prod/server/app/api/project-state/route.js +2 -1
  180. package/.next-prod/server/app/api/project-state/route.js.nft.json +1 -1
  181. package/.next-prod/server/app/api/projectGraph/affected/route.js +1 -1
  182. package/.next-prod/server/app/api/projectGraph/affected/route.js.nft.json +1 -1
  183. package/.next-prod/server/app/api/projectGraph/callees/route.js +1 -1
  184. package/.next-prod/server/app/api/projectGraph/callees/route.js.nft.json +1 -1
  185. package/.next-prod/server/app/api/projectGraph/callers/route.js +1 -1
  186. package/.next-prod/server/app/api/projectGraph/callers/route.js.nft.json +1 -1
  187. package/.next-prod/server/app/api/projectGraph/coedit/route.js +1 -1
  188. package/.next-prod/server/app/api/projectGraph/coedit/route.js.nft.json +1 -1
  189. package/.next-prod/server/app/api/projectGraph/context/route.js +1 -1
  190. package/.next-prod/server/app/api/projectGraph/context/route.js.nft.json +1 -1
  191. package/.next-prod/server/app/api/projectGraph/file/route.js +1 -1
  192. package/.next-prod/server/app/api/projectGraph/file/route.js.nft.json +1 -1
  193. package/.next-prod/server/app/api/projectGraph/file-functions/route.js +1 -1
  194. package/.next-prod/server/app/api/projectGraph/file-functions/route.js.nft.json +1 -1
  195. package/.next-prod/server/app/api/projectGraph/impact/route.js +1 -1
  196. package/.next-prod/server/app/api/projectGraph/impact/route.js.nft.json +1 -1
  197. package/.next-prod/server/app/api/projectGraph/related/route.js +1 -1
  198. package/.next-prod/server/app/api/projectGraph/related/route.js.nft.json +1 -1
  199. package/.next-prod/server/app/api/projectGraph/risk/route.js +1 -1
  200. package/.next-prod/server/app/api/projectGraph/risk/route.js.nft.json +1 -1
  201. package/.next-prod/server/app/api/projectGraph/search/route.js +1 -1
  202. package/.next-prod/server/app/api/projectGraph/search/route.js.nft.json +1 -1
  203. package/.next-prod/server/app/api/projects/route.js +1 -1
  204. package/.next-prod/server/app/api/projects/route.js.nft.json +1 -1
  205. package/.next-prod/server/app/api/push/public-key/route.js +1 -0
  206. package/.next-prod/server/app/api/push/public-key/route.js.nft.json +1 -0
  207. package/.next-prod/server/app/api/push/public-key/route_client-reference-manifest.js +1 -0
  208. package/.next-prod/server/app/api/push/subscribe/route.js +1 -0
  209. package/.next-prod/server/app/api/push/subscribe/route.js.nft.json +1 -0
  210. package/.next-prod/server/app/api/push/subscribe/route_client-reference-manifest.js +1 -0
  211. package/.next-prod/server/app/api/push/unsubscribe/route.js +1 -0
  212. package/.next-prod/server/app/api/push/unsubscribe/route.js.nft.json +1 -0
  213. package/.next-prod/server/app/api/push/unsubscribe/route_client-reference-manifest.js +1 -0
  214. package/.next-prod/server/app/api/redis/command/route.js +1 -1
  215. package/.next-prod/server/app/api/redis/command/route.js.nft.json +1 -1
  216. package/.next-prod/server/app/api/redis/connect/route.js +1 -1
  217. package/.next-prod/server/app/api/redis/connect/route.js.nft.json +1 -1
  218. package/.next-prod/server/app/api/redis/delete/route.js +1 -1
  219. package/.next-prod/server/app/api/redis/delete/route.js.nft.json +1 -1
  220. package/.next-prod/server/app/api/redis/disconnect/route.js +1 -1
  221. package/.next-prod/server/app/api/redis/disconnect/route.js.nft.json +1 -1
  222. package/.next-prod/server/app/api/redis/get/route.js +1 -1
  223. package/.next-prod/server/app/api/redis/get/route.js.nft.json +1 -1
  224. package/.next-prod/server/app/api/redis/keys/route.js +1 -1
  225. package/.next-prod/server/app/api/redis/keys/route.js.nft.json +1 -1
  226. package/.next-prod/server/app/api/redis/set/route.js +1 -1
  227. package/.next-prod/server/app/api/redis/set/route.js.nft.json +1 -1
  228. package/.next-prod/server/app/api/review/[id]/comments/route.js +1 -1
  229. package/.next-prod/server/app/api/review/[id]/comments/route.js.nft.json +1 -1
  230. package/.next-prod/server/app/api/review/[id]/replies/route.js +1 -1
  231. package/.next-prod/server/app/api/review/[id]/replies/route.js.nft.json +1 -1
  232. package/.next-prod/server/app/api/review/[id]/route.js +1 -1
  233. package/.next-prod/server/app/api/review/[id]/route.js.nft.json +1 -1
  234. package/.next-prod/server/app/api/review/identify/route.js +1 -1
  235. package/.next-prod/server/app/api/review/identify/route.js.nft.json +1 -1
  236. package/.next-prod/server/app/api/review/order/route.js +1 -1
  237. package/.next-prod/server/app/api/review/order/route.js.nft.json +1 -1
  238. package/.next-prod/server/app/api/review/route.js +1 -1
  239. package/.next-prod/server/app/api/review/route.js.nft.json +1 -1
  240. package/.next-prod/server/app/api/review/share-info/route.js +1 -1
  241. package/.next-prod/server/app/api/review/share-info/route.js.nft.json +1 -1
  242. package/.next-prod/server/app/api/review/users/route.js +1 -1
  243. package/.next-prod/server/app/api/review/users/route.js.nft.json +1 -1
  244. package/.next-prod/server/app/api/scheduled-tasks/route.js +1 -1
  245. package/.next-prod/server/app/api/scheduled-tasks/route.js.nft.json +1 -1
  246. package/.next-prod/server/app/api/services/config/route.js +1 -1
  247. package/.next-prod/server/app/api/services/config/route.js.nft.json +1 -1
  248. package/.next-prod/server/app/api/services/scripts/route.js +1 -1
  249. package/.next-prod/server/app/api/services/scripts/route.js.nft.json +1 -1
  250. package/.next-prod/server/app/api/session/[sessionId]/fork/route.js +1 -1
  251. package/.next-prod/server/app/api/session/[sessionId]/fork/route.js.nft.json +1 -1
  252. package/.next-prod/server/app/api/session/[sessionId]/history/route.js +1 -1
  253. package/.next-prod/server/app/api/session/[sessionId]/history/route.js.nft.json +1 -1
  254. package/.next-prod/server/app/api/session-by-path/route.js +1 -1
  255. package/.next-prod/server/app/api/session-by-path/route.js.nft.json +1 -1
  256. package/.next-prod/server/app/api/sessions/projects/[encodedPath]/route.js +1 -1
  257. package/.next-prod/server/app/api/sessions/projects/[encodedPath]/route.js.nft.json +1 -1
  258. package/.next-prod/server/app/api/sessions/projects/route.js +1 -1
  259. package/.next-prod/server/app/api/sessions/projects/route.js.nft.json +1 -1
  260. package/.next-prod/server/app/api/sessions/route.js +1 -1
  261. package/.next-prod/server/app/api/sessions/route.js.nft.json +1 -1
  262. package/.next-prod/server/app/api/settings/route.js +1 -1
  263. package/.next-prod/server/app/api/settings/route.js.nft.json +1 -1
  264. package/.next-prod/server/app/api/skills/[id]/route.js +1 -1
  265. package/.next-prod/server/app/api/skills/[id]/route.js.nft.json +1 -1
  266. package/.next-prod/server/app/api/skills/content/route.js +1 -1
  267. package/.next-prod/server/app/api/skills/content/route.js.nft.json +1 -1
  268. package/.next-prod/server/app/api/skills/route.js +1 -1
  269. package/.next-prod/server/app/api/skills/route.js.nft.json +1 -1
  270. package/.next-prod/server/app/api/terminal/aliases/route.js +1 -1
  271. package/.next-prod/server/app/api/terminal/aliases/route.js.nft.json +1 -1
  272. package/.next-prod/server/app/api/terminal/autocomplete/route.js +1 -1
  273. package/.next-prod/server/app/api/terminal/autocomplete/route.js.nft.json +1 -1
  274. package/.next-prod/server/app/api/terminal/bubble-order/route.js +1 -1
  275. package/.next-prod/server/app/api/terminal/bubble-order/route.js.nft.json +1 -1
  276. package/.next-prod/server/app/api/terminal/env/route.js +1 -1
  277. package/.next-prod/server/app/api/terminal/env/route.js.nft.json +1 -1
  278. package/.next-prod/server/app/api/terminal/history/route.js +1 -1
  279. package/.next-prod/server/app/api/terminal/history/route.js.nft.json +1 -1
  280. package/.next-prod/server/app/api/version/route.js +1 -1
  281. package/.next-prod/server/app/api/version/route.js.nft.json +1 -1
  282. package/.next-prod/server/app/favicon.ico/route.js +1 -1
  283. package/.next-prod/server/app/favicon.ico/route.js.nft.json +1 -1
  284. package/.next-prod/server/app/m/page.js +2 -0
  285. package/.next-prod/server/app/m/page.js.nft.json +1 -0
  286. package/.next-prod/server/app/m/page_client-reference-manifest.js +1 -0
  287. package/.next-prod/server/app/manifest.webmanifest/route.js +2 -2
  288. package/.next-prod/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  289. package/.next-prod/server/app/manifest.webmanifest.body +1 -1
  290. package/.next-prod/server/app/page.js +2 -2
  291. package/.next-prod/server/app/page.js.nft.json +1 -1
  292. package/.next-prod/server/app/page_client-reference-manifest.js +1 -1
  293. package/.next-prod/server/app/project/page.js +2 -2
  294. package/.next-prod/server/app/project/page.js.nft.json +1 -1
  295. package/.next-prod/server/app/project/page_client-reference-manifest.js +1 -1
  296. package/.next-prod/server/app/review/[id]/page.js +2 -2
  297. package/.next-prod/server/app/review/[id]/page.js.nft.json +1 -1
  298. package/.next-prod/server/app/review/[id]/page_client-reference-manifest.js +1 -1
  299. package/.next-prod/server/app-paths-manifest.json +8 -3
  300. package/.next-prod/server/chunks/{383.js → 2637.js} +2 -2
  301. package/.next-prod/server/chunks/2939.js +1 -1
  302. package/.next-prod/server/chunks/{3408.js → 5337.js} +3 -3
  303. package/.next-prod/server/chunks/6955.js +1 -1
  304. package/.next-prod/server/chunks/7003.js +1 -0
  305. package/.next-prod/server/chunks/8916.js +1 -1
  306. package/.next-prod/server/chunks/9658.js +10 -8
  307. package/.next-prod/server/middleware-build-manifest.js +1 -1
  308. package/.next-prod/server/pages/404.html +49 -1
  309. package/.next-prod/server/pages/500.html +1 -1
  310. package/.next-prod/server/server-reference-manifest.json +1 -1
  311. package/.next-prod/static/cTq1mDm5D_oZLiumFG6di/_buildManifest.js +1 -0
  312. package/.next-prod/static/chunks/2032-6fcfaaa6aa730f6d.js +1 -0
  313. package/.next-prod/static/chunks/2576-fe33a1bae037bd9b.js +25 -0
  314. package/.next-prod/static/chunks/471-7c4fab47613ffe5c.js +4 -0
  315. package/.next-prod/static/chunks/5156-2953531342c13696.js +3 -0
  316. package/.next-prod/static/chunks/9428-5c287b255a9831e6.js +20 -0
  317. package/.next-prod/static/chunks/9469-fb5c6f08ba6bab74.js +14 -0
  318. package/.next-prod/static/chunks/app/_global-error/page-cc849cd7b6f01cad.js +1 -0
  319. package/.next-prod/static/chunks/app/api/agent/test/route-cc849cd7b6f01cad.js +1 -0
  320. package/.next-prod/static/chunks/app/api/bash/route-cc849cd7b6f01cad.js +1 -0
  321. package/.next-prod/static/chunks/app/api/chat/codex/route-cc849cd7b6f01cad.js +1 -0
  322. package/.next-prod/static/chunks/app/api/chat/deepseek/route-cc849cd7b6f01cad.js +1 -0
  323. package/.next-prod/static/chunks/app/api/chat/kimi/route-cc849cd7b6f01cad.js +1 -0
  324. package/.next-prod/static/chunks/app/api/chat/ollama/route-cc849cd7b6f01cad.js +1 -0
  325. package/.next-prod/static/chunks/app/api/chat/pty-input/route-cc849cd7b6f01cad.js +1 -0
  326. package/.next-prod/static/chunks/app/api/chat/route-cc849cd7b6f01cad.js +1 -0
  327. package/.next-prod/static/chunks/app/api/chat/stop/route-cc849cd7b6f01cad.js +1 -0
  328. package/.next-prod/static/chunks/app/api/claude-stats/route-cc849cd7b6f01cad.js +1 -0
  329. package/.next-prod/static/chunks/app/api/commands/route-cc849cd7b6f01cad.js +1 -0
  330. package/.next-prod/static/chunks/app/api/comments/route-cc849cd7b6f01cad.js +1 -0
  331. package/.next-prod/static/chunks/app/api/db/columns/route-cc849cd7b6f01cad.js +1 -0
  332. package/.next-prod/static/chunks/app/api/db/connect/route-cc849cd7b6f01cad.js +1 -0
  333. package/.next-prod/static/chunks/app/api/db/disconnect/route-cc849cd7b6f01cad.js +1 -0
  334. package/.next-prod/static/chunks/app/api/db/export/route-cc849cd7b6f01cad.js +1 -0
  335. package/.next-prod/static/chunks/app/api/db/query/route-cc849cd7b6f01cad.js +1 -0
  336. package/.next-prod/static/chunks/app/api/db/schemas/route-cc849cd7b6f01cad.js +1 -0
  337. package/.next-prod/static/chunks/app/api/dev/spans/route-cc849cd7b6f01cad.js +1 -0
  338. package/.next-prod/static/chunks/app/api/extension/version/route-cc849cd7b6f01cad.js +1 -0
  339. package/.next-prod/static/chunks/app/api/file/route-cc849cd7b6f01cad.js +1 -0
  340. package/.next-prod/static/chunks/app/api/files/blame/route-cc849cd7b6f01cad.js +1 -0
  341. package/.next-prod/static/chunks/app/api/files/clipboard/route-cc849cd7b6f01cad.js +1 -0
  342. package/.next-prod/static/chunks/app/api/files/copy/route-cc849cd7b6f01cad.js +1 -0
  343. package/.next-prod/static/chunks/app/api/files/delete/route-cc849cd7b6f01cad.js +1 -0
  344. package/.next-prod/static/chunks/app/api/files/expanded/route-cc849cd7b6f01cad.js +1 -0
  345. package/.next-prod/static/chunks/app/api/files/index/route-cc849cd7b6f01cad.js +1 -0
  346. package/.next-prod/static/chunks/app/api/files/init/route-cc849cd7b6f01cad.js +1 -0
  347. package/.next-prod/static/chunks/app/api/files/paste/route-cc849cd7b6f01cad.js +1 -0
  348. package/.next-prod/static/chunks/app/api/files/read/route-cc849cd7b6f01cad.js +1 -0
  349. package/.next-prod/static/chunks/app/api/files/readdir/route-cc849cd7b6f01cad.js +1 -0
  350. package/.next-prod/static/chunks/app/api/files/recent/route-cc849cd7b6f01cad.js +1 -0
  351. package/.next-prod/static/chunks/app/api/files/save/route-cc849cd7b6f01cad.js +1 -0
  352. package/.next-prod/static/chunks/app/api/files/search/route-cc849cd7b6f01cad.js +1 -0
  353. package/.next-prod/static/chunks/app/api/files/stat/route-cc849cd7b6f01cad.js +1 -0
  354. package/.next-prod/static/chunks/app/api/files/text/route-cc849cd7b6f01cad.js +1 -0
  355. package/.next-prod/static/chunks/app/api/git/branch-diff/route-cc849cd7b6f01cad.js +1 -0
  356. package/.next-prod/static/chunks/app/api/git/branches/route-cc849cd7b6f01cad.js +1 -0
  357. package/.next-prod/static/chunks/app/api/git/commit-diff/route-cc849cd7b6f01cad.js +1 -0
  358. package/.next-prod/static/chunks/app/api/git/commits/route-cc849cd7b6f01cad.js +1 -0
  359. package/.next-prod/static/chunks/app/api/git/current-branch/route-cc849cd7b6f01cad.js +1 -0
  360. package/.next-prod/static/chunks/app/api/git/diff/route-cc849cd7b6f01cad.js +1 -0
  361. package/.next-prod/static/chunks/app/api/git/discard/route-cc849cd7b6f01cad.js +1 -0
  362. package/.next-prod/static/chunks/app/api/git/stage/route-cc849cd7b6f01cad.js +1 -0
  363. package/.next-prod/static/chunks/app/api/git/status/route-cc849cd7b6f01cad.js +1 -0
  364. package/.next-prod/static/chunks/app/api/git/unstage/route-cc849cd7b6f01cad.js +1 -0
  365. package/.next-prod/static/chunks/app/api/git/worktree/route-cc849cd7b6f01cad.js +1 -0
  366. package/.next-prod/static/chunks/app/api/global-state/route-cc849cd7b6f01cad.js +1 -0
  367. package/.next-prod/static/chunks/app/api/jupyter/load/route-cc849cd7b6f01cad.js +1 -0
  368. package/.next-prod/static/chunks/app/api/jupyter/save/route-cc849cd7b6f01cad.js +1 -0
  369. package/.next-prod/static/chunks/app/api/jupyter/shutdown/route-cc849cd7b6f01cad.js +1 -0
  370. package/.next-prod/static/chunks/app/api/lsp/definition/route-cc849cd7b6f01cad.js +1 -0
  371. package/.next-prod/static/chunks/app/api/lsp/hover/route-cc849cd7b6f01cad.js +1 -0
  372. package/.next-prod/static/chunks/app/api/lsp/references/route-cc849cd7b6f01cad.js +1 -0
  373. package/.next-prod/static/chunks/app/api/lsp/status/route-cc849cd7b6f01cad.js +1 -0
  374. package/.next-prod/static/chunks/app/api/lsp/warmup/route-cc849cd7b6f01cad.js +1 -0
  375. package/.next-prod/static/chunks/app/api/mysql/columns/route-cc849cd7b6f01cad.js +1 -0
  376. package/.next-prod/static/chunks/app/api/mysql/connect/route-cc849cd7b6f01cad.js +1 -0
  377. package/.next-prod/static/chunks/app/api/mysql/disconnect/route-cc849cd7b6f01cad.js +1 -0
  378. package/.next-prod/static/chunks/app/api/mysql/export/route-cc849cd7b6f01cad.js +1 -0
  379. package/.next-prod/static/chunks/app/api/mysql/query/route-cc849cd7b6f01cad.js +1 -0
  380. package/.next-prod/static/chunks/app/api/mysql/schemas/route-cc849cd7b6f01cad.js +1 -0
  381. package/.next-prod/static/chunks/app/api/neo4j/connect/route-cc849cd7b6f01cad.js +1 -0
  382. package/.next-prod/static/chunks/app/api/neo4j/disconnect/route-cc849cd7b6f01cad.js +1 -0
  383. package/.next-prod/static/chunks/app/api/neo4j/query/route-cc849cd7b6f01cad.js +1 -0
  384. package/.next-prod/static/chunks/app/api/neo4j/schema/route-cc849cd7b6f01cad.js +1 -0
  385. package/.next-prod/static/chunks/app/api/note/route-cc849cd7b6f01cad.js +1 -0
  386. package/.next-prod/static/chunks/app/api/ollama/models/route-cc849cd7b6f01cad.js +1 -0
  387. package/.next-prod/static/chunks/app/api/ollama/start/route-cc849cd7b6f01cad.js +1 -0
  388. package/.next-prod/static/chunks/app/api/open-cursor/route-cc849cd7b6f01cad.js +1 -0
  389. package/.next-prod/static/chunks/app/api/open-vscode/route-cc849cd7b6f01cad.js +1 -0
  390. package/.next-prod/static/chunks/app/api/pick-folder/route-cc849cd7b6f01cad.js +1 -0
  391. package/.next-prod/static/chunks/app/api/pinned-sessions/route-cc849cd7b6f01cad.js +1 -0
  392. package/.next-prod/static/chunks/app/api/project-settings/route-cc849cd7b6f01cad.js +1 -0
  393. package/.next-prod/static/chunks/app/api/project-state/route-cc849cd7b6f01cad.js +1 -0
  394. package/.next-prod/static/chunks/app/api/projectGraph/affected/route-cc849cd7b6f01cad.js +1 -0
  395. package/.next-prod/static/chunks/app/api/projectGraph/callees/route-cc849cd7b6f01cad.js +1 -0
  396. package/.next-prod/static/chunks/app/api/projectGraph/callers/route-cc849cd7b6f01cad.js +1 -0
  397. package/.next-prod/static/chunks/app/api/projectGraph/coedit/route-cc849cd7b6f01cad.js +1 -0
  398. package/.next-prod/static/chunks/app/api/projectGraph/context/route-cc849cd7b6f01cad.js +1 -0
  399. package/.next-prod/static/chunks/app/api/projectGraph/file/route-cc849cd7b6f01cad.js +1 -0
  400. package/.next-prod/static/chunks/app/api/projectGraph/file-functions/route-cc849cd7b6f01cad.js +1 -0
  401. package/.next-prod/static/chunks/app/api/projectGraph/impact/route-cc849cd7b6f01cad.js +1 -0
  402. package/.next-prod/static/chunks/app/api/projectGraph/related/route-cc849cd7b6f01cad.js +1 -0
  403. package/.next-prod/static/chunks/app/api/projectGraph/risk/route-cc849cd7b6f01cad.js +1 -0
  404. package/.next-prod/static/chunks/app/api/projectGraph/search/route-cc849cd7b6f01cad.js +1 -0
  405. package/.next-prod/static/chunks/app/api/projects/route-cc849cd7b6f01cad.js +1 -0
  406. package/.next-prod/static/chunks/app/api/push/public-key/route-cc849cd7b6f01cad.js +1 -0
  407. package/.next-prod/static/chunks/app/api/push/subscribe/route-cc849cd7b6f01cad.js +1 -0
  408. package/.next-prod/static/chunks/app/api/push/unsubscribe/route-cc849cd7b6f01cad.js +1 -0
  409. package/.next-prod/static/chunks/app/api/redis/command/route-cc849cd7b6f01cad.js +1 -0
  410. package/.next-prod/static/chunks/app/api/redis/connect/route-cc849cd7b6f01cad.js +1 -0
  411. package/.next-prod/static/chunks/app/api/redis/delete/route-cc849cd7b6f01cad.js +1 -0
  412. package/.next-prod/static/chunks/app/api/redis/disconnect/route-cc849cd7b6f01cad.js +1 -0
  413. package/.next-prod/static/chunks/app/api/redis/get/route-cc849cd7b6f01cad.js +1 -0
  414. package/.next-prod/static/chunks/app/api/redis/keys/route-cc849cd7b6f01cad.js +1 -0
  415. package/.next-prod/static/chunks/app/api/redis/set/route-cc849cd7b6f01cad.js +1 -0
  416. package/.next-prod/static/chunks/app/api/review/[id]/comments/route-cc849cd7b6f01cad.js +1 -0
  417. package/.next-prod/static/chunks/app/api/review/[id]/replies/route-cc849cd7b6f01cad.js +1 -0
  418. package/.next-prod/static/chunks/app/api/review/[id]/route-cc849cd7b6f01cad.js +1 -0
  419. package/.next-prod/static/chunks/app/api/review/identify/route-cc849cd7b6f01cad.js +1 -0
  420. package/.next-prod/static/chunks/app/api/review/order/route-cc849cd7b6f01cad.js +1 -0
  421. package/.next-prod/static/chunks/app/api/review/route-cc849cd7b6f01cad.js +1 -0
  422. package/.next-prod/static/chunks/app/api/review/share-info/route-cc849cd7b6f01cad.js +1 -0
  423. package/.next-prod/static/chunks/app/api/review/users/route-cc849cd7b6f01cad.js +1 -0
  424. package/.next-prod/static/chunks/app/api/scheduled-tasks/route-cc849cd7b6f01cad.js +1 -0
  425. package/.next-prod/static/chunks/app/api/services/config/route-cc849cd7b6f01cad.js +1 -0
  426. package/.next-prod/static/chunks/app/api/services/scripts/route-cc849cd7b6f01cad.js +1 -0
  427. package/.next-prod/static/chunks/app/api/session/[sessionId]/fork/route-cc849cd7b6f01cad.js +1 -0
  428. package/.next-prod/static/chunks/app/api/session/[sessionId]/history/route-cc849cd7b6f01cad.js +1 -0
  429. package/.next-prod/static/chunks/app/api/session-by-path/route-cc849cd7b6f01cad.js +1 -0
  430. package/.next-prod/static/chunks/app/api/sessions/projects/[encodedPath]/route-cc849cd7b6f01cad.js +1 -0
  431. package/.next-prod/static/chunks/app/api/sessions/projects/route-cc849cd7b6f01cad.js +1 -0
  432. package/.next-prod/static/chunks/app/api/sessions/route-cc849cd7b6f01cad.js +1 -0
  433. package/.next-prod/static/chunks/app/api/settings/route-cc849cd7b6f01cad.js +1 -0
  434. package/.next-prod/static/chunks/app/api/skills/[id]/route-cc849cd7b6f01cad.js +1 -0
  435. package/.next-prod/static/chunks/app/api/skills/content/route-cc849cd7b6f01cad.js +1 -0
  436. package/.next-prod/static/chunks/app/api/skills/route-cc849cd7b6f01cad.js +1 -0
  437. package/.next-prod/static/chunks/app/api/terminal/aliases/route-cc849cd7b6f01cad.js +1 -0
  438. package/.next-prod/static/chunks/app/api/terminal/autocomplete/route-cc849cd7b6f01cad.js +1 -0
  439. package/.next-prod/static/chunks/app/api/terminal/bubble-order/route-cc849cd7b6f01cad.js +1 -0
  440. package/.next-prod/static/chunks/app/api/terminal/env/route-cc849cd7b6f01cad.js +1 -0
  441. package/.next-prod/static/chunks/app/api/terminal/history/route-cc849cd7b6f01cad.js +1 -0
  442. package/.next-prod/static/chunks/app/api/version/route-cc849cd7b6f01cad.js +1 -0
  443. package/.next-prod/static/chunks/app/{layout-de73b7c59e956b47.js → layout-312d106fe47907df.js} +1 -1
  444. package/.next-prod/static/chunks/app/m/page-0be3799c1b38c991.js +1 -0
  445. package/.next-prod/static/chunks/app/manifest.webmanifest/route-cc849cd7b6f01cad.js +1 -0
  446. package/.next-prod/static/chunks/app/{page-d539c7c36a32fd49.js → page-db70085227aa56aa.js} +1 -1
  447. package/.next-prod/static/chunks/app/project/{page-d539c7c36a32fd49.js → page-db70085227aa56aa.js} +1 -1
  448. package/.next-prod/static/chunks/app/review/[id]/{page-7db3a48a13f1840c.js → page-31d70fd518d4c7e6.js} +1 -1
  449. package/.next-prod/static/chunks/next/dist/client/components/builtin/app-error-cc849cd7b6f01cad.js +1 -0
  450. package/.next-prod/static/chunks/next/dist/client/components/builtin/forbidden-cc849cd7b6f01cad.js +1 -0
  451. package/.next-prod/static/chunks/next/dist/client/components/builtin/not-found-cc849cd7b6f01cad.js +1 -0
  452. package/.next-prod/static/chunks/next/dist/client/components/builtin/unauthorized-cc849cd7b6f01cad.js +1 -0
  453. package/.next-prod/static/css/217cb3486f7b68d7.css +1 -0
  454. package/.next-prod/trace +13 -13
  455. package/.next-prod/trace-build +1 -1
  456. package/.next-prod/types/app/api/chat/stop/route.ts +351 -0
  457. package/.next-prod/types/app/api/push/public-key/route.ts +351 -0
  458. package/.next-prod/types/app/api/push/subscribe/route.ts +351 -0
  459. package/.next-prod/types/app/api/push/unsubscribe/route.ts +351 -0
  460. package/.next-prod/types/app/m/page.ts +87 -0
  461. package/.next-prod/types/routes.d.ts +7 -2
  462. package/.next-prod/types/validator.ts +45 -0
  463. package/dist/{chunk-6BFKFQG5.mjs → chunk-5BOGGUGT.mjs} +3 -1
  464. package/dist/{chunk-ICB7IS3A.mjs → chunk-BM3ZNL5S.mjs} +1 -1
  465. package/dist/{chunk-RQEEQUTA.mjs → chunk-SDWQ72YQ.mjs} +184 -117
  466. package/dist/httpApi.mjs +2 -2
  467. package/dist/scheduledTasks.mjs +34 -66
  468. package/dist/{server-Z6V4HKGV.mjs → server-DRMO2DUJ.mjs} +2 -2
  469. package/dist/wsServer.mjs +81 -10
  470. package/next.config.mjs +15 -0
  471. package/package.json +7 -2
  472. package/public/boot.js +32 -4
  473. package/public/push-sw.js +51 -0
  474. package/.next-prod/server/chunks/5616.js +0 -1
  475. package/.next-prod/static/-btylnafgKD-DMe4UTayG/_buildManifest.js +0 -1
  476. package/.next-prod/static/chunks/2759-50f11ab1460db5e0.js +0 -23
  477. package/.next-prod/static/chunks/6345-bf76736c9229b11d.js +0 -14
  478. package/.next-prod/static/chunks/9403-57da0d8d38886ffe.js +0 -25
  479. package/.next-prod/static/chunks/app/_global-error/page-0247c08c6f41b71e.js +0 -1
  480. package/.next-prod/static/chunks/app/api/agent/test/route-0247c08c6f41b71e.js +0 -1
  481. package/.next-prod/static/chunks/app/api/bash/route-0247c08c6f41b71e.js +0 -1
  482. package/.next-prod/static/chunks/app/api/chat/codex/route-0247c08c6f41b71e.js +0 -1
  483. package/.next-prod/static/chunks/app/api/chat/deepseek/route-0247c08c6f41b71e.js +0 -1
  484. package/.next-prod/static/chunks/app/api/chat/kimi/route-0247c08c6f41b71e.js +0 -1
  485. package/.next-prod/static/chunks/app/api/chat/ollama/route-0247c08c6f41b71e.js +0 -1
  486. package/.next-prod/static/chunks/app/api/chat/pty-input/route-0247c08c6f41b71e.js +0 -1
  487. package/.next-prod/static/chunks/app/api/chat/route-0247c08c6f41b71e.js +0 -1
  488. package/.next-prod/static/chunks/app/api/claude-stats/route-0247c08c6f41b71e.js +0 -1
  489. package/.next-prod/static/chunks/app/api/commands/route-0247c08c6f41b71e.js +0 -1
  490. package/.next-prod/static/chunks/app/api/comments/route-0247c08c6f41b71e.js +0 -1
  491. package/.next-prod/static/chunks/app/api/db/columns/route-0247c08c6f41b71e.js +0 -1
  492. package/.next-prod/static/chunks/app/api/db/connect/route-0247c08c6f41b71e.js +0 -1
  493. package/.next-prod/static/chunks/app/api/db/disconnect/route-0247c08c6f41b71e.js +0 -1
  494. package/.next-prod/static/chunks/app/api/db/export/route-0247c08c6f41b71e.js +0 -1
  495. package/.next-prod/static/chunks/app/api/db/query/route-0247c08c6f41b71e.js +0 -1
  496. package/.next-prod/static/chunks/app/api/db/schemas/route-0247c08c6f41b71e.js +0 -1
  497. package/.next-prod/static/chunks/app/api/dev/spans/route-0247c08c6f41b71e.js +0 -1
  498. package/.next-prod/static/chunks/app/api/extension/version/route-0247c08c6f41b71e.js +0 -1
  499. package/.next-prod/static/chunks/app/api/file/route-0247c08c6f41b71e.js +0 -1
  500. package/.next-prod/static/chunks/app/api/files/blame/route-0247c08c6f41b71e.js +0 -1
  501. package/.next-prod/static/chunks/app/api/files/clipboard/route-0247c08c6f41b71e.js +0 -1
  502. package/.next-prod/static/chunks/app/api/files/copy/route-0247c08c6f41b71e.js +0 -1
  503. package/.next-prod/static/chunks/app/api/files/delete/route-0247c08c6f41b71e.js +0 -1
  504. package/.next-prod/static/chunks/app/api/files/expanded/route-0247c08c6f41b71e.js +0 -1
  505. package/.next-prod/static/chunks/app/api/files/index/route-0247c08c6f41b71e.js +0 -1
  506. package/.next-prod/static/chunks/app/api/files/init/route-0247c08c6f41b71e.js +0 -1
  507. package/.next-prod/static/chunks/app/api/files/paste/route-0247c08c6f41b71e.js +0 -1
  508. package/.next-prod/static/chunks/app/api/files/read/route-0247c08c6f41b71e.js +0 -1
  509. package/.next-prod/static/chunks/app/api/files/readdir/route-0247c08c6f41b71e.js +0 -1
  510. package/.next-prod/static/chunks/app/api/files/recent/route-0247c08c6f41b71e.js +0 -1
  511. package/.next-prod/static/chunks/app/api/files/save/route-0247c08c6f41b71e.js +0 -1
  512. package/.next-prod/static/chunks/app/api/files/search/route-0247c08c6f41b71e.js +0 -1
  513. package/.next-prod/static/chunks/app/api/files/stat/route-0247c08c6f41b71e.js +0 -1
  514. package/.next-prod/static/chunks/app/api/files/text/route-0247c08c6f41b71e.js +0 -1
  515. package/.next-prod/static/chunks/app/api/git/branch-diff/route-0247c08c6f41b71e.js +0 -1
  516. package/.next-prod/static/chunks/app/api/git/branches/route-0247c08c6f41b71e.js +0 -1
  517. package/.next-prod/static/chunks/app/api/git/commit-diff/route-0247c08c6f41b71e.js +0 -1
  518. package/.next-prod/static/chunks/app/api/git/commits/route-0247c08c6f41b71e.js +0 -1
  519. package/.next-prod/static/chunks/app/api/git/current-branch/route-0247c08c6f41b71e.js +0 -1
  520. package/.next-prod/static/chunks/app/api/git/diff/route-0247c08c6f41b71e.js +0 -1
  521. package/.next-prod/static/chunks/app/api/git/discard/route-0247c08c6f41b71e.js +0 -1
  522. package/.next-prod/static/chunks/app/api/git/stage/route-0247c08c6f41b71e.js +0 -1
  523. package/.next-prod/static/chunks/app/api/git/status/route-0247c08c6f41b71e.js +0 -1
  524. package/.next-prod/static/chunks/app/api/git/unstage/route-0247c08c6f41b71e.js +0 -1
  525. package/.next-prod/static/chunks/app/api/git/worktree/route-0247c08c6f41b71e.js +0 -1
  526. package/.next-prod/static/chunks/app/api/global-state/route-0247c08c6f41b71e.js +0 -1
  527. package/.next-prod/static/chunks/app/api/jupyter/load/route-0247c08c6f41b71e.js +0 -1
  528. package/.next-prod/static/chunks/app/api/jupyter/save/route-0247c08c6f41b71e.js +0 -1
  529. package/.next-prod/static/chunks/app/api/jupyter/shutdown/route-0247c08c6f41b71e.js +0 -1
  530. package/.next-prod/static/chunks/app/api/lsp/definition/route-0247c08c6f41b71e.js +0 -1
  531. package/.next-prod/static/chunks/app/api/lsp/hover/route-0247c08c6f41b71e.js +0 -1
  532. package/.next-prod/static/chunks/app/api/lsp/references/route-0247c08c6f41b71e.js +0 -1
  533. package/.next-prod/static/chunks/app/api/lsp/status/route-0247c08c6f41b71e.js +0 -1
  534. package/.next-prod/static/chunks/app/api/lsp/warmup/route-0247c08c6f41b71e.js +0 -1
  535. package/.next-prod/static/chunks/app/api/mysql/columns/route-0247c08c6f41b71e.js +0 -1
  536. package/.next-prod/static/chunks/app/api/mysql/connect/route-0247c08c6f41b71e.js +0 -1
  537. package/.next-prod/static/chunks/app/api/mysql/disconnect/route-0247c08c6f41b71e.js +0 -1
  538. package/.next-prod/static/chunks/app/api/mysql/export/route-0247c08c6f41b71e.js +0 -1
  539. package/.next-prod/static/chunks/app/api/mysql/query/route-0247c08c6f41b71e.js +0 -1
  540. package/.next-prod/static/chunks/app/api/mysql/schemas/route-0247c08c6f41b71e.js +0 -1
  541. package/.next-prod/static/chunks/app/api/neo4j/connect/route-0247c08c6f41b71e.js +0 -1
  542. package/.next-prod/static/chunks/app/api/neo4j/disconnect/route-0247c08c6f41b71e.js +0 -1
  543. package/.next-prod/static/chunks/app/api/neo4j/query/route-0247c08c6f41b71e.js +0 -1
  544. package/.next-prod/static/chunks/app/api/neo4j/schema/route-0247c08c6f41b71e.js +0 -1
  545. package/.next-prod/static/chunks/app/api/note/route-0247c08c6f41b71e.js +0 -1
  546. package/.next-prod/static/chunks/app/api/ollama/models/route-0247c08c6f41b71e.js +0 -1
  547. package/.next-prod/static/chunks/app/api/ollama/start/route-0247c08c6f41b71e.js +0 -1
  548. package/.next-prod/static/chunks/app/api/open-cursor/route-0247c08c6f41b71e.js +0 -1
  549. package/.next-prod/static/chunks/app/api/open-vscode/route-0247c08c6f41b71e.js +0 -1
  550. package/.next-prod/static/chunks/app/api/pick-folder/route-0247c08c6f41b71e.js +0 -1
  551. package/.next-prod/static/chunks/app/api/pinned-sessions/route-0247c08c6f41b71e.js +0 -1
  552. package/.next-prod/static/chunks/app/api/project-settings/route-0247c08c6f41b71e.js +0 -1
  553. package/.next-prod/static/chunks/app/api/project-state/route-0247c08c6f41b71e.js +0 -1
  554. package/.next-prod/static/chunks/app/api/projectGraph/affected/route-0247c08c6f41b71e.js +0 -1
  555. package/.next-prod/static/chunks/app/api/projectGraph/callees/route-0247c08c6f41b71e.js +0 -1
  556. package/.next-prod/static/chunks/app/api/projectGraph/callers/route-0247c08c6f41b71e.js +0 -1
  557. package/.next-prod/static/chunks/app/api/projectGraph/coedit/route-0247c08c6f41b71e.js +0 -1
  558. package/.next-prod/static/chunks/app/api/projectGraph/context/route-0247c08c6f41b71e.js +0 -1
  559. package/.next-prod/static/chunks/app/api/projectGraph/file/route-0247c08c6f41b71e.js +0 -1
  560. package/.next-prod/static/chunks/app/api/projectGraph/file-functions/route-0247c08c6f41b71e.js +0 -1
  561. package/.next-prod/static/chunks/app/api/projectGraph/impact/route-0247c08c6f41b71e.js +0 -1
  562. package/.next-prod/static/chunks/app/api/projectGraph/related/route-0247c08c6f41b71e.js +0 -1
  563. package/.next-prod/static/chunks/app/api/projectGraph/risk/route-0247c08c6f41b71e.js +0 -1
  564. package/.next-prod/static/chunks/app/api/projectGraph/search/route-0247c08c6f41b71e.js +0 -1
  565. package/.next-prod/static/chunks/app/api/projects/route-0247c08c6f41b71e.js +0 -1
  566. package/.next-prod/static/chunks/app/api/redis/command/route-0247c08c6f41b71e.js +0 -1
  567. package/.next-prod/static/chunks/app/api/redis/connect/route-0247c08c6f41b71e.js +0 -1
  568. package/.next-prod/static/chunks/app/api/redis/delete/route-0247c08c6f41b71e.js +0 -1
  569. package/.next-prod/static/chunks/app/api/redis/disconnect/route-0247c08c6f41b71e.js +0 -1
  570. package/.next-prod/static/chunks/app/api/redis/get/route-0247c08c6f41b71e.js +0 -1
  571. package/.next-prod/static/chunks/app/api/redis/keys/route-0247c08c6f41b71e.js +0 -1
  572. package/.next-prod/static/chunks/app/api/redis/set/route-0247c08c6f41b71e.js +0 -1
  573. package/.next-prod/static/chunks/app/api/review/[id]/comments/route-0247c08c6f41b71e.js +0 -1
  574. package/.next-prod/static/chunks/app/api/review/[id]/replies/route-0247c08c6f41b71e.js +0 -1
  575. package/.next-prod/static/chunks/app/api/review/[id]/route-0247c08c6f41b71e.js +0 -1
  576. package/.next-prod/static/chunks/app/api/review/identify/route-0247c08c6f41b71e.js +0 -1
  577. package/.next-prod/static/chunks/app/api/review/order/route-0247c08c6f41b71e.js +0 -1
  578. package/.next-prod/static/chunks/app/api/review/route-0247c08c6f41b71e.js +0 -1
  579. package/.next-prod/static/chunks/app/api/review/share-info/route-0247c08c6f41b71e.js +0 -1
  580. package/.next-prod/static/chunks/app/api/review/users/route-0247c08c6f41b71e.js +0 -1
  581. package/.next-prod/static/chunks/app/api/scheduled-tasks/route-0247c08c6f41b71e.js +0 -1
  582. package/.next-prod/static/chunks/app/api/services/config/route-0247c08c6f41b71e.js +0 -1
  583. package/.next-prod/static/chunks/app/api/services/scripts/route-0247c08c6f41b71e.js +0 -1
  584. package/.next-prod/static/chunks/app/api/session/[sessionId]/fork/route-0247c08c6f41b71e.js +0 -1
  585. package/.next-prod/static/chunks/app/api/session/[sessionId]/history/route-0247c08c6f41b71e.js +0 -1
  586. package/.next-prod/static/chunks/app/api/session-by-path/route-0247c08c6f41b71e.js +0 -1
  587. package/.next-prod/static/chunks/app/api/sessions/projects/[encodedPath]/route-0247c08c6f41b71e.js +0 -1
  588. package/.next-prod/static/chunks/app/api/sessions/projects/route-0247c08c6f41b71e.js +0 -1
  589. package/.next-prod/static/chunks/app/api/sessions/route-0247c08c6f41b71e.js +0 -1
  590. package/.next-prod/static/chunks/app/api/settings/route-0247c08c6f41b71e.js +0 -1
  591. package/.next-prod/static/chunks/app/api/skills/[id]/route-0247c08c6f41b71e.js +0 -1
  592. package/.next-prod/static/chunks/app/api/skills/content/route-0247c08c6f41b71e.js +0 -1
  593. package/.next-prod/static/chunks/app/api/skills/route-0247c08c6f41b71e.js +0 -1
  594. package/.next-prod/static/chunks/app/api/terminal/aliases/route-0247c08c6f41b71e.js +0 -1
  595. package/.next-prod/static/chunks/app/api/terminal/autocomplete/route-0247c08c6f41b71e.js +0 -1
  596. package/.next-prod/static/chunks/app/api/terminal/bubble-order/route-0247c08c6f41b71e.js +0 -1
  597. package/.next-prod/static/chunks/app/api/terminal/env/route-0247c08c6f41b71e.js +0 -1
  598. package/.next-prod/static/chunks/app/api/terminal/history/route-0247c08c6f41b71e.js +0 -1
  599. package/.next-prod/static/chunks/app/api/version/route-0247c08c6f41b71e.js +0 -1
  600. package/.next-prod/static/chunks/app/manifest.webmanifest/route-0247c08c6f41b71e.js +0 -1
  601. package/.next-prod/static/chunks/next/dist/client/components/builtin/app-error-0247c08c6f41b71e.js +0 -1
  602. package/.next-prod/static/chunks/next/dist/client/components/builtin/forbidden-0247c08c6f41b71e.js +0 -1
  603. package/.next-prod/static/chunks/next/dist/client/components/builtin/not-found-0247c08c6f41b71e.js +0 -1
  604. package/.next-prod/static/chunks/next/dist/client/components/builtin/unauthorized-0247c08c6f41b71e.js +0 -1
  605. package/.next-prod/static/css/863166ef8887021b.css +0 -1
  606. /package/.next-prod/static/{-btylnafgKD-DMe4UTayG → cTq1mDm5D_oZLiumFG6di}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- globalThis.__BUILD_MANIFEST={polyfillFiles:["static/chunks/polyfills-42372ed130431b0a.js"],devFiles:[],lowPriorityFiles:["static/-btylnafgKD-DMe4UTayG/_buildManifest.js","static/-btylnafgKD-DMe4UTayG/_ssgManifest.js"],rootMainFiles:["static/chunks/webpack-cb3881d9a37f80b7.js","static/chunks/4bd1b696-e356ca5ba0218e27.js","static/chunks/3794-ba2500baa4c52d55.js","static/chunks/main-app-b76c0df33a946918.js"],rootMainFilesTree:{},pages:{"/_app":[]}};
1
+ globalThis.__BUILD_MANIFEST={polyfillFiles:["static/chunks/polyfills-42372ed130431b0a.js"],devFiles:[],lowPriorityFiles:["static/cTq1mDm5D_oZLiumFG6di/_buildManifest.js","static/cTq1mDm5D_oZLiumFG6di/_ssgManifest.js"],rootMainFiles:["static/chunks/webpack-cb3881d9a37f80b7.js","static/chunks/4bd1b696-e356ca5ba0218e27.js","static/chunks/3794-ba2500baa4c52d55.js","static/chunks/main-app-b76c0df33a946918.js"],rootMainFilesTree:{},pages:{"/_app":[]}};
@@ -1 +1,49 @@
1
- <!DOCTYPE html><html lang="en" class="overflow-hidden"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" href="/_next/static/media/5c0c2bcbaa4149ca-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/bb3ef058b751a6ad-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/e4af272ccee01ff0-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/css/e33280be1b23649f.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/52b314bf20332f7c.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/863166ef8887021b.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-cb3881d9a37f80b7.js"/><script src="/_next/static/chunks/4bd1b696-e356ca5ba0218e27.js" async=""></script><script src="/_next/static/chunks/3794-ba2500baa4c52d55.js" async=""></script><script src="/_next/static/chunks/main-app-b76c0df33a946918.js" async=""></script><script src="/_next/static/chunks/d3ac728e-ee038320ef1e4bdf.js" async=""></script><script src="/_next/static/chunks/96c8525a-f1e0653013503d49.js" async=""></script><script src="/_next/static/chunks/bc21e3dd-a78364524623b9b0.js" async=""></script><script src="/_next/static/chunks/e868780c-39804e9ab925f132.js" async=""></script><script src="/_next/static/chunks/70e0d97a-bbb0ec05083da54f.js" async=""></script><script src="/_next/static/chunks/54a60aa6-9f9f856e5049cd65.js" async=""></script><script src="/_next/static/chunks/327-9ffab8f0b2b0b4cd.js" async=""></script><script src="/_next/static/chunks/2759-50f11ab1460db5e0.js" async=""></script><script src="/_next/static/chunks/6345-bf76736c9229b11d.js" async=""></script><script src="/_next/static/chunks/9403-57da0d8d38886ffe.js" async=""></script><script src="/_next/static/chunks/app/page-d539c7c36a32fd49.js" async=""></script><script src="/_next/static/chunks/app/global-error-3c48d7d42c672863.js" async=""></script><meta name="robots" content="noindex"/><meta name="next-size-adjust" content=""/><title>404: This page could not be found.</title><meta name="theme-color" content="#f9f9fb" media="(prefers-color-scheme: light)"/><meta name="theme-color" content="#111113" media="(prefers-color-scheme: dark)"/><title>OpenCockpit</title><meta name="description" content="OpenCockpit is a local-first AI development hub with chat agents, a file explorer, terminals, and browser bubbles in one swipeable workspace. One seat. One AI."/><link rel="manifest" href="/manifest.webmanifest"/><meta name="mobile-web-app-capable" content="yes"/><meta name="apple-mobile-web-app-title" content="Cockpit"/><meta name="apple-mobile-web-app-status-bar-style" content="default"/><link rel="icon" href="/favicon.ico?603d046c9a6fdfbb" type="image/x-icon" sizes="16x16"/><link rel="icon" href="/icons/icon-192x192.png"/><link rel="apple-touch-icon" href="/icons/icon-192x192.png"/><script src="/boot.js"></script><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="__variable_f367f3 __variable_c1a059 __variable_3c557b antialiased overflow-hidden"><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--><div class="fixed bottom-4 right-4 z-[100] flex flex-col gap-2"></div><script src="/_next/static/chunks/webpack-cb3881d9a37f80b7.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[84310,[\"7330\",\"static/chunks/d3ac728e-ee038320ef1e4bdf.js\",\"8216\",\"static/chunks/96c8525a-f1e0653013503d49.js\",\"4281\",\"static/chunks/bc21e3dd-a78364524623b9b0.js\",\"3888\",\"static/chunks/e868780c-39804e9ab925f132.js\",\"5004\",\"static/chunks/70e0d97a-bbb0ec05083da54f.js\",\"277\",\"static/chunks/54a60aa6-9f9f856e5049cd65.js\",\"327\",\"static/chunks/327-9ffab8f0b2b0b4cd.js\",\"2759\",\"static/chunks/2759-50f11ab1460db5e0.js\",\"6345\",\"static/chunks/6345-bf76736c9229b11d.js\",\"9403\",\"static/chunks/9403-57da0d8d38886ffe.js\",\"8974\",\"static/chunks/app/page-d539c7c36a32fd49.js\"],\"Providers\",1]\n3:I[57121,[],\"\"]\n4:I[74581,[],\"\"]\n5:I[90484,[],\"OutletBoundary\"]\n6:\"$Sreact.suspense\"\n9:I[90484,[],\"ViewportBoundary\"]\nb:I[90484,[],\"MetadataBoundary\"]\nd:I[26719,[\"4219\",\"static/chunks/app/global-error-3c48d7d42c672863.js\"],\"default\"]\n:HL[\"/_next/static/media/5c0c2bcbaa4149ca-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/bb3ef058b751a6ad-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/e4af272ccee01ff0-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/css/e33280be1b23649f.css\",\"style\"]\n:HL[\"/_next/static/css/52b314bf20332f7c.css\",\"style\"]\n:HL[\"/_next/static/css/863166ef8887021b.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"_not-found\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",16],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/e33280be1b23649f.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/52b314bf20332f7c.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"2\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/863166ef8887021b.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"suppressHydrationWarning\":true,\"className\":\"overflow-hidden\",\"children\":[[\"$\",\"head\",null,{\"children\":[\"$\",\"script\",null,{\"src\":\"/boot.js\"}]}],[\"$\",\"body\",null,{\"className\":\"__variable_f367f3 __variable_c1a059 __variable_3c557b antialiased overflow-hidden\",\"children\":[\"$\",\"$L2\",null,{\"children\":[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],null,[\"$\",\"$L5\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@7\"}]}]]}],{},null,false,null]},null,false,\"$@8\"]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$L9\",null,{\"children\":\"$La\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$Lb\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lc\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$d\",[]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"-btylnafgKD-DMe4UTayG\"}\n"])</script><script>self.__next_f.push([1,"e:[]\n8:\"$We\"\n"])</script><script>self.__next_f.push([1,"a:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#f9f9fb\",\"media\":\"(prefers-color-scheme: light)\"}],[\"$\",\"meta\",\"3\",{\"name\":\"theme-color\",\"content\":\"#111113\",\"media\":\"(prefers-color-scheme: dark)\"}]]\n"])</script><script>self.__next_f.push([1,"f:I[86869,[],\"IconMark\"]\n7:null\nc:[[\"$\",\"title\",\"0\",{\"children\":\"OpenCockpit\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"OpenCockpit is a local-first AI development hub with chat agents, a file explorer, terminals, and browser bubbles in one swipeable workspace. One seat. One AI.\"}],[\"$\",\"link\",\"2\",{\"rel\":\"manifest\",\"href\":\"/manifest.webmanifest\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"meta\",\"3\",{\"name\":\"mobile-web-app-capable\",\"content\":\"yes\"}],[\"$\",\"meta\",\"4\",{\"name\":\"apple-mobile-web-app-title\",\"content\":\"Cockpit\"}],[\"$\",\"meta\",\"5\",{\"name\":\"apple-mobile-web-app-status-bar-style\",\"content\":\"default\"}],[\"$\",\"link\",\"6\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?603d046c9a6fdfbb\",\"type\":\"image/x-icon\",\"sizes\":\"16x16\"}],[\"$\",\"link\",\"7\",{\"rel\":\"icon\",\"href\":\"/icons/icon-192x192.png\"}],[\"$\",\"link\",\"8\",{\"rel\":\"apple-touch-icon\",\"href\":\"/icons/icon-192x192.png\"}],[\"$\",\"$Lf\",\"9\",{}]]\n"])</script></body></html>
1
+ <!DOCTYPE html><html lang="en" class="overflow-hidden"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" href="/_next/static/media/5c0c2bcbaa4149ca-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/bb3ef058b751a6ad-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/e4af272ccee01ff0-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/css/e33280be1b23649f.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/52b314bf20332f7c.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/217cb3486f7b68d7.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-cb3881d9a37f80b7.js"/><script src="/_next/static/chunks/4bd1b696-e356ca5ba0218e27.js" async=""></script><script src="/_next/static/chunks/3794-ba2500baa4c52d55.js" async=""></script><script src="/_next/static/chunks/main-app-b76c0df33a946918.js" async=""></script><script src="/_next/static/chunks/d3ac728e-ee038320ef1e4bdf.js" async=""></script><script src="/_next/static/chunks/96c8525a-f1e0653013503d49.js" async=""></script><script src="/_next/static/chunks/bc21e3dd-a78364524623b9b0.js" async=""></script><script src="/_next/static/chunks/e868780c-39804e9ab925f132.js" async=""></script><script src="/_next/static/chunks/70e0d97a-bbb0ec05083da54f.js" async=""></script><script src="/_next/static/chunks/54a60aa6-9f9f856e5049cd65.js" async=""></script><script src="/_next/static/chunks/327-9ffab8f0b2b0b4cd.js" async=""></script><script src="/_next/static/chunks/471-7c4fab47613ffe5c.js" async=""></script><script src="/_next/static/chunks/9428-5c287b255a9831e6.js" async=""></script><script src="/_next/static/chunks/9469-fb5c6f08ba6bab74.js" async=""></script><script src="/_next/static/chunks/5156-2953531342c13696.js" async=""></script><script src="/_next/static/chunks/2032-6fcfaaa6aa730f6d.js" async=""></script><script src="/_next/static/chunks/2576-fe33a1bae037bd9b.js" async=""></script><script src="/_next/static/chunks/app/page-db70085227aa56aa.js" async=""></script><script src="/_next/static/chunks/app/global-error-3c48d7d42c672863.js" async=""></script><title>404: This page could not be found.</title><meta name="robots" content="noindex"/><meta name="next-size-adjust" content=""/><meta name="theme-color" content="#f9f9fb" media="(prefers-color-scheme: light)"/><meta name="theme-color" content="#111113" media="(prefers-color-scheme: dark)"/><title>OpenCockpit</title><meta name="description" content="OpenCockpit is a local-first AI development hub with chat agents, a file explorer, terminals, and browser bubbles in one swipeable workspace. One seat. One AI."/><link rel="manifest" href="/manifest.webmanifest"/><meta name="mobile-web-app-capable" content="yes"/><meta name="apple-mobile-web-app-title" content="Cockpit"/><meta name="apple-mobile-web-app-status-bar-style" content="default"/><link rel="icon" href="/favicon.ico?603d046c9a6fdfbb" type="image/x-icon" sizes="16x16"/><link rel="icon" href="/icons/icon-192x192.png"/><link rel="apple-touch-icon" href="/icons/icon-192x192.png"/><script>// Runs before React hydrates (see app/layout.tsx <Script strategy="beforeInteractive">).
2
+ // Three jobs:
3
+ // 1. Redirect narrow viewports to the mobile route /m (before first paint).
4
+ // 2. Apply the persisted theme class to <html> before first paint to avoid FOUC.
5
+ // 3. Unregister any leftover Service Workers from the PWA era (PWA has been removed).
6
+ (function () {
7
+ // Mobile redirect — runs first and bails out the rest on redirect.
8
+ // Signal is VIEWPORT WIDTH (not User-Agent): it's what actually decides whether the
9
+ // desktop 3-panel layout fits. Runs synchronously in <head> before the body paints,
10
+ // so the desktop UI never flashes. Escape hatch: the /m "use desktop" action sets
11
+ // `cockpit-force-desktop` in localStorage, which suppresses the redirect thereafter.
12
+ try {
13
+ var path = window.location.pathname;
14
+ var onMobileRoute = path === '/m' || path.indexOf('/m/') === 0;
15
+ var forceDesktop = false;
16
+ try { forceDesktop = !!localStorage.getItem('cockpit-force-desktop'); } catch (_e) {}
17
+ if (
18
+ !onMobileRoute &&
19
+ !forceDesktop &&
20
+ window.matchMedia &&
21
+ window.matchMedia('(max-width: 767px)').matches
22
+ ) {
23
+ window.location.replace('/m' + window.location.search);
24
+ return; // stop further boot work; the page is navigating away
25
+ }
26
+ } catch (_e) {}
27
+
28
+ try {
29
+ var theme = localStorage.getItem('theme') || 'dark';
30
+ var resolved = theme;
31
+ if (theme === 'system') {
32
+ resolved = window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light';
33
+ }
34
+ document.documentElement.classList.add(resolved);
35
+ } catch (e) {}
36
+
37
+ // Clean up legacy Service Workers from the old PWA era, but KEEP our
38
+ // push-only SW (/push-sw.js) — it powers Web Push notifications and does no
39
+ // caching, so it doesn't reintroduce the offline behavior we removed.
40
+ if ('serviceWorker' in navigator) {
41
+ navigator.serviceWorker.getRegistrations().then(function (regs) {
42
+ regs.forEach(function (r) {
43
+ var url = (r.active && r.active.scriptURL) || '';
44
+ if (url.indexOf('/push-sw.js') === -1) r.unregister();
45
+ });
46
+ });
47
+ }
48
+ })();
49
+ </script><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="__variable_f367f3 __variable_c1a059 __variable_3c557b antialiased overflow-hidden"><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--><div class="fixed top-4 left-1/2 -translate-x-1/2 z-[100] flex flex-col items-center gap-2"></div><script src="/_next/static/chunks/webpack-cb3881d9a37f80b7.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n3:I[84310,[\"7330\",\"static/chunks/d3ac728e-ee038320ef1e4bdf.js\",\"8216\",\"static/chunks/96c8525a-f1e0653013503d49.js\",\"4281\",\"static/chunks/bc21e3dd-a78364524623b9b0.js\",\"3888\",\"static/chunks/e868780c-39804e9ab925f132.js\",\"5004\",\"static/chunks/70e0d97a-bbb0ec05083da54f.js\",\"277\",\"static/chunks/54a60aa6-9f9f856e5049cd65.js\",\"327\",\"static/chunks/327-9ffab8f0b2b0b4cd.js\",\"471\",\"static/chunks/471-7c4fab47613ffe5c.js\",\"9428\",\"static/chunks/9428-5c287b255a9831e6.js\",\"9469\",\"static/chunks/9469-fb5c6f08ba6bab74.js\",\"5156\",\"static/chunks/5156-2953531342c13696.js\",\"2032\",\"static/chunks/2032-6fcfaaa6aa730f6d.js\",\"2576\",\"static/chunks/2576-fe33a1bae037bd9b.js\",\"8974\",\"static/chunks/app/page-db70085227aa56aa.js\"],\"Providers\",1]\n4:I[57121,[],\"\"]\n5:I[74581,[],\"\"]\na:I[26719,[\"4219\",\"static/chunks/app/global-error-3c48d7d42c672863.js\"],\"default\"]\n:HL[\"/_next/static/media/5c0c2bcbaa4149ca-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/bb3ef058b751a6ad-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/e4af272ccee01ff0-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/css/e33280be1b23649f.css\",\"style\"]\n:HL[\"/_next/static/css/52b314bf20332f7c.css\",\"style\"]\n:HL[\"/_next/static/css/217cb3486f7b68d7.css\",\"style\"]\n2:T85c,"])</script><script>self.__next_f.push([1,"// Runs before React hydrates (see app/layout.tsx \u003cScript strategy=\"beforeInteractive\"\u003e).\n// Three jobs:\n// 1. Redirect narrow viewports to the mobile route /m (before first paint).\n// 2. Apply the persisted theme class to \u003chtml\u003e before first paint to avoid FOUC.\n// 3. Unregister any leftover Service Workers from the PWA era (PWA has been removed).\n(function () {\n // Mobile redirect — runs first and bails out the rest on redirect.\n // Signal is VIEWPORT WIDTH (not User-Agent): it's what actually decides whether the\n // desktop 3-panel layout fits. Runs synchronously in \u003chead\u003e before the body paints,\n // so the desktop UI never flashes. Escape hatch: the /m \"use desktop\" action sets\n // `cockpit-force-desktop` in localStorage, which suppresses the redirect thereafter.\n try {\n var path = window.location.pathname;\n var onMobileRoute = path === '/m' || path.indexOf('/m/') === 0;\n var forceDesktop = false;\n try { forceDesktop = !!localStorage.getItem('cockpit-force-desktop'); } catch (_e) {}\n if (\n !onMobileRoute \u0026\u0026\n !forceDesktop \u0026\u0026\n window.matchMedia \u0026\u0026\n window.matchMedia('(max-width: 767px)').matches\n ) {\n window.location.replace('/m' + window.location.search);\n return; // stop further boot work; the page is navigating away\n }\n } catch (_e) {}\n\n try {\n var theme = localStorage.getItem('theme') || 'dark';\n var resolved = theme;\n if (theme === 'system') {\n resolved = window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light';\n }\n document.documentElement.classList.add(resolved);\n } catch (e) {}\n\n // Clean up legacy Service Workers from the old PWA era, but KEEP our\n // push-only SW (/push-sw.js) — it powers Web Push notifications and does no\n // caching, so it doesn't reintroduce the offline behavior we removed.\n if ('serviceWorker' in navigator) {\n navigator.serviceWorker.getRegistrations().then(function (regs) {\n regs.forEach(function (r) {\n var url = (r.active \u0026\u0026 r.active.scriptURL) || '';\n if (url.indexOf('/push-sw.js') === -1) r.unregister();\n });\n });\n }\n})();\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"_not-found\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",16],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/e33280be1b23649f.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/52b314bf20332f7c.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"2\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/217cb3486f7b68d7.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"suppressHydrationWarning\":true,\"className\":\"overflow-hidden\",\"children\":[[\"$\",\"head\",null,{\"children\":[\"$\",\"script\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"$2\"}}]}],[\"$\",\"body\",null,{\"className\":\"__variable_f367f3 __variable_c1a059 __variable_3c557b antialiased overflow-hidden\",\"children\":[\"$\",\"$L3\",null,{\"children\":[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":\"$L6\"}]],null,\"$L7\"]}],{},null,false,null]},null,false,\"$@8\"]},null,false,null],\"$L9\",false]],\"m\":\"$undefined\",\"G\":[\"$a\",[]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"cTq1mDm5D_oZLiumFG6di\"}\n"])</script><script>self.__next_f.push([1,"b:I[90484,[],\"OutletBoundary\"]\nc:\"$Sreact.suspense\"\nf:I[90484,[],\"ViewportBoundary\"]\n11:I[90484,[],\"MetadataBoundary\"]\n6:[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]\n7:[\"$\",\"$Lb\",null,{\"children\":[\"$\",\"$c\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@d\"}]}]\ne:[]\n8:\"$We\"\n9:[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$Lf\",null,{\"children\":\"$L10\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L11\",null,{\"children\":[\"$\",\"$c\",null,{\"name\":\"Next.Metadata\",\"children\":\"$L12\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}]\n"])</script><script>self.__next_f.push([1,"10:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#f9f9fb\",\"media\":\"(prefers-color-scheme: light)\"}],[\"$\",\"meta\",\"3\",{\"name\":\"theme-color\",\"content\":\"#111113\",\"media\":\"(prefers-color-scheme: dark)\"}]]\n"])</script><script>self.__next_f.push([1,"13:I[86869,[],\"IconMark\"]\nd:null\n12:[[\"$\",\"title\",\"0\",{\"children\":\"OpenCockpit\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"OpenCockpit is a local-first AI development hub with chat agents, a file explorer, terminals, and browser bubbles in one swipeable workspace. One seat. One AI.\"}],[\"$\",\"link\",\"2\",{\"rel\":\"manifest\",\"href\":\"/manifest.webmanifest\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"meta\",\"3\",{\"name\":\"mobile-web-app-capable\",\"content\":\"yes\"}],[\"$\",\"meta\",\"4\",{\"name\":\"apple-mobile-web-app-title\",\"content\":\"Cockpit\"}],[\"$\",\"meta\",\"5\",{\"name\":\"apple-mobile-web-app-status-bar-style\",\"content\":\"default\"}],[\"$\",\"link\",\"6\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?603d046c9a6fdfbb\",\"type\":\"image/x-icon\",\"sizes\":\"16x16\"}],[\"$\",\"link\",\"7\",{\"rel\":\"icon\",\"href\":\"/icons/icon-192x192.png\"}],[\"$\",\"link\",\"8\",{\"rel\":\"apple-touch-icon\",\"href\":\"/icons/icon-192x192.png\"}],[\"$\",\"$L13\",\"9\",{}]]\n"])</script></body></html>
@@ -1 +1 @@
1
- <!DOCTYPE html><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-cb3881d9a37f80b7.js"/><script src="/_next/static/chunks/4bd1b696-e356ca5ba0218e27.js" async=""></script><script src="/_next/static/chunks/3794-ba2500baa4c52d55.js" async=""></script><script src="/_next/static/chunks/main-app-b76c0df33a946918.js" async=""></script><script src="/_next/static/chunks/app/global-error-3c48d7d42c672863.js" async=""></script><meta name="next-size-adjust" content=""/><title>500: This page couldn’t load</title><style>:root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }</style><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;display:flex;align-items:center;justify-content:center"><div style="margin-top:-32px;max-width:325px;padding:32px 28px;text-align:left"><svg width="32" height="32" viewBox="-0.2 -1.5 32 32" fill="none" style="margin-bottom:24px"><path d="M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z" fill="var(--next-error-title)"></path></svg><h1 style="font-size:24px;font-weight:500;letter-spacing:-0.02em;line-height:32px;margin:0 0 12px 0;color:var(--next-error-title)">This page couldn’t load</h1><p style="font-size:14px;font-weight:400;line-height:21px;margin:0 0 20px 0;color:var(--next-error-message)">A server error occurred. Reload to try again.</p><form style="margin:0"><button type="submit" style="display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 12px;font-size:14px;font-weight:500;line-height:20px;border-radius:6px;cursor:pointer;color:var(--next-error-btn-text);background:var(--next-error-btn-bg);border:var(--next-error-btn-border)">Reload</button></form></div></div><!--$--><!--/$--><script src="/_next/static/chunks/webpack-cb3881d9a37f80b7.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[57121,[],\"\"]\n3:I[74581,[],\"\"]\n4:I[90484,[],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[90484,[],\"ViewportBoundary\"]\na:I[90484,[],\"MetadataBoundary\"]\nc:I[26719,[\"4219\",\"static/chunks/app/global-error-3c48d7d42c672863.js\"],\"default\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"_global-error\",{\"children\":[\"__PAGE__\",{}]}]}],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"title\",null,{\"children\":\"500: This page couldn’t load\"}],[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }\"}}]]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"display\":\"flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"marginTop\":\"-32px\",\"maxWidth\":\"325px\",\"padding\":\"32px 28px\",\"textAlign\":\"left\"},\"children\":[[\"$\",\"svg\",null,{\"width\":\"32\",\"height\":\"32\",\"viewBox\":\"-0.2 -1.5 32 32\",\"fill\":\"none\",\"style\":{\"marginBottom\":\"24px\"},\"children\":[\"$\",\"path\",null,{\"d\":\"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z\",\"fill\":\"var(--next-error-title)\"}]}],[\"$\",\"h1\",null,{\"style\":{\"fontSize\":\"24px\",\"fontWeight\":500,\"letterSpacing\":\"-0.02em\",\"lineHeight\":\"32px\",\"margin\":\"0 0 12px 0\",\"color\":\"var(--next-error-title)\"},\"children\":\"This page couldn’t load\"}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":\"14px\",\"fontWeight\":400,\"lineHeight\":\"21px\",\"margin\":\"0 0 20px 0\",\"color\":\"var(--next-error-message)\"},\"children\":\"A server error occurred. Reload to try again.\"}],[\"$\",\"form\",null,{\"style\":{\"margin\":0},\"children\":[\"$\",\"button\",null,{\"type\":\"submit\",\"style\":{\"display\":\"inline-flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\",\"height\":\"32px\",\"padding\":\"0 12px\",\"fontSize\":\"14px\",\"fontWeight\":500,\"lineHeight\":\"20px\",\"borderRadius\":\"6px\",\"cursor\":\"pointer\",\"color\":\"var(--next-error-btn-text)\",\"background\":\"var(--next-error-btn-bg)\",\"border\":\"var(--next-error-btn-border)\"},\"children\":\"Reload\"}]}]]}]}]}]]}],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,null]},null,false,\"$@7\"]},null,false,\"$@7\"],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"-btylnafgKD-DMe4UTayG\"}\n"])</script><script>self.__next_f.push([1,"d:[]\n7:\"$Wd\"\n"])</script><script>self.__next_f.push([1,"9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"6:null\nb:[]\n"])</script></body></html>
1
+ <!DOCTYPE html><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-cb3881d9a37f80b7.js"/><script src="/_next/static/chunks/4bd1b696-e356ca5ba0218e27.js" async=""></script><script src="/_next/static/chunks/3794-ba2500baa4c52d55.js" async=""></script><script src="/_next/static/chunks/main-app-b76c0df33a946918.js" async=""></script><script src="/_next/static/chunks/app/global-error-3c48d7d42c672863.js" async=""></script><meta name="next-size-adjust" content=""/><title>500: This page couldn’t load</title><style>:root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }</style><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;display:flex;align-items:center;justify-content:center"><div style="margin-top:-32px;max-width:325px;padding:32px 28px;text-align:left"><svg width="32" height="32" viewBox="-0.2 -1.5 32 32" fill="none" style="margin-bottom:24px"><path d="M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z" fill="var(--next-error-title)"></path></svg><h1 style="font-size:24px;font-weight:500;letter-spacing:-0.02em;line-height:32px;margin:0 0 12px 0;color:var(--next-error-title)">This page couldn’t load</h1><p style="font-size:14px;font-weight:400;line-height:21px;margin:0 0 20px 0;color:var(--next-error-message)">A server error occurred. Reload to try again.</p><form style="margin:0"><button type="submit" style="display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 12px;font-size:14px;font-weight:500;line-height:20px;border-radius:6px;cursor:pointer;color:var(--next-error-btn-text);background:var(--next-error-btn-bg);border:var(--next-error-btn-border)">Reload</button></form></div></div><!--$--><!--/$--><script src="/_next/static/chunks/webpack-cb3881d9a37f80b7.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[57121,[],\"\"]\n3:I[74581,[],\"\"]\n4:I[90484,[],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[90484,[],\"ViewportBoundary\"]\na:I[90484,[],\"MetadataBoundary\"]\nc:I[26719,[\"4219\",\"static/chunks/app/global-error-3c48d7d42c672863.js\"],\"default\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"_global-error\",{\"children\":[\"__PAGE__\",{}]}]}],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"title\",null,{\"children\":\"500: This page couldn’t load\"}],[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }\"}}]]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"display\":\"flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"marginTop\":\"-32px\",\"maxWidth\":\"325px\",\"padding\":\"32px 28px\",\"textAlign\":\"left\"},\"children\":[[\"$\",\"svg\",null,{\"width\":\"32\",\"height\":\"32\",\"viewBox\":\"-0.2 -1.5 32 32\",\"fill\":\"none\",\"style\":{\"marginBottom\":\"24px\"},\"children\":[\"$\",\"path\",null,{\"d\":\"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z\",\"fill\":\"var(--next-error-title)\"}]}],[\"$\",\"h1\",null,{\"style\":{\"fontSize\":\"24px\",\"fontWeight\":500,\"letterSpacing\":\"-0.02em\",\"lineHeight\":\"32px\",\"margin\":\"0 0 12px 0\",\"color\":\"var(--next-error-title)\"},\"children\":\"This page couldn’t load\"}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":\"14px\",\"fontWeight\":400,\"lineHeight\":\"21px\",\"margin\":\"0 0 20px 0\",\"color\":\"var(--next-error-message)\"},\"children\":\"A server error occurred. Reload to try again.\"}],[\"$\",\"form\",null,{\"style\":{\"margin\":0},\"children\":[\"$\",\"button\",null,{\"type\":\"submit\",\"style\":{\"display\":\"inline-flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\",\"height\":\"32px\",\"padding\":\"0 12px\",\"fontSize\":\"14px\",\"fontWeight\":500,\"lineHeight\":\"20px\",\"borderRadius\":\"6px\",\"cursor\":\"pointer\",\"color\":\"var(--next-error-btn-text)\",\"background\":\"var(--next-error-btn-bg)\",\"border\":\"var(--next-error-btn-border)\"},\"children\":\"Reload\"}]}]]}]}]}]]}],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,null]},null,false,\"$@7\"]},null,false,\"$@7\"],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"cTq1mDm5D_oZLiumFG6di\"}\n"])</script><script>self.__next_f.push([1,"d:[]\n7:\"$Wd\"\n"])</script><script>self.__next_f.push([1,"9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"6:null\nb:[]\n"])</script></body></html>
@@ -1 +1 @@
1
- {"node":{},"edge":{},"encryptionKey":"YfMXtuhq2ge39TO6M365ILM8pQP+pSQ2KNxBXV7Ept8="}
1
+ {"node":{},"edge":{},"encryptionKey":"GoF8EjTjorGC/sXGSrn+iKrX9ktVkb6orRLx0ZvnBm0="}
@@ -0,0 +1 @@
1
+ self.__BUILD_MANIFEST={__rewrites:{afterFiles:[],beforeFiles:[],fallback:[]},__routerFilterStatic:{numItems:124,errorRate:1e-4,numBits:2378,numHashes:14,bitArray:[0,1,0,0,0,1,0,1,0,1,1,1,1,1,1,1,0,1,1,1,1,0,0,0,0,0,1,0,1,0,1,0,0,0,1,1,1,1,1,1,0,1,0,1,1,1,0,1,1,1,1,0,1,0,0,0,0,1,0,0,0,1,0,0,1,0,0,1,1,1,1,1,0,1,1,0,1,1,0,0,1,0,1,0,1,0,1,1,1,1,1,0,0,1,1,0,1,0,0,0,1,0,0,0,1,0,1,0,0,1,0,1,0,0,1,1,0,0,1,1,0,0,0,0,1,1,1,0,0,1,1,0,0,1,1,0,0,0,0,1,0,0,0,0,1,1,1,0,1,1,1,1,0,1,1,1,1,0,1,1,0,1,0,0,1,0,0,0,1,0,0,0,0,1,1,1,0,1,1,0,0,0,0,0,0,0,1,0,0,1,1,1,1,0,0,0,1,0,1,0,0,0,0,0,0,1,1,1,0,0,0,0,0,1,0,0,0,0,0,1,1,0,1,1,1,1,0,0,1,1,1,0,1,1,0,1,1,1,1,0,0,1,0,1,0,1,1,1,1,0,0,1,0,1,0,1,0,0,1,0,1,1,0,1,0,1,1,0,0,0,0,1,0,1,1,0,1,1,0,1,1,0,0,0,1,0,0,1,0,0,1,1,0,1,0,0,0,0,0,0,0,0,1,0,1,1,0,1,0,1,1,1,1,0,0,0,1,1,1,0,0,0,1,0,1,1,1,0,1,1,1,0,1,0,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,1,1,1,0,0,0,1,0,0,1,1,1,0,0,1,0,1,0,0,1,1,0,1,1,0,1,0,0,1,1,1,1,0,0,1,0,0,1,0,0,1,1,0,0,0,0,1,0,1,1,0,0,1,0,0,0,0,1,0,1,0,0,1,1,0,1,1,1,0,0,0,0,1,0,1,0,1,0,1,1,0,0,1,1,1,0,0,0,0,1,1,0,0,0,1,0,1,0,1,0,1,1,0,0,1,1,1,1,1,1,0,1,0,1,1,0,1,0,0,1,0,0,0,0,0,0,0,1,0,0,0,1,0,1,0,0,0,0,1,0,0,1,1,1,1,1,1,1,1,1,1,0,1,0,0,0,1,0,0,0,0,1,1,1,0,1,0,1,1,1,1,0,0,0,0,0,0,1,0,1,1,0,0,0,1,0,0,1,0,1,1,0,1,1,1,1,0,1,1,0,0,0,0,1,0,1,0,0,0,0,0,1,1,1,1,0,1,0,1,0,1,0,1,0,1,1,1,1,1,0,1,1,0,1,1,1,1,0,0,0,1,0,0,0,0,1,0,1,1,1,0,1,1,0,1,1,0,1,1,0,0,0,1,0,1,1,0,1,0,1,0,1,1,1,1,1,1,0,0,1,1,0,1,1,1,0,1,1,0,1,1,1,0,1,1,1,0,0,1,0,0,1,1,0,1,0,0,0,1,0,1,0,0,0,0,1,1,0,1,1,0,0,0,1,0,0,0,1,0,1,1,0,1,0,0,0,1,0,1,0,1,0,1,1,1,1,1,1,0,1,0,1,0,1,0,0,1,0,1,1,1,0,0,0,0,1,0,1,0,1,1,0,1,0,0,1,1,1,1,0,0,0,1,1,1,1,0,1,1,1,1,0,0,1,1,1,0,0,0,0,1,0,0,1,1,0,1,1,1,1,1,1,1,1,1,0,1,1,0,1,0,1,1,0,0,0,0,0,1,1,1,0,0,0,1,0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,0,1,1,0,0,0,1,1,0,1,1,0,1,0,0,0,0,0,1,1,0,0,1,0,0,0,1,1,1,1,1,1,0,1,0,1,0,1,1,1,0,0,1,0,1,0,1,0,1,1,1,1,1,0,0,1,1,1,1,0,1,1,1,1,0,0,0,0,1,0,0,0,1,1,1,1,1,0,1,1,1,1,1,0,0,1,1,0,0,0,0,1,1,1,0,1,0,0,0,0,1,1,0,1,1,0,1,0,1,1,0,0,1,0,0,0,1,0,1,1,1,0,1,0,1,1,1,1,1,1,1,0,1,0,0,1,1,1,0,1,0,1,1,0,0,0,0,0,1,0,0,0,1,1,1,0,0,0,1,0,1,0,1,1,1,1,1,0,1,0,0,0,0,0,0,1,1,0,0,1,1,1,1,0,1,0,1,1,0,0,0,1,1,1,1,0,0,1,0,0,1,1,0,1,1,1,0,1,1,0,1,1,0,1,1,1,1,1,1,0,0,1,0,0,1,1,1,1,1,1,0,1,0,1,1,0,0,0,1,0,1,0,1,0,0,1,0,1,0,1,1,1,0,0,0,1,1,1,1,0,0,1,0,1,1,1,1,1,1,1,0,0,1,1,0,0,0,0,1,0,1,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,1,1,1,1,0,1,0,1,0,0,1,1,1,0,0,0,1,1,1,1,0,0,1,1,1,0,0,1,0,1,1,1,1,1,0,1,1,0,1,0,1,0,0,1,0,0,0,1,0,0,1,0,1,0,0,0,1,0,1,1,0,1,0,0,1,0,0,1,0,1,1,1,1,0,0,1,1,1,1,0,1,0,1,0,0,1,0,1,0,1,1,1,1,0,1,1,1,1,0,1,0,0,1,0,0,1,0,1,1,1,1,0,1,1,0,1,1,0,0,0,0,0,1,0,0,0,0,1,0,1,1,0,1,1,1,1,1,0,1,1,0,1,0,0,1,0,1,0,1,0,0,0,1,1,1,1,0,0,1,1,0,0,0,1,0,1,1,0,1,0,1,0,1,1,1,1,1,0,1,0,0,0,1,0,1,1,0,1,1,0,0,1,0,1,0,0,1,1,0,0,0,0,0,1,1,1,0,1,1,0,0,1,0,1,0,1,1,0,0,1,1,0,1,1,0,0,0,1,1,1,1,0,0,0,1,1,1,1,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,1,0,0,1,0,0,1,1,1,0,0,1,1,1,0,0,0,1,1,0,1,1,0,0,0,0,0,0,1,1,0,1,1,1,0,1,0,1,0,0,0,1,0,1,0,1,1,0,0,1,1,1,1,0,1,1,1,0,0,0,0,1,0,1,0,1,1,1,1,0,0,1,0,0,0,0,1,1,1,0,1,1,0,1,0,0,1,0,1,1,1,1,1,1,0,1,0,0,1,1,1,0,1,1,0,0,1,1,1,0,0,0,0,1,1,0,1,1,1,1,0,1,1,0,0,1,1,1,1,1,0,0,0,1,0,1,1,0,0,1,1,1,1,1,1,1,0,1,1,1,1,0,1,1,1,1,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,1,1,0,1,0,1,1,1,1,1,1,1,1,1,0,0,0,1,0,1,1,1,1,1,0,0,0,1,1,1,0,0,1,1,0,1,0,0,0,0,1,0,0,0,0,1,0,1,0,0,0,1,1,1,0,1,1,1,1,0,0,0,1,1,1,0,1,1,0,0,1,0,1,0,0,0,0,1,1,1,1,1,0,0,1,1,1,1,0,1,0,1,0,1,0,1,1,0,1,1,0,1,0,1,0,0,1,0,0,0,0,1,0,0,0,0,1,1,1,1,0,1,1,1,1,0,1,1,0,1,0,0,0,0,0,1,0,0,0,1,0,1,0,1,0,1,1,0,1,1,0,1,0,1,0,1,0,1,1,1,0,0,1,0,0,1,1,1,1,1,1,0,1,1,1,0,1,1,0,1,0,0,1,0,1,0,0,1,0,0,0,0,0,0,1,0,0,1,1,0,1,0,0,0,1,1,0,1,1,1,0,0,0,1,0,0,0,0,1,1,1,0,1,0,0,0,1,0,1,1,1,1,0,0,0,0,1,1,0,1,0,1,1,0,1,1,1,0,1,0,1,1,0,1,0,0,1,0,1,0,0,0,0,0,0,1,1,1,0,1,1,1,1,0,1,1,1,1,1,0,1,1,1,0,1,1,0,0,1,0,1,1,0,1,0,0,0,0,1,1,1,0,0,0,1,0,1,0,1,1,0,0,1,1,1,0,0,0,0,0,0,0,0,1,0,0,1,0,1,0,0,0,0,0,0,1,1,1,0,1,0,0,0,1,1,0,1,1,0,0,1,0,0,1,0,1,1,1,1,0,1,0,0,0,0,1,0,0,1,1,0,0,1,0,0,0,1,1,0,1,1,0,0,0,1,1,1,1,1,1,0,1,0,1,0,0,1,1,1,0,1,0,1,1,1,1,0,0,0,0,1,1,0,1,1,1,1,0,1,1,0,1,1,1,1,1,0,1,1,1,0,1,1,1,1,0,1,0,1,1,1,1,0,1,0,1,0,0,1,1,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,1,0,0,1,0,1,1,1,0,0,0,0,0,1,1,0,1,0,0,0,0,1,0,0,1,1,0,1,1,1,0,0,1,0,1,1,1,1,1,1,1,1,0,0,0,0,1,1,0,1,0,0,0,1,1,1,1,0,0,0,0,1,0,0,1,0,0,0,1,1,1,0,0,0,0,1,0,0,1,0,1,0,0,0,0,1,0,0,1,0,1,0,1,0,0,0,1,0,1,0,1,0,1,0,1,0,1,0,0,0,0,1,1,1,1,1,0,0,1,1,1,1,1,0,0,0,1,1,0,0,1,0,0,1,1,1,1,1,1,1,0,0,1,1,1,0,1,0,0,0,0,0,1,1,0,1,1,1,1,0,1,0,1,1,0,1,0,0,0,0,1,1,0,0,1,1,0,0,1,0,1,0,1,1,0,0,0,1,1,0,1,0,1,0,0,0,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,0,1,1,0,0,0,1,0,1,0,0,1,1,0,1,1,1,0,1,0,0,1,0,1,0,1,0,0,1,0,1,1,0,1,1,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,1,1,1,1,1,0,1,0,1,0,0,0,0,0,1,1,0,1,0,1,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,1,0,0,1,0,1,0,1,0,0,0,0,0,1,1,0,0,1,1,0,0,0,0,0,0,1,1,0,0,0,1,1,0,0,0,1,0,0,0,1,1,1,1,0,0,1,1,0,1,0,0,1,0,1,1,1,0,0,1,1,0,1,1,1,0,1,1,0,0,1,0,1,1,0]},__routerFilterDynamic:{numItems:5,errorRate:1e-4,numBits:96,numHashes:14,bitArray:[1,1,1,1,0,1,0,1,1,1,1,1,0,1,1,1,1,1,0,0,0,1,1,1,0,1,0,1,1,0,0,0,0,1,0,1,1,1,1,1,1,0,0,1,1,0,1,0,0,0,0,1,0,1,0,1,1,0,1,0,1,1,1,0,1,0,1,0,1,1,0,1,0,0,1,0,0,0,1,0,0,1,0,1,0,0,0,1,1,0,1,1,0,1,1,0]},sortedPages:["/_app"]},self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2032],{19736:(e,t,r)=>{r.d(t,{ReviewCommentsListModal:()=>c});var n=r(95155),o=r(12115),s=r(79114),a=r(64428),l=r(34075),i=r(69809);function d(e,t,r){let n=(e,r)=>t[e]||r,o=[],s=null!=r?`[${r+1}] `:"",a=e.anchor.selectedText.length>200?e.anchor.selectedText.slice(0,197)+"...":e.anchor.selectedText;for(let t of(o.push(`${s}${i.A.t("review.quoteRef",{text:a})}`),o.push(i.A.t("review.commentAuthor",{author:n(e.authorId,e.author),content:e.content})),e.replies))o.push(i.A.t("review.replyAuthor",{author:n(t.authorId,t.author),content:t.content}));return o.join("\n")}function c({isOpen:e,onClose:t,comments:r,reviewTitle:m,userNameMap:x,onCommentClick:h}){let{t:p}=(0,s.Bd)(),[f,g]=(0,o.useState)(null),[v,b]=(0,o.useState)(!1);if(!e)return null;let w=[...r].sort((e,t)=>e.anchor.startOffset-t.anchor.startOffset),j=(e,t)=>x[e]||t,N=async e=>{g(e.id);try{let t=d(e,x);await navigator.clipboard.writeText(t),(0,l.oR)(p("toast.copiedComment"))}catch{(0,l.oR)(p("toast.copyFailed"),"error")}finally{g(null)}},k=async()=>{if(0!==r.length){b(!0);try{let e=function(e,t,r){if(0===e.length)return"";let n=[...e].sort((e,t)=>e.anchor.startOffset-t.anchor.startOffset),o=[i.A.t("review.reviewSummary",{title:t}),""];return n.forEach((e,t)=>{o.push(d(e,r,t)),o.push("")}),o.push(i.A.t("review.totalNComments",{count:e.length})),o.join("\n").trim()}(r,m,x);await navigator.clipboard.writeText(e),(0,l.oR)(p("toast.copiedAllComments"))}catch{(0,l.oR)(p("toast.copyFailed"),"error")}finally{b(!1)}}},C=e=>{h?.(e),t()},y=w.filter(e=>!e.closed),M=w.filter(e=>e.closed),S=(0,n.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/50 p-4",onClick:t,children:(0,n.jsxs)("div",{className:"w-full max-w-2xl max-h-[80vh] bg-card border border-border rounded-lg shadow-xl flex flex-col overflow-hidden",onClick:e=>e.stopPropagation(),children:[(0,n.jsxs)("div",{className:"flex items-center justify-between px-4 py-3 border-b border-border bg-secondary",children:[(0,n.jsxs)("div",{className:"flex items-center gap-2",children:[(0,n.jsx)("h2",{className:"text-sm font-semibold text-foreground",children:p("review.allCommentsTitle")}),(0,n.jsxs)("span",{className:"text-xs text-muted-foreground",children:[p("review.commentsCountBrief",{count:r.length}),M.length>0&&` (${p("review.closedCount",{count:M.length})})`]}),r.length>0&&(0,n.jsx)("button",{onClick:k,disabled:v,className:"p-1 rounded hover:bg-accent text-muted-foreground disabled:opacity-50",title:p("review.copyAllComments"),children:v?(0,n.jsx)("span",{className:"inline-block w-4 h-4 border-2 border-current border-t-transparent rounded-full animate-spin"}):(0,n.jsx)("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"})})})]}),(0,n.jsx)("button",{onClick:t,className:"p-1 rounded hover:bg-accent text-muted-foreground",children:(0,n.jsx)("svg",{className:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})})})]}),(0,n.jsx)("div",{className:"flex-1 overflow-y-auto p-3",children:0===r.length?(0,n.jsxs)("div",{className:"flex flex-col items-center justify-center py-12 text-muted-foreground",children:[(0,n.jsx)("div",{className:"text-2xl mb-2",children:"\uD83D\uDCAC"}),(0,n.jsx)("span",{className:"text-sm",children:p("review.noComments")})]}):(0,n.jsxs)("div",{className:"space-y-2",children:[y.map((e,t)=>(0,n.jsx)(u,{comment:e,index:t,resolveAuthor:j,copyingId:f,onCopy:N,onClick:C},e.id)),M.length>0&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("div",{className:"text-[11px] text-muted-foreground/60 pt-2 pb-1 px-1",children:p("review.closedComments",{count:M.length})}),M.map((e,t)=>(0,n.jsx)(u,{comment:e,index:y.length+t,resolveAuthor:j,copyingId:f,onCopy:N,onClick:C,closed:!0},e.id))]})]})})]})});return(0,n.jsx)(a.ZL,{children:S})}function u({comment:e,index:t,resolveAuthor:r,copyingId:o,onCopy:s,onClick:a,closed:l}){let d=e.anchor.selectedText.length>100?e.anchor.selectedText.slice(0,97)+"...":e.anchor.selectedText;return(0,n.jsxs)("div",{className:`rounded-lg border border-border hover:border-muted-foreground/30 transition-all cursor-pointer group ${l?"opacity-50":""}`,onClick:()=>a(e.id),children:[(0,n.jsx)("div",{className:"px-3 pt-2.5 pb-1",children:(0,n.jsx)("div",{className:"text-xs bg-yellow-500/10 border-l-2 border-yellow-500 px-2 py-1 rounded-r text-muted-foreground truncate",children:d})}),(0,n.jsxs)("div",{className:"px-3 pt-1.5 pb-2 flex items-start gap-2",children:[(0,n.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,n.jsxs)("div",{className:"flex items-center gap-2 mb-0.5",children:[(0,n.jsx)("span",{className:"w-4 h-4 rounded-full bg-brand/20 text-brand flex items-center justify-center text-[9px] font-bold flex-shrink-0",children:r(e.authorId,e.author).charAt(0)}),(0,n.jsx)("span",{className:"text-xs font-medium",children:r(e.authorId,e.author)}),(0,n.jsx)("span",{className:"text-[10px] text-muted-foreground",children:new Date(e.createdAt).toLocaleString("zh-CN",{month:"numeric",day:"numeric",hour:"2-digit",minute:"2-digit"})}),l&&(0,n.jsx)("span",{className:"text-[10px] text-muted-foreground/60",children:i.A.t("review.closedLabel")})]}),(0,n.jsx)("p",{className:"text-sm text-foreground line-clamp-2 pl-6",children:e.content}),e.replies.length>0&&(0,n.jsxs)("div",{className:"pl-6 mt-1 space-y-0.5",children:[e.replies.slice(0,3).map(e=>(0,n.jsxs)("div",{className:"text-xs text-muted-foreground truncate",children:[(0,n.jsx)("span",{className:"font-medium",children:r(e.authorId,e.author)}),": ",e.content]},e.id)),e.replies.length>3&&(0,n.jsx)("div",{className:"text-[10px] text-muted-foreground/60",children:i.A.t("review.moreReplies",{count:e.replies.length-3})})]})]}),(0,n.jsx)("button",{onClick:t=>{t.stopPropagation(),s(e)},disabled:o===e.id,className:"p-1 rounded opacity-0 group-hover:opacity-100 hover:bg-accent text-muted-foreground transition-opacity disabled:opacity-50 flex-shrink-0 mt-0.5",title:i.A.t("review.copyComment"),children:o===e.id?(0,n.jsx)("span",{className:"inline-block w-4 h-4 border-2 border-current border-t-transparent rounded-full animate-spin"}):(0,n.jsx)("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"})})})]})]})}},82032:(e,t,r)=>{r.d(t,{ReviewDropdown:()=>h});var n=r(95155),o=r(12115),s=r(79114),a=r(2111),l=r(19736),i=r(49433),d=r(86957),c=r(90420);let u="review-last-viewed";function m(){try{return JSON.parse(localStorage.getItem(u)||"{}")}catch{return{}}}function x(e,t){if(!e.lastCommentAt)return!1;let r=t[e.id];return!r||e.lastCommentAt>r}function h({cwd:e}){let{t}=(0,s.Bd)(),[r,p]=(0,o.useState)(!1),[f,g]=(0,o.useState)([]),[v,b]=(0,o.useState)(!1),[w,j]=(0,o.useState)(null),[N,k]=(0,o.useState)({}),[C,y]=(0,o.useState)({open:!1,comments:[],title:"",userNameMap:{}}),M=(0,o.useRef)(null),S=(0,o.useRef)(null),[L,A]=(0,o.useState)(null);(0,o.useEffect)(()=>{queueMicrotask(()=>k(m()))},[]),(0,o.useEffect)(()=>{if(!r)return;let e=e=>{M.current&&!M.current.contains(e.target)&&p(!1)};return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[r]);let E=(0,o.useCallback)(async()=>{b(!0);let e=await d.t4.runPromiseExit((0,c.Y_)());"Success"===e._tag&&g(e.value.reviews??[]),b(!1)},[]);(0,o.useEffect)(()=>{r&&queueMicrotask(()=>E())},[r,E]);let T=(0,o.useCallback)(e=>{let{data:t}=e;t?.some(e=>"review"===e.type)&&E()},[E]);(0,a.h)({url:`/ws/watch?cwd=${encodeURIComponent(e||"/")}`,onMessage:T,enabled:!!e}),(0,o.useEffect)(()=>{queueMicrotask(()=>E())},[E]);let $=(0,o.useMemo)(()=>f.filter(e=>e.active),[f]),R=(0,o.useMemo)(()=>$.some(e=>x(e,N)),[$,N]),I=(0,o.useCallback)(e=>{let t;(t=m())[e]=Date.now(),localStorage.setItem(u,JSON.stringify(t)),k(m()),window.open(`${window.location.origin}/review/${e}`,"_blank")},[]),B=(0,o.useCallback)(async(e,t)=>{e.stopPropagation();let[r,n]=await Promise.all([d.t4.runPromiseExit((0,c.JK)(t)),d.t4.runPromiseExit((0,c.BL)())]);if("Success"!==r._tag)return;let o=r.value.review,s={};if("Success"===n._tag)for(let[e,t]of Object.entries(n.value.users))s[e]=t.name;y({open:!0,comments:o.comments||[],title:o.title??"",userNameMap:s})},[]),D=(0,o.useCallback)((e,t)=>{S.current=t,e.dataTransfer.effectAllowed="move";let r=e.currentTarget;requestAnimationFrame(()=>r.classList.add("opacity-30"))},[]),O=(0,o.useCallback)(e=>{S.current=null,A(null),e.currentTarget instanceof HTMLElement&&e.currentTarget.classList.remove("opacity-30")},[]),_=(0,o.useCallback)((e,t)=>{e.preventDefault(),e.dataTransfer.dropEffect="move",S.current&&S.current!==t&&A(t)},[]),z=(0,o.useCallback)((e,t)=>{e.preventDefault(),A(null);let r=S.current;S.current=null,r&&r!==t&&g(e=>{let n=[...e],o=n.findIndex(e=>e.id===r),s=n.findIndex(e=>e.id===t);if(-1===o||-1===s)return e;let[a]=n.splice(o,1);n.splice(s,0,a);let l=n.map(e=>e.id);return d.t4.runFork((0,c.z1)(l).pipe(i.orElse(()=>i.void))),n})},[]);return(0,n.jsxs)("div",{ref:M,className:"relative",children:[(0,n.jsxs)("button",{onClick:()=>p(e=>!e),className:`relative p-2 rounded-lg transition-colors ${r?"text-foreground bg-accent":"text-muted-foreground hover:text-foreground hover:bg-accent"}`,title:t("review.reviewManagement"),children:[(0,n.jsx)("svg",{className:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"})}),R&&(0,n.jsx)("span",{className:"absolute top-1 right-1 w-2 h-2 bg-red-500 rounded-full"})]}),r&&(0,n.jsxs)("div",{className:"absolute right-0 top-full mt-1 w-64 bg-popover border border-border rounded-lg shadow-xl z-50 overflow-hidden",children:[(0,n.jsxs)("div",{className:"px-3 py-2 border-b border-border flex items-center justify-between",children:[(0,n.jsxs)("div",{children:[(0,n.jsx)("span",{className:"text-xs font-medium text-muted-foreground",children:t("review.allReviews")}),(0,n.jsx)("span",{className:"text-xs text-muted-foreground/60 ml-1.5",children:$.length})]}),(0,n.jsx)("button",{onClick:E,className:"p-0.5 text-muted-foreground hover:text-foreground rounded transition-colors",title:t("common.refresh"),children:(0,n.jsx)("svg",{className:"w-3.5 h-3.5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"})})})]}),(0,n.jsx)("div",{className:"max-h-80 overflow-y-auto",children:v&&0===f.length?(0,n.jsx)("div",{className:"px-3 py-4 text-xs text-muted-foreground/50 text-center",children:t("common.loading")}):0===$.length?(0,n.jsx)("div",{className:"px-3 py-4 text-xs text-muted-foreground/50 text-center",children:t("review.noOpenReviews")}):$.map(e=>{let r,o,s,a,l,i=x(e,N);return(0,n.jsxs)("div",{draggable:!0,onDragStart:t=>D(t,e.id),onDragEnd:O,onDragOver:t=>_(t,e.id),onDrop:t=>z(t,e.id),onMouseEnter:t=>{let r=t.currentTarget.getBoundingClientRect();j({id:e.id,text:e.title,top:r.top+r.height/2,left:r.left})},onMouseLeave:()=>j(t=>t?.id===e.id?null:t),onClick:()=>I(e.id),className:`group px-3 py-2 cursor-pointer border-b transition-colors ${L===e.id?"border-b-brand border-t border-t-transparent":"border-b-border/50"} hover:bg-accent/30`,children:[(0,n.jsxs)("div",{className:"flex items-center gap-1.5 min-w-0",children:[(0,n.jsx)("span",{className:`w-1.5 h-1.5 rounded-full flex-shrink-0 ${i?"bg-red-500":"bg-green-500"}`}),(0,n.jsx)("span",{className:`text-xs truncate flex-1 ${i?"font-medium text-foreground":""}`,children:e.title}),e.commentCount>0&&(0,n.jsx)("button",{onClick:t=>B(t,e.id),className:"flex-shrink-0 p-0.5 rounded text-muted-foreground/0 group-hover:text-muted-foreground/60 hover:!text-brand hover:!bg-brand/10 transition-colors",title:t("review.viewComments"),children:(0,n.jsx)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:(0,n.jsx)("path",{d:"M7 8h10M7 12h4m1 8l-4-4H5a2 2 0 01-2-2V6a2 2 0 012-2h14a2 2 0 012 2v8a2 2 0 01-2 2h-3l-4 4z"})})})]}),(0,n.jsxs)("div",{className:"flex items-center gap-2 text-[10px] text-muted-foreground/50 mt-0.5 pl-3",children:[(0,n.jsx)("span",{children:(o=String((r=new Date(e.updatedAt||e.createdAt)).getMonth()+1).padStart(2,"0"),s=String(r.getDate()).padStart(2,"0"),a=String(r.getHours()).padStart(2,"0"),l=String(r.getMinutes()).padStart(2,"0"),`${o}-${s} ${a}:${l}`)}),e.commentCount>0&&(0,n.jsx)("span",{children:t("review.nComments",{count:e.commentCount})})]})]},e.id)})})]}),w&&r&&(0,n.jsx)("div",{className:"fixed z-[60] px-2 py-1 text-xs bg-popover text-popover-foreground border border-border rounded shadow-md whitespace-nowrap pointer-events-none",style:{top:w.top,left:w.left-8,transform:"translate(-100%, -50%)"},children:w.text}),(0,n.jsx)(l.ReviewCommentsListModal,{isOpen:C.open,onClose:()=>y(e=>({...e,open:!1})),comments:C.comments,reviewTitle:C.title,userNameMap:C.userNameMap})]})}}}]);