bruno
e22967ada8
fix: inline rename uses .tree-item-text span instead of direct text node
CI / lint (push) Failing after 5s
CI / test (push) Has been skipped
CI / build (push) Has been skipped
CI / security (push) Successful in 9s
2026-06-04 15:01:05 -04:00
bruno
d1ba15c3aa
feat: diff viewer backups — point 6 (backups, diff, restore)
...
CI / lint (push) Failing after 4s
CI / test (push) Has been skipped
CI / build (push) Has been skipped
CI / security (push) Successful in 8s
- Backend: 3 nouveaux endpoints
- GET /api/file/{vault}/backups — liste les backups horodatés
- GET /api/file/{vault}/diff — diff unifié entre versions
- POST /api/file/{vault}/restore — restaure une version (backup auto avant)
- Frontend: module backups.js — UI modale avec:
- Sélecteur gauche (backup) / droite (version actuelle ou autre backup)
- Diff coloré: vert pour ajouts, rouge pour suppressions
- Bouton Restaurer avec confirmation
- Menu contextuel: clic droit fichier → 'Backups / Versions'
- CSS: styles complets pour la modale, toolbar, table de diff
- ROADMAP: point 6 marqué comme complété
2026-06-03 22:22:50 -04:00
bruno
ea74907098
fix: refreshSidebarTreePreservingState non importé dans ui/config/viewer
CI / lint (push) Successful in 16s
CI / security (push) Successful in 8s
CI / test (push) Successful in 24s
CI / build (push) Successful in 4s
2026-05-29 20:49:30 -04:00
bruno
c0851d9860
fix: el dans ui.js + performAdvancedSearch dans viewer.js — documents et recherches sauvegardées
CI / lint (push) Successful in 13s
CI / security (push) Successful in 8s
CI / test (push) Successful in 17s
CI / build (push) Successful in 5s
2026-05-29 15:49:25 -04:00
bruno
7c288460c3
fix: buildFrontmatterCard non exporté de ui.js → cassait le rendu des documents (et donc les tabs)
CI / lint (push) Successful in 13s
CI / security (push) Successful in 7s
CI / test (push) Successful in 15s
CI / build (push) Successful in 2s
2026-05-29 14:40:26 -04:00
bruno
8da6e176f0
fix: removeTagFilter non importé + null-guard sur _tabBar
CI / lint (push) Waiting to run
CI / security (push) Successful in 9s
CI / test (push) Has been cancelled
CI / build (push) Has been cancelled
2026-05-29 13:41:31 -04:00
bruno
c22259b362
fix: renderFile, searchByTag, addTagFilter, DashboardWidgets — 8 imports manquants
CI / lint (push) Successful in 14s
CI / security (push) Successful in 9s
CI / test (push) Successful in 17s
CI / build (push) Successful in 2s
2026-05-29 13:20:07 -04:00
bruno
2004a49b2d
fix: api, AuthManager, initLoginForm, GraphViewManager — imports manquants dans search/ui/utils
CI / lint (push) Successful in 12s
CI / security (push) Successful in 7s
CI / test (push) Successful in 17s
CI / build (push) Successful in 1s
2026-05-29 11:58:04 -04:00
bruno
c88c359c09
fix: 4 imports manquants — switchSidebarTab, performAdvancedSearch, escapeHtml, openFile
CI / lint (push) Successful in 13s
CI / security (push) Successful in 17s
CI / test (push) Successful in 15s
CI / build (push) Successful in 2s
2026-05-29 11:55:43 -04:00
bruno
889d6d6f68
fix: syncActiveFileTreeItem non exporté de sidebar.js → importé dans ui.js et viewer.js
CI / lint (push) Successful in 23s
CI / security (push) Successful in 8s
CI / test (push) Successful in 15s
CI / build (push) Successful in 2s
2026-05-29 09:30:48 -04:00
bruno
0db52c3c0e
fix: imports manquants — getFileIcon, showWelcome, showProgressBar, hideProgressBar
CI / lint (push) Successful in 13s
CI / security (push) Successful in 7s
CI / test (push) Successful in 14s
CI / build (push) Successful in 2s
2026-05-29 09:13:41 -04:00
bruno
8662d4ce17
fix: export closeMobileSidebar, showLoading; add imports
CI / lint (push) Successful in 12s
CI / security (push) Successful in 15s
CI / test (push) Successful in 15s
CI / build (push) Successful in 1s
2026-05-29 08:42:22 -04:00
bruno
6e59dfdd06
fix: export populateCustomDropdown from ui.js + missing imports
CI / lint (push) Successful in 12s
CI / security (push) Successful in 7s
CI / test (push) Successful in 15s
CI / build (push) Successful in 2s
2026-05-28 19:35:22 -04:00
bruno
c83068f473
fix: add safeCreateIcons import to auth.js + export closeHeaderMenu from ui.js
CI / lint (push) Successful in 12s
CI / security (push) Successful in 8s
CI / test (push) Successful in 14s
CI / build (push) Successful in 2s
2026-05-28 19:20:23 -04:00
bruno
148b3851ae
fix: add missing state. prefix to all bare state variable references across all modules
CI / lint (push) Successful in 15s
CI / security (push) Successful in 8s
CI / test (push) Successful in 16s
CI / build (push) Successful in 2s
2026-05-28 18:33:39 -04:00
bruno
75fac8256b
fix: remove stray }; in ui.js
CI / lint (push) Successful in 12s
CI / security (push) Successful in 7s
CI / test (push) Successful in 17s
CI / build (push) Successful in 2s
2026-05-28 18:29:53 -04:00
bruno
6fd3bb7351
fix: remove duplicate _origInit2 monkey-patch blocks in ui.js
CI / lint (push) Successful in 10s
CI / security (push) Successful in 11s
CI / test (push) Successful in 14s
CI / build (push) Successful in 2s
2026-05-28 18:26:23 -04:00
bruno
004729bdbb
fix: remove duplicate FindInPageManager block in ui.js
CI / lint (push) Successful in 10s
CI / security (push) Successful in 8s
CI / test (push) Successful in 16s
CI / build (push) Successful in 6s
2026-05-28 17:59:41 -04:00
bruno
40c439e1eb
fix: complete audit — add missing TabManager, ContextMenuManager, FindInPageManager to ui.js; remove monkey-patch; add all exports
CI / lint (push) Successful in 12s
CI / security (push) Successful in 8s
CI / test (push) Successful in 15s
CI / build (push) Successful in 5s
2026-05-28 17:18:18 -04:00
bruno
58f7173cc3
fix: add missing exports to regenerated ui.js and search.js
CI / lint (push) Successful in 11s
CI / security (push) Successful in 9s
CI / test (push) Successful in 14s
CI / build (push) Successful in 2s
2026-05-28 17:09:10 -04:00
bruno
7c927ca54e
fix: rebuild ui.js, search.js, viewer.js from app.js with shell script (no truncation)
CI / lint (push) Successful in 12s
CI / security (push) Successful in 8s
CI / test (push) Successful in 16s
CI / build (push) Successful in 3s
2026-05-28 16:54:15 -04:00
bruno
97d14d867a
fix: apply state.xxx pattern and exports to regenerated modules
CI / lint (push) Successful in 11s
CI / security (push) Successful in 17s
CI / test (push) Successful in 15s
CI / build (push) Successful in 3s
2026-05-28 16:50:06 -04:00
bruno
6d36b53b3a
fix: regenerate corrupted ui.js, search.js, viewer.js from app.js
CI / lint (push) Successful in 12s
CI / security (push) Successful in 8s
CI / build (push) Has been cancelled
CI / test (push) Has been cancelled
2026-05-28 16:49:29 -04:00
bruno
a2ff9297ce
fix: strip line number prefixes from all JS files
CI / lint (push) Successful in 13s
CI / security (push) Successful in 8s
CI / test (push) Successful in 18s
CI / build (push) Successful in 2s
2026-05-28 16:46:17 -04:00
bruno
643a73e0f5
fix: strip read_file line numbers accidentally injected into JS files
CI / lint (push) Successful in 13s
CI / security (push) Successful in 8s
CI / test (push) Successful in 16s
CI / build (push) Successful in 3s
2026-05-28 16:40:14 -04:00
bruno
7866f93778
refactor: state.js → mutable object to fix 'assignment to constant' errors
...
CI / lint (push) Successful in 13s
CI / security (push) Successful in 8s
CI / test (push) Successful in 16s
CI / build (push) Successful in 6s
ES module imports are read-only live bindings — can't reassign
imported let/const variables. Replace individual 'export let' with
single 'export const state = {...}' mutable object.
All modules updated: import { state } from './state.js'
All state access changed to state.xxx pattern.
Fixes cascade of 'Assignment to constant variable' errors.
2026-05-28 16:34:39 -04:00
bruno
16e0860a69
fix: export RightSidebarManager from ui.js
CI / lint (push) Successful in 13s
CI / security (push) Successful in 9s
CI / test (push) Successful in 16s
CI / build (push) Successful in 3s
2026-05-28 16:20:17 -04:00
bruno
60c23e811b
fix: add missing safeCreateIcons import in ui.js
CI / lint (push) Successful in 13s
CI / security (push) Successful in 9s
CI / test (push) Successful in 16s
CI / build (push) Successful in 3s
2026-05-28 16:06:40 -04:00
bruno
a0768d7a76
fix: remove broken ES module const reassignment (openFile monkey-patch)
CI / lint (push) Successful in 13s
CI / security (push) Successful in 9s
CI / test (push) Successful in 19s
CI / build (push) Successful in 2s
2026-05-28 15:43:31 -04:00
bruno
83a5de2ed2
fix: add missing openFile import in ui.js
CI / lint (push) Successful in 13s
CI / security (push) Successful in 9s
CI / test (push) Successful in 16s
CI / build (push) Successful in 3s
2026-05-28 15:35:35 -04:00
bruno
4836d6f1d0
refactor: split app.js (8875 lines) into 12 ES modules
...
CI / lint (push) Successful in 10s
CI / security (push) Successful in 8s
CI / build (push) Has been cancelled
CI / test (push) Has been cancelled
frontend/js/ structure:
state.js (55 lines) — Shared mutable state, constants
utils.js (510 lines) — EXT_ICONS, getFileIcon, escapeHtml, safeCreateIcons
auth.js (547 lines) — api(), AuthManager, initLoginForm, AdminPanel
search.js (1106 lines)— SearchHistory, QueryParser, Autocomplete, performSearch
sidebar.js (1091 lines)— Vault tree, sidebar filter, TagFilterService, loadTags
viewer.js (1554 lines)— openFile, Outline, ScrollSpy, Frontmatter, Editor
ui.js (2250 lines)— Theme, Toast, Sidebar, Dropdowns, Tabs, ContextMenu
dashboard.js (461 lines) — Dashboard widgets (Recent, Stats, Bookmarks)
config.js (999 lines) — Config panel, Hidden files, About, Sidebar tabs
sync.js (436 lines) — SSE/IndexUpdateManager, PWA registration
graph.js (401 lines) — GraphViewManager (force-directed canvas graph)
legacy.js (550 lines) — Remaining bridge functions (goHome, showWelcome, initSearch)
app.js (80 lines) — Thin orchestrator: imports all modules, calls init()
index.html: switched from <script src="app.js"> to <script type="module" src="js/app.js">
Original app.js preserved for backward compatibility.
All 14 modules pass node --check syntax validation.
2026-05-28 14:04:50 -04:00