@react-navigation/core 8.0.0-alpha.19 → 8.0.0-alpha.20
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 +6 -2
- package/lib/module/BaseNavigationContainer.js.map +1 -1
- package/lib/module/StaticNavigation.js +72 -61
- package/lib/module/StaticNavigation.js.map +1 -1
- package/lib/module/findFocusedRoute.js +7 -4
- package/lib/module/findFocusedRoute.js.map +1 -1
- package/lib/module/getActionFromState.js +25 -12
- package/lib/module/getActionFromState.js.map +1 -1
- package/lib/module/getPathFromState.js +24 -9
- package/lib/module/getPathFromState.js.map +1 -1
- package/lib/module/getPatternParts.js +3 -0
- package/lib/module/getPatternParts.js.map +1 -1
- package/lib/module/getStateFromPath.js +164 -78
- package/lib/module/getStateFromPath.js.map +1 -1
- package/lib/module/index.js +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/types.js +8 -0
- package/lib/module/types.js.map +1 -1
- package/lib/module/useDescriptors.js +13 -6
- package/lib/module/useDescriptors.js.map +1 -1
- package/lib/module/useFocusEvents.js +5 -1
- package/lib/module/useFocusEvents.js.map +1 -1
- package/lib/module/useNavigation.js.map +1 -1
- package/lib/module/useNavigationBuilder.js +18 -5
- package/lib/module/useNavigationBuilder.js.map +1 -1
- package/lib/module/useNavigationCache.js +1 -1
- package/lib/module/useNavigationCache.js.map +1 -1
- package/lib/module/useNavigationState.js.map +1 -1
- package/lib/module/useOnAction.js +1 -1
- package/lib/module/useOnAction.js.map +1 -1
- package/lib/module/useRoute.js.map +1 -1
- package/lib/module/validatePathConfig.js +2 -1
- package/lib/module/validatePathConfig.js.map +1 -1
- package/lib/typescript/src/BaseNavigationContainer.d.ts +2 -2
- package/lib/typescript/src/BaseNavigationContainer.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/Group.d.ts +1 -1
- package/lib/typescript/src/Group.d.ts.map +1 -1
- package/lib/typescript/src/NavigationBuilderContext.d.ts +1 -1
- package/lib/typescript/src/NavigationBuilderContext.d.ts.map +1 -1
- package/lib/typescript/src/NavigationContainerRefContext.d.ts +1 -1
- package/lib/typescript/src/NavigationContainerRefContext.d.ts.map +1 -1
- package/lib/typescript/src/NavigationHelpersContext.d.ts +1 -1
- package/lib/typescript/src/NavigationHelpersContext.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 +6 -6
- 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 +3 -2
- package/lib/typescript/src/SceneView.d.ts.map +1 -1
- package/lib/typescript/src/Screen.d.ts +1 -1
- package/lib/typescript/src/Screen.d.ts.map +1 -1
- package/lib/typescript/src/StaticNavigation.d.ts +68 -73
- package/lib/typescript/src/StaticNavigation.d.ts.map +1 -1
- package/lib/typescript/src/createNavigationContainerRef.d.ts +1 -1
- package/lib/typescript/src/createNavigationContainerRef.d.ts.map +1 -1
- package/lib/typescript/src/createNavigatorFactory.d.ts +3 -3
- package/lib/typescript/src/createNavigatorFactory.d.ts.map +1 -1
- package/lib/typescript/src/findFocusedRoute.d.ts.map +1 -1
- package/lib/typescript/src/getActionFromState.d.ts +1 -1
- package/lib/typescript/src/getActionFromState.d.ts.map +1 -1
- package/lib/typescript/src/getPathFromState.d.ts +1 -1
- package/lib/typescript/src/getPathFromState.d.ts.map +1 -1
- package/lib/typescript/src/getPatternParts.d.ts +1 -0
- package/lib/typescript/src/getPatternParts.d.ts.map +1 -1
- package/lib/typescript/src/getStateFromPath.d.ts +2 -2
- package/lib/typescript/src/getStateFromPath.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +34 -33
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/theming/ThemeContext.d.ts +1 -1
- package/lib/typescript/src/theming/ThemeContext.d.ts.map +1 -1
- package/lib/typescript/src/theming/ThemeProvider.d.ts +2 -2
- package/lib/typescript/src/theming/ThemeProvider.d.ts.map +1 -1
- package/lib/typescript/src/theming/useTheme.d.ts +1 -1
- package/lib/typescript/src/theming/useTheme.d.ts.map +1 -1
- package/lib/typescript/src/types.d.ts +72 -37
- package/lib/typescript/src/types.d.ts.map +1 -1
- package/lib/typescript/src/useChildListeners.d.ts +3 -3
- package/lib/typescript/src/useChildListeners.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/useDescriptors.d.ts +5 -5
- package/lib/typescript/src/useDescriptors.d.ts.map +1 -1
- package/lib/typescript/src/useEventEmitter.d.ts +1 -1
- package/lib/typescript/src/useEventEmitter.d.ts.map +1 -1
- package/lib/typescript/src/useFocusEvents.d.ts +2 -2
- package/lib/typescript/src/useFocusEvents.d.ts.map +1 -1
- package/lib/typescript/src/useFocusedListenersChildrenAdapter.d.ts +2 -2
- package/lib/typescript/src/useFocusedListenersChildrenAdapter.d.ts.map +1 -1
- package/lib/typescript/src/useKeyedChildListeners.d.ts +3 -3
- package/lib/typescript/src/useKeyedChildListeners.d.ts.map +1 -1
- package/lib/typescript/src/useNavigation.d.ts +5 -3
- package/lib/typescript/src/useNavigation.d.ts.map +1 -1
- package/lib/typescript/src/useNavigationBuilder.d.ts +7 -7
- package/lib/typescript/src/useNavigationBuilder.d.ts.map +1 -1
- package/lib/typescript/src/useNavigationCache.d.ts +3 -3
- package/lib/typescript/src/useNavigationCache.d.ts.map +1 -1
- package/lib/typescript/src/useNavigationContainerRef.d.ts +1 -1
- package/lib/typescript/src/useNavigationContainerRef.d.ts.map +1 -1
- package/lib/typescript/src/useNavigationHelpers.d.ts +4 -4
- package/lib/typescript/src/useNavigationHelpers.d.ts.map +1 -1
- package/lib/typescript/src/useNavigationState.d.ts +2 -2
- package/lib/typescript/src/useNavigationState.d.ts.map +1 -1
- package/lib/typescript/src/useOnAction.d.ts +3 -3
- package/lib/typescript/src/useOnAction.d.ts.map +1 -1
- package/lib/typescript/src/useOnGetState.d.ts +1 -1
- package/lib/typescript/src/useOnGetState.d.ts.map +1 -1
- package/lib/typescript/src/useOnPreventRemove.d.ts +3 -3
- package/lib/typescript/src/useOnPreventRemove.d.ts.map +1 -1
- package/lib/typescript/src/useOptionsGetters.d.ts +1 -1
- package/lib/typescript/src/useOptionsGetters.d.ts.map +1 -1
- package/lib/typescript/src/usePreventRemoveContext.d.ts +1 -1
- package/lib/typescript/src/useRoute.d.ts +2 -2
- package/lib/typescript/src/useRoute.d.ts.map +1 -1
- package/lib/typescript/src/useRouteCache.d.ts +2 -2
- package/lib/typescript/src/useRouteCache.d.ts.map +1 -1
- package/lib/typescript/src/useStateForPath.d.ts +1 -1
- package/lib/typescript/src/useStateForPath.d.ts.map +1 -1
- package/lib/typescript/src/utilities.d.ts +4 -3
- package/lib/typescript/src/utilities.d.ts.map +1 -1
- package/lib/typescript/src/validatePathConfig.d.ts.map +1 -1
- package/package.json +18 -17
- package/src/BaseNavigationContainer.tsx +7 -2
- package/src/StaticNavigation.tsx +220 -248
- package/src/findFocusedRoute.tsx +10 -5
- package/src/getActionFromState.tsx +43 -30
- package/src/getPathFromState.tsx +40 -20
- package/src/getPatternParts.tsx +8 -0
- package/src/getStateFromPath.tsx +244 -67
- package/src/index.tsx +39 -1
- package/src/types.tsx +167 -122
- package/src/useDescriptors.tsx +22 -10
- package/src/useFocusEvents.tsx +7 -1
- package/src/useNavigation.tsx +8 -4
- package/src/useNavigationBuilder.tsx +22 -7
- package/src/useNavigationCache.tsx +4 -4
- package/src/useNavigationState.tsx +3 -3
- package/src/useOnAction.tsx +1 -1
- package/src/useRoute.tsx +4 -2
- package/src/utilities.tsx +17 -11
- package/src/validatePathConfig.tsx +1 -0
|
@@ -124,10 +124,11 @@ export function BaseNavigationContainer({
|
|
|
124
124
|
});
|
|
125
125
|
const resetRoot = useLatestCallback(state => {
|
|
126
126
|
const target = state?.key ?? keyedListeners.getState.root?.().key;
|
|
127
|
-
|
|
127
|
+
const listener = listeners.focus[0];
|
|
128
|
+
if (target == null || listener == null) {
|
|
128
129
|
console.error(NOT_INITIALIZED_ERROR);
|
|
129
130
|
} else {
|
|
130
|
-
|
|
131
|
+
listener(navigation => navigation.dispatch({
|
|
131
132
|
...CommonActions.reset(state),
|
|
132
133
|
target
|
|
133
134
|
}));
|
|
@@ -257,6 +258,9 @@ export function BaseNavigationContainer({
|
|
|
257
258
|
for (let i = 0; i < location.length; i++) {
|
|
258
259
|
const curr = location[i];
|
|
259
260
|
const prev = location[i - 1];
|
|
261
|
+
if (curr == null) {
|
|
262
|
+
continue;
|
|
263
|
+
}
|
|
260
264
|
pointer = pointer[curr];
|
|
261
265
|
if (!params && curr === 'state') {
|
|
262
266
|
continue;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["CommonActions","React","useLatestCallback","checkDuplicateRouteNames","checkSerializable","NOT_INITIALIZED_ERROR","EnsureSingleNavigator","findFocusedRoute","NavigationBuilderContext","NavigationContainerRefContext","NavigationIndependentTreeContext","NavigationStateContext","ThemeProvider","UnhandledActionContext","useChildListeners","useEventEmitter","useKeyedChildListeners","useNavigationIndependentTree","useOptionsGetters","useSyncState","jsx","_jsx","serializableWarnings","duplicateNameWarnings","getPartialState","state","undefined","key","routeNames","partialState","stale","routes","map","route","BaseNavigationContainer","initialState","onStateChange","onReady","onUnhandledAction","theme","children","ref","parent","use","independent","isDefault","Error","getState","setState","scheduleUpdate","flushUpdates","isFirstMountRef","useRef","navigatorKeyRef","getKey","useCallback","current","setKey","listeners","addListener","keyedListeners","addKeyedListener","dispatch","action","focus","console","error","navigation","canGoBack","result","handled","resetRoot","target","root","reset","getRootState","getCurrentRoute","isReady","emitter","addOptionsGetter","getCurrentOptions","useMemo","Object","keys","reduce","acc","name","args","create","isFocused","getParent","setOptions","useImperativeHandle","onDispatchAction","noop","emit","type","data","stack","stackRef","onEmitEvent","event","lastEmittedOptionsRef","onOptionsChange","options","builderContext","isInitialRef","getIsInitial","context","onReadyRef","onStateChangeRef","useEffect","onReadyCalledRef","hydratedState","process","env","NODE_ENV","serializableResult","serializable","location","reason","path","pointer","params","i","length","curr","prev","test","JSON","stringify","message","includes","push","warn","duplicateRouteNamesResult","locations","join","defaultOnUnhandledAction","payload","Provider","value"],"sourceRoot":"../../src","sources":["BaseNavigationContainer.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["CommonActions","React","useLatestCallback","checkDuplicateRouteNames","checkSerializable","NOT_INITIALIZED_ERROR","EnsureSingleNavigator","findFocusedRoute","NavigationBuilderContext","NavigationContainerRefContext","NavigationIndependentTreeContext","NavigationStateContext","ThemeProvider","UnhandledActionContext","useChildListeners","useEventEmitter","useKeyedChildListeners","useNavigationIndependentTree","useOptionsGetters","useSyncState","jsx","_jsx","serializableWarnings","duplicateNameWarnings","getPartialState","state","undefined","key","routeNames","partialState","stale","routes","map","route","BaseNavigationContainer","initialState","onStateChange","onReady","onUnhandledAction","theme","children","ref","parent","use","independent","isDefault","Error","getState","setState","scheduleUpdate","flushUpdates","isFirstMountRef","useRef","navigatorKeyRef","getKey","useCallback","current","setKey","listeners","addListener","keyedListeners","addKeyedListener","dispatch","action","focus","console","error","navigation","canGoBack","result","handled","resetRoot","target","root","listener","reset","getRootState","getCurrentRoute","isReady","emitter","addOptionsGetter","getCurrentOptions","useMemo","Object","keys","reduce","acc","name","args","create","isFocused","getParent","setOptions","useImperativeHandle","onDispatchAction","noop","emit","type","data","stack","stackRef","onEmitEvent","event","lastEmittedOptionsRef","onOptionsChange","options","builderContext","isInitialRef","getIsInitial","context","onReadyRef","onStateChangeRef","useEffect","onReadyCalledRef","hydratedState","process","env","NODE_ENV","serializableResult","serializable","location","reason","path","pointer","params","i","length","curr","prev","test","JSON","stringify","message","includes","push","warn","duplicateRouteNamesResult","locations","join","defaultOnUnhandledAction","payload","Provider","value"],"sourceRoot":"../../src","sources":["BaseNavigationContainer.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,25 +2,38 @@
|
|
|
2
2
|
|
|
3
3
|
import * as React from 'react';
|
|
4
4
|
import { isValidElementType } from 'react-is';
|
|
5
|
+
import { combinePatternParts, getPatternParts } from "./getPatternParts.js";
|
|
5
6
|
import { useRoute } from "./useRoute.js";
|
|
6
7
|
|
|
7
8
|
// If every nested route's params include `undefined`, the nested navigator
|
|
8
9
|
// itself can be omitted. Otherwise, require `NavigatorScreenParams`.
|
|
9
10
|
|
|
10
|
-
//
|
|
11
|
-
//
|
|
12
|
-
//
|
|
13
|
-
//
|
|
11
|
+
// If the screens were constructed from a `Record<K, V>`,
|
|
12
|
+
// the screen value (`T`) may be a union.
|
|
13
|
+
// A naked `T extends ...` conditional would distribute over every screen in the union,
|
|
14
|
+
// creating a large params union per route.
|
|
15
|
+
// Wrapping `T` in a tuple checks the union as a whole instead of distributing,
|
|
16
|
+
// https://www.typescriptlang.org/docs/handbook/2/conditional-types.html#distributive-conditional-types
|
|
17
|
+
|
|
18
|
+
// Unlike `ParamsForScreen`, we want to distribute for `Record<string, Component | StaticNavigation>`
|
|
19
|
+
// This creates union like:
|
|
20
|
+
// `C extends C ? ParamsForScreen<C> : never) | (S extends S ? ParamsForScreen<S> : never)`
|
|
21
|
+
// `= ParamsForScreen<C> | ParamsForScreen<S>`
|
|
14
22
|
|
|
15
23
|
// Only infer params from linking if it's a pattern (i.e., contains ':')
|
|
16
24
|
// or if parse is present for query params.
|
|
17
25
|
// This avoids inferring non-literals like 'string' without parse.
|
|
18
26
|
|
|
19
27
|
/**
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
* -
|
|
23
|
-
*
|
|
28
|
+
* Params type derived from both linking and screen.
|
|
29
|
+
*
|
|
30
|
+
* - Linking has no extractable params (no ':' in path, no `parse`): returns
|
|
31
|
+
* screen params alone.
|
|
32
|
+
* - Linking has params + screen is a nested navigator: intersects path params
|
|
33
|
+
* with the navigator's screen params.
|
|
34
|
+
* - Linking has params + screen is a component without route params: returns
|
|
35
|
+
* path params alone (avoids `LP & undefined = never`).
|
|
36
|
+
* - Linking has params + screen has route params: intersects them.
|
|
24
37
|
*/
|
|
25
38
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
26
39
|
/**
|
|
@@ -180,6 +193,40 @@ export function createComponentForStaticConfig(tree, displayName) {
|
|
|
180
193
|
NavigatorComponent.displayName = displayName;
|
|
181
194
|
return NavigatorComponent;
|
|
182
195
|
}
|
|
196
|
+
// Mark screens that resolve to the same pattern and same component or navigator
|
|
197
|
+
const markSharedPathConfigs = (screens, sources, blocked) => {
|
|
198
|
+
const candidates = new Map();
|
|
199
|
+
const collect = (screens, parentParts, disabled) => {
|
|
200
|
+
for (const config of Object.values(screens)) {
|
|
201
|
+
if (config == null || typeof config === 'string') {
|
|
202
|
+
continue;
|
|
203
|
+
}
|
|
204
|
+
const parts = typeof config.path === 'string' ? combinePatternParts(parentParts, getPatternParts(config.path), config.exact) : parentParts;
|
|
205
|
+
if (sources.has(config) && typeof config.path === 'string') {
|
|
206
|
+
if (disabled) {
|
|
207
|
+
blocked.add(config);
|
|
208
|
+
}
|
|
209
|
+
const pattern = parts.map(part => part.segment).join('/');
|
|
210
|
+
const entries = candidates.get(pattern) ?? [];
|
|
211
|
+
entries.push(config);
|
|
212
|
+
candidates.set(pattern, entries);
|
|
213
|
+
}
|
|
214
|
+
if (config.screens) {
|
|
215
|
+
collect(config.screens, parts, disabled || config.shared === false);
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
};
|
|
219
|
+
collect(screens, [], false);
|
|
220
|
+
for (const entries of candidates.values()) {
|
|
221
|
+
for (const entry of entries) {
|
|
222
|
+
const source = sources.get(entry);
|
|
223
|
+
if (entry.shared === undefined && !blocked.has(entry) && entries.some(candidate => candidate !== entry && !blocked.has(candidate) && sources.get(candidate) === source)) {
|
|
224
|
+
entry.shared = true;
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
};
|
|
229
|
+
|
|
183
230
|
/**
|
|
184
231
|
* Create a path config object from a static navigation config for deep linking.
|
|
185
232
|
*
|
|
@@ -203,6 +250,8 @@ export function createPathConfigForStaticNavigation(tree, options, auto) {
|
|
|
203
250
|
let initialScreenHasPath = false;
|
|
204
251
|
let initialScreenConfig;
|
|
205
252
|
let hasEmptyPath = false;
|
|
253
|
+
const blocked = new WeakSet();
|
|
254
|
+
const sources = new WeakMap();
|
|
206
255
|
const createPathConfigForTree = (t, o, skipInitialDetection, allowAutoEmptyPath) => {
|
|
207
256
|
const initialRouteName = o?.initialRouteName ?? t.config.initialRouteName;
|
|
208
257
|
if (initialRouteName != null) {
|
|
@@ -214,7 +263,7 @@ export function createPathConfigForStaticNavigation(tree, options, auto) {
|
|
|
214
263
|
throw new Error(`Couldn't find a screen named '${initialRouteName}' to use as 'initialRouteName'.`);
|
|
215
264
|
}
|
|
216
265
|
}
|
|
217
|
-
const createPathConfigForScreens = (screens,
|
|
266
|
+
const createPathConfigForScreens = (screens, initialRouteName) => {
|
|
218
267
|
return Object.fromEntries(Object.entries(screens)
|
|
219
268
|
// Re-order to move the initial route to the front
|
|
220
269
|
// This way we can detect the initial route correctly
|
|
@@ -228,59 +277,43 @@ export function createPathConfigForStaticNavigation(tree, options, auto) {
|
|
|
228
277
|
return 0;
|
|
229
278
|
}).map(([key, item]) => {
|
|
230
279
|
const screenConfig = {};
|
|
231
|
-
|
|
232
|
-
const normalizePath = (
|
|
233
|
-
const normalizePart = part => part.replace(/^\/+|\/+$/g, '');
|
|
234
|
-
if (exact) {
|
|
235
|
-
return normalizePart(path);
|
|
236
|
-
}
|
|
237
|
-
return [groupPath, path].filter(part => part != null && part !== '').map(normalizePart).filter(Boolean).join('/');
|
|
238
|
-
};
|
|
280
|
+
sources.set(screenConfig, typeof item === 'object' && 'screen' in item ? item.screen : item);
|
|
281
|
+
const normalizePath = path => path.replace(/^\/+|\/+$/g, '');
|
|
239
282
|
if ('linking' in item && item.linking !== undefined) {
|
|
240
283
|
if (typeof item.linking === 'string') {
|
|
241
284
|
screenConfig.path = item.linking;
|
|
242
285
|
} else if (item.linking != null && typeof item.linking === 'object') {
|
|
243
|
-
Object.assign(screenConfig,
|
|
286
|
+
Object.assign(screenConfig, {
|
|
287
|
+
...item.linking
|
|
288
|
+
});
|
|
244
289
|
}
|
|
245
290
|
}
|
|
246
291
|
if (screenConfig.exact && screenConfig.path == null) {
|
|
247
292
|
throw new Error("A 'path' needs to be specified when specifying 'exact: true'. If you don't want this screen in the URL, specify it as empty string, e.g. `path: ''`.");
|
|
248
293
|
}
|
|
249
294
|
if (typeof screenConfig.path === 'string') {
|
|
250
|
-
screenConfig.path = normalizePath(screenConfig.path
|
|
295
|
+
screenConfig.path = normalizePath(screenConfig.path);
|
|
251
296
|
}
|
|
252
297
|
if (screenConfig.alias != null) {
|
|
253
298
|
screenConfig.alias = screenConfig.alias.map(alias => {
|
|
254
299
|
if (typeof alias === 'string') {
|
|
255
300
|
return normalizePath(alias);
|
|
256
301
|
}
|
|
257
|
-
const groupParse = typeof groupLinking === 'string' ? undefined : groupLinking?.parse;
|
|
258
|
-
const hasGroupParams = groupParse != null && Object.keys(groupParse).some(name => alias.path.split('/').some(part => part.startsWith(`:${name}`)));
|
|
259
302
|
return {
|
|
260
303
|
...alias,
|
|
261
|
-
|
|
262
|
-
parse: {
|
|
263
|
-
...groupParse,
|
|
264
|
-
...alias.parse
|
|
265
|
-
}
|
|
266
|
-
} : {}),
|
|
267
|
-
path: normalizePath(alias.path, alias.exact)
|
|
304
|
+
path: normalizePath(alias.path)
|
|
268
305
|
};
|
|
269
306
|
});
|
|
270
307
|
}
|
|
271
308
|
let screens;
|
|
272
309
|
const hasExplicitScreens = 'screens' in screenConfig && screenConfig.screens != null;
|
|
273
310
|
const hasDisabledLinking = 'linking' in item && item.linking === null;
|
|
274
|
-
const hasNestedStaticConfig = 'config' in item || 'screen' in item && 'config' in item.screen && (item.screen.config.screens || item.screen.config.groups);
|
|
275
311
|
const childOptions = 'initialRouteName' in screenConfig && typeof screenConfig.initialRouteName === 'string' ? {
|
|
276
312
|
initialRouteName: screenConfig.initialRouteName
|
|
277
313
|
} : undefined;
|
|
278
314
|
if (hasExplicitScreens && childOptions != null && !Object.keys(screenConfig.screens ?? {}).includes(childOptions.initialRouteName)) {
|
|
279
315
|
throw new Error(`Couldn't find a screen named '${childOptions.initialRouteName}' to use as 'initialRouteName'.`);
|
|
280
316
|
}
|
|
281
|
-
if (hasNestedStaticConfig && screenConfig.path == null && groupPath != null && !hasDisabledLinking) {
|
|
282
|
-
screenConfig.path = normalizePath('');
|
|
283
|
-
}
|
|
284
317
|
const skipInitialDetectionInChild = skipInitialDetection || screenConfig.path != null && screenConfig.path !== '';
|
|
285
318
|
const allowAutoEmptyPathInChild = allowAutoEmptyPath && (initialRouteName == null || key === initialRouteName);
|
|
286
319
|
if (!hasExplicitScreens && !hasDisabledLinking && 'config' in item) {
|
|
@@ -289,7 +322,6 @@ export function createPathConfigForStaticNavigation(tree, options, auto) {
|
|
|
289
322
|
screens = createPathConfigForTree(item.screen, childOptions, skipInitialDetectionInChild, allowAutoEmptyPathInChild);
|
|
290
323
|
}
|
|
291
324
|
if (screens) {
|
|
292
|
-
// @ts-expect-error - we can't type this properly
|
|
293
325
|
screenConfig.screens = screens;
|
|
294
326
|
}
|
|
295
327
|
if (auto && !('screens' in screenConfig && screenConfig.screens) &&
|
|
@@ -313,37 +345,12 @@ export function createPathConfigForStaticNavigation(tree, options, auto) {
|
|
|
313
345
|
}
|
|
314
346
|
}
|
|
315
347
|
} else {
|
|
316
|
-
if (!
|
|
348
|
+
if (!skipInitialDetection && allowAutoEmptyPath && (initialRouteName == null || key === initialRouteName) && !hasEmptyPath && initialScreenConfig == null) {
|
|
317
349
|
initialScreenConfig = screenConfig;
|
|
318
350
|
}
|
|
319
351
|
screenConfig.path = normalizePath(key.replace(/([A-Z]+)/g, '-$1').replace(/^-/, '').toLowerCase());
|
|
320
352
|
}
|
|
321
353
|
}
|
|
322
|
-
const groupOptionKeys = typeof groupLinking === 'string' ? [] : Object.keys({
|
|
323
|
-
...groupLinking?.parse,
|
|
324
|
-
...groupLinking?.stringify
|
|
325
|
-
});
|
|
326
|
-
const hasAliasWithGroupParams = groupOptionKeys.length > 0 && screenConfig.alias?.some(alias => {
|
|
327
|
-
if (typeof alias !== 'string') {
|
|
328
|
-
return false;
|
|
329
|
-
}
|
|
330
|
-
return groupOptionKeys.some(name => alias.split('/').some(part => part.startsWith(`:${name}`)));
|
|
331
|
-
});
|
|
332
|
-
const shouldUseGroupOptions = typeof groupLinking !== 'string' && groupLinking != null && screenConfig.path != null && screenConfig.path !== '' && (!screenConfig.exact || hasAliasWithGroupParams);
|
|
333
|
-
if (shouldUseGroupOptions) {
|
|
334
|
-
if (groupLinking.parse != null) {
|
|
335
|
-
screenConfig.parse = {
|
|
336
|
-
...groupLinking.parse,
|
|
337
|
-
...screenConfig.parse
|
|
338
|
-
};
|
|
339
|
-
}
|
|
340
|
-
if (groupLinking.stringify != null && !screenConfig.exact) {
|
|
341
|
-
screenConfig.stringify = {
|
|
342
|
-
...groupLinking.stringify,
|
|
343
|
-
...screenConfig.stringify
|
|
344
|
-
};
|
|
345
|
-
}
|
|
346
|
-
}
|
|
347
354
|
return [key, screenConfig];
|
|
348
355
|
}).filter(([, screen]) => Object.keys(screen).length > 0));
|
|
349
356
|
};
|
|
@@ -353,11 +360,11 @@ export function createPathConfigForStaticNavigation(tree, options, auto) {
|
|
|
353
360
|
// So we add the screens and groups in the same order as they are defined
|
|
354
361
|
for (const key in t.config) {
|
|
355
362
|
if (key === 'screens' && t.config.screens) {
|
|
356
|
-
Object.assign(screens, createPathConfigForScreens(t.config.screens,
|
|
363
|
+
Object.assign(screens, createPathConfigForScreens(t.config.screens, o?.initialRouteName ?? t.config.initialRouteName));
|
|
357
364
|
}
|
|
358
365
|
if (key === 'groups' && t.config.groups) {
|
|
359
366
|
Object.entries(t.config.groups).forEach(([, group]) => {
|
|
360
|
-
Object.assign(screens, createPathConfigForScreens(group.screens,
|
|
367
|
+
Object.assign(screens, createPathConfigForScreens(group.screens, o?.initialRouteName ?? t.config.initialRouteName));
|
|
361
368
|
});
|
|
362
369
|
}
|
|
363
370
|
}
|
|
@@ -370,6 +377,10 @@ export function createPathConfigForStaticNavigation(tree, options, auto) {
|
|
|
370
377
|
if (auto && initialScreenConfig && !initialScreenHasPath) {
|
|
371
378
|
initialScreenConfig.path = '';
|
|
372
379
|
}
|
|
380
|
+
if (!screens) {
|
|
381
|
+
return undefined;
|
|
382
|
+
}
|
|
383
|
+
markSharedPathConfigs(screens, sources, blocked);
|
|
373
384
|
return screens;
|
|
374
385
|
}
|
|
375
386
|
//# sourceMappingURL=StaticNavigation.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","isValidElementType","useRoute","jsx","_jsx","createScreenFactory","config","MemoizedScreen","memo","component","route","children","createElement","displayName","getItemsFromScreens","Screen","screens","Object","entries","map","name","item","props","useIf","isNavigator","screen","if","_if","rest","getComponent","Error","element","shouldRender","createComponentForStaticConfig","tree","Navigator","Group","groups","items","key","push","group","groupItems","navigationKey","length","NavigatorComponent","_","screenOptions","options","screenListeners","createPathConfigForStaticNavigation","auto","initialScreenHasPath","initialScreenConfig","hasEmptyPath","createPathConfigForTree","t","o","skipInitialDetection","allowAutoEmptyPath","initialRouteName","routeNames","Set","keys","values","forEach","add","has","createPathConfigForScreens","groupLinking","fromEntries","sort","a","b","screenConfig","groupPath","path","normalizePath","exact","normalizePart","part","replace","filter","Boolean","join","linking","undefined","assign","alias","groupParse","parse","hasGroupParams","some","split","startsWith","hasExplicitScreens","hasDisabledLinking","hasNestedStaticConfig","childOptions","includes","skipInitialDetectionInChild","allowAutoEmptyPathInChild","toLowerCase","groupOptionKeys","stringify","hasAliasWithGroupParams","shouldUseGroupOptions"],"sourceRoot":"../../src","sources":["StaticNavigation.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","isValidElementType","combinePatternParts","getPatternParts","useRoute","jsx","_jsx","createScreenFactory","config","MemoizedScreen","memo","component","route","children","createElement","displayName","getItemsFromScreens","Screen","screens","Object","entries","map","name","item","props","useIf","isNavigator","screen","if","_if","rest","getComponent","Error","element","shouldRender","createComponentForStaticConfig","tree","Navigator","Group","groups","items","key","push","group","groupItems","navigationKey","length","NavigatorComponent","_","screenOptions","options","screenListeners","markSharedPathConfigs","sources","blocked","candidates","Map","collect","parentParts","disabled","values","parts","path","exact","has","add","pattern","part","segment","join","get","set","shared","entry","source","undefined","some","candidate","createPathConfigForStaticNavigation","auto","initialScreenHasPath","initialScreenConfig","hasEmptyPath","WeakSet","WeakMap","createPathConfigForTree","t","o","skipInitialDetection","allowAutoEmptyPath","initialRouteName","routeNames","Set","keys","forEach","createPathConfigForScreens","fromEntries","sort","a","b","screenConfig","normalizePath","replace","linking","assign","alias","hasExplicitScreens","hasDisabledLinking","childOptions","includes","skipInitialDetectionInChild","allowAutoEmptyPathInChild","toLowerCase","filter"],"sourceRoot":"../../src","sources":["StaticNavigation.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,10 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
export function findFocusedRoute(state) {
|
|
4
4
|
let current = state;
|
|
5
|
-
while (current
|
|
6
|
-
|
|
5
|
+
while (current != null) {
|
|
6
|
+
const route = current.routes[current.index ?? 0];
|
|
7
|
+
if (route?.state == null) {
|
|
8
|
+
return route;
|
|
9
|
+
}
|
|
10
|
+
current = route.state;
|
|
7
11
|
}
|
|
8
|
-
|
|
9
|
-
return route;
|
|
12
|
+
return undefined;
|
|
10
13
|
}
|
|
11
14
|
//# sourceMappingURL=findFocusedRoute.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["findFocusedRoute","state","current","routes","index","
|
|
1
|
+
{"version":3,"names":["findFocusedRoute","state","current","route","routes","index","undefined"],"sourceRoot":"../../src","sources":["findFocusedRoute.tsx"],"mappings":";;AAWA,OAAO,SAASA,gBAAgBA,CAACC,KAAmB,EAAU;EAC5D,IAAIC,OAAiC,GAAGD,KAAK;EAE7C,OAAOC,OAAO,IAAI,IAAI,EAAE;IACtB,MAAMC,KAAiD,GACrDD,OAAO,CAACE,MAAM,CAACF,OAAO,CAACG,KAAK,IAAI,CAAC,CAAC;IAEpC,IAAIF,KAAK,EAAEF,KAAK,IAAI,IAAI,EAAE;MACxB,OAAOE,KAAK;IACd;IAEAD,OAAO,GAAGC,KAAK,CAACF,KAAK;EACvB;EAEA,OAAOK,SAAS;AAClB","ignoreList":[]}
|
|
@@ -20,23 +20,31 @@ export function getActionFromState(state, options) {
|
|
|
20
20
|
if (routes.length === 0) {
|
|
21
21
|
return undefined;
|
|
22
22
|
}
|
|
23
|
-
|
|
23
|
+
const firstRoute = routes[0];
|
|
24
|
+
if (firstRoute == null) {
|
|
25
|
+
return undefined;
|
|
26
|
+
}
|
|
27
|
+
const secondRoute = routes[1];
|
|
28
|
+
if (!(routes.length === 1 && firstRoute.key == null || routes.length === 2 && firstRoute.key == null && firstRoute.name === normalizedConfig?.initialRouteName && secondRoute?.key == null)) {
|
|
24
29
|
return {
|
|
25
30
|
type: 'RESET',
|
|
26
31
|
payload: state
|
|
27
32
|
};
|
|
28
33
|
}
|
|
29
34
|
const route = state.routes[state.index ?? state.routes.length - 1];
|
|
30
|
-
|
|
31
|
-
|
|
35
|
+
if (route == null) {
|
|
36
|
+
return undefined;
|
|
37
|
+
}
|
|
38
|
+
let current = route.state;
|
|
39
|
+
let config = normalizedConfig?.screens?.[route.name];
|
|
32
40
|
let params = {
|
|
33
41
|
...route.params
|
|
34
42
|
};
|
|
35
|
-
const payload =
|
|
43
|
+
const payload = {
|
|
36
44
|
name: route.name,
|
|
37
45
|
path: route.path,
|
|
38
46
|
params
|
|
39
|
-
}
|
|
47
|
+
};
|
|
40
48
|
|
|
41
49
|
// If the screen contains a navigator, pop other screens to navigate to it
|
|
42
50
|
// This avoid pushing multiple instances of navigators onto a stack
|
|
@@ -52,7 +60,7 @@ export function getActionFromState(state, options) {
|
|
|
52
60
|
// There are 2 ways we can detect if a screen contains a navigator:
|
|
53
61
|
// - The route contains nested state in `route.state`
|
|
54
62
|
// - Nested screens are defined in the config
|
|
55
|
-
if (
|
|
63
|
+
if (config?.screens && Object.keys(config.screens).length) {
|
|
56
64
|
payload.pop = true;
|
|
57
65
|
}
|
|
58
66
|
while (current) {
|
|
@@ -61,6 +69,14 @@ export function getActionFromState(state, options) {
|
|
|
61
69
|
}
|
|
62
70
|
const routes = current.index != null ? current.routes.slice(0, current.index + 1) : current.routes;
|
|
63
71
|
const route = routes[routes.length - 1];
|
|
72
|
+
if (route == null) {
|
|
73
|
+
return undefined;
|
|
74
|
+
}
|
|
75
|
+
const firstRoute = routes[0];
|
|
76
|
+
if (firstRoute == null) {
|
|
77
|
+
return undefined;
|
|
78
|
+
}
|
|
79
|
+
const secondRoute = routes[1];
|
|
64
80
|
|
|
65
81
|
// Explicitly set to override existing value when merging params
|
|
66
82
|
Object.assign(params, {
|
|
@@ -69,10 +85,10 @@ export function getActionFromState(state, options) {
|
|
|
69
85
|
params: undefined,
|
|
70
86
|
state: undefined
|
|
71
87
|
});
|
|
72
|
-
if (routes.length === 1 &&
|
|
88
|
+
if (routes.length === 1 && firstRoute.key == null) {
|
|
73
89
|
params.initial = true;
|
|
74
90
|
params.screen = route.name;
|
|
75
|
-
} else if (routes.length === 2 &&
|
|
91
|
+
} else if (routes.length === 2 && firstRoute.key == null && firstRoute.name === config?.initialRouteName && secondRoute?.key == null) {
|
|
76
92
|
params.initial = false;
|
|
77
93
|
params.screen = route.name;
|
|
78
94
|
} else {
|
|
@@ -95,12 +111,9 @@ export function getActionFromState(state, options) {
|
|
|
95
111
|
params.pop = true;
|
|
96
112
|
}
|
|
97
113
|
}
|
|
98
|
-
if (payload
|
|
114
|
+
if (payload.params.screen || payload.params.state) {
|
|
99
115
|
payload.pop = true;
|
|
100
116
|
}
|
|
101
|
-
if (!payload) {
|
|
102
|
-
return;
|
|
103
|
-
}
|
|
104
117
|
|
|
105
118
|
// Try to construct payload for a `NAVIGATE` action from the state
|
|
106
119
|
// This lets us preserve the navigation state and not lose it
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["cachedNormalizedConfig","WeakMap","getActionFromState","state","options","normalizedConfig","cached","get","createNormalizedConfigItem","set","routes","index","slice","length","undefined","key","name","initialRouteName","type","payload","route","current","config","screens","params","path","Object","keys","pop","assign","initial","screen","createNormalizedConfigs","entries","reduce","acc","k","v"],"sourceRoot":"../../src","sources":["getActionFromState.tsx"],"mappings":";;
|
|
1
|
+
{"version":3,"names":["cachedNormalizedConfig","WeakMap","getActionFromState","state","options","normalizedConfig","cached","get","createNormalizedConfigItem","set","routes","index","slice","length","undefined","firstRoute","secondRoute","key","name","initialRouteName","type","payload","route","current","config","screens","params","path","Object","keys","pop","assign","initial","screen","createNormalizedConfigs","entries","reduce","acc","k","v"],"sourceRoot":"../../src","sources":["getActionFromState.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -6,6 +6,9 @@ import { getStateFromRouteParams } from "./getStateFromRouteParams.js";
|
|
|
6
6
|
import { validatePathConfig } from "./validatePathConfig.js";
|
|
7
7
|
const getActiveRoute = state => {
|
|
8
8
|
const route = typeof state.index === 'number' ? state.routes[state.index] : state.routes[state.routes.length - 1];
|
|
9
|
+
if (route == null) {
|
|
10
|
+
throw new Error(`Couldn't find the active route.`);
|
|
11
|
+
}
|
|
9
12
|
if (route.state) {
|
|
10
13
|
return getActiveRoute(route.state);
|
|
11
14
|
}
|
|
@@ -22,7 +25,8 @@ const getNormalizedConfigs = options => {
|
|
|
22
25
|
};
|
|
23
26
|
const getTransformedState = (state, configs) => {
|
|
24
27
|
const routes = state.routes.map(route => {
|
|
25
|
-
|
|
28
|
+
const config = configs?.[route.name];
|
|
29
|
+
if (route.state || config?.screens && route.params && ('screen' in route.params && typeof route.params.screen === 'string' && config.screens[route.params.screen] || 'state' in route.params)) {
|
|
26
30
|
const nestedState = route.state ?? getStateFromRouteParams(route.params);
|
|
27
31
|
if (nestedState) {
|
|
28
32
|
return {
|
|
@@ -84,7 +88,11 @@ export function getPathFromState(state, options) {
|
|
|
84
88
|
const allParams = {};
|
|
85
89
|
while (current) {
|
|
86
90
|
let index = typeof current.index === 'number' ? current.index : 0;
|
|
87
|
-
|
|
91
|
+
const initialRoute = current.routes[index];
|
|
92
|
+
if (initialRoute == null) {
|
|
93
|
+
throw new Error(`Couldn't find a route at index ${index}.`);
|
|
94
|
+
}
|
|
95
|
+
let route = initialRoute;
|
|
88
96
|
let parts;
|
|
89
97
|
let focusedParams;
|
|
90
98
|
let currentOptions = configs;
|
|
@@ -93,11 +101,15 @@ export function getPathFromState(state, options) {
|
|
|
93
101
|
// Keep all the route names that appeared during going deeper in config in case the pattern is resolved to undefined
|
|
94
102
|
const nestedRouteNames = [];
|
|
95
103
|
let hasNext = true;
|
|
96
|
-
while (
|
|
97
|
-
|
|
104
|
+
while (hasNext) {
|
|
105
|
+
const config = currentOptions[route.name];
|
|
106
|
+
if (config == null) {
|
|
107
|
+
break;
|
|
108
|
+
}
|
|
109
|
+
parts = config.parts;
|
|
98
110
|
nestedRouteNames.push(route.name);
|
|
99
111
|
if (route.params) {
|
|
100
|
-
const options =
|
|
112
|
+
const options = config;
|
|
101
113
|
const currentParams = Object.fromEntries(Object.entries(route.params).map(([key, value]) => {
|
|
102
114
|
if (value === undefined) {
|
|
103
115
|
if (options) {
|
|
@@ -138,15 +150,18 @@ export function getPathFromState(state, options) {
|
|
|
138
150
|
}
|
|
139
151
|
|
|
140
152
|
// If there is no `screens` property or no nested state, we return pattern
|
|
141
|
-
if (!
|
|
153
|
+
if (!config.screens || route.state == null) {
|
|
142
154
|
hasNext = false;
|
|
143
155
|
} else {
|
|
144
156
|
index = typeof route.state.index === 'number' ? route.state.index : route.state.routes.length - 1;
|
|
145
157
|
const nextRoute = route.state.routes[index];
|
|
146
|
-
|
|
158
|
+
if (nextRoute == null) {
|
|
159
|
+
throw new Error(`Couldn't find a route at index ${index}.`);
|
|
160
|
+
}
|
|
161
|
+
const nestedConfig = config.screens;
|
|
147
162
|
|
|
148
163
|
// if there is config for next route name, we go deeper
|
|
149
|
-
if (
|
|
164
|
+
if (nextRoute.name in nestedConfig) {
|
|
150
165
|
route = nextRoute;
|
|
151
166
|
currentOptions = nestedConfig;
|
|
152
167
|
} else {
|
|
@@ -155,7 +170,7 @@ export function getPathFromState(state, options) {
|
|
|
155
170
|
}
|
|
156
171
|
}
|
|
157
172
|
}
|
|
158
|
-
if (currentOptions[route.name]
|
|
173
|
+
if (currentOptions[route.name] != null) {
|
|
159
174
|
path += parts?.map(({
|
|
160
175
|
segment,
|
|
161
176
|
param,
|