@seqyuan/annovibe 0.8.130 → 0.8.133
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.
- package/.next/BUILD_ID +1 -1
- package/.next/app-path-routes-manifest.json +13 -12
- package/.next/build-manifest.json +2 -2
- package/.next/prerender-manifest.json +3 -3
- package/.next/required-server-files.js +1 -1
- package/.next/required-server-files.json +1 -1
- package/.next/routes-manifest.json +8 -0
- package/.next/server/app/_global-error/page.js +2 -2
- package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_global-error.html +1 -1
- package/.next/server/app/_global-error.rsc +1 -1
- package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/_not-found/page.js +2 -2
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_not-found.html +1 -1
- package/.next/server/app/_not-found.rsc +2 -2
- package/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
- package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
- package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/api/agent/[id]/events/route.js +2 -2
- package/.next/server/app/api/agent/[id]/prepare/route.js +1 -1
- package/.next/server/app/api/agent/[id]/route.js +1 -1
- package/.next/server/app/api/agent/new/route.js +1 -1
- package/.next/server/app/api/agent/running/events/route.js +2 -2
- package/.next/server/app/api/agent/running/route.js +1 -1
- package/.next/server/app/api/agent/runtime/route.js +1 -1
- package/.next/server/app/api/apps/[id]/[[...path]]/route.js +2 -2
- package/.next/server/app/api/apps/route.js +2 -2
- package/.next/server/app/api/auth/all-providers/route.js +1 -1
- package/.next/server/app/api/auth/api-key/[provider]/route.js +1 -1
- package/.next/server/app/api/auth/login/[provider]/route.js +1 -1
- package/.next/server/app/api/auth/login/route.js +1 -1
- package/.next/server/app/api/auth/logout/[provider]/route.js +1 -1
- package/.next/server/app/api/auth/providers/route.js +1 -1
- package/.next/server/app/api/auth/status/route.js +1 -1
- package/.next/server/app/api/auth/totp/route.js +1 -1
- package/.next/server/app/api/debug-models/route.js +1 -1
- package/.next/server/app/api/default-cwd/route.js +1 -1
- package/.next/server/app/api/file-tree/delete/route.js +1 -1
- package/.next/server/app/api/file-tree/mkdir/route.js +1 -1
- package/.next/server/app/api/file-tree/rename/route.js +1 -1
- package/.next/server/app/api/file-tree/reveal/route.js +1 -1
- package/.next/server/app/api/file-tree/write/route.js +1 -1
- package/.next/server/app/api/file-watch/route.js +2 -2
- package/.next/server/app/api/files/[...path]/route.js +1 -1
- package/.next/server/app/api/harness/route.js +1 -1
- package/.next/server/app/api/home/route.js +1 -1
- package/.next/server/app/api/im/cancel/route.js +1 -1
- package/.next/server/app/api/im/gateway-status/route.js +1 -1
- package/.next/server/app/api/im/gateway-token/route.js +1 -1
- package/.next/server/app/api/im/project/route.js +1 -1
- package/.next/server/app/api/im/projects/route.js +1 -1
- package/.next/server/app/api/im/session-ids/route.js +1 -1
- package/.next/server/app/api/im/turn/route.js +2 -2
- package/.next/server/app/api/images/upload/route.js +1 -1
- package/.next/server/app/api/internal/runtime/route.js +1 -1
- package/.next/server/app/api/memory/dismiss/route.js +2 -2
- package/.next/server/app/api/memory/promote/route.js +2 -2
- package/.next/server/app/api/models/route.js +1 -1
- package/.next/server/app/api/models-config/discover/route.js +1 -1
- package/.next/server/app/api/models-config/route.js +1 -1
- package/.next/server/app/api/models-config/test/route.js +1 -1
- package/.next/server/app/api/plot-kernels/route.js +1 -1
- package/.next/server/app/api/plot-kernels/save/route.js +1 -1
- package/.next/server/app/api/plot-kernels/status/route.js +1 -1
- package/.next/server/app/api/plot-kernels/stop/route.js +1 -1
- package/.next/server/app/api/projects/browse/route.js +1 -1
- package/.next/server/app/api/projects/route.js +1 -1
- package/.next/server/app/api/search/route.js +1 -1
- package/.next/server/app/api/session-index/events/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/auto-name/route.js +34 -0
- package/.next/server/app/api/sessions/[id]/auto-name/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/sessions/[id]/context/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/kernel-state/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/shadowed/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/workbench-artifact/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/workbench-review/route.js +1 -1
- package/.next/server/app/api/sessions/new/route.js +1 -1
- package/.next/server/app/api/sessions/route.js +1 -1
- package/.next/server/app/api/settings/route.js +1 -1
- package/.next/server/app/api/skills/install/route.js +2 -2
- package/.next/server/app/api/skills/route.js +2 -2
- package/.next/server/app/api/skills/search/route.js +1 -1
- package/.next/server/app/api/smoke/prompt-admission/route.js +1 -1
- package/.next/server/app/api/soul/route.js +1 -1
- package/.next/server/app/api/subagents/status/route.js +1 -1
- package/.next/server/app/api/version/route.js +1 -1
- package/.next/server/app/favicon.ico/route.js +1 -1
- package/.next/server/app/icon.svg/route.js +1 -1
- package/.next/server/app/index.html +1 -1
- package/.next/server/app/index.rsc +3 -3
- package/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/index.segments/_full.segment.rsc +3 -3
- package/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/.next/server/app/index.segments/_index.segment.rsc +2 -2
- package/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/login/page.js +2 -2
- package/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/.next/server/app/login.html +1 -1
- package/.next/server/app/login.rsc +2 -2
- package/.next/server/app/login.segments/_full.segment.rsc +2 -2
- package/.next/server/app/login.segments/_head.segment.rsc +1 -1
- package/.next/server/app/login.segments/_index.segment.rsc +2 -2
- package/.next/server/app/login.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/login.segments/login/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/login.segments/login.segment.rsc +1 -1
- package/.next/server/app/page.js +7 -7
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/smoke/page.js +3 -3
- package/.next/server/app/smoke/page_client-reference-manifest.js +1 -1
- package/.next/server/app/smoke/session-stream/page.js +2 -2
- package/.next/server/app/smoke/session-stream/page_client-reference-manifest.js +1 -1
- package/.next/server/app/smoke/session-stream.html +1 -1
- package/.next/server/app/smoke/session-stream.rsc +2 -2
- package/.next/server/app/smoke/session-stream.segments/_full.segment.rsc +2 -2
- package/.next/server/app/smoke/session-stream.segments/_head.segment.rsc +1 -1
- package/.next/server/app/smoke/session-stream.segments/_index.segment.rsc +2 -2
- package/.next/server/app/smoke/session-stream.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/smoke/session-stream.segments/smoke/session-stream/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/smoke/session-stream.segments/smoke/session-stream.segment.rsc +1 -1
- package/.next/server/app/smoke/session-stream.segments/smoke.segment.rsc +1 -1
- package/.next/server/app/smoke.html +2 -2
- package/.next/server/app/smoke.rsc +2 -2
- package/.next/server/app/smoke.segments/_full.segment.rsc +2 -2
- package/.next/server/app/smoke.segments/_head.segment.rsc +1 -1
- package/.next/server/app/smoke.segments/_index.segment.rsc +2 -2
- package/.next/server/app/smoke.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/smoke.segments/smoke/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/smoke.segments/smoke.segment.rsc +1 -1
- package/.next/server/app-paths-manifest.json +13 -12
- package/.next/server/chunks/402.js +2 -2
- package/.next/server/chunks/6429.js +1 -1
- package/.next/server/chunks/7890.js +1 -1
- package/.next/server/middleware-build-manifest.js +1 -1
- package/.next/server/next-font-manifest.js +1 -1
- package/.next/server/next-font-manifest.json +1 -1
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/server/server-reference-manifest.json +1 -1
- package/.next/static/chunks/app/_global-error/page-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/agent/[id]/events/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/agent/[id]/prepare/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/agent/[id]/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/agent/new/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/agent/running/events/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/agent/running/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/agent/runtime/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/apps/[id]/[[...path]]/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/apps/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/auth/all-providers/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/auth/api-key/[provider]/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/auth/login/[provider]/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/auth/login/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/auth/logout/[provider]/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/auth/providers/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/auth/status/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/auth/totp/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/debug-models/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/default-cwd/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/file-tree/delete/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/file-tree/mkdir/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/file-tree/rename/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/file-tree/reveal/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/file-tree/write/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/file-watch/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/files/[...path]/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/harness/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/home/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/im/cancel/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/im/gateway-status/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/im/gateway-token/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/im/project/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/im/projects/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/im/session-ids/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/im/turn/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/images/upload/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/internal/runtime/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/memory/dismiss/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/memory/promote/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/models/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/models-config/discover/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/models-config/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/models-config/test/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/plot-kernels/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/plot-kernels/save/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/plot-kernels/status/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/plot-kernels/stop/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/projects/browse/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/projects/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/search/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/session-index/events/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/context/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/kernel-state/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/shadowed/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/workbench-artifact/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/workbench-review/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/sessions/new/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/sessions/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/settings/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/skills/install/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/skills/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/skills/search/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/smoke/prompt-admission/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/soul/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/subagents/status/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/api/version/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/favicon.ico/route-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/app/{page-252ec85583b84aaa.js → page-130d152615d29de4.js} +9 -9
- package/.next/static/chunks/next/dist/client/components/builtin/app-error-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/forbidden-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/not-found-c47e15c89def27e4.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-c47e15c89def27e4.js +1 -0
- package/.next/static/css/fdfd4d4bcfae3c6a.css +1 -0
- package/package.json +2 -1
- package/.next/static/chunks/app/_global-error/page-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/agent/[id]/events/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/agent/[id]/prepare/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/agent/[id]/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/agent/new/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/agent/running/events/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/agent/running/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/agent/runtime/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/apps/[id]/[[...path]]/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/apps/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/auth/all-providers/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/auth/api-key/[provider]/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/auth/login/[provider]/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/auth/login/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/auth/logout/[provider]/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/auth/providers/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/auth/status/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/auth/totp/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/debug-models/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/default-cwd/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/file-tree/delete/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/file-tree/mkdir/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/file-tree/rename/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/file-tree/reveal/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/file-tree/write/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/file-watch/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/files/[...path]/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/harness/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/home/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/im/cancel/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/im/gateway-status/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/im/gateway-token/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/im/project/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/im/projects/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/im/session-ids/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/im/turn/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/images/upload/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/internal/runtime/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/memory/dismiss/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/memory/promote/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/models/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/models-config/discover/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/models-config/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/models-config/test/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/plot-kernels/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/plot-kernels/save/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/plot-kernels/status/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/plot-kernels/stop/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/projects/browse/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/projects/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/search/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/session-index/events/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/context/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/kernel-state/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/shadowed/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/workbench-artifact/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/workbench-review/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/sessions/new/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/sessions/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/settings/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/skills/install/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/skills/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/skills/search/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/smoke/prompt-admission/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/soul/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/subagents/status/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/api/version/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/app/favicon.ico/route-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/app-error-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/forbidden-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/not-found-12f2c8373df5bb6a.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-12f2c8373df5bb6a.js +0 -1
- package/.next/static/css/98d226d636ddce16.css +0 -1
- /package/.next/static/{pD4GKzugLztRoTHeAKj_C → 4BRGyxt0Mi1_xd_lixFUx}/_buildManifest.js +0 -0
- /package/.next/static/{pD4GKzugLztRoTHeAKj_C → 4BRGyxt0Mi1_xd_lixFUx}/_ssgManifest.js +0 -0
package/.next/server/app/page.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
(()=>{var a={};a.id=8974,a.ids=[8974],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},478:(a,b,c)=>{Promise.resolve().then(c.bind(c,33340))},1708:a=>{"use strict";a.exports=require("node:process")},2798:(a,b,c)=>{let d=c(76708),e=c(95380),f=c(18994),g=c(32835);function h(a,b,c,f,g){let h=[].slice.call(arguments,1),i=h.length,j="function"==typeof h[i-1];if(!j&&!d())throw Error("Callback required as last argument");if(j){if(i<2)throw Error("Too few arguments provided");2===i?(g=c,c=b,b=f=void 0):3===i&&(b.getContext&&void 0===g?(g=f,f=void 0):(g=f,f=c,c=b,b=void 0))}else{if(i<1)throw Error("Too few arguments provided");return 1===i?(c=b,b=f=void 0):2!==i||b.getContext||(f=c,c=b,b=void 0),new Promise(function(d,g){try{let g=e.create(c,f);d(a(g,b,f))}catch(a){g(a)}})}try{let d=e.create(c,f);g(null,a(d,b,f))}catch(a){g(a)}}e.create,b.toCanvas=h.bind(null,f.render),h.bind(null,f.renderToDataURL),h.bind(null,function(a,b,c){return g.render(a,c)})},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},5206:(a,b,c)=>{Promise.resolve().then(c.bind(c,35790))},9709:(a,b,c)=>{"use strict";let d=!0,e=c(74075),f=c(80183);e.deflateSync||(d=!1);let g=c(81769),h=c(42516),i=c(96277),j=c(92858),k=c(83670);a.exports=function(a,b){let c,l,m,n;if(!d)throw Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let o=[],p=new g(a);if(new i(b,{read:p.read.bind(p),error:function(a){c=a},metadata:function(a){l=a},gamma:function(a){m=a},palette:function(a){l.palette=a},transColor:function(a){l.transColor=a},inflateData:function(a){o.push(a)},simpleTransparency:function(){l.alpha=!0}}).start(),p.process(),c)throw c;let q=Buffer.concat(o);if(o.length=0,l.interlace)n=e.inflateSync(q);else{let a=((l.width*l.bpp*l.depth+7>>3)+1)*l.height;n=f(q,{chunkSize:a,maxLength:a})}if(q=null,!n||!n.length)throw Error("bad png - invalid inflate data response");let r=h.process(n,l);q=null;let s=j.dataToBitMap(r,l);r=null;let t=k(s,l);return l.data=t,l.gamma=m||0,l}},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},12097:(a,b)=>{b.Patterns={PATTERN000:0,PATTERN001:1,PATTERN010:2,PATTERN011:3,PATTERN100:4,PATTERN101:5,PATTERN110:6,PATTERN111:7};b.isValid=function(a){return null!=a&&""!==a&&!isNaN(a)&&a>=0&&a<=7},b.from=function(a){return b.isValid(a)?parseInt(a,10):void 0},b.getPenaltyN1=function(a){let b=a.size,c=0,d=0,e=0,f=null,g=null;for(let h=0;h<b;h++){d=e=0,f=g=null;for(let i=0;i<b;i++){let b=a.get(h,i);b===f?d++:(d>=5&&(c+=3+(d-5)),f=b,d=1),(b=a.get(i,h))===g?e++:(e>=5&&(c+=3+(e-5)),g=b,e=1)}d>=5&&(c+=3+(d-5)),e>=5&&(c+=3+(e-5))}return c},b.getPenaltyN2=function(a){let b=a.size,c=0;for(let d=0;d<b-1;d++)for(let e=0;e<b-1;e++){let b=a.get(d,e)+a.get(d,e+1)+a.get(d+1,e)+a.get(d+1,e+1);(4===b||0===b)&&c++}return 3*c},b.getPenaltyN3=function(a){let b=a.size,c=0,d=0,e=0;for(let f=0;f<b;f++){d=e=0;for(let g=0;g<b;g++)d=d<<1&2047|a.get(f,g),g>=10&&(1488===d||93===d)&&c++,e=e<<1&2047|a.get(g,f),g>=10&&(1488===e||93===e)&&c++}return 40*c},b.getPenaltyN4=function(a){let b=0,c=a.data.length;for(let d=0;d<c;d++)b+=a.data[d];return 10*Math.abs(Math.ceil(100*b/c/5)-10)},b.applyMask=function(a,c){let d=c.size;for(let e=0;e<d;e++)for(let f=0;f<d;f++)c.isReserved(f,e)||c.xor(f,e,function(a,c,d){switch(a){case b.Patterns.PATTERN000:return(c+d)%2==0;case b.Patterns.PATTERN001:return c%2==0;case b.Patterns.PATTERN010:return d%3==0;case b.Patterns.PATTERN011:return(c+d)%3==0;case b.Patterns.PATTERN100:return(Math.floor(c/2)+Math.floor(d/3))%2==0;case b.Patterns.PATTERN101:return c*d%2+c*d%3==0;case b.Patterns.PATTERN110:return(c*d%2+c*d%3)%2==0;case b.Patterns.PATTERN111:return(c*d%3+(c+d)%2)%2==0;default:throw Error("bad maskPattern:"+a)}}(a,f,e))},b.getBestMask=function(a,c){let d=Object.keys(b.Patterns).length,e=0,f=1/0;for(let g=0;g<d;g++){c(g),b.applyMask(g,a);let d=b.getPenaltyN1(a)+b.getPenaltyN2(a)+b.getPenaltyN3(a)+b.getPenaltyN4(a);b.applyMask(g,a),d<f&&(f=d,e=g)}return e}},12412:a=>{"use strict";a.exports=require("assert")},17891:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/get-segment-param")},18994:(a,b,c)=>{let d=c(88397);b.render=function(a,b,c){var e;let f=c,g=b;void 0!==f||b&&b.getContext||(f=b,b=void 0),b||(g=function(){try{return document.createElement("canvas")}catch(a){throw Error("You need to specify a canvas element")}}()),f=d.getOptions(f);let h=d.getImageWidth(a.modules.size,f),i=g.getContext("2d"),j=i.createImageData(h,h);return d.qrToImageData(j.data,a,f),e=g,i.clearRect(0,0,e.width,e.height),e.style||(e.style={}),e.height=h,e.width=h,e.style.height=h+"px",e.style.width=h+"px",i.putImageData(j,0,0),g},b.renderToDataURL=function(a,c,d){let e=d;void 0!==e||c&&c.getContext||(e=c,c=void 0),e||(e={});let f=b.render(a,c,e),g=e.type||"image/png",h=e.rendererOpts||{};return f.toDataURL(g,h.quality)}},19099:(a,b,c)=>{"use strict";var d=c(54839);c.o(d,"useRouter")&&c.d(b,{useRouter:function(){return d.useRouter}}),c.o(d,"useSearchParams")&&c.d(b,{useSearchParams:function(){return d.useSearchParams}})},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},19477:(a,b,c)=>{let d=c(58856),e=[1,1,1,1,1,1,1,1,1,1,2,2,1,2,2,4,1,2,4,4,2,4,4,4,2,4,6,5,2,4,6,6,2,5,8,8,4,5,8,8,4,5,8,11,4,8,10,11,4,9,12,16,4,9,16,16,6,10,12,18,6,10,17,16,6,11,16,19,6,13,18,21,7,14,21,25,8,16,20,25,8,17,23,25,9,17,23,34,9,18,25,30,10,20,27,32,12,21,29,35,12,23,34,37,12,25,34,40,13,26,35,42,14,28,38,45,15,29,40,48,16,31,43,51,17,33,45,54,18,35,48,57,19,37,51,60,19,38,53,63,20,40,56,66,21,43,59,70,22,45,62,74,24,47,65,77,25,49,68,81],f=[7,10,13,17,10,16,22,28,15,26,36,44,20,36,52,64,26,48,72,88,36,64,96,112,40,72,108,130,48,88,132,156,60,110,160,192,72,130,192,224,80,150,224,264,96,176,260,308,104,198,288,352,120,216,320,384,132,240,360,432,144,280,408,480,168,308,448,532,180,338,504,588,196,364,546,650,224,416,600,700,224,442,644,750,252,476,690,816,270,504,750,900,300,560,810,960,312,588,870,1050,336,644,952,1110,360,700,1020,1200,390,728,1050,1260,420,784,1140,1350,450,812,1200,1440,480,868,1290,1530,510,924,1350,1620,540,980,1440,1710,570,1036,1530,1800,570,1064,1590,1890,600,1120,1680,1980,630,1204,1770,2100,660,1260,1860,2220,720,1316,1950,2310,750,1372,2040,2430];b.getBlocksCount=function(a,b){switch(b){case d.L:return e[(a-1)*4+0];case d.M:return e[(a-1)*4+1];case d.Q:return e[(a-1)*4+2];case d.H:return e[(a-1)*4+3];default:return}},b.getTotalCodewordsCount=function(a,b){switch(b){case d.L:return f[(a-1)*4+0];case d.M:return f[(a-1)*4+1];case d.Q:return f[(a-1)*4+2];case d.H:return f[(a-1)*4+3];default:return}}},23372:(a,b,c)=>{"use strict";let d=c(28354),e=c(74075),f=c(57949),g=c(27459),h=c(96277),i=c(92858),j=c(83670),k=a.exports=function(a){f.call(this),this._parser=new h(a,{read:this.read.bind(this),error:this._handleError.bind(this),metadata:this._handleMetaData.bind(this),gamma:this.emit.bind(this,"gamma"),palette:this._handlePalette.bind(this),transColor:this._handleTransColor.bind(this),finished:this._finished.bind(this),inflateData:this._inflateData.bind(this),simpleTransparency:this._simpleTransparency.bind(this),headersFinished:this._headersFinished.bind(this)}),this._options=a,this.writable=!0,this._parser.start()};d.inherits(k,f),k.prototype._handleError=function(a){this.emit("error",a),this.writable=!1,this.destroy(),this._inflate&&this._inflate.destroy&&this._inflate.destroy(),this._filter&&(this._filter.destroy(),this._filter.on("error",function(){})),this.errord=!0},k.prototype._inflateData=function(a){if(!this._inflate)if(this._bitmapInfo.interlace)this._inflate=e.createInflate(),this._inflate.on("error",this.emit.bind(this,"error")),this._filter.on("complete",this._complete.bind(this)),this._inflate.pipe(this._filter);else{let a=((this._bitmapInfo.width*this._bitmapInfo.bpp*this._bitmapInfo.depth+7>>3)+1)*this._bitmapInfo.height,b=Math.max(a,e.Z_MIN_CHUNK);this._inflate=e.createInflate({chunkSize:b});let c=a,d=this.emit.bind(this,"error");this._inflate.on("error",function(a){c&&d(a)}),this._filter.on("complete",this._complete.bind(this));let f=this._filter.write.bind(this._filter);this._inflate.on("data",function(a){c&&(a.length>c&&(a=a.slice(0,c)),c-=a.length,f(a))}),this._inflate.on("end",this._filter.end.bind(this._filter))}this._inflate.write(a)},k.prototype._handleMetaData=function(a){this._metaData=a,this._bitmapInfo=Object.create(a),this._filter=new g(this._bitmapInfo)},k.prototype._handleTransColor=function(a){this._bitmapInfo.transColor=a},k.prototype._handlePalette=function(a){this._bitmapInfo.palette=a},k.prototype._simpleTransparency=function(){this._metaData.alpha=!0},k.prototype._headersFinished=function(){this.emit("metadata",this._metaData)},k.prototype._finished=function(){this.errord||(this._inflate?this._inflate.end():this.emit("error","No Inflate block"))},k.prototype._complete=function(a){let b;if(!this.errord){try{let c=i.dataToBitMap(a,this._bitmapInfo);b=j(c,this._bitmapInfo),c=null}catch(a){this._handleError(a);return}this.emit("parsed",b)}}},26713:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/is-bot")},27137:(a,b,c)=>{let d=c(93669),e=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];function f(a){this.mode=d.ALPHANUMERIC,this.data=a}f.getBitsLength=function(a){return 11*Math.floor(a/2)+a%2*6},f.prototype.getLength=function(){return this.data.length},f.prototype.getBitsLength=function(){return f.getBitsLength(this.data.length)},f.prototype.write=function(a){let b;for(b=0;b+2<=this.data.length;b+=2){let c=45*e.indexOf(this.data[b]);c+=e.indexOf(this.data[b+1]),a.put(c,11)}this.data.length%2&&a.put(e.indexOf(this.data[b]),6)},a.exports=f},27459:(a,b,c)=>{"use strict";let d=c(28354),e=c(57949),f=c(27734),g=a.exports=function(a){e.call(this);let b=[],c=this;this._filter=new f(a,{read:this.read.bind(this),write:function(a){b.push(a)},complete:function(){c.emit("complete",Buffer.concat(b))}}),this._filter.start()};d.inherits(g,e)},27734:(a,b,c)=>{"use strict";let d=c(59725),e=c(55211);function f(a,b,c){let d=a*b;return 8!==c&&(d=Math.ceil(d/(8/c))),d}let g=a.exports=function(a,b){let c=a.width,e=a.height,g=a.interlace,h=a.bpp,i=a.depth;if(this.read=b.read,this.write=b.write,this.complete=b.complete,this._imageIndex=0,this._images=[],g){let a=d.getImagePasses(c,e);for(let b=0;b<a.length;b++)this._images.push({byteWidth:f(a[b].width,h,i),height:a[b].height,lineIndex:0})}else this._images.push({byteWidth:f(c,h,i),height:e,lineIndex:0});8===i?this._xComparison=h:16===i?this._xComparison=2*h:this._xComparison=1};g.prototype.start=function(){this.read(this._images[this._imageIndex].byteWidth+1,this._reverseFilterLine.bind(this))},g.prototype._unFilterType1=function(a,b,c){let d=this._xComparison,e=d-1;for(let f=0;f<c;f++){let c=a[1+f],g=f>e?b[f-d]:0;b[f]=c+g}},g.prototype._unFilterType2=function(a,b,c){let d=this._lastLine;for(let e=0;e<c;e++){let c=a[1+e],f=d?d[e]:0;b[e]=c+f}},g.prototype._unFilterType3=function(a,b,c){let d=this._xComparison,e=d-1,f=this._lastLine;for(let g=0;g<c;g++){let c=a[1+g],h=f?f[g]:0,i=Math.floor(((g>e?b[g-d]:0)+h)/2);b[g]=c+i}},g.prototype._unFilterType4=function(a,b,c){let d=this._xComparison,f=d-1,g=this._lastLine;for(let h=0;h<c;h++){let c=a[1+h],i=g?g[h]:0,j=e(h>f?b[h-d]:0,i,h>f&&g?g[h-d]:0);b[h]=c+j}},g.prototype._reverseFilterLine=function(a){let b,c=a[0],d=this._images[this._imageIndex],e=d.byteWidth;if(0===c)b=a.slice(1,e+1);else switch(b=Buffer.alloc(e),c){case 1:this._unFilterType1(a,b,e);break;case 2:this._unFilterType2(a,b,e);break;case 3:this._unFilterType3(a,b,e);break;case 4:this._unFilterType4(a,b,e);break;default:throw Error("Unrecognised filter type - "+c)}this.write(b),d.lineIndex++,d.lineIndex>=d.height?(this._lastLine=null,this._imageIndex++,d=this._images[this._imageIndex]):this._lastLine=b,d?this.read(d.byteWidth+1,this._reverseFilterLine.bind(this)):(this._lastLine=null,this.complete())}},27910:a=>{"use strict";a.exports=require("stream")},28354:a=>{"use strict";a.exports=require("util")},28964:(a,b,c)=>{let d=c(93669);function e(a){this.mode=d.NUMERIC,this.data=a.toString()}e.getBitsLength=function(a){return 10*Math.floor(a/3)+(a%3?a%3*3+1:0)},e.prototype.getLength=function(){return this.data.length},e.prototype.getBitsLength=function(){return e.getBitsLength(this.data.length)},e.prototype.write=function(a){let b,c;for(b=0;b+3<=this.data.length;b+=3)c=parseInt(this.data.substr(b,3),10),a.put(c,10);let d=this.data.length-b;d>0&&(c=parseInt(this.data.substr(b),10),a.put(c,3*d+1))},a.exports=e},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31964:(a,b,c)=>{"use strict";let d=c(55211),e={0:function(a,b,c,d,e){for(let f=0;f<c;f++)d[e+f]=a[b+f]},1:function(a,b,c,d,e,f){for(let g=0;g<c;g++){let c=g>=f?a[b+g-f]:0,h=a[b+g]-c;d[e+g]=h}},2:function(a,b,c,d,e){for(let f=0;f<c;f++){let g=b>0?a[b+f-c]:0,h=a[b+f]-g;d[e+f]=h}},3:function(a,b,c,d,e,f){for(let g=0;g<c;g++){let h=g>=f?a[b+g-f]:0,i=b>0?a[b+g-c]:0,j=a[b+g]-(h+i>>1);d[e+g]=j}},4:function(a,b,c,e,f,g){for(let h=0;h<c;h++){let i=h>=g?a[b+h-g]:0,j=b>0?a[b+h-c]:0,k=b>0&&h>=g?a[b+h-(c+g)]:0,l=a[b+h]-d(i,j,k);e[f+h]=l}}},f={0:function(a,b,c){let d=0,e=b+c;for(let c=b;c<e;c++)d+=Math.abs(a[c]);return d},1:function(a,b,c,d){let e=0;for(let f=0;f<c;f++){let c=f>=d?a[b+f-d]:0;e+=Math.abs(a[b+f]-c)}return e},2:function(a,b,c){let d=0,e=b+c;for(let f=b;f<e;f++){let e=b>0?a[f-c]:0;d+=Math.abs(a[f]-e)}return d},3:function(a,b,c,d){let e=0;for(let f=0;f<c;f++){let g=f>=d?a[b+f-d]:0,h=b>0?a[b+f-c]:0;e+=Math.abs(a[b+f]-(g+h>>1))}return e},4:function(a,b,c,e){let f=0;for(let g=0;g<c;g++){let h=g>=e?a[b+g-e]:0,i=b>0?a[b+g-c]:0,j=b>0&&g>=e?a[b+g-(c+e)]:0;f+=Math.abs(a[b+g]-d(h,i,j))}return f}};a.exports=function(a,b,c,d,g){let h;if("filterType"in d&&-1!==d.filterType)if("number"==typeof d.filterType)h=[d.filterType];else throw Error("unrecognised filter types");else h=[0,1,2,3,4];16===d.bitDepth&&(g*=2);let i=b*g,j=0,k=0,l=Buffer.alloc((i+1)*c),m=h[0];for(let b=0;b<c;b++){if(h.length>1){let b=1/0;for(let c=0;c<h.length;c++){let d=f[h[c]](a,k,i,g);d<b&&(m=h[c],b=d)}}l[j]=m,j++,e[m](a,k,i,l,j,g),j+=i,k+=i}return l}},32835:(a,b,c)=>{let d=c(88397);function e(a,b){let c=a.a/255,d=b+'="'+a.hex+'"';return c<1?d+" "+b+'-opacity="'+c.toFixed(2).slice(1)+'"':d}function f(a,b,c){let d=a+b;return void 0!==c&&(d+=" "+c),d}b.render=function(a,b,c){let g=d.getOptions(b),h=a.modules.size,i=a.modules.data,j=h+2*g.margin,k=g.color.light.a?"<path "+e(g.color.light,"fill")+' d="M0 0h'+j+"v"+j+'H0z"/>':"",l="<path "+e(g.color.dark,"stroke")+' d="'+function(a,b,c){let d="",e=0,g=!1,h=0;for(let i=0;i<a.length;i++){let j=Math.floor(i%b),k=Math.floor(i/b);j||g||(g=!0),a[i]?(h++,i>0&&j>0&&a[i-1]||(d+=g?f("M",j+c,.5+k+c):f("m",e,0),e=0,g=!1),j+1<b&&a[i+1]||(d+=f("h",h),h=0)):e++}return d}(i,h,g.margin)+'"/>',m='<svg xmlns="http://www.w3.org/2000/svg" '+(g.width?'width="'+g.width+'" height="'+g.width+'" ':"")+('viewBox="0 0 '+j+" ")+j+'" shape-rendering="crispEdges">'+k+l+"</svg>\n";return"function"==typeof c&&c(null,m),m}},33340:(a,b,c)=>{"use strict";c.d(b,{AppShell:()=>dA});var d=c(48249),e=c(67484),f=c.n(e),g=c(19099);function h(a,b){let c=b&&a.startsWith(b)?"~"+a.slice(b.length):a,d=c.includes("/")?"/":"\\",e=c.split(d).filter(Boolean);return e.length<=2?c:"..."+d+e.slice(-2).join(d)}function i(a){let b=new Date(a);return Number.isNaN(b.getTime())?"":b.toLocaleString(void 0,{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}function j({open:a,cwd:b,homeDir:c,onClose:f,onSelectSession:g}){let[k,l]=(0,e.useState)(""),[m,n]=(0,e.useState)("current"),[o,p]=(0,e.useState)([]),[q,r]=(0,e.useState)(!1),[s,t]=(0,e.useState)(null),[u,v]=(0,e.useState)(!1),w=(0,e.useRef)(null);if(!a)return null;let x=k.trim(),y=o.reduce((a,b)=>a+b.matches.length,0);return(0,d.jsx)("div",{role:"dialog","aria-modal":"true","aria-label":"Search conversation history",style:{position:"fixed",inset:0,zIndex:500,display:"flex",alignItems:"flex-start",justifyContent:"center",padding:"8vh 16px 16px",background:"rgba(0,0,0,0.28)"},onMouseDown:a=>{a.target===a.currentTarget&&f()},children:(0,d.jsxs)("div",{style:{width:"min(760px, 100%)",maxHeight:"78vh",display:"flex",flexDirection:"column",background:"var(--bg)",border:"1px solid var(--border)",borderRadius:10,boxShadow:"0 16px 48px rgba(0,0,0,0.24)",overflow:"hidden"},children:[(0,d.jsxs)("div",{style:{padding:12,borderBottom:"1px solid var(--border)"},children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8},children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,flex:1,minWidth:0,background:"var(--bg-hover)",border:"1px solid var(--border)",borderRadius:8,padding:"0 10px"},children:[(0,d.jsxs)("svg",{width:"15",height:"15",viewBox:"0 0 16 16",fill:"none",stroke:"var(--text-dim)",strokeWidth:"1.7",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[(0,d.jsx)("circle",{cx:"7",cy:"7",r:"4.5"}),(0,d.jsx)("path",{d:"M10.5 10.5 13.5 13.5"})]}),(0,d.jsx)("input",{ref:w,value:k,onChange:a=>l(a.target.value),placeholder:"Search conversation history...",style:{flex:1,minWidth:0,height:38,background:"transparent",border:"none",outline:"none",color:"var(--text)",fontSize:14}})]}),(0,d.jsx)("button",{type:"button",onClick:f,title:"Close",style:{width:34,height:34,display:"inline-flex",alignItems:"center",justifyContent:"center",background:"none",border:"none",borderRadius:7,color:"var(--text-dim)",cursor:"pointer"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background="none",a.currentTarget.style.color="var(--text-dim)"},children:(0,d.jsxs)("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",children:[(0,d.jsx)("path",{d:"M4 4 12 12"}),(0,d.jsx)("path",{d:"M12 4 4 12"})]})})]}),(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,marginTop:10},children:[(0,d.jsx)("div",{style:{display:"inline-flex",padding:2,background:"var(--bg-hover)",border:"1px solid var(--border)",borderRadius:7},children:[{value:"current",label:"Current project",disabled:!b},{value:"all",label:"All history",disabled:!1}].map(a=>(0,d.jsx)("button",{type:"button",disabled:a.disabled,onClick:()=>n(a.value),style:{height:24,padding:"0 9px",background:m===a.value?"var(--bg-selected)":"transparent",border:"none",borderRadius:5,color:a.disabled?"var(--text-dim)":m===a.value?"var(--text)":"var(--text-muted)",cursor:a.disabled?"not-allowed":"pointer",fontSize:11,fontWeight:500},children:a.label},a.value))}),(0,d.jsx)("div",{style:{flex:1,minWidth:0,color:"var(--text-dim)",fontSize:11,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:"current"===m&&b?h(b,c):"Searching every saved session"})]})]}),(0,d.jsxs)("div",{style:{flex:1,overflowY:"auto",minHeight:180},children:[x.length<2&&(0,d.jsx)("div",{style:{padding:28,textAlign:"center",color:"var(--text-muted)",fontSize:13},children:"Type at least 2 characters to search saved conversations."}),x.length>=2&&q&&0===o.length&&(0,d.jsx)("div",{style:{padding:28,textAlign:"center",color:"var(--text-muted)",fontSize:13},children:"Searching..."}),s&&(0,d.jsx)("div",{style:{padding:18,color:"#ef4444",fontSize:13},children:s}),x.length>=2&&!q&&!s&&0===o.length&&(0,d.jsx)("div",{style:{padding:28,textAlign:"center",color:"var(--text-muted)",fontSize:13},children:"No matching conversations found."}),o.map(a=>(0,d.jsxs)("div",{style:{borderBottom:"1px solid var(--border)"},children:[(0,d.jsxs)("button",{type:"button",onClick:()=>{g(a.session),f()},style:{width:"100%",display:"flex",alignItems:"center",gap:10,padding:"10px 12px",background:"var(--bg-panel)",border:"none",borderBottom:"1px solid var(--border)",color:"var(--text)",cursor:"pointer",textAlign:"left"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.background="var(--bg-panel)"},children:[(0,d.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,minWidth:0},children:[(0,d.jsx)("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontSize:13,fontWeight:600},children:a.session.name||a.session.firstMessage||"(no messages)"}),(0,d.jsx)("span",{style:{flexShrink:0,color:"var(--text-dim)",fontSize:11},children:i(a.session.modified)})]}),(0,d.jsx)("div",{style:{marginTop:2,color:"var(--text-dim)",fontSize:11,fontFamily:"var(--font-mono)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:h(a.session.cwd,c)})]}),a.matchCount>a.matches.length&&(0,d.jsxs)("span",{style:{flexShrink:0,color:"var(--text-muted)",fontSize:11},children:[a.matchCount," matches"]})]}),a.matches.map(b=>(0,d.jsxs)("button",{type:"button",onClick:()=>{g(a.session),f()},style:{width:"100%",padding:"9px 14px 9px 28px",background:"none",border:"none",color:"var(--text-muted)",cursor:"pointer",textAlign:"left"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.background="none"},children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,marginBottom:3},children:[(0,d.jsx)("span",{style:{minWidth:54,color:"user"===b.role?"var(--accent)":"var(--text-dim)",fontSize:11,fontWeight:600,textTransform:"capitalize"},children:b.role}),(0,d.jsx)("span",{style:{color:"var(--text-dim)",fontSize:11},children:i(b.timestamp)})]}),(0,d.jsx)("div",{style:{fontSize:12,lineHeight:1.45,color:"var(--text-muted)"},children:function(a,b){let c=b.trim();if(!c)return a;let e=a.toLowerCase().indexOf(c.toLowerCase());return e<0?a:(0,d.jsxs)(d.Fragment,{children:[a.slice(0,e),(0,d.jsx)("mark",{style:{background:"rgba(37,99,235,0.16)",color:"var(--text)",borderRadius:3,padding:"0 2px"},children:a.slice(e,e+c.length)}),a.slice(e+c.length)]})}(b.snippet,x)})]},b.entryId))]},a.session.id))]}),(0,d.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",padding:"8px 12px",borderTop:"1px solid var(--border)",color:"var(--text-dim)",fontSize:11},children:[(0,d.jsx)("span",{children:y>0?`${y}${u?"+":""} results`:"Esc to close"}),q&&o.length>0&&(0,d.jsx)("span",{children:"Updating..."})]})]})})}let k="Home";function l(a){return a instanceof Error?a.message:String(a)}function m(a,b){let c=a.crumbs.findIndex(b=>b.path===a.home);if(-1===c)return a.crumbs;let d=a.crumbs.slice(c+1);return[{name:b,path:a.home},...d]}function n(a){return a.home.includes("\\")?"\\":"/"}let o={display:"flex",flexDirection:"column",gap:2,flex:"1 1 0",minWidth:256,overflowY:"auto",paddingRight:8},p={width:"100%",display:"flex",alignItems:"center",gap:5,height:28,flex:"none",padding:"0 6px",border:"none",borderRadius:6,background:"transparent",textAlign:"left",cursor:"pointer",color:"var(--text)",fontSize:12.5,fontFamily:"inherit"},q={background:"var(--bg-selected)"},r={flex:"1 1 0",minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontSize:12.5};function s({entries:a,selectedPath:b,busy:c,onPick:e,showHidden:f,filterPrefix:g}){let h,i,j,k=(h=null===g?"":g.toLowerCase(),i=a=>(f||!a.hidden||h.startsWith("."))&&a.name.toLowerCase().startsWith(h),j=""!==h&&a.some(i),a.filter(a=>a.path===b||(j?i(a):f||!a.hidden)));return(0,d.jsx)("div",{style:o,role:"list",children:k.map(a=>{let f=a.path===b;return(0,d.jsxs)("button",{type:"button",role:"listitem","aria-current":f||void 0,disabled:c,onClick:()=>e(a),title:a.path,style:{...p,...f?q:null},children:[(0,d.jsx)("svg",{width:"15",height:"15",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0,color:f?"var(--accent)":"var(--text-muted)"},children:(0,d.jsx)("path",{d:"M3 6.5A2.5 2.5 0 0 1 5.5 4H10l2 2.5h6.5A2.5 2.5 0 0 1 21 9v8.5A2.5 2.5 0 0 1 18.5 20h-13A2.5 2.5 0 0 1 3 17.5v-11Z"})}),(0,d.jsx)("span",{style:r,children:a.name}),(0,d.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0,color:"var(--text-dim)"},children:(0,d.jsx)("polyline",{points:"3.5 2 6.5 5 3.5 8"})})]},a.path)})})}function t({open:a,initialPath:b,onClose:c,onSelect:f}){let[g,h]=(0,e.useState)(null),[i,j]=(0,e.useState)(null),[o,p]=(0,e.useState)(null),[q,r]=(0,e.useState)(!1),[u,v]=(0,e.useState)(!1),[w,x]=(0,e.useState)(0),[y,z]=(0,e.useState)(null),[A,B]=(0,e.useState)(null),[C,D]=(0,e.useState)(!1),[E,F]=(0,e.useState)(null),[G,H]=(0,e.useState)(!1),[I,J]=(0,e.useState)(null),K=(0,e.useRef)(0),L=(0,e.useRef)(null),M=(0,e.useRef)(0),N=(0,e.useRef)(!1),O=(0,e.useRef)(!1),P=(0,e.useRef)(null);(0,e.useRef)({parent:null,child:null});let Q=(0,e.useRef)(null),R=(0,e.useRef)(null),S=(0,e.useCallback)((a,b)=>fetch(a?`/api/projects/browse?dir=${encodeURIComponent(a)}`:"/api/projects/browse",{signal:b}).then(async a=>{let b=await a.json();if(!a.ok||b.error)throw Error(b.error??`HTTP ${a.status}`);return b}),[]),T=(0,e.useCallback)(()=>(L.current?.abort(),L.current=null,++K.current),[]),U=(0,e.useCallback)(()=>{v(!1),x(a=>a+1)},[]),V=(0,e.useCallback)(a=>{let b=T(),c=new AbortController;return L.current=c,U(),{seq:b,scan:S(a,c.signal)}},[T,U,S]),W=(0,e.useCallback)(a=>{let b=new AbortController;return L.current=b,U(),S(a,b.signal)},[U,S]),X=(0,e.useCallback)((a,b)=>{let c=b?.closeEditor??!1,d=b?.announce??!1,{seq:e,scan:f}=V(a);r(!0),d&&z(null);let g=()=>{(r(!1),c)?B(null):z(null)};f.then(b=>{if(e!==K.current)return;c||void 0===a||(P.current={directory:a,landed:b.current});let d=!1,f=()=>{d||e!==K.current||(d=!0,h(b),j(null),p(null),g())};if(m(b,"").length<2)return void f();let i=b.crumbs.at(-2);void 0===i?f():(W(i.path).then(a=>{if(e!==K.current)return;let c=n(a),i=a=>"\\"===c?a.toLowerCase():a,k=a.directories.find(a=>i(a.path)===i(b.current));void 0===k?f():(d=!0,h(a),j(k),p(b),g())},()=>{f()}),c&&window.setTimeout(f,200))},a=>{e===K.current&&(r(!1),d&&z(l(a)))})},[V,W]),Y=(0,e.useCallback)(a=>{X(a,{closeEditor:!0,announce:!0})},[X]),Z=(0,e.useCallback)(a=>{let{seq:b,scan:c}=V(a.path);null!==A&&B(null),j(a),p(null),r(!0),z(null),c.then(a=>{b===K.current&&(p(a),r(!1))},a=>{b===K.current&&(r(!1),z(l(a)),j(null))})},[V,A]),$=(0,e.useCallback)(a=>{null!==o&&(h(o),Z(a))},[o,Z]);(0,e.useCallback)(a=>{X(a,{closeEditor:!1,announce:!1})},[X]);let _=(0,e.useCallback)(()=>{T(),r(!1),B(null),z(null),null===o&&j(null),null===g&&Y()},[T,o,g,Y]),aa=o??g,ab=null===aa?[]:m(aa,k);ab.at(-1)?.path,o?.current;let ac=i?.path??g?.current??null,ad=(0,e.useCallback)(()=>{if(null===ac||null===E||G||""===E.trim())return;H(!0),J(null);let a=M.current;fetch("/api/projects/browse",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({dir:ac,name:E})}).then(async a=>{let b=await a.json();if(!a.ok||b.error)throw Error(b.error??`HTTP ${a.status}`);if("string"!=typeof b.path)throw Error("No path returned");return b.path}).then(b=>{if(a!==M.current)return;H(!1),F(null);let{seq:c,scan:d}=V(ac);r(!0),z(null),d.then(a=>{c===K.current&&(h(a),r(!1),Z({name:E,path:b,hidden:E.startsWith(".")}))},a=>{c===K.current&&(r(!1),z(l(a)))})},b=>{a===M.current&&(H(!1),J(l(b)))})},[ac,E,G,V,Z]),ae={onCompositionStart:()=>{N.current=!0},onCompositionEnd:()=>{N.current=!1}};if(!a)return null;let af=null!==i,ag=null===aa||null===A?null:function(a,b,c){let d,e,f=-1===(d="\\"===n(a)?Math.max(b.lastIndexOf("\\"),b.lastIndexOf("/")):b.lastIndexOf("/"))?null:b.slice(0,d+1);if(null===f)return{directory:null,tail:null};let g=f===(e=n(a),a.current.endsWith(e)?a.current:`${a.current}${e}`)||null!==c&&c.directory===f&&c.landed===a.current;return{directory:f,tail:g?b.slice(f.length):null}}(aa,A,P.current).tail,ah=i?.name??(null===g?"":m(g,k).at(-1)?.name??g.current),ai=null!==E||G,aj=null!==A,ak=aa?.drives??[],al=aa?n(aa):"/";return(0,d.jsxs)("div",{onMouseDown:a=>{a.target===a.currentTarget&&c()},style:{position:"fixed",inset:0,zIndex:1200,display:"flex",alignItems:"center",justifyContent:"center",padding:18,background:"rgba(0,0,0,0.34)"},children:[(0,d.jsxs)("div",{style:{width:"min(680px, 100%)",height:"min(500px, calc(100dvh - 32px))",display:"flex",flexDirection:"column",background:"var(--bg)",border:"1px solid var(--border)",borderRadius:10,boxShadow:"0 12px 40px rgba(0,0,0,0.25)",overflow:"hidden"},children:[(0,d.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:8,flex:"none",padding:"16px 14px 8px 24px",borderBottom:"1px solid var(--border)"},children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",minHeight:24},children:[(0,d.jsx)("div",{style:{color:"var(--text)",fontSize:15,fontWeight:700},children:"Select project path"}),(0,d.jsx)("button",{type:"button",onClick:c,"aria-label":"Close",title:"Close",style:{width:28,height:28,border:"none",borderRadius:6,background:"transparent",color:"var(--text-muted)",cursor:"pointer",fontSize:18,lineHeight:1},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background="transparent",a.currentTarget.style.color="var(--text-muted)"},children:"\xd7"})]}),(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:4,boxSizing:"border-box",minHeight:26,marginLeft:-9,padding:"0 8px",border:`1px solid ${null!==A?"var(--border)":"transparent"}`,borderRadius:8},children:[ak.length>0&&(0,d.jsxs)("select",{value:ak.find(a=>(aa?.current??"").toLowerCase().startsWith(a.toLowerCase()))??"",onChange:a=>{a.target.value&&Y(a.target.value)},disabled:ai,title:"Drive",style:{height:24,border:"1px solid var(--border)",borderRadius:6,background:"var(--bg)",color:"var(--text-muted)",fontSize:11,maxWidth:72},children:[(0,d.jsx)("option",{value:"",children:"Drive"}),ak.map(a=>(0,d.jsx)("option",{value:a,children:a},a))]}),null===A?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("span",{ref:Q,role:"navigation",style:{display:"flex",alignItems:"center",gap:4,flex:"0 1 auto",minWidth:0,overflowX:"auto",scrollbarWidth:"none"},children:ab.map((a,b)=>(0,d.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:4,flex:"none",minWidth:0},children:[b>0&&(0,d.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0,color:"var(--text-dim)"},children:(0,d.jsx)("polyline",{points:"3.5 2 6.5 5 3.5 8"})}),(0,d.jsx)("button",{type:"button",disabled:ai,onClick:()=>Y(a.path),title:a.path,style:{border:"none",background:"transparent",padding:0,maxWidth:160,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontFamily:"var(--font-mono)",fontSize:12,color:"var(--text-muted)",cursor:"pointer"},children:a.name})]},a.path))}),(0,d.jsx)("button",{type:"button","aria-label":"Edit path",title:"Edit path",disabled:ai,onClick:()=>{if(T(),r(!1),O.current=!1,null===g)return void B("");let a=i?.path??g.current;B(a.endsWith(al)?a:`${a}${al}`)},style:{display:"flex",alignItems:"center",justifyContent:"flex-end",flex:"1 0 34px",minWidth:34,height:22,padding:0,border:"none",background:"transparent",cursor:"text"},children:(0,d.jsx)("svg",{width:"13",height:"13",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",style:{color:"var(--text-dim)"},children:(0,d.jsx)("path",{d:"M11.3 2.2a1.9 1.9 0 0 1 2.5 2.5L6 12.5 2.5 13.5 3.5 10l7.8-7.8Z"})})})]}):(0,d.jsx)("input",{value:A,autoFocus:!0,"aria-label":"Edit path",disabled:ai,spellCheck:!1,onChange:a=>{T(),r(!1),O.current=!1,B(a.target.value)},...ae,onKeyDown:a=>{"Enter"!==a.key||N.current||(a.preventDefault(),""!==A.trim()&&(O.current=!0,Y(A)))},onBlur:a=>{if(null===A||!document.hasFocus())return;let b=a.currentTarget.closest('[role="dialog"]');null===b||a.relatedTarget instanceof Node&&b.contains(a.relatedTarget)||_()},style:{boxSizing:"border-box",flex:"1 1 0",minWidth:0,height:22,padding:0,border:"none",outline:"none",background:"transparent",fontFamily:"var(--font-mono)",fontSize:12,color:"var(--text)"}})]})]}),(0,d.jsxs)("div",{style:{display:"flex",flexDirection:"column",flex:"1 1 0",minHeight:0,position:"relative",padding:"16px 16px 16px 24px"},children:[(0,d.jsxs)("div",{ref:R,style:{display:"flex",alignItems:"stretch",flex:"1 1 0",minHeight:0,gap:12,overflowX:"auto",scrollbarWidth:"none"},children:[null!==g&&(0,d.jsx)(s,{entries:g.directories,selectedPath:i?.path??null,busy:ai,onPick:Z,showHidden:C,filterPrefix:null===o?ag:null}),af&&(0,d.jsx)("span",{style:{flex:"none",width:1,background:"var(--border)"}}),af&&null!==o&&(0,d.jsx)(s,{entries:o.directories,selectedPath:null,busy:ai,onPick:$,showHidden:C,filterPrefix:ag})]}),q&&u&&(0,d.jsx)("div",{role:"status",style:{position:"absolute",right:16,bottom:8,padding:"2px 8px",background:"var(--bg-panel)",border:"1px solid var(--border)",borderRadius:6,color:"var(--text-muted)",fontSize:11},children:"Loading…"}),(g?.truncated===!0||o?.truncated===!0)&&(0,d.jsx)("div",{role:"status",style:{padding:"4px 4px 4px 0",color:"var(--text-muted)",fontSize:11},children:"Large directory — list may be incomplete"}),null!==y&&(0,d.jsx)("div",{role:"alert",style:{padding:"4px 4px 4px 0",color:"#f87171",fontSize:11},children:y})]}),(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",flexWrap:"wrap",gap:8,flex:"none",padding:"14px 24px",borderTop:"1px solid var(--border)"},children:[(0,d.jsxs)("button",{type:"button",disabled:null===g||q||ai||aj,onClick:()=>{F(""),J(null)},style:{display:"inline-flex",alignItems:"center",gap:5,height:30,padding:"0 10px",border:"1px solid var(--border)",borderRadius:6,background:"var(--bg-panel)",color:null===g||q||ai||aj?"var(--text-dim)":"var(--text-muted)",cursor:null===g||q||ai||aj?"default":"pointer",fontSize:12},children:[(0,d.jsx)("svg",{width:"12",height:"12",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round",children:(0,d.jsx)("path",{d:"M8 3v10M3 8h10"})}),"New folder"]}),(0,d.jsxs)("button",{type:"button","aria-pressed":C,disabled:ai,onClick:()=>D(a=>!a),style:{display:"inline-flex",alignItems:"center",gap:4,border:"none",background:"transparent",padding:0,fontSize:12,fontWeight:500,color:C?"var(--text)":"var(--text-muted)",cursor:"pointer",whiteSpace:"nowrap"},children:["Show hidden files",C&&(0,d.jsx)("svg",{width:"11",height:"11",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:(0,d.jsx)("polyline",{points:"2.5 8.5 6 12 13.5 4.5"})})]}),(0,d.jsx)("div",{style:{flex:"1 1 0"}}),(0,d.jsx)("button",{type:"button",onClick:c,style:{height:32,padding:"0 12px",border:"1px solid var(--border)",borderRadius:6,background:"var(--bg-panel)",color:"var(--text-muted)",cursor:"pointer",fontSize:12},children:"Cancel"}),(0,d.jsx)("button",{type:"button",disabled:null===ac||q||ai||aj,onClick:()=>{null!==ac&&f(ac)},style:{height:32,padding:"0 14px",border:"none",borderRadius:6,background:null===ac||q||ai||aj?"var(--bg-hover)":"var(--accent)",color:null===ac||q||ai||aj?"var(--text-dim)":"#fff",cursor:null===ac||q||ai||aj?"default":"pointer",fontSize:12,fontWeight:650},children:"Open"})]})]}),null!==E&&(0,d.jsx)("div",{onMouseDown:a=>{a.target!==a.currentTarget||G||F(null)},style:{position:"fixed",inset:0,zIndex:1300,display:"flex",alignItems:"center",justifyContent:"center",background:"rgba(0,0,0,0.25)"},children:(0,d.jsxs)("div",{style:{width:"min(380px, 100%)",display:"flex",flexDirection:"column",gap:12,padding:"20px 24px",background:"var(--bg)",border:"1px solid var(--border)",borderRadius:10,boxShadow:"0 12px 40px rgba(0,0,0,0.3)"},children:[(0,d.jsx)("div",{style:{color:"var(--text)",fontSize:15,fontWeight:700},children:"New folder"}),(0,d.jsxs)("div",{style:{color:"var(--text)",fontSize:12.5},children:["in ",(0,d.jsx)("span",{style:{fontFamily:"var(--font-mono)",color:"var(--text-muted)"},children:ah})]}),(0,d.jsx)("input",{value:E,"aria-label":"Folder name",placeholder:"untitled folder",autoFocus:!0,disabled:G,spellCheck:!1,onChange:a=>F(a.target.value),...ae,onKeyDown:a=>{"Enter"!==a.key||N.current||(a.preventDefault(),ad()),"Escape"!==a.key||G||(a.stopPropagation(),F(null))},style:{boxSizing:"border-box",width:"100%",height:36,padding:"0 12px",border:"1px solid var(--border)",borderRadius:8,outline:"none",background:"var(--bg-panel)",fontSize:13,color:"var(--text)"}}),null!==I&&(0,d.jsx)("div",{role:"alert",style:{color:"#f87171",fontSize:11},children:I}),(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"flex-end",gap:8},children:[(0,d.jsx)("button",{type:"button",disabled:G,onClick:()=>F(null),style:{height:30,padding:"0 12px",border:"1px solid var(--border)",borderRadius:6,background:"var(--bg-panel)",color:"var(--text-muted)",cursor:"pointer",fontSize:12},children:"Cancel"}),(0,d.jsx)("button",{type:"button",disabled:G||""===E.trim(),onClick:ad,style:{height:30,padding:"0 14px",border:"none",borderRadius:6,background:G||""===E.trim()?"var(--bg-hover)":"var(--accent)",color:G||""===E.trim()?"var(--text-dim)":"#fff",cursor:G||""===E.trim()?"default":"pointer",fontSize:12,fontWeight:650},children:G?"Creating…":"Create"})]})]})})]})}let u="AnnoVibe";function v(a){}async function w(a,b){let c=`${a}: HTTP ${b.status}`;try{let d=await b.json();return"string"==typeof d.error&&d.error?`${a}: ${d.error}`:c}catch{return c}}function x(a){return new DOMException(a,"TimeoutError")}function y(a,b){return a instanceof DOMException&&("AbortError"===a.name||"TimeoutError"===a.name)||a instanceof Error&&/aborted without reason|AbortError/i.test(a.message)?b:a instanceof Error?a.message:String(a)}function z(a){let b=new Date(a),c=new Date().getTime()-b.getTime(),d=Math.floor(c/6e4),e=Math.floor(c/36e5),f=Math.floor(c/864e5);return d<1?"just now":d<60?`${d}m ago`:e<24?`${e}h ago`:f<7?`${f}d ago`:b.toLocaleDateString()}function A(a,b){let c=b&&a.startsWith(b)?"~"+a.slice(b.length):a,d=c.includes("/")?"/":"\\",e=c.split(d).filter(Boolean);return e.length<=2?c:"…/"+e.slice(-2).join(d)}function B(a,b){if(!a)return"No Project";let c=a.replace(/[\\/]+$/,""),d=c.includes("/")?"/":"\\";return c.split(d).filter(Boolean).pop()||A(a,b)}function C(){let[a,b]=(0,e.useState)(!1),[c,f]=(0,e.useState)(!1),g=(0,e.useRef)(null),h=function(a){let[b,c]=(0,e.useState)(a);return(0,e.useRef)(null),(0,e.useRef)(0),b}(a?"v0.8.130":u),i=(0,e.useCallback)(a=>{b(a),f(!0),setTimeout(()=>f(!1),(a?6:8)*4*(1e3/60)+100)},[]),j=(0,e.useCallback)(()=>{g.current&&clearTimeout(g.current);let b=!a;i(b),b&&(g.current=setTimeout(()=>i(!1),3e3))},[a,i]);return(0,d.jsx)("button",{onClick:j,style:{background:"none",border:"none",padding:0,cursor:"default",fontWeight:700,fontSize:15,letterSpacing:"-0.01em",color:a?"var(--accent)":"var(--text)",fontFamily:"var(--font-mono)",minWidth:"9ch"},children:h})}function D({selectedSessionId:a,onSelectSession:b,onNewSession:c,onNewWorkbench:f,initialSessionId:g,onInitialRestoreDone:h,refreshKey:i,onSessionDeleted:k,selectedCwd:l,onCwdChange:m}){let[n,o]=(0,e.useState)([]),[p,q]=(0,e.useState)({}),[r,s]=(0,e.useState)(()=>new Set),u=(0,e.useRef)(!1),[z,J]=(0,e.useState)(!0),[K,L]=(0,e.useState)(!1),[M,N]=(0,e.useState)(null),[O,P]=(0,e.useState)(null),[Q,R]=(0,e.useState)(""),[S,T]=(0,e.useState)(null),[U,V]=(0,e.useState)(!1),[W,X]=(0,e.useState)("project"),[Y,Z]=(0,e.useState)(null),[$,_]=(0,e.useState)(!1),[aa,ab]=(0,e.useState)(!1),[ac,ad]=(0,e.useState)(()=>new Set),[ae,af]=(0,e.useState)(()=>new Set),[ag,ah]=(0,e.useState)(null),[ai,aj]=(0,e.useState)(null),[ak,al]=(0,e.useState)(null),[am,an]=(0,e.useState)(!1),ao=(0,e.useRef)(null),ap=(0,e.useRef)(!1),aq=(0,e.useRef)(!1);(0,e.useRef)(!1);let ar=(0,e.useRef)(new Map),as=(0,e.useRef)({revision:null,seq:0,retry:0,inFlight:!1}),at=(0,e.useRef)({}),au=(0,e.useRef)({}),av=(0,e.useRef)({}),aw=(0,e.useRef)(new Set);function ax(a){let b=at.current[a];return b||(b={revision:null,seq:0,retry:0,inFlight:!1},at.current[a]=b),b}let ay=(0,e.useCallback)((a,b,c)=>{let d=au.current[a];d&&clearTimeout(d),au.current[a]=setTimeout(()=>{au.current[a]=null,c()},Math.random()*([250,500,1e3,2e3][Math.min(Math.max(b,0),3)]??2e3))},[]);(0,e.useCallback)((a,b)=>{let c=av.current[a];c&&clearTimeout(c),av.current[a]=setTimeout(()=>{av.current[a]=null,b()},120)},[]);let az=(0,e.useCallback)(async(a=!1,b={})=>{let c=as.current,d=++c.seq;c.inFlight=!0;try{let e;a&&J(!0);let f=new AbortController;try{e=setTimeout(()=>f.abort(x("Project loading timed out")),6e4);let a=b.force?"/api/projects?force=1":"/api/projects",g=await fetch(a,{signal:f.signal});if(!g.ok)throw Error(await w("projects",g));let h=await g.json();if(d!==c.seq)return;if(h.stale)return void ay("projects",c.retry++,()=>void az(!1));c.retry=0,h.revision&&(c.revision=h.revision),o(h.projects),N(null)}finally{clearTimeout(e)}}catch(a){if(d!==c.seq)return;N(y(a,"Loading projects timed out. Codex may still be starting; click Refresh to retry.")),ay("projects",c.retry++,()=>void az(!1))}finally{d===c.seq&&(c.inFlight=!1),a&&J(!1)}},[ay]),aA=(0,e.useCallback)(async(a,b=!1,c={})=>{if(!a)return;let d=ar.current.get(a);if(d)return d;let e=(async()=>{let d=ax(a),e=++d.seq;d.inFlight=!0,q(b=>({...b,[a]:{sessions:b[a]?.sessions??[],loaded:b[a]?.loaded??!1,error:null,loading:!0,stale:b[a]?.stale??!1}}));try{let f;b&&J(!0);let g=new AbortController;try{f=setTimeout(()=>g.abort(x("Chat loading timed out")),6e4);let b=c.force?`/api/sessions?cwd=${encodeURIComponent(a)}&force=1`:`/api/sessions?cwd=${encodeURIComponent(a)}`,h=await fetch(b,{signal:g.signal});if(!h.ok)throw Error(await w("sessions",h));let i=await h.json();if(e!==d.seq)return;if(i.runningSessionIds&&!u.current&&s(new Set(i.runningSessionIds)),i.stale){q(b=>({...b,[a]:{sessions:b[a]?.sessions??[],loaded:b[a]?.loaded??!1,loading:!1,error:null,stale:(b[a]?.sessions?.length??0)>0}})),ay(`cwd:${a}`,d.retry++,()=>void aA(a,!1));return}d.retry=0,i.revision&&(d.revision=i.revision),aw.current.add(a),q(b=>({...b,[a]:{sessions:i.sessions,loaded:!0,loading:!1,error:null,stale:!1}}))}finally{clearTimeout(f)}}catch(c){if(e!==d.seq)return;let b=y(c,"Loading chats timed out. Codex may still be starting; click Refresh to retry.");q(c=>({...c,[a]:{sessions:c[a]?.sessions??[],loaded:c[a]?.loaded??!1,loading:!1,error:b,stale:(c[a]?.sessions?.length??0)>0}})),ay(`cwd:${a}`,d.retry++,()=>void aA(a,!1))}finally{e===d.seq&&(d.inFlight=!1),b&&J(!1),ar.current.delete(a)}})();return ar.current.set(a,e),e},[ay]),aB=(0,e.useCallback)(async()=>{let a=as.current;if(a.inFlight)return;let b=a.revision?`/api/projects?fingerprint=1&revision=${encodeURIComponent(a.revision)}`:"/api/projects?fingerprint=1";try{let c=await fetch(b);if(!c.ok)throw Error(await w("projects",c));let d=await c.json();if(d.stale)return void ay("projects",a.retry++,()=>void aB());if(!0===d.unchanged)return;az(!1)}catch{ay("projects",a.retry++,()=>void aB())}},[az,ay]),aC=(0,e.useCallback)(async a=>{let b=ax(a);if(b.inFlight)return;let c=b.revision?`/api/sessions?cwd=${encodeURIComponent(a)}&fingerprint=1&revision=${encodeURIComponent(b.revision)}`:`/api/sessions?cwd=${encodeURIComponent(a)}&fingerprint=1`;try{let d=await fetch(c);if(!d.ok)throw Error(await w("sessions",d));let e=await d.json();if(e.stale)return void ay(`cwd:${a}`,b.retry++,()=>void aC(a));if(!0===e.unchanged)return;aA(a,!1)}catch{ay(`cwd:${a}`,b.retry++,()=>void aC(a))}},[aA,ay]);(0,e.useRef)(!1),(0,e.useRef)(!1);let aD=(0,e.useCallback)(async(a,b=!1)=>{try{let c=await fetch("/api/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cwd:a,create:b})}),d=await c.json();if(!c.ok||d.error)return T(d.error??`HTTP ${c.status}`),null;return az(!1),d.project?.cwd??a}catch(a){return T(a instanceof Error?a.message:String(a)),null}},[az]),aE=(0,e.useCallback)(a=>{fetch("/api/projects",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({cwd:a,touch:!0})}).catch(()=>{})},[]),aF=(0,e.useCallback)(a=>{aq.current=!0,P(a),T(null),af(b=>{if(!b.has(a))return b;let c=new Set(b);return c.delete(a),v(c),c}),m?.(a),aE(a),aA(a,!1)},[aA,m,aE]),aG=l??O;(0,e.useRef)(null);let aH=(0,e.useCallback)(a=>{if(!a){X("agent"),V(!0);return}let b="function"==typeof crypto.randomUUID?crypto.randomUUID():`${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}-${Math.random().toString(36).slice(2)}`;c?.(b,a)},[c]),aI=(0,e.useCallback)(a=>{if(!a){X("workbench"),V(!0);return}f?.(a)},[f]),aJ=(0,e.useCallback)(async a=>{let b=await aD(a,!0);b&&(aF(b),V(!1),T(null),"agent"===W&&aH(b),"workbench"===W&&aI(b))},[aF,aH,aI,W,aD]),aK=(0,e.useCallback)(a=>{Z(a),_(!0)},[]),aL=(0,e.useCallback)(()=>{_(!1),Z(null)},[]),aM=(0,e.useCallback)(a=>{let b=Y??aG;aL(),"agent"===a?aH(b):aI(b)},[aL,aH,aI,aG,Y]),aN=(0,e.useCallback)(()=>{aK(aG)},[aG,aK]),aO=(0,e.useCallback)(()=>{X("project"),T(null),V(!0)},[]),aP=(0,e.useMemo)(()=>[...aG&&!n.some(a=>a.cwd===aG)?[{cwd:aG,displayName:B(aG,Q),chatCount:p[aG]?.sessions.length??0,lastAccessed:null,created:null,pinned:!1,sortOrder:null,exists:!0,source:"manual"}]:[],...n].sort((a,b)=>{let c=!0===a.pinned;if(c!==(!0===b.pinned))return c?-1:1;let d="number"==typeof a.sortOrder?a.sortOrder:Number.MAX_SAFE_INTEGER,e="number"==typeof b.sortOrder?b.sortOrder:Number.MAX_SAFE_INTEGER;return d!==e?d-e:(a.displayName||"").localeCompare(b.displayName||"",void 0,{numeric:!0,sensitivity:"base"})}),[aG,Q,n,p]),aQ=(0,e.useMemo)(()=>{let a=a=>{var b,c;let d,e,f=p[a.cwd],g=[...f?.sessions??[]].sort((a,b)=>(b.modified||"").localeCompare(a.modified||"")),h=f?.loaded?f.sessions.length:a.chatCount,i=(b=a.lastAccessed,c=f?.loaded?f.sessions[0]?.modified:null,d=b?new Date(b).getTime():-1/0,e=c?new Date(c).getTime():-1/0,Number.isFinite(d)||Number.isFinite(e)?d>=e?b??null:c??null:null);return{project:a,cwd:a.cwd,displayName:a.displayName||B(a.cwd,Q),sessions:g,sessionsState:f,chatCount:h??0,lastAccessed:i??""}},b=aP.filter(a=>!0===a.pinned).map(a);if(aG){let c=aP.find(a=>a.cwd===aG);c&&!0!==c.pinned&&b.push(a(c))}return b},[aG,Q,p,aP]),aR=(0,e.useCallback)((a,c=!1)=>{a.cwd!==aG&&(ap.current=!0,P(a.cwd)),af(b=>{if(!b.has(a.cwd))return b;let c=new Set(b);return c.delete(a.cwd),v(c),c}),aE(a.cwd),b(a,c)},[b,aG,aE]),aS=(0,e.useCallback)(a=>{af(b=>{let c=new Set(b);return c.has(a)?c.delete(a):c.add(a),v(c),c})},[]),aT=(0,e.useCallback)(a=>{ad(b=>{let c=new Set(b);return c.has(a)?c.delete(a):c.add(a),c})},[]),aU=(0,e.useCallback)(async a=>{al("reorder");try{let b=await fetch("/api/projects",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({order:a})}),c=await b.json();if(!b.ok||c.error)throw Error(c.error??`HTTP ${b.status}`);N(null),az(!1)}catch(a){N(a instanceof Error?a.message:String(a)),az(!1)}finally{al(null)}},[az]),aV=(0,e.useCallback)(async(a,b)=>{al(`pin:${a}`);try{let c=await fetch("/api/projects",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({cwd:a,pinned:b})}),d=await c.json();if(!c.ok||d.error)throw Error(d.error??`HTTP ${c.status}`);N(null),az(!1)}catch(a){N(a instanceof Error?a.message:String(a)),az(!1)}finally{al(null)}},[az]),aW=(0,e.useCallback)((a,b)=>{if(!a||!b||a===b)return;let c=aP.map(a=>a.cwd).filter(Boolean),d=c.indexOf(a),e=c.indexOf(b);if(-1===d||-1===e)return;let f=[...c];f.splice(d,1);let g=f.indexOf(b);f.splice(g,0,a),aU(f)},[aU,aP]),aX=(0,e.useCallback)(async()=>{L(!0);try{await az(!1,{force:!0});let a=new Set([...Object.entries(p).filter(([,a])=>a.loaded||a.loading).map(([a])=>a),...aG?[aG]:[]]);await Promise.all([...a].map(a=>aA(a,!1,{force:!0})))}finally{L(!1)}},[aG,az,aA,p]);return(0,d.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",overflow:"hidden"},children:[(0,d.jsx)("div",{style:{padding:"12px 10px 10px",borderBottom:"1px solid var(--border)",flexShrink:0},children:(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:8},children:[(0,d.jsx)(C,{}),(0,d.jsxs)("div",{style:{display:"flex",gap:6,minWidth:0},children:[(0,d.jsxs)("button",{onClick:aN,style:{display:"flex",alignItems:"center",justifyContent:"center",gap:5,background:"var(--bg-hover)",border:"1px solid var(--border)",color:"var(--text-muted)",cursor:"pointer",height:32,paddingLeft:10,paddingRight:12,borderRadius:7,fontSize:12,fontWeight:500,letterSpacing:"-0.01em",flexShrink:0,transition:"background 0.12s, color 0.12s, border-color 0.12s"},title:aG?`New chat in ${aG}`:"New chat in a project path",onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-selected)",a.currentTarget.style.color="var(--accent)",a.currentTarget.style.borderColor="rgba(37,99,235,0.35)"},onMouseLeave:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text-muted)",a.currentTarget.style.borderColor="var(--border)"},children:[(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:"2.2",strokeLinecap:"round",children:[(0,d.jsx)("line",{x1:"6",y1:"1",x2:"6",y2:"11"}),(0,d.jsx)("line",{x1:"1",y1:"6",x2:"11",y2:"6"})]}),"New Chat"]}),(0,d.jsx)("button",{onClick:()=>ab(!0),style:{display:"flex",alignItems:"center",justifyContent:"center",background:"var(--bg-hover)",border:"1px solid var(--border)",color:"var(--text-muted)",cursor:"pointer",width:32,height:32,borderRadius:7,padding:0,flexShrink:0,transition:"background 0.12s, color 0.12s, border-color 0.12s"},title:"Search conversations",onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-selected)",a.currentTarget.style.color="var(--accent)",a.currentTarget.style.borderColor="rgba(37,99,235,0.35)"},onMouseLeave:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text-muted)",a.currentTarget.style.borderColor="var(--border)"},children:(0,d.jsxs)("svg",{width:"15",height:"15",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"1.7",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("circle",{cx:"7",cy:"7",r:"4.4"}),(0,d.jsx)("path",{d:"M10.4 10.4 13.2 13.2"})]})})]})]})}),(0,d.jsx)(j,{open:aa,cwd:aG,homeDir:Q,onClose:()=>ab(!1),onSelectSession:a=>{aR(a)}}),(0,d.jsxs)("div",{ref:ao,style:{position:"relative",marginTop:8,padding:"0 10px",display:"flex",alignItems:"stretch",gap:4},children:[(0,d.jsxs)("button",{type:"button",onClick:()=>an(a=>!a),style:{flex:1,minWidth:0,display:"flex",alignItems:"center",gap:6,padding:"6px 10px",background:aG?"var(--bg-hover)":"rgba(37,99,235,0.06)",border:aG?"1px solid var(--border)":"1px solid rgba(37,99,235,0.4)",borderRadius:7,cursor:"pointer",fontSize:12,color:"var(--text)",textAlign:"left"},title:aG??"Select project",children:[(0,d.jsx)("svg",{width:"14",height:"14",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"1.35",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0,color:"var(--accent)"},children:(0,d.jsx)("path",{d:"M1.5 5A1.5 1.5 0 0 1 3 3.5h3l1.2 1.5H13A1.5 1.5 0 0 1 14.5 6.5L13.6 11A1.5 1.5 0 0 1 12.1 12.5H3A1.5 1.5 0 0 1 1.5 11V5Z"})}),(0,d.jsx)("span",{style:{flex:1,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontFamily:"var(--font-mono)",fontSize:11,color:aG?"var(--text)":"var(--text-dim)"},children:aG?aP.find(a=>a.cwd===aG)?.displayName??A(aG,Q):"Select project…"}),(0,d.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",stroke:"var(--text-dim)",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0,transform:am?"rotate(180deg)":"none",transition:"transform 0.15s"},children:(0,d.jsx)("polyline",{points:"2 3.5 5 6.5 8 3.5"})})]}),aG&&(0,d.jsx)(F,{pinned:aP.find(a=>a.cwd===aG)?.pinned===!0,onToggle:()=>void aV(aG,aP.find(a=>a.cwd===aG)?.pinned!==!0)}),am&&(0,d.jsxs)("div",{style:{position:"absolute",top:"calc(100% + 4px)",left:10,right:10,zIndex:100,background:"var(--bg)",border:"1px solid var(--border)",borderRadius:8,boxShadow:"0 6px 20px rgba(0,0,0,0.10)",overflow:"hidden",maxHeight:280,overflowY:"auto"},children:[0===aP.length&&(0,d.jsx)("div",{style:{padding:"10px 12px",color:"var(--text-dim)",fontSize:11},children:"No projects yet"}),aP.map(a=>{let b=a.cwd===aG;return(0,d.jsx)(G,{project:a,homeDir:Q,isCurrent:b,onSelect:()=>{aF(a.cwd),an(!1)},onTogglePinned:()=>void aV(a.cwd,!0!==a.pinned)},a.cwd)})]})]}),(0,d.jsxs)("div",{style:{flexShrink:0,padding:"10px 10px 6px"},children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:8},children:[(0,d.jsx)("span",{style:{color:"var(--text-dim)",fontSize:10,fontWeight:600,letterSpacing:"0.05em",textTransform:"uppercase"},children:"Projects"}),(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:4,marginLeft:"auto"},children:[(0,d.jsx)("button",{type:"button",onClick:aX,disabled:K,title:"Refresh projects and chats","aria-label":"Refresh projects and chats",style:{width:22,height:22,display:"flex",alignItems:"center",justifyContent:"center",padding:0,border:"1px solid var(--border)",borderRadius:5,background:"var(--bg-panel)",color:K?"var(--accent)":"var(--text-dim)",cursor:K?"default":"pointer",flexShrink:0},children:(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{animation:K?"spin 0.9s linear infinite":void 0},children:[(0,d.jsx)("path",{d:"M21 12a9 9 0 0 1-15.5 6.2"}),(0,d.jsx)("path",{d:"M3 12A9 9 0 0 1 18.5 5.8"}),(0,d.jsx)("path",{d:"M7 18H5.5v1.5"}),(0,d.jsx)("path",{d:"M17 6h1.5V4.5"})]})}),(0,d.jsx)("button",{type:"button",onClick:aO,title:"New project","aria-label":"New project",style:{width:28,height:28,display:"flex",alignItems:"center",justifyContent:"center",padding:0,border:"none",borderRadius:"50%",background:"transparent",color:"var(--text-muted)",cursor:"pointer",flexShrink:0,transition:"background 0.12s, color 0.12s"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background="transparent",a.currentTarget.style.color="var(--text-muted)"},children:(0,d.jsxs)("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",style:{flexShrink:0,display:"block"},children:[(0,d.jsx)("path",{transform:"translate(9.52 2.52)",d:"M3.55246 0L3.55246 2.44252L6 2.44252L6 3.55748L3.55246 3.55748L3.55246 6L2.43834 6L2.43834 3.55748L0 3.55748L0 2.44252L2.43834 2.44252L2.43834 0L3.55246 0Z",fill:"currentColor"}),(0,d.jsx)("path",{transform:"translate(0.3496 2.35)",d:"M4.76367 0C5.36861 1.80598e-05 5.93113 0.310294 6.25488 0.821289L6.78027 1.64941C6.79685 1.67558 6.81791 1.69775 6.83887 1.71973C6.72186 2.15521 6.65702 2.61192 6.65137 3.08301C6.25601 2.96045 5.90909 2.70478 5.68164 2.3457L5.15723 1.5166C5.07183 1.38189 4.92318 1.3008 4.76367 1.30078L2.32422 1.30078C1.7589 1.30078 1.30078 1.7589 1.30078 2.32422L1.30078 10.1338C1.30078 10.6991 1.7589 11.1572 2.32422 11.1572L11.9766 11.1572C12.5419 11.1572 13 10.6991 13 10.1338L13 8.58398C13.4545 8.5135 13.8903 8.38748 14.3008 8.21289L14.3008 10.1338C14.3008 11.4171 13.2598 12.458 11.9766 12.458L2.32422 12.458C1.04093 12.458 0 11.4171 0 10.1338L0 2.32422C0 1.04093 1.04093 0 2.32422 0L4.76367 0Z",fill:"currentColor"})]})})]})]}),S&&(0,d.jsx)("div",{style:{marginTop:6,color:"#f87171",fontSize:11,lineHeight:1.4,overflowWrap:"anywhere"},children:S})]}),(0,d.jsxs)("div",{style:{flex:"1 1 auto",overflowY:"auto",padding:"6px 8px 8px",minHeight:80,scrollbarWidth:"thin",overscrollBehavior:"contain"},children:[z&&0===n.length&&(0,d.jsx)("div",{style:{padding:"16px 14px",color:"var(--text-muted)",fontSize:12},children:"Loading…"}),M&&(0,d.jsx)("div",{style:{padding:"12px 14px",color:"#f87171",fontSize:12},children:M}),!z&&!M&&0===aQ.length&&(0,d.jsx)("div",{style:{padding:"16px 14px",color:"var(--text-muted)",fontSize:12},children:"Open or create a project to start chatting."}),!z&&!M&&aQ.map(b=>{let c,e=ae.has(b.cwd),f=b.cwd===aG,g=ac.has(b.cwd),h=function(a){let b=new Map;for(let c of a)b.set(c.id,{session:c,children:[]});let c=new Map;for(let b of a)b.parentSessionId&&c.set(b.id,b.parentSessionId);let d=[];for(let a of b.values()){let e=function(a){let d=c.get(a),e=new Set;for(;d&&!e.has(d);){if(e.add(d),b.has(d))return d;d=c.get(d)}return null}(a.session.id);e?b.get(e).children.push(a):d.push(a)}let e=a=>{a.sort((a,b)=>(b.session.modified||"").localeCompare(a.session.modified||"")),a.forEach(a=>e(a.children))};return e(d),d}(b.sessions),i=h.length,j=h;if(i>10&&!g){j=h.slice(0,10);let b=h.find(b=>(function a(b,c){return!!c&&(b.session.id===c||b.children.some(b=>a(b,c)))})(b,a));b&&!j.includes(b)&&(j=[...j,b])}let l=i-j.length;return(0,d.jsxs)("div",{style:{marginBottom:6,borderTop:ai===b.cwd?"2px solid var(--accent)":"2px solid transparent",paddingTop:2*(ai===b.cwd),opacity:ag===b.cwd?.55:1},onDragOver:a=>{ag&&ag!==b.cwd&&(a.preventDefault(),a.dataTransfer.dropEffect="move",aj(b.cwd))},onDragLeave:()=>{ai===b.cwd&&aj(null)},onDrop:a=>{a.preventDefault();let c=a.dataTransfer.getData("text/project-cwd")||ag;aj(null),ah(null),c&&aW(c,b.cwd)},children:[(0,d.jsx)(H,{group:b,isCurrent:f,isCollapsed:e,isDragging:ag===b.cwd,pinBusy:ak===`pin:${b.cwd}`,onToggle:()=>aS(b.cwd),onSelect:()=>aF(b.cwd),onTogglePinned:()=>void aV(b.cwd,!0!==b.project.pinned),onDragStart:a=>{ah(b.cwd),a.dataTransfer.effectAllowed="move",a.dataTransfer.setData("text/project-cwd",b.cwd)},onDragEnd:()=>{ah(null),aj(null)}}),!e&&(0,d.jsxs)("div",{style:{marginTop:2,overflow:"hidden",borderRadius:7},children:[(c=b.sessionsState,c?.loading&&!c?.loaded?(0,d.jsx)("div",{style:{width:"100%",padding:"10px 12px",color:"var(--text-dim)",textAlign:"left",fontSize:12,fontStyle:"italic"},children:"Loading chats…"}):c?.error&&!c?.stale?(0,d.jsx)("div",{style:{width:"100%",padding:"10px 12px",color:"#f87171",textAlign:"left",fontSize:12},children:c.error}):0===b.sessions.length?(0,d.jsx)("div",{style:{width:"100%",padding:"10px 12px",color:"var(--text-muted)",textAlign:"left",fontSize:12},children:"No sessions yet. Use New Chat above to start one."}):(0,d.jsxs)(d.Fragment,{children:[c?.stale&&(0,d.jsx)("div",{style:{width:"100%",padding:"4px 12px",color:"var(--text-dim)",textAlign:"left",fontSize:10,fontStyle:"italic"},children:"Showing cached data — refresh failed"}),j.map(c=>(0,d.jsx)(I,{node:c,selectedSessionId:a,onSelectSession:aR,onRenamed:()=>void aA(b.cwd,!1),onSessionDeleted:a=>{k?.(a),aA(b.cwd,!1)},depth:0,runningSessionIds:r},c.session.id))]})),(g||l>0)&&i>10&&(0,d.jsx)("button",{type:"button",onClick:()=>aT(b.cwd),style:{width:"100%",padding:"6px 10px",background:"transparent",border:"none",color:"var(--text-dim)",cursor:"pointer",fontSize:11,textAlign:"center"},children:g?"Show less":`Show ${Math.max(0,l)} more`})]})]},b.cwd||"__no_project")})]}),$&&(0,d.jsx)(E,{cwd:Y,onChoose:aM,onClose:aL}),(0,d.jsx)(t,{open:U,initialPath:aG,onClose:()=>V(!1),onSelect:a=>aJ(a)})]})}function E({cwd:a,onChoose:b,onClose:c}){let e=a?B(a):"Choose a project path next";return(0,d.jsx)("div",{onMouseDown:a=>{a.target===a.currentTarget&&c()},style:{position:"fixed",inset:0,zIndex:1200,display:"flex",alignItems:"center",justifyContent:"center",padding:18,background:"rgba(0,0,0,0.28)"},children:(0,d.jsxs)("div",{style:{width:"min(420px, 100%)",background:"var(--bg)",border:"1px solid var(--border)",borderRadius:12,boxShadow:"0 12px 40px rgba(0,0,0,0.24)",overflow:"hidden"},children:[(0,d.jsxs)("div",{style:{padding:"14px 16px 12px",borderBottom:"1px solid var(--border)",display:"flex",justifyContent:"space-between",gap:12},children:[(0,d.jsxs)("div",{style:{minWidth:0},children:[(0,d.jsx)("div",{style:{color:"var(--text)",fontSize:14,fontWeight:750},children:"Start a new session"}),(0,d.jsx)("div",{style:{marginTop:5,color:"var(--text-dim)",fontSize:11},children:"Current project"}),(0,d.jsx)("div",{title:a??void 0,style:{marginTop:2,color:"var(--text)",fontSize:12,fontWeight:600,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:e}),a&&(0,d.jsx)("div",{style:{marginTop:2,color:"var(--text-dim)",fontSize:10,fontFamily:"var(--font-mono)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a})]}),(0,d.jsx)("button",{type:"button",onClick:c,"aria-label":"Close",title:"Close",style:{width:28,height:28,border:"none",borderRadius:6,background:"transparent",color:"var(--text-muted)",cursor:"pointer",fontSize:20,lineHeight:1},children:"x"})]}),(0,d.jsxs)("div",{style:{padding:14,display:"grid",gap:10},children:[(0,d.jsxs)("button",{type:"button",onClick:()=>b("agent"),style:{display:"grid",gap:5,textAlign:"left",padding:"13px 14px",border:"1px solid var(--border)",borderRadius:10,background:"var(--bg-panel)",color:"var(--text)",cursor:"pointer"},children:[(0,d.jsx)("span",{style:{fontSize:13,fontWeight:750},children:"Agent Chat"}),(0,d.jsx)("span",{style:{fontSize:11,color:"var(--text-muted)",lineHeight:1.45},children:"General coding or analysis chat in this project."})]}),(0,d.jsxs)("button",{type:"button",onClick:()=>b("workbench"),style:{display:"grid",gap:5,textAlign:"left",padding:"13px 14px",border:"1px solid rgba(37,99,235,0.45)",borderRadius:10,background:"rgba(37,99,235,0.08)",color:"var(--text)",cursor:"pointer"},children:[(0,d.jsx)("span",{style:{fontSize:13,fontWeight:750,color:"var(--accent)"},children:"Workbench"}),(0,d.jsx)("span",{style:{fontSize:11,color:"var(--text-muted)",lineHeight:1.45},children:"Dedicated R/Python warm-runtime session for data loading, plots, and artifacts."})]})]})]})})}function F({pinned:a,onToggle:b}){return(0,d.jsx)("button",{type:"button",onClick:b,title:a?"Unpin project":"Pin project to sidebar",style:{display:"flex",alignItems:"center",justifyContent:"center",width:32,height:"auto",padding:0,border:"1px solid var(--border)",borderRadius:7,background:a?"rgba(234,179,8,0.12)":"var(--bg-hover)",color:a?"#ca8a04":"var(--text-muted)",cursor:"pointer",flexShrink:0},children:(0,d.jsxs)("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:a?"currentColor":"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("path",{d:"M12 17v5"}),(0,d.jsx)("path",{d:"M5 3h14l-4 7v4l-6 3v-7L5 3Z"})]})})}function G({project:a,homeDir:b,isCurrent:c,onSelect:f,onTogglePinned:g}){let[h,i]=(0,e.useState)(!1),j=a.displayName||B(a.cwd,b);return(0,d.jsxs)("div",{onMouseEnter:()=>i(!0),onMouseLeave:()=>i(!1),style:{display:"flex",alignItems:"center",gap:4,background:c?"var(--bg-selected)":h?"var(--bg-hover)":"none",borderBottom:"1px solid var(--border)"},children:[(0,d.jsx)("span",{style:{width:10,marginLeft:6,flexShrink:0}}),(0,d.jsxs)("button",{type:"button",onClick:f,title:a.cwd,style:{flex:1,minWidth:0,display:"flex",alignItems:"center",gap:7,padding:"8px 10px 8px 0",background:"none",border:"none",color:c?"var(--text)":"var(--text-muted)",cursor:"pointer",textAlign:"left",fontSize:11,fontFamily:"var(--font-mono)"},children:[c?(0,d.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",stroke:"var(--accent)",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0},children:(0,d.jsx)("polyline",{points:"1.5 5 4 7.5 8.5 2.5"})}):(0,d.jsx)("span",{style:{width:10,flexShrink:0}}),(0,d.jsx)("span",{style:{flex:1,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:j}),!a.exists&&(0,d.jsx)("span",{style:{flexShrink:0,color:"#f87171",fontSize:10},children:"missing"})]}),(0,d.jsx)("button",{type:"button",onClick:a=>{a.stopPropagation(),g()},title:"Pin to sidebar",tabIndex:h?0:-1,style:{display:"flex",alignItems:"center",justifyContent:"center",width:28,height:28,marginRight:4,padding:0,border:"none",borderRadius:5,background:"transparent",color:"var(--text-muted)",cursor:"pointer",flexShrink:0,opacity:+!!h,pointerEvents:h?"auto":"none"},children:(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("path",{d:"M12 17v5"}),(0,d.jsx)("path",{d:"M5 3h14l-4 7v4l-6 3v-7L5 3Z"})]})})]})}function H({group:a,isCurrent:b,isCollapsed:c,isDragging:f,pinBusy:g,onToggle:h,onSelect:i,onTogglePinned:j,onDragStart:k,onDragEnd:l}){let[m,n]=(0,e.useState)(!1),o=a.lastAccessed,p=Math.max(0,a.chatCount??0),q=!0===a.project.pinned,r=(0,e.useCallback)(()=>{b?h():i()},[b,i,h]);return(0,d.jsxs)("div",{role:"button",tabIndex:0,draggable:!0,onClick:r,onDragStart:k,onDragEnd:l,onKeyDown:a=>{("Enter"===a.key||" "===a.key)&&(a.preventDefault(),r())},onMouseEnter:()=>n(!0),onMouseLeave:()=>n(!1),title:a.cwd,style:{width:"100%",height:32,display:"flex",alignItems:"center",gap:5,padding:"0 8px",background:b?"var(--bg-selected)":m?"var(--bg-hover)":"transparent",border:"none",borderRadius:6,color:"var(--text)",cursor:f?"grabbing":"pointer",textAlign:"left",overflow:"hidden",transition:"background 0.12s, opacity 0.12s",opacity:f?.55:1},children:[(0,d.jsx)("svg",{width:"13",height:"13",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1.7",strokeLinecap:"round",strokeLinejoin:"round",style:{transform:c?"none":"rotate(90deg)",transition:"transform 0.15s",flexShrink:0,color:"var(--text-dim)"},children:(0,d.jsx)("polyline",{points:"3 2 7 5 3 8"})}),(0,d.jsx)("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"1.35",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0,color:b?"var(--accent)":"var(--text-dim)"},children:c?(0,d.jsx)("path",{d:"M1.5 4.5A1.5 1.5 0 0 1 3 3h3l1.2 1.5H13A1.5 1.5 0 0 1 14.5 6v5A1.5 1.5 0 0 1 13 12.5H3A1.5 1.5 0 0 1 1.5 11V4.5Z"}):(0,d.jsx)("path",{d:"M1.5 5A1.5 1.5 0 0 1 3 3.5h3l1.2 1.5H13A1.5 1.5 0 0 1 14.5 6.5L13.6 11A1.5 1.5 0 0 1 12.1 12.5H3A1.5 1.5 0 0 1 1.5 11V5Z"})}),(0,d.jsx)("span",{style:{flex:1,minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontSize:13,fontWeight:b?650:560,color:"var(--text)"},children:a.displayName}),!a.project.exists&&(0,d.jsx)("span",{style:{flexShrink:0,color:"#f87171",fontSize:10},children:"missing"}),!m&&p>0&&(0,d.jsxs)("span",{style:{flexShrink:0,color:"var(--text-dim)",fontSize:10,whiteSpace:"nowrap"},children:[p," ",1===p?"chat":"chats"]}),!m&&o&&(0,d.jsx)("span",{style:{flexShrink:0,color:"var(--text-dim)",fontSize:10,whiteSpace:"nowrap"},children:z(o)}),q?(0,d.jsx)("button",{type:"button",onClick:a=>{a.stopPropagation(),j()},title:"Unpin project",tabIndex:m?0:-1,style:{display:"flex",alignItems:"center",justifyContent:"center",width:22,height:22,padding:0,border:"none",borderRadius:5,background:"rgba(234,179,8,0.12)",color:"#ca8a04",cursor:"pointer",flexShrink:0,opacity:m?1:.85,transition:"opacity 0.12s"},children:(0,d.jsxs)("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"currentColor",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("path",{d:"M12 17v5"}),(0,d.jsx)("path",{d:"M5 3h14l-4 7v4l-6 3v-7L5 3Z"})]})}):(0,d.jsx)("button",{type:"button",onClick:a=>{a.stopPropagation(),j()},disabled:g,title:"Pin project to sidebar",tabIndex:m?0:-1,style:{display:"flex",alignItems:"center",justifyContent:"center",width:22,height:22,padding:0,border:"none",borderRadius:5,background:"transparent",color:"var(--text-muted)",cursor:g?"wait":"pointer",flexShrink:0,opacity:+!!m,transition:"opacity 0.12s, background 0.12s, color 0.12s"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="#ca8a04"},onMouseLeave:a=>{a.currentTarget.style.background="transparent",a.currentTarget.style.color="var(--text-muted)"},children:(0,d.jsxs)("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("path",{d:"M12 17v5"}),(0,d.jsx)("path",{d:"M5 3h14l-4 7v4l-6 3v-7L5 3Z"})]})}),(0,d.jsx)("span",{title:"Drag to reorder",style:{display:"inline-flex",alignItems:"center",justifyContent:"center",width:18,height:22,flexShrink:0,color:"var(--text-dim)",opacity:m?1:.35,transition:"opacity 0.12s",cursor:"grab"},children:(0,d.jsxs)("svg",{width:"10",height:"12",viewBox:"0 0 10 12",fill:"currentColor",children:[(0,d.jsx)("circle",{cx:"2",cy:"2",r:"1"}),(0,d.jsx)("circle",{cx:"8",cy:"2",r:"1"}),(0,d.jsx)("circle",{cx:"2",cy:"6",r:"1"}),(0,d.jsx)("circle",{cx:"8",cy:"6",r:"1"}),(0,d.jsx)("circle",{cx:"2",cy:"10",r:"1"}),(0,d.jsx)("circle",{cx:"8",cy:"10",r:"1"})]})})]})}function I({node:a,selectedSessionId:b,onSelectSession:c,onRenamed:f,onSessionDeleted:g,depth:h,runningSessionIds:i}){let[j,k]=(0,e.useState)(!1),l=a.children.length>0;return(0,d.jsxs)("div",{children:[(0,d.jsxs)("div",{style:{position:"relative"},children:[h>0&&(0,d.jsx)("div",{style:{position:"absolute",left:12*h+6,top:0,bottom:0,width:1,background:"var(--border)",pointerEvents:"none"}}),(0,d.jsx)(J,{session:a.session,isSelected:a.session.id===b,onClick:()=>c(a.session),onRenamed:f,onDeleted:a=>g?.(a),depth:h,hasChildren:l,collapsed:j,onToggleCollapse:()=>k(a=>!a),isRunning:i.has(a.session.id)})]}),l&&!j&&(0,d.jsx)("div",{children:a.children.map(a=>(0,d.jsx)(I,{node:a,selectedSessionId:b,onSelectSession:c,onRenamed:f,onSessionDeleted:g,depth:h+1,runningSessionIds:i},a.session.id))})]})}function J({session:a,isSelected:b,onClick:c,onRenamed:f,onDeleted:g,depth:h=0,hasChildren:i=!1,collapsed:j=!1,onToggleCollapse:k,isRunning:l=!1}){let[m,n]=(0,e.useState)(!1),[o,p]=(0,e.useState)(!1),[q,r]=(0,e.useState)(""),[s,t]=(0,e.useState)(!1),[u,v]=(0,e.useState)(!1),w=(0,e.useRef)(null),x=a.name||a.firstMessage.slice(0,50)||a.id.slice(0,12),y=(0,e.useCallback)(b=>{b.stopPropagation(),r(a.name??""),p(!0),setTimeout(()=>w.current?.select(),0)},[a.name]),A=(0,e.useCallback)(async()=>{let b=q.trim();if(p(!1),b!==(a.name??""))try{await fetch(`/api/sessions/${encodeURIComponent(a.id)}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:b})}),f?.()}catch{}},[q,a.id,a.name,f]),B=(0,e.useCallback)(a=>{a.stopPropagation(),t(!0)},[]),C=(0,e.useCallback)(async b=>{b.stopPropagation(),t(!1),v(!0);try{await fetch(`/api/sessions/${encodeURIComponent(a.id)}`,{method:"DELETE"}),g?.(a.id)}catch{v(!1)}},[a.id,g]),D=(0,e.useCallback)(a=>{a.stopPropagation(),t(!1)},[]),E="workbench"===a.sessionKind;return(0,d.jsx)("div",{onClick:s||o?void 0:c,onMouseEnter:()=>n(!0),onMouseLeave:()=>{n(!1)},style:{display:"flex",alignItems:"center",padding:"7px 8px",paddingLeft:h>0?12*h+14:14,paddingRight:8,cursor:s||o?"default":"pointer",background:s?"rgba(239,68,68,0.06)":b?"var(--bg-selected)":m?"var(--bg-hover)":"transparent",borderLeft:s?"2px solid #ef4444":b?"2px solid var(--accent)":"2px solid transparent",transition:"background 0.1s",opacity:u?.5:1,gap:6,overflow:"hidden"},children:s?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)("div",{style:{flex:1,minWidth:0,fontSize:12,color:"var(--text)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:["Delete ",(0,d.jsxs)("span",{style:{fontWeight:600},children:["“",x.slice(0,22),x.length>22?"…":"","”"]}),"?"]}),(0,d.jsxs)("div",{style:{display:"flex",gap:5,flexShrink:0},children:[(0,d.jsxs)("button",{onClick:C,style:{display:"flex",alignItems:"center",justifyContent:"center",gap:4,height:30,padding:"0 11px",background:"#ef4444",border:"none",borderRadius:6,color:"#fff",cursor:"pointer",fontSize:12,fontWeight:600,whiteSpace:"nowrap"},children:[(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("polyline",{points:"3 6 5 6 21 6"}),(0,d.jsx)("path",{d:"M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6"}),(0,d.jsx)("path",{d:"M10 11v6M14 11v6"}),(0,d.jsx)("path",{d:"M9 6V4a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v2"})]}),"Delete"]}),(0,d.jsx)("button",{onClick:D,style:{display:"flex",alignItems:"center",justifyContent:"center",height:30,padding:"0 11px",background:"var(--bg)",border:"1px solid var(--border)",borderRadius:6,color:"var(--text-muted)",cursor:"pointer",fontSize:12,fontWeight:500,whiteSpace:"nowrap"},children:"Cancel"})]})]}):o?(0,d.jsx)("input",{ref:w,value:q,onChange:a=>r(a.target.value),onBlur:A,onKeyDown:a=>{"Enter"===a.key&&A(),"Escape"===a.key&&p(!1)},autoFocus:!0,style:{flex:1,fontSize:12,padding:"5px 8px",border:"1px solid var(--accent)",borderRadius:5,outline:"none",background:"var(--bg)",color:"var(--text)",height:28}}):(0,d.jsxs)(d.Fragment,{children:[h>0&&(0,d.jsxs)("svg",{width:"10",height:"10",viewBox:"0 0 24 24",fill:"none",stroke:"var(--text-dim)",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0},children:[(0,d.jsx)("line",{x1:"6",y1:"3",x2:"6",y2:"15"}),(0,d.jsx)("circle",{cx:"18",cy:"6",r:"3"}),(0,d.jsx)("circle",{cx:"6",cy:"18",r:"3"}),(0,d.jsx)("path",{d:"M18 9a9 9 0 0 1-9 9"})]}),0===h&&(0,d.jsx)("span",{"aria-hidden":"true",style:{width:l?7:5,height:l?7:5,borderRadius:"50%",background:l?"#22c55e":b?"var(--accent)":"var(--text-dim)",opacity:b?1:.35,flexShrink:0,...l?{boxShadow:"0 0 6px rgba(34,197,94,0.5)",animation:"pulse 2s infinite"}:{}}}),E&&(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"var(--accent)",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0},children:[(0,d.jsx)("path",{d:"M4 19V5"}),(0,d.jsx)("path",{d:"M4 19h16"}),(0,d.jsx)("path",{d:"m7 16 3-5 4 3 4-7"})]}),(0,d.jsxs)("div",{style:{flex:1,minWidth:0,display:"flex",flexDirection:"column",gap:1},children:[(0,d.jsx)("div",{style:{fontSize:13,fontWeight:b?600:500,lineHeight:"18px",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",color:E?"var(--accent)":"var(--text)"},title:x,children:x}),(0,d.jsxs)("div",{style:{display:"flex",gap:8,color:"var(--text-dim)",fontSize:11},children:[(0,d.jsx)("span",{title:a.modified,children:z(a.modified)}),(0,d.jsxs)("span",{children:[a.messageCount," msgs"]}),!1===a.cwdExists&&(0,d.jsx)("span",{title:`Project path missing: ${a.cwd}`,style:{color:"#f87171"},children:"missing path"})]})]}),i&&(0,d.jsx)("button",{onClick:a=>{a.stopPropagation(),k?.()},title:j?"Expand forks":"Collapse forks",style:{display:"flex",alignItems:"center",justifyContent:"center",width:20,height:20,padding:0,flexShrink:0,background:"none",border:"none",color:"var(--text-dim)",cursor:"pointer",transform:j?"rotate(-90deg)":"none",transition:"transform 0.15s"},children:(0,d.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:(0,d.jsx)("polyline",{points:"2 3.5 5 6.5 8 3.5"})})}),m&&(0,d.jsxs)("div",{style:{display:"flex",gap:4,flexShrink:0},children:[(0,d.jsx)("button",{onClick:y,title:"Rename",style:{display:"flex",alignItems:"center",justifyContent:"center",width:32,height:32,padding:0,background:"var(--bg-hover)",border:"1px solid var(--border)",borderRadius:7,color:"var(--text-muted)",cursor:"pointer",transition:"background 0.12s, color 0.12s, border-color 0.12s"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-selected)",a.currentTarget.style.color="var(--accent)",a.currentTarget.style.borderColor="rgba(37,99,235,0.35)"},onMouseLeave:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text-muted)",a.currentTarget.style.borderColor="var(--border)"},children:(0,d.jsx)("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:(0,d.jsx)("path",{d:"M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z"})})}),(0,d.jsx)("button",{onClick:B,title:"Delete",style:{display:"flex",alignItems:"center",justifyContent:"center",width:32,height:32,padding:0,background:"var(--bg-hover)",border:"1px solid var(--border)",borderRadius:7,color:"var(--text-muted)",cursor:"pointer",transition:"background 0.12s, color 0.12s, border-color 0.12s"},onMouseEnter:a=>{a.currentTarget.style.background="rgba(239,68,68,0.08)",a.currentTarget.style.color="#ef4444",a.currentTarget.style.borderColor="rgba(239,68,68,0.35)"},onMouseLeave:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text-muted)",a.currentTarget.style.borderColor="var(--border)"},children:(0,d.jsxs)("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("polyline",{points:"3 6 5 6 21 6"}),(0,d.jsx)("path",{d:"M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6"}),(0,d.jsx)("path",{d:"M10 11v6M14 11v6"}),(0,d.jsx)("path",{d:"M9 6V4a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v2"})]})})]})]})})}c(81537);var K=c(62418),L=c(29947);let M=new Map,N=["off","default","full","agent"],O={off:"none",default:"default",full:"full",agent:"agent"},P={off:"无工具,纯聊天",default:"4 项内置工具",full:"全部内置工具",agent:"High + 子代理"},Q={retain:{label:"retain",description:"保存稳定事实或决策到项目记忆"},recall:{label:"recall",description:"检索项目记忆中的相关上下文"},reflect:{label:"reflect",description:"基于已存记忆做综合回应"}},R=["auto","off","minimal","low","medium","high","xhigh"],S={auto:"沿用 pi 默认设置",off:"关闭推理",minimal:"最少推理",low:"低强度推理",medium:"中等推理",high:"高强度推理",xhigh:"最高强度推理"},T=[{command:"/compact",label:"/compact",description:"压缩当前上下文",kind:"native"},{command:"/init",label:"/init",description:"快捷插入,交给模型处理初始化任务",kind:"shortcut"},{command:"/memory",label:"/memory",description:"快捷插入,交给模型处理项目记忆任务",kind:"shortcut"}];function U({doc:a,onRemove:b}){var c;let e=a.fileName.split(".").pop()?.toLowerCase()??"",f=function(a){switch(a){case"pdf":return{emoji:"\uD83D\uDCC4",color:"#ef4444"};case"docx":case"doc":return{emoji:"\uD83D\uDCDD",color:"#3b82f6"};case"xlsx":case"xls":return{emoji:"\uD83D\uDCCA",color:"#22c55e"};case"pptx":case"ppt":return{emoji:"\uD83D\uDCFD",color:"#f97316"};default:return{emoji:"\uD83D\uDCCE",color:"var(--text-muted)"}}}(e),g=(c=a.size)<1024?`${c} B`:c<1048576?`${(c/1024).toFixed(1)} KB`:`${(c/1048576).toFixed(1)} MB`;return(0,d.jsxs)("div",{style:{position:"relative",display:"flex",alignItems:"center",gap:6,padding:"5px 10px 5px 7px",background:"var(--bg-panel)",border:"1px solid var(--border)",borderRadius:6,maxWidth:200},title:a.fileName,children:[(0,d.jsx)("span",{style:{color:f.color,fontSize:14,flexShrink:0},children:f.emoji}),(0,d.jsxs)("div",{style:{minWidth:0,flex:1},children:[(0,d.jsx)("div",{style:{fontSize:11,color:"var(--text)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",lineHeight:1.3},children:a.fileName}),(0,d.jsxs)("div",{style:{fontSize:10,color:"var(--text-dim)",lineHeight:1.3},children:[e.toUpperCase()," \xb7 ",g,a.extractionError?" \xb7 no text":a.truncated?" \xb7 truncated":a.extractedText?" \xb7 text":""]})]}),(0,d.jsx)("button",{onClick:b,style:{flexShrink:0,width:14,height:14,borderRadius:"50%",background:"var(--bg-hover)",border:"none",display:"flex",alignItems:"center",justifyContent:"center",cursor:"pointer",padding:0,color:"var(--text-dim)"},onMouseEnter:a=>{a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.color="var(--text-dim)"},children:(0,d.jsxs)("svg",{width:"7",height:"7",viewBox:"0 0 7 7",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",children:[(0,d.jsx)("line",{x1:"1",y1:"1",x2:"6",y2:"6"}),(0,d.jsx)("line",{x1:"6",y1:"1",x2:"1",y2:"6"})]})})]})}function V(a){return a.replace(/</g,"<").replace(/>/g,">").replace(/&/g,"&").replace(/"/g,'"').replace(/'/g,"'")}async function W(a){let b=await c.e(1688).then(c.bind(c,81688));b.GlobalWorkerOptions.workerSrc=new c.U(c(19224)).toString();let d=await b.getDocument({data:a.slice(0)}).promise,e=[];for(let a=1;a<=d.numPages;a+=1){let b=await d.getPage(a),c=(await b.getTextContent()).items.map(a=>"str"in a?a.str:"").filter(Boolean).join(" ");c.trim()&&e.push(`Page ${a}
|
|
1
|
+
(()=>{var a={};a.id=8974,a.ids=[8974],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},478:(a,b,c)=>{Promise.resolve().then(c.bind(c,33340))},1708:a=>{"use strict";a.exports=require("node:process")},2798:(a,b,c)=>{let d=c(76708),e=c(95380),f=c(18994),g=c(32835);function h(a,b,c,f,g){let h=[].slice.call(arguments,1),i=h.length,j="function"==typeof h[i-1];if(!j&&!d())throw Error("Callback required as last argument");if(j){if(i<2)throw Error("Too few arguments provided");2===i?(g=c,c=b,b=f=void 0):3===i&&(b.getContext&&void 0===g?(g=f,f=void 0):(g=f,f=c,c=b,b=void 0))}else{if(i<1)throw Error("Too few arguments provided");return 1===i?(c=b,b=f=void 0):2!==i||b.getContext||(f=c,c=b,b=void 0),new Promise(function(d,g){try{let g=e.create(c,f);d(a(g,b,f))}catch(a){g(a)}})}try{let d=e.create(c,f);g(null,a(d,b,f))}catch(a){g(a)}}e.create,b.toCanvas=h.bind(null,f.render),h.bind(null,f.renderToDataURL),h.bind(null,function(a,b,c){return g.render(a,c)})},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},5206:(a,b,c)=>{Promise.resolve().then(c.bind(c,35790))},9709:(a,b,c)=>{"use strict";let d=!0,e=c(74075),f=c(80183);e.deflateSync||(d=!1);let g=c(81769),h=c(20135),i=c(96277),j=c(92858),k=c(83670);a.exports=function(a,b){let c,l,m,n;if(!d)throw Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let o=[],p=new g(a);if(new i(b,{read:p.read.bind(p),error:function(a){c=a},metadata:function(a){l=a},gamma:function(a){m=a},palette:function(a){l.palette=a},transColor:function(a){l.transColor=a},inflateData:function(a){o.push(a)},simpleTransparency:function(){l.alpha=!0}}).start(),p.process(),c)throw c;let q=Buffer.concat(o);if(o.length=0,l.interlace)n=e.inflateSync(q);else{let a=((l.width*l.bpp*l.depth+7>>3)+1)*l.height;n=f(q,{chunkSize:a,maxLength:a})}if(q=null,!n||!n.length)throw Error("bad png - invalid inflate data response");let r=h.process(n,l);q=null;let s=j.dataToBitMap(r,l);r=null;let t=k(s,l);return l.data=t,l.gamma=m||0,l}},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},12097:(a,b)=>{b.Patterns={PATTERN000:0,PATTERN001:1,PATTERN010:2,PATTERN011:3,PATTERN100:4,PATTERN101:5,PATTERN110:6,PATTERN111:7};b.isValid=function(a){return null!=a&&""!==a&&!isNaN(a)&&a>=0&&a<=7},b.from=function(a){return b.isValid(a)?parseInt(a,10):void 0},b.getPenaltyN1=function(a){let b=a.size,c=0,d=0,e=0,f=null,g=null;for(let h=0;h<b;h++){d=e=0,f=g=null;for(let i=0;i<b;i++){let b=a.get(h,i);b===f?d++:(d>=5&&(c+=3+(d-5)),f=b,d=1),(b=a.get(i,h))===g?e++:(e>=5&&(c+=3+(e-5)),g=b,e=1)}d>=5&&(c+=3+(d-5)),e>=5&&(c+=3+(e-5))}return c},b.getPenaltyN2=function(a){let b=a.size,c=0;for(let d=0;d<b-1;d++)for(let e=0;e<b-1;e++){let b=a.get(d,e)+a.get(d,e+1)+a.get(d+1,e)+a.get(d+1,e+1);(4===b||0===b)&&c++}return 3*c},b.getPenaltyN3=function(a){let b=a.size,c=0,d=0,e=0;for(let f=0;f<b;f++){d=e=0;for(let g=0;g<b;g++)d=d<<1&2047|a.get(f,g),g>=10&&(1488===d||93===d)&&c++,e=e<<1&2047|a.get(g,f),g>=10&&(1488===e||93===e)&&c++}return 40*c},b.getPenaltyN4=function(a){let b=0,c=a.data.length;for(let d=0;d<c;d++)b+=a.data[d];return 10*Math.abs(Math.ceil(100*b/c/5)-10)},b.applyMask=function(a,c){let d=c.size;for(let e=0;e<d;e++)for(let f=0;f<d;f++)c.isReserved(f,e)||c.xor(f,e,function(a,c,d){switch(a){case b.Patterns.PATTERN000:return(c+d)%2==0;case b.Patterns.PATTERN001:return c%2==0;case b.Patterns.PATTERN010:return d%3==0;case b.Patterns.PATTERN011:return(c+d)%3==0;case b.Patterns.PATTERN100:return(Math.floor(c/2)+Math.floor(d/3))%2==0;case b.Patterns.PATTERN101:return c*d%2+c*d%3==0;case b.Patterns.PATTERN110:return(c*d%2+c*d%3)%2==0;case b.Patterns.PATTERN111:return(c*d%3+(c+d)%2)%2==0;default:throw Error("bad maskPattern:"+a)}}(a,f,e))},b.getBestMask=function(a,c){let d=Object.keys(b.Patterns).length,e=0,f=1/0;for(let g=0;g<d;g++){c(g),b.applyMask(g,a);let d=b.getPenaltyN1(a)+b.getPenaltyN2(a)+b.getPenaltyN3(a)+b.getPenaltyN4(a);b.applyMask(g,a),d<f&&(f=d,e=g)}return e}},12412:a=>{"use strict";a.exports=require("assert")},17891:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/get-segment-param")},18994:(a,b,c)=>{let d=c(88397);b.render=function(a,b,c){var e;let f=c,g=b;void 0!==f||b&&b.getContext||(f=b,b=void 0),b||(g=function(){try{return document.createElement("canvas")}catch(a){throw Error("You need to specify a canvas element")}}()),f=d.getOptions(f);let h=d.getImageWidth(a.modules.size,f),i=g.getContext("2d"),j=i.createImageData(h,h);return d.qrToImageData(j.data,a,f),e=g,i.clearRect(0,0,e.width,e.height),e.style||(e.style={}),e.height=h,e.width=h,e.style.height=h+"px",e.style.width=h+"px",i.putImageData(j,0,0),g},b.renderToDataURL=function(a,c,d){let e=d;void 0!==e||c&&c.getContext||(e=c,c=void 0),e||(e={});let f=b.render(a,c,e),g=e.type||"image/png",h=e.rendererOpts||{};return f.toDataURL(g,h.quality)}},19099:(a,b,c)=>{"use strict";var d=c(54839);c.o(d,"useRouter")&&c.d(b,{useRouter:function(){return d.useRouter}}),c.o(d,"useSearchParams")&&c.d(b,{useSearchParams:function(){return d.useSearchParams}})},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},19477:(a,b,c)=>{let d=c(58856),e=[1,1,1,1,1,1,1,1,1,1,2,2,1,2,2,4,1,2,4,4,2,4,4,4,2,4,6,5,2,4,6,6,2,5,8,8,4,5,8,8,4,5,8,11,4,8,10,11,4,9,12,16,4,9,16,16,6,10,12,18,6,10,17,16,6,11,16,19,6,13,18,21,7,14,21,25,8,16,20,25,8,17,23,25,9,17,23,34,9,18,25,30,10,20,27,32,12,21,29,35,12,23,34,37,12,25,34,40,13,26,35,42,14,28,38,45,15,29,40,48,16,31,43,51,17,33,45,54,18,35,48,57,19,37,51,60,19,38,53,63,20,40,56,66,21,43,59,70,22,45,62,74,24,47,65,77,25,49,68,81],f=[7,10,13,17,10,16,22,28,15,26,36,44,20,36,52,64,26,48,72,88,36,64,96,112,40,72,108,130,48,88,132,156,60,110,160,192,72,130,192,224,80,150,224,264,96,176,260,308,104,198,288,352,120,216,320,384,132,240,360,432,144,280,408,480,168,308,448,532,180,338,504,588,196,364,546,650,224,416,600,700,224,442,644,750,252,476,690,816,270,504,750,900,300,560,810,960,312,588,870,1050,336,644,952,1110,360,700,1020,1200,390,728,1050,1260,420,784,1140,1350,450,812,1200,1440,480,868,1290,1530,510,924,1350,1620,540,980,1440,1710,570,1036,1530,1800,570,1064,1590,1890,600,1120,1680,1980,630,1204,1770,2100,660,1260,1860,2220,720,1316,1950,2310,750,1372,2040,2430];b.getBlocksCount=function(a,b){switch(b){case d.L:return e[(a-1)*4+0];case d.M:return e[(a-1)*4+1];case d.Q:return e[(a-1)*4+2];case d.H:return e[(a-1)*4+3];default:return}},b.getTotalCodewordsCount=function(a,b){switch(b){case d.L:return f[(a-1)*4+0];case d.M:return f[(a-1)*4+1];case d.Q:return f[(a-1)*4+2];case d.H:return f[(a-1)*4+3];default:return}}},20135:(a,b,c)=>{"use strict";let d=c(81769),e=c(27734);b.process=function(a,b){let c=[],f=new d(a);return new e(b,{read:f.read.bind(f),write:function(a){c.push(a)},complete:function(){}}).start(),f.process(),Buffer.concat(c)}},23372:(a,b,c)=>{"use strict";let d=c(28354),e=c(74075),f=c(57949),g=c(27459),h=c(96277),i=c(92858),j=c(83670),k=a.exports=function(a){f.call(this),this._parser=new h(a,{read:this.read.bind(this),error:this._handleError.bind(this),metadata:this._handleMetaData.bind(this),gamma:this.emit.bind(this,"gamma"),palette:this._handlePalette.bind(this),transColor:this._handleTransColor.bind(this),finished:this._finished.bind(this),inflateData:this._inflateData.bind(this),simpleTransparency:this._simpleTransparency.bind(this),headersFinished:this._headersFinished.bind(this)}),this._options=a,this.writable=!0,this._parser.start()};d.inherits(k,f),k.prototype._handleError=function(a){this.emit("error",a),this.writable=!1,this.destroy(),this._inflate&&this._inflate.destroy&&this._inflate.destroy(),this._filter&&(this._filter.destroy(),this._filter.on("error",function(){})),this.errord=!0},k.prototype._inflateData=function(a){if(!this._inflate)if(this._bitmapInfo.interlace)this._inflate=e.createInflate(),this._inflate.on("error",this.emit.bind(this,"error")),this._filter.on("complete",this._complete.bind(this)),this._inflate.pipe(this._filter);else{let a=((this._bitmapInfo.width*this._bitmapInfo.bpp*this._bitmapInfo.depth+7>>3)+1)*this._bitmapInfo.height,b=Math.max(a,e.Z_MIN_CHUNK);this._inflate=e.createInflate({chunkSize:b});let c=a,d=this.emit.bind(this,"error");this._inflate.on("error",function(a){c&&d(a)}),this._filter.on("complete",this._complete.bind(this));let f=this._filter.write.bind(this._filter);this._inflate.on("data",function(a){c&&(a.length>c&&(a=a.slice(0,c)),c-=a.length,f(a))}),this._inflate.on("end",this._filter.end.bind(this._filter))}this._inflate.write(a)},k.prototype._handleMetaData=function(a){this._metaData=a,this._bitmapInfo=Object.create(a),this._filter=new g(this._bitmapInfo)},k.prototype._handleTransColor=function(a){this._bitmapInfo.transColor=a},k.prototype._handlePalette=function(a){this._bitmapInfo.palette=a},k.prototype._simpleTransparency=function(){this._metaData.alpha=!0},k.prototype._headersFinished=function(){this.emit("metadata",this._metaData)},k.prototype._finished=function(){this.errord||(this._inflate?this._inflate.end():this.emit("error","No Inflate block"))},k.prototype._complete=function(a){let b;if(!this.errord){try{let c=i.dataToBitMap(a,this._bitmapInfo);b=j(c,this._bitmapInfo),c=null}catch(a){this._handleError(a);return}this.emit("parsed",b)}}},26713:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/is-bot")},27137:(a,b,c)=>{let d=c(93669),e=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];function f(a){this.mode=d.ALPHANUMERIC,this.data=a}f.getBitsLength=function(a){return 11*Math.floor(a/2)+a%2*6},f.prototype.getLength=function(){return this.data.length},f.prototype.getBitsLength=function(){return f.getBitsLength(this.data.length)},f.prototype.write=function(a){let b;for(b=0;b+2<=this.data.length;b+=2){let c=45*e.indexOf(this.data[b]);c+=e.indexOf(this.data[b+1]),a.put(c,11)}this.data.length%2&&a.put(e.indexOf(this.data[b]),6)},a.exports=f},27459:(a,b,c)=>{"use strict";let d=c(28354),e=c(57949),f=c(27734),g=a.exports=function(a){e.call(this);let b=[],c=this;this._filter=new f(a,{read:this.read.bind(this),write:function(a){b.push(a)},complete:function(){c.emit("complete",Buffer.concat(b))}}),this._filter.start()};d.inherits(g,e)},27734:(a,b,c)=>{"use strict";let d=c(59725),e=c(55211);function f(a,b,c){let d=a*b;return 8!==c&&(d=Math.ceil(d/(8/c))),d}let g=a.exports=function(a,b){let c=a.width,e=a.height,g=a.interlace,h=a.bpp,i=a.depth;if(this.read=b.read,this.write=b.write,this.complete=b.complete,this._imageIndex=0,this._images=[],g){let a=d.getImagePasses(c,e);for(let b=0;b<a.length;b++)this._images.push({byteWidth:f(a[b].width,h,i),height:a[b].height,lineIndex:0})}else this._images.push({byteWidth:f(c,h,i),height:e,lineIndex:0});8===i?this._xComparison=h:16===i?this._xComparison=2*h:this._xComparison=1};g.prototype.start=function(){this.read(this._images[this._imageIndex].byteWidth+1,this._reverseFilterLine.bind(this))},g.prototype._unFilterType1=function(a,b,c){let d=this._xComparison,e=d-1;for(let f=0;f<c;f++){let c=a[1+f],g=f>e?b[f-d]:0;b[f]=c+g}},g.prototype._unFilterType2=function(a,b,c){let d=this._lastLine;for(let e=0;e<c;e++){let c=a[1+e],f=d?d[e]:0;b[e]=c+f}},g.prototype._unFilterType3=function(a,b,c){let d=this._xComparison,e=d-1,f=this._lastLine;for(let g=0;g<c;g++){let c=a[1+g],h=f?f[g]:0,i=Math.floor(((g>e?b[g-d]:0)+h)/2);b[g]=c+i}},g.prototype._unFilterType4=function(a,b,c){let d=this._xComparison,f=d-1,g=this._lastLine;for(let h=0;h<c;h++){let c=a[1+h],i=g?g[h]:0,j=e(h>f?b[h-d]:0,i,h>f&&g?g[h-d]:0);b[h]=c+j}},g.prototype._reverseFilterLine=function(a){let b,c=a[0],d=this._images[this._imageIndex],e=d.byteWidth;if(0===c)b=a.slice(1,e+1);else switch(b=Buffer.alloc(e),c){case 1:this._unFilterType1(a,b,e);break;case 2:this._unFilterType2(a,b,e);break;case 3:this._unFilterType3(a,b,e);break;case 4:this._unFilterType4(a,b,e);break;default:throw Error("Unrecognised filter type - "+c)}this.write(b),d.lineIndex++,d.lineIndex>=d.height?(this._lastLine=null,this._imageIndex++,d=this._images[this._imageIndex]):this._lastLine=b,d?this.read(d.byteWidth+1,this._reverseFilterLine.bind(this)):(this._lastLine=null,this.complete())}},27910:a=>{"use strict";a.exports=require("stream")},28354:a=>{"use strict";a.exports=require("util")},28964:(a,b,c)=>{let d=c(93669);function e(a){this.mode=d.NUMERIC,this.data=a.toString()}e.getBitsLength=function(a){return 10*Math.floor(a/3)+(a%3?a%3*3+1:0)},e.prototype.getLength=function(){return this.data.length},e.prototype.getBitsLength=function(){return e.getBitsLength(this.data.length)},e.prototype.write=function(a){let b,c;for(b=0;b+3<=this.data.length;b+=3)c=parseInt(this.data.substr(b,3),10),a.put(c,10);let d=this.data.length-b;d>0&&(c=parseInt(this.data.substr(b),10),a.put(c,3*d+1))},a.exports=e},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31964:(a,b,c)=>{"use strict";let d=c(55211),e={0:function(a,b,c,d,e){for(let f=0;f<c;f++)d[e+f]=a[b+f]},1:function(a,b,c,d,e,f){for(let g=0;g<c;g++){let c=g>=f?a[b+g-f]:0,h=a[b+g]-c;d[e+g]=h}},2:function(a,b,c,d,e){for(let f=0;f<c;f++){let g=b>0?a[b+f-c]:0,h=a[b+f]-g;d[e+f]=h}},3:function(a,b,c,d,e,f){for(let g=0;g<c;g++){let h=g>=f?a[b+g-f]:0,i=b>0?a[b+g-c]:0,j=a[b+g]-(h+i>>1);d[e+g]=j}},4:function(a,b,c,e,f,g){for(let h=0;h<c;h++){let i=h>=g?a[b+h-g]:0,j=b>0?a[b+h-c]:0,k=b>0&&h>=g?a[b+h-(c+g)]:0,l=a[b+h]-d(i,j,k);e[f+h]=l}}},f={0:function(a,b,c){let d=0,e=b+c;for(let c=b;c<e;c++)d+=Math.abs(a[c]);return d},1:function(a,b,c,d){let e=0;for(let f=0;f<c;f++){let c=f>=d?a[b+f-d]:0;e+=Math.abs(a[b+f]-c)}return e},2:function(a,b,c){let d=0,e=b+c;for(let f=b;f<e;f++){let e=b>0?a[f-c]:0;d+=Math.abs(a[f]-e)}return d},3:function(a,b,c,d){let e=0;for(let f=0;f<c;f++){let g=f>=d?a[b+f-d]:0,h=b>0?a[b+f-c]:0;e+=Math.abs(a[b+f]-(g+h>>1))}return e},4:function(a,b,c,e){let f=0;for(let g=0;g<c;g++){let h=g>=e?a[b+g-e]:0,i=b>0?a[b+g-c]:0,j=b>0&&g>=e?a[b+g-(c+e)]:0;f+=Math.abs(a[b+g]-d(h,i,j))}return f}};a.exports=function(a,b,c,d,g){let h;if("filterType"in d&&-1!==d.filterType)if("number"==typeof d.filterType)h=[d.filterType];else throw Error("unrecognised filter types");else h=[0,1,2,3,4];16===d.bitDepth&&(g*=2);let i=b*g,j=0,k=0,l=Buffer.alloc((i+1)*c),m=h[0];for(let b=0;b<c;b++){if(h.length>1){let b=1/0;for(let c=0;c<h.length;c++){let d=f[h[c]](a,k,i,g);d<b&&(m=h[c],b=d)}}l[j]=m,j++,e[m](a,k,i,l,j,g),j+=i,k+=i}return l}},32835:(a,b,c)=>{let d=c(88397);function e(a,b){let c=a.a/255,d=b+'="'+a.hex+'"';return c<1?d+" "+b+'-opacity="'+c.toFixed(2).slice(1)+'"':d}function f(a,b,c){let d=a+b;return void 0!==c&&(d+=" "+c),d}b.render=function(a,b,c){let g=d.getOptions(b),h=a.modules.size,i=a.modules.data,j=h+2*g.margin,k=g.color.light.a?"<path "+e(g.color.light,"fill")+' d="M0 0h'+j+"v"+j+'H0z"/>':"",l="<path "+e(g.color.dark,"stroke")+' d="'+function(a,b,c){let d="",e=0,g=!1,h=0;for(let i=0;i<a.length;i++){let j=Math.floor(i%b),k=Math.floor(i/b);j||g||(g=!0),a[i]?(h++,i>0&&j>0&&a[i-1]||(d+=g?f("M",j+c,.5+k+c):f("m",e,0),e=0,g=!1),j+1<b&&a[i+1]||(d+=f("h",h),h=0)):e++}return d}(i,h,g.margin)+'"/>',m='<svg xmlns="http://www.w3.org/2000/svg" '+(g.width?'width="'+g.width+'" height="'+g.width+'" ':"")+('viewBox="0 0 '+j+" ")+j+'" shape-rendering="crispEdges">'+k+l+"</svg>\n";return"function"==typeof c&&c(null,m),m}},33340:(a,b,c)=>{"use strict";c.d(b,{AppShell:()=>dA});var d=c(48249),e=c(67484),f=c.n(e),g=c(19099);function h(a,b){let c=b&&a.startsWith(b)?"~"+a.slice(b.length):a,d=c.includes("/")?"/":"\\",e=c.split(d).filter(Boolean);return e.length<=2?c:"..."+d+e.slice(-2).join(d)}function i(a){let b=new Date(a);return Number.isNaN(b.getTime())?"":b.toLocaleString(void 0,{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}function j({open:a,cwd:b,homeDir:c,onClose:f,onSelectSession:g}){let[k,l]=(0,e.useState)(""),[m,n]=(0,e.useState)("current"),[o,p]=(0,e.useState)([]),[q,r]=(0,e.useState)(!1),[s,t]=(0,e.useState)(null),[u,v]=(0,e.useState)(!1),w=(0,e.useRef)(null);if(!a)return null;let x=k.trim(),y=o.reduce((a,b)=>a+b.matches.length,0);return(0,d.jsx)("div",{role:"dialog","aria-modal":"true","aria-label":"Search conversation history",style:{position:"fixed",inset:0,zIndex:500,display:"flex",alignItems:"flex-start",justifyContent:"center",padding:"8vh 16px 16px",background:"rgba(0,0,0,0.28)"},onMouseDown:a=>{a.target===a.currentTarget&&f()},children:(0,d.jsxs)("div",{style:{width:"min(760px, 100%)",maxHeight:"78vh",display:"flex",flexDirection:"column",background:"var(--bg)",border:"1px solid var(--border)",borderRadius:10,boxShadow:"0 16px 48px rgba(0,0,0,0.24)",overflow:"hidden"},children:[(0,d.jsxs)("div",{style:{padding:12,borderBottom:"1px solid var(--border)"},children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8},children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,flex:1,minWidth:0,background:"var(--bg-hover)",border:"1px solid var(--border)",borderRadius:8,padding:"0 10px"},children:[(0,d.jsxs)("svg",{width:"15",height:"15",viewBox:"0 0 16 16",fill:"none",stroke:"var(--text-dim)",strokeWidth:"1.7",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[(0,d.jsx)("circle",{cx:"7",cy:"7",r:"4.5"}),(0,d.jsx)("path",{d:"M10.5 10.5 13.5 13.5"})]}),(0,d.jsx)("input",{ref:w,value:k,onChange:a=>l(a.target.value),placeholder:"Search conversation history...",style:{flex:1,minWidth:0,height:38,background:"transparent",border:"none",outline:"none",color:"var(--text)",fontSize:14}})]}),(0,d.jsx)("button",{type:"button",onClick:f,title:"Close",style:{width:34,height:34,display:"inline-flex",alignItems:"center",justifyContent:"center",background:"none",border:"none",borderRadius:7,color:"var(--text-dim)",cursor:"pointer"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background="none",a.currentTarget.style.color="var(--text-dim)"},children:(0,d.jsxs)("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",children:[(0,d.jsx)("path",{d:"M4 4 12 12"}),(0,d.jsx)("path",{d:"M12 4 4 12"})]})})]}),(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,marginTop:10},children:[(0,d.jsx)("div",{style:{display:"inline-flex",padding:2,background:"var(--bg-hover)",border:"1px solid var(--border)",borderRadius:7},children:[{value:"current",label:"Current project",disabled:!b},{value:"all",label:"All history",disabled:!1}].map(a=>(0,d.jsx)("button",{type:"button",disabled:a.disabled,onClick:()=>n(a.value),style:{height:24,padding:"0 9px",background:m===a.value?"var(--bg-selected)":"transparent",border:"none",borderRadius:5,color:a.disabled?"var(--text-dim)":m===a.value?"var(--text)":"var(--text-muted)",cursor:a.disabled?"not-allowed":"pointer",fontSize:11,fontWeight:500},children:a.label},a.value))}),(0,d.jsx)("div",{style:{flex:1,minWidth:0,color:"var(--text-dim)",fontSize:11,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:"current"===m&&b?h(b,c):"Searching every saved session"})]})]}),(0,d.jsxs)("div",{style:{flex:1,overflowY:"auto",minHeight:180},children:[x.length<2&&(0,d.jsx)("div",{style:{padding:28,textAlign:"center",color:"var(--text-muted)",fontSize:13},children:"Type at least 2 characters to search saved conversations."}),x.length>=2&&q&&0===o.length&&(0,d.jsx)("div",{style:{padding:28,textAlign:"center",color:"var(--text-muted)",fontSize:13},children:"Searching..."}),s&&(0,d.jsx)("div",{style:{padding:18,color:"#ef4444",fontSize:13},children:s}),x.length>=2&&!q&&!s&&0===o.length&&(0,d.jsx)("div",{style:{padding:28,textAlign:"center",color:"var(--text-muted)",fontSize:13},children:"No matching conversations found."}),o.map(a=>(0,d.jsxs)("div",{style:{borderBottom:"1px solid var(--border)"},children:[(0,d.jsxs)("button",{type:"button",onClick:()=>{g(a.session),f()},style:{width:"100%",display:"flex",alignItems:"center",gap:10,padding:"10px 12px",background:"var(--bg-panel)",border:"none",borderBottom:"1px solid var(--border)",color:"var(--text)",cursor:"pointer",textAlign:"left"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.background="var(--bg-panel)"},children:[(0,d.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,minWidth:0},children:[(0,d.jsx)("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontSize:13,fontWeight:600},children:a.session.name||a.session.firstMessage||"(no messages)"}),(0,d.jsx)("span",{style:{flexShrink:0,color:"var(--text-dim)",fontSize:11},children:i(a.session.modified)})]}),(0,d.jsx)("div",{style:{marginTop:2,color:"var(--text-dim)",fontSize:11,fontFamily:"var(--font-mono)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:h(a.session.cwd,c)})]}),a.matchCount>a.matches.length&&(0,d.jsxs)("span",{style:{flexShrink:0,color:"var(--text-muted)",fontSize:11},children:[a.matchCount," matches"]})]}),a.matches.map(b=>(0,d.jsxs)("button",{type:"button",onClick:()=>{g(a.session),f()},style:{width:"100%",padding:"9px 14px 9px 28px",background:"none",border:"none",color:"var(--text-muted)",cursor:"pointer",textAlign:"left"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.background="none"},children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,marginBottom:3},children:[(0,d.jsx)("span",{style:{minWidth:54,color:"user"===b.role?"var(--accent)":"var(--text-dim)",fontSize:11,fontWeight:600,textTransform:"capitalize"},children:b.role}),(0,d.jsx)("span",{style:{color:"var(--text-dim)",fontSize:11},children:i(b.timestamp)})]}),(0,d.jsx)("div",{style:{fontSize:12,lineHeight:1.45,color:"var(--text-muted)"},children:function(a,b){let c=b.trim();if(!c)return a;let e=a.toLowerCase().indexOf(c.toLowerCase());return e<0?a:(0,d.jsxs)(d.Fragment,{children:[a.slice(0,e),(0,d.jsx)("mark",{style:{background:"rgba(37,99,235,0.16)",color:"var(--text)",borderRadius:3,padding:"0 2px"},children:a.slice(e,e+c.length)}),a.slice(e+c.length)]})}(b.snippet,x)})]},b.entryId))]},a.session.id))]}),(0,d.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",padding:"8px 12px",borderTop:"1px solid var(--border)",color:"var(--text-dim)",fontSize:11},children:[(0,d.jsx)("span",{children:y>0?`${y}${u?"+":""} results`:"Esc to close"}),q&&o.length>0&&(0,d.jsx)("span",{children:"Updating..."})]})]})})}let k="Home";function l(a){return a instanceof Error?a.message:String(a)}function m(a,b){let c=a.crumbs.findIndex(b=>b.path===a.home);if(-1===c)return a.crumbs;let d=a.crumbs.slice(c+1);return[{name:b,path:a.home},...d]}function n(a){return a.home.includes("\\")?"\\":"/"}let o={display:"flex",flexDirection:"column",gap:2,flex:"1 1 0",minWidth:256,overflowY:"auto",paddingRight:8},p={width:"100%",display:"flex",alignItems:"center",gap:5,height:28,flex:"none",padding:"0 6px",border:"none",borderRadius:6,background:"transparent",textAlign:"left",cursor:"pointer",color:"var(--text)",fontSize:12.5,fontFamily:"inherit"},q={background:"var(--bg-selected)"},r={flex:"1 1 0",minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontSize:12.5};function s({entries:a,selectedPath:b,busy:c,onPick:e,showHidden:f,filterPrefix:g}){let h,i,j,k=(h=null===g?"":g.toLowerCase(),i=a=>(f||!a.hidden||h.startsWith("."))&&a.name.toLowerCase().startsWith(h),j=""!==h&&a.some(i),a.filter(a=>a.path===b||(j?i(a):f||!a.hidden)));return(0,d.jsx)("div",{style:o,role:"list",children:k.map(a=>{let f=a.path===b;return(0,d.jsxs)("button",{type:"button",role:"listitem","aria-current":f||void 0,disabled:c,onClick:()=>e(a),title:a.path,style:{...p,...f?q:null},children:[(0,d.jsx)("svg",{width:"15",height:"15",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0,color:f?"var(--accent)":"var(--text-muted)"},children:(0,d.jsx)("path",{d:"M3 6.5A2.5 2.5 0 0 1 5.5 4H10l2 2.5h6.5A2.5 2.5 0 0 1 21 9v8.5A2.5 2.5 0 0 1 18.5 20h-13A2.5 2.5 0 0 1 3 17.5v-11Z"})}),(0,d.jsx)("span",{style:r,children:a.name}),(0,d.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0,color:"var(--text-dim)"},children:(0,d.jsx)("polyline",{points:"3.5 2 6.5 5 3.5 8"})})]},a.path)})})}function t({open:a,initialPath:b,onClose:c,onSelect:f}){let[g,h]=(0,e.useState)(null),[i,j]=(0,e.useState)(null),[o,p]=(0,e.useState)(null),[q,r]=(0,e.useState)(!1),[u,v]=(0,e.useState)(!1),[w,x]=(0,e.useState)(0),[y,z]=(0,e.useState)(null),[A,B]=(0,e.useState)(null),[C,D]=(0,e.useState)(!1),[E,F]=(0,e.useState)(null),[G,H]=(0,e.useState)(!1),[I,J]=(0,e.useState)(null),K=(0,e.useRef)(0),L=(0,e.useRef)(null),M=(0,e.useRef)(0),N=(0,e.useRef)(!1),O=(0,e.useRef)(!1),P=(0,e.useRef)(null);(0,e.useRef)({parent:null,child:null});let Q=(0,e.useRef)(null),R=(0,e.useRef)(null),S=(0,e.useCallback)((a,b)=>fetch(a?`/api/projects/browse?dir=${encodeURIComponent(a)}`:"/api/projects/browse",{signal:b}).then(async a=>{let b=await a.json();if(!a.ok||b.error)throw Error(b.error??`HTTP ${a.status}`);return b}),[]),T=(0,e.useCallback)(()=>(L.current?.abort(),L.current=null,++K.current),[]),U=(0,e.useCallback)(()=>{v(!1),x(a=>a+1)},[]),V=(0,e.useCallback)(a=>{let b=T(),c=new AbortController;return L.current=c,U(),{seq:b,scan:S(a,c.signal)}},[T,U,S]),W=(0,e.useCallback)(a=>{let b=new AbortController;return L.current=b,U(),S(a,b.signal)},[U,S]),X=(0,e.useCallback)((a,b)=>{let c=b?.closeEditor??!1,d=b?.announce??!1,{seq:e,scan:f}=V(a);r(!0),d&&z(null);let g=()=>{(r(!1),c)?B(null):z(null)};f.then(b=>{if(e!==K.current)return;c||void 0===a||(P.current={directory:a,landed:b.current});let d=!1,f=()=>{d||e!==K.current||(d=!0,h(b),j(null),p(null),g())};if(m(b,"").length<2)return void f();let i=b.crumbs.at(-2);void 0===i?f():(W(i.path).then(a=>{if(e!==K.current)return;let c=n(a),i=a=>"\\"===c?a.toLowerCase():a,k=a.directories.find(a=>i(a.path)===i(b.current));void 0===k?f():(d=!0,h(a),j(k),p(b),g())},()=>{f()}),c&&window.setTimeout(f,200))},a=>{e===K.current&&(r(!1),d&&z(l(a)))})},[V,W]),Y=(0,e.useCallback)(a=>{X(a,{closeEditor:!0,announce:!0})},[X]),Z=(0,e.useCallback)(a=>{let{seq:b,scan:c}=V(a.path);null!==A&&B(null),j(a),p(null),r(!0),z(null),c.then(a=>{b===K.current&&(p(a),r(!1))},a=>{b===K.current&&(r(!1),z(l(a)),j(null))})},[V,A]),$=(0,e.useCallback)(a=>{null!==o&&(h(o),Z(a))},[o,Z]);(0,e.useCallback)(a=>{X(a,{closeEditor:!1,announce:!1})},[X]);let _=(0,e.useCallback)(()=>{T(),r(!1),B(null),z(null),null===o&&j(null),null===g&&Y()},[T,o,g,Y]),aa=o??g,ab=null===aa?[]:m(aa,k);ab.at(-1)?.path,o?.current;let ac=i?.path??g?.current??null,ad=(0,e.useCallback)(()=>{if(null===ac||null===E||G||""===E.trim())return;H(!0),J(null);let a=M.current;fetch("/api/projects/browse",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({dir:ac,name:E})}).then(async a=>{let b=await a.json();if(!a.ok||b.error)throw Error(b.error??`HTTP ${a.status}`);if("string"!=typeof b.path)throw Error("No path returned");return b.path}).then(b=>{if(a!==M.current)return;H(!1),F(null);let{seq:c,scan:d}=V(ac);r(!0),z(null),d.then(a=>{c===K.current&&(h(a),r(!1),Z({name:E,path:b,hidden:E.startsWith(".")}))},a=>{c===K.current&&(r(!1),z(l(a)))})},b=>{a===M.current&&(H(!1),J(l(b)))})},[ac,E,G,V,Z]),ae={onCompositionStart:()=>{N.current=!0},onCompositionEnd:()=>{N.current=!1}};if(!a)return null;let af=null!==i,ag=null===aa||null===A?null:function(a,b,c){let d,e,f=-1===(d="\\"===n(a)?Math.max(b.lastIndexOf("\\"),b.lastIndexOf("/")):b.lastIndexOf("/"))?null:b.slice(0,d+1);if(null===f)return{directory:null,tail:null};let g=f===(e=n(a),a.current.endsWith(e)?a.current:`${a.current}${e}`)||null!==c&&c.directory===f&&c.landed===a.current;return{directory:f,tail:g?b.slice(f.length):null}}(aa,A,P.current).tail,ah=i?.name??(null===g?"":m(g,k).at(-1)?.name??g.current),ai=null!==E||G,aj=null!==A,ak=aa?.drives??[],al=aa?n(aa):"/";return(0,d.jsxs)("div",{onMouseDown:a=>{a.target===a.currentTarget&&c()},style:{position:"fixed",inset:0,zIndex:1200,display:"flex",alignItems:"center",justifyContent:"center",padding:18,background:"rgba(0,0,0,0.34)"},children:[(0,d.jsxs)("div",{style:{width:"min(680px, 100%)",height:"min(500px, calc(100dvh - 32px))",display:"flex",flexDirection:"column",background:"var(--bg)",border:"1px solid var(--border)",borderRadius:10,boxShadow:"0 12px 40px rgba(0,0,0,0.25)",overflow:"hidden"},children:[(0,d.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:8,flex:"none",padding:"16px 14px 8px 24px",borderBottom:"1px solid var(--border)"},children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",minHeight:24},children:[(0,d.jsx)("div",{style:{color:"var(--text)",fontSize:15,fontWeight:700},children:"Select project path"}),(0,d.jsx)("button",{type:"button",onClick:c,"aria-label":"Close",title:"Close",style:{width:28,height:28,border:"none",borderRadius:6,background:"transparent",color:"var(--text-muted)",cursor:"pointer",fontSize:18,lineHeight:1},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background="transparent",a.currentTarget.style.color="var(--text-muted)"},children:"\xd7"})]}),(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:4,boxSizing:"border-box",minHeight:26,marginLeft:-9,padding:"0 8px",border:`1px solid ${null!==A?"var(--border)":"transparent"}`,borderRadius:8},children:[ak.length>0&&(0,d.jsxs)("select",{value:ak.find(a=>(aa?.current??"").toLowerCase().startsWith(a.toLowerCase()))??"",onChange:a=>{a.target.value&&Y(a.target.value)},disabled:ai,title:"Drive",style:{height:24,border:"1px solid var(--border)",borderRadius:6,background:"var(--bg)",color:"var(--text-muted)",fontSize:11,maxWidth:72},children:[(0,d.jsx)("option",{value:"",children:"Drive"}),ak.map(a=>(0,d.jsx)("option",{value:a,children:a},a))]}),null===A?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("span",{ref:Q,role:"navigation",style:{display:"flex",alignItems:"center",gap:4,flex:"0 1 auto",minWidth:0,overflowX:"auto",scrollbarWidth:"none"},children:ab.map((a,b)=>(0,d.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:4,flex:"none",minWidth:0},children:[b>0&&(0,d.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0,color:"var(--text-dim)"},children:(0,d.jsx)("polyline",{points:"3.5 2 6.5 5 3.5 8"})}),(0,d.jsx)("button",{type:"button",disabled:ai,onClick:()=>Y(a.path),title:a.path,style:{border:"none",background:"transparent",padding:0,maxWidth:160,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontFamily:"var(--font-mono)",fontSize:12,color:"var(--text-muted)",cursor:"pointer"},children:a.name})]},a.path))}),(0,d.jsx)("button",{type:"button","aria-label":"Edit path",title:"Edit path",disabled:ai,onClick:()=>{if(T(),r(!1),O.current=!1,null===g)return void B("");let a=i?.path??g.current;B(a.endsWith(al)?a:`${a}${al}`)},style:{display:"flex",alignItems:"center",justifyContent:"flex-end",flex:"1 0 34px",minWidth:34,height:22,padding:0,border:"none",background:"transparent",cursor:"text"},children:(0,d.jsx)("svg",{width:"13",height:"13",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",style:{color:"var(--text-dim)"},children:(0,d.jsx)("path",{d:"M11.3 2.2a1.9 1.9 0 0 1 2.5 2.5L6 12.5 2.5 13.5 3.5 10l7.8-7.8Z"})})})]}):(0,d.jsx)("input",{value:A,autoFocus:!0,"aria-label":"Edit path",disabled:ai,spellCheck:!1,onChange:a=>{T(),r(!1),O.current=!1,B(a.target.value)},...ae,onKeyDown:a=>{"Enter"!==a.key||N.current||(a.preventDefault(),""!==A.trim()&&(O.current=!0,Y(A)))},onBlur:a=>{if(null===A||!document.hasFocus())return;let b=a.currentTarget.closest('[role="dialog"]');null===b||a.relatedTarget instanceof Node&&b.contains(a.relatedTarget)||_()},style:{boxSizing:"border-box",flex:"1 1 0",minWidth:0,height:22,padding:0,border:"none",outline:"none",background:"transparent",fontFamily:"var(--font-mono)",fontSize:12,color:"var(--text)"}})]})]}),(0,d.jsxs)("div",{style:{display:"flex",flexDirection:"column",flex:"1 1 0",minHeight:0,position:"relative",padding:"16px 16px 16px 24px"},children:[(0,d.jsxs)("div",{ref:R,style:{display:"flex",alignItems:"stretch",flex:"1 1 0",minHeight:0,gap:12,overflowX:"auto",scrollbarWidth:"none"},children:[null!==g&&(0,d.jsx)(s,{entries:g.directories,selectedPath:i?.path??null,busy:ai,onPick:Z,showHidden:C,filterPrefix:null===o?ag:null}),af&&(0,d.jsx)("span",{style:{flex:"none",width:1,background:"var(--border)"}}),af&&null!==o&&(0,d.jsx)(s,{entries:o.directories,selectedPath:null,busy:ai,onPick:$,showHidden:C,filterPrefix:ag})]}),q&&u&&(0,d.jsx)("div",{role:"status",style:{position:"absolute",right:16,bottom:8,padding:"2px 8px",background:"var(--bg-panel)",border:"1px solid var(--border)",borderRadius:6,color:"var(--text-muted)",fontSize:11},children:"Loading…"}),(g?.truncated===!0||o?.truncated===!0)&&(0,d.jsx)("div",{role:"status",style:{padding:"4px 4px 4px 0",color:"var(--text-muted)",fontSize:11},children:"Large directory — list may be incomplete"}),null!==y&&(0,d.jsx)("div",{role:"alert",style:{padding:"4px 4px 4px 0",color:"#f87171",fontSize:11},children:y})]}),(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",flexWrap:"wrap",gap:8,flex:"none",padding:"14px 24px",borderTop:"1px solid var(--border)"},children:[(0,d.jsxs)("button",{type:"button",disabled:null===g||q||ai||aj,onClick:()=>{F(""),J(null)},style:{display:"inline-flex",alignItems:"center",gap:5,height:30,padding:"0 10px",border:"1px solid var(--border)",borderRadius:6,background:"var(--bg-panel)",color:null===g||q||ai||aj?"var(--text-dim)":"var(--text-muted)",cursor:null===g||q||ai||aj?"default":"pointer",fontSize:12},children:[(0,d.jsx)("svg",{width:"12",height:"12",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round",children:(0,d.jsx)("path",{d:"M8 3v10M3 8h10"})}),"New folder"]}),(0,d.jsxs)("button",{type:"button","aria-pressed":C,disabled:ai,onClick:()=>D(a=>!a),style:{display:"inline-flex",alignItems:"center",gap:4,border:"none",background:"transparent",padding:0,fontSize:12,fontWeight:500,color:C?"var(--text)":"var(--text-muted)",cursor:"pointer",whiteSpace:"nowrap"},children:["Show hidden files",C&&(0,d.jsx)("svg",{width:"11",height:"11",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:(0,d.jsx)("polyline",{points:"2.5 8.5 6 12 13.5 4.5"})})]}),(0,d.jsx)("div",{style:{flex:"1 1 0"}}),(0,d.jsx)("button",{type:"button",onClick:c,style:{height:32,padding:"0 12px",border:"1px solid var(--border)",borderRadius:6,background:"var(--bg-panel)",color:"var(--text-muted)",cursor:"pointer",fontSize:12},children:"Cancel"}),(0,d.jsx)("button",{type:"button",disabled:null===ac||q||ai||aj,onClick:()=>{null!==ac&&f(ac)},style:{height:32,padding:"0 14px",border:"none",borderRadius:6,background:null===ac||q||ai||aj?"var(--bg-hover)":"var(--accent)",color:null===ac||q||ai||aj?"var(--text-dim)":"#fff",cursor:null===ac||q||ai||aj?"default":"pointer",fontSize:12,fontWeight:650},children:"Open"})]})]}),null!==E&&(0,d.jsx)("div",{onMouseDown:a=>{a.target!==a.currentTarget||G||F(null)},style:{position:"fixed",inset:0,zIndex:1300,display:"flex",alignItems:"center",justifyContent:"center",background:"rgba(0,0,0,0.25)"},children:(0,d.jsxs)("div",{style:{width:"min(380px, 100%)",display:"flex",flexDirection:"column",gap:12,padding:"20px 24px",background:"var(--bg)",border:"1px solid var(--border)",borderRadius:10,boxShadow:"0 12px 40px rgba(0,0,0,0.3)"},children:[(0,d.jsx)("div",{style:{color:"var(--text)",fontSize:15,fontWeight:700},children:"New folder"}),(0,d.jsxs)("div",{style:{color:"var(--text)",fontSize:12.5},children:["in ",(0,d.jsx)("span",{style:{fontFamily:"var(--font-mono)",color:"var(--text-muted)"},children:ah})]}),(0,d.jsx)("input",{value:E,"aria-label":"Folder name",placeholder:"untitled folder",autoFocus:!0,disabled:G,spellCheck:!1,onChange:a=>F(a.target.value),...ae,onKeyDown:a=>{"Enter"!==a.key||N.current||(a.preventDefault(),ad()),"Escape"!==a.key||G||(a.stopPropagation(),F(null))},style:{boxSizing:"border-box",width:"100%",height:36,padding:"0 12px",border:"1px solid var(--border)",borderRadius:8,outline:"none",background:"var(--bg-panel)",fontSize:13,color:"var(--text)"}}),null!==I&&(0,d.jsx)("div",{role:"alert",style:{color:"#f87171",fontSize:11},children:I}),(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"flex-end",gap:8},children:[(0,d.jsx)("button",{type:"button",disabled:G,onClick:()=>F(null),style:{height:30,padding:"0 12px",border:"1px solid var(--border)",borderRadius:6,background:"var(--bg-panel)",color:"var(--text-muted)",cursor:"pointer",fontSize:12},children:"Cancel"}),(0,d.jsx)("button",{type:"button",disabled:G||""===E.trim(),onClick:ad,style:{height:30,padding:"0 14px",border:"none",borderRadius:6,background:G||""===E.trim()?"var(--bg-hover)":"var(--accent)",color:G||""===E.trim()?"var(--text-dim)":"#fff",cursor:G||""===E.trim()?"default":"pointer",fontSize:12,fontWeight:650},children:G?"Creating…":"Create"})]})]})})]})}let u="AnnoVibe";function v(a){}async function w(a,b){let c=`${a}: HTTP ${b.status}`;try{let d=await b.json();return"string"==typeof d.error&&d.error?`${a}: ${d.error}`:c}catch{return c}}function x(a){return new DOMException(a,"TimeoutError")}function y(a,b){return a instanceof DOMException&&("AbortError"===a.name||"TimeoutError"===a.name)||a instanceof Error&&/aborted without reason|AbortError/i.test(a.message)?b:a instanceof Error?a.message:String(a)}function z(a){let b=new Date(a),c=new Date().getTime()-b.getTime(),d=Math.floor(c/6e4),e=Math.floor(c/36e5),f=Math.floor(c/864e5);return d<1?"just now":d<60?`${d}m ago`:e<24?`${e}h ago`:f<7?`${f}d ago`:b.toLocaleDateString()}function A(a,b){let c=b&&a.startsWith(b)?"~"+a.slice(b.length):a,d=c.includes("/")?"/":"\\",e=c.split(d).filter(Boolean);return e.length<=2?c:"…/"+e.slice(-2).join(d)}function B(a,b){if(!a)return"No Project";let c=a.replace(/[\\/]+$/,""),d=c.includes("/")?"/":"\\";return c.split(d).filter(Boolean).pop()||A(a,b)}function C(){let[a,b]=(0,e.useState)(!1),[c,f]=(0,e.useState)(!1),g=(0,e.useRef)(null),h=function(a){let[b,c]=(0,e.useState)(a);return(0,e.useRef)(null),(0,e.useRef)(0),b}(a?"v0.8.133":u),i=(0,e.useCallback)(a=>{b(a),f(!0),setTimeout(()=>f(!1),(a?6:8)*4*(1e3/60)+100)},[]),j=(0,e.useCallback)(()=>{g.current&&clearTimeout(g.current);let b=!a;i(b),b&&(g.current=setTimeout(()=>i(!1),3e3))},[a,i]);return(0,d.jsx)("button",{onClick:j,style:{background:"none",border:"none",padding:0,cursor:"default",fontWeight:700,fontSize:15,letterSpacing:"-0.01em",color:a?"var(--accent)":"var(--text)",fontFamily:"var(--font-mono)",minWidth:"9ch"},children:h})}function D({selectedSessionId:a,onSelectSession:b,onNewSession:c,onNewWorkbench:f,initialSessionId:g,onInitialRestoreDone:h,refreshKey:i,onSessionDeleted:k,selectedCwd:l,onCwdChange:m}){let[n,o]=(0,e.useState)([]),[p,q]=(0,e.useState)({}),[r,s]=(0,e.useState)(()=>new Set),u=(0,e.useRef)(!1),[z,J]=(0,e.useState)(!0),[K,L]=(0,e.useState)(!1),[M,N]=(0,e.useState)(null),[O,P]=(0,e.useState)(null),[Q,R]=(0,e.useState)(""),[S,T]=(0,e.useState)(null),[U,V]=(0,e.useState)(!1),[W,X]=(0,e.useState)("project"),[Y,Z]=(0,e.useState)(null),[$,_]=(0,e.useState)(!1),[aa,ab]=(0,e.useState)(!1),[ac,ad]=(0,e.useState)(()=>new Set),[ae,af]=(0,e.useState)(()=>new Set),[ag,ah]=(0,e.useState)(null),[ai,aj]=(0,e.useState)(null),[ak,al]=(0,e.useState)(null),[am,an]=(0,e.useState)(!1),ao=(0,e.useRef)(null),ap=(0,e.useRef)(!1),aq=(0,e.useRef)(!1);(0,e.useRef)(!1);let ar=(0,e.useRef)(new Map),as=(0,e.useRef)({revision:null,seq:0,retry:0,inFlight:!1}),at=(0,e.useRef)({}),au=(0,e.useRef)({}),av=(0,e.useRef)({}),aw=(0,e.useRef)(new Set);function ax(a){let b=at.current[a];return b||(b={revision:null,seq:0,retry:0,inFlight:!1},at.current[a]=b),b}let ay=(0,e.useCallback)((a,b,c)=>{let d=au.current[a];d&&clearTimeout(d),au.current[a]=setTimeout(()=>{au.current[a]=null,c()},Math.random()*([250,500,1e3,2e3][Math.min(Math.max(b,0),3)]??2e3))},[]);(0,e.useCallback)((a,b)=>{let c=av.current[a];c&&clearTimeout(c),av.current[a]=setTimeout(()=>{av.current[a]=null,b()},120)},[]);let az=(0,e.useCallback)(async(a=!1,b={})=>{let c=as.current,d=++c.seq;c.inFlight=!0;try{let e;a&&J(!0);let f=new AbortController;try{e=setTimeout(()=>f.abort(x("Project loading timed out")),6e4);let a=b.force?"/api/projects?force=1":"/api/projects",g=await fetch(a,{signal:f.signal});if(!g.ok)throw Error(await w("projects",g));let h=await g.json();if(d!==c.seq)return;if(h.stale)return void ay("projects",c.retry++,()=>void az(!1));c.retry=0,h.revision&&(c.revision=h.revision),o(h.projects),N(null)}finally{clearTimeout(e)}}catch(a){if(d!==c.seq)return;N(y(a,"Loading projects timed out. Codex may still be starting; click Refresh to retry.")),ay("projects",c.retry++,()=>void az(!1))}finally{d===c.seq&&(c.inFlight=!1),a&&J(!1)}},[ay]),aA=(0,e.useCallback)(async(a,b=!1,c={})=>{if(!a)return;let d=ar.current.get(a);if(d)return d;let e=(async()=>{let d=ax(a),e=++d.seq;d.inFlight=!0,q(b=>({...b,[a]:{sessions:b[a]?.sessions??[],loaded:b[a]?.loaded??!1,error:null,loading:!0,stale:b[a]?.stale??!1}}));try{let f;b&&J(!0);let g=new AbortController;try{f=setTimeout(()=>g.abort(x("Chat loading timed out")),6e4);let b=c.force?`/api/sessions?cwd=${encodeURIComponent(a)}&force=1`:`/api/sessions?cwd=${encodeURIComponent(a)}`,h=await fetch(b,{signal:g.signal});if(!h.ok)throw Error(await w("sessions",h));let i=await h.json();if(e!==d.seq)return;if(i.runningSessionIds&&!u.current&&s(new Set(i.runningSessionIds)),i.stale){q(b=>({...b,[a]:{sessions:b[a]?.sessions??[],loaded:b[a]?.loaded??!1,loading:!1,error:null,stale:(b[a]?.sessions?.length??0)>0}})),ay(`cwd:${a}`,d.retry++,()=>void aA(a,!1));return}d.retry=0,i.revision&&(d.revision=i.revision),aw.current.add(a),q(b=>({...b,[a]:{sessions:i.sessions,loaded:!0,loading:!1,error:null,stale:!1}}))}finally{clearTimeout(f)}}catch(c){if(e!==d.seq)return;let b=y(c,"Loading chats timed out. Codex may still be starting; click Refresh to retry.");q(c=>({...c,[a]:{sessions:c[a]?.sessions??[],loaded:c[a]?.loaded??!1,loading:!1,error:b,stale:(c[a]?.sessions?.length??0)>0}})),ay(`cwd:${a}`,d.retry++,()=>void aA(a,!1))}finally{e===d.seq&&(d.inFlight=!1),b&&J(!1),ar.current.delete(a)}})();return ar.current.set(a,e),e},[ay]),aB=(0,e.useCallback)(async()=>{let a=as.current;if(a.inFlight)return;let b=a.revision?`/api/projects?fingerprint=1&revision=${encodeURIComponent(a.revision)}`:"/api/projects?fingerprint=1";try{let c=await fetch(b);if(!c.ok)throw Error(await w("projects",c));let d=await c.json();if(d.stale)return void ay("projects",a.retry++,()=>void aB());if(!0===d.unchanged)return;az(!1)}catch{ay("projects",a.retry++,()=>void aB())}},[az,ay]),aC=(0,e.useCallback)(async a=>{let b=ax(a);if(b.inFlight)return;let c=b.revision?`/api/sessions?cwd=${encodeURIComponent(a)}&fingerprint=1&revision=${encodeURIComponent(b.revision)}`:`/api/sessions?cwd=${encodeURIComponent(a)}&fingerprint=1`;try{let d=await fetch(c);if(!d.ok)throw Error(await w("sessions",d));let e=await d.json();if(e.stale)return void ay(`cwd:${a}`,b.retry++,()=>void aC(a));if(!0===e.unchanged)return;aA(a,!1)}catch{ay(`cwd:${a}`,b.retry++,()=>void aC(a))}},[aA,ay]);(0,e.useRef)(!1),(0,e.useRef)(!1);let aD=(0,e.useCallback)(async(a,b=!1)=>{try{let c=await fetch("/api/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cwd:a,create:b})}),d=await c.json();if(!c.ok||d.error)return T(d.error??`HTTP ${c.status}`),null;return az(!1),d.project?.cwd??a}catch(a){return T(a instanceof Error?a.message:String(a)),null}},[az]),aE=(0,e.useCallback)(a=>{fetch("/api/projects",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({cwd:a,touch:!0})}).catch(()=>{})},[]),aF=(0,e.useCallback)(a=>{aq.current=!0,P(a),T(null),af(b=>{if(!b.has(a))return b;let c=new Set(b);return c.delete(a),v(c),c}),m?.(a),aE(a),aA(a,!1)},[aA,m,aE]),aG=l??O;(0,e.useRef)(null);let aH=(0,e.useCallback)(a=>{if(!a){X("agent"),V(!0);return}let b="function"==typeof crypto.randomUUID?crypto.randomUUID():`${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}-${Math.random().toString(36).slice(2)}`;c?.(b,a)},[c]),aI=(0,e.useCallback)(a=>{if(!a){X("workbench"),V(!0);return}f?.(a)},[f]),aJ=(0,e.useCallback)(async a=>{let b=await aD(a,!0);b&&(aF(b),V(!1),T(null),"agent"===W&&aH(b),"workbench"===W&&aI(b))},[aF,aH,aI,W,aD]),aK=(0,e.useCallback)(a=>{Z(a),_(!0)},[]),aL=(0,e.useCallback)(()=>{_(!1),Z(null)},[]),aM=(0,e.useCallback)(a=>{let b=Y??aG;aL(),"agent"===a?aH(b):aI(b)},[aL,aH,aI,aG,Y]),aN=(0,e.useCallback)(()=>{aK(aG)},[aG,aK]),aO=(0,e.useCallback)(()=>{X("project"),T(null),V(!0)},[]),aP=(0,e.useMemo)(()=>[...aG&&!n.some(a=>a.cwd===aG)?[{cwd:aG,displayName:B(aG,Q),chatCount:p[aG]?.sessions.length??0,lastAccessed:null,created:null,pinned:!1,sortOrder:null,exists:!0,source:"manual"}]:[],...n].sort((a,b)=>{let c=!0===a.pinned;if(c!==(!0===b.pinned))return c?-1:1;let d="number"==typeof a.sortOrder?a.sortOrder:Number.MAX_SAFE_INTEGER,e="number"==typeof b.sortOrder?b.sortOrder:Number.MAX_SAFE_INTEGER;return d!==e?d-e:(a.displayName||"").localeCompare(b.displayName||"",void 0,{numeric:!0,sensitivity:"base"})}),[aG,Q,n,p]),aQ=(0,e.useMemo)(()=>{let a=a=>{var b,c;let d,e,f=p[a.cwd],g=[...f?.sessions??[]].sort((a,b)=>(b.modified||"").localeCompare(a.modified||"")),h=f?.loaded?f.sessions.length:a.chatCount,i=(b=a.lastAccessed,c=f?.loaded?f.sessions[0]?.modified:null,d=b?new Date(b).getTime():-1/0,e=c?new Date(c).getTime():-1/0,Number.isFinite(d)||Number.isFinite(e)?d>=e?b??null:c??null:null);return{project:a,cwd:a.cwd,displayName:a.displayName||B(a.cwd,Q),sessions:g,sessionsState:f,chatCount:h??0,lastAccessed:i??""}},b=aP.filter(a=>!0===a.pinned).map(a);if(aG){let c=aP.find(a=>a.cwd===aG);c&&!0!==c.pinned&&b.push(a(c))}return b},[aG,Q,p,aP]),aR=(0,e.useCallback)((a,c=!1)=>{a.cwd!==aG&&(ap.current=!0,P(a.cwd)),af(b=>{if(!b.has(a.cwd))return b;let c=new Set(b);return c.delete(a.cwd),v(c),c}),aE(a.cwd),b(a,c)},[b,aG,aE]),aS=(0,e.useCallback)(a=>{af(b=>{let c=new Set(b);return c.has(a)?c.delete(a):c.add(a),v(c),c})},[]),aT=(0,e.useCallback)(a=>{ad(b=>{let c=new Set(b);return c.has(a)?c.delete(a):c.add(a),c})},[]),aU=(0,e.useCallback)(async a=>{al("reorder");try{let b=await fetch("/api/projects",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({order:a})}),c=await b.json();if(!b.ok||c.error)throw Error(c.error??`HTTP ${b.status}`);N(null),az(!1)}catch(a){N(a instanceof Error?a.message:String(a)),az(!1)}finally{al(null)}},[az]),aV=(0,e.useCallback)(async(a,b)=>{al(`pin:${a}`);try{let c=await fetch("/api/projects",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({cwd:a,pinned:b})}),d=await c.json();if(!c.ok||d.error)throw Error(d.error??`HTTP ${c.status}`);N(null),az(!1)}catch(a){N(a instanceof Error?a.message:String(a)),az(!1)}finally{al(null)}},[az]),aW=(0,e.useCallback)((a,b)=>{if(!a||!b||a===b)return;let c=aP.map(a=>a.cwd).filter(Boolean),d=c.indexOf(a),e=c.indexOf(b);if(-1===d||-1===e)return;let f=[...c];f.splice(d,1);let g=f.indexOf(b);f.splice(g,0,a),aU(f)},[aU,aP]),aX=(0,e.useCallback)(async()=>{L(!0);try{await az(!1,{force:!0});let a=new Set([...Object.entries(p).filter(([,a])=>a.loaded||a.loading).map(([a])=>a),...aG?[aG]:[]]);await Promise.all([...a].map(a=>aA(a,!1,{force:!0})))}finally{L(!1)}},[aG,az,aA,p]);return(0,d.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",overflow:"hidden"},children:[(0,d.jsx)("div",{style:{padding:"12px 10px 10px",borderBottom:"1px solid var(--border)",flexShrink:0},children:(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:8},children:[(0,d.jsx)(C,{}),(0,d.jsxs)("div",{style:{display:"flex",gap:6,minWidth:0},children:[(0,d.jsxs)("button",{onClick:aN,style:{display:"flex",alignItems:"center",justifyContent:"center",gap:5,background:"var(--bg-hover)",border:"1px solid var(--border)",color:"var(--text-muted)",cursor:"pointer",height:32,paddingLeft:10,paddingRight:12,borderRadius:7,fontSize:12,fontWeight:500,letterSpacing:"-0.01em",flexShrink:0,transition:"background 0.12s, color 0.12s, border-color 0.12s"},title:aG?`New chat in ${aG}`:"New chat in a project path",onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-selected)",a.currentTarget.style.color="var(--accent)",a.currentTarget.style.borderColor="rgba(37,99,235,0.35)"},onMouseLeave:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text-muted)",a.currentTarget.style.borderColor="var(--border)"},children:[(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:"2.2",strokeLinecap:"round",children:[(0,d.jsx)("line",{x1:"6",y1:"1",x2:"6",y2:"11"}),(0,d.jsx)("line",{x1:"1",y1:"6",x2:"11",y2:"6"})]}),"New Chat"]}),(0,d.jsx)("button",{onClick:()=>ab(!0),style:{display:"flex",alignItems:"center",justifyContent:"center",background:"var(--bg-hover)",border:"1px solid var(--border)",color:"var(--text-muted)",cursor:"pointer",width:32,height:32,borderRadius:7,padding:0,flexShrink:0,transition:"background 0.12s, color 0.12s, border-color 0.12s"},title:"Search conversations",onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-selected)",a.currentTarget.style.color="var(--accent)",a.currentTarget.style.borderColor="rgba(37,99,235,0.35)"},onMouseLeave:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text-muted)",a.currentTarget.style.borderColor="var(--border)"},children:(0,d.jsxs)("svg",{width:"15",height:"15",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"1.7",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("circle",{cx:"7",cy:"7",r:"4.4"}),(0,d.jsx)("path",{d:"M10.4 10.4 13.2 13.2"})]})})]})]})}),(0,d.jsx)(j,{open:aa,cwd:aG,homeDir:Q,onClose:()=>ab(!1),onSelectSession:a=>{aR(a)}}),(0,d.jsxs)("div",{ref:ao,style:{position:"relative",marginTop:8,padding:"0 10px",display:"flex",alignItems:"stretch",gap:4},children:[(0,d.jsxs)("button",{type:"button",onClick:()=>an(a=>!a),style:{flex:1,minWidth:0,display:"flex",alignItems:"center",gap:6,padding:"6px 10px",background:aG?"var(--bg-hover)":"rgba(37,99,235,0.06)",border:aG?"1px solid var(--border)":"1px solid rgba(37,99,235,0.4)",borderRadius:7,cursor:"pointer",fontSize:12,color:"var(--text)",textAlign:"left"},title:aG??"Select project",children:[(0,d.jsx)("svg",{width:"14",height:"14",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"1.35",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0,color:"var(--accent)"},children:(0,d.jsx)("path",{d:"M1.5 5A1.5 1.5 0 0 1 3 3.5h3l1.2 1.5H13A1.5 1.5 0 0 1 14.5 6.5L13.6 11A1.5 1.5 0 0 1 12.1 12.5H3A1.5 1.5 0 0 1 1.5 11V5Z"})}),(0,d.jsx)("span",{style:{flex:1,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontFamily:"var(--font-mono)",fontSize:11,color:aG?"var(--text)":"var(--text-dim)"},children:aG?aP.find(a=>a.cwd===aG)?.displayName??A(aG,Q):"Select project…"}),(0,d.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",stroke:"var(--text-dim)",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0,transform:am?"rotate(180deg)":"none",transition:"transform 0.15s"},children:(0,d.jsx)("polyline",{points:"2 3.5 5 6.5 8 3.5"})})]}),aG&&(0,d.jsx)(F,{pinned:aP.find(a=>a.cwd===aG)?.pinned===!0,onToggle:()=>void aV(aG,aP.find(a=>a.cwd===aG)?.pinned!==!0)}),am&&(0,d.jsxs)("div",{style:{position:"absolute",top:"calc(100% + 4px)",left:10,right:10,zIndex:100,background:"var(--bg)",border:"1px solid var(--border)",borderRadius:8,boxShadow:"0 6px 20px rgba(0,0,0,0.10)",overflow:"hidden",maxHeight:280,overflowY:"auto"},children:[0===aP.length&&(0,d.jsx)("div",{style:{padding:"10px 12px",color:"var(--text-dim)",fontSize:11},children:"No projects yet"}),aP.map(a=>{let b=a.cwd===aG;return(0,d.jsx)(G,{project:a,homeDir:Q,isCurrent:b,onSelect:()=>{aF(a.cwd),an(!1)},onTogglePinned:()=>void aV(a.cwd,!0!==a.pinned)},a.cwd)})]})]}),(0,d.jsxs)("div",{style:{flexShrink:0,padding:"10px 10px 6px"},children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:8},children:[(0,d.jsx)("span",{style:{color:"var(--text-dim)",fontSize:10,fontWeight:600,letterSpacing:"0.05em",textTransform:"uppercase"},children:"Projects"}),(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:4,marginLeft:"auto"},children:[(0,d.jsx)("button",{type:"button",onClick:aX,disabled:K,title:"Refresh projects and chats","aria-label":"Refresh projects and chats",style:{width:22,height:22,display:"flex",alignItems:"center",justifyContent:"center",padding:0,border:"1px solid var(--border)",borderRadius:5,background:"var(--bg-panel)",color:K?"var(--accent)":"var(--text-dim)",cursor:K?"default":"pointer",flexShrink:0},children:(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{animation:K?"spin 0.9s linear infinite":void 0},children:[(0,d.jsx)("path",{d:"M21 12a9 9 0 0 1-15.5 6.2"}),(0,d.jsx)("path",{d:"M3 12A9 9 0 0 1 18.5 5.8"}),(0,d.jsx)("path",{d:"M7 18H5.5v1.5"}),(0,d.jsx)("path",{d:"M17 6h1.5V4.5"})]})}),(0,d.jsx)("button",{type:"button",onClick:aO,title:"New project","aria-label":"New project",style:{width:28,height:28,display:"flex",alignItems:"center",justifyContent:"center",padding:0,border:"none",borderRadius:"50%",background:"transparent",color:"var(--text-muted)",cursor:"pointer",flexShrink:0,transition:"background 0.12s, color 0.12s"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background="transparent",a.currentTarget.style.color="var(--text-muted)"},children:(0,d.jsxs)("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",style:{flexShrink:0,display:"block"},children:[(0,d.jsx)("path",{transform:"translate(9.52 2.52)",d:"M3.55246 0L3.55246 2.44252L6 2.44252L6 3.55748L3.55246 3.55748L3.55246 6L2.43834 6L2.43834 3.55748L0 3.55748L0 2.44252L2.43834 2.44252L2.43834 0L3.55246 0Z",fill:"currentColor"}),(0,d.jsx)("path",{transform:"translate(0.3496 2.35)",d:"M4.76367 0C5.36861 1.80598e-05 5.93113 0.310294 6.25488 0.821289L6.78027 1.64941C6.79685 1.67558 6.81791 1.69775 6.83887 1.71973C6.72186 2.15521 6.65702 2.61192 6.65137 3.08301C6.25601 2.96045 5.90909 2.70478 5.68164 2.3457L5.15723 1.5166C5.07183 1.38189 4.92318 1.3008 4.76367 1.30078L2.32422 1.30078C1.7589 1.30078 1.30078 1.7589 1.30078 2.32422L1.30078 10.1338C1.30078 10.6991 1.7589 11.1572 2.32422 11.1572L11.9766 11.1572C12.5419 11.1572 13 10.6991 13 10.1338L13 8.58398C13.4545 8.5135 13.8903 8.38748 14.3008 8.21289L14.3008 10.1338C14.3008 11.4171 13.2598 12.458 11.9766 12.458L2.32422 12.458C1.04093 12.458 0 11.4171 0 10.1338L0 2.32422C0 1.04093 1.04093 0 2.32422 0L4.76367 0Z",fill:"currentColor"})]})})]})]}),S&&(0,d.jsx)("div",{style:{marginTop:6,color:"#f87171",fontSize:11,lineHeight:1.4,overflowWrap:"anywhere"},children:S})]}),(0,d.jsxs)("div",{style:{flex:"1 1 auto",overflowY:"auto",padding:"6px 8px 8px",minHeight:80,scrollbarWidth:"thin",overscrollBehavior:"contain"},children:[z&&0===n.length&&(0,d.jsx)("div",{style:{padding:"16px 14px",color:"var(--text-muted)",fontSize:12},children:"Loading…"}),M&&(0,d.jsx)("div",{style:{padding:"12px 14px",color:"#f87171",fontSize:12},children:M}),!z&&!M&&0===aQ.length&&(0,d.jsx)("div",{style:{padding:"16px 14px",color:"var(--text-muted)",fontSize:12},children:"Open or create a project to start chatting."}),!z&&!M&&aQ.map(b=>{let c,e=ae.has(b.cwd),f=b.cwd===aG,g=ac.has(b.cwd),h=function(a){let b=new Map;for(let c of a)b.set(c.id,{session:c,children:[]});let c=new Map;for(let b of a)b.parentSessionId&&c.set(b.id,b.parentSessionId);let d=[];for(let a of b.values()){let e=function(a){let d=c.get(a),e=new Set;for(;d&&!e.has(d);){if(e.add(d),b.has(d))return d;d=c.get(d)}return null}(a.session.id);e?b.get(e).children.push(a):d.push(a)}let e=a=>{a.sort((a,b)=>(b.session.modified||"").localeCompare(a.session.modified||"")),a.forEach(a=>e(a.children))};return e(d),d}(b.sessions),i=h.length,j=h;if(i>10&&!g){j=h.slice(0,10);let b=h.find(b=>(function a(b,c){return!!c&&(b.session.id===c||b.children.some(b=>a(b,c)))})(b,a));b&&!j.includes(b)&&(j=[...j,b])}let l=i-j.length;return(0,d.jsxs)("div",{style:{marginBottom:6,borderTop:ai===b.cwd?"2px solid var(--accent)":"2px solid transparent",paddingTop:2*(ai===b.cwd),opacity:ag===b.cwd?.55:1},onDragOver:a=>{ag&&ag!==b.cwd&&(a.preventDefault(),a.dataTransfer.dropEffect="move",aj(b.cwd))},onDragLeave:()=>{ai===b.cwd&&aj(null)},onDrop:a=>{a.preventDefault();let c=a.dataTransfer.getData("text/project-cwd")||ag;aj(null),ah(null),c&&aW(c,b.cwd)},children:[(0,d.jsx)(H,{group:b,isCurrent:f,isCollapsed:e,isDragging:ag===b.cwd,pinBusy:ak===`pin:${b.cwd}`,onToggle:()=>aS(b.cwd),onSelect:()=>aF(b.cwd),onTogglePinned:()=>void aV(b.cwd,!0!==b.project.pinned),onDragStart:a=>{ah(b.cwd),a.dataTransfer.effectAllowed="move",a.dataTransfer.setData("text/project-cwd",b.cwd)},onDragEnd:()=>{ah(null),aj(null)}}),!e&&(0,d.jsxs)("div",{style:{marginTop:2,overflow:"hidden",borderRadius:7},children:[(c=b.sessionsState,c?.loading&&!c?.loaded?(0,d.jsx)("div",{style:{width:"100%",padding:"10px 12px",color:"var(--text-dim)",textAlign:"left",fontSize:12,fontStyle:"italic"},children:"Loading chats…"}):c?.error&&!c?.stale?(0,d.jsx)("div",{style:{width:"100%",padding:"10px 12px",color:"#f87171",textAlign:"left",fontSize:12},children:c.error}):0===b.sessions.length?(0,d.jsx)("div",{style:{width:"100%",padding:"10px 12px",color:"var(--text-muted)",textAlign:"left",fontSize:12},children:"No sessions yet. Use New Chat above to start one."}):(0,d.jsxs)(d.Fragment,{children:[c?.stale&&(0,d.jsx)("div",{style:{width:"100%",padding:"4px 12px",color:"var(--text-dim)",textAlign:"left",fontSize:10,fontStyle:"italic"},children:"Showing cached data — refresh failed"}),j.map(c=>(0,d.jsx)(I,{node:c,selectedSessionId:a,onSelectSession:aR,onRenamed:()=>void aA(b.cwd,!1),onSessionDeleted:a=>{k?.(a),aA(b.cwd,!1)},depth:0,runningSessionIds:r},c.session.id))]})),(g||l>0)&&i>10&&(0,d.jsx)("button",{type:"button",onClick:()=>aT(b.cwd),style:{width:"100%",padding:"6px 10px",background:"transparent",border:"none",color:"var(--text-dim)",cursor:"pointer",fontSize:11,textAlign:"center"},children:g?"Show less":`Show ${Math.max(0,l)} more`})]})]},b.cwd||"__no_project")})]}),$&&(0,d.jsx)(E,{cwd:Y,onChoose:aM,onClose:aL}),(0,d.jsx)(t,{open:U,initialPath:aG,onClose:()=>V(!1),onSelect:a=>aJ(a)})]})}function E({cwd:a,onChoose:b,onClose:c}){let e=a?B(a):"Choose a project path next";return(0,d.jsx)("div",{onMouseDown:a=>{a.target===a.currentTarget&&c()},style:{position:"fixed",inset:0,zIndex:1200,display:"flex",alignItems:"center",justifyContent:"center",padding:18,background:"rgba(0,0,0,0.28)"},children:(0,d.jsxs)("div",{style:{width:"min(420px, 100%)",background:"var(--bg)",border:"1px solid var(--border)",borderRadius:12,boxShadow:"0 12px 40px rgba(0,0,0,0.24)",overflow:"hidden"},children:[(0,d.jsxs)("div",{style:{padding:"14px 16px 12px",borderBottom:"1px solid var(--border)",display:"flex",justifyContent:"space-between",gap:12},children:[(0,d.jsxs)("div",{style:{minWidth:0},children:[(0,d.jsx)("div",{style:{color:"var(--text)",fontSize:14,fontWeight:750},children:"Start a new session"}),(0,d.jsx)("div",{style:{marginTop:5,color:"var(--text-dim)",fontSize:11},children:"Current project"}),(0,d.jsx)("div",{title:a??void 0,style:{marginTop:2,color:"var(--text)",fontSize:12,fontWeight:600,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:e}),a&&(0,d.jsx)("div",{style:{marginTop:2,color:"var(--text-dim)",fontSize:10,fontFamily:"var(--font-mono)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a})]}),(0,d.jsx)("button",{type:"button",onClick:c,"aria-label":"Close",title:"Close",style:{width:28,height:28,border:"none",borderRadius:6,background:"transparent",color:"var(--text-muted)",cursor:"pointer",fontSize:20,lineHeight:1},children:"x"})]}),(0,d.jsxs)("div",{style:{padding:14,display:"grid",gap:10},children:[(0,d.jsxs)("button",{type:"button",onClick:()=>b("agent"),style:{display:"grid",gap:5,textAlign:"left",padding:"13px 14px",border:"1px solid var(--border)",borderRadius:10,background:"var(--bg-panel)",color:"var(--text)",cursor:"pointer"},children:[(0,d.jsx)("span",{style:{fontSize:13,fontWeight:750},children:"Agent Chat"}),(0,d.jsx)("span",{style:{fontSize:11,color:"var(--text-muted)",lineHeight:1.45},children:"General coding or analysis chat in this project."})]}),(0,d.jsxs)("button",{type:"button",onClick:()=>b("workbench"),style:{display:"grid",gap:5,textAlign:"left",padding:"13px 14px",border:"1px solid rgba(37,99,235,0.45)",borderRadius:10,background:"rgba(37,99,235,0.08)",color:"var(--text)",cursor:"pointer"},children:[(0,d.jsx)("span",{style:{fontSize:13,fontWeight:750,color:"var(--accent)"},children:"Workbench"}),(0,d.jsx)("span",{style:{fontSize:11,color:"var(--text-muted)",lineHeight:1.45},children:"Dedicated R/Python warm-runtime session for data loading, plots, and artifacts."})]})]})]})})}function F({pinned:a,onToggle:b}){return(0,d.jsx)("button",{type:"button",onClick:b,title:a?"Unpin project":"Pin project to sidebar",style:{display:"flex",alignItems:"center",justifyContent:"center",width:32,height:"auto",padding:0,border:"1px solid var(--border)",borderRadius:7,background:a?"rgba(234,179,8,0.12)":"var(--bg-hover)",color:a?"#ca8a04":"var(--text-muted)",cursor:"pointer",flexShrink:0},children:(0,d.jsxs)("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:a?"currentColor":"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("path",{d:"M12 17v5"}),(0,d.jsx)("path",{d:"M5 3h14l-4 7v4l-6 3v-7L5 3Z"})]})})}function G({project:a,homeDir:b,isCurrent:c,onSelect:f,onTogglePinned:g}){let[h,i]=(0,e.useState)(!1),j=a.displayName||B(a.cwd,b);return(0,d.jsxs)("div",{onMouseEnter:()=>i(!0),onMouseLeave:()=>i(!1),style:{display:"flex",alignItems:"center",gap:4,background:c?"var(--bg-selected)":h?"var(--bg-hover)":"none",borderBottom:"1px solid var(--border)"},children:[(0,d.jsx)("span",{style:{width:10,marginLeft:6,flexShrink:0}}),(0,d.jsxs)("button",{type:"button",onClick:f,title:a.cwd,style:{flex:1,minWidth:0,display:"flex",alignItems:"center",gap:7,padding:"8px 10px 8px 0",background:"none",border:"none",color:c?"var(--text)":"var(--text-muted)",cursor:"pointer",textAlign:"left",fontSize:11,fontFamily:"var(--font-mono)"},children:[c?(0,d.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",stroke:"var(--accent)",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0},children:(0,d.jsx)("polyline",{points:"1.5 5 4 7.5 8.5 2.5"})}):(0,d.jsx)("span",{style:{width:10,flexShrink:0}}),(0,d.jsx)("span",{style:{flex:1,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:j}),!a.exists&&(0,d.jsx)("span",{style:{flexShrink:0,color:"#f87171",fontSize:10},children:"missing"})]}),(0,d.jsx)("button",{type:"button",onClick:a=>{a.stopPropagation(),g()},title:"Pin to sidebar",tabIndex:h?0:-1,style:{display:"flex",alignItems:"center",justifyContent:"center",width:28,height:28,marginRight:4,padding:0,border:"none",borderRadius:5,background:"transparent",color:"var(--text-muted)",cursor:"pointer",flexShrink:0,opacity:+!!h,pointerEvents:h?"auto":"none"},children:(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("path",{d:"M12 17v5"}),(0,d.jsx)("path",{d:"M5 3h14l-4 7v4l-6 3v-7L5 3Z"})]})})]})}function H({group:a,isCurrent:b,isCollapsed:c,isDragging:f,pinBusy:g,onToggle:h,onSelect:i,onTogglePinned:j,onDragStart:k,onDragEnd:l}){let[m,n]=(0,e.useState)(!1),o=a.lastAccessed,p=Math.max(0,a.chatCount??0),q=!0===a.project.pinned,r=(0,e.useCallback)(()=>{b?h():i()},[b,i,h]);return(0,d.jsxs)("div",{role:"button",tabIndex:0,draggable:!0,onClick:r,onDragStart:k,onDragEnd:l,onKeyDown:a=>{("Enter"===a.key||" "===a.key)&&(a.preventDefault(),r())},onMouseEnter:()=>n(!0),onMouseLeave:()=>n(!1),title:a.cwd,style:{width:"100%",height:32,display:"flex",alignItems:"center",gap:5,padding:"0 8px",background:b?"var(--bg-selected)":m?"var(--bg-hover)":"transparent",border:"none",borderRadius:6,color:"var(--text)",cursor:f?"grabbing":"pointer",textAlign:"left",overflow:"hidden",transition:"background 0.12s, opacity 0.12s",opacity:f?.55:1},children:[(0,d.jsx)("svg",{width:"13",height:"13",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1.7",strokeLinecap:"round",strokeLinejoin:"round",style:{transform:c?"none":"rotate(90deg)",transition:"transform 0.15s",flexShrink:0,color:"var(--text-dim)"},children:(0,d.jsx)("polyline",{points:"3 2 7 5 3 8"})}),(0,d.jsx)("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"1.35",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0,color:b?"var(--accent)":"var(--text-dim)"},children:c?(0,d.jsx)("path",{d:"M1.5 4.5A1.5 1.5 0 0 1 3 3h3l1.2 1.5H13A1.5 1.5 0 0 1 14.5 6v5A1.5 1.5 0 0 1 13 12.5H3A1.5 1.5 0 0 1 1.5 11V4.5Z"}):(0,d.jsx)("path",{d:"M1.5 5A1.5 1.5 0 0 1 3 3.5h3l1.2 1.5H13A1.5 1.5 0 0 1 14.5 6.5L13.6 11A1.5 1.5 0 0 1 12.1 12.5H3A1.5 1.5 0 0 1 1.5 11V5Z"})}),(0,d.jsx)("span",{style:{flex:1,minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontSize:13,fontWeight:b?650:560,color:"var(--text)"},children:a.displayName}),!a.project.exists&&(0,d.jsx)("span",{style:{flexShrink:0,color:"#f87171",fontSize:10},children:"missing"}),!m&&p>0&&(0,d.jsxs)("span",{style:{flexShrink:0,color:"var(--text-dim)",fontSize:10,whiteSpace:"nowrap"},children:[p," ",1===p?"chat":"chats"]}),!m&&o&&(0,d.jsx)("span",{style:{flexShrink:0,color:"var(--text-dim)",fontSize:10,whiteSpace:"nowrap"},children:z(o)}),q?(0,d.jsx)("button",{type:"button",onClick:a=>{a.stopPropagation(),j()},title:"Unpin project",tabIndex:m?0:-1,style:{display:"flex",alignItems:"center",justifyContent:"center",width:22,height:22,padding:0,border:"none",borderRadius:5,background:"rgba(234,179,8,0.12)",color:"#ca8a04",cursor:"pointer",flexShrink:0,opacity:m?1:.85,transition:"opacity 0.12s"},children:(0,d.jsxs)("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"currentColor",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("path",{d:"M12 17v5"}),(0,d.jsx)("path",{d:"M5 3h14l-4 7v4l-6 3v-7L5 3Z"})]})}):(0,d.jsx)("button",{type:"button",onClick:a=>{a.stopPropagation(),j()},disabled:g,title:"Pin project to sidebar",tabIndex:m?0:-1,style:{display:"flex",alignItems:"center",justifyContent:"center",width:22,height:22,padding:0,border:"none",borderRadius:5,background:"transparent",color:"var(--text-muted)",cursor:g?"wait":"pointer",flexShrink:0,opacity:+!!m,transition:"opacity 0.12s, background 0.12s, color 0.12s"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="#ca8a04"},onMouseLeave:a=>{a.currentTarget.style.background="transparent",a.currentTarget.style.color="var(--text-muted)"},children:(0,d.jsxs)("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("path",{d:"M12 17v5"}),(0,d.jsx)("path",{d:"M5 3h14l-4 7v4l-6 3v-7L5 3Z"})]})}),(0,d.jsx)("span",{title:"Drag to reorder",style:{display:"inline-flex",alignItems:"center",justifyContent:"center",width:18,height:22,flexShrink:0,color:"var(--text-dim)",opacity:m?1:.35,transition:"opacity 0.12s",cursor:"grab"},children:(0,d.jsxs)("svg",{width:"10",height:"12",viewBox:"0 0 10 12",fill:"currentColor",children:[(0,d.jsx)("circle",{cx:"2",cy:"2",r:"1"}),(0,d.jsx)("circle",{cx:"8",cy:"2",r:"1"}),(0,d.jsx)("circle",{cx:"2",cy:"6",r:"1"}),(0,d.jsx)("circle",{cx:"8",cy:"6",r:"1"}),(0,d.jsx)("circle",{cx:"2",cy:"10",r:"1"}),(0,d.jsx)("circle",{cx:"8",cy:"10",r:"1"})]})})]})}function I({node:a,selectedSessionId:b,onSelectSession:c,onRenamed:f,onSessionDeleted:g,depth:h,runningSessionIds:i}){let[j,k]=(0,e.useState)(!1),l=a.children.length>0;return(0,d.jsxs)("div",{children:[(0,d.jsxs)("div",{style:{position:"relative"},children:[h>0&&(0,d.jsx)("div",{style:{position:"absolute",left:12*h+6,top:0,bottom:0,width:1,background:"var(--border)",pointerEvents:"none"}}),(0,d.jsx)(J,{session:a.session,isSelected:a.session.id===b,onClick:()=>c(a.session),onRenamed:f,onDeleted:a=>g?.(a),depth:h,hasChildren:l,collapsed:j,onToggleCollapse:()=>k(a=>!a),isRunning:i.has(a.session.id)})]}),l&&!j&&(0,d.jsx)("div",{children:a.children.map(a=>(0,d.jsx)(I,{node:a,selectedSessionId:b,onSelectSession:c,onRenamed:f,onSessionDeleted:g,depth:h+1,runningSessionIds:i},a.session.id))})]})}function J({session:a,isSelected:b,onClick:c,onRenamed:f,onDeleted:g,depth:h=0,hasChildren:i=!1,collapsed:j=!1,onToggleCollapse:k,isRunning:l=!1}){let[m,n]=(0,e.useState)(!1),[o,p]=(0,e.useState)(!1),[q,r]=(0,e.useState)(""),[s,t]=(0,e.useState)(!1),[u,v]=(0,e.useState)(!1),w=(0,e.useRef)(null),x=a.name||a.firstMessage.slice(0,50)||a.id.slice(0,12),y=(0,e.useCallback)(b=>{b.stopPropagation(),r(a.name??""),p(!0),setTimeout(()=>w.current?.select(),0)},[a.name]),A=(0,e.useCallback)(async()=>{let b=q.trim();if(p(!1),b!==(a.name??""))try{await fetch(`/api/sessions/${encodeURIComponent(a.id)}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:b})}),f?.()}catch{}},[q,a.id,a.name,f]),B=(0,e.useCallback)(a=>{a.stopPropagation(),t(!0)},[]),C=(0,e.useCallback)(async b=>{b.stopPropagation(),t(!1),v(!0);try{await fetch(`/api/sessions/${encodeURIComponent(a.id)}`,{method:"DELETE"}),g?.(a.id)}catch{v(!1)}},[a.id,g]),D=(0,e.useCallback)(a=>{a.stopPropagation(),t(!1)},[]),E="workbench"===a.sessionKind;return(0,d.jsx)("div",{onClick:s||o?void 0:c,onMouseEnter:()=>n(!0),onMouseLeave:()=>{n(!1)},style:{display:"flex",alignItems:"center",padding:"7px 8px",paddingLeft:h>0?12*h+14:14,paddingRight:8,cursor:s||o?"default":"pointer",background:s?"rgba(239,68,68,0.06)":b?"var(--bg-selected)":m?"var(--bg-hover)":"transparent",borderLeft:s?"2px solid #ef4444":b?"2px solid var(--accent)":"2px solid transparent",transition:"background 0.1s",opacity:u?.5:1,gap:6,overflow:"hidden"},children:s?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)("div",{style:{flex:1,minWidth:0,fontSize:12,color:"var(--text)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:["Delete ",(0,d.jsxs)("span",{style:{fontWeight:600},children:["“",x.slice(0,22),x.length>22?"…":"","”"]}),"?"]}),(0,d.jsxs)("div",{style:{display:"flex",gap:5,flexShrink:0},children:[(0,d.jsxs)("button",{onClick:C,style:{display:"flex",alignItems:"center",justifyContent:"center",gap:4,height:30,padding:"0 11px",background:"#ef4444",border:"none",borderRadius:6,color:"#fff",cursor:"pointer",fontSize:12,fontWeight:600,whiteSpace:"nowrap"},children:[(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("polyline",{points:"3 6 5 6 21 6"}),(0,d.jsx)("path",{d:"M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6"}),(0,d.jsx)("path",{d:"M10 11v6M14 11v6"}),(0,d.jsx)("path",{d:"M9 6V4a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v2"})]}),"Delete"]}),(0,d.jsx)("button",{onClick:D,style:{display:"flex",alignItems:"center",justifyContent:"center",height:30,padding:"0 11px",background:"var(--bg)",border:"1px solid var(--border)",borderRadius:6,color:"var(--text-muted)",cursor:"pointer",fontSize:12,fontWeight:500,whiteSpace:"nowrap"},children:"Cancel"})]})]}):o?(0,d.jsx)("input",{ref:w,value:q,onChange:a=>r(a.target.value),onBlur:A,onKeyDown:a=>{"Enter"===a.key&&A(),"Escape"===a.key&&p(!1)},autoFocus:!0,style:{flex:1,fontSize:12,padding:"5px 8px",border:"1px solid var(--accent)",borderRadius:5,outline:"none",background:"var(--bg)",color:"var(--text)",height:28}}):(0,d.jsxs)(d.Fragment,{children:[h>0&&(0,d.jsxs)("svg",{width:"10",height:"10",viewBox:"0 0 24 24",fill:"none",stroke:"var(--text-dim)",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0},children:[(0,d.jsx)("line",{x1:"6",y1:"3",x2:"6",y2:"15"}),(0,d.jsx)("circle",{cx:"18",cy:"6",r:"3"}),(0,d.jsx)("circle",{cx:"6",cy:"18",r:"3"}),(0,d.jsx)("path",{d:"M18 9a9 9 0 0 1-9 9"})]}),0===h&&(0,d.jsx)("span",{"aria-hidden":"true",style:{width:l?7:5,height:l?7:5,borderRadius:"50%",background:l?"#22c55e":b?"var(--accent)":"var(--text-dim)",opacity:b?1:.35,flexShrink:0,...l?{boxShadow:"0 0 6px rgba(34,197,94,0.5)",animation:"pulse 2s infinite"}:{}}}),E&&(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"var(--accent)",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0},children:[(0,d.jsx)("path",{d:"M4 19V5"}),(0,d.jsx)("path",{d:"M4 19h16"}),(0,d.jsx)("path",{d:"m7 16 3-5 4 3 4-7"})]}),(0,d.jsxs)("div",{style:{flex:1,minWidth:0,display:"flex",flexDirection:"column",gap:1},children:[(0,d.jsx)("div",{style:{fontSize:13,fontWeight:b?600:500,lineHeight:"18px",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",color:E?"var(--accent)":"var(--text)"},title:x,children:x}),(0,d.jsxs)("div",{style:{display:"flex",gap:8,color:"var(--text-dim)",fontSize:11},children:[(0,d.jsx)("span",{title:a.modified,children:z(a.modified)}),(0,d.jsxs)("span",{children:[a.messageCount," msgs"]}),!1===a.cwdExists&&(0,d.jsx)("span",{title:`Project path missing: ${a.cwd}`,style:{color:"#f87171"},children:"missing path"})]})]}),i&&(0,d.jsx)("button",{onClick:a=>{a.stopPropagation(),k?.()},title:j?"Expand forks":"Collapse forks",style:{display:"flex",alignItems:"center",justifyContent:"center",width:20,height:20,padding:0,flexShrink:0,background:"none",border:"none",color:"var(--text-dim)",cursor:"pointer",transform:j?"rotate(-90deg)":"none",transition:"transform 0.15s"},children:(0,d.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:(0,d.jsx)("polyline",{points:"2 3.5 5 6.5 8 3.5"})})}),m&&(0,d.jsxs)("div",{style:{display:"flex",gap:4,flexShrink:0},children:[(0,d.jsx)("button",{onClick:y,title:"Rename",style:{display:"flex",alignItems:"center",justifyContent:"center",width:32,height:32,padding:0,background:"var(--bg-hover)",border:"1px solid var(--border)",borderRadius:7,color:"var(--text-muted)",cursor:"pointer",transition:"background 0.12s, color 0.12s, border-color 0.12s"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-selected)",a.currentTarget.style.color="var(--accent)",a.currentTarget.style.borderColor="rgba(37,99,235,0.35)"},onMouseLeave:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text-muted)",a.currentTarget.style.borderColor="var(--border)"},children:(0,d.jsx)("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:(0,d.jsx)("path",{d:"M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z"})})}),(0,d.jsx)("button",{onClick:B,title:"Delete",style:{display:"flex",alignItems:"center",justifyContent:"center",width:32,height:32,padding:0,background:"var(--bg-hover)",border:"1px solid var(--border)",borderRadius:7,color:"var(--text-muted)",cursor:"pointer",transition:"background 0.12s, color 0.12s, border-color 0.12s"},onMouseEnter:a=>{a.currentTarget.style.background="rgba(239,68,68,0.08)",a.currentTarget.style.color="#ef4444",a.currentTarget.style.borderColor="rgba(239,68,68,0.35)"},onMouseLeave:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text-muted)",a.currentTarget.style.borderColor="var(--border)"},children:(0,d.jsxs)("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("polyline",{points:"3 6 5 6 21 6"}),(0,d.jsx)("path",{d:"M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6"}),(0,d.jsx)("path",{d:"M10 11v6M14 11v6"}),(0,d.jsx)("path",{d:"M9 6V4a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v2"})]})})]})]})})}c(81537);var K=c(62418),L=c(29947);let M=new Map,N=["off","default","full","agent"],O={off:"none",default:"default",full:"full",agent:"agent"},P={off:"无工具,纯聊天",default:"4 项内置工具",full:"全部内置工具",agent:"High + 子代理"},Q={retain:{label:"retain",description:"保存稳定事实或决策到项目记忆"},recall:{label:"recall",description:"检索项目记忆中的相关上下文"},reflect:{label:"reflect",description:"基于已存记忆做综合回应"}},R=["auto","off","minimal","low","medium","high","xhigh"],S={auto:"沿用 pi 默认设置",off:"关闭推理",minimal:"最少推理",low:"低强度推理",medium:"中等推理",high:"高强度推理",xhigh:"最高强度推理"},T=[{command:"/compact",label:"/compact",description:"压缩当前上下文",kind:"native"},{command:"/init",label:"/init",description:"快捷插入,交给模型处理初始化任务",kind:"shortcut"},{command:"/memory",label:"/memory",description:"快捷插入,交给模型处理项目记忆任务",kind:"shortcut"}];function U({doc:a,onRemove:b}){var c;let e=a.fileName.split(".").pop()?.toLowerCase()??"",f=function(a){switch(a){case"pdf":return{emoji:"\uD83D\uDCC4",color:"#ef4444"};case"docx":case"doc":return{emoji:"\uD83D\uDCDD",color:"#3b82f6"};case"xlsx":case"xls":return{emoji:"\uD83D\uDCCA",color:"#22c55e"};case"pptx":case"ppt":return{emoji:"\uD83D\uDCFD",color:"#f97316"};default:return{emoji:"\uD83D\uDCCE",color:"var(--text-muted)"}}}(e),g=(c=a.size)<1024?`${c} B`:c<1048576?`${(c/1024).toFixed(1)} KB`:`${(c/1048576).toFixed(1)} MB`;return(0,d.jsxs)("div",{style:{position:"relative",display:"flex",alignItems:"center",gap:6,padding:"5px 10px 5px 7px",background:"var(--bg-panel)",border:"1px solid var(--border)",borderRadius:6,maxWidth:200},title:a.fileName,children:[(0,d.jsx)("span",{style:{color:f.color,fontSize:14,flexShrink:0},children:f.emoji}),(0,d.jsxs)("div",{style:{minWidth:0,flex:1},children:[(0,d.jsx)("div",{style:{fontSize:11,color:"var(--text)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",lineHeight:1.3},children:a.fileName}),(0,d.jsxs)("div",{style:{fontSize:10,color:"var(--text-dim)",lineHeight:1.3},children:[e.toUpperCase()," \xb7 ",g,a.extractionError?" \xb7 no text":a.truncated?" \xb7 truncated":a.extractedText?" \xb7 text":""]})]}),(0,d.jsx)("button",{onClick:b,style:{flexShrink:0,width:14,height:14,borderRadius:"50%",background:"var(--bg-hover)",border:"none",display:"flex",alignItems:"center",justifyContent:"center",cursor:"pointer",padding:0,color:"var(--text-dim)"},onMouseEnter:a=>{a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.color="var(--text-dim)"},children:(0,d.jsxs)("svg",{width:"7",height:"7",viewBox:"0 0 7 7",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",children:[(0,d.jsx)("line",{x1:"1",y1:"1",x2:"6",y2:"6"}),(0,d.jsx)("line",{x1:"6",y1:"1",x2:"1",y2:"6"})]})})]})}function V(a){return a.replace(/</g,"<").replace(/>/g,">").replace(/&/g,"&").replace(/"/g,'"').replace(/'/g,"'")}async function W(a){let b=await c.e(1688).then(c.bind(c,81688));b.GlobalWorkerOptions.workerSrc=new c.U(c(19224)).toString();let d=await b.getDocument({data:a.slice(0)}).promise,e=[];for(let a=1;a<=d.numPages;a+=1){let b=await d.getPage(a),c=(await b.getTextContent()).items.map(a=>"str"in a?a.str:"").filter(Boolean).join(" ");c.trim()&&e.push(`Page ${a}
|
|
2
2
|
${c}`)}return e.join("\n\n")}async function X(a){let b=(await c.e(7890).then(c.t.bind(c,55509,23))).default,d=await b.loadAsync(a),e=["word/document.xml",...Object.keys(d.files).filter(a=>/^word\/(footnotes|endnotes|comments)\.xml$/i.test(a)).sort()],f=[];for(let a of e){let b=d.file(a);if(!b)continue;let c=[...(await b.async("string")).replace(/<w:(br|cr)[^>]*\/>/g,"\n").replace(/<\/w:p>/g,"\n").matchAll(/<w:t[^>]*>([\s\S]*?)<\/w:t>/g)];f.push(...c.map(a=>V(a[1])))}return f.join("").replace(/[ \t]+\n/g,"\n")}async function Y(a){let b=await c.e(7765).then(c.bind(c,77765)),d=b.read(a,{type:"array"});return d.SheetNames.map(a=>{let c=d.Sheets[a],e=b.utils.sheet_to_csv(c);return`Sheet: ${a}
|
|
3
3
|
${e}`}).join("\n\n")}async function Z(a){let b=(await c.e(7890).then(c.t.bind(c,55509,23))).default,d=await b.loadAsync(a),e=Object.keys(d.files).map(a=>({name:a,match:/^ppt\/slides\/slide(\d+)\.xml$/i.exec(a)})).filter(a=>null!==a.match).sort((a,b)=>Number(a.match[1])-Number(b.match[1])),f=[];for(let{name:a,match:b}of e){let c=[...(await d.file(a).async("string")).matchAll(/<a:t[^>]*>([\s\S]*?)<\/a:t>/g)].map(a=>V(a[1]).trim()).filter(Boolean);c.length&&f.push(`Slide ${b[1]}
|
|
4
4
|
${c.join("\n")}`)}return f.join("\n\n")}async function $(a,b){let c=a.name.split(".").pop()?.toLowerCase()??"";try{let d,e="";if(a.type.startsWith("text/")||["csv","tsv","md","txt","json","xml"].includes(c))e=new TextDecoder("utf-8").decode(b);else if("pdf"===c||"application/pdf"===a.type)e=await W(b);else if("docx"===c)e=await X(b);else if("xlsx"===c)e=await Y(b);else{if("pptx"!==c)return{extractionError:"Text extraction is not supported for this file type"};e=await Z(b)}let{text:f,truncated:g}=(d=e.replace(/\r\n/g,"\n").replace(/\n{4,}/g,"\n\n\n").trim()).length<=6e4?{text:d,truncated:!1}:{text:`${d.slice(0,6e4)}
|
|
5
5
|
|
|
6
|
-
[truncated after 60000 characters]`,truncated:!0};if(!f)return{extractionError:"No extractable text found"};return{extractedText:f,truncated:g}}catch(a){return{extractionError:a instanceof Error?a.message:String(a)}}}let _=(0,e.forwardRef)(function({onSend:a,onAbort:b,onSteer:c,onFollowUp:f,isStreaming:g,model:h,modelNames:i,modelList:j,onModelChange:k,onCompact:l,onAbortCompaction:m,isCompacting:n,compactError:o,compactInfo:p,toolPreset:q,sessionKind:r,onToolPresetChange:s,memoryTools:t,onMemoryToolsChange:u,thinkingLevel:v,onThinkingLevelChange:w,availableThinkingLevels:x,thinkingLevelMap:y,retryInfo:z,cornerBadge:A,promptHistory:B,sessionHistoryKey:C,activeFilePath:D,onDismissFileContext:E},F){let[G,H]=(0,e.useState)(""),[I,J]=(0,e.useState)(!1),[K,V]=(0,e.useState)("root"),[W,X]=(0,e.useState)(null),[Y,Z]=(0,e.useState)(!1),[_,aa]=(0,e.useState)(!1),[ab,ac]=(0,e.useState)(!1),[ad,ae]=(0,e.useState)(!1),[af,ag]=(0,e.useState)(null),[ah,ai]=(0,e.useState)([]),[aj,ak]=(0,e.useState)([]),al=function(a=768){let[b,c]=(0,e.useState)(!1);return b}(),am=al?{display:"none"}:void 0,an=al?28:32,ao=al?"6px 8px":"8px 12px",ap=al&&!g,aq=ad?"var(--text)":"var(--text-muted)",ar={padding:"7px 8px",borderRadius:8,background:"var(--bg-panel)",border:"1px solid var(--border)",width:"100%",textAlign:"left",cursor:"pointer"},as=al?{position:"sticky",bottom:0,zIndex:30,padding:"8px 0 calc(env(safe-area-inset-bottom, 0px) + 8px)",background:"linear-gradient(to top, color-mix(in srgb, var(--bg) 96%, transparent), color-mix(in srgb, var(--bg) 86%, transparent))",backdropFilter:"blur(10px)",WebkitBackdropFilter:"blur(10px)",borderTop:"1px solid color-mix(in srgb, var(--border) 65%, transparent)"}:{flexShrink:0,background:"transparent",padding:"0 16px 8px",paddingRight:52},[at,au]=(0,e.useState)(null),av=(0,e.useRef)(null),aw=(0,e.useRef)(null),ax=(0,e.useRef)(null),ay=(0,e.useRef)(null),az=(0,e.useRef)(null),aA=(0,e.useRef)(null),aB=(0,e.useRef)(null),aC=(0,e.useRef)(null),aD=(0,e.useRef)(null),aE=(0,e.useCallback)(a=>{let b=av.current;if(!b)return void H(b=>b+(b?" ":"")+a);let c=b.selectionStart??b.value.length,d=b.selectionEnd??b.value.length,e=b.value.slice(0,c),f=b.value.slice(d),g=!(e.length>0)||e.endsWith(" ")||e.endsWith("\n")?"":" ";H(e+g+a+f),requestAnimationFrame(()=>{let b=av.current;if(!b)return;let d=c+g.length+a.length;b.setSelectionRange(d,d),b.focus(),b.style.height="auto",b.style.height=`${Math.min(b.scrollHeight,200)}px`})},[]);(0,e.useImperativeHandle)(F,()=>({insertIfEmpty(a){let b=av.current;(b?b.value:G).trim()||(H(a),requestAnimationFrame(()=>{b&&(b.focus(),b.style.height="auto",b.style.height=`${Math.min(b.scrollHeight,200)}px`)}))},insertText(a){aE(a)},addImages(a){aF(a)},addFiles(a){aG(a)}}));let aF=(0,e.useCallback)(async a=>{let b=a.filter(a=>a.type.startsWith("image/"));if(!b.length)return;let c=await Promise.all(b.map(a=>new Promise((b,c)=>{let d=new FileReader;d.onload=()=>{b({data:d.result.split(",")[1],mimeType:a.type,previewUrl:URL.createObjectURL(a)})},d.onerror=c,d.readAsDataURL(a)})));ai(a=>[...a,...c])},[]),aG=(0,e.useCallback)(async a=>{let b=a.filter(a=>a.type.startsWith("image/")),c=a.filter(a=>!a.type.startsWith("image/"));if(b.length&&aF(b),c.length){let a=await Promise.all(c.map(a=>new Promise((b,c)=>{let d=new FileReader;d.onload=async()=>{let c=d.result,e=await $(a,c);b({data:c,fileName:a.name,mimeType:a.type||"application/octet-stream",size:a.size,...e})},d.onerror=c,d.readAsArrayBuffer(a)})));ak(b=>[...b,...a])}},[aF]),aH=(0,e.useCallback)(a=>{ai(b=>{let c=[...b];return URL.revokeObjectURL(c[a].previewUrl),c.splice(a,1),c})},[]),aI=(0,e.useCallback)(a=>{ak(b=>{let c=[...b];return c.splice(a,1),c})},[]),aJ=(0,e.useCallback)(()=>{ai(a=>(a.forEach(a=>URL.revokeObjectURL(a.previewUrl)),[])),ak([])},[]),aK=j&&j.length>0?j.map(a=>({provider:a.provider,modelId:a.id,name:a.name,input:a.input})):Object.entries(i??{}).map(([a,b])=>({provider:h?.provider??"unknown",modelId:a,name:b})),aL=[];for(let a of aK){let b=aL.find(b=>b.provider===a.provider);b?b.options.push(a):aL.push({provider:a.provider,options:[a]})}let aM=h?aK.find(a=>a.modelId===h.modelId&&a.provider===h.provider)?.name??h.modelId:aK.length>0?aK[0].name:null,aN=h?aK.find(a=>a.modelId===h.modelId&&a.provider===h.provider):aK[0],aO=aN?.input?.includes("image")??!0,aP=ah.length>0&&aN?.input!==void 0&&!aO,aQ=(!!G.trim()||ah.length>0||aj.length>0)&&!aP,aR=l?T:T.filter(a=>"/compact"!==a.command),aS=aR.filter(a=>"native"===a.kind),aT=aR.filter(a=>"shortcut"===a.kind),aU=t??[],aV=aU.length>0?`${aU.length} enabled`:"off",aW=aK.length>0&&!!aM&&!!k,aX=!!s&&"workbench"!==r,aY=!!w&&!!x&&x.some(a=>"off"!==a),aZ=(()=>{let a=v??"auto";if("auto"===a)return"Default";if(!y)return a;let b=y[a];return null!=b?b:a})(),a$=aM??"Default",a_=aY?`${a$} \xb7 ${aZ}`:a$,a0=(q??"full")==="workbench"?"workbench":Object.entries(O).find(([,a])=>a===(q??"full"))?.[0]??"full",a1=al?26:32,a2=al?7:9,a3=al?3:6,a4={position:"fixed",left:8,right:8,bottom:"calc(env(safe-area-inset-bottom, 0px) + 8px)",zIndex:500,background:"var(--bg)",border:"1px solid var(--border)",borderRadius:12,boxShadow:"0 -6px 24px rgba(0,0,0,0.14)",overflow:"hidden",maxHeight:"min(60dvh, 420px)"},a5=al&&(I||Y||_||ab||ad);(0,e.useEffect)(()=>{aP||au(null)},[aP]);let a6=(0,e.useCallback)(a=>{if(!G.trim()){H(a),requestAnimationFrame(()=>{let b=av.current;b&&(b.focus(),b.setSelectionRange(a.length,a.length),b.style.height="auto",b.style.height=`${Math.min(b.scrollHeight,200)}px`)});return}aE(a)},[aE,G]),a7=(0,e.useCallback)(()=>{let b=G.trim();if(b||ah.length||aj.length){if(ah.length&&!aO)return void au("当前模型不支持图片输入。请切换到带 image 标记的模型后再发送。");if(!g){if("/compact"===b&&!ah.length&&!aj.length&&l){n?m?.():l(),H(""),av.current&&(av.current.style.height="auto");return}a(b,ah.length?ah:void 0,aj.length?aj:void 0),H(""),aJ(),av.current&&(av.current.style.height="auto")}}},[G,ah,aj,aO,g,a,aJ,l,m,n]),a8=(0,e.useCallback)(a=>{let b=G.trim();if(!b&&!ah.length&&!aj.length)return;if(ah.length&&!aO)return void au("当前模型不支持图片输入。请切换到带 image 标记的模型后再发送。");let d=ah.length?ah:void 0,e=aj.length?aj:void 0;"steer"===a&&c?c(b,d,e):"followup"===a&&f&&f(b,d,e),H(""),aJ(),av.current&&(av.current.style.height="auto")},[G,ah,aj,aO,c,f,aJ]),a9=B??[],ba=C??null,bb=(0,e.useCallback)(a=>{if("ArrowUp"===a.key&&!a.shiftKey&&!a.ctrlKey&&!a.metaKey&&a9.length>0){let b=av.current;if(!b)return;let c=b.selectionStart??0;if(b.value.slice(0,c).includes("\n"))return;a.preventDefault();let d=function(a,b,c){let d;if(!a||0===c.length)return null;let e=((d=M.get(a))||(d={cursor:-1,draftSnapshot:""},M.set(a,d)),d);if(-1===e.cursor)e.draftSnapshot=b,e.cursor=0;else{if(!(e.cursor<c.length-1))return null;e.cursor+=1}return c[e.cursor]??null}(ba,b.value,a9);null!==d&&(H(d),requestAnimationFrame(()=>{b.setSelectionRange(d.length,d.length)}));return}if("ArrowDown"===a.key&&!a.shiftKey&&!a.ctrlKey&&!a.metaKey&&function(a){if(!a)return!1;let b=M.get(a);return(b?.cursor??-1)>=0}(ba)){a.preventDefault();let b=function(a,b){if(!a)return null;let c=M.get(a);if(!c||-1===c.cursor)return null;if(c.cursor>0)return c.cursor-=1,{text:b[c.cursor]??"",returnedToPresent:!1};let d=c.draftSnapshot;return c.cursor=-1,c.draftSnapshot="",{text:d,returnedToPresent:!0}}(ba,a9);b&&(H(b.text),b.returnedToPresent&&requestAnimationFrame(()=>{let a=av.current;a&&a.setSelectionRange(b.text.length,b.text.length)}));return}"Enter"===a.key&&!a.shiftKey&&!a.nativeEvent.isComposing&&(a.preventDefault(),ba&&M.set(ba,{cursor:-1,draftSnapshot:""}),g&&(c||f)?a8(c?"steer":"followup"):a7())},[g,c,f,a8,a7,a9,ba]),bc=(0,e.useCallback)(()=>{let a=av.current;a&&(a.style.height="auto",a.style.height=`${Math.min(a.scrollHeight,200)}px`)},[]),bd=(0,e.useCallback)(a=>{let b=Array.from(a.clipboardData?.items??[]).filter(a=>"file"===a.kind&&(a.type.startsWith("image/")||a.type.includes("pdf")||a.type.includes("officedocument")||a.type.includes("msword")||a.type.includes("ms-")));b.length&&(a.preventDefault(),aG(b.map(a=>a.getAsFile()).filter(a=>null!==a)))},[aG]);(0,e.useEffect)(()=>{if(!I&&!Y&&!_&&!ab&&!ad)return;let a=a=>{let b=a.target;if(!(b instanceof Node))return;let c=!!aw.current?.contains(b),d=!!ax.current?.contains(b);c||d||J(!1),ay.current?.contains(b)||Z(!1),az.current?.contains(b)||aa(!1),aA.current?.contains(b)||ac(!1),aB.current?.contains(b)||ae(!1)};return document.addEventListener("pointerdown",a,!0),()=>{document.removeEventListener("pointerdown",a,!0)}},[I,Y,_,ab,ad]),(0,e.useEffect)(()=>{if(!s)return;let a=!1;return fetch("/api/subagents/status").then(a=>a.ok?a.json():null).then(b=>{a||ag(!!b?.ready)}).catch(()=>{a||ag(!1)}),()=>{a=!0}},[s]),(0,e.useEffect)(()=>{if(!I)return;let a=a=>{"Escape"===a.key&&("root"!==K?V("root"):J(!1))};return document.addEventListener("keydown",a),()=>document.removeEventListener("keydown",a)},[I,K]);let be=a=>(0,d.jsx)("svg",{width:a,height:a,viewBox:"0 0 10 10",fill:"none",stroke:"var(--accent)",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0},children:(0,d.jsx)("polyline",{points:"1.5 5 4 7.5 8.5 2.5"})}),bf=(a,b)=>(0,d.jsx)("svg",{width:a,height:a,viewBox:"0 0 24 24",fill:"none",style:{flexShrink:0,...b},children:(0,d.jsx)("path",{d:"M9 6l6 6-6 6",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round"})}),bg=()=>{let a=()=>{J(!1),V("root")},b=R.filter(a=>!x||"auto"===a||x.includes(a)),c=(0,d.jsxs)(d.Fragment,{children:["root"===K&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)("button",{onClick:()=>V("model"),style:{display:"flex",alignItems:"center",gap:8,width:"100%",height:40,padding:"0 10px",border:"none",borderRadius:10,background:"transparent",color:"var(--text)",fontSize:14,lineHeight:"22px",cursor:"pointer",textAlign:"left",fontFamily:"inherit"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.background="transparent"},children:[(0,d.jsx)("span",{style:{flex:"1 1 auto",minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:"模型"}),(0,d.jsx)("span",{style:{flex:"0 1 auto",minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",color:"var(--text-dim)",fontSize:13},children:a$}),bf(14,{color:"var(--text-dim)"})]}),aY&&(0,d.jsxs)("button",{onClick:()=>V("effort"),style:{display:"flex",alignItems:"center",gap:8,width:"100%",height:40,padding:"0 10px",border:"none",borderRadius:10,background:"transparent",color:"var(--text)",fontSize:14,lineHeight:"22px",cursor:"pointer",textAlign:"left",fontFamily:"inherit"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.background="transparent"},children:[(0,d.jsx)("span",{style:{flex:"1 1 auto",minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:"推理等级"}),(0,d.jsx)("span",{style:{flex:"0 1 auto",minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",color:"var(--text-dim)",fontSize:13},children:aZ}),bf(14,{color:"var(--text-dim)"})]})]}),"model"===K&&(0,d.jsx)("div",{style:{minHeight:0,overflowY:"auto"},children:aL.map(b=>(0,d.jsxs)("div",{children:[aL.length>1&&(0,d.jsx)("div",{style:{position:"sticky",top:0,zIndex:1,padding:"5px 8px 3px",background:"var(--bg)",color:"var(--text-dim)",fontSize:12,lineHeight:"18px",fontWeight:500},children:b.provider}),b.options.map(b=>{let c=b.modelId===h?.modelId&&b.provider===h?.provider;return(0,d.jsxs)("button",{onClick:()=>{a(),c||k(b.provider,b.modelId)},style:{display:"flex",alignItems:"center",gap:8,width:"100%",minHeight:38,padding:"6px 8px",border:"none",borderRadius:10,background:"transparent",color:"var(--text)",textAlign:"left",cursor:"pointer",fontFamily:"inherit"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.background="transparent"},children:[c?be(12):(0,d.jsx)("span",{style:{width:12,flexShrink:0}}),(0,d.jsx)("span",{style:{flex:1,minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontSize:14,lineHeight:"20px",fontWeight:500},children:b.name})]},`${b.provider}:${b.modelId}`)})]},b.provider))}),"effort"===K&&aY&&(0,d.jsx)("div",{style:{minHeight:0,overflowY:"auto"},children:b.map(b=>{let c=(v??"auto")===b,e=S[b],f="auto"!==b&&y?y[b]:void 0,g="auto"===b?"Default":null!=f&&f!==b?f:b;return(0,d.jsxs)("button",{onClick:()=>{a(),c||w(b)},style:{display:"flex",alignItems:"center",gap:8,width:"100%",minHeight:38,padding:"6px 8px",border:"none",borderRadius:10,background:"transparent",color:"var(--text)",textAlign:"left",cursor:"pointer",fontFamily:"inherit"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.background="transparent"},children:[c?be(12):(0,d.jsx)("span",{style:{width:12,flexShrink:0}}),(0,d.jsxs)("span",{style:{display:"flex",flex:1,flexDirection:"column",minWidth:0},children:[(0,d.jsx)("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontSize:14,lineHeight:"20px",fontWeight:500},children:g}),(0,d.jsx)("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontSize:12,lineHeight:"18px",color:"var(--text-dim)"},children:e})]})]},b)})})]}),e=W?0-W.top+6:0,f=W?Math.max(120,Math.min(W.top-8,0)):240,i=W?Math.max(8,0-(W.left+W.width)):0;return(0,d.jsxs)("div",{ref:aw,style:{position:"relative",flex:al?"1 1 160px":void 0,minWidth:0},children:[(0,d.jsxs)("button",{onClick:a=>{if(!al){let b=a.currentTarget.getBoundingClientRect();X({top:b.top,left:b.left,width:b.width})}Z(!1),aa(!1),ac(!1),ae(!1),V("root"),J(a=>!a)},disabled:g,title:"选择模型与推理强度",style:{display:"flex",alignItems:"center",gap:4,height:al?an:28,padding:al?ao:"0 4px 0 8px",width:al?"100%":void 0,maxWidth:al?"100%":220,overflow:"hidden",background:I?"var(--bg-hover)":"none",border:"none",borderRadius:al?8:24,color:"var(--text-muted)",cursor:g?"not-allowed":"pointer",fontSize:al?11:13,lineHeight:al?void 0:"20px",fontWeight:al?void 0:500,opacity:g?.5:1,transition:"background 0.12s, color 0.12s"},onMouseEnter:a=>{g||(a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)")},onMouseLeave:a=>{a.currentTarget.style.background=I?"var(--bg-hover)":"none",a.currentTarget.style.color="var(--text-muted)"},children:[(0,d.jsx)("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",minWidth:0},children:aM}),aY&&(0,d.jsxs)("span",{style:{flex:"0 0 auto",color:"var(--text-dim)"},children:[" \xb7 ",aZ]}),(0,d.jsx)("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",style:{flex:"0 0 auto",color:"var(--text-dim)",transform:I?"rotate(180deg)":"none",transition:"transform 120ms ease"},children:(0,d.jsx)("path",{d:"M3 4.5L6 7.5L9 4.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})]}),I&&(al?(0,d.jsxs)("div",{ref:ax,style:{...a4,display:"flex",flexDirection:"column"},children:[(0,d.jsxs)("div",{style:{padding:"8px 12px 6px",borderBottom:"1px solid var(--border)",background:"var(--bg-panel)"},children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8},children:["root"!==K&&(0,d.jsx)("button",{onClick:()=>V("root"),"aria-label":"返回",style:{display:"flex",alignItems:"center",justifyContent:"center",width:24,height:24,padding:0,flexShrink:0,background:"none",border:"none",borderRadius:6,color:"var(--text-muted)",cursor:"pointer"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.background="none"},children:(0,d.jsx)("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",children:(0,d.jsx)("path",{d:"M15 6l-6 6 6 6",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round"})})}),(0,d.jsx)("div",{style:{fontSize:10,fontWeight:600,color:"var(--text-dim)",textTransform:"uppercase",letterSpacing:"0.07em"},children:"model"===K?"Models":"effort"===K?"推理等级":"模型 \xb7 推理"})]}),(0,d.jsx)("div",{style:{fontSize:12,color:"var(--text)",marginTop:2},children:a_})]}),c]}):W&&(0,d.jsx)("div",{ref:ax,style:{position:"fixed",bottom:e,right:i,zIndex:500,background:"var(--bg)",border:"1px solid var(--border)",borderRadius:12,boxShadow:"0 8px 24px -8px rgba(0,0,0,0.18)",width:"min(240px, calc(100vw - 32px))",maxHeight:f,overflow:"hidden",display:"flex",flexDirection:"column",padding:4},children:c}))]})};return(0,d.jsxs)("div",{style:as,children:[a5&&(0,d.jsx)("div",{"aria-hidden":!0,onClick:()=>{J(!1),Z(!1),aa(!1),ac(!1),ae(!1)},style:{position:"fixed",inset:0,zIndex:490,background:"rgba(15, 23, 42, 0.18)",backdropFilter:"blur(1.5px)",WebkitBackdropFilter:"blur(1.5px)"}}),(0,d.jsx)("input",{ref:aC,type:"file",accept:"image/*",multiple:!0,style:{display:"none"},onChange:a=>{aF(Array.from(a.target.files??[])),a.target.value=""}}),(0,d.jsx)("input",{ref:aD,type:"file",accept:".pdf,.docx,.xlsx,.pptx,.doc,.xls,.ppt,application/pdf,application/vnd.openxmlformats-officedocument.wordprocessingml.document,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.openxmlformats-officedocument.presentationml.presentation",multiple:!0,style:{display:"none"},onChange:a=>{aG(Array.from(a.target.files??[])),a.target.value=""}}),(0,d.jsxs)("div",{style:{maxWidth:al?"100%":820,margin:"0 auto",position:"relative",width:"100%",padding:al?"0 8px":void 0,boxSizing:"border-box"},children:[A&&(0,d.jsx)("div",{style:{position:"absolute",right:8,top:-22,display:"flex",alignItems:"center",justifyContent:"flex-end",maxWidth:"min(320px, 60vw)",minHeight:18,zIndex:2,fontFamily:"var(--font-mono)",overflow:"hidden"},children:A}),z&&(0,d.jsxs)("div",{style:{marginBottom:al?6:8,padding:al?"4px 8px":"5px 10px",background:"rgba(234,179,8,0.08)",border:"1px solid rgba(234,179,8,0.25)",borderRadius:6,fontSize:al?11:12,color:"rgba(180,130,0,0.9)",display:"flex",alignItems:"center",gap:6},children:[(0,d.jsxs)("svg",{width:"11",height:"11",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0},children:[(0,d.jsx)("path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"}),(0,d.jsx)("path",{d:"M3 3v5h5"})]}),"Retrying (",z.attempt,"/",z.maxAttempts,")…",z.errorMessage&&(0,d.jsxs)("span",{style:{opacity:.7,marginLeft:4},children:["— ",z.errorMessage]})]}),D&&(0,d.jsxs)("div",{style:{marginBottom:al?6:8,padding:al?"3px 8px":"4px 10px",background:"color-mix(in srgb, var(--accent) 8%, transparent)",border:"1px solid color-mix(in srgb, var(--accent) 25%, transparent)",borderRadius:6,fontSize:al?11:12,color:"var(--text-muted)",display:"inline-flex",alignItems:"center",gap:6,maxWidth:"100%"},children:[(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"var(--accent)",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0},children:[(0,d.jsx)("path",{d:"M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5L14.5 2z"}),(0,d.jsx)("polyline",{points:"14 2 14 8 20 8"})]}),(0,d.jsx)("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:D.replace(/^.*[\\/]/,"")}),E&&(0,d.jsx)("button",{type:"button",onClick:a=>{a.stopPropagation(),E()},title:"Stop including this file in context",style:{background:"none",border:"none",color:"var(--text-dim)",cursor:"pointer",fontSize:14,lineHeight:1,padding:"0 2px",flexShrink:0},children:"\xd7"})]}),(ah.length>0||aj.length>0)&&(0,d.jsxs)("div",{style:{marginBottom:6},children:[(0,d.jsxs)("div",{style:{display:"flex",gap:6,flexWrap:"wrap",alignItems:"flex-end"},children:[ah.map((a,b)=>(0,d.jsxs)("div",{style:{position:"relative",flexShrink:0},children:[(0,d.jsx)("img",{src:a.previewUrl,alt:"",style:{width:56,height:56,objectFit:"cover",borderRadius:6,border:`1px solid ${aP?"rgba(220,38,38,0.45)":"var(--border)"}`,display:"block"}}),(0,d.jsx)("button",{onClick:()=>aH(b),style:{position:"absolute",top:-4,right:-4,width:16,height:16,borderRadius:"50%",background:"var(--bg-panel)",border:"1px solid var(--border)",display:"flex",alignItems:"center",justifyContent:"center",cursor:"pointer",padding:0,color:"var(--text-muted)"},children:(0,d.jsxs)("svg",{width:"8",height:"8",viewBox:"0 0 8 8",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",children:[(0,d.jsx)("line",{x1:"1",y1:"1",x2:"7",y2:"7"}),(0,d.jsx)("line",{x1:"7",y1:"1",x2:"1",y2:"7"})]})})]},`img-${b}`)),aj.map((a,b)=>(0,d.jsx)(U,{doc:a,onRemove:()=>aI(b)},`doc-${b}`))]}),(aP||at)&&(0,d.jsxs)("div",{style:{marginTop:6,display:"flex",alignItems:"center",gap:6,fontSize:al?11:12,color:"rgba(185,28,28,0.95)"},children:[(0,d.jsxs)("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0},children:[(0,d.jsx)("path",{d:"M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"}),(0,d.jsx)("line",{x1:"12",y1:"9",x2:"12",y2:"13"}),(0,d.jsx)("line",{x1:"12",y1:"17",x2:"12.01",y2:"17"})]}),(0,d.jsx)("span",{children:at??"当前模型不支持图片输入。请切换到带 image 标记的模型后再发送。"})]})]}),(0,d.jsxs)("div",{style:{display:"flex",gap:al?4:8,alignItems:al?"flex-end":"center",background:"var(--bg)",border:`1px solid ${g&&(c||f)?"rgba(234,179,8,0.4)":"color-mix(in srgb, var(--border) 70%, transparent)"}`,borderRadius:al?13:14,padding:al?"8px 8px 8px 10px":"10px 10px 10px 14px",boxShadow:"0 1px 2px rgba(15,23,42,0.04), 0 8px 24px -12px rgba(15,23,42,0.10)",transition:"border-color 0.15s, background 0.15s, box-shadow 0.15s"},children:[(0,d.jsx)("textarea",{ref:av,value:G,onChange:a=>H(a.target.value),onKeyDown:bb,onInput:bc,onPaste:bd,placeholder:g&&(c||f)?"Steer 立即注入 / Follow-up 排队…":g?"Agent is running…":"Message…",rows:1,style:{flex:1,alignSelf:al?"stretch":void 0,background:"none",border:"none",outline:"none",resize:"none",color:"var(--text)",fontSize:14,lineHeight:1.6,fontFamily:"inherit",minHeight:24,maxHeight:200,overflow:"auto",paddingTop:+!!al,paddingBottom:+!!al}}),g?(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:al?4:6,flexShrink:0,alignSelf:"flex-end"},children:[c&&(0,d.jsxs)("button",{onClick:()=>a8("steer"),disabled:!aQ,title:aP?"当前模型不支持图片输入":"打断 Agent 当前运行,立即注入消息",style:{display:"flex",alignItems:"center",gap:5*!al,padding:al?"6px 8px":"7px 12px",background:aQ?"rgba(234,179,8,0.12)":"none",border:"1px solid rgba(234,179,8,0.35)",borderRadius:8,color:aQ?"rgba(180,130,0,1)":"var(--text-dim)",cursor:aQ?"pointer":"not-allowed",fontSize:13,fontWeight:600,letterSpacing:"-0.01em",transition:"background 0.12s"},children:[(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("path",{d:"M5 1 L9 5 L5 9"}),(0,d.jsx)("line",{x1:"1",y1:"5",x2:"9",y2:"5"})]}),!al&&"Steer"]}),f&&(0,d.jsxs)("button",{onClick:()=>a8("followup"),disabled:!aQ,title:aP?"当前模型不支持图片输入":"在 Agent 完成后排队发送",style:{display:"flex",alignItems:"center",gap:5*!al,padding:al?"6px 8px":"7px 12px",background:aQ?"rgba(129,140,248,0.12)":"none",border:"1px solid rgba(129,140,248,0.35)",borderRadius:8,color:aQ?"rgba(99,102,241,1)":"var(--text-dim)",cursor:aQ?"pointer":"not-allowed",fontSize:13,fontWeight:600,letterSpacing:"-0.01em",transition:"background 0.12s"},children:[(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("line",{x1:"5",y1:"1",x2:"5",y2:"6"}),(0,d.jsx)("polyline",{points:"2.5 3.5 5 1 7.5 3.5"}),(0,d.jsx)("line",{x1:"2",y1:"9",x2:"8",y2:"9"})]}),!al&&"Follow-up"]})]}):(0,d.jsxs)("button",{onClick:a7,disabled:!aQ,title:aP?"当前模型不支持图片输入":"Send",style:{flexShrink:0,alignSelf:"flex-end",display:"flex",alignItems:"center",gap:al?3:6,padding:al?"5px 9px":"7px 14px",marginBottom:+!!al,background:aQ?"var(--accent)":"var(--bg-panel)",border:"none",borderRadius:8,color:aQ?"#fff":"var(--text-dim)",cursor:aQ?"pointer":"not-allowed",fontSize:al?11:13,fontWeight:600,letterSpacing:"-0.01em",boxShadow:aQ?"0 1px 3px rgba(37,99,235,0.25)":"none",transition:"background 0.15s, box-shadow 0.15s"},children:[(0,d.jsxs)("svg",{width:al?13:14,height:al?13:14,viewBox:"0 0 14 14",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("line",{x1:"2",y1:"7",x2:"11",y2:"7"}),(0,d.jsx)("polyline",{points:"7.5 3 12 7 7.5 11"})]}),"Send"]})]}),(0,d.jsxs)("div",{className:"chat-input-toolbar",style:{marginTop:al?5:8,display:"flex",alignItems:al?"flex-start":"center",gap:a3,flexWrap:al?"wrap":"nowrap"},children:[(0,d.jsxs)("div",{className:"chat-input-toolbar-left",style:{flex:al?"1 1 100%":"0 0 auto",width:al?"100%":void 0,display:"flex",alignItems:"center",gap:2*!al,flexWrap:al?"wrap":"nowrap",rowGap:4*!!al},children:[(0,d.jsx)("button",{onClick:()=>aC.current?.click(),disabled:g,title:"Attach image (right-click for document)",style:{flexShrink:0,display:"flex",alignItems:"center",justifyContent:"center",width:a1,height:a1,padding:0,background:"none",border:"none",borderRadius:a2,color:ah.length||aj.length?"var(--accent)":"var(--text-muted)",cursor:g?"not-allowed":"pointer",opacity:g?.5:1,transition:"background 0.12s, color 0.12s"},onMouseEnter:a=>{g||(a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color=ah.length||aj.length?"var(--accent)":"var(--text)")},onMouseLeave:a=>{a.currentTarget.style.background="none",a.currentTarget.style.color=ah.length||aj.length?"var(--accent)":"var(--text-muted)"},onContextMenu:a=>{a.preventDefault(),aD.current?.click()},children:(0,d.jsx)("svg",{width:"15",height:"15",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:(0,d.jsx)("path",{d:"M21.44 11.05l-9.19 9.19a6 6 0 0 1-8.49-8.49l9.19-9.19a4 4 0 0 1 5.66 5.66l-9.2 9.19a2 2 0 0 1-2.83-2.83l8.49-8.48"})})}),(0,d.jsxs)("div",{ref:ay,style:{position:"relative"},children:[(0,d.jsxs)("button",{onClick:()=>{g||(Z(a=>!a),aa(!1),J(!1),ac(!1),ae(!1))},disabled:g,title:"插入斜杠命令",style:{position:"relative",flexShrink:0,display:"flex",alignItems:"center",justifyContent:"center",width:a1,height:a1,padding:0,background:Y?"var(--bg-hover)":"none",border:"none",borderRadius:a2,color:o?"#ef4444":"var(--text-muted)",cursor:g?"not-allowed":"pointer",opacity:g?.5:1,fontSize:15,fontWeight:700,fontFamily:"var(--font-mono)",transition:"background 0.12s, color 0.12s"},onMouseEnter:a=>{g||(a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color=o?"#ef4444":"var(--text)")},onMouseLeave:a=>{a.currentTarget.style.background=Y?"var(--bg-hover)":"none",a.currentTarget.style.color=o?"#ef4444":"var(--text-muted)"},children:["/",o&&(0,d.jsx)("span",{style:{position:"absolute",top:7,right:7,width:5,height:5,borderRadius:"50%",background:"#ef4444"}})]}),Y&&(0,d.jsxs)("div",{style:{...al?a4:{position:"absolute",bottom:"calc(100% + 6px)",left:0,zIndex:100,minWidth:320,background:"var(--bg)",border:"1px solid var(--border)",borderRadius:8,boxShadow:"0 -4px 16px rgba(0,0,0,0.10)"},overflow:"hidden"},children:[(0,d.jsx)("div",{style:{padding:"6px 10px 4px",fontSize:10,fontWeight:600,color:"var(--text-dim)",textTransform:"uppercase",letterSpacing:"0.07em",borderBottom:o?"1px solid var(--border)":"none"},children:"Commands"}),o&&(0,d.jsx)("div",{style:{padding:"7px 10px",fontSize:11,color:"#ef4444",background:"rgba(239,68,68,0.06)",borderBottom:"1px solid var(--border)",lineHeight:1.45},children:o}),p&&(0,d.jsx)("div",{style:{padding:"7px 10px",fontSize:11,color:"#34d399",background:"rgba(52,211,153,0.06)",borderBottom:"1px solid var(--border)",lineHeight:1.45},children:p}),aS.length>0&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("div",{style:{padding:"6px 10px 4px",fontSize:10,fontWeight:600,color:"var(--text-dim)",textTransform:"uppercase",letterSpacing:"0.07em"},children:"Native"}),aS.map(a=>(0,d.jsxs)("button",{onClick:()=>{(Z(!1),"/compact"===a.command&&n)?m?.():a6(a.command)},style:{display:"flex",alignItems:"center",gap:al?6:8,width:"100%",padding:ao,background:"none",border:"none",color:"/compact"===a.command&&n?"#ef4444":"var(--text-muted)",cursor:"pointer",fontSize:al?11:12,textAlign:"left"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.background="none"},children:[(0,d.jsx)("span",{style:{width:18,flexShrink:0,display:"flex",justifyContent:"center",color:"/compact"===a.command&&n?"#ef4444":"var(--text-dim)"},children:"/compact"===a.command&&n?(0,d.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",children:(0,d.jsx)("rect",{x:"2",y:"2",width:"6",height:"6",rx:"1",fill:"currentColor"})}):(0,d.jsxs)("svg",{width:"11",height:"11",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("polyline",{points:"4 14 10 14 10 20"}),(0,d.jsx)("polyline",{points:"20 10 14 10 14 4"}),(0,d.jsx)("line",{x1:"10",y1:"14",x2:"3",y2:"21"}),(0,d.jsx)("line",{x1:"21",y1:"3",x2:"14",y2:"10"})]})}),(0,d.jsxs)("span",{style:{flex:1,minWidth:0,display:"flex",alignItems:"baseline",gap:8},children:[(0,d.jsx)("span",{style:{fontFamily:"var(--font-mono)",color:"var(--text)"},children:"/compact"===a.command&&n?"停止压缩":a.label}),(0,d.jsx)("span",{style:{fontSize:11,color:"var(--text-dim)"},children:"/compact"===a.command&&n?"中止当前压缩任务":a.description})]})]},a.command))]}),aT.length>0&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("div",{style:{marginTop:2*(aS.length>0),padding:"6px 10px 4px",fontSize:10,fontWeight:600,color:"var(--text-dim)",textTransform:"uppercase",letterSpacing:"0.07em",borderTop:aS.length>0?"1px solid var(--border)":"none"},children:"Prompt Shortcuts"}),aT.map(a=>(0,d.jsxs)("button",{onClick:()=>{Z(!1),a6(a.command)},style:{display:"flex",alignItems:"center",gap:8,width:"100%",padding:ao,background:"none",border:"none",color:"var(--text-muted)",cursor:"pointer",fontSize:al?11:12,textAlign:"left"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.background="none"},children:[(0,d.jsx)("span",{style:{width:18,flexShrink:0,display:"flex",justifyContent:"center",color:"var(--text-dim)",fontFamily:"var(--font-mono)",fontSize:13},children:"/"}),(0,d.jsxs)("span",{style:{flex:1,minWidth:0,display:"flex",alignItems:"baseline",gap:8},children:[(0,d.jsx)("span",{style:{fontFamily:"var(--font-mono)",color:"var(--text)"},children:a.label}),(0,d.jsx)("span",{style:{fontSize:11,color:"var(--text-dim)"},children:a.description})]})]},a.command))]})]})]}),u&&(0,d.jsxs)("div",{ref:az,style:{position:"relative"},children:[(0,d.jsxs)("button",{onClick:()=>{g||(aa(a=>!a),Z(!1),J(!1),ac(!1),ae(!1))},disabled:g,title:"选择 retain / recall / reflect",style:{position:"relative",flexShrink:0,display:"flex",alignItems:"center",justifyContent:"center",width:38,height:an,padding:0,background:_?"var(--bg-hover)":"none",border:"none",borderRadius:al?8:9,color:aU.length>0?"var(--accent)":"var(--text-muted)",cursor:g?"not-allowed":"pointer",opacity:g?.5:1,fontSize:13,fontWeight:700,fontFamily:"var(--font-mono)",transition:"background 0.12s, color 0.12s"},onMouseEnter:a=>{g||(a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color=aU.length>0?"var(--accent)":"var(--text)")},onMouseLeave:a=>{a.currentTarget.style.background=_?"var(--bg-hover)":"none",a.currentTarget.style.color=aU.length>0?"var(--accent)":"var(--text-muted)"},children:[" >_".trim(),aU.length>0&&(0,d.jsx)("span",{style:{position:"absolute",top:7,right:7,width:5,height:5,borderRadius:"50%",background:"currentColor"}})]}),_&&(0,d.jsxs)("div",{style:{...al?a4:{position:"absolute",bottom:"calc(100% + 6px)",left:0,zIndex:100,minWidth:280,background:"var(--bg)",border:"1px solid var(--border)",borderRadius:8,boxShadow:"0 -4px 16px rgba(0,0,0,0.10)"},overflow:"hidden"},children:[(0,d.jsx)("div",{style:{padding:"6px 10px 4px",fontSize:10,fontWeight:600,color:"var(--text-dim)",textTransform:"uppercase",letterSpacing:"0.07em",borderBottom:"1px solid var(--border)"},children:"Memory Tools"}),L.SN.map(a=>{let b=aU.includes(a),c=Q[a];return(0,d.jsxs)("button",{onClick:()=>{u(b?aU.filter(b=>b!==a):[...aU,a])},style:{display:"flex",alignItems:"center",gap:8,width:"100%",padding:ao,background:b?"var(--bg-selected)":"none",border:"none",color:b?"var(--text)":"var(--text-muted)",cursor:"pointer",fontSize:al?11:12,textAlign:"left"},onMouseEnter:a=>{b||(a.currentTarget.style.background="var(--bg-hover)")},onMouseLeave:a=>{b||(a.currentTarget.style.background="none")},children:[b?(0,d.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",stroke:"var(--accent)",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0},children:(0,d.jsx)("polyline",{points:"1.5 5 4 7.5 8.5 2.5"})}):(0,d.jsx)("span",{style:{width:10,flexShrink:0}}),(0,d.jsxs)("span",{style:{flex:1,minWidth:0,display:"flex",alignItems:"baseline",gap:8},children:[(0,d.jsx)("span",{style:{fontFamily:"var(--font-mono)",color:"var(--text)"},children:c.label}),(0,d.jsx)("span",{style:{fontSize:11,color:"var(--text-dim)"},children:c.description})]})]},a)})]})]}),aW&&al&&bg(),al&&!g&&(0,d.jsx)(d.Fragment,{children:(0,d.jsxs)("div",{ref:aB,style:{position:"relative",flexShrink:0},children:[(0,d.jsx)("button",{onClick:()=>{Z(!1),aa(!1),J(!1),ac(!1),ae(a=>!a)},title:"更多设置",style:{display:"flex",alignItems:"center",justifyContent:"center",width:28,height:28,padding:0,background:ad?"var(--bg-hover)":"none",border:"none",borderRadius:8,color:aq,cursor:"pointer",transition:"background 0.12s, color 0.12s"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background=ad?"var(--bg-hover)":"none",a.currentTarget.style.color=ad?"var(--text)":"var(--text-muted)"},children:(0,d.jsxs)("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",children:[(0,d.jsx)("circle",{cx:"5",cy:"12",r:"1.5"}),(0,d.jsx)("circle",{cx:"12",cy:"12",r:"1.5"}),(0,d.jsx)("circle",{cx:"19",cy:"12",r:"1.5"})]})}),ad&&(0,d.jsxs)("div",{style:{...a4,zIndex:510,padding:"6px",display:"flex",flexDirection:"column",gap:4},children:[(0,d.jsx)("div",{style:{padding:"4px 6px 2px",fontSize:10,color:"var(--text-dim)",textTransform:"uppercase",letterSpacing:"0.07em"},children:"More"}),(0,d.jsx)("div",{style:{fontSize:11,color:"var(--text-dim)",padding:"0 6px 4px"},children:"模型、推理、工具等设置已收进这里。"}),(0,d.jsxs)("div",{style:{display:"grid",gap:4},children:[aW&&(0,d.jsxs)("button",{onClick:()=>{ae(!1),ac(!1),aa(!1),J(!0),V("root")},style:ar,children:[(0,d.jsx)("div",{style:{fontSize:"10px",color:"var(--text-dim)",textTransform:"uppercase",letterSpacing:"0.05em"},children:"Model"}),(0,d.jsx)("div",{style:{fontSize:12,color:"var(--text)",marginTop:2,wordBreak:"break-word",lineHeight:1.35},children:a_})]}),aX&&(0,d.jsxs)("button",{onClick:()=>{ae(!1),J(!1),aa(!1),ac(!0)},style:ar,children:[(0,d.jsx)("div",{style:{fontSize:"10px",color:"var(--text-dim)",textTransform:"uppercase",letterSpacing:"0.05em"},children:"Tools"}),(0,d.jsx)("div",{style:{fontSize:12,color:"var(--text)",marginTop:2},children:a0})]}),!!u&&(0,d.jsxs)("button",{onClick:()=>{ae(!1),J(!1),ac(!1),aa(!0)},style:ar,children:[(0,d.jsx)("div",{style:{fontSize:"10px",color:"var(--text-dim)",textTransform:"uppercase",letterSpacing:"0.05em"},children:"Memory"}),(0,d.jsx)("div",{style:{fontSize:12,color:aU.length>0?"var(--accent)":"var(--text)",marginTop:2},children:aV})]})]})]})]})})]}),(0,d.jsx)("div",{className:"chat-input-toolbar-spacer",style:{display:ap?"none":void 0,flex:al?"0 0 auto":1,width:al?0:void 0,height:al?0:void 0}}),(0,d.jsxs)("div",{className:"chat-input-toolbar-right",style:{flex:"0 0 auto",width:al?"auto":void 0,display:"flex",alignItems:"center",gap:al?4:2,marginLeft:al?0:"auto",marginTop:0},children:[(!ap&&!g||al&&ab)&&aX&&(0,d.jsxs)("div",{ref:aA,style:{position:"relative"},children:[!ap&&!g&&(0,d.jsxs)("button",{onClick:()=>{g||(Z(!1),aa(!1),J(!1),ae(!1),ac(a=>!a))},disabled:g,title:"切换工具预设",style:{display:"flex",alignItems:"center",gap:al?3:5,padding:ao,height:an,background:ab?"var(--bg-hover)":"none",border:"none",borderRadius:al?8:9,color:(q??"full")==="workbench"?"var(--accent)":"var(--text-muted)",cursor:g?"not-allowed":"pointer",fontSize:al?11:12,opacity:g?.5:1,transition:"background 0.12s, color 0.12s"},onMouseEnter:a=>{g||(a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color=(q??"full")==="workbench"?"var(--accent)":"var(--text)")},onMouseLeave:a=>{a.currentTarget.style.background=ab?"var(--bg-hover)":"none",a.currentTarget.style.color=(q??"full")==="workbench"?"var(--accent)":"var(--text-muted)"},children:[(0,d.jsx)("svg",{width:"11",height:"11",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:(0,d.jsx)("path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z"})}),(0,d.jsx)("span",{style:am,children:a0})]}),ab&&(0,d.jsx)("div",{style:{...al?a4:{position:"absolute",bottom:"calc(100% + 6px)",right:0,zIndex:100,background:"var(--bg)",border:"1px solid var(--border)",borderRadius:8,boxShadow:"0 -4px 16px rgba(0,0,0,0.10)",minWidth:120},overflow:"hidden"},children:N.map(a=>{let b=O[a],c=(q??"full")===b,e="agent"===a&&!1===af,f=e?"需安装 pi-subagents":P[a];return(0,d.jsxs)("button",{onClick:()=>{!e&&(ac(!1),c||s(b))},disabled:e,title:e?"运行 pi install npm:pi-subagents 后再启用":void 0,style:{display:"flex",alignItems:"center",gap:8,width:"100%",padding:"7px 12px",background:c?"var(--bg-selected)":"none",border:"none",color:c?"var(--text)":"var(--text-muted)",cursor:e?"not-allowed":"pointer",fontSize:al?11:12,textAlign:"left",fontWeight:c?600:400,opacity:e?.5:1,whiteSpace:"nowrap"},onMouseEnter:a=>{c||e||(a.currentTarget.style.background="var(--bg-hover)")},onMouseLeave:a=>{c||(a.currentTarget.style.background="none")},children:[c?(0,d.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",stroke:"var(--accent)",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0},children:(0,d.jsx)("polyline",{points:"1.5 5 4 7.5 8.5 2.5"})}):(0,d.jsx)("span",{style:{width:10,flexShrink:0}}),(0,d.jsx)("span",{style:{flex:1},children:a}),(0,d.jsx)("span",{style:{fontSize:11,color:"var(--text-dim)",marginLeft:8},children:f})]},a)})})]}),aW&&!al&&bg(),g&&(0,d.jsxs)("button",{onClick:b,title:"停止 Agent",style:{display:"flex",alignItems:"center",gap:6,padding:"8px 14px",height:an,background:"rgba(239,68,68,0.08)",border:"1px solid rgba(239,68,68,0.3)",borderRadius:al?8:9,color:"#ef4444",cursor:"pointer",fontSize:al?11:12,fontWeight:600,whiteSpace:"nowrap",letterSpacing:"-0.01em",transition:"background 0.12s"},onMouseEnter:a=>{a.currentTarget.style.background="rgba(239,68,68,0.16)"},onMouseLeave:a=>{a.currentTarget.style.background="rgba(239,68,68,0.08)"},children:[(0,d.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",children:(0,d.jsx)("rect",{x:"1.5",y:"1.5",width:"7",height:"7",rx:"1.5",fill:"currentColor"})}),"Stop"]})]})]})]})]})});function aa(a){return"user"===a.role?{bg:"rgba(37,99,235,0.18)",border:"rgba(37,99,235,0.7)"}:{bg:"rgba(107,114,128,0.12)",border:"rgba(107,114,128,0.5)"}}function ab({messages:a,streamingMessage:b,scrollContainer:c,messageRefs:f}){let[g,h]=(0,e.useState)(0),[i,j]=(0,e.useState)(1),[k,l]=(0,e.useState)(!1),[m,n]=(0,e.useState)([]),[o,p]=(0,e.useState)(!1),[q,r]=(0,e.useState)(null),s=(0,e.useRef)(!1),t=(0,e.useRef)(null),u=(0,e.useMemo)(()=>b?[...a,b]:a,[a,b]),v=(0,e.useRef)(u);v.current=u;let w=(0,e.useRef)(null);w.current=()=>{let a=c.current;if(!a)return;let b=a.scrollHeight,d=a.clientHeight,e=b-d;l(e>20),e<=0?(h(0),j(1)):(h(a.scrollTop/e),j(d/b));let g=f.current,i=[],k=0,m=v.current;for(let c=0;c<m.length;c++){let d=m[c];if("user"!==d.role&&"assistant"!==d.role)continue;let e=g?.[k];if(k++,("user"===d.role||"assistant"===d.role&&(d.content??[]).some(a=>"text"===a.type))&&e&&b>0){let c=e.getBoundingClientRect(),f=a.getBoundingClientRect(),g=c.top-f.top+a.scrollTop,h=c.height;i.push({topRatio:g/b,heightRatio:h/b,msg:d,index:i.length})}}n(i)},(0,e.useCallback)(()=>w.current(),[]);let x=(0,e.useCallback)(a=>{let b=c.current;if(!b)return;let d=b.scrollHeight-b.clientHeight;d<=0||(b.scrollTop=Math.max(0,Math.min(1-i,a))/(1-i)*d)},[c,i]),y=(0,e.useCallback)(a=>{if(!k)return;s.current=!0;let b=a.currentTarget.getBoundingClientRect(),c=(a.clientY-b.top)/b.height,d=c-g*(1-i),e=d>=0&&d<=i?d:i/2;x(c-e);let f=a=>{s.current&&x((a.clientY-b.top)/b.height-e)},h=()=>{s.current=!1,window.removeEventListener("mousemove",f),window.removeEventListener("mouseup",h)};window.addEventListener("mousemove",f),window.addEventListener("mouseup",h)},[k,i,g,x]),z=t.current?.clientHeight??600,A=(0,e.useMemo)(()=>{if(!o||0===m.length)return[];let a=m.map(a=>Math.round(a.topRatio*z-11));for(let b=0;b<10;b++){for(let b=1;b<a.length;b++){let c=a[b-1]+22+2;a[b]<c&&(a[b]=c)}for(let b=a.length-2;b>=0;b--){let c=a[b+1]-22-2;a[b]>c&&(a[b]=c)}}for(let b=0;b<a.length;b++)a[b]=Math.max(0,Math.min(z-22,a[b]));return a},[o,m,z]);if(!k)return null;let B=g*(1-i)*100,C=100*i,D=null!==q&&m.length>0?m.reduce((a,b)=>Math.abs(b.topRatio-q)<Math.abs(m[a].topRatio-q)?b.index:a,0):null;return(0,d.jsxs)("div",{ref:t,onMouseDown:y,onMouseEnter:()=>p(!0),onMouseLeave:()=>{p(!1),r(null)},onMouseMove:a=>{let b=a.currentTarget.getBoundingClientRect();r((a.clientY-b.top)/b.height)},style:{width:36,flexShrink:0,position:"relative",cursor:"default",userSelect:"none",borderLeft:"1px solid var(--border)",background:"var(--bg-panel)",overflow:"visible"},children:[(0,d.jsx)("div",{style:{position:"absolute",left:0,right:0,top:`${B}%`,height:`${C}%`,background:"rgba(100,100,100,0.1)",borderTop:"1px solid rgba(100,100,100,0.2)",borderBottom:"1px solid rgba(100,100,100,0.2)",pointerEvents:"none",zIndex:1}}),m.map(a=>{let b=aa(a.msg),c=o&&D===a.index,e="user"===a.msg.role,f=100*a.topRatio;return(0,d.jsx)("div",{style:{position:"absolute",top:`${f}%`,transform:"translateY(-50%)",left:0,right:0,height:"12px",display:"flex",alignItems:"center",justifyContent:"center",cursor:"pointer",zIndex:2},children:(0,d.jsx)("div",{style:{width:e?8:6,height:e?8:6,borderRadius:e?2:"50%",background:b.bg,border:`1.5px solid ${b.border}`,flexShrink:0,transition:"transform 0.1s",transform:c?"scale(1.6)":"scale(1)"}})},a.index)}),(0,d.jsx)("div",{style:{position:"absolute",left:"50%",top:0,bottom:0,width:1,background:"var(--border)",transform:"translateX(-50%)",zIndex:0}}),o&&m.map((a,b)=>{let c=function(a){if("user"===a.role){let b=a.content;return"string"==typeof b?b.slice(0,200):Array.isArray(b)?b.filter(a=>"text"===a.type&&a.text).map(a=>a.text).join("\n").slice(0,200):""}if("assistant"===a.role){let b=a.content??[],c=b.filter(a=>"text"===a.type).map(a=>a.text).join(" ");if(c)return c.slice(0,200);let d=b.filter(a=>"toolCall"===a.type).map(a=>a.toolName);if(d.length)return d.join(", ")}return""}(a.msg),e=aa(a.msg),f=D===a.index;return c&&0!==A.length?(0,d.jsx)("div",{style:{position:"absolute",top:A[b],right:"100%",marginRight:6,background:"var(--bg)",borderTop:`1px solid ${f?e.border:"var(--border)"}`,borderRight:`1px solid ${f?e.border:"var(--border)"}`,borderBottom:`1px solid ${f?e.border:"var(--border)"}`,borderLeft:`2px solid ${e.border}`,borderRadius:4,padding:"2px 7px",width:200,zIndex:100,pointerEvents:"none",opacity:f?1:.45,transition:"top 0.1s, opacity 0.1s"},children:(0,d.jsx)("div",{style:{fontSize:11,color:f?"var(--text)":"var(--text-muted)",lineHeight:1.4,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:c})},a.index):null})]})}function ac(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function ad(a,b=220){if(!a)return;let c=a.trim();if(c)return c.length>b?`${c.slice(0,b)}...`:c}function ae(...a){for(let b of a)if("string"==typeof b&&b.trim())return b}function af(...a){for(let b of a)if("number"==typeof b&&Number.isFinite(b))return b}function ag(a){let b=new Map;for(let c of a){if("custom"===c.role&&"subagent-notify"===c.customType&&"string"==typeof c.content){let a=c.content.match(/^Background task (completed|failed|paused):\s*\*\*(.+?)\*\*(?:\s+\((.+?)\))?/);if(a){let d=`bg-${a[2]}-${c.timestamp??""}`;b.set(d,{id:d,agent:a[2],status:a[1],task:a[3],summary:ad(c.content.split("\n").slice(3).join("\n")),timestamp:c.timestamp})}}if("assistant"===c.role){let a=c.content;if(!a)continue;for(let d of a)if("toolCall"===d.type&&"subagent"===d.toolName&&d.input){let a=d.input,e=a.agent??(a.chain?"chain":a.tasks?"parallel":a.action??"subagent"),f="string"==typeof a.task?a.task:void 0,g=d.toolCallId??`sub-${e}-${c.timestamp??Date.now()}`;b.set(g,{id:g,agent:e,status:"running",task:f,timestamp:c.timestamp})}}if("toolResult"===c.role){if(c.toolName&&"subagent"!==c.toolName||!c.toolCallId||!b.has(c.toolCallId))continue;let a=b.get(c.toolCallId),d=c.content.filter(a=>"text"===a.type).map(a=>a.text).join("\n");b.set(c.toolCallId,function(a,b,c){let d;if(!ac(b))return{...a,summary:ad(c)};let e=Array.isArray(b.results)?b.results.filter(ac):[],f=e[0],g=f?.progressSummary,h=f&&(d=f.artifactPaths)?Object.values(d).filter(a=>"string"==typeof a&&a.trim().length>0):[],i=ae(f?.finalOutput,f?.output,c);return{...a,mode:ae(b.mode),runId:ae(b.runId),agent:ae(f?.agent,a.agent)??a.agent,task:ae(f?.task,a.task),summary:ad(i),model:ae(f?.model),durationMs:af(g?.durationMs),toolCount:af(g?.toolCount),tokens:af(g?.tokens),outputPath:ae(f?.savedOutputPath,f?.artifactPaths?.outputPath),sessionFile:ae(f?.sessionFile,f?.artifactPaths?.jsonlPath),artifacts:h,resultCount:e.length||void 0}}({...a,status:function(a){if(a.isError)return"failed";let b=a.details;return ac(b)&&Array.isArray(b.results)&&b.results.some(a=>ac(a)&&"number"==typeof a.exitCode&&0!==a.exitCode)?"failed":"completed"}(c)},c.details,d))}}return Array.from(b.values()).sort((a,b)=>(b.timestamp??0)-(a.timestamp??0))}function ah({messages:a,runs:b}){let c=(0,e.useMemo)(()=>ag(a??[]),[a]),f=b??c,g=f.filter(a=>"running"===a.status),h=f.filter(a=>"running"!==a.status);return 0===f.length?null:(0,d.jsxs)("div",{style:{height:"100%",overflow:"auto",padding:12},children:[g.length>0&&(0,d.jsx)(ai,{title:`Active (${g.length})`,runs:g}),h.length>0&&(0,d.jsx)(ai,{title:`Completed (${h.length})`,runs:h,compact:g.length>0})]})}function ai({title:a,runs:b,compact:c}){return(0,d.jsxs)("div",{style:{marginBottom:c?10:16},children:[(0,d.jsx)("div",{style:{fontSize:11,fontWeight:600,color:"var(--text-dim)",marginBottom:8,textTransform:"uppercase",letterSpacing:"0.05em"},children:a}),b.map(a=>(0,d.jsx)(aj,{run:a},a.id))]})}function aj({run:a}){let[b,c]=(0,e.useState)(!1),f="running"===a.status,g="completed"===a.status?"#22c55e":"failed"===a.status?"#ef4444":f?"var(--accent)":"var(--text-dim)",h="failed"===a.status?"rgba(248,113,113,0.35)":f?"rgba(99,102,241,0.25)":"var(--border)",i="failed"===a.status?"rgba(248,113,113,0.05)":f?"rgba(99,102,241,0.05)":"var(--bg-panel)",j=[a.mode,a.resultCount&&a.resultCount>1?`${a.resultCount} results`:void 0,void 0!==a.toolCount?`${a.toolCount} tools`:void 0,void 0!==a.tokens?`${a.tokens.toLocaleString()} tok`:void 0,void 0!==a.durationMs?`${Math.round(a.durationMs/1e3)}s`:void 0].filter(Boolean).join(" \xb7 "),k=!!(a.summary||a.outputPath||a.sessionFile||a.artifacts?.length||a.model||a.runId);return(0,d.jsxs)("div",{style:{borderRadius:6,border:`1px solid ${h}`,background:i,marginBottom:6,fontSize:12,overflow:"hidden"},children:[(0,d.jsxs)("button",{onClick:()=>k&&c(a=>!a),style:{display:"flex",alignItems:"center",gap:7,width:"100%",border:"none",background:"transparent",padding:"8px 10px",color:"var(--text-muted)",textAlign:"left",cursor:k?"pointer":"default"},children:[(0,d.jsx)(ak,{running:f,color:g}),(0,d.jsx)("span",{style:{fontWeight:650,color:"var(--text)",minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.agent}),(0,d.jsx)("span",{style:{color:g,fontSize:10,fontWeight:700,flexShrink:0},children:a.status}),j&&(0,d.jsx)("span",{style:{color:"var(--text-dim)",fontSize:10,marginLeft:"auto",whiteSpace:"nowrap"},children:j}),k&&(0,d.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",stroke:"var(--text-dim)",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0,transform:b?"rotate(180deg)":"none",transition:"transform 0.15s"},children:(0,d.jsx)("polyline",{points:"2 3.5 5 6.5 8 3.5"})})]}),a.task&&(0,d.jsx)("div",{style:{padding:"0 10px 8px 25px",color:"var(--text-muted)",fontSize:11,lineHeight:1.4},children:ad(a.task,150)}),b&&k&&(0,d.jsxs)("div",{style:{borderTop:`1px solid ${h}`,background:"var(--bg)",padding:"8px 10px",display:"flex",flexDirection:"column",gap:7},children:[a.summary&&(0,d.jsx)("pre",{style:{margin:0,color:"var(--text-muted)",fontSize:11,lineHeight:1.45,whiteSpace:"pre-wrap",wordBreak:"break-word",maxHeight:160,overflow:"auto"},children:a.summary}),(0,d.jsx)(al,{run:a})]})]})}function ak({running:a,color:b}){return(0,d.jsx)("span",{style:{width:8,height:8,borderRadius:"50%",background:b,display:"inline-block",animation:a?"pulse 1.5s infinite":void 0,flexShrink:0}})}function al({run:a}){let b=[a.model?["model",a.model]:void 0,a.runId?["run",a.runId]:void 0,a.outputPath?["output",a.outputPath]:void 0,a.sessionFile?["session",a.sessionFile]:void 0,...(a.artifacts??[]).slice(0,4).map((a,b)=>[`artifact ${b+1}`,a])].filter(Boolean);return 0===b.length?null:(0,d.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:3},children:b.map(([a,b])=>(0,d.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"58px minmax(0, 1fr)",gap:6,fontSize:10},children:[(0,d.jsx)("span",{style:{color:"var(--text-dim)",textTransform:"uppercase"},children:a}),(0,d.jsx)("span",{style:{color:"var(--text-muted)",fontFamily:"var(--font-mono)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},title:b,children:b})]},`${a}:${b}`))})}function am({sessionKind:a,toolPreset:b,initialSourcePath:c,initialKernel:e,isNew:f,isStreaming:g=!1,onResume:h,onDismiss:i}){if(f||"workbench"!==a)return null;let j=c?c.replace(/\\/g,"/").split("/").filter(Boolean).pop()??c:null,k="workbench"===b;return(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,padding:"8px 14px",background:"rgba(37,99,235,0.06)",borderBottom:"1px solid rgba(37,99,235,0.18)",fontSize:12,flexShrink:0},children:[(0,d.jsxs)("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"var(--accent)",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0},children:[(0,d.jsx)("path",{d:"M4 19V5"}),(0,d.jsx)("path",{d:"M4 19h16"}),(0,d.jsx)("path",{d:"m7 16 3-5 4 3 4-7"})]}),(0,d.jsxs)("span",{style:{color:"var(--text)",minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:["This is an ",(0,d.jsxs)("strong",{children:[k?"active":"inactive"," Workbench"]})," session",j&&(0,d.jsxs)("span",{style:{color:"var(--text-muted)"},children:[" \xb7 Source: ",(0,d.jsx)("code",{style:{fontFamily:"var(--font-mono)",fontSize:11,color:"var(--accent)"},children:j})]}),e&&(0,d.jsxs)("span",{style:{color:"var(--text-dim)"},children:[" \xb7 Kernel: ",e.toUpperCase()]})]}),(0,d.jsx)("div",{style:{flex:1}}),(0,d.jsx)("button",{type:"button",onClick:i,style:{border:"1px solid var(--border)",borderRadius:6,padding:"2px 10px",height:26,background:"var(--bg-panel)",color:"var(--text-muted)",cursor:"pointer",fontSize:11},children:"Dismiss"}),(0,d.jsx)("button",{type:"button",onClick:h,disabled:g,title:g?"Wait until the agent finishes before updating Workbench":k?"Reload the initial data source into the warm runtime":"Restore Workbench tools and reload the initial data source",style:{border:"1px solid rgba(37,99,235,0.45)",borderRadius:6,padding:"2px 12px",height:26,background:"rgba(37,99,235,0.12)",color:"var(--accent)",cursor:g?"not-allowed":"pointer",fontSize:11,fontWeight:600,opacity:g?.55:1,whiteSpace:"nowrap"},children:k?"Reload Initial Data":"Resume Workbench"})]})}var an=c(59230);let ao=["image/","application/pdf","application/vnd.openxmlformats-officedocument","application/msword","application/vnd.ms-"];function ap(a){return ao.some(b=>a.type.startsWith(b))}function aq({agentPhase:a,startedAt:b}){let[c,f]=(0,e.useState)(0);return(0,d.jsx)("div",{className:"py-2 text-[13px] text-text-muted",children:(0,d.jsxs)("span",{className:"animate-[pulse_1.5s_infinite]",children:[function(a){if(a?.kind==="running_tools"){let b=a.tools.map(a=>a.args??a.name);return 0===b.length?"Running tool…":1===b.length?`Running ${b[0]}…`:`Running ${b.slice(0,2).join(", ")}${b.length>2?` (+${b.length-2})`:""}…`}return a?.kind==="waiting_model"?"Waiting for model…":"Working…"}(a),"\xa0\xa0",function(a){if(a<60)return`${a}s`;let b=Math.floor(a/60);return`${b}m ${String(a%60).padStart(2,"0")}s`}(c)]})})}function ar(a){return a>=1e6?`${(a/1e6).toFixed(1)}M`:a>=1e3?`${(a/1e3).toFixed(1)}K`:String(a)}function as({goal:a}){if(!(a&&"dropped"!==a.status))return null;let b=a.tokenBudget&&a.tokenBudget>0?Math.min(100,Math.round(a.tokensUsed/a.tokenBudget*100)):null;return(0,d.jsx)("div",{style:{marginBottom:16,borderRadius:10,border:"1px solid var(--border)",background:"var(--bg-panel)",overflow:"hidden"},children:(0,d.jsxs)("div",{style:{padding:"10px 14px"},children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,marginBottom:6},children:[(0,d.jsx)("span",{style:{flexShrink:0,borderRadius:4,padding:"1px 6px",fontSize:10,fontWeight:600,textTransform:"uppercase",letterSpacing:"0.05em",color:"#fff",background:function(a){switch(a){case"active":return"rgba(37,99,235,0.85)";case"complete":return"rgba(34,197,94,0.85)";case"budget-limited":return"rgba(245,158,11,0.85)";case"paused":return"rgba(148,163,184,0.85)";case"dropped":return"rgba(239,68,68,0.85)"}}(a.status)},children:function(a){switch(a){case"active":return"进行中";case"paused":return"已暂停";case"budget-limited":return"预算受限";case"complete":return"已完成";case"dropped":return"已放弃"}}(a.status)}),(0,d.jsx)("span",{style:{fontSize:11,fontWeight:500,color:"var(--text-muted)"},children:"Goal"})]}),(0,d.jsx)("p",{style:{margin:"0 0 6px",fontSize:13,lineHeight:1.5,color:"var(--text)",whiteSpace:"pre-wrap"},children:a.objective}),(0,d.jsxs)("div",{style:{display:"flex",flexWrap:"wrap",alignItems:"center",gap:"4px 16px",fontSize:11,color:"var(--text-muted)"},children:[(0,d.jsx)("span",{children:function(a){if(a<60)return`${a}s`;let b=Math.floor(a/60);if(b<60)return`${b}m ${String(a%60).padStart(2,"0")}s`;let c=Math.floor(b/60);return`${c}h ${b%60}m`}(a.timeUsedSeconds)}),(0,d.jsxs)("span",{children:[ar(a.tokensUsed),a.tokenBudget?` / ${ar(a.tokenBudget)} tokens`:" tokens"]}),null!=b&&(0,d.jsxs)("span",{children:[b,"%"]})]}),null!=b&&(0,d.jsx)("div",{style:{marginTop:6,height:3,borderRadius:999,overflow:"hidden",background:"var(--border)"},children:(0,d.jsx)("div",{style:{height:"100%",borderRadius:999,background:b>=100?"rgba(239,68,68,0.6)":"rgba(37,99,235,0.5)",width:`${Math.min(b,100)}%`,transition:"width 0.3s"}})})]})})}function at(a){let b=a.content;return"string"==typeof b?b:Array.isArray(b)?b.filter(a=>!!a&&"object"==typeof a&&"text"===a.type&&"string"==typeof a.text).map(a=>a.text).join("\n"):""}let au=["annotate and analyze.","vibe code bioinformatics.","turn data into figures.","inspect your project.","build a reproducible report.","run R/Python plots.","summarize that paper.","review the pipeline.","compare markers.","draft methods.","find the next analysis step."];function av({phrases:a}){let[b,c]=(0,e.useState)(()=>Math.floor(Math.random()*a.length)),[f,g]=(0,e.useState)(""),[h,i]=(0,e.useState)(!1),[j,k]=(0,e.useState)(!0);return(0,d.jsxs)("span",{style:{color:"var(--text-muted)",fontWeight:400},children:[f,(0,d.jsx)("span",{style:{opacity:+!!j,color:"var(--accent)",marginLeft:1},children:"▍"})]})}function aw({status:a}){let b=a?.current??"0.8.130"??"0.0.0";if(a?.updateAvailable){let c=a.latest?`v${a.latest}`:"latest";return(0,d.jsxs)("span",{title:`Current v${b}; latest ${c}; run ${a.updateCommand}`,style:{display:"block",maxWidth:"100%",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontSize:11,color:"var(--accent)"},children:["Update: ",(0,d.jsx)("code",{style:{fontFamily:"var(--font-mono)",color:"var(--accent)"},children:a.updateCommand})]})}return(0,d.jsxs)("span",{title:`AnnoVibe v${b}`,style:{fontSize:11,color:"var(--text-dim)",whiteSpace:"nowrap"},children:["v",b]})}function ax({session:a,newSessionCwd:b,onAgentEnd:c,onSessionCreated:f,onSessionForked:g,modelsRefreshKey:h,chatInputRef:i,onBranchDataChange:j,onSessionStatsChange:k,onContextUsageChange:l,onToolPresetActive:m,generativeUI:n,forkSettings:o,activeFilePath:p,onOpenFileAtLine:q}){var r;let s,[t,v]=(0,e.useState)(null),[w,x]=(0,e.useState)(!1),y=p&&!w?p:null,{data:z,loading:A,error:B,messages:C,entryIds:D,streamState:E,agentRunning:F,modelNames:G,modelList:H,modelThinkingLevels:I,modelThinkingLevelMaps:J,toolPreset:L,memoryTools:M,thinkingLevel:N,retryInfo:O,contextUsage:P,forkingEntryId:Q,isCompacting:R,compactError:S,compactInfo:T,displayModel:U,sessionStats:V,agentPhase:W,agentError:X,isNew:Y,loadMoreMessages:Z,hasMoreMessages:$,totalMessages:aa,loadedMessagesCount:ac,loadShadowedMessages:ad,messagesEndRef:ae,scrollContainerRef:af,lastUserMsgRef:ai,handleSend:aj,handleAbort:ak,handleFork:al,handleNavigate:ao,handleModelChange:ar,handleCompact:ay,handleSteer:az,handleFollowUp:aA,handleAbortCompaction:aB,handleToolPresetChange:aC,handleMemoryToolsChange:aD,handleThinkingLevelChange:aE,handleAgentEventRef:aF,forkToNewSession:aG}=(0,an.T)({session:a,newSessionCwd:b,onAgentEnd:c,onSessionCreated:f,onSessionForked:g,modelsRefreshKey:h,onBranchDataChange:j}),aH=(0,e.useMemo)(()=>{let a=new Map;for(let b of z?.context.compactions??[])a.set(b.entryId,b.shadowedCount);return a},[z?.context.compactions]),[aI,aJ]=(0,e.useState)(!1),[aK,aL]=(0,e.useState)(null);(0,e.useRef)(!1);let aM=o??{enabled:!0,suggestTokens:18e4,autoTokens:4e5,minMessages:20},aN=(0,e.useCallback)(()=>{let c=z?.info?.cwd??a?.cwd??b??null,d=C.filter(a=>"user"===a.role||"assistant"===a.role),e=d.filter(a=>"user"===a.role),f=d.filter(a=>"assistant"===a.role),g=e[0],h=e[e.length-1],i=f[f.length-1],j=(a,b)=>{let c=a.replace(/\s+/g," ").trim();return c.length>b?`${c.slice(0,b)}…`:c};return["以下是从父会话 fork 出的新会话。工作仍在原项目目录中进行,但本会话只携带精简摘要,完整历史不再重发(避免模型 prefill 变慢)。",c?`工作目录: ${c}`:"",g?`最初目标: ${j(at(g),500)}`:"",h?`最近一次请求: ${j(at(h),500)}`:"",i?`最近回复要点: ${j(at(i),900)}`:"",`父会话共 ${aa||d.length} 条消息。若需要更早的细节,请说明是哪个任务,我会让你查看父会话文件或重新提供。`].filter(Boolean).join("\n\n")},[z?.info?.cwd,a?.cwd,b,C,aa]),aO=(0,e.useCallback)(async()=>{if(F||aI)return{ok:!1,error:"Session is busy"};aJ(!0),aL(null);try{let a=await aG(aN());return a.ok||aL(a.error??"Fork failed"),a}finally{aJ(!1)}},[F,aI,aG,aN]),aP=P?.tokens??null,aQ=C.filter(a=>"user"===a.role||"assistant"===a.role).length,aR=!Y&&!F&&aM.enabled&&null!=aP&&aP>=aM.suggestTokens&&aQ>=aM.minMessages;aF.current,V&&(V.tokens.input,V.tokens.output,V.tokens.cacheRead,V.tokens.cacheWrite),(0,e.useRef)(V).current=V,P&&(P.percent,P.contextWindow,P.tokens),(0,e.useRef)(P).current=P;let aS=(0,e.useCallback)(a=>{i?.current?.addFiles(a)},[i]),aT=(0,e.useCallback)((a,b,c)=>{let d=c?.findIndex(b=>b.src===a)??-1;a0({src:a,gallery:c,index:d>=0?d:0})},[]),{isDragOver:aU,handleDragEnter:aV,handleDragOver:aW,handleDragLeave:aX,handleDrop:aY}=function(a){let[b,c]=(0,e.useState)(!1),d=(0,e.useRef)(0),f=(0,e.useCallback)(a=>{Array.from(a.dataTransfer.items).some(ap)&&(a.preventDefault(),d.current+=1,c(!0))},[]),g=(0,e.useCallback)(a=>{Array.from(a.dataTransfer.items).some(ap)&&a.preventDefault()},[]);return{isDragOver:b,handleDragEnter:f,handleDragOver:g,handleDragLeave:(0,e.useCallback)(()=>{d.current-=1,d.current<=0&&(d.current=0,c(!1))},[]),handleDrop:(0,e.useCallback)(b=>{b.preventDefault(),d.current=0,c(!1),a(Array.from(b.dataTransfer.files))},[a])}}(aS),[aZ,a$]=(0,e.useState)(null),[a_,a0]=(0,e.useState)(null),a1=C.filter(a=>"user"===a.role||"assistant"===a.role),a2=(r=a1.length,(s=(0,e.useRef)([])).current=Array(r).fill(null).map((a,b)=>s.current[b]??null),s),a3=(0,e.useMemo)(()=>{let a=new Map;for(let b of C)"toolResult"===b.role&&a.set(b.toolCallId,b);return a},[C]),a4=Y&&0===C.length&&!E.isStreaming&&!F,a5=z?.info?.cwd??a?.cwd??b??null,a6=function(a){if(!a)return null;let b=a.replace(/[\\/]+$/,"").split(/[\\/]/).filter(Boolean);return b[b.length-1]||a}(a5),a7=function(a=768){let[b,c]=(0,e.useState)(!1);return b}(),[a8,a9]=(0,e.useState)(!1),[ba,bb]=(0,e.useState)(!1),bc=ag(C),bd=bc.filter(a=>"running"===a.status).length,be=(0,e.useCallback)(()=>{a?.id&&!F&&(async()=>{await aC("workbench");let a=z?.sessionMeta;if(a?.initialSourcePath&&a.initialKernel){let b=`Resume this Workbench session. Reload only the initial data file \`${a.initialSourcePath}\` using the ${a.initialKernel.toUpperCase()} runtime. Do not rerun previous analyses or load extra files unless I ask. Use the chat history only as context for what to do next.`;await aj(b)}})()},[F,z?.sessionMeta,aj,aC,a?.id]),bf=U?I[`${U.provider}:${U.modelId}`]??null:null,bg=U?J[`${U.provider}:${U.modelId}`]??null:null,bh=z?.sessionMeta?.sessionKind??null,bi=a?.id??b??"new-chat",bj=(0,e.useMemo)(()=>(function(a){let b=[];for(let c=a.length-1;c>=0;c-=1){let d=a[c];if("user"!==d.role)continue;let e=d.text.trim();e&&b.push(e)}return b})(a1.map(a=>({role:a.role,text:at(a)}))),[a1]),bk=(0,e.useCallback)(async(a,b,c)=>{let d=a;y&&a.trim()&&(d=`${a}
|
|
6
|
+
[truncated after 60000 characters]`,truncated:!0};if(!f)return{extractionError:"No extractable text found"};return{extractedText:f,truncated:g}}catch(a){return{extractionError:a instanceof Error?a.message:String(a)}}}let _=(0,e.forwardRef)(function({onSend:a,onAbort:b,onSteer:c,onFollowUp:f,isStreaming:g,model:h,modelNames:i,modelList:j,onModelChange:k,onCompact:l,onAbortCompaction:m,isCompacting:n,compactError:o,compactInfo:p,toolPreset:q,sessionKind:r,onToolPresetChange:s,memoryTools:t,onMemoryToolsChange:u,thinkingLevel:v,onThinkingLevelChange:w,availableThinkingLevels:x,thinkingLevelMap:y,retryInfo:z,cornerBadge:A,promptHistory:B,sessionHistoryKey:C,activeFilePath:D,onDismissFileContext:E},F){let[G,H]=(0,e.useState)(""),[I,J]=(0,e.useState)(!1),[K,V]=(0,e.useState)("root"),[W,X]=(0,e.useState)(null),[Y,Z]=(0,e.useState)(!1),[_,aa]=(0,e.useState)(!1),[ab,ac]=(0,e.useState)(!1),[ad,ae]=(0,e.useState)(!1),[af,ag]=(0,e.useState)(!1),[ah,ai]=(0,e.useState)(null),[aj,ak]=(0,e.useState)([]),[al,am]=(0,e.useState)([]),an=function(a=768){let[b,c]=(0,e.useState)(!1);return b}(),ao=an?{display:"none"}:void 0,ap=an?28:32,aq=an?"6px 8px":"8px 12px",ar=an?160:180,as=an&&!g,at=af?"var(--text)":"var(--text-muted)",au={padding:"7px 8px",borderRadius:8,background:"var(--bg-panel)",border:"1px solid var(--border)",width:"100%",textAlign:"left",cursor:"pointer"},av=an?{position:"sticky",bottom:0,zIndex:30,padding:"8px 0 calc(env(safe-area-inset-bottom, 0px) + 8px)",background:"linear-gradient(to top, color-mix(in srgb, var(--bg) 96%, transparent), color-mix(in srgb, var(--bg) 86%, transparent))",backdropFilter:"blur(10px)",WebkitBackdropFilter:"blur(10px)",borderTop:"1px solid color-mix(in srgb, var(--border) 65%, transparent)"}:{flexShrink:0,background:"transparent",padding:"0 16px 8px",paddingRight:52},[aw,ax]=(0,e.useState)(null),ay=(0,e.useRef)(null),az=(0,e.useRef)(null),aA=(0,e.useRef)(null),aB=(0,e.useRef)(null),aC=(0,e.useRef)(null),aD=(0,e.useRef)(null),aE=(0,e.useRef)(null),aF=(0,e.useRef)(null),aG=(0,e.useRef)(null),aH=(0,e.useRef)(null),aI=(0,e.useCallback)(a=>{let b=ay.current;if(!b)return void H(b=>b+(b?" ":"")+a);let c=b.selectionStart??b.value.length,d=b.selectionEnd??b.value.length,e=b.value.slice(0,c),f=b.value.slice(d),g=!(e.length>0)||e.endsWith(" ")||e.endsWith("\n")?"":" ";H(e+g+a+f),requestAnimationFrame(()=>{let b=ay.current;if(!b)return;let d=c+g.length+a.length;b.setSelectionRange(d,d),b.focus(),b.style.height="auto",b.style.height=`${Math.min(b.scrollHeight,200)}px`})},[]);(0,e.useImperativeHandle)(F,()=>({insertIfEmpty(a){let b=ay.current;(b?b.value:G).trim()||(H(a),requestAnimationFrame(()=>{b&&(b.focus(),b.style.height="auto",b.style.height=`${Math.min(b.scrollHeight,200)}px`)}))},insertText(a){aI(a)},addImages(a){aJ(a)},addFiles(a){aK(a)}}));let aJ=(0,e.useCallback)(async a=>{let b=a.filter(a=>a.type.startsWith("image/"));if(!b.length)return;let c=await Promise.all(b.map(a=>new Promise((b,c)=>{let d=new FileReader;d.onload=()=>{b({data:d.result.split(",")[1],mimeType:a.type,previewUrl:URL.createObjectURL(a)})},d.onerror=c,d.readAsDataURL(a)})));ak(a=>[...a,...c])},[]),aK=(0,e.useCallback)(async a=>{let b=a.filter(a=>a.type.startsWith("image/")),c=a.filter(a=>!a.type.startsWith("image/"));if(b.length&&aJ(b),c.length){let a=await Promise.all(c.map(a=>new Promise((b,c)=>{let d=new FileReader;d.onload=async()=>{let c=d.result,e=await $(a,c);b({data:c,fileName:a.name,mimeType:a.type||"application/octet-stream",size:a.size,...e})},d.onerror=c,d.readAsArrayBuffer(a)})));am(b=>[...b,...a])}},[aJ]),aL=(0,e.useCallback)(a=>{ak(b=>{let c=[...b];return URL.revokeObjectURL(c[a].previewUrl),c.splice(a,1),c})},[]),aM=(0,e.useCallback)(a=>{am(b=>{let c=[...b];return c.splice(a,1),c})},[]),aN=(0,e.useCallback)(()=>{ak(a=>(a.forEach(a=>URL.revokeObjectURL(a.previewUrl)),[])),am([])},[]),aO=j&&j.length>0?j.map(a=>({provider:a.provider,modelId:a.id,name:a.name,input:a.input})):Object.entries(i??{}).map(([a,b])=>({provider:h?.provider??"unknown",modelId:a,name:b})),aP=[];for(let a of aO){let b=aP.find(b=>b.provider===a.provider);b?b.options.push(a):aP.push({provider:a.provider,options:[a]})}let aQ=h?aO.find(a=>a.modelId===h.modelId&&a.provider===h.provider)?.name??h.modelId:aO.length>0?aO[0].name:null,aR=h?aO.find(a=>a.modelId===h.modelId&&a.provider===h.provider):aO[0],aS=aR?.input?.includes("image")??!0,aT=aj.length>0&&aR?.input!==void 0&&!aS,aU=(!!G.trim()||aj.length>0||al.length>0)&&!aT,aV=l?T:T.filter(a=>"/compact"!==a.command),aW=aV.filter(a=>"native"===a.kind),aX=aV.filter(a=>"shortcut"===a.kind),aY=t??[],aZ=aY.length>0?`${aY.length} enabled`:"off",a$=aO.length>0&&!!aQ&&!!k,a_=!!w,a0=!!s&&"workbench"!==r,a1=(()=>{let a=v??"auto";if("auto"===a)return"Default";if(!y)return a;let b=y[a];return null!=b?b:a})(),a2=aQ??"Default",a3=(q??"full")==="workbench"?"workbench":Object.entries(O).find(([,a])=>a===(q??"full"))?.[0]??"full",a4=an?26:32,a5=an?7:9,a6=an?3:6,a7={position:"fixed",left:8,right:8,bottom:"calc(env(safe-area-inset-bottom, 0px) + 8px)",zIndex:500,background:"var(--bg)",border:"1px solid var(--border)",borderRadius:12,boxShadow:"0 -6px 24px rgba(0,0,0,0.14)",overflow:"hidden",maxHeight:"min(60dvh, 420px)"},a8=an&&(I||Y||_||ab||ad||af);(0,e.useEffect)(()=>{aT||ax(null)},[aT]);let a9=(0,e.useCallback)(a=>{if(!G.trim()){H(a),requestAnimationFrame(()=>{let b=ay.current;b&&(b.focus(),b.setSelectionRange(a.length,a.length),b.style.height="auto",b.style.height=`${Math.min(b.scrollHeight,200)}px`)});return}aI(a)},[aI,G]),ba=(0,e.useCallback)(()=>{let b=G.trim();if(b||aj.length||al.length){if(aj.length&&!aS)return void ax("当前模型不支持图片输入。请切换到带 image 标记的模型后再发送。");if(!g){if("/compact"===b&&!aj.length&&!al.length&&l){n?m?.():l(),H(""),ay.current&&(ay.current.style.height="auto");return}a(b,aj.length?aj:void 0,al.length?al:void 0),H(""),aN(),ay.current&&(ay.current.style.height="auto")}}},[G,aj,al,aS,g,a,aN,l,m,n]),bb=(0,e.useCallback)(a=>{let b=G.trim();if(!b&&!aj.length&&!al.length)return;if(aj.length&&!aS)return void ax("当前模型不支持图片输入。请切换到带 image 标记的模型后再发送。");let d=aj.length?aj:void 0,e=al.length?al:void 0;"steer"===a&&c?c(b,d,e):"followup"===a&&f&&f(b,d,e),H(""),aN(),ay.current&&(ay.current.style.height="auto")},[G,aj,al,aS,c,f,aN]),bc=B??[],bd=C??null,be=(0,e.useCallback)(a=>{if("ArrowUp"===a.key&&!a.shiftKey&&!a.ctrlKey&&!a.metaKey&&bc.length>0){let b=ay.current;if(!b)return;let c=b.selectionStart??0;if(b.value.slice(0,c).includes("\n"))return;a.preventDefault();let d=function(a,b,c){let d;if(!a||0===c.length)return null;let e=((d=M.get(a))||(d={cursor:-1,draftSnapshot:""},M.set(a,d)),d);if(-1===e.cursor)e.draftSnapshot=b,e.cursor=0;else{if(!(e.cursor<c.length-1))return null;e.cursor+=1}return c[e.cursor]??null}(bd,b.value,bc);null!==d&&(H(d),requestAnimationFrame(()=>{b.setSelectionRange(d.length,d.length)}));return}if("ArrowDown"===a.key&&!a.shiftKey&&!a.ctrlKey&&!a.metaKey&&function(a){if(!a)return!1;let b=M.get(a);return(b?.cursor??-1)>=0}(bd)){a.preventDefault();let b=function(a,b){if(!a)return null;let c=M.get(a);if(!c||-1===c.cursor)return null;if(c.cursor>0)return c.cursor-=1,{text:b[c.cursor]??"",returnedToPresent:!1};let d=c.draftSnapshot;return c.cursor=-1,c.draftSnapshot="",{text:d,returnedToPresent:!0}}(bd,bc);b&&(H(b.text),b.returnedToPresent&&requestAnimationFrame(()=>{let a=ay.current;a&&a.setSelectionRange(b.text.length,b.text.length)}));return}"Enter"===a.key&&!a.shiftKey&&!a.nativeEvent.isComposing&&(a.preventDefault(),bd&&M.set(bd,{cursor:-1,draftSnapshot:""}),g&&(c||f)?bb(c?"steer":"followup"):ba())},[g,c,f,bb,ba,bc,bd]),bf=(0,e.useCallback)(()=>{let a=ay.current;a&&(a.style.height="auto",a.style.height=`${Math.min(a.scrollHeight,200)}px`)},[]),bg=(0,e.useCallback)(a=>{let b=Array.from(a.clipboardData?.items??[]).filter(a=>"file"===a.kind&&(a.type.startsWith("image/")||a.type.includes("pdf")||a.type.includes("officedocument")||a.type.includes("msword")||a.type.includes("ms-")));b.length&&(a.preventDefault(),aK(b.map(a=>a.getAsFile()).filter(a=>null!==a)))},[aK]);(0,e.useEffect)(()=>{if(!I&&!Y&&!_&&!ab&&!ad&&!af)return;let a=a=>{let b=a.target;if(!(b instanceof Node))return;let c=!!az.current?.contains(b),d=!!aA.current?.contains(b);c||d||J(!1),aB.current?.contains(b)||Z(!1),aC.current?.contains(b)||aa(!1),aD.current?.contains(b)||ac(!1),aE.current?.contains(b)||ae(!1),aF.current?.contains(b)||ag(!1)};return document.addEventListener("pointerdown",a,!0),()=>{document.removeEventListener("pointerdown",a,!0)}},[I,Y,_,ab,ad,af]),(0,e.useEffect)(()=>{if(!s)return;let a=!1;return fetch("/api/subagents/status").then(a=>a.ok?a.json():null).then(b=>{a||ai(!!b?.ready)}).catch(()=>{a||ai(!1)}),()=>{a=!0}},[s]),(0,e.useEffect)(()=>{if(!I)return;let a=a=>{"Escape"===a.key&&("root"!==K?V("root"):J(!1))};return document.addEventListener("keydown",a),()=>document.removeEventListener("keydown",a)},[I,K]);let bh=a=>(0,d.jsx)("svg",{width:a,height:a,viewBox:"0 0 10 10",fill:"none",stroke:"var(--accent)",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0},children:(0,d.jsx)("polyline",{points:"1.5 5 4 7.5 8.5 2.5"})}),bi=()=>{let a,b=(0,d.jsxs)(d.Fragment,{children:["root"===K&&(0,d.jsx)(d.Fragment,{children:(0,d.jsxs)("button",{onClick:()=>V("model"),style:{display:"flex",alignItems:"center",gap:8,width:"100%",height:40,padding:"0 10px",border:"none",borderRadius:10,background:"transparent",color:"var(--text)",fontSize:14,lineHeight:"22px",cursor:"pointer",textAlign:"left",fontFamily:"inherit"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.background="transparent"},children:[(0,d.jsx)("span",{style:{flex:"1 1 auto",minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:"模型"}),(0,d.jsx)("span",{style:{flex:"0 1 auto",minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",color:"var(--text-dim)",fontSize:13},children:a2}),(a={color:"var(--text-dim)"},(0,d.jsx)("svg",{width:14,height:14,viewBox:"0 0 24 24",fill:"none",style:{flexShrink:0,...a},children:(0,d.jsx)("path",{d:"M9 6l6 6-6 6",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round"})}))]})}),"model"===K&&(0,d.jsx)("div",{style:{minHeight:0,overflowY:"auto"},children:aP.map(a=>(0,d.jsxs)("div",{children:[aP.length>1&&(0,d.jsx)("div",{style:{position:"sticky",top:0,zIndex:1,padding:"5px 8px 3px",background:"var(--bg)",color:"var(--text-dim)",fontSize:12,lineHeight:"18px",fontWeight:500},children:a.provider}),a.options.map(a=>{let b=a.modelId===h?.modelId&&a.provider===h?.provider;return(0,d.jsxs)("button",{onClick:()=>{J(!1),V("root"),b||k(a.provider,a.modelId)},style:{display:"flex",alignItems:"center",gap:8,width:"100%",minHeight:38,padding:"6px 8px",border:"none",borderRadius:10,background:"transparent",color:"var(--text)",textAlign:"left",cursor:"pointer",fontFamily:"inherit"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.background="transparent"},children:[b?bh(12):(0,d.jsx)("span",{style:{width:12,flexShrink:0}}),(0,d.jsx)("span",{style:{flex:1,minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontSize:14,lineHeight:"20px",fontWeight:500},children:a.name})]},`${a.provider}:${a.modelId}`)})]},a.provider))})]}),c=W?0-W.top+6:0,e=W?Math.max(120,Math.min(W.top-8,0)):240,f=W?Math.max(8,0-(W.left+W.width)):0;return(0,d.jsxs)("div",{ref:az,style:{position:"relative",flex:an?"1 1 160px":void 0,minWidth:0},children:[(0,d.jsxs)("button",{onClick:a=>{if(!an){let b=a.currentTarget.getBoundingClientRect();X({top:b.top,left:b.left,width:b.width})}Z(!1),aa(!1),ac(!1),ae(!1),ag(!1),V("root"),J(a=>!a)},disabled:g,title:"选择模型",style:{display:"flex",alignItems:"center",gap:4,height:an?ap:28,padding:an?aq:"0 4px 0 8px",width:an?"100%":void 0,maxWidth:an?"100%":220,overflow:"hidden",background:I?"var(--bg-hover)":"none",border:"none",borderRadius:an?8:24,color:"var(--text-muted)",cursor:g?"not-allowed":"pointer",fontSize:an?11:13,lineHeight:an?void 0:"20px",fontWeight:an?void 0:500,opacity:g?.5:1,transition:"background 0.12s, color 0.12s"},onMouseEnter:a=>{g||(a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)")},onMouseLeave:a=>{a.currentTarget.style.background=I?"var(--bg-hover)":"none",a.currentTarget.style.color="var(--text-muted)"},children:[(0,d.jsx)("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",minWidth:0},children:aQ}),(0,d.jsx)("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",style:{flex:"0 0 auto",color:"var(--text-dim)",transform:I?"rotate(180deg)":"none",transition:"transform 120ms ease"},children:(0,d.jsx)("path",{d:"M3 4.5L6 7.5L9 4.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})]}),I&&(an?(0,d.jsxs)("div",{ref:aA,style:{...a7,display:"flex",flexDirection:"column"},children:[(0,d.jsxs)("div",{style:{padding:"8px 12px 6px",borderBottom:"1px solid var(--border)",background:"var(--bg-panel)"},children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8},children:["root"!==K&&(0,d.jsx)("button",{onClick:()=>V("root"),"aria-label":"返回",style:{display:"flex",alignItems:"center",justifyContent:"center",width:24,height:24,padding:0,flexShrink:0,background:"none",border:"none",borderRadius:6,color:"var(--text-muted)",cursor:"pointer"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.background="none"},children:(0,d.jsx)("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",children:(0,d.jsx)("path",{d:"M15 6l-6 6 6 6",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round"})})}),(0,d.jsx)("div",{style:{fontSize:10,fontWeight:600,color:"var(--text-dim)",textTransform:"uppercase",letterSpacing:"0.07em"},children:"model"===K?"Models":"模型"})]}),(0,d.jsx)("div",{style:{fontSize:12,color:"var(--text)",marginTop:2},children:a2})]}),b]}):W&&(0,d.jsx)("div",{ref:aA,style:{position:"fixed",bottom:c,right:f,zIndex:500,background:"var(--bg)",border:"1px solid var(--border)",borderRadius:12,boxShadow:"0 8px 24px -8px rgba(0,0,0,0.18)",width:"min(240px, calc(100vw - 32px))",maxHeight:e,overflow:"hidden",display:"flex",flexDirection:"column",padding:4},children:b}))]})};return(0,d.jsxs)("div",{style:av,children:[a8&&(0,d.jsx)("div",{"aria-hidden":!0,onClick:()=>{J(!1),Z(!1),aa(!1),ac(!1),ae(!1),ag(!1)},style:{position:"fixed",inset:0,zIndex:490,background:"rgba(15, 23, 42, 0.18)",backdropFilter:"blur(1.5px)",WebkitBackdropFilter:"blur(1.5px)"}}),(0,d.jsx)("input",{ref:aG,type:"file",accept:"image/*",multiple:!0,style:{display:"none"},onChange:a=>{aJ(Array.from(a.target.files??[])),a.target.value=""}}),(0,d.jsx)("input",{ref:aH,type:"file",accept:".pdf,.docx,.xlsx,.pptx,.doc,.xls,.ppt,application/pdf,application/vnd.openxmlformats-officedocument.wordprocessingml.document,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.openxmlformats-officedocument.presentationml.presentation",multiple:!0,style:{display:"none"},onChange:a=>{aK(Array.from(a.target.files??[])),a.target.value=""}}),(0,d.jsxs)("div",{style:{maxWidth:an?"100%":820,margin:"0 auto",position:"relative",width:"100%",padding:an?"0 8px":void 0,boxSizing:"border-box"},children:[A&&(0,d.jsx)("div",{style:{position:"absolute",right:8,top:-22,display:"flex",alignItems:"center",justifyContent:"flex-end",maxWidth:"min(320px, 60vw)",minHeight:18,zIndex:2,fontFamily:"var(--font-mono)",overflow:"hidden"},children:A}),z&&(0,d.jsxs)("div",{style:{marginBottom:an?6:8,padding:an?"4px 8px":"5px 10px",background:"rgba(234,179,8,0.08)",border:"1px solid rgba(234,179,8,0.25)",borderRadius:6,fontSize:an?11:12,color:"rgba(180,130,0,0.9)",display:"flex",alignItems:"center",gap:6},children:[(0,d.jsxs)("svg",{width:"11",height:"11",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0},children:[(0,d.jsx)("path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"}),(0,d.jsx)("path",{d:"M3 3v5h5"})]}),"Retrying (",z.attempt,"/",z.maxAttempts,")…",z.errorMessage&&(0,d.jsxs)("span",{style:{opacity:.7,marginLeft:4},children:["— ",z.errorMessage]})]}),D&&(0,d.jsxs)("div",{style:{marginBottom:an?6:8,padding:an?"3px 8px":"4px 10px",background:"color-mix(in srgb, var(--accent) 8%, transparent)",border:"1px solid color-mix(in srgb, var(--accent) 25%, transparent)",borderRadius:6,fontSize:an?11:12,color:"var(--text-muted)",display:"inline-flex",alignItems:"center",gap:6,maxWidth:"100%"},children:[(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"var(--accent)",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0},children:[(0,d.jsx)("path",{d:"M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5L14.5 2z"}),(0,d.jsx)("polyline",{points:"14 2 14 8 20 8"})]}),(0,d.jsx)("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:D.replace(/^.*[\\/]/,"")}),E&&(0,d.jsx)("button",{type:"button",onClick:a=>{a.stopPropagation(),E()},title:"Stop including this file in context",style:{background:"none",border:"none",color:"var(--text-dim)",cursor:"pointer",fontSize:14,lineHeight:1,padding:"0 2px",flexShrink:0},children:"\xd7"})]}),(aj.length>0||al.length>0)&&(0,d.jsxs)("div",{style:{marginBottom:6},children:[(0,d.jsxs)("div",{style:{display:"flex",gap:6,flexWrap:"wrap",alignItems:"flex-end"},children:[aj.map((a,b)=>(0,d.jsxs)("div",{style:{position:"relative",flexShrink:0},children:[(0,d.jsx)("img",{src:a.previewUrl,alt:"",style:{width:56,height:56,objectFit:"cover",borderRadius:6,border:`1px solid ${aT?"rgba(220,38,38,0.45)":"var(--border)"}`,display:"block"}}),(0,d.jsx)("button",{onClick:()=>aL(b),style:{position:"absolute",top:-4,right:-4,width:16,height:16,borderRadius:"50%",background:"var(--bg-panel)",border:"1px solid var(--border)",display:"flex",alignItems:"center",justifyContent:"center",cursor:"pointer",padding:0,color:"var(--text-muted)"},children:(0,d.jsxs)("svg",{width:"8",height:"8",viewBox:"0 0 8 8",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",children:[(0,d.jsx)("line",{x1:"1",y1:"1",x2:"7",y2:"7"}),(0,d.jsx)("line",{x1:"7",y1:"1",x2:"1",y2:"7"})]})})]},`img-${b}`)),al.map((a,b)=>(0,d.jsx)(U,{doc:a,onRemove:()=>aM(b)},`doc-${b}`))]}),(aT||aw)&&(0,d.jsxs)("div",{style:{marginTop:6,display:"flex",alignItems:"center",gap:6,fontSize:an?11:12,color:"rgba(185,28,28,0.95)"},children:[(0,d.jsxs)("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0},children:[(0,d.jsx)("path",{d:"M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"}),(0,d.jsx)("line",{x1:"12",y1:"9",x2:"12",y2:"13"}),(0,d.jsx)("line",{x1:"12",y1:"17",x2:"12.01",y2:"17"})]}),(0,d.jsx)("span",{children:aw??"当前模型不支持图片输入。请切换到带 image 标记的模型后再发送。"})]})]}),(0,d.jsxs)("div",{style:{display:"flex",gap:an?4:8,alignItems:an?"flex-end":"center",background:"var(--bg)",border:`1px solid ${g&&(c||f)?"rgba(234,179,8,0.4)":"color-mix(in srgb, var(--border) 70%, transparent)"}`,borderRadius:an?13:14,padding:an?"8px 8px 8px 10px":"10px 10px 10px 14px",boxShadow:"0 1px 2px rgba(15,23,42,0.04), 0 8px 24px -12px rgba(15,23,42,0.10)",transition:"border-color 0.15s, background 0.15s, box-shadow 0.15s"},children:[(0,d.jsx)("textarea",{ref:ay,value:G,onChange:a=>H(a.target.value),onKeyDown:be,onInput:bf,onPaste:bg,placeholder:g&&(c||f)?"Steer 立即注入 / Follow-up 排队…":g?"Agent is running…":"Message…",rows:1,style:{flex:1,alignSelf:an?"stretch":void 0,background:"none",border:"none",outline:"none",resize:"none",color:"var(--text)",fontSize:14,lineHeight:1.6,fontFamily:"inherit",minHeight:24,maxHeight:200,overflow:"auto",paddingTop:+!!an,paddingBottom:+!!an}}),g?(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:an?4:6,flexShrink:0,alignSelf:"flex-end"},children:[c&&(0,d.jsxs)("button",{onClick:()=>bb("steer"),disabled:!aU,title:aT?"当前模型不支持图片输入":"打断 Agent 当前运行,立即注入消息",style:{display:"flex",alignItems:"center",gap:5*!an,padding:an?"6px 8px":"7px 12px",background:aU?"rgba(234,179,8,0.12)":"none",border:"1px solid rgba(234,179,8,0.35)",borderRadius:8,color:aU?"rgba(180,130,0,1)":"var(--text-dim)",cursor:aU?"pointer":"not-allowed",fontSize:13,fontWeight:600,letterSpacing:"-0.01em",transition:"background 0.12s"},children:[(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("path",{d:"M5 1 L9 5 L5 9"}),(0,d.jsx)("line",{x1:"1",y1:"5",x2:"9",y2:"5"})]}),!an&&"Steer"]}),f&&(0,d.jsxs)("button",{onClick:()=>bb("followup"),disabled:!aU,title:aT?"当前模型不支持图片输入":"在 Agent 完成后排队发送",style:{display:"flex",alignItems:"center",gap:5*!an,padding:an?"6px 8px":"7px 12px",background:aU?"rgba(129,140,248,0.12)":"none",border:"1px solid rgba(129,140,248,0.35)",borderRadius:8,color:aU?"rgba(99,102,241,1)":"var(--text-dim)",cursor:aU?"pointer":"not-allowed",fontSize:13,fontWeight:600,letterSpacing:"-0.01em",transition:"background 0.12s"},children:[(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("line",{x1:"5",y1:"1",x2:"5",y2:"6"}),(0,d.jsx)("polyline",{points:"2.5 3.5 5 1 7.5 3.5"}),(0,d.jsx)("line",{x1:"2",y1:"9",x2:"8",y2:"9"})]}),!an&&"Follow-up"]})]}):(0,d.jsxs)("button",{onClick:ba,disabled:!aU,title:aT?"当前模型不支持图片输入":"Send",style:{flexShrink:0,alignSelf:"flex-end",display:"flex",alignItems:"center",gap:an?3:6,padding:an?"5px 9px":"7px 14px",marginBottom:+!!an,background:aU?"var(--accent)":"var(--bg-panel)",border:"none",borderRadius:8,color:aU?"#fff":"var(--text-dim)",cursor:aU?"pointer":"not-allowed",fontSize:an?11:13,fontWeight:600,letterSpacing:"-0.01em",boxShadow:aU?"0 1px 3px rgba(37,99,235,0.25)":"none",transition:"background 0.15s, box-shadow 0.15s"},children:[(0,d.jsxs)("svg",{width:an?13:14,height:an?13:14,viewBox:"0 0 14 14",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("line",{x1:"2",y1:"7",x2:"11",y2:"7"}),(0,d.jsx)("polyline",{points:"7.5 3 12 7 7.5 11"})]}),"Send"]})]}),(0,d.jsxs)("div",{className:"chat-input-toolbar",style:{marginTop:an?5:8,display:"flex",alignItems:an?"flex-start":"center",gap:a6,flexWrap:an?"wrap":"nowrap"},children:[(0,d.jsxs)("div",{className:"chat-input-toolbar-left",style:{flex:an?"1 1 100%":"0 0 auto",width:an?"100%":void 0,display:"flex",alignItems:"center",gap:2*!an,flexWrap:an?"wrap":"nowrap",rowGap:4*!!an},children:[(0,d.jsx)("button",{onClick:()=>aG.current?.click(),disabled:g,title:"Attach image (right-click for document)",style:{flexShrink:0,display:"flex",alignItems:"center",justifyContent:"center",width:a4,height:a4,padding:0,background:"none",border:"none",borderRadius:a5,color:aj.length||al.length?"var(--accent)":"var(--text-muted)",cursor:g?"not-allowed":"pointer",opacity:g?.5:1,transition:"background 0.12s, color 0.12s"},onMouseEnter:a=>{g||(a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color=aj.length||al.length?"var(--accent)":"var(--text)")},onMouseLeave:a=>{a.currentTarget.style.background="none",a.currentTarget.style.color=aj.length||al.length?"var(--accent)":"var(--text-muted)"},onContextMenu:a=>{a.preventDefault(),aH.current?.click()},children:(0,d.jsx)("svg",{width:"15",height:"15",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:(0,d.jsx)("path",{d:"M21.44 11.05l-9.19 9.19a6 6 0 0 1-8.49-8.49l9.19-9.19a4 4 0 0 1 5.66 5.66l-9.2 9.19a2 2 0 0 1-2.83-2.83l8.49-8.48"})})}),(0,d.jsxs)("div",{ref:aB,style:{position:"relative"},children:[(0,d.jsxs)("button",{onClick:()=>{g||(Z(a=>!a),aa(!1),J(!1),ac(!1),ag(!1))},disabled:g,title:"插入斜杠命令",style:{position:"relative",flexShrink:0,display:"flex",alignItems:"center",justifyContent:"center",width:a4,height:a4,padding:0,background:Y?"var(--bg-hover)":"none",border:"none",borderRadius:a5,color:o?"#ef4444":"var(--text-muted)",cursor:g?"not-allowed":"pointer",opacity:g?.5:1,fontSize:15,fontWeight:700,fontFamily:"var(--font-mono)",transition:"background 0.12s, color 0.12s"},onMouseEnter:a=>{g||(a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color=o?"#ef4444":"var(--text)")},onMouseLeave:a=>{a.currentTarget.style.background=Y?"var(--bg-hover)":"none",a.currentTarget.style.color=o?"#ef4444":"var(--text-muted)"},children:["/",o&&(0,d.jsx)("span",{style:{position:"absolute",top:7,right:7,width:5,height:5,borderRadius:"50%",background:"#ef4444"}})]}),Y&&(0,d.jsxs)("div",{style:{...an?a7:{position:"absolute",bottom:"calc(100% + 6px)",left:0,zIndex:100,minWidth:320,background:"var(--bg)",border:"1px solid var(--border)",borderRadius:8,boxShadow:"0 -4px 16px rgba(0,0,0,0.10)"},overflow:"hidden"},children:[(0,d.jsx)("div",{style:{padding:"6px 10px 4px",fontSize:10,fontWeight:600,color:"var(--text-dim)",textTransform:"uppercase",letterSpacing:"0.07em",borderBottom:o?"1px solid var(--border)":"none"},children:"Commands"}),o&&(0,d.jsx)("div",{style:{padding:"7px 10px",fontSize:11,color:"#ef4444",background:"rgba(239,68,68,0.06)",borderBottom:"1px solid var(--border)",lineHeight:1.45},children:o}),p&&(0,d.jsx)("div",{style:{padding:"7px 10px",fontSize:11,color:"#34d399",background:"rgba(52,211,153,0.06)",borderBottom:"1px solid var(--border)",lineHeight:1.45},children:p}),aW.length>0&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("div",{style:{padding:"6px 10px 4px",fontSize:10,fontWeight:600,color:"var(--text-dim)",textTransform:"uppercase",letterSpacing:"0.07em"},children:"Native"}),aW.map(a=>(0,d.jsxs)("button",{onClick:()=>{(Z(!1),"/compact"===a.command&&n)?m?.():a9(a.command)},style:{display:"flex",alignItems:"center",gap:an?6:8,width:"100%",padding:aq,background:"none",border:"none",color:"/compact"===a.command&&n?"#ef4444":"var(--text-muted)",cursor:"pointer",fontSize:an?11:12,textAlign:"left"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.background="none"},children:[(0,d.jsx)("span",{style:{width:18,flexShrink:0,display:"flex",justifyContent:"center",color:"/compact"===a.command&&n?"#ef4444":"var(--text-dim)"},children:"/compact"===a.command&&n?(0,d.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",children:(0,d.jsx)("rect",{x:"2",y:"2",width:"6",height:"6",rx:"1",fill:"currentColor"})}):(0,d.jsxs)("svg",{width:"11",height:"11",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("polyline",{points:"4 14 10 14 10 20"}),(0,d.jsx)("polyline",{points:"20 10 14 10 14 4"}),(0,d.jsx)("line",{x1:"10",y1:"14",x2:"3",y2:"21"}),(0,d.jsx)("line",{x1:"21",y1:"3",x2:"14",y2:"10"})]})}),(0,d.jsxs)("span",{style:{flex:1,minWidth:0,display:"flex",alignItems:"baseline",gap:8},children:[(0,d.jsx)("span",{style:{fontFamily:"var(--font-mono)",color:"var(--text)"},children:"/compact"===a.command&&n?"停止压缩":a.label}),(0,d.jsx)("span",{style:{fontSize:11,color:"var(--text-dim)"},children:"/compact"===a.command&&n?"中止当前压缩任务":a.description})]})]},a.command))]}),aX.length>0&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("div",{style:{marginTop:2*(aW.length>0),padding:"6px 10px 4px",fontSize:10,fontWeight:600,color:"var(--text-dim)",textTransform:"uppercase",letterSpacing:"0.07em",borderTop:aW.length>0?"1px solid var(--border)":"none"},children:"Prompt Shortcuts"}),aX.map(a=>(0,d.jsxs)("button",{onClick:()=>{Z(!1),a9(a.command)},style:{display:"flex",alignItems:"center",gap:8,width:"100%",padding:aq,background:"none",border:"none",color:"var(--text-muted)",cursor:"pointer",fontSize:an?11:12,textAlign:"left"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.background="none"},children:[(0,d.jsx)("span",{style:{width:18,flexShrink:0,display:"flex",justifyContent:"center",color:"var(--text-dim)",fontFamily:"var(--font-mono)",fontSize:13},children:"/"}),(0,d.jsxs)("span",{style:{flex:1,minWidth:0,display:"flex",alignItems:"baseline",gap:8},children:[(0,d.jsx)("span",{style:{fontFamily:"var(--font-mono)",color:"var(--text)"},children:a.label}),(0,d.jsx)("span",{style:{fontSize:11,color:"var(--text-dim)"},children:a.description})]})]},a.command))]})]})]}),u&&(0,d.jsxs)("div",{ref:aC,style:{position:"relative"},children:[(0,d.jsxs)("button",{onClick:()=>{g||(aa(a=>!a),Z(!1),J(!1),ac(!1),ag(!1))},disabled:g,title:"选择 retain / recall / reflect",style:{position:"relative",flexShrink:0,display:"flex",alignItems:"center",justifyContent:"center",width:38,height:ap,padding:0,background:_?"var(--bg-hover)":"none",border:"none",borderRadius:an?8:9,color:aY.length>0?"var(--accent)":"var(--text-muted)",cursor:g?"not-allowed":"pointer",opacity:g?.5:1,fontSize:13,fontWeight:700,fontFamily:"var(--font-mono)",transition:"background 0.12s, color 0.12s"},onMouseEnter:a=>{g||(a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color=aY.length>0?"var(--accent)":"var(--text)")},onMouseLeave:a=>{a.currentTarget.style.background=_?"var(--bg-hover)":"none",a.currentTarget.style.color=aY.length>0?"var(--accent)":"var(--text-muted)"},children:[" >_".trim(),aY.length>0&&(0,d.jsx)("span",{style:{position:"absolute",top:7,right:7,width:5,height:5,borderRadius:"50%",background:"currentColor"}})]}),_&&(0,d.jsxs)("div",{style:{...an?a7:{position:"absolute",bottom:"calc(100% + 6px)",left:0,zIndex:100,minWidth:280,background:"var(--bg)",border:"1px solid var(--border)",borderRadius:8,boxShadow:"0 -4px 16px rgba(0,0,0,0.10)"},overflow:"hidden"},children:[(0,d.jsx)("div",{style:{padding:"6px 10px 4px",fontSize:10,fontWeight:600,color:"var(--text-dim)",textTransform:"uppercase",letterSpacing:"0.07em",borderBottom:"1px solid var(--border)"},children:"Memory Tools"}),L.SN.map(a=>{let b=aY.includes(a),c=Q[a];return(0,d.jsxs)("button",{onClick:()=>{u(b?aY.filter(b=>b!==a):[...aY,a])},style:{display:"flex",alignItems:"center",gap:8,width:"100%",padding:aq,background:b?"var(--bg-selected)":"none",border:"none",color:b?"var(--text)":"var(--text-muted)",cursor:"pointer",fontSize:an?11:12,textAlign:"left"},onMouseEnter:a=>{b||(a.currentTarget.style.background="var(--bg-hover)")},onMouseLeave:a=>{b||(a.currentTarget.style.background="none")},children:[b?(0,d.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",stroke:"var(--accent)",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0},children:(0,d.jsx)("polyline",{points:"1.5 5 4 7.5 8.5 2.5"})}):(0,d.jsx)("span",{style:{width:10,flexShrink:0}}),(0,d.jsxs)("span",{style:{flex:1,minWidth:0,display:"flex",alignItems:"baseline",gap:8},children:[(0,d.jsx)("span",{style:{fontFamily:"var(--font-mono)",color:"var(--text)"},children:c.label}),(0,d.jsx)("span",{style:{fontSize:11,color:"var(--text-dim)"},children:c.description})]})]},a)})]})]}),a$&&an&&bi(),an&&!g&&(0,d.jsx)(d.Fragment,{children:(0,d.jsxs)("div",{ref:aF,style:{position:"relative",flexShrink:0},children:[(0,d.jsx)("button",{onClick:()=>{Z(!1),aa(!1),J(!1),ac(!1),ae(!1),ag(a=>!a)},title:"更多设置",style:{display:"flex",alignItems:"center",justifyContent:"center",width:28,height:28,padding:0,background:af?"var(--bg-hover)":"none",border:"none",borderRadius:8,color:at,cursor:"pointer",transition:"background 0.12s, color 0.12s"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background=af?"var(--bg-hover)":"none",a.currentTarget.style.color=af?"var(--text)":"var(--text-muted)"},children:(0,d.jsxs)("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",children:[(0,d.jsx)("circle",{cx:"5",cy:"12",r:"1.5"}),(0,d.jsx)("circle",{cx:"12",cy:"12",r:"1.5"}),(0,d.jsx)("circle",{cx:"19",cy:"12",r:"1.5"})]})}),af&&(0,d.jsxs)("div",{style:{...a7,zIndex:510,padding:"6px",display:"flex",flexDirection:"column",gap:4},children:[(0,d.jsx)("div",{style:{padding:"4px 6px 2px",fontSize:10,color:"var(--text-dim)",textTransform:"uppercase",letterSpacing:"0.07em"},children:"More"}),(0,d.jsx)("div",{style:{fontSize:11,color:"var(--text-dim)",padding:"0 6px 4px"},children:"模型、推理、工具等设置已收进这里。"}),(0,d.jsxs)("div",{style:{display:"grid",gap:4},children:[a$&&(0,d.jsxs)("button",{onClick:()=>{ag(!1),ac(!1),ae(!1),aa(!1),J(!0),V("root")},style:au,children:[(0,d.jsx)("div",{style:{fontSize:"10px",color:"var(--text-dim)",textTransform:"uppercase",letterSpacing:"0.05em"},children:"Model"}),(0,d.jsx)("div",{style:{fontSize:12,color:"var(--text)",marginTop:2,wordBreak:"break-word",lineHeight:1.35},children:a2})]}),a_&&(0,d.jsxs)("button",{onClick:()=>{ag(!1),J(!1),ac(!1),aa(!1),ae(!0)},style:au,children:[(0,d.jsx)("div",{style:{fontSize:"10px",color:"var(--text-dim)",textTransform:"uppercase",letterSpacing:"0.05em"},children:"Thinking"}),(0,d.jsx)("div",{style:{fontSize:12,color:"var(--text)",marginTop:2},children:a1})]}),a0&&(0,d.jsxs)("button",{onClick:()=>{ag(!1),J(!1),ae(!1),aa(!1),ac(!0)},style:au,children:[(0,d.jsx)("div",{style:{fontSize:"10px",color:"var(--text-dim)",textTransform:"uppercase",letterSpacing:"0.05em"},children:"Tools"}),(0,d.jsx)("div",{style:{fontSize:12,color:"var(--text)",marginTop:2},children:a3})]}),!!u&&(0,d.jsxs)("button",{onClick:()=>{ag(!1),J(!1),ac(!1),ae(!1),aa(!0)},style:au,children:[(0,d.jsx)("div",{style:{fontSize:"10px",color:"var(--text-dim)",textTransform:"uppercase",letterSpacing:"0.05em"},children:"Memory"}),(0,d.jsx)("div",{style:{fontSize:12,color:aY.length>0?"var(--accent)":"var(--text)",marginTop:2},children:aZ})]})]})]})]})})]}),(0,d.jsx)("div",{className:"chat-input-toolbar-spacer",style:{display:as?"none":void 0,flex:an?"0 0 auto":1,width:an?0:void 0,height:an?0:void 0}}),(0,d.jsxs)("div",{className:"chat-input-toolbar-right",style:{flex:"0 0 auto",width:an?"auto":void 0,display:"flex",alignItems:"center",gap:an?4:2,marginLeft:an?0:"auto",marginTop:0},children:[(!as&&!g||an&&ab)&&a0&&(0,d.jsxs)("div",{ref:aD,style:{position:"relative"},children:[!as&&!g&&(0,d.jsxs)("button",{onClick:()=>{g||(Z(!1),aa(!1),J(!1),ae(!1),ag(!1),ac(a=>!a))},disabled:g,title:"切换工具预设",style:{display:"flex",alignItems:"center",gap:an?3:5,padding:aq,height:ap,background:ab?"var(--bg-hover)":"none",border:"none",borderRadius:an?8:9,color:(q??"full")==="workbench"?"var(--accent)":"var(--text-muted)",cursor:g?"not-allowed":"pointer",fontSize:an?11:12,opacity:g?.5:1,transition:"background 0.12s, color 0.12s"},onMouseEnter:a=>{g||(a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color=(q??"full")==="workbench"?"var(--accent)":"var(--text)")},onMouseLeave:a=>{a.currentTarget.style.background=ab?"var(--bg-hover)":"none",a.currentTarget.style.color=(q??"full")==="workbench"?"var(--accent)":"var(--text-muted)"},children:[(0,d.jsx)("svg",{width:"11",height:"11",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:(0,d.jsx)("path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z"})}),(0,d.jsx)("span",{style:ao,children:a3})]}),ab&&(0,d.jsx)("div",{style:{...an?a7:{position:"absolute",bottom:"calc(100% + 6px)",right:0,zIndex:100,background:"var(--bg)",border:"1px solid var(--border)",borderRadius:8,boxShadow:"0 -4px 16px rgba(0,0,0,0.10)",minWidth:120},overflow:"hidden"},children:N.map(a=>{let b=O[a],c=(q??"full")===b,e="agent"===a&&!1===ah,f=e?"需安装 pi-subagents":P[a];return(0,d.jsxs)("button",{onClick:()=>{!e&&(ac(!1),c||s(b))},disabled:e,title:e?"运行 pi install npm:pi-subagents 后再启用":void 0,style:{display:"flex",alignItems:"center",gap:8,width:"100%",padding:"7px 12px",background:c?"var(--bg-selected)":"none",border:"none",color:c?"var(--text)":"var(--text-muted)",cursor:e?"not-allowed":"pointer",fontSize:an?11:12,textAlign:"left",fontWeight:c?600:400,opacity:e?.5:1,whiteSpace:"nowrap"},onMouseEnter:a=>{c||e||(a.currentTarget.style.background="var(--bg-hover)")},onMouseLeave:a=>{c||(a.currentTarget.style.background="none")},children:[c?(0,d.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",stroke:"var(--accent)",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0},children:(0,d.jsx)("polyline",{points:"1.5 5 4 7.5 8.5 2.5"})}):(0,d.jsx)("span",{style:{width:10,flexShrink:0}}),(0,d.jsx)("span",{style:{flex:1},children:a}),(0,d.jsx)("span",{style:{fontSize:11,color:"var(--text-dim)",marginLeft:8},children:f})]},a)})})]}),(!as&&!g||an&&ad)&&a_&&(0,d.jsxs)("div",{ref:aE,style:{position:"relative"},children:[!as&&!g&&(0,d.jsxs)("button",{onClick:()=>{Z(!1),aa(!1),J(!1),ac(!1),ag(!1),ae(a=>!a)},title:"切换推理强度",style:{display:"flex",alignItems:"center",gap:an?3:5,padding:aq,height:ap,background:ad?"var(--bg-hover)":"none",border:"none",borderRadius:an?8:9,color:"var(--text-muted)",cursor:"pointer",fontSize:an?11:12,transition:"background 0.12s, color 0.12s"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background=ad?"var(--bg-hover)":"none",a.currentTarget.style.color="var(--text-muted)"},children:[(0,d.jsxs)("svg",{width:"11",height:"11",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("path",{d:"M9.5 2A5.5 5.5 0 0 0 4 7.5c0 1.7.78 3.21 2 4.21V14a1 1 0 0 0 1 1h5a1 1 0 0 0 1-1v-2.29c1.22-1 2-2.51 2-4.21A5.5 5.5 0 0 0 9.5 2z"}),(0,d.jsx)("line",{x1:"7",y1:"18",x2:"12",y2:"18"}),(0,d.jsx)("line",{x1:"8",y1:"21",x2:"11",y2:"21"})]}),(0,d.jsx)("span",{style:ao,children:a1})]}),ad&&(0,d.jsx)("div",{style:{...an?a7:{position:"absolute",bottom:"calc(100% + 6px)",right:0,zIndex:100,background:"var(--bg)",border:"1px solid var(--border)",borderRadius:8,boxShadow:"0 -4px 16px rgba(0,0,0,0.10)",minWidth:ar},overflow:"hidden"},children:R.filter(a=>!x||"auto"===a||x.includes(a)).map(a=>{let b=(v??"auto")===a,c="auto"!==a?y?.[a]:void 0,e="auto"===a?"Default":null!=c&&c!==a?c:a,f="auto"!==a&&null!=c&&c!==a;return(0,d.jsxs)("button",{onClick:()=>{ae(!1),b||w?.(a)},style:{display:"flex",alignItems:"center",gap:8,width:"100%",padding:"7px 12px",background:b?"var(--bg-selected)":"none",border:"none",color:b?"var(--text)":"var(--text-muted)",cursor:"pointer",fontSize:an?11:12,textAlign:"left",fontWeight:b?600:400,whiteSpace:"nowrap"},onMouseEnter:a=>{b||(a.currentTarget.style.background="var(--bg-hover)")},onMouseLeave:a=>{b||(a.currentTarget.style.background="none")},children:[b?bh(10):(0,d.jsx)("span",{style:{width:10,flexShrink:0}}),(0,d.jsxs)("span",{style:{flex:1},children:[e,f&&(0,d.jsxs)("span",{style:{fontSize:10,color:"var(--text-dim)",fontFamily:"var(--font-mono)",marginLeft:5},children:["(",a,")"]})]}),(0,d.jsx)("span",{style:{fontSize:11,color:"var(--text-dim)",marginLeft:8},children:S[a]})]},a)})})]}),a$&&!an&&bi(),g&&(0,d.jsxs)("button",{onClick:b,title:"停止 Agent",style:{display:"flex",alignItems:"center",gap:6,padding:"8px 14px",height:ap,background:"rgba(239,68,68,0.08)",border:"1px solid rgba(239,68,68,0.3)",borderRadius:an?8:9,color:"#ef4444",cursor:"pointer",fontSize:an?11:12,fontWeight:600,whiteSpace:"nowrap",letterSpacing:"-0.01em",transition:"background 0.12s"},onMouseEnter:a=>{a.currentTarget.style.background="rgba(239,68,68,0.16)"},onMouseLeave:a=>{a.currentTarget.style.background="rgba(239,68,68,0.08)"},children:[(0,d.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",children:(0,d.jsx)("rect",{x:"1.5",y:"1.5",width:"7",height:"7",rx:"1.5",fill:"currentColor"})}),"Stop"]})]})]})]})]})});function aa(a){return"user"===a.role?{bg:"rgba(37,99,235,0.18)",border:"rgba(37,99,235,0.7)"}:{bg:"rgba(107,114,128,0.12)",border:"rgba(107,114,128,0.5)"}}function ab({messages:a,streamingMessage:b,scrollContainer:c,messageRefs:f}){let[g,h]=(0,e.useState)(0),[i,j]=(0,e.useState)(1),[k,l]=(0,e.useState)(!1),[m,n]=(0,e.useState)([]),[o,p]=(0,e.useState)(!1),[q,r]=(0,e.useState)(null),s=(0,e.useRef)(!1),t=(0,e.useRef)(null),u=(0,e.useMemo)(()=>b?[...a,b]:a,[a,b]),v=(0,e.useRef)(u);v.current=u;let w=(0,e.useRef)(null);w.current=()=>{let a=c.current;if(!a)return;let b=a.scrollHeight,d=a.clientHeight,e=b-d;l(e>20),e<=0?(h(0),j(1)):(h(a.scrollTop/e),j(d/b));let g=f.current,i=[],k=0,m=v.current;for(let c=0;c<m.length;c++){let d=m[c];if("user"!==d.role&&"assistant"!==d.role)continue;let e=g?.[k];if(k++,("user"===d.role||"assistant"===d.role&&(d.content??[]).some(a=>"text"===a.type))&&e&&b>0){let c=e.getBoundingClientRect(),f=a.getBoundingClientRect(),g=c.top-f.top+a.scrollTop,h=c.height;i.push({topRatio:g/b,heightRatio:h/b,msg:d,index:i.length})}}n(i)},(0,e.useCallback)(()=>w.current(),[]);let x=(0,e.useCallback)(a=>{let b=c.current;if(!b)return;let d=b.scrollHeight-b.clientHeight;d<=0||(b.scrollTop=Math.max(0,Math.min(1-i,a))/(1-i)*d)},[c,i]),y=(0,e.useCallback)(a=>{if(!k)return;s.current=!0;let b=a.currentTarget.getBoundingClientRect(),c=(a.clientY-b.top)/b.height,d=c-g*(1-i),e=d>=0&&d<=i?d:i/2;x(c-e);let f=a=>{s.current&&x((a.clientY-b.top)/b.height-e)},h=()=>{s.current=!1,window.removeEventListener("mousemove",f),window.removeEventListener("mouseup",h)};window.addEventListener("mousemove",f),window.addEventListener("mouseup",h)},[k,i,g,x]),z=t.current?.clientHeight??600,A=(0,e.useMemo)(()=>{if(!o||0===m.length)return[];let a=m.map(a=>Math.round(a.topRatio*z-11));for(let b=0;b<10;b++){for(let b=1;b<a.length;b++){let c=a[b-1]+22+2;a[b]<c&&(a[b]=c)}for(let b=a.length-2;b>=0;b--){let c=a[b+1]-22-2;a[b]>c&&(a[b]=c)}}for(let b=0;b<a.length;b++)a[b]=Math.max(0,Math.min(z-22,a[b]));return a},[o,m,z]);if(!k)return null;let B=g*(1-i)*100,C=100*i,D=null!==q&&m.length>0?m.reduce((a,b)=>Math.abs(b.topRatio-q)<Math.abs(m[a].topRatio-q)?b.index:a,0):null;return(0,d.jsxs)("div",{ref:t,onMouseDown:y,onMouseEnter:()=>p(!0),onMouseLeave:()=>{p(!1),r(null)},onMouseMove:a=>{let b=a.currentTarget.getBoundingClientRect();r((a.clientY-b.top)/b.height)},style:{width:36,flexShrink:0,position:"relative",cursor:"default",userSelect:"none",borderLeft:"1px solid var(--border)",background:"var(--bg-panel)",overflow:"visible"},children:[(0,d.jsx)("div",{style:{position:"absolute",left:0,right:0,top:`${B}%`,height:`${C}%`,background:"rgba(100,100,100,0.1)",borderTop:"1px solid rgba(100,100,100,0.2)",borderBottom:"1px solid rgba(100,100,100,0.2)",pointerEvents:"none",zIndex:1}}),m.map(a=>{let b=aa(a.msg),c=o&&D===a.index,e="user"===a.msg.role,f=100*a.topRatio;return(0,d.jsx)("div",{style:{position:"absolute",top:`${f}%`,transform:"translateY(-50%)",left:0,right:0,height:"12px",display:"flex",alignItems:"center",justifyContent:"center",cursor:"pointer",zIndex:2},children:(0,d.jsx)("div",{style:{width:e?8:6,height:e?8:6,borderRadius:e?2:"50%",background:b.bg,border:`1.5px solid ${b.border}`,flexShrink:0,transition:"transform 0.1s",transform:c?"scale(1.6)":"scale(1)"}})},a.index)}),(0,d.jsx)("div",{style:{position:"absolute",left:"50%",top:0,bottom:0,width:1,background:"var(--border)",transform:"translateX(-50%)",zIndex:0}}),o&&m.map((a,b)=>{let c=function(a){if("user"===a.role){let b=a.content;return"string"==typeof b?b.slice(0,200):Array.isArray(b)?b.filter(a=>"text"===a.type&&a.text).map(a=>a.text).join("\n").slice(0,200):""}if("assistant"===a.role){let b=a.content??[],c=b.filter(a=>"text"===a.type).map(a=>a.text).join(" ");if(c)return c.slice(0,200);let d=b.filter(a=>"toolCall"===a.type).map(a=>a.toolName);if(d.length)return d.join(", ")}return""}(a.msg),e=aa(a.msg),f=D===a.index;return c&&0!==A.length?(0,d.jsx)("div",{style:{position:"absolute",top:A[b],right:"100%",marginRight:6,background:"var(--bg)",borderTop:`1px solid ${f?e.border:"var(--border)"}`,borderRight:`1px solid ${f?e.border:"var(--border)"}`,borderBottom:`1px solid ${f?e.border:"var(--border)"}`,borderLeft:`2px solid ${e.border}`,borderRadius:4,padding:"2px 7px",width:200,zIndex:100,pointerEvents:"none",opacity:f?1:.45,transition:"top 0.1s, opacity 0.1s"},children:(0,d.jsx)("div",{style:{fontSize:11,color:f?"var(--text)":"var(--text-muted)",lineHeight:1.4,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:c})},a.index):null})]})}function ac(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function ad(a,b=220){if(!a)return;let c=a.trim();if(c)return c.length>b?`${c.slice(0,b)}...`:c}function ae(...a){for(let b of a)if("string"==typeof b&&b.trim())return b}function af(...a){for(let b of a)if("number"==typeof b&&Number.isFinite(b))return b}function ag(a){let b=new Map;for(let c of a){if("custom"===c.role&&"subagent-notify"===c.customType&&"string"==typeof c.content){let a=c.content.match(/^Background task (completed|failed|paused):\s*\*\*(.+?)\*\*(?:\s+\((.+?)\))?/);if(a){let d=`bg-${a[2]}-${c.timestamp??""}`;b.set(d,{id:d,agent:a[2],status:a[1],task:a[3],summary:ad(c.content.split("\n").slice(3).join("\n")),timestamp:c.timestamp})}}if("assistant"===c.role){let a=c.content;if(!a)continue;for(let d of a)if("toolCall"===d.type&&"subagent"===d.toolName&&d.input){let a=d.input,e=a.agent??(a.chain?"chain":a.tasks?"parallel":a.action??"subagent"),f="string"==typeof a.task?a.task:void 0,g=d.toolCallId??`sub-${e}-${c.timestamp??Date.now()}`;b.set(g,{id:g,agent:e,status:"running",task:f,timestamp:c.timestamp})}}if("toolResult"===c.role){if(c.toolName&&"subagent"!==c.toolName||!c.toolCallId||!b.has(c.toolCallId))continue;let a=b.get(c.toolCallId),d=c.content.filter(a=>"text"===a.type).map(a=>a.text).join("\n");b.set(c.toolCallId,function(a,b,c){let d;if(!ac(b))return{...a,summary:ad(c)};let e=Array.isArray(b.results)?b.results.filter(ac):[],f=e[0],g=f?.progressSummary,h=f&&(d=f.artifactPaths)?Object.values(d).filter(a=>"string"==typeof a&&a.trim().length>0):[],i=ae(f?.finalOutput,f?.output,c);return{...a,mode:ae(b.mode),runId:ae(b.runId),agent:ae(f?.agent,a.agent)??a.agent,task:ae(f?.task,a.task),summary:ad(i),model:ae(f?.model),durationMs:af(g?.durationMs),toolCount:af(g?.toolCount),tokens:af(g?.tokens),outputPath:ae(f?.savedOutputPath,f?.artifactPaths?.outputPath),sessionFile:ae(f?.sessionFile,f?.artifactPaths?.jsonlPath),artifacts:h,resultCount:e.length||void 0}}({...a,status:function(a){if(a.isError)return"failed";let b=a.details;return ac(b)&&Array.isArray(b.results)&&b.results.some(a=>ac(a)&&"number"==typeof a.exitCode&&0!==a.exitCode)?"failed":"completed"}(c)},c.details,d))}}return Array.from(b.values()).sort((a,b)=>(b.timestamp??0)-(a.timestamp??0))}function ah({messages:a,runs:b}){let c=(0,e.useMemo)(()=>ag(a??[]),[a]),f=b??c,g=f.filter(a=>"running"===a.status),h=f.filter(a=>"running"!==a.status);return 0===f.length?null:(0,d.jsxs)("div",{style:{height:"100%",overflow:"auto",padding:12},children:[g.length>0&&(0,d.jsx)(ai,{title:`Active (${g.length})`,runs:g}),h.length>0&&(0,d.jsx)(ai,{title:`Completed (${h.length})`,runs:h,compact:g.length>0})]})}function ai({title:a,runs:b,compact:c}){return(0,d.jsxs)("div",{style:{marginBottom:c?10:16},children:[(0,d.jsx)("div",{style:{fontSize:11,fontWeight:600,color:"var(--text-dim)",marginBottom:8,textTransform:"uppercase",letterSpacing:"0.05em"},children:a}),b.map(a=>(0,d.jsx)(aj,{run:a},a.id))]})}function aj({run:a}){let[b,c]=(0,e.useState)(!1),f="running"===a.status,g="completed"===a.status?"#22c55e":"failed"===a.status?"#ef4444":f?"var(--accent)":"var(--text-dim)",h="failed"===a.status?"rgba(248,113,113,0.35)":f?"rgba(99,102,241,0.25)":"var(--border)",i="failed"===a.status?"rgba(248,113,113,0.05)":f?"rgba(99,102,241,0.05)":"var(--bg-panel)",j=[a.mode,a.resultCount&&a.resultCount>1?`${a.resultCount} results`:void 0,void 0!==a.toolCount?`${a.toolCount} tools`:void 0,void 0!==a.tokens?`${a.tokens.toLocaleString()} tok`:void 0,void 0!==a.durationMs?`${Math.round(a.durationMs/1e3)}s`:void 0].filter(Boolean).join(" \xb7 "),k=!!(a.summary||a.outputPath||a.sessionFile||a.artifacts?.length||a.model||a.runId);return(0,d.jsxs)("div",{style:{borderRadius:6,border:`1px solid ${h}`,background:i,marginBottom:6,fontSize:12,overflow:"hidden"},children:[(0,d.jsxs)("button",{onClick:()=>k&&c(a=>!a),style:{display:"flex",alignItems:"center",gap:7,width:"100%",border:"none",background:"transparent",padding:"8px 10px",color:"var(--text-muted)",textAlign:"left",cursor:k?"pointer":"default"},children:[(0,d.jsx)(ak,{running:f,color:g}),(0,d.jsx)("span",{style:{fontWeight:650,color:"var(--text)",minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.agent}),(0,d.jsx)("span",{style:{color:g,fontSize:10,fontWeight:700,flexShrink:0},children:a.status}),j&&(0,d.jsx)("span",{style:{color:"var(--text-dim)",fontSize:10,marginLeft:"auto",whiteSpace:"nowrap"},children:j}),k&&(0,d.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",stroke:"var(--text-dim)",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0,transform:b?"rotate(180deg)":"none",transition:"transform 0.15s"},children:(0,d.jsx)("polyline",{points:"2 3.5 5 6.5 8 3.5"})})]}),a.task&&(0,d.jsx)("div",{style:{padding:"0 10px 8px 25px",color:"var(--text-muted)",fontSize:11,lineHeight:1.4},children:ad(a.task,150)}),b&&k&&(0,d.jsxs)("div",{style:{borderTop:`1px solid ${h}`,background:"var(--bg)",padding:"8px 10px",display:"flex",flexDirection:"column",gap:7},children:[a.summary&&(0,d.jsx)("pre",{style:{margin:0,color:"var(--text-muted)",fontSize:11,lineHeight:1.45,whiteSpace:"pre-wrap",wordBreak:"break-word",maxHeight:160,overflow:"auto"},children:a.summary}),(0,d.jsx)(al,{run:a})]})]})}function ak({running:a,color:b}){return(0,d.jsx)("span",{style:{width:8,height:8,borderRadius:"50%",background:b,display:"inline-block",animation:a?"pulse 1.5s infinite":void 0,flexShrink:0}})}function al({run:a}){let b=[a.model?["model",a.model]:void 0,a.runId?["run",a.runId]:void 0,a.outputPath?["output",a.outputPath]:void 0,a.sessionFile?["session",a.sessionFile]:void 0,...(a.artifacts??[]).slice(0,4).map((a,b)=>[`artifact ${b+1}`,a])].filter(Boolean);return 0===b.length?null:(0,d.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:3},children:b.map(([a,b])=>(0,d.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"58px minmax(0, 1fr)",gap:6,fontSize:10},children:[(0,d.jsx)("span",{style:{color:"var(--text-dim)",textTransform:"uppercase"},children:a}),(0,d.jsx)("span",{style:{color:"var(--text-muted)",fontFamily:"var(--font-mono)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},title:b,children:b})]},`${a}:${b}`))})}function am({sessionKind:a,toolPreset:b,initialSourcePath:c,initialKernel:e,isNew:f,isStreaming:g=!1,onResume:h,onDismiss:i}){if(f||"workbench"!==a)return null;let j=c?c.replace(/\\/g,"/").split("/").filter(Boolean).pop()??c:null,k="workbench"===b;return(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,padding:"8px 14px",background:"rgba(37,99,235,0.06)",borderBottom:"1px solid rgba(37,99,235,0.18)",fontSize:12,flexShrink:0},children:[(0,d.jsxs)("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"var(--accent)",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0},children:[(0,d.jsx)("path",{d:"M4 19V5"}),(0,d.jsx)("path",{d:"M4 19h16"}),(0,d.jsx)("path",{d:"m7 16 3-5 4 3 4-7"})]}),(0,d.jsxs)("span",{style:{color:"var(--text)",minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:["This is an ",(0,d.jsxs)("strong",{children:[k?"active":"inactive"," Workbench"]})," session",j&&(0,d.jsxs)("span",{style:{color:"var(--text-muted)"},children:[" \xb7 Source: ",(0,d.jsx)("code",{style:{fontFamily:"var(--font-mono)",fontSize:11,color:"var(--accent)"},children:j})]}),e&&(0,d.jsxs)("span",{style:{color:"var(--text-dim)"},children:[" \xb7 Kernel: ",e.toUpperCase()]})]}),(0,d.jsx)("div",{style:{flex:1}}),(0,d.jsx)("button",{type:"button",onClick:i,style:{border:"1px solid var(--border)",borderRadius:6,padding:"2px 10px",height:26,background:"var(--bg-panel)",color:"var(--text-muted)",cursor:"pointer",fontSize:11},children:"Dismiss"}),(0,d.jsx)("button",{type:"button",onClick:h,disabled:g,title:g?"Wait until the agent finishes before updating Workbench":k?"Reload the initial data source into the warm runtime":"Restore Workbench tools and reload the initial data source",style:{border:"1px solid rgba(37,99,235,0.45)",borderRadius:6,padding:"2px 12px",height:26,background:"rgba(37,99,235,0.12)",color:"var(--accent)",cursor:g?"not-allowed":"pointer",fontSize:11,fontWeight:600,opacity:g?.55:1,whiteSpace:"nowrap"},children:k?"Reload Initial Data":"Resume Workbench"})]})}var an=c(59230);let ao=["image/","application/pdf","application/vnd.openxmlformats-officedocument","application/msword","application/vnd.ms-"];function ap(a){return ao.some(b=>a.type.startsWith(b))}function aq({agentPhase:a,startedAt:b}){let[c,f]=(0,e.useState)(0);return(0,d.jsx)("div",{className:"py-2 text-[13px] text-text-muted",children:(0,d.jsxs)("span",{className:"animate-[pulse_1.5s_infinite]",children:[function(a){if(a?.kind==="running_tools"){let b=a.tools.map(a=>a.args??a.name);return 0===b.length?"Running tool…":1===b.length?`Running ${b[0]}…`:`Running ${b.slice(0,2).join(", ")}${b.length>2?` (+${b.length-2})`:""}…`}return a?.kind==="waiting_model"?"Waiting for model…":"Working…"}(a),"\xa0\xa0",function(a){if(a<60)return`${a}s`;let b=Math.floor(a/60);return`${b}m ${String(a%60).padStart(2,"0")}s`}(c)]})})}function ar(a){return a>=1e6?`${(a/1e6).toFixed(1)}M`:a>=1e3?`${(a/1e3).toFixed(1)}K`:String(a)}function as({goal:a}){if(!(a&&"dropped"!==a.status))return null;let b=a.tokenBudget&&a.tokenBudget>0?Math.min(100,Math.round(a.tokensUsed/a.tokenBudget*100)):null;return(0,d.jsx)("div",{style:{marginBottom:16,borderRadius:10,border:"1px solid var(--border)",background:"var(--bg-panel)",overflow:"hidden"},children:(0,d.jsxs)("div",{style:{padding:"10px 14px"},children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,marginBottom:6},children:[(0,d.jsx)("span",{style:{flexShrink:0,borderRadius:4,padding:"1px 6px",fontSize:10,fontWeight:600,textTransform:"uppercase",letterSpacing:"0.05em",color:"#fff",background:function(a){switch(a){case"active":return"rgba(37,99,235,0.85)";case"complete":return"rgba(34,197,94,0.85)";case"budget-limited":return"rgba(245,158,11,0.85)";case"paused":return"rgba(148,163,184,0.85)";case"dropped":return"rgba(239,68,68,0.85)"}}(a.status)},children:function(a){switch(a){case"active":return"进行中";case"paused":return"已暂停";case"budget-limited":return"预算受限";case"complete":return"已完成";case"dropped":return"已放弃"}}(a.status)}),(0,d.jsx)("span",{style:{fontSize:11,fontWeight:500,color:"var(--text-muted)"},children:"Goal"})]}),(0,d.jsx)("p",{style:{margin:"0 0 6px",fontSize:13,lineHeight:1.5,color:"var(--text)",whiteSpace:"pre-wrap"},children:a.objective}),(0,d.jsxs)("div",{style:{display:"flex",flexWrap:"wrap",alignItems:"center",gap:"4px 16px",fontSize:11,color:"var(--text-muted)"},children:[(0,d.jsx)("span",{children:function(a){if(a<60)return`${a}s`;let b=Math.floor(a/60);if(b<60)return`${b}m ${String(a%60).padStart(2,"0")}s`;let c=Math.floor(b/60);return`${c}h ${b%60}m`}(a.timeUsedSeconds)}),(0,d.jsxs)("span",{children:[ar(a.tokensUsed),a.tokenBudget?` / ${ar(a.tokenBudget)} tokens`:" tokens"]}),null!=b&&(0,d.jsxs)("span",{children:[b,"%"]})]}),null!=b&&(0,d.jsx)("div",{style:{marginTop:6,height:3,borderRadius:999,overflow:"hidden",background:"var(--border)"},children:(0,d.jsx)("div",{style:{height:"100%",borderRadius:999,background:b>=100?"rgba(239,68,68,0.6)":"rgba(37,99,235,0.5)",width:`${Math.min(b,100)}%`,transition:"width 0.3s"}})})]})})}function at(a){let b=a.content;return"string"==typeof b?b:Array.isArray(b)?b.filter(a=>!!a&&"object"==typeof a&&"text"===a.type&&"string"==typeof a.text).map(a=>a.text).join("\n"):""}let au=["annotate and analyze.","vibe code bioinformatics.","turn data into figures.","inspect your project.","build a reproducible report.","run R/Python plots.","summarize that paper.","review the pipeline.","compare markers.","draft methods.","find the next analysis step."];function av({phrases:a}){let[b,c]=(0,e.useState)(()=>Math.floor(Math.random()*a.length)),[f,g]=(0,e.useState)(""),[h,i]=(0,e.useState)(!1),[j,k]=(0,e.useState)(!0);return(0,d.jsxs)("span",{style:{color:"var(--text-muted)",fontWeight:400},children:[f,(0,d.jsx)("span",{style:{opacity:+!!j,color:"var(--accent)",marginLeft:1},children:"▍"})]})}function aw({status:a}){let b=a?.current??"0.8.133"??"0.0.0";if(a?.updateAvailable){let c=a.latest?`v${a.latest}`:"latest";return(0,d.jsxs)("span",{title:`Current v${b}; latest ${c}; run ${a.updateCommand}`,style:{display:"block",maxWidth:"100%",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontSize:11,color:"var(--accent)"},children:["Update: ",(0,d.jsx)("code",{style:{fontFamily:"var(--font-mono)",color:"var(--accent)"},children:a.updateCommand})]})}return(0,d.jsxs)("span",{title:`AnnoVibe v${b}`,style:{fontSize:11,color:"var(--text-dim)",whiteSpace:"nowrap"},children:["v",b]})}function ax({session:a,newSessionCwd:b,onAgentEnd:c,onSessionCreated:f,onSessionForked:g,modelsRefreshKey:h,chatInputRef:i,onBranchDataChange:j,onSessionStatsChange:k,onContextUsageChange:l,onToolPresetActive:m,generativeUI:n,forkSettings:o,activeFilePath:p,onOpenFileAtLine:q}){var r;let s,[t,v]=(0,e.useState)(null),[w,x]=(0,e.useState)(!1),y=p&&!w?p:null,{data:z,loading:A,error:B,messages:C,entryIds:D,streamState:E,agentRunning:F,modelNames:G,modelList:H,modelThinkingLevels:I,modelThinkingLevelMaps:J,toolPreset:L,memoryTools:M,thinkingLevel:N,retryInfo:O,contextUsage:P,forkingEntryId:Q,isCompacting:R,compactError:S,compactInfo:T,displayModel:U,sessionStats:V,agentPhase:W,agentError:X,isNew:Y,loadMoreMessages:Z,hasMoreMessages:$,totalMessages:aa,loadedMessagesCount:ac,loadShadowedMessages:ad,messagesEndRef:ae,scrollContainerRef:af,lastUserMsgRef:ai,handleSend:aj,handleAbort:ak,handleFork:al,handleNavigate:ao,handleModelChange:ar,handleCompact:ay,handleSteer:az,handleFollowUp:aA,handleAbortCompaction:aB,handleToolPresetChange:aC,handleMemoryToolsChange:aD,handleThinkingLevelChange:aE,handleAgentEventRef:aF,forkToNewSession:aG}=(0,an.T)({session:a,newSessionCwd:b,onAgentEnd:c,onSessionCreated:f,onSessionForked:g,modelsRefreshKey:h,onBranchDataChange:j}),aH=(0,e.useMemo)(()=>{let a=new Map;for(let b of z?.context.compactions??[])a.set(b.entryId,b.shadowedCount);return a},[z?.context.compactions]),[aI,aJ]=(0,e.useState)(!1),[aK,aL]=(0,e.useState)(null);(0,e.useRef)(!1);let aM=o??{enabled:!0,suggestTokens:18e4,autoTokens:4e5,minMessages:20},aN=(0,e.useCallback)(()=>{let c=z?.info?.cwd??a?.cwd??b??null,d=C.filter(a=>"user"===a.role||"assistant"===a.role),e=d.filter(a=>"user"===a.role),f=d.filter(a=>"assistant"===a.role),g=e[0],h=e[e.length-1],i=f[f.length-1],j=(a,b)=>{let c=a.replace(/\s+/g," ").trim();return c.length>b?`${c.slice(0,b)}…`:c};return["以下是从父会话 fork 出的新会话。工作仍在原项目目录中进行,但本会话只携带精简摘要,完整历史不再重发(避免模型 prefill 变慢)。",c?`工作目录: ${c}`:"",g?`最初目标: ${j(at(g),500)}`:"",h?`最近一次请求: ${j(at(h),500)}`:"",i?`最近回复要点: ${j(at(i),900)}`:"",`父会话共 ${aa||d.length} 条消息。若需要更早的细节,请说明是哪个任务,我会让你查看父会话文件或重新提供。`].filter(Boolean).join("\n\n")},[z?.info?.cwd,a?.cwd,b,C,aa]),aO=(0,e.useCallback)(async()=>{if(F||aI)return{ok:!1,error:"Session is busy"};aJ(!0),aL(null);try{let a=await aG(aN());return a.ok||aL(a.error??"Fork failed"),a}finally{aJ(!1)}},[F,aI,aG,aN]),aP=P?.tokens??null,aQ=C.filter(a=>"user"===a.role||"assistant"===a.role).length,aR=!Y&&!F&&aM.enabled&&null!=aP&&aP>=aM.suggestTokens&&aQ>=aM.minMessages;aF.current,V&&(V.tokens.input,V.tokens.output,V.tokens.cacheRead,V.tokens.cacheWrite),(0,e.useRef)(V).current=V,P&&(P.percent,P.contextWindow,P.tokens),(0,e.useRef)(P).current=P;let aS=(0,e.useCallback)(a=>{i?.current?.addFiles(a)},[i]),aT=(0,e.useCallback)((a,b,c)=>{let d=c?.findIndex(b=>b.src===a)??-1;a0({src:a,gallery:c,index:d>=0?d:0})},[]),{isDragOver:aU,handleDragEnter:aV,handleDragOver:aW,handleDragLeave:aX,handleDrop:aY}=function(a){let[b,c]=(0,e.useState)(!1),d=(0,e.useRef)(0),f=(0,e.useCallback)(a=>{Array.from(a.dataTransfer.items).some(ap)&&(a.preventDefault(),d.current+=1,c(!0))},[]),g=(0,e.useCallback)(a=>{Array.from(a.dataTransfer.items).some(ap)&&a.preventDefault()},[]);return{isDragOver:b,handleDragEnter:f,handleDragOver:g,handleDragLeave:(0,e.useCallback)(()=>{d.current-=1,d.current<=0&&(d.current=0,c(!1))},[]),handleDrop:(0,e.useCallback)(b=>{b.preventDefault(),d.current=0,c(!1),a(Array.from(b.dataTransfer.files))},[a])}}(aS),[aZ,a$]=(0,e.useState)(null),[a_,a0]=(0,e.useState)(null),a1=C.filter(a=>"user"===a.role||"assistant"===a.role),a2=(r=a1.length,(s=(0,e.useRef)([])).current=Array(r).fill(null).map((a,b)=>s.current[b]??null),s),a3=(0,e.useMemo)(()=>{let a=new Map;for(let b of C)"toolResult"===b.role&&a.set(b.toolCallId,b);return a},[C]),a4=Y&&0===C.length&&!E.isStreaming&&!F,a5=z?.info?.cwd??a?.cwd??b??null,a6=function(a){if(!a)return null;let b=a.replace(/[\\/]+$/,"").split(/[\\/]/).filter(Boolean);return b[b.length-1]||a}(a5),a7=function(a=768){let[b,c]=(0,e.useState)(!1);return b}(),[a8,a9]=(0,e.useState)(!1),[ba,bb]=(0,e.useState)(!1),bc=ag(C),bd=bc.filter(a=>"running"===a.status).length,be=(0,e.useCallback)(()=>{a?.id&&!F&&(async()=>{await aC("workbench");let a=z?.sessionMeta;if(a?.initialSourcePath&&a.initialKernel){let b=`Resume this Workbench session. Reload only the initial data file \`${a.initialSourcePath}\` using the ${a.initialKernel.toUpperCase()} runtime. Do not rerun previous analyses or load extra files unless I ask. Use the chat history only as context for what to do next.`;await aj(b)}})()},[F,z?.sessionMeta,aj,aC,a?.id]),bf=U?I[`${U.provider}:${U.modelId}`]??null:null,bg=U?J[`${U.provider}:${U.modelId}`]??null:null,bh=z?.sessionMeta?.sessionKind??null,bi=a?.id??b??"new-chat",bj=(0,e.useMemo)(()=>(function(a){let b=[];for(let c=a.length-1;c>=0;c-=1){let d=a[c];if("user"!==d.role)continue;let e=d.text.trim();e&&b.push(e)}return b})(a1.map(a=>({role:a.role,text:at(a)}))),[a1]),bk=(0,e.useCallback)(async(a,b,c)=>{let d=a;y&&a.trim()&&(d=`${a}
|
|
7
7
|
|
|
8
8
|
[Current file: \`${y}\`]`),await aj(d,b,c)},[aj,y]),bl=(0,d.jsx)(_,{ref:i,onSend:bk,onAbort:ak,onSteer:F?az:void 0,onFollowUp:F?aA:void 0,isStreaming:F,model:U,modelNames:G,modelList:H,onModelChange:ar,onCompact:a||Y?ay:void 0,onAbortCompaction:aB,isCompacting:R,compactError:S,compactInfo:T,toolPreset:L,sessionKind:bh,onToolPresetChange:a||Y?aC:void 0,memoryTools:M,onMemoryToolsChange:a||Y?aD:void 0,thinkingLevel:N,onThinkingLevelChange:a||Y?aE:void 0,availableThinkingLevels:bf,thinkingLevelMap:bg,retryInfo:O,cornerBadge:a4?(0,d.jsx)(aw,{status:aZ}):void 0,promptHistory:bj,sessionHistoryKey:bi,activeFilePath:y,onDismissFileContext:()=>x(!0)}),bm=(0,e.useCallback)(a=>{F?i?.current?.insertText(a):aj(a)},[F,i,aj]),bn=(0,e.useCallback)((a,b,c)=>{if(F)return;let d=a.includes("```")?"````":"```",e=`${d}${b||""}
|
|
9
9
|
${a}
|
|
@@ -35,11 +35,11 @@ ${dr(a.provenance.stdoutPreview,1500)}
|
|
|
35
35
|
Stderr excerpt:
|
|
36
36
|
\`\`\`
|
|
37
37
|
${dr(a.provenance.stderrPreview,1500)}
|
|
38
|
-
\`\`\``:""].filter(Boolean).join("\n")}let du=new Set(["pdf","png","jpg","jpeg","gif","webp","svg","bmp","ico","avif"]);function dv(a){return!Number.isFinite(a)||a<=0?"0.0G":`${(a/1024/1024/1024).toFixed(1)}G`}function dw(a){if(a<=0)return"never";let b=a/60/60/1e3;return b>=24&&Number.isInteger(b/24)?`${b/24}d`:Number.isInteger(b)?`${b}h`:`${Math.round(a/60/1e3)}m`}function dx(a){let b=a.toLowerCase();return b.endsWith(".rds")||b.endsWith(".qs")}function dy(a){return a.toLowerCase().endsWith(".h5ad")}function dz(a){let b=(a.split(/[\\/]/).pop()??a).toLowerCase().split(".").pop()??"";return du.has(b)}function dA(){let a=(0,g.useRouter)(),
|
|
39
|
-
Latest: v${
|
|
40
|
-
Run: ${ap.updateCommand}`}:null,[as,at]=(0,e.useState)([]),[au,av]=(0,e.useState)("files"),[aw,az]=(0,e.useState)(!1),[aB,aD]=(0,e.useState)(null),[aE,aF]=(0,e.useState)(0),[aG,aH]=(0,e.useState)([]),aI=(0,e.useCallback)(a=>{F.current?.insertText("`"+a+"`")},[]),[aJ]=(0,e.useState)(()=>b.get("session")),[aK,aL]=(0,e.useState)(null),[aM,aN]=(0,e.useState)(()=>!b.get("session")),aO=(0,e.useRef)(!1),aP=(0,e.useCallback)(b=>{aL(b),aD(null),ag(!1),ak(null),b&&!aO.current&&(j(a=>a&&a.cwd!==b?null:a),l(a=>a&&a!==b?null:a),p(a=>a+1),r(a=>a+1),J([]),M(null),a.replace("/",{scroll:!1}))},[a]),aQ=(0,e.useCallback)((a,b)=>{aP(a),b?.closeDialog!==!1&&v(!1),n(a=>a+1)},[aP]),aR=(0,e.useCallback)((b,c=!1)=>{l(null),aL(b.cwd),j(b),ag(!1),ak(null),p(a=>a+1),aN(!0),c&&(aO.current=!0,setTimeout(()=>{aO.current=!1},0)),c||a.replace(`?session=${encodeURIComponent(b.id)}`,{scroll:!1})},[a]),aS=(0,e.useCallback)((b,c)=>{j(null),l(c),aL(c),ag(!1),ak(null),p(a=>a+1),J([]),M(null),a.replace("/",{scroll:!1})},[a]),aT=(0,e.useCallback)(b=>{l(null),aL(b.cwd),j(b),ag(!1),ak(null),n(a=>a+1),a.replace(`?session=${encodeURIComponent(b.id)}`,{scroll:!1}),window.dispatchEvent(new CustomEvent("session-created"))},[a]),aU=(0,e.useCallback)(()=>{n(a=>a+1),r(a=>a+1)},[]),aV=(0,e.useCallback)(b=>{n(a=>a+1),p(a=>a+1),l(null),j(a=>({...a??{path:"",cwd:"",created:"",modified:"",messageCount:0,firstMessage:""},id:b})),a.replace(`?session=${encodeURIComponent(b)}`,{scroll:!1})},[a]),aW=(0,e.useCallback)(()=>{aN(!0)},[]),aX=(0,e.useCallback)(b=>{if(n(a=>a+1),i?.id===b){let b=i.cwd;j(null),l(b??null),ag(!1),ak(null),p(a=>a+1),J([]),M(null),a.replace("/",{scroll:!1})}},[i,a]),aY=i?.cwd??k??aK??null,[aZ,a$]=(0,e.useState)(null),a_=(0,e.useCallback)((a,b)=>{if(dx(a)||dx(b))return void aD({mode:"start",appType:"stexp",filePath:a,cwd:aY,appId:null});if(dz(a)||dz(b)){let c=`preview:${a}`;aH(d=>{let e=d.find(a=>a.id===c),f=d.filter(a=>a.id!==c);return f.push(e?{...e,filePath:a,fileName:b}:{id:c,filePath:a,fileName:b}),f});return}let c=`file:${a}`;at(d=>d.find(a=>a.id===c)?d:[...d,{id:c,label:b,filePath:a}]),av(c),az(!0)},[aY]),a0=(0,e.useCallback)((a,b,c)=>{c&&c>0&&a$(c),a_(a,b)},[a_]),a1=(0,e.useCallback)((a,b)=>{(dy(a)||dy(b))&&aD({mode:"start",appType:"h5adexp",filePath:a,cwd:aY,appId:null})},[aY]),a2=(0,e.useCallback)(a=>{ak(a),ag(!0)},[]),a3=(0,e.useCallback)(()=>{ag(!1),ak(null)},[]),a4=(0,e.useCallback)(()=>{av("tools"),az(!0),aF(a=>a+1)},[]),a5=(0,e.useCallback)(a=>{aD({mode:"existing",appType:a.appType,filePath:a.filePath,cwd:a.cwd,appId:a.id}),aF(a=>a+1)},[]),a6=(0,e.useCallback)(a=>{aF(a=>a+1),aD(b=>b&&(b.appId===a.id||b.appType===a.appType&&b.filePath===a.filePath&&b.cwd===a.cwd)?"stopped"===a.status||"error"===a.status?null:{mode:"existing",appType:a.appType,filePath:a.filePath,cwd:a.cwd,appId:a.id}:b)},[]),a7=(0,e.useCallback)(a=>{aH(b=>b.filter(b=>b.id!==a))},[]),a8=(0,e.useCallback)(a=>{aH(b=>{let c=b.findIndex(b=>b.id===a);if(c<0||c===b.length-1)return b;let d=[...b],[e]=d.splice(c,1);return d.push(e),d})},[]),a9=(0,e.useCallback)(a=>{"files"!==a&&(at(b=>b.filter(b=>b.id!==a)),av(b=>{if(b!==a)return b;let c=as.filter(b=>b.id!==a);return c.length>0?c[c.length-1].id:"files"}))},[as]),ba=k??(null===i&&aK?aK:null),bb=null!==i||null!==ba,bc=aM&&!bb,bd=[{id:"files",label:"Files",closable:!1,icon:"files"},{id:"tools",label:"Status",closable:!1,icon:"tools"},...i?.sessionKind==="workbench"?[{id:"workbench",label:"Workbench",closable:!1,icon:"report"}]:[],...as],be=as.find(a=>a.id===au)??null,bf=i?W(i):ba?"New chat":"No session",bg=i?.cwd??ba??aK??"",bh=bg?bg.replace(/\/+$/,"").split(/[\\/]/).filter(Boolean).pop()||bg:"",bi=i?.id??null,bj=aj??aY,bk=(0,e.useCallback)((a="projects")=>{x(a),v(!0)},[]),[bl,bn]=(0,e.useState)(null),[bp,bs]=(0,e.useState)(null),[bt,bu]=(0,e.useState)(null),bv=bl?.totalBytes??0,bx=bl?.currentSessionBytes??0,by=(0,e.useCallback)(async()=>{let a=new URLSearchParams;aY&&a.set("cwd",aY),bi&&a.set("sessionId",bi);try{let b=await fetch(`/api/plot-kernels/status${a.toString()?`?${a}`:""}`),c=await b.json();if(!b.ok||!("totalBytes"in c)||!("kernels"in c))throw Error(c.error??`HTTP ${b.status}`);bn(c),bs(null)}catch(a){bs(a instanceof Error?a.message:String(a))}},[bi,aY]),bz=(0,e.useCallback)(async()=>{if(bi&&!bt){bu("all"),bs(null);try{let a=await fetch("/api/plot-kernels/stop",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sessionId:bi})}),b=await a.json();if(!a.ok||b.error)throw Error(b.error??`HTTP ${a.status}`);window.setTimeout(()=>{by()},600)}catch(a){bs(a instanceof Error?a.message:String(a))}finally{bu(null)}}},[by,bt,bi]),bA=(0,e.useCallback)(async a=>{if(!bt&&0!==a.length){bu(a[0].pid),bs(null);try{for(let b of a){let a=await fetch("/api/plot-kernels/stop",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({pid:b.pid,cwd:b.cwd,sessionId:b.sessionId,language:b.language})}),c=await a.json();if(!a.ok||c.error)throw Error(c.error??`HTTP ${a.status}`)}window.setTimeout(()=>{by()},600)}catch(a){bs(a instanceof Error?a.message:String(a))}finally{bu(null)}}},[by,bt]),bB=(0,e.useCallback)(()=>{ai(a=>!a),by()},[by]),bC=(0,e.useCallback)(()=>{ai(!1),a4()},[a4]),bE=(0,e.useCallback)(()=>{ai(!1),ag(!1),ak(null),bk("workbench-runtime")},[bk]),bF=(0,e.useCallback)(async b=>{let c,d,e;if(!bj||al)return;am(!0),bs(null);let f=new Date().toISOString(),g=`Workbench \xb7 ${"r"===b.kernel?"R":"Python"}`,h=(c=["Workbench session start.","",`Kernel: ${"r"===b.kernel?"R":"Python"}`],b.kernelId&&c.push(`Kernel ID: ${b.kernelId}${b.kernelDisplayName?` (${b.kernelDisplayName})`:""}`),b.sourcePath?c.push(`Primary source: ${b.sourcePath}`):c.push("Primary source: none selected"),b.notes&&(c.push("Notes:"),c.push(b.notes)),d=b.kernelId?`When calling \`kernel_plot_run\` or \`kernel_plot_render\`, pass kernelId: ${JSON.stringify(b.kernelId)}.`:"Use the current project/default Workbench kernel for tool calls.",e=b.sourcePath?'Initialize this workbench for analysis. Prefer the warm runtime tools (`kernel_plot_run`, `kernel_plot_render`, `kernel_plot_artifacts`, `kernel_plot_stop`) for loading data, inspecting object structure, and generating figures or tables. Use `kernel_plot_render` for quick iterative plots that appear inline. Use `kernel_plot_run` + `runtime: "kernel-lite"` when working with data already in warm memory or when saving final artifacts — this keeps loaded data persistent. First, verify the provided input path, load or inspect only that explicit source plus any files mentioned in Notes, and prepare the session for iterative analysis. Keep the first response concise and operational.':"Quick-start this workbench without loading data. Prefer the warm runtime tools (`kernel_plot_run`, `kernel_plot_render`, `kernel_plot_artifacts`, `kernel_plot_stop`) when the user later asks for analysis, plots, or saved artifacts. Do not search the project for `.rds`, `.qs`, `.h5ad`, or other dataset files unless the user explicitly asks. For now, only confirm the selected kernel/runtime is ready and ask what data or task to use next. Keep the first response concise and operational.",c.push("",d,"","CRITICAL — runtime mode:",'- ALWAYS pass `runtime: "kernel-lite"` to every `kernel_plot_run` call. This keeps loaded data, imported packages (library/import), and variables in warm memory across turns. If you use `runtime: "worker"` (one-shot), all loaded state is lost between calls and the analysis restarts from scratch on the next turn.','- Only use `runtime: "worker"` for quick one-shot scripts where memory persistence is not needed.',"- `kernel_plot_render` is always one-shot and does not share memory — use `kernel_plot_run` with `kernel-lite` for iterative work.",...b.isDescribeMode?["","DESCRIBE MODE — the user is a domain expert, not necessarily a coder:",'- The user will describe what they want in high-level terms (e.g. "compare gene expression between clusters", "make a circos plot").',"- Proactively suggest analysis approaches and explain your reasoning in plain language before writing code.","- After each result, summarize what was found in domain terms and suggest logical next steps.","- When the user mentions a figure type (heatmap, volcano, UMAP, circos, dotplot, etc.), pick the appropriate library and parameters without asking for low-level details.","- If you need a parameter the user didn't specify (e.g. which genes to plot), ask clearly and concisely.","- Always confirm what the output means for the user's research question."]:[],"",e),c.join("\n"));try{if(b.kernelId){let a=await fetch("/api/plot-kernels",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"select",cwd:bj,language:b.kernel,kernelId:b.kernelId})}),c=await a.json().catch(()=>({}));if(!a.ok||c.error)throw Error(c.error??`HTTP ${a.status}`)}let c=await fetch("/api/agent/new",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cwd:bj,type:"prompt",message:h,toolNames:(0,L.xG)("workbench"),sessionName:g,workbenchMeta:{sourcePath:b.sourcePath,kernel:b.kernel,kernelId:b.kernelId,kernelDisplayName:b.kernelDisplayName}})}),d=await c.json().catch(()=>({}));if(!c.ok||d.error||!d.sessionId)throw Error(d.error??`HTTP ${c.status}`);a3(),l(null),aL(bj),j({id:d.sessionId,path:"",cwd:bj,name:g,created:f,modified:f,messageCount:1,firstMessage:h,sessionKind:"workbench",createdBy:"launcher",sessionMeta:{sessionKind:"workbench",lastToolNames:(0,L.xG)("workbench"),createdBy:"launcher",createdAt:f,initialSourcePath:b.sourcePath||void 0,initialKernel:b.kernel}}),av("workbench"),az(!0),J([]),M(null),p(a=>a+1),n(a=>a+1),a.replace(`?session=${encodeURIComponent(d.sessionId)}`,{scroll:!1}),window.setTimeout(()=>{by()},600)}catch(a){bs(a instanceof Error?a.message:String(a))}finally{am(!1)}},[a3,by,a,al,bj]),bG=(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(D,{selectedSessionId:i?.id??null,onSelectSession:aR,onNewSession:aS,onNewWorkbench:a2,initialSessionId:aJ,onInitialRestoreDone:aW,refreshKey:m,onSessionDeleted:aX,selectedCwd:i?.cwd??k??aK??null,onCwdChange:aP}),(0,d.jsx)("div",{style:{padding:"8px",flexShrink:0},children:(0,d.jsx)("button",{type:"button",onClick:()=>bk("projects"),title:"Settings","aria-label":"Settings",style:{width:34,display:"flex",alignItems:"center",justifyContent:"center",height:34,padding:0,background:"none",border:"none",borderRadius:9,color:"var(--text-muted)",cursor:"pointer",fontSize:12,transition:"background 0.12s, color 0.12s"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background="none",a.currentTarget.style.color="var(--text-muted)"},children:(0,d.jsxs)("svg",{width:"15",height:"15",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0},children:[(0,d.jsx)("path",{d:"M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.38a2 2 0 0 0-.73-2.73l-.15-.09a2 2 0 0 1-1-1.74v-.51a2 2 0 0 1 1-1.72l.15-.1a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2Z"}),(0,d.jsx)("circle",{cx:"12",cy:"12",r:"3"})]})})})]});return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)("div",{style:{display:"flex",height:"100dvh",overflow:"hidden",background:"var(--bg)"},children:[(0,d.jsx)("div",{className:"sidebar-overlay-backdrop",onClick:()=>B(!1),style:{position:"fixed",inset:0,zIndex:199,background:"rgba(0,0,0,0.4)",opacity:+!!A,pointerEvents:A?"auto":"none",transition:"opacity 0.25s ease"}}),(0,d.jsx)("div",{className:`sidebar-container${A?" sidebar-open":" sidebar-closed"}`,style:{background:"var(--bg-panel)",borderRight:"1px solid var(--border)",display:"flex",flexDirection:"column",flexShrink:0,zIndex:200,width:C.width,minWidth:C.width,transition:A||C.isResizing?"none":void 0},children:bG}),A&&(0,d.jsx)(br,{side:"right",ariaLabel:"Resize sidebar",onResizeStart:C.beginResize,onResize:C.resizeBy,onResizeEnd:C.endResize}),(0,d.jsxs)("div",{style:{flex:1,display:"flex",flexDirection:"column",overflow:"hidden",minWidth:0},children:[(0,d.jsxs)("div",{ref:G,className:"app-topbar",style:{display:"flex",alignItems:"center",gap:8,flexShrink:0,borderBottom:"1px solid var(--border)",height:48,padding:"0 8px",background:"var(--bg)"},children:[(0,d.jsx)("button",{className:"topbar-sidebar-toggle",onClick:()=>B(a=>!a),title:A?"Hide sidebar":"Show sidebar",style:{display:"flex",alignItems:"center",justifyContent:"center",width:32,height:32,padding:0,background:"var(--bg-panel)",border:"1px solid var(--border)",borderRadius:7,color:"var(--text-muted)",cursor:"pointer",flexShrink:0,transition:"color 0.12s, background 0.12s"},onMouseEnter:a=>{a.currentTarget.style.color="var(--text)",a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.color="var(--text-muted)",a.currentTarget.style.background="var(--bg-panel)"},children:A?(0,d.jsxs)("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("rect",{x:"3",y:"3",width:"18",height:"18",rx:"2"}),(0,d.jsx)("line",{x1:"9",y1:"3",x2:"9",y2:"21"})]}):(0,d.jsxs)("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",children:[(0,d.jsx)("line",{x1:"3",y1:"6",x2:"21",y2:"6"}),(0,d.jsx)("line",{x1:"3",y1:"12",x2:"21",y2:"12"}),(0,d.jsx)("line",{x1:"3",y1:"18",x2:"21",y2:"18"})]})}),(0,d.jsxs)("div",{className:"topbar-title-area",style:{display:"flex",alignItems:"center",gap:7,minWidth:0,flex:1},children:[(0,d.jsx)("div",{style:{minWidth:0,display:"flex",alignItems:"center",gap:6},children:Q&&i?(0,d.jsx)("input",{ref:U,value:S,onChange:a=>T(a.target.value),onKeyDown:Z,onBlur:()=>void Y(),style:{width:"min(360px, 34vw)",height:28,boxSizing:"border-box",border:"1px solid var(--border)",borderRadius:6,background:"var(--bg-panel)",color:"var(--text)",padding:"0 8px",fontSize:13,fontWeight:500,outline:"none"}}):(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("div",{className:"topbar-session-title",title:bf,style:{minWidth:0,maxWidth:"min(420px, 36vw)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",color:bb?"var(--text)":"var(--text-muted)",fontSize:14,fontWeight:600,lineHeight:1.2},children:bf}),i&&(0,d.jsx)("button",{type:"button",className:"topbar-rename-button",onClick:X,title:"Rename session",style:{width:22,height:22,display:"flex",alignItems:"center",justifyContent:"center",padding:0,border:"none",borderRadius:5,background:"transparent",color:"var(--text-dim)",cursor:"pointer",flexShrink:0},onMouseEnter:a=>{a.currentTarget.style.color="var(--text)",a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.color="var(--text-dim)",a.currentTarget.style.background="transparent"},children:(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("path",{d:"M12 20h9"}),(0,d.jsx)("path",{d:"M16.5 3.5a2.12 2.12 0 0 1 3 3L7 19l-4 1 1-4Z"})]})})]})}),bh&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("span",{className:"topbar-project-crumb",style:{color:"var(--text-dim)",fontSize:12,flexShrink:0},children:"/"}),(0,d.jsx)("span",{className:"topbar-project-crumb",title:bg||bh,style:{minWidth:0,maxWidth:"min(280px, 24vw)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",color:"var(--text-muted)",fontSize:12,lineHeight:1.2},children:bh})]})]}),bb&&!h&&(0,d.jsx)("div",{className:"topbar-chat-tools",style:{display:"flex",alignItems:"center",gap:6,height:28,flexShrink:0},children:(0,d.jsxs)("button",{type:"button",className:"topbar-plot-button",ref:H,onClick:bB,title:bv>0?`Open Workbench runtime \xb7 ${dv(bv)}${bx>0?` (this session: ${dv(bx)})`:""}`:"Open Workbench runtime status","aria-label":bv>0?`Open Workbench runtime \xb7 ${dv(bv)}${bx>0?` (this session: ${dv(bx)})`:""}`:"Open Workbench runtime status",style:{display:"flex",alignItems:"center",gap:6,height:28,padding:"0 9px",background:ah?"var(--bg-selected)":bv>0||an?"rgba(37,99,235,0.08)":"var(--bg-panel)",border:`1px solid ${ah||bv>0||an?"rgba(37,99,235,0.45)":"var(--border)"}`,borderRadius:7,cursor:"pointer",color:bv>0||an?"var(--accent)":"var(--text-muted)",fontSize:11,whiteSpace:"nowrap",transition:"color 0.1s, background 0.1s",fontVariantNumeric:"tabular-nums"},onMouseEnter:a=>{a.currentTarget.style.color=bv>0||an?"var(--accent)":"var(--text)",a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.color=bv>0||an?"var(--accent)":"var(--text-muted)",a.currentTarget.style.background=ah?"var(--bg-selected)":bv>0||an?"rgba(37,99,235,0.08)":"var(--bg-panel)"},children:[(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0},children:[(0,d.jsx)("path",{d:"M4 19V5"}),(0,d.jsx)("path",{d:"M4 19h16"}),(0,d.jsx)("path",{d:"m7 16 3-5 4 3 4-7"})]}),(0,d.jsx)("span",{className:"topbar-plot-label",children:"Workbench"}),bv>0&&(0,d.jsx)("span",{className:"topbar-plot-memory",children:bx>0&&bx!==bv?`${dv(bx)} / ${dv(bv)}`:dv(bv)})]})}),ar&&(0,d.jsx)("button",{type:"button",className:"topbar-update-button",title:ar.title,onClick:()=>navigator.clipboard?.writeText(ap?.updateCommand??"").catch(()=>{}),style:{height:28,padding:"0 9px",borderRadius:7,border:"1px solid rgba(34,197,94,0.35)",background:"rgba(34,197,94,0.10)",color:"rgba(34,197,94,0.95)",cursor:"pointer",fontSize:11,fontWeight:650,whiteSpace:"nowrap",flexShrink:0},children:ar.label}),bb&&h&&(0,d.jsxs)("button",{type:"button",className:"topbar-plot-button",ref:H,onClick:bB,title:bv>0?`Open Workbench runtime \xb7 ${dv(bv)}${bx>0?` (this session: ${dv(bx)})`:""}`:"Open Workbench runtime status","aria-label":bv>0?`Open Workbench runtime \xb7 ${dv(bv)}${bx>0?` (this session: ${dv(bx)})`:""}`:"Open Workbench runtime status",style:{display:"flex",alignItems:"center",gap:4,height:28,padding:"0 7px",flexShrink:0,background:ah?"var(--bg-selected)":bv>0||an?"rgba(37,99,235,0.08)":"var(--bg-panel)",border:`1px solid ${ah||bv>0||an?"rgba(37,99,235,0.45)":"var(--border)"}`,borderRadius:7,cursor:"pointer",color:bv>0||an?"var(--accent)":"var(--text-muted)",fontSize:11,whiteSpace:"nowrap",fontVariantNumeric:"tabular-nums"},children:[(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0},children:[(0,d.jsx)("path",{d:"M4 19V5"}),(0,d.jsx)("path",{d:"M4 19h16"}),(0,d.jsx)("path",{d:"m7 16 3-5 4 3 4-7"})]}),(0,d.jsx)("span",{className:"topbar-plot-label",children:"WB"}),bv>0&&(0,d.jsx)("span",{className:"topbar-plot-memory",children:bx>0&&bx!==bv?`${dv(bx)} / ${dv(bv)}`:dv(bv)})]}),bb&&(_||ac)&&(()=>{let a=_?.tokens,b=a=>a>=1e6?`${(a/1e6).toFixed(1)}M`:a>=1e3?`${(a/1e3).toFixed(0)}k`:String(a),c="var(--text-muted)",e=null;if(ac?.contextWindow){let a=ac.percent;null!==a&&a>90?c="#ef4444":null!==a&&a>70&&(c="rgba(234,179,8,0.95)"),e=null!==a?`${a.toFixed(0)}% / ${b(ac.contextWindow)}`:`? / ${b(ac.contextWindow)}`}let f=[];if(a&&(f.push(`in: ${a.input.toLocaleString()}`),f.push(`out: ${a.output.toLocaleString()}`),f.push(`cache read: ${a.cacheRead.toLocaleString()}`),f.push(`cache write: ${a.cacheWrite.toLocaleString()}`)),ac?.contextWindow){let a=ac.percent;f.push(`context: ${null!==a?a.toFixed(1)+"%":"unknown"} of ${ac.contextWindow.toLocaleString()} tokens`)}let g=f.join(" | ");return(0,d.jsxs)("div",{className:"topbar-session-stats",title:g,style:{display:"flex",alignItems:"center",gap:10,padding:"0 8px",height:28,border:"1px solid var(--border)",borderRadius:7,background:"var(--bg-panel)",fontSize:11,color:"var(--text-muted)",whiteSpace:"nowrap",cursor:"default",fontVariantNumeric:"tabular-nums"},children:[a&&a.input>0&&(0,d.jsxs)("span",{style:{display:"flex",alignItems:"center",gap:4},children:[(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("line",{x1:"5",y1:"8.5",x2:"5",y2:"1.5"}),(0,d.jsx)("polyline",{points:"2 4 5 1.5 8 4"})]}),b(a.input)]}),a&&a.output>0&&(0,d.jsxs)("span",{style:{display:"flex",alignItems:"center",gap:4},children:[(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("line",{x1:"5",y1:"1.5",x2:"5",y2:"8.5"}),(0,d.jsx)("polyline",{points:"2 6 5 8.5 8 6"})]}),b(a.output)]}),a&&a.cacheRead>0&&(0,d.jsxs)("span",{style:{display:"flex",alignItems:"center",gap:4},children:[(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("path",{d:"M8.5 5a3.5 3.5 0 1 1-1-2.45"}),(0,d.jsx)("polyline",{points:"6.5 1.5 8.5 2.5 7.5 4.5"})]}),b(a.cacheRead)]}),e&&(0,d.jsxs)("span",{style:{display:"flex",alignItems:"center",gap:4,color:c},children:[(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("path",{d:"M1 9 L1 5 Q1 1 5 1 Q9 1 9 5 L9 9"}),(0,d.jsx)("line",{x1:"1",y1:"9",x2:"9",y2:"9"})]}),e]})]})})(),(0,d.jsx)("button",{type:"button",className:"topbar-icon-button topbar-generate-ui-toggle",onClick:$,title:`生成式 UI: ${y.generativeUI?"on":"off"}`,"aria-label":`生成式 UI: ${y.generativeUI?"on":"off"}`,style:{display:"flex",alignItems:"center",justifyContent:"center",width:32,height:28,padding:0,background:y.generativeUI?"var(--bg-selected)":"var(--bg-panel)",border:`1px solid ${y.generativeUI?"rgba(37,99,235,0.45)":"var(--border)"}`,borderRadius:7,color:y.generativeUI?"var(--accent)":"var(--text-muted)",cursor:"pointer",flexShrink:0,transition:"color 0.12s, background 0.12s"},onMouseEnter:a=>{a.currentTarget.style.color=y.generativeUI?"var(--accent)":"var(--text)",a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.color=y.generativeUI?"var(--accent)":"var(--text-muted)",a.currentTarget.style.background=y.generativeUI?"var(--bg-selected)":"var(--bg-panel)"},children:(0,d.jsxs)("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("rect",{x:"3",y:"3",width:"7",height:"7",rx:"1.5"}),(0,d.jsx)("rect",{x:"14",y:"3",width:"7",height:"7",rx:"1.5"}),(0,d.jsx)("rect",{x:"3",y:"14",width:"7",height:"7",rx:"1.5"}),(0,d.jsx)("path",{d:"M16 17h5"}),(0,d.jsx)("path",{d:"M18.5 14.5v5"})]})}),(0,d.jsx)("button",{className:"topbar-icon-button topbar-theme-toggle",onClick:a=>{let b=a.currentTarget.getBoundingClientRect();f({x:b.left+b.width/2,y:b.top+b.height/2})},title:c?"Switch to light mode":"Switch to dark mode","aria-label":c?"Switch to light mode":"Switch to dark mode","aria-pressed":c,style:{display:"flex",alignItems:"center",justifyContent:"center",width:32,height:28,padding:0,background:"var(--bg-panel)",border:"1px solid var(--border)",borderRadius:7,color:"var(--text-muted)",cursor:"pointer",flexShrink:0,transition:"color 0.12s, background 0.12s"},onMouseEnter:a=>{a.currentTarget.style.color="var(--text)",a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.color="var(--text-muted)",a.currentTarget.style.background="var(--bg-panel)"},children:c?(0,d.jsxs)("svg",{width:"15",height:"15",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("circle",{cx:"12",cy:"12",r:"5"}),(0,d.jsx)("line",{x1:"12",y1:"1",x2:"12",y2:"3"}),(0,d.jsx)("line",{x1:"12",y1:"21",x2:"12",y2:"23"}),(0,d.jsx)("line",{x1:"4.22",y1:"4.22",x2:"5.64",y2:"5.64"}),(0,d.jsx)("line",{x1:"18.36",y1:"18.36",x2:"19.78",y2:"19.78"}),(0,d.jsx)("line",{x1:"1",y1:"12",x2:"3",y2:"12"}),(0,d.jsx)("line",{x1:"21",y1:"12",x2:"23",y2:"12"}),(0,d.jsx)("line",{x1:"4.22",y1:"19.78",x2:"5.64",y2:"18.36"}),(0,d.jsx)("line",{x1:"18.36",y1:"5.64",x2:"19.78",y2:"4.22"})]}):(0,d.jsx)("svg",{width:"15",height:"15",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:(0,d.jsx)("path",{d:"M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"})})}),(0,d.jsx)("button",{className:"topbar-icon-button topbar-right-panel-toggle",onClick:()=>az(a=>!a),title:aw?"Hide right panel":"Show right panel","aria-label":aw?"Hide right panel":"Show right panel",style:{display:"flex",alignItems:"center",justifyContent:"center",width:32,height:28,padding:0,background:aw?"var(--bg-selected)":"var(--bg-panel)",border:`1px solid ${aw?"rgba(37,99,235,0.45)":"var(--border)"}`,borderRadius:7,color:aw?"var(--accent)":"var(--text-muted)",cursor:"pointer",flexShrink:0,transition:"color 0.12s, background 0.12s"},onMouseEnter:a=>{a.currentTarget.style.color=aw?"var(--accent)":"var(--text)",a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.color=aw?"var(--accent)":"var(--text-muted)",a.currentTarget.style.background=aw?"var(--bg-selected)":"var(--bg-panel)"},children:(0,d.jsxs)("svg",{width:"15",height:"15",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("rect",{x:"3",y:"3",width:"18",height:"18",rx:"2"}),(0,d.jsx)("line",{x1:"15",y1:"3",x2:"15",y2:"21"})]})})]}),(0,d.jsx)("div",{style:{flex:1,overflow:"hidden",position:"relative"},children:bb?(0,d.jsx)(ax,{session:i,newSessionCwd:ba,onAgentEnd:aU,onSessionCreated:aT,onSessionForked:aV,modelsRefreshKey:s,chatInputRef:F,onBranchDataChange:O,onSessionStatsChange:ab,onContextUsageChange:ae,onToolPresetActive:ao,generativeUI:y.generativeUI,forkSettings:{enabled:y.forkEnabled,suggestTokens:y.forkSuggestTokens,autoTokens:y.forkAutoTokens,minMessages:y.forkMinMessages},activeFilePath:be?.filePath??null,onOpenFileAtLine:a0},o):bc?aK?(0,d.jsx)("div",{style:{height:"100%",display:"flex",alignItems:"center",justifyContent:"center",color:"var(--text-muted)",fontSize:15},children:"Select a session from the sidebar"}):(0,d.jsxs)("div",{style:{position:"absolute",top:12,left:12,display:"flex",alignItems:"flex-start",gap:8,userSelect:"none",pointerEvents:"none"},children:[(0,d.jsxs)("svg",{width:"44",height:"44",viewBox:"0 0 24 24",fill:"none",stroke:"var(--accent)",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",style:{opacity:.7,flexShrink:0},children:[(0,d.jsx)("line",{x1:"20",y1:"12",x2:"4",y2:"12"}),(0,d.jsx)("polyline",{points:"10 6 4 12 10 18"})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{style:{fontSize:18,fontWeight:600,color:"var(--text)",marginBottom:8},children:"Get Started"}),(0,d.jsxs)("div",{style:{fontSize:12,color:"var(--text-muted)",lineHeight:1.8},children:[(0,d.jsx)("span",{style:{color:"var(--text-dim)",marginRight:6},children:"1."}),"Select a project directory from the sidebar",(0,d.jsx)("br",{}),(0,d.jsx)("span",{style:{color:"var(--text-dim)",marginRight:6},children:"2."}),"Add models via the ",(0,d.jsx)("strong",{style:{color:"var(--text)"},children:"Models"})," button at the bottom"]})]})]}):null})]}),aw&&(0,d.jsx)(br,{side:"left",ariaLabel:"Resize right panel",onResizeStart:E.beginResize,onResize:E.resizeBy,onResizeEnd:E.endResize}),(0,d.jsxs)("div",{className:`right-panel-container${aw?" right-panel-open":" right-panel-closed"}`,style:{display:aw?"flex":"none",flexDirection:"column",borderLeft:"1px solid var(--border)",background:"var(--bg)",flexShrink:0,width:E.width,minWidth:E.width,transition:E.isResizing?"none":void 0},children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",flexShrink:0,background:"var(--bg-panel)",borderBottom:"1px solid var(--border)",height:36},children:[(0,d.jsxs)("button",{type:"button",className:"right-panel-back-button",onClick:()=>az(!1),title:"Back to chat","aria-label":"Back to chat",style:{height:36,padding:"0 10px",border:"none",borderRight:"1px solid var(--border)",background:"var(--bg-panel)",color:"var(--text-muted)",cursor:"pointer",fontSize:12,alignItems:"center",gap:6,flexShrink:0},children:[(0,d.jsxs)("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[(0,d.jsx)("line",{x1:"19",y1:"12",x2:"5",y2:"12"}),(0,d.jsx)("polyline",{points:"12 19 5 12 12 5"})]}),(0,d.jsx)("span",{children:"Chat"})]}),(0,d.jsx)("div",{style:{flex:1,overflow:"hidden"},children:(0,d.jsx)(bJ,{tabs:bd,activeTabId:au,onSelectTab:av,onCloseTab:a9,onAskAI:a=>{let b=`I'm looking at \`${a}\`. `;F?.current?.insertIfEmpty(b)}})})]}),(0,d.jsx)("div",{style:{flex:1,overflow:"hidden"},children:"files"===au?(0,d.jsx)(bm,{cwd:aK??i?.cwd??k??null,refreshKey:q,onOpenFile:a_,onExploreFile:a1,onAtMention:aI,watchEnabled:aw&&"files"===au}):"tools"===au?(0,d.jsx)(bD,{refreshKey:aE,visibleAppId:aB?.appId??null,cwd:aK??i?.cwd??k??null,onOpenApp:a5,onAppChanged:a6,agentRuntimeExtra:(0,d.jsx)(bU,{tree:I,activeLeafId:K,onLeafChange:P,hasSession:!!i,embedded:!0})}):"workbench"===au&&i?(0,d.jsx)(bR,{sessionId:i.id,cwd:i.cwd,onAskAboutCell:(a,b)=>{let c=a.length>400?a.slice(0,400)+"...":a;F?.current?.insertText(`Explain the code in workbench cell #${b}:
|
|
38
|
+
\`\`\``:""].filter(Boolean).join("\n")}let du=new Set(["pdf","png","jpg","jpeg","gif","webp","svg","bmp","ico","avif"]);function dv(a){return!Number.isFinite(a)||a<=0?"0.0G":`${(a/1024/1024/1024).toFixed(1)}G`}function dw(a){if(a<=0)return"never";let b=a/60/60/1e3;return b>=24&&Number.isInteger(b/24)?`${b/24}d`:Number.isInteger(b)?`${b}h`:`${Math.round(a/60/1e3)}m`}function dx(a){let b=a.toLowerCase();return b.endsWith(".rds")||b.endsWith(".qs")}function dy(a){return a.toLowerCase().endsWith(".h5ad")}function dz(a){let b=(a.split(/[\\/]/).pop()??a).toLowerCase().split(".").pop()??"";return du.has(b)}function dA(){let a,b,c,f,h,i,j,k=(0,g.useRouter)(),l=(0,g.useSearchParams)(),{isDark:m,toggleTheme:n}=(0,bo.D)(),o=function(){let[a,b]=(0,e.useState)(!1);return a}(),[p,q]=(0,e.useState)(null),[r,s]=(0,e.useState)(null),[t,u]=(0,e.useState)(0),[v,w]=(0,e.useState)(0),[x,y]=(0,e.useState)(0),[z,A]=(0,e.useState)(0),[B,C]=(0,e.useState)(!1),[E,F]=(0,e.useState)("projects"),[G,H]=(0,e.useState)({generativeUI:!0,plotIdleTimeoutMs:1728e5,forkEnabled:!0,forkSuggestTokens:18e4,forkAutoTokens:4e5,forkMinMessages:20}),[I,J]=(0,e.useState)(!0),K=dq({initialWidth:260,minWidth:180,maxWidth:500,storageKey:"--pi-sidebar-width"}),M=dq({initialWidth:500,minWidth:300,maxWidth:1200,storageKey:"--pi-right-panel-width",direction:"left"}),N=(0,e.useRef)(null),O=(0,e.useRef)(null),P=(0,e.useRef)(null),[Q,R]=(0,e.useState)([]),[S,T]=(0,e.useState)(null),U=(0,e.useRef)(null),V=(0,e.useCallback)((a,b,c)=>{R(a),T(b),U.current=c},[]),W=(0,e.useCallback)(a=>{U.current?.(a)},[]),[X,Y]=(0,e.useState)(!1),[Z,$]=(0,e.useState)(""),_=(0,e.useRef)(null),aa=(0,e.useRef)(!1),[ab,ac]=(0,e.useState)({kind:"idle"}),ad=(0,e.useRef)(null),ae=(0,e.useCallback)(async()=>{let a=p?.id;if(a&&"naming"!==ab.kind){ad.current&&clearTimeout(ad.current),ac({kind:"naming"});try{let b=await fetch(`/api/sessions/${encodeURIComponent(a)}/auto-name`,{method:"POST"}),c=await b.json().catch(()=>({}));if(!b.ok||!c.title)throw Error(c.error||`HTTP ${b.status}`);let d=c.title.trim();u(a=>a+1),q(b=>b?.id===a?{...b,name:d}:b),ac({kind:"success"}),ad.current=setTimeout(()=>ac({kind:"idle"}),1800)}catch(a){ac({kind:"error",message:a instanceof Error?a.message:String(a)}),ad.current=setTimeout(()=>ac({kind:"idle"}),5e3)}}},[ab.kind,p?.id]),af=(0,e.useCallback)(a=>a?a.name||a.firstMessage.slice(0,80)||a.id.slice(0,12):"",[]),ag=(0,e.useCallback)(()=>{p&&(aa.current=!1,$(p.name||af(p)),Y(!0),setTimeout(()=>_.current?.select(),0))},[af,p]),ah=(0,e.useCallback)(async()=>{if(aa.current){aa.current=!1,Y(!1);return}if(!p)return void Y(!1);let a=Z.trim(),b=af(p);if(Y(!1),a!==(p.name??"")&&(p.name||a!==b))try{(await fetch(`/api/sessions/${encodeURIComponent(p.id)}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:a})})).ok&&(q(b=>b&&b.id===p.id?{...b,name:a}:b),u(a=>a+1))}catch{}},[af,p,Z]),ai=(0,e.useCallback)(a=>{"Enter"===a.key?(a.preventDefault(),ah()):"Escape"===a.key&&(aa.current=!0,Y(!1))},[ah]),aj=(0,e.useCallback)(()=>{let a=!G.generativeUI;H(b=>({...b,generativeUI:a})),fetch("/api/settings",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({settings:{generativeUI:a}})}).then(a=>a.ok?a.json():Promise.reject(Error(`HTTP ${a.status}`))).then(a=>{H(b=>({...b,..."boolean"==typeof a.settings?.generativeUI?{generativeUI:a.settings.generativeUI}:{},..."number"==typeof a.settings?.plotIdleTimeoutMs?{plotIdleTimeoutMs:a.settings.plotIdleTimeoutMs}:{}}))}).catch(()=>H(a=>({...a,generativeUI:!a.generativeUI})))},[G.generativeUI]),[ak,al]=(0,e.useState)(null),am=(0,e.useCallback)(a=>{al(a)},[]),[an,ao]=(0,e.useState)(null),ap=(0,e.useCallback)(a=>{ao(a)},[]),[aq,ar]=(0,e.useState)(!1),[as,at]=(0,e.useState)(!1),[au,av]=(0,e.useState)(null),[aw,az]=(0,e.useState)(!1),[aB,aD]=(0,e.useState)(!1),[aE,aF]=(0,e.useState)(null),aG=aE?.updateAvailable&&aE.latest?{label:`Update ${aE.latest}`,title:`Current: v${aE.current}
|
|
39
|
+
Latest: v${aE.latest}
|
|
40
|
+
Run: ${aE.updateCommand}`}:null,[aH,aI]=(0,e.useState)([]),[aJ,aK]=(0,e.useState)("files"),[aL,aM]=(0,e.useState)(!1),[aN,aO]=(0,e.useState)(null),[aP,aQ]=(0,e.useState)(0),[aR,aS]=(0,e.useState)([]),aT=(0,e.useCallback)(a=>{N.current?.insertText("`"+a+"`")},[]),[aU]=(0,e.useState)(()=>l.get("session")),[aV,aW]=(0,e.useState)(null),[aX,aY]=(0,e.useState)(()=>!l.get("session")),aZ=(0,e.useRef)(!1),a$=(0,e.useCallback)(a=>{aW(a),aO(null),ar(!1),av(null),a&&!aZ.current&&(q(b=>b&&b.cwd!==a?null:b),s(b=>b&&b!==a?null:b),w(a=>a+1),y(a=>a+1),R([]),T(null),k.replace("/",{scroll:!1}))},[k]),a_=(0,e.useCallback)((a,b)=>{a$(a),b?.closeDialog!==!1&&C(!1),u(a=>a+1)},[a$]),a0=(0,e.useCallback)((a,b=!1)=>{s(null),aW(a.cwd),q(a),ar(!1),av(null),w(a=>a+1),aY(!0),b&&(aZ.current=!0,setTimeout(()=>{aZ.current=!1},0)),b||k.replace(`?session=${encodeURIComponent(a.id)}`,{scroll:!1})},[k]),a1=(0,e.useCallback)((a,b)=>{q(null),s(b),aW(b),ar(!1),av(null),w(a=>a+1),R([]),T(null),k.replace("/",{scroll:!1})},[k]),a2=(0,e.useCallback)(a=>{s(null),aW(a.cwd),q(a),ar(!1),av(null),u(a=>a+1),k.replace(`?session=${encodeURIComponent(a.id)}`,{scroll:!1}),window.dispatchEvent(new CustomEvent("session-created"))},[k]),a3=(0,e.useCallback)(()=>{u(a=>a+1),y(a=>a+1)},[]),a4=(0,e.useCallback)(a=>{u(a=>a+1),w(a=>a+1),s(null),q(b=>({...b??{path:"",cwd:"",created:"",modified:"",messageCount:0,firstMessage:""},id:a})),k.replace(`?session=${encodeURIComponent(a)}`,{scroll:!1})},[k]),a5=(0,e.useCallback)(()=>{aY(!0)},[]),a6=(0,e.useCallback)(a=>{if(u(a=>a+1),p?.id===a){let a=p.cwd;q(null),s(a??null),ar(!1),av(null),w(a=>a+1),R([]),T(null),k.replace("/",{scroll:!1})}},[p,k]),a7=p?.cwd??r??aV??null,[a8,a9]=(0,e.useState)(null),ba=(0,e.useCallback)((a,b)=>{if(dx(a)||dx(b))return void aO({mode:"start",appType:"stexp",filePath:a,cwd:a7,appId:null});if(dz(a)||dz(b)){let c=`preview:${a}`;aS(d=>{let e=d.find(a=>a.id===c),f=d.filter(a=>a.id!==c);return f.push(e?{...e,filePath:a,fileName:b}:{id:c,filePath:a,fileName:b}),f});return}let c=`file:${a}`;aI(d=>d.find(a=>a.id===c)?d:[...d,{id:c,label:b,filePath:a}]),aK(c),aM(!0)},[a7]),bb=(0,e.useCallback)((a,b,c)=>{c&&c>0&&a9(c),ba(a,b)},[ba]),bc=(0,e.useCallback)((a,b)=>{(dy(a)||dy(b))&&aO({mode:"start",appType:"h5adexp",filePath:a,cwd:a7,appId:null})},[a7]),bd=(0,e.useCallback)(a=>{av(a),ar(!0)},[]),be=(0,e.useCallback)(()=>{ar(!1),av(null)},[]),bf=(0,e.useCallback)(()=>{aK("tools"),aM(!0),aQ(a=>a+1)},[]),bg=(0,e.useCallback)(a=>{aO({mode:"existing",appType:a.appType,filePath:a.filePath,cwd:a.cwd,appId:a.id}),aQ(a=>a+1)},[]),bh=(0,e.useCallback)(a=>{aQ(a=>a+1),aO(b=>b&&(b.appId===a.id||b.appType===a.appType&&b.filePath===a.filePath&&b.cwd===a.cwd)?"stopped"===a.status||"error"===a.status?null:{mode:"existing",appType:a.appType,filePath:a.filePath,cwd:a.cwd,appId:a.id}:b)},[]),bi=(0,e.useCallback)(a=>{aS(b=>b.filter(b=>b.id!==a))},[]),bj=(0,e.useCallback)(a=>{aS(b=>{let c=b.findIndex(b=>b.id===a);if(c<0||c===b.length-1)return b;let d=[...b],[e]=d.splice(c,1);return d.push(e),d})},[]),bk=(0,e.useCallback)(a=>{"files"!==a&&(aI(b=>b.filter(b=>b.id!==a)),aK(b=>{if(b!==a)return b;let c=aH.filter(b=>b.id!==a);return c.length>0?c[c.length-1].id:"files"}))},[aH]),bl=r??(null===p&&aV?aV:null),bn=null!==p||null!==bl,bp=aX&&!bn,bs=[{id:"files",label:"Files",closable:!1,icon:"files"},{id:"tools",label:"Status",closable:!1,icon:"tools"},...p?.sessionKind==="workbench"?[{id:"workbench",label:"Workbench",closable:!1,icon:"report"}]:[],...aH],bt=aH.find(a=>a.id===aJ)??null,bu=p?af(p):bl?"New chat":"No session",bv=p?.cwd??bl??aV??"",bx=bv?bv.replace(/\/+$/,"").split(/[\\/]/).filter(Boolean).pop()||bv:"",by=p?.id??null,bz=au??a7,bA=(0,e.useCallback)((a="projects")=>{F(a),C(!0)},[]),[bB,bC]=(0,e.useState)(null),[bE,bF]=(0,e.useState)(null),[bG,bH]=(0,e.useState)(null),bI=bB?.totalBytes??0,bK=bB?.currentSessionBytes??0,bL=(0,e.useCallback)(async()=>{let a=new URLSearchParams;a7&&a.set("cwd",a7),by&&a.set("sessionId",by);try{let b=await fetch(`/api/plot-kernels/status${a.toString()?`?${a}`:""}`),c=await b.json();if(!b.ok||!("totalBytes"in c)||!("kernels"in c))throw Error(c.error??`HTTP ${b.status}`);bC(c),bF(null)}catch(a){bF(a instanceof Error?a.message:String(a))}},[by,a7]),bM=(0,e.useCallback)(async()=>{if(by&&!bG){bH("all"),bF(null);try{let a=await fetch("/api/plot-kernels/stop",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sessionId:by})}),b=await a.json();if(!a.ok||b.error)throw Error(b.error??`HTTP ${a.status}`);window.setTimeout(()=>{bL()},600)}catch(a){bF(a instanceof Error?a.message:String(a))}finally{bH(null)}}},[bL,bG,by]),bN=(0,e.useCallback)(async a=>{if(!bG&&0!==a.length){bH(a[0].pid),bF(null);try{for(let b of a){let a=await fetch("/api/plot-kernels/stop",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({pid:b.pid,cwd:b.cwd,sessionId:b.sessionId,language:b.language})}),c=await a.json();if(!a.ok||c.error)throw Error(c.error??`HTTP ${a.status}`)}window.setTimeout(()=>{bL()},600)}catch(a){bF(a instanceof Error?a.message:String(a))}finally{bH(null)}}},[bL,bG]),bO=(0,e.useCallback)(()=>{at(a=>!a),bL()},[bL]),bP=(0,e.useCallback)(()=>{at(!1),bf()},[bf]),bQ=(0,e.useCallback)(()=>{at(!1),ar(!1),av(null),bA("workbench-runtime")},[bA]),bS=(0,e.useCallback)(async a=>{let b,c,d;if(!bz||aw)return;az(!0),bF(null);let e=new Date().toISOString(),f=`Workbench \xb7 ${"r"===a.kernel?"R":"Python"}`,g=(b=["Workbench session start.","",`Kernel: ${"r"===a.kernel?"R":"Python"}`],a.kernelId&&b.push(`Kernel ID: ${a.kernelId}${a.kernelDisplayName?` (${a.kernelDisplayName})`:""}`),a.sourcePath?b.push(`Primary source: ${a.sourcePath}`):b.push("Primary source: none selected"),a.notes&&(b.push("Notes:"),b.push(a.notes)),c=a.kernelId?`When calling \`kernel_plot_run\` or \`kernel_plot_render\`, pass kernelId: ${JSON.stringify(a.kernelId)}.`:"Use the current project/default Workbench kernel for tool calls.",d=a.sourcePath?'Initialize this workbench for analysis. Prefer the warm runtime tools (`kernel_plot_run`, `kernel_plot_render`, `kernel_plot_artifacts`, `kernel_plot_stop`) for loading data, inspecting object structure, and generating figures or tables. Use `kernel_plot_render` for quick iterative plots that appear inline. Use `kernel_plot_run` + `runtime: "kernel-lite"` when working with data already in warm memory or when saving final artifacts — this keeps loaded data persistent. First, verify the provided input path, load or inspect only that explicit source plus any files mentioned in Notes, and prepare the session for iterative analysis. Keep the first response concise and operational.':"Quick-start this workbench without loading data. Prefer the warm runtime tools (`kernel_plot_run`, `kernel_plot_render`, `kernel_plot_artifacts`, `kernel_plot_stop`) when the user later asks for analysis, plots, or saved artifacts. Do not search the project for `.rds`, `.qs`, `.h5ad`, or other dataset files unless the user explicitly asks. For now, only confirm the selected kernel/runtime is ready and ask what data or task to use next. Keep the first response concise and operational.",b.push("",c,"","CRITICAL — runtime mode:",'- ALWAYS pass `runtime: "kernel-lite"` to every `kernel_plot_run` call. This keeps loaded data, imported packages (library/import), and variables in warm memory across turns. If you use `runtime: "worker"` (one-shot), all loaded state is lost between calls and the analysis restarts from scratch on the next turn.','- Only use `runtime: "worker"` for quick one-shot scripts where memory persistence is not needed.',"- `kernel_plot_render` is always one-shot and does not share memory — use `kernel_plot_run` with `kernel-lite` for iterative work.",...a.isDescribeMode?["","DESCRIBE MODE — the user is a domain expert, not necessarily a coder:",'- The user will describe what they want in high-level terms (e.g. "compare gene expression between clusters", "make a circos plot").',"- Proactively suggest analysis approaches and explain your reasoning in plain language before writing code.","- After each result, summarize what was found in domain terms and suggest logical next steps.","- When the user mentions a figure type (heatmap, volcano, UMAP, circos, dotplot, etc.), pick the appropriate library and parameters without asking for low-level details.","- If you need a parameter the user didn't specify (e.g. which genes to plot), ask clearly and concisely.","- Always confirm what the output means for the user's research question."]:[],"",d),b.join("\n"));try{if(a.kernelId){let b=await fetch("/api/plot-kernels",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"select",cwd:bz,language:a.kernel,kernelId:a.kernelId})}),c=await b.json().catch(()=>({}));if(!b.ok||c.error)throw Error(c.error??`HTTP ${b.status}`)}let b=await fetch("/api/agent/new",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cwd:bz,type:"prompt",message:g,toolNames:(0,L.xG)("workbench"),sessionName:f,workbenchMeta:{sourcePath:a.sourcePath,kernel:a.kernel,kernelId:a.kernelId,kernelDisplayName:a.kernelDisplayName}})}),c=await b.json().catch(()=>({}));if(!b.ok||c.error||!c.sessionId)throw Error(c.error??`HTTP ${b.status}`);be(),s(null),aW(bz),q({id:c.sessionId,path:"",cwd:bz,name:f,created:e,modified:e,messageCount:1,firstMessage:g,sessionKind:"workbench",createdBy:"launcher",sessionMeta:{sessionKind:"workbench",lastToolNames:(0,L.xG)("workbench"),createdBy:"launcher",createdAt:e,initialSourcePath:a.sourcePath||void 0,initialKernel:a.kernel}}),aK("workbench"),aM(!0),R([]),T(null),w(a=>a+1),u(a=>a+1),k.replace(`?session=${encodeURIComponent(c.sessionId)}`,{scroll:!1}),window.setTimeout(()=>{bL()},600)}catch(a){bF(a instanceof Error?a.message:String(a))}finally{az(!1)}},[be,bL,k,aw,bz]),bT=(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(D,{selectedSessionId:p?.id??null,onSelectSession:a0,onNewSession:a1,onNewWorkbench:bd,initialSessionId:aU,onInitialRestoreDone:a5,refreshKey:t,onSessionDeleted:a6,selectedCwd:p?.cwd??r??aV??null,onCwdChange:a$}),(0,d.jsx)("div",{style:{padding:"8px",flexShrink:0},children:(0,d.jsx)("button",{type:"button",onClick:()=>bA("projects"),title:"Settings","aria-label":"Settings",style:{width:34,display:"flex",alignItems:"center",justifyContent:"center",height:34,padding:0,background:"none",border:"none",borderRadius:9,color:"var(--text-muted)",cursor:"pointer",fontSize:12,transition:"background 0.12s, color 0.12s"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background="none",a.currentTarget.style.color="var(--text-muted)"},children:(0,d.jsxs)("svg",{width:"15",height:"15",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0},children:[(0,d.jsx)("path",{d:"M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.38a2 2 0 0 0-.73-2.73l-.15-.09a2 2 0 0 1-1-1.74v-.51a2 2 0 0 1 1-1.72l.15-.1a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2Z"}),(0,d.jsx)("circle",{cx:"12",cy:"12",r:"3"})]})})})]});return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)("div",{style:{display:"flex",height:"100dvh",overflow:"hidden",background:"var(--bg)"},children:[(0,d.jsx)("div",{className:"sidebar-overlay-backdrop",onClick:()=>J(!1),style:{position:"fixed",inset:0,zIndex:199,background:"rgba(0,0,0,0.4)",opacity:+!!I,pointerEvents:I?"auto":"none",transition:"opacity 0.25s ease"}}),(0,d.jsx)("div",{className:`sidebar-container${I?" sidebar-open":" sidebar-closed"}`,style:{background:"var(--bg-panel)",borderRight:"1px solid var(--border)",display:"flex",flexDirection:"column",flexShrink:0,zIndex:200,width:K.width,minWidth:K.width,transition:I||K.isResizing?"none":void 0},children:bT}),I&&(0,d.jsx)(br,{side:"right",ariaLabel:"Resize sidebar",onResizeStart:K.beginResize,onResize:K.resizeBy,onResizeEnd:K.endResize}),(0,d.jsxs)("div",{style:{flex:1,display:"flex",flexDirection:"column",overflow:"hidden",minWidth:0},children:[(0,d.jsxs)("div",{ref:O,className:"app-topbar",style:{display:"flex",alignItems:"center",gap:8,flexShrink:0,borderBottom:"1px solid var(--border)",height:48,padding:"0 8px",background:"var(--bg)"},children:[(0,d.jsx)("button",{className:"topbar-sidebar-toggle",onClick:()=>J(a=>!a),title:I?"Hide sidebar":"Show sidebar",style:{display:"flex",alignItems:"center",justifyContent:"center",width:32,height:32,padding:0,background:"var(--bg-panel)",border:"1px solid var(--border)",borderRadius:7,color:"var(--text-muted)",cursor:"pointer",flexShrink:0,transition:"color 0.12s, background 0.12s"},onMouseEnter:a=>{a.currentTarget.style.color="var(--text)",a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.color="var(--text-muted)",a.currentTarget.style.background="var(--bg-panel)"},children:I?(0,d.jsxs)("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("rect",{x:"3",y:"3",width:"18",height:"18",rx:"2"}),(0,d.jsx)("line",{x1:"9",y1:"3",x2:"9",y2:"21"})]}):(0,d.jsxs)("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",children:[(0,d.jsx)("line",{x1:"3",y1:"6",x2:"21",y2:"6"}),(0,d.jsx)("line",{x1:"3",y1:"12",x2:"21",y2:"12"}),(0,d.jsx)("line",{x1:"3",y1:"18",x2:"21",y2:"18"})]})}),(0,d.jsxs)("div",{className:"topbar-title-area",style:{display:"flex",alignItems:"center",gap:7,minWidth:0,flex:1},children:[(0,d.jsx)("div",{style:{minWidth:0,display:"flex",alignItems:"center",gap:6},children:X&&p?(0,d.jsx)("input",{ref:_,value:Z,onChange:a=>$(a.target.value),onKeyDown:ai,onBlur:()=>void ah(),style:{width:"min(360px, 34vw)",height:28,boxSizing:"border-box",border:"1px solid var(--border)",borderRadius:6,background:"var(--bg-panel)",color:"var(--text)",padding:"0 8px",fontSize:13,fontWeight:500,outline:"none"}}):(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("div",{className:"topbar-session-title",title:bu,style:{minWidth:0,maxWidth:"min(420px, 36vw)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",color:bn?"var(--text)":"var(--text-muted)",fontSize:14,fontWeight:600,lineHeight:1.2},children:bu}),p&&(0,d.jsx)("button",{type:"button",className:"topbar-rename-button",onClick:ag,title:"Rename session",style:{width:22,height:22,display:"flex",alignItems:"center",justifyContent:"center",padding:0,border:"none",borderRadius:5,background:"transparent",color:"var(--text-dim)",cursor:"pointer",flexShrink:0},onMouseEnter:a=>{a.currentTarget.style.color="var(--text)",a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.color="var(--text-dim)",a.currentTarget.style.background="transparent"},children:(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("path",{d:"M12 20h9"}),(0,d.jsx)("path",{d:"M16.5 3.5a2.12 2.12 0 0 1 3 3L7 19l-4 1 1-4Z"})]})})]})}),bx&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("span",{className:"topbar-project-crumb",style:{color:"var(--text-dim)",fontSize:12,flexShrink:0},children:"/"}),(0,d.jsx)("span",{className:"topbar-project-crumb",title:bv||bx,style:{minWidth:0,maxWidth:"min(280px, 24vw)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",color:"var(--text-muted)",fontSize:12,lineHeight:1.2},children:bx})]})]}),bn&&!o&&(0,d.jsxs)("div",{className:"topbar-chat-tools",style:{display:"flex",alignItems:"center",gap:6,height:28,flexShrink:0},children:[(a=!!(p&&p.messageCount>0),b="naming"===ab.kind,c="success"===ab.kind,f="error"===ab.kind,h=!p||!a||b,i=b?"Naming…":c?"Title updated":f?"Title failed":"Auto title",j=p?a?f?ab.message??"Title generation failed":b?"Generating a title from the conversation…":"Generate a title with the current model":"No messages yet":"No session selected",(0,d.jsxs)("button",{type:"button",className:"topbar-auto-title-button",onClick:()=>{ae()},disabled:h,title:j,"aria-label":i,style:{display:"flex",alignItems:"center",justifyContent:"center",gap:6,height:28,padding:"0 9px",background:c?"rgba(34,197,94,0.10)":f?"rgba(239,68,68,0.10)":"var(--bg-panel)",border:`1px solid ${c?"rgba(34,197,94,0.45)":f?"rgba(239,68,68,0.45)":"var(--border)"}`,borderRadius:7,cursor:h?"not-allowed":"pointer",color:c?"rgba(34,197,94,0.95)":f?"#dc2626":h?"var(--text-dim)":"var(--text-muted)",fontSize:11,whiteSpace:"nowrap",transition:"color 0.1s, background 0.1s",opacity:h&&!b?.55:1},onMouseEnter:a=>{h||(a.currentTarget.style.color="var(--text)",a.currentTarget.style.background="var(--bg-hover)")},onMouseLeave:a=>{a.currentTarget.style.color=c?"rgba(34,197,94,0.95)":f?"#dc2626":"var(--text-muted)",a.currentTarget.style.background=c?"rgba(34,197,94,0.10)":f?"rgba(239,68,68,0.10)":"var(--bg-panel)"},children:[(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0},children:[(0,d.jsx)("path",{d:"M12 3v2"}),(0,d.jsx)("path",{d:"M12 19v2"}),(0,d.jsx)("path",{d:"M3 12h2"}),(0,d.jsx)("path",{d:"M19 12h2"}),(0,d.jsx)("path",{d:"m5.6 5.6 1.4 1.4"}),(0,d.jsx)("path",{d:"m17 17 1.4 1.4"}),(0,d.jsx)("path",{d:"m5.6 18.4 1.4-1.4"}),(0,d.jsx)("path",{d:"m17 7 1.4-1.4"})]}),(0,d.jsx)("span",{className:"topbar-auto-title-label",children:i})]})),(0,d.jsxs)("button",{type:"button",className:"topbar-plot-button",ref:P,onClick:bO,title:bI>0?`Open Workbench runtime \xb7 ${dv(bI)}${bK>0?` (this session: ${dv(bK)})`:""}`:"Open Workbench runtime status","aria-label":bI>0?`Open Workbench runtime \xb7 ${dv(bI)}${bK>0?` (this session: ${dv(bK)})`:""}`:"Open Workbench runtime status",style:{display:"flex",alignItems:"center",gap:6,height:28,padding:"0 9px",background:as?"var(--bg-selected)":bI>0||aB?"rgba(37,99,235,0.08)":"var(--bg-panel)",border:`1px solid ${as||bI>0||aB?"rgba(37,99,235,0.45)":"var(--border)"}`,borderRadius:7,cursor:"pointer",color:bI>0||aB?"var(--accent)":"var(--text-muted)",fontSize:11,whiteSpace:"nowrap",transition:"color 0.1s, background 0.1s",fontVariantNumeric:"tabular-nums"},onMouseEnter:a=>{a.currentTarget.style.color=bI>0||aB?"var(--accent)":"var(--text)",a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.color=bI>0||aB?"var(--accent)":"var(--text-muted)",a.currentTarget.style.background=as?"var(--bg-selected)":bI>0||aB?"rgba(37,99,235,0.08)":"var(--bg-panel)"},children:[(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0},children:[(0,d.jsx)("path",{d:"M4 19V5"}),(0,d.jsx)("path",{d:"M4 19h16"}),(0,d.jsx)("path",{d:"m7 16 3-5 4 3 4-7"})]}),(0,d.jsx)("span",{className:"topbar-plot-label",children:"Workbench"}),bI>0&&(0,d.jsx)("span",{className:"topbar-plot-memory",children:bK>0&&bK!==bI?`${dv(bK)} / ${dv(bI)}`:dv(bI)})]})]}),aG&&(0,d.jsx)("button",{type:"button",className:"topbar-update-button",title:aG.title,onClick:()=>navigator.clipboard?.writeText(aE?.updateCommand??"").catch(()=>{}),style:{height:28,padding:"0 9px",borderRadius:7,border:"1px solid rgba(34,197,94,0.35)",background:"rgba(34,197,94,0.10)",color:"rgba(34,197,94,0.95)",cursor:"pointer",fontSize:11,fontWeight:650,whiteSpace:"nowrap",flexShrink:0},children:aG.label}),bn&&o&&(0,d.jsxs)("button",{type:"button",className:"topbar-plot-button",ref:P,onClick:bO,title:bI>0?`Open Workbench runtime \xb7 ${dv(bI)}${bK>0?` (this session: ${dv(bK)})`:""}`:"Open Workbench runtime status","aria-label":bI>0?`Open Workbench runtime \xb7 ${dv(bI)}${bK>0?` (this session: ${dv(bK)})`:""}`:"Open Workbench runtime status",style:{display:"flex",alignItems:"center",gap:4,height:28,padding:"0 7px",flexShrink:0,background:as?"var(--bg-selected)":bI>0||aB?"rgba(37,99,235,0.08)":"var(--bg-panel)",border:`1px solid ${as||bI>0||aB?"rgba(37,99,235,0.45)":"var(--border)"}`,borderRadius:7,cursor:"pointer",color:bI>0||aB?"var(--accent)":"var(--text-muted)",fontSize:11,whiteSpace:"nowrap",fontVariantNumeric:"tabular-nums"},children:[(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0},children:[(0,d.jsx)("path",{d:"M4 19V5"}),(0,d.jsx)("path",{d:"M4 19h16"}),(0,d.jsx)("path",{d:"m7 16 3-5 4 3 4-7"})]}),(0,d.jsx)("span",{className:"topbar-plot-label",children:"WB"}),bI>0&&(0,d.jsx)("span",{className:"topbar-plot-memory",children:bK>0&&bK!==bI?`${dv(bK)} / ${dv(bI)}`:dv(bI)})]}),bn&&(ak||an)&&(()=>{let a=ak?.tokens,b=a=>a>=1e6?`${(a/1e6).toFixed(1)}M`:a>=1e3?`${(a/1e3).toFixed(0)}k`:String(a),c="var(--text-muted)",e=null;if(an?.contextWindow){let a=an.percent;null!==a&&a>90?c="#ef4444":null!==a&&a>70&&(c="rgba(234,179,8,0.95)"),e=null!==a?`${a.toFixed(0)}% / ${b(an.contextWindow)}`:`? / ${b(an.contextWindow)}`}let f=[];if(a&&(f.push(`in: ${a.input.toLocaleString()}`),f.push(`out: ${a.output.toLocaleString()}`),f.push(`cache read: ${a.cacheRead.toLocaleString()}`),f.push(`cache write: ${a.cacheWrite.toLocaleString()}`)),an?.contextWindow){let a=an.percent;f.push(`context: ${null!==a?a.toFixed(1)+"%":"unknown"} of ${an.contextWindow.toLocaleString()} tokens`)}let g=f.join(" | ");return(0,d.jsxs)("div",{className:"topbar-session-stats",title:g,style:{display:"flex",alignItems:"center",gap:10,padding:"0 8px",height:28,border:"1px solid var(--border)",borderRadius:7,background:"var(--bg-panel)",fontSize:11,color:"var(--text-muted)",whiteSpace:"nowrap",cursor:"default",fontVariantNumeric:"tabular-nums"},children:[a&&a.input>0&&(0,d.jsxs)("span",{style:{display:"flex",alignItems:"center",gap:4},children:[(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("line",{x1:"5",y1:"8.5",x2:"5",y2:"1.5"}),(0,d.jsx)("polyline",{points:"2 4 5 1.5 8 4"})]}),b(a.input)]}),a&&a.output>0&&(0,d.jsxs)("span",{style:{display:"flex",alignItems:"center",gap:4},children:[(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("line",{x1:"5",y1:"1.5",x2:"5",y2:"8.5"}),(0,d.jsx)("polyline",{points:"2 6 5 8.5 8 6"})]}),b(a.output)]}),a&&a.cacheRead>0&&(0,d.jsxs)("span",{style:{display:"flex",alignItems:"center",gap:4},children:[(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("path",{d:"M8.5 5a3.5 3.5 0 1 1-1-2.45"}),(0,d.jsx)("polyline",{points:"6.5 1.5 8.5 2.5 7.5 4.5"})]}),b(a.cacheRead)]}),e&&(0,d.jsxs)("span",{style:{display:"flex",alignItems:"center",gap:4,color:c},children:[(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("path",{d:"M1 9 L1 5 Q1 1 5 1 Q9 1 9 5 L9 9"}),(0,d.jsx)("line",{x1:"1",y1:"9",x2:"9",y2:"9"})]}),e]})]})})(),(0,d.jsx)("button",{type:"button",className:"topbar-icon-button topbar-generate-ui-toggle",onClick:aj,title:`生成式 UI: ${G.generativeUI?"on":"off"}`,"aria-label":`生成式 UI: ${G.generativeUI?"on":"off"}`,style:{display:"flex",alignItems:"center",justifyContent:"center",width:32,height:28,padding:0,background:G.generativeUI?"var(--bg-selected)":"var(--bg-panel)",border:`1px solid ${G.generativeUI?"rgba(37,99,235,0.45)":"var(--border)"}`,borderRadius:7,color:G.generativeUI?"var(--accent)":"var(--text-muted)",cursor:"pointer",flexShrink:0,transition:"color 0.12s, background 0.12s"},onMouseEnter:a=>{a.currentTarget.style.color=G.generativeUI?"var(--accent)":"var(--text)",a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.color=G.generativeUI?"var(--accent)":"var(--text-muted)",a.currentTarget.style.background=G.generativeUI?"var(--bg-selected)":"var(--bg-panel)"},children:(0,d.jsxs)("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("rect",{x:"3",y:"3",width:"7",height:"7",rx:"1.5"}),(0,d.jsx)("rect",{x:"14",y:"3",width:"7",height:"7",rx:"1.5"}),(0,d.jsx)("rect",{x:"3",y:"14",width:"7",height:"7",rx:"1.5"}),(0,d.jsx)("path",{d:"M16 17h5"}),(0,d.jsx)("path",{d:"M18.5 14.5v5"})]})}),(0,d.jsx)("button",{className:"topbar-icon-button topbar-theme-toggle",onClick:a=>{let b=a.currentTarget.getBoundingClientRect();n({x:b.left+b.width/2,y:b.top+b.height/2})},title:m?"Switch to light mode":"Switch to dark mode","aria-label":m?"Switch to light mode":"Switch to dark mode","aria-pressed":m,style:{display:"flex",alignItems:"center",justifyContent:"center",width:32,height:28,padding:0,background:"var(--bg-panel)",border:"1px solid var(--border)",borderRadius:7,color:"var(--text-muted)",cursor:"pointer",flexShrink:0,transition:"color 0.12s, background 0.12s"},onMouseEnter:a=>{a.currentTarget.style.color="var(--text)",a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.color="var(--text-muted)",a.currentTarget.style.background="var(--bg-panel)"},children:m?(0,d.jsxs)("svg",{width:"15",height:"15",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("circle",{cx:"12",cy:"12",r:"5"}),(0,d.jsx)("line",{x1:"12",y1:"1",x2:"12",y2:"3"}),(0,d.jsx)("line",{x1:"12",y1:"21",x2:"12",y2:"23"}),(0,d.jsx)("line",{x1:"4.22",y1:"4.22",x2:"5.64",y2:"5.64"}),(0,d.jsx)("line",{x1:"18.36",y1:"18.36",x2:"19.78",y2:"19.78"}),(0,d.jsx)("line",{x1:"1",y1:"12",x2:"3",y2:"12"}),(0,d.jsx)("line",{x1:"21",y1:"12",x2:"23",y2:"12"}),(0,d.jsx)("line",{x1:"4.22",y1:"19.78",x2:"5.64",y2:"18.36"}),(0,d.jsx)("line",{x1:"18.36",y1:"5.64",x2:"19.78",y2:"4.22"})]}):(0,d.jsx)("svg",{width:"15",height:"15",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:(0,d.jsx)("path",{d:"M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"})})}),(0,d.jsx)("button",{className:"topbar-icon-button topbar-right-panel-toggle",onClick:()=>aM(a=>!a),title:aL?"Hide right panel":"Show right panel","aria-label":aL?"Hide right panel":"Show right panel",style:{display:"flex",alignItems:"center",justifyContent:"center",width:32,height:28,padding:0,background:aL?"var(--bg-selected)":"var(--bg-panel)",border:`1px solid ${aL?"rgba(37,99,235,0.45)":"var(--border)"}`,borderRadius:7,color:aL?"var(--accent)":"var(--text-muted)",cursor:"pointer",flexShrink:0,transition:"color 0.12s, background 0.12s"},onMouseEnter:a=>{a.currentTarget.style.color=aL?"var(--accent)":"var(--text)",a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.color=aL?"var(--accent)":"var(--text-muted)",a.currentTarget.style.background=aL?"var(--bg-selected)":"var(--bg-panel)"},children:(0,d.jsxs)("svg",{width:"15",height:"15",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("rect",{x:"3",y:"3",width:"18",height:"18",rx:"2"}),(0,d.jsx)("line",{x1:"15",y1:"3",x2:"15",y2:"21"})]})})]}),(0,d.jsx)("div",{style:{flex:1,overflow:"hidden",position:"relative"},children:bn?(0,d.jsx)(ax,{session:p,newSessionCwd:bl,onAgentEnd:a3,onSessionCreated:a2,onSessionForked:a4,modelsRefreshKey:z,chatInputRef:N,onBranchDataChange:V,onSessionStatsChange:am,onContextUsageChange:ap,onToolPresetActive:aD,generativeUI:G.generativeUI,forkSettings:{enabled:G.forkEnabled,suggestTokens:G.forkSuggestTokens,autoTokens:G.forkAutoTokens,minMessages:G.forkMinMessages},activeFilePath:bt?.filePath??null,onOpenFileAtLine:bb},v):bp?aV?(0,d.jsx)("div",{style:{height:"100%",display:"flex",alignItems:"center",justifyContent:"center",color:"var(--text-muted)",fontSize:15},children:"Select a session from the sidebar"}):(0,d.jsxs)("div",{style:{position:"absolute",top:12,left:12,display:"flex",alignItems:"flex-start",gap:8,userSelect:"none",pointerEvents:"none"},children:[(0,d.jsxs)("svg",{width:"44",height:"44",viewBox:"0 0 24 24",fill:"none",stroke:"var(--accent)",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",style:{opacity:.7,flexShrink:0},children:[(0,d.jsx)("line",{x1:"20",y1:"12",x2:"4",y2:"12"}),(0,d.jsx)("polyline",{points:"10 6 4 12 10 18"})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{style:{fontSize:18,fontWeight:600,color:"var(--text)",marginBottom:8},children:"Get Started"}),(0,d.jsxs)("div",{style:{fontSize:12,color:"var(--text-muted)",lineHeight:1.8},children:[(0,d.jsx)("span",{style:{color:"var(--text-dim)",marginRight:6},children:"1."}),"Select a project directory from the sidebar",(0,d.jsx)("br",{}),(0,d.jsx)("span",{style:{color:"var(--text-dim)",marginRight:6},children:"2."}),"Add models via the ",(0,d.jsx)("strong",{style:{color:"var(--text)"},children:"Models"})," button at the bottom"]})]})]}):null})]}),aL&&(0,d.jsx)(br,{side:"left",ariaLabel:"Resize right panel",onResizeStart:M.beginResize,onResize:M.resizeBy,onResizeEnd:M.endResize}),(0,d.jsxs)("div",{className:`right-panel-container${aL?" right-panel-open":" right-panel-closed"}`,style:{display:aL?"flex":"none",flexDirection:"column",borderLeft:"1px solid var(--border)",background:"var(--bg)",flexShrink:0,width:M.width,minWidth:M.width,transition:M.isResizing?"none":void 0},children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",flexShrink:0,background:"var(--bg-panel)",borderBottom:"1px solid var(--border)",height:36},children:[(0,d.jsxs)("button",{type:"button",className:"right-panel-back-button",onClick:()=>aM(!1),title:"Back to chat","aria-label":"Back to chat",style:{height:36,padding:"0 10px",border:"none",borderRight:"1px solid var(--border)",background:"var(--bg-panel)",color:"var(--text-muted)",cursor:"pointer",fontSize:12,alignItems:"center",gap:6,flexShrink:0},children:[(0,d.jsxs)("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[(0,d.jsx)("line",{x1:"19",y1:"12",x2:"5",y2:"12"}),(0,d.jsx)("polyline",{points:"12 19 5 12 12 5"})]}),(0,d.jsx)("span",{children:"Chat"})]}),(0,d.jsx)("div",{style:{flex:1,overflow:"hidden"},children:(0,d.jsx)(bJ,{tabs:bs,activeTabId:aJ,onSelectTab:aK,onCloseTab:bk,onAskAI:a=>{let b=`I'm looking at \`${a}\`. `;N?.current?.insertIfEmpty(b)}})})]}),(0,d.jsx)("div",{style:{flex:1,overflow:"hidden"},children:"files"===aJ?(0,d.jsx)(bm,{cwd:aV??p?.cwd??r??null,refreshKey:x,onOpenFile:ba,onExploreFile:bc,onAtMention:aT,watchEnabled:aL&&"files"===aJ}):"tools"===aJ?(0,d.jsx)(bD,{refreshKey:aP,visibleAppId:aN?.appId??null,cwd:aV??p?.cwd??r??null,onOpenApp:bg,onAppChanged:bh,agentRuntimeExtra:(0,d.jsx)(bU,{tree:Q,activeLeafId:S,onLeafChange:W,hasSession:!!p,embedded:!0})}):"workbench"===aJ&&p?(0,d.jsx)(bR,{sessionId:p.id,cwd:p.cwd,onAskAboutCell:(a,b)=>{let c=a.length>400?a.slice(0,400)+"...":a;N?.current?.insertText(`Explain the code in workbench cell #${b}:
|
|
41
41
|
\`\`\`
|
|
42
42
|
${c}
|
|
43
43
|
\`\`\`
|
|
44
|
-
`)},onAskAboutArtifact:a=>{F?.current?.insertText(ds(a))},onEditArtifact:a=>{F?.current?.insertText(dt(a))},onOpenArtifact:a=>{let b=a.split(/[\\/]/).pop()||a;a_(a,b)}}):be?.filePath?be.filePath.startsWith("__")?(0,d.jsx)(bq,{filePath:be.filePath}):(0,d.jsx)(aA,{filePath:be.filePath,children:(0,d.jsx)(ay.h,{filePath:be.filePath,cwd:aK??void 0,onOpenFile:a_,scrollToLine:aZ,workbenchSessionId:i?.sessionKind==="workbench"?i.id:null,onAskAboutArtifact:a=>F?.current?.insertText(ds(a)),onEditArtifact:a=>F?.current?.insertText(dt(a))})}):(0,d.jsx)("div",{style:{height:"100%",display:"flex",alignItems:"center",justifyContent:"center",color:"var(--text-dim)",fontSize:12},children:"No file open"})})]})]}),(0,d.jsx)(dp,{open:ah,anchorRef:H,status:bl,error:bp,currentSessionId:bi,currentCwd:aY,idleTimeoutLabel:dw(y.plotIdleTimeoutMs),busyPid:"number"==typeof bt?bt:null,onClose:()=>ai(!1),onRefresh:()=>{by()},onReleaseKernels:a=>{bA(a)},onOpenSettings:bE,onOpenStatus:bC}),u&&(0,d.jsx)(de,{cwd:aY,generativeUI:y.generativeUI,initialTab:w,onGenerativeUIToggle:$,onModelsChanged:()=>t(a=>a+1),onProjectSelect:aQ,onProjectsChanged:()=>n(a=>a+1),onClose:()=>{v(!1),t(a=>a+1)}}),af&&(0,d.jsx)(di,{cwd:bj,runtime:{totalBytes:bv,currentSessionBytes:bx,idleTimeoutLabel:dw(y.plotIdleTimeoutMs)},runtimeError:bp,busy:al,onClose:a3,onLaunch:a=>bF(a),onReleaseCurrentRuntime:i?.id&&i.cwd===bj?()=>{bz()}:void 0,onOpenSettings:bE}),(0,d.jsx)(bw,{appType:aB?.appType??"stexp",filePath:aB?.filePath??null,cwd:aB?.cwd??null,appId:aB?.appId??null,sessionId:i?.id??null,onClose:()=>aD(null),onAppChanged:a6,onOpenTools:a4}),aG.map((a,b)=>(0,d.jsx)(aC,{id:a.id,filePath:a.filePath,fileName:a.fileName,cwd:aK??i?.cwd??k??void 0,active:b===aG.length-1,stackIndex:b,zIndex:700+b,onClose:a7,onFocus:a8,onOpenFile:a_},a.id))]})}},33873:a=>{"use strict";a.exports=require("path")},34447:(a,b,c)=>{"use strict";let d=c(28354),e=c(27910),f=c(23372),g=c(49149),h=c(58879),i=b.O=function(a){e.call(this),a=a||{},this.width=0|a.width,this.height=0|a.height,this.data=this.width>0&&this.height>0?Buffer.alloc(4*this.width*this.height):null,a.fill&&this.data&&this.data.fill(0),this.gamma=0,this.readable=this.writable=!0,this._parser=new f(a),this._parser.on("error",this.emit.bind(this,"error")),this._parser.on("close",this._handleClose.bind(this)),this._parser.on("metadata",this._metadata.bind(this)),this._parser.on("gamma",this._gamma.bind(this)),this._parser.on("parsed",(function(a){this.data=a,this.emit("parsed",a)}).bind(this)),this._packer=new g(a),this._packer.on("data",this.emit.bind(this,"data")),this._packer.on("end",this.emit.bind(this,"end")),this._parser.on("close",this._handleClose.bind(this)),this._packer.on("error",this.emit.bind(this,"error"))};d.inherits(i,e),i.sync=h,i.prototype.pack=function(){return this.data&&this.data.length?process.nextTick((function(){this._packer.pack(this.data,this.width,this.height,this.gamma)}).bind(this)):this.emit("error","No data provided"),this},i.prototype.parse=function(a,b){if(b){let a,c;a=(function(a){this.removeListener("error",c),this.data=a,b(null,this)}).bind(this),c=(function(c){this.removeListener("parsed",a),b(c,null)}).bind(this),this.once("parsed",a),this.once("error",c)}return this.end(a),this},i.prototype.write=function(a){return this._parser.write(a),!0},i.prototype.end=function(a){this._parser.end(a)},i.prototype._metadata=function(a){this.width=a.width,this.height=a.height,this.emit("metadata",a)},i.prototype._gamma=function(a){this.gamma=a},i.prototype._handleClose=function(){this._parser.writable||this._packer.readable||this.emit("close")},i.bitblt=function(a,b,c,d,e,f,g,h){if(d|=0,e|=0,f|=0,g|=0,h|=0,(c|=0)>a.width||d>a.height||c+e>a.width||d+f>a.height)throw Error("bitblt reading outside image");if(g>b.width||h>b.height||g+e>b.width||h+f>b.height)throw Error("bitblt writing outside image");for(let i=0;i<f;i++)a.data.copy(b.data,(h+i)*b.width+g<<2,(d+i)*a.width+c<<2,(d+i)*a.width+c+e<<2)},i.prototype.bitblt=function(a,b,c,d,e,f,g){return i.bitblt(this,a,b,c,d,e,f,g),this},i.adjustGamma=function(a){if(a.gamma){for(let b=0;b<a.height;b++)for(let c=0;c<a.width;c++){let d=a.width*b+c<<2;for(let b=0;b<3;b++){let c=a.data[d+b]/255;c=Math.pow(c,1/2.2/a.gamma),a.data[d+b]=Math.round(255*c)}}a.gamma=0}},i.prototype.adjustGamma=function(){i.adjustGamma(this)}},35790:(a,b,c)=>{"use strict";c.d(b,{AppShell:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call AppShell() from the server but AppShell is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/annovibe/annovibe/components/AppShell.tsx","AppShell")},38937:(a,b,c)=>{let d=c(93669);function e(a){this.mode=d.BYTE,"string"==typeof a?this.data=new TextEncoder().encode(a):this.data=new Uint8Array(a)}e.getBitsLength=function(a){return 8*a},e.prototype.getLength=function(){return this.data.length},e.prototype.getBitsLength=function(){return e.getBitsLength(this.data.length)},e.prototype.write=function(a){for(let b=0,c=this.data.length;b<c;b++)a.put(this.data[b],8)},a.exports=e},39477:(a,b,c)=>{let d=c(58305).getSymbolSize;b.getPositions=function(a){let b=d(a);return[[0,0],[b-7,0],[0,b-7]]}},39588:(a,b,c)=>{let d=c(93669),e=c(28964),f=c(27137),g=c(38937),h=c(64424),i=c(64323),j=c(58305),k=c(84879);function l(a){return unescape(encodeURIComponent(a)).length}function m(a,b,c){let d,e=[];for(;null!==(d=a.exec(c));)e.push({data:d[0],index:d.index,mode:b,length:d[0].length});return e}function n(a){let b,c,e=m(i.NUMERIC,d.NUMERIC,a),f=m(i.ALPHANUMERIC,d.ALPHANUMERIC,a);return j.isKanjiModeEnabled()?(b=m(i.BYTE,d.BYTE,a),c=m(i.KANJI,d.KANJI,a)):(b=m(i.BYTE_KANJI,d.BYTE,a),c=[]),e.concat(f,b,c).sort(function(a,b){return a.index-b.index}).map(function(a){return{data:a.data,mode:a.mode,length:a.length}})}function o(a,b){switch(b){case d.NUMERIC:return e.getBitsLength(a);case d.ALPHANUMERIC:return f.getBitsLength(a);case d.KANJI:return h.getBitsLength(a);case d.BYTE:return g.getBitsLength(a)}}function p(a,b){let c,i=d.getBestModeForData(a);if((c=d.from(b,i))!==d.BYTE&&c.bit<i.bit)throw Error('"'+a+'" cannot be encoded with mode '+d.toString(c)+".\n Suggested mode is: "+d.toString(i));switch(c===d.KANJI&&!j.isKanjiModeEnabled()&&(c=d.BYTE),c){case d.NUMERIC:return new e(a);case d.ALPHANUMERIC:return new f(a);case d.KANJI:return new h(a);case d.BYTE:return new g(a)}}b.fromArray=function(a){return a.reduce(function(a,b){return"string"==typeof b?a.push(p(b,null)):b.data&&a.push(p(b.data,b.mode)),a},[])},b.fromString=function(a,c){let e=function(a,b){let c={},e={start:{}},f=["start"];for(let g=0;g<a.length;g++){let h=a[g],i=[];for(let a=0;a<h.length;a++){let j=h[a],k=""+g+a;i.push(k),c[k]={node:j,lastCount:0},e[k]={};for(let a=0;a<f.length;a++){let g=f[a];c[g]&&c[g].node.mode===j.mode?(e[g][k]=o(c[g].lastCount+j.length,j.mode)-o(c[g].lastCount,j.mode),c[g].lastCount+=j.length):(c[g]&&(c[g].lastCount=j.length),e[g][k]=o(j.length,j.mode)+4+d.getCharCountIndicator(j.mode,b))}}f=i}for(let a=0;a<f.length;a++)e[f[a]].end=0;return{map:e,table:c}}(function(a){let b=[];for(let c=0;c<a.length;c++){let e=a[c];switch(e.mode){case d.NUMERIC:b.push([e,{data:e.data,mode:d.ALPHANUMERIC,length:e.length},{data:e.data,mode:d.BYTE,length:e.length}]);break;case d.ALPHANUMERIC:b.push([e,{data:e.data,mode:d.BYTE,length:e.length}]);break;case d.KANJI:b.push([e,{data:e.data,mode:d.BYTE,length:l(e.data)}]);break;case d.BYTE:b.push([{data:e.data,mode:d.BYTE,length:l(e.data)}])}}return b}(n(a,j.isKanjiModeEnabled())),c),f=k.find_path(e.map,"start","end"),g=[];for(let a=1;a<f.length-1;a++)g.push(e.table[f[a]].node);return b.fromArray(g.reduce(function(a,b){let c=a.length-1>=0?a[a.length-1]:null;return c&&c.mode===b.mode?a[a.length-1].data+=b.data:a.push(b),a},[]))},b.rawSplit=function(a){return b.fromArray(n(a,j.isKanjiModeEnabled()))}},40355:(a,b,c)=>{let d=c(76708),e=c(95380),f=c(46387),g=c(72081),h=c(66530),i=c(90082);function j(a,b,c){if(void 0===a)throw Error("String required as first argument");if(void 0===c&&(c=b,b={}),"function"!=typeof c)if(d())b=c||{},c=null;else throw Error("Callback required as last argument");return{opts:b,cb:c}}function k(a){switch(a){case"svg":return i;case"txt":case"utf8":return g;default:return f}}function l(a,b,c){if(!c.cb)return new Promise(function(d,f){try{let g=e.create(b,c.opts);return a(g,c.opts,function(a,b){return a?f(a):d(b)})}catch(a){f(a)}});try{let d=e.create(b,c.opts);return a(d,c.opts,c.cb)}catch(a){c.cb(a)}}b.create=e.create,b.toCanvas=c(2798).toCanvas,b.toString=function(a,b,c){let d=j(a,b,c);return l(function(a){switch(a){case"svg":return i;case"terminal":return h;default:return g}}(d.opts?d.opts.type:void 0).render,a,d)},b.toDataURL=function(a,b,c){let d=j(a,b,c);return l(k(d.opts.type).renderToDataURL,a,d)},b.toBuffer=function(a,b,c){let d=j(a,b,c);return l(k(d.opts.type).renderToBuffer,a,d)},b.toFile=function(a,b,c,e){if("string"!=typeof a||"string"!=typeof b&&"object"!=typeof b)throw Error("Invalid argument");if(arguments.length<3&&!d())throw Error("Too few arguments provided");let f=j(b,c,e);return l(k(f.opts.type||a.slice((a.lastIndexOf(".")-1>>>0)+2).toLowerCase()).renderToFile.bind(null,a),b,f)},b.toFileStream=function(a,b,c){if(arguments.length<2)throw Error("Too few arguments provided");let d=j(b,c,a.emit.bind(a,"error"));l(k("png").renderToFileStream.bind(null,a),b,d)}},41025:a=>{"use strict";a.exports=require("next/dist/server/app-render/dynamic-access-async-storage.external.js")},41749:(a,b,c)=>{"use strict";c.r(b),c.d(b,{__next_app__:()=>M,handler:()=>O,routeModule:()=>N});var d=c(7553),e=c(84006),f=c(67798),g=c(34775),h=c(99373),i=c(73461),j=c(1020),k=c(26349),l=c(54365),m=c(16023),n=c(63747),o=c(24235),p=c(23938),q=c(261),r=c(66758),s=c(77243),t=c(26713),u=c(37527),v=c(22820),w=c(88216),x=c(47929),y=c(79551),z=c(71797),A=c(89125),B=c(86439),C=c(77068),D=c(27269),E=c(61287),F=c(81494),G=c(70722),H=c(70753),I=c(43954),J=c(17891),K={};for(let a in E)0>["default","__next_app__","routeModule","handler"].indexOf(a)&&(K[a]=()=>E[a]);c.d(b,K);let L={children:["",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(c.bind(c,99647)),"/home/runner/work/annovibe/annovibe/app/page.tsx"],metadata:{icon:[async a=>(await Promise.resolve().then(c.bind(c,86364))).default(a)],apple:[],openGraph:[],twitter:[],manifest:void 0}}]},{layout:[()=>Promise.resolve().then(c.bind(c,32056)),"/home/runner/work/annovibe/annovibe/app/layout.tsx"],"global-error":[()=>Promise.resolve().then(c.t.bind(c,95547,23)),"next/dist/client/components/builtin/global-error.js"],"not-found":[()=>Promise.resolve().then(c.t.bind(c,55091,23)),"next/dist/client/components/builtin/not-found.js"],forbidden:[()=>Promise.resolve().then(c.t.bind(c,45270,23)),"next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>Promise.resolve().then(c.t.bind(c,28193,23)),"next/dist/client/components/builtin/unauthorized.js"],metadata:{icon:[async a=>(await Promise.resolve().then(c.bind(c,86364))).default(a)],apple:[],openGraph:[],twitter:[],manifest:void 0}},[]]}.children,M={require:c,loadChunk:()=>Promise.resolve()},N=new d.AppPageRouteModule({definition:{kind:e.RouteKind.APP_PAGE,page:"/page",pathname:"/",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:L},distDir:".next",relativeProjectDir:""});async function O(a,b,d){var K,P,Q,R,S;d.requestMeta&&(0,h.setRequestMeta)(a,d.requestMeta),N.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let T=!!(0,h.getRequestMeta)(a,"minimalMode"),U="/page";"/index"===U&&(U="/");let V=await N.prepare(a,b,{srcPage:U,multiZoneDraftMode:!1});if(!V)return b.statusCode=400,b.end("Bad Request"),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;let{buildId:W,query:X,params:Y,pageIsDynamic:Z,buildManifest:$,nextFontManifest:_,reactLoadableManifest:aa,serverActionsManifest:ab,clientReferenceManifest:ac,subresourceIntegrityManifest:ad,prerenderManifest:ae,isDraftMode:af,resolvedPathname:ag,revalidateOnlyGenerated:ah,routerServerContext:ai,nextConfig:aj,parsedUrl:ak,interceptionRoutePatterns:al,deploymentId:am,clientAssetToken:an}=V,ao=(0,q.normalizeAppPath)(U),{isOnDemandRevalidate:ap}=V,aq=aj.experimental.ppr&&!aj.cacheComponents&&(0,I.isInterceptionRouteAppPath)(ag)?null:N.match(ag,ae),ar=(null==aq?void 0:aq.route)??null,as=!!ae.routes[ag],at=a.headers["user-agent"]||"",au=(0,t.getBotType)(at),av=(0,p.isHtmlBotRequest)(a),aw=(0,h.getRequestMeta)(a,"isPrefetchRSCRequest")??"1"===a.headers[s.NEXT_ROUTER_PREFETCH_HEADER],ax=(0,h.getRequestMeta)(a,"isRSCRequest")??!!a.headers[s.RSC_HEADER],ay=(0,r.getIsPossibleServerAction)(a),az=(0,m.checkIsAppPPREnabled)(aj.experimental.ppr),aA=a.headers[x.NEXT_RESUME_STATE_LENGTH_HEADER];if(!(0,h.getRequestMeta)(a,"postponed")&&T&&az&&ay&&aA&&"string"==typeof aA){let e=parseInt(aA,10),{maxPostponedStateSize:f,maxPostponedStateSizeBytes:g}=(0,D.getMaxPostponedStateSize)(aj.experimental.maxPostponedStateSize);if(!isNaN(e)&&e>0){if(e>g)return b.statusCode=413,b.end((0,D.getPostponedStateExceededErrorMessage)(f)),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;let i="1 MB",j=(null==(S=aj.experimental.serverActions)?void 0:S.bodySizeLimit)??i,k=e+(j!==i?c(95726).parse(j):1048576),l=await (0,D.readBodyWithSizeLimit)(a,k);if(null===l)return b.statusCode=413,b.end("Request body exceeded limit. To configure the body size limit for Server Actions, see: https://nextjs.org/docs/app/api-reference/next-config-js/serverActions#bodysizelimit"),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;if(l.length>=e){let b=l.subarray(0,e).toString("utf8");(0,h.addRequestMeta)(a,"postponed",b);let c=l.subarray(e);(0,h.addRequestMeta)(a,"actionBody",c)}else throw Object.defineProperty(Error(`invariant: expected ${e} bytes of postponed state but only received ${l.length} bytes`),"__NEXT_ERROR_CODE",{value:"E979",enumerable:!1,configurable:!0})}}if(!(0,h.getRequestMeta)(a,"postponed")&&az&&"1"===a.headers[x.NEXT_RESUME_HEADER]&&"POST"===a.method){let{maxPostponedStateSize:c,maxPostponedStateSizeBytes:e}=(0,D.getMaxPostponedStateSize)(aj.experimental.maxPostponedStateSize),f=await (0,D.readBodyWithSizeLimit)(a,e);if(null===f)return b.statusCode=413,b.end((0,D.getPostponedStateExceededErrorMessage)(c)),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;let g=f.toString("utf8");(0,h.addRequestMeta)(a,"postponed",g)}let aB=!0===N.isDev||!0===aj.experimental.exposeTestingApiInProductionBuild,aC=aB&&("1"===a.headers[s.NEXT_INSTANT_PREFETCH_HEADER]||void 0===a.headers[s.RSC_HEADER]&&"string"==typeof a.headers.cookie&&a.headers.cookie.includes(s.NEXT_INSTANT_TEST_COOKIE+"=")),aD=(az||aC)&&((null==(K=ae.routes[ao]??ae.dynamicRoutes[ao])?void 0:K.renderingMode)==="PARTIALLY_STATIC"||aC&&(aB||(null==ai?void 0:ai.experimentalTestProxy)===!0)),aE=aC&&aD,aF=aE&&!0===N.isDev,aG=!1,aH=aD?(0,h.getRequestMeta)(a,"postponed"):void 0,aI=null==(P=ae.routes[ag])?void 0:P.prefetchDataRoute,aJ=aD&&ax&&!aw&&!aI;T&&(aJ=aJ&&!!aH);let aK=(0,h.getRequestMeta)(a,"segmentPrefetchRSCRequest"),aL=(!au||!aD)&&(!at||(0,p.shouldServeStreamingMetadata)(at,aj.htmlLimitedBots)),aM=!!((ar||as||ae.routes[ao])&&!(au&&aD)),aN=aD&&!0===aj.cacheComponents,aO=!0===N.isDev||!aM||"string"==typeof aH||(aN&&(0,h.getRequestMeta)(a,"onCacheEntryV2")?aJ&&!T:aJ),aP=!!au&&aD,aQ=(null==ar?void 0:ar.remainingPrerenderableParams)??[],aR=(null==ar?void 0:ar.fallback)===null&&((null==(Q=ar.fallbackRootParams)?void 0:Q.length)??0)>0,aS=null;if(!af&&aM&&!aO&&!ay&&!aH&&!aJ){let a=aq?"string"==typeof(null==ar?void 0:ar.fallback)?ar.fallback:aq.source:null;if(!0===aj.experimental.partialFallbacks&&a&&(null==ar?void 0:ar.fallbackRouteParams)&&!aR){if(aQ.length>0){let b,c=(b=new Map(aQ.map(a=>[a.paramName,a])),a.split("/").map(a=>{let c=(0,J.getSegmentParam)(a);if(!c)return a;let d=b.get(c.paramName);if(!d)return a;let e=null==Y?void 0:Y[d.paramName];if(!e)return a;let f=Array.isArray(e)?e.map(a=>encodeURIComponent(a)).join("/"):encodeURIComponent(e);return a.replace(function(a){let{repeat:b,optional:c}=(0,J.getParamProperties)(a.paramType);return c?`[[...${a.paramName}]]`:b?`[...${a.paramName}]`:`[${a.paramName}]`}(d),f)}).join("/")||"/");aS=c!==a?c:null}}else aS=ag}let aT=aS;!aT&&(N.isDev||aM&&Z&&(null==ar?void 0:ar.fallbackRouteParams)&&!ay)&&(aT=ag),N.isDev||af||!aM||!ax||aJ||(0,k.d)(a.headers);let aU={...E,tree:L,handler:O,routeModule:N,__next_app__:M};ab&&ac&&(0,o.setManifestsSingleton)({page:U,clientReferenceManifest:ac,serverActionsManifest:ab});let aV=a.method||"GET",aW=(0,g.getTracer)(),aX=aW.getActiveScopeSpan(),aY=!!(null==ai?void 0:ai.isWrappedByNextServer),aZ=!0===aj.experimental.partialFallbacks&&aQ.length>0?(null==ar||null==(R=ar.fallbackRouteParams)?void 0:R.filter(a=>!aQ.some(b=>b.paramName===a.paramName)))??[]:[],a$=async()=>((null==ai?void 0:ai.render404)?await ai.render404(a,b,ak,!1):b.end("This page could not be found"),null);try{let f,k=N.getVaryHeader(ag,al);b.setHeader("Vary",k);let m=async(c,d)=>{let e=new l.NodeNextRequest(a),g=new l.NodeNextResponse(b);return N.render(e,g,d).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let a=aW.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==i.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let d=a.get("next.route");if(d){let a=`${aV} ${d}`;c.setAttributes({"next.route":d,"http.route":d,"next.span_name":a}),c.updateName(a),f&&f!==c&&(f.setAttribute("http.route",d),f.updateName(a))}else c.updateName(`${aV} ${U}`)})},o=(0,h.getRequestMeta)(a,"incrementalCache")||await N.getIncrementalCache(a,aj,ae,T);null==o||o.resetRequestCache(),globalThis.__incrementalCache=o;let p=async({span:e,postponed:f,fallbackRouteParams:g,forceStaticRender:i})=>{let k={query:X,params:Y,page:ao,sharedContext:{buildId:W,deploymentId:am,clientAssetToken:an},serverComponentsHmrCache:(0,h.getRequestMeta)(a,"serverComponentsHmrCache"),fallbackRouteParams:g,renderOpts:{App:()=>null,Document:()=>null,pageConfig:{},ComponentMod:aU,Component:(0,j.T)(aU),params:Y,routeModule:N,page:U,postponed:f,shouldWaitOnAllReady:aP,serveStreamingMetadata:aL,supportsDynamicResponse:"string"==typeof f||aO,buildManifest:$,nextFontManifest:_,reactLoadableManifest:aa,subresourceIntegrityManifest:ad,setCacheStatus:null==ai?void 0:ai.setCacheStatus,setIsrStatus:null==ai?void 0:ai.setIsrStatus,setReactDebugChannel:null==ai?void 0:ai.setReactDebugChannel,sendErrorsToBrowser:null==ai?void 0:ai.sendErrorsToBrowser,dir:c(33873).join(process.cwd(),N.relativeProjectDir),isDraftMode:af,botType:au,isOnDemandRevalidate:ap,isPossibleServerAction:ay,assetPrefix:aj.assetPrefix,nextConfigOutput:aj.output,crossOrigin:aj.crossOrigin,trailingSlash:aj.trailingSlash,images:aj.images,previewProps:ae.preview,enableTainting:aj.experimental.taint,htmlLimitedBots:aj.htmlLimitedBots,reactMaxHeadersLength:aj.reactMaxHeadersLength,multiZoneDraftMode:!1,incrementalCache:o,cacheLifeProfiles:aj.cacheLife,basePath:aj.basePath,serverActions:aj.experimental.serverActions,logServerFunctions:"object"==typeof aj.logging&&!!aj.logging.serverFunctions,...aE||aF||aG?{isBuildTimePrerendering:!0,supportsDynamicResponse:!1,isStaticGeneration:!0,isDebugDynamicAccesses:aF}:{},cacheComponents:!!aj.cacheComponents,experimental:{isRoutePPREnabled:aD,expireTime:aj.expireTime,staleTimes:aj.experimental.staleTimes,dynamicOnHover:!!aj.experimental.dynamicOnHover,optimisticRouting:!!aj.experimental.optimisticRouting,inlineCss:!!aj.experimental.inlineCss,prefetchInlining:aj.experimental.prefetchInlining??!1,authInterrupts:!!aj.experimental.authInterrupts,cachedNavigations:!!aj.experimental.cachedNavigations,clientTraceMetadata:aj.experimental.clientTraceMetadata||[],clientParamParsingOrigins:aj.experimental.clientParamParsingOrigins,maxPostponedStateSizeBytes:(0,C.parseMaxPostponedStateSize)(aj.experimental.maxPostponedStateSize)},waitUntil:d.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:()=>{},onInstrumentationRequestError:(b,c,d,e)=>N.onRequestError(a,b,d,e,ai),err:(0,h.getRequestMeta)(a,"invokeError")}};i&&(k.renderOpts.supportsDynamicResponse=!1);let l=await m(e,k),{metadata:n}=l,{cacheControl:p,headers:q={},fetchTags:r,fetchMetrics:s}=n;if(r&&(q[x.NEXT_CACHE_TAGS_HEADER]=r),a.fetchMetrics=s,aM&&(null==p?void 0:p.revalidate)===0&&!N.isDev&&!aD){let a=n.staticBailoutInfo,b=Object.defineProperty(Error(`Page changed from static to dynamic at runtime ${ag}${(null==a?void 0:a.description)?`, reason: ${a.description}`:""}
|
|
45
|
-
see more here https://nextjs.org/docs/messages/app-static-to-dynamic-error`),"__NEXT_ERROR_CODE",{value:"E132",enumerable:!1,configurable:!0});if(null==a?void 0:a.stack){let c=a.stack;b.stack=b.message+c.substring(c.indexOf("\n"))}throw b}return{value:{kind:u.CachedRouteKind.APP_PAGE,html:l,headers:q,rscData:n.flightData,postponed:n.postponed,status:n.statusCode,segmentData:n.segmentData},cacheControl:p}},q=async({hasResolved:c,previousCacheEntry:f,isRevalidating:g,span:i,forceStaticRender:j=!1})=>{let k,l=!1===N.isDev,m=c||b.writableEnded;if(ap&&ah&&!f&&!T)return(null==ai?void 0:ai.render404)?await ai.render404(a,b):(b.statusCode=404,b.end("This page could not be found")),null;if(ar&&(k=(0,v.parseFallbackField)(ar.fallback)),!0===aj.experimental.partialFallbacks&&(null==ar?void 0:ar.fallback)===null&&!aR&&aQ.length>0&&(k=v.FallbackMode.PRERENDER),k===v.FallbackMode.PRERENDER&&(0,t.isBot)(at)&&(!aD||av)&&(k=v.FallbackMode.BLOCKING_STATIC_RENDER),(null==f?void 0:f.isStale)===-1&&(ap=!0),ap&&(k!==v.FallbackMode.NOT_FOUND||f)&&(k=v.FallbackMode.BLOCKING_STATIC_RENDER),!T&&k!==v.FallbackMode.BLOCKING_STATIC_RENDER&&aT&&!m&&!af&&Z&&(l||!as)){if((l||ar)&&k===v.FallbackMode.NOT_FOUND){if(aj.adapterPath)return await a$();throw new B.NoFallbackError}if(aD&&(aj.cacheComponents?!aJ:!ax)){let b=l&&"string"==typeof(null==ar?void 0:ar.fallback)?ar.fallback:ao,f=(l||aE)&&(null==ar?void 0:ar.fallbackRouteParams)?(0,n.createOpaqueFallbackRouteParams)(ar.fallbackRouteParams):aG?(0,n.getFallbackRouteParams)(ao,N):null;aE&&f&&(0,h.addRequestMeta)(a,"fallbackParams",f);let g=await N.handleResponse({cacheKey:b,req:a,nextConfig:aj,routeKind:e.RouteKind.APP_PAGE,isFallback:!0,prerenderManifest:ae,isRoutePPREnabled:aD,responseGenerator:async()=>p({span:i,postponed:void 0,fallbackRouteParams:f,forceStaticRender:!0}),waitUntil:d.waitUntil,isMinimalMode:T});if(null===g)return null;if(g)return T||!aD||!(aQ.length>0)||!0!==aj.experimental.partialFallbacks||!aS||!o||ap||aG||aB||aC||aw||(0,H.scheduleOnNextTick)(async()=>{let b=N.getResponseCache(a);try{await b.revalidate(aS,o,aD,!1,a=>p({span:a.span,postponed:void 0,fallbackRouteParams:aZ.length>0?(0,n.createOpaqueFallbackRouteParams)(aZ):null,forceStaticRender:!0}),null,c,d.waitUntil)}catch(a){console.error("Error revalidating the page in the background",a)}}),delete g.cacheControl,g}}let r=ap||g||!aH?void 0:aH;if(aN&&!T&&o&&(aJ||ay)&&!j){let b=await o.get(ag,{kind:u.IncrementalCacheKind.APP_PAGE,isRoutePPREnabled:!0,isFallback:!1});b&&b.value&&b.value.kind===u.CachedRouteKind.APP_PAGE&&(r=b.value.postponed,b&&(-1===b.isStale||!0===b.isStale)&&(0,H.scheduleOnNextTick)(async()=>{let b=N.getResponseCache(a);try{await b.revalidate(ag,o,aD,!1,a=>q({...a,forceStaticRender:!0}),null,c,d.waitUntil)}catch(a){console.error("Error revalidating the page in the background",a)}}))}if((aE||aF)&&void 0!==r)return{cacheControl:{revalidate:1,expire:void 0},value:{kind:u.CachedRouteKind.PAGES,html:w.default.EMPTY,pageData:{},headers:void 0,status:void 0}};let s=(l&&(0,h.getRequestMeta)(a,"renderFallbackShell")||aE&&!as)&&(null==ar?void 0:ar.fallbackRouteParams)?(0,n.createOpaqueFallbackRouteParams)(ar.fallbackRouteParams):aG?(0,n.getFallbackRouteParams)(ao,N):null;if((l||aE)&&aj.cacheComponents&&!as&&(null==ar?void 0:ar.fallbackRouteParams)){let b=(0,n.createOpaqueFallbackRouteParams)(ar.fallbackRouteParams);b&&(0,h.addRequestMeta)(a,"fallbackParams",b)}return p({span:i,postponed:r,fallbackRouteParams:s,forceStaticRender:j})},r=async c=>{var f,g,i,j,k;let l,m=await N.handleResponse({cacheKey:aS,responseGenerator:a=>q({span:c,...a}),routeKind:e.RouteKind.APP_PAGE,isOnDemandRevalidate:ap,isRoutePPREnabled:aD,req:a,nextConfig:aj,prerenderManifest:ae,waitUntil:d.waitUntil,isMinimalMode:T});if(af&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate"),N.isDev&&b.setHeader("Cache-Control","no-cache, must-revalidate"),!m){if(aS)throw Object.defineProperty(Error("invariant: cache entry required but not generated"),"__NEXT_ERROR_CODE",{value:"E62",enumerable:!1,configurable:!0});return null}if((null==(f=m.value)?void 0:f.kind)!==u.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant app-page handler received invalid cache entry ${null==(i=m.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E707",enumerable:!1,configurable:!0});let n="string"==typeof m.value.postponed;ax&&!ay&&am&&b.setHeader(x.NEXT_NAV_DEPLOYMENT_ID_HEADER,am),aM&&!aJ&&(!n||aw)&&(T||b.setHeader("x-nextjs-cache",ap?"REVALIDATED":m.isMiss?"MISS":m.isStale?"STALE":"HIT"),b.setHeader(s.NEXT_IS_PRERENDER_HEADER,"1"));let{value:o}=m;if(aH)l={revalidate:0,expire:void 0};else if(aJ)l={revalidate:0,expire:void 0};else if(!N.isDev)if(af)l={revalidate:0,expire:void 0};else if(aM){if(m.cacheControl)if("number"==typeof m.cacheControl.revalidate){if(m.cacheControl.revalidate<1)throw Object.defineProperty(Error(`Invalid revalidate configuration provided: ${m.cacheControl.revalidate} < 1`),"__NEXT_ERROR_CODE",{value:"E22",enumerable:!1,configurable:!0});l={revalidate:m.cacheControl.revalidate,expire:(null==(j=m.cacheControl)?void 0:j.expire)??aj.expireTime}}else l={revalidate:x.CACHE_ONE_YEAR_SECONDS,expire:void 0}}else b.getHeader("Cache-Control")||(l={revalidate:0,expire:void 0});if(m.cacheControl=l,"string"==typeof aK&&(null==o?void 0:o.kind)===u.CachedRouteKind.APP_PAGE&&o.segmentData){b.setHeader(s.NEXT_DID_POSTPONE_HEADER,"2");let c=null==(k=o.headers)?void 0:k[x.NEXT_CACHE_TAGS_HEADER];T&&aM&&c&&"string"==typeof c&&b.setHeader(x.NEXT_CACHE_TAGS_HEADER,c);let d=o.segmentData.get(aK);return void 0!==d?(0,A.sendRenderResult)({req:a,res:b,generateEtags:aj.generateEtags,poweredByHeader:aj.poweredByHeader,result:w.default.fromStatic(d,s.RSC_CONTENT_TYPE_HEADER),cacheControl:m.cacheControl}):(b.statusCode=204,(0,A.sendRenderResult)({req:a,res:b,generateEtags:aj.generateEtags,poweredByHeader:aj.poweredByHeader,result:w.default.EMPTY,cacheControl:m.cacheControl}))}let r=aN?(0,h.getRequestMeta)(a,"onCacheEntryV2")??(0,h.getRequestMeta)(a,"onCacheEntry"):(0,h.getRequestMeta)(a,"onCacheEntry");if(r&&await r(m,{url:(0,h.getRequestMeta)(a,"initURL")??a.url}))return null;if(o.headers){let a={...o.headers};for(let[c,d]of(T&&aM||delete a[x.NEXT_CACHE_TAGS_HEADER],Object.entries(a)))if(void 0!==d)if(Array.isArray(d))for(let a of d)b.appendHeader(c,a);else"number"==typeof d&&(d=d.toString()),b.appendHeader(c,d)}let t=null==(g=o.headers)?void 0:g[x.NEXT_CACHE_TAGS_HEADER];if(T&&aM&&t&&"string"==typeof t&&b.setHeader(x.NEXT_CACHE_TAGS_HEADER,t),!o.status||ax&&aD||(b.statusCode=o.status),!T&&o.status&&F.RedirectStatusCode[o.status]&&ax&&(b.statusCode=200),n&&!aJ&&b.setHeader(s.NEXT_DID_POSTPONE_HEADER,"1"),ax&&!af){if(void 0===o.rscData){if(o.html.contentType!==s.RSC_CONTENT_TYPE_HEADER)if(aj.cacheComponents)return b.statusCode=404,(0,A.sendRenderResult)({req:a,res:b,generateEtags:aj.generateEtags,poweredByHeader:aj.poweredByHeader,result:w.default.EMPTY,cacheControl:m.cacheControl});else throw Object.defineProperty(new G.InvariantError(`Expected RSC response, got ${o.html.contentType}`),"__NEXT_ERROR_CODE",{value:"E789",enumerable:!1,configurable:!0});return(0,A.sendRenderResult)({req:a,res:b,generateEtags:aj.generateEtags,poweredByHeader:aj.poweredByHeader,result:o.html,cacheControl:m.cacheControl})}return(0,A.sendRenderResult)({req:a,res:b,generateEtags:aj.generateEtags,poweredByHeader:aj.poweredByHeader,result:w.default.fromStatic(o.rscData,s.RSC_CONTENT_TYPE_HEADER),cacheControl:m.cacheControl})}let v=o.html;if(aC&&aE){let c=!0===N.isDev?crypto.randomUUID():null;return v.pipeThrough((0,z.createInstantTestScriptInsertionTransformStream)(c)),(0,A.sendRenderResult)({req:a,res:b,generateEtags:aj.generateEtags,poweredByHeader:aj.poweredByHeader,result:v,cacheControl:{revalidate:0,expire:void 0}})}if(!n||T||ax)return(0,A.sendRenderResult)({req:a,res:b,generateEtags:aj.generateEtags,poweredByHeader:aj.poweredByHeader,result:v,cacheControl:m.cacheControl});if(aE||aF)return v.push(new ReadableStream({start(a){a.enqueue(y.ENCODED_TAGS.CLOSED.BODY_AND_HTML),a.close()}})),(0,A.sendRenderResult)({req:a,res:b,generateEtags:aj.generateEtags,poweredByHeader:aj.poweredByHeader,result:v,cacheControl:{revalidate:0,expire:void 0}});let B=new TransformStream;return v.push(B.readable),p({span:c,postponed:o.postponed,fallbackRouteParams:null,forceStaticRender:!1}).then(async a=>{var b,c;if(!a)throw Object.defineProperty(Error("Invariant: expected a result to be returned"),"__NEXT_ERROR_CODE",{value:"E463",enumerable:!1,configurable:!0});if((null==(b=a.value)?void 0:b.kind)!==u.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant: expected a page response, got ${null==(c=a.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E305",enumerable:!1,configurable:!0});await a.value.html.pipeTo(B.writable)}).catch(a=>{B.writable.abort(a).catch(a=>{console.error("couldn't abort transformer",a)})}),(0,A.sendRenderResult)({req:a,res:b,generateEtags:aj.generateEtags,poweredByHeader:aj.poweredByHeader,result:v,cacheControl:{revalidate:0,expire:void 0}})};if(!aY||!aX)return f=aW.getActiveScopeSpan(),await aW.withPropagatedContext(a.headers,()=>aW.trace(i.BaseServerSpan.handleRequest,{spanName:`${aV} ${U}`,kind:g.SpanKind.SERVER,attributes:{"http.method":aV,"http.target":a.url}},r),void 0,!aY);await r(aX)}catch(b){throw b instanceof B.NoFallbackError||await N.onRequestError(a,b,{routerKind:"App Router",routePath:U,routeType:"render",revalidateReason:(0,f.c)({isStaticGeneration:aM,isOnDemandRevalidate:ap})},!1,ai),b}}},42516:(a,b,c)=>{"use strict";let d=c(81769),e=c(27734);b.process=function(a,b){let c=[],f=new d(a);return new e(b,{read:f.read.bind(f),write:function(a){c.push(a)},complete:function(){}}).start(),f.process(),Buffer.concat(c)}},43144:(a,b,c)=>{let d=c(81754);b.mul=function(a,b){let c=new Uint8Array(a.length+b.length-1);for(let e=0;e<a.length;e++)for(let f=0;f<b.length;f++)c[e+f]^=d.mul(a[e],b[f]);return c},b.mod=function(a,b){let c=new Uint8Array(a);for(;c.length-b.length>=0;){let a=c[0];for(let e=0;e<b.length;e++)c[e]^=d.mul(b[e],a);let e=0;for(;e<c.length&&0===c[e];)e++;c=c.slice(e)}return c},b.generateECPolynomial=function(a){let c=new Uint8Array([1]);for(let e=0;e<a;e++)c=b.mul(c,new Uint8Array([1,d.exp(e)]));return c}},43894:a=>{"use strict";let b=[];for(let a=0;a<256;a++){let c=a;for(let a=0;a<8;a++)1&c?c=0xedb88320^c>>>1:c>>>=1;b[a]=c}let c=a.exports=function(){this._crc=-1};c.prototype.write=function(a){for(let c=0;c<a.length;c++)this._crc=b[(this._crc^a[c])&255]^this._crc>>>8;return!0},c.prototype.crc32=function(){return -1^this._crc},c.crc32=function(a){let c=-1;for(let d=0;d<a.length;d++)c=b[(c^a[d])&255]^c>>>8;return -1^c}},43954:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/interception-routes")},46349:a=>{function b(a){if(!a||a<1)throw Error("BitMatrix size must be defined and greater than 0");this.size=a,this.data=new Uint8Array(a*a),this.reservedBit=new Uint8Array(a*a)}b.prototype.set=function(a,b,c,d){let e=a*this.size+b;this.data[e]=c,d&&(this.reservedBit[e]=!0)},b.prototype.get=function(a,b){return this.data[a*this.size+b]},b.prototype.xor=function(a,b,c){this.data[a*this.size+b]^=c},b.prototype.isReserved=function(a,b){return this.reservedBit[a*this.size+b]},a.exports=b},46387:(a,b,c)=>{let d=c(29021),e=c(34447).O,f=c(88397);b.render=function(a,b){let c=f.getOptions(b),d=c.rendererOpts,g=f.getImageWidth(a.modules.size,c);d.width=g,d.height=g;let h=new e(d);return f.qrToImageData(h.data,a,c),h},b.renderToDataURL=function(a,c,d){void 0===d&&(d=c,c=void 0),b.renderToBuffer(a,c,function(a,b){a&&d(a);let c="data:image/png;base64,";c+=b.toString("base64"),d(null,c)})},b.renderToBuffer=function(a,c,d){void 0===d&&(d=c,c=void 0);let e=b.render(a,c),f=[];e.on("error",d),e.on("data",function(a){f.push(a)}),e.on("end",function(){d(null,Buffer.concat(f))}),e.pack()},b.renderToFile=function(a,c,e,f){void 0===f&&(f=e,e=void 0);let g=!1,h=(...a)=>{g||(g=!0,f.apply(null,a))},i=d.createWriteStream(a);i.on("error",h),i.on("close",h),b.renderToFileStream(i,c,e)},b.renderToFileStream=function(a,c,d){b.render(c,d).pack().pipe(a)}},49149:(a,b,c)=>{"use strict";let d=c(28354),e=c(27910),f=c(67269),g=c(98052),h=a.exports=function(a){e.call(this),this._packer=new g(a||{}),this._deflate=this._packer.createDeflate(),this.readable=!0};d.inherits(h,e),h.prototype.pack=function(a,b,c,d){this.emit("data",Buffer.from(f.PNG_SIGNATURE)),this.emit("data",this._packer.packIHDR(b,c)),d&&this.emit("data",this._packer.packGAMA(d));let e=this._packer.filterData(a,b,c);this._deflate.on("error",this.emit.bind(this,"error")),this._deflate.on("data",(function(a){this.emit("data",this._packer.packIDAT(a))}).bind(this)),this._deflate.on("end",(function(){this.emit("data",this._packer.packIEND()),this.emit("end")}).bind(this)),this._deflate.end(e)}},49998:(a,b,c)=>{"use strict";a.exports=c(40355)},52002:a=>{function b(){this.buffer=[],this.length=0}b.prototype={get:function(a){let b=Math.floor(a/8);return(this.buffer[b]>>>7-a%8&1)==1},put:function(a,b){for(let c=0;c<b;c++)this.putBit((a>>>b-c-1&1)==1)},getLengthInBits:function(){return this.length},putBit:function(a){let b=Math.floor(this.length/8);this.buffer.length<=b&&this.buffer.push(0),a&&(this.buffer[b]|=128>>>this.length%8),this.length++}},a.exports=b},52324:(a,b,c)=>{let d=c(58305),e=c(19477),f=c(58856),g=c(93669),h=c(83929),i=d.getBCHDigit(7973);function j(a,b){return g.getCharCountIndicator(a,b)+4}b.from=function(a,b){return h.isValid(a)?parseInt(a,10):b},b.getCapacity=function(a,b,c){if(!h.isValid(a))throw Error("Invalid QR Code version");void 0===c&&(c=g.BYTE);let f=(d.getSymbolTotalCodewords(a)-e.getTotalCodewordsCount(a,b))*8;if(c===g.MIXED)return f;let i=f-j(c,a);switch(c){case g.NUMERIC:return Math.floor(i/10*3);case g.ALPHANUMERIC:return Math.floor(i/11*2);case g.KANJI:return Math.floor(i/13);case g.BYTE:default:return Math.floor(i/8)}},b.getBestVersionForData=function(a,c){let d,e=f.from(c,f.M);if(Array.isArray(a)){if(a.length>1){for(let c=1;c<=40;c++)if(function(a,b){let c=0;return a.forEach(function(a){let d=j(a.mode,b);c+=d+a.getBitsLength()}),c}(a,c)<=b.getCapacity(c,e,g.MIXED))return c;return}if(0===a.length)return 1;d=a[0]}else d=a;return function(a,c,d){for(let e=1;e<=40;e++)if(c<=b.getCapacity(e,d,a))return e}(d.mode,d.getLength(),e)},b.getEncodedBits=function(a){if(!h.isValid(a)||a<7)throw Error("Invalid QR Code version");let b=a<<12;for(;d.getBCHDigit(b)-i>=0;)b^=7973<<d.getBCHDigit(b)-i;return a<<12|b}},55211:a=>{"use strict";a.exports=function(a,b,c){let d=a+b-c,e=Math.abs(d-a),f=Math.abs(d-b),g=Math.abs(d-c);return e<=f&&e<=g?a:f<=g?b:c}},55258:(a,b,c)=>{let d=c(58305),e=d.getBCHDigit(1335);b.getEncodedBits=function(a,b){let c=a.bit<<3|b,f=c<<10;for(;d.getBCHDigit(f)-e>=0;)f^=1335<<d.getBCHDigit(f)-e;return(c<<10|f)^21522}},57949:(a,b,c)=>{"use strict";let d=c(28354),e=c(27910),f=a.exports=function(){e.call(this),this._buffers=[],this._buffered=0,this._reads=[],this._paused=!1,this._encoding="utf8",this.writable=!0};d.inherits(f,e),f.prototype.read=function(a,b){this._reads.push({length:Math.abs(a),allowLess:a<0,func:b}),process.nextTick((function(){this._process(),this._paused&&this._reads&&this._reads.length>0&&(this._paused=!1,this.emit("drain"))}).bind(this))},f.prototype.write=function(a,b){let c;return this.writable?(c=Buffer.isBuffer(a)?a:Buffer.from(a,b||this._encoding),this._buffers.push(c),this._buffered+=c.length,this._process(),this._reads&&0===this._reads.length&&(this._paused=!0),this.writable&&!this._paused):(this.emit("error",Error("Stream not writable")),!1)},f.prototype.end=function(a,b){a&&this.write(a,b),this.writable=!1,this._buffers&&(0===this._buffers.length?this._end():(this._buffers.push(null),this._process()))},f.prototype.destroySoon=f.prototype.end,f.prototype._end=function(){this._reads.length>0&&this.emit("error",Error("Unexpected end of input")),this.destroy()},f.prototype.destroy=function(){this._buffers&&(this.writable=!1,this._reads=null,this._buffers=null,this.emit("close"))},f.prototype._processReadAllowingLess=function(a){this._reads.shift();let b=this._buffers[0];b.length>a.length?(this._buffered-=a.length,this._buffers[0]=b.slice(a.length),a.func.call(this,b.slice(0,a.length))):(this._buffered-=b.length,this._buffers.shift(),a.func.call(this,b))},f.prototype._processRead=function(a){this._reads.shift();let b=0,c=0,d=Buffer.alloc(a.length);for(;b<a.length;){let e=this._buffers[c++],f=Math.min(e.length,a.length-b);e.copy(d,b,0,f),b+=f,f!==e.length&&(this._buffers[--c]=e.slice(f))}c>0&&this._buffers.splice(0,c),this._buffered-=a.length,a.func.call(this,d)},f.prototype._process=function(){try{for(;this._buffered>0&&this._reads&&this._reads.length>0;){let a=this._reads[0];if(a.allowLess)this._processReadAllowingLess(a);else if(this._buffered>=a.length)this._processRead(a);else break}this._buffers&&!this.writable&&this._end()}catch(a){this.emit("error",a)}}},58305:(a,b)=>{let c,d=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];b.getSymbolSize=function(a){if(!a)throw Error('"version" cannot be null or undefined');if(a<1||a>40)throw Error('"version" should be in range from 1 to 40');return 4*a+17},b.getSymbolTotalCodewords=function(a){return d[a]},b.getBCHDigit=function(a){let b=0;for(;0!==a;)b++,a>>>=1;return b},b.setToSJISFunction=function(a){if("function"!=typeof a)throw Error('"toSJISFunc" is not a valid function.');c=a},b.isKanjiModeEnabled=function(){return void 0!==c},b.toSJIS=function(a){return c(a)}},58856:(a,b)=>{b.L={bit:1},b.M={bit:0},b.Q={bit:3},b.H={bit:2},b.isValid=function(a){return a&&void 0!==a.bit&&a.bit>=0&&a.bit<4},b.from=function(a,c){if(b.isValid(a))return a;try{if("string"!=typeof a)throw Error("Param is not a string");switch(a.toLowerCase()){case"l":case"low":return b.L;case"m":case"medium":return b.M;case"q":case"quartile":return b.Q;case"h":case"high":return b.H;default:throw Error("Unknown EC Level: "+a)}}catch(a){return c}}},58879:(a,b,c)=>{"use strict";let d=c(9709),e=c(80706);b.read=function(a,b){return d(a,b||{})},b.write=function(a,b){return e(a,b)}},59725:(a,b)=>{"use strict";let c=[{x:[0],y:[0]},{x:[4],y:[0]},{x:[0,4],y:[4]},{x:[2,6],y:[0,4]},{x:[0,2,4,6],y:[2,6]},{x:[1,3,5,7],y:[0,2,4,6]},{x:[0,1,2,3,4,5,6,7],y:[1,3,5,7]}];b.getImagePasses=function(a,b){let d=[],e=a%8,f=b%8,g=(a-e)/8,h=(b-f)/8;for(let a=0;a<c.length;a++){let b=c[a],i=g*b.x.length,j=h*b.y.length;for(let a=0;a<b.x.length;a++)if(b.x[a]<e)i++;else break;for(let a=0;a<b.y.length;a++)if(b.y[a]<f)j++;else break;i>0&&j>0&&d.push({width:i,height:j,index:a})}return d},b.getInterlaceIterator=function(a){return function(b,d,e){let f=b%c[e].x.length,g=(b-f)/c[e].x.length*8+c[e].x[f],h=d%c[e].y.length;return 4*g+((d-h)/c[e].y.length*8+c[e].y[h])*a*4}}},61345:(a,b)=>{b.render=function(a,b,c){let d=a.modules.size,e=a.modules.data,f="\x1b[47m \x1b[0m",g="",h=Array(d+3).join(f),i=[,,].join(f);g+=h+"\n";for(let a=0;a<d;++a){g+=f;for(let b=0;b<d;b++)g+=e[a*d+b]?"\x1b[40m \x1b[0m":f;g+=i+"\n"}return g+=h+"\n","function"==typeof c&&c(null,g),g}},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},64323:(a,b)=>{let c="[0-9]+",d="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+",e="(?:(?![A-Z0-9 $%*+\\-./:]|"+(d=d.replace(/u/g,"\\u"))+")(?:.|[\r\n]))+";b.KANJI=RegExp(d,"g"),b.BYTE_KANJI=RegExp("[^A-Z0-9 $%*+\\-./:]+","g"),b.BYTE=RegExp(e,"g"),b.NUMERIC=RegExp(c,"g"),b.ALPHANUMERIC=RegExp("[A-Z $%*+\\-./:]+","g");let f=RegExp("^"+d+"$"),g=RegExp("^"+c+"$"),h=RegExp("^[A-Z0-9 $%*+\\-./:]+$");b.testKanji=function(a){return f.test(a)},b.testNumeric=function(a){return g.test(a)},b.testAlphanumeric=function(a){return h.test(a)}},64424:(a,b,c)=>{let d=c(93669),e=c(58305);function f(a){this.mode=d.KANJI,this.data=a}f.getBitsLength=function(a){return 13*a},f.prototype.getLength=function(){return this.data.length},f.prototype.getBitsLength=function(){return f.getBitsLength(this.data.length)},f.prototype.write=function(a){let b;for(b=0;b<this.data.length;b++){let c=e.toSJIS(this.data[b]);if(c>=33088&&c<=40956)c-=33088;else if(c>=57408&&c<=60351)c-=49472;else throw Error("Invalid SJIS character: "+this.data[b]+"\nMake sure your charset is UTF-8");c=(c>>>8&255)*192+(255&c),a.put(c,13)}},a.exports=f},66530:(a,b,c)=>{let d=c(61345),e=c(86491);b.render=function(a,b,c){return b&&b.small?e.render(a,b,c):d.render(a,b,c)}},67269:a=>{"use strict";a.exports={PNG_SIGNATURE:[137,80,78,71,13,10,26,10],TYPE_IHDR:0x49484452,TYPE_IEND:0x49454e44,TYPE_IDAT:0x49444154,TYPE_PLTE:0x504c5445,TYPE_tRNS:0x74524e53,TYPE_gAMA:0x67414d41,COLORTYPE_GRAYSCALE:0,COLORTYPE_PALETTE:1,COLORTYPE_COLOR:2,COLORTYPE_ALPHA:4,COLORTYPE_PALETTE_COLOR:3,COLORTYPE_COLOR_ALPHA:6,COLORTYPE_TO_BPP_MAP:{0:1,2:3,3:1,4:2,6:4},GAMMA_DIVISION:1e5}},70722:a=>{"use strict";a.exports=require("next/dist/shared/lib/invariant-error")},72081:(a,b,c)=>{let d=c(88397),e={WW:" ",WB:"▄",BB:"█",BW:"▀"},f={BB:" ",BW:"▄",WW:"█",WB:"▀"};b.render=function(a,b,c){let g=d.getOptions(b),h=e;("#ffffff"===g.color.dark.hex||"#000000"===g.color.light.hex)&&(h=f);let i=a.modules.size,j=a.modules.data,k="",l=Array(i+2*g.margin+1).join(h.WW);l=Array(g.margin/2+1).join(l+"\n");let m=Array(g.margin+1).join(h.WW);k+=l;for(let a=0;a<i;a+=2){k+=m;for(let b=0;b<i;b++){var n;let c=j[a*i+b],d=j[(a+1)*i+b];k+=(n=h,c&&d?n.BB:c&&!d?n.BW:!c&&d?n.WB:n.WW)}k+=m+"\n"}return k+=l.slice(0,-1),"function"==typeof c&&c(null,k),k},b.renderToFile=function(a,d,e,f){void 0===f&&(f=e,e=void 0);let g=c(29021),h=b.render(d,e);g.writeFile(a,h,f)}},73136:a=>{"use strict";a.exports=require("node:url")},74075:a=>{"use strict";a.exports=require("zlib")},76708:a=>{a.exports=function(){return"function"==typeof Promise&&Promise.prototype&&Promise.prototype.then}},76760:a=>{"use strict";a.exports=require("node:path")},77068:a=>{"use strict";a.exports=require("next/dist/shared/lib/size-limit")},78908:a=>{"use strict";a.exports=import("shiki")},79428:a=>{"use strict";a.exports=require("buffer")},80183:(a,b,c)=>{"use strict";let d=c(12412).ok,e=c(74075),f=c(28354),g=c(79428).kMaxLength;function h(a){if(!(this instanceof h))return new h(a);a&&a.chunkSize<e.Z_MIN_CHUNK&&(a.chunkSize=e.Z_MIN_CHUNK),e.Inflate.call(this,a),this._offset=void 0===this._offset?this._outOffset:this._offset,this._buffer=this._buffer||this._outBuffer,a&&null!=a.maxLength&&(this._maxLength=a.maxLength)}function i(a,b){b&&process.nextTick(b),a._handle&&(a._handle.close(),a._handle=null)}function j(a,b){var c=new h(b),d=a;if("string"==typeof d&&(d=Buffer.from(d)),!(d instanceof Buffer))throw TypeError("Not a string or buffer");let f=c._finishFlushFlag;return null==f&&(f=e.Z_FINISH),c._processChunk(d,f)}h.prototype._processChunk=function(a,b,c){let f,h;if("function"==typeof c)return e.Inflate._processChunk.call(this,a,b,c);let j=this,k=a&&a.length,l=this._chunkSize-this._offset,m=this._maxLength,n=0,o=[],p=0;this.on("error",function(a){f=a}),d(this._handle,"zlib binding closed");do h=(h=this._handle.writeSync(b,a,n,k,this._buffer,this._offset,l))||this._writeState;while(!this._hadError&&function(a,b){if(j._hadError)return;let c=l-b;if(d(c>=0,"have should not go down"),c>0){let a=j._buffer.slice(j._offset,j._offset+c);if(j._offset+=c,a.length>m&&(a=a.slice(0,m)),o.push(a),p+=a.length,0==(m-=a.length))return!1}return(0===b||j._offset>=j._chunkSize)&&(l=j._chunkSize,j._offset=0,j._buffer=Buffer.allocUnsafe(j._chunkSize)),0===b&&(n+=k-a,k=a,!0)}(h[0],h[1]));if(this._hadError)throw f;if(p>=g)throw i(this),RangeError("Cannot create final Buffer. It would be larger than 0x"+g.toString(16)+" bytes");let q=Buffer.concat(o,p);return i(this),q},f.inherits(h,e.Inflate),a.exports=b=j,b.Inflate=h,b.createInflate=function(a){return new h(a)},b.inflateSync=j},80706:(a,b,c)=>{"use strict";let d=!0,e=c(74075);e.deflateSync||(d=!1);let f=c(67269),g=c(98052);a.exports=function(a,b){if(!d)throw Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let c=new g(b||{}),h=[];h.push(Buffer.from(f.PNG_SIGNATURE)),h.push(c.packIHDR(a.width,a.height)),a.gamma&&h.push(c.packGAMA(a.gamma));let i=c.filterData(a.data,a.width,a.height),j=e.deflateSync(i,c.getDeflateOptions());if(i=null,!j||!j.length)throw Error("bad png - invalid compressed data response");return h.push(c.packIDAT(j)),h.push(c.packIEND()),Buffer.concat(h)}},81754:(a,b)=>{let c=new Uint8Array(512),d=new Uint8Array(256),e=1;for(let a=0;a<255;a++)c[a]=e,d[e]=a,256&(e<<=1)&&(e^=285);for(let a=255;a<512;a++)c[a]=c[a-255];b.log=function(a){if(a<1)throw Error("log("+a+")");return d[a]},b.exp=function(a){return c[a]},b.mul=function(a,b){return 0===a||0===b?0:c[d[a]+d[b]]}},81769:a=>{"use strict";let b=a.exports=function(a){this._buffer=a,this._reads=[]};b.prototype.read=function(a,b){this._reads.push({length:Math.abs(a),allowLess:a<0,func:b})},b.prototype.process=function(){for(;this._reads.length>0&&this._buffer.length;){let a=this._reads[0];if(this._buffer.length&&(this._buffer.length>=a.length||a.allowLess)){this._reads.shift();let b=this._buffer;this._buffer=b.slice(a.length),a.func.call(this,b.slice(0,a.length))}else break}return this._reads.length>0?Error("There are some read requests waitng on finished stream"):this._buffer.length>0?Error("unrecognised content at end of stream"):void 0}},83670:a=>{"use strict";a.exports=function(a,b){let c=b.depth,d=b.width,e=b.height,f=b.colorType,g=b.transColor,h=b.palette,i=a;return 3===f?!function(a,b,c,d,e){let f=0;for(let g=0;g<d;g++)for(let d=0;d<c;d++){let c=e[a[f]];if(!c)throw Error("index "+a[f]+" not in palette");for(let a=0;a<4;a++)b[f+a]=c[a];f+=4}}(a,i,d,e,h):(g&&function(a,b,c,d,e){let f=0;for(let g=0;g<d;g++)for(let d=0;d<c;d++){let c=!1;if(1===e.length?e[0]===a[f]&&(c=!0):e[0]===a[f]&&e[1]===a[f+1]&&e[2]===a[f+2]&&(c=!0),c)for(let a=0;a<4;a++)b[f+a]=0;f+=4}}(a,i,d,e,g),8!==c&&(16===c&&(i=Buffer.alloc(d*e*4)),!function(a,b,c,d,e){let f=Math.pow(2,e)-1,g=0;for(let e=0;e<d;e++)for(let d=0;d<c;d++){for(let c=0;c<4;c++)b[g+c]=Math.floor(255*a[g+c]/f+.5);g+=4}}(a,i,d,e,c))),i}},83929:(a,b)=>{b.isValid=function(a){return!isNaN(a)&&a>=1&&a<=40}},84879:a=>{"use strict";var b={single_source_shortest_paths:function(a,c,d){var e,f,g,h,i,j,k,l={},m={};m[c]=0;var n=b.PriorityQueue.make();for(n.push(c,0);!n.empty();)for(g in f=(e=n.pop()).value,h=e.cost,i=a[f]||{})i.hasOwnProperty(g)&&(j=h+i[g],k=m[g],(void 0===m[g]||k>j)&&(m[g]=j,n.push(g,j),l[g]=f));if(void 0!==d&&void 0===m[d])throw Error("Could not find a path from "+c+" to "+d+".");return l},extract_shortest_path_from_predecessor_list:function(a,b){for(var c=[],d=b;d;)c.push(d),a[d],d=a[d];return c.reverse(),c},find_path:function(a,c,d){var e=b.single_source_shortest_paths(a,c,d);return b.extract_shortest_path_from_predecessor_list(e,d)},PriorityQueue:{make:function(a){var c,d=b.PriorityQueue,e={};for(c in a=a||{},d)d.hasOwnProperty(c)&&(e[c]=d[c]);return e.queue=[],e.sorter=a.sorter||d.default_sorter,e},default_sorter:function(a,b){return a.cost-b.cost},push:function(a,b){this.queue.push({value:a,cost:b}),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return 0===this.queue.length}}};a.exports=b},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},86491:(a,b)=>{let c="\x1b[37m",d="\x1b[30m",e="\x1b[0m",f="\x1b[47m"+d,g="\x1b[40m"+c,h=function(a,b,c,d){let e=b+1;return c>=e||d>=e||d<-1||c<-1?"0":c>=b||d>=b||d<0||c<0?"1":a[d*b+c]?"2":"1"},i=function(a,b,c,d){return h(a,b,c,d)+h(a,b,c,d+1)};b.render=function(a,b,h){var j,k;let l=a.modules.size,m=a.modules.data,n=!!(b&&b.inverse),o=b&&b.inverse?g:f,p={"00":e+" "+o,"01":e+(j=n?d:c)+"▄"+o,"02":e+(k=n?c:d)+"▄"+o,10:e+j+"▀"+o,11:" ",12:"▄",20:e+k+"▀"+o,21:"▀",22:"█"},q=e+"\n"+o,r=o;for(let a=-1;a<l+1;a+=2){for(let b=-1;b<l;b++)r+=p[i(m,l,b,a)];r+=p[i(m,l,l,a)]+q}return r+=e,"function"==typeof h&&h(null,r),r}},88066:(a,b,c)=>{let d=c(58305).getSymbolSize;b.getRowColCoords=function(a){if(1===a)return[];let b=Math.floor(a/7)+2,c=d(a),e=145===c?26:2*Math.ceil((c-13)/(2*b-2)),f=[c-7];for(let a=1;a<b-1;a++)f[a]=f[a-1]-e;return f.push(6),f.reverse()},b.getPositions=function(a){let c=[],d=b.getRowColCoords(a),e=d.length;for(let a=0;a<e;a++)for(let b=0;b<e;b++)(0!==a||0!==b)&&(0!==a||b!==e-1)&&(a!==e-1||0!==b)&&c.push([d[a],d[b]]);return c}},88397:(a,b)=>{function c(a){if("number"==typeof a&&(a=a.toString()),"string"!=typeof a)throw Error("Color should be defined as hex string");let b=a.slice().replace("#","").split("");if(b.length<3||5===b.length||b.length>8)throw Error("Invalid hex color: "+a);(3===b.length||4===b.length)&&(b=Array.prototype.concat.apply([],b.map(function(a){return[a,a]}))),6===b.length&&b.push("F","F");let c=parseInt(b.join(""),16);return{r:c>>24&255,g:c>>16&255,b:c>>8&255,a:255&c,hex:"#"+b.slice(0,6).join("")}}b.getOptions=function(a){a||(a={}),a.color||(a.color={});let b=void 0===a.margin||null===a.margin||a.margin<0?4:a.margin,d=a.width&&a.width>=21?a.width:void 0,e=a.scale||4;return{width:d,scale:d?4:e,margin:b,color:{dark:c(a.color.dark||"#000000ff"),light:c(a.color.light||"#ffffffff")},type:a.type,rendererOpts:a.rendererOpts||{}}},b.getScale=function(a,b){return b.width&&b.width>=a+2*b.margin?b.width/(a+2*b.margin):b.scale},b.getImageWidth=function(a,c){let d=b.getScale(a,c);return Math.floor((a+2*c.margin)*d)},b.qrToImageData=function(a,c,d){let e=c.modules.size,f=c.modules.data,g=b.getScale(e,d),h=Math.floor((e+2*d.margin)*g),i=d.margin*g,j=[d.color.light,d.color.dark];for(let b=0;b<h;b++)for(let c=0;c<h;c++){let k=(b*h+c)*4,l=d.color.light;b>=i&&c>=i&&b<h-i&&c<h-i&&(l=j[+!!f[Math.floor((b-i)/g)*e+Math.floor((c-i)/g)]]),a[k++]=l.r,a[k++]=l.g,a[k++]=l.b,a[k]=l.a}}},90082:(a,b,c)=>{b.render=c(32835).render,b.renderToFile=function(a,d,e,f){void 0===f&&(f=e,e=void 0);let g=c(29021),h=b.render(d,e);g.writeFile(a,'<?xml version="1.0" encoding="utf-8"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">'+h,f)}},92858:(a,b,c)=>{"use strict";let d=c(59725),e=[function(){},function(a,b,c,d){if(d===b.length)throw Error("Ran out of data");let e=b[d];a[c]=e,a[c+1]=e,a[c+2]=e,a[c+3]=255},function(a,b,c,d){if(d+1>=b.length)throw Error("Ran out of data");let e=b[d];a[c]=e,a[c+1]=e,a[c+2]=e,a[c+3]=b[d+1]},function(a,b,c,d){if(d+2>=b.length)throw Error("Ran out of data");a[c]=b[d],a[c+1]=b[d+1],a[c+2]=b[d+2],a[c+3]=255},function(a,b,c,d){if(d+3>=b.length)throw Error("Ran out of data");a[c]=b[d],a[c+1]=b[d+1],a[c+2]=b[d+2],a[c+3]=b[d+3]}],f=[function(){},function(a,b,c,d){let e=b[0];a[c]=e,a[c+1]=e,a[c+2]=e,a[c+3]=d},function(a,b,c){let d=b[0];a[c]=d,a[c+1]=d,a[c+2]=d,a[c+3]=b[1]},function(a,b,c,d){a[c]=b[0],a[c+1]=b[1],a[c+2]=b[2],a[c+3]=d},function(a,b,c){a[c]=b[0],a[c+1]=b[1],a[c+2]=b[2],a[c+3]=b[3]}];b.dataToBitMap=function(a,b){let c,g,h,i,j,k,l=b.width,m=b.height,n=b.depth,o=b.bpp,p=b.interlace;8!==n&&(c=[],g=0,h={get:function(b){for(;c.length<b;)!function(){let b,d,e,f;if(g===a.length)throw Error("Ran out of data");let h=a[g];switch(g++,n){default:throw Error("unrecognised depth");case 16:e=a[g],g++,c.push((h<<8)+e);break;case 4:e=15&h,f=h>>4,c.push(f,e);break;case 2:b=3&h,d=h>>2&3,e=h>>4&3,f=h>>6&3,c.push(f,e,d,b);break;case 1:b=h>>4&1,d=h>>5&1,e=h>>6&1,f=h>>7&1,c.push(f,e,d,b,h>>3&1,h>>2&1,h>>1&1,1&h)}}();let d=c.slice(0,b);return c=c.slice(b),d},resetAfterLine:function(){c.length=0},end:function(){if(g!==a.length)throw Error("extra data found")}}),i=n<=8?Buffer.alloc(l*m*4):new Uint16Array(l*m*4);let q=Math.pow(2,n)-1,r=0;if(p)j=d.getImagePasses(l,m),k=d.getInterlaceIterator(l,m);else{let a=0;k=function(){let b=a;return a+=4,b},j=[{width:l,height:m}]}for(let b=0;b<j.length;b++)8===n?r=function(a,b,c,d,f,g){let h=a.width,i=a.height,j=a.index;for(let a=0;a<i;a++)for(let i=0;i<h;i++){let h=c(i,a,j);e[d](b,f,h,g),g+=d}return g}(j[b],i,k,o,a,r):function(a,b,c,d,e,g){let h=a.width,i=a.height,j=a.index;for(let a=0;a<i;a++){for(let i=0;i<h;i++){let h=e.get(d),k=c(i,a,j);f[d](b,h,k,g)}e.resetAfterLine()}}(j[b],i,k,o,h,q);if(8===n){if(r!==a.length)throw Error("extra data found")}else h.end();return i}},93669:(a,b,c)=>{let d=c(83929),e=c(64323);b.NUMERIC={id:"Numeric",bit:1,ccBits:[10,12,14]},b.ALPHANUMERIC={id:"Alphanumeric",bit:2,ccBits:[9,11,13]},b.BYTE={id:"Byte",bit:4,ccBits:[8,16,16]},b.KANJI={id:"Kanji",bit:8,ccBits:[8,10,12]},b.MIXED={bit:-1},b.getCharCountIndicator=function(a,b){if(!a.ccBits)throw Error("Invalid mode: "+a);if(!d.isValid(b))throw Error("Invalid version: "+b);return b>=1&&b<10?a.ccBits[0]:b<27?a.ccBits[1]:a.ccBits[2]},b.getBestModeForData=function(a){return e.testNumeric(a)?b.NUMERIC:e.testAlphanumeric(a)?b.ALPHANUMERIC:e.testKanji(a)?b.KANJI:b.BYTE},b.toString=function(a){if(a&&a.id)return a.id;throw Error("Invalid mode")},b.isValid=function(a){return a&&a.bit&&a.ccBits},b.from=function(a,c){if(b.isValid(a))return a;try{if("string"!=typeof a)throw Error("Param is not a string");switch(a.toLowerCase()){case"numeric":return b.NUMERIC;case"alphanumeric":return b.ALPHANUMERIC;case"kanji":return b.KANJI;case"byte":return b.BYTE;default:throw Error("Unknown mode: "+a)}}catch(a){return c}}},94165:(a,b,c)=>{"use strict";let d=c(67269);a.exports=function(a,b,c,e){let f=-1!==[d.COLORTYPE_COLOR_ALPHA,d.COLORTYPE_ALPHA].indexOf(e.colorType);if(e.colorType===e.inputColorType){let b,c=(new DataView(b=new ArrayBuffer(2)).setInt16(0,256,!0),256!==new Int16Array(b)[0]);if(8===e.bitDepth||16===e.bitDepth&&c)return a}let g=16!==e.bitDepth?a:new Uint16Array(a.buffer),h=255,i=d.COLORTYPE_TO_BPP_MAP[e.inputColorType];4!==i||e.inputHasAlpha||(i=3);let j=d.COLORTYPE_TO_BPP_MAP[e.colorType];16===e.bitDepth&&(h=65535,j*=2);let k=Buffer.alloc(b*c*j),l=0,m=0,n=e.bgColor||{};void 0===n.red&&(n.red=h),void 0===n.green&&(n.green=h),void 0===n.blue&&(n.blue=h);for(let a=0;a<c;a++)for(let a=0;a<b;a++){let a=function(){let a,b,c,i=h;switch(e.inputColorType){case d.COLORTYPE_COLOR_ALPHA:i=g[l+3],a=g[l],b=g[l+1],c=g[l+2];break;case d.COLORTYPE_COLOR:a=g[l],b=g[l+1],c=g[l+2];break;case d.COLORTYPE_ALPHA:i=g[l+1],b=a=g[l],c=a;break;case d.COLORTYPE_GRAYSCALE:b=a=g[l],c=a;break;default:throw Error("input color type:"+e.inputColorType+" is not supported at present")}return e.inputHasAlpha&&!f&&(i/=h,a=Math.min(Math.max(Math.round((1-i)*n.red+i*a),0),h),b=Math.min(Math.max(Math.round((1-i)*n.green+i*b),0),h),c=Math.min(Math.max(Math.round((1-i)*n.blue+i*c),0),h)),{red:a,green:b,blue:c,alpha:i}}();switch(e.colorType){case d.COLORTYPE_COLOR_ALPHA:case d.COLORTYPE_COLOR:8===e.bitDepth?(k[m]=a.red,k[m+1]=a.green,k[m+2]=a.blue,f&&(k[m+3]=a.alpha)):(k.writeUInt16BE(a.red,m),k.writeUInt16BE(a.green,m+2),k.writeUInt16BE(a.blue,m+4),f&&k.writeUInt16BE(a.alpha,m+6));break;case d.COLORTYPE_ALPHA:case d.COLORTYPE_GRAYSCALE:{let b=(a.red+a.green+a.blue)/3;8===e.bitDepth?(k[m]=b,f&&(k[m+1]=a.alpha)):(k.writeUInt16BE(b,m),f&&k.writeUInt16BE(a.alpha,m+2));break}default:throw Error("unrecognised color Type "+e.colorType)}l+=i,m+=j}return k}},94735:a=>{"use strict";a.exports=require("events")},95380:(a,b,c)=>{let d=c(58305),e=c(58856),f=c(52002),g=c(46349),h=c(88066),i=c(39477),j=c(12097),k=c(19477),l=c(98129),m=c(52324),n=c(55258),o=c(93669),p=c(39588);function q(a,b,c){let d,e,f=a.size,g=n.getEncodedBits(b,c);for(d=0;d<15;d++)e=(g>>d&1)==1,d<6?a.set(d,8,e,!0):d<8?a.set(d+1,8,e,!0):a.set(f-15+d,8,e,!0),d<8?a.set(8,f-d-1,e,!0):d<9?a.set(8,15-d-1+1,e,!0):a.set(8,15-d-1,e,!0);a.set(f-8,8,1,!0)}b.create=function(a,b){let c,n;if(void 0===a||""===a)throw Error("No input text");let r=e.M;return void 0!==b&&(r=e.from(b.errorCorrectionLevel,e.M),c=m.from(b.version),n=j.from(b.maskPattern),b.toSJISFunc&&d.setToSJISFunction(b.toSJISFunc)),function(a,b,c,e){let n;if(Array.isArray(a))n=p.fromArray(a);else if("string"==typeof a){let d=b;if(!d){let b=p.rawSplit(a);d=m.getBestVersionForData(b,c)}n=p.fromString(a,d||40)}else throw Error("Invalid data");let r=m.getBestVersionForData(n,c);if(!r)throw Error("The amount of data is too big to be stored in a QR Code");if(b){if(b<r)throw Error("\nThe chosen QR Code version cannot contain this amount of data.\nMinimum version required to store current data is: "+r+".\n")}else b=r;let s=function(a,b,c){let e=new f;c.forEach(function(b){e.put(b.mode.bit,4),e.put(b.getLength(),o.getCharCountIndicator(b.mode,a)),b.write(e)});let g=(d.getSymbolTotalCodewords(a)-k.getTotalCodewordsCount(a,b))*8;for(e.getLengthInBits()+4<=g&&e.put(0,4);e.getLengthInBits()%8!=0;)e.putBit(0);let h=(g-e.getLengthInBits())/8;for(let a=0;a<h;a++)e.put(a%2?17:236,8);return function(a,b,c){let e,f,g=d.getSymbolTotalCodewords(b),h=g-k.getTotalCodewordsCount(b,c),i=k.getBlocksCount(b,c),j=g%i,m=i-j,n=Math.floor(g/i),o=Math.floor(h/i),p=o+1,q=n-o,r=new l(q),s=0,t=Array(i),u=Array(i),v=0,w=new Uint8Array(a.buffer);for(let a=0;a<i;a++){let b=a<m?o:p;t[a]=w.slice(s,s+b),u[a]=r.encode(t[a]),s+=b,v=Math.max(v,b)}let x=new Uint8Array(g),y=0;for(e=0;e<v;e++)for(f=0;f<i;f++)e<t[f].length&&(x[y++]=t[f][e]);for(e=0;e<q;e++)for(f=0;f<i;f++)x[y++]=u[f][e];return x}(e,a,b)}(b,c,n),t=new g(d.getSymbolSize(b));!function(a,b){let c=a.size,d=i.getPositions(b);for(let b=0;b<d.length;b++){let e=d[b][0],f=d[b][1];for(let b=-1;b<=7;b++)if(!(e+b<=-1)&&!(c<=e+b))for(let d=-1;d<=7;d++)f+d<=-1||c<=f+d||(b>=0&&b<=6&&(0===d||6===d)||d>=0&&d<=6&&(0===b||6===b)||b>=2&&b<=4&&d>=2&&d<=4?a.set(e+b,f+d,!0,!0):a.set(e+b,f+d,!1,!0))}}(t,b);let u=t.size;for(let a=8;a<u-8;a++){let b=a%2==0;t.set(a,6,b,!0),t.set(6,a,b,!0)}return!function(a,b){let c=h.getPositions(b);for(let b=0;b<c.length;b++){let d=c[b][0],e=c[b][1];for(let b=-2;b<=2;b++)for(let c=-2;c<=2;c++)-2===b||2===b||-2===c||2===c||0===b&&0===c?a.set(d+b,e+c,!0,!0):a.set(d+b,e+c,!1,!0)}}(t,b),q(t,c,0),b>=7&&function(a,b){let c,d,e,f=a.size,g=m.getEncodedBits(b);for(let b=0;b<18;b++)c=Math.floor(b/3),d=b%3+f-8-3,e=(g>>b&1)==1,a.set(c,d,e,!0),a.set(d,c,e,!0)}(t,b),!function(a,b){let c=a.size,d=-1,e=c-1,f=7,g=0;for(let h=c-1;h>0;h-=2)for(6===h&&h--;;){for(let c=0;c<2;c++)if(!a.isReserved(e,h-c)){let d=!1;g<b.length&&(d=(b[g]>>>f&1)==1),a.set(e,h-c,d),-1==--f&&(g++,f=7)}if((e+=d)<0||c<=e){e-=d,d=-d;break}}}(t,s),isNaN(e)&&(e=j.getBestMask(t,q.bind(null,t,c))),j.applyMask(e,t),q(t,c,e),{modules:t,version:b,errorCorrectionLevel:c,maskPattern:e,segments:n}}(a,c,r,n)}},96277:(a,b,c)=>{"use strict";let d=c(67269),e=c(43894),f=a.exports=function(a,b){this._options=a,a.checkCRC=!1!==a.checkCRC,this._hasIHDR=!1,this._hasIEND=!1,this._emittedHeadersFinished=!1,this._palette=[],this._colorType=0,this._chunks={},this._chunks[d.TYPE_IHDR]=this._handleIHDR.bind(this),this._chunks[d.TYPE_IEND]=this._handleIEND.bind(this),this._chunks[d.TYPE_IDAT]=this._handleIDAT.bind(this),this._chunks[d.TYPE_PLTE]=this._handlePLTE.bind(this),this._chunks[d.TYPE_tRNS]=this._handleTRNS.bind(this),this._chunks[d.TYPE_gAMA]=this._handleGAMA.bind(this),this.read=b.read,this.error=b.error,this.metadata=b.metadata,this.gamma=b.gamma,this.transColor=b.transColor,this.palette=b.palette,this.parsed=b.parsed,this.inflateData=b.inflateData,this.finished=b.finished,this.simpleTransparency=b.simpleTransparency,this.headersFinished=b.headersFinished||function(){}};f.prototype.start=function(){this.read(d.PNG_SIGNATURE.length,this._parseSignature.bind(this))},f.prototype._parseSignature=function(a){let b=d.PNG_SIGNATURE;for(let c=0;c<b.length;c++)if(a[c]!==b[c])return void this.error(Error("Invalid file signature"));this.read(8,this._parseChunkBegin.bind(this))},f.prototype._parseChunkBegin=function(a){let b=a.readUInt32BE(0),c=a.readUInt32BE(4),f="";for(let b=4;b<8;b++)f+=String.fromCharCode(a[b]);let g=!!(32&a[4]);return this._hasIHDR||c===d.TYPE_IHDR?(this._crc=new e,this._crc.write(Buffer.from(f)),this._chunks[c])?this._chunks[c](b):g?void this.read(b+4,this._skipChunk.bind(this)):void this.error(Error("Unsupported critical chunk type "+f)):void this.error(Error("Expected IHDR on beggining"))},f.prototype._skipChunk=function(){this.read(8,this._parseChunkBegin.bind(this))},f.prototype._handleChunkEnd=function(){this.read(4,this._parseChunkEnd.bind(this))},f.prototype._parseChunkEnd=function(a){let b=a.readInt32BE(0),c=this._crc.crc32();this._options.checkCRC&&c!==b?this.error(Error("Crc error - "+b+" - "+c)):this._hasIEND||this.read(8,this._parseChunkBegin.bind(this))},f.prototype._handleIHDR=function(a){this.read(a,this._parseIHDR.bind(this))},f.prototype._parseIHDR=function(a){this._crc.write(a);let b=a.readUInt32BE(0),c=a.readUInt32BE(4),e=a[8],f=a[9],g=a[10],h=a[11],i=a[12];if(8!==e&&4!==e&&2!==e&&1!==e&&16!==e)return void this.error(Error("Unsupported bit depth "+e));if(!(f in d.COLORTYPE_TO_BPP_MAP))return void this.error(Error("Unsupported color type"));if(0!==g)return void this.error(Error("Unsupported compression method"));if(0!==h)return void this.error(Error("Unsupported filter method"));if(0!==i&&1!==i)return void this.error(Error("Unsupported interlace method"));this._colorType=f;let j=d.COLORTYPE_TO_BPP_MAP[this._colorType];this._hasIHDR=!0,this.metadata({width:b,height:c,depth:e,interlace:!!i,palette:!!(f&d.COLORTYPE_PALETTE),color:!!(f&d.COLORTYPE_COLOR),alpha:!!(f&d.COLORTYPE_ALPHA),bpp:j,colorType:f}),this._handleChunkEnd()},f.prototype._handlePLTE=function(a){this.read(a,this._parsePLTE.bind(this))},f.prototype._parsePLTE=function(a){this._crc.write(a);let b=Math.floor(a.length/3);for(let c=0;c<b;c++)this._palette.push([a[3*c],a[3*c+1],a[3*c+2],255]);this.palette(this._palette),this._handleChunkEnd()},f.prototype._handleTRNS=function(a){this.simpleTransparency(),this.read(a,this._parseTRNS.bind(this))},f.prototype._parseTRNS=function(a){if(this._crc.write(a),this._colorType===d.COLORTYPE_PALETTE_COLOR){if(0===this._palette.length)return void this.error(Error("Transparency chunk must be after palette"));if(a.length>this._palette.length)return void this.error(Error("More transparent colors than palette size"));for(let b=0;b<a.length;b++)this._palette[b][3]=a[b];this.palette(this._palette)}this._colorType===d.COLORTYPE_GRAYSCALE&&this.transColor([a.readUInt16BE(0)]),this._colorType===d.COLORTYPE_COLOR&&this.transColor([a.readUInt16BE(0),a.readUInt16BE(2),a.readUInt16BE(4)]),this._handleChunkEnd()},f.prototype._handleGAMA=function(a){this.read(a,this._parseGAMA.bind(this))},f.prototype._parseGAMA=function(a){this._crc.write(a),this.gamma(a.readUInt32BE(0)/d.GAMMA_DIVISION),this._handleChunkEnd()},f.prototype._handleIDAT=function(a){this._emittedHeadersFinished||(this._emittedHeadersFinished=!0,this.headersFinished()),this.read(-a,this._parseIDAT.bind(this,a))},f.prototype._parseIDAT=function(a,b){if(this._crc.write(b),this._colorType===d.COLORTYPE_PALETTE_COLOR&&0===this._palette.length)throw Error("Expected palette not found");this.inflateData(b);let c=a-b.length;c>0?this._handleIDAT(c):this._handleChunkEnd()},f.prototype._handleIEND=function(a){this.read(a,this._parseIEND.bind(this))},f.prototype._parseIEND=function(a){this._crc.write(a),this._hasIEND=!0,this._handleChunkEnd(),this.finished&&this.finished()}},98052:(a,b,c)=>{"use strict";let d=c(67269),e=c(43894),f=c(94165),g=c(31964),h=c(74075),i=a.exports=function(a){if(this._options=a,a.deflateChunkSize=a.deflateChunkSize||32768,a.deflateLevel=null!=a.deflateLevel?a.deflateLevel:9,a.deflateStrategy=null!=a.deflateStrategy?a.deflateStrategy:3,a.inputHasAlpha=null==a.inputHasAlpha||a.inputHasAlpha,a.deflateFactory=a.deflateFactory||h.createDeflate,a.bitDepth=a.bitDepth||8,a.colorType="number"==typeof a.colorType?a.colorType:d.COLORTYPE_COLOR_ALPHA,a.inputColorType="number"==typeof a.inputColorType?a.inputColorType:d.COLORTYPE_COLOR_ALPHA,-1===[d.COLORTYPE_GRAYSCALE,d.COLORTYPE_COLOR,d.COLORTYPE_COLOR_ALPHA,d.COLORTYPE_ALPHA].indexOf(a.colorType))throw Error("option color type:"+a.colorType+" is not supported at present");if(-1===[d.COLORTYPE_GRAYSCALE,d.COLORTYPE_COLOR,d.COLORTYPE_COLOR_ALPHA,d.COLORTYPE_ALPHA].indexOf(a.inputColorType))throw Error("option input color type:"+a.inputColorType+" is not supported at present");if(8!==a.bitDepth&&16!==a.bitDepth)throw Error("option bit depth:"+a.bitDepth+" is not supported at present")};i.prototype.getDeflateOptions=function(){return{chunkSize:this._options.deflateChunkSize,level:this._options.deflateLevel,strategy:this._options.deflateStrategy}},i.prototype.createDeflate=function(){return this._options.deflateFactory(this.getDeflateOptions())},i.prototype.filterData=function(a,b,c){let e=f(a,b,c,this._options),h=d.COLORTYPE_TO_BPP_MAP[this._options.colorType];return g(e,b,c,this._options,h)},i.prototype._packChunk=function(a,b){let c=b?b.length:0,d=Buffer.alloc(c+12);return d.writeUInt32BE(c,0),d.writeUInt32BE(a,4),b&&b.copy(d,8),d.writeInt32BE(e.crc32(d.slice(4,d.length-4)),d.length-4),d},i.prototype.packGAMA=function(a){let b=Buffer.alloc(4);return b.writeUInt32BE(Math.floor(a*d.GAMMA_DIVISION),0),this._packChunk(d.TYPE_gAMA,b)},i.prototype.packIHDR=function(a,b){let c=Buffer.alloc(13);return c.writeUInt32BE(a,0),c.writeUInt32BE(b,4),c[8]=this._options.bitDepth,c[9]=this._options.colorType,c[10]=0,c[11]=0,c[12]=0,this._packChunk(d.TYPE_IHDR,c)},i.prototype.packIDAT=function(a){return this._packChunk(d.TYPE_IDAT,a)},i.prototype.packIEND=function(){return this._packChunk(d.TYPE_IEND,null)}},98129:(a,b,c)=>{let d=c(43144);function e(a){this.genPoly=void 0,this.degree=a,this.degree&&this.initialize(this.degree)}e.prototype.initialize=function(a){this.degree=a,this.genPoly=d.generateECPolynomial(this.degree)},e.prototype.encode=function(a){if(!this.genPoly)throw Error("Encoder not initialized");let b=new Uint8Array(a.length+this.degree);b.set(a);let c=d.mod(b,this.genPoly),e=this.degree-c.length;if(e>0){let a=new Uint8Array(this.degree);return a.set(c,e),a}return c},a.exports=e},99647:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>g});var d=c(5735),e=c(91986),f=c(35790);function g(){return(0,d.jsx)(e.Suspense,{children:(0,d.jsx)(f.AppShell,{})})}}};var b=require("../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,63,8304,42,8363,4584,707,9230],()=>b(b.s=41749));module.exports=c})();
|
|
44
|
+
`)},onAskAboutArtifact:a=>{N?.current?.insertText(ds(a))},onEditArtifact:a=>{N?.current?.insertText(dt(a))},onOpenArtifact:a=>{let b=a.split(/[\\/]/).pop()||a;ba(a,b)}}):bt?.filePath?bt.filePath.startsWith("__")?(0,d.jsx)(bq,{filePath:bt.filePath}):(0,d.jsx)(aA,{filePath:bt.filePath,children:(0,d.jsx)(ay.h,{filePath:bt.filePath,cwd:aV??void 0,onOpenFile:ba,scrollToLine:a8,workbenchSessionId:p?.sessionKind==="workbench"?p.id:null,onAskAboutArtifact:a=>N?.current?.insertText(ds(a)),onEditArtifact:a=>N?.current?.insertText(dt(a))})}):(0,d.jsx)("div",{style:{height:"100%",display:"flex",alignItems:"center",justifyContent:"center",color:"var(--text-dim)",fontSize:12},children:"No file open"})})]})]}),(0,d.jsx)(dp,{open:as,anchorRef:P,status:bB,error:bE,currentSessionId:by,currentCwd:a7,idleTimeoutLabel:dw(G.plotIdleTimeoutMs),busyPid:"number"==typeof bG?bG:null,onClose:()=>at(!1),onRefresh:()=>{bL()},onReleaseKernels:a=>{bN(a)},onOpenSettings:bQ,onOpenStatus:bP}),B&&(0,d.jsx)(de,{cwd:a7,generativeUI:G.generativeUI,initialTab:E,onGenerativeUIToggle:aj,onModelsChanged:()=>A(a=>a+1),onProjectSelect:a_,onProjectsChanged:()=>u(a=>a+1),onClose:()=>{C(!1),A(a=>a+1)}}),aq&&(0,d.jsx)(di,{cwd:bz,runtime:{totalBytes:bI,currentSessionBytes:bK,idleTimeoutLabel:dw(G.plotIdleTimeoutMs)},runtimeError:bE,busy:aw,onClose:be,onLaunch:a=>bS(a),onReleaseCurrentRuntime:p?.id&&p.cwd===bz?()=>{bM()}:void 0,onOpenSettings:bQ}),(0,d.jsx)(bw,{appType:aN?.appType??"stexp",filePath:aN?.filePath??null,cwd:aN?.cwd??null,appId:aN?.appId??null,sessionId:p?.id??null,onClose:()=>aO(null),onAppChanged:bh,onOpenTools:bf}),aR.map((a,b)=>(0,d.jsx)(aC,{id:a.id,filePath:a.filePath,fileName:a.fileName,cwd:aV??p?.cwd??r??void 0,active:b===aR.length-1,stackIndex:b,zIndex:700+b,onClose:bi,onFocus:bj,onOpenFile:ba},a.id))]})}},33873:a=>{"use strict";a.exports=require("path")},34447:(a,b,c)=>{"use strict";let d=c(28354),e=c(27910),f=c(23372),g=c(49149),h=c(58879),i=b.O=function(a){e.call(this),a=a||{},this.width=0|a.width,this.height=0|a.height,this.data=this.width>0&&this.height>0?Buffer.alloc(4*this.width*this.height):null,a.fill&&this.data&&this.data.fill(0),this.gamma=0,this.readable=this.writable=!0,this._parser=new f(a),this._parser.on("error",this.emit.bind(this,"error")),this._parser.on("close",this._handleClose.bind(this)),this._parser.on("metadata",this._metadata.bind(this)),this._parser.on("gamma",this._gamma.bind(this)),this._parser.on("parsed",(function(a){this.data=a,this.emit("parsed",a)}).bind(this)),this._packer=new g(a),this._packer.on("data",this.emit.bind(this,"data")),this._packer.on("end",this.emit.bind(this,"end")),this._parser.on("close",this._handleClose.bind(this)),this._packer.on("error",this.emit.bind(this,"error"))};d.inherits(i,e),i.sync=h,i.prototype.pack=function(){return this.data&&this.data.length?process.nextTick((function(){this._packer.pack(this.data,this.width,this.height,this.gamma)}).bind(this)):this.emit("error","No data provided"),this},i.prototype.parse=function(a,b){if(b){let a,c;a=(function(a){this.removeListener("error",c),this.data=a,b(null,this)}).bind(this),c=(function(c){this.removeListener("parsed",a),b(c,null)}).bind(this),this.once("parsed",a),this.once("error",c)}return this.end(a),this},i.prototype.write=function(a){return this._parser.write(a),!0},i.prototype.end=function(a){this._parser.end(a)},i.prototype._metadata=function(a){this.width=a.width,this.height=a.height,this.emit("metadata",a)},i.prototype._gamma=function(a){this.gamma=a},i.prototype._handleClose=function(){this._parser.writable||this._packer.readable||this.emit("close")},i.bitblt=function(a,b,c,d,e,f,g,h){if(d|=0,e|=0,f|=0,g|=0,h|=0,(c|=0)>a.width||d>a.height||c+e>a.width||d+f>a.height)throw Error("bitblt reading outside image");if(g>b.width||h>b.height||g+e>b.width||h+f>b.height)throw Error("bitblt writing outside image");for(let i=0;i<f;i++)a.data.copy(b.data,(h+i)*b.width+g<<2,(d+i)*a.width+c<<2,(d+i)*a.width+c+e<<2)},i.prototype.bitblt=function(a,b,c,d,e,f,g){return i.bitblt(this,a,b,c,d,e,f,g),this},i.adjustGamma=function(a){if(a.gamma){for(let b=0;b<a.height;b++)for(let c=0;c<a.width;c++){let d=a.width*b+c<<2;for(let b=0;b<3;b++){let c=a.data[d+b]/255;c=Math.pow(c,1/2.2/a.gamma),a.data[d+b]=Math.round(255*c)}}a.gamma=0}},i.prototype.adjustGamma=function(){i.adjustGamma(this)}},35790:(a,b,c)=>{"use strict";c.d(b,{AppShell:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call AppShell() from the server but AppShell is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/annovibe/annovibe/components/AppShell.tsx","AppShell")},38937:(a,b,c)=>{let d=c(93669);function e(a){this.mode=d.BYTE,"string"==typeof a?this.data=new TextEncoder().encode(a):this.data=new Uint8Array(a)}e.getBitsLength=function(a){return 8*a},e.prototype.getLength=function(){return this.data.length},e.prototype.getBitsLength=function(){return e.getBitsLength(this.data.length)},e.prototype.write=function(a){for(let b=0,c=this.data.length;b<c;b++)a.put(this.data[b],8)},a.exports=e},39477:(a,b,c)=>{let d=c(58305).getSymbolSize;b.getPositions=function(a){let b=d(a);return[[0,0],[b-7,0],[0,b-7]]}},39588:(a,b,c)=>{let d=c(93669),e=c(28964),f=c(27137),g=c(38937),h=c(64424),i=c(64323),j=c(58305),k=c(84879);function l(a){return unescape(encodeURIComponent(a)).length}function m(a,b,c){let d,e=[];for(;null!==(d=a.exec(c));)e.push({data:d[0],index:d.index,mode:b,length:d[0].length});return e}function n(a){let b,c,e=m(i.NUMERIC,d.NUMERIC,a),f=m(i.ALPHANUMERIC,d.ALPHANUMERIC,a);return j.isKanjiModeEnabled()?(b=m(i.BYTE,d.BYTE,a),c=m(i.KANJI,d.KANJI,a)):(b=m(i.BYTE_KANJI,d.BYTE,a),c=[]),e.concat(f,b,c).sort(function(a,b){return a.index-b.index}).map(function(a){return{data:a.data,mode:a.mode,length:a.length}})}function o(a,b){switch(b){case d.NUMERIC:return e.getBitsLength(a);case d.ALPHANUMERIC:return f.getBitsLength(a);case d.KANJI:return h.getBitsLength(a);case d.BYTE:return g.getBitsLength(a)}}function p(a,b){let c,i=d.getBestModeForData(a);if((c=d.from(b,i))!==d.BYTE&&c.bit<i.bit)throw Error('"'+a+'" cannot be encoded with mode '+d.toString(c)+".\n Suggested mode is: "+d.toString(i));switch(c===d.KANJI&&!j.isKanjiModeEnabled()&&(c=d.BYTE),c){case d.NUMERIC:return new e(a);case d.ALPHANUMERIC:return new f(a);case d.KANJI:return new h(a);case d.BYTE:return new g(a)}}b.fromArray=function(a){return a.reduce(function(a,b){return"string"==typeof b?a.push(p(b,null)):b.data&&a.push(p(b.data,b.mode)),a},[])},b.fromString=function(a,c){let e=function(a,b){let c={},e={start:{}},f=["start"];for(let g=0;g<a.length;g++){let h=a[g],i=[];for(let a=0;a<h.length;a++){let j=h[a],k=""+g+a;i.push(k),c[k]={node:j,lastCount:0},e[k]={};for(let a=0;a<f.length;a++){let g=f[a];c[g]&&c[g].node.mode===j.mode?(e[g][k]=o(c[g].lastCount+j.length,j.mode)-o(c[g].lastCount,j.mode),c[g].lastCount+=j.length):(c[g]&&(c[g].lastCount=j.length),e[g][k]=o(j.length,j.mode)+4+d.getCharCountIndicator(j.mode,b))}}f=i}for(let a=0;a<f.length;a++)e[f[a]].end=0;return{map:e,table:c}}(function(a){let b=[];for(let c=0;c<a.length;c++){let e=a[c];switch(e.mode){case d.NUMERIC:b.push([e,{data:e.data,mode:d.ALPHANUMERIC,length:e.length},{data:e.data,mode:d.BYTE,length:e.length}]);break;case d.ALPHANUMERIC:b.push([e,{data:e.data,mode:d.BYTE,length:e.length}]);break;case d.KANJI:b.push([e,{data:e.data,mode:d.BYTE,length:l(e.data)}]);break;case d.BYTE:b.push([{data:e.data,mode:d.BYTE,length:l(e.data)}])}}return b}(n(a,j.isKanjiModeEnabled())),c),f=k.find_path(e.map,"start","end"),g=[];for(let a=1;a<f.length-1;a++)g.push(e.table[f[a]].node);return b.fromArray(g.reduce(function(a,b){let c=a.length-1>=0?a[a.length-1]:null;return c&&c.mode===b.mode?a[a.length-1].data+=b.data:a.push(b),a},[]))},b.rawSplit=function(a){return b.fromArray(n(a,j.isKanjiModeEnabled()))}},40355:(a,b,c)=>{let d=c(76708),e=c(95380),f=c(46387),g=c(72081),h=c(66530),i=c(90082);function j(a,b,c){if(void 0===a)throw Error("String required as first argument");if(void 0===c&&(c=b,b={}),"function"!=typeof c)if(d())b=c||{},c=null;else throw Error("Callback required as last argument");return{opts:b,cb:c}}function k(a){switch(a){case"svg":return i;case"txt":case"utf8":return g;default:return f}}function l(a,b,c){if(!c.cb)return new Promise(function(d,f){try{let g=e.create(b,c.opts);return a(g,c.opts,function(a,b){return a?f(a):d(b)})}catch(a){f(a)}});try{let d=e.create(b,c.opts);return a(d,c.opts,c.cb)}catch(a){c.cb(a)}}b.create=e.create,b.toCanvas=c(2798).toCanvas,b.toString=function(a,b,c){let d=j(a,b,c);return l(function(a){switch(a){case"svg":return i;case"terminal":return h;default:return g}}(d.opts?d.opts.type:void 0).render,a,d)},b.toDataURL=function(a,b,c){let d=j(a,b,c);return l(k(d.opts.type).renderToDataURL,a,d)},b.toBuffer=function(a,b,c){let d=j(a,b,c);return l(k(d.opts.type).renderToBuffer,a,d)},b.toFile=function(a,b,c,e){if("string"!=typeof a||"string"!=typeof b&&"object"!=typeof b)throw Error("Invalid argument");if(arguments.length<3&&!d())throw Error("Too few arguments provided");let f=j(b,c,e);return l(k(f.opts.type||a.slice((a.lastIndexOf(".")-1>>>0)+2).toLowerCase()).renderToFile.bind(null,a),b,f)},b.toFileStream=function(a,b,c){if(arguments.length<2)throw Error("Too few arguments provided");let d=j(b,c,a.emit.bind(a,"error"));l(k("png").renderToFileStream.bind(null,a),b,d)}},41025:a=>{"use strict";a.exports=require("next/dist/server/app-render/dynamic-access-async-storage.external.js")},43144:(a,b,c)=>{let d=c(81754);b.mul=function(a,b){let c=new Uint8Array(a.length+b.length-1);for(let e=0;e<a.length;e++)for(let f=0;f<b.length;f++)c[e+f]^=d.mul(a[e],b[f]);return c},b.mod=function(a,b){let c=new Uint8Array(a);for(;c.length-b.length>=0;){let a=c[0];for(let e=0;e<b.length;e++)c[e]^=d.mul(b[e],a);let e=0;for(;e<c.length&&0===c[e];)e++;c=c.slice(e)}return c},b.generateECPolynomial=function(a){let c=new Uint8Array([1]);for(let e=0;e<a;e++)c=b.mul(c,new Uint8Array([1,d.exp(e)]));return c}},43894:a=>{"use strict";let b=[];for(let a=0;a<256;a++){let c=a;for(let a=0;a<8;a++)1&c?c=0xedb88320^c>>>1:c>>>=1;b[a]=c}let c=a.exports=function(){this._crc=-1};c.prototype.write=function(a){for(let c=0;c<a.length;c++)this._crc=b[(this._crc^a[c])&255]^this._crc>>>8;return!0},c.prototype.crc32=function(){return -1^this._crc},c.crc32=function(a){let c=-1;for(let d=0;d<a.length;d++)c=b[(c^a[d])&255]^c>>>8;return -1^c}},43954:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/interception-routes")},46349:a=>{function b(a){if(!a||a<1)throw Error("BitMatrix size must be defined and greater than 0");this.size=a,this.data=new Uint8Array(a*a),this.reservedBit=new Uint8Array(a*a)}b.prototype.set=function(a,b,c,d){let e=a*this.size+b;this.data[e]=c,d&&(this.reservedBit[e]=!0)},b.prototype.get=function(a,b){return this.data[a*this.size+b]},b.prototype.xor=function(a,b,c){this.data[a*this.size+b]^=c},b.prototype.isReserved=function(a,b){return this.reservedBit[a*this.size+b]},a.exports=b},46387:(a,b,c)=>{let d=c(29021),e=c(34447).O,f=c(88397);b.render=function(a,b){let c=f.getOptions(b),d=c.rendererOpts,g=f.getImageWidth(a.modules.size,c);d.width=g,d.height=g;let h=new e(d);return f.qrToImageData(h.data,a,c),h},b.renderToDataURL=function(a,c,d){void 0===d&&(d=c,c=void 0),b.renderToBuffer(a,c,function(a,b){a&&d(a);let c="data:image/png;base64,";c+=b.toString("base64"),d(null,c)})},b.renderToBuffer=function(a,c,d){void 0===d&&(d=c,c=void 0);let e=b.render(a,c),f=[];e.on("error",d),e.on("data",function(a){f.push(a)}),e.on("end",function(){d(null,Buffer.concat(f))}),e.pack()},b.renderToFile=function(a,c,e,f){void 0===f&&(f=e,e=void 0);let g=!1,h=(...a)=>{g||(g=!0,f.apply(null,a))},i=d.createWriteStream(a);i.on("error",h),i.on("close",h),b.renderToFileStream(i,c,e)},b.renderToFileStream=function(a,c,d){b.render(c,d).pack().pipe(a)}},49149:(a,b,c)=>{"use strict";let d=c(28354),e=c(27910),f=c(67269),g=c(98052),h=a.exports=function(a){e.call(this),this._packer=new g(a||{}),this._deflate=this._packer.createDeflate(),this.readable=!0};d.inherits(h,e),h.prototype.pack=function(a,b,c,d){this.emit("data",Buffer.from(f.PNG_SIGNATURE)),this.emit("data",this._packer.packIHDR(b,c)),d&&this.emit("data",this._packer.packGAMA(d));let e=this._packer.filterData(a,b,c);this._deflate.on("error",this.emit.bind(this,"error")),this._deflate.on("data",(function(a){this.emit("data",this._packer.packIDAT(a))}).bind(this)),this._deflate.on("end",(function(){this.emit("data",this._packer.packIEND()),this.emit("end")}).bind(this)),this._deflate.end(e)}},49998:(a,b,c)=>{"use strict";a.exports=c(40355)},52002:a=>{function b(){this.buffer=[],this.length=0}b.prototype={get:function(a){let b=Math.floor(a/8);return(this.buffer[b]>>>7-a%8&1)==1},put:function(a,b){for(let c=0;c<b;c++)this.putBit((a>>>b-c-1&1)==1)},getLengthInBits:function(){return this.length},putBit:function(a){let b=Math.floor(this.length/8);this.buffer.length<=b&&this.buffer.push(0),a&&(this.buffer[b]|=128>>>this.length%8),this.length++}},a.exports=b},52324:(a,b,c)=>{let d=c(58305),e=c(19477),f=c(58856),g=c(93669),h=c(83929),i=d.getBCHDigit(7973);function j(a,b){return g.getCharCountIndicator(a,b)+4}b.from=function(a,b){return h.isValid(a)?parseInt(a,10):b},b.getCapacity=function(a,b,c){if(!h.isValid(a))throw Error("Invalid QR Code version");void 0===c&&(c=g.BYTE);let f=(d.getSymbolTotalCodewords(a)-e.getTotalCodewordsCount(a,b))*8;if(c===g.MIXED)return f;let i=f-j(c,a);switch(c){case g.NUMERIC:return Math.floor(i/10*3);case g.ALPHANUMERIC:return Math.floor(i/11*2);case g.KANJI:return Math.floor(i/13);case g.BYTE:default:return Math.floor(i/8)}},b.getBestVersionForData=function(a,c){let d,e=f.from(c,f.M);if(Array.isArray(a)){if(a.length>1){for(let c=1;c<=40;c++)if(function(a,b){let c=0;return a.forEach(function(a){let d=j(a.mode,b);c+=d+a.getBitsLength()}),c}(a,c)<=b.getCapacity(c,e,g.MIXED))return c;return}if(0===a.length)return 1;d=a[0]}else d=a;return function(a,c,d){for(let e=1;e<=40;e++)if(c<=b.getCapacity(e,d,a))return e}(d.mode,d.getLength(),e)},b.getEncodedBits=function(a){if(!h.isValid(a)||a<7)throw Error("Invalid QR Code version");let b=a<<12;for(;d.getBCHDigit(b)-i>=0;)b^=7973<<d.getBCHDigit(b)-i;return a<<12|b}},55211:a=>{"use strict";a.exports=function(a,b,c){let d=a+b-c,e=Math.abs(d-a),f=Math.abs(d-b),g=Math.abs(d-c);return e<=f&&e<=g?a:f<=g?b:c}},55258:(a,b,c)=>{let d=c(58305),e=d.getBCHDigit(1335);b.getEncodedBits=function(a,b){let c=a.bit<<3|b,f=c<<10;for(;d.getBCHDigit(f)-e>=0;)f^=1335<<d.getBCHDigit(f)-e;return(c<<10|f)^21522}},57949:(a,b,c)=>{"use strict";let d=c(28354),e=c(27910),f=a.exports=function(){e.call(this),this._buffers=[],this._buffered=0,this._reads=[],this._paused=!1,this._encoding="utf8",this.writable=!0};d.inherits(f,e),f.prototype.read=function(a,b){this._reads.push({length:Math.abs(a),allowLess:a<0,func:b}),process.nextTick((function(){this._process(),this._paused&&this._reads&&this._reads.length>0&&(this._paused=!1,this.emit("drain"))}).bind(this))},f.prototype.write=function(a,b){let c;return this.writable?(c=Buffer.isBuffer(a)?a:Buffer.from(a,b||this._encoding),this._buffers.push(c),this._buffered+=c.length,this._process(),this._reads&&0===this._reads.length&&(this._paused=!0),this.writable&&!this._paused):(this.emit("error",Error("Stream not writable")),!1)},f.prototype.end=function(a,b){a&&this.write(a,b),this.writable=!1,this._buffers&&(0===this._buffers.length?this._end():(this._buffers.push(null),this._process()))},f.prototype.destroySoon=f.prototype.end,f.prototype._end=function(){this._reads.length>0&&this.emit("error",Error("Unexpected end of input")),this.destroy()},f.prototype.destroy=function(){this._buffers&&(this.writable=!1,this._reads=null,this._buffers=null,this.emit("close"))},f.prototype._processReadAllowingLess=function(a){this._reads.shift();let b=this._buffers[0];b.length>a.length?(this._buffered-=a.length,this._buffers[0]=b.slice(a.length),a.func.call(this,b.slice(0,a.length))):(this._buffered-=b.length,this._buffers.shift(),a.func.call(this,b))},f.prototype._processRead=function(a){this._reads.shift();let b=0,c=0,d=Buffer.alloc(a.length);for(;b<a.length;){let e=this._buffers[c++],f=Math.min(e.length,a.length-b);e.copy(d,b,0,f),b+=f,f!==e.length&&(this._buffers[--c]=e.slice(f))}c>0&&this._buffers.splice(0,c),this._buffered-=a.length,a.func.call(this,d)},f.prototype._process=function(){try{for(;this._buffered>0&&this._reads&&this._reads.length>0;){let a=this._reads[0];if(a.allowLess)this._processReadAllowingLess(a);else if(this._buffered>=a.length)this._processRead(a);else break}this._buffers&&!this.writable&&this._end()}catch(a){this.emit("error",a)}}},58305:(a,b)=>{let c,d=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];b.getSymbolSize=function(a){if(!a)throw Error('"version" cannot be null or undefined');if(a<1||a>40)throw Error('"version" should be in range from 1 to 40');return 4*a+17},b.getSymbolTotalCodewords=function(a){return d[a]},b.getBCHDigit=function(a){let b=0;for(;0!==a;)b++,a>>>=1;return b},b.setToSJISFunction=function(a){if("function"!=typeof a)throw Error('"toSJISFunc" is not a valid function.');c=a},b.isKanjiModeEnabled=function(){return void 0!==c},b.toSJIS=function(a){return c(a)}},58856:(a,b)=>{b.L={bit:1},b.M={bit:0},b.Q={bit:3},b.H={bit:2},b.isValid=function(a){return a&&void 0!==a.bit&&a.bit>=0&&a.bit<4},b.from=function(a,c){if(b.isValid(a))return a;try{if("string"!=typeof a)throw Error("Param is not a string");switch(a.toLowerCase()){case"l":case"low":return b.L;case"m":case"medium":return b.M;case"q":case"quartile":return b.Q;case"h":case"high":return b.H;default:throw Error("Unknown EC Level: "+a)}}catch(a){return c}}},58879:(a,b,c)=>{"use strict";let d=c(9709),e=c(80706);b.read=function(a,b){return d(a,b||{})},b.write=function(a,b){return e(a,b)}},59725:(a,b)=>{"use strict";let c=[{x:[0],y:[0]},{x:[4],y:[0]},{x:[0,4],y:[4]},{x:[2,6],y:[0,4]},{x:[0,2,4,6],y:[2,6]},{x:[1,3,5,7],y:[0,2,4,6]},{x:[0,1,2,3,4,5,6,7],y:[1,3,5,7]}];b.getImagePasses=function(a,b){let d=[],e=a%8,f=b%8,g=(a-e)/8,h=(b-f)/8;for(let a=0;a<c.length;a++){let b=c[a],i=g*b.x.length,j=h*b.y.length;for(let a=0;a<b.x.length;a++)if(b.x[a]<e)i++;else break;for(let a=0;a<b.y.length;a++)if(b.y[a]<f)j++;else break;i>0&&j>0&&d.push({width:i,height:j,index:a})}return d},b.getInterlaceIterator=function(a){return function(b,d,e){let f=b%c[e].x.length,g=(b-f)/c[e].x.length*8+c[e].x[f],h=d%c[e].y.length;return 4*g+((d-h)/c[e].y.length*8+c[e].y[h])*a*4}}},61345:(a,b)=>{b.render=function(a,b,c){let d=a.modules.size,e=a.modules.data,f="\x1b[47m \x1b[0m",g="",h=Array(d+3).join(f),i=[,,].join(f);g+=h+"\n";for(let a=0;a<d;++a){g+=f;for(let b=0;b<d;b++)g+=e[a*d+b]?"\x1b[40m \x1b[0m":f;g+=i+"\n"}return g+=h+"\n","function"==typeof c&&c(null,g),g}},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},64323:(a,b)=>{let c="[0-9]+",d="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+",e="(?:(?![A-Z0-9 $%*+\\-./:]|"+(d=d.replace(/u/g,"\\u"))+")(?:.|[\r\n]))+";b.KANJI=RegExp(d,"g"),b.BYTE_KANJI=RegExp("[^A-Z0-9 $%*+\\-./:]+","g"),b.BYTE=RegExp(e,"g"),b.NUMERIC=RegExp(c,"g"),b.ALPHANUMERIC=RegExp("[A-Z $%*+\\-./:]+","g");let f=RegExp("^"+d+"$"),g=RegExp("^"+c+"$"),h=RegExp("^[A-Z0-9 $%*+\\-./:]+$");b.testKanji=function(a){return f.test(a)},b.testNumeric=function(a){return g.test(a)},b.testAlphanumeric=function(a){return h.test(a)}},64424:(a,b,c)=>{let d=c(93669),e=c(58305);function f(a){this.mode=d.KANJI,this.data=a}f.getBitsLength=function(a){return 13*a},f.prototype.getLength=function(){return this.data.length},f.prototype.getBitsLength=function(){return f.getBitsLength(this.data.length)},f.prototype.write=function(a){let b;for(b=0;b<this.data.length;b++){let c=e.toSJIS(this.data[b]);if(c>=33088&&c<=40956)c-=33088;else if(c>=57408&&c<=60351)c-=49472;else throw Error("Invalid SJIS character: "+this.data[b]+"\nMake sure your charset is UTF-8");c=(c>>>8&255)*192+(255&c),a.put(c,13)}},a.exports=f},66530:(a,b,c)=>{let d=c(61345),e=c(86491);b.render=function(a,b,c){return b&&b.small?e.render(a,b,c):d.render(a,b,c)}},67269:a=>{"use strict";a.exports={PNG_SIGNATURE:[137,80,78,71,13,10,26,10],TYPE_IHDR:0x49484452,TYPE_IEND:0x49454e44,TYPE_IDAT:0x49444154,TYPE_PLTE:0x504c5445,TYPE_tRNS:0x74524e53,TYPE_gAMA:0x67414d41,COLORTYPE_GRAYSCALE:0,COLORTYPE_PALETTE:1,COLORTYPE_COLOR:2,COLORTYPE_ALPHA:4,COLORTYPE_PALETTE_COLOR:3,COLORTYPE_COLOR_ALPHA:6,COLORTYPE_TO_BPP_MAP:{0:1,2:3,3:1,4:2,6:4},GAMMA_DIVISION:1e5}},70722:a=>{"use strict";a.exports=require("next/dist/shared/lib/invariant-error")},72081:(a,b,c)=>{let d=c(88397),e={WW:" ",WB:"▄",BB:"█",BW:"▀"},f={BB:" ",BW:"▄",WW:"█",WB:"▀"};b.render=function(a,b,c){let g=d.getOptions(b),h=e;("#ffffff"===g.color.dark.hex||"#000000"===g.color.light.hex)&&(h=f);let i=a.modules.size,j=a.modules.data,k="",l=Array(i+2*g.margin+1).join(h.WW);l=Array(g.margin/2+1).join(l+"\n");let m=Array(g.margin+1).join(h.WW);k+=l;for(let a=0;a<i;a+=2){k+=m;for(let b=0;b<i;b++){var n;let c=j[a*i+b],d=j[(a+1)*i+b];k+=(n=h,c&&d?n.BB:c&&!d?n.BW:!c&&d?n.WB:n.WW)}k+=m+"\n"}return k+=l.slice(0,-1),"function"==typeof c&&c(null,k),k},b.renderToFile=function(a,d,e,f){void 0===f&&(f=e,e=void 0);let g=c(29021),h=b.render(d,e);g.writeFile(a,h,f)}},73136:a=>{"use strict";a.exports=require("node:url")},74075:a=>{"use strict";a.exports=require("zlib")},76708:a=>{a.exports=function(){return"function"==typeof Promise&&Promise.prototype&&Promise.prototype.then}},76760:a=>{"use strict";a.exports=require("node:path")},77068:a=>{"use strict";a.exports=require("next/dist/shared/lib/size-limit")},78908:a=>{"use strict";a.exports=import("shiki")},79428:a=>{"use strict";a.exports=require("buffer")},80183:(a,b,c)=>{"use strict";let d=c(12412).ok,e=c(74075),f=c(28354),g=c(79428).kMaxLength;function h(a){if(!(this instanceof h))return new h(a);a&&a.chunkSize<e.Z_MIN_CHUNK&&(a.chunkSize=e.Z_MIN_CHUNK),e.Inflate.call(this,a),this._offset=void 0===this._offset?this._outOffset:this._offset,this._buffer=this._buffer||this._outBuffer,a&&null!=a.maxLength&&(this._maxLength=a.maxLength)}function i(a,b){b&&process.nextTick(b),a._handle&&(a._handle.close(),a._handle=null)}function j(a,b){var c=new h(b),d=a;if("string"==typeof d&&(d=Buffer.from(d)),!(d instanceof Buffer))throw TypeError("Not a string or buffer");let f=c._finishFlushFlag;return null==f&&(f=e.Z_FINISH),c._processChunk(d,f)}h.prototype._processChunk=function(a,b,c){let f,h;if("function"==typeof c)return e.Inflate._processChunk.call(this,a,b,c);let j=this,k=a&&a.length,l=this._chunkSize-this._offset,m=this._maxLength,n=0,o=[],p=0;this.on("error",function(a){f=a}),d(this._handle,"zlib binding closed");do h=(h=this._handle.writeSync(b,a,n,k,this._buffer,this._offset,l))||this._writeState;while(!this._hadError&&function(a,b){if(j._hadError)return;let c=l-b;if(d(c>=0,"have should not go down"),c>0){let a=j._buffer.slice(j._offset,j._offset+c);if(j._offset+=c,a.length>m&&(a=a.slice(0,m)),o.push(a),p+=a.length,0==(m-=a.length))return!1}return(0===b||j._offset>=j._chunkSize)&&(l=j._chunkSize,j._offset=0,j._buffer=Buffer.allocUnsafe(j._chunkSize)),0===b&&(n+=k-a,k=a,!0)}(h[0],h[1]));if(this._hadError)throw f;if(p>=g)throw i(this),RangeError("Cannot create final Buffer. It would be larger than 0x"+g.toString(16)+" bytes");let q=Buffer.concat(o,p);return i(this),q},f.inherits(h,e.Inflate),a.exports=b=j,b.Inflate=h,b.createInflate=function(a){return new h(a)},b.inflateSync=j},80706:(a,b,c)=>{"use strict";let d=!0,e=c(74075);e.deflateSync||(d=!1);let f=c(67269),g=c(98052);a.exports=function(a,b){if(!d)throw Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let c=new g(b||{}),h=[];h.push(Buffer.from(f.PNG_SIGNATURE)),h.push(c.packIHDR(a.width,a.height)),a.gamma&&h.push(c.packGAMA(a.gamma));let i=c.filterData(a.data,a.width,a.height),j=e.deflateSync(i,c.getDeflateOptions());if(i=null,!j||!j.length)throw Error("bad png - invalid compressed data response");return h.push(c.packIDAT(j)),h.push(c.packIEND()),Buffer.concat(h)}},81754:(a,b)=>{let c=new Uint8Array(512),d=new Uint8Array(256),e=1;for(let a=0;a<255;a++)c[a]=e,d[e]=a,256&(e<<=1)&&(e^=285);for(let a=255;a<512;a++)c[a]=c[a-255];b.log=function(a){if(a<1)throw Error("log("+a+")");return d[a]},b.exp=function(a){return c[a]},b.mul=function(a,b){return 0===a||0===b?0:c[d[a]+d[b]]}},81769:a=>{"use strict";let b=a.exports=function(a){this._buffer=a,this._reads=[]};b.prototype.read=function(a,b){this._reads.push({length:Math.abs(a),allowLess:a<0,func:b})},b.prototype.process=function(){for(;this._reads.length>0&&this._buffer.length;){let a=this._reads[0];if(this._buffer.length&&(this._buffer.length>=a.length||a.allowLess)){this._reads.shift();let b=this._buffer;this._buffer=b.slice(a.length),a.func.call(this,b.slice(0,a.length))}else break}return this._reads.length>0?Error("There are some read requests waitng on finished stream"):this._buffer.length>0?Error("unrecognised content at end of stream"):void 0}},83572:(a,b,c)=>{"use strict";c.r(b),c.d(b,{__next_app__:()=>M,handler:()=>O,routeModule:()=>N});var d=c(7553),e=c(84006),f=c(67798),g=c(34775),h=c(99373),i=c(73461),j=c(1020),k=c(26349),l=c(54365),m=c(16023),n=c(63747),o=c(24235),p=c(23938),q=c(261),r=c(66758),s=c(77243),t=c(26713),u=c(37527),v=c(22820),w=c(88216),x=c(47929),y=c(79551),z=c(71797),A=c(89125),B=c(86439),C=c(77068),D=c(27269),E=c(61287),F=c(81494),G=c(70722),H=c(70753),I=c(43954),J=c(17891),K={};for(let a in E)0>["default","__next_app__","routeModule","handler"].indexOf(a)&&(K[a]=()=>E[a]);c.d(b,K);let L={children:["",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(c.bind(c,99647)),"/home/runner/work/annovibe/annovibe/app/page.tsx"],metadata:{icon:[async a=>(await Promise.resolve().then(c.bind(c,86364))).default(a)],apple:[],openGraph:[],twitter:[],manifest:void 0}}]},{layout:[()=>Promise.resolve().then(c.bind(c,32056)),"/home/runner/work/annovibe/annovibe/app/layout.tsx"],"global-error":[()=>Promise.resolve().then(c.t.bind(c,95547,23)),"next/dist/client/components/builtin/global-error.js"],"not-found":[()=>Promise.resolve().then(c.t.bind(c,55091,23)),"next/dist/client/components/builtin/not-found.js"],forbidden:[()=>Promise.resolve().then(c.t.bind(c,45270,23)),"next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>Promise.resolve().then(c.t.bind(c,28193,23)),"next/dist/client/components/builtin/unauthorized.js"],metadata:{icon:[async a=>(await Promise.resolve().then(c.bind(c,86364))).default(a)],apple:[],openGraph:[],twitter:[],manifest:void 0}},[]]}.children,M={require:c,loadChunk:()=>Promise.resolve()},N=new d.AppPageRouteModule({definition:{kind:e.RouteKind.APP_PAGE,page:"/page",pathname:"/",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:L},distDir:".next",relativeProjectDir:""});async function O(a,b,d){var K,P,Q,R,S;d.requestMeta&&(0,h.setRequestMeta)(a,d.requestMeta),N.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let T=!!(0,h.getRequestMeta)(a,"minimalMode"),U="/page";"/index"===U&&(U="/");let V=await N.prepare(a,b,{srcPage:U,multiZoneDraftMode:!1});if(!V)return b.statusCode=400,b.end("Bad Request"),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;let{buildId:W,query:X,params:Y,pageIsDynamic:Z,buildManifest:$,nextFontManifest:_,reactLoadableManifest:aa,serverActionsManifest:ab,clientReferenceManifest:ac,subresourceIntegrityManifest:ad,prerenderManifest:ae,isDraftMode:af,resolvedPathname:ag,revalidateOnlyGenerated:ah,routerServerContext:ai,nextConfig:aj,parsedUrl:ak,interceptionRoutePatterns:al,deploymentId:am,clientAssetToken:an}=V,ao=(0,q.normalizeAppPath)(U),{isOnDemandRevalidate:ap}=V,aq=aj.experimental.ppr&&!aj.cacheComponents&&(0,I.isInterceptionRouteAppPath)(ag)?null:N.match(ag,ae),ar=(null==aq?void 0:aq.route)??null,as=!!ae.routes[ag],at=a.headers["user-agent"]||"",au=(0,t.getBotType)(at),av=(0,p.isHtmlBotRequest)(a),aw=(0,h.getRequestMeta)(a,"isPrefetchRSCRequest")??"1"===a.headers[s.NEXT_ROUTER_PREFETCH_HEADER],ax=(0,h.getRequestMeta)(a,"isRSCRequest")??!!a.headers[s.RSC_HEADER],ay=(0,r.getIsPossibleServerAction)(a),az=(0,m.checkIsAppPPREnabled)(aj.experimental.ppr),aA=a.headers[x.NEXT_RESUME_STATE_LENGTH_HEADER];if(!(0,h.getRequestMeta)(a,"postponed")&&T&&az&&ay&&aA&&"string"==typeof aA){let e=parseInt(aA,10),{maxPostponedStateSize:f,maxPostponedStateSizeBytes:g}=(0,D.getMaxPostponedStateSize)(aj.experimental.maxPostponedStateSize);if(!isNaN(e)&&e>0){if(e>g)return b.statusCode=413,b.end((0,D.getPostponedStateExceededErrorMessage)(f)),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;let i="1 MB",j=(null==(S=aj.experimental.serverActions)?void 0:S.bodySizeLimit)??i,k=e+(j!==i?c(95726).parse(j):1048576),l=await (0,D.readBodyWithSizeLimit)(a,k);if(null===l)return b.statusCode=413,b.end("Request body exceeded limit. To configure the body size limit for Server Actions, see: https://nextjs.org/docs/app/api-reference/next-config-js/serverActions#bodysizelimit"),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;if(l.length>=e){let b=l.subarray(0,e).toString("utf8");(0,h.addRequestMeta)(a,"postponed",b);let c=l.subarray(e);(0,h.addRequestMeta)(a,"actionBody",c)}else throw Object.defineProperty(Error(`invariant: expected ${e} bytes of postponed state but only received ${l.length} bytes`),"__NEXT_ERROR_CODE",{value:"E979",enumerable:!1,configurable:!0})}}if(!(0,h.getRequestMeta)(a,"postponed")&&az&&"1"===a.headers[x.NEXT_RESUME_HEADER]&&"POST"===a.method){let{maxPostponedStateSize:c,maxPostponedStateSizeBytes:e}=(0,D.getMaxPostponedStateSize)(aj.experimental.maxPostponedStateSize),f=await (0,D.readBodyWithSizeLimit)(a,e);if(null===f)return b.statusCode=413,b.end((0,D.getPostponedStateExceededErrorMessage)(c)),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;let g=f.toString("utf8");(0,h.addRequestMeta)(a,"postponed",g)}let aB=!0===N.isDev||!0===aj.experimental.exposeTestingApiInProductionBuild,aC=aB&&("1"===a.headers[s.NEXT_INSTANT_PREFETCH_HEADER]||void 0===a.headers[s.RSC_HEADER]&&"string"==typeof a.headers.cookie&&a.headers.cookie.includes(s.NEXT_INSTANT_TEST_COOKIE+"=")),aD=(az||aC)&&((null==(K=ae.routes[ao]??ae.dynamicRoutes[ao])?void 0:K.renderingMode)==="PARTIALLY_STATIC"||aC&&(aB||(null==ai?void 0:ai.experimentalTestProxy)===!0)),aE=aC&&aD,aF=aE&&!0===N.isDev,aG=!1,aH=aD?(0,h.getRequestMeta)(a,"postponed"):void 0,aI=null==(P=ae.routes[ag])?void 0:P.prefetchDataRoute,aJ=aD&&ax&&!aw&&!aI;T&&(aJ=aJ&&!!aH);let aK=(0,h.getRequestMeta)(a,"segmentPrefetchRSCRequest"),aL=(!au||!aD)&&(!at||(0,p.shouldServeStreamingMetadata)(at,aj.htmlLimitedBots)),aM=!!((ar||as||ae.routes[ao])&&!(au&&aD)),aN=aD&&!0===aj.cacheComponents,aO=!0===N.isDev||!aM||"string"==typeof aH||(aN&&(0,h.getRequestMeta)(a,"onCacheEntryV2")?aJ&&!T:aJ),aP=!!au&&aD,aQ=(null==ar?void 0:ar.remainingPrerenderableParams)??[],aR=(null==ar?void 0:ar.fallback)===null&&((null==(Q=ar.fallbackRootParams)?void 0:Q.length)??0)>0,aS=null;if(!af&&aM&&!aO&&!ay&&!aH&&!aJ){let a=aq?"string"==typeof(null==ar?void 0:ar.fallback)?ar.fallback:aq.source:null;if(!0===aj.experimental.partialFallbacks&&a&&(null==ar?void 0:ar.fallbackRouteParams)&&!aR){if(aQ.length>0){let b,c=(b=new Map(aQ.map(a=>[a.paramName,a])),a.split("/").map(a=>{let c=(0,J.getSegmentParam)(a);if(!c)return a;let d=b.get(c.paramName);if(!d)return a;let e=null==Y?void 0:Y[d.paramName];if(!e)return a;let f=Array.isArray(e)?e.map(a=>encodeURIComponent(a)).join("/"):encodeURIComponent(e);return a.replace(function(a){let{repeat:b,optional:c}=(0,J.getParamProperties)(a.paramType);return c?`[[...${a.paramName}]]`:b?`[...${a.paramName}]`:`[${a.paramName}]`}(d),f)}).join("/")||"/");aS=c!==a?c:null}}else aS=ag}let aT=aS;!aT&&(N.isDev||aM&&Z&&(null==ar?void 0:ar.fallbackRouteParams)&&!ay)&&(aT=ag),N.isDev||af||!aM||!ax||aJ||(0,k.d)(a.headers);let aU={...E,tree:L,handler:O,routeModule:N,__next_app__:M};ab&&ac&&(0,o.setManifestsSingleton)({page:U,clientReferenceManifest:ac,serverActionsManifest:ab});let aV=a.method||"GET",aW=(0,g.getTracer)(),aX=aW.getActiveScopeSpan(),aY=!!(null==ai?void 0:ai.isWrappedByNextServer),aZ=!0===aj.experimental.partialFallbacks&&aQ.length>0?(null==ar||null==(R=ar.fallbackRouteParams)?void 0:R.filter(a=>!aQ.some(b=>b.paramName===a.paramName)))??[]:[],a$=async()=>((null==ai?void 0:ai.render404)?await ai.render404(a,b,ak,!1):b.end("This page could not be found"),null);try{let f,k=N.getVaryHeader(ag,al);b.setHeader("Vary",k);let m=async(c,d)=>{let e=new l.NodeNextRequest(a),g=new l.NodeNextResponse(b);return N.render(e,g,d).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let a=aW.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==i.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let d=a.get("next.route");if(d){let a=`${aV} ${d}`;c.setAttributes({"next.route":d,"http.route":d,"next.span_name":a}),c.updateName(a),f&&f!==c&&(f.setAttribute("http.route",d),f.updateName(a))}else c.updateName(`${aV} ${U}`)})},o=(0,h.getRequestMeta)(a,"incrementalCache")||await N.getIncrementalCache(a,aj,ae,T);null==o||o.resetRequestCache(),globalThis.__incrementalCache=o;let p=async({span:e,postponed:f,fallbackRouteParams:g,forceStaticRender:i})=>{let k={query:X,params:Y,page:ao,sharedContext:{buildId:W,deploymentId:am,clientAssetToken:an},serverComponentsHmrCache:(0,h.getRequestMeta)(a,"serverComponentsHmrCache"),fallbackRouteParams:g,renderOpts:{App:()=>null,Document:()=>null,pageConfig:{},ComponentMod:aU,Component:(0,j.T)(aU),params:Y,routeModule:N,page:U,postponed:f,shouldWaitOnAllReady:aP,serveStreamingMetadata:aL,supportsDynamicResponse:"string"==typeof f||aO,buildManifest:$,nextFontManifest:_,reactLoadableManifest:aa,subresourceIntegrityManifest:ad,setCacheStatus:null==ai?void 0:ai.setCacheStatus,setIsrStatus:null==ai?void 0:ai.setIsrStatus,setReactDebugChannel:null==ai?void 0:ai.setReactDebugChannel,sendErrorsToBrowser:null==ai?void 0:ai.sendErrorsToBrowser,dir:c(33873).join(process.cwd(),N.relativeProjectDir),isDraftMode:af,botType:au,isOnDemandRevalidate:ap,isPossibleServerAction:ay,assetPrefix:aj.assetPrefix,nextConfigOutput:aj.output,crossOrigin:aj.crossOrigin,trailingSlash:aj.trailingSlash,images:aj.images,previewProps:ae.preview,enableTainting:aj.experimental.taint,htmlLimitedBots:aj.htmlLimitedBots,reactMaxHeadersLength:aj.reactMaxHeadersLength,multiZoneDraftMode:!1,incrementalCache:o,cacheLifeProfiles:aj.cacheLife,basePath:aj.basePath,serverActions:aj.experimental.serverActions,logServerFunctions:"object"==typeof aj.logging&&!!aj.logging.serverFunctions,...aE||aF||aG?{isBuildTimePrerendering:!0,supportsDynamicResponse:!1,isStaticGeneration:!0,isDebugDynamicAccesses:aF}:{},cacheComponents:!!aj.cacheComponents,experimental:{isRoutePPREnabled:aD,expireTime:aj.expireTime,staleTimes:aj.experimental.staleTimes,dynamicOnHover:!!aj.experimental.dynamicOnHover,optimisticRouting:!!aj.experimental.optimisticRouting,inlineCss:!!aj.experimental.inlineCss,prefetchInlining:aj.experimental.prefetchInlining??!1,authInterrupts:!!aj.experimental.authInterrupts,cachedNavigations:!!aj.experimental.cachedNavigations,clientTraceMetadata:aj.experimental.clientTraceMetadata||[],clientParamParsingOrigins:aj.experimental.clientParamParsingOrigins,maxPostponedStateSizeBytes:(0,C.parseMaxPostponedStateSize)(aj.experimental.maxPostponedStateSize)},waitUntil:d.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:()=>{},onInstrumentationRequestError:(b,c,d,e)=>N.onRequestError(a,b,d,e,ai),err:(0,h.getRequestMeta)(a,"invokeError")}};i&&(k.renderOpts.supportsDynamicResponse=!1);let l=await m(e,k),{metadata:n}=l,{cacheControl:p,headers:q={},fetchTags:r,fetchMetrics:s}=n;if(r&&(q[x.NEXT_CACHE_TAGS_HEADER]=r),a.fetchMetrics=s,aM&&(null==p?void 0:p.revalidate)===0&&!N.isDev&&!aD){let a=n.staticBailoutInfo,b=Object.defineProperty(Error(`Page changed from static to dynamic at runtime ${ag}${(null==a?void 0:a.description)?`, reason: ${a.description}`:""}
|
|
45
|
+
see more here https://nextjs.org/docs/messages/app-static-to-dynamic-error`),"__NEXT_ERROR_CODE",{value:"E132",enumerable:!1,configurable:!0});if(null==a?void 0:a.stack){let c=a.stack;b.stack=b.message+c.substring(c.indexOf("\n"))}throw b}return{value:{kind:u.CachedRouteKind.APP_PAGE,html:l,headers:q,rscData:n.flightData,postponed:n.postponed,status:n.statusCode,segmentData:n.segmentData},cacheControl:p}},q=async({hasResolved:c,previousCacheEntry:f,isRevalidating:g,span:i,forceStaticRender:j=!1})=>{let k,l=!1===N.isDev,m=c||b.writableEnded;if(ap&&ah&&!f&&!T)return(null==ai?void 0:ai.render404)?await ai.render404(a,b):(b.statusCode=404,b.end("This page could not be found")),null;if(ar&&(k=(0,v.parseFallbackField)(ar.fallback)),!0===aj.experimental.partialFallbacks&&(null==ar?void 0:ar.fallback)===null&&!aR&&aQ.length>0&&(k=v.FallbackMode.PRERENDER),k===v.FallbackMode.PRERENDER&&(0,t.isBot)(at)&&(!aD||av)&&(k=v.FallbackMode.BLOCKING_STATIC_RENDER),(null==f?void 0:f.isStale)===-1&&(ap=!0),ap&&(k!==v.FallbackMode.NOT_FOUND||f)&&(k=v.FallbackMode.BLOCKING_STATIC_RENDER),!T&&k!==v.FallbackMode.BLOCKING_STATIC_RENDER&&aT&&!m&&!af&&Z&&(l||!as)){if((l||ar)&&k===v.FallbackMode.NOT_FOUND){if(aj.adapterPath)return await a$();throw new B.NoFallbackError}if(aD&&(aj.cacheComponents?!aJ:!ax)){let b=l&&"string"==typeof(null==ar?void 0:ar.fallback)?ar.fallback:ao,f=(l||aE)&&(null==ar?void 0:ar.fallbackRouteParams)?(0,n.createOpaqueFallbackRouteParams)(ar.fallbackRouteParams):aG?(0,n.getFallbackRouteParams)(ao,N):null;aE&&f&&(0,h.addRequestMeta)(a,"fallbackParams",f);let g=await N.handleResponse({cacheKey:b,req:a,nextConfig:aj,routeKind:e.RouteKind.APP_PAGE,isFallback:!0,prerenderManifest:ae,isRoutePPREnabled:aD,responseGenerator:async()=>p({span:i,postponed:void 0,fallbackRouteParams:f,forceStaticRender:!0}),waitUntil:d.waitUntil,isMinimalMode:T});if(null===g)return null;if(g)return T||!aD||!(aQ.length>0)||!0!==aj.experimental.partialFallbacks||!aS||!o||ap||aG||aB||aC||aw||(0,H.scheduleOnNextTick)(async()=>{let b=N.getResponseCache(a);try{await b.revalidate(aS,o,aD,!1,a=>p({span:a.span,postponed:void 0,fallbackRouteParams:aZ.length>0?(0,n.createOpaqueFallbackRouteParams)(aZ):null,forceStaticRender:!0}),null,c,d.waitUntil)}catch(a){console.error("Error revalidating the page in the background",a)}}),delete g.cacheControl,g}}let r=ap||g||!aH?void 0:aH;if(aN&&!T&&o&&(aJ||ay)&&!j){let b=await o.get(ag,{kind:u.IncrementalCacheKind.APP_PAGE,isRoutePPREnabled:!0,isFallback:!1});b&&b.value&&b.value.kind===u.CachedRouteKind.APP_PAGE&&(r=b.value.postponed,b&&(-1===b.isStale||!0===b.isStale)&&(0,H.scheduleOnNextTick)(async()=>{let b=N.getResponseCache(a);try{await b.revalidate(ag,o,aD,!1,a=>q({...a,forceStaticRender:!0}),null,c,d.waitUntil)}catch(a){console.error("Error revalidating the page in the background",a)}}))}if((aE||aF)&&void 0!==r)return{cacheControl:{revalidate:1,expire:void 0},value:{kind:u.CachedRouteKind.PAGES,html:w.default.EMPTY,pageData:{},headers:void 0,status:void 0}};let s=(l&&(0,h.getRequestMeta)(a,"renderFallbackShell")||aE&&!as)&&(null==ar?void 0:ar.fallbackRouteParams)?(0,n.createOpaqueFallbackRouteParams)(ar.fallbackRouteParams):aG?(0,n.getFallbackRouteParams)(ao,N):null;if((l||aE)&&aj.cacheComponents&&!as&&(null==ar?void 0:ar.fallbackRouteParams)){let b=(0,n.createOpaqueFallbackRouteParams)(ar.fallbackRouteParams);b&&(0,h.addRequestMeta)(a,"fallbackParams",b)}return p({span:i,postponed:r,fallbackRouteParams:s,forceStaticRender:j})},r=async c=>{var f,g,i,j,k;let l,m=await N.handleResponse({cacheKey:aS,responseGenerator:a=>q({span:c,...a}),routeKind:e.RouteKind.APP_PAGE,isOnDemandRevalidate:ap,isRoutePPREnabled:aD,req:a,nextConfig:aj,prerenderManifest:ae,waitUntil:d.waitUntil,isMinimalMode:T});if(af&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate"),N.isDev&&b.setHeader("Cache-Control","no-cache, must-revalidate"),!m){if(aS)throw Object.defineProperty(Error("invariant: cache entry required but not generated"),"__NEXT_ERROR_CODE",{value:"E62",enumerable:!1,configurable:!0});return null}if((null==(f=m.value)?void 0:f.kind)!==u.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant app-page handler received invalid cache entry ${null==(i=m.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E707",enumerable:!1,configurable:!0});let n="string"==typeof m.value.postponed;ax&&!ay&&am&&b.setHeader(x.NEXT_NAV_DEPLOYMENT_ID_HEADER,am),aM&&!aJ&&(!n||aw)&&(T||b.setHeader("x-nextjs-cache",ap?"REVALIDATED":m.isMiss?"MISS":m.isStale?"STALE":"HIT"),b.setHeader(s.NEXT_IS_PRERENDER_HEADER,"1"));let{value:o}=m;if(aH)l={revalidate:0,expire:void 0};else if(aJ)l={revalidate:0,expire:void 0};else if(!N.isDev)if(af)l={revalidate:0,expire:void 0};else if(aM){if(m.cacheControl)if("number"==typeof m.cacheControl.revalidate){if(m.cacheControl.revalidate<1)throw Object.defineProperty(Error(`Invalid revalidate configuration provided: ${m.cacheControl.revalidate} < 1`),"__NEXT_ERROR_CODE",{value:"E22",enumerable:!1,configurable:!0});l={revalidate:m.cacheControl.revalidate,expire:(null==(j=m.cacheControl)?void 0:j.expire)??aj.expireTime}}else l={revalidate:x.CACHE_ONE_YEAR_SECONDS,expire:void 0}}else b.getHeader("Cache-Control")||(l={revalidate:0,expire:void 0});if(m.cacheControl=l,"string"==typeof aK&&(null==o?void 0:o.kind)===u.CachedRouteKind.APP_PAGE&&o.segmentData){b.setHeader(s.NEXT_DID_POSTPONE_HEADER,"2");let c=null==(k=o.headers)?void 0:k[x.NEXT_CACHE_TAGS_HEADER];T&&aM&&c&&"string"==typeof c&&b.setHeader(x.NEXT_CACHE_TAGS_HEADER,c);let d=o.segmentData.get(aK);return void 0!==d?(0,A.sendRenderResult)({req:a,res:b,generateEtags:aj.generateEtags,poweredByHeader:aj.poweredByHeader,result:w.default.fromStatic(d,s.RSC_CONTENT_TYPE_HEADER),cacheControl:m.cacheControl}):(b.statusCode=204,(0,A.sendRenderResult)({req:a,res:b,generateEtags:aj.generateEtags,poweredByHeader:aj.poweredByHeader,result:w.default.EMPTY,cacheControl:m.cacheControl}))}let r=aN?(0,h.getRequestMeta)(a,"onCacheEntryV2")??(0,h.getRequestMeta)(a,"onCacheEntry"):(0,h.getRequestMeta)(a,"onCacheEntry");if(r&&await r(m,{url:(0,h.getRequestMeta)(a,"initURL")??a.url}))return null;if(o.headers){let a={...o.headers};for(let[c,d]of(T&&aM||delete a[x.NEXT_CACHE_TAGS_HEADER],Object.entries(a)))if(void 0!==d)if(Array.isArray(d))for(let a of d)b.appendHeader(c,a);else"number"==typeof d&&(d=d.toString()),b.appendHeader(c,d)}let t=null==(g=o.headers)?void 0:g[x.NEXT_CACHE_TAGS_HEADER];if(T&&aM&&t&&"string"==typeof t&&b.setHeader(x.NEXT_CACHE_TAGS_HEADER,t),!o.status||ax&&aD||(b.statusCode=o.status),!T&&o.status&&F.RedirectStatusCode[o.status]&&ax&&(b.statusCode=200),n&&!aJ&&b.setHeader(s.NEXT_DID_POSTPONE_HEADER,"1"),ax&&!af){if(void 0===o.rscData){if(o.html.contentType!==s.RSC_CONTENT_TYPE_HEADER)if(aj.cacheComponents)return b.statusCode=404,(0,A.sendRenderResult)({req:a,res:b,generateEtags:aj.generateEtags,poweredByHeader:aj.poweredByHeader,result:w.default.EMPTY,cacheControl:m.cacheControl});else throw Object.defineProperty(new G.InvariantError(`Expected RSC response, got ${o.html.contentType}`),"__NEXT_ERROR_CODE",{value:"E789",enumerable:!1,configurable:!0});return(0,A.sendRenderResult)({req:a,res:b,generateEtags:aj.generateEtags,poweredByHeader:aj.poweredByHeader,result:o.html,cacheControl:m.cacheControl})}return(0,A.sendRenderResult)({req:a,res:b,generateEtags:aj.generateEtags,poweredByHeader:aj.poweredByHeader,result:w.default.fromStatic(o.rscData,s.RSC_CONTENT_TYPE_HEADER),cacheControl:m.cacheControl})}let v=o.html;if(aC&&aE){let c=!0===N.isDev?crypto.randomUUID():null;return v.pipeThrough((0,z.createInstantTestScriptInsertionTransformStream)(c)),(0,A.sendRenderResult)({req:a,res:b,generateEtags:aj.generateEtags,poweredByHeader:aj.poweredByHeader,result:v,cacheControl:{revalidate:0,expire:void 0}})}if(!n||T||ax)return(0,A.sendRenderResult)({req:a,res:b,generateEtags:aj.generateEtags,poweredByHeader:aj.poweredByHeader,result:v,cacheControl:m.cacheControl});if(aE||aF)return v.push(new ReadableStream({start(a){a.enqueue(y.ENCODED_TAGS.CLOSED.BODY_AND_HTML),a.close()}})),(0,A.sendRenderResult)({req:a,res:b,generateEtags:aj.generateEtags,poweredByHeader:aj.poweredByHeader,result:v,cacheControl:{revalidate:0,expire:void 0}});let B=new TransformStream;return v.push(B.readable),p({span:c,postponed:o.postponed,fallbackRouteParams:null,forceStaticRender:!1}).then(async a=>{var b,c;if(!a)throw Object.defineProperty(Error("Invariant: expected a result to be returned"),"__NEXT_ERROR_CODE",{value:"E463",enumerable:!1,configurable:!0});if((null==(b=a.value)?void 0:b.kind)!==u.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant: expected a page response, got ${null==(c=a.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E305",enumerable:!1,configurable:!0});await a.value.html.pipeTo(B.writable)}).catch(a=>{B.writable.abort(a).catch(a=>{console.error("couldn't abort transformer",a)})}),(0,A.sendRenderResult)({req:a,res:b,generateEtags:aj.generateEtags,poweredByHeader:aj.poweredByHeader,result:v,cacheControl:{revalidate:0,expire:void 0}})};if(!aY||!aX)return f=aW.getActiveScopeSpan(),await aW.withPropagatedContext(a.headers,()=>aW.trace(i.BaseServerSpan.handleRequest,{spanName:`${aV} ${U}`,kind:g.SpanKind.SERVER,attributes:{"http.method":aV,"http.target":a.url}},r),void 0,!aY);await r(aX)}catch(b){throw b instanceof B.NoFallbackError||await N.onRequestError(a,b,{routerKind:"App Router",routePath:U,routeType:"render",revalidateReason:(0,f.c)({isStaticGeneration:aM,isOnDemandRevalidate:ap})},!1,ai),b}}},83670:a=>{"use strict";a.exports=function(a,b){let c=b.depth,d=b.width,e=b.height,f=b.colorType,g=b.transColor,h=b.palette,i=a;return 3===f?!function(a,b,c,d,e){let f=0;for(let g=0;g<d;g++)for(let d=0;d<c;d++){let c=e[a[f]];if(!c)throw Error("index "+a[f]+" not in palette");for(let a=0;a<4;a++)b[f+a]=c[a];f+=4}}(a,i,d,e,h):(g&&function(a,b,c,d,e){let f=0;for(let g=0;g<d;g++)for(let d=0;d<c;d++){let c=!1;if(1===e.length?e[0]===a[f]&&(c=!0):e[0]===a[f]&&e[1]===a[f+1]&&e[2]===a[f+2]&&(c=!0),c)for(let a=0;a<4;a++)b[f+a]=0;f+=4}}(a,i,d,e,g),8!==c&&(16===c&&(i=Buffer.alloc(d*e*4)),!function(a,b,c,d,e){let f=Math.pow(2,e)-1,g=0;for(let e=0;e<d;e++)for(let d=0;d<c;d++){for(let c=0;c<4;c++)b[g+c]=Math.floor(255*a[g+c]/f+.5);g+=4}}(a,i,d,e,c))),i}},83929:(a,b)=>{b.isValid=function(a){return!isNaN(a)&&a>=1&&a<=40}},84879:a=>{"use strict";var b={single_source_shortest_paths:function(a,c,d){var e,f,g,h,i,j,k,l={},m={};m[c]=0;var n=b.PriorityQueue.make();for(n.push(c,0);!n.empty();)for(g in f=(e=n.pop()).value,h=e.cost,i=a[f]||{})i.hasOwnProperty(g)&&(j=h+i[g],k=m[g],(void 0===m[g]||k>j)&&(m[g]=j,n.push(g,j),l[g]=f));if(void 0!==d&&void 0===m[d])throw Error("Could not find a path from "+c+" to "+d+".");return l},extract_shortest_path_from_predecessor_list:function(a,b){for(var c=[],d=b;d;)c.push(d),a[d],d=a[d];return c.reverse(),c},find_path:function(a,c,d){var e=b.single_source_shortest_paths(a,c,d);return b.extract_shortest_path_from_predecessor_list(e,d)},PriorityQueue:{make:function(a){var c,d=b.PriorityQueue,e={};for(c in a=a||{},d)d.hasOwnProperty(c)&&(e[c]=d[c]);return e.queue=[],e.sorter=a.sorter||d.default_sorter,e},default_sorter:function(a,b){return a.cost-b.cost},push:function(a,b){this.queue.push({value:a,cost:b}),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return 0===this.queue.length}}};a.exports=b},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},86491:(a,b)=>{let c="\x1b[37m",d="\x1b[30m",e="\x1b[0m",f="\x1b[47m"+d,g="\x1b[40m"+c,h=function(a,b,c,d){let e=b+1;return c>=e||d>=e||d<-1||c<-1?"0":c>=b||d>=b||d<0||c<0?"1":a[d*b+c]?"2":"1"},i=function(a,b,c,d){return h(a,b,c,d)+h(a,b,c,d+1)};b.render=function(a,b,h){var j,k;let l=a.modules.size,m=a.modules.data,n=!!(b&&b.inverse),o=b&&b.inverse?g:f,p={"00":e+" "+o,"01":e+(j=n?d:c)+"▄"+o,"02":e+(k=n?c:d)+"▄"+o,10:e+j+"▀"+o,11:" ",12:"▄",20:e+k+"▀"+o,21:"▀",22:"█"},q=e+"\n"+o,r=o;for(let a=-1;a<l+1;a+=2){for(let b=-1;b<l;b++)r+=p[i(m,l,b,a)];r+=p[i(m,l,l,a)]+q}return r+=e,"function"==typeof h&&h(null,r),r}},88066:(a,b,c)=>{let d=c(58305).getSymbolSize;b.getRowColCoords=function(a){if(1===a)return[];let b=Math.floor(a/7)+2,c=d(a),e=145===c?26:2*Math.ceil((c-13)/(2*b-2)),f=[c-7];for(let a=1;a<b-1;a++)f[a]=f[a-1]-e;return f.push(6),f.reverse()},b.getPositions=function(a){let c=[],d=b.getRowColCoords(a),e=d.length;for(let a=0;a<e;a++)for(let b=0;b<e;b++)(0!==a||0!==b)&&(0!==a||b!==e-1)&&(a!==e-1||0!==b)&&c.push([d[a],d[b]]);return c}},88397:(a,b)=>{function c(a){if("number"==typeof a&&(a=a.toString()),"string"!=typeof a)throw Error("Color should be defined as hex string");let b=a.slice().replace("#","").split("");if(b.length<3||5===b.length||b.length>8)throw Error("Invalid hex color: "+a);(3===b.length||4===b.length)&&(b=Array.prototype.concat.apply([],b.map(function(a){return[a,a]}))),6===b.length&&b.push("F","F");let c=parseInt(b.join(""),16);return{r:c>>24&255,g:c>>16&255,b:c>>8&255,a:255&c,hex:"#"+b.slice(0,6).join("")}}b.getOptions=function(a){a||(a={}),a.color||(a.color={});let b=void 0===a.margin||null===a.margin||a.margin<0?4:a.margin,d=a.width&&a.width>=21?a.width:void 0,e=a.scale||4;return{width:d,scale:d?4:e,margin:b,color:{dark:c(a.color.dark||"#000000ff"),light:c(a.color.light||"#ffffffff")},type:a.type,rendererOpts:a.rendererOpts||{}}},b.getScale=function(a,b){return b.width&&b.width>=a+2*b.margin?b.width/(a+2*b.margin):b.scale},b.getImageWidth=function(a,c){let d=b.getScale(a,c);return Math.floor((a+2*c.margin)*d)},b.qrToImageData=function(a,c,d){let e=c.modules.size,f=c.modules.data,g=b.getScale(e,d),h=Math.floor((e+2*d.margin)*g),i=d.margin*g,j=[d.color.light,d.color.dark];for(let b=0;b<h;b++)for(let c=0;c<h;c++){let k=(b*h+c)*4,l=d.color.light;b>=i&&c>=i&&b<h-i&&c<h-i&&(l=j[+!!f[Math.floor((b-i)/g)*e+Math.floor((c-i)/g)]]),a[k++]=l.r,a[k++]=l.g,a[k++]=l.b,a[k]=l.a}}},90082:(a,b,c)=>{b.render=c(32835).render,b.renderToFile=function(a,d,e,f){void 0===f&&(f=e,e=void 0);let g=c(29021),h=b.render(d,e);g.writeFile(a,'<?xml version="1.0" encoding="utf-8"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">'+h,f)}},92858:(a,b,c)=>{"use strict";let d=c(59725),e=[function(){},function(a,b,c,d){if(d===b.length)throw Error("Ran out of data");let e=b[d];a[c]=e,a[c+1]=e,a[c+2]=e,a[c+3]=255},function(a,b,c,d){if(d+1>=b.length)throw Error("Ran out of data");let e=b[d];a[c]=e,a[c+1]=e,a[c+2]=e,a[c+3]=b[d+1]},function(a,b,c,d){if(d+2>=b.length)throw Error("Ran out of data");a[c]=b[d],a[c+1]=b[d+1],a[c+2]=b[d+2],a[c+3]=255},function(a,b,c,d){if(d+3>=b.length)throw Error("Ran out of data");a[c]=b[d],a[c+1]=b[d+1],a[c+2]=b[d+2],a[c+3]=b[d+3]}],f=[function(){},function(a,b,c,d){let e=b[0];a[c]=e,a[c+1]=e,a[c+2]=e,a[c+3]=d},function(a,b,c){let d=b[0];a[c]=d,a[c+1]=d,a[c+2]=d,a[c+3]=b[1]},function(a,b,c,d){a[c]=b[0],a[c+1]=b[1],a[c+2]=b[2],a[c+3]=d},function(a,b,c){a[c]=b[0],a[c+1]=b[1],a[c+2]=b[2],a[c+3]=b[3]}];b.dataToBitMap=function(a,b){let c,g,h,i,j,k,l=b.width,m=b.height,n=b.depth,o=b.bpp,p=b.interlace;8!==n&&(c=[],g=0,h={get:function(b){for(;c.length<b;)!function(){let b,d,e,f;if(g===a.length)throw Error("Ran out of data");let h=a[g];switch(g++,n){default:throw Error("unrecognised depth");case 16:e=a[g],g++,c.push((h<<8)+e);break;case 4:e=15&h,f=h>>4,c.push(f,e);break;case 2:b=3&h,d=h>>2&3,e=h>>4&3,f=h>>6&3,c.push(f,e,d,b);break;case 1:b=h>>4&1,d=h>>5&1,e=h>>6&1,f=h>>7&1,c.push(f,e,d,b,h>>3&1,h>>2&1,h>>1&1,1&h)}}();let d=c.slice(0,b);return c=c.slice(b),d},resetAfterLine:function(){c.length=0},end:function(){if(g!==a.length)throw Error("extra data found")}}),i=n<=8?Buffer.alloc(l*m*4):new Uint16Array(l*m*4);let q=Math.pow(2,n)-1,r=0;if(p)j=d.getImagePasses(l,m),k=d.getInterlaceIterator(l,m);else{let a=0;k=function(){let b=a;return a+=4,b},j=[{width:l,height:m}]}for(let b=0;b<j.length;b++)8===n?r=function(a,b,c,d,f,g){let h=a.width,i=a.height,j=a.index;for(let a=0;a<i;a++)for(let i=0;i<h;i++){let h=c(i,a,j);e[d](b,f,h,g),g+=d}return g}(j[b],i,k,o,a,r):function(a,b,c,d,e,g){let h=a.width,i=a.height,j=a.index;for(let a=0;a<i;a++){for(let i=0;i<h;i++){let h=e.get(d),k=c(i,a,j);f[d](b,h,k,g)}e.resetAfterLine()}}(j[b],i,k,o,h,q);if(8===n){if(r!==a.length)throw Error("extra data found")}else h.end();return i}},93669:(a,b,c)=>{let d=c(83929),e=c(64323);b.NUMERIC={id:"Numeric",bit:1,ccBits:[10,12,14]},b.ALPHANUMERIC={id:"Alphanumeric",bit:2,ccBits:[9,11,13]},b.BYTE={id:"Byte",bit:4,ccBits:[8,16,16]},b.KANJI={id:"Kanji",bit:8,ccBits:[8,10,12]},b.MIXED={bit:-1},b.getCharCountIndicator=function(a,b){if(!a.ccBits)throw Error("Invalid mode: "+a);if(!d.isValid(b))throw Error("Invalid version: "+b);return b>=1&&b<10?a.ccBits[0]:b<27?a.ccBits[1]:a.ccBits[2]},b.getBestModeForData=function(a){return e.testNumeric(a)?b.NUMERIC:e.testAlphanumeric(a)?b.ALPHANUMERIC:e.testKanji(a)?b.KANJI:b.BYTE},b.toString=function(a){if(a&&a.id)return a.id;throw Error("Invalid mode")},b.isValid=function(a){return a&&a.bit&&a.ccBits},b.from=function(a,c){if(b.isValid(a))return a;try{if("string"!=typeof a)throw Error("Param is not a string");switch(a.toLowerCase()){case"numeric":return b.NUMERIC;case"alphanumeric":return b.ALPHANUMERIC;case"kanji":return b.KANJI;case"byte":return b.BYTE;default:throw Error("Unknown mode: "+a)}}catch(a){return c}}},94165:(a,b,c)=>{"use strict";let d=c(67269);a.exports=function(a,b,c,e){let f=-1!==[d.COLORTYPE_COLOR_ALPHA,d.COLORTYPE_ALPHA].indexOf(e.colorType);if(e.colorType===e.inputColorType){let b,c=(new DataView(b=new ArrayBuffer(2)).setInt16(0,256,!0),256!==new Int16Array(b)[0]);if(8===e.bitDepth||16===e.bitDepth&&c)return a}let g=16!==e.bitDepth?a:new Uint16Array(a.buffer),h=255,i=d.COLORTYPE_TO_BPP_MAP[e.inputColorType];4!==i||e.inputHasAlpha||(i=3);let j=d.COLORTYPE_TO_BPP_MAP[e.colorType];16===e.bitDepth&&(h=65535,j*=2);let k=Buffer.alloc(b*c*j),l=0,m=0,n=e.bgColor||{};void 0===n.red&&(n.red=h),void 0===n.green&&(n.green=h),void 0===n.blue&&(n.blue=h);for(let a=0;a<c;a++)for(let a=0;a<b;a++){let a=function(){let a,b,c,i=h;switch(e.inputColorType){case d.COLORTYPE_COLOR_ALPHA:i=g[l+3],a=g[l],b=g[l+1],c=g[l+2];break;case d.COLORTYPE_COLOR:a=g[l],b=g[l+1],c=g[l+2];break;case d.COLORTYPE_ALPHA:i=g[l+1],b=a=g[l],c=a;break;case d.COLORTYPE_GRAYSCALE:b=a=g[l],c=a;break;default:throw Error("input color type:"+e.inputColorType+" is not supported at present")}return e.inputHasAlpha&&!f&&(i/=h,a=Math.min(Math.max(Math.round((1-i)*n.red+i*a),0),h),b=Math.min(Math.max(Math.round((1-i)*n.green+i*b),0),h),c=Math.min(Math.max(Math.round((1-i)*n.blue+i*c),0),h)),{red:a,green:b,blue:c,alpha:i}}();switch(e.colorType){case d.COLORTYPE_COLOR_ALPHA:case d.COLORTYPE_COLOR:8===e.bitDepth?(k[m]=a.red,k[m+1]=a.green,k[m+2]=a.blue,f&&(k[m+3]=a.alpha)):(k.writeUInt16BE(a.red,m),k.writeUInt16BE(a.green,m+2),k.writeUInt16BE(a.blue,m+4),f&&k.writeUInt16BE(a.alpha,m+6));break;case d.COLORTYPE_ALPHA:case d.COLORTYPE_GRAYSCALE:{let b=(a.red+a.green+a.blue)/3;8===e.bitDepth?(k[m]=b,f&&(k[m+1]=a.alpha)):(k.writeUInt16BE(b,m),f&&k.writeUInt16BE(a.alpha,m+2));break}default:throw Error("unrecognised color Type "+e.colorType)}l+=i,m+=j}return k}},94735:a=>{"use strict";a.exports=require("events")},95380:(a,b,c)=>{let d=c(58305),e=c(58856),f=c(52002),g=c(46349),h=c(88066),i=c(39477),j=c(12097),k=c(19477),l=c(98129),m=c(52324),n=c(55258),o=c(93669),p=c(39588);function q(a,b,c){let d,e,f=a.size,g=n.getEncodedBits(b,c);for(d=0;d<15;d++)e=(g>>d&1)==1,d<6?a.set(d,8,e,!0):d<8?a.set(d+1,8,e,!0):a.set(f-15+d,8,e,!0),d<8?a.set(8,f-d-1,e,!0):d<9?a.set(8,15-d-1+1,e,!0):a.set(8,15-d-1,e,!0);a.set(f-8,8,1,!0)}b.create=function(a,b){let c,n;if(void 0===a||""===a)throw Error("No input text");let r=e.M;return void 0!==b&&(r=e.from(b.errorCorrectionLevel,e.M),c=m.from(b.version),n=j.from(b.maskPattern),b.toSJISFunc&&d.setToSJISFunction(b.toSJISFunc)),function(a,b,c,e){let n;if(Array.isArray(a))n=p.fromArray(a);else if("string"==typeof a){let d=b;if(!d){let b=p.rawSplit(a);d=m.getBestVersionForData(b,c)}n=p.fromString(a,d||40)}else throw Error("Invalid data");let r=m.getBestVersionForData(n,c);if(!r)throw Error("The amount of data is too big to be stored in a QR Code");if(b){if(b<r)throw Error("\nThe chosen QR Code version cannot contain this amount of data.\nMinimum version required to store current data is: "+r+".\n")}else b=r;let s=function(a,b,c){let e=new f;c.forEach(function(b){e.put(b.mode.bit,4),e.put(b.getLength(),o.getCharCountIndicator(b.mode,a)),b.write(e)});let g=(d.getSymbolTotalCodewords(a)-k.getTotalCodewordsCount(a,b))*8;for(e.getLengthInBits()+4<=g&&e.put(0,4);e.getLengthInBits()%8!=0;)e.putBit(0);let h=(g-e.getLengthInBits())/8;for(let a=0;a<h;a++)e.put(a%2?17:236,8);return function(a,b,c){let e,f,g=d.getSymbolTotalCodewords(b),h=g-k.getTotalCodewordsCount(b,c),i=k.getBlocksCount(b,c),j=g%i,m=i-j,n=Math.floor(g/i),o=Math.floor(h/i),p=o+1,q=n-o,r=new l(q),s=0,t=Array(i),u=Array(i),v=0,w=new Uint8Array(a.buffer);for(let a=0;a<i;a++){let b=a<m?o:p;t[a]=w.slice(s,s+b),u[a]=r.encode(t[a]),s+=b,v=Math.max(v,b)}let x=new Uint8Array(g),y=0;for(e=0;e<v;e++)for(f=0;f<i;f++)e<t[f].length&&(x[y++]=t[f][e]);for(e=0;e<q;e++)for(f=0;f<i;f++)x[y++]=u[f][e];return x}(e,a,b)}(b,c,n),t=new g(d.getSymbolSize(b));!function(a,b){let c=a.size,d=i.getPositions(b);for(let b=0;b<d.length;b++){let e=d[b][0],f=d[b][1];for(let b=-1;b<=7;b++)if(!(e+b<=-1)&&!(c<=e+b))for(let d=-1;d<=7;d++)f+d<=-1||c<=f+d||(b>=0&&b<=6&&(0===d||6===d)||d>=0&&d<=6&&(0===b||6===b)||b>=2&&b<=4&&d>=2&&d<=4?a.set(e+b,f+d,!0,!0):a.set(e+b,f+d,!1,!0))}}(t,b);let u=t.size;for(let a=8;a<u-8;a++){let b=a%2==0;t.set(a,6,b,!0),t.set(6,a,b,!0)}return!function(a,b){let c=h.getPositions(b);for(let b=0;b<c.length;b++){let d=c[b][0],e=c[b][1];for(let b=-2;b<=2;b++)for(let c=-2;c<=2;c++)-2===b||2===b||-2===c||2===c||0===b&&0===c?a.set(d+b,e+c,!0,!0):a.set(d+b,e+c,!1,!0)}}(t,b),q(t,c,0),b>=7&&function(a,b){let c,d,e,f=a.size,g=m.getEncodedBits(b);for(let b=0;b<18;b++)c=Math.floor(b/3),d=b%3+f-8-3,e=(g>>b&1)==1,a.set(c,d,e,!0),a.set(d,c,e,!0)}(t,b),!function(a,b){let c=a.size,d=-1,e=c-1,f=7,g=0;for(let h=c-1;h>0;h-=2)for(6===h&&h--;;){for(let c=0;c<2;c++)if(!a.isReserved(e,h-c)){let d=!1;g<b.length&&(d=(b[g]>>>f&1)==1),a.set(e,h-c,d),-1==--f&&(g++,f=7)}if((e+=d)<0||c<=e){e-=d,d=-d;break}}}(t,s),isNaN(e)&&(e=j.getBestMask(t,q.bind(null,t,c))),j.applyMask(e,t),q(t,c,e),{modules:t,version:b,errorCorrectionLevel:c,maskPattern:e,segments:n}}(a,c,r,n)}},96277:(a,b,c)=>{"use strict";let d=c(67269),e=c(43894),f=a.exports=function(a,b){this._options=a,a.checkCRC=!1!==a.checkCRC,this._hasIHDR=!1,this._hasIEND=!1,this._emittedHeadersFinished=!1,this._palette=[],this._colorType=0,this._chunks={},this._chunks[d.TYPE_IHDR]=this._handleIHDR.bind(this),this._chunks[d.TYPE_IEND]=this._handleIEND.bind(this),this._chunks[d.TYPE_IDAT]=this._handleIDAT.bind(this),this._chunks[d.TYPE_PLTE]=this._handlePLTE.bind(this),this._chunks[d.TYPE_tRNS]=this._handleTRNS.bind(this),this._chunks[d.TYPE_gAMA]=this._handleGAMA.bind(this),this.read=b.read,this.error=b.error,this.metadata=b.metadata,this.gamma=b.gamma,this.transColor=b.transColor,this.palette=b.palette,this.parsed=b.parsed,this.inflateData=b.inflateData,this.finished=b.finished,this.simpleTransparency=b.simpleTransparency,this.headersFinished=b.headersFinished||function(){}};f.prototype.start=function(){this.read(d.PNG_SIGNATURE.length,this._parseSignature.bind(this))},f.prototype._parseSignature=function(a){let b=d.PNG_SIGNATURE;for(let c=0;c<b.length;c++)if(a[c]!==b[c])return void this.error(Error("Invalid file signature"));this.read(8,this._parseChunkBegin.bind(this))},f.prototype._parseChunkBegin=function(a){let b=a.readUInt32BE(0),c=a.readUInt32BE(4),f="";for(let b=4;b<8;b++)f+=String.fromCharCode(a[b]);let g=!!(32&a[4]);return this._hasIHDR||c===d.TYPE_IHDR?(this._crc=new e,this._crc.write(Buffer.from(f)),this._chunks[c])?this._chunks[c](b):g?void this.read(b+4,this._skipChunk.bind(this)):void this.error(Error("Unsupported critical chunk type "+f)):void this.error(Error("Expected IHDR on beggining"))},f.prototype._skipChunk=function(){this.read(8,this._parseChunkBegin.bind(this))},f.prototype._handleChunkEnd=function(){this.read(4,this._parseChunkEnd.bind(this))},f.prototype._parseChunkEnd=function(a){let b=a.readInt32BE(0),c=this._crc.crc32();this._options.checkCRC&&c!==b?this.error(Error("Crc error - "+b+" - "+c)):this._hasIEND||this.read(8,this._parseChunkBegin.bind(this))},f.prototype._handleIHDR=function(a){this.read(a,this._parseIHDR.bind(this))},f.prototype._parseIHDR=function(a){this._crc.write(a);let b=a.readUInt32BE(0),c=a.readUInt32BE(4),e=a[8],f=a[9],g=a[10],h=a[11],i=a[12];if(8!==e&&4!==e&&2!==e&&1!==e&&16!==e)return void this.error(Error("Unsupported bit depth "+e));if(!(f in d.COLORTYPE_TO_BPP_MAP))return void this.error(Error("Unsupported color type"));if(0!==g)return void this.error(Error("Unsupported compression method"));if(0!==h)return void this.error(Error("Unsupported filter method"));if(0!==i&&1!==i)return void this.error(Error("Unsupported interlace method"));this._colorType=f;let j=d.COLORTYPE_TO_BPP_MAP[this._colorType];this._hasIHDR=!0,this.metadata({width:b,height:c,depth:e,interlace:!!i,palette:!!(f&d.COLORTYPE_PALETTE),color:!!(f&d.COLORTYPE_COLOR),alpha:!!(f&d.COLORTYPE_ALPHA),bpp:j,colorType:f}),this._handleChunkEnd()},f.prototype._handlePLTE=function(a){this.read(a,this._parsePLTE.bind(this))},f.prototype._parsePLTE=function(a){this._crc.write(a);let b=Math.floor(a.length/3);for(let c=0;c<b;c++)this._palette.push([a[3*c],a[3*c+1],a[3*c+2],255]);this.palette(this._palette),this._handleChunkEnd()},f.prototype._handleTRNS=function(a){this.simpleTransparency(),this.read(a,this._parseTRNS.bind(this))},f.prototype._parseTRNS=function(a){if(this._crc.write(a),this._colorType===d.COLORTYPE_PALETTE_COLOR){if(0===this._palette.length)return void this.error(Error("Transparency chunk must be after palette"));if(a.length>this._palette.length)return void this.error(Error("More transparent colors than palette size"));for(let b=0;b<a.length;b++)this._palette[b][3]=a[b];this.palette(this._palette)}this._colorType===d.COLORTYPE_GRAYSCALE&&this.transColor([a.readUInt16BE(0)]),this._colorType===d.COLORTYPE_COLOR&&this.transColor([a.readUInt16BE(0),a.readUInt16BE(2),a.readUInt16BE(4)]),this._handleChunkEnd()},f.prototype._handleGAMA=function(a){this.read(a,this._parseGAMA.bind(this))},f.prototype._parseGAMA=function(a){this._crc.write(a),this.gamma(a.readUInt32BE(0)/d.GAMMA_DIVISION),this._handleChunkEnd()},f.prototype._handleIDAT=function(a){this._emittedHeadersFinished||(this._emittedHeadersFinished=!0,this.headersFinished()),this.read(-a,this._parseIDAT.bind(this,a))},f.prototype._parseIDAT=function(a,b){if(this._crc.write(b),this._colorType===d.COLORTYPE_PALETTE_COLOR&&0===this._palette.length)throw Error("Expected palette not found");this.inflateData(b);let c=a-b.length;c>0?this._handleIDAT(c):this._handleChunkEnd()},f.prototype._handleIEND=function(a){this.read(a,this._parseIEND.bind(this))},f.prototype._parseIEND=function(a){this._crc.write(a),this._hasIEND=!0,this._handleChunkEnd(),this.finished&&this.finished()}},98052:(a,b,c)=>{"use strict";let d=c(67269),e=c(43894),f=c(94165),g=c(31964),h=c(74075),i=a.exports=function(a){if(this._options=a,a.deflateChunkSize=a.deflateChunkSize||32768,a.deflateLevel=null!=a.deflateLevel?a.deflateLevel:9,a.deflateStrategy=null!=a.deflateStrategy?a.deflateStrategy:3,a.inputHasAlpha=null==a.inputHasAlpha||a.inputHasAlpha,a.deflateFactory=a.deflateFactory||h.createDeflate,a.bitDepth=a.bitDepth||8,a.colorType="number"==typeof a.colorType?a.colorType:d.COLORTYPE_COLOR_ALPHA,a.inputColorType="number"==typeof a.inputColorType?a.inputColorType:d.COLORTYPE_COLOR_ALPHA,-1===[d.COLORTYPE_GRAYSCALE,d.COLORTYPE_COLOR,d.COLORTYPE_COLOR_ALPHA,d.COLORTYPE_ALPHA].indexOf(a.colorType))throw Error("option color type:"+a.colorType+" is not supported at present");if(-1===[d.COLORTYPE_GRAYSCALE,d.COLORTYPE_COLOR,d.COLORTYPE_COLOR_ALPHA,d.COLORTYPE_ALPHA].indexOf(a.inputColorType))throw Error("option input color type:"+a.inputColorType+" is not supported at present");if(8!==a.bitDepth&&16!==a.bitDepth)throw Error("option bit depth:"+a.bitDepth+" is not supported at present")};i.prototype.getDeflateOptions=function(){return{chunkSize:this._options.deflateChunkSize,level:this._options.deflateLevel,strategy:this._options.deflateStrategy}},i.prototype.createDeflate=function(){return this._options.deflateFactory(this.getDeflateOptions())},i.prototype.filterData=function(a,b,c){let e=f(a,b,c,this._options),h=d.COLORTYPE_TO_BPP_MAP[this._options.colorType];return g(e,b,c,this._options,h)},i.prototype._packChunk=function(a,b){let c=b?b.length:0,d=Buffer.alloc(c+12);return d.writeUInt32BE(c,0),d.writeUInt32BE(a,4),b&&b.copy(d,8),d.writeInt32BE(e.crc32(d.slice(4,d.length-4)),d.length-4),d},i.prototype.packGAMA=function(a){let b=Buffer.alloc(4);return b.writeUInt32BE(Math.floor(a*d.GAMMA_DIVISION),0),this._packChunk(d.TYPE_gAMA,b)},i.prototype.packIHDR=function(a,b){let c=Buffer.alloc(13);return c.writeUInt32BE(a,0),c.writeUInt32BE(b,4),c[8]=this._options.bitDepth,c[9]=this._options.colorType,c[10]=0,c[11]=0,c[12]=0,this._packChunk(d.TYPE_IHDR,c)},i.prototype.packIDAT=function(a){return this._packChunk(d.TYPE_IDAT,a)},i.prototype.packIEND=function(){return this._packChunk(d.TYPE_IEND,null)}},98129:(a,b,c)=>{let d=c(43144);function e(a){this.genPoly=void 0,this.degree=a,this.degree&&this.initialize(this.degree)}e.prototype.initialize=function(a){this.degree=a,this.genPoly=d.generateECPolynomial(this.degree)},e.prototype.encode=function(a){if(!this.genPoly)throw Error("Encoder not initialized");let b=new Uint8Array(a.length+this.degree);b.set(a);let c=d.mod(b,this.genPoly),e=this.degree-c.length;if(e>0){let a=new Uint8Array(this.degree);return a.set(c,e),a}return c},a.exports=e},99647:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>g});var d=c(5735),e=c(91986),f=c(35790);function g(){return(0,d.jsx)(e.Suspense,{children:(0,d.jsx)(f.AppShell,{})})}}};var b=require("../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,63,8304,42,8363,4584,707,9230],()=>b(b.s=83572));module.exports=c})();
|