@react-navigation/routers 8.0.0-alpha.1 → 8.0.0-alpha.11
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/BaseRouter.js +3 -2
- package/lib/module/BaseRouter.js.map +1 -1
- package/lib/module/CommonActions.js.map +1 -1
- package/lib/module/StackRouter.js +334 -149
- package/lib/module/StackRouter.js.map +1 -1
- package/lib/module/TabRouter.js +52 -11
- package/lib/module/TabRouter.js.map +1 -1
- package/lib/typescript/src/BaseRouter.d.ts +7 -7
- package/lib/typescript/src/BaseRouter.d.ts.map +1 -1
- package/lib/typescript/src/CommonActions.d.ts +35 -35
- package/lib/typescript/src/CommonActions.d.ts.map +1 -1
- package/lib/typescript/src/DrawerRouter.d.ts +5 -5
- package/lib/typescript/src/DrawerRouter.d.ts.map +1 -1
- package/lib/typescript/src/StackRouter.d.ts +41 -18
- package/lib/typescript/src/StackRouter.d.ts.map +1 -1
- package/lib/typescript/src/TabRouter.d.ts +6 -6
- package/lib/typescript/src/TabRouter.d.ts.map +1 -1
- package/lib/typescript/src/createParamsFromAction.d.ts +2 -2
- package/lib/typescript/src/createParamsFromAction.d.ts.map +1 -1
- package/lib/typescript/src/createRouteFromAction.d.ts +2 -2
- package/lib/typescript/src/createRouteFromAction.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +9 -9
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/types.d.ts +17 -27
- package/lib/typescript/src/types.d.ts.map +1 -1
- package/package.json +7 -7
- package/src/BaseRouter.tsx +4 -4
- package/src/CommonActions.tsx +36 -34
- package/src/DrawerRouter.tsx +3 -3
- package/src/StackRouter.tsx +546 -187
- package/src/TabRouter.tsx +79 -18
- package/src/createParamsFromAction.tsx +1 -1
- package/src/createRouteFromAction.tsx +1 -1
- package/src/types.tsx +30 -39
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StackRouter.d.ts","sourceRoot":"","sources":["../../../src/StackRouter.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAEV,oBAAoB,EACpB,eAAe,EACf,
|
|
1
|
+
{"version":3,"file":"StackRouter.d.ts","sourceRoot":"","sources":["../../../src/StackRouter.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAEV,oBAAoB,EACpB,eAAe,EACf,aAAa,EAEb,MAAM,EACP,MAAM,YAAS,CAAC;AAEjB,MAAM,MAAM,eAAe,GACvB;IACE,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,CAAC;IACvD,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7B,GACD;IACE,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,CAAC;IACvD,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7B,GACD;IACE,IAAI,EAAE,KAAK,CAAC;IACZ,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7B,GACD;IACE,IAAI,EAAE,YAAY,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7B,GACD;IACE,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,EAAE;QACP,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QAC5B,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;KAC7B,CAAC;IACF,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7B,GACD;IACE,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,EAAE;QAAE,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7B,CAAC;AAEN,MAAM,MAAM,kBAAkB,GAAG,oBAAoB,CAAC;AAEtD,MAAM,MAAM,oBAAoB,CAAC,SAAS,SAAS,aAAa,IAC9D,eAAe,CAAC,SAAS,CAAC,GAAG;IAC3B;;OAEG;IACH,IAAI,EAAE,OAAO,CAAC;IACd;;;;OAIG;IACH,iBAAiB,EAAE,MAAM,EAAE,CAAC;CAC7B,CAAC;AAEJ,MAAM,MAAM,kBAAkB,CAAC,SAAS,SAAS,aAAa,IAAI;IAChE;;;;;OAKG;IACH,OAAO,CAAC,SAAS,SAAS,MAAM,SAAS,EACvC,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;IAER;;;;;OAKG;IACH,IAAI,CAAC,SAAS,SAAS,MAAM,SAAS,EACpC,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;IAER;;OAEG;IACH,GAAG,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE1B;;OAEG;IACH,QAAQ,IAAI,IAAI,CAAC;IAEjB;;;;;;;OAOG;IACH,KAAK,CAAC,SAAS,SAAS,MAAM,SAAS,EACrC,GAAG,IAAI,EAAE,SAAS,SAAS,OAAO,GAC9B,SAAS,SAAS,SAAS,CAAC,SAAS,CAAC,GACpC;QACE,MAAM,EAAE,SAAS;QACjB,MAAM,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC;QAC7B,OAAO,CAAC,EAAE;YAAE,KAAK,CAAC,EAAE,OAAO,CAAA;SAAE;KAC9B,GACD;QACE,MAAM,EAAE,SAAS;QACjB,MAAM,EAAE,SAAS,CAAC,SAAS,CAAC;QAC5B,OAAO,CAAC,EAAE;YAAE,KAAK,CAAC,EAAE,OAAO,CAAA;SAAE;KAC9B,GACH,KAAK,GACR,IAAI,CAAC;IAER;;;;;;OAMG;IACH,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC;CAC/B,CAAC;AAEF,eAAO,MAAM,YAAY;kBACT,MAAM,WAAW,MAAM;;;;;;;eAM1B,MAAM,WAAW,MAAM;;;;;;;gBAMvB,MAAM;;;;;;;;;gBASL,MAAM,WAAW,MAAM,YAAY;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;;;;;;;;mBAUnD,OAAO;;;;;;CAMvB,CAAC;AA6FF,wBAAgB,WAAW,CAAC,OAAO,EAAE,kBAAkB,sGAsxBtD"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import type { DefaultRouterOptions, NavigationState, ParamListBase, Router } from './types';
|
|
1
|
+
import type { DefaultRouterOptions, NavigationState, ParamListBase, Router } from './types.js';
|
|
2
2
|
export type TabActionType = {
|
|
3
3
|
type: 'JUMP_TO';
|
|
4
4
|
payload: {
|
|
5
5
|
name: string;
|
|
6
|
-
params?: object;
|
|
6
|
+
params?: object | undefined;
|
|
7
7
|
};
|
|
8
|
-
source?: string;
|
|
9
|
-
target?: string;
|
|
8
|
+
source?: string | undefined;
|
|
9
|
+
target?: string | undefined;
|
|
10
10
|
};
|
|
11
11
|
export type BackBehavior = 'firstRoute' | 'initialRoute' | 'order' | 'history' | 'fullHistory' | 'none';
|
|
12
12
|
export type TabRouterOptions = DefaultRouterOptions & {
|
|
@@ -19,7 +19,7 @@ export type TabRouterOptions = DefaultRouterOptions & {
|
|
|
19
19
|
* - `fullHistory` - return to last visited route; doesn't drop duplicate entries unlike `history` - matches behavior of web pages
|
|
20
20
|
* - `none` - do not handle going back
|
|
21
21
|
*/
|
|
22
|
-
backBehavior?: BackBehavior;
|
|
22
|
+
backBehavior?: BackBehavior | undefined;
|
|
23
23
|
};
|
|
24
24
|
export type TabNavigationState<ParamList extends ParamListBase> = Omit<NavigationState<ParamList>, 'history'> & {
|
|
25
25
|
/**
|
|
@@ -57,5 +57,5 @@ export declare const TabActions: {
|
|
|
57
57
|
};
|
|
58
58
|
};
|
|
59
59
|
};
|
|
60
|
-
export declare function TabRouter({ initialRouteName, backBehavior, }: TabRouterOptions): Router<TabNavigationState<ParamListBase>, import("./CommonActions").Action | TabActionType>;
|
|
60
|
+
export declare function TabRouter({ initialRouteName, backBehavior, }: TabRouterOptions): Router<TabNavigationState<ParamListBase>, import("./CommonActions.js").Action | TabActionType>;
|
|
61
61
|
//# sourceMappingURL=TabRouter.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
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,
|
|
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,YAAS,CAAC;AAEjB,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,CAAC;IACvD,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7B,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,GAAG,SAAS,CAAC;CACzC,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;AA2IF,wBAAgB,SAAS,CAAC,EACxB,gBAAgB,EAChB,YAA2B,GAC5B,EAAE,gBAAgB,kGAiXlB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createParamsFromAction.d.ts","sourceRoot":"","sources":["../../../src/createParamsFromAction.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"createParamsFromAction.d.ts","sourceRoot":"","sources":["../../../src/createParamsFromAction.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAS,CAAC;AAE7C,KAAK,OAAO,GAAG;IACb,MAAM,EAAE;QACN,OAAO,EAAE;YACP,IAAI,EAAE,MAAM,CAAC;YACb,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;SAC7B,CAAC;KACH,CAAC;IACF,cAAc,EAAE,aAAa,CAAC;CAC/B,CAAC;AAEF,wBAAgB,sBAAsB,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,EAAE,OAAO,sBASzE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createRouteFromAction.d.ts","sourceRoot":"","sources":["../../../src/createRouteFromAction.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"createRouteFromAction.d.ts","sourceRoot":"","sources":["../../../src/createRouteFromAction.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAS,CAAC;AAE7C,KAAK,OAAO,GAAG;IACb,MAAM,EAAE;QACN,OAAO,EAAE;YACP,IAAI,EAAE,MAAM,CAAC;YACb,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;SAC7B,CAAC;KACH,CAAC;IACF,cAAc,EAAE,aAAa,CAAC;CAC/B,CAAC;AAEF,wBAAgB,qBAAqB,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,EAAE,OAAO;;;;EAQxE"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import * as CommonActions from './CommonActions';
|
|
1
|
+
import * as CommonActions from './CommonActions.js';
|
|
2
2
|
export { CommonActions };
|
|
3
|
-
export { BaseRouter } from './BaseRouter';
|
|
4
|
-
export type { DrawerActionHelpers, DrawerActionType, DrawerNavigationState, DrawerRouterOptions, DrawerStatus, } from './DrawerRouter';
|
|
5
|
-
export { DrawerActions, DrawerRouter } from './DrawerRouter';
|
|
6
|
-
export type { StackActionHelpers, StackActionType, StackNavigationState, StackRouterOptions, } from './StackRouter';
|
|
7
|
-
export { StackActions, StackRouter } from './StackRouter';
|
|
8
|
-
export type { TabActionHelpers, TabActionType, TabNavigationState, TabRouterOptions, } from './TabRouter';
|
|
9
|
-
export { TabActions, TabRouter } from './TabRouter';
|
|
10
|
-
export * from './types';
|
|
3
|
+
export { BaseRouter } from './BaseRouter.js';
|
|
4
|
+
export type { DrawerActionHelpers, DrawerActionType, DrawerNavigationState, DrawerRouterOptions, DrawerStatus, } from './DrawerRouter.js';
|
|
5
|
+
export { DrawerActions, DrawerRouter } from './DrawerRouter.js';
|
|
6
|
+
export type { StackActionHelpers, StackActionType, StackNavigationState, StackRouterOptions, } from './StackRouter.js';
|
|
7
|
+
export { StackActions, StackRouter } from './StackRouter.js';
|
|
8
|
+
export type { TabActionHelpers, TabActionType, TabNavigationState, TabRouterOptions, } from './TabRouter.js';
|
|
9
|
+
export { TabActions, TabRouter } from './TabRouter.js';
|
|
10
|
+
export * from './types.js';
|
|
11
11
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,aAAa,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,aAAa,MAAM,oBAAiB,CAAC;AAEjD,OAAO,EAAE,aAAa,EAAE,CAAC;AAEzB,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAc,CAAC;AAC1C,YAAY,EACV,mBAAmB,EACnB,gBAAgB,EAChB,qBAAqB,EACrB,mBAAmB,EACnB,YAAY,GACb,MAAM,mBAAgB,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,mBAAgB,CAAC;AAC7D,YAAY,EACV,kBAAkB,EAClB,eAAe,EACf,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,kBAAe,CAAC;AACvB,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,kBAAe,CAAC;AAC1D,YAAY,EACV,gBAAgB,EAChB,aAAa,EACb,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,gBAAa,CAAC;AACrB,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,gBAAa,CAAC;AACpD,cAAc,YAAS,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type * as CommonActions from './CommonActions';
|
|
1
|
+
import type * as CommonActions from './CommonActions.js';
|
|
2
2
|
export type CommonNavigationAction = CommonActions.Action;
|
|
3
3
|
export type NavigationRoute<ParamList extends ParamListBase, RouteName extends keyof ParamList> = Route<Extract<RouteName, string>, ParamList[RouteName]> & {
|
|
4
|
-
state?: NavigationState | PartialState<NavigationState
|
|
4
|
+
state?: NavigationState | PartialState<NavigationState> | undefined;
|
|
5
5
|
};
|
|
6
6
|
export type NavigationState<ParamList extends ParamListBase = ParamListBase> = Readonly<{
|
|
7
7
|
/**
|
|
@@ -19,7 +19,7 @@ export type NavigationState<ParamList extends ParamListBase = ParamListBase> = R
|
|
|
19
19
|
/**
|
|
20
20
|
* Alternative entries for history.
|
|
21
21
|
*/
|
|
22
|
-
history?: unknown[];
|
|
22
|
+
history?: unknown[] | undefined;
|
|
23
23
|
/**
|
|
24
24
|
* List of rendered routes.
|
|
25
25
|
*/
|
|
@@ -37,15 +37,15 @@ export type NavigationState<ParamList extends ParamListBase = ParamListBase> = R
|
|
|
37
37
|
}>;
|
|
38
38
|
export type InitialState = Readonly<Partial<Omit<NavigationState, 'stale' | 'routes'>> & {
|
|
39
39
|
routes: (Omit<Route<string>, 'key'> & {
|
|
40
|
-
state?: InitialState;
|
|
40
|
+
state?: InitialState | undefined;
|
|
41
41
|
})[];
|
|
42
42
|
}>;
|
|
43
43
|
export type PartialRoute<R extends Route<string>> = Omit<R, 'key'> & {
|
|
44
|
-
key?: string;
|
|
45
|
-
state?: PartialState<NavigationState
|
|
44
|
+
key?: string | undefined;
|
|
45
|
+
state?: PartialState<NavigationState> | undefined;
|
|
46
46
|
};
|
|
47
47
|
export type PartialState<State extends NavigationState> = Partial<Omit<State, 'stale' | 'routes'>> & Readonly<{
|
|
48
|
-
stale?: true;
|
|
48
|
+
stale?: true | undefined;
|
|
49
49
|
routes: PartialRoute<Route<State['routeNames'][number]>>[];
|
|
50
50
|
}>;
|
|
51
51
|
export type Route<RouteName extends string, Params extends unknown | object | undefined = object | undefined> = Readonly<{
|
|
@@ -61,25 +61,25 @@ export type Route<RouteName extends string, Params extends unknown | object | un
|
|
|
61
61
|
* Path associated with the route.
|
|
62
62
|
* Usually present when the screen was opened from a deep link.
|
|
63
63
|
*/
|
|
64
|
-
path?: string;
|
|
64
|
+
path?: string | undefined;
|
|
65
65
|
/**
|
|
66
66
|
* History of param changes for this route.
|
|
67
67
|
*/
|
|
68
68
|
history?: {
|
|
69
69
|
type: 'params';
|
|
70
70
|
params: object;
|
|
71
|
-
}[];
|
|
72
|
-
} &
|
|
71
|
+
}[] | undefined;
|
|
72
|
+
} & (undefined extends Params ? {
|
|
73
73
|
/**
|
|
74
74
|
* Params for this route
|
|
75
75
|
*/
|
|
76
|
-
params?: Readonly<Params
|
|
76
|
+
params?: Readonly<Params> | undefined;
|
|
77
77
|
} : {
|
|
78
78
|
/**
|
|
79
79
|
* Params for this route
|
|
80
80
|
*/
|
|
81
81
|
params: Readonly<Params>;
|
|
82
|
-
}
|
|
82
|
+
})>;
|
|
83
83
|
export type ParamListBase = Record<string, object | undefined>;
|
|
84
84
|
export type NavigationAction = Readonly<{
|
|
85
85
|
/**
|
|
@@ -89,15 +89,15 @@ export type NavigationAction = Readonly<{
|
|
|
89
89
|
/**
|
|
90
90
|
* Additional data for the action
|
|
91
91
|
*/
|
|
92
|
-
payload?: object;
|
|
92
|
+
payload?: object | undefined;
|
|
93
93
|
/**
|
|
94
94
|
* Key of the route which dispatched this action.
|
|
95
95
|
*/
|
|
96
|
-
source?: string;
|
|
96
|
+
source?: string | undefined;
|
|
97
97
|
/**
|
|
98
98
|
* Key of the navigator which should handle this action.
|
|
99
99
|
*/
|
|
100
|
-
target?: string;
|
|
100
|
+
target?: string | undefined;
|
|
101
101
|
}>;
|
|
102
102
|
export type ActionCreators<Action extends NavigationAction> = {
|
|
103
103
|
[key: string]: (...args: any) => Action;
|
|
@@ -107,14 +107,14 @@ export type DefaultRouterOptions<RouteName extends string = string> = {
|
|
|
107
107
|
* Name of the route to focus by on initial render.
|
|
108
108
|
* If not specified, usually the first route is used.
|
|
109
109
|
*/
|
|
110
|
-
initialRouteName?: RouteName;
|
|
110
|
+
initialRouteName?: RouteName | undefined;
|
|
111
111
|
};
|
|
112
112
|
export type RouterFactory<State extends NavigationState, Action extends NavigationAction, RouterOptions extends DefaultRouterOptions> = (options: RouterOptions) => Router<State, Action>;
|
|
113
113
|
export type RouterConfigOptions = {
|
|
114
114
|
routeNames: string[];
|
|
115
115
|
routeParamList: ParamListBase;
|
|
116
116
|
routeGetIdList: Record<string, ((options: {
|
|
117
|
-
params?: Record<string, any
|
|
117
|
+
params?: Record<string, any> | undefined;
|
|
118
118
|
}) => string | undefined) | undefined>;
|
|
119
119
|
};
|
|
120
120
|
export type Router<State extends NavigationState, Action extends NavigationAction> = {
|
|
@@ -175,16 +175,6 @@ export type Router<State extends NavigationState, Action extends NavigationActio
|
|
|
175
175
|
* @param action Action object to check.
|
|
176
176
|
*/
|
|
177
177
|
shouldActionChangeFocus(action: NavigationAction): boolean;
|
|
178
|
-
/**
|
|
179
|
-
* Get the list of routes from the navigation state.
|
|
180
|
-
*
|
|
181
|
-
* By default, `state.routes` is used.
|
|
182
|
-
* But in some cases (like `preloadedRoutes` in stack),
|
|
183
|
-
* the actual list of routes may be different.
|
|
184
|
-
*
|
|
185
|
-
* @param state Navigation state to get the routes from.
|
|
186
|
-
*/
|
|
187
|
-
getRoutesFromState?(state: State): Route<string>[];
|
|
188
178
|
/**
|
|
189
179
|
* Action creators for the router.
|
|
190
180
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,aAAa,MAAM,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.tsx"],"names":[],"mappings":"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"}
|
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": "8.0.0-alpha.
|
|
4
|
+
"version": "8.0.0-alpha.11",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"react",
|
|
7
7
|
"react-native",
|
|
@@ -41,13 +41,13 @@
|
|
|
41
41
|
"clean": "del lib"
|
|
42
42
|
},
|
|
43
43
|
"dependencies": {
|
|
44
|
-
"nanoid": "^
|
|
44
|
+
"nanoid": "^5.1.11"
|
|
45
45
|
},
|
|
46
46
|
"devDependencies": {
|
|
47
|
-
"@jest/globals": "^
|
|
48
|
-
"del-cli": "^
|
|
49
|
-
"react-native-builder-bob": "^0.
|
|
50
|
-
"typescript": "^
|
|
47
|
+
"@jest/globals": "^29.7.0",
|
|
48
|
+
"del-cli": "^7.0.0",
|
|
49
|
+
"react-native-builder-bob": "^0.42.1",
|
|
50
|
+
"typescript": "^6.0.3"
|
|
51
51
|
},
|
|
52
52
|
"react-native-builder-bob": {
|
|
53
53
|
"source": "src",
|
|
@@ -67,5 +67,5 @@
|
|
|
67
67
|
]
|
|
68
68
|
]
|
|
69
69
|
},
|
|
70
|
-
"gitHead": "
|
|
70
|
+
"gitHead": "9c6b764c575fdf7e3c27df37f820899dda9d4259"
|
|
71
71
|
}
|
package/src/BaseRouter.tsx
CHANGED
|
@@ -71,10 +71,12 @@ export const BaseRouter = {
|
|
|
71
71
|
case 'RESET': {
|
|
72
72
|
const nextState = action.payload as State | PartialState<State>;
|
|
73
73
|
|
|
74
|
+
const routeNamesSet = new Set(state.routeNames);
|
|
75
|
+
|
|
74
76
|
if (
|
|
75
77
|
nextState.routes.length === 0 ||
|
|
76
78
|
nextState.routes.some(
|
|
77
|
-
(route: { name: string }) => !
|
|
79
|
+
(route: { name: string }) => !routeNamesSet.has(route.name)
|
|
78
80
|
)
|
|
79
81
|
) {
|
|
80
82
|
return null;
|
|
@@ -83,9 +85,7 @@ export const BaseRouter = {
|
|
|
83
85
|
if (nextState.stale === false) {
|
|
84
86
|
if (
|
|
85
87
|
state.routeNames.length !== nextState.routeNames.length ||
|
|
86
|
-
nextState.routeNames.some(
|
|
87
|
-
(name) => !state.routeNames.includes(name)
|
|
88
|
-
)
|
|
88
|
+
nextState.routeNames.some((name) => !routeNamesSet.has(name))
|
|
89
89
|
) {
|
|
90
90
|
return null;
|
|
91
91
|
}
|
package/src/CommonActions.tsx
CHANGED
|
@@ -9,59 +9,59 @@ type ResetState =
|
|
|
9
9
|
|
|
10
10
|
type GoBackAction = {
|
|
11
11
|
type: 'GO_BACK';
|
|
12
|
-
source?: string;
|
|
13
|
-
target?: string;
|
|
12
|
+
source?: string | undefined;
|
|
13
|
+
target?: string | undefined;
|
|
14
14
|
};
|
|
15
15
|
|
|
16
16
|
type NavigateAction = {
|
|
17
17
|
type: 'NAVIGATE';
|
|
18
18
|
payload: {
|
|
19
19
|
name: string;
|
|
20
|
-
params?: object;
|
|
21
|
-
path?: string;
|
|
22
|
-
merge?: boolean;
|
|
23
|
-
pop?: boolean;
|
|
20
|
+
params?: object | undefined;
|
|
21
|
+
path?: string | undefined;
|
|
22
|
+
merge?: boolean | undefined;
|
|
23
|
+
pop?: boolean | undefined;
|
|
24
24
|
};
|
|
25
|
-
source?: string;
|
|
26
|
-
target?: string;
|
|
25
|
+
source?: string | undefined;
|
|
26
|
+
target?: string | undefined;
|
|
27
27
|
};
|
|
28
28
|
|
|
29
29
|
type ResetAction = {
|
|
30
30
|
type: 'RESET';
|
|
31
|
-
payload: ResetState
|
|
32
|
-
source?: string;
|
|
33
|
-
target?: string;
|
|
31
|
+
payload: ResetState;
|
|
32
|
+
source?: string | undefined;
|
|
33
|
+
target?: string | undefined;
|
|
34
34
|
};
|
|
35
35
|
|
|
36
36
|
type SetParamsAction = {
|
|
37
37
|
type: 'SET_PARAMS';
|
|
38
|
-
payload: { params?: object };
|
|
39
|
-
source?: string;
|
|
40
|
-
target?: string;
|
|
38
|
+
payload: { params?: object | undefined };
|
|
39
|
+
source?: string | undefined;
|
|
40
|
+
target?: string | undefined;
|
|
41
41
|
};
|
|
42
42
|
|
|
43
43
|
type ReplaceParamsAction = {
|
|
44
44
|
type: 'REPLACE_PARAMS';
|
|
45
|
-
payload: { params?: object };
|
|
46
|
-
source?: string;
|
|
47
|
-
target?: string;
|
|
45
|
+
payload: { params?: object | undefined };
|
|
46
|
+
source?: string | undefined;
|
|
47
|
+
target?: string | undefined;
|
|
48
48
|
};
|
|
49
49
|
|
|
50
50
|
type PushParamsAction = {
|
|
51
51
|
type: 'PUSH_PARAMS';
|
|
52
|
-
payload: { params?: object };
|
|
53
|
-
source?: string;
|
|
54
|
-
target?: string;
|
|
52
|
+
payload: { params?: object | undefined };
|
|
53
|
+
source?: string | undefined;
|
|
54
|
+
target?: string | undefined;
|
|
55
55
|
};
|
|
56
56
|
|
|
57
57
|
type PreloadAction = {
|
|
58
58
|
type: 'PRELOAD';
|
|
59
59
|
payload: {
|
|
60
60
|
name: string;
|
|
61
|
-
params?: object;
|
|
61
|
+
params?: object | undefined;
|
|
62
62
|
};
|
|
63
|
-
source?: string;
|
|
64
|
-
target?: string;
|
|
63
|
+
source?: string | undefined;
|
|
64
|
+
target?: string | undefined;
|
|
65
65
|
};
|
|
66
66
|
|
|
67
67
|
export type Action =
|
|
@@ -79,19 +79,21 @@ export function goBack(): Action {
|
|
|
79
79
|
|
|
80
80
|
export function navigate(
|
|
81
81
|
name: string,
|
|
82
|
-
params?: object,
|
|
83
|
-
options?:
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
82
|
+
params?: object | undefined,
|
|
83
|
+
options?:
|
|
84
|
+
| {
|
|
85
|
+
merge?: boolean | undefined;
|
|
86
|
+
pop?: boolean | undefined;
|
|
87
|
+
}
|
|
88
|
+
| undefined
|
|
87
89
|
): Action;
|
|
88
90
|
|
|
89
91
|
export function navigate(options: {
|
|
90
92
|
name: string;
|
|
91
|
-
params?: object;
|
|
92
|
-
path?: string;
|
|
93
|
-
merge?: boolean;
|
|
94
|
-
pop?: boolean;
|
|
93
|
+
params?: object | undefined;
|
|
94
|
+
path?: string | undefined;
|
|
95
|
+
merge?: boolean | undefined;
|
|
96
|
+
pop?: boolean | undefined;
|
|
95
97
|
}): Action;
|
|
96
98
|
|
|
97
99
|
export function navigate(...args: any): Action {
|
|
@@ -120,7 +122,7 @@ export function navigate(...args: any): Action {
|
|
|
120
122
|
}
|
|
121
123
|
}
|
|
122
124
|
|
|
123
|
-
export function reset(state: ResetState
|
|
125
|
+
export function reset(state: ResetState) {
|
|
124
126
|
return { type: 'RESET', payload: state } as const satisfies ResetAction;
|
|
125
127
|
}
|
|
126
128
|
|
|
@@ -145,7 +147,7 @@ export function pushParams(params: object) {
|
|
|
145
147
|
} as const satisfies PushParamsAction;
|
|
146
148
|
}
|
|
147
149
|
|
|
148
|
-
export function preload(name: string, params?: object) {
|
|
150
|
+
export function preload(name: string, params?: object | undefined) {
|
|
149
151
|
return {
|
|
150
152
|
type: 'PRELOAD',
|
|
151
153
|
payload: { name, params },
|
package/src/DrawerRouter.tsx
CHANGED
|
@@ -20,12 +20,12 @@ export type DrawerActionType =
|
|
|
20
20
|
| TabActionType
|
|
21
21
|
| {
|
|
22
22
|
type: 'OPEN_DRAWER' | 'CLOSE_DRAWER' | 'TOGGLE_DRAWER';
|
|
23
|
-
source?: string;
|
|
24
|
-
target?: string;
|
|
23
|
+
source?: string | undefined;
|
|
24
|
+
target?: string | undefined;
|
|
25
25
|
};
|
|
26
26
|
|
|
27
27
|
export type DrawerRouterOptions = TabRouterOptions & {
|
|
28
|
-
defaultStatus?: DrawerStatus;
|
|
28
|
+
defaultStatus?: DrawerStatus | undefined;
|
|
29
29
|
};
|
|
30
30
|
|
|
31
31
|
export type DrawerNavigationState<ParamList extends ParamListBase> = Omit<
|