@rexvane/piweb 0.3.21 → 0.3.23

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 (343) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +9 -6
  3. package/.next/build-manifest.json +5 -5
  4. package/.next/next-minimal-server.js.nft.json +1 -1
  5. package/.next/next-server.js.nft.json +1 -1
  6. package/.next/prerender-manifest.json +7 -7
  7. package/.next/react-loadable-manifest.json +18 -11
  8. package/.next/required-server-files.js +16 -1
  9. package/.next/required-server-files.json +16 -1
  10. package/.next/routes-manifest.json +20 -0
  11. package/.next/server/app/_global-error/page.js +2 -2
  12. package/.next/server/app/_global-error/page.js.nft.json +1 -1
  13. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  14. package/.next/server/app/_global-error.html +1 -1
  15. package/.next/server/app/_global-error.meta +8 -0
  16. package/.next/server/app/_global-error.rsc +15 -11
  17. package/.next/server/app/_global-error.segments/_full.segment.rsc +15 -11
  18. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +20 -16
  19. package/.next/server/app/_global-error.segments/_tree.segment.rsc +3 -1
  20. package/.next/server/app/_not-found/page.js +1 -1
  21. package/.next/server/app/_not-found/page.js.nft.json +1 -1
  22. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  23. package/.next/server/app/_not-found.html +1 -1
  24. package/.next/server/app/_not-found.meta +8 -0
  25. package/.next/server/app/_not-found.rsc +17 -13
  26. package/.next/server/app/_not-found.segments/_full.segment.rsc +17 -13
  27. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +24 -20
  28. package/.next/server/app/_not-found.segments/_tree.segment.rsc +4 -2
  29. package/.next/server/app/api/agent/[id]/events/route.js +2 -2
  30. package/.next/server/app/api/agent/[id]/events/route.js.nft.json +1 -1
  31. package/.next/server/app/api/agent/[id]/route.js +1 -1
  32. package/.next/server/app/api/agent/[id]/route.js.nft.json +1 -1
  33. package/.next/server/app/api/agent/[id]/side-chat/route.js +5 -0
  34. package/.next/server/app/api/agent/[id]/side-chat/route.js.nft.json +1 -0
  35. package/.next/server/app/api/agent/[id]/side-chat/route_client-reference-manifest.js +1 -0
  36. package/.next/server/app/api/agent/[id]/tree/route.js +1 -1
  37. package/.next/server/app/api/agent/[id]/tree/route.js.nft.json +1 -1
  38. package/.next/server/app/api/agent/new/route.js +1 -1
  39. package/.next/server/app/api/agent/new/route.js.nft.json +1 -1
  40. package/.next/server/app/api/config/route.js +1 -1
  41. package/.next/server/app/api/config/route.js.nft.json +1 -1
  42. package/.next/server/app/api/files/route.js +1 -1
  43. package/.next/server/app/api/files/route.js.nft.json +1 -1
  44. package/.next/server/app/api/fs/route.js +1 -1
  45. package/.next/server/app/api/fs/route.js.nft.json +1 -1
  46. package/.next/server/app/api/git/route.js +4 -4
  47. package/.next/server/app/api/git/route.js.nft.json +1 -1
  48. package/.next/server/app/api/github/route.js +5 -0
  49. package/.next/server/app/api/github/route.js.nft.json +1 -0
  50. package/.next/server/app/api/github/route_client-reference-manifest.js +1 -0
  51. package/.next/server/app/api/growth/route.js +1 -1
  52. package/.next/server/app/api/growth/route.js.nft.json +1 -1
  53. package/.next/server/app/api/health/route.js +1 -1
  54. package/.next/server/app/api/health/route.js.nft.json +1 -1
  55. package/.next/server/app/api/models/defaults/route.js +1 -0
  56. package/.next/server/app/api/models/defaults/route.js.nft.json +1 -0
  57. package/.next/server/app/api/models/defaults/route_client-reference-manifest.js +1 -0
  58. package/.next/server/app/api/models/route.js +1 -1
  59. package/.next/server/app/api/models/route.js.nft.json +1 -1
  60. package/.next/server/app/api/pi-settings/route.js +1 -1
  61. package/.next/server/app/api/pi-settings/route.js.nft.json +1 -1
  62. package/.next/server/app/api/plugins/route.js +1 -1
  63. package/.next/server/app/api/plugins/route.js.nft.json +1 -1
  64. package/.next/server/app/api/prompts/route.js +1 -1
  65. package/.next/server/app/api/prompts/route.js.nft.json +1 -1
  66. package/.next/server/app/api/remote/route.js +4 -4
  67. package/.next/server/app/api/remote/route.js.nft.json +1 -1
  68. package/.next/server/app/api/security/route.js +1 -1
  69. package/.next/server/app/api/security/route.js.nft.json +1 -1
  70. package/.next/server/app/api/sessions/[id]/export/route.js +1 -1
  71. package/.next/server/app/api/sessions/[id]/export/route.js.nft.json +1 -1
  72. package/.next/server/app/api/sessions/[id]/route.js +1 -1
  73. package/.next/server/app/api/sessions/[id]/route.js.nft.json +1 -1
  74. package/.next/server/app/api/sessions/import/route.js +2 -2
  75. package/.next/server/app/api/sessions/import/route.js.nft.json +1 -1
  76. package/.next/server/app/api/sessions/route.js +1 -1
  77. package/.next/server/app/api/sessions/route.js.nft.json +1 -1
  78. package/.next/server/app/api/skills/route.js +2 -2
  79. package/.next/server/app/api/skills/route.js.nft.json +1 -1
  80. package/.next/server/app/api/update/route.js +2 -2
  81. package/.next/server/app/api/update/route.js.nft.json +1 -1
  82. package/.next/server/app/api/version/route.js +1 -1
  83. package/.next/server/app/api/version/route.js.nft.json +1 -1
  84. package/.next/server/app/api/web-auth/route.js +2 -2
  85. package/.next/server/app/api/web-auth/route.js.nft.json +1 -1
  86. package/.next/server/app/api/workspaces/route.js +1 -1
  87. package/.next/server/app/api/workspaces/route.js.nft.json +1 -1
  88. package/.next/server/app/icon.svg/route.js +1 -1
  89. package/.next/server/app/icon.svg/route.js.nft.json +1 -1
  90. package/.next/server/app/icon.svg.meta +1 -1
  91. package/.next/server/app/index.html +1 -1
  92. package/.next/server/app/index.meta +8 -0
  93. package/.next/server/app/index.rsc +20 -13
  94. package/.next/server/app/index.segments/__PAGE__.segment.rsc +26 -19
  95. package/.next/server/app/index.segments/_full.segment.rsc +20 -13
  96. package/.next/server/app/index.segments/_tree.segment.rsc +4 -2
  97. package/.next/server/app/login/page.js +1 -1
  98. package/.next/server/app/login/page.js.nft.json +1 -1
  99. package/.next/server/app/login/page_client-reference-manifest.js +1 -1
  100. package/.next/server/app/login.html +1 -1
  101. package/.next/server/app/login.meta +8 -0
  102. package/.next/server/app/login.rsc +23 -17
  103. package/.next/server/app/login.segments/_full.segment.rsc +23 -17
  104. package/.next/server/app/login.segments/_tree.segment.rsc +4 -2
  105. package/.next/server/app/login.segments/login/__PAGE__.segment.rsc +30 -24
  106. package/.next/server/app/page.js +1 -1
  107. package/.next/server/app/page.js.nft.json +1 -1
  108. package/.next/server/app/page_client-reference-manifest.js +1 -1
  109. package/.next/server/app-paths-manifest.json +9 -6
  110. package/.next/server/chunks/1813.js +23 -0
  111. package/.next/server/chunks/2430.js +377 -0
  112. package/.next/server/chunks/2970.js +305 -0
  113. package/.next/server/chunks/3421.js +1 -0
  114. package/.next/server/chunks/3924.js +6 -0
  115. package/.next/server/chunks/4807.js +1 -0
  116. package/.next/server/chunks/538.js +1 -1
  117. package/.next/server/chunks/5393.js +1 -0
  118. package/.next/server/chunks/5802.js +2 -0
  119. package/.next/server/chunks/6229.js +1 -0
  120. package/.next/server/chunks/7496.js +1 -0
  121. package/.next/server/chunks/7662.js +2 -0
  122. package/.next/server/chunks/8686.js +1 -0
  123. package/.next/server/chunks/{593.js → 974.js} +1 -1
  124. package/.next/server/chunks/{920.js → 9920.js} +2 -2
  125. package/.next/server/functions-config-manifest.json +2 -1
  126. package/.next/server/instrumentation.js +1 -1
  127. package/.next/server/instrumentation.js.nft.json +1 -1
  128. package/.next/server/middleware-build-manifest.js +1 -1
  129. package/.next/server/middleware-react-loadable-manifest.js +1 -1
  130. package/.next/server/middleware.js +185 -23
  131. package/.next/server/middleware.js.nft.json +1 -1
  132. package/.next/server/pages/404.html +1 -1
  133. package/.next/server/pages/500.html +1 -1
  134. package/.next/server/preview-props.json +5 -0
  135. package/.next/server/server-reference-manifest.json +1 -1
  136. package/.next/server/webpack-runtime.js +1 -1
  137. package/.next/static/chunks/2716.44fdf1b21454b961.js +1 -0
  138. package/.next/static/chunks/316-698d10eb465bd8ef.js +1 -0
  139. package/.next/static/chunks/3794-0978865cda773008.js +52 -0
  140. package/.next/static/chunks/4673.e261707dce391be7.js +1 -0
  141. package/.next/static/chunks/4686-0cd87513f9ea3538.js +1 -0
  142. package/.next/static/chunks/4778.eddd3a5813f85824.js +1 -0
  143. package/.next/static/chunks/4bd1b696-e199e788e58acf79.js +1 -0
  144. package/.next/static/chunks/{5173.91ddb803785009f8.js → 5173.dfd1cbb795b9a21c.js} +1 -1
  145. package/.next/static/chunks/618.949981da99be7182.js +4 -0
  146. package/.next/static/chunks/7411.5f79671208209b13.js +1 -0
  147. package/.next/static/chunks/app/_global-error/page-cbaaee0d7aacb85a.js +1 -0
  148. package/.next/static/chunks/app/api/agent/[id]/events/route-cbaaee0d7aacb85a.js +1 -0
  149. package/.next/static/chunks/app/api/agent/[id]/route-cbaaee0d7aacb85a.js +1 -0
  150. package/.next/static/chunks/app/api/agent/[id]/side-chat/route-cbaaee0d7aacb85a.js +1 -0
  151. package/.next/static/chunks/app/api/agent/[id]/tree/route-cbaaee0d7aacb85a.js +1 -0
  152. package/.next/static/chunks/app/api/agent/new/route-cbaaee0d7aacb85a.js +1 -0
  153. package/.next/static/chunks/app/api/config/route-cbaaee0d7aacb85a.js +1 -0
  154. package/.next/static/chunks/app/api/files/route-cbaaee0d7aacb85a.js +1 -0
  155. package/.next/static/chunks/app/api/fs/route-cbaaee0d7aacb85a.js +1 -0
  156. package/.next/static/chunks/app/api/git/route-cbaaee0d7aacb85a.js +1 -0
  157. package/.next/static/chunks/app/api/github/route-cbaaee0d7aacb85a.js +1 -0
  158. package/.next/static/chunks/app/api/growth/route-cbaaee0d7aacb85a.js +1 -0
  159. package/.next/static/chunks/app/api/health/route-cbaaee0d7aacb85a.js +1 -0
  160. package/.next/static/chunks/app/api/models/defaults/route-cbaaee0d7aacb85a.js +1 -0
  161. package/.next/static/chunks/app/api/models/route-cbaaee0d7aacb85a.js +1 -0
  162. package/.next/static/chunks/app/api/pi-settings/route-cbaaee0d7aacb85a.js +1 -0
  163. package/.next/static/chunks/app/api/plugins/route-cbaaee0d7aacb85a.js +1 -0
  164. package/.next/static/chunks/app/api/prompts/route-cbaaee0d7aacb85a.js +1 -0
  165. package/.next/static/chunks/app/api/remote/route-cbaaee0d7aacb85a.js +1 -0
  166. package/.next/static/chunks/app/api/security/route-cbaaee0d7aacb85a.js +1 -0
  167. package/.next/static/chunks/app/api/sessions/[id]/export/route-cbaaee0d7aacb85a.js +1 -0
  168. package/.next/static/chunks/app/api/sessions/[id]/route-cbaaee0d7aacb85a.js +1 -0
  169. package/.next/static/chunks/app/api/sessions/import/route-cbaaee0d7aacb85a.js +1 -0
  170. package/.next/static/chunks/app/api/sessions/route-cbaaee0d7aacb85a.js +1 -0
  171. package/.next/static/chunks/app/api/skills/route-cbaaee0d7aacb85a.js +1 -0
  172. package/.next/static/chunks/app/api/update/route-cbaaee0d7aacb85a.js +1 -0
  173. package/.next/static/chunks/app/api/version/route-cbaaee0d7aacb85a.js +1 -0
  174. package/.next/static/chunks/app/api/web-auth/route-cbaaee0d7aacb85a.js +1 -0
  175. package/.next/static/chunks/app/api/workspaces/route-cbaaee0d7aacb85a.js +1 -0
  176. package/.next/static/chunks/app/page-dc3cb41d91c7432e.js +1 -0
  177. package/.next/static/chunks/framework-47b723d27f4a4963.js +1 -0
  178. package/.next/static/chunks/main-5403f0764579e5fe.js +5 -0
  179. package/.next/static/chunks/next/dist/client/components/builtin/app-error-cbaaee0d7aacb85a.js +1 -0
  180. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-cbaaee0d7aacb85a.js +1 -0
  181. package/.next/static/chunks/next/dist/client/components/builtin/not-found-cbaaee0d7aacb85a.js +1 -0
  182. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-cbaaee0d7aacb85a.js +1 -0
  183. package/.next/static/chunks/webpack-2ac3d76b81895f5b.js +1 -0
  184. package/.next/static/css/9fc559c2c4ad1d0f.css +1 -0
  185. package/.next/static/css/c6e2227c36ec2fd6.css +1 -0
  186. package/.next/static/css/{2959bd6b626b7ffe.css → f15a853af8b5127f.css} +1 -1
  187. package/.next/static/hYPL1-dmhKFjLS3f5yoqN/_buildManifest.js +1 -0
  188. package/.next/types/app/api/agent/[id]/events/route.ts +3 -1
  189. package/.next/types/app/api/agent/[id]/route.ts +3 -1
  190. package/.next/types/app/api/agent/[id]/side-chat/route.ts +355 -0
  191. package/.next/types/app/api/agent/[id]/tree/route.ts +3 -1
  192. package/.next/types/app/api/agent/new/route.ts +3 -1
  193. package/.next/types/app/api/config/route.ts +3 -1
  194. package/.next/types/app/api/files/route.ts +3 -1
  195. package/.next/types/app/api/fs/route.ts +3 -1
  196. package/.next/types/app/api/git/route.ts +3 -1
  197. package/.next/types/app/api/github/route.ts +355 -0
  198. package/.next/types/app/api/growth/route.ts +3 -1
  199. package/.next/types/app/api/health/route.ts +3 -1
  200. package/.next/types/app/api/models/defaults/route.ts +355 -0
  201. package/.next/types/app/api/models/route.ts +3 -1
  202. package/.next/types/app/api/pi-settings/route.ts +3 -1
  203. package/.next/types/app/api/plugins/route.ts +3 -1
  204. package/.next/types/app/api/prompts/route.ts +3 -1
  205. package/.next/types/app/api/remote/route.ts +3 -1
  206. package/.next/types/app/api/security/route.ts +3 -1
  207. package/.next/types/app/api/sessions/[id]/export/route.ts +3 -1
  208. package/.next/types/app/api/sessions/[id]/route.ts +3 -1
  209. package/.next/types/app/api/sessions/import/route.ts +3 -1
  210. package/.next/types/app/api/sessions/route.ts +3 -1
  211. package/.next/types/app/api/skills/route.ts +3 -1
  212. package/.next/types/app/api/update/route.ts +3 -1
  213. package/.next/types/app/api/version/route.ts +3 -1
  214. package/.next/types/app/api/web-auth/route.ts +3 -1
  215. package/.next/types/app/api/workspaces/route.ts +3 -1
  216. package/.next/types/app/layout.ts +4 -1
  217. package/.next/types/app/login/page.ts +4 -1
  218. package/.next/types/app/page.ts +4 -1
  219. package/.next/types/cache-life.d.ts +11 -43
  220. package/.next/types/routes.d.ts +4 -1
  221. package/.next/types/validator.ts +86 -2
  222. package/next.config.ts +2 -0
  223. package/package.json +8 -2
  224. package/scripts/release.mjs +3 -7
  225. package/scripts/runtime/check-installed.mjs +66 -0
  226. package/scripts/runtime/pi-packages.mjs +51 -0
  227. package/scripts/verify-package.mjs +29 -7
  228. package/src/app/api/agent/[id]/side-chat/route.ts +77 -0
  229. package/src/app/api/files/route.ts +5 -2
  230. package/src/app/api/github/route.ts +26 -0
  231. package/src/app/api/models/defaults/route.ts +18 -0
  232. package/src/app/api/models/route.ts +24 -1
  233. package/src/app/globals.css +1748 -0
  234. package/src/components/AppShell.tsx +145 -43
  235. package/src/components/ChatInput.tsx +264 -79
  236. package/src/components/ChatWindow.tsx +13 -23
  237. package/src/components/ContextMeter.tsx +213 -144
  238. package/src/components/DrawerPanel.tsx +1 -1
  239. package/src/components/FileViewer.tsx +89 -8
  240. package/src/components/GitPanel.tsx +110 -40
  241. package/src/components/GrowthTree.tsx +30 -5
  242. package/src/components/ModelSelector.tsx +21 -5
  243. package/src/components/ProjectPanel.tsx +55 -30
  244. package/src/components/PromptPanel.tsx +2 -4
  245. package/src/components/ProviderSetupModal.module.css +20 -0
  246. package/src/components/ProviderSetupModal.tsx +134 -29
  247. package/src/components/SettingsPanel.tsx +252 -27
  248. package/src/components/TrajectoryView.tsx +4 -6
  249. package/src/components/chat/reading-anchor.ts +81 -0
  250. package/src/components/composer/ComposerImages.tsx +326 -0
  251. package/src/components/side-chat/SideChatPanel.module.css +131 -0
  252. package/src/components/side-chat/SideChatPanel.tsx +189 -0
  253. package/src/components/side-chat/icons.tsx +8 -0
  254. package/src/components/side-chat/request-history.ts +29 -0
  255. package/src/components/side-chat/store.ts +248 -0
  256. package/src/hooks/useFileViewer.ts +6 -4
  257. package/src/hooks/useGrowth.ts +3 -0
  258. package/src/hooks/usePiWeb.ts +12 -2
  259. package/src/hooks/useWorkspaceFiles.ts +93 -0
  260. package/src/i18n.tsx +150 -2
  261. package/src/lib/agent-manager.ts +135 -104
  262. package/src/lib/files-service.ts +166 -3
  263. package/src/lib/format.ts +56 -0
  264. package/src/lib/git-service.ts +45 -13
  265. package/src/lib/github-identity.ts +245 -0
  266. package/src/lib/growth-service.ts +6 -2
  267. package/src/lib/hero-model-memory.ts +28 -0
  268. package/src/lib/model-defaults.ts +105 -0
  269. package/src/lib/model-draft.ts +257 -9
  270. package/src/lib/model-endpoint.ts +23 -0
  271. package/src/lib/model-files.ts +33 -0
  272. package/src/lib/models-service.ts +240 -78
  273. package/src/lib/path-security.ts +24 -32
  274. package/src/lib/pi.ts +27 -2
  275. package/src/lib/process-format.ts +3 -2
  276. package/src/lib/session/metrics.ts +31 -0
  277. package/src/lib/session-reader.ts +1 -1
  278. package/src/lib/side-chat/context.ts +123 -0
  279. package/src/lib/side-chat/service.ts +191 -0
  280. package/src/lib/side-chat/types.ts +61 -0
  281. package/src/lib/thinking-level.ts +39 -0
  282. package/src/lib/trajectory.ts +17 -3
  283. package/src/lib/types.ts +12 -1
  284. package/src/lib/update-service.ts +4 -6
  285. package/src/lib/workspace-index.ts +270 -0
  286. package/.next/server/chunks/229.js +0 -1
  287. package/.next/server/chunks/393.js +0 -1
  288. package/.next/server/chunks/421.js +0 -1
  289. package/.next/server/chunks/430.js +0 -193
  290. package/.next/server/chunks/496.js +0 -1
  291. package/.next/server/chunks/662.js +0 -2
  292. package/.next/server/chunks/686.js +0 -1
  293. package/.next/server/chunks/741.js +0 -165
  294. package/.next/server/chunks/802.js +0 -2
  295. package/.next/server/chunks/807.js +0 -1
  296. package/.next/server/chunks/813.js +0 -1
  297. package/.next/server/chunks/924.js +0 -6
  298. package/.next/static/chunks/2716.7ad073038e94a802.js +0 -1
  299. package/.next/static/chunks/316-5ea443ee6b512aa9.js +0 -1
  300. package/.next/static/chunks/3794-3679f1c05160977c.js +0 -52
  301. package/.next/static/chunks/4673.8a5a9e6855350e34.js +0 -1
  302. package/.next/static/chunks/4686-882531aef1d2e250.js +0 -1
  303. package/.next/static/chunks/4778.305dc6abb9889627.js +0 -1
  304. package/.next/static/chunks/4bd1b696-93bf506b236d6248.js +0 -1
  305. package/.next/static/chunks/618.ee5d5bf1c647e483.js +0 -4
  306. package/.next/static/chunks/839.bfd2db36483faa3e.js +0 -1
  307. package/.next/static/chunks/app/_global-error/page-b179d9f7f6f2daf9.js +0 -1
  308. package/.next/static/chunks/app/api/agent/[id]/events/route-b179d9f7f6f2daf9.js +0 -1
  309. package/.next/static/chunks/app/api/agent/[id]/route-b179d9f7f6f2daf9.js +0 -1
  310. package/.next/static/chunks/app/api/agent/[id]/tree/route-b179d9f7f6f2daf9.js +0 -1
  311. package/.next/static/chunks/app/api/agent/new/route-b179d9f7f6f2daf9.js +0 -1
  312. package/.next/static/chunks/app/api/config/route-b179d9f7f6f2daf9.js +0 -1
  313. package/.next/static/chunks/app/api/files/route-b179d9f7f6f2daf9.js +0 -1
  314. package/.next/static/chunks/app/api/fs/route-b179d9f7f6f2daf9.js +0 -1
  315. package/.next/static/chunks/app/api/git/route-b179d9f7f6f2daf9.js +0 -1
  316. package/.next/static/chunks/app/api/growth/route-b179d9f7f6f2daf9.js +0 -1
  317. package/.next/static/chunks/app/api/health/route-b179d9f7f6f2daf9.js +0 -1
  318. package/.next/static/chunks/app/api/models/route-b179d9f7f6f2daf9.js +0 -1
  319. package/.next/static/chunks/app/api/pi-settings/route-b179d9f7f6f2daf9.js +0 -1
  320. package/.next/static/chunks/app/api/plugins/route-b179d9f7f6f2daf9.js +0 -1
  321. package/.next/static/chunks/app/api/prompts/route-b179d9f7f6f2daf9.js +0 -1
  322. package/.next/static/chunks/app/api/remote/route-b179d9f7f6f2daf9.js +0 -1
  323. package/.next/static/chunks/app/api/security/route-b179d9f7f6f2daf9.js +0 -1
  324. package/.next/static/chunks/app/api/sessions/[id]/export/route-b179d9f7f6f2daf9.js +0 -1
  325. package/.next/static/chunks/app/api/sessions/[id]/route-b179d9f7f6f2daf9.js +0 -1
  326. package/.next/static/chunks/app/api/sessions/import/route-b179d9f7f6f2daf9.js +0 -1
  327. package/.next/static/chunks/app/api/sessions/route-b179d9f7f6f2daf9.js +0 -1
  328. package/.next/static/chunks/app/api/skills/route-b179d9f7f6f2daf9.js +0 -1
  329. package/.next/static/chunks/app/api/update/route-b179d9f7f6f2daf9.js +0 -1
  330. package/.next/static/chunks/app/api/version/route-b179d9f7f6f2daf9.js +0 -1
  331. package/.next/static/chunks/app/api/web-auth/route-b179d9f7f6f2daf9.js +0 -1
  332. package/.next/static/chunks/app/api/workspaces/route-b179d9f7f6f2daf9.js +0 -1
  333. package/.next/static/chunks/app/page-c04af72e549695bd.js +0 -1
  334. package/.next/static/chunks/framework-c4e651fe89edfa91.js +0 -1
  335. package/.next/static/chunks/main-6159b22a8cb0b7c5.js +0 -5
  336. package/.next/static/chunks/next/dist/client/components/builtin/app-error-b179d9f7f6f2daf9.js +0 -1
  337. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-b179d9f7f6f2daf9.js +0 -1
  338. package/.next/static/chunks/next/dist/client/components/builtin/not-found-b179d9f7f6f2daf9.js +0 -1
  339. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-b179d9f7f6f2daf9.js +0 -1
  340. package/.next/static/chunks/webpack-9b4bb574e5817654.js +0 -1
  341. package/.next/static/css/ea27b9e30f76303f.css +0 -1
  342. package/.next/static/sNX5GQkOWuK5YEID1hT-C/_buildManifest.js +0 -1
  343. /package/.next/static/{sNX5GQkOWuK5YEID1hT-C → hYPL1-dmhKFjLS3f5yoqN}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- {"version":1,"files":["../../node_modules/@swc/helpers/_/_interop_require_default/package.json","../../node_modules/@swc/helpers/cjs/_interop_require_default.cjs","../../node_modules/@swc/helpers/esm/_interop_require_default.js","../../node_modules/@swc/helpers/package.json","../../node_modules/next/dist/build/adapter/setup-node-env.external.js","../../node_modules/next/dist/client/components/hooks-server-context.js","../../node_modules/next/dist/client/components/static-generation-bailout.js","../../node_modules/next/dist/client/lib/console.js","../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../node_modules/next/dist/compiled/source-map/package.json","../../node_modules/next/dist/compiled/source-map/source-map.js","../../node_modules/next/dist/compiled/stacktrace-parser/package.json","../../node_modules/next/dist/compiled/stacktrace-parser/stack-trace-parser.cjs.js","../../node_modules/next/dist/compiled/ws/index.js","../../node_modules/next/dist/compiled/ws/package.json","../../node_modules/next/dist/lib/client-and-server-references.js","../../node_modules/next/dist/lib/constants.js","../../node_modules/next/dist/lib/framework/boundary-constants.js","../../node_modules/next/dist/lib/interop-default.js","../../node_modules/next/dist/lib/is-error.js","../../node_modules/next/dist/lib/picocolors.js","../../node_modules/next/dist/lib/scheduler.js","../../node_modules/next/dist/lib/semver-noop.js","../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../node_modules/next/dist/server/app-render/async-local-storage.js","../../node_modules/next/dist/server/app-render/blocking-route-messages.js","../../node_modules/next/dist/server/app-render/cache-signal.js","../../node_modules/next/dist/server/app-render/console-async-storage-instance.js","../../node_modules/next/dist/server/app-render/console-async-storage.external.js","../../node_modules/next/dist/server/app-render/dynamic-rendering.js","../../node_modules/next/dist/server/app-render/instant-validation/boundary-constants.js","../../node_modules/next/dist/server/app-render/instant-validation/boundary-tracking.js","../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../node_modules/next/dist/server/app-render/staged-rendering.js","../../node_modules/next/dist/server/app-render/sync-io-messages.js","../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../node_modules/next/dist/server/dev/browser-logs/file-logger.js","../../node_modules/next/dist/server/dynamic-rendering-utils.js","../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../node_modules/next/dist/server/lib/lru-cache.js","../../node_modules/next/dist/server/lib/parse-stack.js","../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../node_modules/next/dist/server/lib/source-maps.js","../../node_modules/next/dist/server/lib/trace/constants.js","../../node_modules/next/dist/server/lib/trace/tracer.js","../../node_modules/next/dist/server/load-manifest.external.js","../../node_modules/next/dist/server/node-environment-baseline.js","../../node_modules/next/dist/server/node-environment-extensions/console-dim.external.js","../../node_modules/next/dist/server/node-environment-extensions/console-exit.js","../../node_modules/next/dist/server/node-environment-extensions/console-file.js","../../node_modules/next/dist/server/node-environment-extensions/date.js","../../node_modules/next/dist/server/node-environment-extensions/error-inspect.js","../../node_modules/next/dist/server/node-environment-extensions/fast-set-immediate.external.js","../../node_modules/next/dist/server/node-environment-extensions/io-utils.js","../../node_modules/next/dist/server/node-environment-extensions/node-crypto.js","../../node_modules/next/dist/server/node-environment-extensions/random.js","../../node_modules/next/dist/server/node-environment-extensions/unhandled-rejection.external.js","../../node_modules/next/dist/server/node-environment-extensions/web-crypto.js","../../node_modules/next/dist/server/node-environment.js","../../node_modules/next/dist/server/node-polyfill-crypto.js","../../node_modules/next/dist/server/patch-error-inspect.js","../../node_modules/next/dist/server/require-hook.js","../../node_modules/next/dist/server/response-cache/types.js","../../node_modules/next/dist/server/runtime-reacts.external.js","../../node_modules/next/dist/shared/lib/deep-freeze.js","../../node_modules/next/dist/shared/lib/instant-messages.js","../../node_modules/next/dist/shared/lib/invariant-error.js","../../node_modules/next/dist/shared/lib/is-plain-object.js","../../node_modules/next/dist/shared/lib/is-thenable.js","../../node_modules/next/dist/shared/lib/lazy-dynamic/bailout-to-csr.js","../../node_modules/next/dist/shared/lib/promise-with-resolvers.js","../../node_modules/next/dist/shared/lib/server-reference-info.js","../../node_modules/next/package.json","../../node_modules/react/cjs/react.development.js","../../node_modules/react/cjs/react.production.js","../../node_modules/react/index.js","../../node_modules/react/package.json","../../package.json","../package.json","webpack-runtime.js"]}
1
+ {"version":1,"files":["../../node_modules/@swc/helpers/_/_interop_require_default/package.json","../../node_modules/@swc/helpers/cjs/_interop_require_default.cjs","../../node_modules/@swc/helpers/esm/_interop_require_default.js","../../node_modules/@swc/helpers/package.json","../../node_modules/next/dist/build/adapter/setup-node-env.external.js","../../node_modules/next/dist/client/components/hooks-server-context.js","../../node_modules/next/dist/client/components/static-generation-bailout.js","../../node_modules/next/dist/client/lib/console.js","../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../node_modules/next/dist/compiled/hash.js/sha256/256.js","../../node_modules/next/dist/compiled/hash.js/sha256/package.json","../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../node_modules/next/dist/compiled/source-map/package.json","../../node_modules/next/dist/compiled/source-map/source-map.js","../../node_modules/next/dist/compiled/stacktrace-parser/package.json","../../node_modules/next/dist/compiled/stacktrace-parser/stack-trace-parser.cjs.js","../../node_modules/next/dist/compiled/ws/index.js","../../node_modules/next/dist/compiled/ws/package.json","../../node_modules/next/dist/lib/client-and-server-references.js","../../node_modules/next/dist/lib/constants.js","../../node_modules/next/dist/lib/framework/boundary-constants.js","../../node_modules/next/dist/lib/interop-default.js","../../node_modules/next/dist/lib/is-error.js","../../node_modules/next/dist/lib/picocolors.js","../../node_modules/next/dist/lib/scheduler.js","../../node_modules/next/dist/lib/semver-noop.js","../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../node_modules/next/dist/server/app-render/async-local-storage.js","../../node_modules/next/dist/server/app-render/blocking-route-messages.js","../../node_modules/next/dist/server/app-render/cache-signal.js","../../node_modules/next/dist/server/app-render/console-async-storage-instance.js","../../node_modules/next/dist/server/app-render/console-async-storage.external.js","../../node_modules/next/dist/server/app-render/dynamic-rendering.js","../../node_modules/next/dist/server/app-render/instant-validation/boundary-constants.js","../../node_modules/next/dist/server/app-render/instant-validation/boundary-tracking.js","../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../node_modules/next/dist/server/app-render/segment-config/ensure-static.js","../../node_modules/next/dist/server/app-render/staged-rendering.js","../../node_modules/next/dist/server/app-render/sync-io-messages.js","../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../node_modules/next/dist/server/dev/browser-logs/file-logger.js","../../node_modules/next/dist/server/dynamic-rendering-utils.js","../../node_modules/next/dist/server/lib/app-dir-module.js","../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../node_modules/next/dist/server/lib/lru-cache.js","../../node_modules/next/dist/server/lib/parse-stack.js","../../node_modules/next/dist/server/lib/route-cache-key.js","../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../node_modules/next/dist/server/lib/source-maps.js","../../node_modules/next/dist/server/lib/trace/constants.js","../../node_modules/next/dist/server/lib/trace/tracer.js","../../node_modules/next/dist/server/load-manifest.external.js","../../node_modules/next/dist/server/node-environment-baseline.js","../../node_modules/next/dist/server/node-environment-extensions/console-dim.external.js","../../node_modules/next/dist/server/node-environment-extensions/console-exit.js","../../node_modules/next/dist/server/node-environment-extensions/console-file.js","../../node_modules/next/dist/server/node-environment-extensions/date.js","../../node_modules/next/dist/server/node-environment-extensions/error-inspect.js","../../node_modules/next/dist/server/node-environment-extensions/fast-set-immediate.external.js","../../node_modules/next/dist/server/node-environment-extensions/io-utils.js","../../node_modules/next/dist/server/node-environment-extensions/node-crypto.js","../../node_modules/next/dist/server/node-environment-extensions/random.js","../../node_modules/next/dist/server/node-environment-extensions/unhandled-rejection.external.js","../../node_modules/next/dist/server/node-environment-extensions/web-crypto.js","../../node_modules/next/dist/server/node-environment.js","../../node_modules/next/dist/server/node-polyfill-crypto.js","../../node_modules/next/dist/server/normalizers/built/app/app-pathname-normalizer.js","../../node_modules/next/dist/server/normalizers/normalizers.js","../../node_modules/next/dist/server/normalizers/underscore-normalizer.js","../../node_modules/next/dist/server/normalizers/wrap-normalizer-fn.js","../../node_modules/next/dist/server/patch-error-inspect.js","../../node_modules/next/dist/server/require-hook.js","../../node_modules/next/dist/server/response-cache/types.js","../../node_modules/next/dist/server/route-kind.js","../../node_modules/next/dist/server/runtime-reacts.external.js","../../node_modules/next/dist/shared/lib/deep-freeze.js","../../node_modules/next/dist/shared/lib/i18n/normalize-locale-path.js","../../node_modules/next/dist/shared/lib/instant-messages.js","../../node_modules/next/dist/shared/lib/invariant-error.js","../../node_modules/next/dist/shared/lib/is-plain-object.js","../../node_modules/next/dist/shared/lib/is-thenable.js","../../node_modules/next/dist/shared/lib/lazy-dynamic/react-browser-bailout.js","../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../node_modules/next/dist/shared/lib/page-path/normalize-page-path.js","../../node_modules/next/dist/shared/lib/promise-with-resolvers.js","../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../node_modules/next/dist/shared/lib/router/utils/index.js","../../node_modules/next/dist/shared/lib/router/utils/interception-routes.js","../../node_modules/next/dist/shared/lib/router/utils/is-dynamic.js","../../node_modules/next/dist/shared/lib/router/utils/parse-loader-tree.js","../../node_modules/next/dist/shared/lib/router/utils/sorted-routes.js","../../node_modules/next/dist/shared/lib/segment.js","../../node_modules/next/dist/shared/lib/server-reference-info.js","../../node_modules/next/dist/shared/lib/utils.js","../../node_modules/next/package.json","../../node_modules/react/cjs/react.development.js","../../node_modules/react/cjs/react.production.js","../../node_modules/react/index.js","../../node_modules/react/package.json","../../package.json","../package.json","webpack-runtime.js"]}
@@ -1 +1 @@
1
- <!DOCTYPE html><html lang="zh-CN"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/459a9ed40847a72f.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/6ba662805d17ffc2.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/ea27b9e30f76303f.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-9b4bb574e5817654.js"/><script src="/_next/static/chunks/4bd1b696-93bf506b236d6248.js" async=""></script><script src="/_next/static/chunks/3794-3679f1c05160977c.js" async=""></script><script src="/_next/static/chunks/main-app-e9b53f0e1c6591b2.js" async=""></script><meta name="robots" content="noindex"/><meta name="theme-color" content="#fcfbf9" media="(prefers-color-scheme: light)"/><meta name="theme-color" content="#2e3440" media="(prefers-color-scheme: dark)"/><title>pi</title><meta name="description" content="Web UI for the pi coding agent"/><link rel="icon" href="/icon.svg?779ce17318f43f72" type="image/svg+xml" sizes="any"/><title>404: This page could not be found.</title><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;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><!--$--><!--/$--><script src="/_next/static/chunks/webpack-9b4bb574e5817654.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[7121,[],\"\"]\n3:I[4581,[],\"\"]\n4:I[484,[],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[484,[],\"ViewportBoundary\"]\na:I[484,[],\"MetadataBoundary\"]\nc:I[7123,[],\"default\",1]\n:HL[\"/_next/static/css/459a9ed40847a72f.css\",\"style\"]\n:HL[\"/_next/static/css/6ba662805d17ffc2.css\",\"style\"]\n:HL[\"/_next/static/css/ea27b9e30f76303f.css\",\"style\"]\n7:X\n0:{\"P\":null,\"c\":[\"\",\"_not-found\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"_not-found\",{\"children\":[\"__PAGE__\",{},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4624],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/459a9ed40847a72f.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/6ba662805d17ffc2.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"2\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/ea27b9e30f76303f.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"zh-CN\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"body\",null,{\"suppressHydrationWarning\":true,\"children\":[\"$\",\"$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\":[[[\"$\",\"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,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,null]},null,false,\"$7\"]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"sNX5GQkOWuK5YEID1hT-C\"}\n7:C\n9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#fcfbf9\",\"media\":\"(prefers-color-scheme: light)\"}],[\"$\",\"meta\",\"3\",{\"name\":\"theme-color\",\"content\":\"#2e3440\",\"media\":\"(prefers-color-scheme: dark)\"}]]\nd:I[6869,[],\"IconMark\"]\n6:null\nb:[[\"$\",\"title\",\"0\",{\"children\":\"pi\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Web UI for the pi coding agent\"}],[\"$\",\"link\",\"2\",{\"rel\":\"icon\",\"href\":\"/icon.svg?779ce17318f43f72\",\"type\":\"image/svg+xml\",\"sizes\":\"any\"}],[\"$\",\"$Ld\",\"3\",{}]]\n"])</script></body></html>
1
+ <!DOCTYPE html><html lang="zh-CN"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/459a9ed40847a72f.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/6ba662805d17ffc2.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/c6e2227c36ec2fd6.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-2ac3d76b81895f5b.js"/><script src="/_next/static/chunks/4bd1b696-e199e788e58acf79.js" async=""></script><script src="/_next/static/chunks/3794-0978865cda773008.js" async=""></script><script src="/_next/static/chunks/main-app-e9b53f0e1c6591b2.js" async=""></script><meta name="robots" content="noindex"/><meta name="theme-color" content="#fcfbf9" media="(prefers-color-scheme: light)"/><meta name="theme-color" content="#2e3440" media="(prefers-color-scheme: dark)"/><title>pi</title><meta name="description" content="Web UI for the pi coding agent"/><link rel="icon" href="/icon.svg?779ce17318f43f72" type="image/svg+xml" sizes="any"/><title>404: This page could not be found.</title><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;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><!--$--><!--/$--><script src="/_next/static/chunks/webpack-2ac3d76b81895f5b.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[7121,[],\"\"]\n3:I[4581,[],\"\"]\n7:I[484,[],\"OutletBoundary\"]\n8:\"$Sreact.suspense\"\na:\"ViewportBoundary\"\nb:I[484,[],\"$a\"]\nd:\"MetadataBoundary\"\ne:I[484,[],\"$d\"]\n10:I[7123,[],\"default\",1]\n:HL[\"/_next/static/css/459a9ed40847a72f.css\",\"style\"]\n:HL[\"/_next/static/css/6ba662805d17ffc2.css\",\"style\"]\n:HL[\"/_next/static/css/c6e2227c36ec2fd6.css\",\"style\"]\n5:X\n6:[[\"children\",{\"s\":\"__PAGE__\",\"h\":512,\"d\":{\"r\":[\"$\",\"$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,[\"$\",\"$L7\",null,{\"children\":[\"$\",\"$8\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@9\"}]}]]}],\"p\":false,\"v\":null}}]]\n4:[[\"children\",{\"s\":\"_not-found\",\"h\":512,\"d\":{\"r\":[\"$\",\"$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\"}]]}],\"p\":false,\"v\":\"$5\"},\"c\":\"$Q6\"}]]\n0:{\"P\":null,\"c\":[\"\",\"_not-found\"],\"q\":\"\",\"i\":false,\"t\":{\"t\":{\"s\":\"\",\"h\":528,\"d\":{\"r\":[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/459a9ed40847a72f.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/6ba662805d17ffc2.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"2\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/c6e2227c36ec2fd6.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"zh-CN\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"body\",null,{\"suppressHydrationWarning\":true,\"children\":[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]]}],\"p\":false,\"v\":null},\"c\":\"$Q4\"},\"h\":{\"r\":[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$Lb\",null,{\"children\":\"$Lc\"}],[\"$\",\"$Le\",null,{\"children\":[[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$8\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lf\"}]}],null]}],null]}],\"p\":false,\"v\":null}},\"m\":\"$undefined\",\"G\":[\"$10\",[]],\"S\":true,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"hYPL1-dmhKFjLS3f5yoqN\"}\n5:C\nc:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#fcfbf9\",\"media\":\"(prefers-color-scheme: light)\"}],[\"$\",\"meta\",\"3\",{\"name\":\"theme-color\",\"content\":\"#2e3440\",\"media\":\"(prefers-color-scheme: dark)\"}]]\n11:I[6869,[],\"IconMark\"]\n9:null\nf:[[\"$\",\"title\",\"0\",{\"children\":\"pi\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Web UI for the pi coding agent\"}],[\"$\",\"link\",\"2\",{\"rel\":\"icon\",\"href\":\"/icon.svg?779ce17318f43f72\",\"type\":\"image/svg+xml\",\"sizes\":\"any\"}],[\"$\",\"$L11\",\"3\",{}]]\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-9b4bb574e5817654.js"/><script src="/_next/static/chunks/4bd1b696-93bf506b236d6248.js" async=""></script><script src="/_next/static/chunks/3794-3679f1c05160977c.js" async=""></script><script src="/_next/static/chunks/main-app-e9b53f0e1c6591b2.js" async=""></script><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-9b4bb574e5817654.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[7121,[],\"\"]\n3:I[4581,[],\"\"]\n4:I[484,[],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[484,[],\"ViewportBoundary\"]\na:I[484,[],\"MetadataBoundary\"]\nc:I[7123,[],\"default\",1]\n7:X\n0:{\"P\":null,\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"_global-error\",{\"children\":[\"__PAGE__\",{},\"$undefined\",\"$undefined\",4624]},\"$undefined\",\"$undefined\",4624]},\"$undefined\",\"$undefined\",4624],[[\"$\",\"$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\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"sNX5GQkOWuK5YEID1hT-C\"}\n7:C\n9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n6: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-2ac3d76b81895f5b.js"/><script src="/_next/static/chunks/4bd1b696-e199e788e58acf79.js" async=""></script><script src="/_next/static/chunks/3794-0978865cda773008.js" async=""></script><script src="/_next/static/chunks/main-app-e9b53f0e1c6591b2.js" async=""></script><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-2ac3d76b81895f5b.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[7121,[],\"\"]\n3:I[4581,[],\"\"]\n7:I[484,[],\"OutletBoundary\"]\n8:\"$Sreact.suspense\"\na:\"ViewportBoundary\"\nb:I[484,[],\"$a\"]\nd:\"MetadataBoundary\"\ne:I[484,[],\"$d\"]\n10:I[7123,[],\"default\",1]\n4:X\n6:[[\"children\",{\"s\":\"__PAGE__\",\"h\":528,\"d\":{\"r\":[\"$\",\"$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,[\"$\",\"$L7\",null,{\"children\":[\"$\",\"$8\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@9\"}]}]]}],\"p\":false,\"v\":null}}]]\n5:[[\"children\",{\"s\":\"_global-error\",\"h\":528,\"d\":{\"r\":[\"$\",\"$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\"}]]}],\"p\":false,\"v\":\"$4\"},\"c\":\"$Q6\"}]]\n0:{\"P\":null,\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"t\":{\"t\":{\"s\":\"\",\"h\":528,\"d\":{\"r\":[\"$\",\"$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\"}]]}],\"p\":false,\"v\":\"$4\"},\"c\":\"$Q5\"},\"h\":{\"r\":[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$Lb\",null,{\"children\":\"$Lc\"}],[\"$\",\"$Le\",null,{\"children\":[[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$8\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lf\"}]}],null]}],null]}],\"p\":false,\"v\":null}},\"m\":\"$undefined\",\"G\":[\"$10\",[]],\"S\":true,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"hYPL1-dmhKFjLS3f5yoqN\"}\n4:C\nc:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n9:null\nf:[]\n"])</script></body></html>
@@ -0,0 +1,5 @@
1
+ {
2
+ "previewModeId": "9ec3abc6872c88fa13fe1d9692bf754d",
3
+ "previewModeSigningKey": "b063c2c80dbb7726ae98be0409e1449e5b3feae2c6d8e69d620500df2731cf57",
4
+ "previewModeEncryptionKey": "b5d217e3f62b07ea8b27fa77a08d343620eb24df1e70316fd5c3f16f997d2471"
5
+ }
@@ -1 +1 @@
1
- {"node":{},"edge":{},"encryptionKey":"pKYwgXA0RFzmG6l97kKXtc0NEgq1MeynNZZfHBDBZng="}
1
+ {"node":{},"edge":{},"encryptionKey":"ukVjNuQJzaES1Gz+64FkCS7yGQml5WDp9bAxIOnpqAQ="}
@@ -1 +1 @@
1
- (()=>{"use strict";var a,b,c,d,e,f,g,h,i={},j={};function k(a){var b=j[a];if(void 0!==b)return b.exports;var c=j[a]={exports:{}},d=!0;try{i[a].call(c.exports,c,c.exports,k),d=!1}finally{d&&delete j[a]}return c.exports}k.m=i,k.amdO={},a="function"==typeof Symbol?Symbol("webpack queues"):"__webpack_queues__",b="function"==typeof Symbol?Symbol("webpack exports"):"__webpack_exports__",c="function"==typeof Symbol?Symbol("webpack error"):"__webpack_error__",d=a=>{a&&a.d<1&&(a.d=1,a.forEach(a=>a.r--),a.forEach(a=>a.r--?a.r++:a()))},k.a=(e,f,g)=>{g&&((h=[]).d=-1);var h,i,j,k,l=new Set,m=e.exports,n=new Promise((a,b)=>{k=b,j=a});n[b]=m,n[a]=a=>(h&&a(h),l.forEach(a),n.catch(a=>{})),e.exports=n,f(e=>{i=e.map(e=>{if(null!==e&&"object"==typeof e){if(e[a])return e;if(e.then){var f=[];f.d=0,e.then(a=>{g[b]=a,d(f)},a=>{g[c]=a,d(f)});var g={};return g[a]=a=>a(f),g}}var h={};return h[a]=a=>{},h[b]=e,h});var f,g=()=>i.map(a=>{if(a[c])throw a[c];return a[b]}),j=new Promise(b=>{(f=()=>b(g)).r=0;var c=a=>a!==h&&!l.has(a)&&(l.add(a),a&&!a.d&&(f.r++,a.push(f)));i.map(b=>b[a](c))});return f.r?j:g()},a=>(a?k(n[c]=a):j(m),d(h))),h&&h.d<0&&(h.d=0)},k.n=a=>{var b=a&&a.__esModule?()=>a.default:()=>a;return k.d(b,{a:b}),b},f=Object.getPrototypeOf?a=>Object.getPrototypeOf(a):a=>a.__proto__,k.t=function(a,b){if(1&b&&(a=this(a)),8&b||"object"==typeof a&&a&&(4&b&&a.__esModule||16&b&&"function"==typeof a.then))return a;var c=Object.create(null);k.r(c);var d={};e=e||[null,f({}),f([]),f(f)];for(var g=2&b&&a;"object"==typeof g&&!~e.indexOf(g);g=f(g))Object.getOwnPropertyNames(g).forEach(b=>d[b]=()=>a[b]);return d.default=()=>a,k.d(c,d),c},k.d=(a,b)=>{for(var c in b)k.o(b,c)&&!k.o(a,c)&&Object.defineProperty(a,c,{enumerable:!0,get:b[c]})},k.f={},k.e=a=>Promise.all(Object.keys(k.f).reduce((b,c)=>(k.f[c](a,b),b),[])),k.u=a=>""+a+".js",k.o=(a,b)=>Object.prototype.hasOwnProperty.call(a,b),k.r=a=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(a,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(a,"__esModule",{value:!0})},k.X=(a,b,c)=>{var d=b;c||(b=a,c=()=>k(k.s=d)),b.map(k.e,k);var e=c();return void 0===e?a:e},g={311:1},h=a=>{var b=a.modules,c=a.ids,d=a.runtime;for(var e in b)k.o(b,e)&&(k.m[e]=b[e]);d&&d(k);for(var f=0;f<c.length;f++)g[c[f]]=1},k.f.require=(a,b)=>{g[a]||(311!=a?h(require("./chunks/"+k.u(a))):g[a]=1)},module.exports=k,k.C=h})();
1
+ (()=>{"use strict";var a,b,c,d,e,f,g,h,i={},j={};function k(a){var b=j[a];if(void 0!==b)return b.exports;var c=j[a]={exports:{}},d=!0;try{i[a].call(c.exports,c,c.exports,k),d=!1}finally{d&&delete j[a]}return c.exports}k.m=i,k.amdO={},a="function"==typeof Symbol?Symbol("webpack queues"):"__webpack_queues__",b="function"==typeof Symbol?Symbol("webpack exports"):"__webpack_exports__",c="function"==typeof Symbol?Symbol("webpack error"):"__webpack_error__",d=a=>{a&&a.d<1&&(a.d=1,a.forEach(a=>a.r--),a.forEach(a=>a.r--?a.r++:a()))},k.a=(e,f,g)=>{g&&((h=[]).d=-1);var h,i,j,k,l=new Set,m=e.exports,n=new Promise((a,b)=>{k=b,j=a});n[b]=m,n[a]=a=>(h&&a(h),l.forEach(a),n.catch(a=>{})),e.exports=n,f(e=>{i=e.map(e=>{if(null!==e&&"object"==typeof e){if(e[a])return e;if(e.then){var f=[];f.d=0,e.then(a=>{g[b]=a,d(f)},a=>{g[c]=a,d(f)});var g={};return g[a]=a=>a(f),g}}var h={};return h[a]=a=>{},h[b]=e,h});var f,g=()=>i.map(a=>{if(a[c])throw a[c];return a[b]}),j=new Promise(b=>{(f=()=>b(g)).r=0;var c=a=>a!==h&&!l.has(a)&&(l.add(a),a&&!a.d&&(f.r++,a.push(f)));i.map(b=>b[a](c))});return f.r?j:g()},a=>(a?k(n[c]=a):j(m),d(h))),h&&h.d<0&&(h.d=0)},k.n=a=>{var b=a&&a.__esModule?()=>a.default:()=>a;return k.d(b,{a:b}),b},f=Object.getPrototypeOf?a=>Object.getPrototypeOf(a):a=>a.__proto__,k.t=function(a,b){if(1&b&&(a=this(a)),8&b||"object"==typeof a&&a&&(4&b&&a.__esModule||16&b&&"function"==typeof a.then))return a;var c=Object.create(null);k.r(c);var d={};e=e||[null,f({}),f([]),f(f)];for(var g=2&b&&a;"object"==typeof g&&!~e.indexOf(g);g=f(g))Object.getOwnPropertyNames(g).forEach(b=>d[b]=()=>a[b]);return d.default=()=>a,k.d(c,d),c},k.d=(a,b)=>{for(var c in b)k.o(b,c)&&!k.o(a,c)&&Object.defineProperty(a,c,{enumerable:!0,get:b[c]})},k.f={},k.e=a=>Promise.all(Object.keys(k.f).reduce((b,c)=>(k.f[c](a,b),b),[])),k.u=a=>""+a+".js",k.o=(a,b)=>Object.prototype.hasOwnProperty.call(a,b),k.r=a=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(a,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(a,"__esModule",{value:!0})},k.X=(a,b,c)=>{var d=b;c||(b=a,c=()=>k(k.s=d)),b.map(k.e,k);var e=c();return void 0===e?a:e},g={7311:1},h=a=>{var b=a.modules,c=a.ids,d=a.runtime;for(var e in b)k.o(b,e)&&(k.m[e]=b[e]);d&&d(k);for(var f=0;f<c.length;f++)g[c[f]]=1},k.f.require=(a,b)=>{g[a]||(7311!=a?h(require("./chunks/"+k.u(a))):g[a]=1)},module.exports=k,k.C=h})();
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2716],{2155:(e,t,n)=>{n.d(t,{Q:()=>d});var a=n(5155),l=n(2115),i=n(9992),r=n(1859),s=n(2253),o=n(1135);let d=(0,l.memo)(function({tree:e,expanded:t,fresh:n,filter:i="",onlyChanges:s=!1,selectedPath:d,onToggleDir:p,onExpandLazy:h,onOpenFile:u,onReference:f,onOpenEditor:m,revealPath:x,revealKey:w,emptyText:v}){let{t:g}=(0,r.s)(),y=(0,l.useMemo)(()=>(0,o.dG)(e,t,{onlyChanges:s,filter:i}),[e,t,s,i]),b=(0,l.useRef)(null),[j,k]=(0,l.useState)({top:0,height:600}),[N,C]=(0,l.useState)(null);(0,l.useEffect)(()=>{let e=b.current;if(!e)return;let t=()=>k({top:e.scrollTop,height:e.clientHeight});t(),e.addEventListener("scroll",t,{passive:!0});let n=new ResizeObserver(t);return n.observe(e),()=>{e.removeEventListener("scroll",t),n.disconnect()}},[]),(0,l.useEffect)(()=>{if(!x)return;let e=y.findIndex(e=>e.node.path===x);if(e<0)return;C((0,o.SG)(y[e].node));let t=b.current;if(!t)return;let n=22*e;(n<t.scrollTop||n+22>t.scrollTop+t.clientHeight)&&t.scrollTo({top:Math.max(0,n-t.clientHeight/2)})},[x,w,y]);let $=(0,l.useCallback)(e=>{let t=e.node;"dir"===t.kind?(t.lazy&&!e.expanded&&h&&h(t.path),p(t.path)):u(t)},[h,p,u]),S=Math.max(0,Math.floor(j.top/22)-12),z=Math.min(y.length,Math.ceil((j.top+j.height)/22)+12),M=y.slice(S,z);return(0,a.jsx)("div",{ref:b,className:"pw-tree min-h-0 flex-1 overflow-auto outline-none",tabIndex:0,role:"tree",onKeyDown:e=>{if(!y.length)return;let t=Math.max(0,y.findIndex(e=>(0,o.SG)(e.node)===N)),n=y[t],a=e=>{let t=y[Math.max(0,Math.min(y.length-1,e))];C((0,o.SG)(t.node));let n=b.current;if(!n)return;let a=22*Math.max(0,Math.min(y.length-1,e));a<n.scrollTop?n.scrollTop=a:a+22>n.scrollTop+n.clientHeight&&(n.scrollTop=a+22-n.clientHeight)};if("ArrowDown"===e.key)e.preventDefault(),a(null===N?0:t+1);else if("ArrowUp"===e.key)e.preventDefault(),a(t-1);else if("ArrowRight"===e.key&&n)e.preventDefault(),"dir"!==n.node.kind||n.expanded?a(t+1):$(n);else if("ArrowLeft"===e.key&&n)if(e.preventDefault(),"dir"===n.node.kind&&n.expanded)p(n.node.path);else{let e=n.node.path.includes("/")?n.node.path.slice(0,n.node.path.lastIndexOf("/")):"",t=y.findIndex(t=>"dir"===t.node.kind&&t.node.path===e);t>=0&&a(t)}else("Enter"===e.key||" "===e.key)&&n?(e.preventDefault(),$(n)):"Home"===e.key?(e.preventDefault(),a(0)):"End"===e.key&&(e.preventDefault(),a(y.length-1))},onBlur:e=>{e.currentTarget.contains(e.relatedTarget)||C(null)},children:0===y.length?(0,a.jsx)("div",{style:{fontSize:12.5,color:"var(--dsw-label-caption)",padding:"10px 12px"},children:v??g.filesEmpty}):(0,a.jsx)("div",{style:{height:22*y.length,position:"relative"},children:M.map((e,t)=>(0,a.jsx)(c,{row:e,top:(S+t)*22,fresh:"file"===e.node.kind&&!!n?.has(e.node.path),selected:"file"===e.node.kind&&d===e.node.path,focused:N===(0,o.SG)(e.node),onActivate:$,onOpenFolder:u,onFocusRow:C,onReference:f,onOpenEditor:m,pendingLabel:g.growthPending,lazyLabel:g.growthLazyDir,deletedLabel:g.growthStatD,referenceLabel:g.fileReference,editorLabel:g.fileOpenEditor,openFolderLabel:g.viewerOpenFolder},(0,o.SG)(e.node)))})})}),c=(0,l.memo)(function({row:e,top:t,fresh:n,selected:l,focused:r,onActivate:d,onOpenFolder:c,onFocusRow:p,onReference:h,onOpenEditor:u,pendingLabel:f,lazyLabel:m,deletedLabel:x,referenceLabel:w,editorLabel:v,openFolderLabel:g}){var y;let{node:b,depth:j,expanded:k}=e,N="dir"===b.kind,C="A"===(y=b.status)?"var(--dsw-success)":"M"===y?"var(--dsw-warn)":"D"===y?"var(--dsw-danger)":"R"===y?"var(--dsw-accent)":void 0,$=N?function(e){let t=e.counts;if(!t)return null;let n=t.added+t.modified+t.deleted+t.renamed;if(t.pending&&!n)return{text:"…",color:"var(--dsw-label-caption)"};if(!n)return null;let a=t.deleted>=t.added&&t.deleted>=t.modified?"var(--dsw-danger)":t.added>=t.modified?"var(--dsw-success)":"var(--dsw-warn)";return{text:String(n),color:a}}(b):null,S=!!(b.lazy&&!b.counts),z=[N?`${b.path}/`:b.path,"D"===b.status?x:"","R"===b.status&&b.from?`← ${b.from}`:"",b.pending?f:"",S?m:""].filter(Boolean).join("\n");return(0,a.jsxs)("div",{className:"pw-tree-row group/row",role:"treeitem","aria-expanded":N?k:void 0,"aria-selected":l,"data-selected":l||void 0,"data-focused":r||void 0,"data-fresh":n?b.status??"M":void 0,"data-status":b.status,"data-pending":b.pending||void 0,"data-lazy":S?"1":void 0,style:{top:t,paddingLeft:12*j+6},title:z,onClick:()=>{p((0,o.SG)(b)),d(e)},onDoubleClick:()=>{N&&c(b)},children:[(0,a.jsx)("span",{className:"pw-tree-chevron","aria-hidden":!0,children:N&&(0,a.jsx)(i.Yq,{size:10,style:{transform:k?"rotate(90deg)":void 0,transition:"transform var(--ds-duration-fast)"}})}),(0,a.jsx)("img",{className:"pw-tree-icon","data-kind":b.kind,src:N?(0,s.Q)(b.name,k):(0,s.s)(b.name),alt:"",draggable:!1}),(0,a.jsxs)("span",{className:"pw-tree-name",style:{color:C,textDecoration:"D"===b.status?"line-through":void 0},children:[b.name,N?"/":"","D"===b.status&&(0,a.jsxs)("span",{className:"pw-tree-from",children:["(",x,")"]}),"R"===b.status&&b.from&&(0,a.jsxs)("span",{className:"pw-tree-from",children:["← ",b.from.split("/").pop()]})]}),b.pending&&(0,a.jsx)("span",{className:"pw-tree-pulse","aria-label":f}),!b.lazy&&(h||!N&&u||N)&&(0,a.jsxs)("span",{className:"pw-tree-actions",children:[N&&(0,a.jsx)("button",{type:"button",className:"icon-btn",style:{width:18,height:18,borderRadius:5},title:g,"aria-label":`${g}: ${b.path}`,onClick:e=>{e.stopPropagation(),c(b)},children:(0,a.jsx)(i.pH,{size:11})}),h&&(0,a.jsx)("button",{type:"button",className:"icon-btn",style:{width:18,height:18,borderRadius:5},title:w,onClick:e=>{e.stopPropagation(),h(N?`${b.path.replace(/[\\/]+$/,"")}/`:b.path)},children:(0,a.jsx)(i.o_,{size:11})}),!N&&u&&(0,a.jsx)("button",{type:"button",className:"icon-btn",style:{width:18,height:18,borderRadius:5},title:v,onClick:e=>{e.stopPropagation(),u(b.path)},children:(0,a.jsx)(i.lx,{size:11})})]}),!N&&b.status&&(b.add||b.del)?(0,a.jsxs)("span",{className:"pw-tree-stat",children:[b.add?(0,a.jsxs)("span",{style:{color:"var(--dsw-success)"},children:["+",b.add]}):null,b.del?(0,a.jsxs)("span",{style:{color:"var(--dsw-danger)"},children:["−",b.del]}):null]}):null,!N&&b.status&&(0,a.jsx)("span",{className:"pw-tree-badge",style:{color:C,borderColor:C},children:b.status}),$&&(0,a.jsx)("span",{className:"pw-tree-badge",style:{color:$.color,borderColor:$.color},children:$.text})]})})},2716:(e,t,n)=>{n.r(t),n.d(t,{FileViewer:()=>y});var a=n(5155),l=n(2115),i=n(8426),r=n(3437),s=n(7890),o=n(8476),d=n(1859),c=n(9665);let p=(0,l.memo)(function({lines:e,language:t,folded:n,handle:i,initialChange:r}){let{t:s}=(0,d.s)(),[o,p]=(0,l.useState)(()=>new Set),h=(0,l.useRef)(null),[u,f]=(0,l.useState)({top:0,height:800}),[m,x]=(0,l.useState)(-1),w=(0,l.useRef)(new Map);(0,l.useEffect)(()=>p(new Set),[e]);let{rows:v,blocks:g}=(0,l.useMemo)(()=>(function(e,t,n){let a=[],l=[],i=e=>"add"===e.kind||"del"===e.kind,r=-1,s=-1;for(let t=0;t<e.length;t+=1)i(e[t])&&(r<0&&(r=t),s=t);let o=0,d=!1;for(;o<e.length;){let c=e[o];if("hunk"===c.kind||"file"===c.kind){o+=1;continue}if(i(c)){d||l.push(a.length),a.push({kind:"line",line:c,index:o}),d=!0,o+=1;continue}d=!1;let p=o;for(;p<e.length&&"ctx"===e[p].kind;)p+=1;let h=p-o,u=r<0||r>=o?0:3,f=s<p?0:3;if(!t||n.has(o)||h<=u+f+2)for(let t=o;t<p;t+=1)a.push({kind:"line",line:e[t],index:t});else{for(let t=o;t<o+u;t+=1)a.push({kind:"line",line:e[t],index:t});a.push({kind:"fold",from:o,count:h-u-f});for(let t=p-f;t<p;t+=1)a.push({kind:"line",line:e[t],index:t})}o=p}return{rows:a,blocks:l}})(e,n,o),[e,n,o]),y=(0,l.useMemo)(()=>String(function(e){let t=1;for(let n of e){let e=n.new??n.old??0;e>t&&(t=e)}return t}(e)).length,[e]),b=!!t&&v.length<=6e3;(0,l.useEffect)(()=>{let e=h.current;if(!e)return;let t=()=>f({top:e.scrollTop,height:e.clientHeight});t(),e.addEventListener("scroll",t,{passive:!0});let n=new ResizeObserver(t);return n.observe(e),()=>{e.removeEventListener("scroll",t),n.disconnect()}},[]);let j=(0,l.useCallback)(e=>{let t=h.current,n=g[e];t&&void 0!==n&&(x(e),t.scrollTo({top:Math.max(0,20*n-t.clientHeight/3),behavior:"smooth"}))},[g]);(0,l.useImperativeHandle)(i,()=>({nextChange:()=>j(Math.min(g.length-1,m+1)),prevChange:()=>j(Math.max(0,m-1))}),[g.length,m,j]);let k=(0,l.useRef)(!1);(0,l.useEffect)(()=>{k.current=!1},[e]),(0,l.useEffect)(()=>{if(k.current||!r||!g.length)return;k.current=!0;let e=h.current;e&&(e.scrollTop=Math.max(0,20*g[0]-e.clientHeight/3),x(0))},[g,r,v]);let N=Math.max(0,Math.floor(u.top/20)-20),C=Math.min(v.length,Math.ceil((u.top+u.height)/20)+20);return(0,a.jsxs)("div",{className:"pw-fdiff relative min-h-0 flex-1",children:[(0,a.jsx)("div",{ref:h,className:"pw-fdiff-scroll h-full overflow-auto",children:(0,a.jsx)("div",{style:{height:20*v.length,position:"relative",minWidth:"100%"},children:v.slice(N,C).map((e,n)=>{let l=(N+n)*20;if("fold"===e.kind)return(0,a.jsx)("button",{type:"button",className:"pw-fdiff-fold",style:{top:l},onClick:()=>p(t=>new Set(t).add(e.from)),children:s.viewerFoldedLines.replace("{n}",String(e.count))},`f${e.from}`);let i=e.line,r=(e=>{if(!b||!e.trim())return null;let n=w.current.get(e);if(void 0!==n)return n;let a=(0,c.NK)(e,t);return w.current.size>5e3&&w.current.clear(),w.current.set(e,a),a})(i.text);return(0,a.jsxs)("div",{className:"pw-fdiff-row","data-kind":i.kind,style:{top:l},children:[(0,a.jsxs)("span",{className:"pw-fdiff-gutter",style:{width:`${2*y+3}ch`},children:[(0,a.jsx)("span",{children:"add"===i.kind?"":String(i.old??"").padStart(y)}),(0,a.jsx)("span",{children:"del"===i.kind?"":String(i.new??"").padStart(y)})]}),(0,a.jsx)("span",{className:"pw-fdiff-sign",children:"add"===i.kind?"+":"del"===i.kind?"−":" "}),(0,a.jsx)("span",{className:"pw-fdiff-text hljs",children:r?(0,a.jsx)("span",{dangerouslySetInnerHTML:{__html:r}}):i.text})]},e.index)})})}),v.length>0&&g.length>0&&(0,a.jsx)("div",{className:"pw-fdiff-ticks","aria-hidden":!0,children:g.map((e,t)=>{let n=v[e],l=n?.kind==="line"?n.line.kind:"add";return(0,a.jsx)("span",{className:"pw-fdiff-tick","data-kind":l,"data-current":t===m||void 0,style:{top:`${e/v.length*100}%`},onClick:()=>j(t)},t)})})]})});var h=n(2155),u=n(9992),f=n(2253),m=n(1135);let x=new Map;async function w(e){let t=await fetch(e),n=await t.json();if(!t.ok||!n.success){let e=Error(n.error||`request failed (${t.status})`);throw e.status=t.status,e}return n.data}function v(e){let t=x.get(e);return!t&&((t=w(e)).catch(()=>x.delete(e)),x.set(e,t),x.size>200&&x.delete(x.keys().next().value)),t}function g({content:e,name:t}){let n=(0,l.useMemo)(()=>(0,c.wY)(e,(0,c.f3)(t)),[e,t]),i=e.split("\n").length,r=`${String(i).length+1}ch`;return(0,a.jsxs)("div",{className:"flex min-h-0 flex-1 overflow-auto",style:{fontFamily:"var(--font-mono)",fontSize:12,lineHeight:"20px"},children:[(0,a.jsx)("pre",{"aria-hidden":!0,className:"flex-none select-none py-2 pl-3 pr-2 text-right",style:{width:r,minWidth:r,color:"var(--dsw-label-caption)",margin:0,position:"sticky",left:0,background:"var(--dsw-glass-modal)"},children:Array.from({length:i},(e,t)=>t+1).join("\n")}),null!==n?(0,a.jsx)("pre",{className:"hljs min-w-0 flex-1 py-2 pl-3 pr-4",style:{margin:0,background:"transparent",color:"var(--dsw-label-secondary)"},children:(0,a.jsx)("code",{dangerouslySetInnerHTML:{__html:n}})}):(0,a.jsx)("pre",{className:"min-w-0 flex-1 py-2 pl-3 pr-4",style:{margin:0,color:"var(--dsw-label-secondary)"},children:e})]})}function y({state:e,growth:t,cwd:n,onClose:x,onSelectTab:b,onCloseTab:j,onOpen:k,onReference:N,onOpenEditor:C}){let{t:$}=(0,d.s)(),[S,z]=(0,l.useState)(!1),[M,E]=(0,l.useState)("diff"),[D,R]=(0,l.useState)(!1),[L,T]=(0,l.useState)(!0),[F,I]=(0,l.useState)(!1),[A,H]=(0,l.useState)(""),[O,P]=(0,l.useState)(0),[U,_]=(0,l.useState)(""),[G,B]=(0,l.useState)(null),[K,W]=(0,l.useState)(null),[q,Q]=(0,l.useState)(null),[V,X]=(0,l.useState)([]),Y=(0,l.useRef)(null),J=(0,l.useRef)(null),Z=(0,l.useRef)(null),ee=e.tabs.find(t=>t.path===e.active)??null,et=(0,l.useMemo)(()=>ee?t.changes.find(e=>e.path===ee.path)??null:null,[ee,t.changes]),en=!!(ee&&/\.(md|mdx|markdown)$/i.test(ee.path)),ea=t.range;(0,l.useEffect)(()=>{R(!1),ei(null)},[e.active]),(0,l.useEffect)(()=>{!D&&ee&&E(et&&!ee.lazy?"diff":en?"render":"content")},[ee,et,en,D]);let[el,ei]=(0,l.useState)(null),er=ee?.kind==="dir"?ee.path:el,es=!!er;(0,l.useEffect)(()=>{if(!er||!n||!ee){Q(null),X([]);return}let e=er.replace(/\/+$/,""),t=`dir|${e}`,a=!0;return X([]),(async()=>{try{let l=await w(`/api/files?cwd=${encodeURIComponent(n)}&path=${encodeURIComponent(e)}&offset=0`);a&&Q({key:t,...l})}catch(n){a&&Q({key:t,dir:e,entries:[],nextOffset:null,truncated:!1,error:n instanceof Error?n.message:$.viewerLoadFailed})}})(),()=>{a=!1}},[ee,er,n,$.viewerLoadFailed]);let eo=(0,l.useCallback)(async()=>{if(ee&&n&&q?.nextOffset)try{let e=await w(`/api/files?cwd=${encodeURIComponent(n)}&path=${encodeURIComponent(ee.path)}&offset=${q.nextOffset}`);Q({key:`dir|${ee.path}`,...e,entries:[...q.entries,...e.entries]})}catch{}},[ee,n,q]);(0,l.useEffect)(()=>{if(!ee||"dir"===ee.kind)return void W(null);let e=`${ee.path}|${M}|${ea?.from??""}|${ea?.to??""}|${et?.status??""}`,a=!0,l=t=>{a&&W({key:e,diff:null,content:null,binary:!1,truncated:!1,notice:null,error:null,...t})};if(void 0!==ee.staticContent)return l({content:ee.staticContent}),()=>{a=!1};if(!n)return void W(null);let i=`cwd=${encodeURIComponent(n)}`,r=async e=>{try{let t=await w(`/api/files?read=1&${i}&path=${encodeURIComponent(ee.path)}`);l({content:t.content,binary:t.binary,truncated:t.truncated,notice:e})}catch(e){if(400!==e.status)throw e;try{await w(`/api/files?${i}&path=${encodeURIComponent(ee.path)}&offset=0`),l({notice:null}),ei(ee.path);return}catch{}l({notice:"missing"})}},s=async(e,n)=>{try{let t=await v(`/api/growth?${i}&tree=${e}&path=${encodeURIComponent(ee.path)}&content=1`);l({content:t.content,binary:t.binary,truncated:t.truncated,notice:n})}catch(n){if(404===n.status){let n=t.selected?t.rounds.findIndex(e=>e.commit===t.selected.commit):t.rounds.length-1,a=t.rounds.slice(0,n+1).reverse().find(e=>e.changes.some(e=>e.path===ee.path||e.from===ee.path)),s=a?.changes.some(e=>"D"===e.status&&e.path===ee.path||"R"===e.status&&e.from===ee.path)?a.parentTree:a?.tree;if(s&&s!==e)try{let e=await v(`/api/growth?${i}&tree=${s}&path=${encodeURIComponent(ee.path)}&content=1`);l({content:e.content,binary:e.binary,truncated:e.truncated,notice:"historical"});return}catch(e){if(404!==e.status)throw e}await r("disk");return}throw n}};return(async()=>{try{if(ee.lazy||!ea)return void await r(ee.lazy&&t.rounds.length>0?"disk":null);if("diff"===M){if(!et)return void await s(ea.to,"nochange");let e=await v(`/api/growth?${i}&from=${ea.from}&to=${ea.to}&path=${encodeURIComponent(ee.path)}${ee.from??et.from?`&renamedFrom=${encodeURIComponent(ee.from??et.from??"")}`:""}`);if(e.binary)return void l({binary:!0});let t=(0,o.rj)(e.patch);if(!t)return void await s(ea.to,"nochange");l({diff:t,truncated:e.truncated,notice:"D"===et.status?"deleted":null});return}await s(ea.to,null)}catch(e){l({error:e instanceof Error?e.message:$.viewerLoadFailed})}})(),()=>{a=!1}},[ee,n,M,ea,et,t.rounds,t.selected,$.viewerLoadFailed]),(0,l.useEffect)(()=>{if(!e.open)return;let t=t=>{let n=t.target,a=n&&("INPUT"===n.tagName||"TEXTAREA"===n.tagName||n.isContentEditable);if("Escape"===t.key){t.preventDefault(),F?I(!1):x();return}let l=t.ctrlKey||t.metaKey;if(l&&"w"===t.key.toLowerCase()){t.preventDefault(),e.active?j(e.active):x();return}if(l&&"p"===t.key.toLowerCase()){t.preventDefault(),I(!0);return}a||l||"diff"!==M||("]"===t.key?Y.current?.nextChange():"["===t.key&&Y.current?.prevChange())};return document.addEventListener("keydown",t),()=>document.removeEventListener("keydown",t)},[e.open,e.active,F,M,x,j]),(0,l.useEffect)(()=>{F&&(H(""),P(0),setTimeout(()=>Z.current?.focus(),0))},[F]),(0,l.useEffect)(()=>{e.open&&setTimeout(()=>J.current?.focus(),0)},[e.open]);let ed=(0,l.useMemo)(()=>{if(!F)return[];let e=A.trim();return t.filePaths.map(t=>({p:t,s:(0,m.dt)(e,t)})).filter(e=>e.s>=0).sort((e,t)=>t.s-e.s||e.p.length-t.p.length).slice(0,50).map(e=>e.p)},[F,A,t.filePaths]);if(!e.open)return null;let ec=ee?ee.path.split("/"):[],ep=t.selected?t.selected.n?$.growthRoundLabel.replace("{n}",String(t.selected.n)):$.growthKindUser:"",eh=ep?`${ep}${et?` \xb7 +${et.add??0} −${et.del??0}`:""}`:"",eu="diff"===M&&!!K?.diff,ef=K?.notice==="deleted"?$.viewerDeleted:K?.notice==="historical"?$.viewerHistorical:K?.notice==="missing"?$.viewerMissing:K?.notice==="disk"?$.viewerNotInSnapshot:K?.notice==="nochange"?$.viewerNoChanges:"";return(0,a.jsx)("div",{className:"pw-viewer-mask modal-mask fixed inset-0 z-[105] flex items-center justify-center",onMouseDown:e=>e.target===e.currentTarget&&x(),children:(0,a.jsxs)("div",{ref:J,className:"pw-viewer glass-modal flex flex-col overflow-hidden outline-none","data-fullscreen":S||void 0,role:"dialog","aria-modal":"true",tabIndex:-1,"data-testid":"file-viewer",children:[(0,a.jsxs)("div",{className:"pw-viewer-tabs hairline-b",onDoubleClick:e=>e.target===e.currentTarget&&z(e=>!e),children:[(0,a.jsxs)("button",{type:"button",className:"pw-viewer-tab","data-active":null===e.active,onClick:()=>b(null),children:[(0,a.jsx)("img",{className:"pw-tree-icon",src:"/file-icons/folder-open.svg",alt:""}),(0,a.jsx)("span",{children:$.projectPanel})]}),(0,a.jsx)("div",{className:"pw-viewer-tabstrip",children:e.tabs.map(t=>(0,a.jsxs)("div",{className:"pw-viewer-tab","data-active":e.active===t.path,onAuxClick:e=>{1===e.button&&j(t.path)},children:[(0,a.jsxs)("button",{type:"button",className:"pw-viewer-tab-main",title:t.path,onClick:()=>b(t.path),children:[(0,a.jsx)("img",{className:"pw-tree-icon",src:(0,f.s)(t.path.split("/").pop()??t.path),alt:""}),(0,a.jsx)("span",{className:"truncate",children:t.path.split("/").pop()})]}),(0,a.jsx)("button",{type:"button",className:"pw-viewer-tab-close",title:$.viewerCloseTab,"aria-label":`${$.viewerCloseTab}: ${t.path}`,onClick:()=>j(t.path),children:(0,a.jsx)(u.Bh,{size:10})})]},t.path))}),(0,a.jsx)("button",{type:"button",className:"icon-btn",style:{width:26,height:26},title:`${$.viewerQuickOpen} (Ctrl/⌘+P)`,onClick:()=>I(!0),children:(0,a.jsx)(u.Xh,{size:13})}),(0,a.jsx)("div",{className:"flex-1"}),(0,a.jsx)("button",{type:"button",className:"icon-btn",style:{width:26,height:26},title:S?$.viewerExitFullscreen:$.viewerFullscreen,onClick:()=>z(e=>!e),"data-testid":"viewer-fullscreen",children:(0,a.jsx)("svg",{width:"14",height:"14",viewBox:"0 0 16 16",fill:"none","aria-hidden":!0,children:S?(0,a.jsx)("path",{d:"M6 1v5H1M10 1v5h5M6 15v-5H1M10 15v-5h5",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round",strokeLinejoin:"round"}):(0,a.jsx)("path",{d:"M1 6V1h5M15 6V1h-5M1 10v5h5M15 10v5h-5",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round",strokeLinejoin:"round"})})}),(0,a.jsx)("button",{type:"button",className:"icon-btn",style:{width:26,height:26},title:`${$.close} (Esc)`,onClick:x,"data-testid":"viewer-close",children:(0,a.jsx)(u.Bh,{size:13})})]}),ee?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("div",{className:"pw-viewer-toolbar hairline-b",children:[(0,a.jsx)("div",{className:"pw-crumb min-w-0 flex-1",children:ec.map((e,n)=>(0,a.jsxs)("span",{className:"flex items-center",children:[n>0&&(0,a.jsx)("span",{className:"pw-crumb-sep",children:"/"}),n<ec.length-1?(0,a.jsx)("button",{type:"button",onClick:()=>{let e;return e=ec.slice(0,n+1).join("/"),void(t.revealPath(e),B({path:e,key:Date.now()}),b(null))},children:e}):(0,a.jsx)("span",{style:{color:"var(--dsw-label-primary)",fontWeight:500},children:e})]},n))}),eh&&!ee.lazy&&(0,a.jsx)("span",{className:"flex-none truncate",style:{fontSize:11.5,color:"var(--dsw-label-caption)",maxWidth:220},children:eh}),!ee.lazy&&!es&&(0,a.jsx)("span",{className:"pw-seg",role:"radiogroup",children:["diff","content",...en?["render"]:[]].map(e=>(0,a.jsx)("button",{type:"button",role:"radio","aria-checked":M===e,"data-active":M===e,onClick:()=>{R(!0),E(e)},children:"diff"===e?$.viewerModeDiff:"content"===e?$.viewerModeContent:$.viewerModeRender},e))}),!es&&ee.lazy&&en&&(0,a.jsx)("span",{className:"pw-seg",role:"radiogroup",children:["content","render"].map(e=>(0,a.jsx)("button",{type:"button",role:"radio","aria-checked":M===e,"data-active":M===e,onClick:()=>{R(!0),E(e)},children:"content"===e?$.viewerModeContent:$.viewerModeRender},e))}),eu&&!es&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("button",{type:"button",className:"pw-chip","data-active":L,onClick:()=>T(e=>!e),children:L?$.viewerFold:$.viewerUnfold}),(0,a.jsx)("button",{type:"button",className:"icon-btn",style:{width:24,height:24},title:`${$.viewerPrevChange} ([)`,onClick:()=>Y.current?.prevChange(),children:(0,a.jsx)(u.tr,{size:12})}),(0,a.jsx)("button",{type:"button",className:"icon-btn",style:{width:24,height:24},title:`${$.viewerNextChange} (])`,onClick:()=>Y.current?.nextChange(),children:(0,a.jsx)(u.Cd,{size:12})})]}),N&&(0,a.jsx)("button",{type:"button",className:"icon-btn",style:{width:24,height:24},title:$.fileReference,onClick:()=>N(ee.path),children:(0,a.jsx)(u.o_,{size:13})}),C&&(0,a.jsx)("button",{type:"button",className:"icon-btn",style:{width:24,height:24},title:$.fileOpenEditor,onClick:()=>C(ee.path),children:(0,a.jsx)(u.lx,{size:13})})]}),ef&&(0,a.jsx)("div",{className:"pw-viewer-notice","data-kind":K?.notice,children:ef}),K?.truncated&&(0,a.jsx)("div",{className:"pw-viewer-notice","data-kind":"warn",children:"diff"===M?$.viewerPatchTruncated:$.filePreviewTruncated}),es?(0,a.jsxs)("div",{className:"min-h-0 flex-1 overflow-auto","data-testid":"viewer-dir",children:[(0,a.jsx)("div",{className:"px-3 py-2",style:{fontSize:11.5,color:"var(--dsw-label-caption)"},children:$.viewerDirHint.replace("{n}",String(q?.entries.length??0))}),q?.entries.map(e=>(0,a.jsxs)("button",{type:"button",className:"flex w-full items-center gap-2 px-3 py-1.5 text-left hover:bg-[var(--dsw-hover)]",onClick:()=>"dir"===e.kind?k(`${er.replace(/\/+$/,"")}/${e.name}`,{kind:"dir",lazy:!0}):k(`${er.replace(/\/+$/,"")}/${e.name}`,{lazy:!0}),children:[(0,a.jsx)("img",{className:"pw-tree-icon",src:"dir"===e.kind?"/file-icons/folder-close.svg":(0,f.s)(e.name),alt:""}),(0,a.jsx)("span",{className:"min-w-0 flex-1 truncate",style:{fontSize:12.5,fontFamily:"dir"===e.kind?"inherit":"var(--font-mono)"},children:e.name}),"file"===e.kind&&void 0!==e.size&&(0,a.jsxs)("span",{style:{fontSize:11,color:"var(--dsw-label-caption)",fontVariantNumeric:"tabular-nums"},children:[e.size," B"]})]},e.name)),q?.nextOffset?(0,a.jsx)("button",{type:"button",className:"pw-chip mx-3 my-2",onClick:()=>void eo(),children:$.viewerDirMore}):null]}):K&&K.key===`${ee.path}|${M}|${ea?.from??""}|${ea?.to??""}|${et?.status??""}`?K.error?(0,a.jsx)("div",{className:"flex min-h-0 flex-1 items-center justify-center",style:{fontSize:12.5,color:"var(--dsw-danger)"},children:K.error}):"missing"===K.notice?(0,a.jsx)("div",{className:"flex min-h-0 flex-1 items-center justify-center",style:{fontSize:12.5,color:"var(--dsw-label-caption)"},children:$.viewerMissing}):K.binary?(0,a.jsx)("div",{className:"flex min-h-0 flex-1 items-center justify-center",style:{fontSize:12.5,color:"var(--dsw-label-caption)"},children:$.fileBinary}):K.diff?(0,a.jsx)(p,{lines:K.diff,language:(0,c.f3)(ee.path),folded:L,handle:Y,initialChange:!0}):"render"===M&&null!==K.content?(0,a.jsx)("div",{className:"md min-h-0 flex-1 overflow-auto px-6 py-4",style:{fontSize:14},children:(0,a.jsx)(i.oz,{remarkPlugins:[s.A],rehypePlugins:[[r.A,{detect:!1,ignoreMissing:!0}]],children:K.content})}):null!==K.content?(0,a.jsx)(g,{content:K.content,name:ee.path}):null:(0,a.jsx)("div",{className:"flex min-h-0 flex-1 items-center justify-center",style:{fontSize:12.5,color:"var(--dsw-label-caption)"},children:$.panelLoading})]}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("div",{className:"pw-viewer-toolbar hairline-b",children:[(0,a.jsxs)("div",{className:"flex min-w-0 flex-1 items-center gap-1.5 rounded-lg px-2",style:{background:"var(--dsw-hover)",height:26,maxWidth:360},children:[(0,a.jsx)(u.FG,{size:12,style:{flex:"none",color:"var(--dsw-label-caption)"}}),(0,a.jsx)("input",{value:U,onChange:e=>_(e.target.value),placeholder:$.growthFilter,className:"min-w-0 flex-1 bg-transparent",style:{fontSize:12}})]}),(0,a.jsx)("span",{style:{fontSize:11.5,color:"var(--dsw-label-caption)"},children:ep}),(0,a.jsx)("button",{type:"button",className:"pw-chip",onClick:t.expandAll,children:$.growthExpandAll}),(0,a.jsx)("button",{type:"button",className:"pw-chip",onClick:t.collapseAll,children:$.growthCollapseAll})]}),(0,a.jsx)(h.Q,{tree:t.tree,expanded:t.expanded,fresh:t.fresh,filter:U,selectedPath:null,onToggleDir:t.toggleDir,onExpandLazy:t.expandLazy,onOpenFile:e=>k(e.path,{from:e.from,lazy:e.lazy,kind:e.kind}),onReference:N,onOpenEditor:C,revealPath:G?.path??null,revealKey:G?.key,emptyText:$.viewerEmpty})]}),F&&(0,a.jsx)("div",{className:"pw-quick",onMouseDown:e=>e.target===e.currentTarget&&I(!1),children:(0,a.jsxs)("div",{className:"pw-quick-box popover",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 px-2",style:{height:34},children:[(0,a.jsx)(u.FG,{size:14,style:{flex:"none",color:"var(--dsw-label-caption)"}}),(0,a.jsx)("input",{ref:Z,value:A,onChange:e=>{H(e.target.value),P(0)},placeholder:$.viewerQuickOpen,className:"min-w-0 flex-1 bg-transparent",style:{fontSize:13},onKeyDown:e=>{if("ArrowDown"===e.key)e.preventDefault(),P(e=>Math.min(ed.length-1,e+1));else if("ArrowUp"===e.key)e.preventDefault(),P(e=>Math.max(0,e-1));else if("Enter"===e.key){e.preventDefault();let t=ed[O];t&&(k(t),I(!1))}}})]}),(0,a.jsx)("div",{className:"pw-quick-list",children:0===ed.length?(0,a.jsx)("div",{style:{fontSize:12.5,color:"var(--dsw-label-caption)",padding:"8px 10px"},children:$.viewerQuickOpenEmpty}):ed.map((e,t)=>(0,a.jsxs)("button",{type:"button",className:"pw-quick-item","data-active":t===O,onMouseEnter:()=>P(t),onClick:()=>{k(e),I(!1)},children:[(0,a.jsx)("img",{className:"pw-tree-icon",src:(0,f.s)(e.split("/").pop()??e),alt:""}),(0,a.jsx)("span",{className:"truncate",children:e.split("/").pop()}),(0,a.jsx)("span",{className:"min-w-0 truncate",style:{color:"var(--dsw-label-caption)",fontSize:11.5},children:e})]},e))})]})})]})})}}}]);