From 0210cb4d391bc8cfaea170cd8c19b5f9c5e3e33f Mon Sep 17 00:00:00 2001 From: johndoe6345789 Date: Mon, 19 Jan 2026 09:25:46 +0000 Subject: [PATCH] stuff --- .../json-definitions/navigation-menu.json | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/components/json-definitions/navigation-menu.json b/src/components/json-definitions/navigation-menu.json index 706b5ab..772be80 100644 --- a/src/components/json-definitions/navigation-menu.json +++ b/src/components/json-definitions/navigation-menu.json @@ -21,7 +21,7 @@ }, "bindings": { "children": { - "source": "labels", + "source": "menuState.labels", "transform": "data.title" } } @@ -42,7 +42,7 @@ "className": "flex-1" }, "bindings": { - "onClick": "expandAll" + "onClick": "menuState.expandAll" }, "children": [ { @@ -58,7 +58,7 @@ "type": "span", "bindings": { "children": { - "source": "labels", + "source": "menuState.labels", "transform": "data.expandAll" } } @@ -74,7 +74,7 @@ "className": "flex-1" }, "bindings": { - "onClick": "collapseAll" + "onClick": "menuState.collapseAll" }, "children": [ { @@ -90,7 +90,7 @@ "type": "span", "bindings": { "children": { - "source": "labels", + "source": "menuState.labels", "transform": "data.collapseAll" } } @@ -124,11 +124,16 @@ "type": "_repeat", "bindings": { "_items": { - "source": "groups", + "source": "menuState.groups", "transform": "data || []" }, "_renderItem": { - "source": ["toggleGroup", "onItemClick", "onItemHover", "onItemLeave"], + "source": [ + "menuState.toggleGroup", + "menuState.onItemClick", + "menuState.onItemHover", + "menuState.onItemLeave" + ], "transform": "(group) => { const toggleGroup = data[0]; const onItemClick = data[1]; const onItemHover = data[2]; const onItemLeave = data[3]; return { _element: 'Collapsible', _key: group.id, _props: { open: group.isExpanded, onOpenChange: () => toggleGroup(group.id) }, _children: [{ _element: 'CollapsibleTrigger', _props: { className: 'w-full flex items-center gap-2 px-2 py-2 rounded-lg hover:bg-muted transition-colors group' }, _children: [{ _element: 'CaretDown', _props: { size: 16, weight: 'bold', className: `text-muted-foreground transition-transform ${group.isExpanded ? 'rotate-0' : '-rotate-90'}` } }, { _element: 'h3', _props: { className: 'flex-1 text-left text-xs font-semibold text-muted-foreground uppercase tracking-wider' }, _children: [group.label] }, { _element: 'span', _props: { className: 'text-xs text-muted-foreground' }, _children: [group.visibleCount] }] }, { _element: 'CollapsibleContent', _props: { className: 'mt-1' }, _children: [{ _element: 'div', _props: { className: 'space-y-1 pl-2' }, _children: [{ _element: '_repeat', _props: { _items: group.items || [], _renderItem: (item) => ({ _element: 'div', _key: item.id, _props: { onMouseEnter: () => onItemHover(item.value), onMouseLeave: () => onItemLeave(item.value) }, _children: [{ _element: 'NavigationItem', _props: { icon: item.icon, label: item.label, isActive: item.isActive, badge: item.badge, onClick: () => onItemClick(item.value) } }] }) } }] }] }] }; }" } }