@react-navigation/core 7.21.5 → 7.21.7
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/BaseNavigationContainer.js +14 -8
- package/lib/module/BaseNavigationContainer.js.map +1 -1
- package/lib/module/ConsumedParamsContext.js.map +1 -1
- package/lib/module/NavigationIndependentTree.js +8 -4
- package/lib/module/NavigationIndependentTree.js.map +1 -1
- package/lib/module/SceneView.js +16 -39
- package/lib/module/SceneView.js.map +1 -1
- package/lib/module/StaticNavigation.js +1 -1
- package/lib/module/StaticNavigation.js.map +1 -1
- package/lib/module/findFocusedRoute.js +3 -3
- package/lib/module/findFocusedRoute.js.map +1 -1
- package/lib/module/getActionFromState.js.map +1 -1
- package/lib/module/getPathFromState.js +75 -45
- package/lib/module/getPathFromState.js.map +1 -1
- package/lib/module/getPatternParts.js +15 -2
- package/lib/module/getPatternParts.js.map +1 -1
- package/lib/module/getStateFromPath.js +47 -21
- package/lib/module/getStateFromPath.js.map +1 -1
- package/lib/module/getStateFromRouteParams.js +24 -0
- package/lib/module/getStateFromRouteParams.js.map +1 -0
- package/lib/module/useFocusEvents.js +6 -2
- package/lib/module/useFocusEvents.js.map +1 -1
- package/lib/module/useLazyValue.js.map +1 -1
- package/lib/module/useNavigationBuilder.js +51 -27
- package/lib/module/useNavigationBuilder.js.map +1 -1
- package/lib/module/useOnAction.js +20 -2
- package/lib/module/useOnAction.js.map +1 -1
- package/lib/module/useOnPreventRemove.js +1 -3
- package/lib/module/useOnPreventRemove.js.map +1 -1
- package/lib/module/useRouteCache.js +1 -3
- package/lib/module/useRouteCache.js.map +1 -1
- package/lib/module/useSyncState.js +3 -2
- package/lib/module/useSyncState.js.map +1 -1
- package/lib/typescript/src/BaseNavigationContainer.d.ts.map +1 -1
- package/lib/typescript/src/ConsumedParamsContext.d.ts +1 -6
- package/lib/typescript/src/ConsumedParamsContext.d.ts.map +1 -1
- package/lib/typescript/src/EnsureSingleNavigator.d.ts +1 -1
- package/lib/typescript/src/EnsureSingleNavigator.d.ts.map +1 -1
- package/lib/typescript/src/NavigationIndependentTree.d.ts +1 -1
- package/lib/typescript/src/NavigationIndependentTree.d.ts.map +1 -1
- package/lib/typescript/src/NavigationProvider.d.ts +1 -1
- package/lib/typescript/src/NavigationProvider.d.ts.map +1 -1
- package/lib/typescript/src/PreventRemoveProvider.d.ts +1 -1
- package/lib/typescript/src/PreventRemoveProvider.d.ts.map +1 -1
- package/lib/typescript/src/SceneView.d.ts +2 -1
- package/lib/typescript/src/SceneView.d.ts.map +1 -1
- package/lib/typescript/src/StaticContainer.d.ts +1 -1
- package/lib/typescript/src/StaticContainer.d.ts.map +1 -1
- package/lib/typescript/src/findFocusedRoute.d.ts.map +1 -1
- package/lib/typescript/src/getPathFromState.d.ts.map +1 -1
- package/lib/typescript/src/getPatternParts.d.ts.map +1 -1
- package/lib/typescript/src/getStateFromPath.d.ts.map +1 -1
- package/lib/typescript/src/getStateFromRouteParams.d.ts +3 -0
- package/lib/typescript/src/getStateFromRouteParams.d.ts.map +1 -0
- package/lib/typescript/src/theming/ThemeProvider.d.ts +1 -1
- package/lib/typescript/src/theming/ThemeProvider.d.ts.map +1 -1
- package/lib/typescript/src/types.d.ts +15 -9
- package/lib/typescript/src/types.d.ts.map +1 -1
- package/lib/typescript/src/useComponent.d.ts +1 -1
- package/lib/typescript/src/useComponent.d.ts.map +1 -1
- package/lib/typescript/src/useFocusEvents.d.ts.map +1 -1
- package/lib/typescript/src/useLazyValue.d.ts.map +1 -1
- package/lib/typescript/src/useNavigationBuilder.d.ts +1 -1
- package/lib/typescript/src/useNavigationBuilder.d.ts.map +1 -1
- package/lib/typescript/src/useNavigationState.d.ts +1 -1
- package/lib/typescript/src/useNavigationState.d.ts.map +1 -1
- package/lib/typescript/src/useOnAction.d.ts.map +1 -1
- package/lib/typescript/src/useOnPreventRemove.d.ts.map +1 -1
- package/lib/typescript/src/useRouteCache.d.ts.map +1 -1
- package/lib/typescript/src/useSyncState.d.ts.map +1 -1
- package/package.json +7 -7
- package/src/BaseNavigationContainer.tsx +16 -10
- package/src/ConsumedParamsContext.tsx +1 -6
- package/src/NavigationIndependentTree.tsx +8 -5
- package/src/SceneView.tsx +18 -51
- package/src/StaticNavigation.tsx +2 -2
- package/src/findFocusedRoute.tsx +5 -3
- package/src/getActionFromState.tsx +3 -1
- package/src/getPathFromState.tsx +130 -59
- package/src/getPatternParts.tsx +15 -2
- package/src/getStateFromPath.tsx +76 -17
- package/src/getStateFromRouteParams.tsx +60 -0
- package/src/types.tsx +42 -24
- package/src/useDescriptors.tsx +1 -1
- package/src/useFocusEvents.tsx +7 -5
- package/src/useLazyValue.tsx +2 -2
- package/src/useNavigationBuilder.tsx +82 -37
- package/src/useOnAction.tsx +25 -0
- package/src/useOnPreventRemove.tsx +4 -3
- package/src/useRouteCache.tsx +1 -4
- package/src/useSyncState.tsx +3 -2
|
@@ -9,7 +9,6 @@ import { ConsumedParamsContext } from "./ConsumedParamsContext.js";
|
|
|
9
9
|
import { deepFreeze } from "./deepFreeze.js";
|
|
10
10
|
import { Group } from "./Group.js";
|
|
11
11
|
import { isArrayEqual } from "./isArrayEqual.js";
|
|
12
|
-
import { isRecordEqual } from "./isRecordEqual.js";
|
|
13
12
|
import { NavigationBuilderContext } from "./NavigationBuilderContext.js";
|
|
14
13
|
import { NavigationHelpersContext } from "./NavigationHelpersContext.js";
|
|
15
14
|
import { NavigationMetaContext } from "./NavigationMetaContext.js";
|
|
@@ -55,7 +54,7 @@ const isValidKey = key => key === undefined || typeof key === 'string' && key !=
|
|
|
55
54
|
*
|
|
56
55
|
* @param children React Elements to extract the config from.
|
|
57
56
|
*/
|
|
58
|
-
const getRouteConfigsFromChildren = (children,
|
|
57
|
+
const getRouteConfigsFromChildren = (children, groupKeys = [], groupOptions, groupLayout) => {
|
|
59
58
|
const configs = React.Children.toArray(children).reduce((acc, child) => {
|
|
60
59
|
if (/*#__PURE__*/React.isValidElement(child)) {
|
|
61
60
|
if (isScreen(child)) {
|
|
@@ -72,7 +71,7 @@ const getRouteConfigsFromChildren = (children, groupKey, groupOptions, groupLayo
|
|
|
72
71
|
throw new Error(`Got an invalid 'navigationKey' prop (${JSON.stringify(child.props.navigationKey)}) for the screen '${child.props.name}'. It must be a non-empty string or 'undefined'.`);
|
|
73
72
|
}
|
|
74
73
|
acc.push({
|
|
75
|
-
keys: [
|
|
74
|
+
keys: [...groupKeys, child.props.navigationKey],
|
|
76
75
|
options: groupOptions,
|
|
77
76
|
layout: groupLayout,
|
|
78
77
|
props: child.props
|
|
@@ -86,7 +85,7 @@ const getRouteConfigsFromChildren = (children, groupKey, groupOptions, groupLayo
|
|
|
86
85
|
|
|
87
86
|
// When we encounter a fragment or group, we need to dive into its children to extract the configs
|
|
88
87
|
// This is handy to conditionally define a group of screens
|
|
89
|
-
acc.push(...getRouteConfigsFromChildren(child.props.children, child.props.navigationKey,
|
|
88
|
+
acc.push(...getRouteConfigsFromChildren(child.props.children, child.props.navigationKey != null ? [...groupKeys, child.props.navigationKey] : groupKeys,
|
|
90
89
|
// FIXME
|
|
91
90
|
// @ts-expect-error: add validation
|
|
92
91
|
child.type !== Group ? groupOptions : groupOptions != null ? [...groupOptions, child.props.screenOptions] : [child.props.screenOptions], typeof child.props.screenLayout === 'function' ? child.props.screenLayout : groupLayout));
|
|
@@ -139,9 +138,15 @@ const getRouteConfigsFromChildren = (children, groupKey, groupOptions, groupLayo
|
|
|
139
138
|
}
|
|
140
139
|
return configs;
|
|
141
140
|
};
|
|
142
|
-
const getStateFromParams = params => {
|
|
141
|
+
const getStateFromParams = (params, type) => {
|
|
143
142
|
const state = params?.state;
|
|
144
143
|
if (isNavigationState(state)) {
|
|
144
|
+
if (state.type != null && state.type !== type) {
|
|
145
|
+
if (process.env.NODE_ENV !== 'production') {
|
|
146
|
+
console.error(`The state passed in the params is for a navigator of type '${state.type}', but it was passed to a navigator of type '${type}'. This can happen if the state was meant for a different navigator. The state will be discarded.`);
|
|
147
|
+
}
|
|
148
|
+
return undefined;
|
|
149
|
+
}
|
|
145
150
|
return state;
|
|
146
151
|
} else if (typeof params?.screen === 'string' && params?.initial !== false) {
|
|
147
152
|
return {
|
|
@@ -166,7 +171,7 @@ export function useNavigationBuilder(createRouter, options) {
|
|
|
166
171
|
const navigatorKey = useRegisterNavigator();
|
|
167
172
|
const route = React.useContext(NavigationRouteContext);
|
|
168
173
|
const consumedParams = React.useContext(ConsumedParamsContext);
|
|
169
|
-
const isNestedParamsConsumed = typeof route?.params === 'object' && route.params != null ? consumedParams?.
|
|
174
|
+
const isNestedParamsConsumed = typeof route?.params === 'object' && route.params != null ? consumedParams?.has(route.params) : false;
|
|
170
175
|
const {
|
|
171
176
|
children,
|
|
172
177
|
layout,
|
|
@@ -205,7 +210,7 @@ export function useNavigationBuilder(createRouter, options) {
|
|
|
205
210
|
throw new Error(`A navigator cannot contain multiple 'Screen' components with the same name (found duplicate screen named '${name}')`);
|
|
206
211
|
}
|
|
207
212
|
screens[name] = config;
|
|
208
|
-
routeKeyList[name] = config.keys
|
|
213
|
+
routeKeyList[name] = config.keys;
|
|
209
214
|
routeParamList[name] = config.props.initialParams;
|
|
210
215
|
Object.assign(routeGetIdList, {
|
|
211
216
|
[name]: config.props.getId
|
|
@@ -272,7 +277,7 @@ export function useNavigationBuilder(createRouter, options) {
|
|
|
272
277
|
}), true, undefined];
|
|
273
278
|
} else {
|
|
274
279
|
const paramsForState = isNestedParamsConsumed ? undefined : route?.params;
|
|
275
|
-
const stateFromParams = paramsForState ? getStateFromParams(paramsForState) : undefined;
|
|
280
|
+
const stateFromParams = paramsForState ? getStateFromParams(paramsForState, router.type) : undefined;
|
|
276
281
|
const stateBeforeInitialization = stateFromParams ?? currentState;
|
|
277
282
|
const hydratedState = stateBeforeInitialization == null ? router.getInitialState({
|
|
278
283
|
routeNames,
|
|
@@ -283,10 +288,13 @@ export function useNavigationBuilder(createRouter, options) {
|
|
|
283
288
|
routeParamList: initialRouteParamList,
|
|
284
289
|
routeGetIdList
|
|
285
290
|
});
|
|
286
|
-
if (stateBeforeInitialization != null && options.UNSTABLE_routeNamesChangeBehavior === 'lastUnhandled' && doesStateHaveOnlyInvalidRoutes(stateBeforeInitialization)) {
|
|
291
|
+
if (stateBeforeInitialization != null && isStateValid(stateBeforeInitialization) && options.UNSTABLE_routeNamesChangeBehavior === 'lastUnhandled' && doesStateHaveOnlyInvalidRoutes(stateBeforeInitialization)) {
|
|
287
292
|
return [stateBeforeInitialization, hydratedState, true, paramsForState];
|
|
288
293
|
}
|
|
289
|
-
return [undefined, hydratedState, false,
|
|
294
|
+
return [undefined, hydratedState, false,
|
|
295
|
+
// Current state is already initialized
|
|
296
|
+
// So params weren't used, and need to be handled later
|
|
297
|
+
isStateInitialized(currentState) ? undefined : paramsForState];
|
|
290
298
|
}
|
|
291
299
|
// We explicitly don't include routeNames, route.params etc. in the dep list
|
|
292
300
|
// below. We want to avoid forcing a new state to be calculated in those cases
|
|
@@ -300,6 +308,13 @@ export function useNavigationBuilder(createRouter, options) {
|
|
|
300
308
|
previousRouteKeyListRef.current = routeKeyList;
|
|
301
309
|
});
|
|
302
310
|
const previousRouteKeyList = previousRouteKeyListRef.current;
|
|
311
|
+
|
|
312
|
+
// Names of the screens whose navigation key changed since the last render
|
|
313
|
+
const routeKeyChanges = Object.keys(routeKeyList).filter(name => {
|
|
314
|
+
const current = routeKeyList[name];
|
|
315
|
+
const previous = previousRouteKeyList[name];
|
|
316
|
+
return current != null && previous != null && !isArrayEqual(current, previous);
|
|
317
|
+
});
|
|
303
318
|
const [unhandledState, setUnhandledState] = React.useState(stateBeforeInitialization);
|
|
304
319
|
|
|
305
320
|
// An unhandled state is state that didn't have any valid routes
|
|
@@ -316,44 +331,50 @@ export function useNavigationBuilder(createRouter, options) {
|
|
|
316
331
|
isStateInitialized(currentState) ? currentState : initializedState;
|
|
317
332
|
let nextState = state;
|
|
318
333
|
let shouldClearUnhandledState = false;
|
|
319
|
-
|
|
334
|
+
if (unhandledState != null && !isStateValid(unhandledState)) {
|
|
335
|
+
// The stored unhandled state is for a different type of navigator
|
|
336
|
+
// It can't be used with this navigator, so we discard it
|
|
337
|
+
setUnhandledState(undefined);
|
|
338
|
+
} else if (
|
|
320
339
|
// Previously unhandled state is now valid again
|
|
321
340
|
// And current state no longer has any valid routes
|
|
322
341
|
// We should reuse the unhandled state instead of re-calculating the state
|
|
323
|
-
|
|
342
|
+
unhandledState?.routes.every(r => routeNames.includes(r.name)) && state?.routes.every(r => !routeNames.includes(r.name))) {
|
|
324
343
|
shouldClearUnhandledState = true;
|
|
325
344
|
nextState = router.getRehydratedState(unhandledState, {
|
|
326
345
|
routeNames,
|
|
327
346
|
routeParamList,
|
|
328
347
|
routeGetIdList
|
|
329
348
|
});
|
|
330
|
-
} else if (!isArrayEqual(state.routeNames, routeNames) ||
|
|
349
|
+
} else if (!isArrayEqual(state.routeNames, routeNames) || routeKeyChanges.length !== 0) {
|
|
331
350
|
// When the list of route names change, the router should handle it to remove invalid routes
|
|
332
351
|
nextState = router.getStateForRouteNamesChange(state, {
|
|
333
352
|
routeNames,
|
|
334
353
|
routeParamList,
|
|
335
354
|
routeGetIdList,
|
|
336
|
-
routeKeyChanges
|
|
355
|
+
routeKeyChanges
|
|
337
356
|
});
|
|
338
357
|
}
|
|
339
358
|
let didConsumeNestedParams = route?.params === paramsUsedForInitialization;
|
|
340
359
|
if (route?.params && !didConsumeNestedParams) {
|
|
341
360
|
let action;
|
|
342
|
-
|
|
343
|
-
if (isNavigationState(stateFromParams) && !isNestedParamsConsumed) {
|
|
361
|
+
if (isNavigationState(route.params.state) && !isNestedParamsConsumed) {
|
|
344
362
|
didConsumeNestedParams = true;
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
363
|
+
const stateFromParams = getStateFromParams(route.params, router.type);
|
|
364
|
+
if (stateFromParams != null) {
|
|
365
|
+
if (options.UNSTABLE_routeNamesChangeBehavior === 'lastUnhandled' && doesStateHaveOnlyInvalidRoutes(stateFromParams)) {
|
|
366
|
+
if (stateFromParams !== unhandledState) {
|
|
367
|
+
setUnhandledState(stateFromParams);
|
|
368
|
+
}
|
|
369
|
+
} else {
|
|
370
|
+
// If the route was updated with new state, we should reset to it
|
|
371
|
+
action = CommonActions.reset(stateFromParams);
|
|
348
372
|
}
|
|
349
|
-
} else {
|
|
350
|
-
// If the route was updated with new state, we should reset to it
|
|
351
|
-
action = CommonActions.reset(stateFromParams);
|
|
352
373
|
}
|
|
353
374
|
} else if (typeof route.params.screen === 'string' && (route.params.initial === false && isFirstStateInitialization || !isNestedParamsConsumed)) {
|
|
354
375
|
didConsumeNestedParams = true;
|
|
355
376
|
if (options.UNSTABLE_routeNamesChangeBehavior === 'lastUnhandled' && !routeNames.includes(route.params.screen)) {
|
|
356
|
-
const state = getStateFromParams(route.params);
|
|
377
|
+
const state = getStateFromParams(route.params, router.type);
|
|
357
378
|
if (state != null && !deepEqual(state, unhandledState)) {
|
|
358
379
|
setUnhandledState(state);
|
|
359
380
|
}
|
|
@@ -378,18 +399,21 @@ export function useNavigationBuilder(createRouter, options) {
|
|
|
378
399
|
routeParamList,
|
|
379
400
|
routeGetIdList
|
|
380
401
|
}) : null;
|
|
402
|
+
if (process.env.NODE_ENV !== 'production' && action != null && updatedState === null) {
|
|
403
|
+
const names = routeNames.map(name => `'${name}'`).join(', ');
|
|
404
|
+
console.error(`The 'state' or 'screen' passed in the params couldn't be applied to the navigator with the screens: ${names}. This can happen if the params contain names of screens that don't exist in the navigator. The navigation specified in the params will be ignored.`);
|
|
405
|
+
}
|
|
381
406
|
nextState = updatedState !== null ? router.getRehydratedState(updatedState, {
|
|
382
407
|
routeNames,
|
|
383
408
|
routeParamList,
|
|
384
409
|
routeGetIdList
|
|
385
410
|
}) : nextState;
|
|
386
411
|
}
|
|
387
|
-
const setConsumedParams = consumedParams?.setConsumed;
|
|
388
412
|
React.useEffect(() => {
|
|
389
|
-
if (
|
|
390
|
-
|
|
413
|
+
if (consumedParams && didConsumeNestedParams && typeof route?.params === 'object' && route.params != null) {
|
|
414
|
+
consumedParams.set(route.params, true);
|
|
391
415
|
}
|
|
392
|
-
}, [didConsumeNestedParams, route?.params
|
|
416
|
+
}, [consumedParams, didConsumeNestedParams, route?.params]);
|
|
393
417
|
const shouldUpdate = state !== nextState;
|
|
394
418
|
useScheduleUpdate(() => {
|
|
395
419
|
if (shouldUpdate) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["CommonActions","deepEqual","React","isValidElementType","useLatestCallback","ConsumedParamsContext","deepFreeze","Group","isArrayEqual","isRecordEqual","NavigationBuilderContext","NavigationHelpersContext","NavigationMetaContext","NavigationRouteContext","NavigationStateContext","PreventRemoveProvider","Screen","PrivateValueStore","UnhandledActionContext","useChildListeners","useComponent","useCurrentRender","useDescriptors","useEventEmitter","useFocusedListenersChildrenAdapter","useFocusEvents","FocusedRouteKeyContext","useKeyedChildListeners","useLazyValue","useNavigationHelpers","NavigationStateListenerProvider","useOnAction","useOnGetState","useOnRouteFocus","useRegisterNavigator","useScheduleUpdate","jsx","_jsx","isNavigationState","state","Array","isArray","routes","isScreen","child","type","isGroup","Fragment","isValidKey","key","undefined","getRouteConfigsFromChildren","children","groupKey","groupOptions","groupLayout","configs","Children","toArray","reduce","acc","isValidElement","props","Error","name","JSON","stringify","navigationKey","push","keys","options","layout","screenOptions","screenLayout","String","process","env","NODE_ENV","forEach","config","component","getComponent","console","warn","test","getStateFromParams","params","screen","initial","path","useNavigationBuilder","createRouter","navigatorKey","route","useContext","consumedParams","isNestedParamsConsumed","isConsumed","screenListeners","UNSTABLE_router","rest","routeConfigs","router","initialRouteName","every","original","overrides","routeNames","map","length","screens","routeKeyList","routeParamList","routeGetIdList","join","initialParams","Object","assign","getId","isStateValid","useCallback","isStateInitialized","stale","doesStateHaveOnlyInvalidRoutes","r","includes","currentState","getState","getCurrentState","setState","setCurrentState","setKey","getKey","getIsInitial","stateCleanupRef","useRef","lastStateRef","current","stateBeforeInitialization","initializedState","isFirstStateInitialization","paramsUsedForInitialization","useMemo","getRehydratedState","initialRouteParamList","curr","initialParamsFromParams","getInitialState","paramsForState","stateFromParams","hydratedState","UNSTABLE_routeNamesChangeBehavior","previousRouteKeyListRef","useInsertionEffect","previousRouteKeyList","unhandledState","setUnhandledState","useState","nextState","shouldClearUnhandledState","getStateForRouteNamesChange","routeKeyChanges","filter","didConsumeNestedParams","action","reset","payload","merge","pop","updatedState","getStateForAction","setConsumedParams","setConsumed","useEffect","shouldUpdate","lastNotifiedStateRef","onEmitEvent","emitter","e","target","find","index","hasPerScreenListeners","some","listeners","navigation","descriptors","concat","cb","i","self","lastIndexOf","listener","emit","data","childListeners","addListener","keyedListeners","addKeyedListener","onAction","actionListeners","beforeRemoveListeners","beforeRemove","routerConfigOptions","onRouteFocus","onUnhandledActionParent","onUnhandledAction","id","focusedListeners","focus","getStateListeners","describe","NavigationContent","element","Provider","value"],"sourceRoot":"../../src","sources":["useNavigationBuilder.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["CommonActions","deepEqual","React","isValidElementType","useLatestCallback","ConsumedParamsContext","deepFreeze","Group","isArrayEqual","NavigationBuilderContext","NavigationHelpersContext","NavigationMetaContext","NavigationRouteContext","NavigationStateContext","PreventRemoveProvider","Screen","PrivateValueStore","UnhandledActionContext","useChildListeners","useComponent","useCurrentRender","useDescriptors","useEventEmitter","useFocusedListenersChildrenAdapter","useFocusEvents","FocusedRouteKeyContext","useKeyedChildListeners","useLazyValue","useNavigationHelpers","NavigationStateListenerProvider","useOnAction","useOnGetState","useOnRouteFocus","useRegisterNavigator","useScheduleUpdate","jsx","_jsx","isNavigationState","state","Array","isArray","routes","isScreen","child","type","isGroup","Fragment","isValidKey","key","undefined","getRouteConfigsFromChildren","children","groupKeys","groupOptions","groupLayout","configs","Children","toArray","reduce","acc","isValidElement","props","Error","name","JSON","stringify","navigationKey","push","keys","options","layout","screenOptions","screenLayout","String","process","env","NODE_ENV","forEach","config","component","getComponent","console","warn","test","getStateFromParams","params","error","screen","initial","path","useNavigationBuilder","createRouter","navigatorKey","route","useContext","consumedParams","isNestedParamsConsumed","has","screenListeners","UNSTABLE_router","rest","routeConfigs","router","initialRouteName","every","original","overrides","routeNames","map","length","screens","routeKeyList","routeParamList","routeGetIdList","initialParams","Object","assign","getId","isStateValid","useCallback","isStateInitialized","stale","doesStateHaveOnlyInvalidRoutes","r","includes","currentState","getState","getCurrentState","setState","setCurrentState","setKey","getKey","getIsInitial","stateCleanupRef","useRef","lastStateRef","current","stateBeforeInitialization","initializedState","isFirstStateInitialization","paramsUsedForInitialization","useMemo","getRehydratedState","initialRouteParamList","curr","initialParamsFromParams","getInitialState","paramsForState","stateFromParams","hydratedState","UNSTABLE_routeNamesChangeBehavior","previousRouteKeyListRef","useInsertionEffect","previousRouteKeyList","routeKeyChanges","filter","previous","unhandledState","setUnhandledState","useState","nextState","shouldClearUnhandledState","getStateForRouteNamesChange","didConsumeNestedParams","action","reset","payload","merge","pop","updatedState","getStateForAction","names","join","useEffect","set","shouldUpdate","lastNotifiedStateRef","onEmitEvent","emitter","e","target","find","index","hasPerScreenListeners","some","listeners","navigation","descriptors","concat","cb","i","self","lastIndexOf","listener","emit","data","childListeners","addListener","keyedListeners","addKeyedListener","onAction","actionListeners","beforeRemoveListeners","beforeRemove","routerConfigOptions","onRouteFocus","onUnhandledActionParent","onUnhandledAction","id","focusedListeners","focus","getStateListeners","describe","NavigationContent","element","Provider","value"],"sourceRoot":"../../src","sources":["useNavigationBuilder.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -27,7 +27,8 @@ export function useOnAction({
|
|
|
27
27
|
onAction: onActionParent,
|
|
28
28
|
onRouteFocus: onRouteFocusParent,
|
|
29
29
|
addListener: addListenerParent,
|
|
30
|
-
onDispatchAction
|
|
30
|
+
onDispatchAction,
|
|
31
|
+
flushUpdates
|
|
31
32
|
} = React.useContext(NavigationBuilderContext);
|
|
32
33
|
const navigationInChildEnabled = React.useContext(DeprecatedNavigationInChildContext);
|
|
33
34
|
const routerConfigOptionsRef = React.useRef(routerConfigOptions);
|
|
@@ -35,6 +36,10 @@ export function useOnAction({
|
|
|
35
36
|
routerConfigOptionsRef.current = routerConfigOptions;
|
|
36
37
|
});
|
|
37
38
|
const onAction = React.useCallback((action, visitedNavigators = new Set()) => {
|
|
39
|
+
// Apply any pending state updates scheduled during render before handling the action
|
|
40
|
+
// Otherwise the action will be handled with an outdated state,
|
|
41
|
+
// and the pending updates will overwrite the changes from the action
|
|
42
|
+
flushUpdates();
|
|
38
43
|
const state = getState();
|
|
39
44
|
|
|
40
45
|
// Since actions can bubble both up and down, they could come to the same navigator again
|
|
@@ -49,6 +54,13 @@ export function useOnAction({
|
|
|
49
54
|
// If a target is specified and set to current navigator, the action shouldn't bubble
|
|
50
55
|
// So instead of `null`, we use the state object for such cases to signal that action was handled
|
|
51
56
|
result = result === null && action.target === state.key ? state : result;
|
|
57
|
+
if (result !== null && result.stale !== false) {
|
|
58
|
+
// Some actions (e.g. `RESET`) may return a stale state from the router
|
|
59
|
+
// We rehydrate it before storing so the stored state is always usable
|
|
60
|
+
// Otherwise anything reading the state before the next render
|
|
61
|
+
// (e.g. another dispatch immediately after) would get an outdated state
|
|
62
|
+
result = router.getRehydratedState(result, routerConfigOptionsRef.current);
|
|
63
|
+
}
|
|
52
64
|
if (result !== null) {
|
|
53
65
|
if (state !== result) {
|
|
54
66
|
const isPrevented = shouldPreventRemove(emitter, beforeRemoveListeners, state.routes, result.routes, action);
|
|
@@ -56,6 +68,12 @@ export function useOnAction({
|
|
|
56
68
|
onDispatchAction(action, true);
|
|
57
69
|
return true;
|
|
58
70
|
}
|
|
71
|
+
if (getState() !== state) {
|
|
72
|
+
// Listeners for 'beforeRemove' may dispatch actions that change the state
|
|
73
|
+
// Then the result we have is outdated and would overwrite those changes
|
|
74
|
+
// So we handle the action again to calculate the result with the latest state
|
|
75
|
+
return onAction(action, new Set());
|
|
76
|
+
}
|
|
59
77
|
onDispatchAction(action, false);
|
|
60
78
|
setState(result);
|
|
61
79
|
} else {
|
|
@@ -91,7 +109,7 @@ export function useOnAction({
|
|
|
91
109
|
}
|
|
92
110
|
}
|
|
93
111
|
return false;
|
|
94
|
-
}, [actionListeners, beforeRemoveListeners, emitter, getState, navigationInChildEnabled, key, onActionParent, onDispatchAction, onRouteFocusParent, router, setState]);
|
|
112
|
+
}, [actionListeners, beforeRemoveListeners, emitter, flushUpdates, getState, navigationInChildEnabled, key, onActionParent, onDispatchAction, onRouteFocusParent, router, setState]);
|
|
95
113
|
useOnPreventRemove({
|
|
96
114
|
getState,
|
|
97
115
|
emitter,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","DeprecatedNavigationInChildContext","NavigationBuilderContext","shouldPreventRemove","useOnPreventRemove","useOnAction","router","getState","setState","key","actionListeners","beforeRemoveListeners","routerConfigOptions","emitter","onAction","onActionParent","onRouteFocus","onRouteFocusParent","addListener","addListenerParent","onDispatchAction","useContext","navigationInChildEnabled","routerConfigOptionsRef","useRef","useInsertionEffect","current","useCallback","action","visitedNavigators","Set","state","has","add","target","result","getStateForAction","isPrevented","routes","undefined","shouldFocus","shouldActionChangeFocus","type","i","length","listener","useEffect"],"sourceRoot":"../../src","sources":["useOnAction.tsx"],"mappings":";;AAOA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAE9B,SAASC,kCAAkC,QAAQ,yCAAsC;AACzF,SAGEC,wBAAwB,QACnB,+BAA4B;AAGnC,SAASC,mBAAmB,EAAEC,kBAAkB,QAAQ,yBAAsB;AAa9E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,WAAWA,CAAgC;EACzDC,MAAM;EACNC,QAAQ;EACRC,QAAQ;EACRC,GAAG;EACHC,eAAe;EACfC,qBAAqB;EACrBC,mBAAmB;EACnBC;AACc,CAAC,EAAE;EACjB,MAAM;IACJC,QAAQ,EAAEC,cAAc;IACxBC,YAAY,EAAEC,kBAAkB;IAChCC,WAAW,EAAEC,iBAAiB;IAC9BC;EACF,CAAC,
|
|
1
|
+
{"version":3,"names":["React","DeprecatedNavigationInChildContext","NavigationBuilderContext","shouldPreventRemove","useOnPreventRemove","useOnAction","router","getState","setState","key","actionListeners","beforeRemoveListeners","routerConfigOptions","emitter","onAction","onActionParent","onRouteFocus","onRouteFocusParent","addListener","addListenerParent","onDispatchAction","flushUpdates","useContext","navigationInChildEnabled","routerConfigOptionsRef","useRef","useInsertionEffect","current","useCallback","action","visitedNavigators","Set","state","has","add","target","result","getStateForAction","stale","getRehydratedState","isPrevented","routes","undefined","shouldFocus","shouldActionChangeFocus","type","i","length","listener","useEffect"],"sourceRoot":"../../src","sources":["useOnAction.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -9,9 +9,7 @@ export const shouldPreventRemove = (emitter, beforeRemoveListeners, currentRoute
|
|
|
9
9
|
|
|
10
10
|
// Call these in reverse order so last screens handle the event first
|
|
11
11
|
const removedRoutes = currentRoutes.filter(route => !nextRouteKeys.includes(route.key)).reverse();
|
|
12
|
-
const visitedRouteKeys =
|
|
13
|
-
// @ts-expect-error: add this property to mark that we've already emitted this action
|
|
14
|
-
action[VISITED_ROUTE_KEYS] ?? new Set();
|
|
12
|
+
const visitedRouteKeys = VISITED_ROUTE_KEYS in action && action[VISITED_ROUTE_KEYS] instanceof Set ? action[VISITED_ROUTE_KEYS] : new Set();
|
|
15
13
|
const beforeRemoveAction = {
|
|
16
14
|
...action,
|
|
17
15
|
[VISITED_ROUTE_KEYS]: visitedRouteKeys
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","NavigationBuilderContext","NavigationRouteContext","VISITED_ROUTE_KEYS","Symbol","shouldPreventRemove","emitter","beforeRemoveListeners","currentRoutes","nextRoutes","action","nextRouteKeys","map","route","key","removedRoutes","filter","includes","reverse","visitedRouteKeys","Set","beforeRemoveAction","has","isPrevented","add","event","emit","type","target","data","canPreventDefault","defaultPrevented","useOnPreventRemove","getState","addKeyedListener","useContext","routeKey","useEffect","state","routes"],"sourceRoot":"../../src","sources":["useOnPreventRemove.tsx"],"mappings":";;AAIA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAE9B,SAEEC,wBAAwB,QACnB,+BAA4B;AACnC,SAASC,sBAAsB,QAAQ,yBAAsB;AAU7D,MAAMC,kBAAkB,GAAGC,MAAM,CAAC,oBAAoB,CAAC;AAEvD,OAAO,MAAMC,mBAAmB,GAAGA,CACjCC,OAAkD,EAClDC,qBAA4E,EAC5EC,aAAgC,EAChCC,UAA0C,EAC1CC,MAAwB,KACrB;EACH,MAAMC,aAAa,GAAGF,UAAU,CAACG,GAAG,CAAEC,KAAK,IAAKA,KAAK,CAACC,GAAG,CAAC;;EAE1D;EACA,MAAMC,aAAa,GAAGP,aAAa,CAChCQ,MAAM,CAAEH,KAAK,IAAK,CAACF,aAAa,CAACM,QAAQ,CAACJ,KAAK,CAACC,GAAG,CAAC,CAAC,CACrDI,OAAO,CAAC,CAAC;EAEZ,MAAMC,
|
|
1
|
+
{"version":3,"names":["React","NavigationBuilderContext","NavigationRouteContext","VISITED_ROUTE_KEYS","Symbol","shouldPreventRemove","emitter","beforeRemoveListeners","currentRoutes","nextRoutes","action","nextRouteKeys","map","route","key","removedRoutes","filter","includes","reverse","visitedRouteKeys","Set","beforeRemoveAction","has","isPrevented","add","event","emit","type","target","data","canPreventDefault","defaultPrevented","useOnPreventRemove","getState","addKeyedListener","useContext","routeKey","useEffect","state","routes"],"sourceRoot":"../../src","sources":["useOnPreventRemove.tsx"],"mappings":";;AAIA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAE9B,SAEEC,wBAAwB,QACnB,+BAA4B;AACnC,SAASC,sBAAsB,QAAQ,yBAAsB;AAU7D,MAAMC,kBAAkB,GAAGC,MAAM,CAAC,oBAAoB,CAAC;AAEvD,OAAO,MAAMC,mBAAmB,GAAGA,CACjCC,OAAkD,EAClDC,qBAA4E,EAC5EC,aAAgC,EAChCC,UAA0C,EAC1CC,MAAwB,KACrB;EACH,MAAMC,aAAa,GAAGF,UAAU,CAACG,GAAG,CAAEC,KAAK,IAAKA,KAAK,CAACC,GAAG,CAAC;;EAE1D;EACA,MAAMC,aAAa,GAAGP,aAAa,CAChCQ,MAAM,CAAEH,KAAK,IAAK,CAACF,aAAa,CAACM,QAAQ,CAACJ,KAAK,CAACC,GAAG,CAAC,CAAC,CACrDI,OAAO,CAAC,CAAC;EAEZ,MAAMC,gBAAgB,GACpBhB,kBAAkB,IAAIO,MAAM,IAAIA,MAAM,CAACP,kBAAkB,CAAC,YAAYiB,GAAG,GACrEV,MAAM,CAACP,kBAAkB,CAAC,GAC1B,IAAIiB,GAAG,CAAS,CAAC;EAEvB,MAAMC,kBAAkB,GAAG;IACzB,GAAGX,MAAM;IACT,CAACP,kBAAkB,GAAGgB;EACxB,CAAC;EAED,KAAK,MAAMN,KAAK,IAAIE,aAAa,EAAE;IACjC,IAAII,gBAAgB,CAACG,GAAG,CAACT,KAAK,CAACC,GAAG,CAAC,EAAE;MACnC;MACA;IACF;;IAEA;IACA,MAAMS,WAAW,GAAGhB,qBAAqB,CAACM,KAAK,CAACC,GAAG,CAAC,GAAGO,kBAAkB,CAAC;IAE1E,IAAIE,WAAW,EAAE;MACf,OAAO,IAAI;IACb;IAEAJ,gBAAgB,CAACK,GAAG,CAACX,KAAK,CAACC,GAAG,CAAC;IAE/B,MAAMW,KAAK,GAAGnB,OAAO,CAACoB,IAAI,CAAC;MACzBC,IAAI,EAAE,cAAc;MACpBC,MAAM,EAAEf,KAAK,CAACC,GAAG;MACjBe,IAAI,EAAE;QAAEnB,MAAM,EAAEW;MAAmB,CAAC;MACpCS,iBAAiB,EAAE;IACrB,CAAC,CAAC;IAEF,IAAIL,KAAK,CAACM,gBAAgB,EAAE;MAC1B,OAAO,IAAI;IACb;EACF;EAEA,OAAO,KAAK;AACd,CAAC;AAED,OAAO,SAASC,kBAAkBA,CAAC;EACjCC,QAAQ;EACR3B,OAAO;EACPC;AACO,CAAC,EAAE;EACV,MAAM;IAAE2B;EAAiB,CAAC,GAAGlC,KAAK,CAACmC,UAAU,CAAClC,wBAAwB,CAAC;EACvE,MAAMY,KAAK,GAAGb,KAAK,CAACmC,UAAU,CAACjC,sBAAsB,CAAC;EACtD,MAAMkC,QAAQ,GAAGvB,KAAK,EAAEC,GAAG;EAE3Bd,KAAK,CAACqC,SAAS,CAAC,MAAM;IACpB,IAAID,QAAQ,EAAE;MACZ,OAAOF,gBAAgB,GAAG,cAAc,EAAEE,QAAQ,EAAG1B,MAAM,IAAK;QAC9D,MAAM4B,KAAK,GAAGL,QAAQ,CAAC,CAAC;QAExB,OAAO5B,mBAAmB,CACxBC,OAAO,EACPC,qBAAqB,EACrB+B,KAAK,CAACC,MAAM,EACZ,EAAE,EACF7B,MACF,CAAC;MACH,CAAC,CAAC;IACJ;EACF,CAAC,EAAE,CAACwB,gBAAgB,EAAE3B,qBAAqB,EAAED,OAAO,EAAE2B,QAAQ,EAAEG,QAAQ,CAAC,CAAC;AAC5E","ignoreList":[]}
|
|
@@ -35,9 +35,7 @@ export function useRouteCache(routes) {
|
|
|
35
35
|
// FIXME: since the state is updated with mutation, the route object cannot be frozen
|
|
36
36
|
// As a workaround, loop through the object and make the properties readonly
|
|
37
37
|
// Only needed once per proxy - skip if we're reusing a previously-frozen one
|
|
38
|
-
for (const key
|
|
39
|
-
// @ts-expect-error: this is fine since we are looping through the object
|
|
40
|
-
const value = proxy[key];
|
|
38
|
+
for (const [key, value] of Object.entries(proxy)) {
|
|
41
39
|
Object.defineProperty(proxy, key, {
|
|
42
40
|
enumerable: true,
|
|
43
41
|
configurable: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","isRecordEqual","CHILD_STATE","Symbol","useRouteCache","routes","cache","useMemo","current","Map","next","reduce","acc","route","previous","get","key","state","routeWithoutState","proxy","process","env","NODE_ENV","value","Object","defineProperty","enumerable","configurable","writable","set","useInsertionEffect","Array","from","values"],"sourceRoot":"../../src","sources":["useRouteCache.tsx"],"mappings":";;AACA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAE9B,SAASC,aAAa,QAAQ,oBAAiB;AAG/C;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,WAAW,GAAGC,MAAM,CAAC,aAAa,CAAC;;AAEhD;AACA;AACA;AACA;AACA,OAAO,SAASC,aAAaA,CAC3BC,MAAuB,EACvB;EACA;EACA,MAAMC,KAAK,GAAGN,KAAK,CAACO,OAAO,CACzB,OAAO;IAAEC,OAAO,EAAE,IAAIC,GAAG,CAAmC;EAAE,CAAC,CAAC,EAChE,EACF,CAAC;EAED,MAAMC,IAAI,GAAGL,MAAM,CAACM,MAAM,CAAC,CAACC,GAAG,EAAEC,KAAK,KAAK;IACzC,MAAMC,QAAQ,GAAGR,KAAK,CAACE,OAAO,CAACO,GAAG,CAACF,KAAK,CAACG,GAAG,CAAC;IAC7C,MAAM;MAAEC,KAAK;MAAE,GAAGC;IAAkB,CAAC,GAAGL,KAAK;IAE7C,IAAIM,KAAK;IAET,IAAIL,QAAQ,IAAIb,aAAa,CAACa,QAAQ,EAAEI,iBAAiB,CAAC,EAAE;MAC1D;MACAC,KAAK,GAAGL,QAAQ;IAClB,CAAC,MAAM;MACLK,KAAK,GAAGD,iBAAiB;IAC3B;IAEA,IAAIE,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,IAAIH,KAAK,KAAKL,QAAQ,EAAE;MAC/D;MACA;MACA;MACA,KAAK,
|
|
1
|
+
{"version":3,"names":["React","isRecordEqual","CHILD_STATE","Symbol","useRouteCache","routes","cache","useMemo","current","Map","next","reduce","acc","route","previous","get","key","state","routeWithoutState","proxy","process","env","NODE_ENV","value","Object","entries","defineProperty","enumerable","configurable","writable","set","useInsertionEffect","Array","from","values"],"sourceRoot":"../../src","sources":["useRouteCache.tsx"],"mappings":";;AACA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAE9B,SAASC,aAAa,QAAQ,oBAAiB;AAG/C;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,WAAW,GAAGC,MAAM,CAAC,aAAa,CAAC;;AAEhD;AACA;AACA;AACA;AACA,OAAO,SAASC,aAAaA,CAC3BC,MAAuB,EACvB;EACA;EACA,MAAMC,KAAK,GAAGN,KAAK,CAACO,OAAO,CACzB,OAAO;IAAEC,OAAO,EAAE,IAAIC,GAAG,CAAmC;EAAE,CAAC,CAAC,EAChE,EACF,CAAC;EAED,MAAMC,IAAI,GAAGL,MAAM,CAACM,MAAM,CAAC,CAACC,GAAG,EAAEC,KAAK,KAAK;IACzC,MAAMC,QAAQ,GAAGR,KAAK,CAACE,OAAO,CAACO,GAAG,CAACF,KAAK,CAACG,GAAG,CAAC;IAC7C,MAAM;MAAEC,KAAK;MAAE,GAAGC;IAAkB,CAAC,GAAGL,KAAK;IAE7C,IAAIM,KAAK;IAET,IAAIL,QAAQ,IAAIb,aAAa,CAACa,QAAQ,EAAEI,iBAAiB,CAAC,EAAE;MAC1D;MACAC,KAAK,GAAGL,QAAQ;IAClB,CAAC,MAAM;MACLK,KAAK,GAAGD,iBAAiB;IAC3B;IAEA,IAAIE,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,IAAIH,KAAK,KAAKL,QAAQ,EAAE;MAC/D;MACA;MACA;MACA,KAAK,MAAM,CAACE,GAAG,EAAEO,KAAK,CAAC,IAAIC,MAAM,CAACC,OAAO,CAACN,KAAK,CAAC,EAAE;QAChDK,MAAM,CAACE,cAAc,CAACP,KAAK,EAAEH,GAAG,EAAE;UAChCW,UAAU,EAAE,IAAI;UAChBC,YAAY,EAAE,IAAI;UAClBC,QAAQ,EAAE,KAAK;UACfN;QACF,CAAC,CAAC;MACJ;IACF;;IAEA;IACA,IAAIJ,KAAK,CAACjB,WAAW,CAAC,KAAKe,KAAK,EAAE;MAChCO,MAAM,CAACE,cAAc,CAACP,KAAK,EAAEjB,WAAW,EAAE;QACxCyB,UAAU,EAAE,KAAK;QACjBC,YAAY,EAAE,IAAI;QAClBL,KAAK,EAAEN;MACT,CAAC,CAAC;IACJ;IAEAL,GAAG,CAACkB,GAAG,CAACjB,KAAK,CAACG,GAAG,EAAEG,KAAK,CAAC;IAEzB,OAAOP,GAAG;EACZ,CAAC,EAAE,IAAIH,GAAG,CAAmC,CAAC,CAAC;EAE/CT,KAAK,CAAC+B,kBAAkB,CAAC,MAAM;IAC7BzB,KAAK,CAACE,OAAO,GAAGE,IAAI;EACtB,CAAC,CAAC;EAEF,OAAOsB,KAAK,CAACC,IAAI,CAACvB,IAAI,CAACwB,MAAM,CAAC,CAAC,CAAC;AAClC","ignoreList":[]}
|
|
@@ -19,8 +19,9 @@ const createStore = getInitialState => {
|
|
|
19
19
|
let didUpdate = false;
|
|
20
20
|
const setState = newState => {
|
|
21
21
|
state = deepFreeze(newState);
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
if (isBatching) {
|
|
23
|
+
didUpdate = true;
|
|
24
|
+
} else {
|
|
24
25
|
listeners.forEach(listener => listener());
|
|
25
26
|
}
|
|
26
27
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useLatestCallback","deepFreeze","createStore","getInitialState","listeners","initialized","state","getState","isBatching","didUpdate","setState","newState","forEach","listener","subscribe","callback","push","index","indexOf","splice","batchUpdates","useSyncState","store","useRef","current","useSyncExternalStore","useDebugValue","pendingUpdatesRef","scheduleUpdate","flushUpdates","pendingUpdates","length","reverse","update"],"sourceRoot":"../../src","sources":["useSyncState.tsx"],"mappings":";;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,OAAOC,iBAAiB,MAAM,qBAAqB;AAEnD,SAASC,UAAU,QAAQ,iBAAc;AAEzC,MAAMC,WAAW,GAAQC,eAAwB,IAAK;EACpD,MAAMC,SAAyB,GAAG,EAAE;EAEpC,IAAIC,WAAW,GAAG,KAAK;EACvB,IAAIC,KAAQ;EAEZ,MAAMC,QAAQ,GAAGA,CAAA,KAAM;IACrB,IAAIF,WAAW,EAAE;MACf,OAAOC,KAAK;IACd;IAEAD,WAAW,GAAG,IAAI;IAClBC,KAAK,GAAGL,UAAU,CAACE,eAAe,CAAC,CAAC,CAAC;IAErC,OAAOG,KAAK;EACd,CAAC;EAED,IAAIE,UAAU,GAAG,KAAK;EACtB,IAAIC,SAAS,GAAG,KAAK;EAErB,MAAMC,QAAQ,GAAIC,QAAW,IAAK;IAChCL,KAAK,GAAGL,UAAU,CAACU,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"names":["React","useLatestCallback","deepFreeze","createStore","getInitialState","listeners","initialized","state","getState","isBatching","didUpdate","setState","newState","forEach","listener","subscribe","callback","push","index","indexOf","splice","batchUpdates","useSyncState","store","useRef","current","useSyncExternalStore","useDebugValue","pendingUpdatesRef","scheduleUpdate","flushUpdates","pendingUpdates","length","reverse","update"],"sourceRoot":"../../src","sources":["useSyncState.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseNavigationContainer.d.ts","sourceRoot":"","sources":["../../../src/BaseNavigationContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,aAAa,EAGnB,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"BaseNavigationContainer.d.ts","sourceRoot":"","sources":["../../../src/BaseNavigationContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,aAAa,EAGnB,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAe/B,OAAO,KAAK,EAEV,wBAAwB,EACxB,sBAAsB,EACvB,MAAM,YAAS,CAAC;AA6CjB;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,uBAAuB,wHA8YnC,CAAC"}
|
|
@@ -1,8 +1,3 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
|
|
3
|
-
isConsumed: (params: object) => boolean;
|
|
4
|
-
setConsumed: (params: object) => void;
|
|
5
|
-
};
|
|
6
|
-
export declare const ConsumedParamsContext: React.Context<ConsumedParamsContextValue | undefined>;
|
|
7
|
-
export {};
|
|
2
|
+
export declare const ConsumedParamsContext: React.Context<WeakMap<object, true> | undefined>;
|
|
8
3
|
//# sourceMappingURL=ConsumedParamsContext.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConsumedParamsContext.d.ts","sourceRoot":"","sources":["../../../src/ConsumedParamsContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,
|
|
1
|
+
{"version":3,"file":"ConsumedParamsContext.d.ts","sourceRoot":"","sources":["../../../src/ConsumedParamsContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,eAAO,MAAM,qBAAqB,kDAEtB,CAAC"}
|
|
@@ -9,6 +9,6 @@ export declare const SingleNavigatorContext: React.Context<{
|
|
|
9
9
|
/**
|
|
10
10
|
* Component which ensures that there's only one navigator nested under it.
|
|
11
11
|
*/
|
|
12
|
-
export declare function EnsureSingleNavigator({ children }: Props):
|
|
12
|
+
export declare function EnsureSingleNavigator({ children }: Props): React.JSX.Element;
|
|
13
13
|
export {};
|
|
14
14
|
//# sourceMappingURL=EnsureSingleNavigator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EnsureSingleNavigator.d.ts","sourceRoot":"","sources":["../../../src/EnsureSingleNavigator.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,KAAK,KAAK,GAAG;IACX,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,CAAC;AAIF,eAAO,MAAM,sBAAsB;kBAEf,MAAM,GAAG,IAAI;oBACX,MAAM,GAAG,IAAI;cAGvB,CAAC;AAEb;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,QAAQ,EAAE,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"EnsureSingleNavigator.d.ts","sourceRoot":"","sources":["../../../src/EnsureSingleNavigator.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,KAAK,KAAK,GAAG;IACX,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,CAAC;AAIF,eAAO,MAAM,sBAAsB;kBAEf,MAAM,GAAG,IAAI;oBACX,MAAM,GAAG,IAAI;cAGvB,CAAC;AAEb;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,QAAQ,EAAE,EAAE,KAAK,qBAgCxD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NavigationIndependentTree.d.ts","sourceRoot":"","sources":["../../../src/NavigationIndependentTree.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"NavigationIndependentTree.d.ts","sourceRoot":"","sources":["../../../src/NavigationIndependentTree.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAQ/B;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,EACxC,QAAQ,GACT,EAAE;IACD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,qBAeA"}
|
|
@@ -14,6 +14,6 @@ type Props = {
|
|
|
14
14
|
* Component to provide the navigation and route contexts to its children.
|
|
15
15
|
*/
|
|
16
16
|
export declare const NamedRouteContextListContext: React.Context<Record<string, React.Context<Route<string>>> | undefined>;
|
|
17
|
-
export declare function NavigationProvider({ route, navigation, children }: Props):
|
|
17
|
+
export declare function NavigationProvider({ route, navigation, children }: Props): React.JSX.Element;
|
|
18
18
|
export {};
|
|
19
19
|
//# sourceMappingURL=NavigationProvider.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NavigationProvider.d.ts","sourceRoot":"","sources":["../../../src/NavigationProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAS,CAAC;AAG9C;;GAEG;AACH,eAAO,MAAM,sBAAsB,0CAEvB,CAAC;AAEb,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACrB,UAAU,EAAE,cAAc,CAAC,aAAa,CAAC,CAAC;IAC1C,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,4BAA4B,yEAE7B,CAAC;AAEb,wBAAgB,kBAAkB,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"NavigationProvider.d.ts","sourceRoot":"","sources":["../../../src/NavigationProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAS,CAAC;AAG9C;;GAEG;AACH,eAAO,MAAM,sBAAsB,0CAEvB,CAAC;AAEb,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACrB,UAAU,EAAE,cAAc,CAAC,aAAa,CAAC,CAAC;IAC1C,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,4BAA4B,yEAE7B,CAAC;AAEb,wBAAgB,kBAAkB,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,KAAK,qBAqBxE"}
|
|
@@ -5,6 +5,6 @@ type Props = {
|
|
|
5
5
|
/**
|
|
6
6
|
* Component used for managing which routes have to be prevented from removal in native-stack.
|
|
7
7
|
*/
|
|
8
|
-
export declare function PreventRemoveProvider({ children }: Props):
|
|
8
|
+
export declare function PreventRemoveProvider({ children }: Props): React.JSX.Element;
|
|
9
9
|
export {};
|
|
10
10
|
//# sourceMappingURL=PreventRemoveProvider.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PreventRemoveProvider.d.ts","sourceRoot":"","sources":["../../../src/PreventRemoveProvider.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAU/B,KAAK,KAAK,GAAG;IACX,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,CAAC;AAmBF;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,QAAQ,EAAE,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"PreventRemoveProvider.d.ts","sourceRoot":"","sources":["../../../src/PreventRemoveProvider.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAU/B,KAAK,KAAK,GAAG;IACX,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,CAAC;AAmBF;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,QAAQ,EAAE,EAAE,KAAK,qBAkGxD"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { NavigationState, ParamListBase, PartialState, Route } from '@react-navigation/routers';
|
|
2
|
+
import * as React from 'react';
|
|
2
3
|
import type { NavigationProp, RouteConfigComponent } from './types.js';
|
|
3
4
|
type Props<State extends NavigationState, ScreenOptions extends {}> = {
|
|
4
5
|
screen: RouteConfigComponent<ParamListBase, string> & {
|
|
@@ -16,6 +17,6 @@ type Props<State extends NavigationState, ScreenOptions extends {}> = {
|
|
|
16
17
|
* Component which takes care of rendering the screen for a route.
|
|
17
18
|
* It provides all required contexts and applies optimizations when applicable.
|
|
18
19
|
*/
|
|
19
|
-
export declare function SceneView<State extends NavigationState, ScreenOptions extends {}>({ screen, route, navigation, routeState, getState, setState, options, clearOptions, }: Props<State, ScreenOptions>):
|
|
20
|
+
export declare function SceneView<State extends NavigationState, ScreenOptions extends {}>({ screen, route, navigation, routeState, getState, setState, options, clearOptions, }: Props<State, ScreenOptions>): React.JSX.Element;
|
|
20
21
|
export {};
|
|
21
22
|
//# sourceMappingURL=SceneView.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SceneView.d.ts","sourceRoot":"","sources":["../../../src/SceneView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,aAAa,EACb,YAAY,EACZ,KAAK,EACN,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"SceneView.d.ts","sourceRoot":"","sources":["../../../src/SceneView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,aAAa,EACb,YAAY,EACZ,KAAK,EACN,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAU/B,OAAO,KAAK,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,YAAS,CAAC;AAGpE,KAAK,KAAK,CAAC,KAAK,SAAS,eAAe,EAAE,aAAa,SAAS,EAAE,IAAI;IACpE,MAAM,EAAE,oBAAoB,CAAC,aAAa,EAAE,MAAM,CAAC,GAAG;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACvE,UAAU,EAAE,cAAc,CACxB,aAAa,EACb,MAAM,EACN,MAAM,GAAG,SAAS,EAClB,KAAK,EACL,aAAa,CACd,CAAC;IACF,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACrB,UAAU,EAAE,eAAe,GAAG,YAAY,CAAC,eAAe,CAAC,GAAG,SAAS,CAAC;IACxE,QAAQ,EAAE,MAAM,KAAK,CAAC;IACtB,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,IAAI,CAAC;CAC1B,CAAC;AAEF;;;GAGG;AACH,wBAAgB,SAAS,CACvB,KAAK,SAAS,eAAe,EAC7B,aAAa,SAAS,EAAE,EACxB,EACA,MAAM,EACN,KAAK,EACL,UAAU,EACV,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,YAAY,GACb,EAAE,KAAK,CAAC,KAAK,EAAE,aAAa,CAAC,qBAsJ7B"}
|
|
@@ -2,5 +2,5 @@ import * as React from 'react';
|
|
|
2
2
|
/**
|
|
3
3
|
* Component which prevents updates for children if no props changed
|
|
4
4
|
*/
|
|
5
|
-
export declare const StaticContainer: React.
|
|
5
|
+
export declare const StaticContainer: React.MemoExoticComponent<(props: any) => any>;
|
|
6
6
|
//# sourceMappingURL=StaticContainer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StaticContainer.d.ts","sourceRoot":"","sources":["../../../src/StaticContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B;;GAEG;AACH,eAAO,MAAM,eAAe,
|
|
1
|
+
{"version":3,"file":"StaticContainer.d.ts","sourceRoot":"","sources":["../../../src/StaticContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B;;GAEG;AACH,eAAO,MAAM,eAAe,oCACM,GAAG,SAuBpC,CAAC"}
|