expo-router 3.4.7 → 3.4.9
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/build/global-state/router-store.d.ts +3 -0
- package/build/global-state/router-store.d.ts.map +1 -1
- package/build/global-state/router-store.js +3 -0
- package/build/global-state/router-store.js.map +1 -1
- package/build/global-state/routing.d.ts +3 -0
- package/build/global-state/routing.d.ts.map +1 -1
- package/build/global-state/routing.js +24 -1
- package/build/global-state/routing.js.map +1 -1
- package/build/hooks.d.ts.map +1 -1
- package/build/hooks.js +3 -0
- package/build/hooks.js.map +1 -1
- package/build/imperative-api.d.ts.map +1 -1
- package/build/imperative-api.js +3 -0
- package/build/imperative-api.js.map +1 -1
- package/build/layouts/Drawer.d.ts +40 -40
- package/build/layouts/Stack.d.ts +48 -48
- package/build/layouts/Tabs.d.ts +48 -48
- package/build/link/useLoadedNavigation.d.ts.map +1 -1
- package/build/link/useLoadedNavigation.js +1 -0
- package/build/link/useLoadedNavigation.js.map +1 -1
- package/build/testing-library/context-stubs.d.ts +1 -1
- package/build/testing-library/context-stubs.d.ts.map +1 -1
- package/build/testing-library/context-stubs.js +7 -2
- package/build/testing-library/context-stubs.js.map +1 -1
- package/build/testing-library/index.d.ts +8 -4
- package/build/testing-library/index.d.ts.map +1 -1
- package/build/testing-library/index.js +23 -12
- package/build/testing-library/index.js.map +1 -1
- package/build/testing-library/mocks.d.ts +0 -1
- package/build/testing-library/mocks.d.ts.map +1 -1
- package/build/testing-library/mocks.js +7 -1
- package/build/testing-library/mocks.js.map +1 -1
- package/build/types.d.ts +7 -1
- package/build/types.d.ts.map +1 -1
- package/build/types.js.map +1 -1
- package/package.json +3 -3
- package/build/utils/mockState.d.ts +0 -7
- package/build/utils/mockState.d.ts.map +0 -1
- package/build/utils/mockState.js +0 -29
- package/build/utils/mockState.js.map +0 -1
package/build/layouts/Stack.d.ts
CHANGED
|
@@ -5,22 +5,22 @@ export declare const Stack: import("react").ForwardRefExoticComponent<Omit<Omit<
|
|
|
5
5
|
id?: string | undefined;
|
|
6
6
|
children: import("react").ReactNode;
|
|
7
7
|
screenListeners?: Partial<{
|
|
8
|
-
transitionStart: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
9
|
-
transitionEnd: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
10
|
-
focus: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
11
|
-
blur: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
12
|
-
state: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
13
|
-
beforeRemove: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
8
|
+
transitionStart: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "transitionStart">;
|
|
9
|
+
transitionEnd: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "transitionEnd">;
|
|
10
|
+
focus: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "focus">;
|
|
11
|
+
blur: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "blur">;
|
|
12
|
+
state: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "state">;
|
|
13
|
+
beforeRemove: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "beforeRemove">;
|
|
14
14
|
}> | ((props: {
|
|
15
15
|
route: import("@react-navigation/native").RouteProp<ParamListBase, string>;
|
|
16
16
|
navigation: any;
|
|
17
17
|
}) => Partial<{
|
|
18
|
-
transitionStart: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
19
|
-
transitionEnd: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
20
|
-
focus: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
21
|
-
blur: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
22
|
-
state: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
23
|
-
beforeRemove: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
18
|
+
transitionStart: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "transitionStart">;
|
|
19
|
+
transitionEnd: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "transitionEnd">;
|
|
20
|
+
focus: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "focus">;
|
|
21
|
+
blur: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "blur">;
|
|
22
|
+
state: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "state">;
|
|
23
|
+
beforeRemove: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "beforeRemove">;
|
|
24
24
|
}>) | undefined;
|
|
25
25
|
screenOptions?: NativeStackNavigationOptions | ((props: {
|
|
26
26
|
route: import("@react-navigation/native").RouteProp<ParamListBase, string>;
|
|
@@ -30,22 +30,22 @@ export declare const Stack: import("react").ForwardRefExoticComponent<Omit<Omit<
|
|
|
30
30
|
id?: string | undefined;
|
|
31
31
|
children: import("react").ReactNode;
|
|
32
32
|
screenListeners?: Partial<{
|
|
33
|
-
transitionStart: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
34
|
-
transitionEnd: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
35
|
-
focus: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
36
|
-
blur: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
37
|
-
state: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
38
|
-
beforeRemove: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
33
|
+
transitionStart: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "transitionStart">;
|
|
34
|
+
transitionEnd: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "transitionEnd">;
|
|
35
|
+
focus: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "focus">;
|
|
36
|
+
blur: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "blur">;
|
|
37
|
+
state: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "state">;
|
|
38
|
+
beforeRemove: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "beforeRemove">;
|
|
39
39
|
}> | ((props: {
|
|
40
40
|
route: import("@react-navigation/native").RouteProp<ParamListBase, string>;
|
|
41
41
|
navigation: any;
|
|
42
42
|
}) => Partial<{
|
|
43
|
-
transitionStart: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
44
|
-
transitionEnd: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
45
|
-
focus: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
46
|
-
blur: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
47
|
-
state: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
48
|
-
beforeRemove: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
43
|
+
transitionStart: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "transitionStart">;
|
|
44
|
+
transitionEnd: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "transitionEnd">;
|
|
45
|
+
focus: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "focus">;
|
|
46
|
+
blur: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "blur">;
|
|
47
|
+
state: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "state">;
|
|
48
|
+
beforeRemove: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "beforeRemove">;
|
|
49
49
|
}>) | undefined;
|
|
50
50
|
screenOptions?: NativeStackNavigationOptions | ((props: {
|
|
51
51
|
route: import("@react-navigation/native").RouteProp<ParamListBase, string>;
|
|
@@ -55,22 +55,22 @@ export declare const Stack: import("react").ForwardRefExoticComponent<Omit<Omit<
|
|
|
55
55
|
id?: string | undefined;
|
|
56
56
|
children: import("react").ReactNode;
|
|
57
57
|
screenListeners?: Partial<{
|
|
58
|
-
transitionStart: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
59
|
-
transitionEnd: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
60
|
-
focus: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
61
|
-
blur: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
62
|
-
state: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
63
|
-
beforeRemove: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
58
|
+
transitionStart: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "transitionStart">;
|
|
59
|
+
transitionEnd: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "transitionEnd">;
|
|
60
|
+
focus: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "focus">;
|
|
61
|
+
blur: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "blur">;
|
|
62
|
+
state: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "state">;
|
|
63
|
+
beforeRemove: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "beforeRemove">;
|
|
64
64
|
}> | ((props: {
|
|
65
65
|
route: import("@react-navigation/native").RouteProp<ParamListBase, string>;
|
|
66
66
|
navigation: any;
|
|
67
67
|
}) => Partial<{
|
|
68
|
-
transitionStart: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
69
|
-
transitionEnd: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
70
|
-
focus: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
71
|
-
blur: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
72
|
-
state: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
73
|
-
beforeRemove: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
68
|
+
transitionStart: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "transitionStart">;
|
|
69
|
+
transitionEnd: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "transitionEnd">;
|
|
70
|
+
focus: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "focus">;
|
|
71
|
+
blur: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "blur">;
|
|
72
|
+
state: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "state">;
|
|
73
|
+
beforeRemove: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "beforeRemove">;
|
|
74
74
|
}>) | undefined;
|
|
75
75
|
screenOptions?: NativeStackNavigationOptions | ((props: {
|
|
76
76
|
route: import("@react-navigation/native").RouteProp<ParamListBase, string>;
|
|
@@ -80,22 +80,22 @@ export declare const Stack: import("react").ForwardRefExoticComponent<Omit<Omit<
|
|
|
80
80
|
id?: string | undefined;
|
|
81
81
|
children: import("react").ReactNode;
|
|
82
82
|
screenListeners?: Partial<{
|
|
83
|
-
transitionStart: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
84
|
-
transitionEnd: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
85
|
-
focus: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
86
|
-
blur: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
87
|
-
state: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
88
|
-
beforeRemove: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
83
|
+
transitionStart: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "transitionStart">;
|
|
84
|
+
transitionEnd: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "transitionEnd">;
|
|
85
|
+
focus: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "focus">;
|
|
86
|
+
blur: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "blur">;
|
|
87
|
+
state: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "state">;
|
|
88
|
+
beforeRemove: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "beforeRemove">;
|
|
89
89
|
}> | ((props: {
|
|
90
90
|
route: import("@react-navigation/native").RouteProp<ParamListBase, string>;
|
|
91
91
|
navigation: any;
|
|
92
92
|
}) => Partial<{
|
|
93
|
-
transitionStart: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
94
|
-
transitionEnd: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
95
|
-
focus: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
96
|
-
blur: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
97
|
-
state: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
98
|
-
beforeRemove: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap
|
|
93
|
+
transitionStart: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "transitionStart">;
|
|
94
|
+
transitionEnd: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "transitionEnd">;
|
|
95
|
+
focus: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "focus">;
|
|
96
|
+
blur: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "blur">;
|
|
97
|
+
state: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "state">;
|
|
98
|
+
beforeRemove: import("@react-navigation/native").EventListenerCallback<NativeStackNavigationEventMap & import("@react-navigation/native").EventMapCore<StackNavigationState<ParamListBase>>, "beforeRemove">;
|
|
99
99
|
}>) | undefined;
|
|
100
100
|
screenOptions?: NativeStackNavigationOptions | ((props: {
|
|
101
101
|
route: import("@react-navigation/native").RouteProp<ParamListBase, string>;
|
package/build/layouts/Tabs.d.ts
CHANGED
|
@@ -6,22 +6,22 @@ export declare const Tabs: React.ForwardRefExoticComponent<Omit<Omit<import("@re
|
|
|
6
6
|
id?: string | undefined;
|
|
7
7
|
children: React.ReactNode;
|
|
8
8
|
screenListeners?: Partial<{
|
|
9
|
-
tabPress: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
10
|
-
tabLongPress: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
11
|
-
focus: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
12
|
-
blur: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
13
|
-
state: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
14
|
-
beforeRemove: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
9
|
+
tabPress: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "tabPress">;
|
|
10
|
+
tabLongPress: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "tabLongPress">;
|
|
11
|
+
focus: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "focus">;
|
|
12
|
+
blur: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "blur">;
|
|
13
|
+
state: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "state">;
|
|
14
|
+
beforeRemove: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "beforeRemove">;
|
|
15
15
|
}> | ((props: {
|
|
16
16
|
route: import("@react-navigation/native").RouteProp<ParamListBase, string>;
|
|
17
17
|
navigation: any;
|
|
18
18
|
}) => Partial<{
|
|
19
|
-
tabPress: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
20
|
-
tabLongPress: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
21
|
-
focus: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
22
|
-
blur: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
23
|
-
state: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
24
|
-
beforeRemove: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
19
|
+
tabPress: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "tabPress">;
|
|
20
|
+
tabLongPress: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "tabLongPress">;
|
|
21
|
+
focus: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "focus">;
|
|
22
|
+
blur: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "blur">;
|
|
23
|
+
state: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "state">;
|
|
24
|
+
beforeRemove: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "beforeRemove">;
|
|
25
25
|
}>) | undefined;
|
|
26
26
|
screenOptions?: BottomTabNavigationOptions | ((props: {
|
|
27
27
|
route: import("@react-navigation/native").RouteProp<ParamListBase, string>;
|
|
@@ -33,22 +33,22 @@ export declare const Tabs: React.ForwardRefExoticComponent<Omit<Omit<import("@re
|
|
|
33
33
|
id?: string | undefined;
|
|
34
34
|
children: React.ReactNode;
|
|
35
35
|
screenListeners?: Partial<{
|
|
36
|
-
tabPress: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
37
|
-
tabLongPress: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
38
|
-
focus: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
39
|
-
blur: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
40
|
-
state: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
41
|
-
beforeRemove: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
36
|
+
tabPress: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "tabPress">;
|
|
37
|
+
tabLongPress: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "tabLongPress">;
|
|
38
|
+
focus: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "focus">;
|
|
39
|
+
blur: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "blur">;
|
|
40
|
+
state: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "state">;
|
|
41
|
+
beforeRemove: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "beforeRemove">;
|
|
42
42
|
}> | ((props: {
|
|
43
43
|
route: import("@react-navigation/native").RouteProp<ParamListBase, string>;
|
|
44
44
|
navigation: any;
|
|
45
45
|
}) => Partial<{
|
|
46
|
-
tabPress: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
47
|
-
tabLongPress: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
48
|
-
focus: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
49
|
-
blur: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
50
|
-
state: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
51
|
-
beforeRemove: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
46
|
+
tabPress: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "tabPress">;
|
|
47
|
+
tabLongPress: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "tabLongPress">;
|
|
48
|
+
focus: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "focus">;
|
|
49
|
+
blur: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "blur">;
|
|
50
|
+
state: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "state">;
|
|
51
|
+
beforeRemove: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "beforeRemove">;
|
|
52
52
|
}>) | undefined;
|
|
53
53
|
screenOptions?: BottomTabNavigationOptions | ((props: {
|
|
54
54
|
route: import("@react-navigation/native").RouteProp<ParamListBase, string>;
|
|
@@ -58,22 +58,22 @@ export declare const Tabs: React.ForwardRefExoticComponent<Omit<Omit<import("@re
|
|
|
58
58
|
id?: string | undefined;
|
|
59
59
|
children: React.ReactNode;
|
|
60
60
|
screenListeners?: Partial<{
|
|
61
|
-
tabPress: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
62
|
-
tabLongPress: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
63
|
-
focus: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
64
|
-
blur: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
65
|
-
state: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
66
|
-
beforeRemove: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
61
|
+
tabPress: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "tabPress">;
|
|
62
|
+
tabLongPress: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "tabLongPress">;
|
|
63
|
+
focus: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "focus">;
|
|
64
|
+
blur: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "blur">;
|
|
65
|
+
state: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "state">;
|
|
66
|
+
beforeRemove: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "beforeRemove">;
|
|
67
67
|
}> | ((props: {
|
|
68
68
|
route: import("@react-navigation/native").RouteProp<ParamListBase, string>;
|
|
69
69
|
navigation: any;
|
|
70
70
|
}) => Partial<{
|
|
71
|
-
tabPress: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
72
|
-
tabLongPress: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
73
|
-
focus: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
74
|
-
blur: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
75
|
-
state: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
76
|
-
beforeRemove: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
71
|
+
tabPress: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "tabPress">;
|
|
72
|
+
tabLongPress: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "tabLongPress">;
|
|
73
|
+
focus: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "focus">;
|
|
74
|
+
blur: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "blur">;
|
|
75
|
+
state: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "state">;
|
|
76
|
+
beforeRemove: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "beforeRemove">;
|
|
77
77
|
}>) | undefined;
|
|
78
78
|
screenOptions?: BottomTabNavigationOptions | ((props: {
|
|
79
79
|
route: import("@react-navigation/native").RouteProp<ParamListBase, string>;
|
|
@@ -85,22 +85,22 @@ export declare const Tabs: React.ForwardRefExoticComponent<Omit<Omit<import("@re
|
|
|
85
85
|
id?: string | undefined;
|
|
86
86
|
children: React.ReactNode;
|
|
87
87
|
screenListeners?: Partial<{
|
|
88
|
-
tabPress: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
89
|
-
tabLongPress: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
90
|
-
focus: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
91
|
-
blur: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
92
|
-
state: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
93
|
-
beforeRemove: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
88
|
+
tabPress: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "tabPress">;
|
|
89
|
+
tabLongPress: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "tabLongPress">;
|
|
90
|
+
focus: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "focus">;
|
|
91
|
+
blur: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "blur">;
|
|
92
|
+
state: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "state">;
|
|
93
|
+
beforeRemove: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "beforeRemove">;
|
|
94
94
|
}> | ((props: {
|
|
95
95
|
route: import("@react-navigation/native").RouteProp<ParamListBase, string>;
|
|
96
96
|
navigation: any;
|
|
97
97
|
}) => Partial<{
|
|
98
|
-
tabPress: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
99
|
-
tabLongPress: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
100
|
-
focus: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
101
|
-
blur: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
102
|
-
state: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
103
|
-
beforeRemove: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap
|
|
98
|
+
tabPress: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "tabPress">;
|
|
99
|
+
tabLongPress: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "tabLongPress">;
|
|
100
|
+
focus: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "focus">;
|
|
101
|
+
blur: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "blur">;
|
|
102
|
+
state: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "state">;
|
|
103
|
+
beforeRemove: import("@react-navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import("@react-navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "beforeRemove">;
|
|
104
104
|
}>) | undefined;
|
|
105
105
|
screenOptions?: BottomTabNavigationOptions | ((props: {
|
|
106
106
|
route: import("@react-navigation/native").RouteProp<ParamListBase, string>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useLoadedNavigation.d.ts","sourceRoot":"","sources":["../../src/link/useLoadedNavigation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAiB,MAAM,0BAA0B,CAAC;AAKzE,KAAK,iBAAiB,GAAG,cAAc,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC;AAEvE,gFAAgF;AAChF,wBAAgB,mBAAmB,
|
|
1
|
+
{"version":3,"file":"useLoadedNavigation.d.ts","sourceRoot":"","sources":["../../src/link/useLoadedNavigation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAiB,MAAM,0BAA0B,CAAC;AAKzE,KAAK,iBAAiB,GAAG,cAAc,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC;AAEvE,gFAAgF;AAChF,wBAAgB,mBAAmB,sBA+Bb,iBAAiB,KAAK,IAAI,UAU/C;AAED,wBAAgB,qBAAqB,IAAI,iBAAiB,GAAG,IAAI,CAShE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useLoadedNavigation.js","sourceRoot":"","sources":["../../src/link/useLoadedNavigation.ts"],"names":[],"mappings":";;;AAAA,qDAAyE;AACzE,iCAAiE;AAEjE,+DAA6D;AAI7D,gFAAgF;AAChF,SAAgB,mBAAmB;IACjC,MAAM,EAAE,aAAa,EAAE,GAAG,IAAA,4BAAa,GAAE,CAAC;IAC1C,MAAM,UAAU,GAAG,IAAA,sBAAa,GAAE,CAAC;IACnC,MAAM,SAAS,GAAG,IAAA,cAAM,EAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,OAAO,GAAG,IAAA,cAAM,EAA8C,EAAE,CAAC,CAAC;IAExE,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC;QACzB,OAAO,GAAG,EAAE;YACV,SAAS,CAAC,OAAO,GAAG,KAAK,CAAC;QAC5B,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,KAAK,GAAG,IAAA,mBAAW,EAAC,GAAG,EAAE;QAC7B,IAAI,SAAS,CAAC,OAAO,EAAE;YACrB,MAAM,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC;YACzC,OAAO,CAAC,OAAO,GAAG,EAAE,CAAC;YACrB,gBAAgB,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;gBACpC,QAAQ,CAAC,UAAU,CAAC,CAAC;YACvB,CAAC,CAAC,CAAC;SACJ;IACH,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAEjB,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,aAAa,CAAC,OAAO,EAAE;YACzB,KAAK,EAAE,CAAC;SACT;IACH,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEZ,MAAM,IAAI,GAAG,IAAA,mBAAW,EACtB,CAAC,EAA2C,EAAE,EAAE;QAC9C,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACzB,IAAI,aAAa,CAAC,OAAO,EAAE;YACzB,KAAK,EAAE,CAAC;SACT;IACH,CAAC,EACD,CAAC,KAAK,CAAC,CACR,CAAC;IAEF,OAAO,IAAI,CAAC;AACd,CAAC;
|
|
1
|
+
{"version":3,"file":"useLoadedNavigation.js","sourceRoot":"","sources":["../../src/link/useLoadedNavigation.ts"],"names":[],"mappings":";;;AAAA,qDAAyE;AACzE,iCAAiE;AAEjE,+DAA6D;AAI7D,gFAAgF;AAChF,SAAgB,mBAAmB;IACjC,MAAM,EAAE,aAAa,EAAE,GAAG,IAAA,4BAAa,GAAE,CAAC;IAC1C,MAAM,UAAU,GAAG,IAAA,sBAAa,GAAE,CAAC;IACnC,MAAM,SAAS,GAAG,IAAA,cAAM,EAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,OAAO,GAAG,IAAA,cAAM,EAA8C,EAAE,CAAC,CAAC;IAExE,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC;QACzB,OAAO,GAAG,EAAE;YACV,SAAS,CAAC,OAAO,GAAG,KAAK,CAAC;QAC5B,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,KAAK,GAAG,IAAA,mBAAW,EAAC,GAAG,EAAE;QAC7B,IAAI,SAAS,CAAC,OAAO,EAAE;YACrB,MAAM,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC;YACzC,OAAO,CAAC,OAAO,GAAG,EAAE,CAAC;YACrB,gBAAgB,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;gBACpC,aAAa;gBACb,QAAQ,CAAC,UAAU,CAAC,CAAC;YACvB,CAAC,CAAC,CAAC;SACJ;IACH,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAEjB,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,aAAa,CAAC,OAAO,EAAE;YACzB,KAAK,EAAE,CAAC;SACT;IACH,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEZ,MAAM,IAAI,GAAG,IAAA,mBAAW,EACtB,CAAC,EAA2C,EAAE,EAAE;QAC9C,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACzB,IAAI,aAAa,CAAC,OAAO,EAAE;YACzB,KAAK,EAAE,CAAC;SACT;IACH,CAAC,EACD,CAAC,KAAK,CAAC,CACR,CAAC;IAEF,OAAO,IAAI,CAAC;AACd,CAAC;AAzCD,kDAyCC;AAED,SAAgB,qBAAqB;IACnC,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,IAAA,gBAAQ,EAA2B,IAAI,CAAC,CAAC;IAC7E,MAAM,cAAc,GAAG,mBAAmB,EAAE,CAAC;IAE7C,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,cAAc,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9C,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,UAAU,CAAC;AACpB,CAAC;AATD,sDASC","sourcesContent":["import { NavigationProp, useNavigation } from '@react-navigation/native';\nimport { useCallback, useState, useEffect, useRef } from 'react';\n\nimport { useExpoRouter } from '../global-state/router-store';\n\ntype GenericNavigation = NavigationProp<ReactNavigation.RootParamList>;\n\n/** Returns a callback which is invoked when the navigation state has loaded. */\nexport function useLoadedNavigation() {\n const { navigationRef } = useExpoRouter();\n const navigation = useNavigation();\n const isMounted = useRef(true);\n const pending = useRef<((navigation: GenericNavigation) => void)[]>([]);\n\n useEffect(() => {\n isMounted.current = true;\n return () => {\n isMounted.current = false;\n };\n }, []);\n\n const flush = useCallback(() => {\n if (isMounted.current) {\n const pendingCallbacks = pending.current;\n pending.current = [];\n pendingCallbacks.forEach((callback) => {\n // @ts-ignore\n callback(navigation);\n });\n }\n }, [navigation]);\n\n useEffect(() => {\n if (navigationRef.current) {\n flush();\n }\n }, [flush]);\n\n const push = useCallback(\n (fn: (navigation: GenericNavigation) => void) => {\n pending.current.push(fn);\n if (navigationRef.current) {\n flush();\n }\n },\n [flush]\n );\n\n return push;\n}\n\nexport function useOptionalNavigation(): GenericNavigation | null {\n const [navigation, setNavigation] = useState<GenericNavigation | null>(null);\n const loadNavigation = useLoadedNavigation();\n\n useEffect(() => {\n loadNavigation((nav) => setNavigation(nav));\n }, []);\n\n return navigation;\n}\n"]}
|
|
@@ -12,9 +12,9 @@ export declare function inMemoryContext(context: Record<string, FileStub>): ((id
|
|
|
12
12
|
}) | {
|
|
13
13
|
default: FileStub;
|
|
14
14
|
}) & {
|
|
15
|
-
keys: () => string[];
|
|
16
15
|
resolve: (key: string) => string;
|
|
17
16
|
id: string;
|
|
17
|
+
keys: () => string[];
|
|
18
18
|
};
|
|
19
19
|
export declare function requireContextWithOverrides(dir: string, overrides: Record<string, FileStub>): ((id: string) => any) & {
|
|
20
20
|
keys: () => string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-stubs.d.ts","sourceRoot":"","sources":["../../src/testing-library/context-stubs.ts"],"names":[],"mappings":";AAEA,OAAO,cAAc,MAAM,4BAA4B,CAAC;AAExD,MAAM,MAAM,cAAc,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC;AACvE,MAAM,MAAM,QAAQ,GAChB,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IACzB,OAAO,EAAE,cAAc,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACzC,CAAC,GACF,cAAc,CAAC;AAEnB,OAAO,EAAE,cAAc,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"context-stubs.d.ts","sourceRoot":"","sources":["../../src/testing-library/context-stubs.ts"],"names":[],"mappings":";AAEA,OAAO,cAAc,MAAM,4BAA4B,CAAC;AAExD,MAAM,MAAM,cAAc,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC;AACvE,MAAM,MAAM,QAAQ,GAChB,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IACzB,OAAO,EAAE,cAAc,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACzC,CAAC,GACF,cAAc,CAAC;AAEnB,OAAO,EAAE,cAAc,EAAE,CAAC;AAI1B,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,SAE/C,MAAM;;;;;;mBAKH,MAAM;;;EAU1B;AAED,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,SAI1E,MAAM;;mBAUH,MAAM;;EAI1B"}
|
|
@@ -7,14 +7,19 @@ exports.requireContextWithOverrides = exports.inMemoryContext = exports.requireC
|
|
|
7
7
|
const path_1 = __importDefault(require("path"));
|
|
8
8
|
const require_context_ponyfill_1 = __importDefault(require("./require-context-ponyfill"));
|
|
9
9
|
exports.requireContext = require_context_ponyfill_1.default;
|
|
10
|
+
const validExtensions = ['.js', '.jsx', '.ts', '.tsx'];
|
|
10
11
|
function inMemoryContext(context) {
|
|
11
12
|
return Object.assign(function (id) {
|
|
12
|
-
id = id.replace(/^\.\//, '').replace(
|
|
13
|
+
id = id.replace(/^\.\//, '').replace(/\.\w*$/, '');
|
|
13
14
|
return typeof context[id] === 'function' ? { default: context[id] } : context[id];
|
|
14
15
|
}, {
|
|
15
|
-
keys: () => Object.keys(context).map((key) => './' + key + '.js'),
|
|
16
16
|
resolve: (key) => key,
|
|
17
17
|
id: '0',
|
|
18
|
+
keys: () => Object.keys(context).map((key) => {
|
|
19
|
+
const ext = path_1.default.extname(key);
|
|
20
|
+
key = key.replace(/^\.\//, '');
|
|
21
|
+
return validExtensions.includes(ext) ? `./${key}` : `./${key}.js`;
|
|
22
|
+
}),
|
|
18
23
|
});
|
|
19
24
|
}
|
|
20
25
|
exports.inMemoryContext = inMemoryContext;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-stubs.js","sourceRoot":"","sources":["../../src/testing-library/context-stubs.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AAExB,0FAAwD;AAU/C,yBAVF,kCAAc,CAUE;AAEvB,SAAgB,eAAe,CAAC,OAAiC;IAC/D,OAAO,MAAM,CAAC,MAAM,CAClB,UAAU,EAAU;QAClB,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"context-stubs.js","sourceRoot":"","sources":["../../src/testing-library/context-stubs.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AAExB,0FAAwD;AAU/C,yBAVF,kCAAc,CAUE;AAEvB,MAAM,eAAe,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AAEvD,SAAgB,eAAe,CAAC,OAAiC;IAC/D,OAAO,MAAM,CAAC,MAAM,CAClB,UAAU,EAAU;QAClB,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QACnD,OAAO,OAAO,OAAO,CAAC,EAAE,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACpF,CAAC,EACD;QACE,OAAO,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,GAAG;QAC7B,EAAE,EAAE,GAAG;QACP,IAAI,EAAE,GAAG,EAAE,CACT,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YAC/B,MAAM,GAAG,GAAG,cAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC9B,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAC/B,OAAO,eAAe,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC;QACpE,CAAC,CAAC;KACL,CACF,CAAC;AACJ,CAAC;AAjBD,0CAiBC;AAED,SAAgB,2BAA2B,CAAC,GAAW,EAAE,SAAmC;IAC1F,MAAM,eAAe,GAAG,IAAA,kCAAc,EAAC,cAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;IAEzE,OAAO,MAAM,CAAC,MAAM,CAClB,UAAU,EAAU;QAClB,IAAI,EAAE,IAAI,SAAS,EAAE;YACnB,MAAM,KAAK,GAAG,SAAS,CAAC,EAAE,CAAC,CAAC;YAC5B,OAAO,OAAO,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;SACjE;aAAM;YACL,OAAO,eAAe,CAAC,EAAE,CAAC,CAAC;SAC5B;IACH,CAAC,EACD;QACE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,eAAe,CAAC,IAAI,EAAE,CAAC;QAClE,OAAO,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,GAAG;QAC7B,EAAE,EAAE,GAAG;KACR,CACF,CAAC;AACJ,CAAC;AAlBD,kEAkBC","sourcesContent":["import path from 'path';\n\nimport requireContext from './require-context-ponyfill';\n\nexport type ReactComponent = () => React.ReactElement<any, any> | null;\nexport type FileStub =\n | (Record<string, unknown> & {\n default: ReactComponent;\n unstable_settings?: Record<string, any>;\n })\n | ReactComponent;\n\nexport { requireContext };\n\nconst validExtensions = ['.js', '.jsx', '.ts', '.tsx'];\n\nexport function inMemoryContext(context: Record<string, FileStub>) {\n return Object.assign(\n function (id: string) {\n id = id.replace(/^\\.\\//, '').replace(/\\.\\w*$/, '');\n return typeof context[id] === 'function' ? { default: context[id] } : context[id];\n },\n {\n resolve: (key: string) => key,\n id: '0',\n keys: () =>\n Object.keys(context).map((key) => {\n const ext = path.extname(key);\n key = key.replace(/^\\.\\//, '');\n return validExtensions.includes(ext) ? `./${key}` : `./${key}.js`;\n }),\n }\n );\n}\n\nexport function requireContextWithOverrides(dir: string, overrides: Record<string, FileStub>) {\n const existingContext = requireContext(path.resolve(process.cwd(), dir));\n\n return Object.assign(\n function (id: string) {\n if (id in overrides) {\n const route = overrides[id];\n return typeof route === 'function' ? { default: route } : route;\n } else {\n return existingContext(id);\n }\n },\n {\n keys: () => [...Object.keys(overrides), ...existingContext.keys()],\n resolve: (key: string) => key,\n id: '0',\n }\n );\n}\n"]}
|
|
@@ -11,10 +11,14 @@ type Result = ReturnType<typeof render> & {
|
|
|
11
11
|
getSegments(): string[];
|
|
12
12
|
getSearchParams(): Record<string, string | string[]>;
|
|
13
13
|
};
|
|
14
|
-
export
|
|
15
|
-
export declare function renderRouter(context: Record<string, FileStub>, options?: RenderRouterOptions): Result;
|
|
16
|
-
export declare function renderRouter(context: {
|
|
14
|
+
export type MockContextConfig = string | string[] | Record<string, FileStub> | {
|
|
17
15
|
appDir: string;
|
|
18
16
|
overrides: Record<string, FileStub>;
|
|
19
|
-
}
|
|
17
|
+
};
|
|
18
|
+
export declare function getMockConfig(context: MockContextConfig): {
|
|
19
|
+
initialRouteName?: string | undefined;
|
|
20
|
+
screens: Record<string, import("../getReactNavigationConfig").Screen>;
|
|
21
|
+
};
|
|
22
|
+
export declare function getMockContext(context: MockContextConfig): import("../types").RequireContext;
|
|
23
|
+
export declare function renderRouter(context?: MockContextConfig, { initialUrl, ...options }?: RenderRouterOptions): Result;
|
|
20
24
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/testing-library/index.tsx"],"names":[],"mappings":"AACA,OAAO,UAAU,CAAC;AAElB,OAAO,EAAE,MAAM,EAAgB,MAAM,+BAA+B,CAAC;AAIrE,OAAO,EACL,QAAQ,EAIT,MAAM,iBAAiB,CAAC;AASzB,cAAc,+BAA+B,CAAC;AAE9C,KAAK,mBAAmB,GAAG,UAAU,CAAC,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG;IACxD,UAAU,CAAC,EAAE,GAAG,CAAC;CAClB,CAAC;AAEF,KAAK,MAAM,GAAG,UAAU,CAAC,OAAO,MAAM,CAAC,GAAG;IACxC,WAAW,IAAI,MAAM,CAAC;IACtB,qBAAqB,IAAI,MAAM,CAAC;IAChC,WAAW,IAAI,MAAM,EAAE,CAAC;IACxB,eAAe,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;CACtD,CAAC;AAQF,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/testing-library/index.tsx"],"names":[],"mappings":"AACA,OAAO,UAAU,CAAC;AAElB,OAAO,EAAE,MAAM,EAAgB,MAAM,+BAA+B,CAAC;AAIrE,OAAO,EACL,QAAQ,EAIT,MAAM,iBAAiB,CAAC;AASzB,cAAc,+BAA+B,CAAC;AAE9C,KAAK,mBAAmB,GAAG,UAAU,CAAC,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG;IACxD,UAAU,CAAC,EAAE,GAAG,CAAC;CAClB,CAAC;AAEF,KAAK,MAAM,GAAG,UAAU,CAAC,OAAO,MAAM,CAAC,GAAG;IACxC,WAAW,IAAI,MAAM,CAAC;IACtB,qBAAqB,IAAI,MAAM,CAAC;IAChC,WAAW,IAAI,MAAM,EAAE,CAAC;IACxB,eAAe,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;CACtD,CAAC;AAQF,MAAM,MAAM,iBAAiB,GACzB,MAAM,GACN,MAAM,EAAE,GACR,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GACxB;IAEE,MAAM,EAAE,MAAM,CAAC;IAEf,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;CACrC,CAAC;AAEN,wBAAgB,aAAa,CAAC,OAAO,EAAE,iBAAiB;;;EAEvD;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,iBAAiB,qCAYxD;AAED,wBAAgB,YAAY,CAC1B,OAAO,GAAE,iBAA2B,EACpC,EAAE,UAAgB,EAAE,GAAG,OAAO,EAAE,GAAE,mBAAwB,GACzD,MAAM,CAsCR"}
|
|
@@ -17,7 +17,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
17
17
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
18
18
|
};
|
|
19
19
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
-
exports.renderRouter = void 0;
|
|
20
|
+
exports.renderRouter = exports.getMockContext = exports.getMockConfig = void 0;
|
|
21
21
|
/// <reference types="../../types/jest" />
|
|
22
22
|
require("./expect");
|
|
23
23
|
const react_native_1 = require("@testing-library/react-native");
|
|
@@ -28,28 +28,39 @@ const mocks_1 = require("./mocks");
|
|
|
28
28
|
const ExpoRoot_1 = require("../ExpoRoot");
|
|
29
29
|
const getPathFromState_1 = __importDefault(require("../fork/getPathFromState"));
|
|
30
30
|
const getLinkingConfig_1 = require("../getLinkingConfig");
|
|
31
|
+
const getRoutes_1 = require("../getRoutes");
|
|
31
32
|
const router_store_1 = require("../global-state/router-store");
|
|
32
33
|
// re-export everything
|
|
33
34
|
__exportStar(require("@testing-library/react-native"), exports);
|
|
34
35
|
function isOverrideContext(context) {
|
|
35
36
|
return Boolean(typeof context === 'object' && 'appDir' in context);
|
|
36
37
|
}
|
|
37
|
-
function
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
// Force the render to be synchronous
|
|
43
|
-
process.env.EXPO_ROUTER_IMPORT_MODE = 'sync';
|
|
38
|
+
function getMockConfig(context) {
|
|
39
|
+
return (0, getLinkingConfig_1.getNavigationConfig)((0, getRoutes_1.getExactRoutes)(getMockContext(context)));
|
|
40
|
+
}
|
|
41
|
+
exports.getMockConfig = getMockConfig;
|
|
42
|
+
function getMockContext(context) {
|
|
44
43
|
if (typeof context === 'string') {
|
|
45
|
-
|
|
44
|
+
return (0, context_stubs_1.requireContext)(path_1.default.resolve(process.cwd(), context));
|
|
45
|
+
}
|
|
46
|
+
else if (Array.isArray(context)) {
|
|
47
|
+
return (0, context_stubs_1.inMemoryContext)(Object.fromEntries(context.map((filename) => [filename, { default: () => null }])));
|
|
46
48
|
}
|
|
47
49
|
else if (isOverrideContext(context)) {
|
|
48
|
-
|
|
50
|
+
return (0, context_stubs_1.requireContextWithOverrides)(context.appDir, context.overrides);
|
|
49
51
|
}
|
|
50
52
|
else {
|
|
51
|
-
|
|
53
|
+
return (0, context_stubs_1.inMemoryContext)(context);
|
|
52
54
|
}
|
|
55
|
+
}
|
|
56
|
+
exports.getMockContext = getMockContext;
|
|
57
|
+
function renderRouter(context = './app', { initialUrl = '/', ...options } = {}) {
|
|
58
|
+
jest.useFakeTimers();
|
|
59
|
+
const mockContext = getMockContext(context);
|
|
60
|
+
// Reset the initial URL
|
|
61
|
+
(0, mocks_1.setInitialUrl)(initialUrl);
|
|
62
|
+
// Force the render to be synchronous
|
|
63
|
+
process.env.EXPO_ROUTER_IMPORT_MODE = 'sync';
|
|
53
64
|
getLinkingConfig_1.stateCache.clear();
|
|
54
65
|
let location;
|
|
55
66
|
if (typeof initialUrl === 'string') {
|
|
@@ -58,7 +69,7 @@ function renderRouter(context = './app', { initialUrl = '/', ...options } = {})
|
|
|
58
69
|
else if (initialUrl instanceof URL) {
|
|
59
70
|
location = initialUrl;
|
|
60
71
|
}
|
|
61
|
-
const result = (0, react_native_1.render)(<ExpoRoot_1.ExpoRoot context={
|
|
72
|
+
const result = (0, react_native_1.render)(<ExpoRoot_1.ExpoRoot context={mockContext} location={location}/>, {
|
|
62
73
|
...options,
|
|
63
74
|
});
|
|
64
75
|
return Object.assign(result, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/testing-library/index.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,0CAA0C;AAC1C,oBAAkB;AAElB,gEAAqE;AACrE,gDAAwB;AACxB,kDAA0B;AAE1B,mDAKyB;AACzB,mCAAwC;AACxC,0CAAuC;AACvC,gFAAwD;AACxD,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/testing-library/index.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,0CAA0C;AAC1C,oBAAkB;AAElB,gEAAqE;AACrE,gDAAwB;AACxB,kDAA0B;AAE1B,mDAKyB;AACzB,mCAAwC;AACxC,0CAAuC;AACvC,gFAAwD;AACxD,0DAAsE;AACtE,4CAA8C;AAC9C,+DAAqD;AAErD,uBAAuB;AACvB,gEAA8C;AAa9C,SAAS,iBAAiB,CACxB,OAAe;IAEf,OAAO,OAAO,CAAC,OAAO,OAAO,KAAK,QAAQ,IAAI,QAAQ,IAAI,OAAO,CAAC,CAAC;AACrE,CAAC;AAaD,SAAgB,aAAa,CAAC,OAA0B;IACtD,OAAO,IAAA,sCAAmB,EAAC,IAAA,0BAAc,EAAC,cAAc,CAAC,OAAO,CAAC,CAAE,CAAC,CAAC;AACvE,CAAC;AAFD,sCAEC;AAED,SAAgB,cAAc,CAAC,OAA0B;IACvD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;QAC/B,OAAO,IAAA,8BAAc,EAAC,cAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC;KAC7D;SAAM,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;QACjC,OAAO,IAAA,+BAAe,EACpB,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CACnF,CAAC;KACH;SAAM,IAAI,iBAAiB,CAAC,OAAO,CAAC,EAAE;QACrC,OAAO,IAAA,2CAA2B,EAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;KACvE;SAAM;QACL,OAAO,IAAA,+BAAe,EAAC,OAAO,CAAC,CAAC;KACjC;AACH,CAAC;AAZD,wCAYC;AAED,SAAgB,YAAY,CAC1B,UAA6B,OAAO,EACpC,EAAE,UAAU,GAAG,GAAG,EAAE,GAAG,OAAO,KAA0B,EAAE;IAE1D,IAAI,CAAC,aAAa,EAAE,CAAC;IAErB,MAAM,WAAW,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;IAE5C,wBAAwB;IACxB,IAAA,qBAAa,EAAC,UAAU,CAAC,CAAC;IAE1B,qCAAqC;IACrC,OAAO,CAAC,GAAG,CAAC,uBAAuB,GAAG,MAAM,CAAC;IAC7C,6BAAU,CAAC,KAAK,EAAE,CAAC;IAEnB,IAAI,QAAyB,CAAC;IAE9B,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;QAClC,QAAQ,GAAG,IAAI,GAAG,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;KAC3C;SAAM,IAAI,UAAU,YAAY,GAAG,EAAE;QACpC,QAAQ,GAAG,UAAU,CAAC;KACvB;IAED,MAAM,MAAM,GAAG,IAAA,qBAAM,EAAC,CAAC,mBAAQ,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,EAAG,EAAE;QAC5E,GAAG,OAAO;KACX,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE;QAC3B,WAAW;YACT,OAAO,oBAAK,CAAC,iBAAiB,EAAE,CAAC,QAAQ,CAAC;QAC5C,CAAC;QACD,WAAW;YACT,OAAO,oBAAK,CAAC,iBAAiB,EAAE,CAAC,QAAQ,CAAC;QAC5C,CAAC;QACD,eAAe;YACb,OAAO,oBAAK,CAAC,iBAAiB,EAAE,CAAC,MAAM,CAAC;QAC1C,CAAC;QACD,qBAAqB;YACnB,OAAO,IAAA,0BAAgB,EAAC,oBAAK,CAAC,SAAU,EAAE,oBAAK,CAAC,OAAQ,CAAC,MAAM,CAAC,CAAC;QACnE,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAzCD,oCAyCC","sourcesContent":["/// <reference types=\"../../types/jest\" />\nimport './expect';\n\nimport { render, RenderResult } from '@testing-library/react-native';\nimport path from 'path';\nimport React from 'react';\n\nimport {\n FileStub,\n inMemoryContext,\n requireContext,\n requireContextWithOverrides,\n} from './context-stubs';\nimport { setInitialUrl } from './mocks';\nimport { ExpoRoot } from '../ExpoRoot';\nimport getPathFromState from '../fork/getPathFromState';\nimport { getNavigationConfig, stateCache } from '../getLinkingConfig';\nimport { getExactRoutes } from '../getRoutes';\nimport { store } from '../global-state/router-store';\n\n// re-export everything\nexport * from '@testing-library/react-native';\n\ntype RenderRouterOptions = Parameters<typeof render>[1] & {\n initialUrl?: any;\n};\n\ntype Result = ReturnType<typeof render> & {\n getPathname(): string;\n getPathnameWithParams(): string;\n getSegments(): string[];\n getSearchParams(): Record<string, string | string[]>;\n};\n\nfunction isOverrideContext(\n context: object\n): context is { appDir: string; overrides: Record<string, FileStub> } {\n return Boolean(typeof context === 'object' && 'appDir' in context);\n}\n\nexport type MockContextConfig =\n | string // Pathname to a directory\n | string[] // Array of filenames to mock as empty components, e.g () => null\n | Record<string, FileStub> // Map of filenames and their exports\n | {\n // Directory to load as context\n appDir: string;\n // Map of filenames and their exports. Will override contents of files loaded in `appDir\n overrides: Record<string, FileStub>;\n };\n\nexport function getMockConfig(context: MockContextConfig) {\n return getNavigationConfig(getExactRoutes(getMockContext(context))!);\n}\n\nexport function getMockContext(context: MockContextConfig) {\n if (typeof context === 'string') {\n return requireContext(path.resolve(process.cwd(), context));\n } else if (Array.isArray(context)) {\n return inMemoryContext(\n Object.fromEntries(context.map((filename) => [filename, { default: () => null }]))\n );\n } else if (isOverrideContext(context)) {\n return requireContextWithOverrides(context.appDir, context.overrides);\n } else {\n return inMemoryContext(context);\n }\n}\n\nexport function renderRouter(\n context: MockContextConfig = './app',\n { initialUrl = '/', ...options }: RenderRouterOptions = {}\n): Result {\n jest.useFakeTimers();\n\n const mockContext = getMockContext(context);\n\n // Reset the initial URL\n setInitialUrl(initialUrl);\n\n // Force the render to be synchronous\n process.env.EXPO_ROUTER_IMPORT_MODE = 'sync';\n stateCache.clear();\n\n let location: URL | undefined;\n\n if (typeof initialUrl === 'string') {\n location = new URL(initialUrl, 'test://');\n } else if (initialUrl instanceof URL) {\n location = initialUrl;\n }\n\n const result = render(<ExpoRoot context={mockContext} location={location} />, {\n ...options,\n });\n\n return Object.assign(result, {\n getPathname(this: RenderResult): string {\n return store.routeInfoSnapshot().pathname;\n },\n getSegments(this: RenderResult): string[] {\n return store.routeInfoSnapshot().segments;\n },\n getSearchParams(this: RenderResult): Record<string, string | string[]> {\n return store.routeInfoSnapshot().params;\n },\n getPathnameWithParams(this: RenderResult): string {\n return getPathFromState(store.rootState!, store.linking!.config);\n },\n });\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mocks.d.ts","sourceRoot":"","sources":["../../src/testing-library/mocks.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mocks.d.ts","sourceRoot":"","sources":["../../src/testing-library/mocks.ts"],"names":[],"mappings":"AA2BA,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,QAE1C"}
|
|
@@ -1,7 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.setInitialUrl = void 0;
|
|
4
|
-
|
|
4
|
+
/*
|
|
5
|
+
* Optionally enable @testing-library/jest-native/extend-expect. We use this internally for the `toBeOnTheScreen` matcher()
|
|
6
|
+
*/
|
|
7
|
+
try {
|
|
8
|
+
require('@testing-library/jest-native/extend-expect');
|
|
9
|
+
}
|
|
10
|
+
catch { }
|
|
5
11
|
// include this section and the NativeAnimatedHelper section for mocking react-native-reanimated
|
|
6
12
|
jest.mock('react-native-reanimated', () => {
|
|
7
13
|
try {
|