1
- import { Layout , LayoutRoot , Navigation , Options } from 'react-native-navigation'
1
+ import { Layout , Navigation , Options } from 'react-native-navigation'
2
2
import createLayout from './createLayout'
3
3
4
- interface SetRootCommand {
5
- ( layoutRoot : LayoutRoot ) : Promise < any >
6
- ( layout : Layout ) : Promise < any >
7
- < P = { } > ( name : string , passProps ?: P , options ?: Options ) : Promise < any >
8
- }
4
+ import setRoot , { SetRootCommand } from './setRoot'
5
+ import showModal , { ShowModalCommand } from './showModal'
6
+ import showOverlay , { ShowOverlayCommand } from './showOverlay'
9
7
10
8
interface SetStackRootCommand {
11
9
< P = { } > ( layout : Layout < P > | Layout < P > [ ] ) : Promise < any >
@@ -19,31 +17,45 @@ interface PushCommand {
19
17
< P = { } > ( name : string , passProps ?: P , options ?: Options ) : Promise < any >
20
18
}
21
19
22
- interface ShowModalCommand {
23
- ( layout : Layout ) : Promise < any >
24
- < P = { } > ( name : string , passProps ?: P , options ?: Options ) : Promise < any >
25
- }
26
-
27
- interface ShowOverlayCommand {
28
- ( layout : Layout ) : Promise < any >
29
- < P = { } > ( name : string , passProps ?: P , options ?: Options ) : Promise < any >
30
- }
31
-
32
20
export type NavigationCommands = {
33
- setRoot : SetRootCommand
34
21
setStackRoot: SetStackRootCommand
35
22
push: PushCommand
36
- showModal : ShowModalCommand
37
- showOverlay : ShowOverlayCommand
38
23
mergeOptions: ( options : Options ) => void
39
24
updateProps : ( props : object ) => void
40
25
dismissModal : ( mergeOptions ?: Options ) => Promise < any >
41
26
pop: ( mergeOptions ?: Options ) => Promise < any >
42
27
popTo: ( mergeOptions ?: Options ) => Promise < any >
43
28
popToRoot: ( mergeOptions ?: Options ) => Promise < any >
44
29
dismissOverlay: ( ) => Promise < any >
30
+
31
+ /**
32
+ * @deprecated Use setRoot import from 'react-native-navigation-hooks'
33
+ */
34
+ setRoot: SetRootCommand
35
+
36
+ /**
37
+ * @deprecated Use setRoot import from 'react-native-navigation-hooks'
38
+ */
39
+ showModal: ShowModalCommand
40
+
41
+ /**
42
+ * @deprecated Use showOverlay import from 'react-native-navigation-hooks'
43
+ */
44
+ showOverlay: ShowOverlayCommand
45
+
46
+ /**
47
+ * @deprecated Use Navigation.setDefaultOptions instead
48
+ */
45
49
setDefaultOptions: ( options : Options ) => void
50
+
51
+ /**
52
+ * @deprecated Use Navigation.dismissAllModals instead
53
+ */
46
54
dismissAllModals : ( mergeOptions ?: Options ) => Promise < any >
55
+
56
+ /**
57
+ * @deprecated Use Navigation.getLaunchArgs instead
58
+ */
47
59
getLaunchArgs: ( ) => Promise < any >
48
60
}
49
61
@@ -62,20 +74,6 @@ function createNavigationCommands(
62
74
*/
63
75
componentId : string
64
76
) : NavigationCommands {
65
- function setRoot < P = { } > ( nameOrLayout : string | Layout | LayoutRoot , passProps ?: P , options ?: Options ) {
66
- let layoutRoot
67
-
68
- if ( typeof nameOrLayout === 'string' ) {
69
- layoutRoot = { root : createLayout < P > ( nameOrLayout , passProps , options ) } as LayoutRoot
70
- } else if ( ( nameOrLayout as LayoutRoot ) . root ) {
71
- layoutRoot = nameOrLayout as LayoutRoot
72
- } else {
73
- layoutRoot = { root : nameOrLayout } as LayoutRoot
74
- }
75
-
76
- return Navigation . setRoot ( layoutRoot )
77
- }
78
-
79
77
function setStackRoot < P = { } > ( nameOrLayout : string | Layout < P > | Array < Layout < P > > , passProps ?: P , options ?: Options ) {
80
78
const layout = typeof nameOrLayout === 'string' ? createLayout < P > ( nameOrLayout , passProps , options ) : nameOrLayout
81
79
@@ -88,18 +86,6 @@ function createNavigationCommands(
88
86
return Navigation . push ( componentId , layout )
89
87
}
90
88
91
- function showModal < P = { } > ( nameOrLayout : string | Layout < P > , passProps ?: P , options ?: Options ) {
92
- const layout = typeof nameOrLayout === 'string' ? createLayout < P > ( nameOrLayout , passProps , options ) : nameOrLayout
93
-
94
- return Navigation . showModal ( layout )
95
- }
96
-
97
- function showOverlay < P = { } > ( nameOrLayout : string | Layout < P > , passProps ?: P , options ?: Options ) {
98
- const layout = typeof nameOrLayout === 'string' ? createLayout < P > ( nameOrLayout , passProps , options ) : nameOrLayout
99
-
100
- return Navigation . showOverlay ( layout )
101
- }
102
-
103
89
function mergeOptions ( options : Options ) {
104
90
return Navigation . mergeOptions ( componentId , options )
105
91
}
@@ -135,18 +121,18 @@ function createNavigationCommands(
135
121
const { setDefaultOptions, dismissAllModals, getLaunchArgs } = Navigation
136
122
137
123
return {
138
- setRoot,
139
124
setStackRoot,
140
125
push,
141
- showModal,
142
- showOverlay,
143
126
mergeOptions,
144
127
updateProps,
145
128
dismissModal,
146
129
pop,
147
130
popTo,
148
131
popToRoot,
149
132
dismissOverlay,
133
+ setRoot,
134
+ showModal,
135
+ showOverlay,
150
136
setDefaultOptions,
151
137
dismissAllModals,
152
138
getLaunchArgs,
0 commit comments