collapseMobileLevel4 method

void collapseMobileLevel4()

Implementation

void collapseMobileLevel4() {
  final bloc = _maybeReadMultilevelBloc();
  final s = bloc?.state;
  if (bloc == null || s == null || !s.visibleLevels.isLevel4Visible) return;
  final navigator = _getMultilevelNavigatorFromContext(this);
  final featureConfig = PathUtils.getFeatureConfiguration(
    fullPath: s.path,
    featureConfigurations: navigator.allFeatures,
  );
  if (featureConfig == null) return;
  if (featureConfig.level4CollapseMode == MobileLevelCollapseMode.discard) {
    pop(level: 4);
    return;
  }
  bloc.add(ToggleMobileLevelCollapseEvent(PathUtils.extractFirstSegment(s.path), Level.four));
}