vrouter 1.2.1 copy "vrouter: ^1.2.1" to clipboard
vrouter: ^1.2.1 copied to clipboard

A navigation package that makes navigation and routing easy on every platform. Built on top of Navigator 2.

Emojis codes #

  • 🛠️ : FIX A bug has been fixed
  • ✨ : NEW New features have been added. Those are non breaking.
  • 🚨 : BREAKING Some class/attribute/method changed and will break your code. Read comment to know how to migrate.
  • 🔁 : DEPRECIATED Some class/attribute/method is depreciated. Read the documentation to know how to migrate.

1.2.0+21 02/02/2022. #

  • ✨ : Add useInheritedMediaQuery to VRouter, WidgetsVRouter and CupertinoVRouter (thanks @Mitsuroseba !)

1.2.0+20 02/02/2022. #

  • ✨ : VRouteRedirector.parse can now be used for complex redirections

1.2.0+19 02/02/2022. #

1.2.0+18 19/01/2022. #

  • 🛠️ : Don't add the hash if it is empty in toNamed

1.2.0+17 15/01/2022. #

  • 🛠️ : Don't add the hash if it is empty

1.2.0+16 15/01/2022. #

  • 🛠️ : Hash passed directly to VRedirector.to path will be taken into account
  • 🛠️ : Specify to isReplacement type

1.2.0+15 02/10/2021. #

1.2.0+14 02/10/2021. #

  • ✨️ : A hash (or fragment) can now be set as part of the url
  • ✨ : VAnchor allows you to easily create anchor which change the current hash and scroll to the widget when clicked
  • 🛠️ : Small refactoring

1.2.0+13 20/09/2021. #

  • 🛠️ : Dynamically moving VNester.child around the widget tree could cause popping issues

1.2.0+12 06/09/2021. #

  • 🛠️ : Fix VWidgetGuard.onSystemPop in Nav1 pushed routes

1.2.0+11 04/08/2021. #

  • 🛠️ : Not putting VNester.widgetBuilder child in the widget tree is now possible

1.2.0+10 04/08/2021. #

  • 🛠️ : Redirection on the web now waits for the browser to update before redirecting

1.2.0+9 30/07/2021. #

  • ✨ : New .builder (VWidget.builder and VNester.builder) constructors gives easy access to VRouter data
  • ✨ : Wildcard support
  • Remove dependency of path_to_regexp

1.2.0+8 29/07/2021. #

  • 🛠️ : Update README from push to to API

1.2.0+7 29/07/2021. #

  • 🛠️ : VRedirector.toNamed was not passing the pathParameters along, cause any such navigation to fail

1.2.0+6 25/07/2021. #

1.2.0+5 09/07/2021. #

1.2.0+4 07/07/2021. #

  • 🛠️ : toExternal no longer yield an unexpected null value

1.2.0+3 06/07/2021. #

  • 🛠️ : Fix deep-linking on android cold start

1.2.0+2 05/07/2021. #

  • ✨ : Remove dependency on the js package

1.2.0+1 05/07/2021. #

  • 🛠️ : dartfmt formatted

1.2.0 05/07/2021. #

  • 🚨 : VRedirector.to was renamed VRedirector.toUrl
  • 🔁 : VRedirector.from was renamed VRedirector.fromUrl
  • 🔁 : push should NOT be used anymore. DO use to instead.
  • 🔁 : pushReplacement should NOT be used anymore. DO use to(..., isReplacement: true) instead.
  • 🔁 : pushNamed should NOT be used anymore. DO use toNamed instead.
  • 🔁 : pushReplacementNamed should NOT be used anymore. DO use toNamed(..., isReplacement: true) instead.
  • 🔁 : pushSegments should NOT be used anymore. DO use toSegments instead.
  • 🔁 : pushExternal should NOT be used anymore. DO use toExternal instead.
  • 🔁 : replaceHistoryState should NOT be used anymore. DO use to(..., historyState: newHistoryState, isReplacement: true) instead.
  • ✨ : The new toX have even more and better documentation than their pushX counterpart
  • ✨ : vrouter.dev has been updated for the new toX API
  • 🚨 : VRouterData was renamed VRouterDataNavigator (this should not impact anyone)
  • 🚨 : VLocation was renamed VUrlHistory (this should not impact anyone)
  • ✨ : historyBack() goes back from 1 in the history
  • ✨ : historyForward() goes forward to 1 in the history
  • ✨ : historyGo(int delta) goes to i (positive or negative) from the history
  • ✨ : historyCanBack() check whether going back from 1 in the history is possible
  • ✨ : historyCanForward() check whether going forward to 1 in the history is possible
  • ✨ : historyCanGo(int delta) check whether going to i (positive or negative) from the history is possible
  • ✨ : vrouter.dev has documentation and example on the new history API
  • ✨ : VRouter now has logs! VRouter.logs can be change to change which logs to show (VLogs.none, VLogs.info or VLogs.warning)
  • ✨ : vrouter.dev has a new example on stackedRoutes
  • 🛠️ : Mobile deep-linking should now work

1.1.4+17 19/06/2021. #

1.1.4+16 19/06/2021. #

1.1.4+15 15/06/2021. #

  • 🛠️ : Delaying pop errors so that VPopHandler can redirect or stop the pop before the error
  • 🛠️ : Computing the route on the first frame instead of delaying it

1.1.4+14 12/06/2021. #

  • 🛠️ : Moving the use of a context outside of a callback

1.1.4+13 10/06/2021. #

  • 🛠️ : Moving the use of a context outside of addPostFrameCallback to avoid error (yes again)

1.1.4+12 10/06/2021. #

  • 🛠️ : Moving the use of a context outside of addPostFrameCallback to avoid error
  • ✨ : Improving the warning message if using several packages which all try to setup the url strategy

1.1.4+11 08/06/2021. #

  • 🛠️ : Showing then hiding VNester.widgetBuilder child no longer causes an error

1.1.4+10 07/06/2021. #

  • 🛠️ : Not using VNester.widgetBuilder child no longer causes an error
  • ✨ : VRouter.of(context).names can now be used to get every names present in the current routes stack

1.1.4+9 04/06/2021. #

1.1.4+8 04/06/2021. #

  • 🛠️ : initialUrl now works on the web again

1.1.4+7 03/06/2021. #

  • 🔁 : appRouterKey should not be used anymore. If you need to update routes use navigatorKey instead
  • 🛠️ : Correcting expression to catch unknown path in UnknownUrlVError
  • ✨ : navigatorKey can now be specified manually

1.1.4+6 02/06/2021. #

  • 🛠️ : Correct VRoute to VWidget in UnknownUrlVError (thanks evandrmb)
  • 🛠️ : Deep-linking is no longer broken
  • 🛠️ : Solved issues which might have erased when the url was modified manually (1. Broken browser navigation control, 2. Bad path restoration after hot restart)

1.1.4+5 02/06/2021. #

  • ✨ : The path can now be accessed with VRouter.of(context).path

1.1.4+4 31/05/2021. #

  • 🛠️ : Renaming VRouterScopeDuplicateException to _VRouterScopeDuplicateError since this is an error
  • 🛠️ : Postponing some initialization until build. This should fix issues with easy_localization package (https://github.com/lulupointu/vrouter/issues/60)

1.1.4+3 27/05/2021. #

  • 🛠️ : Replace a remaining VStacked by VWidget in README

1.1.4+2 27/05/2021. #

  • 🛠️ : Remove duplicate queryParameters in pop and systemPop

1.1.4+1 26/05/2021. #

  • 🚨 : VRouterScope now holds a vRouterMode attribute and VRouterDelegate does not
  • 🛠️ : On the web, the url is stable on hot restart

1.1.4 26/05/2021. #

  • 🚨 : VRouterScope should now be put at the top of the widget tree. If you are using ...App.router, you must insert VRouterScope on top of ...App.router.
  • 🛠️ : VRouter does not use the singleton which was introduced in 1.1.3+2 anymore
  • ✨ : Use appRouterKey or change ...App.key to recompute the routes, see the documentation for more details

1.1.3+2 25/05/2021. #

  • 🛠️ : VRouter can now be used with different keys without losing url state

1.1.3+1 25/05/2021. #

  • 🛠️ : Fix null error on web

1.1.3 24/05/2021. #

1.1.2+5 16/05/2021. #

  • 🛠️ : Exporting helpers (such as VMaterialApp)
  • 🛠️ : Update discord invite link to not expire

1.1.2+4 13/05/2021. #

  • 🛠️ : Import typo prevented web compilation

1.1.2+3 12/05/2021. #

  • 🛠️ : Refactor to re-enable IDEs autocompletion

1.1.2+2 07/05/2021. #

Refactor to re-enable

  • 🛠️ : pathParameters are now all passed to VNester.subroutes
  • 🛠️ : AppBar now displays a BackButton in nestedRoutes if it can pop

1.1.2+1 07/05/2021. #

  • 🛠️ : Fix pushSegments: it was missing a '/' at the start of the url given to push

1.1.2 07/05/2021. #

  • ✨ : Adding pushSegments which encodes the different part of the url for you

1.1.1+9 03/05/2021. #

  • 🛠️ : pub.dev like count shield was not disposed properly on package updates

1.1.1+8 03/05/2021. #

  • 🛠️ : VWidgetGuard was not disposed properly
  • ✨ : Redesigned README: more readable and added VRouteElementBuilder info

1.1.1+7 30/04/2021. #

  • 🛠️ : pathParameters will be passed properly in VNester
  • 🛠️ : A edge in onPop of VNesterPageBase has been solved

1.1.1+6 29/04/2021. #

  • 🛠️ : onSystemPop will now pop by also looking in nestedRoutes
  • ✨ : VNester now supports navigatorKey, see the documentation for more details

1.1.1+5 29/04/2021. #

  • 🔁 : Please use VDefaultPage instead of VBasePage

1.1.1+4 29/04/2021. #

  • ✨ : Add fullscreenDialog option to VWidget and VWidgetBase

1.1.1+3 29/04/2021. #

  • 🛠️ : onPop and onSystemPop are now called when needed, even if deeply nested

1.1.1+2 28/04/2021. #

  • 🛠️ : Remove scrollBehavior from CupertinoVRouter

1.1.1+1 28/04/2021. #

  • 🛠️ : Make VRouteInformationParser and VBackButtonDispatcher visible

1.1.1 27/04/2021. #

  • 🚨 : onPop and onSystemPop are not called ONLY when the VRouteElement are popped (not as long as they are in the route)
  • 🚨 : pageBuilder now gives you a name parameter that you can give to your Page. Change (key, child) => YourPage(key, child) to (key, child, name) => YourPage(key, child, name)
  • 🛠️ : VWidgetGuard is now disposed properly when it is no longer in the route
  • 🛠️ : VWidgetGuard.beforeUpdate is now called properly
  • ✨ : Support for extending VRouteElementBuilder to create custom VRouteElement
  • ✨ : VPath which only constrains the path, without the need to given a widget or a page
  • ✨ : VPageBase which is the same as VPage without the argument relative to the path
  • ✨ : VWidgetBase which is the same as VWidget without the argument relative to the path
  • ✨ : VNesterBase which is the same as VNester without the argument relative to the path
  • ✨ : VNesterPageBase which is the same as VNesterPage without the argument relative to the path
  • ✨ : MaterialApp.router CupertinoApp.router or WidgetApp.router can now be used using VRouterDelegate, VRouteInformationParser and VBackButtonDispatcher
  • ✨ : navigatorObservers can now be passed to VRouter and will be passed to every Navigator
  • Refactor to use the new VRouteElementBuilder
  • Removed dependency on SimpleUrlHandler

1.1.0+22 20/04/2021. #

  • Remove prints

1.1.0+21 17/04/2021. #

  • ✨ : pop and pushNamed now return errors when needed

1.1.0+20 09/04/2021. #

  • 🚨 : Changing pop and systemPop default behaviour to include previous path parameters

1.1.0+19 09/04/2021. #

  • 🛠️ : VRouter.of error when called from VRouter.builder

1.1.0+18 09/04/2021. #

  • 🛠️ : stackedRoute in VNested which did not built VNester widget

1.1.0+17 09/04/2021. #

  • 🛠️ : vRedirector use in onPop and onSystemPop which was only stopping the redirection

1.1.0+16 06/04/2021. #

  • 🛠️ : last onPop on MacOS, Linux and Windows

1.1.0+15 01/04/2021. #

  • 🛠️ : initialUrl breaking deep-linking

1.1.0+14 01/04/2021. #

  • 🛠️ : default pop onto path parameters
  • Add more migration doc

1.1.0+13 30/03/2021. #

  • 🛠️ : default Page key value

1.1.0+12 30/03/2021. #

  • 🛠️ : pop forming path when parent path end with '/'

1.1.0+11 30/03/2021. #

  • ✨ : Provide customizable key argument for VRouteElement with widget argument

1.1.0+10 30/03/2021. #

  • Solve pop issue when calling setState before popping

1.1.0+9 29/03/2021. #

  • Remove prints

1.1.0+8 29/03/2021. #

  • 🛠️ : url sync in edge case redirection situations

1.1.0+7 29/03/2021. #

  • Code formatting using dartfmt

1.1.0+6 29/03/2021. #

  • 🚨 : Adding LocalKey to VPage.buildPage, helping animations

1.1.0+5 28/03/2021. #

  • Code formatting using dartfmt

1.1.0+4 28/03/2021. #

  • Change import to support desktop yet again

1.1.0+3 28/03/2021. #

  • Update readme

1.1.0+2 28/03/2021. #

  • Change import to support desktop

1.1.0+1 28/03/2021. #

  • Change dependency constraints for null safety

1.1.0 28/03/2021. #

  • 🚨 : VRouteData should not be used anymore, use VRouterData to access the current route data
  • 🚨 : VRouterData should not be used to get the navigation methods (push, ...), use VRouter instead
  • 🚨 : Navigation control methods inside VRouteElement (beforeLeave, beforeEnter, ...) are now called even if the VRouteElement is not the last element of the route
  • ✨ : New description in classes comment, example of class uses can now be found there
  • ✨ : Use VRouterData to access route information (url, path params, ...)
  • ✨ : Use VRouter to access navigation methods (push, ...)
  • ✨ : Use context.VRouter instead of VRouter.of(context)
  • ✨ : Use context.VRouterData instead of VRouterData.of(context)
  • ✨ : Use context.VRouteElementData instead of VRouteElementData.of(context)
  • ✨ : You can now set a initial url using VRouter.initialUrl and the InitialUrl class
  • ✨ : VRouteElements now have beforeUpdate method called when the route changes but it remains in the route
  • ✨ : widgetBuilder (from VChild and VStack) have a new attribute which gives you access to the current vChild in its stackedRoutes if any

See the migration guide at the end of the README to migrate!

1.0.0-nullsafety.11 27/02/2021. #

  • ✨ : Enable access to VRouterState to enable navigation without context

1.0.0-nullsafety.10+1 24/02/2021. #

  • Update README

1.0.0-nullsafety.10 23/02/2021. #

  • Change import to display web badge on pub.dev

1.0.0-nullsafety.9 23/02/2021. #

1.0.0-nullsafety.8 23/02/2021. #

1.0.0-nullsafety.7 21/02/2021. #

  • Path parameters given in pushNamed are now encoded
  • ✨ : pushNamed will now also search in aliases and pick the right path depending on the given pathParameters

1.0.0-nullsafety.6+1 20/02/2021. #

  • Minor correction in the default pop event

1.0.0-nullsafety.6 20/02/2021. #

  • ✨ : give a vRedirector when handling pop events
  • 🚨 : pop events don't have (context, from to). See VRedirector for the new argument

1.0.0-nullsafety.5+1 19/02/2021. #

  • Correcting CHANGELOG

1.0.0-nullsafety.5 19/02/2021. #

  • ✨ : widgetBuilder to VChild and VStack

1.0.0-nullsafety.4 18/02/2021. #

  • ✨ : add vRouteData in beforeLeave and beforeEnter
  • 🛠️ : error when replacing path parameters in pushNamed
  • 🛠️ : error with pushReplace on the web

1.0.0-nullsafety.3 16/02/2021. #

  • 🛠️ :Fix error when pushing a url which does not start with '/'

1.0.0-nullsafety.2 16/02/2021. #

  • Formatting with dartfmt
  • Remove unnecessary statements

1.0.0-nullsafety.1 16/02/2021. #

  • Remove unnecessary statements
  • Add package description in pubspec.yaml

1.0.0-nullsafety.0 16/02/2021. #

  • Initial nullsafe release
325
likes
75
points
772
downloads

Publisher

verified publishervrouter.dev

Weekly Downloads

A navigation package that makes navigation and routing easy on every platform. Built on top of Navigator 2.

Homepage
Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (license)

Dependencies

flutter, move_to_background, url_launcher, url_strategy

More

Packages that depend on vrouter