From 418fe19f33318d8dea4f40cfe5bfc783fe81a3e8 Mon Sep 17 00:00:00 2001 From: bruno Date: Fri, 10 Jul 2026 21:44:37 -0400 Subject: [PATCH] =?UTF-8?q?fix:=20workspace=20page=20blank=20=E2=80=94=20n?= =?UTF-8?q?ode.type=20not=20node.is=5Ffolder=20in=20flattenTree?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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. --- app/templates/local_workspace.html | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/app/templates/local_workspace.html b/app/templates/local_workspace.html index f1b0efa..e51d435 100644 --- a/app/templates/local_workspace.html +++ b/app/templates/local_workspace.html @@ -176,9 +176,10 @@ function wsPage() { flattenTree(nodes, depth) { const result = []; for (const node of nodes) { + const isFolder = node.type === 'folder'; result.push({ - db_id: node.id, name: node.name, icon: node.is_folder ? '📁' : '📄', - is_folder: node.is_folder, depth: depth, + db_id: node.id, name: node.name, icon: isFolder ? '📁' : '📄', + is_folder: isFolder, depth: depth, }); if (node.children) { result.push(...this.flattenTree(node.children, depth + 1));