@droppii-org/chat-mobile 0.2.106 → 0.2.108

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.
Files changed (187) hide show
  1. package/lib/module/components/ThreadCard/ThreadCard.js +2 -0
  2. package/lib/module/components/ThreadCard/ThreadCard.js.map +1 -1
  3. package/lib/module/components/messages/ExpandableMessageText.js +112 -0
  4. package/lib/module/components/messages/ExpandableMessageText.js.map +1 -0
  5. package/lib/module/components/messages/PreviewScrollableText.js +80 -0
  6. package/lib/module/components/messages/PreviewScrollableText.js.map +1 -0
  7. package/lib/module/components/messages/fileMessage/index.js +9 -2
  8. package/lib/module/components/messages/fileMessage/index.js.map +1 -1
  9. package/lib/module/components/messages/linkMessage/index.js +21 -12
  10. package/lib/module/components/messages/linkMessage/index.js.map +1 -1
  11. package/lib/module/components/messages/quotedMessage/index.js +18 -3
  12. package/lib/module/components/messages/quotedMessage/index.js.map +1 -1
  13. package/lib/module/components/messages/textMessage/index.js +7 -1
  14. package/lib/module/components/messages/textMessage/index.js.map +1 -1
  15. package/lib/module/components/messages/types.js.map +1 -1
  16. package/lib/module/context/TimelinePressGuardContext.js +14 -0
  17. package/lib/module/context/TimelinePressGuardContext.js.map +1 -0
  18. package/lib/module/hooks/useConversationList.js +4 -0
  19. package/lib/module/hooks/useConversationList.js.map +1 -1
  20. package/lib/module/hooks/useDismissKeyboardFirst.js +19 -0
  21. package/lib/module/hooks/useDismissKeyboardFirst.js.map +1 -0
  22. package/lib/module/hooks/useExpandableText.js +125 -0
  23. package/lib/module/hooks/useExpandableText.js.map +1 -0
  24. package/lib/module/hooks/useGuardedPress.js +19 -0
  25. package/lib/module/hooks/useGuardedPress.js.map +1 -0
  26. package/lib/module/screens/chat-detail/ChatComposer.js +89 -498
  27. package/lib/module/screens/chat-detail/ChatComposer.js.map +1 -1
  28. package/lib/module/screens/chat-detail/ChatDetail.js +49 -20
  29. package/lib/module/screens/chat-detail/ChatDetail.js.map +1 -1
  30. package/lib/module/screens/chat-detail/ChatListLegend.js +113 -76
  31. package/lib/module/screens/chat-detail/ChatListLegend.js.map +1 -1
  32. package/lib/module/screens/chat-detail/PinnedMessagesSheet.js +7 -0
  33. package/lib/module/screens/chat-detail/PinnedMessagesSheet.js.map +1 -1
  34. package/lib/module/screens/chat-detail/components/ChatComposerAccessorySlot.js +47 -0
  35. package/lib/module/screens/chat-detail/components/ChatComposerAccessorySlot.js.map +1 -0
  36. package/lib/module/screens/chat-detail/components/ChatComposerInputArea.js +149 -0
  37. package/lib/module/screens/chat-detail/components/ChatComposerInputArea.js.map +1 -0
  38. package/lib/module/screens/chat-detail/components/ChatComposerStatusBanner.js +104 -0
  39. package/lib/module/screens/chat-detail/components/ChatComposerStatusBanner.js.map +1 -0
  40. package/lib/module/screens/chat-detail/hooks/useChatComposerAnimation.js +0 -17
  41. package/lib/module/screens/chat-detail/hooks/useChatComposerAnimation.js.map +1 -1
  42. package/lib/module/screens/chat-detail/hooks/useChatComposerState.js +16 -2
  43. package/lib/module/screens/chat-detail/hooks/useChatComposerState.js.map +1 -1
  44. package/lib/module/screens/chat-detail/hooks/useComposerBotMenu.js +122 -0
  45. package/lib/module/screens/chat-detail/hooks/useComposerBotMenu.js.map +1 -0
  46. package/lib/module/screens/chat-detail/hooks/useComposerPanelActions.js +46 -0
  47. package/lib/module/screens/chat-detail/hooks/useComposerPanelActions.js.map +1 -0
  48. package/lib/module/screens/chat-detail/hooks/useComposerPanelDismiss.js +75 -0
  49. package/lib/module/screens/chat-detail/hooks/useComposerPanelDismiss.js.map +1 -0
  50. package/lib/module/screens/chat-detail/hooks/useComposerPanels.js +136 -0
  51. package/lib/module/screens/chat-detail/hooks/useComposerPanels.js.map +1 -0
  52. package/lib/module/screens/chat-detail/hooks/useComposerSend.js +74 -0
  53. package/lib/module/screens/chat-detail/hooks/useComposerSend.js.map +1 -0
  54. package/lib/module/screens/chat-detail/legend/LegendChatMessage.js +12 -3
  55. package/lib/module/screens/chat-detail/legend/LegendChatMessage.js.map +1 -1
  56. package/lib/module/screens/chat-detail/messageToolbox/MessageToolboxOverlay.js +11 -2
  57. package/lib/module/screens/chat-detail/messageToolbox/MessageToolboxOverlay.js.map +1 -1
  58. package/lib/module/screens/chat-detail/messageToolbox/MessageToolboxWrapper.js +79 -6
  59. package/lib/module/screens/chat-detail/messageToolbox/MessageToolboxWrapper.js.map +1 -1
  60. package/lib/module/screens/chat-detail/messageToolbox/useClonePreview.js +30 -0
  61. package/lib/module/screens/chat-detail/messageToolbox/useClonePreview.js.map +1 -0
  62. package/lib/module/screens/chat-detail/types.js +5 -0
  63. package/lib/module/screens/chat-detail/types.js.map +1 -1
  64. package/lib/module/store/expandedMessage.js +28 -0
  65. package/lib/module/store/expandedMessage.js.map +1 -0
  66. package/lib/module/store/message.js +14 -0
  67. package/lib/module/store/message.js.map +1 -1
  68. package/lib/module/utils/composerPanelDismissGesture.js +52 -0
  69. package/lib/module/utils/composerPanelDismissGesture.js.map +1 -0
  70. package/lib/module/utils/expandableText.js +41 -0
  71. package/lib/module/utils/expandableText.js.map +1 -0
  72. package/lib/module/utils/inlineTruncation.js +51 -0
  73. package/lib/module/utils/inlineTruncation.js.map +1 -0
  74. package/lib/module/utils/perf-marker.js +44 -0
  75. package/lib/module/utils/perf-marker.js.map +1 -0
  76. package/lib/module/utils/truncateTextChildren.js +38 -0
  77. package/lib/module/utils/truncateTextChildren.js.map +1 -0
  78. package/lib/typescript/src/components/ThreadCard/ThreadCard.d.ts.map +1 -1
  79. package/lib/typescript/src/components/messages/ExpandableMessageText.d.ts +25 -0
  80. package/lib/typescript/src/components/messages/ExpandableMessageText.d.ts.map +1 -0
  81. package/lib/typescript/src/components/messages/PreviewScrollableText.d.ts +29 -0
  82. package/lib/typescript/src/components/messages/PreviewScrollableText.d.ts.map +1 -0
  83. package/lib/typescript/src/components/messages/fileMessage/index.d.ts.map +1 -1
  84. package/lib/typescript/src/components/messages/linkMessage/index.d.ts +1 -1
  85. package/lib/typescript/src/components/messages/linkMessage/index.d.ts.map +1 -1
  86. package/lib/typescript/src/components/messages/quotedMessage/index.d.ts.map +1 -1
  87. package/lib/typescript/src/components/messages/textMessage/index.d.ts +1 -1
  88. package/lib/typescript/src/components/messages/textMessage/index.d.ts.map +1 -1
  89. package/lib/typescript/src/components/messages/types.d.ts +18 -0
  90. package/lib/typescript/src/components/messages/types.d.ts.map +1 -1
  91. package/lib/typescript/src/context/TimelinePressGuardContext.d.ts +3 -0
  92. package/lib/typescript/src/context/TimelinePressGuardContext.d.ts.map +1 -0
  93. package/lib/typescript/src/hooks/useConversationList.d.ts.map +1 -1
  94. package/lib/typescript/src/hooks/useDismissKeyboardFirst.d.ts +8 -0
  95. package/lib/typescript/src/hooks/useDismissKeyboardFirst.d.ts.map +1 -0
  96. package/lib/typescript/src/hooks/useExpandableText.d.ts +13 -0
  97. package/lib/typescript/src/hooks/useExpandableText.d.ts.map +1 -0
  98. package/lib/typescript/src/hooks/useGuardedPress.d.ts +9 -0
  99. package/lib/typescript/src/hooks/useGuardedPress.d.ts.map +1 -0
  100. package/lib/typescript/src/screens/chat-detail/ChatComposer.d.ts +7 -3
  101. package/lib/typescript/src/screens/chat-detail/ChatComposer.d.ts.map +1 -1
  102. package/lib/typescript/src/screens/chat-detail/ChatDetail.d.ts.map +1 -1
  103. package/lib/typescript/src/screens/chat-detail/ChatListLegend.d.ts +5 -1
  104. package/lib/typescript/src/screens/chat-detail/ChatListLegend.d.ts.map +1 -1
  105. package/lib/typescript/src/screens/chat-detail/PinnedMessagesSheet.d.ts.map +1 -1
  106. package/lib/typescript/src/screens/chat-detail/components/ChatComposerAccessorySlot.d.ts +12 -0
  107. package/lib/typescript/src/screens/chat-detail/components/ChatComposerAccessorySlot.d.ts.map +1 -0
  108. package/lib/typescript/src/screens/chat-detail/components/ChatComposerInputArea.d.ts +30 -0
  109. package/lib/typescript/src/screens/chat-detail/components/ChatComposerInputArea.d.ts.map +1 -0
  110. package/lib/typescript/src/screens/chat-detail/components/ChatComposerStatusBanner.d.ts +19 -0
  111. package/lib/typescript/src/screens/chat-detail/components/ChatComposerStatusBanner.d.ts.map +1 -0
  112. package/lib/typescript/src/screens/chat-detail/hooks/useChatComposerAnimation.d.ts +0 -1
  113. package/lib/typescript/src/screens/chat-detail/hooks/useChatComposerAnimation.d.ts.map +1 -1
  114. package/lib/typescript/src/screens/chat-detail/hooks/useChatComposerState.d.ts +7 -0
  115. package/lib/typescript/src/screens/chat-detail/hooks/useChatComposerState.d.ts.map +1 -1
  116. package/lib/typescript/src/screens/chat-detail/hooks/useComposerBotMenu.d.ts +7 -0
  117. package/lib/typescript/src/screens/chat-detail/hooks/useComposerBotMenu.d.ts.map +1 -0
  118. package/lib/typescript/src/screens/chat-detail/hooks/useComposerPanelActions.d.ts +17 -0
  119. package/lib/typescript/src/screens/chat-detail/hooks/useComposerPanelActions.d.ts.map +1 -0
  120. package/lib/typescript/src/screens/chat-detail/hooks/useComposerPanelDismiss.d.ts +12 -0
  121. package/lib/typescript/src/screens/chat-detail/hooks/useComposerPanelDismiss.d.ts.map +1 -0
  122. package/lib/typescript/src/screens/chat-detail/hooks/useComposerPanels.d.ts +25 -0
  123. package/lib/typescript/src/screens/chat-detail/hooks/useComposerPanels.d.ts.map +1 -0
  124. package/lib/typescript/src/screens/chat-detail/hooks/useComposerSend.d.ts +16 -0
  125. package/lib/typescript/src/screens/chat-detail/hooks/useComposerSend.d.ts.map +1 -0
  126. package/lib/typescript/src/screens/chat-detail/legend/LegendChatMessage.d.ts +11 -1
  127. package/lib/typescript/src/screens/chat-detail/legend/LegendChatMessage.d.ts.map +1 -1
  128. package/lib/typescript/src/screens/chat-detail/messageToolbox/MessageToolboxOverlay.d.ts.map +1 -1
  129. package/lib/typescript/src/screens/chat-detail/messageToolbox/MessageToolboxWrapper.d.ts +14 -1
  130. package/lib/typescript/src/screens/chat-detail/messageToolbox/MessageToolboxWrapper.d.ts.map +1 -1
  131. package/lib/typescript/src/screens/chat-detail/messageToolbox/useClonePreview.d.ts +18 -0
  132. package/lib/typescript/src/screens/chat-detail/messageToolbox/useClonePreview.d.ts.map +1 -0
  133. package/lib/typescript/src/screens/chat-detail/types.d.ts +8 -0
  134. package/lib/typescript/src/screens/chat-detail/types.d.ts.map +1 -1
  135. package/lib/typescript/src/store/expandedMessage.d.ts +15 -0
  136. package/lib/typescript/src/store/expandedMessage.d.ts.map +1 -0
  137. package/lib/typescript/src/store/message.d.ts.map +1 -1
  138. package/lib/typescript/src/utils/composerPanelDismissGesture.d.ts +33 -0
  139. package/lib/typescript/src/utils/composerPanelDismissGesture.d.ts.map +1 -0
  140. package/lib/typescript/src/utils/expandableText.d.ts +18 -0
  141. package/lib/typescript/src/utils/expandableText.d.ts.map +1 -0
  142. package/lib/typescript/src/utils/inlineTruncation.d.ts +24 -0
  143. package/lib/typescript/src/utils/inlineTruncation.d.ts.map +1 -0
  144. package/lib/typescript/src/utils/perf-marker.d.ts +8 -0
  145. package/lib/typescript/src/utils/perf-marker.d.ts.map +1 -0
  146. package/lib/typescript/src/utils/truncateTextChildren.d.ts +3 -0
  147. package/lib/typescript/src/utils/truncateTextChildren.d.ts.map +1 -0
  148. package/package.json +2 -1
  149. package/src/components/ThreadCard/ThreadCard.tsx +2 -0
  150. package/src/components/messages/ExpandableMessageText.tsx +145 -0
  151. package/src/components/messages/PreviewScrollableText.tsx +98 -0
  152. package/src/components/messages/fileMessage/index.tsx +17 -3
  153. package/src/components/messages/linkMessage/index.tsx +30 -21
  154. package/src/components/messages/quotedMessage/index.tsx +19 -3
  155. package/src/components/messages/textMessage/index.tsx +11 -2
  156. package/src/components/messages/types.ts +18 -0
  157. package/src/context/TimelinePressGuardContext.tsx +15 -0
  158. package/src/hooks/useConversationList.ts +2 -0
  159. package/src/hooks/useDismissKeyboardFirst.ts +19 -0
  160. package/src/hooks/useExpandableText.ts +143 -0
  161. package/src/hooks/useGuardedPress.ts +20 -0
  162. package/src/screens/chat-detail/ChatComposer.tsx +105 -631
  163. package/src/screens/chat-detail/ChatDetail.tsx +49 -20
  164. package/src/screens/chat-detail/ChatListLegend.tsx +122 -71
  165. package/src/screens/chat-detail/PinnedMessagesSheet.tsx +8 -0
  166. package/src/screens/chat-detail/components/ChatComposerAccessorySlot.tsx +61 -0
  167. package/src/screens/chat-detail/components/ChatComposerInputArea.tsx +198 -0
  168. package/src/screens/chat-detail/components/ChatComposerStatusBanner.tsx +116 -0
  169. package/src/screens/chat-detail/hooks/useChatComposerAnimation.ts +0 -29
  170. package/src/screens/chat-detail/hooks/useChatComposerState.ts +25 -2
  171. package/src/screens/chat-detail/hooks/useComposerBotMenu.tsx +140 -0
  172. package/src/screens/chat-detail/hooks/useComposerPanelActions.ts +57 -0
  173. package/src/screens/chat-detail/hooks/useComposerPanelDismiss.ts +111 -0
  174. package/src/screens/chat-detail/hooks/useComposerPanels.ts +197 -0
  175. package/src/screens/chat-detail/hooks/useComposerSend.ts +98 -0
  176. package/src/screens/chat-detail/legend/LegendChatMessage.tsx +24 -2
  177. package/src/screens/chat-detail/messageToolbox/MessageToolboxOverlay.tsx +20 -1
  178. package/src/screens/chat-detail/messageToolbox/MessageToolboxWrapper.tsx +111 -5
  179. package/src/screens/chat-detail/messageToolbox/useClonePreview.ts +34 -0
  180. package/src/screens/chat-detail/types.ts +9 -0
  181. package/src/store/expandedMessage.ts +42 -0
  182. package/src/store/message.ts +14 -0
  183. package/src/utils/composerPanelDismissGesture.ts +72 -0
  184. package/src/utils/expandableText.ts +51 -0
  185. package/src/utils/inlineTruncation.ts +65 -0
  186. package/src/utils/perf-marker.ts +39 -0
  187. package/src/utils/truncateTextChildren.ts +46 -0
@@ -1 +1 @@
1
- {"version":3,"names":["memo","useCallback","useEffect","useMemo","useRef","Keyboard","Platform","StyleSheet","debounce","Reanimated","KeyboardStickyView","useKeyboardState","useSafeAreaInsets","KContainer","KColors","KImage","KButton","KLabel","IS_IOS","OS","INPUT_LINE_HEIGHT","WRAPPED_HEIGHT_THRESHOLD","ChatQuickActions","ChatAttachmentPanel","ChatLinkPreview","ChatMessageInput","AttachmentPreview","StickerPicker","DEFAULT_QUICK_ACTIONS","getAttachmentPanelHeight","DEFAULT_PANNEL_ACTIONS","STICKER_PICKER_HEIGHT","DChatPannelActionItemType","useChatComposerState","useChatComposerAnimation","useChatDetailContext","trans","useCloseSupportSession","useResetFlow","useRunFlow","ReactFlowsNodeTypes","DEFAULT_BUTTON_ID","isContextButton","DFlowState","useAttachmentMapping","useChatCompose","useInputStateBroadcast","ChatCurrentQuotedMessage","useSendMessage","openBotMenuSheet","UIUtils","PeerType","useCanSendMessage","useIsJoinedGroup","useMentionComposer","MentionSuggestionList","createOpenIMMentionSearchSource","serializeMentionsForSend","MAX_AT_USER_COUNT","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","ChatComposer","isEmptyMessage","pannelActions","isComposeDisabled","composerRef","onComposerLayout","onPressJoinGroup","isJoiningGroup","insets","isDisableCompose","isKeyboardVisible","state","isVisible","isBotConversation","conversation","conversationFlow","conversationFlowMainMenu","flowState","isGroupConversation","peerType","Group","mutate","runFlow","isPending","resetFlow","mutateAsync","closeSupportSession","sendMessage","compose","notifyTyping","notifyStoppedTyping","conversationID","allowed","isSendMessageAllowed","reason","sendDeniedReason","data","isJoinedGroup","groupID","isNotInGroup","activePanelType","setActivePanelType","isAttachmentOpen","setIsAttachmentOpen","isInputFocused","setIsInputFocused","setIsInputWrapped","isMultilineInput","inputRef","text","mentionSearchSource","mentionComposer","setText","searchSource","search","items","hasMore","enabled","attachmentPanelHeight","length","panelHeight","accessorySlotStyle","toggleAttachmentVisibility","openWithHeight","closeAttachment","onAttachmentOpenChange","isPanelOpen","immediate","handleSend","toast","open","title","theme","isUploading","canSend","mentionsToSend","mentions","truncated","max","String","clear","send","error","__DEV__","console","current","handleInputFocus","handleToggleAttachment","closeMentionPanel","handleToggleSticker","dismiss","handleInputBlur","handleChangeText","handleInputContentSizeChange","event","height","nativeEvent","contentSize","onStartConversationFlow","groupId","flowCurrentStep","id","actionId","childId","plainText","botMenuOptions","apiOptions","filter","item","label","hasDefaultButton","some","hasBotMenuOptions","runBotMenuOption","handleSelectBotMenuOption","CS","popup","header","alignment","body","renderContent","View","padding","children","RichText","typo","textAlign","color","gray","dark","richTextOptions","i18nKey","components","bold","Text","actions","buttons","kind","onPress","type","handleOpenBotMenu","options","onSelect","addImagesRef","addImages","debouncedImagePickerRef","leading","trailing","addFilesRef","addFiles","debouncedFilePickerRef","resolvedPannelActons","map","p","Gallery","Documents","inputRowStyle","paddingBottom","bottom","handleStickerSelect","sticker","attachments","selectedImages","selectedFiles","onRemove","removeFile","removeImage","content","isNewBotConversation","Start","row","alignItems","justifyContent","marginR","VectorIcons","name","size","palette","w600","paddingB","Solid","stretch","icon","vectorName","loading","paddingH","brTW","brTC","border","light","paddingV","paddingT","background","VisibleView","visible","Bot","onActionPress","action","log","showLinkPreview","metadata","urlMetadata","isLoading","isMetadataLoading","onDismiss","dismissPreview","isImagePreviewVisible","isFilePreviewVisible","style","styles","inputRowWrapper","mentionPanel","suggestions","isSearching","isLoadingMore","onLoadMore","loadMore","selectSuggestion","Touchable","center","br","primary","w400","value","placeholder","onChangeText","onFocus","onBlur","onContentSizeChange","onSelectionChange","handleSelectionChange","onEmojiPress","onSuggestPress","undefined","pointerEvents","width","w100","marginL","opacity","white","ref","onLayout","offset","closed","opened","accessorySlot","onSelectSticker","displayName","create","overflow","backgroundColor","w25","position","left","right"],"sourceRoot":"../../../../src","sources":["screens/chat-detail/ChatComposer.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["memo","useCallback","useMemo","KeyboardStickyView","useKeyboardState","useSafeAreaInsets","PeerType","useChatComposerState","useComposerPanels","useComposerSend","useComposerBotMenu","useComposerPanelActions","useMentionComposer","ChatComposerStatusBanner","getComposerStatusVariant","ChatComposerInputArea","ChatComposerAccessorySlot","useChatDetailContext","ReactFlowsNodeTypes","useChatCompose","useInputStateBroadcast","useCanSendMessage","useIsJoinedGroup","createOpenIMMentionSearchSource","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ChatComposer","isEmptyMessage","pannelActions","isComposeDisabled","composerRef","onComposerLayout","onPressJoinGroup","isJoiningGroup","panelControllerRef","onPanelOpenChange","insets","isDisableCompose","isKeyboardVisible","state","isVisible","isBotConversation","conversation","conversationFlow","isGroupConversation","peerType","Group","compose","notifyTyping","notifyStoppedTyping","conversationID","allowed","isSendMessageAllowed","reason","sendDeniedReason","data","isJoinedGroup","groupID","isNotInGroup","activePanelType","setActivePanelType","isAttachmentOpen","setIsAttachmentOpen","isInputFocused","setIsInputFocused","isMultilineInput","handleInputContentSizeChange","inputRef","text","mentionSearchSource","mentionComposer","setText","searchSource","search","items","hasMore","enabled","isNewBotConversation","flowCurrentStep","type","Start","statusVariant","accessorySlotStyle","closeActivePanel","yieldingCloseMode","handleToggleAttachment","handleToggleSticker","isMentionPanelOpen","isPanelOpen","closeMentionPanel","isSlotVisible","handleSend","mentions","clearMentions","clear","hasBotMenuOptions","handleOpenBotMenu","onStartConversationFlow","isRunFlowPending","resolvedPannelActons","addImages","addFiles","handleInputFocus","handleInputBlur","handleChangeText","content","variant","onToggleAttachment","onToggleSticker","onChangeText","onInputFocus","onInputBlur","onInputContentSizeChange","onOpenBotMenu","undefined","onSend","children","ref","onLayout","offset","closed","opened","bottom","visible","displayName"],"sourceRoot":"../../../../src","sources":["screens/chat-detail/ChatComposer.tsx"],"mappings":"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","ignoreList":[]}
@@ -11,9 +11,13 @@ import { PinnedMessageBar } from "./PinnedMessageBar.js";
11
11
  import { openPinnedMessagesSheet } from "./PinnedMessagesSheet.js";
12
12
  import { MediaViewerModal } from "../../components/MediaViewerModal.js";
13
13
  import { useConversation, useConversationStore, useUserStore } from "../../store/index.js";
14
+ import { useExpandedMessageStore } from "../../store/expandedMessage.js";
15
+ import { clearExpandableTextCache } from "../../hooks/useExpandableText.js";
14
16
  import ChatDetailHeader from "./ChatDetailHeader.js";
15
17
  import { ChatListLegend } from "./ChatListLegend.js";
16
18
  import { ChatComposer } from "./ChatComposer.js";
19
+ import { useComposerPanelDismiss } from "./hooks/useComposerPanelDismiss.js";
20
+ import { TimelinePressGuardProvider } from "../../context/TimelinePressGuardContext.js";
17
21
  import { shouldShowAddMember } from "./conversationHeader.utils.js";
18
22
  import { normalizeUrl } from "../../utils/url.js";
19
23
  import { MessageToolboxOverlay } from "./messageToolbox/MessageToolboxOverlay.js";
@@ -52,6 +56,15 @@ const ChatDetail = /*#__PURE__*/memo(({
52
56
  const messageToolboxRef = useRef(null);
53
57
  const currentUser = useUserStore(s => s.user);
54
58
  const conversation = useConversation(conversationId);
59
+
60
+ // Keyed on the conversation, not on unmount: this screen is mounted by the
61
+ // consumer's navigator, so whether it remounts per conversation or is
62
+ // reused with a new id is not knowable here. Reopening a conversation must
63
+ // start every message shortened again.
64
+ useEffect(() => {
65
+ useExpandedMessageStore.getState().clearSurface('timeline');
66
+ clearExpandableTextCache();
67
+ }, [conversationId]);
55
68
  const {
56
69
  data: target
57
70
  } = useGetConversationTarget(conversationId);
@@ -130,6 +143,14 @@ const ChatDetail = /*#__PURE__*/memo(({
130
143
  const handlePressUrl = useCallback(url => {
131
144
  onPressUrl?.(normalizeUrl(url));
132
145
  }, [onPressUrl]);
146
+ const {
147
+ panelControllerRef,
148
+ isComposerPanelOpen,
149
+ onComposerPanelOpenChange,
150
+ dismissAreaTouchProps,
151
+ notifyScrollBeginDrag,
152
+ shouldSwallowPress
153
+ } = useComposerPanelDismiss();
133
154
  const handleMessageLongPress = useCallback((message, rect, groupPosition) => {
134
155
  messageToolboxRef.current?.show(message, rect, groupPosition);
135
156
  }, []);
@@ -173,31 +194,39 @@ const ChatDetail = /*#__PURE__*/memo(({
173
194
  messages: pinnedMessages,
174
195
  currentUserId: currentUser?.userID,
175
196
  onPress: handlePressPinnedMessageBar
176
- }), /*#__PURE__*/_jsx(ChatListLegend, {
177
- messages: messages,
178
- conversationId: conversationId,
179
- customMessageItemFactory: customMessageItemFactory,
180
- isLoading: initLoading,
181
- onLoadMoreOld: getMoreOldMessages,
182
- hasMoreOld: hasMoreOld,
183
- moreOldLoading: moreOldLoading,
184
- onLoadMoreNew: getMoreNewMessages,
185
- hasMoreNew: hasMoreNew,
186
- moreNewLoading: moreNewLoading,
187
- onMediaPress: handleMediaPress,
188
- onPressUrl: handlePressUrl,
189
- onLongPress: handleMessageLongPress,
190
- listRef: listRef,
191
- freeze: freeze,
192
- scrollMessageToEnd: scrollMessageToEnd,
193
- keyboardOffset: insets.bottom,
194
- renderConversationViewHeader: renderConversationViewHeader
197
+ }), /*#__PURE__*/_jsx(TimelinePressGuardProvider, {
198
+ value: shouldSwallowPress,
199
+ children: /*#__PURE__*/_jsx(ChatListLegend, {
200
+ messages: messages,
201
+ conversationId: conversationId,
202
+ customMessageItemFactory: customMessageItemFactory,
203
+ isLoading: initLoading,
204
+ onLoadMoreOld: getMoreOldMessages,
205
+ hasMoreOld: hasMoreOld,
206
+ moreOldLoading: moreOldLoading,
207
+ onLoadMoreNew: getMoreNewMessages,
208
+ hasMoreNew: hasMoreNew,
209
+ moreNewLoading: moreNewLoading,
210
+ onMediaPress: handleMediaPress,
211
+ onPressUrl: handlePressUrl,
212
+ onLongPress: handleMessageLongPress,
213
+ listRef: listRef,
214
+ freeze: freeze,
215
+ scrollMessageToEnd: scrollMessageToEnd,
216
+ keyboardOffset: insets.bottom,
217
+ renderConversationViewHeader: renderConversationViewHeader,
218
+ dismissAreaTouchProps: dismissAreaTouchProps,
219
+ isComposerPanelOpen: isComposerPanelOpen,
220
+ onDismissAreaScrollBeginDrag: notifyScrollBeginDrag
221
+ })
195
222
  }), /*#__PURE__*/_jsx(ChatComposer, {
196
223
  isEmptyMessage: messages?.length === 0,
197
224
  pannelActions: pannelActions,
198
225
  isComposeDisabled: isComposeDisabled,
199
226
  onPressJoinGroup: handlePressJoinGroup,
200
- isJoiningGroup: isJoiningGroup
227
+ isJoiningGroup: isJoiningGroup,
228
+ panelControllerRef: panelControllerRef,
229
+ onPanelOpenChange: onComposerPanelOpenChange
201
230
  }), /*#__PURE__*/_jsx(MediaViewerModal, {
202
231
  ref: mediaViewerRef
203
232
  }), /*#__PURE__*/_jsx(MessageToolboxOverlay, {
@@ -1 +1 @@
1
- {"version":3,"names":["memo","useCallback","useEffect","useRef","DeviceEventEmitter","useKeyboardScrollToEnd","useSafeAreaInsets","KContainer","useNavigation","useRoute","usePinMessage","PinnedMessageBar","openPinnedMessagesSheet","MediaViewerModal","useConversation","useConversationStore","useUserStore","ChatDetailHeader","ChatListLegend","ChatComposer","shouldShowAddMember","normalizeUrl","MessageToolboxOverlay","useGetConversationDetail","useGetConversationTarget","useSyncConversationById","GroupJoinSource","useMessages","ChatEvent","useSetIsShowFLashMessage","useJoinGroup","useGroupAccessGuard","useSingleAccessGuard","useIsJoinedGroup","UIUtils","trans","getGroupIdFromConversationId","ChatDetailLoading","jsx","_jsx","jsxs","_jsxs","ChatDetail","conversationId","targetUserId","targetGroupId","targetMessageId","showAddMember","onBack","onPressSearch","onPressAddMember","onPressMenu","onPressUrl","customMessageItemFactory","pannelActions","groupJoinSource","renderConversationViewHeader","navigation","mediaViewerRef","messageToolboxRef","currentUser","s","user","conversation","data","target","isComposeDisabled","isActive","handleBackDefault","goBack","handleMediaPress","items","index","current","show","messages","initLoading","moreOldLoading","moreNewLoading","getMoreOldMessages","getMoreNewMessages","hasMoreOld","hasMoreNew","startClientMsgId","peerType","mutate","joinGroup","isPending","isJoiningGroup","setShowFLashMessage","pinnedMessages","pinMessage","unpinMessage","getState","setCurrentConversation","undefined","subscription","addListener","TargetMessageUnavailable","toast","open","title","theme","remove","params","targetMessage","find","m","clientMsgID","emit","ScrollToMessage","clientMessageId","resolvedShowAddMember","insets","listRef","freeze","scrollMessageToEnd","handlePressUrl","url","handleMessageLongPress","message","rect","groupPosition","handlePressPinnedMessageBar","currentUserId","userID","onPressMessage","handlePressMenu","handlePressJoinGroup","groupID","reqMsg","joinSource","Search","groupName","showName","Page","flex","edges","children","onPressAvatar","onPress","isLoading","onLoadMoreOld","onLoadMoreNew","onMediaPress","onLongPress","keyboardOffset","bottom","isEmptyMessage","length","onPressJoinGroup","ref","onPinMessage","onUnpinMessage","ConversationDataGate","props","targetConversationId","targetBotId","hasTarget","isLoadingConversation","isFetching","isSyncingConversation","isFetched","isConversationSynced","isCheckingJoinStatus","handleAccessBlocked","isCheckingAccess","isBlockedAccess","onBlocked","isConversationResolved","isReady","SdkReadyGate","isUserLoaded"],"sourceRoot":"../../../../src","sources":["screens/chat-detail/ChatDetail.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["memo","useCallback","useEffect","useRef","DeviceEventEmitter","useKeyboardScrollToEnd","useSafeAreaInsets","KContainer","useNavigation","useRoute","usePinMessage","PinnedMessageBar","openPinnedMessagesSheet","MediaViewerModal","useConversation","useConversationStore","useUserStore","useExpandedMessageStore","clearExpandableTextCache","ChatDetailHeader","ChatListLegend","ChatComposer","useComposerPanelDismiss","TimelinePressGuardProvider","shouldShowAddMember","normalizeUrl","MessageToolboxOverlay","useGetConversationDetail","useGetConversationTarget","useSyncConversationById","GroupJoinSource","useMessages","ChatEvent","useSetIsShowFLashMessage","useJoinGroup","useGroupAccessGuard","useSingleAccessGuard","useIsJoinedGroup","UIUtils","trans","getGroupIdFromConversationId","ChatDetailLoading","jsx","_jsx","jsxs","_jsxs","ChatDetail","conversationId","targetUserId","targetGroupId","targetMessageId","showAddMember","onBack","onPressSearch","onPressAddMember","onPressMenu","onPressUrl","customMessageItemFactory","pannelActions","groupJoinSource","renderConversationViewHeader","navigation","mediaViewerRef","messageToolboxRef","currentUser","s","user","conversation","getState","clearSurface","data","target","isComposeDisabled","isActive","handleBackDefault","goBack","handleMediaPress","items","index","current","show","messages","initLoading","moreOldLoading","moreNewLoading","getMoreOldMessages","getMoreNewMessages","hasMoreOld","hasMoreNew","startClientMsgId","peerType","mutate","joinGroup","isPending","isJoiningGroup","setShowFLashMessage","pinnedMessages","pinMessage","unpinMessage","setCurrentConversation","undefined","subscription","addListener","TargetMessageUnavailable","toast","open","title","theme","remove","params","targetMessage","find","m","clientMsgID","emit","ScrollToMessage","clientMessageId","resolvedShowAddMember","insets","listRef","freeze","scrollMessageToEnd","handlePressUrl","url","panelControllerRef","isComposerPanelOpen","onComposerPanelOpenChange","dismissAreaTouchProps","notifyScrollBeginDrag","shouldSwallowPress","handleMessageLongPress","message","rect","groupPosition","handlePressPinnedMessageBar","currentUserId","userID","onPressMessage","handlePressMenu","handlePressJoinGroup","groupID","reqMsg","joinSource","Search","groupName","showName","Page","flex","edges","children","onPressAvatar","onPress","value","isLoading","onLoadMoreOld","onLoadMoreNew","onMediaPress","onLongPress","keyboardOffset","bottom","onDismissAreaScrollBeginDrag","isEmptyMessage","length","onPressJoinGroup","onPanelOpenChange","ref","onPinMessage","onUnpinMessage","ConversationDataGate","props","targetConversationId","targetBotId","hasTarget","isLoadingConversation","isFetching","isSyncingConversation","isFetched","isConversationSynced","isCheckingJoinStatus","handleAccessBlocked","isCheckingAccess","isBlockedAccess","onBlocked","isConversationResolved","isReady","SdkReadyGate","isUserLoaded"],"sourceRoot":"../../../../src","sources":["screens/chat-detail/ChatDetail.tsx"],"mappings":"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","ignoreList":[]}
@@ -26,6 +26,10 @@ import { ChatMessageAPI } from "../../services/index.js";
26
26
  import { resolveImageDisplayDims } from "../../components/messages/imageMessage/index.js";
27
27
  import ChatImageDimens, { CHAT_IMAGE_VIEW_SOURCE } from "../../utils/chatImageDimens.js";
28
28
  import { ChatTypingIndicator } from "./ChatTypingIndicator.js";
29
+ import { useGuardedPress } from "../../hooks/useGuardedPress.js";
30
+ import { useDismissKeyboardFirst } from "../../hooks/useDismissKeyboardFirst.js";
31
+ import { useTimelinePressGuard } from "../../context/TimelinePressGuardContext.js";
32
+ import { perfMark } from "../../utils/perf-marker.js";
29
33
 
30
34
  // Cluster spacing: a wide gap after the message that closes a cluster, a tight
31
35
  // one between messages inside it. These override the flat margin on the row
@@ -90,15 +94,18 @@ export const ChatListLegend = /*#__PURE__*/memo(({
90
94
  hasMoreOld,
91
95
  onLoadMoreNew,
92
96
  hasMoreNew,
93
- onMediaPress,
94
- onPressUrl,
97
+ onMediaPress: onMediaPressProp,
98
+ onPressUrl: onPressUrlProp,
95
99
  onLongPress,
96
100
  listRef,
97
101
  freeze,
98
102
  scrollMessageToEnd,
99
103
  keyboardOffset,
100
104
  isLoading,
101
- renderConversationViewHeader
105
+ renderConversationViewHeader,
106
+ dismissAreaTouchProps,
107
+ isComposerPanelOpen = false,
108
+ onDismissAreaScrollBeginDrag
102
109
  }) => {
103
110
  const currentUserId = useUserStore(s => s.user?.userID);
104
111
  const windowWidth = useWindowDimensions().width;
@@ -116,9 +123,16 @@ export const ChatListLegend = /*#__PURE__*/memo(({
116
123
  isBotConversation,
117
124
  currentUserId
118
125
  }), [messages, isBotConversation, currentUserId]);
126
+
127
+ // True for presses of a touch that began with the panel open — covers the
128
+ // render gap before `isComposerPanelOpen` reaches the list.
129
+ const shouldSwallowPress = useTimelinePressGuard();
119
130
  const {
120
- retryMessage
131
+ retryMessage: retryMessageRaw
121
132
  } = useSendMessage();
133
+ const retryMessage = useGuardedPress(retryMessageRaw, shouldSwallowPress);
134
+ const onMediaPress = useGuardedPress(useDismissKeyboardFirst(onMediaPressProp), shouldSwallowPress);
135
+ const onPressUrl = useGuardedPress(useDismissKeyboardFirst(onPressUrlProp), shouldSwallowPress);
122
136
  const lastMessageId = useMemo(() => {
123
137
  const last = messages[messages.length - 1];
124
138
  return last?.clientMsgID || last?.serverMsgID || null;
@@ -204,6 +218,7 @@ export const ChatListLegend = /*#__PURE__*/memo(({
204
218
  } = useChatContext();
205
219
  const searchMessages = useMessageStore(s => s.searchMessages);
206
220
  const handleMessageLongPress = useCallback((messageId, message) => {
221
+ if (shouldSwallowPress()) return;
207
222
  const node = rowRefsMap.current.get(messageId);
208
223
  node?.measureInWindow((x, y, width, height) => {
209
224
  if (x == null || y == null || width == null || height == null) return;
@@ -215,16 +230,19 @@ export const ChatListLegend = /*#__PURE__*/memo(({
215
230
  height
216
231
  }, groupPosition);
217
232
  });
218
- }, [onLongPress, messageDataMap]);
233
+ }, [onLongPress, messageDataMap, shouldSwallowPress]);
219
234
  const onRunFlow = useCallback(payload => {
235
+ if (shouldSwallowPress()) return;
220
236
  runFlow(payload);
221
- }, [runFlow]);
237
+ }, [runFlow, shouldSwallowPress]);
222
238
  const onResetFlow = useCallback(() => {
239
+ if (shouldSwallowPress()) return;
223
240
  resetFlow();
224
- }, [resetFlow]);
241
+ }, [resetFlow, shouldSwallowPress]);
225
242
  const handleMessagePress = useCallback(messageId => {
243
+ if (shouldSwallowPress()) return;
226
244
  setRevealedMessageId(prev => prev === messageId ? null : messageId);
227
- }, []);
245
+ }, [shouldSwallowPress]);
228
246
  const handleRenderConversationViewHeader = useCallback(() => {
229
247
  if (!renderConversationViewHeader) return null;
230
248
  return /*#__PURE__*/_jsx(KContainer.View, {
@@ -402,6 +420,7 @@ export const ChatListLegend = /*#__PURE__*/memo(({
402
420
  // load-more the user never asked for.
403
421
  if (!hasUserScrolledRef.current) return;
404
422
  if (hasMoreOld && !useMessageStore.getState().moreOldLoading) {
423
+ perfMark('history_start_reached');
405
424
  onLoadMoreOld?.(true);
406
425
  }
407
426
  }, [hasMoreOld, onLoadMoreOld]);
@@ -413,7 +432,8 @@ export const ChatListLegend = /*#__PURE__*/memo(({
413
432
  }, [hasMoreNew, onLoadMoreNew]);
414
433
  const handleScrollBeginDrag = useCallback(() => {
415
434
  hasUserScrolledRef.current = true;
416
- }, []);
435
+ onDismissAreaScrollBeginDrag?.();
436
+ }, [onDismissAreaScrollBeginDrag]);
417
437
  const handleScroll = useCallback(e => {
418
438
  // The keyboard-following loop re-pins to the end on every frame, so
419
439
  // the list is at the bottom for the whole transition by construction.
@@ -486,7 +506,10 @@ export const ChatListLegend = /*#__PURE__*/memo(({
486
506
  // message ends up flush against the composer.
487
507
  const contentContainerStyle = useMemo(() => [styles.content, {
488
508
  paddingBottom: CONTENT_PADDING_VERTICAL + keyboardInset
489
- }], [keyboardInset]);
509
+ },
510
+ // Composer panel open: bubbles stop receiving touches (a tap only
511
+ // dismisses the panel) while the scroll view itself still scrolls.
512
+ isComposerPanelOpen && styles.contentNotHittable], [keyboardInset, isComposerPanelOpen]);
490
513
  const animatedButtonStyle = useAnimatedStyle(() => ({
491
514
  opacity: buttonOpacity.value,
492
515
  pointerEvents: buttonOpacity.value === 0 ? 'none' : 'auto'
@@ -686,6 +709,7 @@ export const ChatListLegend = /*#__PURE__*/memo(({
686
709
  const handleListLoad = useCallback(() => {
687
710
  if (hasCorrectedInitialPaddingRef.current) return;
688
711
  hasCorrectedInitialPaddingRef.current = true;
712
+ perfMark('history_list_loaded');
689
713
  scrollMessageToEnd({
690
714
  animated: false,
691
715
  closeKeyboard: false
@@ -744,72 +768,82 @@ export const ChatListLegend = /*#__PURE__*/memo(({
744
768
  flex: true,
745
769
  background: KColors.white,
746
770
  style: styles.container,
747
- children: [handleRenderConversationViewHeader(), /*#__PURE__*/_jsx(KeyboardAwareLegendList, {
748
- ref: listRef,
749
- data: messages,
750
- renderItem: renderItem
751
- // Deliberate lower bound (not a best-guess average) — see the
752
- // comment above `hasCorrectedInitialPaddingRef`. A single-line
753
- // bubble floors out around 38-44px, so this stays safely under it.
754
- ,
755
- estimatedItemSize: 36,
756
- getItemType: getItemType,
757
- getFixedItemSize: getFixedItemSize,
758
- keyExtractor: item => String(item.clientMsgID || item.serverMsgID),
759
- recycleItems: true,
760
- extraData: listExtraData,
761
- alignItemsAtEnd: true,
762
- alwaysRender: {
763
- top: 10
764
- },
765
- maintainScrollAtEnd: true,
766
- maintainVisibleContentPosition: maintainVisiblePositionConfig
767
- // See the comment above `maintainVisiblePositionConfig` — this is
768
- // what keeps a history prepend's anchor item mounted through a slow
769
- // fetch instead of the default 250px window losing it.
770
- ,
771
- drawDistance: 800,
772
- freeze: freeze,
773
- keyboardOffset: DISABLE_NATIVE_KEYBOARD_INSET
774
- // iOS only. Left on, React Native recomputes and applies its own
775
- // `contentInset` every time the keyboard moves — measured here as
776
- // {top: 59, bottom: keyboardHeight}, both wrong. The bottom value
777
- // over-insets by the safe area, and the phantom top one is worse:
778
- // iOS rests a scroll view at `-contentInset.top`.
779
- // That resting offset is what put the content 59pt low and hid the
780
- // last message behind the composer the moment a touch let UIKit
781
- // re-clamp. legend-list's own KeyboardAvoidingLegendList disables
782
- // this for the same reason.
783
- ,
784
- automaticallyAdjustContentInsets: false
785
- // No scroll shift from the library either — the content padding
786
- // above is the single compensator. Measured with it on: a 302px
787
- // keyboard produced a 604px lift, exactly double.
788
- ,
789
- keyboardLiftBehavior: "never",
790
- scrollEventThrottle: 16,
791
- onScroll: handleScroll,
792
- onScrollBeginDrag: handleScrollBeginDrag,
793
- onLoad: handleListLoad,
794
- contentContainerStyle: contentContainerStyle,
795
- scrollIndicatorInsets: {
796
- right: 1
797
- },
798
- ListHeaderComponent: /*#__PURE__*/_jsx(LegendChatLoadEarlier, {
799
- isLoading: moreOldLoading
800
- }),
801
- onStartReached: handleStartReached
802
- // LegendList only re-fires onStartReached after scrolling away from
803
- // the threshold by 1.3x and back. At 0.5 that distance exceeded a
804
- // short conversation's whole scrollable range, so the mount-time
805
- // firing we suppress in handleStartReached "used up" the only
806
- // trigger. 0.3 keeps that reset distance safely under a
807
- // ~1.5-screen conversation; shorter ones can still hit it.
808
- ,
809
- onStartReachedThreshold: 0.2,
810
- onEndReached: handleEndReached,
811
- onEndReachedThreshold: 0.2,
812
- initialScrollAtEnd: true
771
+ children: [handleRenderConversationViewHeader(), /*#__PURE__*/_jsx(KContainer.View, {
772
+ flex: true,
773
+ ...dismissAreaTouchProps,
774
+ children: /*#__PURE__*/_jsx(KeyboardAwareLegendList, {
775
+ ref: listRef,
776
+ data: messages,
777
+ renderItem: renderItem
778
+ // Deliberate lower bound (not a best-guess average) — see the
779
+ // comment above `hasCorrectedInitialPaddingRef`. A single-line
780
+ // bubble floors out around 38-44px, so this stays safely under it.
781
+ ,
782
+ estimatedItemSize: 36,
783
+ getItemType: getItemType,
784
+ getFixedItemSize: getFixedItemSize,
785
+ keyExtractor: item => String(item.clientMsgID || item.serverMsgID),
786
+ recycleItems: true,
787
+ extraData: listExtraData,
788
+ alignItemsAtEnd: true,
789
+ alwaysRender: {
790
+ top: 10
791
+ },
792
+ maintainScrollAtEnd: true,
793
+ maintainVisibleContentPosition: maintainVisiblePositionConfig
794
+ // See the comment above `maintainVisiblePositionConfig` — this is
795
+ // what keeps a history prepend's anchor item mounted through a slow
796
+ // fetch instead of the default 250px window losing it.
797
+ ,
798
+ drawDistance: 800,
799
+ freeze: freeze,
800
+ keyboardOffset: DISABLE_NATIVE_KEYBOARD_INSET
801
+ // iOS only. Left on, React Native recomputes and applies its own
802
+ // `contentInset` every time the keyboard moves — measured here as
803
+ // {top: 59, bottom: keyboardHeight}, both wrong. The bottom value
804
+ // over-insets by the safe area, and the phantom top one is worse:
805
+ // iOS rests a scroll view at `-contentInset.top`.
806
+ // That resting offset is what put the content 59pt low and hid the
807
+ // last message behind the composer the moment a touch let UIKit
808
+ // re-clamp. legend-list's own KeyboardAvoidingLegendList disables
809
+ // this for the same reason.
810
+ ,
811
+ automaticallyAdjustContentInsets: false
812
+ // No scroll shift from the library either — the content padding
813
+ // above is the single compensator. Measured with it on: a 302px
814
+ // keyboard produced a 604px lift, exactly double.
815
+ ,
816
+ keyboardLiftBehavior: "never"
817
+ // With the default 'never' the first tap while the keyboard is up
818
+ // only dismisses it, so "Xem thêm", links and buttons don't fire.
819
+ // 'handled': a touchable consumes the tap and the keyboard stays;
820
+ // a tap on anything else still dismisses it.
821
+ ,
822
+ keyboardShouldPersistTaps: "handled",
823
+ scrollEventThrottle: 16,
824
+ onScroll: handleScroll,
825
+ onScrollBeginDrag: handleScrollBeginDrag,
826
+ onLoad: handleListLoad,
827
+ contentContainerStyle: contentContainerStyle,
828
+ scrollIndicatorInsets: {
829
+ right: 1
830
+ },
831
+ ListHeaderComponent: /*#__PURE__*/_jsx(LegendChatLoadEarlier, {
832
+ isLoading: moreOldLoading
833
+ }),
834
+ onStartReached: handleStartReached
835
+ // LegendList only re-fires onStartReached after scrolling away from
836
+ // the threshold by 1.3x and back. At 0.5 that distance exceeded a
837
+ // short conversation's whole scrollable range, so the mount-time
838
+ // firing we suppress in handleStartReached "used up" the only
839
+ // trigger. 0.3 keeps that reset distance safely under a
840
+ // ~1.5-screen conversation; shorter ones can still hit it.
841
+ ,
842
+ onStartReachedThreshold: 0.2,
843
+ onEndReached: handleEndReached,
844
+ onEndReachedThreshold: 0.2,
845
+ initialScrollAtEnd: true
846
+ })
813
847
  }), /*#__PURE__*/_jsx(Animated.View, {
814
848
  style: [styles.scrollToBottomButton, animatedButtonStyle],
815
849
  children: /*#__PURE__*/_jsxs(KContainer.Touchable, {
@@ -835,6 +869,9 @@ const styles = StyleSheet.create({
835
869
  container: {
836
870
  position: 'relative'
837
871
  },
872
+ contentNotHittable: {
873
+ pointerEvents: 'none'
874
+ },
838
875
  header: {
839
876
  position: 'absolute',
840
877
  top: 0,