@react-navigation/native 7.2.5 → 7.2.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/module/NavigationContainer.js +9 -44
- package/lib/module/NavigationContainer.js.map +1 -1
- package/lib/module/UnhandledLinkingContext.js +9 -7
- package/lib/module/UnhandledLinkingContext.js.map +1 -1
- package/lib/module/useLinking.js +2 -7
- package/lib/module/useLinking.js.map +1 -1
- package/lib/module/useLinking.native.js +14 -14
- package/lib/module/useLinking.native.js.map +1 -1
- package/lib/typescript/src/NavigationContainer.d.ts.map +1 -1
- package/lib/typescript/src/UnhandledLinkingContext.d.ts +6 -0
- package/lib/typescript/src/UnhandledLinkingContext.d.ts.map +1 -1
- package/lib/typescript/src/useLinking.d.ts +1 -1
- package/lib/typescript/src/useLinking.d.ts.map +1 -1
- package/lib/typescript/src/useLinking.native.d.ts +1 -1
- package/lib/typescript/src/useLinking.native.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/NavigationContainer.tsx +15 -62
- package/src/UnhandledLinkingContext.tsx +8 -9
- package/src/useLinking.native.tsx +30 -29
- package/src/useLinking.tsx +2 -14
|
@@ -3,11 +3,9 @@
|
|
|
3
3
|
import { BaseNavigationContainer, getActionFromState, getPathFromState, getStateFromPath, ThemeProvider, validatePathConfig } from '@react-navigation/core';
|
|
4
4
|
import * as React from 'react';
|
|
5
5
|
import { I18nManager } from 'react-native';
|
|
6
|
-
import useLatestCallback from 'use-latest-callback';
|
|
7
6
|
import { LinkingContext } from "./LinkingContext.js";
|
|
8
7
|
import { LocaleDirContext } from "./LocaleDirContext.js";
|
|
9
8
|
import { DefaultTheme } from "./theming/DefaultTheme.js";
|
|
10
|
-
import { UnhandledLinkingContext } from "./UnhandledLinkingContext.js";
|
|
11
9
|
import { useBackButton } from './useBackButton';
|
|
12
10
|
import { useDocumentTitle } from './useDocumentTitle';
|
|
13
11
|
import { useLinking } from './useLinking';
|
|
@@ -20,8 +18,6 @@ function NavigationContainerInner({
|
|
|
20
18
|
linking,
|
|
21
19
|
fallback = null,
|
|
22
20
|
documentTitle,
|
|
23
|
-
onReady,
|
|
24
|
-
onStateChange,
|
|
25
21
|
...rest
|
|
26
22
|
}, ref) {
|
|
27
23
|
const isLinkingEnabled = linking ? linking.enabled !== false : false;
|
|
@@ -31,43 +27,17 @@ function NavigationContainerInner({
|
|
|
31
27
|
const refContainer = React.useRef(null);
|
|
32
28
|
useBackButton(refContainer);
|
|
33
29
|
useDocumentTitle(refContainer, documentTitle);
|
|
34
|
-
const [lastUnhandledLink, setLastUnhandledLink] = React.useState();
|
|
35
30
|
const {
|
|
36
31
|
getInitialState
|
|
37
32
|
} = useLinking(refContainer, {
|
|
38
33
|
enabled: isLinkingEnabled,
|
|
39
34
|
prefixes: [],
|
|
40
35
|
...linking
|
|
41
|
-
}
|
|
36
|
+
});
|
|
42
37
|
const linkingContext = React.useMemo(() => ({
|
|
43
38
|
options: linking
|
|
44
39
|
}), [linking]);
|
|
45
|
-
|
|
46
|
-
lastUnhandledLink,
|
|
47
|
-
setLastUnhandledLink
|
|
48
|
-
}), [lastUnhandledLink, setLastUnhandledLink]);
|
|
49
|
-
const onReadyForLinkingHandling = useLatestCallback(() => {
|
|
50
|
-
// If the screen path matches lastUnhandledLink, we do not track it
|
|
51
|
-
const path = refContainer.current?.getCurrentRoute()?.path;
|
|
52
|
-
setLastUnhandledLink(previousLastUnhandledLink => {
|
|
53
|
-
if (previousLastUnhandledLink === path) {
|
|
54
|
-
return undefined;
|
|
55
|
-
}
|
|
56
|
-
return previousLastUnhandledLink;
|
|
57
|
-
});
|
|
58
|
-
onReady?.();
|
|
59
|
-
});
|
|
60
|
-
const onStateChangeForLinkingHandling = useLatestCallback(state => {
|
|
61
|
-
// If the screen path matches lastUnhandledLink, we do not track it
|
|
62
|
-
const path = refContainer.current?.getCurrentRoute()?.path;
|
|
63
|
-
setLastUnhandledLink(previousLastUnhandledLink => {
|
|
64
|
-
if (previousLastUnhandledLink === path) {
|
|
65
|
-
return undefined;
|
|
66
|
-
}
|
|
67
|
-
return previousLastUnhandledLink;
|
|
68
|
-
});
|
|
69
|
-
onStateChange?.(state);
|
|
70
|
-
});
|
|
40
|
+
|
|
71
41
|
// Add additional linking related info to the ref
|
|
72
42
|
// This will be used by the devtools
|
|
73
43
|
React.useEffect(() => {
|
|
@@ -103,18 +73,13 @@ function NavigationContainerInner({
|
|
|
103
73
|
}
|
|
104
74
|
return /*#__PURE__*/_jsx(LocaleDirContext.Provider, {
|
|
105
75
|
value: direction,
|
|
106
|
-
children: /*#__PURE__*/_jsx(
|
|
107
|
-
value:
|
|
108
|
-
children: /*#__PURE__*/_jsx(
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
onReady: onReadyForLinkingHandling,
|
|
114
|
-
onStateChange: onStateChangeForLinkingHandling,
|
|
115
|
-
initialState: rest.initialState == null ? initialState : rest.initialState,
|
|
116
|
-
ref: refContainer
|
|
117
|
-
})
|
|
76
|
+
children: /*#__PURE__*/_jsx(LinkingContext.Provider, {
|
|
77
|
+
value: linkingContext,
|
|
78
|
+
children: /*#__PURE__*/_jsx(BaseNavigationContainer, {
|
|
79
|
+
...rest,
|
|
80
|
+
theme: theme,
|
|
81
|
+
initialState: rest.initialState == null ? initialState : rest.initialState,
|
|
82
|
+
ref: refContainer
|
|
118
83
|
})
|
|
119
84
|
})
|
|
120
85
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["BaseNavigationContainer","getActionFromState","getPathFromState","getStateFromPath","ThemeProvider","validatePathConfig","React","I18nManager","
|
|
1
|
+
{"version":3,"names":["BaseNavigationContainer","getActionFromState","getPathFromState","getStateFromPath","ThemeProvider","validatePathConfig","React","I18nManager","LinkingContext","LocaleDirContext","DefaultTheme","useBackButton","useDocumentTitle","useLinking","useThenable","jsx","_jsx","globalThis","REACT_NAVIGATION_DEVTOOLS","WeakMap","NavigationContainerInner","direction","getConstants","isRTL","theme","linking","fallback","documentTitle","rest","ref","isLinkingEnabled","enabled","config","refContainer","useRef","getInitialState","prefixes","linkingContext","useMemo","options","useEffect","current","set","isResolved","initialState","useImperativeHandle","isLinkingReady","Provider","value","children","NavigationContainer","forwardRef"],"sourceRoot":"../../src","sources":["NavigationContainer.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import * as React from 'react';
|
|
4
|
-
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* This is unused, and currently does nothing.
|
|
7
|
+
* But left as an export to avoid breaking consumers who might be using it.
|
|
8
|
+
*
|
|
9
|
+
* @deprecated
|
|
10
|
+
*/
|
|
5
11
|
export const UnhandledLinkingContext = /*#__PURE__*/React.createContext({
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
},
|
|
9
|
-
get setLastUnhandledLink() {
|
|
10
|
-
throw new Error(MISSING_CONTEXT_ERROR);
|
|
11
|
-
}
|
|
12
|
+
lastUnhandledLink: undefined,
|
|
13
|
+
setLastUnhandledLink: () => {}
|
|
12
14
|
});
|
|
13
15
|
UnhandledLinkingContext.displayName = 'UnhandledLinkingContext';
|
|
14
16
|
//# sourceMappingURL=UnhandledLinkingContext.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","
|
|
1
|
+
{"version":3,"names":["React","UnhandledLinkingContext","createContext","lastUnhandledLink","undefined","setLastUnhandledLink","displayName"],"sourceRoot":"../../src","sources":["UnhandledLinkingContext.tsx"],"mappings":";;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;;AAE9B;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,uBAAuB,gBAAGD,KAAK,CAACE,aAAa,CAGvD;EACDC,iBAAiB,EAAEC,SAAS;EAC5BC,oBAAoB,EAAEA,CAAA,KAAM,CAAC;AAC/B,CAAC,CAAC;AAEFJ,uBAAuB,CAACK,WAAW,GAAG,yBAAyB","ignoreList":[]}
|
package/lib/module/useLinking.js
CHANGED
|
@@ -71,7 +71,7 @@ export function useLinking(ref, {
|
|
|
71
71
|
getStateFromPath = getStateFromPathDefault,
|
|
72
72
|
getPathFromState = getPathFromStateDefault,
|
|
73
73
|
getActionFromState = getActionFromStateDefault
|
|
74
|
-
}
|
|
74
|
+
}) {
|
|
75
75
|
const independent = useNavigationIndependentTree();
|
|
76
76
|
React.useEffect(() => {
|
|
77
77
|
if (process.env.NODE_ENV === 'production') {
|
|
@@ -132,9 +132,6 @@ export function useLinking(ref, {
|
|
|
132
132
|
value = undefined;
|
|
133
133
|
}
|
|
134
134
|
}
|
|
135
|
-
|
|
136
|
-
// If the link were handled, it gets cleared in NavigationContainer
|
|
137
|
-
onUnhandledLinking(path);
|
|
138
135
|
}
|
|
139
136
|
const thenable = {
|
|
140
137
|
then(onfulfilled) {
|
|
@@ -194,8 +191,6 @@ export function useLinking(ref, {
|
|
|
194
191
|
// We should only dispatch an action when going forward
|
|
195
192
|
// Otherwise the action will likely add items to history, which would mess things up
|
|
196
193
|
if (state) {
|
|
197
|
-
// If the link were handled, it gets cleared in NavigationContainer
|
|
198
|
-
onUnhandledLinking(path);
|
|
199
194
|
// Make sure that the routes in the state exist in the root navigator
|
|
200
195
|
// Otherwise there's an error in the linking configuration
|
|
201
196
|
if (validateRoutesNotExistInRootState(state)) {
|
|
@@ -222,7 +217,7 @@ export function useLinking(ref, {
|
|
|
222
217
|
navigation.resetRoot(state);
|
|
223
218
|
}
|
|
224
219
|
});
|
|
225
|
-
}, [enabled, history,
|
|
220
|
+
}, [enabled, history, ref, validateRoutesNotExistInRootState]);
|
|
226
221
|
React.useEffect(() => {
|
|
227
222
|
if (!enabled) {
|
|
228
223
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["findFocusedRoute","getActionFromState","getActionFromStateDefault","getPathFromState","getPathFromStateDefault","getStateFromPath","getStateFromPathDefault","useNavigationIndependentTree","isEqual","React","createMemoryHistory","ServerContext","getRoutesUntilIndex","state","routes","slice","index","getHistoryLength","history","length","findMatchingState","a","b","undefined","key","aHistoryLength","bHistoryLength","aRoute","bRoute","aChildState","bChildState","isPoppingLastEntry","current","record","currentRoutes","recordRoutes","every","route","i","series","cb","queue","Promise","resolve","callback","then","linkingHandlers","useLinking","ref","enabled","config","onUnhandledLinking","independent","useEffect","process","env","NODE_ENV","console","error","join","trim","handler","Symbol","push","indexOf","splice","useState","enabledRef","useRef","configRef","getStateFromPathRef","getPathFromStateRef","getActionFromStateRef","validateRoutesNotExistInRootState","useCallback","navigation","rootState","getRootState","some","r","routeNames","includes","name","server","useContext","getInitialState","value","location","window","path","pathname","search","e","thenable","onfulfilled","catch","previousIndexRef","previousStateRef","pendingPopStatePathRef","listen","previousIndex","get","currentState","currentFocused","recordFocused","goBack","resetRoot","action","dispatch","warn","message","getPathForRoute","stateForPath","focusedRoute","params","previousRoute","hash","replace","onStateChange","previousState","pendingPath","previousFocusedState","focusedState","historyDelta","nextIndex","backIndex","currentIndex","go","addListener"],"sourceRoot":"../../src","sources":["useLinking.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["findFocusedRoute","getActionFromState","getActionFromStateDefault","getPathFromState","getPathFromStateDefault","getStateFromPath","getStateFromPathDefault","useNavigationIndependentTree","isEqual","React","createMemoryHistory","ServerContext","getRoutesUntilIndex","state","routes","slice","index","getHistoryLength","history","length","findMatchingState","a","b","undefined","key","aHistoryLength","bHistoryLength","aRoute","bRoute","aChildState","bChildState","isPoppingLastEntry","current","record","currentRoutes","recordRoutes","every","route","i","series","cb","queue","Promise","resolve","callback","then","linkingHandlers","useLinking","ref","enabled","config","independent","useEffect","process","env","NODE_ENV","console","error","join","trim","handler","Symbol","push","indexOf","splice","useState","enabledRef","useRef","configRef","getStateFromPathRef","getPathFromStateRef","getActionFromStateRef","validateRoutesNotExistInRootState","useCallback","navigation","rootState","getRootState","some","r","routeNames","includes","name","server","useContext","getInitialState","value","location","window","path","pathname","search","e","thenable","onfulfilled","catch","previousIndexRef","previousStateRef","pendingPopStatePathRef","listen","previousIndex","get","currentState","currentFocused","recordFocused","goBack","resetRoot","action","dispatch","warn","message","getPathForRoute","stateForPath","focusedRoute","params","previousRoute","hash","replace","onStateChange","previousState","pendingPath","previousFocusedState","focusedState","historyDelta","nextIndex","backIndex","currentIndex","go","addListener"],"sourceRoot":"../../src","sources":["useLinking.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -35,7 +35,7 @@ export function useLinking(ref, {
|
|
|
35
35
|
},
|
|
36
36
|
getStateFromPath = getStateFromPathDefault,
|
|
37
37
|
getActionFromState = getActionFromStateDefault
|
|
38
|
-
}
|
|
38
|
+
}) {
|
|
39
39
|
const independent = useNavigationIndependentTree();
|
|
40
40
|
React.useEffect(() => {
|
|
41
41
|
if (process.env.NODE_ENV === 'production') {
|
|
@@ -44,14 +44,22 @@ export function useLinking(ref, {
|
|
|
44
44
|
if (independent) {
|
|
45
45
|
return undefined;
|
|
46
46
|
}
|
|
47
|
-
if (enabled !== false && linkingHandlers.length) {
|
|
48
|
-
console.error(['Looks like you have configured linking in multiple places. This is likely an error since deep links should only be handled in one place to avoid conflicts. Make sure that:', "- You don't have multiple NavigationContainers in the app each with 'linking' enabled", '- Only a single instance of the root component is rendered', Platform.OS === 'android' ? "- You have set 'android:launchMode=singleTask' in the '<activity />' section of the 'AndroidManifest.xml' file to avoid launching multiple instances" : ''].join('\n').trim());
|
|
49
|
-
}
|
|
50
47
|
const handler = Symbol();
|
|
51
48
|
if (enabled !== false) {
|
|
52
49
|
linkingHandlers.push(handler);
|
|
53
50
|
}
|
|
51
|
+
|
|
52
|
+
// In some cases, the effect cleanup may get called out of order
|
|
53
|
+
// This may result in multiple linking handlers being registered
|
|
54
|
+
// For example, when changing the wallpaper on Android
|
|
55
|
+
// Showing the error in a delay avoids false positives
|
|
56
|
+
const timer = setTimeout(() => {
|
|
57
|
+
if (enabled !== false && linkingHandlers.length && !(linkingHandlers.length === 1 && linkingHandlers.includes(handler))) {
|
|
58
|
+
console.error(['Looks like you have configured linking in multiple places. This is likely an error since deep links should only be handled in one place to avoid conflicts. Make sure that:', "- You don't have multiple NavigationContainers in the app each with 'linking' enabled", '- Only a single instance of the root component is rendered', Platform.OS === 'android' ? "- You have set 'android:launchMode=singleTask' in the '<activity />' section of the 'AndroidManifest.xml' file to avoid launching multiple instances" : ''].join('\n').trim());
|
|
59
|
+
}
|
|
60
|
+
}, 1000);
|
|
54
61
|
return () => {
|
|
62
|
+
clearTimeout(timer);
|
|
55
63
|
const index = linkingHandlers.indexOf(handler);
|
|
56
64
|
if (index > -1) {
|
|
57
65
|
linkingHandlers.splice(index, 1);
|
|
@@ -100,14 +108,8 @@ export function useLinking(ref, {
|
|
|
100
108
|
if (typeof url !== 'string') {
|
|
101
109
|
return url.then(url => {
|
|
102
110
|
const state = getStateFromURL(url);
|
|
103
|
-
if (typeof url === 'string') {
|
|
104
|
-
// If the link were handled, it gets cleared in NavigationContainer
|
|
105
|
-
onUnhandledLinking(extractPathFromURL(prefixes, url));
|
|
106
|
-
}
|
|
107
111
|
return state;
|
|
108
112
|
});
|
|
109
|
-
} else {
|
|
110
|
-
onUnhandledLinking(extractPathFromURL(prefixes, url));
|
|
111
113
|
}
|
|
112
114
|
}
|
|
113
115
|
state = getStateFromURL(url);
|
|
@@ -121,7 +123,7 @@ export function useLinking(ref, {
|
|
|
121
123
|
}
|
|
122
124
|
};
|
|
123
125
|
return thenable;
|
|
124
|
-
}, [getStateFromURL
|
|
126
|
+
}, [getStateFromURL]);
|
|
125
127
|
React.useEffect(() => {
|
|
126
128
|
const listener = url => {
|
|
127
129
|
if (!enabled) {
|
|
@@ -130,8 +132,6 @@ export function useLinking(ref, {
|
|
|
130
132
|
const navigation = ref.current;
|
|
131
133
|
const state = navigation ? getStateFromURL(url) : undefined;
|
|
132
134
|
if (navigation && state) {
|
|
133
|
-
// If the link were handled, it gets cleared in NavigationContainer
|
|
134
|
-
onUnhandledLinking(extractPathFromURL(prefixes, url));
|
|
135
135
|
const action = getActionFromStateRef.current(state, configRef.current);
|
|
136
136
|
if (action !== undefined) {
|
|
137
137
|
try {
|
|
@@ -147,7 +147,7 @@ export function useLinking(ref, {
|
|
|
147
147
|
}
|
|
148
148
|
};
|
|
149
149
|
return subscribe(listener);
|
|
150
|
-
}, [enabled, getStateFromURL,
|
|
150
|
+
}, [enabled, getStateFromURL, ref, subscribe]);
|
|
151
151
|
return {
|
|
152
152
|
getInitialState
|
|
153
153
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["getActionFromState","getActionFromStateDefault","getStateFromPath","getStateFromPathDefault","useNavigationIndependentTree","React","Linking","Platform","extractPathFromURL","linkingHandlers","useLinking","ref","enabled","prefixes","filter","config","getInitialURL","Promise","race","resolve","setTimeout","subscribe","listener","callback","url","subscription","addEventListener","removeEventListener","bind","remove","
|
|
1
|
+
{"version":3,"names":["getActionFromState","getActionFromStateDefault","getStateFromPath","getStateFromPathDefault","useNavigationIndependentTree","React","Linking","Platform","extractPathFromURL","linkingHandlers","useLinking","ref","enabled","prefixes","filter","config","getInitialURL","Promise","race","resolve","setTimeout","subscribe","listener","callback","url","subscription","addEventListener","removeEventListener","bind","remove","independent","useEffect","process","env","NODE_ENV","undefined","handler","Symbol","push","timer","length","includes","console","error","OS","join","trim","clearTimeout","index","indexOf","splice","enabledRef","useRef","prefixesRef","filterRef","configRef","getInitialURLRef","getStateFromPathRef","getActionFromStateRef","current","getStateFromURL","useCallback","path","e","getInitialState","state","then","thenable","onfulfilled","catch","navigation","action","dispatch","warn","message","resetRoot"],"sourceRoot":"../../src","sources":["useLinking.native.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NavigationContainer.d.ts","sourceRoot":"","sources":["../../../src/NavigationContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,wBAAwB,EAC7B,KAAK,sBAAsB,
|
|
1
|
+
{"version":3,"file":"NavigationContainer.d.ts","sourceRoot":"","sources":["../../../src/NavigationContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,wBAAwB,EAC7B,KAAK,sBAAsB,EAI5B,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,OAAO,KAAK,EACV,oBAAoB,EACpB,cAAc,EACd,eAAe,EAChB,MAAM,SAAS,CAAC;AAMjB,OAAO,CAAC,MAAM,CAAC;IACb,IAAI,yBAAyB,EAAE,OAAO,CACpC,sBAAsB,CAAC,GAAG,CAAC,EAC3B;QAAE,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC,GAAG,CAAC,CAAA;KAAE,CAC1C,CAAC;CACH;AAID,KAAK,KAAK,CAAC,SAAS,SAAS,EAAE,IAAI,wBAAwB,GAAG;IAC5D;;;;OAIG;IACH,YAAY,CAAC,EAAE,wBAAwB,CAAC,cAAc,CAAC,CAAC;IACxD;;OAEG;IACH,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B;;;;;OAKG;IACH,OAAO,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;IACpC;;;;OAIG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B;;;;;OAKG;IACH,aAAa,CAAC,EAAE,oBAAoB,CAAC;CACtC,CAAC;AAsFF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAE3B,CAAC,aAAa,SAAS,EAAE,GAAG,eAAe,CAAC,aAAa,EAC5D,KAAK,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG;IAC5B,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,sBAAsB,CAAC,aAAa,CAAC,CAAC,CAAC;CACxD,KACE,KAAK,CAAC,YAAY,CAAC"}
|
|
@@ -1,4 +1,10 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* This is unused, and currently does nothing.
|
|
4
|
+
* But left as an export to avoid breaking consumers who might be using it.
|
|
5
|
+
*
|
|
6
|
+
* @deprecated
|
|
7
|
+
*/
|
|
2
8
|
export declare const UnhandledLinkingContext: React.Context<{
|
|
3
9
|
lastUnhandledLink: string | undefined;
|
|
4
10
|
setLastUnhandledLink: (lastUnhandledUrl: string | undefined) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UnhandledLinkingContext.d.ts","sourceRoot":"","sources":["../../../src/UnhandledLinkingContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"UnhandledLinkingContext.d.ts","sourceRoot":"","sources":["../../../src/UnhandledLinkingContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB;uBACf,MAAM,GAAG,SAAS;0BACf,CAAC,gBAAgB,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI;EAIpE,CAAC"}
|
|
@@ -7,7 +7,7 @@ type ResultState = ReturnType<typeof getStateFromPathDefault>;
|
|
|
7
7
|
*/
|
|
8
8
|
export declare const series: (cb: () => Promise<void>) => () => void;
|
|
9
9
|
type Options = LinkingOptions<ParamListBase>;
|
|
10
|
-
export declare function useLinking(ref: React.RefObject<NavigationContainerRef<ParamListBase> | null>, { enabled, config, getStateFromPath, getPathFromState, getActionFromState, }: Options
|
|
10
|
+
export declare function useLinking(ref: React.RefObject<NavigationContainerRef<ParamListBase> | null>, { enabled, config, getStateFromPath, getPathFromState, getActionFromState, }: Options): {
|
|
11
11
|
getInitialState: () => PromiseLike<ResultState | undefined>;
|
|
12
12
|
};
|
|
13
13
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useLinking.d.ts","sourceRoot":"","sources":["../../../src/useLinking.tsx"],"names":[],"mappings":"AAAA,OAAO,EAIL,gBAAgB,IAAI,uBAAuB,EAC3C,KAAK,sBAAsB,EAE3B,KAAK,aAAa,EAEnB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE9C,KAAK,WAAW,GAAG,UAAU,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAuE9D;;GAEG;AACH,eAAO,MAAM,MAAM,GAAI,IAAI,MAAM,OAAO,CAAC,IAAI,CAAC,eAO7C,CAAC;AAIF,KAAK,OAAO,GAAG,cAAc,CAAC,aAAa,CAAC,CAAC;AAE7C,wBAAgB,UAAU,CACxB,GAAG,EAAE,KAAK,CAAC,SAAS,CAAC,sBAAsB,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,EAClE,EACE,OAAc,EACd,MAAM,EACN,gBAA0C,EAC1C,gBAA0C,EAC1C,kBAA8C,GAC/C,EAAE,OAAO
|
|
1
|
+
{"version":3,"file":"useLinking.d.ts","sourceRoot":"","sources":["../../../src/useLinking.tsx"],"names":[],"mappings":"AAAA,OAAO,EAIL,gBAAgB,IAAI,uBAAuB,EAC3C,KAAK,sBAAsB,EAE3B,KAAK,aAAa,EAEnB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE9C,KAAK,WAAW,GAAG,UAAU,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAuE9D;;GAEG;AACH,eAAO,MAAM,MAAM,GAAI,IAAI,MAAM,OAAO,CAAC,IAAI,CAAC,eAO7C,CAAC;AAIF,KAAK,OAAO,GAAG,cAAc,CAAC,aAAa,CAAC,CAAC;AAE7C,wBAAgB,UAAU,CACxB,GAAG,EAAE,KAAK,CAAC,SAAS,CAAC,sBAAsB,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,EAClE,EACE,OAAc,EACd,MAAM,EACN,gBAA0C,EAC1C,gBAA0C,EAC1C,kBAA8C,GAC/C,EAAE,OAAO;2BAsGW,WAAW,CAAC,WAAW,GAAG,SAAS,CAAC;EA6R1D"}
|
|
@@ -2,7 +2,7 @@ import { type NavigationContainerRef, type ParamListBase } from '@react-navigati
|
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
import type { LinkingOptions } from './types';
|
|
4
4
|
type Options = LinkingOptions<ParamListBase>;
|
|
5
|
-
export declare function useLinking(ref: React.RefObject<NavigationContainerRef<ParamListBase> | null>, { enabled, prefixes, filter, config, getInitialURL, subscribe, getStateFromPath, getActionFromState, }: Options
|
|
5
|
+
export declare function useLinking(ref: React.RefObject<NavigationContainerRef<ParamListBase> | null>, { enabled, prefixes, filter, config, getInitialURL, subscribe, getStateFromPath, getActionFromState, }: Options): {
|
|
6
6
|
getInitialState: () => PromiseLike<(Partial<Omit<Readonly<{
|
|
7
7
|
key: string;
|
|
8
8
|
index: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useLinking.native.d.ts","sourceRoot":"","sources":["../../../src/useLinking.native.tsx"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,sBAAsB,EAC3B,KAAK,aAAa,EAEnB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAI9C,KAAK,OAAO,GAAG,cAAc,CAAC,aAAa,CAAC,CAAC;AAI7C,wBAAgB,UAAU,CACxB,GAAG,EAAE,KAAK,CAAC,SAAS,CAAC,sBAAsB,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,EAClE,EACE,OAAc,EACd,QAAQ,EACR,MAAM,EACN,MAAM,EACN,aAQI,EACJ,SAmBC,EACD,gBAA0C,EAC1C,kBAA8C,GAC/C,EAAE,OAAO
|
|
1
|
+
{"version":3,"file":"useLinking.native.d.ts","sourceRoot":"","sources":["../../../src/useLinking.native.tsx"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,sBAAsB,EAC3B,KAAK,aAAa,EAEnB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAI9C,KAAK,OAAO,GAAG,cAAc,CAAC,aAAa,CAAC,CAAC;AAI7C,wBAAgB,UAAU,CACxB,GAAG,EAAE,KAAK,CAAC,SAAS,CAAC,sBAAsB,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,EAClE,EACE,OAAc,EACd,QAAQ,EACR,MAAM,EACN,MAAM,EACN,aAQI,EACJ,SAmBC,EACD,gBAA0C,EAC1C,kBAA8C,GAC/C,EAAE,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;EAsKX"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@react-navigation/native",
|
|
3
3
|
"description": "React Native integration for React Navigation",
|
|
4
|
-
"version": "7.2.
|
|
4
|
+
"version": "7.2.6",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"react-native",
|
|
7
7
|
"react-navigation",
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
"clean": "del lib"
|
|
43
43
|
},
|
|
44
44
|
"dependencies": {
|
|
45
|
-
"@react-navigation/core": "^7.
|
|
45
|
+
"@react-navigation/core": "^7.18.0",
|
|
46
46
|
"escape-string-regexp": "^4.0.0",
|
|
47
47
|
"fast-deep-equal": "^3.1.3",
|
|
48
48
|
"nanoid": "^3.3.11",
|
|
@@ -83,5 +83,5 @@
|
|
|
83
83
|
]
|
|
84
84
|
]
|
|
85
85
|
},
|
|
86
|
-
"gitHead": "
|
|
86
|
+
"gitHead": "a1039139c8dfc1fdf7ceef96640eaa6ee9c4a411"
|
|
87
87
|
}
|
|
@@ -5,14 +5,12 @@ import {
|
|
|
5
5
|
getStateFromPath,
|
|
6
6
|
type NavigationContainerProps,
|
|
7
7
|
type NavigationContainerRef,
|
|
8
|
-
type NavigationState,
|
|
9
8
|
type ParamListBase,
|
|
10
9
|
ThemeProvider,
|
|
11
10
|
validatePathConfig,
|
|
12
11
|
} from '@react-navigation/core';
|
|
13
12
|
import * as React from 'react';
|
|
14
13
|
import { I18nManager } from 'react-native';
|
|
15
|
-
import useLatestCallback from 'use-latest-callback';
|
|
16
14
|
|
|
17
15
|
import { LinkingContext } from './LinkingContext';
|
|
18
16
|
import { LocaleDirContext } from './LocaleDirContext';
|
|
@@ -22,7 +20,6 @@ import type {
|
|
|
22
20
|
LinkingOptions,
|
|
23
21
|
LocaleDirection,
|
|
24
22
|
} from './types';
|
|
25
|
-
import { UnhandledLinkingContext } from './UnhandledLinkingContext';
|
|
26
23
|
import { useBackButton } from './useBackButton';
|
|
27
24
|
import { useDocumentTitle } from './useDocumentTitle';
|
|
28
25
|
import { useLinking } from './useLinking';
|
|
@@ -77,8 +74,6 @@ function NavigationContainerInner(
|
|
|
77
74
|
linking,
|
|
78
75
|
fallback = null,
|
|
79
76
|
documentTitle,
|
|
80
|
-
onReady,
|
|
81
|
-
onStateChange,
|
|
82
77
|
...rest
|
|
83
78
|
}: Props<ParamListBase>,
|
|
84
79
|
ref?: React.Ref<NavigationContainerRef<ParamListBase> | null>
|
|
@@ -95,52 +90,14 @@ function NavigationContainerInner(
|
|
|
95
90
|
useBackButton(refContainer);
|
|
96
91
|
useDocumentTitle(refContainer, documentTitle);
|
|
97
92
|
|
|
98
|
-
const
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
refContainer,
|
|
104
|
-
{
|
|
105
|
-
enabled: isLinkingEnabled,
|
|
106
|
-
prefixes: [],
|
|
107
|
-
...linking,
|
|
108
|
-
},
|
|
109
|
-
setLastUnhandledLink
|
|
110
|
-
);
|
|
93
|
+
const { getInitialState } = useLinking(refContainer, {
|
|
94
|
+
enabled: isLinkingEnabled,
|
|
95
|
+
prefixes: [],
|
|
96
|
+
...linking,
|
|
97
|
+
});
|
|
111
98
|
|
|
112
99
|
const linkingContext = React.useMemo(() => ({ options: linking }), [linking]);
|
|
113
100
|
|
|
114
|
-
const unhandledLinkingContext = React.useMemo(
|
|
115
|
-
() => ({ lastUnhandledLink, setLastUnhandledLink }),
|
|
116
|
-
[lastUnhandledLink, setLastUnhandledLink]
|
|
117
|
-
);
|
|
118
|
-
|
|
119
|
-
const onReadyForLinkingHandling = useLatestCallback(() => {
|
|
120
|
-
// If the screen path matches lastUnhandledLink, we do not track it
|
|
121
|
-
const path = refContainer.current?.getCurrentRoute()?.path;
|
|
122
|
-
setLastUnhandledLink((previousLastUnhandledLink) => {
|
|
123
|
-
if (previousLastUnhandledLink === path) {
|
|
124
|
-
return undefined;
|
|
125
|
-
}
|
|
126
|
-
return previousLastUnhandledLink;
|
|
127
|
-
});
|
|
128
|
-
onReady?.();
|
|
129
|
-
});
|
|
130
|
-
|
|
131
|
-
const onStateChangeForLinkingHandling = useLatestCallback(
|
|
132
|
-
(state: Readonly<NavigationState> | undefined) => {
|
|
133
|
-
// If the screen path matches lastUnhandledLink, we do not track it
|
|
134
|
-
const path = refContainer.current?.getCurrentRoute()?.path;
|
|
135
|
-
setLastUnhandledLink((previousLastUnhandledLink) => {
|
|
136
|
-
if (previousLastUnhandledLink === path) {
|
|
137
|
-
return undefined;
|
|
138
|
-
}
|
|
139
|
-
return previousLastUnhandledLink;
|
|
140
|
-
});
|
|
141
|
-
onStateChange?.(state);
|
|
142
|
-
}
|
|
143
|
-
);
|
|
144
101
|
// Add additional linking related info to the ref
|
|
145
102
|
// This will be used by the devtools
|
|
146
103
|
React.useEffect(() => {
|
|
@@ -180,20 +137,16 @@ function NavigationContainerInner(
|
|
|
180
137
|
|
|
181
138
|
return (
|
|
182
139
|
<LocaleDirContext.Provider value={direction}>
|
|
183
|
-
<
|
|
184
|
-
<
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
ref={refContainer}
|
|
194
|
-
/>
|
|
195
|
-
</LinkingContext.Provider>
|
|
196
|
-
</UnhandledLinkingContext.Provider>
|
|
140
|
+
<LinkingContext.Provider value={linkingContext}>
|
|
141
|
+
<BaseNavigationContainer
|
|
142
|
+
{...rest}
|
|
143
|
+
theme={theme}
|
|
144
|
+
initialState={
|
|
145
|
+
rest.initialState == null ? initialState : rest.initialState
|
|
146
|
+
}
|
|
147
|
+
ref={refContainer}
|
|
148
|
+
/>
|
|
149
|
+
</LinkingContext.Provider>
|
|
197
150
|
</LocaleDirContext.Provider>
|
|
198
151
|
);
|
|
199
152
|
}
|
|
@@ -1,18 +1,17 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
/**
|
|
4
|
+
* This is unused, and currently does nothing.
|
|
5
|
+
* But left as an export to avoid breaking consumers who might be using it.
|
|
6
|
+
*
|
|
7
|
+
* @deprecated
|
|
8
|
+
*/
|
|
6
9
|
export const UnhandledLinkingContext = React.createContext<{
|
|
7
10
|
lastUnhandledLink: string | undefined;
|
|
8
11
|
setLastUnhandledLink: (lastUnhandledUrl: string | undefined) => void;
|
|
9
12
|
}>({
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
},
|
|
13
|
-
get setLastUnhandledLink(): any {
|
|
14
|
-
throw new Error(MISSING_CONTEXT_ERROR);
|
|
15
|
-
},
|
|
13
|
+
lastUnhandledLink: undefined,
|
|
14
|
+
setLastUnhandledLink: () => {},
|
|
16
15
|
});
|
|
17
16
|
|
|
18
17
|
UnhandledLinkingContext.displayName = 'UnhandledLinkingContext';
|
|
@@ -55,8 +55,7 @@ export function useLinking(
|
|
|
55
55
|
},
|
|
56
56
|
getStateFromPath = getStateFromPathDefault,
|
|
57
57
|
getActionFromState = getActionFromStateDefault,
|
|
58
|
-
}: Options
|
|
59
|
-
onUnhandledLinking: (lastUnhandledLining: string | undefined) => void
|
|
58
|
+
}: Options
|
|
60
59
|
) {
|
|
61
60
|
const independent = useNavigationIndependentTree();
|
|
62
61
|
|
|
@@ -69,28 +68,40 @@ export function useLinking(
|
|
|
69
68
|
return undefined;
|
|
70
69
|
}
|
|
71
70
|
|
|
72
|
-
if (enabled !== false && linkingHandlers.length) {
|
|
73
|
-
console.error(
|
|
74
|
-
[
|
|
75
|
-
'Looks like you have configured linking in multiple places. This is likely an error since deep links should only be handled in one place to avoid conflicts. Make sure that:',
|
|
76
|
-
"- You don't have multiple NavigationContainers in the app each with 'linking' enabled",
|
|
77
|
-
'- Only a single instance of the root component is rendered',
|
|
78
|
-
Platform.OS === 'android'
|
|
79
|
-
? "- You have set 'android:launchMode=singleTask' in the '<activity />' section of the 'AndroidManifest.xml' file to avoid launching multiple instances"
|
|
80
|
-
: '',
|
|
81
|
-
]
|
|
82
|
-
.join('\n')
|
|
83
|
-
.trim()
|
|
84
|
-
);
|
|
85
|
-
}
|
|
86
|
-
|
|
87
71
|
const handler = Symbol();
|
|
88
72
|
|
|
89
73
|
if (enabled !== false) {
|
|
90
74
|
linkingHandlers.push(handler);
|
|
91
75
|
}
|
|
92
76
|
|
|
77
|
+
// In some cases, the effect cleanup may get called out of order
|
|
78
|
+
// This may result in multiple linking handlers being registered
|
|
79
|
+
// For example, when changing the wallpaper on Android
|
|
80
|
+
// Showing the error in a delay avoids false positives
|
|
81
|
+
const timer = setTimeout(() => {
|
|
82
|
+
if (
|
|
83
|
+
enabled !== false &&
|
|
84
|
+
linkingHandlers.length &&
|
|
85
|
+
!(linkingHandlers.length === 1 && linkingHandlers.includes(handler))
|
|
86
|
+
) {
|
|
87
|
+
console.error(
|
|
88
|
+
[
|
|
89
|
+
'Looks like you have configured linking in multiple places. This is likely an error since deep links should only be handled in one place to avoid conflicts. Make sure that:',
|
|
90
|
+
"- You don't have multiple NavigationContainers in the app each with 'linking' enabled",
|
|
91
|
+
'- Only a single instance of the root component is rendered',
|
|
92
|
+
Platform.OS === 'android'
|
|
93
|
+
? "- You have set 'android:launchMode=singleTask' in the '<activity />' section of the 'AndroidManifest.xml' file to avoid launching multiple instances"
|
|
94
|
+
: '',
|
|
95
|
+
]
|
|
96
|
+
.join('\n')
|
|
97
|
+
.trim()
|
|
98
|
+
);
|
|
99
|
+
}
|
|
100
|
+
}, 1000);
|
|
101
|
+
|
|
93
102
|
return () => {
|
|
103
|
+
clearTimeout(timer);
|
|
104
|
+
|
|
94
105
|
const index = linkingHandlers.indexOf(handler);
|
|
95
106
|
|
|
96
107
|
if (index > -1) {
|
|
@@ -152,15 +163,8 @@ export function useLinking(
|
|
|
152
163
|
return url.then((url) => {
|
|
153
164
|
const state = getStateFromURL(url);
|
|
154
165
|
|
|
155
|
-
if (typeof url === 'string') {
|
|
156
|
-
// If the link were handled, it gets cleared in NavigationContainer
|
|
157
|
-
onUnhandledLinking(extractPathFromURL(prefixes, url));
|
|
158
|
-
}
|
|
159
|
-
|
|
160
166
|
return state;
|
|
161
167
|
});
|
|
162
|
-
} else {
|
|
163
|
-
onUnhandledLinking(extractPathFromURL(prefixes, url));
|
|
164
168
|
}
|
|
165
169
|
}
|
|
166
170
|
|
|
@@ -177,7 +181,7 @@ export function useLinking(
|
|
|
177
181
|
};
|
|
178
182
|
|
|
179
183
|
return thenable as PromiseLike<ResultState | undefined>;
|
|
180
|
-
}, [getStateFromURL
|
|
184
|
+
}, [getStateFromURL]);
|
|
181
185
|
|
|
182
186
|
React.useEffect(() => {
|
|
183
187
|
const listener = (url: string) => {
|
|
@@ -189,9 +193,6 @@ export function useLinking(
|
|
|
189
193
|
const state = navigation ? getStateFromURL(url) : undefined;
|
|
190
194
|
|
|
191
195
|
if (navigation && state) {
|
|
192
|
-
// If the link were handled, it gets cleared in NavigationContainer
|
|
193
|
-
onUnhandledLinking(extractPathFromURL(prefixes, url));
|
|
194
|
-
|
|
195
196
|
const action = getActionFromStateRef.current(state, configRef.current);
|
|
196
197
|
|
|
197
198
|
if (action !== undefined) {
|
|
@@ -215,7 +216,7 @@ export function useLinking(
|
|
|
215
216
|
};
|
|
216
217
|
|
|
217
218
|
return subscribe(listener);
|
|
218
|
-
}, [enabled, getStateFromURL,
|
|
219
|
+
}, [enabled, getStateFromURL, ref, subscribe]);
|
|
219
220
|
|
|
220
221
|
return {
|
|
221
222
|
getInitialState,
|
package/src/useLinking.tsx
CHANGED
|
@@ -110,8 +110,7 @@ export function useLinking(
|
|
|
110
110
|
getStateFromPath = getStateFromPathDefault,
|
|
111
111
|
getPathFromState = getPathFromStateDefault,
|
|
112
112
|
getActionFromState = getActionFromStateDefault,
|
|
113
|
-
}: Options
|
|
114
|
-
onUnhandledLinking: (lastUnhandledLining: string | undefined) => void
|
|
113
|
+
}: Options
|
|
115
114
|
) {
|
|
116
115
|
const independent = useNavigationIndependentTree();
|
|
117
116
|
|
|
@@ -202,9 +201,6 @@ export function useLinking(
|
|
|
202
201
|
value = undefined;
|
|
203
202
|
}
|
|
204
203
|
}
|
|
205
|
-
|
|
206
|
-
// If the link were handled, it gets cleared in NavigationContainer
|
|
207
|
-
onUnhandledLinking(path);
|
|
208
204
|
}
|
|
209
205
|
|
|
210
206
|
const thenable = {
|
|
@@ -287,8 +283,6 @@ export function useLinking(
|
|
|
287
283
|
// We should only dispatch an action when going forward
|
|
288
284
|
// Otherwise the action will likely add items to history, which would mess things up
|
|
289
285
|
if (state) {
|
|
290
|
-
// If the link were handled, it gets cleared in NavigationContainer
|
|
291
|
-
onUnhandledLinking(path);
|
|
292
286
|
// Make sure that the routes in the state exist in the root navigator
|
|
293
287
|
// Otherwise there's an error in the linking configuration
|
|
294
288
|
if (validateRoutesNotExistInRootState(state)) {
|
|
@@ -326,13 +320,7 @@ export function useLinking(
|
|
|
326
320
|
navigation.resetRoot(state);
|
|
327
321
|
}
|
|
328
322
|
});
|
|
329
|
-
}, [
|
|
330
|
-
enabled,
|
|
331
|
-
history,
|
|
332
|
-
onUnhandledLinking,
|
|
333
|
-
ref,
|
|
334
|
-
validateRoutesNotExistInRootState,
|
|
335
|
-
]);
|
|
323
|
+
}, [enabled, history, ref, validateRoutesNotExistInRootState]);
|
|
336
324
|
|
|
337
325
|
React.useEffect(() => {
|
|
338
326
|
if (!enabled) {
|