Timothy Jaeryang Baek
8da02c669e
refac
2026-03-05 14:47:48 -06:00
Timothy Jaeryang Baek
828656b35f
feat: auto-refresh FileNav on write_file, replace_file_content, and run_command
...
Backend emits terminal events for write_file, replace_file_content,
and run_command. Frontend showFileNavDir subscriber uses startsWith
path matching to smartly refresh only when the event is relevant:
- write_file/replace_file_content: refresh if path is in current view
- run_command: always refresh (uses root '/' which matches everything)
- Also adds copy-to-clipboard button and code preview full-height fix
2026-03-05 14:41:18 -06:00
Timothy Jaeryang Baek
3b97c8d89b
refac
2026-03-05 13:55:02 -06:00
Timothy Jaeryang Baek
f5ea1ce250
feat: add copy-to-clipboard button next to download in file toolbar
2026-03-05 13:53:19 -06:00
Timothy Jaeryang Baek
a181b4a731
feat: add SQLite database browser in FileNav
...
- New SqliteView component with table tabs, paginated data view
(100 rows/page), SQL query editor (Cmd+Enter), NULL/BLOB formatting,
sticky column headers, and dark mode
- Supports .db, .sqlite, .sqlite3, .db3 extensions
- Uses sql.js WASM served locally from /sql.js/sql-wasm.wasm
- Also fixes display_file handling when another file is already open
2026-03-05 13:34:21 -06:00
Timothy Jaeryang Baek
114f709337
refac
2026-03-04 17:14:12 -06:00
Timothy Jaeryang Baek
a6fb5a0460
refac
2026-03-04 17:09:02 -06:00
Timothy Jaeryang Baek
7ef181bc13
refac
2026-03-04 16:52:01 -06:00
Timothy Jaeryang Baek
49a2e5bf57
feat: show refresh button when viewing files, not just directories
...
- Move refresh button out of directory-only block in FileNavToolbar
- When viewing a file, refresh reloads that file's content
- When in directory view, refresh reloads the listing (unchanged)
2026-03-04 16:48:01 -06:00
Timothy Jaeryang Baek
b081e33c0a
feat: add Jupyter Notebook (.ipynb) preview in FileNav
...
- New NotebookView component renders markdown cells (marked+DOMPurify),
code cells (Shiki-highlighted with execution count gutter), and
outputs (text, HTML tables, base64 images, error tracebacks)
- ANSI escape codes stripped from error output
- Source toggle shows raw JSON
- Dark mode support throughout
2026-03-04 16:14:26 -06:00
Timothy Jaeryang Baek
f4c38e6001
feat: add JSON collapsible tree view, SVG rendered preview, and source toggle
...
- New JsonTreeView component with recursive collapsible nodes,
auto-expand depth, and GitHub-themed dark mode colors
- JSON/JSONC/JSON5 files show tree view by default, toggle to
Shiki-highlighted source
- SVG files show rendered preview (DOMPurify-sanitized) by default,
toggle to Shiki-highlighted XML source
- SVG removed from IMAGE_EXTS to enable text-based preview
- YAML/TOML already covered by Shiki bundled languages
2026-03-04 16:10:15 -06:00
Timothy Jaeryang Baek
c40f26946f
feat: add Shiki syntax highlighting, video, and audio previews in FileNav
...
- Add Shiki-powered syntax highlighting for code files with dual
light/dark themes (github-light/github-dark), line numbers, and
source/preview toggle
- Add native <video> player for mp4, webm, mov, ogv, avi, mkv
- Add native <audio> player for mp3, wav, ogg, flac, m4a, aac, opus
- New utility: src/lib/utils/codeHighlight.ts with extension-to-lang
mapping using Shiki's bundled language registry
2026-03-04 16:04:47 -06:00
Timothy Jaeryang Baek
627b063b88
refac
2026-03-04 16:01:24 -06:00
Timothy Jaeryang Baek
f962bae983
feat: improve XLSX preview + add code syntax highlighting
...
XLSX QoL:
- Custom table renderer (excelToTable.ts) with column letters,
row numbers, right-aligned numbers, empty cell handling
- Monospace font, sticky headers + row nums, cell cursor
- Sheet tabs moved to bottom bar (like PPTX navigation)
- Unified styles between FileNav and FileItemModal
Code highlighting:
- Shiki-based syntax highlighting for code files in FileNav
- Line numbers, dark/light theme support
- Source/Preview toggle for code files
2026-03-04 15:59:55 -06:00
Timothy Jaeryang Baek
e08341dab3
enh: ot ports
2026-03-04 15:51:03 -06:00
Timothy Jaeryang Baek
890949abe6
feat: add DOCX/XLSX/PPTX file preview
...
- DOCX: mammoth converts to semantic HTML (prose preview)
- XLSX: xlsx library extended to FileNav with sheet tabs at bottom
- PPTX: custom canvas renderer produces PNG images per slide
with panzoom zoom/pan and slide navigation
Changes:
- New: src/lib/utils/pptxToHtml.ts (canvas-based PPTX renderer)
- FileNav.svelte: office format detection, blob download, conversion
- FilePreview.svelte: office rendering branches, sheet tabs, slide viewer
- FileItemModal.svelte: DOCX/PPTX preview tabs
- package.json: added mammoth dependency
2026-03-04 15:50:37 -06:00
Timothy Jaeryang Baek
ca2aaf0321
fix: ot terminal
2026-03-02 19:09:13 -06:00
Timothy Jaeryang Baek
10daa64d5b
chore: format
2026-03-02 17:26:18 -06:00
Timothy Jaeryang Baek
e0d4c3ec92
refac
2026-03-02 17:26:01 -06:00
Timothy Jaeryang Baek
10baa6e781
chore: format
2026-03-02 17:07:53 -06:00
Timothy Jaeryang Baek
3de14a53c2
chore: format
2026-03-02 17:04:52 -06:00
Timothy Jaeryang Baek
b5c3395f79
refac
2026-03-02 16:41:32 -06:00
Timothy Jaeryang Baek
ed9ab65b5e
refac
2026-03-02 15:23:01 -06:00
Timothy Jaeryang Baek
1a2b360d3d
refac
2026-03-02 15:01:10 -06:00
Timothy Jaeryang Baek
4f6cb771f1
enh: open terminal
2026-03-02 14:49:02 -06:00
Timothy Jaeryang Baek
44349fb62b
refac
2026-03-02 13:27:37 -06:00
Timothy Jaeryang Baek
933a3bbbd3
refac
2026-03-02 12:49:51 -06:00
Timothy Jaeryang Baek
3909b62ffc
enh: file nav html rendering
2026-03-02 12:45:50 -06:00
Timothy Jaeryang Baek
11487d66fc
refac
2026-03-02 12:09:49 -06:00
Timothy Jaeryang Baek
395098c6f1
refac
2026-03-02 12:07:55 -06:00
Timothy Jaeryang Baek
72951324df
refac
2026-03-02 12:05:19 -06:00
Timothy Jaeryang Baek
0c42cd2c01
enh: ot move
2026-03-02 12:03:23 -06:00
Timothy Jaeryang Baek
c701ebe07b
refac
2026-03-02 11:29:29 -06:00
Timothy Jaeryang Baek
64957db7b3
refac
2026-03-02 11:26:33 -06:00
Timothy Jaeryang Baek
d7147d6cdd
refac
2026-03-02 11:24:15 -06:00
Timothy Jaeryang Baek
832d0181b6
chore: format
2026-03-01 19:13:14 -06:00
Timothy Jaeryang Baek
d1dd449f63
doc: changelog
2026-03-01 19:12:06 -06:00
Timothy Jaeryang Baek
2751a0f0b6
refac
2026-03-01 19:09:10 -06:00
Tim Baek
702906aee7
Merge pull request #22119 from Algorithm5838/fix/save-temp-chat-params
...
fix: pass params when saving a temporary chat
2026-03-02 05:06:02 +04:00
Tim Baek
860a0b414e
Merge pull request #22111 from Algorithm5838/perf/debounce-get-contents
...
perf: use rAF to debounce getContents() during streaming
2026-03-02 01:28:15 +04:00
Timothy Jaeryang Baek
2e8c4da17b
refac
2026-03-01 14:45:35 -06:00
Timothy Jaeryang Baek
ff9f761d65
refac
2026-03-01 14:44:12 -06:00
Timothy Jaeryang Baek
5645d5bccc
refac
2026-03-01 14:38:10 -06:00
Timothy Jaeryang Baek
201b93bfcc
refac
2026-03-01 14:18:57 -06:00
Timothy Jaeryang Baek
0c2e4270bc
chore: format
2026-03-01 14:10:45 -06:00
Timothy Jaeryang Baek
80ad5fd2d0
refac
2026-03-01 14:06:26 -06:00
Timothy Jaeryang Baek
93bab8d822
refac
2026-03-01 13:54:44 -06:00
Timothy Jaeryang Baek
259d5ca596
refac
2026-03-01 13:49:36 -06:00
Timothy Jaeryang Baek
c83a42198d
refac
2026-03-01 13:37:31 -06:00
Timothy Jaeryang Baek
2cacc2e649
chore: format
2026-03-01 13:34:09 -06:00
Timothy Jaeryang Baek
c9a78e5476
refac
2026-03-01 13:30:36 -06:00
Timothy Jaeryang Baek
2cbba2a28a
chore: format
2026-03-01 13:29:06 -06:00
Timothy Jaeryang Baek
62ab30f593
refac
2026-03-01 13:28:32 -06:00
Timothy Jaeryang Baek
0fff2fbcab
refac
2026-03-01 13:23:39 -06:00
Timothy Jaeryang Baek
fcff9c3afd
refac
2026-03-01 13:20:55 -06:00
Timothy Jaeryang Baek
d415edcfcd
chore: bump
2026-03-01 13:14:20 -06:00
Timothy Jaeryang Baek and Algorithm5838
ff86283be0
refac
...
Co-Authored-By: Algorithm5838 <108630393+Algorithm5838@users.noreply.github.com >
2026-03-01 12:50:24 -06:00
Timothy Jaeryang Baek and Shirasawa
1db36b5eda
refac
...
Co-Authored-By: Shirasawa <kaguyashirasawa@gmail.com >
2026-03-01 12:38:59 -06:00
Timothy Jaeryang Baek
ddedceb7ad
refac
2026-03-01 12:32:44 -06:00
Timothy Jaeryang Baek
18865a9fef
refac
2026-03-01 12:30:03 -06:00
Timothy Jaeryang Baek
769ef856bc
chore: format
2026-03-01 03:05:47 -06:00
Timothy Jaeryang Baek
ed1b959bc6
refac
2026-03-01 02:38:45 -06:00
Timothy Jaeryang Baek
d2b38127d0
refac
2026-03-01 02:37:21 -06:00
Timothy Jaeryang Baek
3d535db304
refac
2026-03-01 02:29:37 -06:00
Timothy Jaeryang Baek
234306ff57
refac
2026-03-01 02:08:41 -06:00
Timothy Jaeryang Baek
ae28e7d245
refac
2026-03-01 00:17:34 -06:00
Timothy Jaeryang Baek
e83f668107
refac
2026-02-28 21:40:13 -06:00
Timothy Jaeryang Baek
7dda8025fc
refac
2026-02-28 21:35:32 -06:00
Timothy Jaeryang Baek
1357dc6737
chore: format
2026-02-28 21:28:59 -06:00
Timothy Jaeryang Baek
43c30428a6
refac
2026-02-28 21:16:53 -06:00
Timothy Jaeryang Baek
668bd44485
refac
2026-02-28 20:22:24 -06:00
Timothy Jaeryang Baek
a3de0bcc58
refac
2026-02-28 19:22:35 -06:00
Timothy Jaeryang Baek and Nil Puig
499ca282e5
refac
...
Co-Authored-By: Nil Puig <244631886+npuigm@users.noreply.github.com >
2026-02-28 17:08:41 -06:00
Timothy Jaeryang Baek and Ingmar van Hulzen
2d27ef4ece
refac
...
Co-Authored-By: Ingmar van Hulzen <13165062+ingmarvanhulzen@users.noreply.github.com >
2026-02-28 13:46:30 -06:00
Timothy Jaeryang Baek
6b462ff121
refac
2026-02-28 13:40:06 -06:00
Timothy Jaeryang Baek
c3bac9aa62
refac
2026-02-28 13:30:28 -06:00
Timothy Jaeryang Baek
9440d09114
refac
2026-02-28 13:07:10 -06:00
Timothy Jaeryang Baek
c71beb0a7d
refac
2026-02-28 02:05:22 -06:00
Timothy Jaeryang Baek
f5bf2a2ed7
refac
2026-02-28 00:41:10 -06:00
Timothy Jaeryang Baek
ab3f03bbd5
refac
2026-02-28 00:40:20 -06:00
Timothy Jaeryang Baek
5ac502e93f
refac
2026-02-27 17:24:34 -06:00
Timothy Jaeryang Baek
c60b0fa0e3
refac
2026-02-27 17:20:49 -06:00
Timothy Jaeryang Baek
9544a80aa0
refac
2026-02-27 17:14:54 -06:00
Timothy Jaeryang Baek
83b17e2ac8
refac
2026-02-27 17:04:09 -06:00
Timothy Jaeryang Baek
3a6c88ade9
refac
2026-02-27 16:47:36 -06:00
Timothy Jaeryang Baek
3be06132db
refac
2026-02-27 16:41:52 -06:00
Timothy Jaeryang Baek
bbbcf27dd5
refac
2026-02-27 16:37:53 -06:00
Timothy Jaeryang Baek
cfa16e1a37
refac
2026-02-27 16:37:33 -06:00
Timothy Jaeryang Baek
f60d386b74
refac
2026-02-27 16:21:27 -06:00
Timothy Jaeryang Baek
0324a1bbdd
refac
2026-02-27 16:03:43 -06:00
Timothy Jaeryang Baek
a677b212d9
refac
2026-02-27 16:03:12 -06:00
Timothy Jaeryang Baek
179a4ad9ea
refac
2026-02-27 16:01:57 -06:00
Timothy Jaeryang Baek
2d82d260cc
refac
2026-02-27 16:01:33 -06:00
Timothy Jaeryang Baek
e7a9988893
chore: format
2026-02-27 15:59:52 -06:00
Timothy Jaeryang Baek
6b01f96eac
refac
2026-02-27 15:56:25 -06:00
Timothy Jaeryang Baek
965f242d16
refac
2026-02-27 15:53:03 -06:00
Timothy Jaeryang Baek
758d8fcf31
refac
2026-02-27 15:51:15 -06:00
Timothy Jaeryang Baek
0f8b339f6d
refac
2026-02-27 15:48:55 -06:00
Timothy Jaeryang Baek
5d821d21f3
refac
2026-02-27 14:36:22 -06:00
Timothy Jaeryang Baek
d6d9d1c535
refac
2026-02-27 14:36:13 -06:00