@droppii-org/chat-mobile 0.2.98 → 0.2.100
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/lib/module/hooks/conversation/useSingleAccessGuard.js +33 -0
- package/lib/module/hooks/conversation/useSingleAccessGuard.js.map +1 -0
- package/lib/module/hooks/groups/useGroupAccessGuard.js +26 -17
- package/lib/module/hooks/groups/useGroupAccessGuard.js.map +1 -1
- package/lib/module/screens/chat-detail/ChatDetail.js +58 -47
- package/lib/module/screens/chat-detail/ChatDetail.js.map +1 -1
- package/lib/module/screens/chat-detail/ChatListLegend.js +38 -5
- package/lib/module/screens/chat-detail/ChatListLegend.js.map +1 -1
- package/lib/module/screens/chat-detail/components/ChatDetailLoading.js +38 -0
- package/lib/module/screens/chat-detail/components/ChatDetailLoading.js.map +1 -0
- package/lib/module/store/message.js +1 -1
- package/lib/module/store/message.js.map +1 -1
- package/lib/module/utils/conversation.js +21 -0
- package/lib/module/utils/conversation.js.map +1 -1
- package/lib/module/utils/message.js +2 -3
- package/lib/module/utils/message.js.map +1 -1
- package/lib/typescript/src/hooks/conversation/useSingleAccessGuard.d.ts +16 -0
- package/lib/typescript/src/hooks/conversation/useSingleAccessGuard.d.ts.map +1 -0
- package/lib/typescript/src/hooks/groups/useGroupAccessGuard.d.ts +6 -0
- package/lib/typescript/src/hooks/groups/useGroupAccessGuard.d.ts.map +1 -1
- package/lib/typescript/src/screens/chat-detail/ChatDetail.d.ts +2 -2
- package/lib/typescript/src/screens/chat-detail/ChatDetail.d.ts.map +1 -1
- package/lib/typescript/src/screens/chat-detail/ChatListLegend.d.ts.map +1 -1
- package/lib/typescript/src/screens/chat-detail/components/ChatDetailLoading.d.ts +2 -0
- package/lib/typescript/src/screens/chat-detail/components/ChatDetailLoading.d.ts.map +1 -0
- package/lib/typescript/src/utils/conversation.d.ts +17 -0
- package/lib/typescript/src/utils/conversation.d.ts.map +1 -1
- package/lib/typescript/src/utils/message.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/hooks/conversation/useSingleAccessGuard.ts +44 -0
- package/src/hooks/groups/useGroupAccessGuard.ts +28 -19
- package/src/screens/chat-detail/ChatDetail.tsx +80 -43
- package/src/screens/chat-detail/ChatListLegend.tsx +40 -5
- package/src/screens/chat-detail/components/ChatDetailLoading.tsx +31 -0
- package/src/store/message.ts +1 -1
- package/src/utils/conversation.ts +31 -0
- package/src/utils/message.ts +6 -3
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { useEffect, useRef } from 'react';
|
|
4
|
+
import { isConversationParticipant, isSingleConversationId } from "../../utils/conversation.js";
|
|
5
|
+
import { showAccessBlockedModal } from "../groups/useGroupAccessGuard.js";
|
|
6
|
+
/**
|
|
7
|
+
* 1v1 conversations have no membership guard of their own — a deeplink into a
|
|
8
|
+
* 1v1 the logged-in account isn't part of never syncs a local conversation
|
|
9
|
+
* record, so this can't rely on a synced `ConversationItem` and instead reads
|
|
10
|
+
* the participant ids straight off the "si_<userA>_<userB>" conversationId.
|
|
11
|
+
* No-ops for anything that isn't a 1v1 conversationId.
|
|
12
|
+
*/
|
|
13
|
+
export const useSingleAccessGuard = ({
|
|
14
|
+
conversationId,
|
|
15
|
+
currentUserId,
|
|
16
|
+
onBlocked
|
|
17
|
+
}) => {
|
|
18
|
+
const hasBlockedRef = useRef(false);
|
|
19
|
+
const onBlockedRef = useRef(onBlocked);
|
|
20
|
+
onBlockedRef.current = onBlocked;
|
|
21
|
+
useEffect(() => {
|
|
22
|
+
hasBlockedRef.current = false;
|
|
23
|
+
}, [conversationId]);
|
|
24
|
+
useEffect(() => {
|
|
25
|
+
if (!isSingleConversationId(conversationId)) return;
|
|
26
|
+
if (!currentUserId) return;
|
|
27
|
+
if (isConversationParticipant(conversationId, currentUserId)) return;
|
|
28
|
+
if (hasBlockedRef.current) return;
|
|
29
|
+
hasBlockedRef.current = true;
|
|
30
|
+
showAccessBlockedModal(() => onBlockedRef.current());
|
|
31
|
+
}, [conversationId, currentUserId]);
|
|
32
|
+
};
|
|
33
|
+
//# sourceMappingURL=useSingleAccessGuard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useEffect","useRef","isConversationParticipant","isSingleConversationId","showAccessBlockedModal","useSingleAccessGuard","conversationId","currentUserId","onBlocked","hasBlockedRef","onBlockedRef","current"],"sourceRoot":"../../../../src","sources":["hooks/conversation/useSingleAccessGuard.ts"],"mappings":";;AAAA,SAASA,SAAS,EAAEC,MAAM,QAAQ,OAAO;AACzC,SACEC,yBAAyB,EACzBC,sBAAsB,QACjB,6BAA0B;AACjC,SAASC,sBAAsB,QAAQ,kCAA+B;AAStE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,oBAAoB,GAAGA,CAAC;EACnCC,cAAc;EACdC,aAAa;EACbC;AACM,CAAC,KAAK;EACZ,MAAMC,aAAa,GAAGR,MAAM,CAAC,KAAK,CAAC;EACnC,MAAMS,YAAY,GAAGT,MAAM,CAACO,SAAS,CAAC;EACtCE,YAAY,CAACC,OAAO,GAAGH,SAAS;EAEhCR,SAAS,CAAC,MAAM;IACdS,aAAa,CAACE,OAAO,GAAG,KAAK;EAC/B,CAAC,EAAE,CAACL,cAAc,CAAC,CAAC;EAEpBN,SAAS,CAAC,MAAM;IACd,IAAI,CAACG,sBAAsB,CAACG,cAAc,CAAC,EAAE;IAC7C,IAAI,CAACC,aAAa,EAAE;IACpB,IAAIL,yBAAyB,CAACI,cAAc,EAAEC,aAAa,CAAC,EAAE;IAC9D,IAAIE,aAAa,CAACE,OAAO,EAAE;IAC3BF,aAAa,CAACE,OAAO,GAAG,IAAI;IAE5BP,sBAAsB,CAAC,MAAMM,YAAY,CAACC,OAAO,CAAC,CAAC,CAAC;EACtD,CAAC,EAAE,CAACL,cAAc,EAAEC,aAAa,CAAC,CAAC;AACrC,CAAC","ignoreList":[]}
|
|
@@ -9,6 +9,31 @@ import { trans } from "../../translation/index.js";
|
|
|
9
9
|
import { ChatEvent } from "../../types/events.js";
|
|
10
10
|
import { wasSelfExitedGroup } from "../../utils/groupExit.js";
|
|
11
11
|
import { conversationQueryKeys } from "../query-keys.js";
|
|
12
|
+
/**
|
|
13
|
+
* The "you can't open this conversation" modal — shared by the group
|
|
14
|
+
* non-member guard and the 1v1 non-participant check in ChatDetail, so both
|
|
15
|
+
* present the exact same blocked experience.
|
|
16
|
+
*/
|
|
17
|
+
export const showAccessBlockedModal = onAcknowledge => {
|
|
18
|
+
UIUtils.alert.open({
|
|
19
|
+
title: trans('group:access_blocked_title'),
|
|
20
|
+
message: trans('group:access_blocked_desc'),
|
|
21
|
+
primaryIndex: 0,
|
|
22
|
+
buttonType: 'horizontal-button',
|
|
23
|
+
// Drop any alert raised while this one is up rather than stacking it —
|
|
24
|
+
// OnGroupDismissed fires twice for the group owner.
|
|
25
|
+
ignoreStack: true,
|
|
26
|
+
// Force an acknowledgement: dismissing by tapping outside would leave the
|
|
27
|
+
// user sitting in a conversation they cannot access.
|
|
28
|
+
touchOutsideToDismiss: false,
|
|
29
|
+
buttons: [{
|
|
30
|
+
label: trans('group:access_blocked_button'),
|
|
31
|
+
kind: 'primary',
|
|
32
|
+
onPress: onAcknowledge
|
|
33
|
+
}]
|
|
34
|
+
});
|
|
35
|
+
};
|
|
36
|
+
|
|
12
37
|
/**
|
|
13
38
|
* Resolves whether the current user may open `groupID`, per the group-access
|
|
14
39
|
* spec: private non-members and dismissed groups are blocked outright, while
|
|
@@ -57,23 +82,7 @@ export const useGroupAccessGuard = ({
|
|
|
57
82
|
if (hasBlockedRef.current) return;
|
|
58
83
|
hasBlockedRef.current = true;
|
|
59
84
|
setAccessState('blocked');
|
|
60
|
-
|
|
61
|
-
title: trans('group:access_blocked_title'),
|
|
62
|
-
message: trans('group:access_blocked_desc'),
|
|
63
|
-
primaryIndex: 0,
|
|
64
|
-
buttonType: 'horizontal-button',
|
|
65
|
-
// Drop any alert raised while this one is up rather than stacking it —
|
|
66
|
-
// OnGroupDismissed fires twice for the group owner.
|
|
67
|
-
ignoreStack: true,
|
|
68
|
-
// Force an acknowledgement: dismissing by tapping outside would leave the
|
|
69
|
-
// user sitting in a conversation they cannot access.
|
|
70
|
-
touchOutsideToDismiss: false,
|
|
71
|
-
buttons: [{
|
|
72
|
-
label: trans('group:access_blocked_button'),
|
|
73
|
-
kind: 'primary',
|
|
74
|
-
onPress: () => onBlockedRef.current()
|
|
75
|
-
}]
|
|
76
|
-
});
|
|
85
|
+
showAccessBlockedModal(() => onBlockedRef.current());
|
|
77
86
|
}, []);
|
|
78
87
|
const applyResult = useCallback(result => {
|
|
79
88
|
if (result.state === 'blocked') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useCallback","useEffect","useRef","useState","DeviceEventEmitter","OpenIMSDK","GroupStatus","GroupVisibility","useQueryClient","UIUtils","trans","ChatEvent","wasSelfExitedGroup","conversationQueryKeys","
|
|
1
|
+
{"version":3,"names":["useCallback","useEffect","useRef","useState","DeviceEventEmitter","OpenIMSDK","GroupStatus","GroupVisibility","useQueryClient","UIUtils","trans","ChatEvent","wasSelfExitedGroup","conversationQueryKeys","showAccessBlockedModal","onAcknowledge","alert","open","title","message","primaryIndex","buttonType","ignoreStack","touchOutsideToDismiss","buttons","label","kind","onPress","evaluateAccess","groupID","info","getSpecifiedGroupsInfo","state","status","Dismissed","isMember","isJoinGroup","visibility","Public","useGroupAccessGuard","onBlocked","queryClient","groupIdRef","current","activeGroupId","accessState","setAccessState","hasBlockedRef","onBlockedRef","block","applyResult","result","cancelled","then","catch","error","console","sub","addListener","GroupRemoved","payload","reason","remove","isViewOnly","wasViewOnlyRef","invalidateQueries","queryKey","joinedGroup","isCheckingAccess"],"sourceRoot":"../../../../src","sources":["hooks/groups/useGroupAccessGuard.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import { memo, useCallback, useEffect, useRef } from 'react';
|
|
4
|
-
import {
|
|
4
|
+
import { DeviceEventEmitter } from 'react-native';
|
|
5
5
|
import { useKeyboardScrollToEnd } from '@legendapp/list/keyboard';
|
|
6
6
|
import { useSafeAreaInsets } from 'react-native-safe-area-context';
|
|
7
|
-
import {
|
|
7
|
+
import { KContainer } from '@droppii/libs';
|
|
8
8
|
import { useNavigation, useRoute } from '@react-navigation/native';
|
|
9
9
|
import { usePinMessage } from "../../hooks/message/usePinMessage.js";
|
|
10
10
|
import { PinnedMessageBar } from "./PinnedMessageBar.js";
|
|
@@ -17,21 +17,24 @@ import { ChatComposer } from "./ChatComposer.js";
|
|
|
17
17
|
import { shouldShowAddMember } from "./conversationHeader.utils.js";
|
|
18
18
|
import { normalizeUrl } from "../../utils/url.js";
|
|
19
19
|
import { MessageToolboxOverlay } from "./messageToolbox/MessageToolboxOverlay.js";
|
|
20
|
-
import { useGetConversationDetail, useGetConversationTarget } from "../../hooks/conversation/useGetConversationDetail.js";
|
|
20
|
+
import { useGetConversationDetail, useGetConversationTarget, useSyncConversationById } from "../../hooks/conversation/useGetConversationDetail.js";
|
|
21
21
|
import { GroupJoinSource } from '@droppii/openim-rn-client-sdk';
|
|
22
22
|
import { useMessages } from "../../hooks/message/useMessages.js";
|
|
23
23
|
import { ChatEvent } from "../../types/events.js";
|
|
24
24
|
import { useSetIsShowFLashMessage } from "../../context/global.js";
|
|
25
25
|
import { useJoinGroup } from "../../hooks/groups/useJoinGroup.js";
|
|
26
26
|
import { useGroupAccessGuard } from "../../hooks/groups/useGroupAccessGuard.js";
|
|
27
|
+
import { useSingleAccessGuard } from "../../hooks/conversation/useSingleAccessGuard.js";
|
|
28
|
+
import { useIsJoinedGroup } from "../../hooks/useIsJoinedGroup.js";
|
|
27
29
|
import { UIUtils } from "../../utils/UIUtils.js";
|
|
28
30
|
import { trans } from "../../translation/index.js";
|
|
31
|
+
import { getGroupIdFromConversationId } from "../../utils/conversation.js";
|
|
32
|
+
import { ChatDetailLoading } from "./components/ChatDetailLoading.js";
|
|
29
33
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
30
34
|
const ChatDetail = /*#__PURE__*/memo(({
|
|
31
|
-
|
|
35
|
+
conversationId,
|
|
32
36
|
targetUserId = '',
|
|
33
37
|
targetGroupId = '',
|
|
34
|
-
targetBotId = '',
|
|
35
38
|
targetMessageId = '',
|
|
36
39
|
showAddMember,
|
|
37
40
|
onBack,
|
|
@@ -47,15 +50,6 @@ const ChatDetail = /*#__PURE__*/memo(({
|
|
|
47
50
|
const mediaViewerRef = useRef(null);
|
|
48
51
|
const messageToolboxRef = useRef(null);
|
|
49
52
|
const currentUser = useUserStore(s => s.user);
|
|
50
|
-
const {
|
|
51
|
-
conversationId,
|
|
52
|
-
isLoading: isLoadingConversation
|
|
53
|
-
} = useGetConversationDetail({
|
|
54
|
-
targetConversationId,
|
|
55
|
-
targetUserId,
|
|
56
|
-
targetGroupId,
|
|
57
|
-
targetBotId
|
|
58
|
-
});
|
|
59
53
|
const conversation = useConversation(conversationId);
|
|
60
54
|
const {
|
|
61
55
|
data: target
|
|
@@ -105,7 +99,12 @@ const ChatDetail = /*#__PURE__*/memo(({
|
|
|
105
99
|
const {
|
|
106
100
|
isCheckingAccess
|
|
107
101
|
} = useGroupAccessGuard({
|
|
108
|
-
groupID: conversation?.groupID || targetGroupId,
|
|
102
|
+
groupID: conversation?.groupID || targetGroupId || getGroupIdFromConversationId(conversationId),
|
|
103
|
+
onBlocked: handleAccessBlocked
|
|
104
|
+
});
|
|
105
|
+
useSingleAccessGuard({
|
|
106
|
+
conversationId,
|
|
107
|
+
currentUserId: currentUser?.userID,
|
|
109
108
|
onBlocked: handleAccessBlocked
|
|
110
109
|
});
|
|
111
110
|
|
|
@@ -191,7 +190,7 @@ const ChatDetail = /*#__PURE__*/memo(({
|
|
|
191
190
|
messages: messages,
|
|
192
191
|
conversationId: conversationId,
|
|
193
192
|
customMessageItemFactory: customMessageItemFactory,
|
|
194
|
-
isLoading: initLoading ||
|
|
193
|
+
isLoading: initLoading || isCheckingAccess,
|
|
195
194
|
onLoadMoreOld: getMoreOldMessages,
|
|
196
195
|
hasMoreOld: hasMoreOld,
|
|
197
196
|
moreOldLoading: moreOldLoading,
|
|
@@ -223,43 +222,55 @@ const ChatDetail = /*#__PURE__*/memo(({
|
|
|
223
222
|
})]
|
|
224
223
|
});
|
|
225
224
|
});
|
|
226
|
-
|
|
225
|
+
|
|
226
|
+
// Resolve conversation/group/join-status data before ChatDetail mounts, so the
|
|
227
|
+
// header and composer never render with an incomplete or stale group-membership
|
|
228
|
+
// state on a cold-start deeplink open (DROPPII-30942).
|
|
229
|
+
const ConversationDataGate = props => {
|
|
230
|
+
const {
|
|
231
|
+
targetConversationId,
|
|
232
|
+
targetUserId,
|
|
233
|
+
targetGroupId,
|
|
234
|
+
targetBotId
|
|
235
|
+
} = props;
|
|
236
|
+
const hasTarget = !!(targetConversationId || targetUserId || targetGroupId || targetBotId);
|
|
237
|
+
const {
|
|
238
|
+
conversationId,
|
|
239
|
+
isLoading: isLoadingConversation
|
|
240
|
+
} = useGetConversationDetail({
|
|
241
|
+
targetConversationId,
|
|
242
|
+
targetUserId,
|
|
243
|
+
targetGroupId: targetGroupId || getGroupIdFromConversationId(targetConversationId),
|
|
244
|
+
targetBotId
|
|
245
|
+
});
|
|
246
|
+
const conversation = useConversation(conversationId);
|
|
247
|
+
const {
|
|
248
|
+
isFetching: isSyncingConversation,
|
|
249
|
+
isFetched: isConversationSynced
|
|
250
|
+
} = useSyncConversationById(conversationId, !!conversation);
|
|
251
|
+
const {
|
|
252
|
+
isLoading: isCheckingJoinStatus
|
|
253
|
+
} = useIsJoinedGroup(conversation?.groupID);
|
|
254
|
+
const isConversationResolved = !!conversationId && (!!conversation || isConversationSynced && !isSyncingConversation);
|
|
255
|
+
const isReady = !hasTarget || !isLoadingConversation && isConversationResolved && (!conversation?.groupID || !isCheckingJoinStatus);
|
|
256
|
+
if (!isReady) {
|
|
257
|
+
return /*#__PURE__*/_jsx(ChatDetailLoading, {});
|
|
258
|
+
}
|
|
259
|
+
return /*#__PURE__*/_jsx(ChatDetail, {
|
|
260
|
+
...props,
|
|
261
|
+
conversationId: conversationId
|
|
262
|
+
});
|
|
263
|
+
};
|
|
264
|
+
const SdkReadyGate = props => {
|
|
227
265
|
const isUserLoaded = useUserStore(s => s.user != null);
|
|
228
|
-
const navigation = useNavigation();
|
|
229
266
|
|
|
230
267
|
// Handle sdk not loaded yet when navigate using deeplink
|
|
231
268
|
if (!isUserLoaded) {
|
|
232
|
-
return /*#__PURE__*/
|
|
233
|
-
flex: true,
|
|
234
|
-
edges: ['bottom'],
|
|
235
|
-
children: [/*#__PURE__*/_jsx(KNavigation.Header, {
|
|
236
|
-
theme: "light",
|
|
237
|
-
alignment: "left",
|
|
238
|
-
size: "small",
|
|
239
|
-
disableCenterSpace: true,
|
|
240
|
-
shadow: true,
|
|
241
|
-
leftButton: {
|
|
242
|
-
id: 'back',
|
|
243
|
-
icon: {
|
|
244
|
-
size: 24,
|
|
245
|
-
vectorName: 'arrow-left-o',
|
|
246
|
-
vectorProvider: 'DroppiiNew',
|
|
247
|
-
tintColor: KColors.primary.normal
|
|
248
|
-
},
|
|
249
|
-
onPress: navigation.goBack
|
|
250
|
-
}
|
|
251
|
-
}), /*#__PURE__*/_jsx(KContainer.View, {
|
|
252
|
-
flex: true,
|
|
253
|
-
center: true,
|
|
254
|
-
children: /*#__PURE__*/_jsx(ActivityIndicator, {
|
|
255
|
-
size: "small",
|
|
256
|
-
color: KColors.primary.normal
|
|
257
|
-
})
|
|
258
|
-
})]
|
|
259
|
-
});
|
|
269
|
+
return /*#__PURE__*/_jsx(ChatDetailLoading, {});
|
|
260
270
|
}
|
|
261
|
-
return /*#__PURE__*/_jsx(
|
|
271
|
+
return /*#__PURE__*/_jsx(ConversationDataGate, {
|
|
262
272
|
...props
|
|
263
273
|
});
|
|
264
274
|
};
|
|
275
|
+
export default SdkReadyGate;
|
|
265
276
|
//# sourceMappingURL=ChatDetail.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["memo","useCallback","useEffect","useRef","ActivityIndicator","DeviceEventEmitter","useKeyboardScrollToEnd","useSafeAreaInsets","KColors","KContainer","KNavigation","useNavigation","useRoute","usePinMessage","PinnedMessageBar","openPinnedMessagesSheet","MediaViewerModal","useConversation","useConversationStore","useUserStore","ChatDetailHeader","ChatListLegend","ChatComposer","shouldShowAddMember","normalizeUrl","MessageToolboxOverlay","useGetConversationDetail","useGetConversationTarget","GroupJoinSource","useMessages","ChatEvent","useSetIsShowFLashMessage","useJoinGroup","useGroupAccessGuard","UIUtils","trans","jsx","_jsx","jsxs","_jsxs","ChatDetail","targetConversationId","targetUserId","targetGroupId","targetBotId","targetMessageId","showAddMember","onBack","onPressSearch","onPressAddMember","onPressMenu","onPressUrl","customMessageItemFactory","pannelActions","groupJoinSource","navigation","mediaViewerRef","messageToolboxRef","currentUser","s","user","conversationId","isLoading","isLoadingConversation","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","handleAccessBlocked","isCheckingAccess","groupID","onBlocked","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","reqMsg","joinSource","Search","groupName","showName","Page","flex","edges","children","onPressAvatar","onPress","onLoadMoreOld","onLoadMoreNew","onMediaPress","onLongPress","keyboardOffset","bottom","isEmptyMessage","length","onPressJoinGroup","ref","onPinMessage","onUnpinMessage","props","isUserLoaded","Header","alignment","size","disableCenterSpace","shadow","leftButton","id","icon","vectorName","vectorProvider","tintColor","primary","normal","View","center","color"],"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","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","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","handleAccessBlocked","isCheckingAccess","groupID","onBlocked","currentUserId","userID","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","onPressMessage","handlePressMenu","handlePressJoinGroup","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","isConversationResolved","isReady","SdkReadyGate","isUserLoaded"],"sourceRoot":"../../../../src","sources":["screens/chat-detail/ChatDetail.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -62,6 +62,16 @@ const FOLLOW_SETTLE_MS = 200;
|
|
|
62
62
|
// and the last message stays behind the keyboard.
|
|
63
63
|
const FOLLOW_TAIL_FRAMES = 3;
|
|
64
64
|
|
|
65
|
+
// How long after a new message the list keeps re-anchoring to the end as the
|
|
66
|
+
// content settles. A row's real height is not known when the message is
|
|
67
|
+
// inserted — LegendList still has it at `estimatedItemSize`, deliberately a
|
|
68
|
+
// lower bound — so the scroll that fires with the message computes its target
|
|
69
|
+
// against content that is too short and can move nothing at all. The real
|
|
70
|
+
// height lands a few hundred ms later (measured: 297ms, leaving the last
|
|
71
|
+
// message 55px behind the composer). Long enough to cover that, short enough
|
|
72
|
+
// that it cannot interfere with a scroll the user starts afterwards.
|
|
73
|
+
const NEW_MESSAGE_ANCHOR_MS = 1000;
|
|
74
|
+
|
|
65
75
|
// Passed as the list's `keyboardOffset` to switch KeyboardChatScrollView's own
|
|
66
76
|
// native `contentInset` off while leaving the rest of the component in place.
|
|
67
77
|
// Its `getEffectiveHeight` interpolates the live keyboard height into
|
|
@@ -125,9 +135,15 @@ export const ChatListLegend = /*#__PURE__*/memo(({
|
|
|
125
135
|
// drop Android's repeat events before they reach React.
|
|
126
136
|
const keyboardInsetRef = useRef(0);
|
|
127
137
|
const [keyboardInset, setKeyboardInset] = useState(0);
|
|
138
|
+
// True while the keyboard-following loop below is driving the list.
|
|
139
|
+
const isFollowingKeyboardRef = useRef(false);
|
|
140
|
+
// Deadline until which content growth should re-anchor to the end, and
|
|
141
|
+
// the content height the last growth was measured against.
|
|
142
|
+
const anchorToEndUntilRef = useRef(0);
|
|
143
|
+
const lastContentHeightRef = useRef(0);
|
|
128
144
|
// The keyboard's live height, written on the UI thread and sampled from
|
|
129
|
-
// the JS thread by the
|
|
130
|
-
//
|
|
145
|
+
// the JS thread by the following loop, so the content tracks where the
|
|
146
|
+
// keyboard actually is instead of a guessed easing curve.
|
|
131
147
|
//
|
|
132
148
|
// `useGenericKeyboardHandler` rather than `useKeyboardHandler` /
|
|
133
149
|
// `useReanimatedKeyboardAnimation`: those call `useResizeMode()`, which
|
|
@@ -135,8 +151,6 @@ export const ChatListLegend = /*#__PURE__*/memo(({
|
|
|
135
151
|
// already owns that here. The worklet only writes a SharedValue; calling
|
|
136
152
|
// `runOnJS` (or anything that reaches JS) from a keyboard worklet
|
|
137
153
|
// reliably crashes Reanimated with a reentrant-lock assertion.
|
|
138
|
-
// True while the keyboard-following loop below is driving the list.
|
|
139
|
-
const isFollowingKeyboardRef = useRef(false);
|
|
140
154
|
const liveKeyboardHeight = useSharedValue(0);
|
|
141
155
|
useGenericKeyboardHandler({
|
|
142
156
|
onMove: e => {
|
|
@@ -406,6 +420,24 @@ export const ChatListLegend = /*#__PURE__*/memo(({
|
|
|
406
420
|
layoutMeasurement
|
|
407
421
|
} = e.nativeEvent;
|
|
408
422
|
const isAtBottom = contentOffset.y + layoutMeasurement.height >= contentSize.height - 100;
|
|
423
|
+
// A row that finishes measuring after the message was inserted grows
|
|
424
|
+
// the content under a scroll that has already run, leaving the newest
|
|
425
|
+
// message short of the end — behind the composer, since that is
|
|
426
|
+
// exactly the room the keyboard padding reserves. Re-aim at the new
|
|
427
|
+
// end each time that happens, for as long as the window is open.
|
|
428
|
+
const grew = contentSize.height > lastContentHeightRef.current;
|
|
429
|
+
lastContentHeightRef.current = contentSize.height;
|
|
430
|
+
// Measured against the true end, not `isAtBottom`: that carries a
|
|
431
|
+
// 100px tolerance for the scroll-to-bottom button, and the shortfall
|
|
432
|
+
// here is smaller than it (55px measured) while still being enough to
|
|
433
|
+
// leave the newest message behind the composer.
|
|
434
|
+
const distanceFromEnd = contentSize.height - contentOffset.y - layoutMeasurement.height;
|
|
435
|
+
if (grew && distanceFromEnd > 1 && Date.now() < anchorToEndUntilRef.current) {
|
|
436
|
+
scrollMessageToEnd({
|
|
437
|
+
animated: true,
|
|
438
|
+
closeKeyboard: false
|
|
439
|
+
});
|
|
440
|
+
}
|
|
409
441
|
|
|
410
442
|
// Debounce animation updates
|
|
411
443
|
if (scrollDebounceRef.current) {
|
|
@@ -420,7 +452,7 @@ export const ChatListLegend = /*#__PURE__*/memo(({
|
|
|
420
452
|
ChatMessageAPI.markConversationAsRead(conversationId || '');
|
|
421
453
|
}
|
|
422
454
|
}, 50);
|
|
423
|
-
}, [buttonOpacity, conversationId]);
|
|
455
|
+
}, [buttonOpacity, conversationId, scrollMessageToEnd]);
|
|
424
456
|
const handleScrollToBottom = useCallback(() => {
|
|
425
457
|
if (hasMoreNew) {
|
|
426
458
|
onLoadMoreOld?.(false);
|
|
@@ -636,6 +668,7 @@ export const ChatListLegend = /*#__PURE__*/memo(({
|
|
|
636
668
|
// one is.
|
|
637
669
|
const shouldFire = previousLastMessageId !== null && !!lastMessageId && !moreOldLoadingRef.current && isAtBottomRef.current;
|
|
638
670
|
if (!shouldFire) return;
|
|
671
|
+
anchorToEndUntilRef.current = Date.now() + NEW_MESSAGE_ANCHOR_MS;
|
|
639
672
|
scrollMessageToEnd({
|
|
640
673
|
animated: true,
|
|
641
674
|
closeKeyboard: false
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["memo","useCallback","useMemo","useEffect","useRef","useState","ActivityIndicator","DeviceEventEmitter","StyleSheet","useWindowDimensions","Animated","useSharedValue","useAnimatedStyle","withTiming","Easing","KeyboardAwareLegendList","KeyboardEvents","useGenericKeyboardHandler","KContainer","KColors","KSpacingValue","KLabel","KRadiusValue","KImage","precomputeLegendListData","getMessageRenderId","LegendChatMessage","LegendChatDay","LegendChatLoadEarlier","useChatDetailContext","getFlowInputButtonsNodes","InputButtonFlow","useResetFlow","useRunFlow","useSendMessage","ChatEvent","useMessageStore","useChatContext","messageStyles","MessageType","PeerType","useUserStore","ChatMessageAPI","resolveImageDisplayDims","ChatImageDimens","CHAT_IMAGE_VIEW_SOURCE","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ROW_MARGIN_CLUSTER_END","ROW_MARGIN_IN_CLUSTER","BUTTON_FADE_CONFIG","duration","easing","out","ease","CONTENT_PADDING_VERTICAL","FOLLOW_FALLBACK_MS","FOLLOW_SETTLE_MS","FOLLOW_TAIL_FRAMES","DISABLE_NATIVE_KEYBOARD_INSET","getRowMarginBottom","position","ChatListLegend","messages","conversationId","customMessageItemFactory","onLoadMoreOld","moreOldLoading","hasMoreOld","onLoadMoreNew","hasMoreNew","onMediaPress","onPressUrl","onLongPress","listRef","freeze","scrollMessageToEnd","keyboardOffset","isLoading","currentUserId","s","user","userID","windowWidth","width","isBotConversation","conversationFlow","conversation","isGroupConversation","peerType","Group","messageDataMap","retryMessage","lastMessageId","last","length","clientMsgID","serverMsgID","mutate","runFlow","resetFlow","buttonOpacity","isAtBottomRef","scrollDebounceRef","undefined","keyboardInsetRef","keyboardInset","setKeyboardInset","isFollowingKeyboardRef","liveKeyboardHeight","onMove","e","value","height","onEnd","rowRefsMap","Map","hasUserScrolledRef","hasCorrectedInitialPaddingRef","previousLastMessageIdRef","moreOldLoadingRef","current","messagesRef","showBadge","setShowBadge","highlightedId","setHighlightedId","highlightTimerRef","revealedMessageId","setRevealedMessageId","applicationType","searchMessages","handleMessageLongPress","messageId","message","node","get","measureInWindow","x","y","groupPosition","onRunFlow","payload","onResetFlow","handleMessagePress","prev","renderItem","item","index","isOutgoing","sendID","isLastMessage","isLastIncoming","messageData","dayStart","timeBreak","createdAt","showSenderGutter","showName","showAvatar","flowInputButtonsNodes","havingBotMessage","flowCurrentStep","children","View","ref","set","delete","style","messageRowRight","messageRowLeft","marginBottom","collapsable","createdAtTime","onRetry","onPress","isHighlighted","isTimeRevealed","nodeData","error","__DEV__","console","styles","errorRow","Text","typo","maintainVisiblePositionConfig","data","getItemType","isCustom","contentType","getFixedItemSize","rowMargin","candidateSize","PictureMessage","VideoMessage","getDimensions","MessageListThumbnail","listExtraData","flowStepId","id","handleStartReached","getState","handleEndReached","moreNewLoading","handleScrollBeginDrag","handleScroll","contentOffset","contentSize","layoutMeasurement","nativeEvent","isAtBottom","clearTimeout","setTimeout","markConversationAsRead","handleScrollToBottom","animated","closeKeyboard","contentContainerStyle","content","paddingBottom","animatedButtonStyle","opacity","pointerEvents","pendingSettle","pendingFrame","clearPending","cancelAnimationFrame","followKeyboard","to","startedAt","Date","now","startedFrom","Math","max","abs","tailFrames","step","live","reached","timedOut","moved","done","settleTo","scrollToEnd","requestAnimationFrame","applyInset","nextInset","willShow","addListener","willHide","remove","previousLastMessageId","shouldFire","handleListLoad","bottomSubscription","ScrollToBottom","subscription","ScrollToMessage","clientMessageId","findIndex","m","scrollToIndex","viewPosition","finally","startClientMsgId","flex","center","background","white","color","primary","normal","size","container","estimatedItemSize","keyExtractor","String","recycleItems","extraData","alignItemsAtEnd","alwaysRender","top","maintainScrollAtEnd","maintainVisibleContentPosition","drawDistance","automaticallyAdjustContentInsets","keyboardLiftBehavior","scrollEventThrottle","onScroll","onScrollBeginDrag","onLoad","scrollIndicatorInsets","right","ListHeaderComponent","onStartReached","onStartReachedThreshold","onEndReached","onEndReachedThreshold","initialScrollAtEnd","scrollToBottomButton","Touchable","activeOpacity","buttonInner","accessible","accessibilityLabel","accessibilityRole","VectorIcons","name","black","badge","displayName","create","paddingVertical","flexGrow","bottom","zIndex","borderRadius","round","backgroundColor","justifyContent","alignItems","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","padding","palette","w400","borderWidth"],"sourceRoot":"../../../../src","sources":["screens/chat-detail/ChatListLegend.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["memo","useCallback","useMemo","useEffect","useRef","useState","ActivityIndicator","DeviceEventEmitter","StyleSheet","useWindowDimensions","Animated","useSharedValue","useAnimatedStyle","withTiming","Easing","KeyboardAwareLegendList","KeyboardEvents","useGenericKeyboardHandler","KContainer","KColors","KSpacingValue","KLabel","KRadiusValue","KImage","precomputeLegendListData","getMessageRenderId","LegendChatMessage","LegendChatDay","LegendChatLoadEarlier","useChatDetailContext","getFlowInputButtonsNodes","InputButtonFlow","useResetFlow","useRunFlow","useSendMessage","ChatEvent","useMessageStore","useChatContext","messageStyles","MessageType","PeerType","useUserStore","ChatMessageAPI","resolveImageDisplayDims","ChatImageDimens","CHAT_IMAGE_VIEW_SOURCE","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ROW_MARGIN_CLUSTER_END","ROW_MARGIN_IN_CLUSTER","BUTTON_FADE_CONFIG","duration","easing","out","ease","CONTENT_PADDING_VERTICAL","FOLLOW_FALLBACK_MS","FOLLOW_SETTLE_MS","FOLLOW_TAIL_FRAMES","NEW_MESSAGE_ANCHOR_MS","DISABLE_NATIVE_KEYBOARD_INSET","getRowMarginBottom","position","ChatListLegend","messages","conversationId","customMessageItemFactory","onLoadMoreOld","moreOldLoading","hasMoreOld","onLoadMoreNew","hasMoreNew","onMediaPress","onPressUrl","onLongPress","listRef","freeze","scrollMessageToEnd","keyboardOffset","isLoading","currentUserId","s","user","userID","windowWidth","width","isBotConversation","conversationFlow","conversation","isGroupConversation","peerType","Group","messageDataMap","retryMessage","lastMessageId","last","length","clientMsgID","serverMsgID","mutate","runFlow","resetFlow","buttonOpacity","isAtBottomRef","scrollDebounceRef","undefined","keyboardInsetRef","keyboardInset","setKeyboardInset","isFollowingKeyboardRef","anchorToEndUntilRef","lastContentHeightRef","liveKeyboardHeight","onMove","e","value","height","onEnd","rowRefsMap","Map","hasUserScrolledRef","hasCorrectedInitialPaddingRef","previousLastMessageIdRef","moreOldLoadingRef","current","messagesRef","showBadge","setShowBadge","highlightedId","setHighlightedId","highlightTimerRef","revealedMessageId","setRevealedMessageId","applicationType","searchMessages","handleMessageLongPress","messageId","message","node","get","measureInWindow","x","y","groupPosition","onRunFlow","payload","onResetFlow","handleMessagePress","prev","renderItem","item","index","isOutgoing","sendID","isLastMessage","isLastIncoming","messageData","dayStart","timeBreak","createdAt","showSenderGutter","showName","showAvatar","flowInputButtonsNodes","havingBotMessage","flowCurrentStep","children","View","ref","set","delete","style","messageRowRight","messageRowLeft","marginBottom","collapsable","createdAtTime","onRetry","onPress","isHighlighted","isTimeRevealed","nodeData","error","__DEV__","console","styles","errorRow","Text","typo","maintainVisiblePositionConfig","data","getItemType","isCustom","contentType","getFixedItemSize","rowMargin","candidateSize","PictureMessage","VideoMessage","getDimensions","MessageListThumbnail","listExtraData","flowStepId","id","handleStartReached","getState","handleEndReached","moreNewLoading","handleScrollBeginDrag","handleScroll","contentOffset","contentSize","layoutMeasurement","nativeEvent","isAtBottom","grew","distanceFromEnd","Date","now","animated","closeKeyboard","clearTimeout","setTimeout","markConversationAsRead","handleScrollToBottom","contentContainerStyle","content","paddingBottom","animatedButtonStyle","opacity","pointerEvents","pendingSettle","pendingFrame","clearPending","cancelAnimationFrame","followKeyboard","to","startedAt","startedFrom","Math","max","abs","tailFrames","step","live","reached","timedOut","moved","done","settleTo","scrollToEnd","requestAnimationFrame","applyInset","nextInset","willShow","addListener","willHide","remove","previousLastMessageId","shouldFire","handleListLoad","bottomSubscription","ScrollToBottom","subscription","ScrollToMessage","clientMessageId","findIndex","m","scrollToIndex","viewPosition","finally","startClientMsgId","flex","center","background","white","color","primary","normal","size","container","estimatedItemSize","keyExtractor","String","recycleItems","extraData","alignItemsAtEnd","alwaysRender","top","maintainScrollAtEnd","maintainVisibleContentPosition","drawDistance","automaticallyAdjustContentInsets","keyboardLiftBehavior","scrollEventThrottle","onScroll","onScrollBeginDrag","onLoad","scrollIndicatorInsets","right","ListHeaderComponent","onStartReached","onStartReachedThreshold","onEndReached","onEndReachedThreshold","initialScrollAtEnd","scrollToBottomButton","Touchable","activeOpacity","buttonInner","accessible","accessibilityLabel","accessibilityRole","VectorIcons","name","black","badge","displayName","create","paddingVertical","flexGrow","bottom","zIndex","borderRadius","round","backgroundColor","justifyContent","alignItems","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","padding","palette","w400","borderWidth"],"sourceRoot":"../../../../src","sources":["screens/chat-detail/ChatListLegend.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { KColors, KContainer, KNavigation } from '@droppii/libs';
|
|
4
|
+
import { ActivityIndicator } from 'react-native';
|
|
5
|
+
import { useNavigation } from '@react-navigation/native';
|
|
6
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
7
|
+
export const ChatDetailLoading = () => {
|
|
8
|
+
const navigation = useNavigation();
|
|
9
|
+
return /*#__PURE__*/_jsxs(KContainer.Page, {
|
|
10
|
+
flex: true,
|
|
11
|
+
edges: ['bottom'],
|
|
12
|
+
children: [/*#__PURE__*/_jsx(KNavigation.Header, {
|
|
13
|
+
theme: "light",
|
|
14
|
+
alignment: "left",
|
|
15
|
+
size: "small",
|
|
16
|
+
disableCenterSpace: true,
|
|
17
|
+
shadow: true,
|
|
18
|
+
leftButton: {
|
|
19
|
+
id: 'back',
|
|
20
|
+
icon: {
|
|
21
|
+
size: 24,
|
|
22
|
+
vectorName: 'arrow-left-o',
|
|
23
|
+
vectorProvider: 'DroppiiNew',
|
|
24
|
+
tintColor: KColors.primary.normal
|
|
25
|
+
},
|
|
26
|
+
onPress: navigation.goBack
|
|
27
|
+
}
|
|
28
|
+
}), /*#__PURE__*/_jsx(KContainer.View, {
|
|
29
|
+
flex: true,
|
|
30
|
+
center: true,
|
|
31
|
+
children: /*#__PURE__*/_jsx(ActivityIndicator, {
|
|
32
|
+
size: "small",
|
|
33
|
+
color: KColors.primary.normal
|
|
34
|
+
})
|
|
35
|
+
})]
|
|
36
|
+
});
|
|
37
|
+
};
|
|
38
|
+
//# sourceMappingURL=ChatDetailLoading.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["KColors","KContainer","KNavigation","ActivityIndicator","useNavigation","jsx","_jsx","jsxs","_jsxs","ChatDetailLoading","navigation","Page","flex","edges","children","Header","theme","alignment","size","disableCenterSpace","shadow","leftButton","id","icon","vectorName","vectorProvider","tintColor","primary","normal","onPress","goBack","View","center","color"],"sourceRoot":"../../../../../src","sources":["screens/chat-detail/components/ChatDetailLoading.tsx"],"mappings":";;AAAA,SAASA,OAAO,EAAEC,UAAU,EAAEC,WAAW,QAAQ,eAAe;AAChE,SAASC,iBAAiB,QAAQ,cAAc;AAChD,SAASC,aAAa,QAAQ,0BAA0B;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAEzD,OAAO,MAAMC,iBAAiB,GAAGA,CAAA,KAAM;EACrC,MAAMC,UAAU,GAAGN,aAAa,CAAC,CAAC;EAClC,oBACEI,KAAA,CAACP,UAAU,CAACU,IAAI;IAACC,IAAI;IAACC,KAAK,EAAE,CAAC,QAAQ,CAAE;IAAAC,QAAA,gBACtCR,IAAA,CAACJ,WAAW,CAACa,MAAM;MACjBC,KAAK,EAAC,OAAO;MACbC,SAAS,EAAC,MAAM;MAChBC,IAAI,EAAC,OAAO;MACZC,kBAAkB;MAClBC,MAAM;MACNC,UAAU,EAAE;QACVC,EAAE,EAAE,MAAM;QACVC,IAAI,EAAE;UACJL,IAAI,EAAE,EAAE;UACRM,UAAU,EAAE,cAAc;UAC1BC,cAAc,EAAE,YAAY;UAC5BC,SAAS,EAAE1B,OAAO,CAAC2B,OAAO,CAACC;QAC7B,CAAC;QACDC,OAAO,EAAEnB,UAAU,CAACoB;MACtB;IAAE,CACH,CAAC,eACFxB,IAAA,CAACL,UAAU,CAAC8B,IAAI;MAACnB,IAAI;MAACoB,MAAM;MAAAlB,QAAA,eAC1BR,IAAA,CAACH,iBAAiB;QAACe,IAAI,EAAC,OAAO;QAACe,KAAK,EAAEjC,OAAO,CAAC2B,OAAO,CAACC;MAAO,CAAE;IAAC,CAClD,CAAC;EAAA,CACH,CAAC;AAEtB,CAAC","ignoreList":[]}
|
|
@@ -168,7 +168,7 @@ export const useMessageStore = create()((set, get) => ({
|
|
|
168
168
|
hasMoreNew: !searchNextRes.isEnd,
|
|
169
169
|
initLoading: false
|
|
170
170
|
});
|
|
171
|
-
const targetMessage =
|
|
171
|
+
const targetMessage = newMessages.find(msg => msg.clientMsgID === startClientMsgId);
|
|
172
172
|
if (!targetMessage || isMessageRevoked(targetMessage)) {
|
|
173
173
|
DeviceEventEmitter.emit(ChatEvent.TargetMessageUnavailable);
|
|
174
174
|
return;
|