GetRouterOutlet constructor

GetRouterOutlet({
  1. String? anchorRoute,
  2. required String initialRoute,
  3. Iterable<FlowerPage> filterPages(
    1. Iterable<FlowerPage> afterAnchor
    )?,
  4. FlowerDelegate? delegate,
})

Implementation

GetRouterOutlet({
  String? anchorRoute,
  required String initialRoute,
  Iterable<FlowerPage> Function(Iterable<FlowerPage> afterAnchor)?
      filterPages,
  // GlobalKey<NavigatorState>? key,
  FlowerDelegate? delegate,
}) : this.pickPages(
        pickPages: (config) {
          Iterable<FlowerPage<dynamic>> ret;
          if (anchorRoute == null) {
            // jump the ancestor path
            final length = Uri.parse(initialRoute).pathSegments.length;

            return config.currentTreeBranch
                .skip(length)
                .take(length)
                .toList();
          }
          ret = config.currentTreeBranch.pickAfterRoute(anchorRoute);
          if (filterPages != null) {
            ret = filterPages(ret);
          }
          return ret;
        },
        emptyPage: (delegate) =>
            delegate.matchRoute(initialRoute).route ?? delegate.notFoundRoute,
        key: Flower.nestedKey(anchorRoute)?.navigatorKey,
        delegate: delegate,
      );