import 'package:flutter/material.dart'; class NavItem { final String label; final IconData icon; final String? route; final List children; const NavItem({ required this.label, required this.icon, this.route, this.children = const [], }); bool get hasChildren => children.isNotEmpty; /// Devuelve true si la ruta actual coincide con este item o algĂșn hijo. bool isActiveOrAncestor(String currentRoute) { if (route != null && currentRoute.startsWith(route!)) return true; return children.any((c) => c.isActiveOrAncestor(currentRoute)); } }