* Isolate modules for uncontainerized navigators
* Clean up prop-types
* Fix warnings and web import friendlyness
* strip a flow
* Standalone provider/consumer navigation context
* export shallowEqual as module
* address various lint
# Conflicts:
# src/navigators/createStackNavigator.js
* Get tests to pass
The most straightforward fix for two issues is to block all navigation actions while mid-transition of a stack navigator. This will fix:
The double-navigate on double tap issue, because the first navigation will start the transition and the second action will be ignored.
Will fix the buggy header experience that you can see when going back and forward to a different route quickly. This happens because the next navigate action happens before the completion action. After the fix, the navigate action will be ignored, the user will tap again, and will see a good transition