@planningcenter/chat-react-native 3.42.2-qa-staging.2 → 3.42.2-qa-821.1
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/attachments/attachment_card.d.ts +3 -3
- package/build/components/conversation/attachments/attachment_card.d.ts.map +1 -1
- package/build/components/conversation/attachments/attachment_card.js +3 -7
- package/build/components/conversation/attachments/attachment_card.js.map +1 -1
- package/build/components/conversation/attachments/attachment_deleting_overlay.d.ts +1 -2
- package/build/components/conversation/attachments/attachment_deleting_overlay.d.ts.map +1 -1
- package/build/components/conversation/attachments/attachment_deleting_overlay.js +12 -7
- package/build/components/conversation/attachments/attachment_deleting_overlay.js.map +1 -1
- package/build/components/conversation/attachments/audio_attachment.d.ts +1 -2
- package/build/components/conversation/attachments/audio_attachment.d.ts.map +1 -1
- package/build/components/conversation/attachments/audio_attachment.js +6 -23
- package/build/components/conversation/attachments/audio_attachment.js.map +1 -1
- package/build/components/conversation/attachments/expanded_link.d.ts +1 -2
- package/build/components/conversation/attachments/expanded_link.d.ts.map +1 -1
- package/build/components/conversation/attachments/expanded_link.js +2 -8
- package/build/components/conversation/attachments/expanded_link.js.map +1 -1
- package/build/components/conversation/attachments/generic_file_attachment.d.ts +1 -2
- package/build/components/conversation/attachments/generic_file_attachment.d.ts.map +1 -1
- package/build/components/conversation/attachments/generic_file_attachment.js +2 -12
- package/build/components/conversation/attachments/generic_file_attachment.js.map +1 -1
- package/build/components/conversation/attachments/giphy_attachment.d.ts +1 -2
- package/build/components/conversation/attachments/giphy_attachment.d.ts.map +1 -1
- package/build/components/conversation/attachments/giphy_attachment.js +2 -7
- package/build/components/conversation/attachments/giphy_attachment.js.map +1 -1
- package/build/components/conversation/attachments/image_attachment.d.ts +1 -2
- package/build/components/conversation/attachments/image_attachment.d.ts.map +1 -1
- package/build/components/conversation/attachments/image_attachment.js +16 -53
- package/build/components/conversation/attachments/image_attachment.js.map +1 -1
- package/build/components/conversation/attachments/video_attachment.d.ts +1 -2
- package/build/components/conversation/attachments/video_attachment.d.ts.map +1 -1
- package/build/components/conversation/attachments/video_attachment.js +3 -13
- package/build/components/conversation/attachments/video_attachment.js.map +1 -1
- package/build/components/conversation/conversation_start_banner.d.ts +1 -2
- package/build/components/conversation/conversation_start_banner.d.ts.map +1 -1
- package/build/components/conversation/conversation_start_banner.js +2 -14
- package/build/components/conversation/conversation_start_banner.js.map +1 -1
- package/build/components/conversation/empty_conversation_blank_state.d.ts +1 -1
- package/build/components/conversation/empty_conversation_blank_state.d.ts.map +1 -1
- package/build/components/conversation/empty_conversation_blank_state.js +2 -9
- package/build/components/conversation/empty_conversation_blank_state.js.map +1 -1
- package/build/components/conversation/jump_to_bottom_button.d.ts +1 -1
- package/build/components/conversation/jump_to_bottom_button.d.ts.map +1 -1
- package/build/components/conversation/jump_to_bottom_button.js +2 -10
- package/build/components/conversation/jump_to_bottom_button.js.map +1 -1
- package/build/components/conversation/message.d.ts +1 -2
- package/build/components/conversation/message.d.ts.map +1 -1
- package/build/components/conversation/message.js +2 -53
- package/build/components/conversation/message.js.map +1 -1
- package/build/components/conversation/message_attachments.d.ts +1 -2
- package/build/components/conversation/message_attachments.d.ts.map +1 -1
- package/build/components/conversation/message_attachments.js +17 -21
- package/build/components/conversation/message_attachments.js.map +1 -1
- package/build/components/conversation/message_form/message_form_attachment_file.d.ts +1 -2
- package/build/components/conversation/message_form/message_form_attachment_file.d.ts.map +1 -1
- package/build/components/conversation/message_form/message_form_attachment_file.js +2 -2
- package/build/components/conversation/message_form/message_form_attachment_file.js.map +1 -1
- package/build/components/conversation/message_form/message_form_attachment_image.d.ts +1 -2
- package/build/components/conversation/message_form/message_form_attachment_image.d.ts.map +1 -1
- package/build/components/conversation/message_form/message_form_attachment_image.js +2 -2
- package/build/components/conversation/message_form/message_form_attachment_image.js.map +1 -1
- package/build/components/conversation/message_form/message_form_attachment_video.d.ts +1 -2
- package/build/components/conversation/message_form/message_form_attachment_video.d.ts.map +1 -1
- package/build/components/conversation/message_form/message_form_attachment_video.js +2 -2
- package/build/components/conversation/message_form/message_form_attachment_video.js.map +1 -1
- package/build/components/conversation/message_form.d.ts +5 -6
- package/build/components/conversation/message_form.d.ts.map +1 -1
- package/build/components/conversation/message_form.js +20 -82
- package/build/components/conversation/message_form.js.map +1 -1
- package/build/components/conversation/message_markdown.d.ts +1 -2
- package/build/components/conversation/message_markdown.d.ts.map +1 -1
- package/build/components/conversation/message_markdown.js +8 -16
- package/build/components/conversation/message_markdown.js.map +1 -1
- package/build/components/conversation/message_reaction.d.ts +1 -2
- package/build/components/conversation/message_reaction.d.ts.map +1 -1
- package/build/components/conversation/message_reaction.js +3 -5
- package/build/components/conversation/message_reaction.js.map +1 -1
- package/build/components/conversation/message_read_receipts.d.ts +1 -2
- package/build/components/conversation/message_read_receipts.d.ts.map +1 -1
- package/build/components/conversation/message_read_receipts.js +3 -13
- package/build/components/conversation/message_read_receipts.js.map +1 -1
- package/build/components/conversation/messages_disabled_banners.d.ts +3 -3
- package/build/components/conversation/messages_disabled_banners.d.ts.map +1 -1
- package/build/components/conversation/messages_disabled_banners.js +5 -8
- package/build/components/conversation/messages_disabled_banners.js.map +1 -1
- package/build/components/conversation/reply_connectors.d.ts +2 -2
- package/build/components/conversation/reply_connectors.d.ts.map +1 -1
- package/build/components/conversation/reply_connectors.js +18 -50
- package/build/components/conversation/reply_connectors.js.map +1 -1
- package/build/components/conversation/reply_shadow_message.d.ts +1 -2
- package/build/components/conversation/reply_shadow_message.d.ts.map +1 -1
- package/build/components/conversation/reply_shadow_message.js +16 -46
- package/build/components/conversation/reply_shadow_message.js.map +1 -1
- package/build/components/conversation/system_message.d.ts +1 -2
- package/build/components/conversation/system_message.d.ts.map +1 -1
- package/build/components/conversation/system_message.js +3 -12
- package/build/components/conversation/system_message.js.map +1 -1
- package/build/components/conversation/typing_indicator.d.ts +1 -2
- package/build/components/conversation/typing_indicator.d.ts.map +1 -1
- package/build/components/conversation/typing_indicator.js +3 -13
- package/build/components/conversation/typing_indicator.js.map +1 -1
- package/build/components/conversations/conversation_actions.d.ts +2 -2
- package/build/components/conversations/conversation_actions.d.ts.map +1 -1
- package/build/components/conversations/conversation_actions.js +4 -10
- package/build/components/conversations/conversation_actions.js.map +1 -1
- package/build/components/conversations/conversation_preview.d.ts +2 -3
- package/build/components/conversations/conversation_preview.d.ts.map +1 -1
- package/build/components/conversations/conversation_preview.js +12 -76
- package/build/components/conversations/conversation_preview.js.map +1 -1
- package/build/components/conversations/conversations.d.ts +1 -1
- package/build/components/conversations/conversations.d.ts.map +1 -1
- package/build/components/conversations/conversations.js +16 -17
- package/build/components/conversations/conversations.js.map +1 -1
- package/build/components/conversations/conversations_blank_state.d.ts +1 -2
- package/build/components/conversations/conversations_blank_state.d.ts.map +1 -1
- package/build/components/conversations/conversations_blank_state.js +2 -12
- package/build/components/conversations/conversations_blank_state.js.map +1 -1
- package/build/components/conversations/mute_indicator.d.ts +1 -2
- package/build/components/conversations/mute_indicator.d.ts.map +1 -1
- package/build/components/conversations/mute_indicator.js +2 -2
- package/build/components/conversations/mute_indicator.js.map +1 -1
- package/build/components/conversations/swipeable_toggle_button.d.ts +1 -2
- package/build/components/conversations/swipeable_toggle_button.d.ts.map +1 -1
- package/build/components/conversations/swipeable_toggle_button.js +3 -10
- package/build/components/conversations/swipeable_toggle_button.js.map +1 -1
- package/build/components/conversations/unread_count_badge.d.ts +2 -4
- package/build/components/conversations/unread_count_badge.d.ts.map +1 -1
- package/build/components/conversations/unread_count_badge.js +7 -12
- package/build/components/conversations/unread_count_badge.js.map +1 -1
- package/build/components/display/action_button.d.ts +1 -1
- package/build/components/display/action_button.d.ts.map +1 -1
- package/build/components/display/action_button.js +3 -13
- package/build/components/display/action_button.js.map +1 -1
- package/build/components/display/adult_requirement_notice.d.ts +1 -2
- package/build/components/display/adult_requirement_notice.d.ts.map +1 -1
- package/build/components/display/adult_requirement_notice.js +2 -4
- package/build/components/display/adult_requirement_notice.js.map +1 -1
- package/build/components/display/avatar.d.ts +1 -2
- package/build/components/display/avatar.d.ts.map +1 -1
- package/build/components/display/avatar.js +2 -7
- package/build/components/display/avatar.js.map +1 -1
- package/build/components/display/avatar_group.d.ts +1 -2
- package/build/components/display/avatar_group.d.ts.map +1 -1
- package/build/components/display/avatar_group.js +2 -9
- package/build/components/display/avatar_group.js.map +1 -1
- package/build/components/display/badge.d.ts +1 -2
- package/build/components/display/badge.d.ts.map +1 -1
- package/build/components/display/badge.js +6 -37
- package/build/components/display/badge.js.map +1 -1
- package/build/components/display/banner.d.ts +3 -3
- package/build/components/display/banner.d.ts.map +1 -1
- package/build/components/display/banner.js +4 -11
- package/build/components/display/banner.js.map +1 -1
- package/build/components/display/banner_collapsible.d.ts +2 -2
- package/build/components/display/banner_collapsible.d.ts.map +1 -1
- package/build/components/display/banner_collapsible.js +2 -10
- package/build/components/display/banner_collapsible.js.map +1 -1
- package/build/components/display/button.d.ts +1 -2
- package/build/components/display/button.d.ts.map +1 -1
- package/build/components/display/button.js +3 -14
- package/build/components/display/button.js.map +1 -1
- package/build/components/display/child_notice.d.ts +1 -2
- package/build/components/display/child_notice.d.ts.map +1 -1
- package/build/components/display/child_notice.js +3 -15
- package/build/components/display/child_notice.js.map +1 -1
- package/build/components/display/conversation_avatar.d.ts +1 -2
- package/build/components/display/conversation_avatar.d.ts.map +1 -1
- package/build/components/display/conversation_avatar.js +5 -9
- package/build/components/display/conversation_avatar.js.map +1 -1
- package/build/components/display/emoji_avatar.d.ts +1 -2
- package/build/components/display/emoji_avatar.d.ts.map +1 -1
- package/build/components/display/emoji_avatar.js +2 -12
- package/build/components/display/emoji_avatar.js.map +1 -1
- package/build/components/display/file_attachment_preview.d.ts +1 -1
- package/build/components/display/file_attachment_preview.d.ts.map +1 -1
- package/build/components/display/file_attachment_preview.js +3 -17
- package/build/components/display/file_attachment_preview.js.map +1 -1
- package/build/components/display/heading.d.ts +1 -2
- package/build/components/display/heading.d.ts.map +1 -1
- package/build/components/display/heading.js +2 -4
- package/build/components/display/heading.js.map +1 -1
- package/build/components/display/icon.d.ts +1 -2
- package/build/components/display/icon.d.ts.map +1 -1
- package/build/components/display/icon.js +4 -4
- package/build/components/display/icon.js.map +1 -1
- package/build/components/display/icon_avatar.d.ts +1 -2
- package/build/components/display/icon_avatar.d.ts.map +1 -1
- package/build/components/display/icon_avatar.js +2 -12
- package/build/components/display/icon_avatar.js.map +1 -1
- package/build/components/display/icon_button.d.ts +1 -2
- package/build/components/display/icon_button.d.ts.map +1 -1
- package/build/components/display/icon_button.js +3 -5
- package/build/components/display/icon_button.js.map +1 -1
- package/build/components/display/image.d.ts +1 -2
- package/build/components/display/image.d.ts.map +1 -1
- package/build/components/display/image.js +3 -7
- package/build/components/display/image.js.map +1 -1
- package/build/components/display/image_attachment_preview.d.ts +1 -1
- package/build/components/display/image_attachment_preview.d.ts.map +1 -1
- package/build/components/display/image_attachment_preview.js +2 -7
- package/build/components/display/image_attachment_preview.js.map +1 -1
- package/build/components/display/keyboard_view.d.ts +1 -2
- package/build/components/display/keyboard_view.d.ts.map +1 -1
- package/build/components/display/keyboard_view.js +4 -9
- package/build/components/display/keyboard_view.js.map +1 -1
- package/build/components/display/person.d.ts +1 -2
- package/build/components/display/person.d.ts.map +1 -1
- package/build/components/display/person.js +2 -12
- package/build/components/display/person.js.map +1 -1
- package/build/components/display/platform_modal_header_buttons.d.ts +3 -3
- package/build/components/display/platform_modal_header_buttons.d.ts.map +1 -1
- package/build/components/display/platform_modal_header_buttons.js +5 -10
- package/build/components/display/platform_modal_header_buttons.js.map +1 -1
- package/build/components/display/pressable_row.d.ts +1 -1
- package/build/components/display/pressable_row.d.ts.map +1 -1
- package/build/components/display/pressable_row.js +2 -7
- package/build/components/display/pressable_row.js.map +1 -1
- package/build/components/display/spinner.d.ts +1 -2
- package/build/components/display/spinner.d.ts.map +1 -1
- package/build/components/display/spinner.js +3 -9
- package/build/components/display/spinner.js.map +1 -1
- package/build/components/display/switch.d.ts +1 -2
- package/build/components/display/switch.d.ts.map +1 -1
- package/build/components/display/switch.js +2 -2
- package/build/components/display/switch.js.map +1 -1
- package/build/components/display/tabs.d.ts +1 -1
- package/build/components/display/tabs.d.ts.map +1 -1
- package/build/components/display/tabs.js +21 -31
- package/build/components/display/tabs.js.map +1 -1
- package/build/components/display/text.d.ts +1 -2
- package/build/components/display/text.d.ts.map +1 -1
- package/build/components/display/text.js +2 -4
- package/build/components/display/text.js.map +1 -1
- package/build/components/display/text_button.d.ts +1 -2
- package/build/components/display/text_button.d.ts.map +1 -1
- package/build/components/display/text_button.js +3 -8
- package/build/components/display/text_button.js.map +1 -1
- package/build/components/display/text_inline_button.d.ts +1 -2
- package/build/components/display/text_inline_button.d.ts.map +1 -1
- package/build/components/display/text_inline_button.js +4 -5
- package/build/components/display/text_inline_button.js.map +1 -1
- package/build/components/display/text_input.d.ts +1 -1
- package/build/components/display/text_input.d.ts.map +1 -1
- package/build/components/display/text_input.js +2 -1
- package/build/components/display/text_input.js.map +1 -1
- package/build/components/display/toggle_button.d.ts +1 -2
- package/build/components/display/toggle_button.d.ts.map +1 -1
- package/build/components/display/toggle_button.js +3 -9
- package/build/components/display/toggle_button.js.map +1 -1
- package/build/components/display/video_attachment_preview.d.ts +1 -1
- package/build/components/display/video_attachment_preview.d.ts.map +1 -1
- package/build/components/display/video_attachment_preview.js +3 -20
- package/build/components/display/video_attachment_preview.js.map +1 -1
- package/build/components/group_conversation_list.d.ts +1 -1
- package/build/components/group_conversation_list.d.ts.map +1 -1
- package/build/components/group_conversation_list.js +4 -14
- package/build/components/group_conversation_list.js.map +1 -1
- package/build/components/page/component_error_boundary.d.ts +2 -2
- package/build/components/page/component_error_boundary.d.ts.map +1 -1
- package/build/components/page/component_error_boundary.js +2 -4
- package/build/components/page/component_error_boundary.js.map +1 -1
- package/build/components/page/loading.d.ts +1 -2
- package/build/components/page/loading.d.ts.map +1 -1
- package/build/components/page/loading.js +2 -4
- package/build/components/page/loading.js.map +1 -1
- package/build/components/page/page_error_boundary.d.ts +2 -2
- package/build/components/page/page_error_boundary.d.ts.map +1 -1
- package/build/components/page/page_error_boundary.js +11 -32
- package/build/components/page/page_error_boundary.js.map +1 -1
- package/build/components/primitive/avatar_primitive.js +14 -41
- package/build/components/primitive/avatar_primitive.js.map +1 -1
- package/build/components/primitive/banner_primitive.js +10 -18
- package/build/components/primitive/banner_primitive.js.map +1 -1
- package/build/components/primitive/blank_state_primitive.js +8 -12
- package/build/components/primitive/blank_state_primitive.js.map +1 -1
- package/build/components/primitive/form_sheet.d.ts +1 -1
- package/build/components/primitive/form_sheet.d.ts.map +1 -1
- package/build/components/primitive/form_sheet.js +9 -22
- package/build/components/primitive/form_sheet.js.map +1 -1
- package/build/components/safe_area_modal.d.ts +1 -1
- package/build/components/safe_area_modal.d.ts.map +1 -1
- package/build/components/safe_area_modal.js +2 -3
- package/build/components/safe_area_modal.js.map +1 -1
- package/build/contexts/api_provider.d.ts +1 -2
- package/build/contexts/api_provider.d.ts.map +1 -1
- package/build/contexts/api_provider.js +3 -5
- package/build/contexts/api_provider.js.map +1 -1
- package/build/contexts/chat_context.d.ts +1 -1
- package/build/contexts/chat_context.d.ts.map +1 -1
- package/build/contexts/chat_context.js +2 -1
- package/build/contexts/chat_context.js.map +1 -1
- package/build/contexts/conversation_context.d.ts +2 -2
- package/build/contexts/conversation_context.d.ts.map +1 -1
- package/build/contexts/conversation_context.js +3 -2
- package/build/contexts/conversation_context.js.map +1 -1
- package/build/contexts/conversations_context.d.ts +2 -2
- package/build/contexts/conversations_context.d.ts.map +1 -1
- package/build/contexts/conversations_context.js +3 -2
- package/build/contexts/conversations_context.js.map +1 -1
- package/build/contexts/session_context.d.ts +1 -1
- package/build/contexts/session_context.d.ts.map +1 -1
- package/build/contexts/session_context.js +3 -2
- package/build/contexts/session_context.js.map +1 -1
- package/build/hooks/use_animated_message_background_color.d.ts +2 -2
- package/build/hooks/use_conversation.d.ts +1 -1
- package/build/hooks/use_conversation.d.ts.map +1 -1
- package/build/hooks/use_conversation.js +0 -2
- package/build/hooks/use_conversation.js.map +1 -1
- package/build/hooks/use_conversation_jolt_events.d.ts.map +1 -1
- package/build/hooks/use_conversation_jolt_events.js +19 -4
- package/build/hooks/use_conversation_jolt_events.js.map +1 -1
- package/build/hooks/use_conversation_membership.d.ts +1 -1
- package/build/hooks/use_conversation_membership.d.ts.map +1 -1
- package/build/hooks/use_conversation_messages.d.ts +1 -0
- package/build/hooks/use_conversation_messages.d.ts.map +1 -1
- package/build/hooks/use_conversation_messages.js +2 -2
- package/build/hooks/use_conversation_messages.js.map +1 -1
- package/build/hooks/use_conversations_actions.d.ts +36 -36
- package/build/hooks/use_conversations_actions.d.ts.map +1 -1
- package/build/hooks/use_conversations_actions.js +1 -3
- package/build/hooks/use_conversations_actions.js.map +1 -1
- package/build/hooks/use_mark_latest_message_read.d.ts.map +1 -1
- package/build/hooks/use_mark_latest_message_read.js +4 -3
- package/build/hooks/use_mark_latest_message_read.js.map +1 -1
- package/build/hooks/use_person_settings.d.ts +1 -1
- package/build/index.d.ts +2 -1
- package/build/index.d.ts.map +1 -1
- package/build/index.js.map +1 -1
- package/build/navigation/chat_access_gate.d.ts +2 -2
- package/build/navigation/chat_access_gate.d.ts.map +1 -1
- package/build/navigation/chat_access_gate.js +6 -5
- package/build/navigation/chat_access_gate.js.map +1 -1
- package/build/navigation/index.d.ts +35 -36
- package/build/navigation/index.d.ts.map +1 -1
- package/build/navigation/index.js +19 -21
- package/build/navigation/index.js.map +1 -1
- package/build/navigation/screenLayout.d.ts +2 -2
- package/build/navigation/screenLayout.d.ts.map +1 -1
- package/build/navigation/screenLayout.js +3 -9
- package/build/navigation/screenLayout.js.map +1 -1
- package/build/polyfills/events/EventTarget.d.ts +1 -1
- package/build/polyfills/events/EventTarget.d.ts.map +1 -1
- package/build/polyfills/events/EventTarget.js.map +1 -1
- package/build/screens/age_check/age_check_required_screen.d.ts +1 -2
- package/build/screens/age_check/age_check_required_screen.d.ts.map +1 -1
- package/build/screens/age_check/age_check_required_screen.js +3 -46
- package/build/screens/age_check/age_check_required_screen.js.map +1 -1
- package/build/screens/age_check/age_check_underage_screen.d.ts +1 -2
- package/build/screens/age_check/age_check_underage_screen.d.ts.map +1 -1
- package/build/screens/age_check/age_check_underage_screen.js +2 -25
- package/build/screens/age_check/age_check_underage_screen.js.map +1 -1
- package/build/screens/age_check/components/age_check_select_birthdate_modal.d.ts +1 -2
- package/build/screens/age_check/components/age_check_select_birthdate_modal.d.ts.map +1 -1
- package/build/screens/age_check/components/age_check_select_birthdate_modal.js +6 -25
- package/build/screens/age_check/components/age_check_select_birthdate_modal.js.map +1 -1
- package/build/screens/attachment_actions/attachment_actions_screen.d.ts +1 -2
- package/build/screens/attachment_actions/attachment_actions_screen.d.ts.map +1 -1
- package/build/screens/attachment_actions/attachment_actions_screen.js +3 -5
- package/build/screens/attachment_actions/attachment_actions_screen.js.map +1 -1
- package/build/screens/avatar_picker/avatar_picker_screen.d.ts +1 -2
- package/build/screens/avatar_picker/avatar_picker_screen.d.ts.map +1 -1
- package/build/screens/avatar_picker/avatar_picker_screen.js +9 -36
- package/build/screens/avatar_picker/avatar_picker_screen.js.map +1 -1
- package/build/screens/avatar_picker/avatar_preview.d.ts +1 -1
- package/build/screens/avatar_picker/avatar_preview.d.ts.map +1 -1
- package/build/screens/avatar_picker/avatar_preview.js +5 -9
- package/build/screens/avatar_picker/avatar_preview.js.map +1 -1
- package/build/screens/avatar_picker/color_picker.d.ts +1 -2
- package/build/screens/avatar_picker/color_picker.d.ts.map +1 -1
- package/build/screens/avatar_picker/color_picker.js +4 -5
- package/build/screens/avatar_picker/color_picker.js.map +1 -1
- package/build/screens/avatar_picker/emoji_tab.d.ts +1 -2
- package/build/screens/avatar_picker/emoji_tab.d.ts.map +1 -1
- package/build/screens/avatar_picker/emoji_tab.js +12 -13
- package/build/screens/avatar_picker/emoji_tab.js.map +1 -1
- package/build/screens/avatar_picker/icon_grid.d.ts +1 -2
- package/build/screens/avatar_picker/icon_grid.d.ts.map +1 -1
- package/build/screens/avatar_picker/icon_grid.js +4 -5
- package/build/screens/avatar_picker/icon_grid.js.map +1 -1
- package/build/screens/avatar_picker/upload_tab.d.ts +1 -2
- package/build/screens/avatar_picker/upload_tab.d.ts.map +1 -1
- package/build/screens/avatar_picker/upload_tab.js +3 -4
- package/build/screens/avatar_picker/upload_tab.js.map +1 -1
- package/build/screens/bug_report_screen.d.ts +1 -2
- package/build/screens/bug_report_screen.d.ts.map +1 -1
- package/build/screens/bug_report_screen.js +11 -117
- package/build/screens/bug_report_screen.js.map +1 -1
- package/build/screens/conversation/message_read_receipts_screen.d.ts +1 -2
- package/build/screens/conversation/message_read_receipts_screen.d.ts.map +1 -1
- package/build/screens/conversation/message_read_receipts_screen.js +4 -20
- package/build/screens/conversation/message_read_receipts_screen.js.map +1 -1
- package/build/screens/conversation_details_screen.d.ts +1 -2
- package/build/screens/conversation_details_screen.d.ts.map +1 -1
- package/build/screens/conversation_details_screen.js +43 -106
- package/build/screens/conversation_details_screen.js.map +1 -1
- package/build/screens/conversation_filter_recipients/components/checkbox_row.d.ts +1 -1
- package/build/screens/conversation_filter_recipients/components/checkbox_row.d.ts.map +1 -1
- package/build/screens/conversation_filter_recipients/components/checkbox_row.js +3 -9
- package/build/screens/conversation_filter_recipients/components/checkbox_row.js.map +1 -1
- package/build/screens/conversation_filter_recipients/components/header_row.d.ts +1 -1
- package/build/screens/conversation_filter_recipients/components/header_row.d.ts.map +1 -1
- package/build/screens/conversation_filter_recipients/components/header_row.js +2 -12
- package/build/screens/conversation_filter_recipients/components/header_row.js.map +1 -1
- package/build/screens/conversation_filter_recipients/conversation_filter_recipients_screen.d.ts +1 -2
- package/build/screens/conversation_filter_recipients/conversation_filter_recipients_screen.d.ts.map +1 -1
- package/build/screens/conversation_filter_recipients/conversation_filter_recipients_screen.js +20 -44
- package/build/screens/conversation_filter_recipients/conversation_filter_recipients_screen.js.map +1 -1
- package/build/screens/conversation_filters/components/conversation_filters.d.ts +1 -2
- package/build/screens/conversation_filters/components/conversation_filters.d.ts.map +1 -1
- package/build/screens/conversation_filters/components/conversation_filters.js +10 -11
- package/build/screens/conversation_filters/components/conversation_filters.js.map +1 -1
- package/build/screens/conversation_filters/components/rows.d.ts +6 -6
- package/build/screens/conversation_filters/components/rows.d.ts.map +1 -1
- package/build/screens/conversation_filters/components/rows.js +7 -34
- package/build/screens/conversation_filters/components/rows.js.map +1 -1
- package/build/screens/conversation_filters/context/conversation_filter_context.d.ts +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 +2 -1
- package/build/screens/conversation_filters/context/conversation_filter_context.js.map +1 -1
- package/build/screens/conversation_filters/group_filters.d.ts +1 -2
- package/build/screens/conversation_filters/group_filters.d.ts.map +1 -1
- package/build/screens/conversation_filters/group_filters.js +2 -2
- package/build/screens/conversation_filters/group_filters.js.map +1 -1
- package/build/screens/conversation_filters/team_filters.d.ts +1 -2
- package/build/screens/conversation_filters/team_filters.d.ts.map +1 -1
- package/build/screens/conversation_filters/team_filters.js +2 -2
- package/build/screens/conversation_filters/team_filters.js.map +1 -1
- package/build/screens/conversation_filters_screen.d.ts +1 -2
- package/build/screens/conversation_filters_screen.d.ts.map +1 -1
- package/build/screens/conversation_filters_screen.js +4 -16
- package/build/screens/conversation_filters_screen.js.map +1 -1
- package/build/screens/conversation_new/components/avatar_selection_row.d.ts +2 -3
- package/build/screens/conversation_new/components/avatar_selection_row.d.ts.map +1 -1
- package/build/screens/conversation_new/components/avatar_selection_row.js +6 -16
- package/build/screens/conversation_new/components/avatar_selection_row.js.map +1 -1
- package/build/screens/conversation_new/components/filter_by_plan.d.ts +3 -4
- package/build/screens/conversation_new/components/filter_by_plan.d.ts.map +1 -1
- package/build/screens/conversation_new/components/filter_by_plan.js +22 -46
- package/build/screens/conversation_new/components/filter_by_plan.js.map +1 -1
- package/build/screens/conversation_new/components/form_list.d.ts +2 -3
- package/build/screens/conversation_new/components/form_list.d.ts.map +1 -1
- package/build/screens/conversation_new/components/form_list.js +4 -6
- package/build/screens/conversation_new/components/form_list.js.map +1 -1
- package/build/screens/conversation_new/components/gender_filter_toggle.d.ts +1 -2
- package/build/screens/conversation_new/components/gender_filter_toggle.d.ts.map +1 -1
- package/build/screens/conversation_new/components/gender_filter_toggle.js +4 -20
- package/build/screens/conversation_new/components/gender_filter_toggle.js.map +1 -1
- package/build/screens/conversation_new/components/groups_form.d.ts +1 -2
- package/build/screens/conversation_new/components/groups_form.d.ts.map +1 -1
- package/build/screens/conversation_new/components/groups_form.js +4 -30
- package/build/screens/conversation_new/components/groups_form.js.map +1 -1
- package/build/screens/conversation_new/components/services_form.d.ts +1 -2
- package/build/screens/conversation_new/components/services_form.d.ts.map +1 -1
- package/build/screens/conversation_new/components/services_form.js +27 -61
- package/build/screens/conversation_new/components/services_form.js.map +1 -1
- package/build/screens/conversation_new/components/source_app_error_card.d.ts +1 -1
- package/build/screens/conversation_new/components/source_app_error_card.d.ts.map +1 -1
- package/build/screens/conversation_new/components/source_app_error_card.js +2 -3
- package/build/screens/conversation_new/components/source_app_error_card.js.map +1 -1
- package/build/screens/conversation_new/conversation_new_screen.d.ts +1 -2
- package/build/screens/conversation_new/conversation_new_screen.d.ts.map +1 -1
- package/build/screens/conversation_new/conversation_new_screen.js +4 -4
- package/build/screens/conversation_new/conversation_new_screen.js.map +1 -1
- package/build/screens/conversation_notification_level_select_screen.d.ts +1 -2
- package/build/screens/conversation_notification_level_select_screen.d.ts.map +1 -1
- package/build/screens/conversation_notification_level_select_screen.js +4 -6
- package/build/screens/conversation_notification_level_select_screen.js.map +1 -1
- package/build/screens/conversation_screen.d.ts +2 -3
- package/build/screens/conversation_screen.d.ts.map +1 -1
- package/build/screens/conversation_screen.js +25 -66
- package/build/screens/conversation_screen.js.map +1 -1
- package/build/screens/conversation_select_recipients/components/groups_recipient_row.d.ts +1 -1
- package/build/screens/conversation_select_recipients/components/groups_recipient_row.d.ts.map +1 -1
- package/build/screens/conversation_select_recipients/components/groups_recipient_row.js +2 -1
- package/build/screens/conversation_select_recipients/components/groups_recipient_row.js.map +1 -1
- package/build/screens/conversation_select_recipients/components/recipient_link_row.d.ts +1 -2
- package/build/screens/conversation_select_recipients/components/recipient_link_row.d.ts.map +1 -1
- package/build/screens/conversation_select_recipients/components/recipient_link_row.js +2 -15
- package/build/screens/conversation_select_recipients/components/recipient_link_row.js.map +1 -1
- package/build/screens/conversation_select_recipients/components/restricted_group_row.d.ts +1 -2
- package/build/screens/conversation_select_recipients/components/restricted_group_row.d.ts.map +1 -1
- package/build/screens/conversation_select_recipients/components/restricted_group_row.js +2 -14
- package/build/screens/conversation_select_recipients/components/restricted_group_row.js.map +1 -1
- package/build/screens/conversation_select_recipients/components/team_recipient_row.d.ts +1 -1
- package/build/screens/conversation_select_recipients/components/team_recipient_row.d.ts.map +1 -1
- package/build/screens/conversation_select_recipients/components/team_recipient_row.js +2 -1
- package/build/screens/conversation_select_recipients/components/team_recipient_row.js.map +1 -1
- package/build/screens/conversation_select_recipients/components/view_more_link_row.d.ts +1 -1
- package/build/screens/conversation_select_recipients/components/view_more_link_row.d.ts.map +1 -1
- package/build/screens/conversation_select_recipients/components/view_more_link_row.js +2 -5
- package/build/screens/conversation_select_recipients/components/view_more_link_row.js.map +1 -1
- package/build/screens/conversation_select_recipients/conversation_new_entry_screen.d.ts +1 -2
- package/build/screens/conversation_select_recipients/conversation_new_entry_screen.d.ts.map +1 -1
- package/build/screens/conversation_select_recipients/conversation_new_entry_screen.js +4 -11
- package/build/screens/conversation_select_recipients/conversation_new_entry_screen.js.map +1 -1
- package/build/screens/conversation_select_recipients/conversation_select_direct_message_recipients_screen.d.ts +1 -1
- package/build/screens/conversation_select_recipients/conversation_select_direct_message_recipients_screen.d.ts.map +1 -1
- package/build/screens/conversation_select_recipients/conversation_select_direct_message_recipients_screen.js +11 -83
- package/build/screens/conversation_select_recipients/conversation_select_direct_message_recipients_screen.js.map +1 -1
- package/build/screens/conversation_select_recipients/conversation_select_group_recipients_screen.d.ts +1 -2
- package/build/screens/conversation_select_recipients/conversation_select_group_recipients_screen.d.ts.map +1 -1
- package/build/screens/conversation_select_recipients/conversation_select_group_recipients_screen.js +7 -14
- package/build/screens/conversation_select_recipients/conversation_select_group_recipients_screen.js.map +1 -1
- package/build/screens/conversation_select_recipients/conversation_select_teams_i_lead_recipients_screen.d.ts +1 -2
- package/build/screens/conversation_select_recipients/conversation_select_teams_i_lead_recipients_screen.d.ts.map +1 -1
- package/build/screens/conversation_select_recipients/conversation_select_teams_i_lead_recipients_screen.js +15 -18
- package/build/screens/conversation_select_recipients/conversation_select_teams_i_lead_recipients_screen.js.map +1 -1
- package/build/screens/conversation_select_type_screen.d.ts +1 -2
- package/build/screens/conversation_select_type_screen.d.ts.map +1 -1
- package/build/screens/conversation_select_type_screen.js +3 -10
- package/build/screens/conversation_select_type_screen.js.map +1 -1
- package/build/screens/conversations/components/chat_group_badge.d.ts +1 -2
- package/build/screens/conversations/components/chat_group_badge.d.ts.map +1 -1
- package/build/screens/conversations/components/chat_group_badge.js +3 -4
- package/build/screens/conversations/components/chat_group_badge.js.map +1 -1
- package/build/screens/conversations/components/list_header_action_button.d.ts +1 -2
- package/build/screens/conversations/components/list_header_action_button.d.ts.map +1 -1
- package/build/screens/conversations/components/list_header_action_button.js +3 -5
- package/build/screens/conversations/components/list_header_action_button.js.map +1 -1
- package/build/screens/conversations/components/list_header_component.d.ts +1 -2
- package/build/screens/conversations/components/list_header_component.d.ts.map +1 -1
- package/build/screens/conversations/components/list_header_component.js +19 -42
- package/build/screens/conversations/components/list_header_component.js.map +1 -1
- package/build/screens/conversations/conversations_screen.d.ts +1 -2
- package/build/screens/conversations/conversations_screen.d.ts.map +1 -1
- package/build/screens/conversations/conversations_screen.js +2 -6
- package/build/screens/conversations/conversations_screen.js.map +1 -1
- package/build/screens/design_system_screen.d.ts +1 -2
- package/build/screens/design_system_screen.d.ts.map +1 -1
- package/build/screens/design_system_screen.js +35 -558
- package/build/screens/design_system_screen.js.map +1 -1
- package/build/screens/get_help_screen.d.ts +1 -1
- package/build/screens/get_help_screen.d.ts.map +1 -1
- package/build/screens/get_help_screen.js +4 -25
- package/build/screens/get_help_screen.js.map +1 -1
- package/build/screens/group_notification_level_select_screen.d.ts +1 -2
- package/build/screens/group_notification_level_select_screen.d.ts.map +1 -1
- package/build/screens/group_notification_level_select_screen.js +2 -4
- package/build/screens/group_notification_level_select_screen.js.map +1 -1
- package/build/screens/group_notification_settings_screen.d.ts +1 -2
- package/build/screens/group_notification_settings_screen.d.ts.map +1 -1
- package/build/screens/group_notification_settings_screen.js +3 -25
- package/build/screens/group_notification_settings_screen.js.map +1 -1
- package/build/screens/message_actions_screen.d.ts +1 -2
- package/build/screens/message_actions_screen.d.ts.map +1 -1
- package/build/screens/message_actions_screen.js +12 -28
- package/build/screens/message_actions_screen.js.map +1 -1
- package/build/screens/message_report/components/message_preview.d.ts +1 -2
- package/build/screens/message_report/components/message_preview.d.ts.map +1 -1
- package/build/screens/message_report/components/message_preview.js +2 -22
- package/build/screens/message_report/components/message_preview.js.map +1 -1
- package/build/screens/message_report/components/report_reason_list.d.ts +1 -2
- package/build/screens/message_report/components/report_reason_list.d.ts.map +1 -1
- package/build/screens/message_report/components/report_reason_list.js +4 -13
- package/build/screens/message_report/components/report_reason_list.js.map +1 -1
- package/build/screens/message_report_screen.d.ts +1 -2
- package/build/screens/message_report_screen.d.ts.map +1 -1
- package/build/screens/message_report_screen.js +9 -61
- package/build/screens/message_report_screen.js.map +1 -1
- package/build/screens/not_found.d.ts +1 -2
- package/build/screens/not_found.d.ts.map +1 -1
- package/build/screens/not_found.js +2 -5
- package/build/screens/not_found.js.map +1 -1
- package/build/screens/notification_settings/hooks/groups.d.ts +1 -1
- package/build/screens/notification_settings/hooks/groups.d.ts.map +1 -1
- package/build/screens/notification_settings_screen.d.ts +1 -2
- package/build/screens/notification_settings_screen.d.ts.map +1 -1
- package/build/screens/notification_settings_screen.js +28 -66
- package/build/screens/notification_settings_screen.js.map +1 -1
- package/build/screens/preferred_app_selection_screen.d.ts +1 -2
- package/build/screens/preferred_app_selection_screen.d.ts.map +1 -1
- package/build/screens/preferred_app_selection_screen.js +3 -21
- package/build/screens/preferred_app_selection_screen.js.map +1 -1
- package/build/screens/reactions_screen.d.ts +1 -2
- package/build/screens/reactions_screen.d.ts.map +1 -1
- package/build/screens/reactions_screen.js +7 -19
- package/build/screens/reactions_screen.js.map +1 -1
- package/build/screens/send_giphy_screen.d.ts +1 -2
- package/build/screens/send_giphy_screen.d.ts.map +1 -1
- package/build/screens/send_giphy_screen.js +5 -31
- package/build/screens/send_giphy_screen.js.map +1 -1
- package/build/screens/settings_screen.d.ts +1 -2
- package/build/screens/settings_screen.d.ts.map +1 -1
- package/build/screens/settings_screen.js +4 -26
- package/build/screens/settings_screen.js.map +1 -1
- package/build/screens/system_message_people_screen.d.ts +1 -2
- package/build/screens/system_message_people_screen.d.ts.map +1 -1
- package/build/screens/system_message_people_screen.js +4 -10
- package/build/screens/system_message_people_screen.js.map +1 -1
- package/build/screens/team_conversation_screen.d.ts +1 -1
- package/build/screens/team_conversation_screen.d.ts.map +1 -1
- package/build/screens/team_conversation_screen.js +4 -12
- package/build/screens/team_conversation_screen.js.map +1 -1
- package/build/types/resources/conversation.d.ts +1 -10
- package/build/types/resources/conversation.d.ts.map +1 -1
- package/build/types/resources/conversation.js.map +1 -1
- package/build/utils/request/conversation.d.ts.map +1 -1
- package/build/utils/request/conversation.js +0 -2
- package/build/utils/request/conversation.js.map +1 -1
- package/build/utils/sha_256.js.map +1 -1
- package/build/utils/system_messages.d.ts +1 -1
- package/build/utils/system_messages.d.ts.map +1 -1
- package/build/utils/system_messages.js.map +1 -1
- package/build/utils/theme.d.ts +2 -2
- package/build/utils/theme.d.ts.map +1 -1
- package/build/utils/theme.js.map +1 -1
- package/package.json +12 -12
- package/src/__tests__/hooks/use_attachment_uploader.test.tsx +1 -0
- package/src/__tests__/hooks/use_font_scale.test.ts +7 -3
- package/src/__tests__/utils/native_adapters/configuration.ts +1 -1
- package/src/__tests__/utils/system_messages.ts +1 -1
- package/src/__tests__/utils/uri.ts +8 -50
- package/src/__utils__/handlers.ts +5 -6
- package/src/components/conversation/attachments/attachment_deleting_overlay.tsx +10 -3
- package/src/components/conversations/conversation_preview.tsx +23 -58
- package/src/components/conversations/unread_count_badge.tsx +4 -13
- package/src/components/page/__tests__/component_error_boundary.test.tsx +1 -1
- package/src/components/page/__tests__/error_boundary.test.tsx +6 -2
- package/src/components/page/__tests__/page_error_boundary.test.tsx +1 -1
- package/src/hooks/use_conversation.ts +0 -2
- package/src/hooks/use_conversation_jolt_events.ts +19 -3
- package/src/hooks/use_conversation_messages.ts +6 -5
- package/src/hooks/use_conversations_actions.ts +1 -3
- package/src/hooks/use_mark_latest_message_read.ts +4 -3
- package/src/index.tsx +2 -1
- package/src/polyfills/events/EventTarget.ts +1 -1
- package/src/screens/conversation_screen.tsx +4 -2
- package/src/screens/conversations/components/list_header_component.tsx +6 -6
- package/src/types/resources/conversation.ts +1 -11
- package/src/utils/request/conversation.ts +0 -2
- package/src/utils/sha_256.ts +24 -24
- package/src/utils/system_messages.ts +1 -1
- package/src/utils/theme.ts +3 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"screenLayout.js","sourceRoot":"","sources":["../../src/navigation/screenLayout.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"screenLayout.js","sourceRoot":"","sources":["../../src/navigation/screenLayout.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AAEnD,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAA;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAEnD,MAAM,UAAU,YAAY,CAAC,EAAE,QAAQ,EAAoC;IACzE,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAA;IAExB,OAAO,CACL,KAAC,iBAAiB,IAAC,UAAU,EAAE,KAAK,CAAC,IAAI,YACvC,KAAC,QAAQ,IAAC,QAAQ,EAAE,KAAC,cAAc,KAAG,YAAG,QAAQ,GAAY,GAC3C,CACrB,CAAA;AACH,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAC,EAAE,QAAQ,EAAoC;IAC3F,OAAO,CACL,KAAC,YAAY,cACX,KAAC,cAAc,cACb,KAAC,QAAQ,IAAC,QAAQ,EAAE,KAAC,cAAc,KAAG,YAAG,QAAQ,GAAY,GAC9C,GACJ,CAChB,CAAA;AACH,CAAC","sourcesContent":["import { useRoute } from '@react-navigation/native'\nimport React from 'react'\nimport { Suspense } from 'react'\nimport { DefaultLoading } from '../components/page/loading'\nimport { PageErrorBoundary } from '../components/page/page_error_boundary'\nimport { ChatAccessGate } from './chat_access_gate'\n\nexport function ScreenLayout({ children }: { children: React.ReactElement }) {\n const route = useRoute()\n\n return (\n <PageErrorBoundary screenName={route.name}>\n <Suspense fallback={<DefaultLoading />}>{children}</Suspense>\n </PageErrorBoundary>\n )\n}\n\nexport function ScreenLayoutWithChatAccessGate({ children }: { children: React.ReactElement }) {\n return (\n <ScreenLayout>\n <ChatAccessGate>\n <Suspense fallback={<DefaultLoading />}>{children}</Suspense>\n </ChatAccessGate>\n </ScreenLayout>\n )\n}\n"]}
|
|
@@ -22,7 +22,7 @@ export type AddEventListenerOptions = Readonly<{
|
|
|
22
22
|
}>;
|
|
23
23
|
export default class EventTarget {
|
|
24
24
|
addEventListener(type: string, callback: EventListener | null, optionsOrUseCapture?: AddEventListenerOptions | boolean): void;
|
|
25
|
-
removeEventListener(type: string, callback: EventListener, optionsOrUseCapture?: EventListenerOptions | boolean): void;
|
|
25
|
+
removeEventListener(type: string, callback: EventListener | null, optionsOrUseCapture?: EventListenerOptions | boolean): void;
|
|
26
26
|
dispatchEvent(event: Event): boolean;
|
|
27
27
|
[EVENT_TARGET_GET_THE_PARENT_KEY](): EventTarget | null;
|
|
28
28
|
[INTERNAL_DISPATCH_METHOD_KEY](event: Event): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventTarget.d.ts","sourceRoot":"","sources":["../../../src/polyfills/events/EventTarget.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,KAAK,MAAM,SAAS,CAAA;AAa3B,OAAO,EACL,+BAA+B,EAC/B,4BAA4B,EAC7B,MAAM,kCAAkC,CAAA;AAEzC,MAAM,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;AAClD,MAAM,MAAM,YAAY,GAAG;IAAE,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAA;CAAE,CAAA;AAC9D,MAAM,MAAM,aAAa,GAAG,aAAa,GAAG,YAAY,CAAA;AAExD,MAAM,MAAM,oBAAoB,GAAG,QAAQ,CAAC;IAC1C,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,CAAC,CAAA;AAEF,MAAM,MAAM,uBAAuB,GAAG,QAAQ,CAAC;IAC7C,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB,CAAC,CAAA;AAWF,MAAM,CAAC,OAAO,OAAO,WAAW;IAC9B,gBAAgB,CACd,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,aAAa,GAAG,IAAI,EAC9B,mBAAmB,GAAE,uBAAuB,GAAG,OAAY,GAC1D,IAAI;IAmFP,mBAAmB,CACjB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,aAAa,
|
|
1
|
+
{"version":3,"file":"EventTarget.d.ts","sourceRoot":"","sources":["../../../src/polyfills/events/EventTarget.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,KAAK,MAAM,SAAS,CAAA;AAa3B,OAAO,EACL,+BAA+B,EAC/B,4BAA4B,EAC7B,MAAM,kCAAkC,CAAA;AAEzC,MAAM,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;AAClD,MAAM,MAAM,YAAY,GAAG;IAAE,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAA;CAAE,CAAA;AAC9D,MAAM,MAAM,aAAa,GAAG,aAAa,GAAG,YAAY,CAAA;AAExD,MAAM,MAAM,oBAAoB,GAAG,QAAQ,CAAC;IAC1C,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,CAAC,CAAA;AAEF,MAAM,MAAM,uBAAuB,GAAG,QAAQ,CAAC;IAC7C,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB,CAAC,CAAA;AAWF,MAAM,CAAC,OAAO,OAAO,WAAW;IAC9B,gBAAgB,CACd,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,aAAa,GAAG,IAAI,EAC9B,mBAAmB,GAAE,uBAAuB,GAAG,OAAY,GAC1D,IAAI;IAmFP,mBAAmB,CACjB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,aAAa,GAAG,IAAI,EAC9B,mBAAmB,GAAE,oBAAoB,GAAG,OAAY,GACvD,IAAI;IAiCP,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO;IAmBpC,CAAC,+BAA+B,CAAC,IAAI,WAAW,GAAG,IAAI;IAKvD,CAAC,4BAA4B,CAAC,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;CAGnD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventTarget.js","sourceRoot":"","sources":["../../../src/polyfills/events/EventTarget.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n/**\n * Implements the `EventTarget` interface from the DOM.\n */\n\nimport { setPlatformObject } from '../webidl/PlatformObjects'\nimport Event from './Event'\nimport {\n getStopImmediatePropagationFlag,\n getStopPropagationFlag,\n setComposedPath,\n setCurrentTarget,\n setEventPhase,\n setInPassiveListenerFlag,\n setIsTrusted,\n setStopImmediatePropagationFlag,\n setStopPropagationFlag,\n setTarget,\n} from './internals/EventInternals'\nimport {\n EVENT_TARGET_GET_THE_PARENT_KEY,\n INTERNAL_DISPATCH_METHOD_KEY,\n} from './internals/EventTargetInternals'\n\nexport type EventCallback = (event: Event) => void\nexport type EventHandler = { handleEvent(event: Event): void }\nexport type EventListener = EventCallback | EventHandler\n\nexport type EventListenerOptions = Readonly<{\n capture?: boolean\n}>\n\nexport type AddEventListenerOptions = Readonly<{\n capture?: boolean\n passive?: boolean\n once?: boolean\n signal?: AbortSignal\n}>\n\ntype EventListenerRegistration = {\n readonly callback: EventListener\n readonly passive: boolean\n readonly once: boolean\n removed: boolean\n}\n\ntype ListenersMap = Map<string, Map<EventListener, EventListenerRegistration>>\n\nexport default class EventTarget {\n addEventListener(\n type: string,\n callback: EventListener | null,\n optionsOrUseCapture: AddEventListenerOptions | boolean = {}\n ): void {\n if (arguments.length < 2) {\n throw new TypeError(\n `Failed to execute 'addEventListener' on 'EventTarget': 2 arguments required, but only ${arguments.length} present.`\n )\n }\n\n if (callback == null) {\n return\n }\n\n validateCallback(callback, 'addEventListener')\n\n const processedType = String(type)\n\n let capture: boolean\n let passive: boolean\n let once: boolean\n let signal: AbortSignal | null | undefined\n\n if (\n optionsOrUseCapture != null &&\n (typeof optionsOrUseCapture === 'object' || typeof optionsOrUseCapture === 'function')\n ) {\n const opts = optionsOrUseCapture as AddEventListenerOptions\n capture = Boolean(opts.capture)\n passive =\n opts.passive == null ? getDefaultPassiveValue(processedType, this) : Boolean(opts.passive)\n once = Boolean(opts.once)\n signal = opts.signal\n if (signal !== undefined && !(signal instanceof AbortSignal)) {\n throw new TypeError(\n \"Failed to execute 'addEventListener' on 'EventTarget': Failed to read the 'signal' property from 'AddEventListenerOptions': Failed to convert value to 'AbortSignal'.\"\n )\n }\n } else {\n capture = Boolean(optionsOrUseCapture)\n passive = false\n once = false\n signal = null\n }\n\n if (signal?.aborted) {\n return\n }\n\n let listenersByType = getListenersForPhase(this, capture)\n let listeners = listenersByType?.get(processedType)\n if (listeners == null) {\n if (listenersByType == null) {\n listenersByType = new Map()\n setListenersMap(this, capture, listenersByType)\n }\n listeners = new Map()\n listenersByType.set(processedType, listeners)\n } else if (listeners.has(callback)) {\n return\n }\n\n const listener: EventListenerRegistration = {\n callback,\n passive,\n once,\n removed: false,\n }\n listeners.set(callback, listener)\n\n const nonNullListeners = listeners\n\n if (signal != null) {\n signal.addEventListener(\n 'abort',\n () => {\n listener.removed = true\n if (nonNullListeners.get(callback) === listener) {\n nonNullListeners.delete(callback)\n }\n },\n { once: true }\n )\n }\n }\n\n removeEventListener(\n type: string,\n callback: EventListener,\n optionsOrUseCapture: EventListenerOptions | boolean = {}\n ): void {\n if (arguments.length < 2) {\n throw new TypeError(\n `Failed to execute 'removeEventListener' on 'EventTarget': 2 arguments required, but only ${arguments.length} present.`\n )\n }\n\n if (callback == null) {\n return\n }\n\n validateCallback(callback, 'removeEventListener')\n\n const processedType = String(type)\n\n const capture =\n typeof optionsOrUseCapture === 'boolean'\n ? optionsOrUseCapture\n : Boolean((optionsOrUseCapture as EventListenerOptions).capture)\n\n const listenersByType = getListenersForPhase(this, capture)\n const listeners = listenersByType?.get(processedType)\n if (listeners == null) {\n return\n }\n\n const listener = listeners.get(callback)\n if (listener != null) {\n listener.removed = true\n listeners.delete(callback)\n }\n }\n\n dispatchEvent(event: Event): boolean {\n if (!(event instanceof Event)) {\n throw new TypeError(\n \"Failed to execute 'dispatchEvent' on 'EventTarget': parameter 1 is not of type 'Event'.\"\n )\n }\n\n if (getEventDispatchFlag(event)) {\n throw new Error(\n \"Failed to execute 'dispatchEvent' on 'EventTarget': The event is already being dispatched.\"\n )\n }\n\n setIsTrusted(event, false)\n dispatch(this, event)\n return !event.defaultPrevented\n }\n\n // \"protected\" for subclasses: get the parent (see spec)\n [EVENT_TARGET_GET_THE_PARENT_KEY](): EventTarget | null {\n return null\n }\n\n // \"protected\" to dispatch trusted events\n [INTERNAL_DISPATCH_METHOD_KEY](event: Event): void {\n dispatch(this, event)\n }\n}\n\nsetPlatformObject(EventTarget)\n\nfunction validateCallback(callback: EventListener, methodName: string): void {\n if (typeof callback !== 'function' && typeof callback !== 'object') {\n throw new TypeError(\n `Failed to execute '${methodName}' on 'EventTarget': parameter 2 is not of type 'Object'.`\n )\n }\n}\n\nfunction getDefaultPassiveValue(_type: string, _eventTarget: EventTarget): boolean {\n return false\n}\n\nfunction dispatch(eventTarget: EventTarget, event: Event): void {\n setEventDispatchFlag(event, true)\n\n const eventPath = getEventPath(eventTarget, event)\n setComposedPath(event, eventPath)\n setTarget(event, eventTarget)\n\n for (let i = eventPath.length - 1; i >= 0; i--) {\n if (getStopPropagationFlag(event)) {\n break\n }\n const target = eventPath[i]\n setEventPhase(event, target === eventTarget ? Event.AT_TARGET : Event.CAPTURING_PHASE)\n invoke(target, event, Event.CAPTURING_PHASE)\n }\n\n for (const target of eventPath) {\n if (getStopPropagationFlag(event)) {\n break\n }\n if (!event.bubbles && target !== eventTarget) {\n break\n }\n setEventPhase(event, target === eventTarget ? Event.AT_TARGET : Event.BUBBLING_PHASE)\n invoke(target, event, Event.BUBBLING_PHASE)\n }\n\n setEventPhase(event, Event.NONE)\n setCurrentTarget(event, null)\n setComposedPath(event, [])\n\n setEventDispatchFlag(event, false)\n setStopImmediatePropagationFlag(event, false)\n setStopPropagationFlag(event, false)\n}\n\nfunction getEventPath(eventTarget: EventTarget, _event: Event): ReadonlyArray<EventTarget> {\n const path: EventTarget[] = []\n let target: EventTarget | null = eventTarget\n\n while (target != null) {\n path.push(target)\n target = target[EVENT_TARGET_GET_THE_PARENT_KEY]()\n }\n\n return path\n}\n\nfunction invoke(eventTarget: EventTarget, event: Event, eventPhase: import('./Event').EventPhase) {\n const listenersByType = getListenersForPhase(eventTarget, eventPhase === Event.CAPTURING_PHASE)\n\n setCurrentTarget(event, eventTarget)\n\n const maybeListeners = listenersByType?.get(event.type)\n if (maybeListeners == null) {\n return\n }\n\n const listeners = Array.from(maybeListeners.values())\n setCurrentTarget(event, eventTarget)\n\n for (const listener of listeners) {\n if (listener.removed) {\n continue\n }\n\n if (listener.once) {\n eventTarget.removeEventListener(\n event.type,\n listener.callback,\n eventPhase === Event.CAPTURING_PHASE\n )\n }\n\n if (listener.passive) {\n setInPassiveListenerFlag(event, true)\n }\n\n const currentEvent = (global as any).event\n ;(global as any).event = event\n\n const callback = listener.callback as any\n try {\n if (typeof callback === 'function') {\n callback.call(eventTarget, event)\n } else if (typeof callback.handleEvent === 'function') {\n callback.handleEvent(event)\n }\n } catch (error) {\n // TODO: replace with `reportError` when it's available.\n\n console.error(error)\n }\n\n if (listener.passive) {\n setInPassiveListenerFlag(event, false)\n }\n\n ;(global as any).event = currentEvent\n\n if (getStopImmediatePropagationFlag(event)) {\n break\n }\n }\n}\n\nconst CAPTURING_LISTENERS_KEY = Symbol('capturingListeners')\nconst BUBBLING_LISTENERS_KEY = Symbol('bubblingListeners')\n\nfunction getListenersForPhase(\n eventTarget: EventTarget,\n isCapture: boolean\n): ListenersMap | null | undefined {\n // @ts-expect-error index on symbol\n return isCapture ? eventTarget[CAPTURING_LISTENERS_KEY] : eventTarget[BUBBLING_LISTENERS_KEY]\n}\n\nfunction setListenersMap(\n eventTarget: EventTarget,\n isCapture: boolean,\n listenersMap: ListenersMap\n): void {\n if (isCapture) {\n ;(eventTarget as any)[CAPTURING_LISTENERS_KEY] = listenersMap\n } else {\n ;(eventTarget as any)[BUBBLING_LISTENERS_KEY] = listenersMap\n }\n}\n\nconst EVENT_DISPATCH_FLAG = Symbol('Event.dispatch')\n\nfunction getEventDispatchFlag(event: Event): boolean {\n return (event as any)[EVENT_DISPATCH_FLAG]\n}\n\nfunction setEventDispatchFlag(event: Event, value: boolean): void {\n ;(event as any)[EVENT_DISPATCH_FLAG] = value\n}\n"]}
|
|
1
|
+
{"version":3,"file":"EventTarget.js","sourceRoot":"","sources":["../../../src/polyfills/events/EventTarget.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n/**\n * Implements the `EventTarget` interface from the DOM.\n */\n\nimport { setPlatformObject } from '../webidl/PlatformObjects'\nimport Event from './Event'\nimport {\n getStopImmediatePropagationFlag,\n getStopPropagationFlag,\n setComposedPath,\n setCurrentTarget,\n setEventPhase,\n setInPassiveListenerFlag,\n setIsTrusted,\n setStopImmediatePropagationFlag,\n setStopPropagationFlag,\n setTarget,\n} from './internals/EventInternals'\nimport {\n EVENT_TARGET_GET_THE_PARENT_KEY,\n INTERNAL_DISPATCH_METHOD_KEY,\n} from './internals/EventTargetInternals'\n\nexport type EventCallback = (event: Event) => void\nexport type EventHandler = { handleEvent(event: Event): void }\nexport type EventListener = EventCallback | EventHandler\n\nexport type EventListenerOptions = Readonly<{\n capture?: boolean\n}>\n\nexport type AddEventListenerOptions = Readonly<{\n capture?: boolean\n passive?: boolean\n once?: boolean\n signal?: AbortSignal\n}>\n\ntype EventListenerRegistration = {\n readonly callback: EventListener\n readonly passive: boolean\n readonly once: boolean\n removed: boolean\n}\n\ntype ListenersMap = Map<string, Map<EventListener, EventListenerRegistration>>\n\nexport default class EventTarget {\n addEventListener(\n type: string,\n callback: EventListener | null,\n optionsOrUseCapture: AddEventListenerOptions | boolean = {}\n ): void {\n if (arguments.length < 2) {\n throw new TypeError(\n `Failed to execute 'addEventListener' on 'EventTarget': 2 arguments required, but only ${arguments.length} present.`\n )\n }\n\n if (callback == null) {\n return\n }\n\n validateCallback(callback, 'addEventListener')\n\n const processedType = String(type)\n\n let capture: boolean\n let passive: boolean\n let once: boolean\n let signal: AbortSignal | null | undefined\n\n if (\n optionsOrUseCapture != null &&\n (typeof optionsOrUseCapture === 'object' || typeof optionsOrUseCapture === 'function')\n ) {\n const opts = optionsOrUseCapture as AddEventListenerOptions\n capture = Boolean(opts.capture)\n passive =\n opts.passive == null ? getDefaultPassiveValue(processedType, this) : Boolean(opts.passive)\n once = Boolean(opts.once)\n signal = opts.signal\n if (signal !== undefined && !(signal instanceof AbortSignal)) {\n throw new TypeError(\n \"Failed to execute 'addEventListener' on 'EventTarget': Failed to read the 'signal' property from 'AddEventListenerOptions': Failed to convert value to 'AbortSignal'.\"\n )\n }\n } else {\n capture = Boolean(optionsOrUseCapture)\n passive = false\n once = false\n signal = null\n }\n\n if (signal?.aborted) {\n return\n }\n\n let listenersByType = getListenersForPhase(this, capture)\n let listeners = listenersByType?.get(processedType)\n if (listeners == null) {\n if (listenersByType == null) {\n listenersByType = new Map()\n setListenersMap(this, capture, listenersByType)\n }\n listeners = new Map()\n listenersByType.set(processedType, listeners)\n } else if (listeners.has(callback)) {\n return\n }\n\n const listener: EventListenerRegistration = {\n callback,\n passive,\n once,\n removed: false,\n }\n listeners.set(callback, listener)\n\n const nonNullListeners = listeners\n\n if (signal != null) {\n signal.addEventListener(\n 'abort',\n () => {\n listener.removed = true\n if (nonNullListeners.get(callback) === listener) {\n nonNullListeners.delete(callback)\n }\n },\n { once: true }\n )\n }\n }\n\n removeEventListener(\n type: string,\n callback: EventListener | null,\n optionsOrUseCapture: EventListenerOptions | boolean = {}\n ): void {\n if (arguments.length < 2) {\n throw new TypeError(\n `Failed to execute 'removeEventListener' on 'EventTarget': 2 arguments required, but only ${arguments.length} present.`\n )\n }\n\n if (callback == null) {\n return\n }\n\n validateCallback(callback, 'removeEventListener')\n\n const processedType = String(type)\n\n const capture =\n typeof optionsOrUseCapture === 'boolean'\n ? optionsOrUseCapture\n : Boolean((optionsOrUseCapture as EventListenerOptions).capture)\n\n const listenersByType = getListenersForPhase(this, capture)\n const listeners = listenersByType?.get(processedType)\n if (listeners == null) {\n return\n }\n\n const listener = listeners.get(callback)\n if (listener != null) {\n listener.removed = true\n listeners.delete(callback)\n }\n }\n\n dispatchEvent(event: Event): boolean {\n if (!(event instanceof Event)) {\n throw new TypeError(\n \"Failed to execute 'dispatchEvent' on 'EventTarget': parameter 1 is not of type 'Event'.\"\n )\n }\n\n if (getEventDispatchFlag(event)) {\n throw new Error(\n \"Failed to execute 'dispatchEvent' on 'EventTarget': The event is already being dispatched.\"\n )\n }\n\n setIsTrusted(event, false)\n dispatch(this, event)\n return !event.defaultPrevented\n }\n\n // \"protected\" for subclasses: get the parent (see spec)\n [EVENT_TARGET_GET_THE_PARENT_KEY](): EventTarget | null {\n return null\n }\n\n // \"protected\" to dispatch trusted events\n [INTERNAL_DISPATCH_METHOD_KEY](event: Event): void {\n dispatch(this, event)\n }\n}\n\nsetPlatformObject(EventTarget)\n\nfunction validateCallback(callback: EventListener, methodName: string): void {\n if (typeof callback !== 'function' && typeof callback !== 'object') {\n throw new TypeError(\n `Failed to execute '${methodName}' on 'EventTarget': parameter 2 is not of type 'Object'.`\n )\n }\n}\n\nfunction getDefaultPassiveValue(_type: string, _eventTarget: EventTarget): boolean {\n return false\n}\n\nfunction dispatch(eventTarget: EventTarget, event: Event): void {\n setEventDispatchFlag(event, true)\n\n const eventPath = getEventPath(eventTarget, event)\n setComposedPath(event, eventPath)\n setTarget(event, eventTarget)\n\n for (let i = eventPath.length - 1; i >= 0; i--) {\n if (getStopPropagationFlag(event)) {\n break\n }\n const target = eventPath[i]\n setEventPhase(event, target === eventTarget ? Event.AT_TARGET : Event.CAPTURING_PHASE)\n invoke(target, event, Event.CAPTURING_PHASE)\n }\n\n for (const target of eventPath) {\n if (getStopPropagationFlag(event)) {\n break\n }\n if (!event.bubbles && target !== eventTarget) {\n break\n }\n setEventPhase(event, target === eventTarget ? Event.AT_TARGET : Event.BUBBLING_PHASE)\n invoke(target, event, Event.BUBBLING_PHASE)\n }\n\n setEventPhase(event, Event.NONE)\n setCurrentTarget(event, null)\n setComposedPath(event, [])\n\n setEventDispatchFlag(event, false)\n setStopImmediatePropagationFlag(event, false)\n setStopPropagationFlag(event, false)\n}\n\nfunction getEventPath(eventTarget: EventTarget, _event: Event): ReadonlyArray<EventTarget> {\n const path: EventTarget[] = []\n let target: EventTarget | null = eventTarget\n\n while (target != null) {\n path.push(target)\n target = target[EVENT_TARGET_GET_THE_PARENT_KEY]()\n }\n\n return path\n}\n\nfunction invoke(eventTarget: EventTarget, event: Event, eventPhase: import('./Event').EventPhase) {\n const listenersByType = getListenersForPhase(eventTarget, eventPhase === Event.CAPTURING_PHASE)\n\n setCurrentTarget(event, eventTarget)\n\n const maybeListeners = listenersByType?.get(event.type)\n if (maybeListeners == null) {\n return\n }\n\n const listeners = Array.from(maybeListeners.values())\n setCurrentTarget(event, eventTarget)\n\n for (const listener of listeners) {\n if (listener.removed) {\n continue\n }\n\n if (listener.once) {\n eventTarget.removeEventListener(\n event.type,\n listener.callback,\n eventPhase === Event.CAPTURING_PHASE\n )\n }\n\n if (listener.passive) {\n setInPassiveListenerFlag(event, true)\n }\n\n const currentEvent = (global as any).event\n ;(global as any).event = event\n\n const callback = listener.callback as any\n try {\n if (typeof callback === 'function') {\n callback.call(eventTarget, event)\n } else if (typeof callback.handleEvent === 'function') {\n callback.handleEvent(event)\n }\n } catch (error) {\n // TODO: replace with `reportError` when it's available.\n\n console.error(error)\n }\n\n if (listener.passive) {\n setInPassiveListenerFlag(event, false)\n }\n\n ;(global as any).event = currentEvent\n\n if (getStopImmediatePropagationFlag(event)) {\n break\n }\n }\n}\n\nconst CAPTURING_LISTENERS_KEY = Symbol('capturingListeners')\nconst BUBBLING_LISTENERS_KEY = Symbol('bubblingListeners')\n\nfunction getListenersForPhase(\n eventTarget: EventTarget,\n isCapture: boolean\n): ListenersMap | null | undefined {\n // @ts-expect-error index on symbol\n return isCapture ? eventTarget[CAPTURING_LISTENERS_KEY] : eventTarget[BUBBLING_LISTENERS_KEY]\n}\n\nfunction setListenersMap(\n eventTarget: EventTarget,\n isCapture: boolean,\n listenersMap: ListenersMap\n): void {\n if (isCapture) {\n ;(eventTarget as any)[CAPTURING_LISTENERS_KEY] = listenersMap\n } else {\n ;(eventTarget as any)[BUBBLING_LISTENERS_KEY] = listenersMap\n }\n}\n\nconst EVENT_DISPATCH_FLAG = Symbol('Event.dispatch')\n\nfunction getEventDispatchFlag(event: Event): boolean {\n return (event as any)[EVENT_DISPATCH_FLAG]\n}\n\nfunction setEventDispatchFlag(event: Event, value: boolean): void {\n ;(event as any)[EVENT_DISPATCH_FLAG] = value\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"age_check_required_screen.d.ts","sourceRoot":"","sources":["../../../src/screens/age_check/age_check_required_screen.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"age_check_required_screen.d.ts","sourceRoot":"","sources":["../../../src/screens/age_check/age_check_required_screen.tsx"],"names":[],"mappings":"AAuBA,wBAAgB,sBAAsB,4CAsHrC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
1
2
|
import { date as formatDate } from '@planningcenter/datetime-fmt';
|
|
2
|
-
import
|
|
3
|
+
import { useState } from 'react';
|
|
3
4
|
import { StyleSheet, View, ScrollView } from 'react-native';
|
|
4
5
|
import { Heading } from '../../components';
|
|
5
6
|
import { Avatar } from '../../components/display/avatar';
|
|
@@ -45,51 +46,7 @@ export function AgeCheckRequiredScreen() {
|
|
|
45
46
|
return;
|
|
46
47
|
submitAgeCheck(birthdate);
|
|
47
48
|
};
|
|
48
|
-
return (
|
|
49
|
-
<ScrollView style={styles.scrollView} contentContainerStyle={styles.container}>
|
|
50
|
-
<View style={styles.header}>
|
|
51
|
-
<View style={styles.heading}>
|
|
52
|
-
<Icon name="general.exclamationTriangle" size={20} style={styles.warningIcon}/>
|
|
53
|
-
<Heading variant="h2">Your age is required to use chat</Heading>
|
|
54
|
-
</View>
|
|
55
|
-
<Text>
|
|
56
|
-
Privacy laws require us to verify your age before you can use messaging features. This
|
|
57
|
-
helps us protect minors who use chat.
|
|
58
|
-
</Text>
|
|
59
|
-
</View>
|
|
60
|
-
<View style={styles.cards}>
|
|
61
|
-
<View style={styles.card}>
|
|
62
|
-
<Heading variant="h3">My profile</Heading>
|
|
63
|
-
<View style={styles.profileContent}>
|
|
64
|
-
<Avatar sourceUri={person.avatar || ''} size="lg" showFallback={!person.avatar}/>
|
|
65
|
-
<View style={styles.personInfo}>
|
|
66
|
-
<Text style={styles.name}>{person.name}</Text>
|
|
67
|
-
<View style={styles.birthdateInfo}>
|
|
68
|
-
<Text variant="tertiary" style={styles.birthdateLabel}>
|
|
69
|
-
Birthdate:{' '}
|
|
70
|
-
</Text>
|
|
71
|
-
<Text variant="tertiary">{birthdateStamp}</Text>
|
|
72
|
-
</View>
|
|
73
|
-
</View>
|
|
74
|
-
{birthdate && (<Button title="Edit" accessibilityHint="Choose a new birthdate for your profile" size="sm" variant="outline" style={styles.editButton} onPress={openBirthdateModal}/>)}
|
|
75
|
-
</View>
|
|
76
|
-
{!birthdate && (<Button title="Add birthdate" accessibilityHint="Choose a birthdate for your profile" size="lg" style={styles.primaryButton} onPress={openBirthdateModal}/>)}
|
|
77
|
-
</View>
|
|
78
|
-
{birthdate && (<View style={styles.card}>
|
|
79
|
-
<Heading variant="h3">Age confirmation</Heading>
|
|
80
|
-
{age !== null && age < 13 ? (<Banner appearance="warning" description={confirmationText}/>) : (<Text>{confirmationText}</Text>)}
|
|
81
|
-
<Button title="Yes, update my profile" size="lg" style={styles.primaryButton} onPress={handleSubmitAgeConfirmation} disabled={isPending || isSuccess}/>
|
|
82
|
-
</View>)}
|
|
83
|
-
</View>
|
|
84
|
-
<Text variant="tertiary">
|
|
85
|
-
Your birthdate will be added to your profile, but it is only visible to church
|
|
86
|
-
administrators at {organization?.name}. It will not be shared with other church members,
|
|
87
|
-
unless you give permission.
|
|
88
|
-
</Text>
|
|
89
|
-
</ScrollView>
|
|
90
|
-
|
|
91
|
-
<AgeCheckSelectBirthdateModal onChange={setDraftBirthdate} onDismiss={closeBirthdateModal} onRequestClose={closeBirthdateModal} onSubmit={setBirthdate} value={draftBirthdate || new Date()} visible={isBirthdateModalOpen}/>
|
|
92
|
-
</>);
|
|
49
|
+
return (_jsxs(_Fragment, { children: [_jsxs(ScrollView, { style: styles.scrollView, contentContainerStyle: styles.container, children: [_jsxs(View, { style: styles.header, children: [_jsxs(View, { style: styles.heading, children: [_jsx(Icon, { name: "general.exclamationTriangle", size: 20, style: styles.warningIcon }), _jsx(Heading, { variant: "h2", children: "Your age is required to use chat" })] }), _jsx(Text, { children: "Privacy laws require us to verify your age before you can use messaging features. This helps us protect minors who use chat." })] }), _jsxs(View, { style: styles.cards, children: [_jsxs(View, { style: styles.card, children: [_jsx(Heading, { variant: "h3", children: "My profile" }), _jsxs(View, { style: styles.profileContent, children: [_jsx(Avatar, { sourceUri: person.avatar || '', size: "lg", showFallback: !person.avatar }), _jsxs(View, { style: styles.personInfo, children: [_jsx(Text, { style: styles.name, children: person.name }), _jsxs(View, { style: styles.birthdateInfo, children: [_jsxs(Text, { variant: "tertiary", style: styles.birthdateLabel, children: ["Birthdate:", ' '] }), _jsx(Text, { variant: "tertiary", children: birthdateStamp })] })] }), birthdate && (_jsx(Button, { title: "Edit", accessibilityHint: "Choose a new birthdate for your profile", size: "sm", variant: "outline", style: styles.editButton, onPress: openBirthdateModal }))] }), !birthdate && (_jsx(Button, { title: "Add birthdate", accessibilityHint: "Choose a birthdate for your profile", size: "lg", style: styles.primaryButton, onPress: openBirthdateModal }))] }), birthdate && (_jsxs(View, { style: styles.card, children: [_jsx(Heading, { variant: "h3", children: "Age confirmation" }), age !== null && age < 13 ? (_jsx(Banner, { appearance: "warning", description: confirmationText })) : (_jsx(Text, { children: confirmationText })), _jsx(Button, { title: "Yes, update my profile", size: "lg", style: styles.primaryButton, onPress: handleSubmitAgeConfirmation, disabled: isPending || isSuccess })] }))] }), _jsxs(Text, { variant: "tertiary", children: ["Your birthdate will be added to your profile, but it is only visible to church administrators at ", organization?.name, ". It will not be shared with other church members, unless you give permission."] })] }), _jsx(AgeCheckSelectBirthdateModal, { onChange: setDraftBirthdate, onDismiss: closeBirthdateModal, onRequestClose: closeBirthdateModal, onSubmit: setBirthdate, value: draftBirthdate || new Date(), visible: isBirthdateModalOpen })] }));
|
|
93
50
|
}
|
|
94
51
|
const useStyles = () => {
|
|
95
52
|
const { colors } = useTheme();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"age_check_required_screen.js","sourceRoot":"","sources":["../../../src/screens/age_check/age_check_required_screen.tsx"],"names":[],"mappings":"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","sourcesContent":["import { date as formatDate } from '@planningcenter/datetime-fmt'\nimport React, { useState } from 'react'\nimport { StyleSheet, View, ScrollView } from 'react-native'\nimport { Heading } from '../../components'\nimport { Avatar } from '../../components/display/avatar'\nimport { Banner } from '../../components/display/banner'\nimport { Button } from '../../components/display/button'\nimport { Icon } from '../../components/display/icon'\nimport { Text } from '../../components/display/text'\nimport { useCurrentPerson, useTheme, useSubmitAgeCheck, useOrganization } from '../../hooks'\nimport { platformFontWeightBold } from '../../utils/styles'\nimport { AgeCheckSelectBirthdateModal } from './components/age_check_select_birthdate_modal'\n\nfunction calculateAge(birthdate: Date) {\n const today = new Date()\n const age = today.getUTCFullYear() - birthdate.getUTCFullYear()\n const hasHadBirthdayThisYear =\n today.getUTCMonth() > birthdate.getUTCMonth() ||\n (today.getUTCMonth() === birthdate.getUTCMonth() &&\n today.getUTCDate() >= birthdate.getUTCDate())\n return hasHadBirthdayThisYear ? age : age - 1\n}\n\nexport function AgeCheckRequiredScreen() {\n const person = useCurrentPerson()\n const { data: organization } = useOrganization()\n\n const [birthdate, setBirthdate] = useState<Date | null>(null)\n const [draftBirthdate, setDraftBirthdate] = useState<Date | null>(null)\n const [isBirthdateModalOpen, setBirthdateModalOpen] = useState(false)\n const { submitAgeCheck, isPending, isSuccess } = useSubmitAgeCheck()\n const styles = useStyles()\n\n const birthdateStamp = birthdate\n ? formatDate(birthdate, { style: 'standard', year: true, timeZone: 'UTC' })\n : 'Missing'\n\n const age = birthdate ? calculateAge(birthdate) : null\n\n const confirmationText =\n birthdate !== null\n ? `Your birthdate is ${birthdateStamp} and you are ${age} years old. Is that correct?`\n : ''\n\n const openBirthdateModal = () => {\n setDraftBirthdate(birthdate || new Date())\n setBirthdateModalOpen(true)\n }\n\n const closeBirthdateModal = () => {\n setBirthdateModalOpen(false)\n }\n\n const handleSubmitAgeConfirmation = () => {\n if (!birthdate) return\n submitAgeCheck(birthdate)\n }\n\n return (\n <>\n <ScrollView style={styles.scrollView} contentContainerStyle={styles.container}>\n <View style={styles.header}>\n <View style={styles.heading}>\n <Icon name=\"general.exclamationTriangle\" size={20} style={styles.warningIcon} />\n <Heading variant=\"h2\">Your age is required to use chat</Heading>\n </View>\n <Text>\n Privacy laws require us to verify your age before you can use messaging features. This\n helps us protect minors who use chat.\n </Text>\n </View>\n <View style={styles.cards}>\n <View style={styles.card}>\n <Heading variant=\"h3\">My profile</Heading>\n <View style={styles.profileContent}>\n <Avatar sourceUri={person.avatar || ''} size=\"lg\" showFallback={!person.avatar} />\n <View style={styles.personInfo}>\n <Text style={styles.name}>{person.name}</Text>\n <View style={styles.birthdateInfo}>\n <Text variant=\"tertiary\" style={styles.birthdateLabel}>\n Birthdate:{' '}\n </Text>\n <Text variant=\"tertiary\">{birthdateStamp}</Text>\n </View>\n </View>\n {birthdate && (\n <Button\n title=\"Edit\"\n accessibilityHint=\"Choose a new birthdate for your profile\"\n size=\"sm\"\n variant=\"outline\"\n style={styles.editButton}\n onPress={openBirthdateModal}\n />\n )}\n </View>\n {!birthdate && (\n <Button\n title=\"Add birthdate\"\n accessibilityHint=\"Choose a birthdate for your profile\"\n size=\"lg\"\n style={styles.primaryButton}\n onPress={openBirthdateModal}\n />\n )}\n </View>\n {birthdate && (\n <View style={styles.card}>\n <Heading variant=\"h3\">Age confirmation</Heading>\n {age !== null && age < 13 ? (\n <Banner appearance=\"warning\" description={confirmationText} />\n ) : (\n <Text>{confirmationText}</Text>\n )}\n <Button\n title=\"Yes, update my profile\"\n size=\"lg\"\n style={styles.primaryButton}\n onPress={handleSubmitAgeConfirmation}\n disabled={isPending || isSuccess}\n />\n </View>\n )}\n </View>\n <Text variant=\"tertiary\">\n Your birthdate will be added to your profile, but it is only visible to church\n administrators at {organization?.name}. It will not be shared with other church members,\n unless you give permission.\n </Text>\n </ScrollView>\n\n <AgeCheckSelectBirthdateModal\n onChange={setDraftBirthdate}\n onDismiss={closeBirthdateModal}\n onRequestClose={closeBirthdateModal}\n onSubmit={setBirthdate}\n value={draftBirthdate || new Date()}\n visible={isBirthdateModalOpen}\n />\n </>\n )\n}\n\nconst useStyles = () => {\n const { colors } = useTheme()\n return StyleSheet.create({\n scrollView: {\n flex: 1,\n backgroundColor: colors.surfaceColor080,\n },\n container: {\n padding: 16,\n gap: 16,\n },\n header: {\n gap: 8,\n },\n heading: {\n flexDirection: 'row',\n alignItems: 'center',\n gap: 8,\n },\n warningIcon: {\n color: colors.statusErrorIcon,\n },\n card: {\n backgroundColor: colors.surfaceColor100,\n borderRadius: 8,\n padding: 16,\n gap: 8,\n },\n cards: {\n gap: 8,\n },\n profileContent: {\n flexDirection: 'row',\n flexWrap: 'wrap',\n alignItems: 'flex-start',\n gap: 8,\n },\n personInfo: {\n flex: 1,\n minWidth: 0,\n },\n primaryButton: {\n alignSelf: 'center',\n marginTop: 8,\n },\n name: {\n fontWeight: platformFontWeightBold,\n },\n birthdateLabel: {\n fontWeight: platformFontWeightBold,\n },\n birthdateInfo: {\n flexDirection: 'row',\n flexWrap: 'wrap',\n alignItems: 'center',\n gap: 4,\n },\n editButton: {\n alignSelf: 'flex-end',\n },\n formSheetContent: {\n flex: 1,\n },\n })\n}\n"]}
|
|
1
|
+
{"version":3,"file":"age_check_required_screen.js","sourceRoot":"","sources":["../../../src/screens/age_check/age_check_required_screen.tsx"],"names":[],"mappings":"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","sourcesContent":["import { date as formatDate } from '@planningcenter/datetime-fmt'\nimport React, { useState } from 'react'\nimport { StyleSheet, View, ScrollView } from 'react-native'\nimport { Heading } from '../../components'\nimport { Avatar } from '../../components/display/avatar'\nimport { Banner } from '../../components/display/banner'\nimport { Button } from '../../components/display/button'\nimport { Icon } from '../../components/display/icon'\nimport { Text } from '../../components/display/text'\nimport { useCurrentPerson, useTheme, useSubmitAgeCheck, useOrganization } from '../../hooks'\nimport { platformFontWeightBold } from '../../utils/styles'\nimport { AgeCheckSelectBirthdateModal } from './components/age_check_select_birthdate_modal'\n\nfunction calculateAge(birthdate: Date) {\n const today = new Date()\n const age = today.getUTCFullYear() - birthdate.getUTCFullYear()\n const hasHadBirthdayThisYear =\n today.getUTCMonth() > birthdate.getUTCMonth() ||\n (today.getUTCMonth() === birthdate.getUTCMonth() &&\n today.getUTCDate() >= birthdate.getUTCDate())\n return hasHadBirthdayThisYear ? age : age - 1\n}\n\nexport function AgeCheckRequiredScreen() {\n const person = useCurrentPerson()\n const { data: organization } = useOrganization()\n\n const [birthdate, setBirthdate] = useState<Date | null>(null)\n const [draftBirthdate, setDraftBirthdate] = useState<Date | null>(null)\n const [isBirthdateModalOpen, setBirthdateModalOpen] = useState(false)\n const { submitAgeCheck, isPending, isSuccess } = useSubmitAgeCheck()\n const styles = useStyles()\n\n const birthdateStamp = birthdate\n ? formatDate(birthdate, { style: 'standard', year: true, timeZone: 'UTC' })\n : 'Missing'\n\n const age = birthdate ? calculateAge(birthdate) : null\n\n const confirmationText =\n birthdate !== null\n ? `Your birthdate is ${birthdateStamp} and you are ${age} years old. Is that correct?`\n : ''\n\n const openBirthdateModal = () => {\n setDraftBirthdate(birthdate || new Date())\n setBirthdateModalOpen(true)\n }\n\n const closeBirthdateModal = () => {\n setBirthdateModalOpen(false)\n }\n\n const handleSubmitAgeConfirmation = () => {\n if (!birthdate) return\n submitAgeCheck(birthdate)\n }\n\n return (\n <>\n <ScrollView style={styles.scrollView} contentContainerStyle={styles.container}>\n <View style={styles.header}>\n <View style={styles.heading}>\n <Icon name=\"general.exclamationTriangle\" size={20} style={styles.warningIcon} />\n <Heading variant=\"h2\">Your age is required to use chat</Heading>\n </View>\n <Text>\n Privacy laws require us to verify your age before you can use messaging features. This\n helps us protect minors who use chat.\n </Text>\n </View>\n <View style={styles.cards}>\n <View style={styles.card}>\n <Heading variant=\"h3\">My profile</Heading>\n <View style={styles.profileContent}>\n <Avatar sourceUri={person.avatar || ''} size=\"lg\" showFallback={!person.avatar} />\n <View style={styles.personInfo}>\n <Text style={styles.name}>{person.name}</Text>\n <View style={styles.birthdateInfo}>\n <Text variant=\"tertiary\" style={styles.birthdateLabel}>\n Birthdate:{' '}\n </Text>\n <Text variant=\"tertiary\">{birthdateStamp}</Text>\n </View>\n </View>\n {birthdate && (\n <Button\n title=\"Edit\"\n accessibilityHint=\"Choose a new birthdate for your profile\"\n size=\"sm\"\n variant=\"outline\"\n style={styles.editButton}\n onPress={openBirthdateModal}\n />\n )}\n </View>\n {!birthdate && (\n <Button\n title=\"Add birthdate\"\n accessibilityHint=\"Choose a birthdate for your profile\"\n size=\"lg\"\n style={styles.primaryButton}\n onPress={openBirthdateModal}\n />\n )}\n </View>\n {birthdate && (\n <View style={styles.card}>\n <Heading variant=\"h3\">Age confirmation</Heading>\n {age !== null && age < 13 ? (\n <Banner appearance=\"warning\" description={confirmationText} />\n ) : (\n <Text>{confirmationText}</Text>\n )}\n <Button\n title=\"Yes, update my profile\"\n size=\"lg\"\n style={styles.primaryButton}\n onPress={handleSubmitAgeConfirmation}\n disabled={isPending || isSuccess}\n />\n </View>\n )}\n </View>\n <Text variant=\"tertiary\">\n Your birthdate will be added to your profile, but it is only visible to church\n administrators at {organization?.name}. It will not be shared with other church members,\n unless you give permission.\n </Text>\n </ScrollView>\n\n <AgeCheckSelectBirthdateModal\n onChange={setDraftBirthdate}\n onDismiss={closeBirthdateModal}\n onRequestClose={closeBirthdateModal}\n onSubmit={setBirthdate}\n value={draftBirthdate || new Date()}\n visible={isBirthdateModalOpen}\n />\n </>\n )\n}\n\nconst useStyles = () => {\n const { colors } = useTheme()\n return StyleSheet.create({\n scrollView: {\n flex: 1,\n backgroundColor: colors.surfaceColor080,\n },\n container: {\n padding: 16,\n gap: 16,\n },\n header: {\n gap: 8,\n },\n heading: {\n flexDirection: 'row',\n alignItems: 'center',\n gap: 8,\n },\n warningIcon: {\n color: colors.statusErrorIcon,\n },\n card: {\n backgroundColor: colors.surfaceColor100,\n borderRadius: 8,\n padding: 16,\n gap: 8,\n },\n cards: {\n gap: 8,\n },\n profileContent: {\n flexDirection: 'row',\n flexWrap: 'wrap',\n alignItems: 'flex-start',\n gap: 8,\n },\n personInfo: {\n flex: 1,\n minWidth: 0,\n },\n primaryButton: {\n alignSelf: 'center',\n marginTop: 8,\n },\n name: {\n fontWeight: platformFontWeightBold,\n },\n birthdateLabel: {\n fontWeight: platformFontWeightBold,\n },\n birthdateInfo: {\n flexDirection: 'row',\n flexWrap: 'wrap',\n alignItems: 'center',\n gap: 4,\n },\n editButton: {\n alignSelf: 'flex-end',\n },\n formSheetContent: {\n flex: 1,\n },\n })\n}\n"]}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
1
|
export interface AgeCheckUnderageScreenProps {
|
|
3
2
|
contactEmail?: string;
|
|
4
3
|
}
|
|
5
|
-
export declare function AgeCheckUnderageScreen({ contactEmail }?: AgeCheckUnderageScreenProps):
|
|
4
|
+
export declare function AgeCheckUnderageScreen({ contactEmail }?: AgeCheckUnderageScreenProps): import("react/jsx-runtime").JSX.Element;
|
|
6
5
|
//# sourceMappingURL=age_check_underage_screen.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"age_check_underage_screen.d.ts","sourceRoot":"","sources":["../../../src/screens/age_check/age_check_underage_screen.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"age_check_underage_screen.d.ts","sourceRoot":"","sources":["../../../src/screens/age_check/age_check_underage_screen.tsx"],"names":[],"mappings":"AAQA,MAAM,WAAW,2BAA2B;IAC1C,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,wBAAgB,sBAAsB,CAAC,EAAE,YAAY,EAAE,GAAE,2BAAgC,2CAuDxF"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
1
2
|
import { useRoute } from '@react-navigation/native';
|
|
2
|
-
import React from 'react';
|
|
3
3
|
import { Linking, StyleSheet, View, ScrollView } from 'react-native';
|
|
4
4
|
import { Heading } from '../../components';
|
|
5
5
|
import { Icon, Text, TextInlineButton } from '../../components/display';
|
|
@@ -16,30 +16,7 @@ export function AgeCheckUnderageScreen({ contactEmail } = {}) {
|
|
|
16
16
|
const openTerms = () => {
|
|
17
17
|
Linking.openURL('https://www.planningcenter.com/terms');
|
|
18
18
|
};
|
|
19
|
-
return (
|
|
20
|
-
<Icon name="general.outlinedTextMessage" size={32} style={styles.icon}/>
|
|
21
|
-
|
|
22
|
-
<View style={styles.content}>
|
|
23
|
-
<Heading variant="h3" style={styles.baseText}>
|
|
24
|
-
Chat is only available for users 13 and older.
|
|
25
|
-
</Heading>
|
|
26
|
-
<Text variant="tertiary" style={styles.baseText}>
|
|
27
|
-
If you submitted the wrong birthdate by accident,{` `}
|
|
28
|
-
{email ? (<TextInlineButton onPress={openChurchAdminHelp} accessibilityRole="link" accessibilityHint="Opens email client to contact your church administrator" style={styles.linkText}>
|
|
29
|
-
please contact your church administrator
|
|
30
|
-
</TextInlineButton>) : (<>please contact your church administrator</>)}
|
|
31
|
-
{` `}
|
|
32
|
-
to update your profile.
|
|
33
|
-
</Text>
|
|
34
|
-
<Text variant="tertiary" style={styles.baseText}>
|
|
35
|
-
For more information, view our{` `}
|
|
36
|
-
<TextInlineButton onPress={openTerms} accessibilityRole="link" accessibilityHint="Opens terms of service in browser" style={styles.linkText}>
|
|
37
|
-
terms of service
|
|
38
|
-
</TextInlineButton>
|
|
39
|
-
.
|
|
40
|
-
</Text>
|
|
41
|
-
</View>
|
|
42
|
-
</ScrollView>);
|
|
19
|
+
return (_jsxs(ScrollView, { style: styles.scrollView, contentContainerStyle: styles.container, children: [_jsx(Icon, { name: "general.outlinedTextMessage", size: 32, style: styles.icon }), _jsxs(View, { style: styles.content, children: [_jsx(Heading, { variant: "h3", style: styles.baseText, children: "Chat is only available for users 13 and older." }), _jsxs(Text, { variant: "tertiary", style: styles.baseText, children: ["If you submitted the wrong birthdate by accident,", ` `, email ? (_jsx(TextInlineButton, { onPress: openChurchAdminHelp, accessibilityRole: "link", accessibilityHint: "Opens email client to contact your church administrator", style: styles.linkText, children: "please contact your church administrator" })) : (_jsx(_Fragment, { children: "please contact your church administrator" })), ` `, "to update your profile."] }), _jsxs(Text, { variant: "tertiary", style: styles.baseText, children: ["For more information, view our", ` `, _jsx(TextInlineButton, { onPress: openTerms, accessibilityRole: "link", accessibilityHint: "Opens terms of service in browser", style: styles.linkText, children: "terms of service" }), "."] })] })] }));
|
|
43
20
|
}
|
|
44
21
|
const useStyles = () => {
|
|
45
22
|
const { colors } = useTheme();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"age_check_underage_screen.js","sourceRoot":"","sources":["../../../src/screens/age_check/age_check_underage_screen.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAa,MAAM,0BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"age_check_underage_screen.js","sourceRoot":"","sources":["../../../src/screens/age_check/age_check_underage_screen.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useRoute, RouteProp } from '@react-navigation/native'\nimport React from 'react'\nimport { Linking, StyleSheet, View, ScrollView } from 'react-native'\nimport { Heading } from '../../components'\nimport { Icon, Text, TextInlineButton } from '../../components/display'\nimport { useTheme } from '../../hooks'\nimport type { AgeCheckParams } from './screen_props'\n\nexport interface AgeCheckUnderageScreenProps {\n contactEmail?: string\n}\n\nexport function AgeCheckUnderageScreen({ contactEmail }: AgeCheckUnderageScreenProps = {}) {\n const styles = useStyles()\n const route = useRoute<RouteProp<AgeCheckParams, 'UnderagePerson'>>()\n\n const email = contactEmail ?? route?.params?.contactEmail\n\n const openChurchAdminHelp = () => {\n if (!email) return\n Linking.openURL(`mailto:${email}`)\n }\n\n const openTerms = () => {\n Linking.openURL('https://www.planningcenter.com/terms')\n }\n\n return (\n <ScrollView style={styles.scrollView} contentContainerStyle={styles.container}>\n <Icon name=\"general.outlinedTextMessage\" size={32} style={styles.icon} />\n\n <View style={styles.content}>\n <Heading variant=\"h3\" style={styles.baseText}>\n Chat is only available for users 13 and older.\n </Heading>\n <Text variant=\"tertiary\" style={styles.baseText}>\n If you submitted the wrong birthdate by accident,{` `}\n {email ? (\n <TextInlineButton\n onPress={openChurchAdminHelp}\n accessibilityRole=\"link\"\n accessibilityHint=\"Opens email client to contact your church administrator\"\n style={styles.linkText}\n >\n please contact your church administrator\n </TextInlineButton>\n ) : (\n <>please contact your church administrator</>\n )}\n {` `}\n to update your profile.\n </Text>\n <Text variant=\"tertiary\" style={styles.baseText}>\n For more information, view our{` `}\n <TextInlineButton\n onPress={openTerms}\n accessibilityRole=\"link\"\n accessibilityHint=\"Opens terms of service in browser\"\n style={styles.linkText}\n >\n terms of service\n </TextInlineButton>\n .\n </Text>\n </View>\n </ScrollView>\n )\n}\n\nconst useStyles = () => {\n const { colors } = useTheme()\n return StyleSheet.create({\n scrollView: {\n flex: 1,\n },\n container: {\n alignItems: 'center',\n justifyContent: 'center',\n gap: 16,\n padding: 16,\n minHeight: '100%',\n },\n icon: {\n color: colors.iconColorDefaultDisabled,\n },\n content: {\n alignItems: 'center',\n gap: 8,\n maxWidth: 250,\n },\n baseText: {\n textAlign: 'center',\n color: colors.textColorDefaultSecondary,\n },\n linkText: {\n fontSize: 14,\n },\n })\n}\n"]}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
1
|
export type AgeCheckSelectBirthdateProps = {
|
|
3
2
|
onChange: (date: Date) => void;
|
|
4
3
|
onDismiss?: () => void;
|
|
@@ -7,5 +6,5 @@ export type AgeCheckSelectBirthdateProps = {
|
|
|
7
6
|
value?: Date | null;
|
|
8
7
|
visible?: boolean;
|
|
9
8
|
};
|
|
10
|
-
export declare function AgeCheckSelectBirthdateModal(props: AgeCheckSelectBirthdateProps):
|
|
9
|
+
export declare function AgeCheckSelectBirthdateModal(props: AgeCheckSelectBirthdateProps): import("react/jsx-runtime").JSX.Element;
|
|
11
10
|
//# sourceMappingURL=age_check_select_birthdate_modal.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"age_check_select_birthdate_modal.d.ts","sourceRoot":"","sources":["../../../../src/screens/age_check/components/age_check_select_birthdate_modal.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"age_check_select_birthdate_modal.d.ts","sourceRoot":"","sources":["../../../../src/screens/age_check/components/age_check_select_birthdate_modal.tsx"],"names":[],"mappings":"AAOA,MAAM,MAAM,4BAA4B,GAAG;IACzC,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAA;IAC9B,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;IACtB,cAAc,EAAE,MAAM,IAAI,CAAA;IAC1B,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAA;IAC9B,KAAK,CAAC,EAAE,IAAI,GAAG,IAAI,CAAA;IACnB,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,CAAA;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,4BAA4B,2CAK/E"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
1
2
|
import DateTimePicker from '@react-native-community/datetimepicker';
|
|
2
3
|
import React from 'react';
|
|
3
4
|
import { Modal, Platform, StyleSheet, View } from 'react-native';
|
|
@@ -6,10 +7,10 @@ import FormSheet from '../../../components/primitive/form_sheet';
|
|
|
6
7
|
import { useTheme } from '../../../hooks';
|
|
7
8
|
export function AgeCheckSelectBirthdateModal(props) {
|
|
8
9
|
if (Platform.OS === 'ios')
|
|
9
|
-
return
|
|
10
|
+
return _jsx(IOSBirthdateModal, { ...props });
|
|
10
11
|
if (Platform.OS === 'android')
|
|
11
|
-
return
|
|
12
|
-
return
|
|
12
|
+
return _jsx(AndroidBirthdatePicker, { ...props });
|
|
13
|
+
return _jsx(Text, { children: "Birthdate selection is not supported on this platform." });
|
|
13
14
|
}
|
|
14
15
|
const MINIMUM_BIRTHDATE = new Date(1900, 0, 1);
|
|
15
16
|
function IOSBirthdateModal({ onChange, onDismiss, onRequestClose, onSubmit, value, visible, }) {
|
|
@@ -24,27 +25,7 @@ function IOSBirthdateModal({ onChange, onDismiss, onRequestClose, onSubmit, valu
|
|
|
24
25
|
onSubmit(selected);
|
|
25
26
|
onRequestClose();
|
|
26
27
|
};
|
|
27
|
-
return (
|
|
28
|
-
<FormSheet.Root style={styles.formSheet} contentStyle={styles.formSheetContent}>
|
|
29
|
-
<FormSheet.Header>
|
|
30
|
-
<FormSheet.HeaderTitle>Your birthdate</FormSheet.HeaderTitle>
|
|
31
|
-
<FormSheet.HeaderActions>
|
|
32
|
-
<FormSheet.HeaderTextButton onPress={onRequestClose}>Cancel</FormSheet.HeaderTextButton>
|
|
33
|
-
<FormSheet.HeaderButton title="Save" onPress={handleSave}/>
|
|
34
|
-
</FormSheet.HeaderActions>
|
|
35
|
-
</FormSheet.Header>
|
|
36
|
-
<View style={styles.content}>
|
|
37
|
-
<View style={styles.card}>
|
|
38
|
-
<Text nativeID="birthdateLabel" variant="tertiary" style={styles.label}>
|
|
39
|
-
Birthdate
|
|
40
|
-
</Text>
|
|
41
|
-
<View style={styles.pickerContainer}>
|
|
42
|
-
<DateTimePicker timeZoneName="UTC" accessibilityLabelledBy="birthdateLabel" testID="age-check-date-picker" mode="date" display="spinner" value={selected} minimumDate={MINIMUM_BIRTHDATE} maximumDate={today} onChange={handleChange}/>
|
|
43
|
-
</View>
|
|
44
|
-
</View>
|
|
45
|
-
</View>
|
|
46
|
-
</FormSheet.Root>
|
|
47
|
-
</Modal>);
|
|
28
|
+
return (_jsx(Modal, { visible: visible, animationType: "slide", presentationStyle: "pageSheet", onRequestClose: onRequestClose, onDismiss: onDismiss, children: _jsxs(FormSheet.Root, { style: styles.formSheet, contentStyle: styles.formSheetContent, children: [_jsxs(FormSheet.Header, { children: [_jsx(FormSheet.HeaderTitle, { children: "Your birthdate" }), _jsxs(FormSheet.HeaderActions, { children: [_jsx(FormSheet.HeaderTextButton, { onPress: onRequestClose, children: "Cancel" }), _jsx(FormSheet.HeaderButton, { title: "Save", onPress: handleSave })] })] }), _jsx(View, { style: styles.content, children: _jsxs(View, { style: styles.card, children: [_jsx(Text, { nativeID: "birthdateLabel", variant: "tertiary", style: styles.label, children: "Birthdate" }), _jsx(View, { style: styles.pickerContainer, children: _jsx(DateTimePicker, { timeZoneName: "UTC", accessibilityLabelledBy: "birthdateLabel", testID: "age-check-date-picker", mode: "date", display: "spinner", value: selected, minimumDate: MINIMUM_BIRTHDATE, maximumDate: today, onChange: handleChange }) })] }) })] }) }));
|
|
48
29
|
}
|
|
49
30
|
function AndroidBirthdatePicker({ onRequestClose, onSubmit, value, visible, }) {
|
|
50
31
|
if (!visible)
|
|
@@ -57,7 +38,7 @@ function AndroidBirthdatePicker({ onRequestClose, onSubmit, value, visible, }) {
|
|
|
57
38
|
}
|
|
58
39
|
onRequestClose();
|
|
59
40
|
};
|
|
60
|
-
return (
|
|
41
|
+
return (_jsx(DateTimePicker, { timeZoneName: "UTC", testID: "age-check-date-picker-android", mode: "date", display: "spinner", value: selected, minimumDate: MINIMUM_BIRTHDATE, maximumDate: today, onChange: handleAndroidDateChange }));
|
|
61
42
|
}
|
|
62
43
|
const useStyles = () => {
|
|
63
44
|
const { colors } = useTheme();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"age_check_select_birthdate_modal.js","sourceRoot":"","sources":["../../../../src/screens/age_check/components/age_check_select_birthdate_modal.tsx"],"names":[],"mappings":"AAAA,OAAO,cAAuC,MAAM,wCAAwC,CAAA;AAC5F,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAChE,OAAO,EAAE,IAAI,EAAE,MAAM,kCAAkC,CAAA;AACvD,OAAO,SAAS,MAAM,0CAA0C,CAAA;AAChE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAWzC,MAAM,UAAU,4BAA4B,CAAC,KAAmC;IAC9E,IAAI,QAAQ,CAAC,EAAE,KAAK,KAAK;QAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"age_check_select_birthdate_modal.js","sourceRoot":"","sources":["../../../../src/screens/age_check/components/age_check_select_birthdate_modal.tsx"],"names":[],"mappings":";AAAA,OAAO,cAAuC,MAAM,wCAAwC,CAAA;AAC5F,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAChE,OAAO,EAAE,IAAI,EAAE,MAAM,kCAAkC,CAAA;AACvD,OAAO,SAAS,MAAM,0CAA0C,CAAA;AAChE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAWzC,MAAM,UAAU,4BAA4B,CAAC,KAAmC;IAC9E,IAAI,QAAQ,CAAC,EAAE,KAAK,KAAK;QAAE,OAAO,KAAC,iBAAiB,OAAK,KAAK,GAAI,CAAA;IAClE,IAAI,QAAQ,CAAC,EAAE,KAAK,SAAS;QAAE,OAAO,KAAC,sBAAsB,OAAK,KAAK,GAAI,CAAA;IAE3E,OAAO,KAAC,IAAI,yEAA8D,CAAA;AAC5E,CAAC;AAED,MAAM,iBAAiB,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;AAE9C,SAAS,iBAAiB,CAAC,EACzB,QAAQ,EACR,SAAS,EACT,cAAc,EACd,QAAQ,EACR,KAAK,EACL,OAAO,GACsB;IAC7B,MAAM,MAAM,GAAG,SAAS,EAAE,CAAA;IAC1B,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,EAAE,EAAE,CAAC,CAAA;IACjD,MAAM,QAAQ,GAAG,KAAK,IAAI,KAAK,CAAA;IAE/B,MAAM,YAAY,GAAG,CAAC,MAA2B,EAAE,IAAW,EAAE,EAAE;QAChE,IAAI,IAAI;YAAE,QAAQ,CAAC,IAAI,CAAC,CAAA;IAC1B,CAAC,CAAA;IAED,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,QAAQ,CAAC,QAAQ,CAAC,CAAA;QAClB,cAAc,EAAE,CAAA;IAClB,CAAC,CAAA;IAED,OAAO,CACL,KAAC,KAAK,IACJ,OAAO,EAAE,OAAO,EAChB,aAAa,EAAC,OAAO,EACrB,iBAAiB,EAAC,WAAW,EAC7B,cAAc,EAAE,cAAc,EAC9B,SAAS,EAAE,SAAS,YAEpB,MAAC,SAAS,CAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,SAAS,EAAE,YAAY,EAAE,MAAM,CAAC,gBAAgB,aAC5E,MAAC,SAAS,CAAC,MAAM,eACf,KAAC,SAAS,CAAC,WAAW,iCAAuC,EAC7D,MAAC,SAAS,CAAC,aAAa,eACtB,KAAC,SAAS,CAAC,gBAAgB,IAAC,OAAO,EAAE,cAAc,uBAAqC,EACxF,KAAC,SAAS,CAAC,YAAY,IAAC,KAAK,EAAC,MAAM,EAAC,OAAO,EAAE,UAAU,GAAI,IACpC,IACT,EACnB,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,OAAO,YACzB,MAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,IAAI,aACtB,KAAC,IAAI,IAAC,QAAQ,EAAC,gBAAgB,EAAC,OAAO,EAAC,UAAU,EAAC,KAAK,EAAE,MAAM,CAAC,KAAK,0BAE/D,EACP,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,eAAe,YACjC,KAAC,cAAc,IACb,YAAY,EAAC,KAAK,EAClB,uBAAuB,EAAC,gBAAgB,EACxC,MAAM,EAAC,uBAAuB,EAC9B,IAAI,EAAC,MAAM,EACX,OAAO,EAAC,SAAS,EACjB,KAAK,EAAE,QAAQ,EACf,WAAW,EAAE,iBAAiB,EAC9B,WAAW,EAAE,KAAK,EAClB,QAAQ,EAAE,YAAY,GACtB,GACG,IACF,GACF,IACQ,GACX,CACT,CAAA;AACH,CAAC;AAED,SAAS,sBAAsB,CAAC,EAC9B,cAAc,EACd,QAAQ,EACR,KAAK,EACL,OAAO,GACsB;IAC7B,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAA;IAEzB,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAA;IACxB,MAAM,QAAQ,GAAG,KAAK,IAAI,KAAK,CAAA;IAE/B,MAAM,uBAAuB,GAAG,CAAC,KAA0B,EAAE,YAAmB,EAAE,EAAE;QAClF,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,IAAI,YAAY,EAAE,CAAC;YACzC,QAAQ,CAAC,YAAY,CAAC,CAAA;QACxB,CAAC;QACD,cAAc,EAAE,CAAA;IAClB,CAAC,CAAA;IAED,OAAO,CACL,KAAC,cAAc,IACb,YAAY,EAAC,KAAK,EAClB,MAAM,EAAC,+BAA+B,EACtC,IAAI,EAAC,MAAM,EACX,OAAO,EAAC,SAAS,EACjB,KAAK,EAAE,QAAQ,EACf,WAAW,EAAE,iBAAiB,EAC9B,WAAW,EAAE,KAAK,EAClB,QAAQ,EAAE,uBAAuB,GACjC,CACH,CAAA;AACH,CAAC;AAED,MAAM,SAAS,GAAG,GAAG,EAAE;IACrB,MAAM,EAAE,MAAM,EAAE,GAAG,QAAQ,EAAE,CAAA;IAC7B,OAAO,UAAU,CAAC,MAAM,CAAC;QACvB,SAAS,EAAE;YACT,eAAe,EAAE,MAAM,CAAC,eAAe;SACxC;QACD,gBAAgB,EAAE;YAChB,IAAI,EAAE,CAAC;SACR;QACD,OAAO,EAAE;YACP,IAAI,EAAE,CAAC;YACP,eAAe,EAAE,MAAM,CAAC,eAAe;YACvC,OAAO,EAAE,EAAE;YACX,cAAc,EAAE,YAAY;SAC7B;QACD,IAAI,EAAE;YACJ,eAAe,EAAE,MAAM,CAAC,eAAe;YACvC,YAAY,EAAE,CAAC;YACf,OAAO,EAAE,EAAE;SACZ;QACD,KAAK,EAAE;YACL,YAAY,EAAE,CAAC;YACf,aAAa,EAAE,WAAW;SAC3B;QACD,eAAe,EAAE;YACf,eAAe,EAAE,MAAM,CAAC,eAAe;YACvC,YAAY,EAAE,CAAC;SAChB;KACF,CAAC,CAAA;AACJ,CAAC,CAAA","sourcesContent":["import DateTimePicker, { DateTimePickerEvent } from '@react-native-community/datetimepicker'\nimport React from 'react'\nimport { Modal, Platform, StyleSheet, View } from 'react-native'\nimport { Text } from '../../../components/display/text'\nimport FormSheet from '../../../components/primitive/form_sheet'\nimport { useTheme } from '../../../hooks'\n\nexport type AgeCheckSelectBirthdateProps = {\n onChange: (date: Date) => void\n onDismiss?: () => void\n onRequestClose: () => void\n onSubmit: (date: Date) => void\n value?: Date | null\n visible?: boolean\n}\n\nexport function AgeCheckSelectBirthdateModal(props: AgeCheckSelectBirthdateProps) {\n if (Platform.OS === 'ios') return <IOSBirthdateModal {...props} />\n if (Platform.OS === 'android') return <AndroidBirthdatePicker {...props} />\n\n return <Text>Birthdate selection is not supported on this platform.</Text>\n}\n\nconst MINIMUM_BIRTHDATE = new Date(1900, 0, 1)\n\nfunction IOSBirthdateModal({\n onChange,\n onDismiss,\n onRequestClose,\n onSubmit,\n value,\n visible,\n}: AgeCheckSelectBirthdateProps) {\n const styles = useStyles()\n const today = React.useMemo(() => new Date(), [])\n const selected = value || today\n\n const handleChange = (_event: DateTimePickerEvent, date?: Date) => {\n if (date) onChange(date)\n }\n\n const handleSave = () => {\n onSubmit(selected)\n onRequestClose()\n }\n\n return (\n <Modal\n visible={visible}\n animationType=\"slide\"\n presentationStyle=\"pageSheet\"\n onRequestClose={onRequestClose}\n onDismiss={onDismiss}\n >\n <FormSheet.Root style={styles.formSheet} contentStyle={styles.formSheetContent}>\n <FormSheet.Header>\n <FormSheet.HeaderTitle>Your birthdate</FormSheet.HeaderTitle>\n <FormSheet.HeaderActions>\n <FormSheet.HeaderTextButton onPress={onRequestClose}>Cancel</FormSheet.HeaderTextButton>\n <FormSheet.HeaderButton title=\"Save\" onPress={handleSave} />\n </FormSheet.HeaderActions>\n </FormSheet.Header>\n <View style={styles.content}>\n <View style={styles.card}>\n <Text nativeID=\"birthdateLabel\" variant=\"tertiary\" style={styles.label}>\n Birthdate\n </Text>\n <View style={styles.pickerContainer}>\n <DateTimePicker\n timeZoneName=\"UTC\"\n accessibilityLabelledBy=\"birthdateLabel\"\n testID=\"age-check-date-picker\"\n mode=\"date\"\n display=\"spinner\"\n value={selected}\n minimumDate={MINIMUM_BIRTHDATE}\n maximumDate={today}\n onChange={handleChange}\n />\n </View>\n </View>\n </View>\n </FormSheet.Root>\n </Modal>\n )\n}\n\nfunction AndroidBirthdatePicker({\n onRequestClose,\n onSubmit,\n value,\n visible,\n}: AgeCheckSelectBirthdateProps) {\n if (!visible) return null\n\n const today = new Date()\n const selected = value || today\n\n const handleAndroidDateChange = (event: DateTimePickerEvent, selectedDate?: Date) => {\n if (event.type === 'set' && selectedDate) {\n onSubmit(selectedDate)\n }\n onRequestClose()\n }\n\n return (\n <DateTimePicker\n timeZoneName=\"UTC\"\n testID=\"age-check-date-picker-android\"\n mode=\"date\"\n display=\"spinner\"\n value={selected}\n minimumDate={MINIMUM_BIRTHDATE}\n maximumDate={today}\n onChange={handleAndroidDateChange}\n />\n )\n}\n\nconst useStyles = () => {\n const { colors } = useTheme()\n return StyleSheet.create({\n formSheet: {\n backgroundColor: colors.surfaceColor080,\n },\n formSheetContent: {\n flex: 1,\n },\n content: {\n flex: 1,\n backgroundColor: colors.surfaceColor080,\n padding: 16,\n justifyContent: 'flex-start',\n },\n card: {\n backgroundColor: colors.surfaceColor100,\n borderRadius: 8,\n padding: 16,\n },\n label: {\n marginBottom: 8,\n textTransform: 'uppercase',\n },\n pickerContainer: {\n backgroundColor: colors.surfaceColor100,\n borderRadius: 8,\n },\n })\n}\n"]}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { StaticScreenProps } from '@react-navigation/native';
|
|
2
|
-
import React from 'react';
|
|
3
2
|
export declare const AttachmentActionsScreenOptions: import("@react-navigation/native-stack").NativeStackNavigationOptions;
|
|
4
3
|
export type AttachmentActionsScreenProps = StaticScreenProps<{
|
|
5
4
|
attachmentId: string;
|
|
@@ -9,5 +8,5 @@ export type AttachmentActionsScreenProps = StaticScreenProps<{
|
|
|
9
8
|
canDeleteNonAuthoredMessages: boolean;
|
|
10
9
|
myMessage: boolean;
|
|
11
10
|
}>;
|
|
12
|
-
export declare function AttachmentActionsScreen({ route }: AttachmentActionsScreenProps):
|
|
11
|
+
export declare function AttachmentActionsScreen({ route }: AttachmentActionsScreenProps): import("react/jsx-runtime").JSX.Element;
|
|
13
12
|
//# sourceMappingURL=attachment_actions_screen.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"attachment_actions_screen.d.ts","sourceRoot":"","sources":["../../../src/screens/attachment_actions/attachment_actions_screen.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAiB,MAAM,0BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"attachment_actions_screen.d.ts","sourceRoot":"","sources":["../../../src/screens/attachment_actions/attachment_actions_screen.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAiB,MAAM,0BAA0B,CAAA;AAM3E,eAAO,MAAM,8BAA8B,uEAEzC,CAAA;AAEF,MAAM,MAAM,4BAA4B,GAAG,iBAAiB,CAAC;IAC3D,YAAY,EAAE,MAAM,CAAA;IACpB,qBAAqB,EAAE,MAAM,CAAA;IAC7B,aAAa,EAAE,MAAM,CAAA;IACrB,eAAe,EAAE,MAAM,CAAA;IACvB,4BAA4B,EAAE,OAAO,CAAA;IACrC,SAAS,EAAE,OAAO,CAAA;CACnB,CAAC,CAAA;AAEF,wBAAgB,uBAAuB,CAAC,EAAE,KAAK,EAAE,EAAE,4BAA4B,2CAgE9E"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
1
2
|
import { useNavigation } from '@react-navigation/native';
|
|
2
|
-
import
|
|
3
|
+
import { useCallback } from 'react';
|
|
3
4
|
import { Alert, Linking, StyleSheet } from 'react-native';
|
|
4
5
|
import FormSheet, { getFormSheetScreenOptions } from '../../components/primitive/form_sheet';
|
|
5
6
|
import { useDeleteAttachment } from './hooks/useDeleteAttachment';
|
|
@@ -34,10 +35,7 @@ export function AttachmentActionsScreen({ route }) {
|
|
|
34
35
|
Linking.openURL(attachmentUrl);
|
|
35
36
|
navigation.goBack();
|
|
36
37
|
};
|
|
37
|
-
return (
|
|
38
|
-
<FormSheet.Action iconName="general.newWindow" title="Open in browser" accessibilityRole="link" accessibilityLabel={`Open ${attachmentName} in browser`} accessibilityHint={`${attachmentName} can be downloaded and shared through the browser.`} onPress={handleOpenInBrowser}/>
|
|
39
|
-
{canDelete && (<FormSheet.Action appearance="danger" iconName="publishing.trash" title={`Delete ${attachmentName}`} onPress={handleDeleteConfirm}/>)}
|
|
40
|
-
</FormSheet.Root>);
|
|
38
|
+
return (_jsxs(FormSheet.Root, { contentStyle: styles.formSheetContent, children: [_jsx(FormSheet.Action, { iconName: "general.newWindow", title: "Open in browser", accessibilityRole: "link", accessibilityLabel: `Open ${attachmentName} in browser`, accessibilityHint: `${attachmentName} can be downloaded and shared through the browser.`, onPress: handleOpenInBrowser }), canDelete && (_jsx(FormSheet.Action, { appearance: "danger", iconName: "publishing.trash", title: `Delete ${attachmentName}`, onPress: handleDeleteConfirm }))] }));
|
|
41
39
|
}
|
|
42
40
|
const useStyles = () => {
|
|
43
41
|
return StyleSheet.create({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"attachment_actions_screen.js","sourceRoot":"","sources":["../../../src/screens/attachment_actions/attachment_actions_screen.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAqB,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAC3E,
|
|
1
|
+
{"version":3,"file":"attachment_actions_screen.js","sourceRoot":"","sources":["../../../src/screens/attachment_actions/attachment_actions_screen.tsx"],"names":[],"mappings":"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","sourcesContent":["import { StaticScreenProps, useNavigation } from '@react-navigation/native'\nimport React, { useCallback } from 'react'\nimport { Alert, Linking, StyleSheet } from 'react-native'\nimport FormSheet, { getFormSheetScreenOptions } from '../../components/primitive/form_sheet'\nimport { useDeleteAttachment } from './hooks/useDeleteAttachment'\n\nexport const AttachmentActionsScreenOptions = getFormSheetScreenOptions({\n headerTitle: 'Attachment actions',\n})\n\nexport type AttachmentActionsScreenProps = StaticScreenProps<{\n attachmentId: string\n attachmentContentType: string\n attachmentUrl: string\n conversation_id: number\n canDeleteNonAuthoredMessages: boolean\n myMessage: boolean\n}>\n\nexport function AttachmentActionsScreen({ route }: AttachmentActionsScreenProps) {\n const navigation = useNavigation()\n const {\n attachmentId,\n attachmentContentType,\n attachmentUrl,\n conversation_id,\n canDeleteNonAuthoredMessages,\n myMessage,\n } = route.params\n\n const attachmentName = getAttachmentLabelName(attachmentContentType)\n const canDelete = myMessage || canDeleteNonAuthoredMessages\n const styles = useStyles()\n\n const { handleDeleteAttachment } = useDeleteAttachment({\n conversation_id,\n attachmentId,\n attachmentName,\n })\n\n const handleDeleteConfirm = useCallback(() => {\n Alert.alert(\n `Delete ${attachmentName}`,\n 'Are you sure you want to permanently delete this attachment?',\n [\n { text: 'Cancel', style: 'cancel' },\n {\n text: 'Delete',\n style: 'destructive',\n onPress: () => {\n handleDeleteAttachment()\n navigation.goBack()\n },\n },\n ]\n )\n }, [attachmentName, handleDeleteAttachment, navigation])\n\n const handleOpenInBrowser = () => {\n Linking.openURL(attachmentUrl)\n navigation.goBack()\n }\n\n return (\n <FormSheet.Root contentStyle={styles.formSheetContent}>\n <FormSheet.Action\n iconName=\"general.newWindow\"\n title=\"Open in browser\"\n accessibilityRole=\"link\"\n accessibilityLabel={`Open ${attachmentName} in browser`}\n accessibilityHint={`${attachmentName} can be downloaded and shared through the browser.`}\n onPress={handleOpenInBrowser}\n />\n {canDelete && (\n <FormSheet.Action\n appearance=\"danger\"\n iconName=\"publishing.trash\"\n title={`Delete ${attachmentName}`}\n onPress={handleDeleteConfirm}\n />\n )}\n </FormSheet.Root>\n )\n}\n\nconst useStyles = () => {\n return StyleSheet.create({\n formSheetContent: {\n paddingTop: 16,\n },\n })\n}\n\nfunction getAttachmentLabelName(contentType: string) {\n if (contentType.startsWith('image/')) return 'image'\n if (contentType.startsWith('video/')) return 'video'\n if (contentType.startsWith('audio/')) return 'audio'\n if (contentType === 'application/pdf') return 'PDF'\n if (contentType.startsWith('application/')) return 'file'\n\n return ''\n}\n"]}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { StaticScreenProps } from '@react-navigation/native';
|
|
2
|
-
import React from 'react';
|
|
3
2
|
import { type AvatarUpdatePayload } from '../../hooks/use_conversation_avatar_update';
|
|
4
3
|
export declare const AvatarPickerScreenOptions: import("@react-navigation/native-stack").NativeStackNavigationOptions;
|
|
5
4
|
export declare const AvatarPickerCreateScreenOptions: import("@react-navigation/native-stack").NativeStackNavigationOptions;
|
|
@@ -8,5 +7,5 @@ export type AvatarPickerScreenProps = StaticScreenProps<{
|
|
|
8
7
|
source_params?: Record<string, unknown>;
|
|
9
8
|
avatar_selection?: AvatarUpdatePayload;
|
|
10
9
|
}>;
|
|
11
|
-
export declare function AvatarPickerScreen({ route }: AvatarPickerScreenProps):
|
|
10
|
+
export declare function AvatarPickerScreen({ route }: AvatarPickerScreenProps): import("react/jsx-runtime").JSX.Element;
|
|
12
11
|
//# sourceMappingURL=avatar_picker_screen.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"avatar_picker_screen.d.ts","sourceRoot":"","sources":["../../../src/screens/avatar_picker/avatar_picker_screen.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAgB,iBAAiB,EAAiB,MAAM,0BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"avatar_picker_screen.d.ts","sourceRoot":"","sources":["../../../src/screens/avatar_picker/avatar_picker_screen.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAgB,iBAAiB,EAAiB,MAAM,0BAA0B,CAAA;AAWzF,OAAO,EAEL,KAAK,mBAAmB,EACzB,MAAM,4CAA4C,CAAA;AAoBnD,eAAO,MAAM,yBAAyB,uEAIpC,CAAA;AAEF,eAAO,MAAM,+BAA+B,uEAI1C,CAAA;AAEF,MAAM,MAAM,uBAAuB,GAAG,iBAAiB,CAAC;IACtD,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACvC,gBAAgB,CAAC,EAAE,mBAAmB,CAAA;CACvC,CAAC,CAAA;AAUF,wBAAgB,kBAAkB,CAAC,EAAE,KAAK,EAAE,EAAE,uBAAuB,2CAMpE"}
|