@surething/cockpit 1.0.273 → 1.0.274
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 +5 -4
- package/.next-prod/build-manifest.json +3 -3
- package/.next-prod/cockpit-build.json +1 -1
- package/.next-prod/prerender-manifest.json +4 -4
- package/.next-prod/react-loadable-manifest.json +0 -12
- package/.next-prod/routes-manifest.json +14 -6
- package/.next-prod/server/app/_global-error/page.js +1 -1
- package/.next-prod/server/app/_global-error/page.js.nft.json +1 -1
- 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/_tree.segment.rsc +1 -1
- package/.next-prod/server/app/_not-found/page.js +1 -1
- package/.next-prod/server/app/_not-found/page.js.nft.json +1 -1
- 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 +3 -3
- package/.next-prod/server/app/_not-found.segments/_full.segment.rsc +3 -3
- package/.next-prod/server/app/_not-found.segments/_index.segment.rsc +3 -3
- package/.next-prod/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next-prod/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/.next-prod/server/app/api/agent/test/route.js +1 -1
- package/.next-prod/server/app/api/agent/test/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/bash/route.js +1 -1
- package/.next-prod/server/app/api/bash/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/chat/codex/route.js +1 -1
- package/.next-prod/server/app/api/chat/codex/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/chat/deepseek/route.js +1 -1
- package/.next-prod/server/app/api/chat/deepseek/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/chat/glm/route.js +1 -1
- package/.next-prod/server/app/api/chat/glm/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/chat/kimi/route.js +1 -1
- package/.next-prod/server/app/api/chat/kimi/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/chat/ollama/route.js +1 -1
- package/.next-prod/server/app/api/chat/ollama/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/chat/route.js +1 -1
- package/.next-prod/server/app/api/chat/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/chat/stop/route.js +1 -1
- package/.next-prod/server/app/api/chat/stop/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/claude-stats/route.js +1 -1
- package/.next-prod/server/app/api/claude-stats/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/commands/route.js +1 -1
- package/.next-prod/server/app/api/commands/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/comments/route.js +1 -1
- package/.next-prod/server/app/api/comments/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/db/columns/route.js +1 -1
- package/.next-prod/server/app/api/db/columns/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/db/connect/route.js +2 -2
- package/.next-prod/server/app/api/db/connect/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/db/disconnect/route.js +1 -1
- package/.next-prod/server/app/api/db/disconnect/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/db/export/route.js +1 -1
- package/.next-prod/server/app/api/db/export/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/db/query/route.js +1 -1
- package/.next-prod/server/app/api/db/query/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/db/schemas/route.js +2 -2
- package/.next-prod/server/app/api/db/schemas/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/deepseek/balance/route.js +1 -1
- package/.next-prod/server/app/api/deepseek/balance/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/deepseek/credentials/route.js +1 -1
- package/.next-prod/server/app/api/deepseek/credentials/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/deepseek/models/route.js +1 -1
- package/.next-prod/server/app/api/deepseek/models/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/dev/spans/route.js +1 -1
- package/.next-prod/server/app/api/dev/spans/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/extension/version/route.js +1 -1
- package/.next-prod/server/app/api/extension/version/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/file/route.js +1 -1
- package/.next-prod/server/app/api/file/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/files/blame/route.js +1 -1
- package/.next-prod/server/app/api/files/blame/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/files/clipboard/route.js +1 -1
- package/.next-prod/server/app/api/files/clipboard/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/files/copy/route.js +1 -1
- package/.next-prod/server/app/api/files/copy/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/files/delete/route.js +1 -1
- package/.next-prod/server/app/api/files/delete/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/files/expanded/route.js +1 -1
- package/.next-prod/server/app/api/files/expanded/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/files/index/route.js +1 -1
- package/.next-prod/server/app/api/files/index/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/files/init/route.js +1 -1
- package/.next-prod/server/app/api/files/init/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/files/paste/route.js +1 -1
- package/.next-prod/server/app/api/files/paste/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/files/read/route.js +1 -1
- package/.next-prod/server/app/api/files/read/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/files/readdir/route.js +1 -1
- package/.next-prod/server/app/api/files/readdir/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/files/recent/route.js +1 -1
- package/.next-prod/server/app/api/files/recent/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/files/save/route.js +1 -1
- package/.next-prod/server/app/api/files/save/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/files/search/route.js +1 -1
- package/.next-prod/server/app/api/files/search/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/files/stat/route.js +1 -1
- package/.next-prod/server/app/api/files/stat/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/files/text/route.js +1 -1
- package/.next-prod/server/app/api/files/text/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/git/blob/route.js +1 -1
- package/.next-prod/server/app/api/git/blob/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/git/branch-diff/route.js +1 -1
- package/.next-prod/server/app/api/git/branch-diff/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/git/branches/route.js +1 -1
- package/.next-prod/server/app/api/git/branches/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/git/commit-diff/route.js +1 -1
- package/.next-prod/server/app/api/git/commit-diff/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/git/commits/route.js +1 -1
- package/.next-prod/server/app/api/git/commits/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/git/current-branch/route.js +1 -1
- package/.next-prod/server/app/api/git/current-branch/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/git/diff/route.js +1 -1
- package/.next-prod/server/app/api/git/diff/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/git/discard/route.js +1 -1
- package/.next-prod/server/app/api/git/discard/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/git/stage/route.js +1 -1
- package/.next-prod/server/app/api/git/stage/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/git/status/route.js +1 -1
- package/.next-prod/server/app/api/git/status/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/git/unstage/route.js +1 -1
- package/.next-prod/server/app/api/git/unstage/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/git/worktree/route.js +1 -1
- package/.next-prod/server/app/api/git/worktree/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/glm/credentials/route.js +1 -1
- package/.next-prod/server/app/api/glm/credentials/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/glm/models/route.js +1 -1
- package/.next-prod/server/app/api/glm/models/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/glm/usage/route.js +1 -1
- package/.next-prod/server/app/api/glm/usage/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/global-state/route.js +1 -1
- package/.next-prod/server/app/api/global-state/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/health/route.js +1 -1
- package/.next-prod/server/app/api/health/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/html-apps/[id]/route.js +1 -1
- package/.next-prod/server/app/api/html-apps/[id]/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/html-apps/route.js +1 -1
- package/.next-prod/server/app/api/html-apps/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/instructions/config/route.js +1 -0
- package/.next-prod/server/app/api/{prompts → instructions}/config/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/instructions/config/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/kimi/credentials/route.js +1 -1
- package/.next-prod/server/app/api/kimi/credentials/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/kimi/models/route.js +1 -1
- package/.next-prod/server/app/api/kimi/models/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/kimi/usage/route.js +1 -1
- package/.next-prod/server/app/api/kimi/usage/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/lsp/definition/route.js +1 -1
- package/.next-prod/server/app/api/lsp/definition/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/lsp/hover/route.js +1 -1
- package/.next-prod/server/app/api/lsp/hover/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/lsp/references/route.js +1 -1
- package/.next-prod/server/app/api/lsp/references/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/lsp/status/route.js +1 -1
- package/.next-prod/server/app/api/lsp/status/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/lsp/warmup/route.js +1 -1
- package/.next-prod/server/app/api/lsp/warmup/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/mysql/columns/route.js +2 -2
- package/.next-prod/server/app/api/mysql/columns/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/mysql/connect/route.js +1 -1
- package/.next-prod/server/app/api/mysql/connect/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/mysql/disconnect/route.js +1 -1
- package/.next-prod/server/app/api/mysql/disconnect/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/mysql/export/route.js +1 -1
- package/.next-prod/server/app/api/mysql/export/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/mysql/query/route.js +1 -1
- package/.next-prod/server/app/api/mysql/query/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/mysql/schemas/route.js +2 -2
- package/.next-prod/server/app/api/mysql/schemas/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/neo4j/connect/route.js +1 -1
- package/.next-prod/server/app/api/neo4j/connect/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/neo4j/disconnect/route.js +1 -1
- package/.next-prod/server/app/api/neo4j/disconnect/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/neo4j/query/route.js +1 -1
- package/.next-prod/server/app/api/neo4j/query/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/neo4j/schema/route.js +1 -1
- package/.next-prod/server/app/api/neo4j/schema/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/note/route.js +1 -1
- package/.next-prod/server/app/api/note/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/ollama/config/route.js +1 -1
- package/.next-prod/server/app/api/ollama/config/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/ollama/models/route.js +1 -1
- package/.next-prod/server/app/api/ollama/models/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/ollama/start/route.js +1 -1
- package/.next-prod/server/app/api/ollama/start/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/open-cursor/route.js +1 -1
- package/.next-prod/server/app/api/open-cursor/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/open-vscode/route.js +1 -1
- package/.next-prod/server/app/api/open-vscode/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/pick-folder/route.js +1 -1
- package/.next-prod/server/app/api/pick-folder/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/pinned-sessions/route.js +1 -1
- package/.next-prod/server/app/api/pinned-sessions/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/project-settings/route.js +1 -1
- package/.next-prod/server/app/api/project-settings/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/project-state/route.js +2 -2
- package/.next-prod/server/app/api/project-state/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/projectGraph/affected/route.js +1 -1
- package/.next-prod/server/app/api/projectGraph/affected/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/projectGraph/callees/route.js +1 -1
- package/.next-prod/server/app/api/projectGraph/callees/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/projectGraph/callers/route.js +1 -1
- package/.next-prod/server/app/api/projectGraph/callers/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/projectGraph/coedit/route.js +1 -1
- package/.next-prod/server/app/api/projectGraph/coedit/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/projectGraph/context/route.js +1 -1
- package/.next-prod/server/app/api/projectGraph/context/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/projectGraph/file/route.js +1 -1
- package/.next-prod/server/app/api/projectGraph/file/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/projectGraph/file-functions/route.js +1 -1
- package/.next-prod/server/app/api/projectGraph/file-functions/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/projectGraph/impact/route.js +1 -1
- package/.next-prod/server/app/api/projectGraph/impact/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/projectGraph/related/route.js +1 -1
- package/.next-prod/server/app/api/projectGraph/related/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/projectGraph/risk/route.js +1 -1
- package/.next-prod/server/app/api/projectGraph/risk/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/projectGraph/search/route.js +1 -1
- package/.next-prod/server/app/api/projectGraph/search/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/projects/route.js +1 -1
- package/.next-prod/server/app/api/projects/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/push/public-key/route.js +1 -1
- package/.next-prod/server/app/api/push/public-key/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/push/subscribe/route.js +1 -1
- package/.next-prod/server/app/api/push/subscribe/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/push/unsubscribe/route.js +1 -1
- package/.next-prod/server/app/api/push/unsubscribe/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/redis/command/route.js +1 -1
- package/.next-prod/server/app/api/redis/command/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/redis/connect/route.js +1 -1
- package/.next-prod/server/app/api/redis/connect/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/redis/delete/route.js +1 -1
- package/.next-prod/server/app/api/redis/delete/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/redis/disconnect/route.js +1 -1
- package/.next-prod/server/app/api/redis/disconnect/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/redis/get/route.js +1 -1
- package/.next-prod/server/app/api/redis/get/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/redis/keys/route.js +1 -1
- package/.next-prod/server/app/api/redis/keys/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/redis/set/route.js +1 -1
- package/.next-prod/server/app/api/redis/set/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/restart/route.js +1 -1
- package/.next-prod/server/app/api/restart/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/review/[id]/comments/route.js +1 -1
- package/.next-prod/server/app/api/review/[id]/comments/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/review/[id]/replies/route.js +1 -1
- package/.next-prod/server/app/api/review/[id]/replies/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/review/[id]/route.js +1 -1
- package/.next-prod/server/app/api/review/[id]/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/review/identify/route.js +1 -1
- package/.next-prod/server/app/api/review/identify/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/review/order/route.js +1 -1
- package/.next-prod/server/app/api/review/order/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/review/route.js +1 -1
- package/.next-prod/server/app/api/review/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/review/share-info/route.js +1 -1
- package/.next-prod/server/app/api/review/share-info/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/review/users/route.js +1 -1
- package/.next-prod/server/app/api/review/users/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/scheduled-tasks/route.js +2 -2
- package/.next-prod/server/app/api/scheduled-tasks/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/services/config/route.js +1 -1
- package/.next-prod/server/app/api/services/config/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/services/scripts/route.js +1 -1
- package/.next-prod/server/app/api/services/scripts/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/session/[sessionId]/fork/route.js +1 -1
- package/.next-prod/server/app/api/session/[sessionId]/fork/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/session/[sessionId]/history/route.js +1 -1
- package/.next-prod/server/app/api/session/[sessionId]/history/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/session/[sessionId]/turn/route.js +2 -0
- package/.next-prod/server/app/api/session/[sessionId]/turn/route.js.nft.json +1 -0
- package/.next-prod/server/app/api/session/[sessionId]/turn/route_client-reference-manifest.js +1 -0
- package/.next-prod/server/app/api/session/user-messages/route.js +1 -1
- package/.next-prod/server/app/api/session/user-messages/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/session-by-path/route.js +1 -1
- package/.next-prod/server/app/api/session-by-path/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/sessions/projects/[encodedPath]/route.js +1 -1
- package/.next-prod/server/app/api/sessions/projects/[encodedPath]/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/sessions/projects/route.js +1 -1
- package/.next-prod/server/app/api/sessions/projects/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/sessions/route.js +1 -1
- package/.next-prod/server/app/api/sessions/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/settings/route.js +1 -1
- package/.next-prod/server/app/api/settings/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/shutdown/route.js +1 -1
- package/.next-prod/server/app/api/shutdown/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/skills/[id]/route.js +1 -1
- package/.next-prod/server/app/api/skills/[id]/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/skills/content/route.js +1 -1
- package/.next-prod/server/app/api/skills/content/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/skills/route.js +1 -1
- package/.next-prod/server/app/api/skills/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/snapshots/blob/route.js +1 -1
- package/.next-prod/server/app/api/snapshots/blob/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/snapshots/diff/route.js +1 -1
- package/.next-prod/server/app/api/snapshots/diff/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/snapshots/route.js +1 -1
- package/.next-prod/server/app/api/snapshots/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/terminal/aliases/route.js +1 -1
- package/.next-prod/server/app/api/terminal/aliases/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/terminal/autocomplete/route.js +1 -1
- package/.next-prod/server/app/api/terminal/autocomplete/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/terminal/bubble-order/route.js +1 -1
- package/.next-prod/server/app/api/terminal/bubble-order/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/terminal/env/route.js +1 -1
- package/.next-prod/server/app/api/terminal/env/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/terminal/history/route.js +1 -1
- package/.next-prod/server/app/api/terminal/history/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/update/route.js +1 -1
- package/.next-prod/server/app/api/update/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/update-state/route.js +1 -1
- package/.next-prod/server/app/api/update-state/route.js.nft.json +1 -1
- package/.next-prod/server/app/api/version/route.js +1 -1
- package/.next-prod/server/app/api/version/route.js.nft.json +1 -1
- package/.next-prod/server/app/apps/[...path]/route.js +1 -1
- package/.next-prod/server/app/apps/[...path]/route.js.nft.json +1 -1
- package/.next-prod/server/app/favicon.ico/route.js +1 -1
- package/.next-prod/server/app/favicon.ico/route.js.nft.json +1 -1
- package/.next-prod/server/app/m/page.js +1 -1
- package/.next-prod/server/app/m/page.js.nft.json +1 -1
- package/.next-prod/server/app/m/page_client-reference-manifest.js +1 -1
- package/.next-prod/server/app/manifest.webmanifest/route.js +2 -2
- package/.next-prod/server/app/manifest.webmanifest/route.js.nft.json +1 -1
- package/.next-prod/server/app/page.js +1 -1
- package/.next-prod/server/app/page.js.nft.json +1 -1
- package/.next-prod/server/app/page_client-reference-manifest.js +1 -1
- package/.next-prod/server/app/project/page.js +1 -1
- package/.next-prod/server/app/project/page.js.nft.json +1 -1
- package/.next-prod/server/app/project/page_client-reference-manifest.js +1 -1
- package/.next-prod/server/app/review/[id]/page.js +1 -1
- package/.next-prod/server/app/review/[id]/page.js.nft.json +1 -1
- package/.next-prod/server/app/review/[id]/page_client-reference-manifest.js +1 -1
- package/.next-prod/server/app-paths-manifest.json +5 -4
- package/.next-prod/server/chunks/2493.js +3 -3
- package/.next-prod/server/chunks/3286.js +1 -1
- package/.next-prod/server/chunks/516.js +1 -1
- package/.next-prod/server/chunks/5750.js +19 -19
- package/.next-prod/server/chunks/6495.js +1 -1
- package/.next-prod/server/chunks/6548.js +1 -1
- package/.next-prod/server/chunks/{5433.js → 7956.js} +9 -10
- package/.next-prod/server/chunks/8616.js +1 -1
- package/.next-prod/server/chunks/9830.js +1 -1
- package/.next-prod/server/chunks/9891.js +7 -0
- package/.next-prod/server/functions-config-manifest.json +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/{qoIca6xp2OKAJtDEvMaXC → Ltfbusd381Du6etTab1ug}/_buildManifest.js +1 -1
- package/.next-prod/static/chunks/{4137-7d6f2498d03b184d.js → 103-1788abe4fb625136.js} +7 -7
- package/.next-prod/static/chunks/{1332-e26fddaef359ce51.js → 1332-e51496c0bf36be06.js} +5 -5
- package/.next-prod/static/chunks/{2032-8326efdf5830d58c.js → 2032-c4d080bb65101d4c.js} +1 -1
- package/.next-prod/static/chunks/2539-52ea8019220fc163.js +17 -0
- package/.next-prod/static/chunks/{7570-ebe01cce6f28a79f.js → 8707-60c93d98f9ca9be7.js} +2 -2
- package/.next-prod/static/chunks/9092-9c01b3ae176018c5.js +716 -0
- package/.next-prod/static/chunks/9656-da407fc0921ddc52.js +32 -0
- package/.next-prod/static/chunks/96c8525a-b50f9758924ea57d.js +1 -0
- package/.next-prod/static/chunks/app/_global-error/page-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/agent/test/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/bash/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/chat/codex/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/chat/deepseek/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/chat/glm/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/chat/kimi/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/chat/ollama/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/chat/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/chat/stop/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/claude-stats/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/commands/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/comments/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/db/columns/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/db/connect/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/db/disconnect/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/db/export/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/db/query/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/db/schemas/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/deepseek/balance/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/deepseek/credentials/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/deepseek/models/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/dev/spans/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/extension/version/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/file/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/files/blame/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/files/clipboard/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/files/copy/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/files/delete/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/files/expanded/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/files/index/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/files/init/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/files/paste/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/files/read/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/files/readdir/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/files/recent/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/files/save/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/files/search/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/files/stat/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/files/text/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/git/blob/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/git/branch-diff/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/git/branches/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/git/commit-diff/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/git/commits/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/git/current-branch/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/git/diff/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/git/discard/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/git/stage/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/git/status/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/git/unstage/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/git/worktree/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/glm/credentials/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/glm/models/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/glm/usage/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/global-state/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/health/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/html-apps/[id]/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/html-apps/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/instructions/config/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/kimi/credentials/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/kimi/models/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/kimi/usage/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/lsp/definition/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/lsp/hover/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/lsp/references/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/lsp/status/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/lsp/warmup/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/mysql/columns/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/mysql/connect/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/mysql/disconnect/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/mysql/export/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/mysql/query/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/mysql/schemas/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/neo4j/connect/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/neo4j/disconnect/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/neo4j/query/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/neo4j/schema/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/note/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/ollama/config/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/ollama/models/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/ollama/start/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/open-cursor/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/open-vscode/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/pick-folder/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/pinned-sessions/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/project-settings/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/project-state/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/projectGraph/affected/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/projectGraph/callees/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/projectGraph/callers/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/projectGraph/coedit/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/projectGraph/context/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/projectGraph/file/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/projectGraph/file-functions/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/projectGraph/impact/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/projectGraph/related/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/projectGraph/risk/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/projectGraph/search/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/projects/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/push/public-key/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/push/subscribe/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/push/unsubscribe/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/redis/command/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/redis/connect/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/redis/delete/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/redis/disconnect/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/redis/get/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/redis/keys/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/redis/set/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/restart/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/review/[id]/comments/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/review/[id]/replies/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/review/[id]/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/review/identify/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/review/order/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/review/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/review/share-info/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/review/users/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/scheduled-tasks/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/services/config/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/services/scripts/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/session/[sessionId]/fork/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/session/[sessionId]/history/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/session/[sessionId]/turn/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/session/user-messages/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/session-by-path/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/sessions/projects/[encodedPath]/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/sessions/projects/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/sessions/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/settings/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/shutdown/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/skills/[id]/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/skills/content/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/skills/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/snapshots/blob/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/snapshots/diff/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/snapshots/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/terminal/aliases/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/terminal/autocomplete/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/terminal/bubble-order/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/terminal/env/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/terminal/history/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/update/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/update-state/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/api/version/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/apps/[...path]/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/{layout-915635f208cba4b3.js → layout-c78a23d9fb720698.js} +1 -1
- package/.next-prod/static/chunks/app/m/page-54ed2c27ba82b757.js +1 -0
- package/.next-prod/static/chunks/app/manifest.webmanifest/route-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/app/{page-48dc2d6146301fd7.js → page-7219de792c309861.js} +1 -1
- package/.next-prod/static/chunks/app/project/{page-48dc2d6146301fd7.js → page-7219de792c309861.js} +1 -1
- package/.next-prod/static/chunks/app/review/[id]/{page-1fe42d46b22c6482.js → page-70fc17b48dfdf8d3.js} +1 -1
- package/.next-prod/static/chunks/bc21e3dd-86c39ec41fe6001c.js +1 -0
- package/.next-prod/static/chunks/next/dist/client/components/builtin/app-error-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/next/dist/client/components/builtin/forbidden-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/next/dist/client/components/builtin/not-found-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/next/dist/client/components/builtin/unauthorized-dd925381ab99e37b.js +1 -0
- package/.next-prod/static/chunks/{webpack-82f9e372d672c6bc.js → webpack-9a02cd12ee150c50.js} +1 -1
- package/.next-prod/static/css/08c892de6d5e2335.css +1 -0
- package/.next-prod/trace +14 -14
- package/.next-prod/trace-build +1 -1
- package/.next-prod/types/app/api/{prompts → instructions}/config/route.ts +3 -3
- package/.next-prod/types/app/api/session/[sessionId]/turn/route.ts +353 -0
- package/.next-prod/types/routes.d.ts +3 -2
- package/.next-prod/types/validator.ts +18 -9
- package/dist/{chunk-TOA52B2X.mjs → chunk-OFFSCRWY.mjs} +18 -13
- package/dist/{chunk-PB4GBZQO.mjs → chunk-OO4ODUAC.mjs} +1 -1
- package/dist/{chunk-4EU4KZIO.mjs → chunk-SJ7VM26B.mjs} +4 -14
- package/dist/httpApi.mjs +2 -2
- package/dist/scheduledTasks.mjs +834 -508
- package/dist/wsServer.mjs +3 -3
- package/package.json +3 -3
- package/.next-prod/server/app/api/prompts/config/route.js +0 -1
- package/.next-prod/server/app/api/prompts/config/route_client-reference-manifest.js +0 -1
- package/.next-prod/server/chunks/2728.js +0 -1
- package/.next-prod/server/chunks/3718.js +0 -1
- package/.next-prod/server/chunks/9312.js +0 -1
- package/.next-prod/server/chunks/9352.js +0 -6
- package/.next-prod/static/chunks/5390-e2c2386e8288a254.js +0 -32
- package/.next-prod/static/chunks/7184-8b7ad4ccea8b15a3.js +0 -17
- package/.next-prod/static/chunks/7562.8fdc3abdd45c77ab.js +0 -1
- package/.next-prod/static/chunks/9012.6ed079104670001d.js +0 -1
- package/.next-prod/static/chunks/9092-a942df8114966b59.js +0 -716
- package/.next-prod/static/chunks/96c8525a-f1e0653013503d49.js +0 -2
- package/.next-prod/static/chunks/app/_global-error/page-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/agent/test/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/bash/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/chat/codex/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/chat/deepseek/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/chat/glm/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/chat/kimi/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/chat/ollama/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/chat/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/chat/stop/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/claude-stats/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/commands/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/comments/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/db/columns/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/db/connect/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/db/disconnect/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/db/export/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/db/query/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/db/schemas/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/deepseek/balance/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/deepseek/credentials/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/deepseek/models/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/dev/spans/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/extension/version/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/file/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/files/blame/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/files/clipboard/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/files/copy/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/files/delete/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/files/expanded/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/files/index/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/files/init/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/files/paste/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/files/read/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/files/readdir/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/files/recent/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/files/save/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/files/search/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/files/stat/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/files/text/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/git/blob/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/git/branch-diff/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/git/branches/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/git/commit-diff/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/git/commits/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/git/current-branch/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/git/diff/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/git/discard/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/git/stage/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/git/status/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/git/unstage/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/git/worktree/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/glm/credentials/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/glm/models/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/glm/usage/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/global-state/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/health/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/html-apps/[id]/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/html-apps/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/kimi/credentials/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/kimi/models/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/kimi/usage/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/lsp/definition/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/lsp/hover/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/lsp/references/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/lsp/status/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/lsp/warmup/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/mysql/columns/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/mysql/connect/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/mysql/disconnect/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/mysql/export/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/mysql/query/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/mysql/schemas/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/neo4j/connect/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/neo4j/disconnect/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/neo4j/query/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/neo4j/schema/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/note/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/ollama/config/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/ollama/models/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/ollama/start/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/open-cursor/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/open-vscode/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/pick-folder/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/pinned-sessions/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/project-settings/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/project-state/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/projectGraph/affected/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/projectGraph/callees/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/projectGraph/callers/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/projectGraph/coedit/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/projectGraph/context/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/projectGraph/file/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/projectGraph/file-functions/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/projectGraph/impact/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/projectGraph/related/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/projectGraph/risk/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/projectGraph/search/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/projects/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/prompts/config/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/push/public-key/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/push/subscribe/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/push/unsubscribe/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/redis/command/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/redis/connect/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/redis/delete/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/redis/disconnect/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/redis/get/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/redis/keys/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/redis/set/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/restart/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/review/[id]/comments/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/review/[id]/replies/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/review/[id]/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/review/identify/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/review/order/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/review/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/review/share-info/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/review/users/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/scheduled-tasks/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/services/config/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/services/scripts/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/session/[sessionId]/fork/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/session/[sessionId]/history/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/session/user-messages/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/session-by-path/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/sessions/projects/[encodedPath]/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/sessions/projects/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/sessions/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/settings/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/shutdown/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/skills/[id]/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/skills/content/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/skills/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/snapshots/blob/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/snapshots/diff/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/snapshots/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/terminal/aliases/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/terminal/autocomplete/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/terminal/bubble-order/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/terminal/env/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/terminal/history/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/update/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/update-state/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/api/version/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/apps/[...path]/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/app/m/page-8442a2605d0feb3f.js +0 -1
- package/.next-prod/static/chunks/app/manifest.webmanifest/route-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/bc21e3dd-a78364524623b9b0.js +0 -1
- package/.next-prod/static/chunks/next/dist/client/components/builtin/app-error-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/next/dist/client/components/builtin/forbidden-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/next/dist/client/components/builtin/not-found-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/chunks/next/dist/client/components/builtin/unauthorized-0bc5d188dc4650ab.js +0 -1
- package/.next-prod/static/css/ec2765469545dfce.css +0 -1
- /package/.next-prod/static/{qoIca6xp2OKAJtDEvMaXC → Ltfbusd381Du6etTab1ug}/_ssgManifest.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2032],{19736:(e,t,r)=>{r.d(t,{ReviewCommentsListModal:()=>c});var n=r(95155),o=r(12115),s=r(79114),a=r(64428),l=r(34075),i=r(69809);function d(e,t,r){let n=(e,r)=>t[e]||r,o=[],s=null!=r?`[${r+1}] `:"",a=e.anchor.selectedText.length>200?e.anchor.selectedText.slice(0,197)+"...":e.anchor.selectedText;for(let t of(o.push(`${s}${i.A.t("review.quoteRef",{text:a})}`),o.push(i.A.t("review.commentAuthor",{author:n(e.authorId,e.author),content:e.content})),e.replies))o.push(i.A.t("review.replyAuthor",{author:n(t.authorId,t.author),content:t.content}));return o.join("\n")}function c({isOpen:e,onClose:t,comments:r,reviewTitle:m,userNameMap:h,onCommentClick:x}){let{t:p}=(0,s.Bd)(),[f,v]=(0,o.useState)(null),[g,b]=(0,o.useState)(!1);if(!e)return null;let w=[...r].sort((e,t)=>e.anchor.startOffset-t.anchor.startOffset),j=(e,t)=>h[e]||t,N=async e=>{v(e.id);try{let t=d(e,h);await navigator.clipboard.writeText(t),(0,l.oR)(p("toast.copiedComment"))}catch{(0,l.oR)(p("toast.copyFailed"),"error")}finally{v(null)}},k=async()=>{if(0!==r.length){b(!0);try{let e=function(e,t,r){if(0===e.length)return"";let n=[...e].sort((e,t)=>e.anchor.startOffset-t.anchor.startOffset),o=[i.A.t("review.reviewSummary",{title:t}),""];return n.forEach((e,t)=>{o.push(d(e,r,t)),o.push("")}),o.push(i.A.t("review.totalNComments",{count:e.length})),o.join("\n").trim()}(r,m,h);await navigator.clipboard.writeText(e),(0,l.oR)(p("toast.copiedAllComments"))}catch{(0,l.oR)(p("toast.copyFailed"),"error")}finally{b(!1)}}},C=e=>{x?.(e),t()},y=w.filter(e=>!e.closed),M=w.filter(e=>e.closed),S=(0,n.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-scrim p-4",onClick:t,children:(0,n.jsxs)("div",{className:"w-full max-w-2xl max-h-[80vh] bg-card border border-border rounded-lg shadow-lv3 flex flex-col overflow-hidden",onClick:e=>e.stopPropagation(),children:[(0,n.jsxs)("div",{className:"flex items-center justify-between px-4 py-3 border-b border-border ",children:[(0,n.jsxs)("div",{className:"flex items-center gap-2",children:[(0,n.jsx)("h2",{className:"text-sm font-semibold text-foreground",children:p("review.allCommentsTitle")}),(0,n.jsxs)("span",{className:"text-xs text-muted-foreground",children:[p("review.commentsCountBrief",{count:r.length}),M.length>0&&` (${p("review.closedCount",{count:M.length})})`]}),r.length>0&&(0,n.jsx)("button",{onClick:k,disabled:g,className:"p-1 rounded hover:bg-hover text-muted-foreground disabled:opacity-50",title:p("review.copyAllComments"),children:g?(0,n.jsx)("span",{className:"inline-block w-4 h-4 border-2 border-current border-t-transparent rounded-full animate-spin"}):(0,n.jsx)("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"})})})]}),(0,n.jsx)("button",{onClick:t,className:"p-1 rounded hover:bg-hover text-muted-foreground",children:(0,n.jsx)("svg",{className:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})})})]}),(0,n.jsx)("div",{className:"flex-1 overflow-y-auto p-3",children:0===r.length?(0,n.jsxs)("div",{className:"flex flex-col items-center justify-center py-12 text-muted-foreground",children:[(0,n.jsx)("div",{className:"text-2xl mb-2",children:"\uD83D\uDCAC"}),(0,n.jsx)("span",{className:"text-sm",children:p("review.noComments")})]}):(0,n.jsxs)("div",{className:"space-y-2",children:[y.map((e,t)=>(0,n.jsx)(u,{comment:e,index:t,resolveAuthor:j,copyingId:f,onCopy:N,onClick:C},e.id)),M.length>0&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("div",{className:"text-[11px] text-muted-foreground/60 pt-2 pb-1 px-1",children:p("review.closedComments",{count:M.length})}),M.map((e,t)=>(0,n.jsx)(u,{comment:e,index:y.length+t,resolveAuthor:j,copyingId:f,onCopy:N,onClick:C,closed:!0},e.id))]})]})})]})});return(0,n.jsx)(a.ZL,{children:S})}function u({comment:e,index:t,resolveAuthor:r,copyingId:o,onCopy:s,onClick:a,closed:l}){let d=e.anchor.selectedText.length>100?e.anchor.selectedText.slice(0,97)+"...":e.anchor.selectedText;return(0,n.jsxs)("div",{className:`rounded-lg border border-border hover:border-muted-foreground/30 transition-all cursor-pointer group ${l?"opacity-50":""}`,onClick:()=>a(e.id),children:[(0,n.jsx)("div",{className:"px-3 pt-2.5 pb-1",children:(0,n.jsx)("div",{className:"text-xs bg-yellow-500/10 border-l-2 border-yellow-500 px-2 py-1 rounded-r text-muted-foreground truncate",children:d})}),(0,n.jsxs)("div",{className:"px-3 pt-1.5 pb-2 flex items-start gap-2",children:[(0,n.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,n.jsxs)("div",{className:"flex items-center gap-2 mb-0.5",children:[(0,n.jsx)("span",{className:"w-4 h-4 rounded-full bg-brand/20 text-brand flex items-center justify-center text-[9px] font-bold flex-shrink-0",children:r(e.authorId,e.author).charAt(0)}),(0,n.jsx)("span",{className:"text-xs font-medium",children:r(e.authorId,e.author)}),(0,n.jsx)("span",{className:"text-[10px] text-muted-foreground",children:new Date(e.createdAt).toLocaleString("zh-CN",{month:"numeric",day:"numeric",hour:"2-digit",minute:"2-digit"})}),l&&(0,n.jsx)("span",{className:"text-[10px] text-muted-foreground/60",children:i.A.t("review.closedLabel")})]}),(0,n.jsx)("p",{className:"text-sm text-foreground line-clamp-2 pl-6",children:e.content}),e.replies.length>0&&(0,n.jsxs)("div",{className:"pl-6 mt-1 space-y-0.5",children:[e.replies.slice(0,3).map(e=>(0,n.jsxs)("div",{className:"text-xs text-muted-foreground truncate",children:[(0,n.jsx)("span",{className:"font-medium",children:r(e.authorId,e.author)}),": ",e.content]},e.id)),e.replies.length>3&&(0,n.jsx)("div",{className:"text-[10px] text-muted-foreground/60",children:i.A.t("review.moreReplies",{count:e.replies.length-3})})]})]}),(0,n.jsx)("button",{onClick:t=>{t.stopPropagation(),s(e)},disabled:o===e.id,className:"p-1 rounded opacity-0 group-hover:opacity-100 hover:bg-hover text-muted-foreground transition-opacity disabled:opacity-50 flex-shrink-0 mt-0.5",title:i.A.t("review.copyComment"),children:o===e.id?(0,n.jsx)("span",{className:"inline-block w-4 h-4 border-2 border-current border-t-transparent rounded-full animate-spin"}):(0,n.jsx)("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"})})})]})]})}},82032:(e,t,r)=>{r.d(t,{ReviewDropdown:()=>x});var n=r(95155),o=r(12115),s=r(79114),a=r(2111),l=r(19736),i=r(49433),d=r(86957),c=r(90420);let u="review-last-viewed";function m(){try{return JSON.parse(localStorage.getItem(u)||"{}")}catch{return{}}}function h(e,t){if(!e.lastCommentAt)return!1;let r=t[e.id];return!r||e.lastCommentAt>r}function x({cwd:e}){let{t}=(0,s.Bd)(),[r,p]=(0,o.useState)(!1),[f,v]=(0,o.useState)([]),[g,b]=(0,o.useState)(!1),[w,j]=(0,o.useState)(null),[N,k]=(0,o.useState)({}),[C,y]=(0,o.useState)({open:!1,comments:[],title:"",userNameMap:{}}),M=(0,o.useRef)(null),S=(0,o.useRef)(null),[A,L]=(0,o.useState)(null);(0,o.useEffect)(()=>{queueMicrotask(()=>k(m()))},[]),(0,o.useEffect)(()=>{if(!r)return;let e=e=>{M.current&&!M.current.contains(e.target)&&p(!1)};return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[r]);let E=(0,o.useCallback)(async()=>{b(!0);let e=await d.t4.runPromiseExit((0,c.Y_)());"Success"===e._tag&&v(e.value.reviews??[]),b(!1)},[]);(0,o.useEffect)(()=>{r&&queueMicrotask(()=>E())},[r,E]);let T=(0,o.useCallback)(e=>{let{data:t}=e;Array.isArray(t)&&t.some(e=>"review"===e.type)&&E()},[E]);(0,a.h)({url:`/ws/watch?cwd=${encodeURIComponent(e||"/")}`,onMessage:T,enabled:!!e}),(0,o.useEffect)(()=>{queueMicrotask(()=>E())},[E]);let $=(0,o.useMemo)(()=>f.filter(e=>e.active),[f]),R=(0,o.useMemo)(()=>$.some(e=>h(e,N)),[$,N]),I=(0,o.useCallback)(e=>{let t;(t=m())[e]=Date.now(),localStorage.setItem(u,JSON.stringify(t)),k(m()),window.open(`${window.location.origin}/review/${e}`,"_blank")},[]),B=(0,o.useCallback)(async(e,t)=>{e.stopPropagation();let[r,n]=await Promise.all([d.t4.runPromiseExit((0,c.JK)(t)),d.t4.runPromiseExit((0,c.BL)())]);if("Success"!==r._tag)return;let o=r.value.review,s={};if("Success"===n._tag)for(let[e,t]of Object.entries(n.value.users))s[e]=t.name;y({open:!0,comments:o.comments||[],title:o.title??"",userNameMap:s})},[]),D=(0,o.useCallback)((e,t)=>{S.current=t,e.dataTransfer.effectAllowed="move";let r=e.currentTarget;requestAnimationFrame(()=>r.classList.add("opacity-30"))},[]),O=(0,o.useCallback)(e=>{S.current=null,L(null),e.currentTarget instanceof HTMLElement&&e.currentTarget.classList.remove("opacity-30")},[]),_=(0,o.useCallback)((e,t)=>{e.preventDefault(),e.dataTransfer.dropEffect="move",S.current&&S.current!==t&&L(t)},[]),z=(0,o.useCallback)((e,t)=>{e.preventDefault(),L(null);let r=S.current;S.current=null,r&&r!==t&&v(e=>{let n=[...e],o=n.findIndex(e=>e.id===r),s=n.findIndex(e=>e.id===t);if(-1===o||-1===s)return e;let[a]=n.splice(o,1);n.splice(s,0,a);let l=n.map(e=>e.id);return d.t4.runFork((0,c.z1)(l).pipe(i.orElse(()=>i.void))),n})},[]);return(0,n.jsxs)("div",{ref:M,className:"relative",children:[(0,n.jsxs)("button",{onClick:()=>p(e=>!e),className:`relative p-2 rounded-lg transition-colors ${r?"text-foreground bg-accent":"text-muted-foreground hover:text-foreground hover:bg-hover"}`,title:t("review.reviewManagement"),children:[(0,n.jsx)("svg",{className:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"})}),R&&(0,n.jsx)("span",{className:"absolute top-1 right-1 w-2 h-2 bg-red-500 rounded-full"})]}),r&&(0,n.jsxs)("div",{className:"absolute right-0 top-full mt-1 w-64 bg-popover border border-border rounded-lg shadow-lv3 z-50 overflow-hidden",children:[(0,n.jsxs)("div",{className:"px-3 py-2 border-b border-border flex items-center justify-between",children:[(0,n.jsxs)("div",{children:[(0,n.jsx)("span",{className:"text-xs font-medium text-muted-foreground",children:t("review.allReviews")}),(0,n.jsx)("span",{className:"text-xs text-muted-foreground/60 ml-1.5",children:$.length})]}),(0,n.jsx)("button",{onClick:E,className:"p-0.5 text-muted-foreground hover:text-foreground rounded transition-colors",title:t("common.refresh"),children:(0,n.jsx)("svg",{className:"w-3.5 h-3.5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"})})})]}),(0,n.jsx)("div",{className:"max-h-80 overflow-y-auto",children:g&&0===f.length?(0,n.jsx)("div",{className:"px-3 py-4 text-xs text-muted-foreground/50 text-center",children:t("common.loading")}):0===$.length?(0,n.jsx)("div",{className:"px-3 py-4 text-xs text-muted-foreground/50 text-center",children:t("review.noOpenReviews")}):$.map(e=>{let r,o,s,a,l,i=h(e,N);return(0,n.jsxs)("div",{draggable:!0,onDragStart:t=>D(t,e.id),onDragEnd:O,onDragOver:t=>_(t,e.id),onDrop:t=>z(t,e.id),onMouseEnter:t=>{let r=t.currentTarget.getBoundingClientRect();j({id:e.id,text:e.title,top:r.top+r.height/2,left:r.left})},onMouseLeave:()=>j(t=>t?.id===e.id?null:t),onClick:()=>I(e.id),className:`group px-3 py-2 cursor-pointer border-b transition-colors ${A===e.id?"border-b-brand border-t border-t-transparent":"border-b-border/50"} hover:bg-hover`,children:[(0,n.jsxs)("div",{className:"flex items-center gap-1.5 min-w-0",children:[(0,n.jsx)("span",{className:`w-1.5 h-1.5 rounded-full flex-shrink-0 ${i?"bg-red-500":"bg-green-500"}`}),(0,n.jsx)("span",{className:`text-xs truncate flex-1 ${i?"font-medium text-foreground":""}`,children:e.title}),e.commentCount>0&&(0,n.jsx)("button",{onClick:t=>B(t,e.id),className:"flex-shrink-0 p-0.5 rounded text-muted-foreground/0 group-hover:text-muted-foreground/60 hover:!text-brand hover:!bg-brand/10 transition-colors",title:t("review.viewComments"),children:(0,n.jsx)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:(0,n.jsx)("path",{d:"M7 8h10M7 12h4m1 8l-4-4H5a2 2 0 01-2-2V6a2 2 0 012-2h14a2 2 0 012 2v8a2 2 0 01-2 2h-3l-4 4z"})})})]}),(0,n.jsxs)("div",{className:"flex items-center gap-2 text-[10px] text-muted-foreground/50 mt-0.5 pl-3",children:[(0,n.jsx)("span",{children:(o=String((r=new Date(e.updatedAt||e.createdAt)).getMonth()+1).padStart(2,"0"),s=String(r.getDate()).padStart(2,"0"),a=String(r.getHours()).padStart(2,"0"),l=String(r.getMinutes()).padStart(2,"0"),`${o}-${s} ${a}:${l}`)}),e.commentCount>0&&(0,n.jsx)("span",{children:t("review.nComments",{count:e.commentCount})})]})]},e.id)})})]}),w&&r&&(0,n.jsx)("div",{className:"fixed z-[60] px-2 py-1 text-xs bg-popover text-popover-foreground border border-border rounded shadow-lv2 whitespace-nowrap pointer-events-none",style:{top:w.top,left:w.left-8,transform:"translate(-100%, -50%)"},children:w.text}),(0,n.jsx)(l.ReviewCommentsListModal,{isOpen:C.open,onClose:()=>y(e=>({...e,open:!1})),comments:C.comments,reviewTitle:C.title,userNameMap:C.userNameMap})]})}}}]);
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2032],{19736:(e,t,r)=>{r.d(t,{ReviewCommentsListModal:()=>c});var n=r(95155),o=r(12115),s=r(79114),a=r(64428),l=r(34075),i=r(69809);function d(e,t,r){let n=(e,r)=>t[e]||r,o=[],s=null!=r?`[${r+1}] `:"",a=e.anchor.selectedText.length>200?e.anchor.selectedText.slice(0,197)+"...":e.anchor.selectedText;for(let t of(o.push(`${s}${i.A.t("review.quoteRef",{text:a})}`),o.push(i.A.t("review.commentAuthor",{author:n(e.authorId,e.author),content:e.content})),e.replies))o.push(i.A.t("review.replyAuthor",{author:n(t.authorId,t.author),content:t.content}));return o.join("\n")}function c({isOpen:e,onClose:t,comments:r,reviewTitle:m,userNameMap:h,onCommentClick:x}){let{t:p}=(0,s.Bd)(),[f,v]=(0,o.useState)(null),[g,b]=(0,o.useState)(!1);if(!e)return null;let w=[...r].sort((e,t)=>e.anchor.startOffset-t.anchor.startOffset),j=(e,t)=>h[e]||t,N=async e=>{v(e.id);try{let t=d(e,h);await navigator.clipboard.writeText(t),(0,l.oR)(p("toast.copiedComment"))}catch{(0,l.oR)(p("toast.copyFailed"),"error")}finally{v(null)}},k=async()=>{if(0!==r.length){b(!0);try{let e=function(e,t,r){if(0===e.length)return"";let n=[...e].sort((e,t)=>e.anchor.startOffset-t.anchor.startOffset),o=[i.A.t("review.reviewSummary",{title:t}),""];return n.forEach((e,t)=>{o.push(d(e,r,t)),o.push("")}),o.push(i.A.t("review.totalNComments",{count:e.length})),o.join("\n").trim()}(r,m,h);await navigator.clipboard.writeText(e),(0,l.oR)(p("toast.copiedAllComments"))}catch{(0,l.oR)(p("toast.copyFailed"),"error")}finally{b(!1)}}},C=e=>{x?.(e),t()},y=w.filter(e=>!e.closed),M=w.filter(e=>e.closed),S=(0,n.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-scrim p-4",onClick:t,children:(0,n.jsxs)("div",{className:"w-full max-w-2xl max-h-[80vh] bg-card border border-border rounded-lg shadow-lv3 flex flex-col overflow-hidden",onClick:e=>e.stopPropagation(),children:[(0,n.jsxs)("div",{className:"flex items-center justify-between px-4 py-3 border-b border-border ",children:[(0,n.jsxs)("div",{className:"flex items-center gap-2",children:[(0,n.jsx)("h2",{className:"text-sm font-semibold text-foreground",children:p("review.allCommentsTitle")}),(0,n.jsxs)("span",{className:"text-xs text-muted-foreground",children:[p("review.commentsCountBrief",{count:r.length}),M.length>0&&` (${p("review.closedCount",{count:M.length})})`]}),r.length>0&&(0,n.jsx)("button",{onClick:k,disabled:g,className:"p-1 rounded hover:bg-hover text-muted-foreground disabled:opacity-50",title:p("review.copyAllComments"),children:g?(0,n.jsx)("span",{className:"inline-block w-4 h-4 border-2 border-current border-t-transparent rounded-full animate-spin"}):(0,n.jsx)("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"})})})]}),(0,n.jsx)("button",{onClick:t,className:"p-1 rounded hover:bg-hover text-muted-foreground",children:(0,n.jsx)("svg",{className:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})})})]}),(0,n.jsx)("div",{className:"flex-1 overflow-y-auto p-3",children:0===r.length?(0,n.jsxs)("div",{className:"flex flex-col items-center justify-center py-12 text-muted-foreground",children:[(0,n.jsx)("div",{className:"text-2xl mb-2",children:"\uD83D\uDCAC"}),(0,n.jsx)("span",{className:"text-sm",children:p("review.noComments")})]}):(0,n.jsxs)("div",{className:"space-y-2",children:[y.map((e,t)=>(0,n.jsx)(u,{comment:e,index:t,resolveAuthor:j,copyingId:f,onCopy:N,onClick:C},e.id)),M.length>0&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("div",{className:"text-[11px] text-muted-foreground/60 pt-2 pb-1 px-1",children:p("review.closedComments",{count:M.length})}),M.map((e,t)=>(0,n.jsx)(u,{comment:e,index:y.length+t,resolveAuthor:j,copyingId:f,onCopy:N,onClick:C,closed:!0},e.id))]})]})})]})});return(0,n.jsx)(a.ZL,{children:S})}function u({comment:e,index:t,resolveAuthor:r,copyingId:o,onCopy:s,onClick:a,closed:l}){let d=e.anchor.selectedText.length>100?e.anchor.selectedText.slice(0,97)+"...":e.anchor.selectedText;return(0,n.jsxs)("div",{className:`rounded-lg border border-border hover:border-muted-foreground/30 transition-all cursor-pointer group ${l?"opacity-50":""}`,onClick:()=>a(e.id),children:[(0,n.jsx)("div",{className:"px-3 pt-2.5 pb-1",children:(0,n.jsx)("div",{className:"text-xs bg-yellow-500/10 border-l-2 border-yellow-500 px-2 py-1 rounded-r text-muted-foreground truncate",children:d})}),(0,n.jsxs)("div",{className:"px-3 pt-1.5 pb-2 flex items-start gap-2",children:[(0,n.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,n.jsxs)("div",{className:"flex items-center gap-2 mb-0.5",children:[(0,n.jsx)("span",{className:"w-4 h-4 rounded-full bg-brand/20 text-brand flex items-center justify-center text-[9px] font-bold flex-shrink-0",children:r(e.authorId,e.author).charAt(0)}),(0,n.jsx)("span",{className:"text-xs font-medium",children:r(e.authorId,e.author)}),(0,n.jsx)("span",{className:"text-[10px] text-muted-foreground",children:new Date(e.createdAt).toLocaleString("zh-CN",{month:"numeric",day:"numeric",hour:"2-digit",minute:"2-digit"})}),l&&(0,n.jsx)("span",{className:"text-[10px] text-muted-foreground/60",children:i.A.t("review.closedLabel")})]}),(0,n.jsx)("p",{className:"text-sm text-foreground line-clamp-2 pl-6",children:e.content}),e.replies.length>0&&(0,n.jsxs)("div",{className:"pl-6 mt-1 space-y-0.5",children:[e.replies.slice(0,3).map(e=>(0,n.jsxs)("div",{className:"text-xs text-muted-foreground truncate",children:[(0,n.jsx)("span",{className:"font-medium",children:r(e.authorId,e.author)}),": ",e.content]},e.id)),e.replies.length>3&&(0,n.jsx)("div",{className:"text-[10px] text-muted-foreground/60",children:i.A.t("review.moreReplies",{count:e.replies.length-3})})]})]}),(0,n.jsx)("button",{onClick:t=>{t.stopPropagation(),s(e)},disabled:o===e.id,className:"p-1 rounded opacity-0 group-hover:opacity-100 hover:bg-hover text-muted-foreground transition-opacity disabled:opacity-50 flex-shrink-0 mt-0.5",title:i.A.t("review.copyComment"),children:o===e.id?(0,n.jsx)("span",{className:"inline-block w-4 h-4 border-2 border-current border-t-transparent rounded-full animate-spin"}):(0,n.jsx)("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"})})})]})]})}},82032:(e,t,r)=>{r.d(t,{ReviewDropdown:()=>x});var n=r(95155),o=r(12115),s=r(79114),a=r(2111),l=r(19736),i=r(49433),d=r(86957),c=r(90420);let u="review-last-viewed";function m(){try{return JSON.parse(localStorage.getItem(u)||"{}")}catch{return{}}}function h(e,t){if(!e.lastCommentAt)return!1;let r=t[e.id];return!r||e.lastCommentAt>r}function x({cwd:e}){let{t}=(0,s.Bd)(),[r,p]=(0,o.useState)(!1),[f,v]=(0,o.useState)([]),[g,b]=(0,o.useState)(!1),[w,j]=(0,o.useState)(null),[N,k]=(0,o.useState)({}),[C,y]=(0,o.useState)({open:!1,comments:[],title:"",userNameMap:{}}),M=(0,o.useRef)(null),S=(0,o.useRef)(null),[A,L]=(0,o.useState)(null);(0,o.useEffect)(()=>{queueMicrotask(()=>k(m()))},[]),(0,o.useEffect)(()=>{if(!r)return;let e=e=>{M.current&&!M.current.contains(e.target)&&p(!1)};return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[r]);let T=(0,o.useCallback)(async()=>{b(!0);let e=await d.t4.runPromiseExit((0,c.Y_)());"Success"===e._tag&&v(e.value.reviews??[]),b(!1)},[]);(0,o.useEffect)(()=>{r&&queueMicrotask(()=>T())},[r,T]);let E=(0,o.useCallback)(e=>{let{data:t}=e;Array.isArray(t)&&t.some(e=>"review"===e.type)&&T()},[T]);(0,a.h)({url:`/ws/watch?cwd=${encodeURIComponent(e||"/")}`,onMessage:E,enabled:!!e}),(0,o.useEffect)(()=>{queueMicrotask(()=>T())},[T]);let $=(0,o.useMemo)(()=>f.filter(e=>e.active),[f]),R=(0,o.useMemo)(()=>$.some(e=>h(e,N)),[$,N]),I=(0,o.useCallback)(e=>{let t;(t=m())[e]=Date.now(),localStorage.setItem(u,JSON.stringify(t)),k(m()),window.open(`${window.location.origin}/review/${e}`,"_blank")},[]),B=(0,o.useCallback)(async(e,t)=>{e.stopPropagation();let[r,n]=await Promise.all([d.t4.runPromiseExit((0,c.JK)(t)),d.t4.runPromiseExit((0,c.BL)())]);if("Success"!==r._tag)return;let o=r.value.review,s={};if("Success"===n._tag)for(let[e,t]of Object.entries(n.value.users))s[e]=t.name;y({open:!0,comments:o.comments||[],title:o.title??"",userNameMap:s})},[]),D=(0,o.useCallback)((e,t)=>{S.current=t,e.dataTransfer.effectAllowed="move";let r=e.currentTarget;requestAnimationFrame(()=>r.classList.add("opacity-30"))},[]),O=(0,o.useCallback)(e=>{S.current=null,L(null),e.currentTarget instanceof HTMLElement&&e.currentTarget.classList.remove("opacity-30")},[]),H=(0,o.useCallback)((e,t)=>{e.preventDefault(),e.dataTransfer.dropEffect="move",S.current&&S.current!==t&&L(t)},[]),_=(0,o.useCallback)((e,t)=>{e.preventDefault(),L(null);let r=S.current;S.current=null,r&&r!==t&&v(e=>{let n=[...e],o=n.findIndex(e=>e.id===r),s=n.findIndex(e=>e.id===t);if(-1===o||-1===s)return e;let[a]=n.splice(o,1);n.splice(s,0,a);let l=n.map(e=>e.id);return d.t4.runFork((0,c.z1)(l).pipe(i.NWQ(()=>i.rIH))),n})},[]);return(0,n.jsxs)("div",{ref:M,className:"relative",children:[(0,n.jsxs)("button",{onClick:()=>p(e=>!e),className:`relative p-2 rounded-lg transition-colors ${r?"text-foreground bg-accent":"text-muted-foreground hover:text-foreground hover:bg-hover"}`,title:t("review.reviewManagement"),children:[(0,n.jsx)("svg",{className:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"})}),R&&(0,n.jsx)("span",{className:"absolute top-1 right-1 w-2 h-2 bg-red-500 rounded-full"})]}),r&&(0,n.jsxs)("div",{className:"absolute right-0 top-full mt-1 w-64 bg-popover border border-border rounded-lg shadow-lv3 z-50 overflow-hidden",children:[(0,n.jsxs)("div",{className:"px-3 py-2 border-b border-border flex items-center justify-between",children:[(0,n.jsxs)("div",{children:[(0,n.jsx)("span",{className:"text-xs font-medium text-muted-foreground",children:t("review.allReviews")}),(0,n.jsx)("span",{className:"text-xs text-muted-foreground/60 ml-1.5",children:$.length})]}),(0,n.jsx)("button",{onClick:T,className:"p-0.5 text-muted-foreground hover:text-foreground rounded transition-colors",title:t("common.refresh"),children:(0,n.jsx)("svg",{className:"w-3.5 h-3.5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"})})})]}),(0,n.jsx)("div",{className:"max-h-80 overflow-y-auto",children:g&&0===f.length?(0,n.jsx)("div",{className:"px-3 py-4 text-xs text-muted-foreground/50 text-center",children:t("common.loading")}):0===$.length?(0,n.jsx)("div",{className:"px-3 py-4 text-xs text-muted-foreground/50 text-center",children:t("review.noOpenReviews")}):$.map(e=>{let r,o,s,a,l,i=h(e,N);return(0,n.jsxs)("div",{draggable:!0,onDragStart:t=>D(t,e.id),onDragEnd:O,onDragOver:t=>H(t,e.id),onDrop:t=>_(t,e.id),onMouseEnter:t=>{let r=t.currentTarget.getBoundingClientRect();j({id:e.id,text:e.title,top:r.top+r.height/2,left:r.left})},onMouseLeave:()=>j(t=>t?.id===e.id?null:t),onClick:()=>I(e.id),className:`group px-3 py-2 cursor-pointer border-b transition-colors ${A===e.id?"border-b-brand border-t border-t-transparent":"border-b-border/50"} hover:bg-hover`,children:[(0,n.jsxs)("div",{className:"flex items-center gap-1.5 min-w-0",children:[(0,n.jsx)("span",{className:`w-1.5 h-1.5 rounded-full flex-shrink-0 ${i?"bg-red-500":"bg-green-500"}`}),(0,n.jsx)("span",{className:`text-xs truncate flex-1 ${i?"font-medium text-foreground":""}`,children:e.title}),e.commentCount>0&&(0,n.jsx)("button",{onClick:t=>B(t,e.id),className:"flex-shrink-0 p-0.5 rounded text-muted-foreground/0 group-hover:text-muted-foreground/60 hover:!text-brand hover:!bg-brand/10 transition-colors",title:t("review.viewComments"),children:(0,n.jsx)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:(0,n.jsx)("path",{d:"M7 8h10M7 12h4m1 8l-4-4H5a2 2 0 01-2-2V6a2 2 0 012-2h14a2 2 0 012 2v8a2 2 0 01-2 2h-3l-4 4z"})})})]}),(0,n.jsxs)("div",{className:"flex items-center gap-2 text-[10px] text-muted-foreground/50 mt-0.5 pl-3",children:[(0,n.jsx)("span",{children:(o=String((r=new Date(e.updatedAt||e.createdAt)).getMonth()+1).padStart(2,"0"),s=String(r.getDate()).padStart(2,"0"),a=String(r.getHours()).padStart(2,"0"),l=String(r.getMinutes()).padStart(2,"0"),`${o}-${s} ${a}:${l}`)}),e.commentCount>0&&(0,n.jsx)("span",{children:t("review.nComments",{count:e.commentCount})})]})]},e.id)})})]}),w&&r&&(0,n.jsx)("div",{className:"fixed z-[60] px-2 py-1 text-xs bg-popover text-popover-foreground border border-border rounded shadow-lv2 whitespace-nowrap pointer-events-none",style:{top:w.top,left:w.left-8,transform:"translate(-100%, -50%)"},children:w.text}),(0,n.jsx)(l.ReviewCommentsListModal,{isOpen:C.open,onClose:()=>y(e=>({...e,open:!1})),comments:C.comments,reviewTitle:C.title,userNameMap:C.userNameMap})]})}}}]);
|