@planningcenter/chat-react-native 4.4.0-rc.7 → 4.4.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/jump_to_bottom_button.d.ts.map +1 -1
- package/build/components/conversation/jump_to_bottom_button.js +42 -40
- package/build/components/conversation/jump_to_bottom_button.js.map +1 -1
- package/build/components/conversation/message.d.ts +2 -1
- package/build/components/conversation/message.d.ts.map +1 -1
- package/build/components/conversation/message.js +3 -1
- package/build/components/conversation/message.js.map +1 -1
- package/build/components/conversation/message_form.d.ts.map +1 -1
- package/build/components/conversation/message_form.js +3 -1
- package/build/components/conversation/message_form.js.map +1 -1
- package/build/components/conversation/message_list.d.ts.map +1 -1
- package/build/components/conversation/message_list.js +35 -31
- package/build/components/conversation/message_list.js.map +1 -1
- package/build/components/conversation/message_reaction.d.ts +2 -1
- package/build/components/conversation/message_reaction.d.ts.map +1 -1
- package/build/components/conversation/message_reaction.js +67 -60
- package/build/components/conversation/message_reaction.js.map +1 -1
- package/build/components/conversation/messages_disabled_banners.d.ts +7 -5
- package/build/components/conversation/messages_disabled_banners.d.ts.map +1 -1
- package/build/components/conversation/messages_disabled_banners.js +15 -14
- package/build/components/conversation/messages_disabled_banners.js.map +1 -1
- package/build/components/conversation/system_message.d.ts +2 -1
- package/build/components/conversation/system_message.d.ts.map +1 -1
- package/build/components/conversation/system_message.js +133 -100
- package/build/components/conversation/system_message.js.map +1 -1
- package/build/components/conversations/archived_results_footer.d.ts +6 -0
- package/build/components/conversations/archived_results_footer.d.ts.map +1 -0
- package/build/components/conversations/archived_results_footer.js +51 -0
- package/build/components/conversations/archived_results_footer.js.map +1 -0
- package/build/components/conversations/conversation_actions.d.ts.map +1 -1
- package/build/components/conversations/conversation_actions.js +241 -206
- package/build/components/conversations/conversation_actions.js.map +1 -1
- package/build/components/conversations/conversation_preview.d.ts.map +1 -1
- package/build/components/conversations/conversation_preview.js +102 -93
- package/build/components/conversations/conversation_preview.js.map +1 -1
- package/build/components/conversations/conversations.d.ts.map +1 -1
- package/build/components/conversations/conversations.js +66 -41
- package/build/components/conversations/conversations.js.map +1 -1
- package/build/components/conversations/conversations_blank_state.d.ts.map +1 -1
- package/build/components/conversations/conversations_blank_state.js +55 -12
- package/build/components/conversations/conversations_blank_state.js.map +1 -1
- package/build/components/conversations/filtered_results_footer.d.ts +2 -0
- package/build/components/conversations/filtered_results_footer.d.ts.map +1 -0
- package/build/components/conversations/filtered_results_footer.js +77 -0
- package/build/components/conversations/filtered_results_footer.js.map +1 -0
- package/build/components/display/action_button.d.ts.map +1 -1
- package/build/components/display/action_button.js +18 -16
- package/build/components/display/action_button.js.map +1 -1
- package/build/components/display/filter_dropdown.d.ts +14 -0
- package/build/components/display/filter_dropdown.d.ts.map +1 -0
- package/build/components/display/filter_dropdown.js +193 -0
- package/build/components/display/filter_dropdown.js.map +1 -0
- package/build/components/display/icon_tile.d.ts +13 -0
- package/build/components/display/icon_tile.d.ts.map +1 -0
- package/build/components/display/icon_tile.js +149 -0
- package/build/components/display/icon_tile.js.map +1 -0
- package/build/components/display/index.d.ts +2 -0
- package/build/components/display/index.d.ts.map +1 -1
- package/build/components/display/index.js +2 -0
- package/build/components/display/index.js.map +1 -1
- package/build/contexts/api_provider.d.ts.map +1 -1
- package/build/contexts/api_provider.js +21 -9
- package/build/contexts/api_provider.js.map +1 -1
- package/build/contexts/conversations_context.d.ts.map +1 -1
- package/build/contexts/conversations_context.js +21 -18
- package/build/contexts/conversations_context.js.map +1 -1
- package/build/hooks/groups/use_group_members_for_new_conversation.d.ts +196 -16
- package/build/hooks/groups/use_group_members_for_new_conversation.d.ts.map +1 -1
- package/build/hooks/groups/use_group_members_for_new_conversation.js +72 -58
- package/build/hooks/groups/use_group_members_for_new_conversation.js.map +1 -1
- package/build/hooks/index.d.ts +3 -0
- package/build/hooks/index.d.ts.map +1 -1
- package/build/hooks/index.js +3 -0
- package/build/hooks/index.js.map +1 -1
- package/build/hooks/use_animated_message_background_color.d.ts.map +1 -1
- package/build/hooks/use_animated_message_background_color.js +5 -3
- package/build/hooks/use_animated_message_background_color.js.map +1 -1
- package/build/hooks/use_api.d.ts +3 -2
- package/build/hooks/use_api.d.ts.map +1 -1
- package/build/hooks/use_api.js.map +1 -1
- package/build/hooks/use_can_browse_archived_conversations.d.ts +2 -0
- package/build/hooks/use_can_browse_archived_conversations.d.ts.map +1 -0
- package/build/hooks/use_can_browse_archived_conversations.js +29 -0
- package/build/hooks/use_can_browse_archived_conversations.js.map +1 -0
- package/build/hooks/use_clear_conversation_filters.d.ts +2 -0
- package/build/hooks/use_clear_conversation_filters.d.ts.map +1 -0
- package/build/hooks/use_clear_conversation_filters.js +25 -0
- package/build/hooks/use_clear_conversation_filters.js.map +1 -0
- package/build/hooks/use_conversation.d.ts +73 -1
- package/build/hooks/use_conversation.d.ts.map +1 -1
- package/build/hooks/use_conversation.js +130 -3
- package/build/hooks/use_conversation.js.map +1 -1
- package/build/hooks/use_conversation_messages.d.ts.map +1 -1
- package/build/hooks/use_conversation_messages.js +29 -26
- package/build/hooks/use_conversation_messages.js.map +1 -1
- package/build/hooks/use_current_person.d.ts.map +1 -1
- package/build/hooks/use_current_person.js +1 -1
- package/build/hooks/use_current_person.js.map +1 -1
- package/build/hooks/use_jolt.d.ts +1 -0
- package/build/hooks/use_jolt.d.ts.map +1 -1
- package/build/hooks/use_jolt.js +59 -0
- package/build/hooks/use_jolt.js.map +1 -1
- package/build/hooks/use_manual_archiving_enabled.d.ts +2 -0
- package/build/hooks/use_manual_archiving_enabled.d.ts.map +1 -0
- package/build/hooks/use_manual_archiving_enabled.js +18 -0
- package/build/hooks/use_manual_archiving_enabled.js.map +1 -0
- package/build/hooks/use_mark_latest_message_read.d.ts.map +1 -1
- package/build/hooks/use_mark_latest_message_read.js +3 -3
- package/build/hooks/use_mark_latest_message_read.js.map +1 -1
- package/build/hooks/use_reduce_motion.d.ts +2 -0
- package/build/hooks/use_reduce_motion.d.ts.map +1 -0
- package/build/hooks/use_reduce_motion.js +28 -0
- package/build/hooks/use_reduce_motion.js.map +1 -0
- package/build/hooks/use_unarchive_conversation_action.d.ts +7 -0
- package/build/hooks/use_unarchive_conversation_action.d.ts.map +1 -0
- package/build/hooks/use_unarchive_conversation_action.js +52 -0
- package/build/hooks/use_unarchive_conversation_action.js.map +1 -0
- package/build/screens/attachment_actions/attachment_actions_screen.d.ts.map +1 -1
- package/build/screens/attachment_actions/attachment_actions_screen.js +84 -61
- package/build/screens/attachment_actions/attachment_actions_screen.js.map +1 -1
- package/build/screens/conversation_details_screen.d.ts.map +1 -1
- package/build/screens/conversation_details_screen.js +490 -395
- package/build/screens/conversation_details_screen.js.map +1 -1
- package/build/screens/conversation_filters/components/conversation_filters.d.ts.map +1 -1
- package/build/screens/conversation_filters/components/conversation_filters.js +88 -18
- package/build/screens/conversation_filters/components/conversation_filters.js.map +1 -1
- package/build/screens/conversation_filters/components/rows.d.ts +9 -0
- package/build/screens/conversation_filters/components/rows.d.ts.map +1 -1
- package/build/screens/conversation_filters/components/rows.js +93 -1
- package/build/screens/conversation_filters/components/rows.js.map +1 -1
- package/build/screens/conversation_filters/context/conversation_filter_context.d.ts.map +1 -1
- package/build/screens/conversation_filters/context/conversation_filter_context.js +8 -4
- package/build/screens/conversation_filters/context/conversation_filter_context.js.map +1 -1
- package/build/screens/conversation_filters/filter_types.d.ts +1 -0
- package/build/screens/conversation_filters/filter_types.d.ts.map +1 -1
- package/build/screens/conversation_filters/filter_types.js +1 -0
- package/build/screens/conversation_filters/filter_types.js.map +1 -1
- package/build/screens/conversation_filters/screen_props.d.ts +1 -0
- package/build/screens/conversation_filters/screen_props.d.ts.map +1 -1
- package/build/screens/conversation_filters/screen_props.js.map +1 -1
- package/build/screens/conversation_filters_screen.d.ts +1 -0
- package/build/screens/conversation_filters_screen.d.ts.map +1 -1
- package/build/screens/conversation_filters_screen.js +79 -48
- package/build/screens/conversation_filters_screen.js.map +1 -1
- package/build/screens/conversation_new/components/groups_form.d.ts.map +1 -1
- package/build/screens/conversation_new/components/groups_form.js +37 -34
- package/build/screens/conversation_new/components/groups_form.js.map +1 -1
- package/build/screens/conversation_screen.d.ts.map +1 -1
- package/build/screens/conversation_screen.js +13 -10
- package/build/screens/conversation_screen.js.map +1 -1
- package/build/screens/conversations/components/filter_dropdown_list_header_component.d.ts +2 -0
- package/build/screens/conversations/components/filter_dropdown_list_header_component.d.ts.map +1 -0
- package/build/screens/conversations/components/filter_dropdown_list_header_component.js +580 -0
- package/build/screens/conversations/components/filter_dropdown_list_header_component.js.map +1 -0
- package/build/screens/conversations/components/list_header_component.d.ts.map +1 -1
- package/build/screens/conversations/components/list_header_component.js +95 -90
- package/build/screens/conversations/components/list_header_component.js.map +1 -1
- package/build/screens/conversations/components/search_list_header_component.d.ts.map +1 -1
- package/build/screens/conversations/components/search_list_header_component.js +100 -95
- package/build/screens/conversations/components/search_list_header_component.js.map +1 -1
- package/build/screens/conversations/conversations_screen.d.ts +1 -0
- package/build/screens/conversations/conversations_screen.d.ts.map +1 -1
- package/build/screens/conversations/conversations_screen.js +15 -2
- package/build/screens/conversations/conversations_screen.js.map +1 -1
- package/build/screens/design_system_screen.d.ts.map +1 -1
- package/build/screens/design_system_screen.js +275 -215
- package/build/screens/design_system_screen.js.map +1 -1
- package/build/screens/message_actions_screen.d.ts.map +1 -1
- package/build/screens/message_actions_screen.js +112 -92
- package/build/screens/message_actions_screen.js.map +1 -1
- package/build/screens/search/search_screen.d.ts.map +1 -1
- package/build/screens/search/search_screen.js +10 -2
- package/build/screens/search/search_screen.js.map +1 -1
- package/build/screens/send_giphy_screen.d.ts +1 -0
- package/build/screens/send_giphy_screen.d.ts.map +1 -1
- package/build/screens/send_giphy_screen.js +108 -106
- package/build/screens/send_giphy_screen.js.map +1 -1
- package/build/screens/team_conversation_screen.js +1 -1
- package/build/screens/team_conversation_screen.js.map +1 -1
- package/build/types/jolt_events/message_events.d.ts +2 -0
- package/build/types/jolt_events/message_events.d.ts.map +1 -1
- package/build/types/jolt_events/message_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/types/resources/member_ability.d.ts +2 -0
- package/build/types/resources/member_ability.d.ts.map +1 -1
- package/build/types/resources/member_ability.js.map +1 -1
- package/build/types/resources/message.d.ts +2 -0
- package/build/types/resources/message.d.ts.map +1 -1
- package/build/types/resources/message.js.map +1 -1
- package/build/types/resources/person.d.ts +1 -0
- package/build/types/resources/person.d.ts.map +1 -1
- package/build/types/resources/person.js.map +1 -1
- package/build/utils/archived_conversation.d.ts +5 -0
- package/build/utils/archived_conversation.d.ts.map +1 -0
- package/build/utils/archived_conversation.js +5 -0
- package/build/utils/archived_conversation.js.map +1 -0
- package/build/utils/date.d.ts +1 -0
- package/build/utils/date.d.ts.map +1 -1
- package/build/utils/date.js +9 -0
- package/build/utils/date.js.map +1 -1
- package/build/utils/index.d.ts +1 -0
- package/build/utils/index.d.ts.map +1 -1
- package/build/utils/index.js +1 -0
- package/build/utils/index.js.map +1 -1
- package/build/utils/jolt/transform_message_event_data_to_message_resource.d.ts.map +1 -1
- package/build/utils/jolt/transform_message_event_data_to_message_resource.js +2 -1
- package/build/utils/jolt/transform_message_event_data_to_message_resource.js.map +1 -1
- package/build/utils/native_adapters/configuration.d.ts +3 -0
- package/build/utils/native_adapters/configuration.d.ts.map +1 -1
- package/build/utils/native_adapters/configuration.js +3 -0
- package/build/utils/native_adapters/configuration.js.map +1 -1
- package/build/utils/native_adapters/index.d.ts +1 -0
- package/build/utils/native_adapters/index.d.ts.map +1 -1
- package/build/utils/native_adapters/index.js +1 -0
- package/build/utils/native_adapters/index.js.map +1 -1
- package/build/utils/native_adapters/menu.d.ts +41 -0
- package/build/utils/native_adapters/menu.d.ts.map +1 -0
- package/build/utils/native_adapters/menu.js +56 -0
- package/build/utils/native_adapters/menu.js.map +1 -0
- package/build/utils/request/conversation.d.ts +2 -1
- package/build/utils/request/conversation.d.ts.map +1 -1
- package/build/utils/request/conversation.js +4 -1
- package/build/utils/request/conversation.js.map +1 -1
- package/build/utils/request/messages_data_options.d.ts.map +1 -1
- package/build/utils/request/messages_data_options.js +1 -1
- package/build/utils/request/messages_data_options.js.map +1 -1
- package/build/utils/system_messages.d.ts +7 -5
- package/build/utils/system_messages.d.ts.map +1 -1
- package/build/utils/system_messages.js +10 -2
- package/build/utils/system_messages.js.map +1 -1
- package/build/vendor/font_awesome_pro_solid_icons.d.ts +1 -0
- package/build/vendor/font_awesome_pro_solid_icons.d.ts.map +1 -1
- package/build/vendor/font_awesome_pro_solid_icons.js +5 -0
- package/build/vendor/font_awesome_pro_solid_icons.js.map +1 -1
- package/package.json +3 -3
- package/src/__tests__/hooks/use_can_browse_archived_conversations.test.tsx +98 -0
- package/src/__tests__/screens/conversation_filters/components/conversation_filters.test.tsx +132 -0
- package/src/__tests__/screens/conversation_filters_screen.test.tsx +76 -0
- package/src/__tests__/screens/conversation_new/components/services_form.test.tsx +1 -0
- package/src/__tests__/screens/message_actions_screen.test.tsx +65 -2
- package/src/__tests__/screens/send_giphy_screen.test.tsx +102 -0
- package/src/__tests__/utils/system_messages.ts +19 -32
- package/src/components/conversation/__tests__/message_list.test.tsx +68 -2
- package/src/components/conversation/__tests__/system_message.test.tsx +106 -0
- package/src/components/conversation/jump_to_bottom_button.tsx +4 -3
- package/src/components/conversation/message.tsx +3 -0
- package/src/components/conversation/message_form.tsx +3 -1
- package/src/components/conversation/message_list.tsx +9 -1
- package/src/components/conversation/message_reaction.tsx +7 -2
- package/src/components/conversation/messages_disabled_banners.tsx +17 -18
- package/src/components/conversation/system_message.tsx +44 -16
- package/src/components/conversations/__tests__/conversation_actions.test.tsx +67 -0
- package/src/components/conversations/__tests__/conversation_preview.test.tsx +105 -0
- package/src/components/conversations/__tests__/conversations.test.tsx +93 -0
- package/src/components/conversations/__tests__/conversations_blank_state.test.tsx +73 -0
- package/src/components/conversations/archived_results_footer.tsx +36 -0
- package/src/components/conversations/conversation_actions.tsx +27 -19
- package/src/components/conversations/conversation_preview.tsx +39 -10
- package/src/components/conversations/conversations.tsx +26 -3
- package/src/components/conversations/conversations_blank_state.tsx +21 -0
- package/src/components/conversations/filtered_results_footer.tsx +38 -0
- package/src/components/display/__tests__/filter_dropdown.test.tsx +114 -0
- package/src/components/display/__tests__/icon_tile.test.tsx +16 -0
- package/src/components/display/action_button.tsx +4 -3
- package/src/components/display/filter_dropdown.tsx +124 -0
- package/src/components/display/icon_tile.tsx +67 -0
- package/src/components/display/index.ts +2 -0
- package/src/contexts/api_provider.tsx +8 -0
- package/src/contexts/conversations_context.tsx +2 -1
- package/src/hooks/__tests__/use_conversation_archive.test.tsx +152 -0
- package/src/hooks/__tests__/use_conversation_jolt_events.test.tsx +74 -0
- package/src/hooks/__tests__/use_conversation_messages.test.tsx +10 -2
- package/src/hooks/__tests__/use_jolt.test.tsx +100 -1
- package/src/hooks/__tests__/use_mark_latest_message_read.test.tsx +21 -7
- package/src/hooks/__tests__/use_reduce_motion.test.tsx +61 -0
- package/src/hooks/__tests__/use_unarchive_conversation_action.test.tsx +67 -0
- package/src/hooks/groups/use_group_members_for_new_conversation.ts +21 -16
- package/src/hooks/index.ts +3 -0
- package/src/hooks/use_animated_message_background_color.ts +6 -3
- package/src/hooks/use_api.ts +9 -2
- package/src/hooks/use_can_browse_archived_conversations.ts +17 -0
- package/src/hooks/use_clear_conversation_filters.ts +16 -0
- package/src/hooks/use_conversation.ts +44 -3
- package/src/hooks/use_conversation_messages.ts +7 -5
- package/src/hooks/use_current_person.ts +1 -0
- package/src/hooks/use_jolt.ts +57 -1
- package/src/hooks/use_manual_archiving_enabled.ts +10 -0
- package/src/hooks/use_mark_latest_message_read.ts +4 -3
- package/src/hooks/use_reduce_motion.ts +19 -0
- package/src/hooks/use_unarchive_conversation_action.ts +24 -0
- package/src/screens/__tests__/conversation_details_screen.test.tsx +305 -0
- package/src/screens/attachment_actions/__tests__/attachment_actions_screen.test.tsx +72 -0
- package/src/screens/attachment_actions/attachment_actions_screen.tsx +3 -1
- package/src/screens/conversation_details_screen.tsx +80 -16
- package/src/screens/conversation_filters/__tests__/conversation_filters.test.tsx +101 -0
- package/src/screens/conversation_filters/components/conversation_filters.tsx +40 -7
- package/src/screens/conversation_filters/components/rows.tsx +29 -1
- package/src/screens/conversation_filters/context/conversation_filter_context.tsx +4 -0
- package/src/screens/conversation_filters/filter_types.ts +1 -0
- package/src/screens/conversation_filters/screen_props.ts +1 -0
- package/src/screens/conversation_filters_screen.tsx +25 -5
- package/src/screens/conversation_new/components/groups_form.tsx +1 -0
- package/src/screens/conversation_screen.tsx +4 -2
- package/src/screens/conversations/__tests__/conversations_screen.test.tsx +52 -0
- package/src/screens/conversations/components/__tests__/filter_dropdown_list_header_component.test.tsx +259 -0
- package/src/screens/conversations/components/__tests__/list_header_component.test.tsx +21 -4
- package/src/screens/conversations/components/filter_dropdown_list_header_component.tsx +286 -0
- package/src/screens/conversations/components/list_header_component.tsx +17 -12
- package/src/screens/conversations/components/search_list_header_component.tsx +17 -12
- package/src/screens/conversations/conversations_screen.tsx +15 -2
- package/src/screens/design_system_screen.tsx +26 -0
- package/src/screens/message_actions_screen.tsx +29 -20
- package/src/screens/search/__tests__/search_screen.test.tsx +13 -1
- package/src/screens/search/search_screen.tsx +8 -2
- package/src/screens/send_giphy_screen.tsx +6 -3
- package/src/screens/team_conversation_screen.tsx +1 -1
- package/src/types/jolt_events/message_events.ts +2 -0
- package/src/types/resources/conversation.ts +2 -2
- package/src/types/resources/member_ability.ts +2 -0
- package/src/types/resources/message.ts +3 -0
- package/src/types/resources/person.ts +1 -0
- package/src/utils/__tests__/conversation.test.ts +1 -0
- package/src/utils/__tests__/date.test.ts +23 -0
- package/src/utils/__tests__/group_messages.test.ts +1 -0
- package/src/utils/archived_conversation.ts +13 -0
- package/src/utils/date.ts +8 -0
- package/src/utils/index.ts +1 -0
- package/src/utils/jolt/__tests__/transform_message_event_data_to_message_resource.test.ts +35 -0
- package/src/utils/jolt/transform_message_event_data_to_message_resource.ts +1 -0
- package/src/utils/native_adapters/__tests__/menu.test.tsx +46 -0
- package/src/utils/native_adapters/configuration.ts +5 -0
- package/src/utils/native_adapters/index.ts +1 -0
- package/src/utils/native_adapters/menu.tsx +70 -0
- package/src/utils/request/conversation.ts +4 -0
- package/src/utils/request/messages_data_options.ts +1 -0
- package/src/utils/system_messages.ts +19 -10
- package/src/vendor/font_awesome_pro_solid_icons.ts +12 -0
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
import { c as _c } from "react/compiler-runtime";
|
|
2
|
-
import { useHeaderHeight } from '@react-navigation/elements';
|
|
2
|
+
import { HeaderBackButton, useHeaderHeight } from '@react-navigation/elements';
|
|
3
3
|
import * as ReactNavigationNative from '@react-navigation/native';
|
|
4
|
-
import { useRoute } from '@react-navigation/native';
|
|
4
|
+
import { useNavigation, useRoute } from '@react-navigation/native';
|
|
5
5
|
import { createNativeStackNavigator } from '@react-navigation/native-stack';
|
|
6
6
|
import React, { useCallback } from 'react';
|
|
7
7
|
import { Platform, StyleSheet, useWindowDimensions, View } from 'react-native';
|
|
8
8
|
import { useSafeAreaInsets } from 'react-native-safe-area-context';
|
|
9
9
|
import FormSheet, { getFormSheetScreenOptions } from '../components/primitive/form_sheet';
|
|
10
|
+
import { useTheme } from '../hooks';
|
|
11
|
+
import { useFilterDropdownEnabled } from '../hooks/use_filter_dropdown_enabled';
|
|
10
12
|
import { ConversationFilters } from './conversation_filters/components/conversation_filters';
|
|
11
13
|
import { FilterProvider, useFilterContext } from './conversation_filters/context/conversation_filter_context';
|
|
12
14
|
import { GroupFilters } from './conversation_filters/group_filters';
|
|
@@ -75,7 +77,7 @@ export const ConversationFiltersScreen = _props => {
|
|
|
75
77
|
let t0;
|
|
76
78
|
let t1;
|
|
77
79
|
if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
|
|
78
|
-
t0 = /*#__PURE__*/_jsx(
|
|
80
|
+
t0 = /*#__PURE__*/_jsx(ConversationFiltersHeader, {});
|
|
79
81
|
t1 = /*#__PURE__*/_jsx(Filters, {});
|
|
80
82
|
$[0] = t0;
|
|
81
83
|
$[1] = t1;
|
|
@@ -99,14 +101,19 @@ export const ConversationFiltersScreen = _props => {
|
|
|
99
101
|
}
|
|
100
102
|
return t2;
|
|
101
103
|
};
|
|
102
|
-
const
|
|
103
|
-
const $ = _c(
|
|
104
|
+
export const ConversationFiltersHeader = () => {
|
|
105
|
+
const $ = _c(24);
|
|
104
106
|
const {
|
|
105
107
|
resetFilter,
|
|
106
108
|
applyFilters,
|
|
107
109
|
setFormSheetHeaderHeight
|
|
108
110
|
} = useFilterContext();
|
|
111
|
+
const navigation = useNavigation();
|
|
109
112
|
const route = useRoute();
|
|
113
|
+
const filterDropdownEnabled = useFilterDropdownEnabled();
|
|
114
|
+
const {
|
|
115
|
+
colors
|
|
116
|
+
} = useTheme();
|
|
110
117
|
const styles = useStyles();
|
|
111
118
|
let t0;
|
|
112
119
|
if ($[0] !== setFormSheetHeaderHeight) {
|
|
@@ -120,73 +127,93 @@ const FormSheetHeaderWithContext = () => {
|
|
|
120
127
|
}
|
|
121
128
|
const handleFormSheetHeaderLayout = t0;
|
|
122
129
|
let t1;
|
|
123
|
-
if ($[2]
|
|
124
|
-
t1 = /*#__PURE__*/_jsx(
|
|
125
|
-
|
|
130
|
+
if ($[2] !== colors || $[3] !== navigation || $[4] !== styles.backButton) {
|
|
131
|
+
t1 = Platform.OS === "android" && /*#__PURE__*/_jsx(HeaderBackButton, {
|
|
132
|
+
displayMode: "minimal",
|
|
133
|
+
accessibilityLabel: "Back",
|
|
134
|
+
tintColor: colors.iconColorDefaultPrimary,
|
|
135
|
+
onPress: navigation.goBack,
|
|
136
|
+
style: styles.backButton
|
|
126
137
|
});
|
|
127
|
-
$[2] =
|
|
138
|
+
$[2] = colors;
|
|
139
|
+
$[3] = navigation;
|
|
140
|
+
$[4] = styles.backButton;
|
|
141
|
+
$[5] = t1;
|
|
128
142
|
} else {
|
|
129
|
-
t1 = $[
|
|
143
|
+
t1 = $[5];
|
|
130
144
|
}
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
145
|
+
const t2 = filterDropdownEnabled ? "More filters" : "Filters";
|
|
146
|
+
let t3;
|
|
147
|
+
if ($[6] !== t2) {
|
|
148
|
+
t3 = /*#__PURE__*/_jsx(FormSheet.HeaderTitle, {
|
|
149
|
+
children: t2
|
|
150
|
+
});
|
|
151
|
+
$[6] = t2;
|
|
152
|
+
$[7] = t3;
|
|
153
|
+
} else {
|
|
154
|
+
t3 = $[7];
|
|
155
|
+
}
|
|
156
|
+
let t4;
|
|
157
|
+
if ($[8] !== resetFilter) {
|
|
158
|
+
t4 = /*#__PURE__*/_jsx(FormSheet.HeaderTextButton, {
|
|
134
159
|
onPress: resetFilter,
|
|
135
160
|
children: "Reset"
|
|
136
161
|
});
|
|
137
|
-
$[
|
|
138
|
-
$[
|
|
162
|
+
$[8] = resetFilter;
|
|
163
|
+
$[9] = t4;
|
|
139
164
|
} else {
|
|
140
|
-
|
|
165
|
+
t4 = $[9];
|
|
141
166
|
}
|
|
142
|
-
let
|
|
143
|
-
if ($[
|
|
144
|
-
|
|
167
|
+
let t5;
|
|
168
|
+
if ($[10] !== applyFilters || $[11] !== route.params) {
|
|
169
|
+
t5 = /*#__PURE__*/_jsx(FormSheet.HeaderButton, {
|
|
145
170
|
title: "Apply",
|
|
146
171
|
onPress: () => applyFilters(route.params)
|
|
147
172
|
});
|
|
148
|
-
$[
|
|
149
|
-
$[
|
|
150
|
-
$[
|
|
173
|
+
$[10] = applyFilters;
|
|
174
|
+
$[11] = route.params;
|
|
175
|
+
$[12] = t5;
|
|
151
176
|
} else {
|
|
152
|
-
|
|
177
|
+
t5 = $[12];
|
|
153
178
|
}
|
|
154
|
-
let
|
|
155
|
-
if ($[
|
|
156
|
-
|
|
157
|
-
children: [
|
|
179
|
+
let t6;
|
|
180
|
+
if ($[13] !== t4 || $[14] !== t5) {
|
|
181
|
+
t6 = /*#__PURE__*/_jsxs(FormSheet.HeaderActions, {
|
|
182
|
+
children: [t4, t5]
|
|
158
183
|
});
|
|
159
|
-
$[
|
|
160
|
-
$[
|
|
161
|
-
$[
|
|
184
|
+
$[13] = t4;
|
|
185
|
+
$[14] = t5;
|
|
186
|
+
$[15] = t6;
|
|
162
187
|
} else {
|
|
163
|
-
|
|
188
|
+
t6 = $[15];
|
|
164
189
|
}
|
|
165
|
-
let
|
|
166
|
-
if ($[
|
|
167
|
-
|
|
190
|
+
let t7;
|
|
191
|
+
if ($[16] !== styles.header || $[17] !== t1 || $[18] !== t3 || $[19] !== t6) {
|
|
192
|
+
t7 = /*#__PURE__*/_jsxs(FormSheet.Header, {
|
|
168
193
|
style: styles.header,
|
|
169
|
-
children: [t1,
|
|
194
|
+
children: [t1, t3, t6]
|
|
170
195
|
});
|
|
171
|
-
$[
|
|
172
|
-
$[
|
|
173
|
-
$[
|
|
196
|
+
$[16] = styles.header;
|
|
197
|
+
$[17] = t1;
|
|
198
|
+
$[18] = t3;
|
|
199
|
+
$[19] = t6;
|
|
200
|
+
$[20] = t7;
|
|
174
201
|
} else {
|
|
175
|
-
|
|
202
|
+
t7 = $[20];
|
|
176
203
|
}
|
|
177
|
-
let
|
|
178
|
-
if ($[
|
|
179
|
-
|
|
204
|
+
let t8;
|
|
205
|
+
if ($[21] !== handleFormSheetHeaderLayout || $[22] !== t7) {
|
|
206
|
+
t8 = /*#__PURE__*/_jsx(View, {
|
|
180
207
|
onLayout: handleFormSheetHeaderLayout,
|
|
181
|
-
children:
|
|
208
|
+
children: t7
|
|
182
209
|
});
|
|
183
|
-
$[
|
|
184
|
-
$[
|
|
185
|
-
$[
|
|
210
|
+
$[21] = handleFormSheetHeaderLayout;
|
|
211
|
+
$[22] = t7;
|
|
212
|
+
$[23] = t8;
|
|
186
213
|
} else {
|
|
187
|
-
|
|
214
|
+
t8 = $[23];
|
|
188
215
|
}
|
|
189
|
-
return
|
|
216
|
+
return t8;
|
|
190
217
|
};
|
|
191
218
|
const useStyles = () => {
|
|
192
219
|
const $ = _c(4);
|
|
@@ -213,6 +240,10 @@ const useStyles = () => {
|
|
|
213
240
|
android: 20 + top
|
|
214
241
|
}),
|
|
215
242
|
borderBottomWidth: 0
|
|
243
|
+
},
|
|
244
|
+
backButton: {
|
|
245
|
+
marginLeft: -3,
|
|
246
|
+
marginRight: 8
|
|
216
247
|
}
|
|
217
248
|
});
|
|
218
249
|
$[0] = headerHeight;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversation_filters_screen.js","names":["useHeaderHeight","ReactNavigationNative","useRoute","createNativeStackNavigator","React","useCallback","Platform","StyleSheet","useWindowDimensions","View","useSafeAreaInsets","FormSheet","getFormSheetScreenOptions","ConversationFilters","FilterProvider","useFilterContext","GroupFilters","TeamFilters","jsx","_jsx","jsxs","_jsxs","ConversationFiltersScreenOptions","presentation","select","android","ios","sheetAllowedDetents","default","headerTitle","FilterNavigator","initialRouteName","screens","Filters","screen","options","headerShown","headerBackTitle","createStaticNavigationComponent","tree","name","getComponent","createComponentForStaticNavigation","ConversationFiltersScreen","_props","$","_c","styles","useStyles","t0","t1","Symbol","for","FormSheetHeaderWithContext","t2","contentContainer","children","Root","contentStyle","showAndroidSheetGrabber","resetFilter","applyFilters","setFormSheetHeaderHeight","route","event","nativeEvent","layout","height","handleFormSheetHeaderLayout","HeaderTitle","HeaderTextButton","t3","params","HeaderButton","title","onPress","t4","HeaderActions","t5","header","Header","style","t6","top","headerHeight","containerHeight","create","paddingTop","borderBottomWidth"],"sources":["../../src/screens/conversation_filters_screen.tsx"],"sourcesContent":["import { useHeaderHeight } from '@react-navigation/elements'\nimport * as ReactNavigationNative from '@react-navigation/native'\nimport { RouteProp, useRoute } from '@react-navigation/native'\nimport { createNativeStackNavigator } from '@react-navigation/native-stack'\nimport React, { useCallback } from 'react'\nimport { LayoutChangeEvent, Platform, StyleSheet, useWindowDimensions, View } from 'react-native'\nimport { useSafeAreaInsets } from 'react-native-safe-area-context'\nimport FormSheet, { getFormSheetScreenOptions } from '../components/primitive/form_sheet'\nimport { ConversationFilters } from './conversation_filters/components/conversation_filters'\nimport {\n FilterProvider,\n useFilterContext,\n} from './conversation_filters/context/conversation_filter_context'\nimport { GroupFilters } from './conversation_filters/group_filters'\nimport {\n ConversationFiltersScreenProps,\n ConversationFilterStackParamList,\n} from './conversation_filters/screen_props'\nimport { TeamFilters } from './conversation_filters/team_filters'\n\nexport const ConversationFiltersScreenOptions = getFormSheetScreenOptions({\n presentation: Platform.select({ android: 'modal', ios: 'formSheet' }),\n sheetAllowedDetents: Platform.select({\n ios: [0.75, 1],\n default: [1],\n }),\n headerTitle: 'Filters',\n})\n\nconst FilterNavigator = createNativeStackNavigator<ConversationFilterStackParamList>({\n initialRouteName: 'Filters',\n screens: {\n Filters: {\n screen: ConversationFilters,\n options: {\n headerShown: false,\n },\n },\n GroupFilters: {\n screen: GroupFilters,\n options: {\n headerTitle: Platform.select({\n android: 'Groups',\n ios: '',\n }),\n headerBackTitle: 'Groups',\n },\n },\n TeamFilters: {\n screen: TeamFilters,\n options: {\n headerTitle: Platform.select({\n android: 'Teams',\n ios: '',\n }),\n headerBackTitle: 'Teams',\n },\n },\n },\n})\n\n// tree.getComponent() doesn't exist on every host's installed\n// react-navigation/core — hosts on an older version would throw here.\n// Where it does exist, it's the real implementation (the \"deprecated\"\n// createComponentForStaticNavigation is just a console.warn wrapper around\n// the same call on current versions), so prefer it and only reach for the\n// old function on cores where getComponent() genuinely isn't there yet.\nfunction createStaticNavigationComponent<P extends object>(\n tree: { getComponent?: () => React.ComponentType<P> },\n name: string\n): React.ComponentType<P> {\n if (typeof tree.getComponent === 'function') return tree.getComponent()\n\n const { createComponentForStaticNavigation } = ReactNavigationNative as {\n createComponentForStaticNavigation: (tree: unknown, name: string) => React.ComponentType<P>\n }\n\n return createComponentForStaticNavigation(tree, name)\n}\n\nconst Filters = createStaticNavigationComponent(FilterNavigator, 'Filters')\n\nexport const ConversationFiltersScreen = (_props: ConversationFiltersScreenProps) => {\n const styles = useStyles()\n\n return (\n <FilterProvider>\n <FormSheet.Root contentStyle={styles.contentContainer} showAndroidSheetGrabber={false}>\n <FormSheetHeaderWithContext />\n <Filters />\n </FormSheet.Root>\n </FilterProvider>\n )\n}\n\nconst FormSheetHeaderWithContext = () => {\n const { resetFilter, applyFilters, setFormSheetHeaderHeight } = useFilterContext()\n const route = useRoute<RouteProp<ConversationFiltersScreenProps['route']>>()\n const styles = useStyles()\n\n const handleFormSheetHeaderLayout = useCallback(\n (event: LayoutChangeEvent) => {\n setFormSheetHeaderHeight(event.nativeEvent.layout.height)\n },\n [setFormSheetHeaderHeight]\n )\n\n return (\n <View onLayout={handleFormSheetHeaderLayout}>\n <FormSheet.Header style={styles.header}>\n <FormSheet.HeaderTitle>Filters</FormSheet.HeaderTitle>\n <FormSheet.HeaderActions>\n <FormSheet.HeaderTextButton onPress={resetFilter}>Reset</FormSheet.HeaderTextButton>\n <FormSheet.HeaderButton title=\"Apply\" onPress={() => applyFilters(route.params)} />\n </FormSheet.HeaderActions>\n </FormSheet.Header>\n </View>\n )\n}\n\nconst useStyles = () => {\n const { top } = useSafeAreaInsets()\n const { height } = useWindowDimensions()\n const headerHeight = useHeaderHeight()\n\n const containerHeight = Platform.select({\n android: height,\n ios: height - top - headerHeight,\n })\n\n return StyleSheet.create({\n contentContainer: {\n height: containerHeight,\n },\n header: {\n paddingTop: Platform.select({\n ios: 20,\n android: 20 + top,\n }),\n // The filter list scrolls under it, so the sheet header doesn't need a\n // separator the way the non-scrolling reaction sheet does.\n borderBottomWidth: 0,\n },\n })\n}\n"],"mappings":";AAAA,SAASA,eAAe,QAAQ,4BAA4B;AAC5D,OAAO,KAAKC,qBAAqB,MAAM,0BAA0B;AACjE,SAAoBC,QAAQ,QAAQ,0BAA0B;AAC9D,SAASC,0BAA0B,QAAQ,gCAAgC;AAC3E,OAAOC,KAAK,IAAIC,WAAW,QAAQ,OAAO;AAC1C,SAA4BC,QAAQ,EAAEC,UAAU,EAAEC,mBAAmB,EAAEC,IAAI,QAAQ,cAAc;AACjG,SAASC,iBAAiB,QAAQ,gCAAgC;AAClE,OAAOC,SAAS,IAAIC,yBAAyB,QAAQ,oCAAoC;AACzF,SAASC,mBAAmB,QAAQ,wDAAwD;AAC5F,SACEC,cAAc,EACdC,gBAAgB,QACX,4DAA4D;AACnE,SAASC,YAAY,QAAQ,sCAAsC;AAKnE,SAASC,WAAW,QAAQ,qCAAqC;AAAA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAEjE,OAAO,MAAMC,gCAAgC,GAAGV,yBAAyB,CAAC;EACxEW,YAAY,EAAEjB,QAAQ,CAACkB,MAAM,CAAC;IAAEC,OAAO,EAAE,OAAO;IAAEC,GAAG,EAAE;EAAY,CAAC,CAAC;EACrEC,mBAAmB,EAAErB,QAAQ,CAACkB,MAAM,CAAC;IACnCE,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;IACdE,OAAO,EAAE,CAAC,CAAC;EACb,CAAC,CAAC;EACFC,WAAW,EAAE;AACf,CAAC,CAAC;AAEF,MAAMC,eAAe,GAAG3B,0BAA0B,CAAmC;EACnF4B,gBAAgB,EAAE,SAAS;EAC3BC,OAAO,EAAE;IACPC,OAAO,EAAE;MACPC,MAAM,EAAErB,mBAAmB;MAC3BsB,OAAO,EAAE;QACPC,WAAW,EAAE;MACf;IACF,CAAC;IACDpB,YAAY,EAAE;MACZkB,MAAM,EAAElB,YAAY;MACpBmB,OAAO,EAAE;QACPN,WAAW,EAAEvB,QAAQ,CAACkB,MAAM,CAAC;UAC3BC,OAAO,EAAE,QAAQ;UACjBC,GAAG,EAAE;QACP,CAAC,CAAC;QACFW,eAAe,EAAE;MACnB;IACF,CAAC;IACDpB,WAAW,EAAE;MACXiB,MAAM,EAAEjB,WAAW;MACnBkB,OAAO,EAAE;QACPN,WAAW,EAAEvB,QAAQ,CAACkB,MAAM,CAAC;UAC3BC,OAAO,EAAE,OAAO;UAChBC,GAAG,EAAE;QACP,CAAC,CAAC;QACFW,eAAe,EAAE;MACnB;IACF;EACF;AACF,CAAC,CAAC;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,+BAA+BA,CACtCC,IAAqD,EACrDC,IAAY,EACY;EACxB,IAAI,OAAOD,IAAI,CAACE,YAAY,KAAK,UAAU,EAAE,OAAOF,IAAI,CAACE,YAAY,CAAC,CAAC;EAEvE,MAAM;IAAEC;EAAmC,CAAC,GAAGzC,qBAE9C;EAED,OAAOyC,kCAAkC,CAACH,IAAI,EAAEC,IAAI,CAAC;AACvD;AAEA,MAAMP,OAAO,GAAGK,+BAA+B,CAACR,eAAe,EAAE,SAAS,CAAC;AAE3E,OAAO,MAAMa,yBAAyB,GAAGC,MAAA;EAAA,MAAAC,CAAA,GAAAC,EAAA;EACvC,MAAAC,MAAA,GAAeC,SAAS,CAAC,CAAC;EAAA,IAAAC,EAAA;EAAA,IAAAC,EAAA;EAAA,IAAAL,CAAA,QAAAM,MAAA,CAAAC,GAAA;IAKpBH,EAAA,gBAAA9B,IAAA,CAACkC,0BAA0B,IAAE,CAAC;IAC9BH,EAAA,gBAAA/B,IAAA,CAACc,OAAO,IAAE,CAAC;IAAAY,CAAA,MAAAI,EAAA;IAAAJ,CAAA,MAAAK,EAAA;EAAA;IAAAD,EAAA,GAAAJ,CAAA;IAAAK,EAAA,GAAAL,CAAA;EAAA;EAAA,IAAAS,EAAA;EAAA,IAAAT,CAAA,QAAAE,MAAA,CAAAQ,gBAAA;IAHfD,EAAA,gBAAAnC,IAAA,CAACL,cAAc;MAAA0C,QAAA,eACbnC,KAAA,CAAAV,SAAA,CAAA8C,IAAA;QAA8BC,YAAuB,EAAvBX,MAAM,CAAAQ,gBAAiB;QAA2BI,uBAAK,EAAL,KAAK;QAAAH,QAAA,GACnFP,EAA8B,EAC9BC,EAAW;MAAA,CACG;IAAC,CACH,CAAC;IAAAL,CAAA,MAAAE,MAAA,CAAAQ,gBAAA;IAAAV,CAAA,MAAAS,EAAA;EAAA;IAAAA,EAAA,GAAAT,CAAA;EAAA;EAAA,OALjBS,EAKiB;AAAA,CAEpB;AAED,MAAMD,0BAA0B,GAAGA,CAAA;EAAA,MAAAR,CAAA,GAAAC,EAAA;EACjC;IAAAc,WAAA;IAAAC,YAAA;IAAAC;EAAA,IAAgE/C,gBAAgB,CAAC,CAAC;EAClF,MAAAgD,KAAA,GAAc7D,QAAQ,CAAqD,CAAC;EAC5E,MAAA6C,MAAA,GAAeC,SAAS,CAAC,CAAC;EAAA,IAAAC,EAAA;EAAA,IAAAJ,CAAA,QAAAiB,wBAAA;IAGxBb,EAAA,GAAAe,KAAA;MACEF,wBAAwB,CAACE,KAAK,CAAAC,WAAY,CAAAC,MAAO,CAAAC,MAAO,CAAC;IAAA,CAC1D;IAAAtB,CAAA,MAAAiB,wBAAA;IAAAjB,CAAA,MAAAI,EAAA;EAAA;IAAAA,EAAA,GAAAJ,CAAA;EAAA;EAHH,MAAAuB,2BAAA,GAAoCnB,EAKnC;EAAA,IAAAC,EAAA;EAAA,IAAAL,CAAA,QAAAM,MAAA,CAAAC,GAAA;IAKKF,EAAA,gBAAA/B,IAAA,CAAAR,SAAA,CAAA0D,WAAA;MAAAb,QAAA,EAAuB;IAAO,CAAuB,CAAC;IAAAX,CAAA,MAAAK,EAAA;EAAA;IAAAA,EAAA,GAAAL,CAAA;EAAA;EAAA,IAAAS,EAAA;EAAA,IAAAT,CAAA,QAAAe,WAAA;IAEpDN,EAAA,gBAAAnC,IAAA,CAAAR,SAAA,CAAA2D,gBAAA;MAAqCV,OAAW,EAAXA,WAAW;MAAAJ,QAAA,EAAE;IAAK,CAA4B,CAAC;IAAAX,CAAA,MAAAe,WAAA;IAAAf,CAAA,MAAAS,EAAA;EAAA;IAAAA,EAAA,GAAAT,CAAA;EAAA;EAAA,IAAA0B,EAAA;EAAA,IAAA1B,CAAA,QAAAgB,YAAA,IAAAhB,CAAA,QAAAkB,KAAA,CAAAS,MAAA;IACpFD,EAAA,gBAAApD,IAAA,CAAAR,SAAA,CAAA8D,YAAA;MAA8BC,KAAO,EAAP,OAAO;MAAUC,OAAgC,EAAhCA,CAAA,KAAMd,YAAY,CAACE,KAAK,CAAAS,MAAO;IAAC,CAAG,CAAC;IAAA3B,CAAA,MAAAgB,YAAA;IAAAhB,CAAA,MAAAkB,KAAA,CAAAS,MAAA;IAAA3B,CAAA,MAAA0B,EAAA;EAAA;IAAAA,EAAA,GAAA1B,CAAA;EAAA;EAAA,IAAA+B,EAAA;EAAA,IAAA/B,CAAA,QAAAS,EAAA,IAAAT,CAAA,QAAA0B,EAAA;IAFrFK,EAAA,gBAAAvD,KAAA,CAAAV,SAAA,CAAAkE,aAAA;MAAArB,QAAA,GACEF,EAAoF,EACpFiB,EAAmF;IAAA,CAC5D,CAAC;IAAA1B,CAAA,MAAAS,EAAA;IAAAT,CAAA,MAAA0B,EAAA;IAAA1B,CAAA,OAAA+B,EAAA;EAAA;IAAAA,EAAA,GAAA/B,CAAA;EAAA;EAAA,IAAAiC,EAAA;EAAA,IAAAjC,CAAA,SAAAE,MAAA,CAAAgC,MAAA,IAAAlC,CAAA,SAAA+B,EAAA;IAL5BE,EAAA,gBAAAzD,KAAA,CAAAV,SAAA,CAAAqE,MAAA;MAAyBC,KAAa,EAAblC,MAAM,CAAAgC,MAAO;MAAAvB,QAAA,GACpCN,EAAsD,EACtD0B,EAG0B;IAAA,CACV,CAAC;IAAA/B,CAAA,OAAAE,MAAA,CAAAgC,MAAA;IAAAlC,CAAA,OAAA+B,EAAA;IAAA/B,CAAA,OAAAiC,EAAA;EAAA;IAAAA,EAAA,GAAAjC,CAAA;EAAA;EAAA,IAAAqC,EAAA;EAAA,IAAArC,CAAA,SAAAuB,2BAAA,IAAAvB,CAAA,SAAAiC,EAAA;IAPrBI,EAAA,gBAAA/D,IAAA,CAACV,IAAI;MAAW2D,QAA2B,EAA3BA,2BAA2B;MAAAZ,QAAA,EACzCsB;IAMmB,CACf,CAAC;IAAAjC,CAAA,OAAAuB,2BAAA;IAAAvB,CAAA,OAAAiC,EAAA;IAAAjC,CAAA,OAAAqC,EAAA;EAAA;IAAAA,EAAA,GAAArC,CAAA;EAAA;EAAA,OARPqC,EAQO;AAAA,CAEV;AAED,MAAMlC,SAAS,GAAGA,CAAA;EAAA,MAAAH,CAAA,GAAAC,EAAA;EAChB;IAAAqC;EAAA,IAAgBzE,iBAAiB,CAAC,CAAC;EACnC;IAAAyD;EAAA,IAAmB3D,mBAAmB,CAAC,CAAC;EACxC,MAAA4E,YAAA,GAAqBpF,eAAe,CAAC,CAAC;EAAA,IAAAiD,EAAA;EAAA,IAAAJ,CAAA,QAAAuC,YAAA,IAAAvC,CAAA,QAAAsB,MAAA,IAAAtB,CAAA,QAAAsC,GAAA;IAEtC,MAAAE,eAAA,GAAwB/E,QAAQ,CAAAkB,MAAO,CAAC;MAAAC,OAAA,EAC7B0C,MAAM;MAAAzC,GAAA,EACVyC,MAAM,GAAGgB,GAAG,GAAGC;IACtB,CAAC,CAAC;IAEKnC,EAAA,GAAA1C,UAAU,CAAA+E,MAAO,CAAC;MAAA/B,gBAAA,EACL;QAAAY,MAAA,EACRkB;MACV,CAAC;MAAAN,MAAA,EACO;QAAAQ,UAAA,EACMjF,QAAQ,CAAAkB,MAAO,CAAC;UAAAE,GAAA,EACrB,EAAE;UAAAD,OAAA,EACE,EAAE,GAAG0D;QAChB,CAAC,CAAC;QAAAK,iBAAA,EAGiB;MACrB;IACF,CAAC,CAAC;IAAA3C,CAAA,MAAAuC,YAAA;IAAAvC,CAAA,MAAAsB,MAAA;IAAAtB,CAAA,MAAAsC,GAAA;IAAAtC,CAAA,MAAAI,EAAA;EAAA;IAAAA,EAAA,GAAAJ,CAAA;EAAA;EAAA,OAbKI,EAaL;AAAA,CACH","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"conversation_filters_screen.js","names":["HeaderBackButton","useHeaderHeight","ReactNavigationNative","useNavigation","useRoute","createNativeStackNavigator","React","useCallback","Platform","StyleSheet","useWindowDimensions","View","useSafeAreaInsets","FormSheet","getFormSheetScreenOptions","useTheme","useFilterDropdownEnabled","ConversationFilters","FilterProvider","useFilterContext","GroupFilters","TeamFilters","jsx","_jsx","jsxs","_jsxs","ConversationFiltersScreenOptions","presentation","select","android","ios","sheetAllowedDetents","default","headerTitle","FilterNavigator","initialRouteName","screens","Filters","screen","options","headerShown","headerBackTitle","createStaticNavigationComponent","tree","name","getComponent","createComponentForStaticNavigation","ConversationFiltersScreen","_props","$","_c","styles","useStyles","t0","t1","Symbol","for","ConversationFiltersHeader","t2","contentContainer","children","Root","contentStyle","showAndroidSheetGrabber","resetFilter","applyFilters","setFormSheetHeaderHeight","navigation","route","filterDropdownEnabled","colors","event","nativeEvent","layout","height","handleFormSheetHeaderLayout","backButton","OS","displayMode","accessibilityLabel","tintColor","iconColorDefaultPrimary","onPress","goBack","style","t3","HeaderTitle","t4","HeaderTextButton","t5","params","HeaderButton","title","t6","HeaderActions","t7","header","Header","t8","top","headerHeight","containerHeight","create","paddingTop","borderBottomWidth","marginLeft","marginRight"],"sources":["../../src/screens/conversation_filters_screen.tsx"],"sourcesContent":["import { HeaderBackButton, useHeaderHeight } from '@react-navigation/elements'\nimport * as ReactNavigationNative from '@react-navigation/native'\nimport { RouteProp, useNavigation, useRoute } from '@react-navigation/native'\nimport { createNativeStackNavigator } from '@react-navigation/native-stack'\nimport React, { useCallback } from 'react'\nimport { LayoutChangeEvent, Platform, StyleSheet, useWindowDimensions, View } from 'react-native'\nimport { useSafeAreaInsets } from 'react-native-safe-area-context'\nimport FormSheet, { getFormSheetScreenOptions } from '../components/primitive/form_sheet'\nimport { useTheme } from '../hooks'\nimport { useFilterDropdownEnabled } from '../hooks/use_filter_dropdown_enabled'\nimport { ConversationFilters } from './conversation_filters/components/conversation_filters'\nimport {\n FilterProvider,\n useFilterContext,\n} from './conversation_filters/context/conversation_filter_context'\nimport { GroupFilters } from './conversation_filters/group_filters'\nimport {\n ConversationFiltersScreenProps,\n ConversationFilterStackParamList,\n} from './conversation_filters/screen_props'\nimport { TeamFilters } from './conversation_filters/team_filters'\n\nexport const ConversationFiltersScreenOptions = getFormSheetScreenOptions({\n presentation: Platform.select({ android: 'modal', ios: 'formSheet' }),\n sheetAllowedDetents: Platform.select({\n ios: [0.75, 1],\n default: [1],\n }),\n headerTitle: 'Filters',\n})\n\nconst FilterNavigator = createNativeStackNavigator<ConversationFilterStackParamList>({\n initialRouteName: 'Filters',\n screens: {\n Filters: {\n screen: ConversationFilters,\n options: {\n headerShown: false,\n },\n },\n GroupFilters: {\n screen: GroupFilters,\n options: {\n headerTitle: Platform.select({\n android: 'Groups',\n ios: '',\n }),\n headerBackTitle: 'Groups',\n },\n },\n TeamFilters: {\n screen: TeamFilters,\n options: {\n headerTitle: Platform.select({\n android: 'Teams',\n ios: '',\n }),\n headerBackTitle: 'Teams',\n },\n },\n },\n})\n\n// tree.getComponent() doesn't exist on every host's installed\n// react-navigation/core — hosts on an older version would throw here.\n// Where it does exist, it's the real implementation (the \"deprecated\"\n// createComponentForStaticNavigation is just a console.warn wrapper around\n// the same call on current versions), so prefer it and only reach for the\n// old function on cores where getComponent() genuinely isn't there yet.\nfunction createStaticNavigationComponent<P extends object>(\n tree: { getComponent?: () => React.ComponentType<P> },\n name: string\n): React.ComponentType<P> {\n if (typeof tree.getComponent === 'function') return tree.getComponent()\n\n const { createComponentForStaticNavigation } = ReactNavigationNative as {\n createComponentForStaticNavigation: (tree: unknown, name: string) => React.ComponentType<P>\n }\n\n return createComponentForStaticNavigation(tree, name)\n}\n\nconst Filters = createStaticNavigationComponent(FilterNavigator, 'Filters')\n\nexport const ConversationFiltersScreen = (_props: ConversationFiltersScreenProps) => {\n const styles = useStyles()\n\n return (\n <FilterProvider>\n <FormSheet.Root contentStyle={styles.contentContainer} showAndroidSheetGrabber={false}>\n <ConversationFiltersHeader />\n <Filters />\n </FormSheet.Root>\n </FilterProvider>\n )\n}\n\nexport const ConversationFiltersHeader = () => {\n const { resetFilter, applyFilters, setFormSheetHeaderHeight } = useFilterContext()\n const navigation = useNavigation()\n const route = useRoute<RouteProp<ConversationFiltersScreenProps['route']>>()\n const filterDropdownEnabled = useFilterDropdownEnabled()\n const { colors } = useTheme()\n const styles = useStyles()\n\n const handleFormSheetHeaderLayout = useCallback(\n (event: LayoutChangeEvent) => {\n setFormSheetHeaderHeight(event.nativeEvent.layout.height)\n },\n [setFormSheetHeaderHeight]\n )\n\n return (\n <View onLayout={handleFormSheetHeaderLayout}>\n <FormSheet.Header style={styles.header}>\n {Platform.OS === 'android' && (\n <HeaderBackButton\n displayMode=\"minimal\"\n accessibilityLabel=\"Back\"\n tintColor={colors.iconColorDefaultPrimary}\n onPress={navigation.goBack}\n style={styles.backButton}\n />\n )}\n <FormSheet.HeaderTitle>\n {filterDropdownEnabled ? 'More filters' : 'Filters'}\n </FormSheet.HeaderTitle>\n <FormSheet.HeaderActions>\n <FormSheet.HeaderTextButton onPress={resetFilter}>Reset</FormSheet.HeaderTextButton>\n <FormSheet.HeaderButton title=\"Apply\" onPress={() => applyFilters(route.params)} />\n </FormSheet.HeaderActions>\n </FormSheet.Header>\n </View>\n )\n}\n\nconst useStyles = () => {\n const { top } = useSafeAreaInsets()\n const { height } = useWindowDimensions()\n const headerHeight = useHeaderHeight()\n\n const containerHeight = Platform.select({\n android: height,\n ios: height - top - headerHeight,\n })\n\n return StyleSheet.create({\n contentContainer: {\n height: containerHeight,\n },\n header: {\n paddingTop: Platform.select({\n ios: 20,\n android: 20 + top,\n }),\n // The filter list scrolls under it, so the sheet header doesn't need a\n // separator the way the non-scrolling reaction sheet does.\n borderBottomWidth: 0,\n },\n backButton: {\n marginLeft: -3,\n marginRight: 8,\n },\n })\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"groups_form.d.ts","sourceRoot":"","sources":["../../../../src/screens/conversation_new/components/groups_form.tsx"],"names":[],"mappings":"AAcA,OAAO,EACL,KAAK,mBAAmB,EAEzB,MAAM,+CAA+C,CAAA;AAMtD,OAAO,EAAE,OAAO,EAAE,MAAM,yCAAyC,CAAA;AAQjE,KAAK,eAAe,GAAG;IACrB,OAAO,EAAE,MAAM,CAAA;IACf,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,eAAe,CAAC,EAAE,mBAAmB,CAAA;CACtC,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,mDAAmD,eAAe,
|
|
1
|
+
{"version":3,"file":"groups_form.d.ts","sourceRoot":"","sources":["../../../../src/screens/conversation_new/components/groups_form.tsx"],"names":[],"mappings":"AAcA,OAAO,EACL,KAAK,mBAAmB,EAEzB,MAAM,+CAA+C,CAAA;AAMtD,OAAO,EAAE,OAAO,EAAE,MAAM,yCAAyC,CAAA;AAQjE,KAAK,eAAe,GAAG;IACrB,OAAO,EAAE,MAAM,CAAA;IACf,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,eAAe,CAAC,EAAE,mBAAmB,CAAA;CACtC,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,mDAAmD,eAAe,4CAqH5F,CAAA"}
|
|
@@ -23,7 +23,7 @@ import { Divider, FormList } from './form_list';
|
|
|
23
23
|
import { GenderFilterToggle } from './gender_filter_toggle';
|
|
24
24
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
25
25
|
export const GroupsForm = t0 => {
|
|
26
|
-
const $ = _c(
|
|
26
|
+
const $ = _c(59);
|
|
27
27
|
const {
|
|
28
28
|
groupId,
|
|
29
29
|
chat_group_graph_id,
|
|
@@ -205,9 +205,10 @@ export const GroupsForm = t0 => {
|
|
|
205
205
|
mutate: handleSave,
|
|
206
206
|
isPending
|
|
207
207
|
} = useGroupsConversationCreate(t11);
|
|
208
|
-
|
|
208
|
+
const t12 = groupMemberships.isLoading ? "Loading members..." : undefined;
|
|
209
|
+
let t13;
|
|
209
210
|
if ($[33] !== avatarSelection || $[34] !== customAvatarsEnabled || $[35] !== genderFetching || $[36] !== genderFilterAvailable || $[37] !== genderFilterEnabled || $[38] !== genderValue || $[39] !== group || $[40] !== groupMemberships || $[41] !== handleGenderToggle || $[42] !== title) {
|
|
210
|
-
|
|
211
|
+
t13 = /*#__PURE__*/_jsx(FormContent, {
|
|
211
212
|
group: group,
|
|
212
213
|
title: title,
|
|
213
214
|
setTitle: setTitle,
|
|
@@ -231,63 +232,65 @@ export const GroupsForm = t0 => {
|
|
|
231
232
|
$[40] = groupMemberships;
|
|
232
233
|
$[41] = handleGenderToggle;
|
|
233
234
|
$[42] = title;
|
|
234
|
-
$[43] =
|
|
235
|
+
$[43] = t13;
|
|
235
236
|
} else {
|
|
236
|
-
|
|
237
|
+
t13 = $[43];
|
|
237
238
|
}
|
|
238
|
-
let
|
|
239
|
-
if ($[44] !== groupMemberships.adultMembers || $[45] !== groupMemberships.fetchNextPage || $[46] !== groupMemberships.isFetchingNextPage || $[47] !== t12) {
|
|
240
|
-
|
|
239
|
+
let t14;
|
|
240
|
+
if ($[44] !== groupMemberships.adultMembers || $[45] !== groupMemberships.fetchNextPage || $[46] !== groupMemberships.isFetchingNextPage || $[47] !== t12 || $[48] !== t13) {
|
|
241
|
+
t14 = /*#__PURE__*/_jsx(FormList, {
|
|
241
242
|
memberData: groupMemberships.adultMembers,
|
|
242
243
|
loadingMore: groupMemberships.isFetchingNextPage,
|
|
243
244
|
onEndReached: groupMemberships.fetchNextPage,
|
|
244
|
-
|
|
245
|
+
listEmptyText: t12,
|
|
246
|
+
FormContent: t13
|
|
245
247
|
});
|
|
246
248
|
$[44] = groupMemberships.adultMembers;
|
|
247
249
|
$[45] = groupMemberships.fetchNextPage;
|
|
248
250
|
$[46] = groupMemberships.isFetchingNextPage;
|
|
249
251
|
$[47] = t12;
|
|
250
252
|
$[48] = t13;
|
|
253
|
+
$[49] = t14;
|
|
251
254
|
} else {
|
|
252
|
-
|
|
255
|
+
t14 = $[49];
|
|
253
256
|
}
|
|
254
|
-
const
|
|
255
|
-
let
|
|
256
|
-
if ($[
|
|
257
|
-
|
|
258
|
-
$[
|
|
259
|
-
$[
|
|
257
|
+
const t15 = !title || isPending || validationPending || warnings.length > 0;
|
|
258
|
+
let t16;
|
|
259
|
+
if ($[50] !== handleSave) {
|
|
260
|
+
t16 = () => handleSave();
|
|
261
|
+
$[50] = handleSave;
|
|
262
|
+
$[51] = t16;
|
|
260
263
|
} else {
|
|
261
|
-
|
|
264
|
+
t16 = $[51];
|
|
262
265
|
}
|
|
263
|
-
let
|
|
264
|
-
if ($[
|
|
265
|
-
|
|
266
|
-
disabled:
|
|
266
|
+
let t17;
|
|
267
|
+
if ($[52] !== t15 || $[53] !== t16 || $[54] !== warnings) {
|
|
268
|
+
t17 = /*#__PURE__*/_jsx(ActionButton, {
|
|
269
|
+
disabled: t15,
|
|
267
270
|
title: "Start Conversation",
|
|
268
|
-
onPress:
|
|
271
|
+
onPress: t16,
|
|
269
272
|
infoText: "Conversation will be automatically updated if any members are added or removed from this group.",
|
|
270
273
|
warnings: warnings
|
|
271
274
|
});
|
|
272
|
-
$[51] = t14;
|
|
273
275
|
$[52] = t15;
|
|
274
|
-
$[53] =
|
|
275
|
-
$[54] =
|
|
276
|
+
$[53] = t16;
|
|
277
|
+
$[54] = warnings;
|
|
278
|
+
$[55] = t17;
|
|
276
279
|
} else {
|
|
277
|
-
|
|
280
|
+
t17 = $[55];
|
|
278
281
|
}
|
|
279
|
-
let
|
|
280
|
-
if ($[
|
|
281
|
-
|
|
282
|
-
children: [
|
|
282
|
+
let t18;
|
|
283
|
+
if ($[56] !== t14 || $[57] !== t17) {
|
|
284
|
+
t18 = /*#__PURE__*/_jsxs(KeyboardView, {
|
|
285
|
+
children: [t14, t17]
|
|
283
286
|
});
|
|
284
|
-
$[
|
|
285
|
-
$[56] = t16;
|
|
287
|
+
$[56] = t14;
|
|
286
288
|
$[57] = t17;
|
|
289
|
+
$[58] = t18;
|
|
287
290
|
} else {
|
|
288
|
-
|
|
291
|
+
t18 = $[58];
|
|
289
292
|
}
|
|
290
|
-
return
|
|
293
|
+
return t18;
|
|
291
294
|
};
|
|
292
295
|
function FormContent(t0) {
|
|
293
296
|
const $ = _c(58);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"groups_form.js","names":["StackActions","useNavigation","React","useCallback","useMemo","useRef","useState","Platform","Pressable","StyleSheet","View","Banner","ChildNotice","Heading","Text","ActionButton","KeyboardView","AutoFocusAwareTextInput","useApiClient","useCurrentPerson","useSuspenseGet","useTheme","useGroupChatConversationPayload","useGroupMembersForNewConversation","useGroupsConversationCreate","patchConversationAvatar","useConversationValidate","availableFeatures","useFeatures","useMyGender","useUploadClient","pluralize","genderDisplayLabel","Haptic","AvatarSelectionRow","Divider","FormList","GenderFilterToggle","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","GroupsForm","t0","$","_c","groupId","chat_group_graph_id","avatarSelection","navigation","apiClient","uploadClient","title","setTitle","genderFilterEnabled","setGenderFilterEnabled","featureEnabled","t1","custom_conversation_avatars","customAvatarsEnabled","t2","conversation_safety_lock","safetyLockEnabled","isFeatureEnabled","genderFilterAvailable","genderId","genderValue","isFetching","genderFetching","t3","t4","Symbol","for","fields","Group","t5","url","data","app","group","activeGenderId","activeGenderValue","t6","enabled","payload","isLoading","isLoadingPayload","t7","warnings","validationPending","t8","id","gender","groupMemberships","t9","name","displayLabel","defaultTitle","shouldAutoPopulateTitle","shouldClearAutoPopulatedTitle","handleGenderToggle","t10","conversationId","dispatch","popTo","conversation_id","notificationSuccess","kind","handleCreateSuccess","t11","onSuccess","mutate","handleSave","isPending","t12","FormContent","filteredMemberCount","adultMembers","length","t13","fetchNextPage","isFetchingNextPage","memberData","loadingMore","onEndReached","t14","t15","t16","disabled","onPress","infoText","t17","children","onGenderToggle","styles","useStyles","inputRef","currentPerson","membershipsCount","m","find","myGroupsMembership","isLeader","role","childMembers","hasChildren","displayCount","memberHeaderLabel","showMemberError","isError","current","focus","handleTitleSectionPress","variant","groupName","style","toSection","required","titleInput","placeholder","autoFocus","titleSection","banner","appearance","description","memberSection","t18","formContent","colors","statusErrorText","textColorDefaultPrimary","create","paddingBottom","flex","padding","flexDirection","gap","fontSize","select","ios","android","color","marginTop"],"sources":["../../../../src/screens/conversation_new/components/groups_form.tsx"],"sourcesContent":["import { StackActions, useNavigation } from '@react-navigation/native'\nimport React, { useCallback, useMemo, useRef, useState } from 'react'\nimport { Platform, Pressable, StyleSheet, TextInput, View } from 'react-native'\nimport { Banner, ChildNotice, Heading, Text } from '../../../components'\nimport { ActionButton } from '../../../components/display/action_button'\nimport { KeyboardView } from '../../../components/display/keyboard_view'\nimport { AutoFocusAwareTextInput } from '../../../components/display/text_input'\nimport { useApiClient, useCurrentPerson, useSuspenseGet, useTheme } from '../../../hooks'\nimport { useGroupChatConversationPayload } from '../../../hooks/groups/use_group_chat_conversation_payload'\nimport {\n GroupMembersForNewConversationResult,\n useGroupMembersForNewConversation,\n} from '../../../hooks/groups/use_group_members_for_new_conversation'\nimport { useGroupsConversationCreate } from '../../../hooks/groups/use_groups_conversation_create'\nimport {\n type AvatarUpdatePayload,\n patchConversationAvatar,\n} from '../../../hooks/use_conversation_avatar_update'\nimport { useConversationValidate } from '../../../hooks/use_conversation_validate'\nimport { availableFeatures, useFeatures } from '../../../hooks/use_features'\nimport { useMyGender } from '../../../hooks/use_my_gender'\nimport { useUploadClient } from '../../../hooks/use_upload_client'\nimport { GroupsGroupResource } from '../../../types'\nimport { GraphId } from '../../../types/resources/group_resource'\nimport { pluralize } from '../../../utils'\nimport { genderDisplayLabel } from '../../../utils/gender_display_label'\nimport { Haptic } from '../../../utils/native_adapters'\nimport { AvatarSelectionRow } from './avatar_selection_row'\nimport { Divider, FormList } from './form_list'\nimport { GenderFilterToggle } from './gender_filter_toggle'\n\ntype GroupsFormProps = {\n groupId: number\n chat_group_graph_id?: GraphId\n avatarSelection?: AvatarUpdatePayload\n}\n\nexport const GroupsForm = ({ groupId, chat_group_graph_id, avatarSelection }: GroupsFormProps) => {\n const navigation = useNavigation()\n const apiClient = useApiClient()\n const uploadClient = useUploadClient()\n const [title, setTitle] = useState('')\n const [genderFilterEnabled, setGenderFilterEnabled] = useState(false)\n const { featureEnabled } = useFeatures()\n const customAvatarsEnabled = featureEnabled(availableFeatures.custom_conversation_avatars)\n const safetyLockEnabled = featureEnabled(availableFeatures.conversation_safety_lock)\n const {\n isFeatureEnabled: genderFilterAvailable,\n genderId,\n genderValue,\n isFetching: genderFetching,\n } = useMyGender()\n const { data: group } = useSuspenseGet<GroupsGroupResource>({\n url: `/me/groups/${groupId}`,\n data: {\n fields: {\n Group: [],\n },\n },\n app: 'groups',\n })\n\n const activeGenderId = genderFilterEnabled ? genderId : null\n const activeGenderValue = genderFilterEnabled ? genderValue : null\n\n const { payload, isLoading: isLoadingPayload } = useGroupChatConversationPayload({\n groupId,\n enabled: safetyLockEnabled,\n })\n\n const { warnings, validationPending } = useConversationValidate({\n payload,\n isLoadingPayload,\n genderId: activeGenderId,\n enabled: safetyLockEnabled,\n })\n\n const groupMemberships = useGroupMembersForNewConversation({\n id: groupId,\n gender: activeGenderValue,\n })\n\n const handleGenderToggle = (enabled: boolean) => {\n const displayLabel = genderValue ? genderDisplayLabel(genderValue) : ''\n const defaultTitle = `${group.name} (${displayLabel})`\n const shouldAutoPopulateTitle = enabled && genderValue && title === ''\n const shouldClearAutoPopulatedTitle = !enabled && title === defaultTitle\n\n setGenderFilterEnabled(enabled)\n\n if (shouldAutoPopulateTitle) {\n setTitle(defaultTitle)\n } else if (shouldClearAutoPopulatedTitle) {\n setTitle('')\n }\n }\n\n const handleCreateSuccess = useCallback(\n (conversationId: number) => {\n navigation.dispatch(\n StackActions.popTo('Conversation', {\n conversation_id: conversationId,\n chat_group_graph_id,\n })\n )\n Haptic.notificationSuccess()\n\n if (avatarSelection && avatarSelection.kind !== 'clear') {\n patchConversationAvatar(apiClient, uploadClient, conversationId, avatarSelection)\n }\n },\n [apiClient, avatarSelection, chat_group_graph_id, navigation, uploadClient]\n )\n\n const { mutate: handleSave, isPending } = useGroupsConversationCreate({\n groupId,\n title,\n genderId: activeGenderId,\n onSuccess: handleCreateSuccess,\n })\n\n return (\n <KeyboardView>\n <FormList\n memberData={groupMemberships.adultMembers}\n loadingMore={groupMemberships.isFetchingNextPage}\n onEndReached={groupMemberships.fetchNextPage}\n FormContent={\n <FormContent\n group={group}\n title={title}\n setTitle={setTitle}\n genderFilterAvailable={genderFilterAvailable}\n genderFilterEnabled={genderFilterEnabled}\n genderValue={genderValue}\n genderFetching={genderFetching}\n onGenderToggle={handleGenderToggle}\n groupMemberships={groupMemberships}\n filteredMemberCount={groupMemberships.adultMembers.length}\n avatarSelection={avatarSelection}\n customAvatarsEnabled={customAvatarsEnabled}\n />\n }\n />\n <ActionButton\n disabled={!title || isPending || validationPending || warnings.length > 0}\n title=\"Start Conversation\"\n onPress={() => handleSave()}\n infoText=\"Conversation will be automatically updated if any members are added or removed from this group.\"\n warnings={warnings}\n />\n </KeyboardView>\n )\n}\n\ninterface FormContentProps {\n group: GroupsGroupResource\n title: string\n setTitle: (title: string) => void\n genderFilterAvailable: boolean\n genderFilterEnabled: boolean\n genderValue: string | null\n genderFetching: boolean\n onGenderToggle: (enabled: boolean) => void\n groupMemberships: GroupMembersForNewConversationResult\n filteredMemberCount: number\n avatarSelection?: AvatarUpdatePayload\n customAvatarsEnabled: boolean\n}\n\nfunction FormContent({\n group,\n title,\n setTitle,\n genderFilterAvailable,\n genderFilterEnabled,\n genderValue,\n genderFetching,\n onGenderToggle,\n groupMemberships,\n filteredMemberCount,\n avatarSelection,\n customAvatarsEnabled,\n}: FormContentProps) {\n const styles = useStyles()\n const inputRef = useRef<TextInput>(null)\n const currentPerson = useCurrentPerson()\n const { name, membershipsCount } = group\n\n const myGroupsMembership = useMemo(\n () => groupMemberships.data.find(m => m.id === currentPerson.id),\n [groupMemberships.data, currentPerson.id]\n )\n const isLeader = myGroupsMembership?.role === 'leader'\n\n const childMembers = groupMemberships.childMembers\n const hasChildren = childMembers.length > 0\n const displayCount = genderFilterEnabled ? filteredMemberCount : membershipsCount\n const memberHeaderLabel = `${pluralize(displayCount, 'member')} selected`\n\n const showMemberError = groupMemberships.isError\n\n const handleTitleSectionPress = useCallback(() => {\n inputRef.current?.focus()\n }, [])\n\n return (\n <View style={styles.formContent}>\n <View style={styles.toSection}>\n <Heading variant=\"h3\">To:</Heading>\n <Text style={styles.groupName}>{name}</Text>\n </View>\n <Divider />\n <Pressable style={styles.titleSection} onPress={handleTitleSectionPress}>\n <Heading variant=\"h3\">\n Title <Text style={styles.required}>*</Text>\n </Heading>\n <AutoFocusAwareTextInput\n placeholder=\"Topic of conversation\"\n value={title}\n onChangeText={setTitle}\n style={styles.titleInput}\n autoFocus={true}\n inputRef={inputRef}\n />\n </Pressable>\n <Divider />\n {customAvatarsEnabled && (\n <>\n <AvatarSelectionRow avatarSelection={avatarSelection} />\n <Divider />\n </>\n )}\n {genderFilterAvailable && (\n <>\n <GenderFilterToggle\n genderValue={genderValue}\n isFetching={genderFetching}\n enabled={genderFilterEnabled}\n onToggle={onGenderToggle}\n />\n <Divider />\n </>\n )}\n <View style={styles.memberSection}>\n <Heading variant=\"h3\">{memberHeaderLabel}</Heading>\n {hasChildren && (\n <ChildNotice childMembers={childMembers} showMembers={isLeader} style={styles.banner} />\n )}\n {showMemberError && (\n <Banner\n appearance=\"error\"\n description=\"There was an issue loading group members, please refresh and try again.\"\n style={styles.banner}\n />\n )}\n </View>\n </View>\n )\n}\n\nconst useStyles = () => {\n const { colors } = useTheme()\n const sectionPadding = 16\n const inputPadding = 8\n\n return StyleSheet.create({\n formContent: {\n paddingBottom: sectionPadding,\n flex: 1,\n },\n toSection: {\n padding: sectionPadding,\n flexDirection: 'row',\n gap: 8,\n },\n groupName: {\n fontSize: 18,\n flex: 1,\n },\n titleSection: {\n padding: sectionPadding,\n paddingBottom: Platform.select({\n ios: sectionPadding,\n android: sectionPadding - inputPadding,\n }),\n gap: Platform.select({\n ios: 8,\n android: 0,\n }),\n },\n titleInput: {\n fontSize: 18,\n color: colors.textColorDefaultPrimary,\n },\n required: {\n color: colors.statusErrorText,\n },\n memberSection: {\n padding: sectionPadding,\n paddingBottom: 0,\n },\n banner: {\n marginTop: 16,\n },\n })\n}\n"],"mappings":";AAAA,SAASA,YAAY,EAAEC,aAAa,QAAQ,0BAA0B;AACtE,OAAOC,KAAK,IAAIC,WAAW,EAAEC,OAAO,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,OAAO;AACrE,SAASC,QAAQ,EAAEC,SAAS,EAAEC,UAAU,EAAaC,IAAI,QAAQ,cAAc;AAC/E,SAASC,MAAM,EAAEC,WAAW,EAAEC,OAAO,EAAEC,IAAI,QAAQ,qBAAqB;AACxE,SAASC,YAAY,QAAQ,2CAA2C;AACxE,SAASC,YAAY,QAAQ,2CAA2C;AACxE,SAASC,uBAAuB,QAAQ,wCAAwC;AAChF,SAASC,YAAY,EAAEC,gBAAgB,EAAEC,cAAc,EAAEC,QAAQ,QAAQ,gBAAgB;AACzF,SAASC,+BAA+B,QAAQ,2DAA2D;AAC3G,SAEEC,iCAAiC,QAC5B,8DAA8D;AACrE,SAASC,2BAA2B,QAAQ,sDAAsD;AAClG,SAEEC,uBAAuB,QAClB,+CAA+C;AACtD,SAASC,uBAAuB,QAAQ,0CAA0C;AAClF,SAASC,iBAAiB,EAAEC,WAAW,QAAQ,6BAA6B;AAC5E,SAASC,WAAW,QAAQ,8BAA8B;AAC1D,SAASC,eAAe,QAAQ,kCAAkC;AAGlE,SAASC,SAAS,QAAQ,gBAAgB;AAC1C,SAASC,kBAAkB,QAAQ,qCAAqC;AACxE,SAASC,MAAM,QAAQ,gCAAgC;AACvD,SAASC,kBAAkB,QAAQ,wBAAwB;AAC3D,SAASC,OAAO,EAAEC,QAAQ,QAAQ,aAAa;AAC/C,SAASC,kBAAkB,QAAQ,wBAAwB;AAAA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA,EAAAC,QAAA,IAAAC,SAAA;AAQ3D,OAAO,MAAMC,UAAU,GAAGC,EAAA;EAAA,MAAAC,CAAA,GAAAC,EAAA;EAAC;IAAAC,OAAA;IAAAC,mBAAA;IAAAC;EAAA,IAAAL,EAAkE;EAC3F,MAAAM,UAAA,GAAmBlD,aAAa,CAAC,CAAC;EAClC,MAAAmD,SAAA,GAAkBlC,YAAY,CAAC,CAAC;EAChC,MAAAmC,YAAA,GAAqBvB,eAAe,CAAC,CAAC;EACtC,OAAAwB,KAAA,EAAAC,QAAA,IAA0BjD,QAAQ,CAAC,EAAE,CAAC;EACtC,OAAAkD,mBAAA,EAAAC,sBAAA,IAAsDnD,QAAQ,CAAC,KAAK,CAAC;EACrE;IAAAoD;EAAA,IAA2B9B,WAAW,CAAC,CAAC;EAAA,IAAA+B,EAAA;EAAA,IAAAb,CAAA,QAAAY,cAAA;IACXC,EAAA,GAAAD,cAAc,CAAC/B,iBAAiB,CAAAiC,2BAA4B,CAAC;IAAAd,CAAA,MAAAY,cAAA;IAAAZ,CAAA,MAAAa,EAAA;EAAA;IAAAA,EAAA,GAAAb,CAAA;EAAA;EAA1F,MAAAe,oBAAA,GAA6BF,EAA6D;EAAA,IAAAG,EAAA;EAAA,IAAAhB,CAAA,QAAAY,cAAA;IAChEI,EAAA,GAAAJ,cAAc,CAAC/B,iBAAiB,CAAAoC,wBAAyB,CAAC;IAAAjB,CAAA,MAAAY,cAAA;IAAAZ,CAAA,MAAAgB,EAAA;EAAA;IAAAA,EAAA,GAAAhB,CAAA;EAAA;EAApF,MAAAkB,iBAAA,GAA0BF,EAA0D;EACpF;IAAAG,gBAAA,EAAAC,qBAAA;IAAAC,QAAA;IAAAC,WAAA;IAAAC,UAAA,EAAAC;EAAA,IAKIzC,WAAW,CAAC,CAAC;EAEV,MAAA0C,EAAA,iBAAcvB,OAAO,EAAE;EAAA,IAAAwB,EAAA;EAAA,IAAA1B,CAAA,QAAA2B,MAAA,CAAAC,GAAA;IACtBF,EAAA;MAAAG,MAAA,EACI;QAAAC,KAAA,EACC;MACT;IACF,CAAC;IAAA9B,CAAA,MAAA0B,EAAA;EAAA;IAAAA,EAAA,GAAA1B,CAAA;EAAA;EAAA,IAAA+B,EAAA;EAAA,IAAA/B,CAAA,QAAAyB,EAAA;IANyDM,EAAA;MAAAC,GAAA,EACrDP,EAAuB;MAAAQ,IAAA,EACtBP,EAIL;MAAAQ,GAAA,EACI;IACP,CAAC;IAAAlC,CAAA,MAAAyB,EAAA;IAAAzB,CAAA,MAAA+B,EAAA;EAAA;IAAAA,EAAA,GAAA/B,CAAA;EAAA;EARD;IAAAiC,IAAA,EAAAE;EAAA,IAAwB7D,cAAc,CAAsByD,EAQ3D,CAAC;EAEF,MAAAK,cAAA,GAAuB1B,mBAAmB,GAAnBW,QAAqC,GAArC,IAAqC;EAC5D,MAAAgB,iBAAA,GAA0B3B,mBAAmB,GAAnBY,WAAwC,GAAxC,IAAwC;EAAA,IAAAgB,EAAA;EAAA,IAAAtC,CAAA,QAAAE,OAAA,IAAAF,CAAA,QAAAkB,iBAAA;IAEeoB,EAAA;MAAApC,OAAA;MAAAqC,OAAA,EAEtErB;IACX,CAAC;IAAAlB,CAAA,MAAAE,OAAA;IAAAF,CAAA,MAAAkB,iBAAA;IAAAlB,CAAA,MAAAsC,EAAA;EAAA;IAAAA,EAAA,GAAAtC,CAAA;EAAA;EAHD;IAAAwC,OAAA;IAAAC,SAAA,EAAAC;EAAA,IAAiDlE,+BAA+B,CAAC8D,EAGhF,CAAC;EAAA,IAAAK,EAAA;EAAA,IAAA3C,CAAA,SAAAoC,cAAA,IAAApC,CAAA,SAAA0C,gBAAA,IAAA1C,CAAA,SAAAwC,OAAA,IAAAxC,CAAA,SAAAkB,iBAAA;IAE8DyB,EAAA;MAAAH,OAAA;MAAAE,gBAAA;MAAArB,QAAA,EAGpDe,cAAc;MAAAG,OAAA,EACfrB;IACX,CAAC;IAAAlB,CAAA,OAAAoC,cAAA;IAAApC,CAAA,OAAA0C,gBAAA;IAAA1C,CAAA,OAAAwC,OAAA;IAAAxC,CAAA,OAAAkB,iBAAA;IAAAlB,CAAA,OAAA2C,EAAA;EAAA;IAAAA,EAAA,GAAA3C,CAAA;EAAA;EALD;IAAA4C,QAAA;IAAAC;EAAA,IAAwCjE,uBAAuB,CAAC+D,EAK/D,CAAC;EAAA,IAAAG,EAAA;EAAA,IAAA9C,CAAA,SAAAqC,iBAAA,IAAArC,CAAA,SAAAE,OAAA;IAEyD4C,EAAA;MAAAC,EAAA,EACrD7C,OAAO;MAAA8C,MAAA,EACHX;IACV,CAAC;IAAArC,CAAA,OAAAqC,iBAAA;IAAArC,CAAA,OAAAE,OAAA;IAAAF,CAAA,OAAA8C,EAAA;EAAA;IAAAA,EAAA,GAAA9C,CAAA;EAAA;EAHD,MAAAiD,gBAAA,GAAyBxE,iCAAiC,CAACqE,EAG1D,CAAC;EAAA,IAAAI,EAAA;EAAA,IAAAlD,CAAA,SAAAsB,WAAA,IAAAtB,CAAA,SAAAmC,KAAA,CAAAgB,IAAA,IAAAnD,CAAA,SAAAQ,KAAA;IAEyB0C,EAAA,GAAAX,OAAA;MACzB,MAAAa,YAAA,GAAqB9B,WAAW,GAAGpC,kBAAkB,CAACoC,WAAgB,CAAC,GAAlD,EAAkD;MACvE,MAAA+B,YAAA,GAAqB,GAAGlB,KAAK,CAAAgB,IAAK,KAAKC,YAAY,GAAG;MACtD,MAAAE,uBAAA,GAAgCf,OAAsB,IAAtBjB,WAAsC,IAAZd,KAAK,KAAK,EAAE;MACtE,MAAA+C,6BAAA,GAAsC,CAAChB,OAAiC,IAAtB/B,KAAK,KAAK6C,YAAY;MAExE1C,sBAAsB,CAAC4B,OAAO,CAAC;MAE/B,IAAIe,uBAAuB;QACzB7C,QAAQ,CAAC4C,YAAY,CAAC;MAAA;QACjB,IAAIE,6BAA6B;UACtC9C,QAAQ,CAAC,EAAE,CAAC;QAAA;MACb;IAAA,CACF;IAAAT,CAAA,OAAAsB,WAAA;IAAAtB,CAAA,OAAAmC,KAAA,CAAAgB,IAAA;IAAAnD,CAAA,OAAAQ,KAAA;IAAAR,CAAA,OAAAkD,EAAA;EAAA;IAAAA,EAAA,GAAAlD,CAAA;EAAA;EAbD,MAAAwD,kBAAA,GAA2BN,EAa1B;EAAA,IAAAO,GAAA;EAAA,IAAAzD,CAAA,SAAAM,SAAA,IAAAN,CAAA,SAAAI,eAAA,IAAAJ,CAAA,SAAAG,mBAAA,IAAAH,CAAA,SAAAK,UAAA,IAAAL,CAAA,SAAAO,YAAA;IAGCkD,GAAA,GAAAC,cAAA;MACErD,UAAU,CAAAsD,QAAS,CACjBzG,YAAY,CAAA0G,KAAM,CAAC,cAAc,EAAE;QAAAC,eAAA,EAChBH,cAAc;QAAAvD;MAEjC,CAAC,CACH,CAAC;MACDhB,MAAM,CAAA2E,mBAAoB,CAAC,CAAC;MAE5B,IAAI1D,eAAmD,IAAhCA,eAAe,CAAA2D,IAAK,KAAK,OAAO;QACrDpF,uBAAuB,CAAC2B,SAAS,EAAEC,YAAY,EAAEmD,cAAc,EAAEtD,eAAe,CAAC;MAAA;IAClF,CACF;IAAAJ,CAAA,OAAAM,SAAA;IAAAN,CAAA,OAAAI,eAAA;IAAAJ,CAAA,OAAAG,mBAAA;IAAAH,CAAA,OAAAK,UAAA;IAAAL,CAAA,OAAAO,YAAA;IAAAP,CAAA,OAAAyD,GAAA;EAAA;IAAAA,GAAA,GAAAzD,CAAA;EAAA;EAbH,MAAAgE,mBAAA,GAA4BP,GAe3B;EAAA,IAAAQ,GAAA;EAAA,IAAAjE,CAAA,SAAAoC,cAAA,IAAApC,CAAA,SAAAE,OAAA,IAAAF,CAAA,SAAAgE,mBAAA,IAAAhE,CAAA,SAAAQ,KAAA;IAEqEyD,GAAA;MAAA/D,OAAA;MAAAM,KAAA;MAAAa,QAAA,EAG1De,cAAc;MAAA8B,SAAA,EACbF;IACb,CAAC;IAAAhE,CAAA,OAAAoC,cAAA;IAAApC,CAAA,OAAAE,OAAA;IAAAF,CAAA,OAAAgE,mBAAA;IAAAhE,CAAA,OAAAQ,KAAA;IAAAR,CAAA,OAAAiE,GAAA;EAAA;IAAAA,GAAA,GAAAjE,CAAA;EAAA;EALD;IAAAmE,MAAA,EAAAC,UAAA;IAAAC;EAAA,IAA0C3F,2BAA2B,CAACuF,GAKrE,CAAC;EAAA,IAAAK,GAAA;EAAA,IAAAtE,CAAA,SAAAI,eAAA,IAAAJ,CAAA,SAAAe,oBAAA,IAAAf,CAAA,SAAAwB,cAAA,IAAAxB,CAAA,SAAAoB,qBAAA,IAAApB,CAAA,SAAAU,mBAAA,IAAAV,CAAA,SAAAsB,WAAA,IAAAtB,CAAA,SAAAmC,KAAA,IAAAnC,CAAA,SAAAiD,gBAAA,IAAAjD,CAAA,SAAAwD,kBAAA,IAAAxD,CAAA,SAAAQ,KAAA;IASM8D,GAAA,gBAAA7E,IAAA,CAAC8E,WAAW;MACHpC,KAAK,EAALA,KAAK;MACL3B,KAAK,EAALA,KAAK;MACFC,QAAQ,EAARA,QAAQ;MACKW,qBAAqB,EAArBA,qBAAqB;MACvBV,mBAAmB,EAAnBA,mBAAmB;MAC3BY,WAAW,EAAXA,WAAW;MACRE,cAAc,EAAdA,cAAc;MACdgC,cAAkB,EAAlBA,kBAAkB;MAChBP,gBAAgB,EAAhBA,gBAAgB;MACbuB,mBAAoC,EAApCvB,gBAAgB,CAAAwB,YAAa,CAAAC,MAAO;MACxCtE,eAAe,EAAfA,eAAe;MACVW,oBAAoB,EAApBA;IAAoB,CAC3C,CAAC;IAAAf,CAAA,OAAAI,eAAA;IAAAJ,CAAA,OAAAe,oBAAA;IAAAf,CAAA,OAAAwB,cAAA;IAAAxB,CAAA,OAAAoB,qBAAA;IAAApB,CAAA,OAAAU,mBAAA;IAAAV,CAAA,OAAAsB,WAAA;IAAAtB,CAAA,OAAAmC,KAAA;IAAAnC,CAAA,OAAAiD,gBAAA;IAAAjD,CAAA,OAAAwD,kBAAA;IAAAxD,CAAA,OAAAQ,KAAA;IAAAR,CAAA,OAAAsE,GAAA;EAAA;IAAAA,GAAA,GAAAtE,CAAA;EAAA;EAAA,IAAA2E,GAAA;EAAA,IAAA3E,CAAA,SAAAiD,gBAAA,CAAAwB,YAAA,IAAAzE,CAAA,SAAAiD,gBAAA,CAAA2B,aAAA,IAAA5E,CAAA,SAAAiD,gBAAA,CAAA4B,kBAAA,IAAA7E,CAAA,SAAAsE,GAAA;IAlBNK,GAAA,gBAAAlF,IAAA,CAACH,QAAQ;MACKwF,UAA6B,EAA7B7B,gBAAgB,CAAAwB,YAAa;MAC5BM,WAAmC,EAAnC9B,gBAAgB,CAAA4B,kBAAmB;MAClCG,YAA8B,EAA9B/B,gBAAgB,CAAA2B,aAAc;MAE1CL,WAaE,EAbFD;IAaE,CAEL,CAAC;IAAAtE,CAAA,OAAAiD,gBAAA,CAAAwB,YAAA;IAAAzE,CAAA,OAAAiD,gBAAA,CAAA2B,aAAA;IAAA5E,CAAA,OAAAiD,gBAAA,CAAA4B,kBAAA;IAAA7E,CAAA,OAAAsE,GAAA;IAAAtE,CAAA,OAAA2E,GAAA;EAAA;IAAAA,GAAA,GAAA3E,CAAA;EAAA;EAEU,MAAAiF,GAAA,IAACzE,KAAkB,IAAnB6D,SAAwC,IAAxCxB,iBAA+D,IAAnBD,QAAQ,CAAA8B,MAAO,GAAG,CAAC;EAAA,IAAAQ,GAAA;EAAA,IAAAlF,CAAA,SAAAoE,UAAA;IAEhEc,GAAA,GAAAA,CAAA,KAAMd,UAAU,CAAC,CAAC;IAAApE,CAAA,OAAAoE,UAAA;IAAApE,CAAA,OAAAkF,GAAA;EAAA;IAAAA,GAAA,GAAAlF,CAAA;EAAA;EAAA,IAAAmF,GAAA;EAAA,IAAAnF,CAAA,SAAAiF,GAAA,IAAAjF,CAAA,SAAAkF,GAAA,IAAAlF,CAAA,SAAA4C,QAAA;IAH7BuC,GAAA,gBAAA1F,IAAA,CAACxB,YAAY;MACDmH,QAA+D,EAA/DH,GAA+D;MACnEzE,KAAoB,EAApB,oBAAoB;MACjB6E,OAAkB,EAAlBH,GAAkB;MAClBI,QAAiG,EAAjG,iGAAiG;MAChG1C,QAAQ,EAARA;IAAQ,CACnB,CAAC;IAAA5C,CAAA,OAAAiF,GAAA;IAAAjF,CAAA,OAAAkF,GAAA;IAAAlF,CAAA,OAAA4C,QAAA;IAAA5C,CAAA,OAAAmF,GAAA;EAAA;IAAAA,GAAA,GAAAnF,CAAA;EAAA;EAAA,IAAAuF,GAAA;EAAA,IAAAvF,CAAA,SAAA2E,GAAA,IAAA3E,CAAA,SAAAmF,GAAA;IA5BJI,GAAA,gBAAA5F,KAAA,CAACzB,YAAY;MAAAsH,QAAA,GACXb,GAoBE,EACFQ,GAME;IAAA,CACU,CAAC;IAAAnF,CAAA,OAAA2E,GAAA;IAAA3E,CAAA,OAAAmF,GAAA;IAAAnF,CAAA,OAAAuF,GAAA;EAAA;IAAAA,GAAA,GAAAvF,CAAA;EAAA;EAAA,OA7BfuF,GA6Be;AAAA,CAElB;AAiBD,SAAAhB,YAAAxE,EAAA;EAAA,MAAAC,CAAA,GAAAC,EAAA;EAAqB;IAAAkC,KAAA;IAAA3B,KAAA;IAAAC,QAAA;IAAAW,qBAAA;IAAAV,mBAAA;IAAAY,WAAA;IAAAE,cAAA;IAAAiE,cAAA;IAAAxC,gBAAA;IAAAuB,mBAAA;IAAApE,eAAA;IAAAW;EAAA,IAAAhB,EAaF;EACjB,MAAA2F,MAAA,GAAeC,SAAS,CAAC,CAAC;EAC1B,MAAAC,QAAA,GAAiBrI,MAAM,CAAY,IAAI,CAAC;EACxC,MAAAsI,aAAA,GAAsBxH,gBAAgB,CAAC,CAAC;EACxC;IAAA8E,IAAA;IAAA2C;EAAA,IAAmC3D,KAAK;EAAA,IAAAtB,EAAA;EAAA,IAAAb,CAAA,QAAA6F,aAAA,CAAA9C,EAAA,IAAA/C,CAAA,QAAAiD,gBAAA,CAAAhB,IAAA;IAAA,IAAAjB,EAAA;IAAA,IAAAhB,CAAA,QAAA6F,aAAA,CAAA9C,EAAA;MAGL/B,EAAA,GAAA+E,CAAA,IAAKA,CAAC,CAAAhD,EAAG,KAAK8C,aAAa,CAAA9C,EAAG;MAAA/C,CAAA,MAAA6F,aAAA,CAAA9C,EAAA;MAAA/C,CAAA,MAAAgB,EAAA;IAAA;MAAAA,EAAA,GAAAhB,CAAA;IAAA;IAAzDa,EAAA,GAAAoC,gBAAgB,CAAAhB,IAAK,CAAA+D,IAAK,CAAChF,EAA8B,CAAC;IAAAhB,CAAA,MAAA6F,aAAA,CAAA9C,EAAA;IAAA/C,CAAA,MAAAiD,gBAAA,CAAAhB,IAAA;IAAAjC,CAAA,MAAAa,EAAA;EAAA;IAAAA,EAAA,GAAAb,CAAA;EAAA;EADlE,MAAAiG,kBAAA,GACQpF,EAA0D;EAGlE,MAAAqF,QAAA,GAAiBD,kBAAkB,EAAAE,IAAM,KAAK,QAAQ;EAEtD,MAAAC,YAAA,GAAqBnD,gBAAgB,CAAAmD,YAAa;EAClD,MAAAC,WAAA,GAAoBD,YAAY,CAAA1B,MAAO,GAAG,CAAC;EAC3C,MAAA4B,YAAA,GAAqB5F,mBAAmB,GAAnB8D,mBAA4D,GAA5DsB,gBAA4D;EAAA,IAAA9E,EAAA;EAAA,IAAAhB,CAAA,QAAAsG,YAAA;IACpDtF,EAAA,GAAA/B,SAAS,CAACqH,YAAY,EAAE,QAAQ,CAAC;IAAAtG,CAAA,MAAAsG,YAAA;IAAAtG,CAAA,MAAAgB,EAAA;EAAA;IAAAA,EAAA,GAAAhB,CAAA;EAAA;EAA9D,MAAAuG,iBAAA,GAA0B,GAAGvF,EAAiC,WAAW;EAEzE,MAAAwF,eAAA,GAAwBvD,gBAAgB,CAAAwD,OAAQ;EAAA,IAAAhF,EAAA;EAAA,IAAAzB,CAAA,QAAA2B,MAAA,CAAAC,GAAA;IAEJH,EAAA,GAAAA,CAAA;MAC1CmE,QAAQ,CAAAc,OAAe,EAAAC,KAAE,CAAD,CAAC;IAAA,CAC1B;IAAA3G,CAAA,MAAAyB,EAAA;EAAA;IAAAA,EAAA,GAAAzB,CAAA;EAAA;EAFD,MAAA4G,uBAAA,GAAgCnF,EAE1B;EAAA,IAAAC,EAAA;EAAA,IAAA1B,CAAA,QAAA2B,MAAA,CAAAC,GAAA;IAKAF,EAAA,gBAAAjC,IAAA,CAAC1B,OAAO;MAAS8I,OAAI,EAAJ,IAAI;MAAArB,QAAA,EAAC;IAAG,CAAS,CAAC;IAAAxF,CAAA,MAAA0B,EAAA;EAAA;IAAAA,EAAA,GAAA1B,CAAA;EAAA;EAAA,IAAA+B,EAAA;EAAA,IAAA/B,CAAA,QAAAmD,IAAA,IAAAnD,CAAA,SAAA0F,MAAA,CAAAoB,SAAA;IACnC/E,EAAA,gBAAAtC,IAAA,CAACzB,IAAI;MAAQ+I,KAAgB,EAAhBrB,MAAM,CAAAoB,SAAU;MAAAtB,QAAA,EAAGrC;IAAI,CAAO,CAAC;IAAAnD,CAAA,MAAAmD,IAAA;IAAAnD,CAAA,OAAA0F,MAAA,CAAAoB,SAAA;IAAA9G,CAAA,OAAA+B,EAAA;EAAA;IAAAA,EAAA,GAAA/B,CAAA;EAAA;EAAA,IAAAsC,EAAA;EAAA,IAAAtC,CAAA,SAAA0F,MAAA,CAAAsB,SAAA,IAAAhH,CAAA,SAAA+B,EAAA;IAF9CO,EAAA,gBAAA3C,KAAA,CAAC/B,IAAI;MAAQmJ,KAAgB,EAAhBrB,MAAM,CAAAsB,SAAU;MAAAxB,QAAA,GAC3B9D,EAAmC,EACnCK,EAA4C;IAAA,CACxC,CAAC;IAAA/B,CAAA,OAAA0F,MAAA,CAAAsB,SAAA;IAAAhH,CAAA,OAAA+B,EAAA;IAAA/B,CAAA,OAAAsC,EAAA;EAAA;IAAAA,EAAA,GAAAtC,CAAA;EAAA;EAAA,IAAA2C,EAAA;EAAA,IAAA3C,CAAA,SAAA2B,MAAA,CAAAC,GAAA;IACPe,EAAA,gBAAAlD,IAAA,CAACJ,OAAO,IAAE,CAAC;IAAAW,CAAA,OAAA2C,EAAA;EAAA;IAAAA,EAAA,GAAA3C,CAAA;EAAA;EAAA,IAAA8C,EAAA;EAAA,IAAA9C,CAAA,SAAA0F,MAAA,CAAAuB,QAAA;IAETnE,EAAA,gBAAAnD,KAAA,CAAC5B,OAAO;MAAS8I,OAAI,EAAJ,IAAI;MAAArB,QAAA,GAAC,QACd,eAAA/F,IAAA,CAACzB,IAAI;QAAQ+I,KAAe,EAAfrB,MAAM,CAAAuB,QAAS;QAAAzB,QAAA,EAAE;MAAC,CAAM,CAAC;IAAA,CACrC,CAAC;IAAAxF,CAAA,OAAA0F,MAAA,CAAAuB,QAAA;IAAAjH,CAAA,OAAA8C,EAAA;EAAA;IAAAA,EAAA,GAAA9C,CAAA;EAAA;EAAA,IAAAkD,EAAA;EAAA,IAAAlD,CAAA,SAAAS,QAAA,IAAAT,CAAA,SAAA0F,MAAA,CAAAwB,UAAA,IAAAlH,CAAA,SAAAQ,KAAA;IACV0C,EAAA,gBAAAzD,IAAA,CAACtB,uBAAuB;MACVgJ,WAAuB,EAAvB,uBAAuB;MAC5B3G,KAAK,EAALA,KAAK;MACEC,YAAQ,EAARA,QAAQ;MACfsG,KAAiB,EAAjBrB,MAAM,CAAAwB,UAAW;MACbE,SAAI,EAAJ,IAAI;MACLxB,QAAQ,EAARA;IAAQ,CACnB,CAAC;IAAA5F,CAAA,OAAAS,QAAA;IAAAT,CAAA,OAAA0F,MAAA,CAAAwB,UAAA;IAAAlH,CAAA,OAAAQ,KAAA;IAAAR,CAAA,OAAAkD,EAAA;EAAA;IAAAA,EAAA,GAAAlD,CAAA;EAAA;EAAA,IAAAyD,GAAA;EAAA,IAAAzD,CAAA,SAAA0F,MAAA,CAAA2B,YAAA,IAAArH,CAAA,SAAA8C,EAAA,IAAA9C,CAAA,SAAAkD,EAAA;IAXJO,GAAA,gBAAA9D,KAAA,CAACjC,SAAS;MAAQqJ,KAAmB,EAAnBrB,MAAM,CAAA2B,YAAa;MAAWT,OAAuB,EAAvBA,uBAAuB;MAAApB,QAAA,GACrE1C,EAEU,EACVI,EAOE;IAAA,CACO,CAAC;IAAAlD,CAAA,OAAA0F,MAAA,CAAA2B,YAAA;IAAArH,CAAA,OAAA8C,EAAA;IAAA9C,CAAA,OAAAkD,EAAA;IAAAlD,CAAA,OAAAyD,GAAA;EAAA;IAAAA,GAAA,GAAAzD,CAAA;EAAA;EAAA,IAAAiE,GAAA;EAAA,IAAAjE,CAAA,SAAA2B,MAAA,CAAAC,GAAA;IACZqC,GAAA,gBAAAxE,IAAA,CAACJ,OAAO,IAAE,CAAC;IAAAW,CAAA,OAAAiE,GAAA;EAAA;IAAAA,GAAA,GAAAjE,CAAA;EAAA;EAAA,IAAAsE,GAAA;EAAA,IAAAtE,CAAA,SAAAI,eAAA,IAAAJ,CAAA,SAAAe,oBAAA;IACVuD,GAAA,GAAAvD,oBAKA,iBALApB,KAAA,CAAAE,SAAA;MAAA2F,QAAA,gBAEG/F,IAAA,CAACL,kBAAkB;QAAkBgB,eAAe,EAAfA;MAAe,CAAG,CAAC,eACxDX,IAAA,CAACJ,OAAO,IAAE,CAAC;IAAA,CAEf,CAAC;IAAAW,CAAA,OAAAI,eAAA;IAAAJ,CAAA,OAAAe,oBAAA;IAAAf,CAAA,OAAAsE,GAAA;EAAA;IAAAA,GAAA,GAAAtE,CAAA;EAAA;EAAA,IAAA2E,GAAA;EAAA,IAAA3E,CAAA,SAAAwB,cAAA,IAAAxB,CAAA,SAAAoB,qBAAA,IAAApB,CAAA,SAAAU,mBAAA,IAAAV,CAAA,SAAAsB,WAAA,IAAAtB,CAAA,SAAAyF,cAAA;IACAd,GAAA,GAAAvD,qBAUA,iBAVAzB,KAAA,CAAAE,SAAA;MAAA2F,QAAA,gBAEG/F,IAAA,CAACF,kBAAkB;QACJ+B,WAAW,EAAXA,WAAW;QACZE,UAAc,EAAdA,cAAc;QACjBd,OAAmB,EAAnBA,mBAAmB;QAClB+E,QAAc,EAAdA;MAAc,CACzB,CAAC,eACFhG,IAAA,CAACJ,OAAO,IAAE,CAAC;IAAA,CAEf,CAAC;IAAAW,CAAA,OAAAwB,cAAA;IAAAxB,CAAA,OAAAoB,qBAAA;IAAApB,CAAA,OAAAU,mBAAA;IAAAV,CAAA,OAAAsB,WAAA;IAAAtB,CAAA,OAAAyF,cAAA;IAAAzF,CAAA,OAAA2E,GAAA;EAAA;IAAAA,GAAA,GAAA3E,CAAA;EAAA;EAAA,IAAAiF,GAAA;EAAA,IAAAjF,CAAA,SAAAuG,iBAAA;IAECtB,GAAA,gBAAAxF,IAAA,CAAC1B,OAAO;MAAS8I,OAAI,EAAJ,IAAI;MAAArB,QAAA,EAAEe;IAAiB,CAAU,CAAC;IAAAvG,CAAA,OAAAuG,iBAAA;IAAAvG,CAAA,OAAAiF,GAAA;EAAA;IAAAA,GAAA,GAAAjF,CAAA;EAAA;EAAA,IAAAkF,GAAA;EAAA,IAAAlF,CAAA,SAAAoG,YAAA,IAAApG,CAAA,SAAAqG,WAAA,IAAArG,CAAA,SAAAkG,QAAA,IAAAlG,CAAA,SAAA0F,MAAA,CAAA4B,MAAA;IAClDpC,GAAA,GAAAmB,WAEA,iBAFA5G,IAAA,CACE3B,WAAW;MAAesI,YAAY,EAAZA,YAAY;MAAeF,WAAQ,EAARA,QAAQ;MAASa,KAAa,EAAbrB,MAAM,CAAA4B;IAAO,CACtF,CAAC;IAAAtH,CAAA,OAAAoG,YAAA;IAAApG,CAAA,OAAAqG,WAAA;IAAArG,CAAA,OAAAkG,QAAA;IAAAlG,CAAA,OAAA0F,MAAA,CAAA4B,MAAA;IAAAtH,CAAA,OAAAkF,GAAA;EAAA;IAAAA,GAAA,GAAAlF,CAAA;EAAA;EAAA,IAAAmF,GAAA;EAAA,IAAAnF,CAAA,SAAAwG,eAAA,IAAAxG,CAAA,SAAA0F,MAAA,CAAA4B,MAAA;IACAnC,GAAA,GAAAqB,eAMA,iBANA/G,IAAA,CACE5B,MAAM;MACM0J,UAAO,EAAP,OAAO;MACNC,WAAyE,EAAzE,yEAAyE;MAC9ET,KAAa,EAAbrB,MAAM,CAAA4B;IAAO,CAExB,CAAC;IAAAtH,CAAA,OAAAwG,eAAA;IAAAxG,CAAA,OAAA0F,MAAA,CAAA4B,MAAA;IAAAtH,CAAA,OAAAmF,GAAA;EAAA;IAAAA,GAAA,GAAAnF,CAAA;EAAA;EAAA,IAAAuF,GAAA;EAAA,IAAAvF,CAAA,SAAA0F,MAAA,CAAA+B,aAAA,IAAAzH,CAAA,SAAAiF,GAAA,IAAAjF,CAAA,SAAAkF,GAAA,IAAAlF,CAAA,SAAAmF,GAAA;IAXHI,GAAA,gBAAA5F,KAAA,CAAC/B,IAAI;MAAQmJ,KAAoB,EAApBrB,MAAM,CAAA+B,aAAc;MAAAjC,QAAA,GAC/BP,GAAmD,EAClDC,GAEA,EACAC,GAMA;IAAA,CACG,CAAC;IAAAnF,CAAA,OAAA0F,MAAA,CAAA+B,aAAA;IAAAzH,CAAA,OAAAiF,GAAA;IAAAjF,CAAA,OAAAkF,GAAA;IAAAlF,CAAA,OAAAmF,GAAA;IAAAnF,CAAA,OAAAuF,GAAA;EAAA;IAAAA,GAAA,GAAAvF,CAAA;EAAA;EAAA,IAAA0H,GAAA;EAAA,IAAA1H,CAAA,SAAA0F,MAAA,CAAAiC,WAAA,IAAA3H,CAAA,SAAAyD,GAAA,IAAAzD,CAAA,SAAAsE,GAAA,IAAAtE,CAAA,SAAA2E,GAAA,IAAA3E,CAAA,SAAAuF,GAAA,IAAAvF,CAAA,SAAAsC,EAAA;IAjDToF,GAAA,gBAAA/H,KAAA,CAAC/B,IAAI;MAAQmJ,KAAkB,EAAlBrB,MAAM,CAAAiC,WAAY;MAAAnC,QAAA,GAC7BlD,EAGO,EACPK,EAAW,EACXc,GAYY,EACZQ,GAAW,EACVK,GAKA,EACAK,GAUA,EACDY,GAYO;IAAA,CACH,CAAC;IAAAvF,CAAA,OAAA0F,MAAA,CAAAiC,WAAA;IAAA3H,CAAA,OAAAyD,GAAA;IAAAzD,CAAA,OAAAsE,GAAA;IAAAtE,CAAA,OAAA2E,GAAA;IAAA3E,CAAA,OAAAuF,GAAA;IAAAvF,CAAA,OAAAsC,EAAA;IAAAtC,CAAA,OAAA0H,GAAA;EAAA;IAAAA,GAAA,GAAA1H,CAAA;EAAA;EAAA,OAlDP0H,GAkDO;AAAA;AAIX,MAAM/B,SAAS,GAAGA,CAAA;EAAA,MAAA3F,CAAA,GAAAC,EAAA;EAChB;IAAA2H;EAAA,IAAmBrJ,QAAQ,CAAC,CAAC;EAAA,IAAAwB,EAAA;EAAA,IAAAC,CAAA,QAAA4H,MAAA,CAAAC,eAAA,IAAA7H,CAAA,QAAA4H,MAAA,CAAAE,uBAAA;IAItB/H,EAAA,GAAApC,UAAU,CAAAoK,MAAO,CAAC;MAAAJ,WAAA,EACV;QAAAK,aAAA,EAJQ,EAAE;QAAAC,IAAA,EAMf;MACR,CAAC;MAAAjB,SAAA,EACU;QAAAkB,OAAA,EARU,EAAE;QAAAC,aAAA,EAUN,KAAK;QAAAC,GAAA,EACf;MACP,CAAC;MAAAtB,SAAA,EACU;QAAAuB,QAAA,EACC,EAAE;QAAAJ,IAAA,EACN;MACR,CAAC;MAAAZ,YAAA,EACa;QAAAa,OAAA,EAjBO,EAAE;QAAAF,aAAA,EAmBNvK,QAAQ,CAAA6K,MAAO,CAAC;UAAAC,GAAA,EAnBZ,EAAE;UAAAC,OAAA,EAqBV;QACX,CAAC,CAAC;QAAAJ,GAAA,EACG3K,QAAQ,CAAA6K,MAAO,CAAC;UAAAC,GAAA,EACd,CAAC;UAAAC,OAAA,EACG;QACX,CAAC;MACH,CAAC;MAAAtB,UAAA,EACW;QAAAmB,QAAA,EACA,EAAE;QAAAI,KAAA,EACLb,MAAM,CAAAE;MACf,CAAC;MAAAb,QAAA,EACS;QAAAwB,KAAA,EACDb,MAAM,CAAAC;MACf,CAAC;MAAAJ,aAAA,EACc;QAAAS,OAAA,EAnCM,EAAE;QAAAF,aAAA,EAqCN;MACjB,CAAC;MAAAV,MAAA,EACO;QAAAoB,SAAA,EACK;MACb;IACF,CAAC,CAAC;IAAA1I,CAAA,MAAA4H,MAAA,CAAAC,eAAA;IAAA7H,CAAA,MAAA4H,MAAA,CAAAE,uBAAA;IAAA9H,CAAA,MAAAD,EAAA;EAAA;IAAAA,EAAA,GAAAC,CAAA;EAAA;EAAA,OAvCKD,EAuCL;AAAA,CACH","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"groups_form.js","names":["StackActions","useNavigation","React","useCallback","useMemo","useRef","useState","Platform","Pressable","StyleSheet","View","Banner","ChildNotice","Heading","Text","ActionButton","KeyboardView","AutoFocusAwareTextInput","useApiClient","useCurrentPerson","useSuspenseGet","useTheme","useGroupChatConversationPayload","useGroupMembersForNewConversation","useGroupsConversationCreate","patchConversationAvatar","useConversationValidate","availableFeatures","useFeatures","useMyGender","useUploadClient","pluralize","genderDisplayLabel","Haptic","AvatarSelectionRow","Divider","FormList","GenderFilterToggle","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","GroupsForm","t0","$","_c","groupId","chat_group_graph_id","avatarSelection","navigation","apiClient","uploadClient","title","setTitle","genderFilterEnabled","setGenderFilterEnabled","featureEnabled","t1","custom_conversation_avatars","customAvatarsEnabled","t2","conversation_safety_lock","safetyLockEnabled","isFeatureEnabled","genderFilterAvailable","genderId","genderValue","isFetching","genderFetching","t3","t4","Symbol","for","fields","Group","t5","url","data","app","group","activeGenderId","activeGenderValue","t6","enabled","payload","isLoading","isLoadingPayload","t7","warnings","validationPending","t8","id","gender","groupMemberships","t9","name","displayLabel","defaultTitle","shouldAutoPopulateTitle","shouldClearAutoPopulatedTitle","handleGenderToggle","t10","conversationId","dispatch","popTo","conversation_id","notificationSuccess","kind","handleCreateSuccess","t11","onSuccess","mutate","handleSave","isPending","t12","undefined","t13","FormContent","filteredMemberCount","adultMembers","length","t14","fetchNextPage","isFetchingNextPage","memberData","loadingMore","onEndReached","listEmptyText","t15","t16","t17","disabled","onPress","infoText","t18","children","onGenderToggle","styles","useStyles","inputRef","currentPerson","membershipsCount","m","find","myGroupsMembership","isLeader","role","childMembers","hasChildren","displayCount","memberHeaderLabel","showMemberError","isError","current","focus","handleTitleSectionPress","variant","groupName","style","toSection","required","titleInput","placeholder","autoFocus","titleSection","banner","appearance","description","memberSection","formContent","colors","statusErrorText","textColorDefaultPrimary","create","paddingBottom","flex","padding","flexDirection","gap","fontSize","select","ios","android","color","marginTop"],"sources":["../../../../src/screens/conversation_new/components/groups_form.tsx"],"sourcesContent":["import { StackActions, useNavigation } from '@react-navigation/native'\nimport React, { useCallback, useMemo, useRef, useState } from 'react'\nimport { Platform, Pressable, StyleSheet, TextInput, View } from 'react-native'\nimport { Banner, ChildNotice, Heading, Text } from '../../../components'\nimport { ActionButton } from '../../../components/display/action_button'\nimport { KeyboardView } from '../../../components/display/keyboard_view'\nimport { AutoFocusAwareTextInput } from '../../../components/display/text_input'\nimport { useApiClient, useCurrentPerson, useSuspenseGet, useTheme } from '../../../hooks'\nimport { useGroupChatConversationPayload } from '../../../hooks/groups/use_group_chat_conversation_payload'\nimport {\n GroupMembersForNewConversationResult,\n useGroupMembersForNewConversation,\n} from '../../../hooks/groups/use_group_members_for_new_conversation'\nimport { useGroupsConversationCreate } from '../../../hooks/groups/use_groups_conversation_create'\nimport {\n type AvatarUpdatePayload,\n patchConversationAvatar,\n} from '../../../hooks/use_conversation_avatar_update'\nimport { useConversationValidate } from '../../../hooks/use_conversation_validate'\nimport { availableFeatures, useFeatures } from '../../../hooks/use_features'\nimport { useMyGender } from '../../../hooks/use_my_gender'\nimport { useUploadClient } from '../../../hooks/use_upload_client'\nimport { GroupsGroupResource } from '../../../types'\nimport { GraphId } from '../../../types/resources/group_resource'\nimport { pluralize } from '../../../utils'\nimport { genderDisplayLabel } from '../../../utils/gender_display_label'\nimport { Haptic } from '../../../utils/native_adapters'\nimport { AvatarSelectionRow } from './avatar_selection_row'\nimport { Divider, FormList } from './form_list'\nimport { GenderFilterToggle } from './gender_filter_toggle'\n\ntype GroupsFormProps = {\n groupId: number\n chat_group_graph_id?: GraphId\n avatarSelection?: AvatarUpdatePayload\n}\n\nexport const GroupsForm = ({ groupId, chat_group_graph_id, avatarSelection }: GroupsFormProps) => {\n const navigation = useNavigation()\n const apiClient = useApiClient()\n const uploadClient = useUploadClient()\n const [title, setTitle] = useState('')\n const [genderFilterEnabled, setGenderFilterEnabled] = useState(false)\n const { featureEnabled } = useFeatures()\n const customAvatarsEnabled = featureEnabled(availableFeatures.custom_conversation_avatars)\n const safetyLockEnabled = featureEnabled(availableFeatures.conversation_safety_lock)\n const {\n isFeatureEnabled: genderFilterAvailable,\n genderId,\n genderValue,\n isFetching: genderFetching,\n } = useMyGender()\n const { data: group } = useSuspenseGet<GroupsGroupResource>({\n url: `/me/groups/${groupId}`,\n data: {\n fields: {\n Group: [],\n },\n },\n app: 'groups',\n })\n\n const activeGenderId = genderFilterEnabled ? genderId : null\n const activeGenderValue = genderFilterEnabled ? genderValue : null\n\n const { payload, isLoading: isLoadingPayload } = useGroupChatConversationPayload({\n groupId,\n enabled: safetyLockEnabled,\n })\n\n const { warnings, validationPending } = useConversationValidate({\n payload,\n isLoadingPayload,\n genderId: activeGenderId,\n enabled: safetyLockEnabled,\n })\n\n const groupMemberships = useGroupMembersForNewConversation({\n id: groupId,\n gender: activeGenderValue,\n })\n\n const handleGenderToggle = (enabled: boolean) => {\n const displayLabel = genderValue ? genderDisplayLabel(genderValue) : ''\n const defaultTitle = `${group.name} (${displayLabel})`\n const shouldAutoPopulateTitle = enabled && genderValue && title === ''\n const shouldClearAutoPopulatedTitle = !enabled && title === defaultTitle\n\n setGenderFilterEnabled(enabled)\n\n if (shouldAutoPopulateTitle) {\n setTitle(defaultTitle)\n } else if (shouldClearAutoPopulatedTitle) {\n setTitle('')\n }\n }\n\n const handleCreateSuccess = useCallback(\n (conversationId: number) => {\n navigation.dispatch(\n StackActions.popTo('Conversation', {\n conversation_id: conversationId,\n chat_group_graph_id,\n })\n )\n Haptic.notificationSuccess()\n\n if (avatarSelection && avatarSelection.kind !== 'clear') {\n patchConversationAvatar(apiClient, uploadClient, conversationId, avatarSelection)\n }\n },\n [apiClient, avatarSelection, chat_group_graph_id, navigation, uploadClient]\n )\n\n const { mutate: handleSave, isPending } = useGroupsConversationCreate({\n groupId,\n title,\n genderId: activeGenderId,\n onSuccess: handleCreateSuccess,\n })\n\n return (\n <KeyboardView>\n <FormList\n memberData={groupMemberships.adultMembers}\n loadingMore={groupMemberships.isFetchingNextPage}\n onEndReached={groupMemberships.fetchNextPage}\n listEmptyText={groupMemberships.isLoading ? 'Loading members...' : undefined}\n FormContent={\n <FormContent\n group={group}\n title={title}\n setTitle={setTitle}\n genderFilterAvailable={genderFilterAvailable}\n genderFilterEnabled={genderFilterEnabled}\n genderValue={genderValue}\n genderFetching={genderFetching}\n onGenderToggle={handleGenderToggle}\n groupMemberships={groupMemberships}\n filteredMemberCount={groupMemberships.adultMembers.length}\n avatarSelection={avatarSelection}\n customAvatarsEnabled={customAvatarsEnabled}\n />\n }\n />\n <ActionButton\n disabled={!title || isPending || validationPending || warnings.length > 0}\n title=\"Start Conversation\"\n onPress={() => handleSave()}\n infoText=\"Conversation will be automatically updated if any members are added or removed from this group.\"\n warnings={warnings}\n />\n </KeyboardView>\n )\n}\n\ninterface FormContentProps {\n group: GroupsGroupResource\n title: string\n setTitle: (title: string) => void\n genderFilterAvailable: boolean\n genderFilterEnabled: boolean\n genderValue: string | null\n genderFetching: boolean\n onGenderToggle: (enabled: boolean) => void\n groupMemberships: GroupMembersForNewConversationResult\n filteredMemberCount: number\n avatarSelection?: AvatarUpdatePayload\n customAvatarsEnabled: boolean\n}\n\nfunction FormContent({\n group,\n title,\n setTitle,\n genderFilterAvailable,\n genderFilterEnabled,\n genderValue,\n genderFetching,\n onGenderToggle,\n groupMemberships,\n filteredMemberCount,\n avatarSelection,\n customAvatarsEnabled,\n}: FormContentProps) {\n const styles = useStyles()\n const inputRef = useRef<TextInput>(null)\n const currentPerson = useCurrentPerson()\n const { name, membershipsCount } = group\n\n const myGroupsMembership = useMemo(\n () => groupMemberships.data.find(m => m.id === currentPerson.id),\n [groupMemberships.data, currentPerson.id]\n )\n const isLeader = myGroupsMembership?.role === 'leader'\n\n const childMembers = groupMemberships.childMembers\n const hasChildren = childMembers.length > 0\n const displayCount = genderFilterEnabled ? filteredMemberCount : membershipsCount\n const memberHeaderLabel = `${pluralize(displayCount, 'member')} selected`\n\n const showMemberError = groupMemberships.isError\n\n const handleTitleSectionPress = useCallback(() => {\n inputRef.current?.focus()\n }, [])\n\n return (\n <View style={styles.formContent}>\n <View style={styles.toSection}>\n <Heading variant=\"h3\">To:</Heading>\n <Text style={styles.groupName}>{name}</Text>\n </View>\n <Divider />\n <Pressable style={styles.titleSection} onPress={handleTitleSectionPress}>\n <Heading variant=\"h3\">\n Title <Text style={styles.required}>*</Text>\n </Heading>\n <AutoFocusAwareTextInput\n placeholder=\"Topic of conversation\"\n value={title}\n onChangeText={setTitle}\n style={styles.titleInput}\n autoFocus={true}\n inputRef={inputRef}\n />\n </Pressable>\n <Divider />\n {customAvatarsEnabled && (\n <>\n <AvatarSelectionRow avatarSelection={avatarSelection} />\n <Divider />\n </>\n )}\n {genderFilterAvailable && (\n <>\n <GenderFilterToggle\n genderValue={genderValue}\n isFetching={genderFetching}\n enabled={genderFilterEnabled}\n onToggle={onGenderToggle}\n />\n <Divider />\n </>\n )}\n <View style={styles.memberSection}>\n <Heading variant=\"h3\">{memberHeaderLabel}</Heading>\n {hasChildren && (\n <ChildNotice childMembers={childMembers} showMembers={isLeader} style={styles.banner} />\n )}\n {showMemberError && (\n <Banner\n appearance=\"error\"\n description=\"There was an issue loading group members, please refresh and try again.\"\n style={styles.banner}\n />\n )}\n </View>\n </View>\n )\n}\n\nconst useStyles = () => {\n const { colors } = useTheme()\n const sectionPadding = 16\n const inputPadding = 8\n\n return StyleSheet.create({\n formContent: {\n paddingBottom: sectionPadding,\n flex: 1,\n },\n toSection: {\n padding: sectionPadding,\n flexDirection: 'row',\n gap: 8,\n },\n groupName: {\n fontSize: 18,\n flex: 1,\n },\n titleSection: {\n padding: sectionPadding,\n paddingBottom: Platform.select({\n ios: sectionPadding,\n android: sectionPadding - inputPadding,\n }),\n gap: Platform.select({\n ios: 8,\n android: 0,\n }),\n },\n titleInput: {\n fontSize: 18,\n color: colors.textColorDefaultPrimary,\n },\n required: {\n color: colors.statusErrorText,\n },\n memberSection: {\n padding: sectionPadding,\n paddingBottom: 0,\n },\n banner: {\n marginTop: 16,\n },\n })\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversation_screen.d.ts","sourceRoot":"","sources":["../../src/screens/conversation_screen.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAe,gBAAgB,EAAqB,MAAM,4BAA4B,CAAA;AAC7F,OAAO,EAGL,iBAAiB,EAIlB,MAAM,0BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"conversation_screen.d.ts","sourceRoot":"","sources":["../../src/screens/conversation_screen.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAe,gBAAgB,EAAqB,MAAM,4BAA4B,CAAA;AAC7F,OAAO,EAGL,iBAAiB,EAIlB,MAAM,0BAA0B,CAAA;AAqCjC,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAA;AAIjF,MAAM,MAAM,sBAAsB,GAAG;IACnC,eAAe,EAAE,MAAM,CAAA;IACvB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAClC,sBAAsB,CAAC,EAAE,MAAM,CAAA;IAC/B,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAClC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,CAAC,EAAE,yBAAyB,CAAA;IACjC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG,iBAAiB,CAAC,sBAAsB,CAAC,CAAA;AAE/E,wBAAgB,kBAAkB,CAAC,EAAE,KAAK,EAAE,EAAE,uBAAuB,2CAkBpE;AAwND,UAAU,4BAA6B,SAAQ,gBAAgB;IAC7D,eAAe,EAAE,MAAM,CAAA;IACvB,KAAK,CAAC,EAAE,yBAAyB,CAAA;IACjC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB;AAED,eAAO,MAAM,uBAAuB,GAAI,8DAOrC,4BAA4B,4CAqC9B,CAAA"}
|
|
@@ -23,6 +23,7 @@ import { useConversationMessagesJoltEvents } from '../hooks/use_conversation_mes
|
|
|
23
23
|
import { useMarkLatestMessageRead } from '../hooks/use_mark_latest_message_read';
|
|
24
24
|
import { analyticsEvents, normalizeAnalyticsMetadata, usePublishProductAnalyticsEvent } from '../hooks/use_product_analytics';
|
|
25
25
|
import { useRestAwayFromDismissEdge } from '../hooks/use_rest_away_from_dismiss_edge';
|
|
26
|
+
import { useUnarchiveConversationAction } from '../hooks/use_unarchive_conversation_action';
|
|
26
27
|
import { useVideoModerationJoltEvents } from '../hooks/use_video_moderation_jolt_events';
|
|
27
28
|
import { Log } from '../utils';
|
|
28
29
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
@@ -296,7 +297,7 @@ function ConversationScreenContent(t0) {
|
|
|
296
297
|
});
|
|
297
298
|
} else {
|
|
298
299
|
navigation.setParams({
|
|
299
|
-
title,
|
|
300
|
+
title: title ?? undefined,
|
|
300
301
|
badge: badges?.[0],
|
|
301
302
|
deleted: conversation?.deleted,
|
|
302
303
|
muted
|
|
@@ -566,21 +567,23 @@ function ConversationBottomBar(t0) {
|
|
|
566
567
|
onBeforeSubmit
|
|
567
568
|
} = t0;
|
|
568
569
|
const messageLink = useMessageAvailableMembersAction(conversation);
|
|
570
|
+
const unarchiveAction = useUnarchiveConversationAction(conversation);
|
|
569
571
|
if (conversation.disabled) {
|
|
570
572
|
const t1 = conversation.disabledMessage ?? null;
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
573
|
+
const t2 = unarchiveAction ?? messageLink;
|
|
574
|
+
let t3;
|
|
575
|
+
if ($[0] !== t1 || $[1] !== t2) {
|
|
576
|
+
t3 = /*#__PURE__*/_jsx(ConversationDisabledBanner, {
|
|
574
577
|
message: t1,
|
|
575
|
-
|
|
578
|
+
action: t2
|
|
576
579
|
});
|
|
577
|
-
$[0] =
|
|
578
|
-
$[1] =
|
|
579
|
-
$[2] =
|
|
580
|
+
$[0] = t1;
|
|
581
|
+
$[1] = t2;
|
|
582
|
+
$[2] = t3;
|
|
580
583
|
} else {
|
|
581
|
-
|
|
584
|
+
t3 = $[2];
|
|
582
585
|
}
|
|
583
|
-
return
|
|
586
|
+
return t3;
|
|
584
587
|
}
|
|
585
588
|
if (!canReply) {
|
|
586
589
|
let t1;
|