map<T> static method

NavigatorContainer<T, NavChildState> map<T>({
  1. Key? key,
  2. required T currentKey,
  3. NestedTransitionBuilder transitionBuilder = _defaultTransitionBuilder,
  4. required Map<T, Widget> children,
})

Creates a navigator container using a map of keys to a child.

This is a simpler mapping than NavigatorContainer.raw as it assumes that there will be no additional navigation child states.

Implementation

static NavigatorContainer<T, NavChildState> map<T>({
  Key? key,
  required T currentKey,
  NestedTransitionBuilder transitionBuilder = _defaultTransitionBuilder,
  required Map<T, Widget> children,
}) {
  return NavigatorContainer.raw(
    key: key,
    currentKey: currentKey,
    transitionBuilder: transitionBuilder,
    navStateBuilder: (primaryAnim, secondaryAnim) => NavChildState(
      primaryController: primaryAnim,
      secondaryController: secondaryAnim,
    ),
    builders: children.map((key, child) => MapEntry(key, (_, __) => child)),
  );
}