@react-navigation/routers 7.5.1 → 7.5.2
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/StackRouter.js +77 -75
- package/lib/module/StackRouter.js.map +1 -1
- package/lib/module/TabRouter.js +9 -8
- package/lib/module/TabRouter.js.map +1 -1
- package/lib/module/createParamsFromAction.js +16 -0
- package/lib/module/createParamsFromAction.js.map +1 -0
- package/lib/module/createRouteFromAction.js +21 -0
- package/lib/module/createRouteFromAction.js.map +1 -0
- package/lib/typescript/src/StackRouter.d.ts.map +1 -1
- package/lib/typescript/src/TabRouter.d.ts.map +1 -1
- package/lib/typescript/src/createParamsFromAction.d.ts +13 -0
- package/lib/typescript/src/createParamsFromAction.d.ts.map +1 -0
- package/lib/typescript/src/createRouteFromAction.d.ts +17 -0
- package/lib/typescript/src/createRouteFromAction.d.ts.map +1 -0
- package/package.json +2 -2
- package/src/StackRouter.tsx +72 -103
- package/src/TabRouter.tsx +3 -16
- package/src/createParamsFromAction.tsx +22 -0
- package/src/createRouteFromAction.tsx +24 -0
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
import { nanoid } from 'nanoid/non-secure';
|
|
4
4
|
import { BaseRouter } from "./BaseRouter.js";
|
|
5
|
+
import { createParamsFromAction } from "./createParamsFromAction.js";
|
|
6
|
+
import { createRouteFromAction } from "./createRouteFromAction.js";
|
|
5
7
|
export const StackActions = {
|
|
6
8
|
replace(name, params) {
|
|
7
9
|
return {
|
|
@@ -152,27 +154,32 @@ export function StackRouter(options) {
|
|
|
152
154
|
switch (action.type) {
|
|
153
155
|
case 'REPLACE':
|
|
154
156
|
{
|
|
155
|
-
const
|
|
156
|
-
if (
|
|
157
|
+
const currentIndex = action.target === state.key && action.source ? state.routes.findIndex(r => r.key === action.source) : state.index;
|
|
158
|
+
if (currentIndex === -1) {
|
|
157
159
|
return null;
|
|
158
160
|
}
|
|
159
|
-
|
|
160
|
-
name,
|
|
161
|
-
params
|
|
162
|
-
} = action.payload;
|
|
163
|
-
if (!state.routeNames.includes(name)) {
|
|
161
|
+
if (!state.routeNames.includes(action.payload.name)) {
|
|
164
162
|
return null;
|
|
165
163
|
}
|
|
164
|
+
const getId = options.routeGetIdList[action.payload.name];
|
|
165
|
+
const id = getId?.({
|
|
166
|
+
params: action.payload.params
|
|
167
|
+
});
|
|
168
|
+
|
|
169
|
+
// Re-use preloaded route if available
|
|
170
|
+
let route = state.preloadedRoutes.find(route => route.name === action.payload.name && id === getId?.({
|
|
171
|
+
params: route.params
|
|
172
|
+
}));
|
|
173
|
+
if (!route) {
|
|
174
|
+
route = createRouteFromAction({
|
|
175
|
+
action,
|
|
176
|
+
routeParamList
|
|
177
|
+
});
|
|
178
|
+
}
|
|
166
179
|
return {
|
|
167
180
|
...state,
|
|
168
|
-
routes: state.routes.map((
|
|
169
|
-
|
|
170
|
-
name,
|
|
171
|
-
params: routeParamList[name] !== undefined ? {
|
|
172
|
-
...routeParamList[name],
|
|
173
|
-
...params
|
|
174
|
-
} : params
|
|
175
|
-
} : route)
|
|
181
|
+
routes: state.routes.map((r, i) => i === currentIndex ? route : r),
|
|
182
|
+
preloadedRoutes: state.preloadedRoutes.filter(r => r.key !== route.key)
|
|
176
183
|
};
|
|
177
184
|
}
|
|
178
185
|
case 'PUSH':
|
|
@@ -213,10 +220,10 @@ export function StackRouter(options) {
|
|
|
213
220
|
...action.payload.params
|
|
214
221
|
} : route.params;
|
|
215
222
|
} else {
|
|
216
|
-
params =
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
}
|
|
223
|
+
params = createParamsFromAction({
|
|
224
|
+
action,
|
|
225
|
+
routeParamList
|
|
226
|
+
});
|
|
220
227
|
}
|
|
221
228
|
let routes;
|
|
222
229
|
if (route) {
|
|
@@ -260,14 +267,14 @@ export function StackRouter(options) {
|
|
|
260
267
|
}
|
|
261
268
|
case 'NAVIGATE_DEPRECATED':
|
|
262
269
|
{
|
|
270
|
+
if (!state.routeNames.includes(action.payload.name)) {
|
|
271
|
+
return null;
|
|
272
|
+
}
|
|
263
273
|
if (state.preloadedRoutes.find(route => route.name === action.payload.name && id === getId?.({
|
|
264
274
|
params: route.params
|
|
265
275
|
}))) {
|
|
266
276
|
return null;
|
|
267
277
|
}
|
|
268
|
-
if (!state.routeNames.includes(action.payload.name)) {
|
|
269
|
-
return null;
|
|
270
|
-
}
|
|
271
278
|
|
|
272
279
|
// If the route already exists, navigate to that
|
|
273
280
|
let index = -1;
|
|
@@ -275,29 +282,20 @@ export function StackRouter(options) {
|
|
|
275
282
|
const id = getId?.({
|
|
276
283
|
params: action.payload.params
|
|
277
284
|
});
|
|
278
|
-
if (id) {
|
|
285
|
+
if (id !== undefined) {
|
|
279
286
|
index = state.routes.findIndex(route => route.name === action.payload.name && id === getId?.({
|
|
280
287
|
params: route.params
|
|
281
288
|
}));
|
|
282
289
|
} else if (state.routes[state.index].name === action.payload.name) {
|
|
283
290
|
index = state.index;
|
|
284
291
|
} else {
|
|
285
|
-
|
|
286
|
-
if (state.routes[i].name === action.payload.name) {
|
|
287
|
-
index = i;
|
|
288
|
-
break;
|
|
289
|
-
}
|
|
290
|
-
}
|
|
292
|
+
index = state.routes.findLastIndex(route => route.name === action.payload.name);
|
|
291
293
|
}
|
|
292
294
|
if (index === -1) {
|
|
293
|
-
const routes = [...state.routes, {
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
...routeParamList[action.payload.name],
|
|
298
|
-
...action.payload.params
|
|
299
|
-
} : action.payload.params
|
|
300
|
-
}];
|
|
295
|
+
const routes = [...state.routes, createRouteFromAction({
|
|
296
|
+
action,
|
|
297
|
+
routeParamList
|
|
298
|
+
})];
|
|
301
299
|
return {
|
|
302
300
|
...state,
|
|
303
301
|
routes,
|
|
@@ -313,10 +311,10 @@ export function StackRouter(options) {
|
|
|
313
311
|
...action.payload.params
|
|
314
312
|
} : route.params;
|
|
315
313
|
} else {
|
|
316
|
-
params =
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
}
|
|
314
|
+
params = createParamsFromAction({
|
|
315
|
+
action,
|
|
316
|
+
routeParamList
|
|
317
|
+
});
|
|
320
318
|
}
|
|
321
319
|
return {
|
|
322
320
|
...state,
|
|
@@ -329,10 +327,10 @@ export function StackRouter(options) {
|
|
|
329
327
|
}
|
|
330
328
|
case 'POP':
|
|
331
329
|
{
|
|
332
|
-
const
|
|
333
|
-
if (
|
|
334
|
-
const count = Math.max(
|
|
335
|
-
const routes = state.routes.slice(0, count).concat(state.routes.slice(
|
|
330
|
+
const currentIndex = action.target === state.key && action.source ? state.routes.findIndex(r => r.key === action.source) : state.index;
|
|
331
|
+
if (currentIndex > 0) {
|
|
332
|
+
const count = Math.max(currentIndex - action.payload.count + 1, 1);
|
|
333
|
+
const routes = state.routes.slice(0, count).concat(state.routes.slice(currentIndex + 1));
|
|
336
334
|
return {
|
|
337
335
|
...state,
|
|
338
336
|
index: routes.length - 1,
|
|
@@ -350,24 +348,28 @@ export function StackRouter(options) {
|
|
|
350
348
|
}, options);
|
|
351
349
|
case 'POP_TO':
|
|
352
350
|
{
|
|
351
|
+
const currentIndex = action.target === state.key && action.source ? state.routes.findLastIndex(r => r.key === action.source) : state.index;
|
|
352
|
+
if (currentIndex === -1) {
|
|
353
|
+
return null;
|
|
354
|
+
}
|
|
353
355
|
if (!state.routeNames.includes(action.payload.name)) {
|
|
354
356
|
return null;
|
|
355
357
|
}
|
|
356
358
|
|
|
357
|
-
// If the route already exists, navigate to
|
|
359
|
+
// If the route already exists, navigate to it
|
|
358
360
|
let index = -1;
|
|
359
361
|
const getId = options.routeGetIdList[action.payload.name];
|
|
360
362
|
const id = getId?.({
|
|
361
363
|
params: action.payload.params
|
|
362
364
|
});
|
|
363
|
-
if (id) {
|
|
365
|
+
if (id !== undefined) {
|
|
364
366
|
index = state.routes.findIndex(route => route.name === action.payload.name && id === getId?.({
|
|
365
367
|
params: route.params
|
|
366
368
|
}));
|
|
367
|
-
} else if (state.routes[
|
|
368
|
-
index =
|
|
369
|
+
} else if (state.routes[currentIndex].name === action.payload.name) {
|
|
370
|
+
index = currentIndex;
|
|
369
371
|
} else {
|
|
370
|
-
for (let i =
|
|
372
|
+
for (let i = currentIndex; i >= 0; i--) {
|
|
371
373
|
if (state.routes[i].name === action.payload.name) {
|
|
372
374
|
index = i;
|
|
373
375
|
break;
|
|
@@ -377,18 +379,22 @@ export function StackRouter(options) {
|
|
|
377
379
|
|
|
378
380
|
// If the route doesn't exist, remove the current route and add the new one
|
|
379
381
|
if (index === -1) {
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
382
|
+
// Re-use preloaded route if available
|
|
383
|
+
let route = state.preloadedRoutes.find(route => route.name === action.payload.name && id === getId?.({
|
|
384
|
+
params: route.params
|
|
385
|
+
}));
|
|
386
|
+
if (!route) {
|
|
387
|
+
route = createRouteFromAction({
|
|
388
|
+
action,
|
|
389
|
+
routeParamList
|
|
390
|
+
});
|
|
391
|
+
}
|
|
392
|
+
const routes = state.routes.slice(0, currentIndex).concat(route);
|
|
388
393
|
return {
|
|
389
394
|
...state,
|
|
395
|
+
index: routes.length - 1,
|
|
390
396
|
routes,
|
|
391
|
-
|
|
397
|
+
preloadedRoutes: state.preloadedRoutes.filter(r => r.key !== route.key)
|
|
392
398
|
};
|
|
393
399
|
}
|
|
394
400
|
const route = state.routes[index];
|
|
@@ -400,10 +406,10 @@ export function StackRouter(options) {
|
|
|
400
406
|
...action.payload.params
|
|
401
407
|
} : route.params;
|
|
402
408
|
} else {
|
|
403
|
-
params =
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
}
|
|
409
|
+
params = createParamsFromAction({
|
|
410
|
+
action,
|
|
411
|
+
routeParamList
|
|
412
|
+
});
|
|
407
413
|
}
|
|
408
414
|
return {
|
|
409
415
|
...state,
|
|
@@ -447,10 +453,10 @@ export function StackRouter(options) {
|
|
|
447
453
|
}
|
|
448
454
|
return {
|
|
449
455
|
...r,
|
|
450
|
-
params:
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
}
|
|
456
|
+
params: createParamsFromAction({
|
|
457
|
+
action,
|
|
458
|
+
routeParamList
|
|
459
|
+
})
|
|
454
460
|
};
|
|
455
461
|
})
|
|
456
462
|
};
|
|
@@ -459,14 +465,10 @@ export function StackRouter(options) {
|
|
|
459
465
|
...state,
|
|
460
466
|
preloadedRoutes: state.preloadedRoutes.filter(r => r.name !== action.payload.name || id !== getId?.({
|
|
461
467
|
params: r.params
|
|
462
|
-
})).concat({
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
...routeParamList[action.payload.name],
|
|
467
|
-
...action.payload.params
|
|
468
|
-
} : action.payload.params
|
|
469
|
-
})
|
|
468
|
+
})).concat(createRouteFromAction({
|
|
469
|
+
action,
|
|
470
|
+
routeParamList
|
|
471
|
+
}))
|
|
470
472
|
};
|
|
471
473
|
}
|
|
472
474
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["nanoid","BaseRouter","StackActions","replace","name","params","type","payload","push","pop","count","popToTop","popTo","options","console","warn","merge","StackRouter","router","getInitialState","routeNames","routeParamList","initialRouteName","undefined","includes","stale","key","index","preloadedRoutes","routes","getRehydratedState","partialState","state","filter","route","map","length","getStateForRouteNamesChange","routeKeyChanges","Math","min","getStateForRouteFocus","findIndex","r","slice","getStateForAction","action","target","source","i","getId","routeGetIdList","id","findLast","currentRoute","find","path","max","concat","actionCreators"],"sourceRoot":"../../src","sources":["StackRouter.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["nanoid","BaseRouter","createParamsFromAction","createRouteFromAction","StackActions","replace","name","params","type","payload","push","pop","count","popToTop","popTo","options","console","warn","merge","StackRouter","router","getInitialState","routeNames","routeParamList","initialRouteName","undefined","includes","stale","key","index","preloadedRoutes","routes","getRehydratedState","partialState","state","filter","route","map","length","getStateForRouteNamesChange","routeKeyChanges","Math","min","getStateForRouteFocus","findIndex","r","slice","getStateForAction","action","currentIndex","target","source","getId","routeGetIdList","id","find","i","findLast","currentRoute","path","findLastIndex","max","concat","actionCreators"],"sourceRoot":"../../src","sources":["StackRouter.tsx"],"mappings":"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","ignoreList":[]}
|
package/lib/module/TabRouter.js
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import { nanoid } from 'nanoid/non-secure';
|
|
4
4
|
import { BaseRouter } from "./BaseRouter.js";
|
|
5
|
+
import { createParamsFromAction } from "./createParamsFromAction.js";
|
|
5
6
|
const TYPE_ROUTE = 'route';
|
|
6
7
|
export const TabActions = {
|
|
7
8
|
jumpTo(name, params) {
|
|
@@ -214,10 +215,10 @@ export function TabRouter({
|
|
|
214
215
|
...action.payload.params
|
|
215
216
|
} : route.params;
|
|
216
217
|
} else {
|
|
217
|
-
params =
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
}
|
|
218
|
+
params = createParamsFromAction({
|
|
219
|
+
action,
|
|
220
|
+
routeParamList
|
|
221
|
+
});
|
|
221
222
|
}
|
|
222
223
|
const path = action.type === 'NAVIGATE' && action.payload.path != null ? action.payload.path : route.path;
|
|
223
224
|
return params !== route.params || path !== route.path ? {
|
|
@@ -300,10 +301,10 @@ export function TabRouter({
|
|
|
300
301
|
params: action.payload.params
|
|
301
302
|
});
|
|
302
303
|
const key = currentId === nextId ? route.key : `${route.name}-${nanoid()}`;
|
|
303
|
-
const params =
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
}
|
|
304
|
+
const params = createParamsFromAction({
|
|
305
|
+
action,
|
|
306
|
+
routeParamList
|
|
307
|
+
});
|
|
307
308
|
const newRoute = params !== route.params ? {
|
|
308
309
|
...route,
|
|
309
310
|
key,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["nanoid","BaseRouter","TYPE_ROUTE","TabActions","jumpTo","name","params","type","payload","getRouteHistory","routes","index","backBehavior","initialRouteName","history","key","initialRouteIndex","i","unshift","findIndex","route","changeIndex","state","currentRoute","filter","it","lastHistoryRouteItemIndex","findLastIndex","item","slice","concat","undefined","TabRouter","router","getInitialState","routeNames","routeParamList","includes","indexOf","map","stale","preloadedRouteKeys","getRehydratedState","partialState","find","r","Math","min","max","length","routeKeys","getStateForRouteNamesChange","routeKeyChanges","getStateForRouteFocus","getStateForAction","action","routeGetIdList","updatedState","getId","currentId","nextId","merge","path","nextState","focusedRoute","historyItemIndex","updatedHistory","previousHistoryItem","previousKey","routeIndex","newRoute","record","actionCreators"],"sourceRoot":"../../src","sources":["TabRouter.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["nanoid","BaseRouter","createParamsFromAction","TYPE_ROUTE","TabActions","jumpTo","name","params","type","payload","getRouteHistory","routes","index","backBehavior","initialRouteName","history","key","initialRouteIndex","i","unshift","findIndex","route","changeIndex","state","currentRoute","filter","it","lastHistoryRouteItemIndex","findLastIndex","item","slice","concat","undefined","TabRouter","router","getInitialState","routeNames","routeParamList","includes","indexOf","map","stale","preloadedRouteKeys","getRehydratedState","partialState","find","r","Math","min","max","length","routeKeys","getStateForRouteNamesChange","routeKeyChanges","getStateForRouteFocus","getStateForAction","action","routeGetIdList","updatedState","getId","currentId","nextId","merge","path","nextState","focusedRoute","historyItemIndex","updatedHistory","previousHistoryItem","previousKey","routeIndex","newRoute","record","actionCreators"],"sourceRoot":"../../src","sources":["TabRouter.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
export function createParamsFromAction({
|
|
4
|
+
action,
|
|
5
|
+
routeParamList
|
|
6
|
+
}) {
|
|
7
|
+
const {
|
|
8
|
+
name,
|
|
9
|
+
params
|
|
10
|
+
} = action.payload;
|
|
11
|
+
return routeParamList[name] !== undefined ? {
|
|
12
|
+
...routeParamList[name],
|
|
13
|
+
...params
|
|
14
|
+
} : params;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=createParamsFromAction.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createParamsFromAction","action","routeParamList","name","params","payload","undefined"],"sourceRoot":"../../src","sources":["createParamsFromAction.tsx"],"mappings":";;AAYA,OAAO,SAASA,sBAAsBA,CAAC;EAAEC,MAAM;EAAEC;AAAwB,CAAC,EAAE;EAC1E,MAAM;IAAEC,IAAI;IAAEC;EAAO,CAAC,GAAGH,MAAM,CAACI,OAAO;EAEvC,OAAOH,cAAc,CAACC,IAAI,CAAC,KAAKG,SAAS,GACrC;IACE,GAAGJ,cAAc,CAACC,IAAI,CAAC;IACvB,GAAGC;EACL,CAAC,GACDA,MAAM;AACZ","ignoreList":[]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { nanoid } from 'nanoid/non-secure';
|
|
4
|
+
import { createParamsFromAction } from "./createParamsFromAction.js";
|
|
5
|
+
export function createRouteFromAction({
|
|
6
|
+
action,
|
|
7
|
+
routeParamList
|
|
8
|
+
}) {
|
|
9
|
+
const {
|
|
10
|
+
name
|
|
11
|
+
} = action.payload;
|
|
12
|
+
return {
|
|
13
|
+
key: `${name}-${nanoid()}`,
|
|
14
|
+
name,
|
|
15
|
+
params: createParamsFromAction({
|
|
16
|
+
action,
|
|
17
|
+
routeParamList
|
|
18
|
+
})
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=createRouteFromAction.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["nanoid","createParamsFromAction","createRouteFromAction","action","routeParamList","name","payload","key","params"],"sourceRoot":"../../src","sources":["createRouteFromAction.tsx"],"mappings":";;AAAA,SAASA,MAAM,QAAQ,mBAAmB;AAE1C,SAASC,sBAAsB,QAAQ,6BAA0B;AAajE,OAAO,SAASC,qBAAqBA,CAAC;EAAEC,MAAM;EAAEC;AAAwB,CAAC,EAAE;EACzE,MAAM;IAAEC;EAAK,CAAC,GAAGF,MAAM,CAACG,OAAO;EAE/B,OAAO;IACLC,GAAG,EAAE,GAAGF,IAAI,IAAIL,MAAM,CAAC,CAAC,EAAE;IAC1BK,IAAI;IACJG,MAAM,EAAEP,sBAAsB,CAAC;MAAEE,MAAM;MAAEC;IAAe,CAAC;EAC3D,CAAC;AACH","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StackRouter.d.ts","sourceRoot":"","sources":["../../../src/StackRouter.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"StackRouter.d.ts","sourceRoot":"","sources":["../../../src/StackRouter.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TabRouter.d.ts","sourceRoot":"","sources":["../../../src/TabRouter.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"TabRouter.d.ts","sourceRoot":"","sources":["../../../src/TabRouter.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAEV,oBAAoB,EACpB,eAAe,EACf,aAAa,EAGb,MAAM,EACP,MAAM,SAAS,CAAC;AAEjB,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,YAAY,GACpB,YAAY,GACZ,cAAc,GACd,OAAO,GACP,SAAS,GACT,aAAa,GACb,MAAM,CAAC;AAEX,MAAM,MAAM,gBAAgB,GAAG,oBAAoB,GAAG;IACpD;;;;;;;;OAQG;IACH,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,kBAAkB,CAAC,SAAS,SAAS,aAAa,IAAI,IAAI,CACpE,eAAe,CAAC,SAAS,CAAC,EAC1B,SAAS,CACV,GAAG;IACF;;OAEG;IACH,IAAI,EAAE,KAAK,CAAC;IACZ;;OAEG;IACH,OAAO,EAAE;QAAE,IAAI,EAAE,OAAO,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,EAAE,CAAC;IACvE;;OAEG;IACH,kBAAkB,EAAE,MAAM,EAAE,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,gBAAgB,CAAC,SAAS,SAAS,aAAa,IAAI;IAC9D;;;;;OAKG;IACH,MAAM,CAAC,SAAS,SAAS,MAAM,SAAS,EACtC,GAAG,IAAI,EAAE,SAAS,SAAS,OAAO,GAC9B,SAAS,SAAS,SAAS,CAAC,SAAS,CAAC,GACpC,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,GAClD,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,GACnD,KAAK,GACR,IAAI,CAAC;CACT,CAAC;AAIF,eAAO,MAAM,UAAU;iBACR,MAAM,WAAW,MAAM;;;;;;;CAMrC,CAAC;AA6GF,wBAAgB,SAAS,CAAC,EACxB,gBAAgB,EAChB,YAA2B,GAC5B,EAAE,gBAAgB,+FA4VlB"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { ParamListBase } from './types';
|
|
2
|
+
type Options = {
|
|
3
|
+
action: {
|
|
4
|
+
payload: {
|
|
5
|
+
name: string;
|
|
6
|
+
params?: object;
|
|
7
|
+
};
|
|
8
|
+
};
|
|
9
|
+
routeParamList: ParamListBase;
|
|
10
|
+
};
|
|
11
|
+
export declare function createParamsFromAction({ action, routeParamList }: Options): object | undefined;
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=createParamsFromAction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createParamsFromAction.d.ts","sourceRoot":"","sources":["../../../src/createParamsFromAction.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE7C,KAAK,OAAO,GAAG;IACb,MAAM,EAAE;QACN,OAAO,EAAE;YACP,IAAI,EAAE,MAAM,CAAC;YACb,MAAM,CAAC,EAAE,MAAM,CAAC;SACjB,CAAC;KACH,CAAC;IACF,cAAc,EAAE,aAAa,CAAC;CAC/B,CAAC;AAEF,wBAAgB,sBAAsB,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,EAAE,OAAO,sBASzE"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { ParamListBase } from './types';
|
|
2
|
+
type Options = {
|
|
3
|
+
action: {
|
|
4
|
+
payload: {
|
|
5
|
+
name: string;
|
|
6
|
+
params?: object;
|
|
7
|
+
};
|
|
8
|
+
};
|
|
9
|
+
routeParamList: ParamListBase;
|
|
10
|
+
};
|
|
11
|
+
export declare function createRouteFromAction({ action, routeParamList }: Options): {
|
|
12
|
+
key: string;
|
|
13
|
+
name: string;
|
|
14
|
+
params: object | undefined;
|
|
15
|
+
};
|
|
16
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=createRouteFromAction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createRouteFromAction.d.ts","sourceRoot":"","sources":["../../../src/createRouteFromAction.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE7C,KAAK,OAAO,GAAG;IACb,MAAM,EAAE;QACN,OAAO,EAAE;YACP,IAAI,EAAE,MAAM,CAAC;YACb,MAAM,CAAC,EAAE,MAAM,CAAC;SACjB,CAAC;KACH,CAAC;IACF,cAAc,EAAE,aAAa,CAAC;CAC/B,CAAC;AAEF,wBAAgB,qBAAqB,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,EAAE,OAAO;;;;EAQxE"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@react-navigation/routers",
|
|
3
3
|
"description": "Routers to help build custom navigators",
|
|
4
|
-
"version": "7.5.
|
|
4
|
+
"version": "7.5.2",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"react",
|
|
7
7
|
"react-native",
|
|
@@ -67,5 +67,5 @@
|
|
|
67
67
|
]
|
|
68
68
|
]
|
|
69
69
|
},
|
|
70
|
-
"gitHead": "
|
|
70
|
+
"gitHead": "c5c20929fa8370a72c40bf719e00a8118dff7a50"
|
|
71
71
|
}
|
package/src/StackRouter.tsx
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { nanoid } from 'nanoid/non-secure';
|
|
2
2
|
|
|
3
3
|
import { BaseRouter } from './BaseRouter';
|
|
4
|
+
import { createParamsFromAction } from './createParamsFromAction';
|
|
5
|
+
import { createRouteFromAction } from './createRouteFromAction';
|
|
4
6
|
import type {
|
|
5
7
|
CommonNavigationAction,
|
|
6
8
|
DefaultRouterOptions,
|
|
@@ -311,37 +313,40 @@ export function StackRouter(options: StackRouterOptions) {
|
|
|
311
313
|
|
|
312
314
|
switch (action.type) {
|
|
313
315
|
case 'REPLACE': {
|
|
314
|
-
const
|
|
316
|
+
const currentIndex =
|
|
315
317
|
action.target === state.key && action.source
|
|
316
318
|
? state.routes.findIndex((r) => r.key === action.source)
|
|
317
319
|
: state.index;
|
|
318
320
|
|
|
319
|
-
if (
|
|
321
|
+
if (currentIndex === -1) {
|
|
320
322
|
return null;
|
|
321
323
|
}
|
|
322
324
|
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
if (!state.routeNames.includes(name)) {
|
|
325
|
+
if (!state.routeNames.includes(action.payload.name)) {
|
|
326
326
|
return null;
|
|
327
327
|
}
|
|
328
328
|
|
|
329
|
+
const getId = options.routeGetIdList[action.payload.name];
|
|
330
|
+
const id = getId?.({ params: action.payload.params });
|
|
331
|
+
|
|
332
|
+
// Re-use preloaded route if available
|
|
333
|
+
let route = state.preloadedRoutes.find(
|
|
334
|
+
(route) =>
|
|
335
|
+
route.name === action.payload.name &&
|
|
336
|
+
id === getId?.({ params: route.params })
|
|
337
|
+
);
|
|
338
|
+
|
|
339
|
+
if (!route) {
|
|
340
|
+
route = createRouteFromAction({ action, routeParamList });
|
|
341
|
+
}
|
|
342
|
+
|
|
329
343
|
return {
|
|
330
344
|
...state,
|
|
331
|
-
routes: state.routes.map((
|
|
332
|
-
i ===
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
params:
|
|
337
|
-
routeParamList[name] !== undefined
|
|
338
|
-
? {
|
|
339
|
-
...routeParamList[name],
|
|
340
|
-
...params,
|
|
341
|
-
}
|
|
342
|
-
: params,
|
|
343
|
-
}
|
|
344
|
-
: route
|
|
345
|
+
routes: state.routes.map((r, i) =>
|
|
346
|
+
i === currentIndex ? route : r
|
|
347
|
+
),
|
|
348
|
+
preloadedRoutes: state.preloadedRoutes.filter(
|
|
349
|
+
(r) => r.key !== route.key
|
|
345
350
|
),
|
|
346
351
|
};
|
|
347
352
|
}
|
|
@@ -397,13 +402,7 @@ export function StackRouter(options: StackRouterOptions) {
|
|
|
397
402
|
}
|
|
398
403
|
: route.params;
|
|
399
404
|
} else {
|
|
400
|
-
params =
|
|
401
|
-
routeParamList[action.payload.name] !== undefined
|
|
402
|
-
? {
|
|
403
|
-
...routeParamList[action.payload.name],
|
|
404
|
-
...action.payload.params,
|
|
405
|
-
}
|
|
406
|
-
: action.payload.params;
|
|
405
|
+
params = createParamsFromAction({ action, routeParamList });
|
|
407
406
|
}
|
|
408
407
|
|
|
409
408
|
let routes: Route<string>[];
|
|
@@ -464,6 +463,10 @@ export function StackRouter(options: StackRouterOptions) {
|
|
|
464
463
|
}
|
|
465
464
|
|
|
466
465
|
case 'NAVIGATE_DEPRECATED': {
|
|
466
|
+
if (!state.routeNames.includes(action.payload.name)) {
|
|
467
|
+
return null;
|
|
468
|
+
}
|
|
469
|
+
|
|
467
470
|
if (
|
|
468
471
|
state.preloadedRoutes.find(
|
|
469
472
|
(route) =>
|
|
@@ -473,9 +476,6 @@ export function StackRouter(options: StackRouterOptions) {
|
|
|
473
476
|
) {
|
|
474
477
|
return null;
|
|
475
478
|
}
|
|
476
|
-
if (!state.routeNames.includes(action.payload.name)) {
|
|
477
|
-
return null;
|
|
478
|
-
}
|
|
479
479
|
|
|
480
480
|
// If the route already exists, navigate to that
|
|
481
481
|
let index = -1;
|
|
@@ -483,7 +483,7 @@ export function StackRouter(options: StackRouterOptions) {
|
|
|
483
483
|
const getId = options.routeGetIdList[action.payload.name];
|
|
484
484
|
const id = getId?.({ params: action.payload.params });
|
|
485
485
|
|
|
486
|
-
if (id) {
|
|
486
|
+
if (id !== undefined) {
|
|
487
487
|
index = state.routes.findIndex(
|
|
488
488
|
(route) =>
|
|
489
489
|
route.name === action.payload.name &&
|
|
@@ -492,28 +492,15 @@ export function StackRouter(options: StackRouterOptions) {
|
|
|
492
492
|
} else if (state.routes[state.index].name === action.payload.name) {
|
|
493
493
|
index = state.index;
|
|
494
494
|
} else {
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
break;
|
|
499
|
-
}
|
|
500
|
-
}
|
|
495
|
+
index = state.routes.findLastIndex(
|
|
496
|
+
(route) => route.name === action.payload.name
|
|
497
|
+
);
|
|
501
498
|
}
|
|
502
499
|
|
|
503
500
|
if (index === -1) {
|
|
504
501
|
const routes = [
|
|
505
502
|
...state.routes,
|
|
506
|
-
{
|
|
507
|
-
key: `${action.payload.name}-${nanoid()}`,
|
|
508
|
-
name: action.payload.name,
|
|
509
|
-
params:
|
|
510
|
-
routeParamList[action.payload.name] !== undefined
|
|
511
|
-
? {
|
|
512
|
-
...routeParamList[action.payload.name],
|
|
513
|
-
...action.payload.params,
|
|
514
|
-
}
|
|
515
|
-
: action.payload.params,
|
|
516
|
-
},
|
|
503
|
+
createRouteFromAction({ action, routeParamList }),
|
|
517
504
|
];
|
|
518
505
|
|
|
519
506
|
return {
|
|
@@ -538,13 +525,7 @@ export function StackRouter(options: StackRouterOptions) {
|
|
|
538
525
|
}
|
|
539
526
|
: route.params;
|
|
540
527
|
} else {
|
|
541
|
-
params =
|
|
542
|
-
routeParamList[route.name] !== undefined
|
|
543
|
-
? {
|
|
544
|
-
...routeParamList[route.name],
|
|
545
|
-
...action.payload.params,
|
|
546
|
-
}
|
|
547
|
-
: action.payload.params;
|
|
528
|
+
params = createParamsFromAction({ action, routeParamList });
|
|
548
529
|
}
|
|
549
530
|
|
|
550
531
|
return {
|
|
@@ -560,16 +541,16 @@ export function StackRouter(options: StackRouterOptions) {
|
|
|
560
541
|
}
|
|
561
542
|
|
|
562
543
|
case 'POP': {
|
|
563
|
-
const
|
|
544
|
+
const currentIndex =
|
|
564
545
|
action.target === state.key && action.source
|
|
565
546
|
? state.routes.findIndex((r) => r.key === action.source)
|
|
566
547
|
: state.index;
|
|
567
548
|
|
|
568
|
-
if (
|
|
569
|
-
const count = Math.max(
|
|
549
|
+
if (currentIndex > 0) {
|
|
550
|
+
const count = Math.max(currentIndex - action.payload.count + 1, 1);
|
|
570
551
|
const routes = state.routes
|
|
571
552
|
.slice(0, count)
|
|
572
|
-
.concat(state.routes.slice(
|
|
553
|
+
.concat(state.routes.slice(currentIndex + 1));
|
|
573
554
|
|
|
574
555
|
return {
|
|
575
556
|
...state,
|
|
@@ -592,26 +573,35 @@ export function StackRouter(options: StackRouterOptions) {
|
|
|
592
573
|
);
|
|
593
574
|
|
|
594
575
|
case 'POP_TO': {
|
|
576
|
+
const currentIndex =
|
|
577
|
+
action.target === state.key && action.source
|
|
578
|
+
? state.routes.findLastIndex((r) => r.key === action.source)
|
|
579
|
+
: state.index;
|
|
580
|
+
|
|
581
|
+
if (currentIndex === -1) {
|
|
582
|
+
return null;
|
|
583
|
+
}
|
|
584
|
+
|
|
595
585
|
if (!state.routeNames.includes(action.payload.name)) {
|
|
596
586
|
return null;
|
|
597
587
|
}
|
|
598
588
|
|
|
599
|
-
// If the route already exists, navigate to
|
|
589
|
+
// If the route already exists, navigate to it
|
|
600
590
|
let index = -1;
|
|
601
591
|
|
|
602
592
|
const getId = options.routeGetIdList[action.payload.name];
|
|
603
593
|
const id = getId?.({ params: action.payload.params });
|
|
604
594
|
|
|
605
|
-
if (id) {
|
|
595
|
+
if (id !== undefined) {
|
|
606
596
|
index = state.routes.findIndex(
|
|
607
597
|
(route) =>
|
|
608
598
|
route.name === action.payload.name &&
|
|
609
599
|
id === getId?.({ params: route.params })
|
|
610
600
|
);
|
|
611
|
-
} else if (state.routes[
|
|
612
|
-
index =
|
|
601
|
+
} else if (state.routes[currentIndex].name === action.payload.name) {
|
|
602
|
+
index = currentIndex;
|
|
613
603
|
} else {
|
|
614
|
-
for (let i =
|
|
604
|
+
for (let i = currentIndex; i >= 0; i--) {
|
|
615
605
|
if (state.routes[i].name === action.payload.name) {
|
|
616
606
|
index = i;
|
|
617
607
|
break;
|
|
@@ -621,25 +611,26 @@ export function StackRouter(options: StackRouterOptions) {
|
|
|
621
611
|
|
|
622
612
|
// If the route doesn't exist, remove the current route and add the new one
|
|
623
613
|
if (index === -1) {
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
},
|
|
637
|
-
];
|
|
614
|
+
// Re-use preloaded route if available
|
|
615
|
+
let route = state.preloadedRoutes.find(
|
|
616
|
+
(route) =>
|
|
617
|
+
route.name === action.payload.name &&
|
|
618
|
+
id === getId?.({ params: route.params })
|
|
619
|
+
);
|
|
620
|
+
|
|
621
|
+
if (!route) {
|
|
622
|
+
route = createRouteFromAction({ action, routeParamList });
|
|
623
|
+
}
|
|
624
|
+
|
|
625
|
+
const routes = state.routes.slice(0, currentIndex).concat(route);
|
|
638
626
|
|
|
639
627
|
return {
|
|
640
628
|
...state,
|
|
641
|
-
routes,
|
|
642
629
|
index: routes.length - 1,
|
|
630
|
+
routes,
|
|
631
|
+
preloadedRoutes: state.preloadedRoutes.filter(
|
|
632
|
+
(r) => r.key !== route.key
|
|
633
|
+
),
|
|
643
634
|
};
|
|
644
635
|
}
|
|
645
636
|
|
|
@@ -658,13 +649,7 @@ export function StackRouter(options: StackRouterOptions) {
|
|
|
658
649
|
}
|
|
659
650
|
: route.params;
|
|
660
651
|
} else {
|
|
661
|
-
params =
|
|
662
|
-
routeParamList[route.name] !== undefined
|
|
663
|
-
? {
|
|
664
|
-
...routeParamList[route.name],
|
|
665
|
-
...action.payload.params,
|
|
666
|
-
}
|
|
667
|
-
: action.payload.params;
|
|
652
|
+
params = createParamsFromAction({ action, routeParamList });
|
|
668
653
|
}
|
|
669
654
|
|
|
670
655
|
return {
|
|
@@ -718,13 +703,7 @@ export function StackRouter(options: StackRouterOptions) {
|
|
|
718
703
|
}
|
|
719
704
|
return {
|
|
720
705
|
...r,
|
|
721
|
-
params:
|
|
722
|
-
routeParamList[action.payload.name] !== undefined
|
|
723
|
-
? {
|
|
724
|
-
...routeParamList[action.payload.name],
|
|
725
|
-
...action.payload.params,
|
|
726
|
-
}
|
|
727
|
-
: action.payload.params,
|
|
706
|
+
params: createParamsFromAction({ action, routeParamList }),
|
|
728
707
|
};
|
|
729
708
|
}),
|
|
730
709
|
};
|
|
@@ -737,17 +716,7 @@ export function StackRouter(options: StackRouterOptions) {
|
|
|
737
716
|
r.name !== action.payload.name ||
|
|
738
717
|
id !== getId?.({ params: r.params })
|
|
739
718
|
)
|
|
740
|
-
.concat({
|
|
741
|
-
key: `${action.payload.name}-${nanoid()}`,
|
|
742
|
-
name: action.payload.name,
|
|
743
|
-
params:
|
|
744
|
-
routeParamList[action.payload.name] !== undefined
|
|
745
|
-
? {
|
|
746
|
-
...routeParamList[action.payload.name],
|
|
747
|
-
...action.payload.params,
|
|
748
|
-
}
|
|
749
|
-
: action.payload.params,
|
|
750
|
-
}),
|
|
719
|
+
.concat(createRouteFromAction({ action, routeParamList })),
|
|
751
720
|
};
|
|
752
721
|
}
|
|
753
722
|
}
|
package/src/TabRouter.tsx
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { nanoid } from 'nanoid/non-secure';
|
|
2
2
|
|
|
3
3
|
import { BaseRouter } from './BaseRouter';
|
|
4
|
+
import { createParamsFromAction } from './createParamsFromAction';
|
|
4
5
|
import type {
|
|
5
6
|
CommonNavigationAction,
|
|
6
7
|
DefaultRouterOptions,
|
|
@@ -397,13 +398,7 @@ export function TabRouter({
|
|
|
397
398
|
}
|
|
398
399
|
: route.params;
|
|
399
400
|
} else {
|
|
400
|
-
params =
|
|
401
|
-
routeParamList[route.name] !== undefined
|
|
402
|
-
? {
|
|
403
|
-
...routeParamList[route.name],
|
|
404
|
-
...action.payload.params,
|
|
405
|
-
}
|
|
406
|
-
: action.payload.params;
|
|
401
|
+
params = createParamsFromAction({ action, routeParamList });
|
|
407
402
|
}
|
|
408
403
|
|
|
409
404
|
const path =
|
|
@@ -520,15 +515,7 @@ export function TabRouter({
|
|
|
520
515
|
const key =
|
|
521
516
|
currentId === nextId ? route.key : `${route.name}-${nanoid()}`;
|
|
522
517
|
|
|
523
|
-
const params =
|
|
524
|
-
action.payload.params !== undefined ||
|
|
525
|
-
routeParamList[route.name] !== undefined
|
|
526
|
-
? {
|
|
527
|
-
...routeParamList[route.name],
|
|
528
|
-
...action.payload.params,
|
|
529
|
-
}
|
|
530
|
-
: undefined;
|
|
531
|
-
|
|
518
|
+
const params = createParamsFromAction({ action, routeParamList });
|
|
532
519
|
const newRoute =
|
|
533
520
|
params !== route.params ? { ...route, key, params } : route;
|
|
534
521
|
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { ParamListBase } from './types';
|
|
2
|
+
|
|
3
|
+
type Options = {
|
|
4
|
+
action: {
|
|
5
|
+
payload: {
|
|
6
|
+
name: string;
|
|
7
|
+
params?: object;
|
|
8
|
+
};
|
|
9
|
+
};
|
|
10
|
+
routeParamList: ParamListBase;
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
export function createParamsFromAction({ action, routeParamList }: Options) {
|
|
14
|
+
const { name, params } = action.payload;
|
|
15
|
+
|
|
16
|
+
return routeParamList[name] !== undefined
|
|
17
|
+
? {
|
|
18
|
+
...routeParamList[name],
|
|
19
|
+
...params,
|
|
20
|
+
}
|
|
21
|
+
: params;
|
|
22
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { nanoid } from 'nanoid/non-secure';
|
|
2
|
+
|
|
3
|
+
import { createParamsFromAction } from './createParamsFromAction';
|
|
4
|
+
import type { ParamListBase } from './types';
|
|
5
|
+
|
|
6
|
+
type Options = {
|
|
7
|
+
action: {
|
|
8
|
+
payload: {
|
|
9
|
+
name: string;
|
|
10
|
+
params?: object;
|
|
11
|
+
};
|
|
12
|
+
};
|
|
13
|
+
routeParamList: ParamListBase;
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
export function createRouteFromAction({ action, routeParamList }: Options) {
|
|
17
|
+
const { name } = action.payload;
|
|
18
|
+
|
|
19
|
+
return {
|
|
20
|
+
key: `${name}-${nanoid()}`,
|
|
21
|
+
name,
|
|
22
|
+
params: createParamsFromAction({ action, routeParamList }),
|
|
23
|
+
};
|
|
24
|
+
}
|