I'm using Navigator 1.0 in flutter to handle different routes in the app. This is not enough to take care of all the scenarios in the app, either it's too complicated or a massive set of boilerplate code. I'm looking for a package which takes away all these pain points.
The basic idea is the library/code should be able to handle the following scenario at a minimum.
Navigation to another screen with the flexibility to send any kind of data as an argument.
The parent should be able to understand what happened with the child widget. e.g: Let's consider navigation happened from A -> B, then B should be also able to send data back to A. (So A can track the status of B)
Easier navigation should be there for Snackbar/Popup Dialog, and pop should be easy as well.
Parents should have the ability to wait for the completion of child widget. e.g: A opened one dialog B, A should have ability to wait for B's completion.
The biggest pain point I'm facing is having difficulties with the nested Navigation system. e.g: A -> B -> C -> D navigation happens, And A needs to know what happened with D, in order to have this understanding, Data will be transferred from D to C to B to A. This becomes really difficult to manage if you have different nesting with different combinations(e.g: ABCD, BCDA, CDAB, CDBA).