Compare commits

...

5 Commits

Author SHA1 Message Date
Satyajit Sahoo
7b353a4aea chore: publish
- @react-navigation/bottom-tabs@5.11.8
 - @react-navigation/compat@5.3.14
 - @react-navigation/core@5.15.2
 - @react-navigation/devtools@5.1.21
 - @react-navigation/drawer@5.12.4
 - @react-navigation/material-bottom-tabs@5.3.14
 - @react-navigation/material-top-tabs@5.3.14
 - @react-navigation/native@5.9.3
 - @react-navigation/routers@5.7.2
 - @react-navigation/stack@5.14.3
2021-02-21 16:09:01 +01:00
Satyajit Sahoo
3728390b60 fix: fix getId being called for incorrect routes. closes #9343 2021-02-21 15:55:03 +01:00
Satyajit Sahoo
a8342aaf3d fix: address breaking change in react-native for Linking 2021-02-21 15:49:58 +01:00
Satyajit Sahoo
860adbfd8b chore: publish
- @react-navigation/stack@5.14.2
2021-01-25 17:14:53 +01:00
Satyajit Sahoo
38d680833e fix: fix transparent modal on web 2021-01-25 17:13:24 +01:00
24 changed files with 218 additions and 24 deletions

View File

@@ -3,6 +3,14 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [5.11.8](https://github.com/react-navigation/react-navigation/compare/@react-navigation/bottom-tabs@5.11.7...@react-navigation/bottom-tabs@5.11.8) (2021-02-21)
**Note:** Version bump only for package @react-navigation/bottom-tabs
## [5.11.7](https://github.com/react-navigation/react-navigation/compare/@react-navigation/bottom-tabs@5.11.6...@react-navigation/bottom-tabs@5.11.7) (2021-01-25)

View File

@@ -1,7 +1,7 @@
{
"name": "@react-navigation/bottom-tabs",
"description": "Bottom tab navigator following iOS design guidelines",
"version": "5.11.7",
"version": "5.11.8",
"keywords": [
"react-native-component",
"react-component",
@@ -40,7 +40,7 @@
"react-native-iphone-x-helper": "^1.3.0"
},
"devDependencies": {
"@react-navigation/native": "^5.9.2",
"@react-navigation/native": "^5.9.3",
"@testing-library/react-native": "^7.1.0",
"@types/color": "^3.0.1",
"@types/react": "^16.9.53",

View File

@@ -3,6 +3,14 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [5.3.14](https://github.com/react-navigation/react-navigation/compare/@react-navigation/compat@5.3.13...@react-navigation/compat@5.3.14) (2021-02-21)
**Note:** Version bump only for package @react-navigation/compat
## [5.3.13](https://github.com/react-navigation/react-navigation/compare/@react-navigation/compat@5.3.12...@react-navigation/compat@5.3.13) (2021-01-22)
**Note:** Version bump only for package @react-navigation/compat

View File

@@ -1,7 +1,7 @@
{
"name": "@react-navigation/compat",
"description": "Compatibility layer to write navigator definitions in static configuration format",
"version": "5.3.13",
"version": "5.3.14",
"license": "MIT",
"repository": {
"type": "git",
@@ -31,7 +31,7 @@
"clean": "del lib"
},
"devDependencies": {
"@react-navigation/native": "^5.9.2",
"@react-navigation/native": "^5.9.3",
"@types/react": "^16.9.53",
"react": "~16.13.1",
"react-native-builder-bob": "^0.17.0",

View File

@@ -3,6 +3,14 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [5.15.2](https://github.com/react-navigation/react-navigation/compare/@react-navigation/core@5.15.1...@react-navigation/core@5.15.2) (2021-02-21)
**Note:** Version bump only for package @react-navigation/core
## [5.15.1](https://github.com/react-navigation/react-navigation/compare/@react-navigation/core@5.15.0...@react-navigation/core@5.15.1) (2021-01-21)
**Note:** Version bump only for package @react-navigation/core

View File

@@ -1,7 +1,7 @@
{
"name": "@react-navigation/core",
"description": "Core utilities for building navigators",
"version": "5.15.1",
"version": "5.15.2",
"keywords": [
"react",
"react-native",
@@ -35,7 +35,7 @@
"clean": "del lib"
},
"dependencies": {
"@react-navigation/routers": "^5.7.1",
"@react-navigation/routers": "^5.7.2",
"escape-string-regexp": "^4.0.0",
"nanoid": "^3.1.15",
"query-string": "^6.13.6",

View File

@@ -3,6 +3,14 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [5.1.21](https://github.com/react-navigation/react-navigation/compare/@react-navigation/devtools@5.1.20...@react-navigation/devtools@5.1.21) (2021-02-21)
**Note:** Version bump only for package @react-navigation/devtools
## [5.1.20](https://github.com/react-navigation/react-navigation/compare/@react-navigation/devtools@5.1.19...@react-navigation/devtools@5.1.20) (2021-01-21)
**Note:** Version bump only for package @react-navigation/devtools

View File

@@ -1,7 +1,7 @@
{
"name": "@react-navigation/devtools",
"description": "Developer tools for React Navigation",
"version": "5.1.20",
"version": "5.1.21",
"keywords": [
"react",
"react-native",
@@ -36,7 +36,7 @@
"clean": "del lib"
},
"dependencies": {
"@react-navigation/core": "^5.15.1",
"@react-navigation/core": "^5.15.2",
"deep-equal": "^2.0.4"
},
"devDependencies": {

View File

@@ -3,6 +3,14 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [5.12.4](https://github.com/react-navigation/react-navigation/compare/@react-navigation/drawer@5.12.3...@react-navigation/drawer@5.12.4) (2021-02-21)
**Note:** Version bump only for package @react-navigation/drawer
## [5.12.3](https://github.com/react-navigation/react-navigation/compare/@react-navigation/drawer@5.12.2...@react-navigation/drawer@5.12.3) (2021-01-25)

View File

@@ -1,7 +1,7 @@
{
"name": "@react-navigation/drawer",
"description": "Drawer navigator component with animated transitions and gesturess",
"version": "5.12.3",
"version": "5.12.4",
"keywords": [
"react-native-component",
"react-component",
@@ -45,7 +45,7 @@
"react-native-iphone-x-helper": "^1.3.0"
},
"devDependencies": {
"@react-navigation/native": "^5.9.2",
"@react-navigation/native": "^5.9.3",
"@testing-library/react-native": "^7.1.0",
"@types/react": "^16.9.53",
"@types/react-native": "^0.63.30",

View File

@@ -3,6 +3,14 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [5.3.14](https://github.com/react-navigation/react-navigation/compare/@react-navigation/material-bottom-tabs@5.3.13...@react-navigation/material-bottom-tabs@5.3.14) (2021-02-21)
**Note:** Version bump only for package @react-navigation/material-bottom-tabs
## [5.3.13](https://github.com/react-navigation/react-navigation/compare/@react-navigation/material-bottom-tabs@5.3.12...@react-navigation/material-bottom-tabs@5.3.13) (2021-01-22)
**Note:** Version bump only for package @react-navigation/material-bottom-tabs

View File

@@ -1,7 +1,7 @@
{
"name": "@react-navigation/material-bottom-tabs",
"description": "Integration for bottom navigation component from react-native-paper",
"version": "5.3.13",
"version": "5.3.14",
"keywords": [
"react-native-component",
"react-component",
@@ -41,7 +41,7 @@
"clean": "del lib"
},
"devDependencies": {
"@react-navigation/native": "^5.9.2",
"@react-navigation/native": "^5.9.3",
"@testing-library/react-native": "^7.1.0",
"@types/react": "^16.9.53",
"@types/react-native": "^0.63.30",

View File

@@ -3,6 +3,14 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [5.3.14](https://github.com/react-navigation/react-navigation/compare/@react-navigation/material-top-tabs@5.3.13...@react-navigation/material-top-tabs@5.3.14) (2021-02-21)
**Note:** Version bump only for package @react-navigation/material-top-tabs
## [5.3.13](https://github.com/react-navigation/react-navigation/compare/@react-navigation/material-top-tabs@5.3.12...@react-navigation/material-top-tabs@5.3.13) (2021-01-22)
**Note:** Version bump only for package @react-navigation/material-top-tabs

View File

@@ -1,7 +1,7 @@
{
"name": "@react-navigation/material-top-tabs",
"description": "Integration for the animated tab view component from react-native-tab-view",
"version": "5.3.13",
"version": "5.3.14",
"keywords": [
"react-native-component",
"react-component",
@@ -44,7 +44,7 @@
"color": "^3.1.3"
},
"devDependencies": {
"@react-navigation/native": "^5.9.2",
"@react-navigation/native": "^5.9.3",
"@testing-library/react-native": "^7.1.0",
"@types/react": "^16.9.53",
"@types/react-native": "^0.63.30",

View File

@@ -3,6 +3,17 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [5.9.3](https://github.com/react-navigation/react-navigation/compare/@react-navigation/native@5.9.2...@react-navigation/native@5.9.3) (2021-02-21)
### Bug Fixes
* address breaking change in react-native for Linking ([a8342aa](https://github.com/react-navigation/react-navigation/commit/a8342aaf3d1ba8fb29faa91c7b63ed25f11745e5))
## [5.9.2](https://github.com/react-navigation/react-navigation/compare/@react-navigation/native@5.9.1...@react-navigation/native@5.9.2) (2021-01-22)

View File

@@ -1,7 +1,7 @@
{
"name": "@react-navigation/native",
"description": "React Native integration for React Navigation",
"version": "5.9.2",
"version": "5.9.3",
"keywords": [
"react-native",
"react-navigation",
@@ -37,7 +37,7 @@
"clean": "del lib"
},
"dependencies": {
"@react-navigation/core": "^5.15.1",
"@react-navigation/core": "^5.15.2",
"escape-string-regexp": "^4.0.0",
"nanoid": "^3.1.15"
},

View File

@@ -30,9 +30,18 @@ export default function useLinking(
subscribe = (listener) => {
const callback = ({ url }: { url: string }) => listener(url);
Linking.addEventListener('url', callback);
const subscription = Linking.addEventListener('url', callback) as
| { remove(): void }
| undefined;
return () => Linking.removeEventListener('url', callback);
return () => {
// https://github.com/facebook/react-native/commit/6d1aca806cee86ad76de771ed3a1cc62982ebcd7
if (subscription?.remove) {
subscription.remove();
} else {
Linking.removeEventListener('url', callback);
}
};
},
getStateFromPath = getStateFromPathDefault,
getActionFromState = getActionFromStateDefault,

View File

@@ -3,6 +3,17 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [5.7.2](https://github.com/react-navigation/react-navigation/compare/@react-navigation/routers@5.7.1...@react-navigation/routers@5.7.2) (2021-02-21)
### Bug Fixes
* fix getId being called for incorrect routes. closes [#9343](https://github.com/react-navigation/react-navigation/issues/9343) ([3728390](https://github.com/react-navigation/react-navigation/commit/3728390b60814ba414bd15cc5b7e5b51baa1f026))
## [5.7.1](https://github.com/react-navigation/react-navigation/compare/@react-navigation/routers@5.7.0...@react-navigation/routers@5.7.1) (2021-01-21)

View File

@@ -1,7 +1,7 @@
{
"name": "@react-navigation/routers",
"description": "Routers to help build custom navigators",
"version": "5.7.1",
"version": "5.7.2",
"keywords": [
"react",
"react-native",

View File

@@ -270,7 +270,9 @@ export default function StackRouter(options: StackRouterOptions) {
)
: id
? state.routes.find(
(route) => id === getId?.({ params: route.params })
(route) =>
route.name === action.payload.name &&
id === getId?.({ params: route.params })
)
: undefined;
@@ -369,7 +371,9 @@ export default function StackRouter(options: StackRouterOptions) {
if (id) {
index = state.routes.findIndex(
(route) => id === getId?.({ params: route.params })
(route) =>
route.name === action.payload.name &&
id === getId?.({ params: route.params })
);
} else if (
(state.routes[state.index].name === action.payload.name &&

View File

@@ -616,6 +616,48 @@ it('ensures unique ID for navigate', () => {
});
});
it('ensure unique ID is only per route name for navigate', () => {
const router = StackRouter({});
const options: RouterConfigOptions = {
routeNames: ['baz', 'bar', 'qux'],
routeParamList: {},
routeGetIdList: {
baz: ({ params }) => params?.foo,
bar: ({ params }) => params?.foo,
qux: ({ params }) => params?.test,
},
};
expect(
router.getStateForAction(
{
stale: false,
type: 'stack',
key: 'root',
index: 1,
routeNames: ['baz', 'bar', 'qux'],
routes: [
{ key: 'qux-test', name: 'qux', params: { test: 'a' } },
{ key: 'baz-test', name: 'baz', params: { foo: 'a' } },
],
},
CommonActions.navigate('bar', { foo: 'a' }),
options
)
).toEqual({
stale: false,
type: 'stack',
key: 'root',
index: 2,
routeNames: ['baz', 'bar', 'qux'],
routes: [
{ key: 'qux-test', name: 'qux', params: { test: 'a' } },
{ key: 'baz-test', name: 'baz', params: { foo: 'a' } },
{ key: 'bar-test', name: 'bar', params: { foo: 'a' } },
],
});
});
it('handles go back action', () => {
const router = StackRouter({});
const options: RouterConfigOptions = {
@@ -1307,6 +1349,48 @@ it('ensures unique ID for push', () => {
});
});
it('ensure unique ID is only per route name for push', () => {
const router = StackRouter({});
const options: RouterConfigOptions = {
routeNames: ['baz', 'bar', 'qux'],
routeParamList: {},
routeGetIdList: {
baz: ({ params }) => params?.foo,
bar: ({ params }) => params?.foo,
qux: ({ params }) => params?.test,
},
};
expect(
router.getStateForAction(
{
stale: false,
type: 'stack',
key: 'root',
index: 1,
routeNames: ['baz', 'bar', 'qux'],
routes: [
{ key: 'qux-test', name: 'qux', params: { test: 'a' } },
{ key: 'baz-test', name: 'baz', params: { foo: 'a' } },
],
},
StackActions.push('bar', { foo: 'a' }),
options
)
).toEqual({
stale: false,
type: 'stack',
key: 'root',
index: 2,
routeNames: ['baz', 'bar', 'qux'],
routes: [
{ key: 'qux-test', name: 'qux', params: { test: 'a' } },
{ key: 'baz-test', name: 'baz', params: { foo: 'a' } },
{ key: 'bar-test', name: 'bar', params: { foo: 'a' } },
],
});
});
it('merges params on navigate to an existing screen', () => {
const router = StackRouter({});
const options: RouterConfigOptions = {

View File

@@ -3,6 +3,25 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [5.14.3](https://github.com/react-navigation/react-navigation/compare/@react-navigation/stack@5.14.2...@react-navigation/stack@5.14.3) (2021-02-21)
**Note:** Version bump only for package @react-navigation/stack
## [5.14.2](https://github.com/react-navigation/react-navigation/compare/@react-navigation/stack@5.14.1...@react-navigation/stack@5.14.2) (2021-01-25)
### Bug Fixes
* fix transparent modal on web ([38d6808](https://github.com/react-navigation/react-navigation/commit/38d680833e31e62736da19f79328aec553ced814))
## [5.14.1](https://github.com/react-navigation/react-navigation/compare/@react-navigation/stack@5.14.0...@react-navigation/stack@5.14.1) (2021-01-22)
**Note:** Version bump only for package @react-navigation/stack

View File

@@ -1,7 +1,7 @@
{
"name": "@react-navigation/stack",
"description": "Stack navigator component for iOS and Android with animated transitions and gestures",
"version": "5.14.1",
"version": "5.14.3",
"keywords": [
"react-native-component",
"react-component",
@@ -45,7 +45,7 @@
},
"devDependencies": {
"@react-native-community/masked-view": "^0.1.10",
"@react-navigation/native": "^5.9.2",
"@react-navigation/native": "^5.9.3",
"@testing-library/react-native": "^7.1.0",
"@types/color": "^3.0.1",
"@types/react": "^16.9.53",

View File

@@ -508,7 +508,7 @@ export default class CardStack extends React.Component<Props, State> {
// For the old implementation, it stays the same it was
let isScreenActive: Animated.AnimatedInterpolation | 2 | 1 | 0 = 1;
if (shouldUseActivityState) {
if (shouldUseActivityState || Platform.OS === 'web') {
if (index < self.length - activeScreensLimit - 1) {
// screen should be inactive because it is too deep in the stack
isScreenActive = STATE_INACTIVE;