@planningcenter/chat-react-native 3.42.3-qa-staging.7 → 3.42.3-qa-856.0
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/components/conversation/messages_disabled_banners.d.ts +3 -2
- package/build/components/conversation/messages_disabled_banners.d.ts.map +1 -1
- package/build/components/conversation/messages_disabled_banners.js +7 -2
- package/build/components/conversation/messages_disabled_banners.js.map +1 -1
- package/build/components/display/adult_requirement_notice.js +1 -1
- package/build/components/display/adult_requirement_notice.js.map +1 -1
- package/build/components/display/platform_modal_header_buttons.d.ts +25 -7
- package/build/components/display/platform_modal_header_buttons.d.ts.map +1 -1
- package/build/components/display/platform_modal_header_buttons.js +66 -8
- package/build/components/display/platform_modal_header_buttons.js.map +1 -1
- package/build/hooks/use_conversation.d.ts.map +1 -1
- package/build/hooks/use_conversation.js +0 -1
- package/build/hooks/use_conversation.js.map +1 -1
- package/build/hooks/use_conversation_jolt_events.d.ts.map +1 -1
- package/build/hooks/use_conversation_jolt_events.js +2 -10
- package/build/hooks/use_conversation_jolt_events.js.map +1 -1
- package/build/navigation/index.d.ts +47 -117
- package/build/navigation/index.d.ts.map +1 -1
- package/build/navigation/index.js +55 -57
- package/build/navigation/index.js.map +1 -1
- package/build/screens/bug_report_screen.d.ts.map +1 -1
- package/build/screens/bug_report_screen.js +4 -13
- package/build/screens/bug_report_screen.js.map +1 -1
- package/build/screens/conversation_details_screen.d.ts.map +1 -1
- package/build/screens/conversation_details_screen.js +10 -12
- package/build/screens/conversation_details_screen.js.map +1 -1
- package/build/screens/conversation_filters/components/rows.js +1 -1
- package/build/screens/conversation_filters/components/rows.js.map +1 -1
- package/build/screens/conversation_filters_screen.d.ts.map +1 -1
- package/build/screens/conversation_filters_screen.js +15 -2
- package/build/screens/conversation_filters_screen.js.map +1 -1
- package/build/screens/conversation_screen.js +1 -1
- package/build/screens/conversation_screen.js.map +1 -1
- package/build/screens/conversation_select_recipients/components/groups_recipient_row.js +1 -1
- package/build/screens/conversation_select_recipients/components/groups_recipient_row.js.map +1 -1
- package/build/screens/conversation_select_recipients/components/restricted_group_row.js +1 -1
- package/build/screens/conversation_select_recipients/components/restricted_group_row.js.map +1 -1
- package/build/screens/message_report_screen.d.ts.map +1 -1
- package/build/screens/message_report_screen.js +12 -18
- package/build/screens/message_report_screen.js.map +1 -1
- package/build/screens/notification_settings_screen.d.ts.map +1 -1
- package/build/screens/notification_settings_screen.js +2 -14
- package/build/screens/notification_settings_screen.js.map +1 -1
- package/build/types/jolt_events/conversation_events.d.ts +2 -2
- package/build/types/jolt_events/conversation_events.d.ts.map +1 -1
- package/build/types/jolt_events/conversation_events.js.map +1 -1
- package/build/types/resources/conversation.d.ts +2 -2
- package/build/types/resources/conversation.d.ts.map +1 -1
- package/build/types/resources/conversation.js.map +1 -1
- package/build/utils/conversation_safety_constants.d.ts +1 -1
- package/build/utils/conversation_safety_constants.d.ts.map +1 -1
- package/build/utils/conversation_safety_constants.js +1 -1
- package/build/utils/conversation_safety_constants.js.map +1 -1
- package/build/utils/request/conversation.d.ts.map +1 -1
- package/build/utils/request/conversation.js +0 -1
- package/build/utils/request/conversation.js.map +1 -1
- package/package.json +3 -3
- package/src/components/conversation/messages_disabled_banners.tsx +11 -3
- package/src/components/display/adult_requirement_notice.tsx +1 -1
- package/src/components/display/platform_modal_header_buttons.tsx +139 -11
- package/src/hooks/use_conversation.ts +0 -1
- package/src/hooks/use_conversation_jolt_events.ts +3 -16
- package/src/navigation/index.tsx +143 -154
- package/src/screens/bug_report_screen.tsx +10 -15
- package/src/screens/conversation_details_screen.tsx +10 -17
- package/src/screens/conversation_filters/components/rows.tsx +2 -2
- package/src/screens/conversation_filters_screen.tsx +22 -2
- package/src/screens/conversation_screen.tsx +1 -1
- package/src/screens/conversation_select_recipients/components/groups_recipient_row.tsx +1 -1
- package/src/screens/conversation_select_recipients/components/restricted_group_row.tsx +2 -2
- package/src/screens/message_report_screen.tsx +18 -21
- package/src/screens/notification_settings_screen.tsx +3 -20
- package/src/types/jolt_events/conversation_events.ts +2 -2
- package/src/types/resources/conversation.ts +3 -2
- package/src/utils/conversation_safety_constants.ts +1 -1
- package/src/utils/request/conversation.ts +0 -1
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { StaticParamList } from '@react-navigation/native';
|
|
2
|
-
import { NativeStackHeaderRightProps } from '@react-navigation/native-stack';
|
|
3
2
|
import { CardStyleInterpolators } from '@react-navigation/stack';
|
|
4
3
|
import { useDirectMessagesEnabled } from '../hooks';
|
|
5
4
|
import { AttachmentActionsScreen } from '../screens/attachment_actions/attachment_actions_screen';
|
|
@@ -26,14 +25,14 @@ import { SystemMessagePeopleScreen } from '../screens/system_message_people_scre
|
|
|
26
25
|
import { ScreenLayoutWithChatAccessGate } from './screenLayout';
|
|
27
26
|
export declare const NewConversationStack: import("@react-navigation/core").TypedNavigator<{
|
|
28
27
|
ParamList: import("@react-navigation/routers").ParamListBase;
|
|
29
|
-
NavigatorID: undefined;
|
|
28
|
+
NavigatorID: string | undefined;
|
|
30
29
|
State: import("@react-navigation/routers").StackNavigationState<import("@react-navigation/routers").ParamListBase>;
|
|
31
30
|
ScreenOptions: import("@react-navigation/native-stack").NativeStackNavigationOptions;
|
|
32
31
|
EventMap: import("@react-navigation/native-stack").NativeStackNavigationEventMap;
|
|
33
32
|
NavigationList: {
|
|
34
|
-
[x: string]: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, undefined>;
|
|
33
|
+
[x: string]: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, string | undefined>;
|
|
35
34
|
};
|
|
36
|
-
Navigator: ({ id, initialRouteName, children, layout, screenListeners, screenOptions, screenLayout,
|
|
35
|
+
Navigator: ({ id, initialRouteName, UNSTABLE_routeNamesChangeBehavior, children, layout, screenListeners, screenOptions, screenLayout, UNSTABLE_router, ...rest }: import("@react-navigation/native-stack").NativeStackNavigatorProps) => import("react/jsx-runtime").JSX.Element;
|
|
37
36
|
}, {
|
|
38
37
|
readonly initialRouteName: "ConversationNewEntry";
|
|
39
38
|
readonly screenOptions: {
|
|
@@ -45,47 +44,34 @@ export declare const NewConversationStack: import("@react-navigation/core").Type
|
|
|
45
44
|
readonly screen: ({ route }: import("../screens/conversation_select_recipients/types/screen_props").ConversationSelectRecipientsScreenProps) => import("react/jsx-runtime").JSX.Element;
|
|
46
45
|
readonly options: ({ navigation }: {
|
|
47
46
|
route: import("@react-navigation/core").RouteProp<import("@react-navigation/routers").ParamListBase, string>;
|
|
48
|
-
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, undefined>;
|
|
47
|
+
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, string | undefined>;
|
|
49
48
|
theme: ReactNavigation.Theme;
|
|
50
|
-
}) =>
|
|
51
|
-
title: string;
|
|
52
|
-
headerRight: (props: NativeStackHeaderRightProps) => import("react/jsx-runtime").JSX.Element;
|
|
53
|
-
headerBackVisible: false;
|
|
54
|
-
};
|
|
49
|
+
}) => import("@react-navigation/native-stack").NativeStackNavigationOptions;
|
|
55
50
|
};
|
|
56
51
|
readonly ConversationSelectGroupRecipients: {
|
|
57
52
|
readonly screen: ({ route, }: import("../screens/conversation_select_recipients/types/screen_props").ConversationSelectRecipientsScreenProps) => import("react/jsx-runtime").JSX.Element;
|
|
58
53
|
readonly options: ({ navigation, route }: {
|
|
59
54
|
route: import("@react-navigation/core").RouteProp<import("@react-navigation/routers").ParamListBase, string>;
|
|
60
|
-
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, undefined>;
|
|
55
|
+
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, string | undefined>;
|
|
61
56
|
theme: ReactNavigation.Theme;
|
|
62
|
-
}) =>
|
|
63
|
-
title: string;
|
|
64
|
-
headerRight: (props: NativeStackHeaderRightProps) => import("react/jsx-runtime").JSX.Element;
|
|
65
|
-
};
|
|
57
|
+
}) => import("@react-navigation/native-stack").NativeStackNavigationOptions;
|
|
66
58
|
};
|
|
67
59
|
readonly ConversationSelectTeamsILeadRecipients: {
|
|
68
60
|
readonly screen: ({ route, }: import("../screens/conversation_select_recipients/types/screen_props").ConversationSelectRecipientsScreenProps) => import("react/jsx-runtime").JSX.Element;
|
|
69
61
|
readonly options: ({ navigation, route }: {
|
|
70
62
|
route: import("@react-navigation/core").RouteProp<import("@react-navigation/routers").ParamListBase, string>;
|
|
71
|
-
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, undefined>;
|
|
63
|
+
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, string | undefined>;
|
|
72
64
|
theme: ReactNavigation.Theme;
|
|
73
|
-
}) =>
|
|
74
|
-
title: string;
|
|
75
|
-
headerRight: (props: NativeStackHeaderRightProps) => import("react/jsx-runtime").JSX.Element;
|
|
76
|
-
};
|
|
65
|
+
}) => import("@react-navigation/native-stack").NativeStackNavigationOptions;
|
|
77
66
|
};
|
|
78
67
|
readonly ConversationSelectDirectMessageRecipients: {
|
|
79
68
|
readonly screen: typeof ConversationSelectDirectMessageRecipientsScreen;
|
|
80
69
|
readonly if: typeof useDirectMessagesEnabled;
|
|
81
70
|
readonly options: ({ navigation, route }: {
|
|
82
71
|
route: import("@react-navigation/core").RouteProp<import("@react-navigation/routers").ParamListBase, string>;
|
|
83
|
-
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, undefined>;
|
|
72
|
+
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, string | undefined>;
|
|
84
73
|
theme: ReactNavigation.Theme;
|
|
85
|
-
}) =>
|
|
86
|
-
title: string;
|
|
87
|
-
headerRight: (props: NativeStackHeaderRightProps) => import("react/jsx-runtime").JSX.Element;
|
|
88
|
-
};
|
|
74
|
+
}) => import("@react-navigation/native-stack").NativeStackNavigationOptions;
|
|
89
75
|
};
|
|
90
76
|
readonly ConversationFilterRecipients: {
|
|
91
77
|
readonly screen: ({ route, }: import("../screens/conversation_filter_recipients/types").ConversationFilterRecipientsScreenProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -108,13 +94,9 @@ export declare const NewConversationStack: import("@react-navigation/core").Type
|
|
|
108
94
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
109
95
|
readonly options: ({ navigation, route }: {
|
|
110
96
|
route: import("@react-navigation/core").RouteProp<import("@react-navigation/routers").ParamListBase, string>;
|
|
111
|
-
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, undefined>;
|
|
97
|
+
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, string | undefined>;
|
|
112
98
|
theme: ReactNavigation.Theme;
|
|
113
|
-
}) =>
|
|
114
|
-
title: string;
|
|
115
|
-
headerLeft: () => null;
|
|
116
|
-
headerRight: (props: NativeStackHeaderRightProps) => import("react/jsx-runtime").JSX.Element;
|
|
117
|
-
};
|
|
99
|
+
}) => import("@react-navigation/native-stack").NativeStackNavigationOptions;
|
|
118
100
|
};
|
|
119
101
|
readonly AvatarPicker: {
|
|
120
102
|
readonly screen: typeof AvatarPickerScreen;
|
|
@@ -124,14 +106,14 @@ export declare const NewConversationStack: import("@react-navigation/core").Type
|
|
|
124
106
|
}>;
|
|
125
107
|
export declare const ChatStack: import("@react-navigation/core").TypedNavigator<{
|
|
126
108
|
ParamList: import("@react-navigation/routers").ParamListBase;
|
|
127
|
-
NavigatorID: undefined;
|
|
109
|
+
NavigatorID: string | undefined;
|
|
128
110
|
State: import("@react-navigation/routers").StackNavigationState<import("@react-navigation/routers").ParamListBase>;
|
|
129
111
|
ScreenOptions: import("@react-navigation/native-stack").NativeStackNavigationOptions;
|
|
130
112
|
EventMap: import("@react-navigation/native-stack").NativeStackNavigationEventMap;
|
|
131
113
|
NavigationList: {
|
|
132
|
-
[x: string]: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, undefined>;
|
|
114
|
+
[x: string]: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, string | undefined>;
|
|
133
115
|
};
|
|
134
|
-
Navigator: ({ id, initialRouteName, children, layout, screenListeners, screenOptions, screenLayout,
|
|
116
|
+
Navigator: ({ id, initialRouteName, UNSTABLE_routeNamesChangeBehavior, children, layout, screenListeners, screenOptions, screenLayout, UNSTABLE_router, ...rest }: import("@react-navigation/native-stack").NativeStackNavigatorProps) => import("react/jsx-runtime").JSX.Element;
|
|
135
117
|
}, {
|
|
136
118
|
readonly screenOptions: {
|
|
137
119
|
readonly headerBackButtonDisplayMode: "minimal";
|
|
@@ -142,13 +124,9 @@ export declare const ChatStack: import("@react-navigation/core").TypedNavigator<
|
|
|
142
124
|
readonly screen: typeof ConversationsScreen;
|
|
143
125
|
readonly options: ({ route, navigation }: {
|
|
144
126
|
route: import("@react-navigation/core").RouteProp<import("@react-navigation/routers").ParamListBase, string>;
|
|
145
|
-
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, undefined>;
|
|
127
|
+
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, string | undefined>;
|
|
146
128
|
theme: ReactNavigation.Theme;
|
|
147
|
-
}) =>
|
|
148
|
-
headerTitle: string;
|
|
149
|
-
headerBackVisible: false;
|
|
150
|
-
headerRight: (props: NativeStackHeaderRightProps) => import("react/jsx-runtime").JSX.Element;
|
|
151
|
-
};
|
|
129
|
+
}) => import("@react-navigation/native-stack").NativeStackNavigationOptions;
|
|
152
130
|
};
|
|
153
131
|
readonly ConversationFilters: {
|
|
154
132
|
readonly screen: (_props: import("..").ConversationFiltersScreenProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -158,24 +136,17 @@ export declare const ChatStack: import("@react-navigation/core").TypedNavigator<
|
|
|
158
136
|
readonly screen: typeof ConversationScreen;
|
|
159
137
|
readonly options: ({ route, navigation }: {
|
|
160
138
|
route: import("@react-navigation/core").RouteProp<import("@react-navigation/routers").ParamListBase, string>;
|
|
161
|
-
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, undefined>;
|
|
139
|
+
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, string | undefined>;
|
|
162
140
|
theme: ReactNavigation.Theme;
|
|
163
|
-
}) =>
|
|
164
|
-
headerTitle: (props: NativeStackHeaderRightProps) => import("react/jsx-runtime").JSX.Element;
|
|
165
|
-
headerRight: (props: NativeStackHeaderRightProps) => import("react/jsx-runtime").JSX.Element;
|
|
166
|
-
headerLeft: (props: import("@react-navigation/native-stack").NativeStackHeaderLeftProps) => import("react/jsx-runtime").JSX.Element;
|
|
167
|
-
};
|
|
141
|
+
}) => import("@react-navigation/native-stack").NativeStackNavigationOptions;
|
|
168
142
|
};
|
|
169
143
|
readonly ConversationReply: {
|
|
170
144
|
readonly screen: typeof ConversationScreen;
|
|
171
145
|
readonly options: ({ route, navigation }: {
|
|
172
146
|
route: import("@react-navigation/core").RouteProp<import("@react-navigation/routers").ParamListBase, string>;
|
|
173
|
-
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, undefined>;
|
|
147
|
+
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, string | undefined>;
|
|
174
148
|
theme: ReactNavigation.Theme;
|
|
175
|
-
}) =>
|
|
176
|
-
title: string;
|
|
177
|
-
headerLeft: (props: import("@react-navigation/native-stack").NativeStackHeaderLeftProps) => import("react/jsx-runtime").JSX.Element;
|
|
178
|
-
};
|
|
149
|
+
}) => import("@react-navigation/native-stack").NativeStackNavigationOptions;
|
|
179
150
|
};
|
|
180
151
|
readonly TeamConversation: {
|
|
181
152
|
readonly screen: ({ route }: import("..").TeamConversationScreenProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -190,13 +161,9 @@ export declare const ChatStack: import("@react-navigation/core").TypedNavigator<
|
|
|
190
161
|
readonly screen: typeof ConversationDetailsScreen;
|
|
191
162
|
readonly options: ({ navigation }: {
|
|
192
163
|
route: import("@react-navigation/core").RouteProp<import("@react-navigation/routers").ParamListBase, string>;
|
|
193
|
-
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, undefined>;
|
|
164
|
+
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, string | undefined>;
|
|
194
165
|
theme: ReactNavigation.Theme;
|
|
195
|
-
}) =>
|
|
196
|
-
presentation: "modal";
|
|
197
|
-
title: string;
|
|
198
|
-
headerRight: (props: NativeStackHeaderRightProps) => import("react/jsx-runtime").JSX.Element;
|
|
199
|
-
};
|
|
166
|
+
}) => import("@react-navigation/native-stack").NativeStackNavigationOptions;
|
|
200
167
|
};
|
|
201
168
|
readonly AvatarPicker: {
|
|
202
169
|
readonly screen: typeof AvatarPickerScreen;
|
|
@@ -206,25 +173,17 @@ export declare const ChatStack: import("@react-navigation/core").TypedNavigator<
|
|
|
206
173
|
readonly screen: typeof SettingsScreen;
|
|
207
174
|
readonly options: ({ navigation }: {
|
|
208
175
|
route: import("@react-navigation/core").RouteProp<import("@react-navigation/routers").ParamListBase, string>;
|
|
209
|
-
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, undefined>;
|
|
176
|
+
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, string | undefined>;
|
|
210
177
|
theme: ReactNavigation.Theme;
|
|
211
|
-
}) =>
|
|
212
|
-
title: string;
|
|
213
|
-
headerBackVisible: false;
|
|
214
|
-
headerRight: (props: NativeStackHeaderRightProps) => import("react/jsx-runtime").JSX.Element;
|
|
215
|
-
};
|
|
178
|
+
}) => import("@react-navigation/native-stack").NativeStackNavigationOptions;
|
|
216
179
|
};
|
|
217
180
|
readonly NotificationSettings: {
|
|
218
181
|
readonly screen: typeof NotificationSettingsScreen;
|
|
219
182
|
readonly options: ({ navigation }: {
|
|
220
183
|
route: import("@react-navigation/core").RouteProp<import("@react-navigation/routers").ParamListBase, string>;
|
|
221
|
-
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, undefined>;
|
|
184
|
+
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, string | undefined>;
|
|
222
185
|
theme: ReactNavigation.Theme;
|
|
223
|
-
}) =>
|
|
224
|
-
title: string;
|
|
225
|
-
headerBackVisible: false;
|
|
226
|
-
headerRight: (props: NativeStackHeaderRightProps) => import("react/jsx-runtime").JSX.Element;
|
|
227
|
-
};
|
|
186
|
+
}) => import("@react-navigation/native-stack").NativeStackNavigationOptions;
|
|
228
187
|
};
|
|
229
188
|
readonly PreferredAppSelection: {
|
|
230
189
|
readonly screen: typeof PreferredAppSelectionScreen;
|
|
@@ -236,12 +195,9 @@ export declare const ChatStack: import("@react-navigation/core").TypedNavigator<
|
|
|
236
195
|
readonly screen: typeof GroupNotificationSettingsScreen;
|
|
237
196
|
readonly options: ({ route, navigation }: {
|
|
238
197
|
route: import("@react-navigation/core").RouteProp<import("@react-navigation/routers").ParamListBase, string>;
|
|
239
|
-
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, undefined>;
|
|
198
|
+
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, string | undefined>;
|
|
240
199
|
theme: ReactNavigation.Theme;
|
|
241
|
-
}) =>
|
|
242
|
-
title: string;
|
|
243
|
-
headerRight: (props: NativeStackHeaderRightProps) => import("react/jsx-runtime").JSX.Element;
|
|
244
|
-
};
|
|
200
|
+
}) => import("@react-navigation/native-stack").NativeStackNavigationOptions;
|
|
245
201
|
};
|
|
246
202
|
readonly GroupNotificationLevelSelect: {
|
|
247
203
|
readonly screen: typeof GroupNotificationLevelSelectScreen;
|
|
@@ -254,14 +210,14 @@ export declare const ChatStack: import("@react-navigation/core").TypedNavigator<
|
|
|
254
210
|
readonly New: {
|
|
255
211
|
readonly screen: import("@react-navigation/core").TypedNavigator<{
|
|
256
212
|
ParamList: import("@react-navigation/routers").ParamListBase;
|
|
257
|
-
NavigatorID: undefined;
|
|
213
|
+
NavigatorID: string | undefined;
|
|
258
214
|
State: import("@react-navigation/routers").StackNavigationState<import("@react-navigation/routers").ParamListBase>;
|
|
259
215
|
ScreenOptions: import("@react-navigation/native-stack").NativeStackNavigationOptions;
|
|
260
216
|
EventMap: import("@react-navigation/native-stack").NativeStackNavigationEventMap;
|
|
261
217
|
NavigationList: {
|
|
262
|
-
[x: string]: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, undefined>;
|
|
218
|
+
[x: string]: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, string | undefined>;
|
|
263
219
|
};
|
|
264
|
-
Navigator: ({ id, initialRouteName, children, layout, screenListeners, screenOptions, screenLayout,
|
|
220
|
+
Navigator: ({ id, initialRouteName, UNSTABLE_routeNamesChangeBehavior, children, layout, screenListeners, screenOptions, screenLayout, UNSTABLE_router, ...rest }: import("@react-navigation/native-stack").NativeStackNavigatorProps) => import("react/jsx-runtime").JSX.Element;
|
|
265
221
|
}, {
|
|
266
222
|
readonly initialRouteName: "ConversationNewEntry";
|
|
267
223
|
readonly screenOptions: {
|
|
@@ -273,47 +229,34 @@ export declare const ChatStack: import("@react-navigation/core").TypedNavigator<
|
|
|
273
229
|
readonly screen: ({ route }: import("../screens/conversation_select_recipients/types/screen_props").ConversationSelectRecipientsScreenProps) => import("react/jsx-runtime").JSX.Element;
|
|
274
230
|
readonly options: ({ navigation }: {
|
|
275
231
|
route: import("@react-navigation/core").RouteProp<import("@react-navigation/routers").ParamListBase, string>;
|
|
276
|
-
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, undefined>;
|
|
232
|
+
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, string | undefined>;
|
|
277
233
|
theme: ReactNavigation.Theme;
|
|
278
|
-
}) =>
|
|
279
|
-
title: string;
|
|
280
|
-
headerRight: (props: NativeStackHeaderRightProps) => import("react/jsx-runtime").JSX.Element;
|
|
281
|
-
headerBackVisible: false;
|
|
282
|
-
};
|
|
234
|
+
}) => import("@react-navigation/native-stack").NativeStackNavigationOptions;
|
|
283
235
|
};
|
|
284
236
|
readonly ConversationSelectGroupRecipients: {
|
|
285
237
|
readonly screen: ({ route, }: import("../screens/conversation_select_recipients/types/screen_props").ConversationSelectRecipientsScreenProps) => import("react/jsx-runtime").JSX.Element;
|
|
286
238
|
readonly options: ({ navigation, route }: {
|
|
287
239
|
route: import("@react-navigation/core").RouteProp<import("@react-navigation/routers").ParamListBase, string>;
|
|
288
|
-
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, undefined>;
|
|
240
|
+
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, string | undefined>;
|
|
289
241
|
theme: ReactNavigation.Theme;
|
|
290
|
-
}) =>
|
|
291
|
-
title: string;
|
|
292
|
-
headerRight: (props: NativeStackHeaderRightProps) => import("react/jsx-runtime").JSX.Element;
|
|
293
|
-
};
|
|
242
|
+
}) => import("@react-navigation/native-stack").NativeStackNavigationOptions;
|
|
294
243
|
};
|
|
295
244
|
readonly ConversationSelectTeamsILeadRecipients: {
|
|
296
245
|
readonly screen: ({ route, }: import("../screens/conversation_select_recipients/types/screen_props").ConversationSelectRecipientsScreenProps) => import("react/jsx-runtime").JSX.Element;
|
|
297
246
|
readonly options: ({ navigation, route }: {
|
|
298
247
|
route: import("@react-navigation/core").RouteProp<import("@react-navigation/routers").ParamListBase, string>;
|
|
299
|
-
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, undefined>;
|
|
248
|
+
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, string | undefined>;
|
|
300
249
|
theme: ReactNavigation.Theme;
|
|
301
|
-
}) =>
|
|
302
|
-
title: string;
|
|
303
|
-
headerRight: (props: NativeStackHeaderRightProps) => import("react/jsx-runtime").JSX.Element;
|
|
304
|
-
};
|
|
250
|
+
}) => import("@react-navigation/native-stack").NativeStackNavigationOptions;
|
|
305
251
|
};
|
|
306
252
|
readonly ConversationSelectDirectMessageRecipients: {
|
|
307
253
|
readonly screen: typeof ConversationSelectDirectMessageRecipientsScreen;
|
|
308
254
|
readonly if: typeof useDirectMessagesEnabled;
|
|
309
255
|
readonly options: ({ navigation, route }: {
|
|
310
256
|
route: import("@react-navigation/core").RouteProp<import("@react-navigation/routers").ParamListBase, string>;
|
|
311
|
-
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, undefined>;
|
|
257
|
+
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, string | undefined>;
|
|
312
258
|
theme: ReactNavigation.Theme;
|
|
313
|
-
}) =>
|
|
314
|
-
title: string;
|
|
315
|
-
headerRight: (props: NativeStackHeaderRightProps) => import("react/jsx-runtime").JSX.Element;
|
|
316
|
-
};
|
|
259
|
+
}) => import("@react-navigation/native-stack").NativeStackNavigationOptions;
|
|
317
260
|
};
|
|
318
261
|
readonly ConversationFilterRecipients: {
|
|
319
262
|
readonly screen: ({ route, }: import("../screens/conversation_filter_recipients/types").ConversationFilterRecipientsScreenProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -336,13 +279,9 @@ export declare const ChatStack: import("@react-navigation/core").TypedNavigator<
|
|
|
336
279
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
337
280
|
readonly options: ({ navigation, route }: {
|
|
338
281
|
route: import("@react-navigation/core").RouteProp<import("@react-navigation/routers").ParamListBase, string>;
|
|
339
|
-
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, undefined>;
|
|
282
|
+
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, string | undefined>;
|
|
340
283
|
theme: ReactNavigation.Theme;
|
|
341
|
-
}) =>
|
|
342
|
-
title: string;
|
|
343
|
-
headerLeft: () => null;
|
|
344
|
-
headerRight: (props: NativeStackHeaderRightProps) => import("react/jsx-runtime").JSX.Element;
|
|
345
|
-
};
|
|
284
|
+
}) => import("@react-navigation/native-stack").NativeStackNavigationOptions;
|
|
346
285
|
};
|
|
347
286
|
readonly AvatarPicker: {
|
|
348
287
|
readonly screen: typeof AvatarPickerScreen;
|
|
@@ -374,13 +313,9 @@ export declare const ChatStack: import("@react-navigation/core").TypedNavigator<
|
|
|
374
313
|
readonly if: () => boolean;
|
|
375
314
|
readonly options: ({ navigation }: {
|
|
376
315
|
route: import("@react-navigation/core").RouteProp<import("@react-navigation/routers").ParamListBase, string>;
|
|
377
|
-
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, undefined>;
|
|
316
|
+
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, string | undefined>;
|
|
378
317
|
theme: ReactNavigation.Theme;
|
|
379
|
-
}) =>
|
|
380
|
-
title: string;
|
|
381
|
-
headerLeft: () => null;
|
|
382
|
-
headerRight: (props: NativeStackHeaderRightProps) => import("react/jsx-runtime").JSX.Element;
|
|
383
|
-
};
|
|
318
|
+
}) => import("@react-navigation/native-stack").NativeStackNavigationOptions;
|
|
384
319
|
};
|
|
385
320
|
readonly SendGiphy: {
|
|
386
321
|
readonly screen: typeof SendGiphyScreen;
|
|
@@ -428,14 +363,9 @@ export declare const ChatStack: import("@react-navigation/core").TypedNavigator<
|
|
|
428
363
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
429
364
|
readonly options: ({ navigation }: {
|
|
430
365
|
route: import("@react-navigation/core").RouteProp<import("@react-navigation/routers").ParamListBase, string>;
|
|
431
|
-
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, undefined>;
|
|
366
|
+
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, string | undefined>;
|
|
432
367
|
theme: ReactNavigation.Theme;
|
|
433
|
-
}) =>
|
|
434
|
-
headerTitle: string;
|
|
435
|
-
headerBackVisible: false;
|
|
436
|
-
presentation: "modal";
|
|
437
|
-
headerRight: (props: NativeStackHeaderRightProps) => import("react/jsx-runtime").JSX.Element;
|
|
438
|
-
};
|
|
368
|
+
}) => import("@react-navigation/native-stack").NativeStackNavigationOptions;
|
|
439
369
|
};
|
|
440
370
|
readonly NotFound: {
|
|
441
371
|
readonly screen: typeof NotFound;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/navigation/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/navigation/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAK1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAShE,OAAO,EAAE,wBAAwB,EAAqB,MAAM,UAAU,CAAA;AACtE,OAAO,EACL,uBAAuB,EAExB,MAAM,yDAAyD,CAAA;AAChE,OAAO,EACL,kBAAkB,EAGnB,MAAM,+CAA+C,CAAA;AACtD,OAAO,EAAE,eAAe,EAA0B,MAAM,8BAA8B,CAAA;AACtF,OAAO,EACL,yBAAyB,EAE1B,MAAM,sDAAsD,CAAA;AAC7D,OAAO,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAA;AAWlF,OAAO,EACL,yCAAyC,EAE1C,MAAM,0DAA0D,CAAA;AACjE,OAAO,EAEL,kBAAkB,EAEnB,MAAM,gCAAgC,CAAA;AAEvC,OAAO,EAAE,+CAA+C,EAAE,MAAM,gGAAgG,CAAA;AAIhK,OAAO,EACL,4BAA4B,EAE7B,MAAM,4CAA4C,CAAA;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,+CAA+C,CAAA;AAEnF,OAAO,EACL,kCAAkC,EAEnC,MAAM,mDAAmD,CAAA;AAC1D,OAAO,EAAE,+BAA+B,EAAE,MAAM,+CAA+C,CAAA;AAC/F,OAAO,EACL,oBAAoB,EAErB,MAAM,mCAAmC,CAAA;AAC1C,OAAO,EAAE,mBAAmB,EAA8B,MAAM,kCAAkC,CAAA;AAClG,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAA;AACpF,OAAO,EAAE,2BAA2B,EAAE,MAAM,2CAA2C,CAAA;AACvF,OAAO,EAAE,eAAe,EAA0B,MAAM,6BAA6B,CAAA;AACrF,OAAO,EAAE,eAAe,EAA0B,MAAM,8BAA8B,CAAA;AACtF,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAC3D,OAAO,EACL,yBAAyB,EAE1B,MAAM,yCAAyC,CAAA;AAEhD,OAAO,EAAE,8BAA8B,EAAE,MAAM,gBAAgB,CAAA;AAE/D,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqF/B,CAAA;AAEF,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8NpB,CAAA;AAEF,KAAK,kBAAkB,GAAG,eAAe,CAAC,OAAO,SAAS,CAAC,CAAA;AAE3D,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,eAAe,CAAC;QACxB,UAAU,aAAc,SAAQ,kBAAkB;SAAG;KACtD;CACF"}
|
|
@@ -1,10 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { HeaderBackButton } from '@react-navigation/elements';
|
|
3
2
|
import { createNativeStackNavigator, } from '@react-navigation/native-stack';
|
|
4
3
|
import { CardStyleInterpolators } from '@react-navigation/stack';
|
|
5
|
-
import {
|
|
6
|
-
import { Icon } from '../components';
|
|
7
|
-
import { HeaderDoneButton, HeaderTextButton, } from '../components/display/platform_modal_header_buttons';
|
|
4
|
+
import { composeOptions, createMinimalHeaderBackButton, withMinimalBack, withRightClose, withRightText, } from '../components/display/platform_modal_header_buttons';
|
|
8
5
|
import { useDirectMessagesEnabled, useQualifiedByAge } from '../hooks';
|
|
9
6
|
import { AttachmentActionsScreen, AttachmentActionsScreenOptions, } from '../screens/attachment_actions/attachment_actions_screen';
|
|
10
7
|
import { AvatarPickerScreen, AvatarPickerScreenOptions, AvatarPickerCreateScreenOptions, } from '../screens/avatar_picker/avatar_picker_screen';
|
|
@@ -36,10 +33,6 @@ import { SettingsScreen } from '../screens/settings_screen';
|
|
|
36
33
|
import { SystemMessagePeopleScreen, SystemMessagePeopleScreenOptions, } from '../screens/system_message_people_screen';
|
|
37
34
|
import { TeamConversationScreen } from '../screens/team_conversation_screen';
|
|
38
35
|
import { ScreenLayoutWithChatAccessGate } from './screenLayout';
|
|
39
|
-
const HEADER_BACK_BUTTON_LAYOUT_RESET_STYLES = {
|
|
40
|
-
marginLeft: Platform.select({ ios: -8, default: -3 }),
|
|
41
|
-
marginRight: Platform.select({ ios: 0, default: 30 }),
|
|
42
|
-
};
|
|
43
36
|
export const NewConversationStack = createNativeStackNavigator({
|
|
44
37
|
initialRouteName: 'ConversationNewEntry',
|
|
45
38
|
screenOptions: {
|
|
@@ -49,33 +42,38 @@ export const NewConversationStack = createNativeStackNavigator({
|
|
|
49
42
|
screens: {
|
|
50
43
|
ConversationNewEntry: {
|
|
51
44
|
screen: ConversationNewEntryScreen,
|
|
52
|
-
options: ({ navigation }) => ({
|
|
45
|
+
options: ({ navigation }) => composeOptions({
|
|
53
46
|
title: 'New conversation',
|
|
54
|
-
headerRight: (props) => (_jsx(HeaderTextButton, { ...props, onPress: navigation.goBack, title: "Cancel" })),
|
|
55
47
|
headerBackVisible: false,
|
|
56
|
-
}),
|
|
48
|
+
}, withRightText({ text: 'Cancel', onPress: navigation.goBack })),
|
|
57
49
|
},
|
|
58
50
|
ConversationSelectGroupRecipients: {
|
|
59
51
|
screen: ConversationSelectGroupRecipientsScreen,
|
|
60
|
-
options: ({ navigation, route }) => ({
|
|
52
|
+
options: ({ navigation, route }) => composeOptions({
|
|
61
53
|
title: 'New conversation',
|
|
62
|
-
|
|
63
|
-
|
|
54
|
+
}, withRightText({
|
|
55
|
+
text: 'Cancel',
|
|
56
|
+
onPress: () => navigation.popTo('Conversations', route.params),
|
|
57
|
+
})),
|
|
64
58
|
},
|
|
65
59
|
ConversationSelectTeamsILeadRecipients: {
|
|
66
60
|
screen: ConversationSelectTeamsILeadRecipientsScreen,
|
|
67
|
-
options: ({ navigation, route }) => ({
|
|
61
|
+
options: ({ navigation, route }) => composeOptions({
|
|
68
62
|
title: 'New conversation',
|
|
69
|
-
|
|
70
|
-
|
|
63
|
+
}, withRightText({
|
|
64
|
+
text: 'Cancel',
|
|
65
|
+
onPress: () => navigation.popTo('Conversations', route.params),
|
|
66
|
+
})),
|
|
71
67
|
},
|
|
72
68
|
ConversationSelectDirectMessageRecipients: {
|
|
73
69
|
screen: ConversationSelectDirectMessageRecipientsScreen,
|
|
74
70
|
if: useDirectMessagesEnabled,
|
|
75
|
-
options: ({ navigation, route }) => ({
|
|
71
|
+
options: ({ navigation, route }) => composeOptions({
|
|
76
72
|
title: 'New conversation',
|
|
77
|
-
|
|
78
|
-
|
|
73
|
+
}, withRightText({
|
|
74
|
+
text: 'Cancel',
|
|
75
|
+
onPress: () => navigation.popTo('Conversations', route.params),
|
|
76
|
+
})),
|
|
79
77
|
},
|
|
80
78
|
ConversationFilterRecipients: {
|
|
81
79
|
screen: ConversationFilterRecipientsScreen,
|
|
@@ -83,14 +81,16 @@ export const NewConversationStack = createNativeStackNavigator({
|
|
|
83
81
|
},
|
|
84
82
|
ConversationNew: {
|
|
85
83
|
screen: ConversationNewScreen,
|
|
86
|
-
options: ({ navigation, route }) => ({
|
|
84
|
+
options: ({ navigation, route }) => composeOptions({
|
|
87
85
|
title: 'New conversation',
|
|
88
86
|
headerLeft: () => null,
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
87
|
+
}, withRightText({
|
|
88
|
+
text: 'Cancel',
|
|
89
|
+
onPress: () => {
|
|
90
|
+
const { chat_group_graph_id, group_source_app_name } = route.params;
|
|
91
|
+
navigation.popTo('Conversations', { chat_group_graph_id, group_source_app_name });
|
|
92
|
+
},
|
|
93
|
+
})),
|
|
94
94
|
},
|
|
95
95
|
AvatarPicker: {
|
|
96
96
|
screen: AvatarPickerScreen,
|
|
@@ -106,11 +106,10 @@ export const ChatStack = createNativeStackNavigator({
|
|
|
106
106
|
screens: {
|
|
107
107
|
Conversations: {
|
|
108
108
|
screen: ConversationsScreen,
|
|
109
|
-
options: ({ route, navigation }) => ({
|
|
109
|
+
options: ({ route, navigation }) => composeOptions({
|
|
110
110
|
headerTitle: route.params?.title ?? 'Chat',
|
|
111
111
|
headerBackVisible: false,
|
|
112
|
-
|
|
113
|
-
}),
|
|
112
|
+
}, withRightClose({ onPress: navigation.goBack })),
|
|
114
113
|
},
|
|
115
114
|
ConversationFilters: {
|
|
116
115
|
screen: ConversationFiltersScreen,
|
|
@@ -118,13 +117,13 @@ export const ChatStack = createNativeStackNavigator({
|
|
|
118
117
|
},
|
|
119
118
|
Conversation: {
|
|
120
119
|
screen: ConversationScreen,
|
|
121
|
-
options: ({ route, navigation }) => ({
|
|
120
|
+
options: ({ route, navigation }) => composeOptions({
|
|
122
121
|
headerTitle: (props) => {
|
|
123
122
|
const { conversation_id, title, badge, deleted, muted } = route.params;
|
|
124
123
|
return (_jsx(ConversationScreenTitle, { conversation_id: conversation_id, badge: badge, deleted: deleted, muted: muted, ...props, children: title ?? 'Conversation' }));
|
|
125
124
|
},
|
|
126
|
-
|
|
127
|
-
|
|
125
|
+
headerLeft: createMinimalHeaderBackButton({
|
|
126
|
+
onPress: () => {
|
|
128
127
|
const params = route.params;
|
|
129
128
|
if (params?.chat_group_graph_id) {
|
|
130
129
|
// Ensure that conversations with a graph id pass them back to the conversation list
|
|
@@ -134,15 +133,13 @@ export const ChatStack = createNativeStackNavigator({
|
|
|
134
133
|
else {
|
|
135
134
|
navigation.goBack();
|
|
136
135
|
}
|
|
137
|
-
},
|
|
138
|
-
|
|
136
|
+
},
|
|
137
|
+
}),
|
|
138
|
+
}, withRightClose({ onPress: () => navigation.getParent()?.goBack() })),
|
|
139
139
|
},
|
|
140
140
|
ConversationReply: {
|
|
141
141
|
screen: ConversationScreen,
|
|
142
|
-
options: ({ route, navigation }) => ({
|
|
143
|
-
title: route.params?.title ?? 'Reply',
|
|
144
|
-
headerLeft: props => (_jsx(HeaderBackButton, { style: HEADER_BACK_BUTTON_LAYOUT_RESET_STYLES, displayMode: "minimal", onPress: () => navigation.goBack(), ...props })),
|
|
145
|
-
}),
|
|
142
|
+
options: ({ route, navigation }) => composeOptions({ title: route.params?.title ?? 'Reply' }, withMinimalBack({ onPress: navigation.goBack })),
|
|
146
143
|
},
|
|
147
144
|
TeamConversation: {
|
|
148
145
|
screen: TeamConversationScreen,
|
|
@@ -155,11 +152,10 @@ export const ChatStack = createNativeStackNavigator({
|
|
|
155
152
|
},
|
|
156
153
|
ConversationDetails: {
|
|
157
154
|
screen: ConversationDetailsScreen,
|
|
158
|
-
options: ({ navigation }) => ({
|
|
155
|
+
options: ({ navigation }) => composeOptions({
|
|
159
156
|
presentation: 'modal',
|
|
160
157
|
title: 'Conversation details',
|
|
161
|
-
|
|
162
|
-
}),
|
|
158
|
+
}, withRightText({ text: 'Done', onPress: navigation.goBack })),
|
|
163
159
|
},
|
|
164
160
|
AvatarPicker: {
|
|
165
161
|
screen: AvatarPickerScreen,
|
|
@@ -167,19 +163,17 @@ export const ChatStack = createNativeStackNavigator({
|
|
|
167
163
|
},
|
|
168
164
|
ChatSettings: {
|
|
169
165
|
screen: SettingsScreen,
|
|
170
|
-
options: ({ navigation }) => ({
|
|
166
|
+
options: ({ navigation }) => composeOptions({
|
|
171
167
|
title: 'Chat settings',
|
|
172
168
|
headerBackVisible: false,
|
|
173
|
-
|
|
174
|
-
}),
|
|
169
|
+
}, withRightText({ text: 'Done', onPress: navigation.goBack })),
|
|
175
170
|
},
|
|
176
171
|
NotificationSettings: {
|
|
177
172
|
screen: NotificationSettingsScreen,
|
|
178
|
-
options: ({ navigation }) => ({
|
|
173
|
+
options: ({ navigation }) => composeOptions({
|
|
179
174
|
title: 'Chat',
|
|
180
175
|
headerBackVisible: false,
|
|
181
|
-
|
|
182
|
-
}),
|
|
176
|
+
}, withRightText({ text: 'Done', onPress: navigation.goBack })),
|
|
183
177
|
},
|
|
184
178
|
PreferredAppSelection: {
|
|
185
179
|
screen: PreferredAppSelectionScreen,
|
|
@@ -189,10 +183,16 @@ export const ChatStack = createNativeStackNavigator({
|
|
|
189
183
|
},
|
|
190
184
|
GroupNotificationSettings: {
|
|
191
185
|
screen: GroupNotificationSettingsScreen,
|
|
192
|
-
options: ({ route, navigation }) =>
|
|
193
|
-
title
|
|
194
|
-
|
|
195
|
-
|
|
186
|
+
options: ({ route, navigation }) => {
|
|
187
|
+
const title = route.params?.title || 'Group Settings';
|
|
188
|
+
// Done only shows when this is the entry screen (e.g. deep links);
|
|
189
|
+
// deeper in the stack the back button covers dismissal.
|
|
190
|
+
return navigation.getState().index === 0
|
|
191
|
+
? composeOptions({
|
|
192
|
+
title,
|
|
193
|
+
}, withRightText({ text: 'Done', onPress: navigation.goBack }))
|
|
194
|
+
: { title };
|
|
195
|
+
},
|
|
196
196
|
},
|
|
197
197
|
GroupNotificationLevelSelect: {
|
|
198
198
|
screen: GroupNotificationLevelSelectScreen,
|
|
@@ -213,11 +213,10 @@ export const ChatStack = createNativeStackNavigator({
|
|
|
213
213
|
GroupConversationNew: {
|
|
214
214
|
screen: ConversationNewScreen,
|
|
215
215
|
if: useQualifiedByAge,
|
|
216
|
-
options: ({ navigation }) => ({
|
|
216
|
+
options: ({ navigation }) => composeOptions({
|
|
217
217
|
title: 'New conversation',
|
|
218
218
|
headerLeft: () => null,
|
|
219
|
-
|
|
220
|
-
}),
|
|
219
|
+
}, withRightText({ text: 'Cancel', onPress: () => navigation.getParent()?.goBack() })),
|
|
221
220
|
},
|
|
222
221
|
SendGiphy: {
|
|
223
222
|
screen: SendGiphyScreen,
|
|
@@ -258,12 +257,11 @@ export const ChatStack = createNativeStackNavigator({
|
|
|
258
257
|
},
|
|
259
258
|
GetHelp: {
|
|
260
259
|
screen: GetHelpScreen,
|
|
261
|
-
options: ({ navigation }) => ({
|
|
260
|
+
options: ({ navigation }) => composeOptions({
|
|
262
261
|
headerTitle: 'Get help',
|
|
263
262
|
headerBackVisible: false,
|
|
264
263
|
presentation: 'modal',
|
|
265
|
-
|
|
266
|
-
}),
|
|
264
|
+
}, withRightText({ text: 'Close', onPress: navigation.goBack })),
|
|
267
265
|
},
|
|
268
266
|
NotFound: {
|
|
269
267
|
screen: NotFound,
|