fix: sidebar — x-data vide masquait appState() + header Notion-style + null-guards
FlowDeck CI / test (push) Failing after 4s
FlowDeck CI / docker (push) Has been skipped

- Sidebar avait x-data vide qui créait un scope isolé → vars (workspaceMenuOpen,
  toggleWorkspaceMenu, sidebarCollapsed) introuvables → rien ne fonctionnait
- Suppression x-data → héritage du scope appState() parent
- Header restylé Notion: .sidebar-workspace-header avec border-radius + hover bg
- Mouse hover (mouseenter/mouseleave) active wsHeaderHover → fond plus clair
- Null-guards: folderStack[-1] sécurisé, ctxMenu.node && ctxMenu.node.is_folder
This commit is contained in:
2026-07-12 12:53:46 -04:00
parent ab0eedd5fe
commit d7c0d428e8
3 changed files with 42 additions and 28 deletions
+2 -2
View File
@@ -723,7 +723,7 @@
<div class="modal-box">
<h3><span x-text="createType==='folder'?'📁':'📄'"></span> <span x-text="createType==='folder'?'New Folder':'New File'"></span></h3>
<p class="modal-sub">
In <strong>{{ workspace_name }}</strong> <span x-show="folderStack.length>1">/ <span x-text="folderStack[folderStack.length-1].name"></span></span>
In <strong>{{ workspace_name }}</strong> <span x-show="folderStack.length>1">/ <span x-text="(folderStack[folderStack.length-1]||{}).name||''"></span></span>
<span x-show="parentFolder"> / <span x-text="parentFolder?.name"></span></span>
</p>
<input class="modal-input" x-model="newName" :placeholder="createType==='folder'?'Folder name':'File name'" @keydown.enter="doCreate" x-ref="cinp">
@@ -769,7 +769,7 @@
@keydown.escape="ctxMenu.visible=false"
x-transition>
<div class="ctx-item" @click="ctxMenuOpenPage()">📄 Open</div>
<div class="ctx-item" x-show="ctxMenu.node.is_folder" @click="ctxMenuOpenFolder()">📂 Open folder</div>
<div class="ctx-item" x-show="ctxMenu.node && ctxMenu.node.is_folder" @click="ctxMenuOpenFolder()">📂 Open folder</div>
<div class="ctx-item" @click="ctxMenuRename()">✏️ Rename</div>
<div class="ctx-item" @click="ctxMenuDuplicate()">📋 Duplicate</div>
<div class="ctx-sep"></div>