Commit Graph

175 Commits

Author SHA1 Message Date
Satyajit Sahoo
0cca1309ec chore: publish
- @react-navigation/bottom-tabs@5.0.3
 - @react-navigation/compat@5.0.3
 - @react-navigation/core@5.1.2
 - @react-navigation/drawer@5.0.3
 - @react-navigation/material-bottom-tabs@5.0.3
 - @react-navigation/material-top-tabs@5.0.3
 - @react-navigation/native-stack@5.0.3
 - @react-navigation/native@5.0.3
 - @react-navigation/stack@5.0.3
2020-02-12 16:58:48 +01:00
Satyajit Sahoo
030c63c89f fix: fix false positives for circular object check
fixes #6827
2020-02-12 11:42:36 +01:00
Abhinandan Ramaprasath
2bf0958502 fix: static container memo check (#6825)
Memo check compared elements of prevProps to nextProps but failed
to take new props into account. Fixed the logic and added a new
test.
2020-02-12 10:56:23 +01:00
Satyajit Sahoo
94cff2380a chore: publish
- @react-navigation/bottom-tabs@5.0.2
 - @react-navigation/compat@5.0.2
 - @react-navigation/core@5.1.1
 - @react-navigation/drawer@5.0.2
 - @react-navigation/material-bottom-tabs@5.0.2
 - @react-navigation/material-top-tabs@5.0.2
 - @react-navigation/native-stack@5.0.2
 - @react-navigation/native@5.0.2
 - @react-navigation/stack@5.0.2
2020-02-11 18:57:48 +01:00
Satyajit Sahoo
359ae1bfac fix: don't cleanup state on switching navigator
This leads to a glitch. Switching navigators should be handled by the router properly.
2020-02-11 18:56:27 +01:00
Satyajit Sahoo
b234b035c3 chore: publish
- @react-navigation/bottom-tabs@5.0.1
 - @react-navigation/compat@5.0.1
 - @react-navigation/core@5.1.0
 - @react-navigation/drawer@5.0.1
 - @react-navigation/material-bottom-tabs@5.0.1
 - @react-navigation/material-top-tabs@5.0.1
 - @react-navigation/native-stack@5.0.1
 - @react-navigation/native@5.0.1
 - @react-navigation/routers@5.0.1
 - @react-navigation/stack@5.0.1
2020-02-10 17:22:48 +01:00
Satyajit Sahoo
13b4e07348 fix: add some links in the error messages 2020-02-10 16:16:54 +01:00
Satyajit Sahoo
86c39d2e0e refactor: move types and base router to routers package 2020-02-10 16:04:20 +01:00
Satyajit Sahoo
ae680a1e3c chore: upgrade depenendecies 2020-02-10 16:04:20 +01:00
Satyajit Sahoo
79ab56fe41 chore: release stable version 2020-02-05 14:54:44 +01:00
Satyajit Sahoo
a121844148 chore: prepare for stable release (#354) 2020-02-05 14:47:36 +01:00
Wojciech Lewicki
61b1134f90 feat: support ignoring empty path strings (#349) 2020-02-05 13:31:40 +01:00
Satyajit Sahoo
264537bdb4 chore: publish
- @react-navigation/bottom-tabs@5.0.0-alpha.45
 - @react-navigation/compat@5.0.0-alpha.34
 - @react-navigation/core@5.0.0-alpha.43
 - @react-navigation/drawer@5.0.0-alpha.47
 - @react-navigation/material-bottom-tabs@5.0.0-alpha.42
 - @react-navigation/material-top-tabs@5.0.0-alpha.41
 - @react-navigation/native-stack@5.0.0-alpha.35
 - @react-navigation/native@5.0.0-alpha.35
 - @react-navigation/routers@5.0.0-alpha.33
 - @react-navigation/stack@5.0.0-alpha.70
2020-02-04 17:34:55 +01:00
Satyajit Sahoo
ca4a36070a fix: improve error message for unhandled action 2020-02-04 17:33:03 +01:00
Wojciech Lewicki
4ca5cc6329 feat: add initialRouteName property to config (#322) 2020-02-04 14:44:57 +01:00
osdnk
25c3fc440f chore: publish
- @react-navigation/bottom-tabs@5.0.0-alpha.44
 - @react-navigation/compat@5.0.0-alpha.33
 - @react-navigation/core@5.0.0-alpha.42
 - @react-navigation/drawer@5.0.0-alpha.46
 - @react-navigation/material-bottom-tabs@5.0.0-alpha.41
 - @react-navigation/material-top-tabs@5.0.0-alpha.40
 - @react-navigation/native-stack@5.0.0-alpha.34
 - @react-navigation/native@5.0.0-alpha.34
 - @react-navigation/routers@5.0.0-alpha.32
 - @react-navigation/stack@5.0.0-alpha.69
2020-02-04 11:04:43 +01:00
Michał Osadnik
bec2f754d4 refactor: rename NavigationNativeContainer to NavigationContainer (#344) 2020-02-04 10:21:16 +01:00
Satyajit Sahoo
ba85db28d4 chore: publish
- @react-navigation/bottom-tabs@5.0.0-alpha.43
 - @react-navigation/compat@5.0.0-alpha.32
 - @react-navigation/core@5.0.0-alpha.41
 - @react-navigation/drawer@5.0.0-alpha.45
 - @react-navigation/material-bottom-tabs@5.0.0-alpha.40
 - @react-navigation/material-top-tabs@5.0.0-alpha.39
 - @react-navigation/native-stack@5.0.0-alpha.33
 - @react-navigation/native@5.0.0-alpha.33
 - @react-navigation/routers@5.0.0-alpha.31
 - @react-navigation/stack@5.0.0-alpha.67
2020-02-03 05:18:49 +01:00
Satyajit Sahoo
e5063b9339 fix: ignore circular references when checking serializable 2020-02-03 05:18:03 +01:00
Satyajit Sahoo
22e306004a chore: publish
- @react-navigation/bottom-tabs@5.0.0-alpha.42
 - @react-navigation/compat@5.0.0-alpha.31
 - @react-navigation/core@5.0.0-alpha.40
 - @react-navigation/drawer@5.0.0-alpha.44
 - @react-navigation/material-bottom-tabs@5.0.0-alpha.39
 - @react-navigation/material-top-tabs@5.0.0-alpha.38
 - @react-navigation/native-stack@5.0.0-alpha.32
 - @react-navigation/native@5.0.0-alpha.32
 - @react-navigation/routers@5.0.0-alpha.30
 - @react-navigation/stack@5.0.0-alpha.66
2020-02-03 00:40:22 +01:00
Satyajit Sahoo
8a835b3556 chore: fix versions in package.json 2020-02-03 00:40:11 +01:00
osdnk
343320783f chore: publish
- @react-navigation/bottom-tabs@5.0.0-alpha.40
 - @react-navigation/compat@5.0.0-alpha.29
 - @react-navigation/core@5.0.0-alpha.38
 - @react-navigation/drawer@5.0.0-alpha.42
 - @react-navigation/material-bottom-tabs@5.0.0-alpha.37
 - @react-navigation/material-top-tabs@5.0.0-alpha.36
 - @react-navigation/native-stack@5.0.0-alpha.30
 - @react-navigation/native@5.0.0-alpha.30
 - @react-navigation/routers@5.0.0-alpha.28
 - @react-navigation/stack@5.0.0-alpha.64
2020-02-02 23:36:00 +01:00
Satyajit Sahoo
0c159db4c9 fix: add licenses 2020-02-01 02:43:58 +01:00
Satyajit Sahoo
fa4a959549 fix: add warning when passing inline function to component prop 2020-01-30 05:03:32 +01:00
Satyajit Sahoo
5a3f8356b0 feat: integrate with history API on web 2020-01-29 23:14:12 +01:00
Satyajit Sahoo
eeae11033a refactor: track history for tabs and drawer in a history key 2020-01-29 23:14:12 +01:00
Wojciech Lewicki
b931ae62df feat: add screens prop for nested configs (#308)
Nested configs' names with their configs are now in `screens` property of the route object.
2020-01-29 16:26:17 +01:00
Satyajit Sahoo
ecd68afb46 feat: add useIsDrawerOpen hook (#299) 2020-01-27 12:59:24 +01:00
Satyajit Sahoo
2243b45cc1 fix: tweak error messages for validation 2020-01-25 14:42:17 +01:00
Satyajit Sahoo
5e7cfc4ac0 chore: publish
- @react-navigation/bottom-tabs@5.0.0-alpha.39
 - @react-navigation/compat@5.0.0-alpha.28
 - @react-navigation/core@5.0.0-alpha.37
 - @react-navigation/drawer@5.0.0-alpha.41
 - @react-navigation/material-bottom-tabs@5.0.0-alpha.36
 - @react-navigation/material-top-tabs@5.0.0-alpha.35
 - @react-navigation/native-stack@5.0.0-alpha.29
 - @react-navigation/native@5.0.0-alpha.29
 - @react-navigation/routers@5.0.0-alpha.27
 - @react-navigation/stack@5.0.0-alpha.63
2020-01-24 13:01:24 +01:00
NoemiRozpara
5751e7f97a fix: warn if non-serializable values found in state 2020-01-24 12:58:06 +01:00
Satyajit Sahoo
179e807a64 fix: add error message when trying to use v4 API with v5 2020-01-24 00:01:35 +01:00
Satyajit Sahoo
2f1f0af862 fix: validate screen configs 2020-01-23 23:52:27 +01:00
Satyajit Sahoo
9976a888a0 refactor: move replace to stack router 2020-01-23 20:13:40 +01:00
Satyajit Sahoo
14250851d1 refactor: remove resetRoot from the navigation prop
Using `resetRoot` requires knowledge of the whole navigation tree that a specific screen shouldn't have. It's better to remove it to discourage resetting whole navigator state from inside a screen.

It's still possible if the user needs it:
- Expose `resetRoot` from container's ref via context
- Use `reset` with the target set to the root navigation state's key
2020-01-23 14:44:34 +01:00
osdnk
42586462fd chore: publish
- @react-navigation/bottom-tabs@5.0.0-alpha.38
 - @react-navigation/compat@5.0.0-alpha.27
 - @react-navigation/core@5.0.0-alpha.36
 - @react-navigation/drawer@5.0.0-alpha.40
 - @react-navigation/material-bottom-tabs@5.0.0-alpha.35
 - @react-navigation/material-top-tabs@5.0.0-alpha.34
 - @react-navigation/native-stack@5.0.0-alpha.28
 - @react-navigation/native@5.0.0-alpha.28
 - @react-navigation/routers@5.0.0-alpha.26
 - @react-navigation/stack@5.0.0-alpha.62
2020-01-23 10:45:49 +01:00
Satyajit Sahoo
6c2acbb304 fix: make sure that we return correct value if selector changes
https://github.com/react-navigation/navigation-ex/pull/273#issuecomment-576581225
2020-01-21 18:04:04 +01:00
Satyajit Sahoo
65e5147910 chore: add some more examples 2020-01-20 15:38:05 +01:00
Satyajit Sahoo
32a2206513 feat: add useNavigationState hook
Sometimes it's useful to get the current navigation state inside a screen. We have the `dangerouslyGetState` method for that. However, the problem with this method is that it won't trigger a re-render when it changes, so user cannot rely on it for rendering something.

This adds a 2 things:
1. A `state` event similar to `focus` and `blur` that user can subscribe to
2. A `useNavigationState` hook that takes a selector and returns part of the state

Internally `useNavigationState` subscribes to the state event to get the current navigation state.

I have also made it mandatory to pass a selector to `useNavigationState`. This makes it harder to accidentally get the whole navigation state, which will trigger a re-render every time anything changes, even if we don't care about the change. With a selector, we can tell which part we care about, and if that part didn't change, it won't trigger a re-render.

For example, to get the same functionality as the old `isFirstRouteInParent` method:

```js
function MyComponent({ route }) {
  const isFirstRouteInParent = useNavigationState(state => state.routes[0] === route);

  // content
}
```
2020-01-18 23:25:42 +01:00
Satyajit Sahoo
3bf5ddde2a fix: don't add ?if query params is empty 2020-01-18 22:30:39 +01:00
Wojciech Lewicki
1e53821d52 feat: support nested config in getPathFromState (#266)
Co-authored-by: Satyajit Sahoo <satyajit.happy@gmail.com>
2020-01-17 22:43:37 +01:00
Satyajit Sahoo
23ab45aceb fix: fix types for useFocusEffect
See #270
2020-01-17 15:54:02 +01:00
Satyajit Sahoo
d9059b56d8 fix: disallow canPreventDefault option if not present in types 2020-01-15 08:48:02 +01:00
Satyajit Sahoo
ad4eaff1e9 fix: use protected for private value store 2020-01-14 16:52:29 +01:00
Satyajit Sahoo
da67e134d2 feat: let the navigator specify if default can be prevented 2020-01-14 16:48:56 +01:00
Satyajit Sahoo
ee381a4ba3 test: make sure navigation prop is cached 2020-01-14 15:26:45 +01:00
Satyajit Sahoo
3c5b8c4992 chore: publish
- @react-navigation/bottom-tabs@5.0.0-alpha.37
 - @react-navigation/compat@5.0.0-alpha.26
 - @react-navigation/core@5.0.0-alpha.35
 - @react-navigation/drawer@5.0.0-alpha.39
 - @react-navigation/material-bottom-tabs@5.0.0-alpha.34
 - @react-navigation/material-top-tabs@5.0.0-alpha.33
 - @react-navigation/native-stack@5.0.0-alpha.27
 - @react-navigation/native@5.0.0-alpha.27
 - @react-navigation/routers@5.0.0-alpha.25
 - @react-navigation/stack@5.0.0-alpha.61
2020-01-14 02:24:48 +01:00
Satyajit Sahoo
a912323c1d fix: fix intellisense for CompositeNavigationProp 2020-01-14 02:21:18 +01:00
Satyajit Sahoo
805e5e8636 chore: publish
- @react-navigation/bottom-tabs@5.0.0-alpha.36
 - @react-navigation/compat@5.0.0-alpha.25
 - @react-navigation/core@5.0.0-alpha.34
 - @react-navigation/drawer@5.0.0-alpha.38
 - @react-navigation/material-bottom-tabs@5.0.0-alpha.33
 - @react-navigation/material-top-tabs@5.0.0-alpha.32
 - @react-navigation/native-stack@5.0.0-alpha.26
 - @react-navigation/native@5.0.0-alpha.26
 - @react-navigation/routers@5.0.0-alpha.24
 - @react-navigation/stack@5.0.0-alpha.60
2020-01-13 18:35:00 +01:00
Satyajit Sahoo
65a5dac2bf fix: make sure paths aren't aliased when building definitions
closes #265
2020-01-13 18:31:41 +01:00