Commit Graph
7 Commits
Author SHA1 Message Date
bruno 418fe19f33 fix: workspace page blank — node.type not node.is_folder in flattenTree
FlowDeck CI / test (push) Failing after 4s
FlowDeck CI / docker (push) Has been skipped
The tree API returns {type: 'folder'|'page'} but flattenTree() was
accessing node.is_folder which is undefined for all items. All items
got is_folder: undefined → no children → but more critically, the
conditionals in the template also broke. Fixed to check node.type.
2026-07-10 21:44:37 -04:00
bruno f8350f8161 fix: drag & drop — add .prevent modifier to @drop handlers
FlowDeck CI / test (push) Failing after 4s
FlowDeck CI / docker (push) Has been skipped
Both sidebar and workspace page DnD handlers now use @drop.prevent
to stop browser's default text insertion behavior. Without .prevent,
the browser tries to navigate to the dragged text as a URL, breaking
the drop event.
2026-07-10 21:39:27 -04:00
bruno c36a446451 feat: workspace page gets recursive tree + drag & drop + sub-folders
FlowDeck CI / test (push) Failing after 3s
FlowDeck CI / docker (push) Has been skipped
- Recursive tree rendering with depth-based indentation
- HTML5 drag & drop: move files into folders, reorder
- Folder hover: 📄 new file + 📁 sub-folder buttons
- Uses same /api/local-workspace/items/{id}/move endpoint
- flattenTree() utility for Alpine.js tree rendering
- Visual: dragging opacity + drop target border
2026-07-10 21:23:15 -04:00
bruno a531d6d466 fix: sidebar updates after file/folder creation — force page reload
FlowDeck CI / test (push) Failing after 4s
FlowDeck CI / docker (push) Has been skipped
Server-side rendered sidebar doesn't auto-update after AJAX creation.
Changed create modal to reload page after success so sidebar picks up
new pages from workspace_pages template variable.
2026-07-10 20:38:11 -04:00
bruno 0c54db66ac fix: workspace — removed topbar buttons, unified modals, parent_id support
FlowDeck CI / test (push) Failing after 4s
FlowDeck CI / docker (push) Has been skipped
- Topbar: removed New File/New Folder buttons + 'Files' label
- Breadcrumb: Workspace / work1 instead of work1 / Files
- Modals: single shared create modal with focus auto, @keydown.enter
- parent_id param: recursive folder/file creation inside folders
- Sidebar buttons use same POST /api/local-workspace/items
- newPageInWorkspace/newFolderInWorkspace now both use unified API
2026-07-10 20:24:05 -04:00
bruno eddb69e58e fix: workspace page redesign — modals, folder distinction, no duplication
FlowDeck CI / test (push) Failing after 5s
FlowDeck CI / docker (push) Has been skipped
- Complete redesign of local_workspace.html
- Modal dialogs (Create File, Create Folder, Rename, Delete) — no prompt()
- Folder creation fixed: parent_section='Workspace' → 📁 icon
- Tree API properly detects folders via parent_section
- No duplicate empty state — unified header + empty message
- Professional UI with backdrop blur, focus auto, disabled btn
2026-07-10 20:10:35 -04:00
bruno 3417506062 feat: local workspace — file/folder tree with CRUD, empty for local accounts
FlowDeck CI / test (push) Failing after 4s
FlowDeck CI / docker (push) Has been skipped
- /local-workspace: page with file tree for local accounts (no forge)
- API: GET/POST/PUT/DELETE /api/local-workspace/items
- Workspace is empty when no pages exist, shows create buttons
- File tree shows nested items with rename/delete actions
- Local accounts are NOT linked to Gitea (separate workspace space)
2026-07-10 16:23:14 -04:00