handleMainItemTap method

void handleMainItemTap(
  1. NavigationItem item,
  2. int index,
  3. dynamic onRouteSelected(
    1. String
    )?,
  4. String? currentRoute,
  5. dynamic onRoute,
)

Implementation

void handleMainItemTap(NavigationItem item, int index,
    Function(String)? onRouteSelected, String? currentRoute, onRoute) {
  if (item.subItems == null) {
    _itemExpandedIndex = -1;
  } else {
    _itemExpandedIndex = _itemExpandedIndex == index ? -1 : index;
  }

  _selectedIndex = index;
  _selectedSubIndex = null;

  if (item.onTap != null) {
    item.onTap!();
  } else if (item.route != null &&
      onRouteSelected != null &&
      currentRoute != null) {
    onRouteSelected(item.route!);
  } else if (onRoute == true) {
    onRouteSelected!(item.route!);
  }

  notifyListeners();
}