go_navigator 2.0.0 copy "go_navigator: ^2.0.0" to clipboard
go_navigator: ^2.0.0 copied to clipboard

A comprehensive Flutter Navigation System that provides a set of utilities for managing routes, passing arguments, and navigating through your application with ease.

GoNavigator - 2.0.0 #

A Flutter plugin providing advanced navigation utilities for managing routes and the navigation stack in a Flutter application.

Features #

  • Navigate to specified routes with optional arguments.
  • Clear all previous routes from the stack.
  • Replace the current route with a named route.
  • Pop until a specific route is reached.
  • Navigate back to the previous screen with provided data.
  • And more!

Changes in Version 2.0.0 #

Added #

  • GoArgs replaces MyRouteArguments for more clarity and consistency.

Changed #

  • Decentralized parameters for each function in the navigation system.
    • Before: Go(context).to(routeName: Page1.routeName)
    • After: context.to(routeName: Page1.routeName)
  • Enhancement: Added support for nested routes in the GoNavigator class.

    • Updated the generateRoute method to recursively handle nested routes.

    • Allowed the route map to include both leaf routes (directly associated with widget constructors) and nested routes (associated with nested maps).

  • Breaking Change: The routes property now expects a map where the values can be either a widget constructor or a nested map of routes.

    GoNavigator goNavigator  = GoNavigator(
      initialRoute: const Page1(),
      routes: {
        Page2.routeName: (context, args) => const Page2(),
        Page3.routeName: (context, args) => const Page3(),
      },
    )
    
    onGenerateRoute:goNavigator.generateRoute
    
  • Bug Fix: Resolved the type error issue related to the return type of nested route builders.

    • Ensured proper handling of both leaf routes and nested routes, making sure the returned value is a valid widget constructor.
  • Documentation: Updated inline comments for better code readability and understanding.

  • Deprecation: Removed unnecessary null check for initialRoute as it is already checked in the constructor.

  • Validation: Enforced that the routes map must not be empty. An exception is thrown if the routes map is empty.

  • Error Handling: Improved error messages to provide clearer information about the issues related to route definitions.

  • Version Compatibility: Compatible with Flutter version X.X.X.

Version 1.0.1 (Original Implementation)

  • Feature: Introduced the GoNavigator class for building and managing routes in a Flutter application.

  • Basic Routing: Supported basic routing with an initial route and a map of named routes associated with widget constructors.

  • Error Handling: Threw an exception if the routes map was empty, ensuring that a valid route configuration is provided.

  • Documentation: Included inline comments for method explanations and usage.

  • Version Compatibility: Compatible with Flutter version 4.0.0

These methods simplify navigation tasks and provide an easy way to manage route navigation in your Flutter app.

Getting Started #

To use this navigation system in your Flutter app:

  1. Add the go_navigator plugin to your pubspec.yaml file.
  2. Import the package into your Dart code.
  3. Create an instance of the Go<T> class and use its methods for navigation tasks.

For detailed implementation and usage instructions, refer to the code documentation and examples provided.

Platform Support #

This plugin is available on Android, iOS, MacOS, and Windows.

For more detailed instructions on how to use and implement this plugin, refer to Flutter's documentation.

3
likes
0
points
26
downloads

Publisher

unverified uploader

Weekly Downloads

A comprehensive Flutter Navigation System that provides a set of utilities for managing routes, passing arguments, and navigating through your application with ease.

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

flutter, plugin_platform_interface

More

Packages that depend on go_navigator