From 4ae74343d79908ca1c7e4c47fb1f15c1f665f655 Mon Sep 17 00:00:00 2001 From: Nicole Rappe Date: Sat, 4 Oct 2025 01:45:29 -0600 Subject: [PATCH] Sort assembly trees alphabetically --- Data/Server/WebUI/src/Assemblies/Assembly_List.jsx | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Data/Server/WebUI/src/Assemblies/Assembly_List.jsx b/Data/Server/WebUI/src/Assemblies/Assembly_List.jsx index d180de0..bd91fa5 100644 --- a/Data/Server/WebUI/src/Assemblies/Assembly_List.jsx +++ b/Data/Server/WebUI/src/Assemblies/Assembly_List.jsx @@ -60,6 +60,16 @@ const Island = ({ title, description, icon, actions, children, sx }) => ( ); // ---------------- Workflows Island ----------------- +const sortTree = (node) => { + if (!node || !Array.isArray(node.children)) return; + node.children.sort((a, b) => + String(a.label || "").localeCompare(String(b.label || ""), undefined, { + sensitivity: "base" + }) + ); + node.children.forEach(sortTree); +}; + function buildWorkflowTree(workflows, folders) { const map = {}; const rootNode = { id: "root", label: "Workflows", path: "", isFolder: true, children: [] }; @@ -107,6 +117,7 @@ function buildWorkflowTree(workflows, folders) { } }); }); + sortTree(rootNode); return { root: [rootNode], map }; } @@ -439,6 +450,7 @@ function buildFileTree(rootLabel, items, folders) { } }); }); + sortTree(rootNode); return { root: [rootNode], map }; }