Satyajit Sahoo
d85a4fd8ed
chore: upgrade expo to SDK 41
2021-04-04 06:41:26 +02:00
WoLewicki
c38906a7a0
fix: properly resolve initialRouteNames
2021-04-04 01:08:57 +02:00
Jemmy Phan
84020a0b27
feat: improve useNavigationState typing ( #9464 )
2021-03-29 05:42:19 +02:00
Satyajit Sahoo
bfd6eb79c3
chore: publish
...
- @react-navigation/bottom-tabs@6.0.0-next.1
- @react-navigation/core@6.0.0-next.1
- @react-navigation/devtools@6.0.0-next.1
- @react-navigation/drawer@6.0.0-next.1
- @react-navigation/elements@1.0.0-next.1
- @react-navigation/material-bottom-tabs@6.0.0-next.1
- @react-navigation/material-top-tabs@6.0.0-next.1
- @react-navigation/native@6.0.0-next.1
- @react-navigation/routers@6.0.0-next.1
- @react-navigation/stack@6.0.0-next.1
2021-03-10 05:13:55 +01:00
Satyajit Sahoo
0fce8eb2a1
chore: publish
...
- @react-navigation/bottom-tabs@6.0.0-next.0
- @react-navigation/core@6.0.0-next.0
- @react-navigation/devtools@6.0.0-next.0
- @react-navigation/drawer@6.0.0-next.0
- @react-navigation/elements@1.0.0-next.0
- @react-navigation/material-bottom-tabs@6.0.0-next.0
- @react-navigation/material-top-tabs@6.0.0-next.0
- @react-navigation/native@6.0.0-next.0
- @react-navigation/routers@6.0.0-next.0
- @react-navigation/stack@6.0.0-next.0
2021-03-09 17:51:56 +01:00
Satyajit Sahoo
9fce3a433c
chore: upgrade dependencies
2021-03-07 00:28:13 +01:00
Satyajit Sahoo
36a9b4f866
fix: check duplicate names only for immediate nested screens
2021-03-05 18:46:54 +01:00
Satyajit Sahoo
13d85530ae
fix: show redbox instead of crash if navigation isn't initialized
2021-03-05 13:44:17 +01:00
Satyajit Sahoo
86e64fdcd8
feat: associate path with the route it opens when deep linking ( #9384 )
...
This commit adds a new optional property on the `route` object called `path`.
This property will be added if the screen was opened from a deep link.
Having this property helps with few things:
- Preserve the URL when the path was unmatched, e.g. 404 routes
- Expose the path to the user so they could handle it manually if needed, e.g. open in a webview
- Avoid changing URL if state to path doesn't match current path, e.g. if orders of params change
Fixes #9102
2021-03-05 12:20:35 +01:00
Satyajit Sahoo
205f297d07
chore: fix warnings in tests
2021-02-22 00:15:54 +01:00
Satyajit Sahoo
d6466b7a4b
feat: allow returning null or undefined to skip actions with dispatch
2021-02-21 21:27:26 +01:00
Satyajit Sahoo
02a031e46e
feat: warn on duplicate screen names across navigators
2021-02-21 21:19:52 +01:00
Satyajit Sahoo
15b8bb3458
feat: add a way to specify an unique ID for screens
...
With this, the user will be able to specify a `getId` function for their screens which returns an unique ID to use for the screen:
```js
<Stack.Screen
name="Profile"
component={ProfileScreen}
getId={({ params }) => params.userId}
/>
```
This is an alternative to the `key` option in `navigate` with several advantages:
- Often users specify a key that's dependent on data already in params, such as `userId`. So it's much easier to specify it one place rather than at every call site.
- Users won't need to deal with generating a unique key for routes manually.
- This will work with other actions such as `push`, and not just navigate.
- With this, it'll be possible to have multiple instances of the screen even if you use `navigate`, which may be desirable in many cases (such as profile screens).
2021-01-14 03:33:44 +01:00
Satyajit Sahoo
802db004ae
chore: upgrade dependencies
2021-01-08 13:59:24 +01:00
Satyajit Sahoo
03ba1f2930
fix: fix default screen options not being respected
2020-12-04 00:34:16 +01:00
Satyajit Sahoo
65d8b487f8
chore: upgrade to typescript 4.1
2020-12-03 01:56:28 +01:00
Satyajit Sahoo
f137a84a80
chore: tweak comment for getParent
2020-12-02 21:15:29 +01:00
Satyajit Sahoo
c361795d97
fix: print an error when passing a second argument to useFocusEffect
2020-12-02 20:27:34 +01:00
Satyajit Sahoo
b82a9126bb
fix: fix incorrect state change events in independent nested container
...
fixes #9080
2020-11-20 18:10:35 +01:00
Satyajit Sahoo
c85f2ff47a
feat: add an option to specify default options for the navigator
2020-11-17 20:25:49 +01:00
Satyajit Sahoo
227f133536
fix: drop dangerously prefix from getState and getParent
...
BREAKING CHANGE
2020-11-13 04:48:14 +01:00
Satyajit Sahoo
21a11543bf
fix: add missing helper types in descriptors
2020-11-12 03:54:41 +01:00
Satyajit Sahoo
d5c091cbcf
refactor: add route prop to the descriptor
2020-11-12 02:46:25 +01:00
Satyajit Sahoo
0e13e8d23c
fix: drop support for legacy linking config
...
BREAKING CHANGE: This commit drops support for legacy linking config which allowed screens to be specified without the screens property in the config.
2020-11-11 23:33:18 +01:00
Satyajit Sahoo
366d0181dc
fix: don't merge params on navigation
...
BREAKING CHANGE: Previous versions of React Navigation merged params on navigation which caused confusion. This commit changes params not to be merged.
The old behaviour can still be achieved by passing `merge: true` explicitly:
```js
CommonActions.navigate({
name: 'bar',
params: { fruit: 'orange' },
merge: true,
})
```
`initialParams` specified for the screen are always merged.
2020-11-11 23:16:03 +01:00
Satyajit Sahoo
ebab518352
fix: remove the state property from route prop
...
BREAKING CHANGE: any code which relies on `route.state` will break.
Previous versions printed a warning on accessing `route.state`. This commit removes the property entirely. Accessing this property isn't safe since child navigator state isn't gurranteed to be in sync with parent navigator state and cause subtle bugs in apps.
2020-11-11 22:20:47 +01:00
Satyajit Sahoo
b70ba66f24
chore: prepare for 6.x alpha
2020-11-11 22:07:33 +01:00
Satyajit Sahoo
a2337648bf
chore: publish
...
- @react-navigation/bottom-tabs@5.11 .1
- @react-navigation/compat@5.3.9
- @react-navigation/core@5.14 .3
- @react-navigation/devtools@5.1.17
- @react-navigation/drawer@5.11 .2
- @react-navigation/material-bottom-tabs@5.3.9
- @react-navigation/material-top-tabs@5.3.9
- @react-navigation/native@5.8.9
- @react-navigation/stack@5.12 .6
2020-11-10 20:41:26 +01:00
Satyajit Sahoo
8f764d8b08
fix: improve the error message for incorrect screen configuration
2020-11-10 20:29:59 +01:00
Satyajit Sahoo
f8e998b10c
refactor: simplify getStateFromPath
2020-11-10 19:44:00 +01:00
Satyajit Sahoo
151055cf5a
chore: publish
...
- @react-navigation/bottom-tabs@5.11 .0
- @react-navigation/compat@5.3.8
- @react-navigation/core@5.14 .2
- @react-navigation/devtools@5.1.16
- @react-navigation/drawer@5.11 .0
- @react-navigation/material-bottom-tabs@5.3.8
- @react-navigation/material-top-tabs@5.3.8
- @react-navigation/native@5.8.8
- @react-navigation/routers@5.6.2
- @react-navigation/stack@5.12 .5
2020-11-09 20:17:39 +01:00
Satyajit Sahoo
48b2e77730
fix: throw if the same pattern resolves to multiple screens
2020-11-09 01:56:30 +01:00
Satyajit Sahoo
50a161dc3d
chore: publish
...
- @react-navigation/bottom-tabs@5.10 .7
- @react-navigation/compat@5.3.7
- @react-navigation/core@5.14 .1
- @react-navigation/devtools@5.1.15
- @react-navigation/drawer@5.10 .7
- @react-navigation/material-bottom-tabs@5.3.7
- @react-navigation/material-top-tabs@5.3.7
- @react-navigation/native@5.8.7
- @react-navigation/routers@5.6.1
- @react-navigation/stack@5.12 .4
2020-11-08 09:06:37 +01:00
Satyajit Sahoo
360b0e9958
fix: tweak error message when navigator has non-screen children
2020-11-07 16:43:45 +01:00
Satyajit Sahoo
e50c8aa942
refactor: use a regular action for 'resetRoot'
...
Previously, 'resetRoot' directly performed a 'setState' on the container instead of dispatching an action. This meant that hooks such as listener for 'preventRemove' won't be notified by it. This commit changes it to dispatch a regular 'RESET' action which will behave the same as other actions.
2020-11-07 15:55:48 +01:00
Satyajit Sahoo
1dad338b7a
chore: publish
...
- @react-navigation/bottom-tabs@5.10 .6
- @react-navigation/compat@5.3.6
- @react-navigation/core@5.14 .0
- @react-navigation/devtools@5.1.14
- @react-navigation/drawer@5.10 .6
- @react-navigation/material-bottom-tabs@5.3.6
- @react-navigation/material-top-tabs@5.3.6
- @react-navigation/native@5.8.6
- @react-navigation/routers@5.6.0
- @react-navigation/stack@5.12 .3
2020-11-04 22:37:22 +01:00
Satyajit Sahoo
e3e58c2d89
feat: add a NavigatorScreenParams type. closes #6931
2020-11-04 22:36:43 +01:00
Satyajit Sahoo
cb2e744dce
fix: always respect key in the route object when generating action
2020-11-04 22:36:43 +01:00
Satyajit Sahoo
ec7b02af2c
feat: add warning on accessing the state object on route prop
2020-11-04 22:36:43 +01:00
Satyajit Sahoo
a495506e20
chore: publish
...
- @react-navigation/bottom-tabs@5.10 .5
- @react-navigation/compat@5.3.5
- @react-navigation/core@5.13 .5
- @react-navigation/devtools@5.1.13
- @react-navigation/drawer@5.10 .5
- @react-navigation/material-bottom-tabs@5.3.5
- @react-navigation/material-top-tabs@5.3.5
- @react-navigation/native@5.8.5
- @react-navigation/stack@5.12 .2
2020-11-04 13:24:15 +01:00
Satyajit Sahoo
b20f2d1f7c
fix: use useDebugValue in more places
2020-11-04 13:21:36 +01:00
Satyajit Sahoo
66f3a4a0bb
fix: don't use use-subscription to avoid peer dep related errors
...
The `use-subscription` package has a peer dep on latest React. This is problematic when using npm due to it's peer dependency algorithm which installs multiple versions of React when using an older version of React (Native).
This means that we'll need to use an ancient version of `use-subscription` to support older React versions with npm and make sure to never update it, or test with every version.
It's much lower maintenance to incporporate the same update in render logic that `use-subscription` has and not deal with dependencies. So this commit removes the `use-subscription` dependency.
See https://github.com/react-navigation/react-navigation/issues/9021#issuecomment-721679760 for more context.
2020-11-04 13:06:49 +01:00
Satyajit Sahoo
84cc0d758a
chore: publish
...
- @react-navigation/bottom-tabs@5.10 .4
- @react-navigation/compat@5.3.4
- @react-navigation/core@5.13 .4
- @react-navigation/devtools@5.1.12
- @react-navigation/drawer@5.10 .4
- @react-navigation/material-bottom-tabs@5.3.4
- @react-navigation/material-top-tabs@5.3.4
- @react-navigation/native@5.8.4
- @react-navigation/stack@5.12 .1
2020-11-03 07:04:08 +01:00
Satyajit Sahoo
ebc7f9ea75
fix: fix nested navigation not working the first time
2020-11-03 06:59:42 +01:00
Satyajit Sahoo
bd9f0ad5f6
chore: publish
...
- @react-navigation/bottom-tabs@5.10 .3
- @react-navigation/compat@5.3.3
- @react-navigation/core@5.13 .3
- @react-navigation/devtools@5.1.11
- @react-navigation/drawer@5.10 .3
- @react-navigation/material-bottom-tabs@5.3.3
- @react-navigation/material-top-tabs@5.3.3
- @react-navigation/native@5.8.3
- @react-navigation/stack@5.12 .0
2020-11-03 06:31:58 +01:00
Satyajit Sahoo
0945689b70
fix: handle navigating to same screen again for nested screens
2020-11-03 05:51:52 +01:00
Satyajit Sahoo
37b9454f3e
chore: publish
...
- @react-navigation/bottom-tabs@5.10 .2
- @react-navigation/compat@5.3.2
- @react-navigation/core@5.13 .2
- @react-navigation/devtools@5.1.10
- @react-navigation/drawer@5.10 .2
- @react-navigation/material-bottom-tabs@5.3.2
- @react-navigation/material-top-tabs@5.3.2
- @react-navigation/native@5.8.2
- @react-navigation/stack@5.11 .1
2020-10-30 13:42:48 +01:00
Satyajit Sahoo
fb7ac960c8
fix: trim routes if an index is specified in state
2020-10-30 13:41:28 +01:00
Satyajit Sahoo
e8515f9cd9
fix: fix params from for the root screen when creating action
...
closes #9006
2020-10-30 13:26:52 +01:00
Satyajit Sahoo
5eee804e7f
chore: publish
...
- @react-navigation/bottom-tabs@5.10 .1
- @react-navigation/compat@5.3.1
- @react-navigation/core@5.13 .1
- @react-navigation/devtools@5.1.9
- @react-navigation/drawer@5.10 .1
- @react-navigation/material-bottom-tabs@5.3.1
- @react-navigation/material-top-tabs@5.3.1
- @react-navigation/native@5.8.1
- @react-navigation/routers@5.5.1
- @react-navigation/stack@5.11 .0
2020-10-28 22:21:16 +01:00