@surething/cockpit 1.0.194 → 1.0.196
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-prod/BUILD_ID +1 -1
- package/.next-prod/app-path-routes-manifest.json +6 -5
- package/.next-prod/build-manifest.json +3 -3
- package/.next-prod/prerender-manifest.json +3 -3
- package/.next-prod/react-loadable-manifest.json +1 -1
- package/.next-prod/routes-manifest.json +6 -0
- package/.next-prod/server/app/_global-error/page.js +3 -3
- package/.next-prod/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/.next-prod/server/app/_global-error.html +1 -1
- package/.next-prod/server/app/_global-error.rsc +1 -1
- package/.next-prod/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next-prod/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/.next-prod/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
- package/.next-prod/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/.next-prod/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next-prod/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next-prod/server/app/_not-found/page.js +2 -2
- package/.next-prod/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next-prod/server/app/_not-found.html +2 -2
- package/.next-prod/server/app/_not-found.rsc +2 -2
- package/.next-prod/server/app/_not-found.segments/_full.segment.rsc +2 -2
- package/.next-prod/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/.next-prod/server/app/_not-found.segments/_index.segment.rsc +2 -2
- package/.next-prod/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next-prod/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/.next-prod/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/.next-prod/server/app/api/bash/route.js +1 -1
- package/.next-prod/server/app/api/chat/codex/route.js +2 -2
- package/.next-prod/server/app/api/chat/deepseek/route.js +16 -0
- package/.next-prod/server/app/api/chat/deepseek/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/chat/deepseek/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/chat/kimi/route.js +13 -13
- package/.next-prod/server/app/api/chat/ollama/route.js +2 -2
- package/.next-prod/server/app/api/chat/route.js +1 -1
- package/.next-prod/server/app/api/claude-stats/route.js +1 -1
- package/.next-prod/server/app/api/commands/route.js +1 -1
- package/.next-prod/server/app/api/comments/route.js +1 -1
- package/.next-prod/server/app/api/db/columns/route.js +2 -2
- package/.next-prod/server/app/api/db/connect/route.js +1 -1
- package/.next-prod/server/app/api/db/disconnect/route.js +1 -1
- package/.next-prod/server/app/api/db/export/route.js +1 -1
- package/.next-prod/server/app/api/db/query/route.js +1 -1
- package/.next-prod/server/app/api/db/schemas/route.js +1 -1
- package/.next-prod/server/app/api/extension/version/route.js +1 -1
- package/.next-prod/server/app/api/file/route.js +1 -1
- package/.next-prod/server/app/api/files/blame/route.js +1 -1
- package/.next-prod/server/app/api/files/clipboard/route.js +1 -1
- package/.next-prod/server/app/api/files/copy/route.js +1 -1
- package/.next-prod/server/app/api/files/delete/route.js +1 -1
- package/.next-prod/server/app/api/files/expanded/route.js +1 -1
- package/.next-prod/server/app/api/files/index/route.js +1 -1
- package/.next-prod/server/app/api/files/init/route.js +1 -1
- package/.next-prod/server/app/api/files/paste/route.js +1 -1
- package/.next-prod/server/app/api/files/read/route.js +1 -1
- package/.next-prod/server/app/api/files/readdir/route.js +1 -1
- package/.next-prod/server/app/api/files/recent/route.js +1 -1
- package/.next-prod/server/app/api/files/save/route.js +1 -1
- package/.next-prod/server/app/api/files/search/route.js +1 -1
- package/.next-prod/server/app/api/files/stat/route.js +1 -1
- package/.next-prod/server/app/api/files/text/route.js +1 -1
- package/.next-prod/server/app/api/git/branch-diff/route.js +1 -1
- package/.next-prod/server/app/api/git/branches/route.js +1 -1
- package/.next-prod/server/app/api/git/commit-diff/route.js +1 -1
- package/.next-prod/server/app/api/git/commits/route.js +1 -1
- package/.next-prod/server/app/api/git/diff/route.js +1 -1
- package/.next-prod/server/app/api/git/discard/route.js +1 -1
- package/.next-prod/server/app/api/git/stage/route.js +1 -1
- package/.next-prod/server/app/api/git/status/route.js +1 -1
- package/.next-prod/server/app/api/git/unstage/route.js +1 -1
- package/.next-prod/server/app/api/git/worktree/route.js +1 -1
- package/.next-prod/server/app/api/global-state/route.js +1 -1
- package/.next-prod/server/app/api/jupyter/load/route.js +1 -1
- package/.next-prod/server/app/api/jupyter/save/route.js +1 -1
- package/.next-prod/server/app/api/jupyter/shutdown/route.js +1 -1
- package/.next-prod/server/app/api/lsp/definition/route.js +1 -1
- package/.next-prod/server/app/api/lsp/hover/route.js +1 -1
- package/.next-prod/server/app/api/lsp/references/route.js +1 -1
- package/.next-prod/server/app/api/lsp/status/route.js +1 -1
- package/.next-prod/server/app/api/lsp/warmup/route.js +1 -1
- package/.next-prod/server/app/api/mysql/columns/route.js +2 -2
- package/.next-prod/server/app/api/mysql/connect/route.js +1 -1
- package/.next-prod/server/app/api/mysql/disconnect/route.js +1 -1
- package/.next-prod/server/app/api/mysql/export/route.js +1 -1
- package/.next-prod/server/app/api/mysql/query/route.js +1 -1
- package/.next-prod/server/app/api/mysql/schemas/route.js +2 -2
- package/.next-prod/server/app/api/neo4j/connect/route.js +1 -1
- package/.next-prod/server/app/api/neo4j/disconnect/route.js +1 -1
- package/.next-prod/server/app/api/neo4j/query/route.js +1 -1
- package/.next-prod/server/app/api/neo4j/schema/route.js +1 -1
- package/.next-prod/server/app/api/note/route.js +1 -1
- package/.next-prod/server/app/api/ollama/models/route.js +1 -1
- package/.next-prod/server/app/api/ollama/start/route.js +1 -1
- package/.next-prod/server/app/api/open-cursor/route.js +1 -1
- package/.next-prod/server/app/api/open-vscode/route.js +1 -1
- package/.next-prod/server/app/api/pick-folder/route.js +1 -1
- package/.next-prod/server/app/api/pinned-sessions/route.js +1 -1
- package/.next-prod/server/app/api/project-settings/route.js +1 -1
- package/.next-prod/server/app/api/project-state/route.js +1 -1
- package/.next-prod/server/app/api/projects/route.js +1 -1
- package/.next-prod/server/app/api/redis/command/route.js +1 -1
- package/.next-prod/server/app/api/redis/connect/route.js +1 -1
- package/.next-prod/server/app/api/redis/delete/route.js +1 -1
- package/.next-prod/server/app/api/redis/disconnect/route.js +1 -1
- package/.next-prod/server/app/api/redis/get/route.js +1 -1
- package/.next-prod/server/app/api/redis/keys/route.js +1 -1
- package/.next-prod/server/app/api/redis/set/route.js +1 -1
- package/.next-prod/server/app/api/review/[id]/comments/route.js +1 -1
- package/.next-prod/server/app/api/review/[id]/replies/route.js +1 -1
- package/.next-prod/server/app/api/review/[id]/route.js +1 -1
- package/.next-prod/server/app/api/review/identify/route.js +1 -1
- package/.next-prod/server/app/api/review/order/route.js +1 -1
- package/.next-prod/server/app/api/review/route.js +1 -1
- package/.next-prod/server/app/api/review/share-info/route.js +1 -1
- package/.next-prod/server/app/api/review/users/route.js +1 -1
- package/.next-prod/server/app/api/scheduled-tasks/route.js +1 -1
- package/.next-prod/server/app/api/services/config/route.js +1 -1
- package/.next-prod/server/app/api/services/scripts/route.js +1 -1
- package/.next-prod/server/app/api/session/[sessionId]/fork/route.js +1 -1
- package/.next-prod/server/app/api/session/[sessionId]/history/route.js +1 -1
- package/.next-prod/server/app/api/session-by-path/route.js +1 -1
- package/.next-prod/server/app/api/sessions/projects/[encodedPath]/route.js +1 -1
- package/.next-prod/server/app/api/sessions/projects/route.js +1 -1
- package/.next-prod/server/app/api/sessions/route.js +1 -1
- package/.next-prod/server/app/api/settings/route.js +1 -1
- package/.next-prod/server/app/api/skills/[id]/route.js +1 -1
- package/.next-prod/server/app/api/skills/content/route.js +1 -1
- package/.next-prod/server/app/api/skills/route.js +1 -1
- package/.next-prod/server/app/api/terminal/aliases/route.js +1 -1
- package/.next-prod/server/app/api/terminal/autocomplete/route.js +1 -1
- package/.next-prod/server/app/api/terminal/bubble-order/route.js +1 -1
- package/.next-prod/server/app/api/terminal/env/route.js +1 -1
- package/.next-prod/server/app/api/terminal/history/route.js +1 -1
- package/.next-prod/server/app/api/version/route.js +1 -1
- package/.next-prod/server/app/favicon.ico/route.js +1 -1
- package/.next-prod/server/app/manifest.webmanifest/route.js +2 -2
- package/.next-prod/server/app/page.js +3 -3
- package/.next-prod/server/app/page_client-reference-manifest.js +1 -1
- package/.next-prod/server/app/project/page.js +5 -5
- package/.next-prod/server/app/project/page_client-reference-manifest.js +1 -1
- package/.next-prod/server/app/review/[id]/page.js +2 -2
- package/.next-prod/server/app/review/[id]/page_client-reference-manifest.js +1 -1
- package/.next-prod/server/app-paths-manifest.json +6 -5
- package/.next-prod/server/chunks/4098.js +1 -1
- package/.next-prod/server/chunks/4490.js +1 -1
- package/.next-prod/server/chunks/5394.js +1 -1
- package/.next-prod/server/middleware-build-manifest.js +1 -1
- package/.next-prod/server/middleware-react-loadable-manifest.js +1 -1
- package/.next-prod/server/pages/404.html +2 -2
- package/.next-prod/server/pages/500.html +1 -1
- package/.next-prod/server/server-reference-manifest.json +1 -1
- package/.next-prod/static/5dqS4JCjRSMJN3cvcnCBI/_buildManifest.js +1 -0
- package/.next-prod/static/chunks/{700.0aaec5a3a570d182.js → 700.642136ad4fbe16ca.js} +4 -4
- package/.next-prod/static/chunks/app/{api/bash/route-94e40d01eb0846a0.js → _global-error/page-aa58df485295770f.js} +1 -1
- package/.next-prod/static/chunks/app/api/{chat/codex/route-94e40d01eb0846a0.js → bash/route-aa58df485295770f.js} +1 -1
- package/.next-prod/static/chunks/app/api/chat/{kimi/route-94e40d01eb0846a0.js → codex/route-aa58df485295770f.js} +1 -1
- package/.next-prod/static/chunks/app/{_global-error/page-94e40d01eb0846a0.js → api/chat/deepseek/route-aa58df485295770f.js} +1 -1
- package/.next-prod/static/chunks/app/api/chat/kimi/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/chat/ollama/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/chat/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/claude-stats/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/commands/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/comments/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/db/columns/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/db/connect/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/db/disconnect/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/db/export/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/db/query/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/db/schemas/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/extension/version/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/file/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/files/blame/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/files/clipboard/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/files/copy/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/files/delete/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/files/expanded/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/files/index/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/files/init/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/files/paste/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/files/read/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/files/readdir/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/files/recent/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/files/save/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/files/search/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/files/stat/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/files/text/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/git/branch-diff/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/git/branches/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/git/commit-diff/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/git/commits/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/git/diff/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/git/discard/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/git/stage/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/git/status/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/git/unstage/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/git/worktree/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/global-state/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/jupyter/load/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/jupyter/save/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/jupyter/shutdown/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/lsp/definition/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/lsp/hover/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/lsp/references/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/lsp/status/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/lsp/warmup/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/mysql/columns/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/mysql/connect/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/mysql/disconnect/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/mysql/export/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/mysql/query/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/mysql/schemas/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/neo4j/connect/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/neo4j/disconnect/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/neo4j/query/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/neo4j/schema/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/note/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/ollama/models/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/ollama/start/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/open-cursor/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/open-vscode/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/pick-folder/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/pinned-sessions/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/project-settings/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/project-state/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/projects/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/redis/command/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/redis/connect/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/redis/delete/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/redis/disconnect/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/redis/get/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/redis/keys/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/redis/set/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/review/[id]/comments/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/review/[id]/replies/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/review/[id]/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/review/identify/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/review/order/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/review/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/review/share-info/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/review/users/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/scheduled-tasks/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/services/config/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/services/scripts/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/session/[sessionId]/fork/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/session/[sessionId]/history/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/session-by-path/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/sessions/projects/[encodedPath]/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/sessions/projects/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/sessions/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/settings/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/skills/[id]/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/skills/content/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/skills/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/terminal/aliases/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/terminal/autocomplete/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/terminal/bubble-order/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/terminal/env/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/terminal/history/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/api/version/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/manifest.webmanifest/route-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/app/project/page-3a148e22b1d92a17.js +29 -0
- package/.next-prod/static/chunks/next/dist/client/components/builtin/app-error-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/next/dist/client/components/builtin/forbidden-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/next/dist/client/components/builtin/not-found-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/next/dist/client/components/builtin/unauthorized-aa58df485295770f.js +1 -0
- package/.next-prod/static/chunks/{webpack-9a8ea3995034c536.js → webpack-c669c0003eb75661.js} +1 -1
- package/.next-prod/static/css/18aae55f9fdae00a.css +1 -0
- package/.next-prod/trace +12 -12
- package/.next-prod/trace-build +1 -1
- package/.next-prod/types/app/api/chat/deepseek/route.ts +351 -0
- package/.next-prod/types/routes.d.ts +2 -1
- package/.next-prod/types/validator.ts +9 -0
- package/README.md +154 -61
- package/README.zh.md +141 -54
- package/bin/cock-browser.mjs +19 -19
- package/bin/cock-terminal.mjs +8 -8
- package/bin/cock.mjs +7 -5
- package/bin/cockpit.mjs +14 -0
- package/dist/{chunk-ZDTXJE6Z.mjs → chunk-J6PMXUI4.mjs} +2 -0
- package/dist/scheduledTasks.mjs +1 -1
- package/dist/wsServer.mjs +1 -1
- package/package.json +27 -5
- package/.next-prod/static/GrlHt_NxoSxuOTl-aMQdx/_buildManifest.js +0 -1
- package/.next-prod/static/chunks/app/api/chat/ollama/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/chat/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/claude-stats/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/commands/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/comments/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/db/columns/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/db/connect/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/db/disconnect/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/db/export/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/db/query/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/db/schemas/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/extension/version/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/file/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/files/blame/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/files/clipboard/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/files/copy/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/files/delete/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/files/expanded/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/files/index/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/files/init/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/files/paste/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/files/read/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/files/readdir/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/files/recent/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/files/save/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/files/search/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/files/stat/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/files/text/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/git/branch-diff/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/git/branches/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/git/commit-diff/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/git/commits/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/git/diff/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/git/discard/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/git/stage/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/git/status/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/git/unstage/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/git/worktree/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/global-state/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/jupyter/load/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/jupyter/save/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/jupyter/shutdown/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/lsp/definition/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/lsp/hover/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/lsp/references/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/lsp/status/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/lsp/warmup/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/mysql/columns/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/mysql/connect/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/mysql/disconnect/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/mysql/export/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/mysql/query/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/mysql/schemas/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/neo4j/connect/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/neo4j/disconnect/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/neo4j/query/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/neo4j/schema/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/note/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/ollama/models/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/ollama/start/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/open-cursor/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/open-vscode/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/pick-folder/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/pinned-sessions/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/project-settings/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/project-state/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/projects/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/redis/command/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/redis/connect/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/redis/delete/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/redis/disconnect/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/redis/get/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/redis/keys/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/redis/set/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/review/[id]/comments/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/review/[id]/replies/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/review/[id]/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/review/identify/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/review/order/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/review/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/review/share-info/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/review/users/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/scheduled-tasks/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/services/config/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/services/scripts/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/session/[sessionId]/fork/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/session/[sessionId]/history/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/session-by-path/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/sessions/projects/[encodedPath]/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/sessions/projects/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/sessions/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/settings/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/skills/[id]/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/skills/content/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/skills/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/terminal/aliases/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/terminal/autocomplete/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/terminal/bubble-order/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/terminal/env/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/terminal/history/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/api/version/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/manifest.webmanifest/route-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/app/project/page-66c22be12277e5c1.js +0 -29
- package/.next-prod/static/chunks/next/dist/client/components/builtin/app-error-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/next/dist/client/components/builtin/forbidden-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/next/dist/client/components/builtin/not-found-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/chunks/next/dist/client/components/builtin/unauthorized-94e40d01eb0846a0.js +0 -1
- package/.next-prod/static/css/2a6d4c877711db09.css +0 -1
- /package/.next-prod/static/{GrlHt_NxoSxuOTl-aMQdx → 5dqS4JCjRSMJN3cvcnCBI}/_ssgManifest.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/project/page"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"1874":{"*":{"id":"1482","name":"*","chunks":[],"async":false}},"26719":{"*":{"id":"67045","name":"*","chunks":[],"async":false}},"54962":{"*":{"id":"38581","name":"*","chunks":[],"async":true}},"57121":{"*":{"id":"35421","name":"*","chunks":[],"async":false}},"61304":{"*":{"id":"60440","name":"*","chunks":[],"async":false}},"64777":{"*":{"id":"82265","name":"*","chunks":[],"async":false}},"65438":{"*":{"id":"33932","name":"*","chunks":[],"async":false}},"74581":{"*":{"id":"61335","name":"*","chunks":[],"async":false}},"78616":{"*":{"id":"84342","name":"*","chunks":[],"async":false}},"80475":{"*":{"id":"14024","name":"*","chunks":[],"async":false}},"83599":{"*":{"id":"76646","name":"*","chunks":[],"async":false}},"86869":{"*":{"id":"74661","name":"*","chunks":[],"async":false}},"88627":{"*":{"id":"54338","name":"*","chunks":[],"async":true}},"90484":{"*":{"id":"70664","name":"*","chunks":[],"async":false}},"97899":{"*":{"id":"81729","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/home/runner/work/cockpit/cockpit/node_modules/next/dist/client/components/client-page.js":{"id":61304,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/esm/client/components/client-page.js":{"id":61304,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/client/components/client-segment.js":{"id":78616,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/esm/client/components/client-segment.js":{"id":78616,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":64777,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":64777,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/client/components/layout-router.js":{"id":57121,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/esm/client/components/layout-router.js":{"id":57121,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/client/components/render-from-template-context.js":{"id":74581,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":74581,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/lib/framework/boundary-components.js":{"id":90484,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":90484,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":86869,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":86869,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Inter\",\"arguments\":[{\"variable\":\"--font-inter\",\"subsets\":[\"latin\"],\"display\":\"swap\"}],\"variableName\":\"inter\"}":{"id":36791,"name":"*","chunks":["9114","static/chunks/9114-abef8471519b7dee.js","3530","static/chunks/3530-74191451ec2a46c4.js","7177","static/chunks/app/layout-fc306a84f663d5af.js"],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Lora\",\"arguments\":[{\"variable\":\"--font-lora\",\"subsets\":[\"latin\"],\"display\":\"swap\"}],\"variableName\":\"lora\"}":{"id":7815,"name":"*","chunks":["9114","static/chunks/9114-abef8471519b7dee.js","3530","static/chunks/3530-74191451ec2a46c4.js","7177","static/chunks/app/layout-fc306a84f663d5af.js"],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"JetBrains_Mono\",\"arguments\":[{\"variable\":\"--font-jetbrains-mono\",\"subsets\":[\"latin\"],\"display\":\"swap\"}],\"variableName\":\"jetbrainsMono\"}":{"id":66924,"name":"*","chunks":["9114","static/chunks/9114-abef8471519b7dee.js","3530","static/chunks/3530-74191451ec2a46c4.js","7177","static/chunks/app/layout-fc306a84f663d5af.js"],"async":false},"/home/runner/work/cockpit/cockpit/src/app/globals.css":{"id":51743,"name":"*","chunks":["9114","static/chunks/9114-abef8471519b7dee.js","3530","static/chunks/3530-74191451ec2a46c4.js","7177","static/chunks/app/layout-fc306a84f663d5af.js"],"async":false},"/home/runner/work/cockpit/cockpit/src/components/shared/Providers.tsx":{"id":83599,"name":"*","chunks":["9114","static/chunks/9114-abef8471519b7dee.js","3530","static/chunks/3530-74191451ec2a46c4.js","7177","static/chunks/app/layout-fc306a84f663d5af.js"],"async":false},"/home/runner/work/cockpit/cockpit/src/app/global-error.tsx":{"id":26719,"name":"*","chunks":["4219","static/chunks/app/global-error-3c48d7d42c672863.js"],"async":false},"/home/runner/work/cockpit/cockpit/src/components/workspace/EmptyState.tsx":{"id":1874,"name":"*","chunks":["7330","static/chunks/d3ac728e-ba6c269aebe5932e.js","5004","static/chunks/70e0d97a-6903b8594c742784.js","277","static/chunks/54a60aa6-1a0e6738c5ca0c78.js","9114","static/chunks/9114-abef8471519b7dee.js","3700","static/chunks/3700-e32aa43691d128b2.js","3743","static/chunks/3743-5e5ffaf674977450.js","3695","static/chunks/3695-9503d0b646958dd4.js","3530","static/chunks/3530-74191451ec2a46c4.js","3579","static/chunks/3579-2dddc4a9ac5a5b31.js","8974","static/chunks/app/page-95c3cb3c5c7c5ef1.js"],"async":false},"/home/runner/work/cockpit/cockpit/src/components/workspace/ProjectItem.tsx":{"id":65438,"name":"*","chunks":["7330","static/chunks/d3ac728e-ba6c269aebe5932e.js","5004","static/chunks/70e0d97a-6903b8594c742784.js","277","static/chunks/54a60aa6-1a0e6738c5ca0c78.js","9114","static/chunks/9114-abef8471519b7dee.js","3700","static/chunks/3700-e32aa43691d128b2.js","3743","static/chunks/3743-5e5ffaf674977450.js","3695","static/chunks/3695-9503d0b646958dd4.js","3530","static/chunks/3530-74191451ec2a46c4.js","3579","static/chunks/3579-2dddc4a9ac5a5b31.js","8974","static/chunks/app/page-95c3cb3c5c7c5ef1.js"],"async":false},"/home/runner/work/cockpit/cockpit/src/components/workspace/ProjectSidebar.tsx":{"id":80475,"name":"*","chunks":["7330","static/chunks/d3ac728e-ba6c269aebe5932e.js","5004","static/chunks/70e0d97a-6903b8594c742784.js","277","static/chunks/54a60aa6-1a0e6738c5ca0c78.js","9114","static/chunks/9114-abef8471519b7dee.js","3700","static/chunks/3700-e32aa43691d128b2.js","3743","static/chunks/3743-5e5ffaf674977450.js","3695","static/chunks/3695-9503d0b646958dd4.js","3530","static/chunks/3530-74191451ec2a46c4.js","3579","static/chunks/3579-2dddc4a9ac5a5b31.js","8974","static/chunks/app/page-95c3cb3c5c7c5ef1.js"],"async":false},"/home/runner/work/cockpit/cockpit/src/components/workspace/Workspace.tsx":{"id":54962,"name":"*","chunks":["7330","static/chunks/d3ac728e-ba6c269aebe5932e.js","5004","static/chunks/70e0d97a-6903b8594c742784.js","277","static/chunks/54a60aa6-1a0e6738c5ca0c78.js","9114","static/chunks/9114-abef8471519b7dee.js","3700","static/chunks/3700-e32aa43691d128b2.js","3743","static/chunks/3743-5e5ffaf674977450.js","3695","static/chunks/3695-9503d0b646958dd4.js","3530","static/chunks/3530-74191451ec2a46c4.js","3579","static/chunks/3579-2dddc4a9ac5a5b31.js","8974","static/chunks/app/page-95c3cb3c5c7c5ef1.js"],"async":true},"/home/runner/work/cockpit/cockpit/src/components/project/TabManager.tsx":{"id":88627,"name":"*","chunks":["7330","static/chunks/d3ac728e-ba6c269aebe5932e.js","9114","static/chunks/9114-abef8471519b7dee.js","3700","static/chunks/3700-e32aa43691d128b2.js","3743","static/chunks/3743-5e5ffaf674977450.js","6148","static/chunks/6148-ceb1b58ea7be6767.js","3530","static/chunks/3530-74191451ec2a46c4.js","3579","static/chunks/3579-2dddc4a9ac5a5b31.js","9062","static/chunks/9062-cf3c7d314edd19d0.js","6500","static/chunks/app/project/page-66c22be12277e5c1.js"],"async":true},"/home/runner/work/cockpit/cockpit/src/components/review/ReviewPage.tsx":{"id":97899,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/home/runner/work/cockpit/cockpit/src/":[],"/home/runner/work/cockpit/cockpit/src/app/layout":[{"inlined":false,"path":"static/css/e33280be1b23649f.css"},{"inlined":false,"path":"static/css/2a6d4c877711db09.css"}],"/home/runner/work/cockpit/cockpit/src/app/global-error":[],"/home/runner/work/cockpit/cockpit/src/app/page":[{"inlined":false,"path":"static/css/2163ab5e45fedc6a.css"}],"/home/runner/work/cockpit/cockpit/src/app/project/page":[{"inlined":false,"path":"static/css/2163ab5e45fedc6a.css"}]},"rscModuleMapping":{"1874":{"*":{"id":"41824","name":"*","chunks":[],"async":false}},"26719":{"*":{"id":"81227","name":"*","chunks":[],"async":false}},"51743":{"*":{"id":"61135","name":"*","chunks":[],"async":false}},"54962":{"*":{"id":"51675","name":"*","chunks":[],"async":false}},"57121":{"*":{"id":"98099","name":"*","chunks":[],"async":false}},"61304":{"*":{"id":"15098","name":"*","chunks":[],"async":false}},"64777":{"*":{"id":"33859","name":"*","chunks":[],"async":false}},"65438":{"*":{"id":"49090","name":"*","chunks":[],"async":false}},"74581":{"*":{"id":"16237","name":"*","chunks":[],"async":false}},"78616":{"*":{"id":"47644","name":"*","chunks":[],"async":false}},"80475":{"*":{"id":"43647","name":"*","chunks":[],"async":false}},"83599":{"*":{"id":"87020","name":"*","chunks":[],"async":false}},"86869":{"*":{"id":"36675","name":"*","chunks":[],"async":false}},"88627":{"*":{"id":"38476","name":"*","chunks":[],"async":false}},"90484":{"*":{"id":"98562","name":"*","chunks":[],"async":false}},"97899":{"*":{"id":"79436","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}};
|
|
1
|
+
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/project/page"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"1874":{"*":{"id":"1482","name":"*","chunks":[],"async":false}},"26719":{"*":{"id":"67045","name":"*","chunks":[],"async":false}},"32458":{"*":{"id":"54338","name":"*","chunks":[],"async":true}},"54962":{"*":{"id":"38581","name":"*","chunks":[],"async":true}},"57121":{"*":{"id":"35421","name":"*","chunks":[],"async":false}},"61304":{"*":{"id":"60440","name":"*","chunks":[],"async":false}},"64777":{"*":{"id":"82265","name":"*","chunks":[],"async":false}},"65438":{"*":{"id":"33932","name":"*","chunks":[],"async":false}},"74581":{"*":{"id":"61335","name":"*","chunks":[],"async":false}},"78616":{"*":{"id":"84342","name":"*","chunks":[],"async":false}},"80475":{"*":{"id":"14024","name":"*","chunks":[],"async":false}},"83599":{"*":{"id":"76646","name":"*","chunks":[],"async":false}},"86869":{"*":{"id":"74661","name":"*","chunks":[],"async":false}},"90484":{"*":{"id":"70664","name":"*","chunks":[],"async":false}},"97899":{"*":{"id":"81729","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/home/runner/work/cockpit/cockpit/node_modules/next/dist/client/components/client-page.js":{"id":61304,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/esm/client/components/client-page.js":{"id":61304,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/client/components/client-segment.js":{"id":78616,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/esm/client/components/client-segment.js":{"id":78616,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":64777,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":64777,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/client/components/layout-router.js":{"id":57121,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/esm/client/components/layout-router.js":{"id":57121,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/client/components/render-from-template-context.js":{"id":74581,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":74581,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/lib/framework/boundary-components.js":{"id":90484,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":90484,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":86869,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":86869,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Inter\",\"arguments\":[{\"variable\":\"--font-inter\",\"subsets\":[\"latin\"],\"display\":\"swap\"}],\"variableName\":\"inter\"}":{"id":36791,"name":"*","chunks":["9114","static/chunks/9114-abef8471519b7dee.js","3530","static/chunks/3530-74191451ec2a46c4.js","7177","static/chunks/app/layout-fc306a84f663d5af.js"],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Lora\",\"arguments\":[{\"variable\":\"--font-lora\",\"subsets\":[\"latin\"],\"display\":\"swap\"}],\"variableName\":\"lora\"}":{"id":7815,"name":"*","chunks":["9114","static/chunks/9114-abef8471519b7dee.js","3530","static/chunks/3530-74191451ec2a46c4.js","7177","static/chunks/app/layout-fc306a84f663d5af.js"],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"JetBrains_Mono\",\"arguments\":[{\"variable\":\"--font-jetbrains-mono\",\"subsets\":[\"latin\"],\"display\":\"swap\"}],\"variableName\":\"jetbrainsMono\"}":{"id":66924,"name":"*","chunks":["9114","static/chunks/9114-abef8471519b7dee.js","3530","static/chunks/3530-74191451ec2a46c4.js","7177","static/chunks/app/layout-fc306a84f663d5af.js"],"async":false},"/home/runner/work/cockpit/cockpit/src/app/globals.css":{"id":51743,"name":"*","chunks":["9114","static/chunks/9114-abef8471519b7dee.js","3530","static/chunks/3530-74191451ec2a46c4.js","7177","static/chunks/app/layout-fc306a84f663d5af.js"],"async":false},"/home/runner/work/cockpit/cockpit/src/components/shared/Providers.tsx":{"id":83599,"name":"*","chunks":["9114","static/chunks/9114-abef8471519b7dee.js","3530","static/chunks/3530-74191451ec2a46c4.js","7177","static/chunks/app/layout-fc306a84f663d5af.js"],"async":false},"/home/runner/work/cockpit/cockpit/src/app/global-error.tsx":{"id":26719,"name":"*","chunks":["4219","static/chunks/app/global-error-3c48d7d42c672863.js"],"async":false},"/home/runner/work/cockpit/cockpit/src/components/workspace/EmptyState.tsx":{"id":1874,"name":"*","chunks":["7330","static/chunks/d3ac728e-ba6c269aebe5932e.js","5004","static/chunks/70e0d97a-6903b8594c742784.js","277","static/chunks/54a60aa6-1a0e6738c5ca0c78.js","9114","static/chunks/9114-abef8471519b7dee.js","3700","static/chunks/3700-e32aa43691d128b2.js","3743","static/chunks/3743-5e5ffaf674977450.js","3695","static/chunks/3695-9503d0b646958dd4.js","3530","static/chunks/3530-74191451ec2a46c4.js","3579","static/chunks/3579-2dddc4a9ac5a5b31.js","8974","static/chunks/app/page-95c3cb3c5c7c5ef1.js"],"async":false},"/home/runner/work/cockpit/cockpit/src/components/workspace/ProjectItem.tsx":{"id":65438,"name":"*","chunks":["7330","static/chunks/d3ac728e-ba6c269aebe5932e.js","5004","static/chunks/70e0d97a-6903b8594c742784.js","277","static/chunks/54a60aa6-1a0e6738c5ca0c78.js","9114","static/chunks/9114-abef8471519b7dee.js","3700","static/chunks/3700-e32aa43691d128b2.js","3743","static/chunks/3743-5e5ffaf674977450.js","3695","static/chunks/3695-9503d0b646958dd4.js","3530","static/chunks/3530-74191451ec2a46c4.js","3579","static/chunks/3579-2dddc4a9ac5a5b31.js","8974","static/chunks/app/page-95c3cb3c5c7c5ef1.js"],"async":false},"/home/runner/work/cockpit/cockpit/src/components/workspace/ProjectSidebar.tsx":{"id":80475,"name":"*","chunks":["7330","static/chunks/d3ac728e-ba6c269aebe5932e.js","5004","static/chunks/70e0d97a-6903b8594c742784.js","277","static/chunks/54a60aa6-1a0e6738c5ca0c78.js","9114","static/chunks/9114-abef8471519b7dee.js","3700","static/chunks/3700-e32aa43691d128b2.js","3743","static/chunks/3743-5e5ffaf674977450.js","3695","static/chunks/3695-9503d0b646958dd4.js","3530","static/chunks/3530-74191451ec2a46c4.js","3579","static/chunks/3579-2dddc4a9ac5a5b31.js","8974","static/chunks/app/page-95c3cb3c5c7c5ef1.js"],"async":false},"/home/runner/work/cockpit/cockpit/src/components/workspace/Workspace.tsx":{"id":54962,"name":"*","chunks":["7330","static/chunks/d3ac728e-ba6c269aebe5932e.js","5004","static/chunks/70e0d97a-6903b8594c742784.js","277","static/chunks/54a60aa6-1a0e6738c5ca0c78.js","9114","static/chunks/9114-abef8471519b7dee.js","3700","static/chunks/3700-e32aa43691d128b2.js","3743","static/chunks/3743-5e5ffaf674977450.js","3695","static/chunks/3695-9503d0b646958dd4.js","3530","static/chunks/3530-74191451ec2a46c4.js","3579","static/chunks/3579-2dddc4a9ac5a5b31.js","8974","static/chunks/app/page-95c3cb3c5c7c5ef1.js"],"async":true},"/home/runner/work/cockpit/cockpit/src/components/review/ReviewPage.tsx":{"id":97899,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/src/components/project/TabManager.tsx":{"id":32458,"name":"*","chunks":["7330","static/chunks/d3ac728e-ba6c269aebe5932e.js","9114","static/chunks/9114-abef8471519b7dee.js","3700","static/chunks/3700-e32aa43691d128b2.js","3743","static/chunks/3743-5e5ffaf674977450.js","6148","static/chunks/6148-ceb1b58ea7be6767.js","3530","static/chunks/3530-74191451ec2a46c4.js","3579","static/chunks/3579-2dddc4a9ac5a5b31.js","9062","static/chunks/9062-cf3c7d314edd19d0.js","6500","static/chunks/app/project/page-3a148e22b1d92a17.js"],"async":true}},"entryCSSFiles":{"/home/runner/work/cockpit/cockpit/src/":[],"/home/runner/work/cockpit/cockpit/src/app/layout":[{"inlined":false,"path":"static/css/e33280be1b23649f.css"},{"inlined":false,"path":"static/css/18aae55f9fdae00a.css"}],"/home/runner/work/cockpit/cockpit/src/app/global-error":[],"/home/runner/work/cockpit/cockpit/src/app/page":[{"inlined":false,"path":"static/css/2163ab5e45fedc6a.css"}],"/home/runner/work/cockpit/cockpit/src/app/project/page":[{"inlined":false,"path":"static/css/2163ab5e45fedc6a.css"}]},"rscModuleMapping":{"1874":{"*":{"id":"41824","name":"*","chunks":[],"async":false}},"26719":{"*":{"id":"81227","name":"*","chunks":[],"async":false}},"32458":{"*":{"id":"38476","name":"*","chunks":[],"async":false}},"51743":{"*":{"id":"61135","name":"*","chunks":[],"async":false}},"54962":{"*":{"id":"51675","name":"*","chunks":[],"async":false}},"57121":{"*":{"id":"98099","name":"*","chunks":[],"async":false}},"61304":{"*":{"id":"15098","name":"*","chunks":[],"async":false}},"64777":{"*":{"id":"33859","name":"*","chunks":[],"async":false}},"65438":{"*":{"id":"49090","name":"*","chunks":[],"async":false}},"74581":{"*":{"id":"16237","name":"*","chunks":[],"async":false}},"78616":{"*":{"id":"47644","name":"*","chunks":[],"async":false}},"80475":{"*":{"id":"43647","name":"*","chunks":[],"async":false}},"83599":{"*":{"id":"87020","name":"*","chunks":[],"async":false}},"86869":{"*":{"id":"36675","name":"*","chunks":[],"async":false}},"90484":{"*":{"id":"98562","name":"*","chunks":[],"async":false}},"97899":{"*":{"id":"79436","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
(()=>{var a={};a.id=2951,a.ids=[2951],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},17891:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/get-segment-param")},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},26713:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/is-bot")},28354:a=>{"use strict";a.exports=require("util")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31172:(a,b,c)=>{"use strict";c.d(b,{F2:()=>m,ZL:()=>k,a9:()=>l});var d=c(48249),e=c(67484),f=c(74429);let g=()=>()=>{},h=()=>document.body,i=()=>null,j=(0,e.createContext)(null);function k({children:a}){let b=(0,e.useContext)(j),c=(0,e.useSyncExternalStore)(g,h,i),d=b??c;return d?(0,f.createPortal)(a,d):null}function l({children:a}){let[b,c]=(0,e.useState)(null);return(0,d.jsxs)("div",{className:"relative w-full h-full",style:{transform:"translateZ(0)"},children:[(0,d.jsx)(j.Provider,{value:b,children:a}),(0,d.jsx)("div",{ref:c,className:"absolute inset-0 pointer-events-none [&>*]:pointer-events-auto"})]})}function m(){return(0,e.useContext)(j)}},33873:a=>{"use strict";a.exports=require("path")},41025:a=>{"use strict";a.exports=require("next/dist/server/app-render/dynamic-access-async-storage.external.js")},43954:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/interception-routes")},44236:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>h,dynamic:()=>f,generateMetadata:()=>g});var d=c(5735),e=c(79436);let f="force-dynamic";async function g({params:a}){let{id:b}=await a;return{title:`Review - ${b}`}}async function h({params:a}){let{id:b}=await a;return(0,d.jsx)(e.ReviewPage,{reviewId:b})}},49280:(a,b,c)=>{"use strict";c.d(b,{T:()=>v});var d=c(48249),e=c(98051),f=c(38368),g=c(33972),h=c(10841),i=c(99773),j=c(36513);c(55583),c(87023);var k=c(50757),l=c(27454),m=c(37752),n=c(67484),o=c(3532);let p=[f.A,g.A,h.jb],q=[f.A,h.jb],r=[i.A,j.A],s=[i.A];function t(a){return a.replace(/^(\|.+\|)$/gm,a=>/^\|[\s:|-]+\|$/.test(a)?a:a.replace(/`([^`]*)`/g,(a,b)=>b.includes("|")?"`"+b.replace(/\|/g,"\\|")+"`":a))}function u(a){return a.replace(/\$(\d)/g,"\\$$1")}let v=(0,n.memo)(function({content:a,isUser:b=!1,isStreaming:c=!1,enableMath:f=!0,rehypePlugins:g}){let{resolvedTheme:h}=(0,o.D)(),i="dark"===h,j=(0,n.useMemo)(()=>({code({className:a,children:b,node:c,...e}){let f=/language-(\w+)/.exec(a||""),g=String(b);if(!f&&!a&&!g.includes("\n"))return(0,d.jsx)("code",{className:"px-1.5 py-0.5 mx-0.5 rounded bg-accent text-sm font-mono",...e,children:b});let h=String(b).replace(/\n$/,""),j=f?.[1]||"text",n=Number(e["data-source-start"])||0,o=n?n+1:0,p=0;return(0,d.jsx)(k.A,{style:i?l.A:m.A,language:j,PreTag:"div",customStyle:{margin:"0.75rem 0",borderRadius:"0.375rem",fontSize:"0.875rem"},wrapLines:!0,lineProps:()=>{let a=o+p;return p++,{"data-source-start":a,"data-source-end":a,style:{display:"block"}}},children:h})},p:({children:a,node:b,...c})=>(0,d.jsx)("p",{className:"mb-3 last:mb-0",...c,children:a}),h1:({children:a,node:b,...c})=>(0,d.jsx)("h1",{className:"text-xl font-bold mb-3 mt-4 first:mt-0",...c,children:a}),h2:({children:a,node:b,...c})=>(0,d.jsx)("h2",{className:"text-lg font-bold mb-2 mt-3 first:mt-0",...c,children:a}),h3:({children:a,node:b,...c})=>(0,d.jsx)("h3",{className:"text-base font-bold mb-2 mt-3 first:mt-0",...c,children:a}),ul:({children:a,node:b,...c})=>(0,d.jsx)("ul",{className:"list-disc list-inside mb-3 space-y-1",...c,children:a}),ol:({children:a,node:b,...c})=>(0,d.jsx)("ol",{className:"list-decimal list-inside mb-3 space-y-1",...c,children:a}),li:({children:a,node:b,...c})=>(0,d.jsx)("li",{className:"leading-relaxed",...c,children:a}),blockquote:({children:a,node:b,...c})=>(0,d.jsx)("blockquote",{className:"border-l-4 border-border pl-4 my-3 italic text-muted-foreground",...c,children:a}),a:({href:a,children:b,node:c,...e})=>(0,d.jsx)("a",{href:a,target:"_blank",rel:"noopener noreferrer",className:"text-brand hover:underline",...e,children:b}),table:({children:a,node:b,...c})=>(0,d.jsx)("div",{className:"overflow-x-auto my-3",...c,children:(0,d.jsx)("table",{className:"min-w-full border border-border",children:a})}),thead:({children:a,node:b,...c})=>(0,d.jsx)("thead",{className:"bg-accent",...c,children:a}),th:({children:a,node:b,...c})=>(0,d.jsx)("th",{className:"px-4 py-2 text-left font-semibold border-b border-border",...c,children:a}),td:({children:a,node:b,...c})=>(0,d.jsx)("td",{className:"px-4 py-2 border-b border-border",...c,children:a}),hr:({node:a,...b})=>(0,d.jsx)("hr",{className:"my-4 border-border",...b}),img:({src:a,alt:b,node:c,height:e,width:f,style:g,...h})=>{if(!(e||f||g))return(0,d.jsx)("img",{src:a,alt:b||"",className:"max-w-full h-auto rounded-lg my-3",...h});let i=a=>a?/^\d+$/.test(String(a))?`${a}px`:String(a):void 0,j={...g,height:i(e)??g?.height,width:i(f)??g?.width};return(0,d.jsx)("img",{src:a,alt:b||"",style:j,className:"inline-block align-middle",...h})},strong:({children:a,node:b,...c})=>(0,d.jsx)("strong",{className:"font-bold",...c,children:a}),em:({children:a,node:b,...c})=>(0,d.jsx)("em",{className:"italic",...c,children:a}),del:({children:a,node:b,...c})=>(0,d.jsx)("del",{className:"line-through",...c,children:a})}),[i]),v=f?p:q,w=f?r:s,x=(0,n.useMemo)(()=>{if(b||c)return a;let d=t(!function(a){if(/^\|[\s:|-]+\|$/m.test(a))return!1;if(/[┌┐└┘│─├┤┬┴┼╔╗╚╝║═╭╮╯╰▲▼◀▶△▽◁▷]/.test(a)||/\+[-=]{2,}\+/.test(a))return!0;let b=a.split("\n").filter(a=>/^\s*\||\|\s*$/.test(a));if(b.length>=3){let a=b.map(a=>(a.match(/\|/g)||[]).length);return!a.every(b=>b===a[0])||!(a[0]>=3)}return!1}(a)||/^```[\s\S]*```$/m.test(a.trim())?a:"```text\n"+a.trim()+"\n```");return f?u(d):d},[a,b,c,f]),y=(0,n.useMemo)(()=>g?.length?[...w,...g]:w,[g,w]);if(b)return(0,d.jsx)("div",{className:"whitespace-pre-wrap break-words",children:a});if(c){let b=a.lastIndexOf("\n");if(-1===b)return(0,d.jsx)("div",{className:"whitespace-pre-wrap break-words",children:a});let c=a.slice(0,b+1),g=a.slice(b+1);return(0,d.jsxs)("div",{className:"markdown-body",children:[(0,d.jsx)(e.oz,{remarkPlugins:v,rehypePlugins:w,components:j,children:f?u(t(c)):t(c)}),g&&(0,d.jsx)("span",{className:"whitespace-pre-wrap",children:g})]})}return(0,d.jsx)("div",{className:"markdown-body",children:(0,d.jsx)(e.oz,{remarkPlugins:v,rehypePlugins:y,components:j,children:x})})})},55511:a=>{"use strict";a.exports=require("crypto")},61598:(a,b,c)=>{Promise.resolve().then(c.bind(c,81729))},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},66326:(a,b,c)=>{Promise.resolve().then(c.bind(c,79436))},70722:a=>{"use strict";a.exports=require("next/dist/shared/lib/invariant-error")},73136:a=>{"use strict";a.exports=require("node:url")},76760:a=>{"use strict";a.exports=require("node:path")},77068:a=>{"use strict";a.exports=require("next/dist/shared/lib/size-limit")},79327:a=>{"use strict";a.exports=require("node:process")},79436:(a,b,c)=>{"use strict";c.d(b,{ReviewPage:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call ReviewPage() from the server but ReviewPage 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/cockpit/cockpit/src/components/review/ReviewPage.tsx","ReviewPage")},81729:(a,b,c)=>{"use strict";c.d(b,{ReviewPage:()=>z});var d=c(48249),e=c(67484),f=c(44384),g=c(49280),h=c(30068),i=c(3532),j=c(90500);function k({selectedText:a,position:b,onSubmit:c,onCancel:g}){let{t:h}=(0,f.Bd)(),[i,j]=(0,e.useState)(""),l=(0,e.useRef)(null),m=(0,e.useRef)(null),n=()=>{let a=i.trim();a&&c(a)},o=a.length>60?a.slice(0,57)+"...":a;return(0,d.jsxs)("div",{ref:m,className:"absolute z-50 w-96 bg-card border border-border rounded-lg shadow-lg",style:{top:b.top,left:Math.max(8,b.left-192)},children:[(0,d.jsxs)("div",{className:"px-3 pt-3 pb-2",children:[(0,d.jsx)("div",{className:"text-xs text-muted-foreground mb-1",children:h("review.selectedText")}),(0,d.jsx)("div",{className:"text-xs bg-yellow-500/10 border-l-2 border-yellow-500 px-2 py-1 rounded-r truncate",children:o})]}),(0,d.jsx)("div",{className:"px-3 pb-2",children:(0,d.jsx)("textarea",{ref:l,value:i,onChange:a=>j(a.target.value),onKeyDown:a=>{"Enter"!==a.key||a.shiftKey||a.nativeEvent.isComposing||(a.preventDefault(),n())},placeholder:h("review.addCommentPlaceholder"),className:"w-full px-2 py-1.5 text-sm bg-secondary border border-border rounded resize-none focus:outline-none focus:border-brand",rows:4})}),(0,d.jsxs)("div",{className:"px-3 pb-3 flex items-center justify-between",children:[(0,d.jsx)("span",{className:"text-[10px] text-muted-foreground",children:h("review.enterSubmitHint")}),(0,d.jsxs)("div",{className:"flex gap-1",children:[(0,d.jsx)("button",{onClick:g,className:"px-2 py-1 text-xs rounded hover:bg-accent transition-colors text-muted-foreground",children:h("common.cancel")}),(0,d.jsx)("button",{onClick:n,disabled:!i.trim(),className:"px-2 py-1 text-xs rounded bg-brand text-white hover:bg-brand/90 transition-colors disabled:opacity-40",children:h("review.commentBtn")})]})]})]})}let l={bg:"rgba(234, 179, 8, 0.15)",bgActive:"rgba(234, 179, 8, 0.4)",bgPending:"rgba(234, 179, 8, 0.3)",border:"rgba(234, 179, 8, 0.7)",borderPending:"rgba(234, 179, 8, 0.9)"},m={bg:"rgba(234, 179, 8, 0.1)",bgActive:"rgba(234, 179, 8, 0.3)",bgPending:"rgba(234, 179, 8, 0.2)",border:"rgba(234, 179, 8, 0.5)",borderPending:"rgba(234, 179, 8, 0.7)"};function n({rects:a,activeCommentId:b,pendingCommentId:c,isDark:e}){if(0===a.length)return null;let f=e?m:l;return(0,d.jsx)("div",{style:{position:"absolute",top:0,left:0,width:"100%",height:0,overflow:"visible",pointerEvents:"none",zIndex:5},children:a.map((a,e)=>{let g=a.commentId===b,h=a.commentId===c,i=f.bg;return h?i=f.bgPending:g&&(i=f.bgActive),(0,d.jsx)("div",{"data-comment-id":a.commentId,style:{position:"absolute",top:a.top,left:a.left,width:a.width,height:a.height,backgroundColor:i,borderBottom:`1px solid ${h?f.borderPending:f.border}`,borderRadius:1,pointerEvents:"none"}},`${a.commentId}-${e}`)})})}let o=[j.W];function p({content:a,comments:b,activeCommentId:c,isActive:f,onAddComment:j,onHighlightClick:l,scrollToHighlightRef:m}){let{resolvedTheme:q}=(0,i.D)(),r=(0,e.useRef)(null),s=(0,e.useRef)(null),[t,u]=(0,e.useState)(null),{rects:v,scrollToHighlight:w}=function(a,b,c){let[d,f]=(0,e.useState)([]),g=(0,e.useRef)(0),h=(0,e.useRef)(c);(0,e.useCallback)(()=>{g.current&&cancelAnimationFrame(g.current),g.current=requestAnimationFrame(()=>{let c=a.current,d=b.current;if(!c||!d)return;let e=function(a,b,c){let d=[],e=b.getBoundingClientRect(),f=function(a){let b=[],c=document.createTreeWalker(a,NodeFilter.SHOW_TEXT),d=0;for(;c.nextNode();){let a=c.currentNode,e=a.textContent?.length||0;b.push({node:a,start:d,end:d+e}),d+=e}return b}(a);if(0===f.length)return d;for(let a of c){let{startOffset:c,endOffset:g}=a.anchor;if(c>=g)continue;let h=null,i=0,j=null,k=0;for(let{node:a,start:b,end:d}of f)if(!h&&c>=b&&c<d&&(h=a,i=c-b),g>b&&g<=d){j=a,k=g-b;break}if(!h||!j)continue;let l=document.createRange();try{l.setStart(h,i),l.setEnd(j,k)}catch{continue}for(let c of l.getClientRects())c.width<1||c.height<1||d.push({commentId:a.id,top:c.top-e.top+b.scrollTop,left:c.left-e.left+b.scrollLeft,width:c.width,height:c.height})}return d}(c,d,h.current);f(a=>a.length===e.length&&a.every((a,b)=>a.commentId===e[b].commentId&&.5>Math.abs(a.top-e[b].top)&&.5>Math.abs(a.left-e[b].left)&&.5>Math.abs(a.width-e[b].width)&&.5>Math.abs(a.height-e[b].height))?a:e)})},[a,b]);let i=(0,e.useCallback)(a=>{let c=b.current;if(!c)return;let e=d.find(b=>b.commentId===a);if(!e)return;let f=c.clientHeight;c.scrollTo({top:e.top-f/2+e.height/2,behavior:"smooth"})},[b,d]);return{rects:d,scrollToHighlight:i}}(r,s,(0,e.useMemo)(()=>t?[...b,{id:"__pending__",author:"",authorId:"",content:"",anchor:t.anchor,createdAt:0,replies:[]}]:b,[b,t])),x=(0,e.useRef)(v),y=(0,e.useCallback)(a=>{let b=window.getSelection(),c=b&&!b.isCollapsed;if(c&&f&&r.current){let c=b.getRangeAt(0);if(r.current.contains(c.startContainer)&&r.current.contains(c.endContainer)){let d=function(a,b){let c=document.createTreeWalker(a,NodeFilter.SHOW_TEXT),d=0,e=-1,f=-1;for(;c.nextNode();){let a=c.currentNode,g=a.textContent?.length||0;if(a===b.startContainer&&(e=d+b.startOffset),a===b.endContainer){f=d+b.endOffset;break}d+=g}if(-1===e||-1===f||e>=f)return null;let g=a.textContent?.slice(e,f)||"";return g.trim()?{startOffset:e,endOffset:f,selectedText:g}:null}(r.current,c);if(d){let c=s.current??r.current.parentElement,e=c.getBoundingClientRect();u({anchor:d,position:{top:a.clientY-e.top+c.scrollTop+8,left:a.clientX-e.left}}),b.removeAllRanges();return}}}if(!c&&!t){let b=s.current;if(!b)return;let c=b.getBoundingClientRect(),d=a.clientX-c.left+b.scrollLeft,e=a.clientY-c.top+b.scrollTop;for(let a of x.current)if("__pending__"!==a.commentId&&d>=a.left&&d<=a.left+a.width&&e>=a.top&&e<=a.top+a.height)return void l(a.commentId)}},[f,t,l]),z=(0,e.useCallback)(a=>{t&&(j(a,t.anchor),u(null),window.getSelection()?.removeAllRanges())},[t,j]),A=(0,e.useCallback)(()=>{u(null),window.getSelection()?.removeAllRanges()},[]);return(0,d.jsxs)("div",{className:"h-full flex bg-card",children:[(0,d.jsx)(h.l,{content:a,containerRef:s}),(0,d.jsxs)("div",{ref:s,className:"flex-1 overflow-auto relative",onMouseUp:y,children:[(0,d.jsx)("div",{ref:r,className:"p-6 review-markdown-container",children:(0,d.jsx)(g.T,{content:a,rehypePlugins:o})}),(0,d.jsx)(n,{rects:v,activeCommentId:c,pendingCommentId:t?"__pending__":null,isDark:"dark"===q}),t&&(0,d.jsx)(k,{selectedText:t.anchor.selectedText,position:t.position,onSubmit:z,onCancel:A})]})]})}var q=c(41564);function r(a){let b=new Date(a),c=Math.floor((new Date().getTime()-b.getTime())/6e4);if(c<1)return q.A.t("common.justNow");if(c<60)return q.A.t("common.minutesAgo",{count:c});let d=Math.floor(c/60);if(d<24)return q.A.t("common.hoursAgo",{count:d});let e=Math.floor(d/24);return e<7?q.A.t("common.daysAgo",{count:e}):b.toLocaleDateString()}let s=(0,e.forwardRef)(function({comment:a,isActive:b,isOwnComment:c,isAdmin:g,currentAuthorId:h,canInteract:i,userNameMap:j,onClick:k,onDelete:l,onEdit:m,onToggleClosed:n,onAddReply:o,onDeleteReply:p,onEditReply:q},s){let{t}=(0,f.Bd)(),u=(a,b)=>j[a]||b,[v,w]=(0,e.useState)(""),[x,y]=(0,e.useState)(!1),[z,A]=(0,e.useState)(!1),[B,C]=(0,e.useState)(""),[D,E]=(0,e.useState)(null),[F,G]=(0,e.useState)(""),H=()=>{let a=v.trim();a&&(o(a),w(""),y(!1))},I=()=>{let b=B.trim();b&&b!==a.content&&m(b),A(!1)},J=()=>{if(!D)return;let b=F.trim(),c=a.replies.find(a=>a.id===D);!b||c&&b===c.content||q(D,b),E(null)},K=a.anchor.selectedText.length>80?a.anchor.selectedText.slice(0,77)+"...":a.anchor.selectedText,L=g||c||i;return a.closed?(0,d.jsxs)("div",{ref:s,className:"rounded-lg border border-border/50 bg-card/50 opacity-60 hover:opacity-80 transition-all cursor-pointer px-3 py-2 flex items-center gap-2",onClick:k,children:[(0,d.jsx)("span",{className:"w-4 h-4 rounded-full bg-brand/20 text-brand flex items-center justify-center text-[9px] font-bold flex-shrink-0",children:u(a.authorId,a.author).charAt(0)}),(0,d.jsx)("span",{className:"text-xs text-muted-foreground truncate flex-1",children:K}),(0,d.jsx)("span",{className:"text-[10px] text-muted-foreground/50 flex-shrink-0",children:t("review.closedLabel")}),L&&(0,d.jsx)("button",{onClick:a=>{a.stopPropagation(),n(!1)},className:"text-[10px] text-muted-foreground hover:text-foreground transition-colors flex-shrink-0",title:t("review.reopenReview"),children:t("review.reopen")}),(c&&i||g)&&(0,d.jsx)("button",{onClick:a=>{a.stopPropagation(),l()},className:"text-[10px] text-muted-foreground hover:text-red-500 transition-colors flex-shrink-0",title:t("review.deleteComment"),children:t("common.delete")})]}):(0,d.jsxs)("div",{ref:s,className:`rounded-lg border transition-all cursor-pointer ${b?"border-brand bg-brand/5 shadow-sm":"border-border bg-card hover:border-muted-foreground/30"}`,onClick:k,children:[(0,d.jsx)("div",{className:"px-3 pt-3 pb-1",children:(0,d.jsx)("div",{className:"text-xs bg-yellow-500/10 border-l-2 border-yellow-500 px-2 py-1 rounded-r text-muted-foreground truncate",children:K})}),(0,d.jsxs)("div",{className:"px-3 pt-2 flex items-center gap-2",children:[(0,d.jsx)("span",{className:"w-5 h-5 rounded-full bg-brand/20 text-brand flex items-center justify-center text-[10px] font-bold flex-shrink-0",children:u(a.authorId,a.author).charAt(0)}),(0,d.jsx)("span",{className:"text-xs font-medium",children:u(a.authorId,a.author)}),(0,d.jsx)("span",{className:"text-[10px] text-muted-foreground",children:r(a.createdAt)}),(0,d.jsx)("div",{className:"flex-1"}),!z&&(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[L&&(0,d.jsx)("button",{onClick:a=>{a.stopPropagation(),n(!0)},className:"text-[10px] text-muted-foreground hover:text-foreground transition-colors",title:t("review.closeComment"),children:t("review.closeComment")}),c&&i&&(0,d.jsx)("button",{onClick:b=>{b.stopPropagation(),C(a.content),A(!0)},className:"text-[10px] text-muted-foreground hover:text-foreground transition-colors",title:t("review.editComment"),children:t("common.edit")}),(c&&i||g)&&(0,d.jsx)("button",{onClick:a=>{a.stopPropagation(),l()},className:"text-[10px] text-muted-foreground hover:text-red-500 transition-colors",title:t("review.deleteComment"),children:t("common.delete")})]})]}),(0,d.jsx)("div",{className:"px-3 pt-1 pb-2",children:z?(0,d.jsxs)("div",{onClick:a=>a.stopPropagation(),children:[(0,d.jsx)("textarea",{value:B,onChange:a=>C(a.target.value),onKeyDown:a=>{"Enter"!==a.key||a.shiftKey||a.nativeEvent.isComposing||(a.preventDefault(),I()),"Escape"===a.key&&A(!1)},className:"w-full px-2 py-1.5 text-sm bg-secondary border border-border rounded resize-none focus:outline-none focus:border-brand",rows:3,autoFocus:!0}),(0,d.jsxs)("div",{className:"flex items-center justify-end gap-1 mt-1",children:[(0,d.jsx)("button",{onClick:()=>A(!1),className:"px-2 py-0.5 text-xs rounded hover:bg-accent transition-colors text-muted-foreground",children:t("common.cancel")}),(0,d.jsx)("button",{onClick:I,disabled:!B.trim(),className:"px-2 py-0.5 text-xs rounded bg-brand text-white hover:bg-brand/90 transition-colors disabled:opacity-40",children:t("common.save")})]})]}):(0,d.jsxs)("div",{className:"text-sm whitespace-pre-wrap",children:[a.content,a.edited&&(0,d.jsx)("span",{className:"text-[10px] text-muted-foreground ml-1",children:t("review.edited")})]})}),a.replies.length>0&&(0,d.jsx)("div",{className:"mx-3 border-t border-border",children:a.replies.map(a=>(0,d.jsxs)("div",{className:"py-2 border-b border-border last:border-b-0",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("span",{className:"w-4 h-4 rounded-full bg-accent text-muted-foreground flex items-center justify-center text-[9px] font-bold flex-shrink-0",children:u(a.authorId,a.author).charAt(0)}),(0,d.jsx)("span",{className:"text-xs font-medium",children:u(a.authorId,a.author)}),(0,d.jsx)("span",{className:"text-[10px] text-muted-foreground",children:r(a.createdAt)}),(0,d.jsx)("div",{className:"flex-1"}),D!==a.id&&(a.authorId===h&&i||g)&&(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[a.authorId===h&&i&&(0,d.jsx)("button",{onClick:b=>{var c;b.stopPropagation(),c=a.id,G(a.content),E(c)},className:"text-[10px] text-muted-foreground hover:text-foreground transition-colors",title:t("review.editReply"),children:t("common.edit")}),(0,d.jsx)("button",{onClick:b=>{b.stopPropagation(),p(a.id)},className:"text-[10px] text-muted-foreground hover:text-red-500 transition-colors",title:t("review.deleteReply"),children:t("common.delete")})]})]}),D===a.id?(0,d.jsxs)("div",{className:"mt-1 pl-6",onClick:a=>a.stopPropagation(),children:[(0,d.jsx)("textarea",{value:F,onChange:a=>G(a.target.value),onKeyDown:a=>{"Enter"!==a.key||a.shiftKey||a.nativeEvent.isComposing||(a.preventDefault(),J()),"Escape"===a.key&&E(null)},className:"w-full px-2 py-1 text-sm bg-secondary border border-border rounded resize-none focus:outline-none focus:border-brand",rows:2,autoFocus:!0}),(0,d.jsxs)("div",{className:"flex items-center justify-end gap-1 mt-1",children:[(0,d.jsx)("button",{onClick:()=>E(null),className:"px-2 py-0.5 text-xs rounded hover:bg-accent transition-colors text-muted-foreground",children:t("common.cancel")}),(0,d.jsx)("button",{onClick:J,disabled:!F.trim(),className:"px-2 py-0.5 text-xs rounded bg-brand text-white hover:bg-brand/90 transition-colors disabled:opacity-40",children:t("common.save")})]})]}):(0,d.jsxs)("div",{className:"text-sm mt-0.5 pl-6 whitespace-pre-wrap",children:[a.content,a.edited&&(0,d.jsx)("span",{className:"text-[10px] text-muted-foreground ml-1",children:t("review.edited")})]})]},a.id))}),(0,d.jsx)("div",{className:"px-3 pb-2 pt-1",children:x?(0,d.jsxs)("div",{className:"mt-1",onClick:a=>a.stopPropagation(),children:[(0,d.jsx)("textarea",{value:v,onChange:a=>w(a.target.value),onKeyDown:a=>{"Enter"!==a.key||a.shiftKey||a.nativeEvent.isComposing||(a.preventDefault(),H()),"Escape"===a.key&&y(!1)},placeholder:t("review.replyPlaceholder"),className:"w-full px-2 py-1 text-sm bg-secondary border border-border rounded resize-none focus:outline-none focus:border-brand",rows:2,autoFocus:!0}),(0,d.jsxs)("div",{className:"flex items-center justify-end gap-1 mt-1",children:[(0,d.jsx)("button",{onClick:()=>y(!1),className:"px-2 py-0.5 text-xs rounded hover:bg-accent transition-colors text-muted-foreground",children:t("common.cancel")}),(0,d.jsx)("button",{onClick:H,disabled:!v.trim(),className:"px-2 py-0.5 text-xs rounded bg-brand text-white hover:bg-brand/90 transition-colors disabled:opacity-40",children:t("review.reply")})]})]}):i&&(0,d.jsx)("button",{onClick:a=>{a.stopPropagation(),y(!0)},className:"text-xs text-muted-foreground hover:text-foreground transition-colors",children:t("review.reply")})})]})});function t({comments:a,activeCommentId:b,currentAuthorId:c,isActive:g,isAdmin:h,userNameMap:i,onCommentClick:j,onNavigateComment:k,onDeleteComment:l,onEditComment:m,onToggleCommentClosed:n,onAddReply:o,onDeleteReply:p,onEditReply:q,scrollToCommentRef:r}){let{t:u}=(0,f.Bd)(),v=(0,e.useRef)(new Map),w=(0,e.useRef)(null);(0,e.useCallback)(a=>{let b=v.current.get(a);b&&b.scrollIntoView({behavior:"smooth",block:"center"})},[]);let x=[...a].sort((a,b)=>a.anchor.startOffset-b.anchor.startOffset);return(0,d.jsxs)("div",{ref:w,className:"h-full flex flex-col bg-card",children:[(0,d.jsxs)("div",{className:"px-4 py-2 bg-secondary border-b border-border flex-shrink-0 flex items-center",children:[(0,d.jsx)("span",{className:"text-xs text-muted-foreground",children:0===a.length?u("review.selectTextToComment"):b?u("review.commentsNavCount",{current:x.findIndex(a=>a.id===b)+1,total:a.length}):u("review.commentsCount",{count:a.length})}),a.length>0&&(0,d.jsxs)("div",{className:"flex items-center gap-1 ml-2",children:[(0,d.jsxs)("button",{onClick:()=>k("prev"),className:"px-1.5 py-0.5 text-[11px] text-muted-foreground hover:text-foreground hover:bg-accent rounded transition-colors flex items-center gap-0.5",title:u("review.prevComment"),children:[(0,d.jsx)("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:"15 18 9 12 15 6"})}),u("review.prevComment")]}),(0,d.jsxs)("button",{onClick:()=>k("next"),className:"px-1.5 py-0.5 text-[11px] text-muted-foreground hover:text-foreground hover:bg-accent rounded transition-colors flex items-center gap-0.5",title:u("review.nextComment"),children:[u("review.nextComment"),(0,d.jsx)("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:"9 18 15 12 9 6"})})]})]})]}),(0,d.jsx)("div",{className:"flex-1 overflow-auto",children:0===x.length?(0,d.jsx)("div",{className:"flex items-center justify-center h-full text-muted-foreground text-sm",children:(0,d.jsxs)("div",{className:"text-center",children:[(0,d.jsx)("div",{className:"text-2xl mb-2",children:"\uD83D\uDCAC"}),(0,d.jsx)("div",{children:u("review.selectTextHint")})]})}):(0,d.jsx)("div",{className:"p-3 space-y-3",children:x.map(a=>(0,d.jsx)(s,{ref:b=>{b?v.current.set(a.id,b):v.current.delete(a.id)},comment:a,isActive:a.id===b,isOwnComment:a.authorId===c,isAdmin:h,currentAuthorId:c,canInteract:g,userNameMap:i,onClick:()=>j(a.id),onDelete:()=>l(a.id),onEdit:b=>m(a.id,b),onToggleClosed:b=>n(a.id,b),onAddReply:b=>o(a.id,b),onDeleteReply:b=>p(a.id,b),onEditReply:(b,c)=>q(a.id,b,c)},a.id))})})]})}function u({identity:a}){let{t:b}=(0,f.Bd)(),[c,g]=(0,e.useState)(!1),[h,i]=(0,e.useState)(""),j=(0,e.useRef)(null),k=()=>{let b=h.trim();b&&b!==a.name&&a.confirmName(b),g(!1)};return(0,d.jsxs)("div",{className:"relative",ref:j,children:[(0,d.jsxs)("button",{onClick:()=>{c||i(a.name),g(!c)},className:"px-2 py-1 text-xs rounded hover:bg-accent transition-colors flex items-center gap-1",title:b("review.identitySettings"),children:[(0,d.jsx)("span",{className:"w-5 h-5 rounded-full bg-brand/20 text-brand flex items-center justify-center text-[10px] font-bold",children:a.name.charAt(0)}),(0,d.jsx)("span",{className:"text-muted-foreground",children:a.name})]}),c&&(0,d.jsxs)("div",{className:"absolute right-0 top-full mt-1 w-56 bg-card border border-border rounded-lg shadow-lg p-3 z-50",children:[(0,d.jsx)("div",{className:"text-xs text-muted-foreground mb-2",children:b("review.reviewNickname")}),(0,d.jsx)("input",{type:"text",value:h,onChange:a=>i(a.target.value),onKeyDown:a=>{"Enter"!==a.key||a.nativeEvent.isComposing||k()},className:"w-full px-2 py-1 text-sm bg-secondary border border-border rounded focus:outline-none focus:border-brand",autoFocus:!0}),(0,d.jsxs)("div",{className:"flex items-center gap-2 mt-2",children:[(0,d.jsx)("button",{onClick:()=>{a.randomize(),g(!1)},className:"px-2 py-1 text-xs rounded hover:bg-accent transition-colors text-muted-foreground",children:b("review.random")}),(0,d.jsx)("div",{className:"flex-1"}),(0,d.jsx)("button",{onClick:()=>g(!1),className:"px-2 py-1 text-xs rounded hover:bg-accent transition-colors text-muted-foreground",children:b("common.cancel")}),(0,d.jsx)("button",{onClick:k,className:"px-2 py-1 text-xs rounded bg-brand text-white hover:bg-brand/90 transition-colors",children:b("common.save")})]})]})]})}function v({currentReviewId:a,onSelect:b,readOnly:c,refreshTrigger:g,onViewComments:h}){let{t:i}=(0,f.Bd)(),[j,k]=(0,e.useState)([]),[l,m]=(0,e.useState)(null),[n,o]=(0,e.useState)(null),[p,q]=(0,e.useState)(!1),[r,s]=(0,e.useState)(null),t=(0,e.useRef)(null),[u,w]=(0,e.useState)(null);(0,e.useCallback)(async()=>{try{let a=await fetch("/api/review");if(a.ok){let b=await a.json();k(b.reviews||[])}}catch{}},[]);let x=(0,e.useCallback)(async(a,b,c)=>{if(a.stopPropagation(),!n){o(b);try{(await fetch(`/api/review/${b}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({active:!c})})).ok&&k(a=>a.map(a=>a.id===b?{...a,active:!c}:a))}catch{}o(null)}},[n]),y=(0,e.useCallback)(async(c,d)=>{if(c.stopPropagation(),!l){m(d);try{if((await fetch(`/api/review/${d}`,{method:"DELETE"})).ok&&(k(a=>a.filter(a=>a.id!==d)),d===a)){let a=j.filter(a=>a.id!==d);a.length>0&&b(a[0].id)}}catch{}m(null)}},[l,a,j,b]),z=(0,e.useCallback)((a,b)=>{t.current=b,a.dataTransfer.effectAllowed="move";let c=a.currentTarget;requestAnimationFrame(()=>c.classList.add("opacity-30"))},[]),A=(0,e.useCallback)(a=>{t.current=null,w(null),a.currentTarget instanceof HTMLElement&&a.currentTarget.classList.remove("opacity-30")},[]),B=(0,e.useCallback)((a,b)=>{a.preventDefault(),a.dataTransfer.dropEffect="move",t.current&&t.current!==b&&w(b)},[]),C=(0,e.useCallback)(async(a,b)=>{a.preventDefault(),w(null);let c=t.current;t.current=null,c&&c!==b&&k(a=>{let d=[...a],e=d.findIndex(a=>a.id===c),f=d.findIndex(a=>a.id===b);if(-1===e||-1===f)return a;let[g]=d.splice(e,1);return d.splice(f,0,g),fetch("/api/review/order",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({order:d.map(a=>a.id)})}).catch(()=>{}),d})},[]),D=c?j.filter(a=>a.active):j,E=!c;return p?(0,d.jsxs)("div",{className:"h-full flex flex-col items-center bg-secondary/50 w-9 flex-shrink-0 border-r border-border",children:[(0,d.jsx)("button",{onClick:()=>q(!1),className:"p-1.5 mt-2 text-muted-foreground hover:text-foreground hover:bg-accent rounded transition-colors",title:i("review.expandList"),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)("polyline",{points:"9 18 15 12 9 6"})})}),(0,d.jsx)("span",{className:"text-[10px] text-muted-foreground/50 mt-2",style:{writingMode:"vertical-rl"},children:c?i("review.nDocs",{count:D.length}):i("review.nReviews",{count:D.length})})]}):(0,d.jsxs)("div",{className:"h-full flex flex-col bg-secondary/50 w-[200px] flex-shrink-0 border-r border-border",children:[(0,d.jsxs)("div",{className:"px-3 py-2 border-b border-border flex-shrink-0 flex items-center justify-between",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("span",{className:"text-xs font-medium text-muted-foreground",children:c?i("review.docList"):i("review.allReviewsList")}),(0,d.jsx)("span",{className:"text-xs text-muted-foreground/60 ml-1.5",children:D.length})]}),(0,d.jsx)("button",{onClick:()=>q(!0),className:"p-0.5 text-muted-foreground hover:text-foreground hover:bg-accent rounded transition-colors",title:i("review.collapseList"),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)("polyline",{points:"15 18 9 12 15 6"})})})]}),(0,d.jsxs)("div",{className:"flex-1 overflow-y-auto",children:[D.map(e=>(0,d.jsxs)("div",{draggable:E,onDragStart:E?a=>z(a,e.id):void 0,onDragEnd:E?A:void 0,onDragOver:E?a=>B(a,e.id):void 0,onDrop:E?a=>C(a,e.id):void 0,onMouseEnter:a=>{let b=a.currentTarget.getBoundingClientRect();s({id:e.id,text:e.title,top:b.top+b.height/2,left:b.right})},onMouseLeave:()=>s(a=>a?.id===e.id?null:a),onClick:()=>b(e.id),className:`group px-3 py-2 cursor-pointer border-b transition-colors ${u===e.id?"border-b-brand border-t border-t-transparent":"border-b-border/50"} ${e.id===a?"bg-accent/60":"hover:bg-accent/30"}`,children:[(0,d.jsxs)("div",{className:"flex items-center gap-1.5 min-w-0",children:[!c&&(0,d.jsx)("span",{className:`w-1.5 h-1.5 rounded-full flex-shrink-0 ${e.active?"bg-green-500":"bg-muted-foreground/40"}`}),(0,d.jsx)("span",{className:"text-xs truncate flex-1",children:e.title}),e.commentCount>0&&h&&(0,d.jsx)("button",{onClick:a=>{a.stopPropagation(),h(e.id)},className:"flex-shrink-0 p-0.5 rounded text-muted-foreground/0 group-hover:text-muted-foreground/60 hover:!text-brand hover:!bg-brand/10 transition-colors",title:i("review.viewComments"),children:(0,d.jsx)("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:"M7 8h10M7 12h4m1 8l-4-4H5a2 2 0 01-2-2V6a2 2 0 012-2h14a2 2 0 012 2v8a2 2 0 01-2 2h-3l-4 4z"})})}),!c&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("button",{onClick:a=>x(a,e.id,e.active),className:`flex-shrink-0 p-0.5 rounded text-muted-foreground/0 group-hover:text-muted-foreground/60 hover:!text-foreground hover:!bg-accent transition-colors ${n===e.id?"opacity-50 pointer-events-none":""}`,title:e.active?i("review.closeReview"):i("review.reopenReview"),children:e.active?(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:"M18.36 6.64a9 9 0 1 1-12.73 0"}),(0,d.jsx)("line",{x1:"12",y1:"2",x2:"12",y2:"12"})]}):(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:"M18.36 6.64A9 9 0 0 1 12 21 9 9 0 0 1 5.64 6.64"}),(0,d.jsx)("line",{x1:"12",y1:"2",x2:"12",y2:"12"})]})}),(0,d.jsx)("button",{onClick:a=>y(a,e.id),className:`flex-shrink-0 p-0.5 rounded text-muted-foreground/0 group-hover:text-muted-foreground/60 hover:!text-red-500 hover:!bg-red-500/10 transition-colors ${l===e.id?"opacity-50 pointer-events-none":""}`,title:i("review.deleteReview"),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 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"})]})})]})]}),e.commentCount>0&&(0,d.jsx)("div",{className:`text-[10px] text-muted-foreground/50 mt-0.5 ${c?"":"pl-3"}`,children:i("review.nComments",{count:e.commentCount})})]},e.id)),0===D.length&&(0,d.jsx)("div",{className:"px-3 py-4 text-xs text-muted-foreground/50 text-center",children:c?i("review.noOpenDocs"):i("review.noReviews")})]}),r&&(0,d.jsx)("div",{className:"fixed z-50 px-2 py-1 text-xs bg-popover text-popover-foreground border border-border rounded shadow-md whitespace-nowrap pointer-events-none",style:{top:r.top,left:r.left+8,transform:"translateY(-50%)"},children:r.text})]})}function w({currentName:a,onConfirm:b,onSkip:c}){let{t:g}=(0,f.Bd)(),[h,i]=(0,e.useState)(a),j=(0,e.useRef)(null),k=()=>{let a=h.trim();a&&b(a)};return(0,d.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/50",children:(0,d.jsxs)("div",{className:"bg-card border border-border rounded-xl shadow-2xl w-80 p-5",children:[(0,d.jsx)("h2",{className:"text-base font-semibold mb-1",children:g("review.setNickname")}),(0,d.jsx)("p",{className:"text-xs text-muted-foreground mb-4",children:g("review.nicknameHint")}),(0,d.jsx)("input",{ref:j,type:"text",value:h,onChange:a=>i(a.target.value),onKeyDown:a=>{"Enter"!==a.key||a.nativeEvent.isComposing||k(),"Escape"===a.key&&c()},placeholder:g("review.nicknamePlaceholder"),maxLength:20,className:"w-full px-3 py-2 text-sm bg-secondary border border-border rounded-lg focus:outline-none focus:border-brand",autoFocus:!0}),(0,d.jsxs)("div",{className:"flex items-center justify-end gap-2 mt-4",children:[(0,d.jsx)("button",{onClick:c,className:"px-3 py-1.5 text-xs rounded-lg hover:bg-accent transition-colors text-muted-foreground",children:g("review.skipForNow")}),(0,d.jsx)("button",{onClick:k,disabled:!h.trim(),className:"px-4 py-1.5 text-xs rounded-lg bg-brand text-white hover:bg-brand/90 transition-colors disabled:opacity-40",children:g("common.save")})]})]})})}var x=c(15622);c(55511);var y=c(81749);function z({reviewId:a}){let{t:b}=(0,f.Bd)(),[c,g]=(0,e.useState)(a),[h,j]=(0,e.useState)(null),[k,l]=(0,e.useState)(!0),[m,n]=(0,e.useState)(null),[o,r]=(0,e.useState)(null),[s,A]=(0,e.useState)(!1),B=function(){let[a,b]=(0,e.useState)(""),[c,d]=(0,e.useState)(""),[f,g]=(0,e.useState)(!1),[h,i]=(0,e.useState)(!0),j=(0,e.useCallback)(a=>{let b=a.trim();b&&(d(b),g(!0),fetch("/api/review/identify",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:b})}).catch(()=>{}))},[]);return{authorId:a,name:c,nameConfirmed:f,loading:h,setName:(0,e.useCallback)(a=>{let b=a.trim();b&&(d(b),fetch("/api/review/identify",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:b})}).catch(()=>{}))},[]),confirmName:j,randomize:(0,e.useCallback)(()=>{let a,b,c,e;d((a=q.A.t("reviewUtils.adjectives",{returnObjects:!0}),b=q.A.t("reviewUtils.nouns",{returnObjects:!0}),c=a[Math.floor(Math.random()*a.length)],e=b[Math.floor(Math.random()*b.length)],`${c}${e}`))},[])}}(),{resolvedTheme:C,setTheme:D}=(0,i.D)(),[E,F]=(0,e.useState)({}),[G,H]=(0,e.useState)(!1),[I,J]=(0,e.useState)(!1),K=(0,e.useCallback)(async()=>{try{let a=await fetch("/api/review/users");if(a.ok){let b=await a.json(),c={};for(let[a,d]of Object.entries(b.users))c[a]=d.name;F(c)}}catch{}},[]),L=(0,e.useRef)(void 0),M=(0,e.useRef)(void 0),N=(0,e.useCallback)(a=>{a!==c&&(g(a),n(null),r(null),window.history.replaceState(null,"",`/review/${a}`))},[c]),O=(0,e.useCallback)(async()=>{try{let a=await fetch(`/api/review/${c}`);if(!a.ok)return void(404===a.status?n(b("review.reviewNotExist")):n(b("review.loadFailed")));let d=await a.json();j(d.review),n(null)}catch{n(b("review.networkError"))}finally{l(!1)}},[c]),P=(0,e.useCallback)(async(a,d)=>{if(B.authorId)try{(await fetch(`/api/review/${c}/comments`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({author:B.name,authorId:B.authorId,content:a,anchor:d})})).ok&&await O()}catch{(0,y.oR)(b("toast.addCommentFailed"),"error")}},[c,B,O]),Q=(0,e.useCallback)(async a=>{try{(await fetch(`/api/review/${c}/comments?commentId=${a}`,{method:"DELETE"})).ok&&await O()}catch{(0,y.oR)(b("toast.deleteCommentFailed"),"error")}},[c,O]),R=(0,e.useCallback)(async(a,d)=>{try{(await fetch(`/api/review/${c}/comments`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({commentId:a,content:d})})).ok&&await O()}catch{(0,y.oR)(b("toast.editCommentFailed"),"error")}},[c,O]),S=(0,e.useCallback)(async(a,d)=>{try{(await fetch(`/api/review/${c}/comments`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({commentId:a,closed:d})})).ok&&await O()}catch{(0,y.oR)(b("toast.operationFailed"),"error")}},[c,O,b]),T=(0,e.useCallback)(async(a,d)=>{if(B.authorId)try{(await fetch(`/api/review/${c}/replies`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({commentId:a,author:B.name,authorId:B.authorId,content:d})})).ok&&await O()}catch{(0,y.oR)(b("toast.addReplyFailed"),"error")}},[c,B,O]),U=(0,e.useCallback)(async(a,d)=>{try{(await fetch(`/api/review/${c}/replies?commentId=${a}&replyId=${d}`,{method:"DELETE"})).ok&&await O()}catch{(0,y.oR)(b("toast.deleteReplyFailed"),"error")}},[c,O]),V=(0,e.useCallback)(async(a,d,e)=>{try{(await fetch(`/api/review/${c}/replies`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({commentId:a,replyId:d,content:e})})).ok&&await O()}catch{(0,y.oR)(b("toast.editReplyFailed"),"error")}},[c,O]),W=(0,e.useCallback)(async()=>{try{let a=await fetch("/api/review/share-info"),d=await a.json(),e=d.shareBase?`${d.shareBase}/review/${c}`:window.location.href;await navigator.clipboard.writeText(e),(0,y.oR)(b("toast.linkCopied"),"success")}catch{(0,y.oR)(b("toast.copyFailed"),"error")}},[c]),X=(0,e.useCallback)(a=>{r(a),M.current?.(a)},[]),Y=(0,e.useCallback)(a=>{r(a),L.current?.(a)},[]),Z=(0,e.useCallback)(a=>{let b;if(!h||0===h.comments.length)return;let c=[...h.comments].sort((a,b)=>a.anchor.startOffset-b.anchor.startOffset),d=o?c.findIndex(a=>a.id===o):-1;b="next"===a?d<c.length-1?d+1:0:d>0?d-1:c.length-1;let e=c[b];r(e.id),M.current?.(e.id),L.current?.(e.id)},[h,o]);return(0,d.jsxs)("div",{className:"h-screen flex flex-col bg-background text-foreground overflow-hidden",children:[G&&(0,d.jsx)(w,{currentName:B.name,onConfirm:a=>{B.confirmName(a),H(!1),K()},onSkip:()=>H(!1)}),h&&(0,d.jsx)(x._,{isOpen:I,onClose:()=>J(!1),comments:h.comments,reviewTitle:h.title,userNameMap:E,onCommentClick:a=>{r(a),M.current?.(a),L.current?.(a)}}),h&&(0,d.jsx)("div",{className:"py-2 bg-secondary border-b border-border flex-shrink-0 flex justify-center",children:(0,d.jsxs)("div",{className:"w-full max-w-[1800px] px-4 flex items-center gap-3",children:[(0,d.jsx)("h1",{className:"text-sm font-semibold truncate",children:h.title}),(0,d.jsx)("span",{className:"text-[11px] text-muted-foreground flex-shrink-0",children:b("review.updatedAt",{date:new Date(h.updatedAt||h.createdAt).toLocaleDateString(void 0,{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"})})}),(0,d.jsx)("span",{className:"flex-1"}),!s&&(0,d.jsx)("span",{className:`px-2 py-0.5 text-xs rounded-full ${h.active?"bg-green-500/15 text-green-600 dark:text-green-400":"bg-muted text-muted-foreground"}`,children:h.active?b("review.active"):b("review.closed")}),(0,d.jsxs)("button",{onClick:()=>J(!0),className:"px-2 py-1 text-xs rounded hover:bg-accent transition-colors text-muted-foreground flex items-center gap-1",title:b("review.viewAllComments"),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:"M7 8h10M7 12h4m1 8l-4-4H5a2 2 0 01-2-2V6a2 2 0 012-2h14a2 2 0 012 2v8a2 2 0 01-2 2h-3l-4 4z"})}),b("review.viewCommentBtn")]}),(0,d.jsx)("button",{onClick:W,className:"px-2 py-1 text-xs rounded hover:bg-accent transition-colors text-muted-foreground",children:b("review.copyLink")}),(0,d.jsx)("button",{onClick:()=>D("dark"===C?"light":"dark"),className:"p-1 text-muted-foreground hover:text-foreground hover:bg-accent rounded transition-colors",title:"dark"===C?b("settings.switchLight"):b("settings.switchDark"),children:"dark"===C?(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)("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:"14",height:"14",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)(u,{identity:B})]})}),(0,d.jsx)("div",{className:"flex-1 flex justify-center overflow-hidden",children:(0,d.jsxs)("div",{className:"w-full max-w-[1800px] flex overflow-hidden",children:[(0,d.jsx)(v,{currentReviewId:c,onSelect:N,readOnly:!s,refreshTrigger:h?.comments.length,onViewComments:a=>{a!==c&&N(a),J(!0)}}),k?(0,d.jsx)("div",{className:"flex-1 flex items-center justify-center",children:(0,d.jsx)("div",{className:"text-muted-foreground",children:b("common.loading")})}):m||!h?(0,d.jsx)("div",{className:"flex-1 flex items-center justify-center",children:(0,d.jsxs)("div",{className:"text-center",children:[(0,d.jsx)("div",{className:"text-xl mb-2",children:m||b("review.reviewNotFound")}),(0,d.jsx)("div",{className:"text-sm text-muted-foreground",children:b("review.checkLink")})]})}):(0,d.jsxs)("div",{className:"flex-1 flex overflow-hidden",children:[(0,d.jsx)("div",{className:"flex-1 h-full border-r border-border overflow-hidden",children:(0,d.jsx)(p,{content:h.content,comments:h.comments,activeCommentId:o,isActive:h.active,onAddComment:P,onHighlightClick:Y,scrollToHighlightRef:M})}),(0,d.jsx)("div",{className:"w-[360px] h-full overflow-hidden flex-shrink-0",children:(0,d.jsx)(t,{comments:h.comments,activeCommentId:o,currentAuthorId:B.authorId,isActive:h.active,isAdmin:s,userNameMap:E,onCommentClick:X,onNavigateComment:Z,onDeleteComment:Q,onEditComment:R,onToggleCommentClosed:S,onAddReply:T,onDeleteReply:U,onEditReply:V,scrollToCommentRef:L})})]})]})})]})}},85550:(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:["review",{children:["[id]",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(c.bind(c,44236)),"/home/runner/work/cockpit/cockpit/src/app/review/[id]/page.tsx"]}]},{"global-error":[()=>Promise.resolve().then(c.bind(c,81227)),"/home/runner/work/cockpit/cockpit/src/app/global-error.tsx"]},[]]},{"global-error":[()=>Promise.resolve().then(c.bind(c,81227)),"/home/runner/work/cockpit/cockpit/src/app/global-error.tsx"],metadata:{icon:[async a=>(await Promise.resolve().then(c.bind(c,70440))).default(a)],apple:[],openGraph:[],twitter:[],manifest:"/manifest.webmanifest"}},[]]},{layout:[()=>Promise.resolve().then(c.bind(c,76537)),"/home/runner/work/cockpit/cockpit/src/app/layout.tsx"],"global-error":[()=>Promise.resolve().then(c.bind(c,81227)),"/home/runner/work/cockpit/cockpit/src/app/global-error.tsx"],"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,70440))).default(a)],apple:[],openGraph:[],twitter:[],manifest:"/manifest.webmanifest"}},[]]}.children,M={require:c,loadChunk:()=>Promise.resolve()},N=new d.AppPageRouteModule({definition:{kind:e.RouteKind.APP_PAGE,page:"/review/[id]/page",pathname:"/review/[id]",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:L},distDir:".next-prod",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="/review/[id]/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 k,m=N.getVaryHeader(ag,al);b.setHeader("Vary",m);let o=async(c,d)=>{let e=new l.NodeNextRequest(a),f=new l.NodeNextResponse(b);return N.render(e,f,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),k&&k!==c&&(k.setAttribute("http.route",d),k.updateName(a))}else c.updateName(`${aV} ${U}`)})},p=(0,h.getRequestMeta)(a,"incrementalCache")||await N.getIncrementalCache(a,aj,ae,T);null==p||p.resetRequestCache(),globalThis.__incrementalCache=p;let q=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:p,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 o(e,k),{metadata:m}=l,{cacheControl:n,headers:q={},fetchTags:r,fetchMetrics:s}=m;if(r&&(q[x.NEXT_CACHE_TAGS_HEADER]=r),a.fetchMetrics=s,aM&&(null==n?void 0:n.revalidate)===0&&!N.isDev&&!aD){let a=m.staticBailoutInfo,b=Object.defineProperty(Error(`Page changed from static to dynamic at runtime ${ag}${(null==a?void 0:a.description)?`, reason: ${a.description}`:""}
|
|
2
|
-
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:m.flightData,postponed:m.postponed,status:m.statusCode,segmentData:m.segmentData},cacheControl:n}},r=async({hasResolved:c,previousCacheEntry:g,isRevalidating:i,span:j,forceStaticRender:k=!1})=>{let l=!1===N.isDev,m=c||b.writableEnded;try{let f;if(ap&&ah&&!g&&!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&&(f=(0,v.parseFallbackField)(ar.fallback)),!0===aj.experimental.partialFallbacks&&(null==ar?void 0:ar.fallback)===null&&!aR&&aQ.length>0&&(f=v.FallbackMode.PRERENDER),f===v.FallbackMode.PRERENDER&&(0,t.isBot)(at)&&(!aD||av)&&(f=v.FallbackMode.BLOCKING_STATIC_RENDER),(null==g?void 0:g.isStale)===-1&&(ap=!0),ap&&(f!==v.FallbackMode.NOT_FOUND||g)&&(f=v.FallbackMode.BLOCKING_STATIC_RENDER),!T&&f!==v.FallbackMode.BLOCKING_STATIC_RENDER&&aT&&!m&&!af&&Z&&(l||!as)){if((l||ar)&&f===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()=>q({span:j,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||!p||ap||aG||aB||aC||aw||(0,H.scheduleOnNextTick)(async()=>{let b=N.getResponseCache(a);try{await b.revalidate(aS,p,aD,!1,a=>q({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 o=ap||i||!aH?void 0:aH;if(aN&&!T&&p&&(aJ||ay)&&!k){let b=await p.get(ag,{kind:u.IncrementalCacheKind.APP_PAGE,isRoutePPREnabled:!0,isFallback:!1});b&&b.value&&b.value.kind===u.CachedRouteKind.APP_PAGE&&(o=b.value.postponed,b&&(-1===b.isStale||!0===b.isStale)&&(0,H.scheduleOnNextTick)(async()=>{let b=N.getResponseCache(a);try{await b.revalidate(ag,p,aD,!1,a=>r({...a,forceStaticRender:!0}),null,c,d.waitUntil)}catch(a){console.error("Error revalidating the page in the background",a)}}))}if((aE||aF)&&void 0!==o)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 q({span:j,postponed:o,fallbackRouteParams:s,forceStaticRender:k})}catch(b){throw(null==g?void 0:g.isStale)&&await N.onRequestError(a,b,{routerKind:"App Router",routePath:U,routeType:"render",revalidateReason:(0,f.c)({isStaticGeneration:aM,isOnDemandRevalidate:ap})},!1,ai),b}},D=async c=>{var f,g,i,j,k;let l,m=await N.handleResponse({cacheKey:aS,responseGenerator:a=>r({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 p=aN?(0,h.getRequestMeta)(a,"onCacheEntryV2")??(0,h.getRequestMeta)(a,"onCacheEntry"):(0,h.getRequestMeta)(a,"onCacheEntry");if(p&&await p(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),q({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 k=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}},D),void 0,!aY);await D(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}}},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,8465,4793,3353,7514,2338],()=>b(b.s=85550));module.exports=c})();
|
|
1
|
+
(()=>{var a={};a.id=2951,a.ids=[2951],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},14379:(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:["review",{children:["[id]",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(c.bind(c,44236)),"/home/runner/work/cockpit/cockpit/src/app/review/[id]/page.tsx"]}]},{"global-error":[()=>Promise.resolve().then(c.bind(c,81227)),"/home/runner/work/cockpit/cockpit/src/app/global-error.tsx"]},[]]},{"global-error":[()=>Promise.resolve().then(c.bind(c,81227)),"/home/runner/work/cockpit/cockpit/src/app/global-error.tsx"],metadata:{icon:[async a=>(await Promise.resolve().then(c.bind(c,70440))).default(a)],apple:[],openGraph:[],twitter:[],manifest:"/manifest.webmanifest"}},[]]},{layout:[()=>Promise.resolve().then(c.bind(c,76537)),"/home/runner/work/cockpit/cockpit/src/app/layout.tsx"],"global-error":[()=>Promise.resolve().then(c.bind(c,81227)),"/home/runner/work/cockpit/cockpit/src/app/global-error.tsx"],"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,70440))).default(a)],apple:[],openGraph:[],twitter:[],manifest:"/manifest.webmanifest"}},[]]}.children,M={require:c,loadChunk:()=>Promise.resolve()},N=new d.AppPageRouteModule({definition:{kind:e.RouteKind.APP_PAGE,page:"/review/[id]/page",pathname:"/review/[id]",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:L},distDir:".next-prod",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="/review/[id]/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 k,m=N.getVaryHeader(ag,al);b.setHeader("Vary",m);let o=async(c,d)=>{let e=new l.NodeNextRequest(a),f=new l.NodeNextResponse(b);return N.render(e,f,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),k&&k!==c&&(k.setAttribute("http.route",d),k.updateName(a))}else c.updateName(`${aV} ${U}`)})},p=(0,h.getRequestMeta)(a,"incrementalCache")||await N.getIncrementalCache(a,aj,ae,T);null==p||p.resetRequestCache(),globalThis.__incrementalCache=p;let q=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:p,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 o(e,k),{metadata:m}=l,{cacheControl:n,headers:q={},fetchTags:r,fetchMetrics:s}=m;if(r&&(q[x.NEXT_CACHE_TAGS_HEADER]=r),a.fetchMetrics=s,aM&&(null==n?void 0:n.revalidate)===0&&!N.isDev&&!aD){let a=m.staticBailoutInfo,b=Object.defineProperty(Error(`Page changed from static to dynamic at runtime ${ag}${(null==a?void 0:a.description)?`, reason: ${a.description}`:""}
|
|
2
|
+
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:m.flightData,postponed:m.postponed,status:m.statusCode,segmentData:m.segmentData},cacheControl:n}},r=async({hasResolved:c,previousCacheEntry:g,isRevalidating:i,span:j,forceStaticRender:k=!1})=>{let l=!1===N.isDev,m=c||b.writableEnded;try{let f;if(ap&&ah&&!g&&!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&&(f=(0,v.parseFallbackField)(ar.fallback)),!0===aj.experimental.partialFallbacks&&(null==ar?void 0:ar.fallback)===null&&!aR&&aQ.length>0&&(f=v.FallbackMode.PRERENDER),f===v.FallbackMode.PRERENDER&&(0,t.isBot)(at)&&(!aD||av)&&(f=v.FallbackMode.BLOCKING_STATIC_RENDER),(null==g?void 0:g.isStale)===-1&&(ap=!0),ap&&(f!==v.FallbackMode.NOT_FOUND||g)&&(f=v.FallbackMode.BLOCKING_STATIC_RENDER),!T&&f!==v.FallbackMode.BLOCKING_STATIC_RENDER&&aT&&!m&&!af&&Z&&(l||!as)){if((l||ar)&&f===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()=>q({span:j,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||!p||ap||aG||aB||aC||aw||(0,H.scheduleOnNextTick)(async()=>{let b=N.getResponseCache(a);try{await b.revalidate(aS,p,aD,!1,a=>q({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 o=ap||i||!aH?void 0:aH;if(aN&&!T&&p&&(aJ||ay)&&!k){let b=await p.get(ag,{kind:u.IncrementalCacheKind.APP_PAGE,isRoutePPREnabled:!0,isFallback:!1});b&&b.value&&b.value.kind===u.CachedRouteKind.APP_PAGE&&(o=b.value.postponed,b&&(-1===b.isStale||!0===b.isStale)&&(0,H.scheduleOnNextTick)(async()=>{let b=N.getResponseCache(a);try{await b.revalidate(ag,p,aD,!1,a=>r({...a,forceStaticRender:!0}),null,c,d.waitUntil)}catch(a){console.error("Error revalidating the page in the background",a)}}))}if((aE||aF)&&void 0!==o)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 q({span:j,postponed:o,fallbackRouteParams:s,forceStaticRender:k})}catch(b){throw(null==g?void 0:g.isStale)&&await N.onRequestError(a,b,{routerKind:"App Router",routePath:U,routeType:"render",revalidateReason:(0,f.c)({isStaticGeneration:aM,isOnDemandRevalidate:ap})},!1,ai),b}},D=async c=>{var f,g,i,j,k;let l,m=await N.handleResponse({cacheKey:aS,responseGenerator:a=>r({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 p=aN?(0,h.getRequestMeta)(a,"onCacheEntryV2")??(0,h.getRequestMeta)(a,"onCacheEntry"):(0,h.getRequestMeta)(a,"onCacheEntry");if(p&&await p(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),q({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 k=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}},D),void 0,!aY);await D(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}}},17891:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/get-segment-param")},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},26713:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/is-bot")},28354:a=>{"use strict";a.exports=require("util")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31172:(a,b,c)=>{"use strict";c.d(b,{F2:()=>m,ZL:()=>k,a9:()=>l});var d=c(48249),e=c(67484),f=c(74429);let g=()=>()=>{},h=()=>document.body,i=()=>null,j=(0,e.createContext)(null);function k({children:a}){let b=(0,e.useContext)(j),c=(0,e.useSyncExternalStore)(g,h,i),d=b??c;return d?(0,f.createPortal)(a,d):null}function l({children:a}){let[b,c]=(0,e.useState)(null);return(0,d.jsxs)("div",{className:"relative w-full h-full",style:{transform:"translateZ(0)"},children:[(0,d.jsx)(j.Provider,{value:b,children:a}),(0,d.jsx)("div",{ref:c,className:"absolute inset-0 pointer-events-none [&>*]:pointer-events-auto"})]})}function m(){return(0,e.useContext)(j)}},33873:a=>{"use strict";a.exports=require("path")},41025:a=>{"use strict";a.exports=require("next/dist/server/app-render/dynamic-access-async-storage.external.js")},43954:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/interception-routes")},44236:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>h,dynamic:()=>f,generateMetadata:()=>g});var d=c(5735),e=c(79436);let f="force-dynamic";async function g({params:a}){let{id:b}=await a;return{title:`Review - ${b}`}}async function h({params:a}){let{id:b}=await a;return(0,d.jsx)(e.ReviewPage,{reviewId:b})}},49280:(a,b,c)=>{"use strict";c.d(b,{T:()=>v});var d=c(48249),e=c(98051),f=c(38368),g=c(33972),h=c(10841),i=c(99773),j=c(36513);c(55583),c(87023);var k=c(50757),l=c(27454),m=c(37752),n=c(67484),o=c(3532);let p=[f.A,g.A,h.jb],q=[f.A,h.jb],r=[i.A,j.A],s=[i.A];function t(a){return a.replace(/^(\|.+\|)$/gm,a=>/^\|[\s:|-]+\|$/.test(a)?a:a.replace(/`([^`]*)`/g,(a,b)=>b.includes("|")?"`"+b.replace(/\|/g,"\\|")+"`":a))}function u(a){return a.replace(/\$(\d)/g,"\\$$1")}let v=(0,n.memo)(function({content:a,isUser:b=!1,isStreaming:c=!1,enableMath:f=!0,rehypePlugins:g}){let{resolvedTheme:h}=(0,o.D)(),i="dark"===h,j=(0,n.useMemo)(()=>({code({className:a,children:b,node:c,...e}){let f=/language-(\w+)/.exec(a||""),g=String(b);if(!f&&!a&&!g.includes("\n"))return(0,d.jsx)("code",{className:"px-1.5 py-0.5 mx-0.5 rounded bg-accent text-sm font-mono",...e,children:b});let h=String(b).replace(/\n$/,""),j=f?.[1]||"text",n=Number(e["data-source-start"])||0,o=n?n+1:0,p=0;return(0,d.jsx)(k.A,{style:i?l.A:m.A,language:j,PreTag:"div",customStyle:{margin:"0.75rem 0",borderRadius:"0.375rem",fontSize:"0.875rem"},wrapLines:!0,lineProps:()=>{let a=o+p;return p++,{"data-source-start":a,"data-source-end":a,style:{display:"block"}}},children:h})},p:({children:a,node:b,...c})=>(0,d.jsx)("p",{className:"mb-3 last:mb-0",...c,children:a}),h1:({children:a,node:b,...c})=>(0,d.jsx)("h1",{className:"text-xl font-bold mb-3 mt-4 first:mt-0",...c,children:a}),h2:({children:a,node:b,...c})=>(0,d.jsx)("h2",{className:"text-lg font-bold mb-2 mt-3 first:mt-0",...c,children:a}),h3:({children:a,node:b,...c})=>(0,d.jsx)("h3",{className:"text-base font-bold mb-2 mt-3 first:mt-0",...c,children:a}),ul:({children:a,node:b,...c})=>(0,d.jsx)("ul",{className:"list-disc list-inside mb-3 space-y-1",...c,children:a}),ol:({children:a,node:b,...c})=>(0,d.jsx)("ol",{className:"list-decimal list-inside mb-3 space-y-1",...c,children:a}),li:({children:a,node:b,...c})=>(0,d.jsx)("li",{className:"leading-relaxed",...c,children:a}),blockquote:({children:a,node:b,...c})=>(0,d.jsx)("blockquote",{className:"border-l-4 border-border pl-4 my-3 italic text-muted-foreground",...c,children:a}),a:({href:a,children:b,node:c,...e})=>(0,d.jsx)("a",{href:a,target:"_blank",rel:"noopener noreferrer",className:"text-brand hover:underline",...e,children:b}),table:({children:a,node:b,...c})=>(0,d.jsx)("div",{className:"overflow-x-auto my-3",...c,children:(0,d.jsx)("table",{className:"min-w-full border border-border",children:a})}),thead:({children:a,node:b,...c})=>(0,d.jsx)("thead",{className:"bg-accent",...c,children:a}),th:({children:a,node:b,...c})=>(0,d.jsx)("th",{className:"px-4 py-2 text-left font-semibold border-b border-border",...c,children:a}),td:({children:a,node:b,...c})=>(0,d.jsx)("td",{className:"px-4 py-2 border-b border-border",...c,children:a}),hr:({node:a,...b})=>(0,d.jsx)("hr",{className:"my-4 border-border",...b}),img:({src:a,alt:b,node:c,height:e,width:f,style:g,...h})=>{if(!(e||f||g))return(0,d.jsx)("img",{src:a,alt:b||"",className:"max-w-full h-auto rounded-lg my-3",...h});let i=a=>a?/^\d+$/.test(String(a))?`${a}px`:String(a):void 0,j={...g,height:i(e)??g?.height,width:i(f)??g?.width};return(0,d.jsx)("img",{src:a,alt:b||"",style:j,className:"inline-block align-middle",...h})},strong:({children:a,node:b,...c})=>(0,d.jsx)("strong",{className:"font-bold",...c,children:a}),em:({children:a,node:b,...c})=>(0,d.jsx)("em",{className:"italic",...c,children:a}),del:({children:a,node:b,...c})=>(0,d.jsx)("del",{className:"line-through",...c,children:a})}),[i]),v=f?p:q,w=f?r:s,x=(0,n.useMemo)(()=>{if(b||c)return a;let d=t(!function(a){if(/^\|[\s:|-]+\|$/m.test(a))return!1;if(/[┌┐└┘│─├┤┬┴┼╔╗╚╝║═╭╮╯╰▲▼◀▶△▽◁▷]/.test(a)||/\+[-=]{2,}\+/.test(a))return!0;let b=a.split("\n").filter(a=>/^\s*\||\|\s*$/.test(a));if(b.length>=3){let a=b.map(a=>(a.match(/\|/g)||[]).length);return!a.every(b=>b===a[0])||!(a[0]>=3)}return!1}(a)||/^```[\s\S]*```$/m.test(a.trim())?a:"```text\n"+a.trim()+"\n```");return f?u(d):d},[a,b,c,f]),y=(0,n.useMemo)(()=>g?.length?[...w,...g]:w,[g,w]);if(b)return(0,d.jsx)("div",{className:"whitespace-pre-wrap break-words",children:a});if(c){let b=a.lastIndexOf("\n");if(-1===b)return(0,d.jsx)("div",{className:"whitespace-pre-wrap break-words",children:a});let c=a.slice(0,b+1),g=a.slice(b+1);return(0,d.jsxs)("div",{className:"markdown-body",children:[(0,d.jsx)(e.oz,{remarkPlugins:v,rehypePlugins:w,components:j,children:f?u(t(c)):t(c)}),g&&(0,d.jsx)("span",{className:"whitespace-pre-wrap",children:g})]})}return(0,d.jsx)("div",{className:"markdown-body",children:(0,d.jsx)(e.oz,{remarkPlugins:v,rehypePlugins:y,components:j,children:x})})})},55511:a=>{"use strict";a.exports=require("crypto")},61598:(a,b,c)=>{Promise.resolve().then(c.bind(c,81729))},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},66326:(a,b,c)=>{Promise.resolve().then(c.bind(c,79436))},70722:a=>{"use strict";a.exports=require("next/dist/shared/lib/invariant-error")},73136:a=>{"use strict";a.exports=require("node:url")},76760:a=>{"use strict";a.exports=require("node:path")},77068:a=>{"use strict";a.exports=require("next/dist/shared/lib/size-limit")},79327:a=>{"use strict";a.exports=require("node:process")},79436:(a,b,c)=>{"use strict";c.d(b,{ReviewPage:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call ReviewPage() from the server but ReviewPage 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/cockpit/cockpit/src/components/review/ReviewPage.tsx","ReviewPage")},81729:(a,b,c)=>{"use strict";c.d(b,{ReviewPage:()=>z});var d=c(48249),e=c(67484),f=c(44384),g=c(49280),h=c(30068),i=c(3532),j=c(90500);function k({selectedText:a,position:b,onSubmit:c,onCancel:g}){let{t:h}=(0,f.Bd)(),[i,j]=(0,e.useState)(""),l=(0,e.useRef)(null),m=(0,e.useRef)(null),n=()=>{let a=i.trim();a&&c(a)},o=a.length>60?a.slice(0,57)+"...":a;return(0,d.jsxs)("div",{ref:m,className:"absolute z-50 w-96 bg-card border border-border rounded-lg shadow-lg",style:{top:b.top,left:Math.max(8,b.left-192)},children:[(0,d.jsxs)("div",{className:"px-3 pt-3 pb-2",children:[(0,d.jsx)("div",{className:"text-xs text-muted-foreground mb-1",children:h("review.selectedText")}),(0,d.jsx)("div",{className:"text-xs bg-yellow-500/10 border-l-2 border-yellow-500 px-2 py-1 rounded-r truncate",children:o})]}),(0,d.jsx)("div",{className:"px-3 pb-2",children:(0,d.jsx)("textarea",{ref:l,value:i,onChange:a=>j(a.target.value),onKeyDown:a=>{"Enter"!==a.key||a.shiftKey||a.nativeEvent.isComposing||(a.preventDefault(),n())},placeholder:h("review.addCommentPlaceholder"),className:"w-full px-2 py-1.5 text-sm bg-secondary border border-border rounded resize-none focus:outline-none focus:border-brand",rows:4})}),(0,d.jsxs)("div",{className:"px-3 pb-3 flex items-center justify-between",children:[(0,d.jsx)("span",{className:"text-[10px] text-muted-foreground",children:h("review.enterSubmitHint")}),(0,d.jsxs)("div",{className:"flex gap-1",children:[(0,d.jsx)("button",{onClick:g,className:"px-2 py-1 text-xs rounded hover:bg-accent transition-colors text-muted-foreground",children:h("common.cancel")}),(0,d.jsx)("button",{onClick:n,disabled:!i.trim(),className:"px-2 py-1 text-xs rounded bg-brand text-white hover:bg-brand/90 transition-colors disabled:opacity-40",children:h("review.commentBtn")})]})]})]})}let l={bg:"rgba(234, 179, 8, 0.15)",bgActive:"rgba(234, 179, 8, 0.4)",bgPending:"rgba(234, 179, 8, 0.3)",border:"rgba(234, 179, 8, 0.7)",borderPending:"rgba(234, 179, 8, 0.9)"},m={bg:"rgba(234, 179, 8, 0.1)",bgActive:"rgba(234, 179, 8, 0.3)",bgPending:"rgba(234, 179, 8, 0.2)",border:"rgba(234, 179, 8, 0.5)",borderPending:"rgba(234, 179, 8, 0.7)"};function n({rects:a,activeCommentId:b,pendingCommentId:c,isDark:e}){if(0===a.length)return null;let f=e?m:l;return(0,d.jsx)("div",{style:{position:"absolute",top:0,left:0,width:"100%",height:0,overflow:"visible",pointerEvents:"none",zIndex:5},children:a.map((a,e)=>{let g=a.commentId===b,h=a.commentId===c,i=f.bg;return h?i=f.bgPending:g&&(i=f.bgActive),(0,d.jsx)("div",{"data-comment-id":a.commentId,style:{position:"absolute",top:a.top,left:a.left,width:a.width,height:a.height,backgroundColor:i,borderBottom:`1px solid ${h?f.borderPending:f.border}`,borderRadius:1,pointerEvents:"none"}},`${a.commentId}-${e}`)})})}let o=[j.W];function p({content:a,comments:b,activeCommentId:c,isActive:f,onAddComment:j,onHighlightClick:l,scrollToHighlightRef:m}){let{resolvedTheme:q}=(0,i.D)(),r=(0,e.useRef)(null),s=(0,e.useRef)(null),[t,u]=(0,e.useState)(null),{rects:v,scrollToHighlight:w}=function(a,b,c){let[d,f]=(0,e.useState)([]),g=(0,e.useRef)(0),h=(0,e.useRef)(c);(0,e.useCallback)(()=>{g.current&&cancelAnimationFrame(g.current),g.current=requestAnimationFrame(()=>{let c=a.current,d=b.current;if(!c||!d)return;let e=function(a,b,c){let d=[],e=b.getBoundingClientRect(),f=function(a){let b=[],c=document.createTreeWalker(a,NodeFilter.SHOW_TEXT),d=0;for(;c.nextNode();){let a=c.currentNode,e=a.textContent?.length||0;b.push({node:a,start:d,end:d+e}),d+=e}return b}(a);if(0===f.length)return d;for(let a of c){let{startOffset:c,endOffset:g}=a.anchor;if(c>=g)continue;let h=null,i=0,j=null,k=0;for(let{node:a,start:b,end:d}of f)if(!h&&c>=b&&c<d&&(h=a,i=c-b),g>b&&g<=d){j=a,k=g-b;break}if(!h||!j)continue;let l=document.createRange();try{l.setStart(h,i),l.setEnd(j,k)}catch{continue}for(let c of l.getClientRects())c.width<1||c.height<1||d.push({commentId:a.id,top:c.top-e.top+b.scrollTop,left:c.left-e.left+b.scrollLeft,width:c.width,height:c.height})}return d}(c,d,h.current);f(a=>a.length===e.length&&a.every((a,b)=>a.commentId===e[b].commentId&&.5>Math.abs(a.top-e[b].top)&&.5>Math.abs(a.left-e[b].left)&&.5>Math.abs(a.width-e[b].width)&&.5>Math.abs(a.height-e[b].height))?a:e)})},[a,b]);let i=(0,e.useCallback)(a=>{let c=b.current;if(!c)return;let e=d.find(b=>b.commentId===a);if(!e)return;let f=c.clientHeight;c.scrollTo({top:e.top-f/2+e.height/2,behavior:"smooth"})},[b,d]);return{rects:d,scrollToHighlight:i}}(r,s,(0,e.useMemo)(()=>t?[...b,{id:"__pending__",author:"",authorId:"",content:"",anchor:t.anchor,createdAt:0,replies:[]}]:b,[b,t])),x=(0,e.useRef)(v),y=(0,e.useCallback)(a=>{let b=window.getSelection(),c=b&&!b.isCollapsed;if(c&&f&&r.current){let c=b.getRangeAt(0);if(r.current.contains(c.startContainer)&&r.current.contains(c.endContainer)){let d=function(a,b){let c=document.createTreeWalker(a,NodeFilter.SHOW_TEXT),d=0,e=-1,f=-1;for(;c.nextNode();){let a=c.currentNode,g=a.textContent?.length||0;if(a===b.startContainer&&(e=d+b.startOffset),a===b.endContainer){f=d+b.endOffset;break}d+=g}if(-1===e||-1===f||e>=f)return null;let g=a.textContent?.slice(e,f)||"";return g.trim()?{startOffset:e,endOffset:f,selectedText:g}:null}(r.current,c);if(d){let c=s.current??r.current.parentElement,e=c.getBoundingClientRect();u({anchor:d,position:{top:a.clientY-e.top+c.scrollTop+8,left:a.clientX-e.left}}),b.removeAllRanges();return}}}if(!c&&!t){let b=s.current;if(!b)return;let c=b.getBoundingClientRect(),d=a.clientX-c.left+b.scrollLeft,e=a.clientY-c.top+b.scrollTop;for(let a of x.current)if("__pending__"!==a.commentId&&d>=a.left&&d<=a.left+a.width&&e>=a.top&&e<=a.top+a.height)return void l(a.commentId)}},[f,t,l]),z=(0,e.useCallback)(a=>{t&&(j(a,t.anchor),u(null),window.getSelection()?.removeAllRanges())},[t,j]),A=(0,e.useCallback)(()=>{u(null),window.getSelection()?.removeAllRanges()},[]);return(0,d.jsxs)("div",{className:"h-full flex bg-card",children:[(0,d.jsx)(h.l,{content:a,containerRef:s}),(0,d.jsxs)("div",{ref:s,className:"flex-1 overflow-auto relative",onMouseUp:y,children:[(0,d.jsx)("div",{ref:r,className:"p-6 review-markdown-container",children:(0,d.jsx)(g.T,{content:a,rehypePlugins:o})}),(0,d.jsx)(n,{rects:v,activeCommentId:c,pendingCommentId:t?"__pending__":null,isDark:"dark"===q}),t&&(0,d.jsx)(k,{selectedText:t.anchor.selectedText,position:t.position,onSubmit:z,onCancel:A})]})]})}var q=c(41564);function r(a){let b=new Date(a),c=Math.floor((new Date().getTime()-b.getTime())/6e4);if(c<1)return q.A.t("common.justNow");if(c<60)return q.A.t("common.minutesAgo",{count:c});let d=Math.floor(c/60);if(d<24)return q.A.t("common.hoursAgo",{count:d});let e=Math.floor(d/24);return e<7?q.A.t("common.daysAgo",{count:e}):b.toLocaleDateString()}let s=(0,e.forwardRef)(function({comment:a,isActive:b,isOwnComment:c,isAdmin:g,currentAuthorId:h,canInteract:i,userNameMap:j,onClick:k,onDelete:l,onEdit:m,onToggleClosed:n,onAddReply:o,onDeleteReply:p,onEditReply:q},s){let{t}=(0,f.Bd)(),u=(a,b)=>j[a]||b,[v,w]=(0,e.useState)(""),[x,y]=(0,e.useState)(!1),[z,A]=(0,e.useState)(!1),[B,C]=(0,e.useState)(""),[D,E]=(0,e.useState)(null),[F,G]=(0,e.useState)(""),H=()=>{let a=v.trim();a&&(o(a),w(""),y(!1))},I=()=>{let b=B.trim();b&&b!==a.content&&m(b),A(!1)},J=()=>{if(!D)return;let b=F.trim(),c=a.replies.find(a=>a.id===D);!b||c&&b===c.content||q(D,b),E(null)},K=a.anchor.selectedText.length>80?a.anchor.selectedText.slice(0,77)+"...":a.anchor.selectedText,L=g||c||i;return a.closed?(0,d.jsxs)("div",{ref:s,className:"rounded-lg border border-border/50 bg-card/50 opacity-60 hover:opacity-80 transition-all cursor-pointer px-3 py-2 flex items-center gap-2",onClick:k,children:[(0,d.jsx)("span",{className:"w-4 h-4 rounded-full bg-brand/20 text-brand flex items-center justify-center text-[9px] font-bold flex-shrink-0",children:u(a.authorId,a.author).charAt(0)}),(0,d.jsx)("span",{className:"text-xs text-muted-foreground truncate flex-1",children:K}),(0,d.jsx)("span",{className:"text-[10px] text-muted-foreground/50 flex-shrink-0",children:t("review.closedLabel")}),L&&(0,d.jsx)("button",{onClick:a=>{a.stopPropagation(),n(!1)},className:"text-[10px] text-muted-foreground hover:text-foreground transition-colors flex-shrink-0",title:t("review.reopenReview"),children:t("review.reopen")}),(c&&i||g)&&(0,d.jsx)("button",{onClick:a=>{a.stopPropagation(),l()},className:"text-[10px] text-muted-foreground hover:text-red-500 transition-colors flex-shrink-0",title:t("review.deleteComment"),children:t("common.delete")})]}):(0,d.jsxs)("div",{ref:s,className:`rounded-lg border transition-all cursor-pointer ${b?"border-brand bg-brand/5 shadow-sm":"border-border bg-card hover:border-muted-foreground/30"}`,onClick:k,children:[(0,d.jsx)("div",{className:"px-3 pt-3 pb-1",children:(0,d.jsx)("div",{className:"text-xs bg-yellow-500/10 border-l-2 border-yellow-500 px-2 py-1 rounded-r text-muted-foreground truncate",children:K})}),(0,d.jsxs)("div",{className:"px-3 pt-2 flex items-center gap-2",children:[(0,d.jsx)("span",{className:"w-5 h-5 rounded-full bg-brand/20 text-brand flex items-center justify-center text-[10px] font-bold flex-shrink-0",children:u(a.authorId,a.author).charAt(0)}),(0,d.jsx)("span",{className:"text-xs font-medium",children:u(a.authorId,a.author)}),(0,d.jsx)("span",{className:"text-[10px] text-muted-foreground",children:r(a.createdAt)}),(0,d.jsx)("div",{className:"flex-1"}),!z&&(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[L&&(0,d.jsx)("button",{onClick:a=>{a.stopPropagation(),n(!0)},className:"text-[10px] text-muted-foreground hover:text-foreground transition-colors",title:t("review.closeComment"),children:t("review.closeComment")}),c&&i&&(0,d.jsx)("button",{onClick:b=>{b.stopPropagation(),C(a.content),A(!0)},className:"text-[10px] text-muted-foreground hover:text-foreground transition-colors",title:t("review.editComment"),children:t("common.edit")}),(c&&i||g)&&(0,d.jsx)("button",{onClick:a=>{a.stopPropagation(),l()},className:"text-[10px] text-muted-foreground hover:text-red-500 transition-colors",title:t("review.deleteComment"),children:t("common.delete")})]})]}),(0,d.jsx)("div",{className:"px-3 pt-1 pb-2",children:z?(0,d.jsxs)("div",{onClick:a=>a.stopPropagation(),children:[(0,d.jsx)("textarea",{value:B,onChange:a=>C(a.target.value),onKeyDown:a=>{"Enter"!==a.key||a.shiftKey||a.nativeEvent.isComposing||(a.preventDefault(),I()),"Escape"===a.key&&A(!1)},className:"w-full px-2 py-1.5 text-sm bg-secondary border border-border rounded resize-none focus:outline-none focus:border-brand",rows:3,autoFocus:!0}),(0,d.jsxs)("div",{className:"flex items-center justify-end gap-1 mt-1",children:[(0,d.jsx)("button",{onClick:()=>A(!1),className:"px-2 py-0.5 text-xs rounded hover:bg-accent transition-colors text-muted-foreground",children:t("common.cancel")}),(0,d.jsx)("button",{onClick:I,disabled:!B.trim(),className:"px-2 py-0.5 text-xs rounded bg-brand text-white hover:bg-brand/90 transition-colors disabled:opacity-40",children:t("common.save")})]})]}):(0,d.jsxs)("div",{className:"text-sm whitespace-pre-wrap",children:[a.content,a.edited&&(0,d.jsx)("span",{className:"text-[10px] text-muted-foreground ml-1",children:t("review.edited")})]})}),a.replies.length>0&&(0,d.jsx)("div",{className:"mx-3 border-t border-border",children:a.replies.map(a=>(0,d.jsxs)("div",{className:"py-2 border-b border-border last:border-b-0",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("span",{className:"w-4 h-4 rounded-full bg-accent text-muted-foreground flex items-center justify-center text-[9px] font-bold flex-shrink-0",children:u(a.authorId,a.author).charAt(0)}),(0,d.jsx)("span",{className:"text-xs font-medium",children:u(a.authorId,a.author)}),(0,d.jsx)("span",{className:"text-[10px] text-muted-foreground",children:r(a.createdAt)}),(0,d.jsx)("div",{className:"flex-1"}),D!==a.id&&(a.authorId===h&&i||g)&&(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[a.authorId===h&&i&&(0,d.jsx)("button",{onClick:b=>{var c;b.stopPropagation(),c=a.id,G(a.content),E(c)},className:"text-[10px] text-muted-foreground hover:text-foreground transition-colors",title:t("review.editReply"),children:t("common.edit")}),(0,d.jsx)("button",{onClick:b=>{b.stopPropagation(),p(a.id)},className:"text-[10px] text-muted-foreground hover:text-red-500 transition-colors",title:t("review.deleteReply"),children:t("common.delete")})]})]}),D===a.id?(0,d.jsxs)("div",{className:"mt-1 pl-6",onClick:a=>a.stopPropagation(),children:[(0,d.jsx)("textarea",{value:F,onChange:a=>G(a.target.value),onKeyDown:a=>{"Enter"!==a.key||a.shiftKey||a.nativeEvent.isComposing||(a.preventDefault(),J()),"Escape"===a.key&&E(null)},className:"w-full px-2 py-1 text-sm bg-secondary border border-border rounded resize-none focus:outline-none focus:border-brand",rows:2,autoFocus:!0}),(0,d.jsxs)("div",{className:"flex items-center justify-end gap-1 mt-1",children:[(0,d.jsx)("button",{onClick:()=>E(null),className:"px-2 py-0.5 text-xs rounded hover:bg-accent transition-colors text-muted-foreground",children:t("common.cancel")}),(0,d.jsx)("button",{onClick:J,disabled:!F.trim(),className:"px-2 py-0.5 text-xs rounded bg-brand text-white hover:bg-brand/90 transition-colors disabled:opacity-40",children:t("common.save")})]})]}):(0,d.jsxs)("div",{className:"text-sm mt-0.5 pl-6 whitespace-pre-wrap",children:[a.content,a.edited&&(0,d.jsx)("span",{className:"text-[10px] text-muted-foreground ml-1",children:t("review.edited")})]})]},a.id))}),(0,d.jsx)("div",{className:"px-3 pb-2 pt-1",children:x?(0,d.jsxs)("div",{className:"mt-1",onClick:a=>a.stopPropagation(),children:[(0,d.jsx)("textarea",{value:v,onChange:a=>w(a.target.value),onKeyDown:a=>{"Enter"!==a.key||a.shiftKey||a.nativeEvent.isComposing||(a.preventDefault(),H()),"Escape"===a.key&&y(!1)},placeholder:t("review.replyPlaceholder"),className:"w-full px-2 py-1 text-sm bg-secondary border border-border rounded resize-none focus:outline-none focus:border-brand",rows:2,autoFocus:!0}),(0,d.jsxs)("div",{className:"flex items-center justify-end gap-1 mt-1",children:[(0,d.jsx)("button",{onClick:()=>y(!1),className:"px-2 py-0.5 text-xs rounded hover:bg-accent transition-colors text-muted-foreground",children:t("common.cancel")}),(0,d.jsx)("button",{onClick:H,disabled:!v.trim(),className:"px-2 py-0.5 text-xs rounded bg-brand text-white hover:bg-brand/90 transition-colors disabled:opacity-40",children:t("review.reply")})]})]}):i&&(0,d.jsx)("button",{onClick:a=>{a.stopPropagation(),y(!0)},className:"text-xs text-muted-foreground hover:text-foreground transition-colors",children:t("review.reply")})})]})});function t({comments:a,activeCommentId:b,currentAuthorId:c,isActive:g,isAdmin:h,userNameMap:i,onCommentClick:j,onNavigateComment:k,onDeleteComment:l,onEditComment:m,onToggleCommentClosed:n,onAddReply:o,onDeleteReply:p,onEditReply:q,scrollToCommentRef:r}){let{t:u}=(0,f.Bd)(),v=(0,e.useRef)(new Map),w=(0,e.useRef)(null);(0,e.useCallback)(a=>{let b=v.current.get(a);b&&b.scrollIntoView({behavior:"smooth",block:"center"})},[]);let x=[...a].sort((a,b)=>a.anchor.startOffset-b.anchor.startOffset);return(0,d.jsxs)("div",{ref:w,className:"h-full flex flex-col bg-card",children:[(0,d.jsxs)("div",{className:"px-4 py-2 bg-secondary border-b border-border flex-shrink-0 flex items-center",children:[(0,d.jsx)("span",{className:"text-xs text-muted-foreground",children:0===a.length?u("review.selectTextToComment"):b?u("review.commentsNavCount",{current:x.findIndex(a=>a.id===b)+1,total:a.length}):u("review.commentsCount",{count:a.length})}),a.length>0&&(0,d.jsxs)("div",{className:"flex items-center gap-1 ml-2",children:[(0,d.jsxs)("button",{onClick:()=>k("prev"),className:"px-1.5 py-0.5 text-[11px] text-muted-foreground hover:text-foreground hover:bg-accent rounded transition-colors flex items-center gap-0.5",title:u("review.prevComment"),children:[(0,d.jsx)("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:"15 18 9 12 15 6"})}),u("review.prevComment")]}),(0,d.jsxs)("button",{onClick:()=>k("next"),className:"px-1.5 py-0.5 text-[11px] text-muted-foreground hover:text-foreground hover:bg-accent rounded transition-colors flex items-center gap-0.5",title:u("review.nextComment"),children:[u("review.nextComment"),(0,d.jsx)("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:"9 18 15 12 9 6"})})]})]})]}),(0,d.jsx)("div",{className:"flex-1 overflow-auto",children:0===x.length?(0,d.jsx)("div",{className:"flex items-center justify-center h-full text-muted-foreground text-sm",children:(0,d.jsxs)("div",{className:"text-center",children:[(0,d.jsx)("div",{className:"text-2xl mb-2",children:"\uD83D\uDCAC"}),(0,d.jsx)("div",{children:u("review.selectTextHint")})]})}):(0,d.jsx)("div",{className:"p-3 space-y-3",children:x.map(a=>(0,d.jsx)(s,{ref:b=>{b?v.current.set(a.id,b):v.current.delete(a.id)},comment:a,isActive:a.id===b,isOwnComment:a.authorId===c,isAdmin:h,currentAuthorId:c,canInteract:g,userNameMap:i,onClick:()=>j(a.id),onDelete:()=>l(a.id),onEdit:b=>m(a.id,b),onToggleClosed:b=>n(a.id,b),onAddReply:b=>o(a.id,b),onDeleteReply:b=>p(a.id,b),onEditReply:(b,c)=>q(a.id,b,c)},a.id))})})]})}function u({identity:a}){let{t:b}=(0,f.Bd)(),[c,g]=(0,e.useState)(!1),[h,i]=(0,e.useState)(""),j=(0,e.useRef)(null),k=()=>{let b=h.trim();b&&b!==a.name&&a.confirmName(b),g(!1)};return(0,d.jsxs)("div",{className:"relative",ref:j,children:[(0,d.jsxs)("button",{onClick:()=>{c||i(a.name),g(!c)},className:"px-2 py-1 text-xs rounded hover:bg-accent transition-colors flex items-center gap-1",title:b("review.identitySettings"),children:[(0,d.jsx)("span",{className:"w-5 h-5 rounded-full bg-brand/20 text-brand flex items-center justify-center text-[10px] font-bold",children:a.name.charAt(0)}),(0,d.jsx)("span",{className:"text-muted-foreground",children:a.name})]}),c&&(0,d.jsxs)("div",{className:"absolute right-0 top-full mt-1 w-56 bg-card border border-border rounded-lg shadow-lg p-3 z-50",children:[(0,d.jsx)("div",{className:"text-xs text-muted-foreground mb-2",children:b("review.reviewNickname")}),(0,d.jsx)("input",{type:"text",value:h,onChange:a=>i(a.target.value),onKeyDown:a=>{"Enter"!==a.key||a.nativeEvent.isComposing||k()},className:"w-full px-2 py-1 text-sm bg-secondary border border-border rounded focus:outline-none focus:border-brand",autoFocus:!0}),(0,d.jsxs)("div",{className:"flex items-center gap-2 mt-2",children:[(0,d.jsx)("button",{onClick:()=>{a.randomize(),g(!1)},className:"px-2 py-1 text-xs rounded hover:bg-accent transition-colors text-muted-foreground",children:b("review.random")}),(0,d.jsx)("div",{className:"flex-1"}),(0,d.jsx)("button",{onClick:()=>g(!1),className:"px-2 py-1 text-xs rounded hover:bg-accent transition-colors text-muted-foreground",children:b("common.cancel")}),(0,d.jsx)("button",{onClick:k,className:"px-2 py-1 text-xs rounded bg-brand text-white hover:bg-brand/90 transition-colors",children:b("common.save")})]})]})]})}function v({currentReviewId:a,onSelect:b,readOnly:c,refreshTrigger:g,onViewComments:h}){let{t:i}=(0,f.Bd)(),[j,k]=(0,e.useState)([]),[l,m]=(0,e.useState)(null),[n,o]=(0,e.useState)(null),[p,q]=(0,e.useState)(!1),[r,s]=(0,e.useState)(null),t=(0,e.useRef)(null),[u,w]=(0,e.useState)(null);(0,e.useCallback)(async()=>{try{let a=await fetch("/api/review");if(a.ok){let b=await a.json();k(b.reviews||[])}}catch{}},[]);let x=(0,e.useCallback)(async(a,b,c)=>{if(a.stopPropagation(),!n){o(b);try{(await fetch(`/api/review/${b}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({active:!c})})).ok&&k(a=>a.map(a=>a.id===b?{...a,active:!c}:a))}catch{}o(null)}},[n]),y=(0,e.useCallback)(async(c,d)=>{if(c.stopPropagation(),!l){m(d);try{if((await fetch(`/api/review/${d}`,{method:"DELETE"})).ok&&(k(a=>a.filter(a=>a.id!==d)),d===a)){let a=j.filter(a=>a.id!==d);a.length>0&&b(a[0].id)}}catch{}m(null)}},[l,a,j,b]),z=(0,e.useCallback)((a,b)=>{t.current=b,a.dataTransfer.effectAllowed="move";let c=a.currentTarget;requestAnimationFrame(()=>c.classList.add("opacity-30"))},[]),A=(0,e.useCallback)(a=>{t.current=null,w(null),a.currentTarget instanceof HTMLElement&&a.currentTarget.classList.remove("opacity-30")},[]),B=(0,e.useCallback)((a,b)=>{a.preventDefault(),a.dataTransfer.dropEffect="move",t.current&&t.current!==b&&w(b)},[]),C=(0,e.useCallback)(async(a,b)=>{a.preventDefault(),w(null);let c=t.current;t.current=null,c&&c!==b&&k(a=>{let d=[...a],e=d.findIndex(a=>a.id===c),f=d.findIndex(a=>a.id===b);if(-1===e||-1===f)return a;let[g]=d.splice(e,1);return d.splice(f,0,g),fetch("/api/review/order",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({order:d.map(a=>a.id)})}).catch(()=>{}),d})},[]),D=c?j.filter(a=>a.active):j,E=!c;return p?(0,d.jsxs)("div",{className:"h-full flex flex-col items-center bg-secondary/50 w-9 flex-shrink-0 border-r border-border",children:[(0,d.jsx)("button",{onClick:()=>q(!1),className:"p-1.5 mt-2 text-muted-foreground hover:text-foreground hover:bg-accent rounded transition-colors",title:i("review.expandList"),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)("polyline",{points:"9 18 15 12 9 6"})})}),(0,d.jsx)("span",{className:"text-[10px] text-muted-foreground/50 mt-2",style:{writingMode:"vertical-rl"},children:c?i("review.nDocs",{count:D.length}):i("review.nReviews",{count:D.length})})]}):(0,d.jsxs)("div",{className:"h-full flex flex-col bg-secondary/50 w-[200px] flex-shrink-0 border-r border-border",children:[(0,d.jsxs)("div",{className:"px-3 py-2 border-b border-border flex-shrink-0 flex items-center justify-between",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("span",{className:"text-xs font-medium text-muted-foreground",children:c?i("review.docList"):i("review.allReviewsList")}),(0,d.jsx)("span",{className:"text-xs text-muted-foreground/60 ml-1.5",children:D.length})]}),(0,d.jsx)("button",{onClick:()=>q(!0),className:"p-0.5 text-muted-foreground hover:text-foreground hover:bg-accent rounded transition-colors",title:i("review.collapseList"),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)("polyline",{points:"15 18 9 12 15 6"})})})]}),(0,d.jsxs)("div",{className:"flex-1 overflow-y-auto",children:[D.map(e=>(0,d.jsxs)("div",{draggable:E,onDragStart:E?a=>z(a,e.id):void 0,onDragEnd:E?A:void 0,onDragOver:E?a=>B(a,e.id):void 0,onDrop:E?a=>C(a,e.id):void 0,onMouseEnter:a=>{let b=a.currentTarget.getBoundingClientRect();s({id:e.id,text:e.title,top:b.top+b.height/2,left:b.right})},onMouseLeave:()=>s(a=>a?.id===e.id?null:a),onClick:()=>b(e.id),className:`group px-3 py-2 cursor-pointer border-b transition-colors ${u===e.id?"border-b-brand border-t border-t-transparent":"border-b-border/50"} ${e.id===a?"bg-accent/60":"hover:bg-accent/30"}`,children:[(0,d.jsxs)("div",{className:"flex items-center gap-1.5 min-w-0",children:[!c&&(0,d.jsx)("span",{className:`w-1.5 h-1.5 rounded-full flex-shrink-0 ${e.active?"bg-green-500":"bg-muted-foreground/40"}`}),(0,d.jsx)("span",{className:"text-xs truncate flex-1",children:e.title}),e.commentCount>0&&h&&(0,d.jsx)("button",{onClick:a=>{a.stopPropagation(),h(e.id)},className:"flex-shrink-0 p-0.5 rounded text-muted-foreground/0 group-hover:text-muted-foreground/60 hover:!text-brand hover:!bg-brand/10 transition-colors",title:i("review.viewComments"),children:(0,d.jsx)("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:"M7 8h10M7 12h4m1 8l-4-4H5a2 2 0 01-2-2V6a2 2 0 012-2h14a2 2 0 012 2v8a2 2 0 01-2 2h-3l-4 4z"})})}),!c&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("button",{onClick:a=>x(a,e.id,e.active),className:`flex-shrink-0 p-0.5 rounded text-muted-foreground/0 group-hover:text-muted-foreground/60 hover:!text-foreground hover:!bg-accent transition-colors ${n===e.id?"opacity-50 pointer-events-none":""}`,title:e.active?i("review.closeReview"):i("review.reopenReview"),children:e.active?(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:"M18.36 6.64a9 9 0 1 1-12.73 0"}),(0,d.jsx)("line",{x1:"12",y1:"2",x2:"12",y2:"12"})]}):(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:"M18.36 6.64A9 9 0 0 1 12 21 9 9 0 0 1 5.64 6.64"}),(0,d.jsx)("line",{x1:"12",y1:"2",x2:"12",y2:"12"})]})}),(0,d.jsx)("button",{onClick:a=>y(a,e.id),className:`flex-shrink-0 p-0.5 rounded text-muted-foreground/0 group-hover:text-muted-foreground/60 hover:!text-red-500 hover:!bg-red-500/10 transition-colors ${l===e.id?"opacity-50 pointer-events-none":""}`,title:i("review.deleteReview"),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 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"})]})})]})]}),e.commentCount>0&&(0,d.jsx)("div",{className:`text-[10px] text-muted-foreground/50 mt-0.5 ${c?"":"pl-3"}`,children:i("review.nComments",{count:e.commentCount})})]},e.id)),0===D.length&&(0,d.jsx)("div",{className:"px-3 py-4 text-xs text-muted-foreground/50 text-center",children:c?i("review.noOpenDocs"):i("review.noReviews")})]}),r&&(0,d.jsx)("div",{className:"fixed z-50 px-2 py-1 text-xs bg-popover text-popover-foreground border border-border rounded shadow-md whitespace-nowrap pointer-events-none",style:{top:r.top,left:r.left+8,transform:"translateY(-50%)"},children:r.text})]})}function w({currentName:a,onConfirm:b,onSkip:c}){let{t:g}=(0,f.Bd)(),[h,i]=(0,e.useState)(a),j=(0,e.useRef)(null),k=()=>{let a=h.trim();a&&b(a)};return(0,d.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/50",children:(0,d.jsxs)("div",{className:"bg-card border border-border rounded-xl shadow-2xl w-80 p-5",children:[(0,d.jsx)("h2",{className:"text-base font-semibold mb-1",children:g("review.setNickname")}),(0,d.jsx)("p",{className:"text-xs text-muted-foreground mb-4",children:g("review.nicknameHint")}),(0,d.jsx)("input",{ref:j,type:"text",value:h,onChange:a=>i(a.target.value),onKeyDown:a=>{"Enter"!==a.key||a.nativeEvent.isComposing||k(),"Escape"===a.key&&c()},placeholder:g("review.nicknamePlaceholder"),maxLength:20,className:"w-full px-3 py-2 text-sm bg-secondary border border-border rounded-lg focus:outline-none focus:border-brand",autoFocus:!0}),(0,d.jsxs)("div",{className:"flex items-center justify-end gap-2 mt-4",children:[(0,d.jsx)("button",{onClick:c,className:"px-3 py-1.5 text-xs rounded-lg hover:bg-accent transition-colors text-muted-foreground",children:g("review.skipForNow")}),(0,d.jsx)("button",{onClick:k,disabled:!h.trim(),className:"px-4 py-1.5 text-xs rounded-lg bg-brand text-white hover:bg-brand/90 transition-colors disabled:opacity-40",children:g("common.save")})]})]})})}var x=c(15622);c(55511);var y=c(81749);function z({reviewId:a}){let{t:b}=(0,f.Bd)(),[c,g]=(0,e.useState)(a),[h,j]=(0,e.useState)(null),[k,l]=(0,e.useState)(!0),[m,n]=(0,e.useState)(null),[o,r]=(0,e.useState)(null),[s,A]=(0,e.useState)(!1),B=function(){let[a,b]=(0,e.useState)(""),[c,d]=(0,e.useState)(""),[f,g]=(0,e.useState)(!1),[h,i]=(0,e.useState)(!0),j=(0,e.useCallback)(a=>{let b=a.trim();b&&(d(b),g(!0),fetch("/api/review/identify",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:b})}).catch(()=>{}))},[]);return{authorId:a,name:c,nameConfirmed:f,loading:h,setName:(0,e.useCallback)(a=>{let b=a.trim();b&&(d(b),fetch("/api/review/identify",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:b})}).catch(()=>{}))},[]),confirmName:j,randomize:(0,e.useCallback)(()=>{let a,b,c,e;d((a=q.A.t("reviewUtils.adjectives",{returnObjects:!0}),b=q.A.t("reviewUtils.nouns",{returnObjects:!0}),c=a[Math.floor(Math.random()*a.length)],e=b[Math.floor(Math.random()*b.length)],`${c}${e}`))},[])}}(),{resolvedTheme:C,setTheme:D}=(0,i.D)(),[E,F]=(0,e.useState)({}),[G,H]=(0,e.useState)(!1),[I,J]=(0,e.useState)(!1),K=(0,e.useCallback)(async()=>{try{let a=await fetch("/api/review/users");if(a.ok){let b=await a.json(),c={};for(let[a,d]of Object.entries(b.users))c[a]=d.name;F(c)}}catch{}},[]),L=(0,e.useRef)(void 0),M=(0,e.useRef)(void 0),N=(0,e.useCallback)(a=>{a!==c&&(g(a),n(null),r(null),window.history.replaceState(null,"",`/review/${a}`))},[c]),O=(0,e.useCallback)(async()=>{try{let a=await fetch(`/api/review/${c}`);if(!a.ok)return void(404===a.status?n(b("review.reviewNotExist")):n(b("review.loadFailed")));let d=await a.json();j(d.review),n(null)}catch{n(b("review.networkError"))}finally{l(!1)}},[c]),P=(0,e.useCallback)(async(a,d)=>{if(B.authorId)try{(await fetch(`/api/review/${c}/comments`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({author:B.name,authorId:B.authorId,content:a,anchor:d})})).ok&&await O()}catch{(0,y.oR)(b("toast.addCommentFailed"),"error")}},[c,B,O]),Q=(0,e.useCallback)(async a=>{try{(await fetch(`/api/review/${c}/comments?commentId=${a}`,{method:"DELETE"})).ok&&await O()}catch{(0,y.oR)(b("toast.deleteCommentFailed"),"error")}},[c,O]),R=(0,e.useCallback)(async(a,d)=>{try{(await fetch(`/api/review/${c}/comments`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({commentId:a,content:d})})).ok&&await O()}catch{(0,y.oR)(b("toast.editCommentFailed"),"error")}},[c,O]),S=(0,e.useCallback)(async(a,d)=>{try{(await fetch(`/api/review/${c}/comments`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({commentId:a,closed:d})})).ok&&await O()}catch{(0,y.oR)(b("toast.operationFailed"),"error")}},[c,O,b]),T=(0,e.useCallback)(async(a,d)=>{if(B.authorId)try{(await fetch(`/api/review/${c}/replies`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({commentId:a,author:B.name,authorId:B.authorId,content:d})})).ok&&await O()}catch{(0,y.oR)(b("toast.addReplyFailed"),"error")}},[c,B,O]),U=(0,e.useCallback)(async(a,d)=>{try{(await fetch(`/api/review/${c}/replies?commentId=${a}&replyId=${d}`,{method:"DELETE"})).ok&&await O()}catch{(0,y.oR)(b("toast.deleteReplyFailed"),"error")}},[c,O]),V=(0,e.useCallback)(async(a,d,e)=>{try{(await fetch(`/api/review/${c}/replies`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({commentId:a,replyId:d,content:e})})).ok&&await O()}catch{(0,y.oR)(b("toast.editReplyFailed"),"error")}},[c,O]),W=(0,e.useCallback)(async()=>{try{let a=await fetch("/api/review/share-info"),d=await a.json(),e=d.shareBase?`${d.shareBase}/review/${c}`:window.location.href;await navigator.clipboard.writeText(e),(0,y.oR)(b("toast.linkCopied"),"success")}catch{(0,y.oR)(b("toast.copyFailed"),"error")}},[c]),X=(0,e.useCallback)(a=>{r(a),M.current?.(a)},[]),Y=(0,e.useCallback)(a=>{r(a),L.current?.(a)},[]),Z=(0,e.useCallback)(a=>{let b;if(!h||0===h.comments.length)return;let c=[...h.comments].sort((a,b)=>a.anchor.startOffset-b.anchor.startOffset),d=o?c.findIndex(a=>a.id===o):-1;b="next"===a?d<c.length-1?d+1:0:d>0?d-1:c.length-1;let e=c[b];r(e.id),M.current?.(e.id),L.current?.(e.id)},[h,o]);return(0,d.jsxs)("div",{className:"h-screen flex flex-col bg-background text-foreground overflow-hidden",children:[G&&(0,d.jsx)(w,{currentName:B.name,onConfirm:a=>{B.confirmName(a),H(!1),K()},onSkip:()=>H(!1)}),h&&(0,d.jsx)(x._,{isOpen:I,onClose:()=>J(!1),comments:h.comments,reviewTitle:h.title,userNameMap:E,onCommentClick:a=>{r(a),M.current?.(a),L.current?.(a)}}),h&&(0,d.jsx)("div",{className:"py-2 bg-secondary border-b border-border flex-shrink-0 flex justify-center",children:(0,d.jsxs)("div",{className:"w-full max-w-[1800px] px-4 flex items-center gap-3",children:[(0,d.jsx)("h1",{className:"text-sm font-semibold truncate",children:h.title}),(0,d.jsx)("span",{className:"text-[11px] text-muted-foreground flex-shrink-0",children:b("review.updatedAt",{date:new Date(h.updatedAt||h.createdAt).toLocaleDateString(void 0,{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"})})}),(0,d.jsx)("span",{className:"flex-1"}),!s&&(0,d.jsx)("span",{className:`px-2 py-0.5 text-xs rounded-full ${h.active?"bg-green-500/15 text-green-600 dark:text-green-400":"bg-muted text-muted-foreground"}`,children:h.active?b("review.active"):b("review.closed")}),(0,d.jsxs)("button",{onClick:()=>J(!0),className:"px-2 py-1 text-xs rounded hover:bg-accent transition-colors text-muted-foreground flex items-center gap-1",title:b("review.viewAllComments"),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:"M7 8h10M7 12h4m1 8l-4-4H5a2 2 0 01-2-2V6a2 2 0 012-2h14a2 2 0 012 2v8a2 2 0 01-2 2h-3l-4 4z"})}),b("review.viewCommentBtn")]}),(0,d.jsx)("button",{onClick:W,className:"px-2 py-1 text-xs rounded hover:bg-accent transition-colors text-muted-foreground",children:b("review.copyLink")}),(0,d.jsx)("button",{onClick:()=>D("dark"===C?"light":"dark"),className:"p-1 text-muted-foreground hover:text-foreground hover:bg-accent rounded transition-colors",title:"dark"===C?b("settings.switchLight"):b("settings.switchDark"),children:"dark"===C?(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)("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:"14",height:"14",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)(u,{identity:B})]})}),(0,d.jsx)("div",{className:"flex-1 flex justify-center overflow-hidden",children:(0,d.jsxs)("div",{className:"w-full max-w-[1800px] flex overflow-hidden",children:[(0,d.jsx)(v,{currentReviewId:c,onSelect:N,readOnly:!s,refreshTrigger:h?.comments.length,onViewComments:a=>{a!==c&&N(a),J(!0)}}),k?(0,d.jsx)("div",{className:"flex-1 flex items-center justify-center",children:(0,d.jsx)("div",{className:"text-muted-foreground",children:b("common.loading")})}):m||!h?(0,d.jsx)("div",{className:"flex-1 flex items-center justify-center",children:(0,d.jsxs)("div",{className:"text-center",children:[(0,d.jsx)("div",{className:"text-xl mb-2",children:m||b("review.reviewNotFound")}),(0,d.jsx)("div",{className:"text-sm text-muted-foreground",children:b("review.checkLink")})]})}):(0,d.jsxs)("div",{className:"flex-1 flex overflow-hidden",children:[(0,d.jsx)("div",{className:"flex-1 h-full border-r border-border overflow-hidden",children:(0,d.jsx)(p,{content:h.content,comments:h.comments,activeCommentId:o,isActive:h.active,onAddComment:P,onHighlightClick:Y,scrollToHighlightRef:M})}),(0,d.jsx)("div",{className:"w-[360px] h-full overflow-hidden flex-shrink-0",children:(0,d.jsx)(t,{comments:h.comments,activeCommentId:o,currentAuthorId:B.authorId,isActive:h.active,isAdmin:s,userNameMap:E,onCommentClick:X,onNavigateComment:Z,onDeleteComment:Q,onEditComment:R,onToggleCommentClosed:S,onAddReply:T,onDeleteReply:U,onEditReply:V,scrollToCommentRef:L})})]})]})})]})}},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,8465,4793,3353,7514,2338],()=>b(b.s=14379));module.exports=c})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/review/[id]/page"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"1874":{"*":{"id":"1482","name":"*","chunks":[],"async":false}},"26719":{"*":{"id":"67045","name":"*","chunks":[],"async":false}},"54962":{"*":{"id":"38581","name":"*","chunks":[],"async":true}},"57121":{"*":{"id":"35421","name":"*","chunks":[],"async":false}},"61304":{"*":{"id":"60440","name":"*","chunks":[],"async":false}},"64777":{"*":{"id":"82265","name":"*","chunks":[],"async":false}},"65438":{"*":{"id":"33932","name":"*","chunks":[],"async":false}},"74581":{"*":{"id":"61335","name":"*","chunks":[],"async":false}},"78616":{"*":{"id":"84342","name":"*","chunks":[],"async":false}},"80475":{"*":{"id":"14024","name":"*","chunks":[],"async":false}},"83599":{"*":{"id":"76646","name":"*","chunks":[],"async":false}},"86869":{"*":{"id":"74661","name":"*","chunks":[],"async":false}},"88627":{"*":{"id":"54338","name":"*","chunks":[],"async":true}},"90484":{"*":{"id":"70664","name":"*","chunks":[],"async":false}},"97899":{"*":{"id":"81729","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/home/runner/work/cockpit/cockpit/node_modules/next/dist/client/components/client-page.js":{"id":61304,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/esm/client/components/client-page.js":{"id":61304,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/client/components/client-segment.js":{"id":78616,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/esm/client/components/client-segment.js":{"id":78616,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":64777,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":64777,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/client/components/layout-router.js":{"id":57121,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/esm/client/components/layout-router.js":{"id":57121,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/client/components/render-from-template-context.js":{"id":74581,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":74581,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/lib/framework/boundary-components.js":{"id":90484,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":90484,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":86869,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":86869,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Inter\",\"arguments\":[{\"variable\":\"--font-inter\",\"subsets\":[\"latin\"],\"display\":\"swap\"}],\"variableName\":\"inter\"}":{"id":36791,"name":"*","chunks":["9114","static/chunks/9114-abef8471519b7dee.js","3530","static/chunks/3530-74191451ec2a46c4.js","7177","static/chunks/app/layout-fc306a84f663d5af.js"],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Lora\",\"arguments\":[{\"variable\":\"--font-lora\",\"subsets\":[\"latin\"],\"display\":\"swap\"}],\"variableName\":\"lora\"}":{"id":7815,"name":"*","chunks":["9114","static/chunks/9114-abef8471519b7dee.js","3530","static/chunks/3530-74191451ec2a46c4.js","7177","static/chunks/app/layout-fc306a84f663d5af.js"],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"JetBrains_Mono\",\"arguments\":[{\"variable\":\"--font-jetbrains-mono\",\"subsets\":[\"latin\"],\"display\":\"swap\"}],\"variableName\":\"jetbrainsMono\"}":{"id":66924,"name":"*","chunks":["9114","static/chunks/9114-abef8471519b7dee.js","3530","static/chunks/3530-74191451ec2a46c4.js","7177","static/chunks/app/layout-fc306a84f663d5af.js"],"async":false},"/home/runner/work/cockpit/cockpit/src/app/globals.css":{"id":51743,"name":"*","chunks":["9114","static/chunks/9114-abef8471519b7dee.js","3530","static/chunks/3530-74191451ec2a46c4.js","7177","static/chunks/app/layout-fc306a84f663d5af.js"],"async":false},"/home/runner/work/cockpit/cockpit/src/components/shared/Providers.tsx":{"id":83599,"name":"*","chunks":["9114","static/chunks/9114-abef8471519b7dee.js","3530","static/chunks/3530-74191451ec2a46c4.js","7177","static/chunks/app/layout-fc306a84f663d5af.js"],"async":false},"/home/runner/work/cockpit/cockpit/src/app/global-error.tsx":{"id":26719,"name":"*","chunks":["4219","static/chunks/app/global-error-3c48d7d42c672863.js"],"async":false},"/home/runner/work/cockpit/cockpit/src/components/workspace/EmptyState.tsx":{"id":1874,"name":"*","chunks":["7330","static/chunks/d3ac728e-ba6c269aebe5932e.js","5004","static/chunks/70e0d97a-6903b8594c742784.js","277","static/chunks/54a60aa6-1a0e6738c5ca0c78.js","9114","static/chunks/9114-abef8471519b7dee.js","3700","static/chunks/3700-e32aa43691d128b2.js","3743","static/chunks/3743-5e5ffaf674977450.js","3695","static/chunks/3695-9503d0b646958dd4.js","3530","static/chunks/3530-74191451ec2a46c4.js","3579","static/chunks/3579-2dddc4a9ac5a5b31.js","8974","static/chunks/app/page-95c3cb3c5c7c5ef1.js"],"async":false},"/home/runner/work/cockpit/cockpit/src/components/workspace/ProjectItem.tsx":{"id":65438,"name":"*","chunks":["7330","static/chunks/d3ac728e-ba6c269aebe5932e.js","5004","static/chunks/70e0d97a-6903b8594c742784.js","277","static/chunks/54a60aa6-1a0e6738c5ca0c78.js","9114","static/chunks/9114-abef8471519b7dee.js","3700","static/chunks/3700-e32aa43691d128b2.js","3743","static/chunks/3743-5e5ffaf674977450.js","3695","static/chunks/3695-9503d0b646958dd4.js","3530","static/chunks/3530-74191451ec2a46c4.js","3579","static/chunks/3579-2dddc4a9ac5a5b31.js","8974","static/chunks/app/page-95c3cb3c5c7c5ef1.js"],"async":false},"/home/runner/work/cockpit/cockpit/src/components/workspace/ProjectSidebar.tsx":{"id":80475,"name":"*","chunks":["7330","static/chunks/d3ac728e-ba6c269aebe5932e.js","5004","static/chunks/70e0d97a-6903b8594c742784.js","277","static/chunks/54a60aa6-1a0e6738c5ca0c78.js","9114","static/chunks/9114-abef8471519b7dee.js","3700","static/chunks/3700-e32aa43691d128b2.js","3743","static/chunks/3743-5e5ffaf674977450.js","3695","static/chunks/3695-9503d0b646958dd4.js","3530","static/chunks/3530-74191451ec2a46c4.js","3579","static/chunks/3579-2dddc4a9ac5a5b31.js","8974","static/chunks/app/page-95c3cb3c5c7c5ef1.js"],"async":false},"/home/runner/work/cockpit/cockpit/src/components/workspace/Workspace.tsx":{"id":54962,"name":"*","chunks":["7330","static/chunks/d3ac728e-ba6c269aebe5932e.js","5004","static/chunks/70e0d97a-6903b8594c742784.js","277","static/chunks/54a60aa6-1a0e6738c5ca0c78.js","9114","static/chunks/9114-abef8471519b7dee.js","3700","static/chunks/3700-e32aa43691d128b2.js","3743","static/chunks/3743-5e5ffaf674977450.js","3695","static/chunks/3695-9503d0b646958dd4.js","3530","static/chunks/3530-74191451ec2a46c4.js","3579","static/chunks/3579-2dddc4a9ac5a5b31.js","8974","static/chunks/app/page-95c3cb3c5c7c5ef1.js"],"async":true},"/home/runner/work/cockpit/cockpit/src/components/project/TabManager.tsx":{"id":88627,"name":"*","chunks":[],"async":true},"/home/runner/work/cockpit/cockpit/src/components/review/ReviewPage.tsx":{"id":97899,"name":"*","chunks":["7330","static/chunks/d3ac728e-ba6c269aebe5932e.js","9268","static/chunks/aaea2bcf-be8b39a8f32280f3.js","9114","static/chunks/9114-abef8471519b7dee.js","3700","static/chunks/3700-e32aa43691d128b2.js","2171","static/chunks/2171-5163d946ec03ce80.js","3530","static/chunks/3530-74191451ec2a46c4.js","9062","static/chunks/9062-cf3c7d314edd19d0.js","2951","static/chunks/app/review/%5Bid%5D/page-feeb4d9d472b00ab.js"],"async":false}},"entryCSSFiles":{"/home/runner/work/cockpit/cockpit/src/":[],"/home/runner/work/cockpit/cockpit/src/app/layout":[{"inlined":false,"path":"static/css/e33280be1b23649f.css"},{"inlined":false,"path":"static/css/2a6d4c877711db09.css"}],"/home/runner/work/cockpit/cockpit/src/app/global-error":[],"/home/runner/work/cockpit/cockpit/src/app/page":[{"inlined":false,"path":"static/css/2163ab5e45fedc6a.css"}],"/home/runner/work/cockpit/cockpit/src/app/review/[id]/page":[{"inlined":false,"path":"static/css/2163ab5e45fedc6a.css"}]},"rscModuleMapping":{"1874":{"*":{"id":"41824","name":"*","chunks":[],"async":false}},"26719":{"*":{"id":"81227","name":"*","chunks":[],"async":false}},"51743":{"*":{"id":"61135","name":"*","chunks":[],"async":false}},"54962":{"*":{"id":"51675","name":"*","chunks":[],"async":false}},"57121":{"*":{"id":"98099","name":"*","chunks":[],"async":false}},"61304":{"*":{"id":"15098","name":"*","chunks":[],"async":false}},"64777":{"*":{"id":"33859","name":"*","chunks":[],"async":false}},"65438":{"*":{"id":"49090","name":"*","chunks":[],"async":false}},"74581":{"*":{"id":"16237","name":"*","chunks":[],"async":false}},"78616":{"*":{"id":"47644","name":"*","chunks":[],"async":false}},"80475":{"*":{"id":"43647","name":"*","chunks":[],"async":false}},"83599":{"*":{"id":"87020","name":"*","chunks":[],"async":false}},"86869":{"*":{"id":"36675","name":"*","chunks":[],"async":false}},"88627":{"*":{"id":"38476","name":"*","chunks":[],"async":false}},"90484":{"*":{"id":"98562","name":"*","chunks":[],"async":false}},"97899":{"*":{"id":"79436","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}};
|
|
1
|
+
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/review/[id]/page"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"1874":{"*":{"id":"1482","name":"*","chunks":[],"async":false}},"26719":{"*":{"id":"67045","name":"*","chunks":[],"async":false}},"32458":{"*":{"id":"54338","name":"*","chunks":[],"async":true}},"54962":{"*":{"id":"38581","name":"*","chunks":[],"async":true}},"57121":{"*":{"id":"35421","name":"*","chunks":[],"async":false}},"61304":{"*":{"id":"60440","name":"*","chunks":[],"async":false}},"64777":{"*":{"id":"82265","name":"*","chunks":[],"async":false}},"65438":{"*":{"id":"33932","name":"*","chunks":[],"async":false}},"74581":{"*":{"id":"61335","name":"*","chunks":[],"async":false}},"78616":{"*":{"id":"84342","name":"*","chunks":[],"async":false}},"80475":{"*":{"id":"14024","name":"*","chunks":[],"async":false}},"83599":{"*":{"id":"76646","name":"*","chunks":[],"async":false}},"86869":{"*":{"id":"74661","name":"*","chunks":[],"async":false}},"90484":{"*":{"id":"70664","name":"*","chunks":[],"async":false}},"97899":{"*":{"id":"81729","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/home/runner/work/cockpit/cockpit/node_modules/next/dist/client/components/client-page.js":{"id":61304,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/esm/client/components/client-page.js":{"id":61304,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/client/components/client-segment.js":{"id":78616,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/esm/client/components/client-segment.js":{"id":78616,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":64777,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":64777,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/client/components/layout-router.js":{"id":57121,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/esm/client/components/layout-router.js":{"id":57121,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/client/components/render-from-template-context.js":{"id":74581,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":74581,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/lib/framework/boundary-components.js":{"id":90484,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":90484,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":86869,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":86869,"name":"*","chunks":[],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Inter\",\"arguments\":[{\"variable\":\"--font-inter\",\"subsets\":[\"latin\"],\"display\":\"swap\"}],\"variableName\":\"inter\"}":{"id":36791,"name":"*","chunks":["9114","static/chunks/9114-abef8471519b7dee.js","3530","static/chunks/3530-74191451ec2a46c4.js","7177","static/chunks/app/layout-fc306a84f663d5af.js"],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Lora\",\"arguments\":[{\"variable\":\"--font-lora\",\"subsets\":[\"latin\"],\"display\":\"swap\"}],\"variableName\":\"lora\"}":{"id":7815,"name":"*","chunks":["9114","static/chunks/9114-abef8471519b7dee.js","3530","static/chunks/3530-74191451ec2a46c4.js","7177","static/chunks/app/layout-fc306a84f663d5af.js"],"async":false},"/home/runner/work/cockpit/cockpit/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"JetBrains_Mono\",\"arguments\":[{\"variable\":\"--font-jetbrains-mono\",\"subsets\":[\"latin\"],\"display\":\"swap\"}],\"variableName\":\"jetbrainsMono\"}":{"id":66924,"name":"*","chunks":["9114","static/chunks/9114-abef8471519b7dee.js","3530","static/chunks/3530-74191451ec2a46c4.js","7177","static/chunks/app/layout-fc306a84f663d5af.js"],"async":false},"/home/runner/work/cockpit/cockpit/src/app/globals.css":{"id":51743,"name":"*","chunks":["9114","static/chunks/9114-abef8471519b7dee.js","3530","static/chunks/3530-74191451ec2a46c4.js","7177","static/chunks/app/layout-fc306a84f663d5af.js"],"async":false},"/home/runner/work/cockpit/cockpit/src/components/shared/Providers.tsx":{"id":83599,"name":"*","chunks":["9114","static/chunks/9114-abef8471519b7dee.js","3530","static/chunks/3530-74191451ec2a46c4.js","7177","static/chunks/app/layout-fc306a84f663d5af.js"],"async":false},"/home/runner/work/cockpit/cockpit/src/app/global-error.tsx":{"id":26719,"name":"*","chunks":["4219","static/chunks/app/global-error-3c48d7d42c672863.js"],"async":false},"/home/runner/work/cockpit/cockpit/src/components/workspace/EmptyState.tsx":{"id":1874,"name":"*","chunks":["7330","static/chunks/d3ac728e-ba6c269aebe5932e.js","5004","static/chunks/70e0d97a-6903b8594c742784.js","277","static/chunks/54a60aa6-1a0e6738c5ca0c78.js","9114","static/chunks/9114-abef8471519b7dee.js","3700","static/chunks/3700-e32aa43691d128b2.js","3743","static/chunks/3743-5e5ffaf674977450.js","3695","static/chunks/3695-9503d0b646958dd4.js","3530","static/chunks/3530-74191451ec2a46c4.js","3579","static/chunks/3579-2dddc4a9ac5a5b31.js","8974","static/chunks/app/page-95c3cb3c5c7c5ef1.js"],"async":false},"/home/runner/work/cockpit/cockpit/src/components/workspace/ProjectItem.tsx":{"id":65438,"name":"*","chunks":["7330","static/chunks/d3ac728e-ba6c269aebe5932e.js","5004","static/chunks/70e0d97a-6903b8594c742784.js","277","static/chunks/54a60aa6-1a0e6738c5ca0c78.js","9114","static/chunks/9114-abef8471519b7dee.js","3700","static/chunks/3700-e32aa43691d128b2.js","3743","static/chunks/3743-5e5ffaf674977450.js","3695","static/chunks/3695-9503d0b646958dd4.js","3530","static/chunks/3530-74191451ec2a46c4.js","3579","static/chunks/3579-2dddc4a9ac5a5b31.js","8974","static/chunks/app/page-95c3cb3c5c7c5ef1.js"],"async":false},"/home/runner/work/cockpit/cockpit/src/components/workspace/ProjectSidebar.tsx":{"id":80475,"name":"*","chunks":["7330","static/chunks/d3ac728e-ba6c269aebe5932e.js","5004","static/chunks/70e0d97a-6903b8594c742784.js","277","static/chunks/54a60aa6-1a0e6738c5ca0c78.js","9114","static/chunks/9114-abef8471519b7dee.js","3700","static/chunks/3700-e32aa43691d128b2.js","3743","static/chunks/3743-5e5ffaf674977450.js","3695","static/chunks/3695-9503d0b646958dd4.js","3530","static/chunks/3530-74191451ec2a46c4.js","3579","static/chunks/3579-2dddc4a9ac5a5b31.js","8974","static/chunks/app/page-95c3cb3c5c7c5ef1.js"],"async":false},"/home/runner/work/cockpit/cockpit/src/components/workspace/Workspace.tsx":{"id":54962,"name":"*","chunks":["7330","static/chunks/d3ac728e-ba6c269aebe5932e.js","5004","static/chunks/70e0d97a-6903b8594c742784.js","277","static/chunks/54a60aa6-1a0e6738c5ca0c78.js","9114","static/chunks/9114-abef8471519b7dee.js","3700","static/chunks/3700-e32aa43691d128b2.js","3743","static/chunks/3743-5e5ffaf674977450.js","3695","static/chunks/3695-9503d0b646958dd4.js","3530","static/chunks/3530-74191451ec2a46c4.js","3579","static/chunks/3579-2dddc4a9ac5a5b31.js","8974","static/chunks/app/page-95c3cb3c5c7c5ef1.js"],"async":true},"/home/runner/work/cockpit/cockpit/src/components/review/ReviewPage.tsx":{"id":97899,"name":"*","chunks":["7330","static/chunks/d3ac728e-ba6c269aebe5932e.js","9268","static/chunks/aaea2bcf-be8b39a8f32280f3.js","9114","static/chunks/9114-abef8471519b7dee.js","3700","static/chunks/3700-e32aa43691d128b2.js","2171","static/chunks/2171-5163d946ec03ce80.js","3530","static/chunks/3530-74191451ec2a46c4.js","9062","static/chunks/9062-cf3c7d314edd19d0.js","2951","static/chunks/app/review/%5Bid%5D/page-feeb4d9d472b00ab.js"],"async":false},"/home/runner/work/cockpit/cockpit/src/components/project/TabManager.tsx":{"id":32458,"name":"*","chunks":[],"async":true}},"entryCSSFiles":{"/home/runner/work/cockpit/cockpit/src/":[],"/home/runner/work/cockpit/cockpit/src/app/layout":[{"inlined":false,"path":"static/css/e33280be1b23649f.css"},{"inlined":false,"path":"static/css/18aae55f9fdae00a.css"}],"/home/runner/work/cockpit/cockpit/src/app/global-error":[],"/home/runner/work/cockpit/cockpit/src/app/page":[{"inlined":false,"path":"static/css/2163ab5e45fedc6a.css"}],"/home/runner/work/cockpit/cockpit/src/app/review/[id]/page":[{"inlined":false,"path":"static/css/2163ab5e45fedc6a.css"}]},"rscModuleMapping":{"1874":{"*":{"id":"41824","name":"*","chunks":[],"async":false}},"26719":{"*":{"id":"81227","name":"*","chunks":[],"async":false}},"32458":{"*":{"id":"38476","name":"*","chunks":[],"async":false}},"51743":{"*":{"id":"61135","name":"*","chunks":[],"async":false}},"54962":{"*":{"id":"51675","name":"*","chunks":[],"async":false}},"57121":{"*":{"id":"98099","name":"*","chunks":[],"async":false}},"61304":{"*":{"id":"15098","name":"*","chunks":[],"async":false}},"64777":{"*":{"id":"33859","name":"*","chunks":[],"async":false}},"65438":{"*":{"id":"49090","name":"*","chunks":[],"async":false}},"74581":{"*":{"id":"16237","name":"*","chunks":[],"async":false}},"78616":{"*":{"id":"47644","name":"*","chunks":[],"async":false}},"80475":{"*":{"id":"43647","name":"*","chunks":[],"async":false}},"83599":{"*":{"id":"87020","name":"*","chunks":[],"async":false}},"86869":{"*":{"id":"36675","name":"*","chunks":[],"async":false}},"90484":{"*":{"id":"98562","name":"*","chunks":[],"async":false}},"97899":{"*":{"id":"79436","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}};
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"/_not-found/page": "app/_not-found/page.js",
|
|
3
3
|
"/_global-error/page": "app/_global-error/page.js",
|
|
4
|
+
"/api/chat/deepseek/route": "app/api/chat/deepseek/route.js",
|
|
4
5
|
"/api/chat/route": "app/api/chat/route.js",
|
|
5
6
|
"/api/comments/route": "app/api/comments/route.js",
|
|
6
7
|
"/api/db/columns/route": "app/api/db/columns/route.js",
|
|
@@ -81,8 +82,8 @@
|
|
|
81
82
|
"/manifest.webmanifest/route": "app/manifest.webmanifest/route.js",
|
|
82
83
|
"/api/bash/route": "app/api/bash/route.js",
|
|
83
84
|
"/api/chat/codex/route": "app/api/chat/codex/route.js",
|
|
84
|
-
"/api/chat/ollama/route": "app/api/chat/ollama/route.js",
|
|
85
85
|
"/api/chat/kimi/route": "app/api/chat/kimi/route.js",
|
|
86
|
+
"/api/chat/ollama/route": "app/api/chat/ollama/route.js",
|
|
86
87
|
"/api/commands/route": "app/api/commands/route.js",
|
|
87
88
|
"/api/claude-stats/route": "app/api/claude-stats/route.js",
|
|
88
89
|
"/api/files/blame/route": "app/api/files/blame/route.js",
|
|
@@ -95,19 +96,19 @@
|
|
|
95
96
|
"/api/scheduled-tasks/route": "app/api/scheduled-tasks/route.js",
|
|
96
97
|
"/api/session/[sessionId]/fork/route": "app/api/session/[sessionId]/fork/route.js",
|
|
97
98
|
"/api/session/[sessionId]/history/route": "app/api/session/[sessionId]/history/route.js",
|
|
98
|
-
"/api/sessions/projects/[encodedPath]/route": "app/api/sessions/projects/[encodedPath]/route.js",
|
|
99
99
|
"/api/sessions/projects/route": "app/api/sessions/projects/route.js",
|
|
100
|
+
"/api/sessions/projects/[encodedPath]/route": "app/api/sessions/projects/[encodedPath]/route.js",
|
|
100
101
|
"/api/skills/[id]/route": "app/api/skills/[id]/route.js",
|
|
101
102
|
"/api/skills/content/route": "app/api/skills/content/route.js",
|
|
102
103
|
"/api/sessions/route": "app/api/sessions/route.js",
|
|
103
104
|
"/api/skills/route": "app/api/skills/route.js",
|
|
104
|
-
"/api/session-by-path/route": "app/api/session-by-path/route.js",
|
|
105
105
|
"/api/terminal/aliases/route": "app/api/terminal/aliases/route.js",
|
|
106
106
|
"/api/terminal/autocomplete/route": "app/api/terminal/autocomplete/route.js",
|
|
107
|
+
"/api/session-by-path/route": "app/api/session-by-path/route.js",
|
|
107
108
|
"/api/terminal/bubble-order/route": "app/api/terminal/bubble-order/route.js",
|
|
108
109
|
"/api/terminal/env/route": "app/api/terminal/env/route.js",
|
|
109
110
|
"/api/terminal/history/route": "app/api/terminal/history/route.js",
|
|
110
111
|
"/page": "app/page.js",
|
|
111
|
-
"/
|
|
112
|
-
"/
|
|
112
|
+
"/review/[id]/page": "app/review/[id]/page.js",
|
|
113
|
+
"/project/page": "app/project/page.js"
|
|
113
114
|
}
|