@react-navigation/native 7.2.4 → 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.
@@ -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
- }, setLastUnhandledLink);
36
+ });
42
37
  const linkingContext = React.useMemo(() => ({
43
38
  options: linking
44
39
  }), [linking]);
45
- const unhandledLinkingContext = React.useMemo(() => ({
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(UnhandledLinkingContext.Provider, {
107
- value: unhandledLinkingContext,
108
- children: /*#__PURE__*/_jsx(LinkingContext.Provider, {
109
- value: linkingContext,
110
- children: /*#__PURE__*/_jsx(BaseNavigationContainer, {
111
- ...rest,
112
- theme: theme,
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","useLatestCallback","LinkingContext","LocaleDirContext","DefaultTheme","UnhandledLinkingContext","useBackButton","useDocumentTitle","useLinking","useThenable","jsx","_jsx","globalThis","REACT_NAVIGATION_DEVTOOLS","WeakMap","NavigationContainerInner","direction","getConstants","isRTL","theme","linking","fallback","documentTitle","onReady","onStateChange","rest","ref","isLinkingEnabled","enabled","config","refContainer","useRef","lastUnhandledLink","setLastUnhandledLink","useState","getInitialState","prefixes","linkingContext","useMemo","options","unhandledLinkingContext","onReadyForLinkingHandling","path","current","getCurrentRoute","previousLastUnhandledLink","undefined","onStateChangeForLinkingHandling","state","useEffect","set","isResolved","initialState","useImperativeHandle","isLinkingReady","Provider","value","children","NavigationContainer","forwardRef"],"sourceRoot":"../../src","sources":["NavigationContainer.tsx"],"mappings":"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","ignoreList":[]}
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
- const MISSING_CONTEXT_ERROR = "Couldn't find an UnhandledLinkingContext context.";
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
- get lastUnhandledLink() {
7
- throw new Error(MISSING_CONTEXT_ERROR);
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","MISSING_CONTEXT_ERROR","UnhandledLinkingContext","createContext","lastUnhandledLink","Error","setLastUnhandledLink","displayName"],"sourceRoot":"../../src","sources":["UnhandledLinkingContext.tsx"],"mappings":";;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAE9B,MAAMC,qBAAqB,GACzB,mDAAmD;AAErD,OAAO,MAAMC,uBAAuB,gBAAGF,KAAK,CAACG,aAAa,CAGvD;EACD,IAAIC,iBAAiBA,CAAA,EAAQ;IAC3B,MAAM,IAAIC,KAAK,CAACJ,qBAAqB,CAAC;EACxC,CAAC;EACD,IAAIK,oBAAoBA,CAAA,EAAQ;IAC9B,MAAM,IAAID,KAAK,CAACJ,qBAAqB,CAAC;EACxC;AACF,CAAC,CAAC;AAEFC,uBAAuB,CAACK,WAAW,GAAG,yBAAyB","ignoreList":[]}
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":[]}
@@ -71,7 +71,7 @@ export function useLinking(ref, {
71
71
  getStateFromPath = getStateFromPathDefault,
72
72
  getPathFromState = getPathFromStateDefault,
73
73
  getActionFromState = getActionFromStateDefault
74
- }, onUnhandledLinking) {
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, onUnhandledLinking, ref, validateRoutesNotExistInRootState]);
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
- }, onUnhandledLinking) {
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, onUnhandledLinking, prefixes]);
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, onUnhandledLinking, prefixes, ref, subscribe]);
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","onUnhandledLinking","independent","useEffect","process","env","NODE_ENV","undefined","length","console","error","OS","join","trim","handler","Symbol","push","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
+ {"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,EAK5B,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,OAAO,KAAK,EACV,oBAAoB,EACpB,cAAc,EACd,eAAe,EAChB,MAAM,SAAS,CAAC;AAOjB,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;AAkIF;;;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
+ {"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;AAK/B,eAAO,MAAM,uBAAuB;uBACf,MAAM,GAAG,SAAS;0BACf,CAAC,gBAAgB,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI;EAQpE,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, onUnhandledLinking: (lastUnhandledLining: string | undefined) => void): {
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,EACV,kBAAkB,EAAE,CAAC,mBAAmB,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI;2BAyGhD,WAAW,CAAC,WAAW,GAAG,SAAS,CAAC;EAqS1D"}
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, onUnhandledLinking: (lastUnhandledLining: string | undefined) => void): {
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,EACV,kBAAkB,EAAE,CAAC,mBAAmB,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;EAoKtE"}
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",
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.17.4",
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": "01ae31e084223989654cbaafeffc88b4448b5d4f"
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 [lastUnhandledLink, setLastUnhandledLink] = React.useState<
99
- string | undefined
100
- >();
101
-
102
- const { getInitialState } = useLinking(
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
- <UnhandledLinkingContext.Provider value={unhandledLinkingContext}>
184
- <LinkingContext.Provider value={linkingContext}>
185
- <BaseNavigationContainer
186
- {...rest}
187
- theme={theme}
188
- onReady={onReadyForLinkingHandling}
189
- onStateChange={onStateChangeForLinkingHandling}
190
- initialState={
191
- rest.initialState == null ? initialState : rest.initialState
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
- const MISSING_CONTEXT_ERROR =
4
- "Couldn't find an UnhandledLinkingContext context.";
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
- get lastUnhandledLink(): any {
11
- throw new Error(MISSING_CONTEXT_ERROR);
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, onUnhandledLinking, prefixes]);
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, onUnhandledLinking, prefixes, ref, subscribe]);
219
+ }, [enabled, getStateFromURL, ref, subscribe]);
219
220
 
220
221
  return {
221
222
  getInitialState,
@@ -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) {