verstak/cmd/verstak-gui
mirivlad c941f05dab gui: sidebar tree UX fixes — has_children, preserve expanded, double-click, DnD visual
- Backend: add HasChildren field to NodeDTO; ListWorkspaceTree/ListChildren
  populate it by querying CountChildren for container types
- Node repository: add CountChildren(parentID, types...) method
- TreeNode: toggle shown only when has_children (not isContainer); double-click
  on row = expand/collapse; icon click = expand/collapse; drop-valid class via
  DOM classList for DnD highlight; auto-expand collapsed container on 500ms
  hover during drag; auto-scroll near edge during drag
- App.svelte: selectNode no longer resets workspaceTree/expanded; new
  reloadTreePreservingExpanded() helper re-fetches children for all expanded
  nodes after DnD move / delete; deleteWorkspaceNode preserves expanded state
2026-06-03 03:48:53 +08:00
..
frontend-dist gui: sidebar tree UX fixes — has_children, preserve expanded, double-click, DnD visual 2026-06-03 03:48:53 +08:00
app.go gui: sidebar tree UX fixes — has_children, preserve expanded, double-click, DnD visual 2026-06-03 03:48:53 +08:00
bindings_actions.go refactor(gui): разделить app.go на binding-файлы по доменам, вынести sync apply 2026-06-02 10:47:38 +08:00
bindings_activity.go refactor: implement template-driven node tree and human-readable vault layout 2026-06-02 12:47:06 +08:00
bindings_files.go refactor(gui): разделить app.go на binding-файлы по доменам, вынести sync apply 2026-06-02 10:47:38 +08:00
bindings_nodes.go gui: sidebar tree UX fixes — has_children, preserve expanded, double-click, DnD visual 2026-06-03 03:48:53 +08:00
bindings_notes.go refactor(gui): разделить app.go на binding-файлы по доменам, вынести sync apply 2026-06-02 10:47:38 +08:00
bindings_settings.go refactor: implement template-driven node tree and human-readable vault layout 2026-06-02 12:47:06 +08:00
bindings_sync.go refactor(gui): разделить app.go на binding-файлы по доменам, вынести sync apply 2026-06-02 10:47:38 +08:00
bindings_worklog.go refactor(gui): разделить app.go на binding-файлы по доменам, вынести sync apply 2026-06-02 10:47:38 +08:00
main.go refactor: implement template-driven node tree and human-readable vault layout 2026-06-02 12:47:06 +08:00
sync_apply.go sync_apply FS-first rewrite; CreateNodeFromTemplate rollback; DeleteNodeAndChildren fail on trash errors; PLAN.md update 2026-06-03 02:22:49 +08:00
vault_check.go fix: второй стабилизационный pass vault layout — sync payload, bindings, vaultPath, tests 2026-06-02 17:03:05 +08:00
vault_layout_test.go fix: third stabilization pass — template children as nodes, atomicity, fs_path validation, sync_apply compat, smoke test 2026-06-03 02:05:53 +08:00
vault_migrate.go refactor: implement template-driven node tree and human-readable vault layout 2026-06-02 12:47:06 +08:00
wails.json chore: add wails.json, remove wails3 artifacts, rebuild binaries 2026-06-03 01:48:12 +08:00