Code View Search & Fullscreen Mode (#1987) (#1988)
Closes #1987
<!-- This is an auto-generated description by cubic. -->
---
## Summary by cubic
Adds file content search to Code View and a fullscreen toggle to focus
on code. Users can search across file contents with highlights and
snippets, and jump to lines. Addresses Linear #1987.
- New Features
- File Tree search: debounced input, content search via ripgrep (1MB max
per file), highlights in names, expandable snippets with line numbers,
match count, and empty/error states.
- Fullscreen mode: toggle in toolbar, Esc to exit, locks page scroll.
- IPC: search-app-files handler using ripgrep (via @vscode/ripgrep;
binary bundled in Forge extraResources) with UTF-8-safe snippet
extraction; exposed via IpcClient and preload.
- Hook: useSearchAppFiles with React Query.
- UI/Types: FileTree now takes appId; added AppFileSearchResult type;
selectedFile supports line for navigation.
- Tests: e2e covers content search and navigating to the matched line.
- CI: set GITHUB_TOKEN to fetch ripgrep binaries.
<sup>Written for commit 97142126c549932d58908df5c842f44ae182c94e.
Summary will update on new commits.</sup>
<!-- End of auto-generated description by cubic. -->
<!-- CURSOR_SUMMARY -->
---
> [!NOTE]
> Introduces fast file content search in Code View and fullscreen
viewing, wiring UI to IPC and packaging for bundled ripgrep.
>
> - UI: `FileTree` now supports debounced content search with
highlights, expandable snippets, match counts, and line navigation;
`selectedFile` carries `line`; `FileEditor` accepts `initialLine` and
jumps to it; `CodeView` adds fullscreen toggle (Esc to exit)
> - IPC: New `search-app-files` handler using `@vscode/ripgrep` with
UTF-8-safe snippets; exposed via `preload` and
`IpcClient.searchAppFiles`; adds `AppFileSearchResult` type
> - Packaging/CI: Bundle ripgrep binaries via Forge `extraResource` and
set `GITHUB_TOKEN` in CI for ripgrep install; add `@vscode/ripgrep`
dependency; bump version to `0.33.0-beta.2`
> - Tests: New Playwright e2e verifies search results and navigation to
matched line
>
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
97142126c549932d58908df5c842f44ae182c94e. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->
---------
Co-authored-by:
Will Chen <willchen90@gmail.com>
正在显示
| ... | @@ -128,6 +128,7 @@ | ... | @@ -128,6 +128,7 @@ |
| "@types/uuid": "^10.0.0", | "@types/uuid": "^10.0.0", | ||
| "@vercel/sdk": "^1.18.0", | "@vercel/sdk": "^1.18.0", | ||
| "@vitejs/plugin-react": "^4.3.4", | "@vitejs/plugin-react": "^4.3.4", | ||
| "@vscode/ripgrep": "^1.17.0", | |||
| "ai": "^6.0.14", | "ai": "^6.0.14", | ||
| "better-sqlite3": "^12.4.1", | "better-sqlite3": "^12.4.1", | ||
| "class-variance-authority": "^0.7.1", | "class-variance-authority": "^0.7.1", | ||
| ... | ... |
src/hooks/useSearchAppFiles.ts
0 → 100644
请
注册
或者
登录
后发表评论