verstak/internal/core
mirivlad a4ae22c445 File manager: selection, keyboard shortcuts, rename modal, security, localization
- Selection model: click=select, dblclick=open, Ctrl+click toggle,
  Shift+click range select, Ctrl+A, Esc to clear
- Keyboard shortcuts: Enter, Ctrl+Enter, F2, Backspace (navigate up),
  Delete/Backspace (delete with confirm)
- Rename modal replaces prompt() with validation via backend ValidateName
- Context menu: Open, Open External, Show in Folder, Rename, Duplicate,
  Copy, Cut, Delete — all with SVG icons and Russian labels
- Backend security: vaultPath/absPathSafe helpers prevent path traversal,
  validateName rejects .. / \ null bytes empty overlong names
- MoveNode auto-renames on name conflict (copy style)
- Duplicate uses (copy) (copy 2) suffix pattern
- Russian localization: all file type labels, preview messages, tooltips
- FilePreviewModal: fixed broken {/if} tag
2026-06-01 01:35:45 +08:00
..
actions step 7: actions — table, service, CLI, GUI tab + confirm dialog 2026-05-31 01:52:23 +08:00
config step 2: init command + SQLite storage + migrations + config 2026-05-30 18:58:47 +08:00
files File manager: selection, keyboard shortcuts, rename modal, security, localization 2026-06-01 01:35:45 +08:00
nodes feat: node section assignment for sidebar filtering + search fix 2026-05-31 01:26:46 +08:00
notes Files tab: multi-selection, drag-and-drop, keyboard shortcuts, custom confirm modal, SVG icons 2026-06-01 01:16:51 +08:00
plugins step 10: plugins system (Lua + templates) + DokuWiki as optional plugin 2026-05-31 11:20:45 +08:00
search steps 8+9: worklog + FTS5 search 2026-05-31 02:25:25 +08:00
storage steps 8+9: worklog + FTS5 search 2026-05-31 02:25:25 +08:00
util step 2: init command + SQLite storage + migrations + config 2026-05-30 18:58:47 +08:00
vault step 2: init command + SQLite storage + migrations + config 2026-05-30 18:58:47 +08:00
worklog steps 8+9: worklog + FTS5 search 2026-05-31 02:25:25 +08:00
doc.go step 1: skeleton - go module, CLI stub with --version, structure 2026-05-30 18:42:19 +08:00