From 334af61639339d16ebc7e87977cc4b753c4858f6 Mon Sep 17 00:00:00 2001 From: yumoqing Date: Wed, 12 Aug 2026 13:05:17 +0800 Subject: [PATCH] fix: sidebar uses Tree widget instead of Menu (Tree has built-in nav) --- wwwroot/index.ui | 127 +++++++++++++++++++---------------------------- 1 file changed, 52 insertions(+), 75 deletions(-) diff --git a/wwwroot/index.ui b/wwwroot/index.ui index 2476ae8..74faa9d 100644 --- a/wwwroot/index.ui +++ b/wwwroot/index.ui @@ -30,9 +30,9 @@ { "wid": "self", "event": "click", - "actiontype": "method", - "target": "pccs_sidebar", - "method": "toggle_collapse" + "actiontype": "script", + "target": "self", + "script": "var s=bricks.getWidgetById('pccs_sidebar',app);if(s){var el=s.dom_element;el.classList.toggle('menu-collapsed');s.resize()}" } ] }, @@ -118,79 +118,56 @@ ] }, { - "widgettype": "Menu", - "id": "pccs_menu", + "widgettype": "Text", "options": { - "width": "100%", - "height": "100%", - "target": "pccs_main", - "items": [ - { - "name": "dashboard", - "label": "๐Ÿ“Š ๆฆ‚่งˆ", - "icon": "", - "url": "{{entire_url('/')}}" - }, - { - "name": "compute_pool", - "label": "๐Ÿ“ฆ ็ฎ—ๅŠ›ๆฑ ๅˆ—่กจ", - "icon": "", - "url": "{{entire_url('/pcpool/compute_pool_list/index.ui')}}" - }, - { - "name": "compute_node", - "label": "๐Ÿ“ฆ ็ฎ—ๅŠ›่Š‚็‚น", - "icon": "", - "url": "{{entire_url('/pcpool/compute_node_list/index.ui')}}" - }, - { - "name": "cluster_list", - "label": "๐Ÿ–ฅ ้›†็พคๅˆ—่กจ", - "icon": "", - "url": "{{entire_url('/pcc/cluster_list/index.ui')}}" - }, - { - "name": "cluster_node", - "label": "๐Ÿ–ฅ ่Š‚็‚นๅˆ†้…", - "icon": "", - "url": "{{entire_url('/pcc/cluster_node_list/index.ui')}}" - }, - { - "name": "storage_server", - "label": "๐Ÿ’พ ๅญ˜ๅ‚จๆœๅŠกๅ™จ", - "icon": "", - "url": "{{entire_url('/storage_mgr/storage_server_list/index.ui')}}" - }, - { - "name": "storage_export", - "label": "๐Ÿ’พ ๅญ˜ๅ‚จๅฏผๅ‡บ", - "icon": "", - "url": "{{entire_url('/storage_mgr/storage_export_list/index.ui')}}" - }, - { - "name": "storage_mount", - "label": "๐Ÿ’พ ๅญ˜ๅ‚จๆŒ‚่ฝฝ", - "icon": "", - "url": "{{entire_url('/storage_mgr/storage_mount_list/index.ui')}}" - }, - { - "name": "mirror_source", - "label": "๐Ÿ— ้•œๅƒๆบ", - "icon": "", - "url": "{{entire_url('/image_mgr/mirror_source_list/index.ui')}}" - }, - { - "name": "image_registry", - "label": "๐Ÿ— ้•œๅƒไป“ๅบ“", - "icon": "", - "url": "{{entire_url('/image_mgr/image_registry_list/index.ui')}}" - }, - { - "name": "container_image", - "label": "๐Ÿ— ๅฎนๅ™จ้•œๅƒ", - "icon": "", - "url": "{{entire_url('/image_mgr/container_image_list/index.ui')}}" - } + "otext": "ไธปๅฏผ่ˆช", + "cfontsize": 0.7, + "color": "#475569", + "padding": "4px 4px 8px 4px", + "fontWeight": "bold" + } + }, + { + "widgettype": "Tree", + "id": "pccs_menu_tree", + "options": { + "bgcolor": "transparent", + "color": "#94a3b8", + "color_selected": "#e2e8f0", + "bgcolor_selected": "#1e293b", + "fontSize": "0.9rem", + "indent": 16, + "data": [ + {"id": "dashboard", "label": "๐Ÿ“Š ๆฆ‚่งˆ", + "url": "{{entire_url('/pccs/index.ui')}}"}, + {"id": "pool", "label": "๐Ÿ“ฆ ็ฎ—ๅŠ›ๆฑ ็ฎก็†", "children": [ + {"id": "pool_list", "label": "็ฎ—ๅŠ›ๆฑ ๅˆ—่กจ", + "url": "{{entire_url('/pcpool/compute_pool_list/index.ui')}}"}, + {"id": "node_list", "label": "็ฎ—ๅŠ›่Š‚็‚นๅˆ—่กจ", + "url": "{{entire_url('/pcpool/compute_node_list/index.ui')}}"} + ]}, + {"id": "cluster", "label": "๐Ÿ–ฅ ้›†็พค็ฎก็†", "children": [ + {"id": "cluster_list", "label": "้›†็พคๅˆ—่กจ", + "url": "{{entire_url('/pcc/cluster_list/index.ui')}}"}, + {"id": "cn_list", "label": "่Š‚็‚นๅˆ†้…", + "url": "{{entire_url('/pcc/cluster_node_list/index.ui')}}"} + ]}, + {"id": "storage", "label": "๐Ÿ’พ ๅญ˜ๅ‚จ็ฎก็†", "children": [ + {"id": "storage_server", "label": "ๅญ˜ๅ‚จๆœๅŠกๅ™จ", + "url": "{{entire_url('/storage_mgr/storage_server_list/index.ui')}}"}, + {"id": "storage_export", "label": "ๅญ˜ๅ‚จๅฏผๅ‡บ", + "url": "{{entire_url('/storage_mgr/storage_export_list/index.ui')}}"}, + {"id": "storage_mount", "label": "ๅญ˜ๅ‚จๆŒ‚่ฝฝ", + "url": "{{entire_url('/storage_mgr/storage_mount_list/index.ui')}}"} + ]}, + {"id": "image", "label": "๐Ÿ— ้•œๅƒ็ฎก็†", "children": [ + {"id": "mirror_source", "label": "้•œๅƒๆบ้…็ฝฎ", + "url": "{{entire_url('/image_mgr/mirror_source_list/index.ui')}}"}, + {"id": "image_registry", "label": "้•œๅƒไป“ๅบ“", + "url": "{{entire_url('/image_mgr/image_registry_list/index.ui')}}"}, + {"id": "container_image", "label": "ๅฎนๅ™จ้•œๅƒ", + "url": "{{entire_url('/image_mgr/container_image_list/index.ui')}}"} + ]} ] } }