Commit Graph
31 Commits
Author SHA1 Message Date
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