asPages method

  1. @override
List<Page> asPages(
  1. VoyagerRouter router, {
  2. List<Object>? scopes,
  3. VoyagerPageBuilder defaultPageBuilder = PagePlugin.defaultMaterial,
})
override

converts the state to a list that can be used by e.g. Navigator

Implementation

@override
List<Page<dynamic>> asPages(VoyagerRouter router,
    {List<Object>? scopes,
    VoyagerPageBuilder defaultPageBuilder = PagePlugin.defaultMaterial}) {
  final pages = <Page<dynamic>>[];
  if (_scope != null) {
    scopes = List<Object>.from(scopes ?? <Object>[]);
    scopes.add(_scope!);
  }
  for (final item in _items) {
    pages.addAll(item.asPages(router,
        defaultPageBuilder: defaultPageBuilder, scopes: scopes));
  }
  return pages;
}