@react-navigation/routers 6.1.5 → 6.1.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/commonjs/BaseRouter.js +10 -17
- package/lib/commonjs/BaseRouter.js.map +1 -1
- package/lib/commonjs/CommonActions.js +0 -6
- package/lib/commonjs/CommonActions.js.map +1 -1
- package/lib/commonjs/DrawerRouter.js +12 -45
- package/lib/commonjs/DrawerRouter.js.map +1 -1
- package/lib/commonjs/StackRouter.js +40 -73
- package/lib/commonjs/StackRouter.js.map +1 -1
- package/lib/commonjs/TabRouter.js +37 -61
- package/lib/commonjs/TabRouter.js.map +1 -1
- package/lib/commonjs/index.js +0 -11
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/types.js.map +1 -1
- package/lib/module/BaseRouter.js +10 -16
- package/lib/module/BaseRouter.js.map +1 -1
- package/lib/module/CommonActions.js +0 -2
- package/lib/module/CommonActions.js.map +1 -1
- package/lib/module/DrawerRouter.js +12 -39
- package/lib/module/DrawerRouter.js.map +1 -1
- package/lib/module/StackRouter.js +40 -68
- package/lib/module/StackRouter.js.map +1 -1
- package/lib/module/TabRouter.js +37 -57
- package/lib/module/TabRouter.js.map +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/types.js.map +1 -1
- package/lib/typescript/src/BaseRouter.d.ts +1 -0
- package/lib/typescript/src/BaseRouter.d.ts.map +1 -0
- package/lib/typescript/src/CommonActions.d.ts +1 -0
- package/lib/typescript/src/CommonActions.d.ts.map +1 -0
- package/lib/typescript/src/DrawerRouter.d.ts +1 -0
- package/lib/typescript/src/DrawerRouter.d.ts.map +1 -0
- package/lib/typescript/src/StackRouter.d.ts +1 -0
- package/lib/typescript/src/StackRouter.d.ts.map +1 -0
- package/lib/typescript/src/TabRouter.d.ts +1 -0
- package/lib/typescript/src/TabRouter.d.ts.map +1 -0
- package/lib/typescript/src/index.d.ts +1 -0
- package/lib/typescript/src/index.d.ts.map +1 -0
- package/lib/typescript/src/types.d.ts +1 -0
- package/lib/typescript/src/types.d.ts.map +1 -0
- package/package.json +3 -3
- package/src/TabRouter.tsx +17 -3
|
@@ -5,13 +5,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.StackActions = void 0;
|
|
7
7
|
exports.default = StackRouter;
|
|
8
|
-
|
|
9
8
|
var _nonSecure = require("nanoid/non-secure");
|
|
10
|
-
|
|
11
9
|
var _BaseRouter = _interopRequireDefault(require("./BaseRouter"));
|
|
12
|
-
|
|
13
10
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
14
|
-
|
|
15
11
|
const StackActions = {
|
|
16
12
|
replace(name, params) {
|
|
17
13
|
return {
|
|
@@ -22,7 +18,6 @@ const StackActions = {
|
|
|
22
18
|
}
|
|
23
19
|
};
|
|
24
20
|
},
|
|
25
|
-
|
|
26
21
|
push(name, params) {
|
|
27
22
|
return {
|
|
28
23
|
type: 'PUSH',
|
|
@@ -32,7 +27,6 @@ const StackActions = {
|
|
|
32
27
|
}
|
|
33
28
|
};
|
|
34
29
|
},
|
|
35
|
-
|
|
36
30
|
pop() {
|
|
37
31
|
let count = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;
|
|
38
32
|
return {
|
|
@@ -42,20 +36,17 @@ const StackActions = {
|
|
|
42
36
|
}
|
|
43
37
|
};
|
|
44
38
|
},
|
|
45
|
-
|
|
46
39
|
popToTop() {
|
|
47
40
|
return {
|
|
48
41
|
type: 'POP_TO_TOP'
|
|
49
42
|
};
|
|
50
43
|
}
|
|
51
|
-
|
|
52
44
|
};
|
|
53
45
|
exports.StackActions = StackActions;
|
|
54
|
-
|
|
55
46
|
function StackRouter(options) {
|
|
56
|
-
const router = {
|
|
47
|
+
const router = {
|
|
48
|
+
..._BaseRouter.default,
|
|
57
49
|
type: 'stack',
|
|
58
|
-
|
|
59
50
|
getInitialState(_ref) {
|
|
60
51
|
let {
|
|
61
52
|
routeNames,
|
|
@@ -75,25 +66,23 @@ function StackRouter(options) {
|
|
|
75
66
|
}]
|
|
76
67
|
};
|
|
77
68
|
},
|
|
78
|
-
|
|
79
69
|
getRehydratedState(partialState, _ref2) {
|
|
80
70
|
let {
|
|
81
71
|
routeNames,
|
|
82
72
|
routeParamList
|
|
83
73
|
} = _ref2;
|
|
84
74
|
let state = partialState;
|
|
85
|
-
|
|
86
75
|
if (state.stale === false) {
|
|
87
76
|
return state;
|
|
88
77
|
}
|
|
89
|
-
|
|
90
|
-
|
|
78
|
+
const routes = state.routes.filter(route => routeNames.includes(route.name)).map(route => ({
|
|
79
|
+
...route,
|
|
91
80
|
key: route.key || `${route.name}-${(0, _nonSecure.nanoid)()}`,
|
|
92
|
-
params: routeParamList[route.name] !== undefined ? {
|
|
81
|
+
params: routeParamList[route.name] !== undefined ? {
|
|
82
|
+
...routeParamList[route.name],
|
|
93
83
|
...route.params
|
|
94
84
|
} : route.params
|
|
95
85
|
}));
|
|
96
|
-
|
|
97
86
|
if (routes.length === 0) {
|
|
98
87
|
const initialRouteName = options.initialRouteName !== undefined ? options.initialRouteName : routeNames[0];
|
|
99
88
|
routes.push({
|
|
@@ -102,7 +91,6 @@ function StackRouter(options) {
|
|
|
102
91
|
params: routeParamList[initialRouteName]
|
|
103
92
|
});
|
|
104
93
|
}
|
|
105
|
-
|
|
106
94
|
return {
|
|
107
95
|
stale: false,
|
|
108
96
|
type: 'stack',
|
|
@@ -112,7 +100,6 @@ function StackRouter(options) {
|
|
|
112
100
|
routes
|
|
113
101
|
};
|
|
114
102
|
},
|
|
115
|
-
|
|
116
103
|
getStateForRouteNamesChange(state, _ref3) {
|
|
117
104
|
let {
|
|
118
105
|
routeNames,
|
|
@@ -120,7 +107,6 @@ function StackRouter(options) {
|
|
|
120
107
|
routeKeyChanges
|
|
121
108
|
} = _ref3;
|
|
122
109
|
const routes = state.routes.filter(route => routeNames.includes(route.name) && !routeKeyChanges.includes(route.name));
|
|
123
|
-
|
|
124
110
|
if (routes.length === 0) {
|
|
125
111
|
const initialRouteName = options.initialRouteName !== undefined && routeNames.includes(options.initialRouteName) ? options.initialRouteName : routeNames[0];
|
|
126
112
|
routes.push({
|
|
@@ -129,62 +115,55 @@ function StackRouter(options) {
|
|
|
129
115
|
params: routeParamList[initialRouteName]
|
|
130
116
|
});
|
|
131
117
|
}
|
|
132
|
-
|
|
133
|
-
|
|
118
|
+
return {
|
|
119
|
+
...state,
|
|
134
120
|
routeNames,
|
|
135
121
|
routes,
|
|
136
122
|
index: Math.min(state.index, routes.length - 1)
|
|
137
123
|
};
|
|
138
124
|
},
|
|
139
|
-
|
|
140
125
|
getStateForRouteFocus(state, key) {
|
|
141
126
|
const index = state.routes.findIndex(r => r.key === key);
|
|
142
|
-
|
|
143
127
|
if (index === -1 || index === state.index) {
|
|
144
128
|
return state;
|
|
145
129
|
}
|
|
146
|
-
|
|
147
|
-
|
|
130
|
+
return {
|
|
131
|
+
...state,
|
|
148
132
|
index,
|
|
149
133
|
routes: state.routes.slice(0, index + 1)
|
|
150
134
|
};
|
|
151
135
|
},
|
|
152
|
-
|
|
153
136
|
getStateForAction(state, action, options) {
|
|
154
137
|
const {
|
|
155
138
|
routeParamList
|
|
156
139
|
} = options;
|
|
157
|
-
|
|
158
140
|
switch (action.type) {
|
|
159
141
|
case 'REPLACE':
|
|
160
142
|
{
|
|
161
143
|
const index = action.target === state.key && action.source ? state.routes.findIndex(r => r.key === action.source) : state.index;
|
|
162
|
-
|
|
163
144
|
if (index === -1) {
|
|
164
145
|
return null;
|
|
165
146
|
}
|
|
166
|
-
|
|
167
147
|
const {
|
|
168
148
|
name,
|
|
169
149
|
key,
|
|
170
150
|
params
|
|
171
151
|
} = action.payload;
|
|
172
|
-
|
|
173
152
|
if (!state.routeNames.includes(name)) {
|
|
174
153
|
return null;
|
|
175
154
|
}
|
|
176
|
-
|
|
177
|
-
|
|
155
|
+
return {
|
|
156
|
+
...state,
|
|
178
157
|
routes: state.routes.map((route, i) => i === index ? {
|
|
179
158
|
key: key !== undefined ? key : `${name}-${(0, _nonSecure.nanoid)()}`,
|
|
180
159
|
name,
|
|
181
|
-
params: routeParamList[name] !== undefined ? {
|
|
160
|
+
params: routeParamList[name] !== undefined ? {
|
|
161
|
+
...routeParamList[name],
|
|
182
162
|
...params
|
|
183
163
|
} : params
|
|
184
164
|
} : route)
|
|
185
165
|
};
|
|
186
166
|
}
|
|
187
|
-
|
|
188
167
|
case 'PUSH':
|
|
189
168
|
if (state.routeNames.includes(action.payload.name)) {
|
|
190
169
|
const getId = options.routeGetIdList[action.payload.name];
|
|
@@ -195,11 +174,12 @@ function StackRouter(options) {
|
|
|
195
174
|
params: route.params
|
|
196
175
|
}))) : undefined;
|
|
197
176
|
let routes;
|
|
198
|
-
|
|
199
177
|
if (route) {
|
|
200
178
|
routes = state.routes.filter(r => r.key !== route.key);
|
|
201
|
-
routes.push({
|
|
202
|
-
|
|
179
|
+
routes.push({
|
|
180
|
+
...route,
|
|
181
|
+
params: routeParamList[action.payload.name] !== undefined ? {
|
|
182
|
+
...routeParamList[action.payload.name],
|
|
203
183
|
...action.payload.params
|
|
204
184
|
} : action.payload.params
|
|
205
185
|
});
|
|
@@ -207,36 +187,33 @@ function StackRouter(options) {
|
|
|
207
187
|
routes = [...state.routes, {
|
|
208
188
|
key: `${action.payload.name}-${(0, _nonSecure.nanoid)()}`,
|
|
209
189
|
name: action.payload.name,
|
|
210
|
-
params: routeParamList[action.payload.name] !== undefined ? {
|
|
190
|
+
params: routeParamList[action.payload.name] !== undefined ? {
|
|
191
|
+
...routeParamList[action.payload.name],
|
|
211
192
|
...action.payload.params
|
|
212
193
|
} : action.payload.params
|
|
213
194
|
}];
|
|
214
195
|
}
|
|
215
|
-
|
|
216
|
-
|
|
196
|
+
return {
|
|
197
|
+
...state,
|
|
217
198
|
index: routes.length - 1,
|
|
218
199
|
routes
|
|
219
200
|
};
|
|
220
201
|
}
|
|
221
|
-
|
|
222
202
|
return null;
|
|
223
|
-
|
|
224
203
|
case 'POP':
|
|
225
204
|
{
|
|
226
205
|
const index = action.target === state.key && action.source ? state.routes.findIndex(r => r.key === action.source) : state.index;
|
|
227
|
-
|
|
228
206
|
if (index > 0) {
|
|
229
207
|
const count = Math.max(index - action.payload.count + 1, 1);
|
|
230
208
|
const routes = state.routes.slice(0, count).concat(state.routes.slice(index + 1));
|
|
231
|
-
return {
|
|
209
|
+
return {
|
|
210
|
+
...state,
|
|
232
211
|
index: routes.length - 1,
|
|
233
212
|
routes
|
|
234
213
|
};
|
|
235
214
|
}
|
|
236
|
-
|
|
237
215
|
return null;
|
|
238
216
|
}
|
|
239
|
-
|
|
240
217
|
case 'POP_TO_TOP':
|
|
241
218
|
return router.getStateForAction(state, {
|
|
242
219
|
type: 'POP',
|
|
@@ -244,23 +221,19 @@ function StackRouter(options) {
|
|
|
244
221
|
count: state.routes.length - 1
|
|
245
222
|
}
|
|
246
223
|
}, options);
|
|
247
|
-
|
|
248
224
|
case 'NAVIGATE':
|
|
249
225
|
if (action.payload.name !== undefined && !state.routeNames.includes(action.payload.name)) {
|
|
250
226
|
return null;
|
|
251
227
|
}
|
|
252
|
-
|
|
253
228
|
if (action.payload.key || action.payload.name) {
|
|
254
|
-
var _action$payload$path;
|
|
255
|
-
|
|
256
229
|
// If the route already exists, navigate to that
|
|
257
230
|
let index = -1;
|
|
258
|
-
const getId =
|
|
231
|
+
const getId =
|
|
232
|
+
// `getId` and `key` can't be used together
|
|
259
233
|
action.payload.key === undefined && action.payload.name !== undefined ? options.routeGetIdList[action.payload.name] : undefined;
|
|
260
234
|
const id = getId === null || getId === void 0 ? void 0 : getId({
|
|
261
235
|
params: action.payload.params
|
|
262
236
|
});
|
|
263
|
-
|
|
264
237
|
if (id) {
|
|
265
238
|
index = state.routes.findIndex(route => route.name === action.payload.name && id === (getId === null || getId === void 0 ? void 0 : getId({
|
|
266
239
|
params: route.params
|
|
@@ -275,53 +248,50 @@ function StackRouter(options) {
|
|
|
275
248
|
}
|
|
276
249
|
}
|
|
277
250
|
}
|
|
278
|
-
|
|
279
251
|
if (index === -1 && action.payload.key && action.payload.name === undefined) {
|
|
280
252
|
return null;
|
|
281
253
|
}
|
|
282
|
-
|
|
283
254
|
if (index === -1 && action.payload.name !== undefined) {
|
|
284
|
-
var _action$payload$key;
|
|
285
|
-
|
|
286
255
|
const routes = [...state.routes, {
|
|
287
|
-
key:
|
|
256
|
+
key: action.payload.key ?? `${action.payload.name}-${(0, _nonSecure.nanoid)()}`,
|
|
288
257
|
name: action.payload.name,
|
|
289
258
|
path: action.payload.path,
|
|
290
|
-
params: routeParamList[action.payload.name] !== undefined ? {
|
|
259
|
+
params: routeParamList[action.payload.name] !== undefined ? {
|
|
260
|
+
...routeParamList[action.payload.name],
|
|
291
261
|
...action.payload.params
|
|
292
262
|
} : action.payload.params
|
|
293
263
|
}];
|
|
294
|
-
return {
|
|
264
|
+
return {
|
|
265
|
+
...state,
|
|
295
266
|
routes,
|
|
296
267
|
index: routes.length - 1
|
|
297
268
|
};
|
|
298
269
|
}
|
|
299
|
-
|
|
300
270
|
const route = state.routes[index];
|
|
301
271
|
let params;
|
|
302
|
-
|
|
303
272
|
if (action.payload.merge) {
|
|
304
|
-
params = action.payload.params !== undefined || routeParamList[route.name] !== undefined ? {
|
|
273
|
+
params = action.payload.params !== undefined || routeParamList[route.name] !== undefined ? {
|
|
274
|
+
...routeParamList[route.name],
|
|
305
275
|
...route.params,
|
|
306
276
|
...action.payload.params
|
|
307
277
|
} : route.params;
|
|
308
278
|
} else {
|
|
309
|
-
params = routeParamList[route.name] !== undefined ? {
|
|
279
|
+
params = routeParamList[route.name] !== undefined ? {
|
|
280
|
+
...routeParamList[route.name],
|
|
310
281
|
...action.payload.params
|
|
311
282
|
} : action.payload.params;
|
|
312
283
|
}
|
|
313
|
-
|
|
314
|
-
|
|
284
|
+
return {
|
|
285
|
+
...state,
|
|
315
286
|
index,
|
|
316
|
-
routes: [...state.routes.slice(0, index), params !== route.params || action.payload.path && action.payload.path !== route.path ? {
|
|
317
|
-
|
|
287
|
+
routes: [...state.routes.slice(0, index), params !== route.params || action.payload.path && action.payload.path !== route.path ? {
|
|
288
|
+
...route,
|
|
289
|
+
path: action.payload.path ?? route.path,
|
|
318
290
|
params
|
|
319
291
|
} : state.routes[index]]
|
|
320
292
|
};
|
|
321
293
|
}
|
|
322
|
-
|
|
323
294
|
return null;
|
|
324
|
-
|
|
325
295
|
case 'GO_BACK':
|
|
326
296
|
if (state.index > 0) {
|
|
327
297
|
return router.getStateForAction(state, {
|
|
@@ -333,14 +303,11 @@ function StackRouter(options) {
|
|
|
333
303
|
source: action.source
|
|
334
304
|
}, options);
|
|
335
305
|
}
|
|
336
|
-
|
|
337
306
|
return null;
|
|
338
|
-
|
|
339
307
|
default:
|
|
340
308
|
return _BaseRouter.default.getStateForAction(state, action);
|
|
341
309
|
}
|
|
342
310
|
},
|
|
343
|
-
|
|
344
311
|
actionCreators: StackActions
|
|
345
312
|
};
|
|
346
313
|
return router;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["StackActions","replace","name","params","type","payload","push","pop","count","popToTop","StackRouter","options","router","BaseRouter","getInitialState","routeNames","routeParamList","initialRouteName","undefined","includes","stale","key","nanoid","index","routes","getRehydratedState","partialState","state","filter","route","map","length","getStateForRouteNamesChange","routeKeyChanges","Math","min","getStateForRouteFocus","findIndex","r","slice","getStateForAction","action","target","source","i","getId","routeGetIdList","id","find","max","concat","path","merge","actionCreators"],"sources":["StackRouter.tsx"],"sourcesContent":["import { nanoid } from 'nanoid/non-secure';\n\nimport BaseRouter from './BaseRouter';\nimport type {\n CommonNavigationAction,\n DefaultRouterOptions,\n NavigationState,\n ParamListBase,\n Route,\n Router,\n} from './types';\n\nexport type StackActionType =\n | {\n type: 'REPLACE';\n payload: { name: string; key?: string | undefined; params?: object };\n source?: string;\n target?: string;\n }\n | {\n type: 'PUSH';\n payload: { name: string; params?: object };\n source?: string;\n target?: string;\n }\n | {\n type: 'POP';\n payload: { count: number };\n source?: string;\n target?: string;\n }\n | {\n type: 'POP_TO_TOP';\n source?: string;\n target?: string;\n };\n\nexport type StackRouterOptions = DefaultRouterOptions;\n\nexport type StackNavigationState<ParamList extends ParamListBase> =\n NavigationState<ParamList> & {\n /**\n * Type of the router, in this case, it's stack.\n */\n type: 'stack';\n };\n\nexport type StackActionHelpers<ParamList extends ParamListBase> = {\n /**\n * Replace the current route with a new one.\n *\n * @param name Route name of the new route.\n * @param [params] Params object for the new route.\n */\n replace<RouteName extends keyof ParamList>(\n ...args: undefined extends ParamList[RouteName]\n ? [screen: RouteName] | [screen: RouteName, params: ParamList[RouteName]]\n : [screen: RouteName, params: ParamList[RouteName]]\n ): void;\n\n /**\n * Push a new screen onto the stack.\n *\n * @param name Name of the route for the tab.\n * @param [params] Params object for the route.\n */\n push<RouteName extends keyof ParamList>(\n ...args: undefined extends ParamList[RouteName]\n ? [screen: RouteName] | [screen: RouteName, params: ParamList[RouteName]]\n : [screen: RouteName, params: ParamList[RouteName]]\n ): void;\n\n /**\n * Pop a screen from the stack.\n */\n pop(count?: number): void;\n\n /**\n * Pop to the first route in the stack, dismissing all other screens.\n */\n popToTop(): void;\n};\n\nexport const StackActions = {\n replace(name: string, params?: object): StackActionType {\n return { type: 'REPLACE', payload: { name, params } };\n },\n push(name: string, params?: object): StackActionType {\n return { type: 'PUSH', payload: { name, params } };\n },\n pop(count: number = 1): StackActionType {\n return { type: 'POP', payload: { count } };\n },\n popToTop(): StackActionType {\n return { type: 'POP_TO_TOP' };\n },\n};\n\nexport default function StackRouter(options: StackRouterOptions) {\n const router: Router<\n StackNavigationState<ParamListBase>,\n CommonNavigationAction | StackActionType\n > = {\n ...BaseRouter,\n\n type: 'stack',\n\n getInitialState({ routeNames, routeParamList }) {\n const initialRouteName =\n options.initialRouteName !== undefined &&\n routeNames.includes(options.initialRouteName)\n ? options.initialRouteName\n : routeNames[0];\n\n return {\n stale: false,\n type: 'stack',\n key: `stack-${nanoid()}`,\n index: 0,\n routeNames,\n routes: [\n {\n key: `${initialRouteName}-${nanoid()}`,\n name: initialRouteName,\n params: routeParamList[initialRouteName],\n },\n ],\n };\n },\n\n getRehydratedState(partialState, { routeNames, routeParamList }) {\n let state = partialState;\n\n if (state.stale === false) {\n return state;\n }\n\n const routes = state.routes\n .filter((route) => routeNames.includes(route.name))\n .map(\n (route) =>\n ({\n ...route,\n key: route.key || `${route.name}-${nanoid()}`,\n params:\n routeParamList[route.name] !== undefined\n ? {\n ...routeParamList[route.name],\n ...route.params,\n }\n : route.params,\n } as Route<string>)\n );\n\n if (routes.length === 0) {\n const initialRouteName =\n options.initialRouteName !== undefined\n ? options.initialRouteName\n : routeNames[0];\n\n routes.push({\n key: `${initialRouteName}-${nanoid()}`,\n name: initialRouteName,\n params: routeParamList[initialRouteName],\n });\n }\n\n return {\n stale: false,\n type: 'stack',\n key: `stack-${nanoid()}`,\n index: routes.length - 1,\n routeNames,\n routes,\n };\n },\n\n getStateForRouteNamesChange(\n state,\n { routeNames, routeParamList, routeKeyChanges }\n ) {\n const routes = state.routes.filter(\n (route) =>\n routeNames.includes(route.name) &&\n !routeKeyChanges.includes(route.name)\n );\n\n if (routes.length === 0) {\n const initialRouteName =\n options.initialRouteName !== undefined &&\n routeNames.includes(options.initialRouteName)\n ? options.initialRouteName\n : routeNames[0];\n\n routes.push({\n key: `${initialRouteName}-${nanoid()}`,\n name: initialRouteName,\n params: routeParamList[initialRouteName],\n });\n }\n\n return {\n ...state,\n routeNames,\n routes,\n index: Math.min(state.index, routes.length - 1),\n };\n },\n\n getStateForRouteFocus(state, key) {\n const index = state.routes.findIndex((r) => r.key === key);\n\n if (index === -1 || index === state.index) {\n return state;\n }\n\n return {\n ...state,\n index,\n routes: state.routes.slice(0, index + 1),\n };\n },\n\n getStateForAction(state, action, options) {\n const { routeParamList } = options;\n\n switch (action.type) {\n case 'REPLACE': {\n const index =\n action.target === state.key && action.source\n ? state.routes.findIndex((r) => r.key === action.source)\n : state.index;\n\n if (index === -1) {\n return null;\n }\n\n const { name, key, params } = action.payload;\n\n if (!state.routeNames.includes(name)) {\n return null;\n }\n\n return {\n ...state,\n routes: state.routes.map((route, i) =>\n i === index\n ? {\n key: key !== undefined ? key : `${name}-${nanoid()}`,\n name,\n params:\n routeParamList[name] !== undefined\n ? {\n ...routeParamList[name],\n ...params,\n }\n : params,\n }\n : route\n ),\n };\n }\n\n case 'PUSH':\n if (state.routeNames.includes(action.payload.name)) {\n const getId = options.routeGetIdList[action.payload.name];\n const id = getId?.({ params: action.payload.params });\n\n const route = id\n ? state.routes.find(\n (route) =>\n route.name === action.payload.name &&\n id === getId?.({ params: route.params })\n )\n : undefined;\n\n let routes: Route<string>[];\n\n if (route) {\n routes = state.routes.filter((r) => r.key !== route.key);\n routes.push({\n ...route,\n params:\n routeParamList[action.payload.name] !== undefined\n ? {\n ...routeParamList[action.payload.name],\n ...action.payload.params,\n }\n : action.payload.params,\n });\n } else {\n routes = [\n ...state.routes,\n {\n key: `${action.payload.name}-${nanoid()}`,\n name: action.payload.name,\n params:\n routeParamList[action.payload.name] !== undefined\n ? {\n ...routeParamList[action.payload.name],\n ...action.payload.params,\n }\n : action.payload.params,\n },\n ];\n }\n\n return {\n ...state,\n index: routes.length - 1,\n routes,\n };\n }\n\n return null;\n\n case 'POP': {\n const index =\n action.target === state.key && action.source\n ? state.routes.findIndex((r) => r.key === action.source)\n : state.index;\n\n if (index > 0) {\n const count = Math.max(index - action.payload.count + 1, 1);\n const routes = state.routes\n .slice(0, count)\n .concat(state.routes.slice(index + 1));\n\n return {\n ...state,\n index: routes.length - 1,\n routes,\n };\n }\n\n return null;\n }\n\n case 'POP_TO_TOP':\n return router.getStateForAction(\n state,\n {\n type: 'POP',\n payload: { count: state.routes.length - 1 },\n },\n options\n );\n\n case 'NAVIGATE':\n if (\n action.payload.name !== undefined &&\n !state.routeNames.includes(action.payload.name)\n ) {\n return null;\n }\n\n if (action.payload.key || action.payload.name) {\n // If the route already exists, navigate to that\n let index = -1;\n\n const getId =\n // `getId` and `key` can't be used together\n action.payload.key === undefined &&\n action.payload.name !== undefined\n ? options.routeGetIdList[action.payload.name]\n : undefined;\n const id = getId?.({ params: action.payload.params });\n\n if (id) {\n index = state.routes.findIndex(\n (route) =>\n route.name === action.payload.name &&\n id === getId?.({ params: route.params })\n );\n } else if (\n (state.routes[state.index].name === action.payload.name &&\n action.payload.key === undefined) ||\n state.routes[state.index].key === action.payload.key\n ) {\n index = state.index;\n } else {\n for (let i = state.routes.length - 1; i >= 0; i--) {\n if (\n (state.routes[i].name === action.payload.name &&\n action.payload.key === undefined) ||\n state.routes[i].key === action.payload.key\n ) {\n index = i;\n break;\n }\n }\n }\n\n if (\n index === -1 &&\n action.payload.key &&\n action.payload.name === undefined\n ) {\n return null;\n }\n\n if (index === -1 && action.payload.name !== undefined) {\n const routes = [\n ...state.routes,\n {\n key:\n action.payload.key ?? `${action.payload.name}-${nanoid()}`,\n name: action.payload.name,\n path: action.payload.path,\n params:\n routeParamList[action.payload.name] !== undefined\n ? {\n ...routeParamList[action.payload.name],\n ...action.payload.params,\n }\n : action.payload.params,\n },\n ];\n\n return {\n ...state,\n routes,\n index: routes.length - 1,\n };\n }\n\n const route = state.routes[index];\n\n let params;\n\n if (action.payload.merge) {\n params =\n action.payload.params !== undefined ||\n routeParamList[route.name] !== undefined\n ? {\n ...routeParamList[route.name],\n ...route.params,\n ...action.payload.params,\n }\n : route.params;\n } else {\n params =\n routeParamList[route.name] !== undefined\n ? {\n ...routeParamList[route.name],\n ...action.payload.params,\n }\n : action.payload.params;\n }\n\n return {\n ...state,\n index,\n routes: [\n ...state.routes.slice(0, index),\n params !== route.params ||\n (action.payload.path && action.payload.path !== route.path)\n ? {\n ...route,\n path: action.payload.path ?? route.path,\n params,\n }\n : state.routes[index],\n ],\n };\n }\n\n return null;\n\n case 'GO_BACK':\n if (state.index > 0) {\n return router.getStateForAction(\n state,\n {\n type: 'POP',\n payload: { count: 1 },\n target: action.target,\n source: action.source,\n },\n options\n );\n }\n\n return null;\n\n default:\n return BaseRouter.getStateForAction(state, action);\n }\n },\n\n actionCreators: StackActions,\n };\n\n return router;\n}\n"],"mappings":";;;;;;;;AAAA;;AAEA;;;;AAiFO,MAAMA,YAAY,GAAG;EAC1BC,OAAO,CAACC,IAAD,EAAeC,MAAf,EAAiD;IACtD,OAAO;MAAEC,IAAI,EAAE,SAAR;MAAmBC,OAAO,EAAE;QAAEH,IAAF;QAAQC;MAAR;IAA5B,CAAP;EACD,CAHyB;;EAI1BG,IAAI,CAACJ,IAAD,EAAeC,MAAf,EAAiD;IACnD,OAAO;MAAEC,IAAI,EAAE,MAAR;MAAgBC,OAAO,EAAE;QAAEH,IAAF;QAAQC;MAAR;IAAzB,CAAP;EACD,CANyB;;EAO1BI,GAAG,GAAqC;IAAA,IAApCC,KAAoC,uEAApB,CAAoB;IACtC,OAAO;MAAEJ,IAAI,EAAE,KAAR;MAAeC,OAAO,EAAE;QAAEG;MAAF;IAAxB,CAAP;EACD,CATyB;;EAU1BC,QAAQ,GAAoB;IAC1B,OAAO;MAAEL,IAAI,EAAE;IAAR,CAAP;EACD;;AAZyB,CAArB;;;AAeQ,SAASM,WAAT,CAAqBC,OAArB,EAAkD;EAC/D,MAAMC,MAGL,GAAG,EACF,GAAGC,mBADD;IAGFT,IAAI,EAAE,OAHJ;;IAKFU,eAAe,OAAiC;MAAA,IAAhC;QAAEC,UAAF;QAAcC;MAAd,CAAgC;MAC9C,MAAMC,gBAAgB,GACpBN,OAAO,CAACM,gBAAR,KAA6BC,SAA7B,IACAH,UAAU,CAACI,QAAX,CAAoBR,OAAO,CAACM,gBAA5B,CADA,GAEIN,OAAO,CAACM,gBAFZ,GAGIF,UAAU,CAAC,CAAD,CAJhB;MAMA,OAAO;QACLK,KAAK,EAAE,KADF;QAELhB,IAAI,EAAE,OAFD;QAGLiB,GAAG,EAAG,SAAQ,IAAAC,iBAAA,GAAS,EAHlB;QAILC,KAAK,EAAE,CAJF;QAKLR,UALK;QAMLS,MAAM,EAAE,CACN;UACEH,GAAG,EAAG,GAAEJ,gBAAiB,IAAG,IAAAK,iBAAA,GAAS,EADvC;UAEEpB,IAAI,EAAEe,gBAFR;UAGEd,MAAM,EAAEa,cAAc,CAACC,gBAAD;QAHxB,CADM;MANH,CAAP;IAcD,CA1BC;;IA4BFQ,kBAAkB,CAACC,YAAD,SAA+C;MAAA,IAAhC;QAAEX,UAAF;QAAcC;MAAd,CAAgC;MAC/D,IAAIW,KAAK,GAAGD,YAAZ;;MAEA,IAAIC,KAAK,CAACP,KAAN,KAAgB,KAApB,EAA2B;QACzB,OAAOO,KAAP;MACD;;MAED,MAAMH,MAAM,GAAGG,KAAK,CAACH,MAAN,CACZI,MADY,CACJC,KAAD,IAAWd,UAAU,CAACI,QAAX,CAAoBU,KAAK,CAAC3B,IAA1B,CADN,EAEZ4B,GAFY,CAGVD,KAAD,KACG,EACC,GAAGA,KADJ;QAECR,GAAG,EAAEQ,KAAK,CAACR,GAAN,IAAc,GAAEQ,KAAK,CAAC3B,IAAK,IAAG,IAAAoB,iBAAA,GAAS,EAF7C;QAGCnB,MAAM,EACJa,cAAc,CAACa,KAAK,CAAC3B,IAAP,CAAd,KAA+BgB,SAA/B,GACI,EACE,GAAGF,cAAc,CAACa,KAAK,CAAC3B,IAAP,CADnB;UAEE,GAAG2B,KAAK,CAAC1B;QAFX,CADJ,GAKI0B,KAAK,CAAC1B;MATb,CADH,CAHW,CAAf;;MAiBA,IAAIqB,MAAM,CAACO,MAAP,KAAkB,CAAtB,EAAyB;QACvB,MAAMd,gBAAgB,GACpBN,OAAO,CAACM,gBAAR,KAA6BC,SAA7B,GACIP,OAAO,CAACM,gBADZ,GAEIF,UAAU,CAAC,CAAD,CAHhB;QAKAS,MAAM,CAAClB,IAAP,CAAY;UACVe,GAAG,EAAG,GAAEJ,gBAAiB,IAAG,IAAAK,iBAAA,GAAS,EAD3B;UAEVpB,IAAI,EAAEe,gBAFI;UAGVd,MAAM,EAAEa,cAAc,CAACC,gBAAD;QAHZ,CAAZ;MAKD;;MAED,OAAO;QACLG,KAAK,EAAE,KADF;QAELhB,IAAI,EAAE,OAFD;QAGLiB,GAAG,EAAG,SAAQ,IAAAC,iBAAA,GAAS,EAHlB;QAILC,KAAK,EAAEC,MAAM,CAACO,MAAP,GAAgB,CAJlB;QAKLhB,UALK;QAMLS;MANK,CAAP;IAQD,CAzEC;;IA2EFQ,2BAA2B,CACzBL,KADyB,SAGzB;MAAA,IADA;QAAEZ,UAAF;QAAcC,cAAd;QAA8BiB;MAA9B,CACA;MACA,MAAMT,MAAM,GAAGG,KAAK,CAACH,MAAN,CAAaI,MAAb,CACZC,KAAD,IACEd,UAAU,CAACI,QAAX,CAAoBU,KAAK,CAAC3B,IAA1B,KACA,CAAC+B,eAAe,CAACd,QAAhB,CAAyBU,KAAK,CAAC3B,IAA/B,CAHU,CAAf;;MAMA,IAAIsB,MAAM,CAACO,MAAP,KAAkB,CAAtB,EAAyB;QACvB,MAAMd,gBAAgB,GACpBN,OAAO,CAACM,gBAAR,KAA6BC,SAA7B,IACAH,UAAU,CAACI,QAAX,CAAoBR,OAAO,CAACM,gBAA5B,CADA,GAEIN,OAAO,CAACM,gBAFZ,GAGIF,UAAU,CAAC,CAAD,CAJhB;QAMAS,MAAM,CAAClB,IAAP,CAAY;UACVe,GAAG,EAAG,GAAEJ,gBAAiB,IAAG,IAAAK,iBAAA,GAAS,EAD3B;UAEVpB,IAAI,EAAEe,gBAFI;UAGVd,MAAM,EAAEa,cAAc,CAACC,gBAAD;QAHZ,CAAZ;MAKD;;MAED,OAAO,EACL,GAAGU,KADE;QAELZ,UAFK;QAGLS,MAHK;QAILD,KAAK,EAAEW,IAAI,CAACC,GAAL,CAASR,KAAK,CAACJ,KAAf,EAAsBC,MAAM,CAACO,MAAP,GAAgB,CAAtC;MAJF,CAAP;IAMD,CAzGC;;IA2GFK,qBAAqB,CAACT,KAAD,EAAQN,GAAR,EAAa;MAChC,MAAME,KAAK,GAAGI,KAAK,CAACH,MAAN,CAAaa,SAAb,CAAwBC,CAAD,IAAOA,CAAC,CAACjB,GAAF,KAAUA,GAAxC,CAAd;;MAEA,IAAIE,KAAK,KAAK,CAAC,CAAX,IAAgBA,KAAK,KAAKI,KAAK,CAACJ,KAApC,EAA2C;QACzC,OAAOI,KAAP;MACD;;MAED,OAAO,EACL,GAAGA,KADE;QAELJ,KAFK;QAGLC,MAAM,EAAEG,KAAK,CAACH,MAAN,CAAae,KAAb,CAAmB,CAAnB,EAAsBhB,KAAK,GAAG,CAA9B;MAHH,CAAP;IAKD,CAvHC;;IAyHFiB,iBAAiB,CAACb,KAAD,EAAQc,MAAR,EAAgB9B,OAAhB,EAAyB;MACxC,MAAM;QAAEK;MAAF,IAAqBL,OAA3B;;MAEA,QAAQ8B,MAAM,CAACrC,IAAf;QACE,KAAK,SAAL;UAAgB;YACd,MAAMmB,KAAK,GACTkB,MAAM,CAACC,MAAP,KAAkBf,KAAK,CAACN,GAAxB,IAA+BoB,MAAM,CAACE,MAAtC,GACIhB,KAAK,CAACH,MAAN,CAAaa,SAAb,CAAwBC,CAAD,IAAOA,CAAC,CAACjB,GAAF,KAAUoB,MAAM,CAACE,MAA/C,CADJ,GAEIhB,KAAK,CAACJ,KAHZ;;YAKA,IAAIA,KAAK,KAAK,CAAC,CAAf,EAAkB;cAChB,OAAO,IAAP;YACD;;YAED,MAAM;cAAErB,IAAF;cAAQmB,GAAR;cAAalB;YAAb,IAAwBsC,MAAM,CAACpC,OAArC;;YAEA,IAAI,CAACsB,KAAK,CAACZ,UAAN,CAAiBI,QAAjB,CAA0BjB,IAA1B,CAAL,EAAsC;cACpC,OAAO,IAAP;YACD;;YAED,OAAO,EACL,GAAGyB,KADE;cAELH,MAAM,EAAEG,KAAK,CAACH,MAAN,CAAaM,GAAb,CAAiB,CAACD,KAAD,EAAQe,CAAR,KACvBA,CAAC,KAAKrB,KAAN,GACI;gBACEF,GAAG,EAAEA,GAAG,KAAKH,SAAR,GAAoBG,GAApB,GAA2B,GAAEnB,IAAK,IAAG,IAAAoB,iBAAA,GAAS,EADrD;gBAEEpB,IAFF;gBAGEC,MAAM,EACJa,cAAc,CAACd,IAAD,CAAd,KAAyBgB,SAAzB,GACI,EACE,GAAGF,cAAc,CAACd,IAAD,CADnB;kBAEE,GAAGC;gBAFL,CADJ,GAKIA;cATR,CADJ,GAYI0B,KAbE;YAFH,CAAP;UAkBD;;QAED,KAAK,MAAL;UACE,IAAIF,KAAK,CAACZ,UAAN,CAAiBI,QAAjB,CAA0BsB,MAAM,CAACpC,OAAP,CAAeH,IAAzC,CAAJ,EAAoD;YAClD,MAAM2C,KAAK,GAAGlC,OAAO,CAACmC,cAAR,CAAuBL,MAAM,CAACpC,OAAP,CAAeH,IAAtC,CAAd;YACA,MAAM6C,EAAE,GAAGF,KAAH,aAAGA,KAAH,uBAAGA,KAAK,CAAG;cAAE1C,MAAM,EAAEsC,MAAM,CAACpC,OAAP,CAAeF;YAAzB,CAAH,CAAhB;YAEA,MAAM0B,KAAK,GAAGkB,EAAE,GACZpB,KAAK,CAACH,MAAN,CAAawB,IAAb,CACGnB,KAAD,IACEA,KAAK,CAAC3B,IAAN,KAAeuC,MAAM,CAACpC,OAAP,CAAeH,IAA9B,IACA6C,EAAE,MAAKF,KAAL,aAAKA,KAAL,uBAAKA,KAAK,CAAG;cAAE1C,MAAM,EAAE0B,KAAK,CAAC1B;YAAhB,CAAH,CAAV,CAHN,CADY,GAMZe,SANJ;YAQA,IAAIM,MAAJ;;YAEA,IAAIK,KAAJ,EAAW;cACTL,MAAM,GAAGG,KAAK,CAACH,MAAN,CAAaI,MAAb,CAAqBU,CAAD,IAAOA,CAAC,CAACjB,GAAF,KAAUQ,KAAK,CAACR,GAA3C,CAAT;cACAG,MAAM,CAAClB,IAAP,CAAY,EACV,GAAGuB,KADO;gBAEV1B,MAAM,EACJa,cAAc,CAACyB,MAAM,CAACpC,OAAP,CAAeH,IAAhB,CAAd,KAAwCgB,SAAxC,GACI,EACE,GAAGF,cAAc,CAACyB,MAAM,CAACpC,OAAP,CAAeH,IAAhB,CADnB;kBAEE,GAAGuC,MAAM,CAACpC,OAAP,CAAeF;gBAFpB,CADJ,GAKIsC,MAAM,CAACpC,OAAP,CAAeF;cARX,CAAZ;YAUD,CAZD,MAYO;cACLqB,MAAM,GAAG,CACP,GAAGG,KAAK,CAACH,MADF,EAEP;gBACEH,GAAG,EAAG,GAAEoB,MAAM,CAACpC,OAAP,CAAeH,IAAK,IAAG,IAAAoB,iBAAA,GAAS,EAD1C;gBAEEpB,IAAI,EAAEuC,MAAM,CAACpC,OAAP,CAAeH,IAFvB;gBAGEC,MAAM,EACJa,cAAc,CAACyB,MAAM,CAACpC,OAAP,CAAeH,IAAhB,CAAd,KAAwCgB,SAAxC,GACI,EACE,GAAGF,cAAc,CAACyB,MAAM,CAACpC,OAAP,CAAeH,IAAhB,CADnB;kBAEE,GAAGuC,MAAM,CAACpC,OAAP,CAAeF;gBAFpB,CADJ,GAKIsC,MAAM,CAACpC,OAAP,CAAeF;cATvB,CAFO,CAAT;YAcD;;YAED,OAAO,EACL,GAAGwB,KADE;cAELJ,KAAK,EAAEC,MAAM,CAACO,MAAP,GAAgB,CAFlB;cAGLP;YAHK,CAAP;UAKD;;UAED,OAAO,IAAP;;QAEF,KAAK,KAAL;UAAY;YACV,MAAMD,KAAK,GACTkB,MAAM,CAACC,MAAP,KAAkBf,KAAK,CAACN,GAAxB,IAA+BoB,MAAM,CAACE,MAAtC,GACIhB,KAAK,CAACH,MAAN,CAAaa,SAAb,CAAwBC,CAAD,IAAOA,CAAC,CAACjB,GAAF,KAAUoB,MAAM,CAACE,MAA/C,CADJ,GAEIhB,KAAK,CAACJ,KAHZ;;YAKA,IAAIA,KAAK,GAAG,CAAZ,EAAe;cACb,MAAMf,KAAK,GAAG0B,IAAI,CAACe,GAAL,CAAS1B,KAAK,GAAGkB,MAAM,CAACpC,OAAP,CAAeG,KAAvB,GAA+B,CAAxC,EAA2C,CAA3C,CAAd;cACA,MAAMgB,MAAM,GAAGG,KAAK,CAACH,MAAN,CACZe,KADY,CACN,CADM,EACH/B,KADG,EAEZ0C,MAFY,CAELvB,KAAK,CAACH,MAAN,CAAae,KAAb,CAAmBhB,KAAK,GAAG,CAA3B,CAFK,CAAf;cAIA,OAAO,EACL,GAAGI,KADE;gBAELJ,KAAK,EAAEC,MAAM,CAACO,MAAP,GAAgB,CAFlB;gBAGLP;cAHK,CAAP;YAKD;;YAED,OAAO,IAAP;UACD;;QAED,KAAK,YAAL;UACE,OAAOZ,MAAM,CAAC4B,iBAAP,CACLb,KADK,EAEL;YACEvB,IAAI,EAAE,KADR;YAEEC,OAAO,EAAE;cAAEG,KAAK,EAAEmB,KAAK,CAACH,MAAN,CAAaO,MAAb,GAAsB;YAA/B;UAFX,CAFK,EAMLpB,OANK,CAAP;;QASF,KAAK,UAAL;UACE,IACE8B,MAAM,CAACpC,OAAP,CAAeH,IAAf,KAAwBgB,SAAxB,IACA,CAACS,KAAK,CAACZ,UAAN,CAAiBI,QAAjB,CAA0BsB,MAAM,CAACpC,OAAP,CAAeH,IAAzC,CAFH,EAGE;YACA,OAAO,IAAP;UACD;;UAED,IAAIuC,MAAM,CAACpC,OAAP,CAAegB,GAAf,IAAsBoB,MAAM,CAACpC,OAAP,CAAeH,IAAzC,EAA+C;YAAA;;YAC7C;YACA,IAAIqB,KAAK,GAAG,CAAC,CAAb;YAEA,MAAMsB,KAAK,GACT;YACAJ,MAAM,CAACpC,OAAP,CAAegB,GAAf,KAAuBH,SAAvB,IACAuB,MAAM,CAACpC,OAAP,CAAeH,IAAf,KAAwBgB,SADxB,GAEIP,OAAO,CAACmC,cAAR,CAAuBL,MAAM,CAACpC,OAAP,CAAeH,IAAtC,CAFJ,GAGIgB,SALN;YAMA,MAAM6B,EAAE,GAAGF,KAAH,aAAGA,KAAH,uBAAGA,KAAK,CAAG;cAAE1C,MAAM,EAAEsC,MAAM,CAACpC,OAAP,CAAeF;YAAzB,CAAH,CAAhB;;YAEA,IAAI4C,EAAJ,EAAQ;cACNxB,KAAK,GAAGI,KAAK,CAACH,MAAN,CAAaa,SAAb,CACLR,KAAD,IACEA,KAAK,CAAC3B,IAAN,KAAeuC,MAAM,CAACpC,OAAP,CAAeH,IAA9B,IACA6C,EAAE,MAAKF,KAAL,aAAKA,KAAL,uBAAKA,KAAK,CAAG;gBAAE1C,MAAM,EAAE0B,KAAK,CAAC1B;cAAhB,CAAH,CAAV,CAHE,CAAR;YAKD,CAND,MAMO,IACJwB,KAAK,CAACH,MAAN,CAAaG,KAAK,CAACJ,KAAnB,EAA0BrB,IAA1B,KAAmCuC,MAAM,CAACpC,OAAP,CAAeH,IAAlD,IACCuC,MAAM,CAACpC,OAAP,CAAegB,GAAf,KAAuBH,SADzB,IAEAS,KAAK,CAACH,MAAN,CAAaG,KAAK,CAACJ,KAAnB,EAA0BF,GAA1B,KAAkCoB,MAAM,CAACpC,OAAP,CAAegB,GAH5C,EAIL;cACAE,KAAK,GAAGI,KAAK,CAACJ,KAAd;YACD,CANM,MAMA;cACL,KAAK,IAAIqB,CAAC,GAAGjB,KAAK,CAACH,MAAN,CAAaO,MAAb,GAAsB,CAAnC,EAAsCa,CAAC,IAAI,CAA3C,EAA8CA,CAAC,EAA/C,EAAmD;gBACjD,IACGjB,KAAK,CAACH,MAAN,CAAaoB,CAAb,EAAgB1C,IAAhB,KAAyBuC,MAAM,CAACpC,OAAP,CAAeH,IAAxC,IACCuC,MAAM,CAACpC,OAAP,CAAegB,GAAf,KAAuBH,SADzB,IAEAS,KAAK,CAACH,MAAN,CAAaoB,CAAb,EAAgBvB,GAAhB,KAAwBoB,MAAM,CAACpC,OAAP,CAAegB,GAHzC,EAIE;kBACAE,KAAK,GAAGqB,CAAR;kBACA;gBACD;cACF;YACF;;YAED,IACErB,KAAK,KAAK,CAAC,CAAX,IACAkB,MAAM,CAACpC,OAAP,CAAegB,GADf,IAEAoB,MAAM,CAACpC,OAAP,CAAeH,IAAf,KAAwBgB,SAH1B,EAIE;cACA,OAAO,IAAP;YACD;;YAED,IAAIK,KAAK,KAAK,CAAC,CAAX,IAAgBkB,MAAM,CAACpC,OAAP,CAAeH,IAAf,KAAwBgB,SAA5C,EAAuD;cAAA;;cACrD,MAAMM,MAAM,GAAG,CACb,GAAGG,KAAK,CAACH,MADI,EAEb;gBACEH,GAAG,yBACDoB,MAAM,CAACpC,OAAP,CAAegB,GADd,qEACsB,GAAEoB,MAAM,CAACpC,OAAP,CAAeH,IAAK,IAAG,IAAAoB,iBAAA,GAAS,EAF7D;gBAGEpB,IAAI,EAAEuC,MAAM,CAACpC,OAAP,CAAeH,IAHvB;gBAIEiD,IAAI,EAAEV,MAAM,CAACpC,OAAP,CAAe8C,IAJvB;gBAKEhD,MAAM,EACJa,cAAc,CAACyB,MAAM,CAACpC,OAAP,CAAeH,IAAhB,CAAd,KAAwCgB,SAAxC,GACI,EACE,GAAGF,cAAc,CAACyB,MAAM,CAACpC,OAAP,CAAeH,IAAhB,CADnB;kBAEE,GAAGuC,MAAM,CAACpC,OAAP,CAAeF;gBAFpB,CADJ,GAKIsC,MAAM,CAACpC,OAAP,CAAeF;cAXvB,CAFa,CAAf;cAiBA,OAAO,EACL,GAAGwB,KADE;gBAELH,MAFK;gBAGLD,KAAK,EAAEC,MAAM,CAACO,MAAP,GAAgB;cAHlB,CAAP;YAKD;;YAED,MAAMF,KAAK,GAAGF,KAAK,CAACH,MAAN,CAAaD,KAAb,CAAd;YAEA,IAAIpB,MAAJ;;YAEA,IAAIsC,MAAM,CAACpC,OAAP,CAAe+C,KAAnB,EAA0B;cACxBjD,MAAM,GACJsC,MAAM,CAACpC,OAAP,CAAeF,MAAf,KAA0Be,SAA1B,IACAF,cAAc,CAACa,KAAK,CAAC3B,IAAP,CAAd,KAA+BgB,SAD/B,GAEI,EACE,GAAGF,cAAc,CAACa,KAAK,CAAC3B,IAAP,CADnB;gBAEE,GAAG2B,KAAK,CAAC1B,MAFX;gBAGE,GAAGsC,MAAM,CAACpC,OAAP,CAAeF;cAHpB,CAFJ,GAOI0B,KAAK,CAAC1B,MARZ;YASD,CAVD,MAUO;cACLA,MAAM,GACJa,cAAc,CAACa,KAAK,CAAC3B,IAAP,CAAd,KAA+BgB,SAA/B,GACI,EACE,GAAGF,cAAc,CAACa,KAAK,CAAC3B,IAAP,CADnB;gBAEE,GAAGuC,MAAM,CAACpC,OAAP,CAAeF;cAFpB,CADJ,GAKIsC,MAAM,CAACpC,OAAP,CAAeF,MANrB;YAOD;;YAED,OAAO,EACL,GAAGwB,KADE;cAELJ,KAFK;cAGLC,MAAM,EAAE,CACN,GAAGG,KAAK,CAACH,MAAN,CAAae,KAAb,CAAmB,CAAnB,EAAsBhB,KAAtB,CADG,EAENpB,MAAM,KAAK0B,KAAK,CAAC1B,MAAjB,IACCsC,MAAM,CAACpC,OAAP,CAAe8C,IAAf,IAAuBV,MAAM,CAACpC,OAAP,CAAe8C,IAAf,KAAwBtB,KAAK,CAACsB,IADtD,GAEI,EACE,GAAGtB,KADL;gBAEEsB,IAAI,0BAAEV,MAAM,CAACpC,OAAP,CAAe8C,IAAjB,uEAAyBtB,KAAK,CAACsB,IAFrC;gBAGEhD;cAHF,CAFJ,GAOIwB,KAAK,CAACH,MAAN,CAAaD,KAAb,CATE;YAHH,CAAP;UAeD;;UAED,OAAO,IAAP;;QAEF,KAAK,SAAL;UACE,IAAII,KAAK,CAACJ,KAAN,GAAc,CAAlB,EAAqB;YACnB,OAAOX,MAAM,CAAC4B,iBAAP,CACLb,KADK,EAEL;cACEvB,IAAI,EAAE,KADR;cAEEC,OAAO,EAAE;gBAAEG,KAAK,EAAE;cAAT,CAFX;cAGEkC,MAAM,EAAED,MAAM,CAACC,MAHjB;cAIEC,MAAM,EAAEF,MAAM,CAACE;YAJjB,CAFK,EAQLhC,OARK,CAAP;UAUD;;UAED,OAAO,IAAP;;QAEF;UACE,OAAOE,mBAAA,CAAW2B,iBAAX,CAA6Bb,KAA7B,EAAoCc,MAApC,CAAP;MApQJ;IAsQD,CAlYC;;IAoYFY,cAAc,EAAErD;EApYd,CAHJ;EA0YA,OAAOY,MAAP;AACD"}
|
|
1
|
+
{"version":3,"names":["StackActions","replace","name","params","type","payload","push","pop","count","popToTop","StackRouter","options","router","BaseRouter","getInitialState","routeNames","routeParamList","initialRouteName","undefined","includes","stale","key","nanoid","index","routes","getRehydratedState","partialState","state","filter","route","map","length","getStateForRouteNamesChange","routeKeyChanges","Math","min","getStateForRouteFocus","findIndex","r","slice","getStateForAction","action","target","source","i","getId","routeGetIdList","id","find","max","concat","path","merge","actionCreators"],"sourceRoot":"../../src","sources":["StackRouter.tsx"],"mappings":"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"}
|