@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.
Files changed (37) hide show
  1. package/lib/module/hooks/conversation/useSingleAccessGuard.js +33 -0
  2. package/lib/module/hooks/conversation/useSingleAccessGuard.js.map +1 -0
  3. package/lib/module/hooks/groups/useGroupAccessGuard.js +26 -17
  4. package/lib/module/hooks/groups/useGroupAccessGuard.js.map +1 -1
  5. package/lib/module/screens/chat-detail/ChatDetail.js +58 -47
  6. package/lib/module/screens/chat-detail/ChatDetail.js.map +1 -1
  7. package/lib/module/screens/chat-detail/ChatListLegend.js +38 -5
  8. package/lib/module/screens/chat-detail/ChatListLegend.js.map +1 -1
  9. package/lib/module/screens/chat-detail/components/ChatDetailLoading.js +38 -0
  10. package/lib/module/screens/chat-detail/components/ChatDetailLoading.js.map +1 -0
  11. package/lib/module/store/message.js +1 -1
  12. package/lib/module/store/message.js.map +1 -1
  13. package/lib/module/utils/conversation.js +21 -0
  14. package/lib/module/utils/conversation.js.map +1 -1
  15. package/lib/module/utils/message.js +2 -3
  16. package/lib/module/utils/message.js.map +1 -1
  17. package/lib/typescript/src/hooks/conversation/useSingleAccessGuard.d.ts +16 -0
  18. package/lib/typescript/src/hooks/conversation/useSingleAccessGuard.d.ts.map +1 -0
  19. package/lib/typescript/src/hooks/groups/useGroupAccessGuard.d.ts +6 -0
  20. package/lib/typescript/src/hooks/groups/useGroupAccessGuard.d.ts.map +1 -1
  21. package/lib/typescript/src/screens/chat-detail/ChatDetail.d.ts +2 -2
  22. package/lib/typescript/src/screens/chat-detail/ChatDetail.d.ts.map +1 -1
  23. package/lib/typescript/src/screens/chat-detail/ChatListLegend.d.ts.map +1 -1
  24. package/lib/typescript/src/screens/chat-detail/components/ChatDetailLoading.d.ts +2 -0
  25. package/lib/typescript/src/screens/chat-detail/components/ChatDetailLoading.d.ts.map +1 -0
  26. package/lib/typescript/src/utils/conversation.d.ts +17 -0
  27. package/lib/typescript/src/utils/conversation.d.ts.map +1 -1
  28. package/lib/typescript/src/utils/message.d.ts.map +1 -1
  29. package/package.json +2 -2
  30. package/src/hooks/conversation/useSingleAccessGuard.ts +44 -0
  31. package/src/hooks/groups/useGroupAccessGuard.ts +28 -19
  32. package/src/screens/chat-detail/ChatDetail.tsx +80 -43
  33. package/src/screens/chat-detail/ChatListLegend.tsx +40 -5
  34. package/src/screens/chat-detail/components/ChatDetailLoading.tsx +31 -0
  35. package/src/store/message.ts +1 -1
  36. package/src/utils/conversation.ts +31 -0
  37. 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
- UIUtils.alert.open({
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","evaluateAccess","groupID","info","getSpecifiedGroupsInfo","state","status","Dismissed","isMember","isJoinGroup","visibility","Public","useGroupAccessGuard","onBlocked","queryClient","groupIdRef","current","activeGroupId","accessState","setAccessState","hasBlockedRef","onBlockedRef","block","alert","open","title","message","primaryIndex","buttonType","ignoreStack","touchOutsideToDismiss","buttons","label","kind","onPress","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
+ {"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 { ActivityIndicator, DeviceEventEmitter } from 'react-native';
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 { KColors, KContainer, KNavigation } from '@droppii/libs';
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
- targetConversationId = '',
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 || isLoadingConversation || isCheckingAccess,
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
- export default props => {
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__*/_jsxs(KContainer.Page, {
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(ChatDetail, {
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 tween below, so the content tracks the keyboard's
130
- // real position instead of a guessed easing curve.
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":";;AAAA,SACEA,IAAI,EACJC,WAAW,EACXC,OAAO,EACPC,SAAS,EACTC,MAAM,EACNC,QAAQ,QAEH,OAAO;AACd,SACEC,iBAAiB,EACjBC,kBAAkB,EAClBC,UAAU,EACVC,mBAAmB,QAEd,cAAc;AACrB,OAAOC,QAAQ,IACbC,cAAc,EACdC,gBAAgB,EAChBC,UAAU,EACVC,MAAM,QAED,yBAAyB;AAChC,SAASC,uBAAuB,QAAQ,0BAA0B;AAClE,SACEC,cAAc,EACdC,yBAAyB,QACpB,kCAAkC;AAKzC,SACEC,UAAU,EACVC,OAAO,EACPC,aAAa,EACbC,MAAM,EACNC,YAAY,EACZC,MAAM,QACD,eAAe;AACtB,SACEC,wBAAwB,QAEnB,kCAA+B;AACtC,SAASC,kBAAkB,QAAQ,wBAAqB;AAExD,SAASC,iBAAiB,QAAQ,+BAA4B;AAC9D,SAASC,aAAa,QAAQ,2BAAwB;AACtD,SAASC,qBAAqB,QAAQ,mCAAgC;AACtE,SAASC,oBAAoB,QAAQ,oCAAiC;AACtE,SAASC,wBAAwB,QAAQ,sBAAmB;AAC5D,SAASC,eAAe,QAAQ,8CAAqC;AACrE,SAASC,YAAY,EAAEC,UAAU,QAAQ,8BAA2B;AAKpE,SAASC,cAAc,QAAQ,uCAAoC;AACnE,SAASC,SAAS,QAAqC,uBAAoB;AAC3E,SAASC,eAAe,QAAQ,wBAAqB;AACrD,SAASC,cAAc,QAAQ,wBAAe;AAC9C,SAASC,aAAa,QAAQ,0BAAuB;AACrD,SAASC,WAAW,EAAEC,QAAQ,QAAQ,+BAA+B;AAErE,SAASC,YAAY,QAAQ,sBAAa;AAC1C,SAASC,cAAc,QAAQ,yBAAgB;AAC/C,SAASC,uBAAuB,QAAQ,iDAAwC;AAChF,OAAOC,eAAe,IACpBC,sBAAsB,QACjB,gCAA6B;;AAEpC;AACA;AACA;AACA;AACA;AACA;AAAA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA,EAAAC,IAAA,IAAAC,KAAA;AACA,MAAMC,sBAAsB,GAAGhC,aAAa,CAAC,QAAQ,CAAC;AACtD,MAAMiC,qBAAqB,GAAGjC,aAAa,CAAC,SAAS,CAAC;AAEtD,MAAMkC,kBAAkB,GAAG;EAAEC,QAAQ,EAAE,GAAG;EAAEC,MAAM,EAAE1C,MAAM,CAAC2C,GAAG,CAAC3C,MAAM,CAAC4C,IAAI;AAAE,CAAC;AAE7E,MAAMC,wBAAwB,GAAGvC,aAAa,CAAC,SAAS,CAAC;;AAEzD;AACA;AACA;AACA;AACA,MAAMwC,kBAAkB,GAAG,GAAG;;AAE9B;AACA;AACA;AACA;AACA,MAAMC,gBAAgB,GAAG,GAAG;;AAE5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,kBAAkB,GAAG,CAAC;;AAE5B;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,6BAA6B,GAAG,SAAS;AAE/C,MAAMC,kBAAkB,GAAIC,QAAuB,IACjDA,QAAQ,KAAK,MAAM,IAAIA,QAAQ,KAAK,MAAM,GACtCb,sBAAsB,GACtBC,qBAAqB;AAY3B,OAAO,MAAMa,cAAc,gBAAGlE,IAAI,CAChC,CAAC;EACCmE,QAAQ,GAAG,EAAE;EACbC,cAAc;EACdC,wBAAwB;EACxBC,aAAa;EACbC,cAAc;EACdC,UAAU;EACVC,aAAa;EACbC,UAAU;EACVC,YAAY;EACZC,UAAU;EACVC,WAAW;EACXC,OAAO;EACPC,MAAM;EACNC,kBAAkB;EAClBC,cAAc;EACdC;AAC2B,CAAC,KAAK;EACjC,MAAMC,aAAa,GAAG1C,YAAY,CAAE2C,CAAC,IAAKA,CAAC,CAACC,IAAI,EAAEC,MAAM,CAAC;EACzD,MAAMC,WAAW,GAAG9E,mBAAmB,CAAC,CAAC,CAAC+E,KAAK;EAC/C;EACA,MAAM;IAAEC,iBAAiB;IAAEC,gBAAgB;IAAEC;EAAa,CAAC,GACzD9D,oBAAoB,CAAC,CAAC;;EAExB;EACA;EACA,MAAM+D,mBAAmB,GACvBD,YAAY,EAAEE,QAAQ,KAAKrD,QAAQ,CAACsD,KAAK,IAAI,CAACL,iBAAiB;EAEjE,MAAMM,cAAc,GAAG7F,OAAO,CAC5B,MACEsB,wBAAwB,CAAC2C,QAAQ,EAAE;IACjCsB,iBAAiB;IACjBN;EACF,CAAC,CAAC,EACJ,CAAChB,QAAQ,EAAEsB,iBAAiB,EAAEN,aAAa,CAC7C,CAAC;EAED,MAAM;IAAEa;EAAa,CAAC,GAAG9D,cAAc,CAAC,CAAC;EAEzC,MAAM+D,aAAa,GAAG/F,OAAO,CAAC,MAAM;IAClC,MAAMgG,IAAI,GAAG/B,QAAQ,CAACA,QAAQ,CAACgC,MAAM,GAAG,CAAC,CAAC;IAC1C,OAAOD,IAAI,EAAEE,WAAW,IAAIF,IAAI,EAAEG,WAAW,IAAI,IAAI;EACvD,CAAC,EAAE,CAAClC,QAAQ,CAAC,CAAC;EACd,MAAM;IAAEmC,MAAM,EAAEC;EAAQ,CAAC,GAAGtE,UAAU,CAAC,CAAC;EACxC,MAAM;IAAEqE,MAAM,EAAEE;EAAU,CAAC,GAAGxE,YAAY,CAAC,CAAC;EAE5C,MAAMyE,aAAa,GAAG9F,cAAc,CAAC,CAAC,CAAC;EACvC,MAAM+F,aAAa,GAAGtG,MAAM,CAAC,IAAI,CAAC;EAClC,MAAMuG,iBAAiB,GAAGvG,MAAM,CAA6BwG,SAAS,CAAC;EACvE;EACA;EACA;EACA,MAAMC,gBAAgB,GAAGzG,MAAM,CAAC,CAAC,CAAC;EAClC,MAAM,CAAC0G,aAAa,EAAEC,gBAAgB,CAAC,GAAG1G,QAAQ,CAAC,CAAC,CAAC;EACrD;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,MAAM2G,sBAAsB,GAAG5G,MAAM,CAAC,KAAK,CAAC;EAC5C,MAAM6G,kBAAkB,GAAGtG,cAAc,CAAC,CAAC,CAAC;EAC5CM,yBAAyB,CACvB;IACEiG,MAAM,EAAGC,CAAC,IAAK;MACb,SAAS;;MACTF,kBAAkB,CAACG,KAAK,GAAGD,CAAC,CAACE,MAAM;IACrC,CAAC;IACDC,KAAK,EAAGH,CAAC,IAAK;MACZ,SAAS;;MACTF,kBAAkB,CAACG,KAAK,GAAGD,CAAC,CAACE,MAAM;IACrC;EACF,CAAC,EACD,EACF,CAAC;EACD,MAAME,UAAU,GAAGnH,MAAM,CAA2B,IAAIoH,GAAG,CAAC,CAAC,CAAC;EAC9D;EACA;EACA;EACA;EACA;EACA;EACA,MAAMC,kBAAkB,GAAGrH,MAAM,CAAC,KAAK,CAAC;EACxC;EACA;EACA;EACA;EACA,MAAMsH,6BAA6B,GAAGtH,MAAM,CAAC,KAAK,CAAC;EACnD;EACA;EACA;EACA,MAAMuH,wBAAwB,GAAGvH,MAAM,CAAgB,IAAI,CAAC;EAC5D;EACA;EACA,MAAMwH,iBAAiB,GAAGxH,MAAM,CAACmE,cAAc,CAAC;EAChDqD,iBAAiB,CAACC,OAAO,GAAGtD,cAAc;EAC1C;EACA;EACA;EACA;EACA,MAAMuD,WAAW,GAAG1H,MAAM,CAAC+D,QAAQ,CAAC;EACpC2D,WAAW,CAACD,OAAO,GAAG1D,QAAQ;EAC9B,MAAM,CAAC4D,SAAS,EAAEC,YAAY,CAAC,GAAG3H,QAAQ,CAAC,KAAK,CAAC;EACjD,MAAM,CAAC4H,aAAa,EAAEC,gBAAgB,CAAC,GAAG7H,QAAQ,CAAgB,IAAI,CAAC;EACvE,MAAM8H,iBAAiB,GAAG/H,MAAM,CAC9B,IACF,CAAC;EACD;EACA;EACA,MAAM,CAACgI,iBAAiB,EAAEC,oBAAoB,CAAC,GAAGhI,QAAQ,CACxD,IACF,CAAC;EAED,MAAM;IAAEiI;EAAgB,CAAC,GAAGjG,cAAc,CAAC,CAAC;EAC5C,MAAMkG,cAAc,GAAGnG,eAAe,CAAEgD,CAAC,IAAKA,CAAC,CAACmD,cAAc,CAAC;EAE/D,MAAMC,sBAAsB,GAAGvI,WAAW,CACxC,CAACwI,SAAiB,EAAEC,OAAoB,KAAK;IAC3C,MAAMC,IAAI,GAAGpB,UAAU,CAACM,OAAO,CAACe,GAAG,CAACH,SAAS,CAAC;IAC9CE,IAAI,EAAEE,eAAe,CAAC,CAACC,CAAC,EAAEC,CAAC,EAAEvD,KAAK,EAAE6B,MAAM,KAAK;MAC7C,IAAIyB,CAAC,IAAI,IAAI,IAAIC,CAAC,IAAI,IAAI,IAAIvD,KAAK,IAAI,IAAI,IAAI6B,MAAM,IAAI,IAAI,EAAE;MAC/D,MAAM2B,aAAa,GAAGjD,cAAc,CAAC6C,GAAG,CAACH,SAAS,CAAC,EAAEO,aAAa;MAClEnE,WAAW,GAAG6D,OAAO,EAAE;QAAEI,CAAC;QAAEC,CAAC;QAAEvD,KAAK;QAAE6B;MAAO,CAAC,EAAE2B,aAAa,CAAC;IAChE,CAAC,CAAC;EACJ,CAAC,EACD,CAACnE,WAAW,EAAEkB,cAAc,CAC9B,CAAC;EAED,MAAMkD,SAAS,GAAGhJ,WAAW,CAC1BiJ,OAAoC,IAAK;IACxC3C,OAAO,CAAC2C,OAAO,CAAC;EAClB,CAAC,EACD,CAAC3C,OAAO,CACV,CAAC;EAED,MAAM4C,WAAW,GAAGlJ,WAAW,CAAC,MAAM;IACpCuG,SAAS,CAAC,CAAC;EACb,CAAC,EAAE,CAACA,SAAS,CAAC,CAAC;EAEf,MAAM4C,kBAAkB,GAAGnJ,WAAW,CAAEwI,SAAiB,IAAK;IAC5DJ,oBAAoB,CAAEgB,IAAI,IAAMA,IAAI,KAAKZ,SAAS,GAAG,IAAI,GAAGA,SAAU,CAAC;EACzE,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMa,UAAU,GAAGrJ,WAAW,CAC5B,CAAC;IAAEsJ,IAAI;IAAEC;EAA4C,CAAC,KAAK;IACzD,IAAI;MACF,IAAI,CAACD,IAAI,EAAE,OAAO,IAAI;MAEtB,MAAMb,OAAO,GAAGa,IAAmB;MACnC,MAAME,UAAU,GAAGf,OAAO,CAACgB,MAAM,KAAKvE,aAAa;MACnD,MAAMwE,aAAa,GACjB,CAACjB,OAAO,CAACtC,WAAW,IAAIsC,OAAO,CAACrC,WAAW,MAAMJ,aAAa;MAChE,MAAM2D,cAAc,GAAG,CAACH,UAAU,IAAIE,aAAa;MACnD,MAAMlB,SAAS,GAAGhH,kBAAkB,CAACiH,OAAO,EAAEc,KAAK,CAAC;MAEpD,MAAMK,WAAW,GAAG9D,cAAc,CAAC6C,GAAG,CAACH,SAAS,CAAC;MACjD,IAAI,CAACoB,WAAW,EAAE;QAChB,OAAO,IAAI;MACb;MAEA,MAAM;QAAEC,QAAQ;QAAEC,SAAS;QAAEC,SAAS;QAAEhB;MAAc,CAAC,GAAGa,WAAW;MAErE,MAAMI,gBAAgB,GAAGrE,mBAAmB,IAAI,CAAC6D,UAAU;MAC3D,MAAMS,QAAQ,GACZD,gBAAgB,KACfjB,aAAa,KAAK,OAAO,IAAIA,aAAa,KAAK,MAAM,CAAC;MACzD,MAAMmB,UAAU,GACdF,gBAAgB,KACfjB,aAAa,KAAK,MAAM,IAAIA,aAAa,KAAK,MAAM,CAAC;MAExD,IAAIoB,qBAAoD,GAAG,EAAE;MAC7D,IACE,CAAET,aAAa,IAAIjE,gBAAgB,EAAE2E,gBAAgB,KAAK,KAAK,IAC7DT,cAAc,KAChBnE,iBAAiB,EACjB;QACA2E,qBAAqB,GAAGtI,wBAAwB,CAC9C4D,gBAAgB,EAAE4E,eACpB,CAAC;MACH;MAEA,oBACEnH,KAAA,CAAAF,SAAA;QAAAsH,QAAA,GACG,CAACT,QAAQ,IAAIC,SAAS,kBACrBhH,IAAA,CAACpB,aAAa;UAACqI,SAAS,EAAEA;QAAU,CAAE,CACvC,eACDjH,IAAA,CAAC7B,UAAU,CAACsJ,IAAI;UACdC,GAAG,EAAG9B,IAAiB,IAAK;YAC1B,IAAIA,IAAI,EAAEpB,UAAU,CAACM,OAAO,CAAC6C,GAAG,CAACjC,SAAS,EAAEE,IAAI,CAAC,CAAC,KAC7CpB,UAAU,CAACM,OAAO,CAAC8C,MAAM,CAAClC,SAAS,CAAC;UAC3C,CAAE;UACFmC,KAAK,EAAE,CACLnB,UAAU,GACNnH,aAAa,CAACuI,eAAe,GAC7BvI,aAAa,CAACwI,cAAc,EAChC;YAAEC,YAAY,EAAE/G,kBAAkB,CAACgF,aAAa;UAAE,CAAC,CACnD;UACFgC,WAAW,EAAE,KAAM;UAAAT,QAAA,eAEnBxH,IAAA,CAACrB,iBAAiB;YAChBgH,OAAO,EAAEA,OAAQ;YACjBD,SAAS,EAAEA,SAAU;YACrBgB,UAAU,EAAEA,UAAW;YACvBwB,aAAa,EAAEjB,SAAU;YACzBrF,YAAY,EAAEA,YAAa;YAC3BC,UAAU,EAAEA,UAAW;YACvBsG,OAAO,EAAElF,YAAa;YACtBmF,OAAO,EAAE/B,kBAAmB;YAC5BvE,WAAW,EAAEA,WAAW,GAAG2D,sBAAsB,GAAG5B,SAAU;YAC9DvC,wBAAwB,EAAEA,wBAAyB;YACnD+G,aAAa,EAAEnD,aAAa,KAAKQ,SAAU;YAC3C4C,cAAc,EAAEjD,iBAAiB,KAAKK,SAAU;YAChDyB,QAAQ,EAAEA,QAAS;YACnBC,UAAU,EAAEA,UAAW;YACvBF,gBAAgB,EAAEA,gBAAiB;YACnCjB,aAAa,EAAEA;UAAc,CAC9B;QAAC,CACa,CAAC,EACjBoB,qBAAqB,IAAIA,qBAAqB,CAACjE,MAAM,GAAG,CAAC,iBACxDpD,IAAA,CAAChB,eAAe;UACduJ,QAAQ,EAAElB,qBAAsB;UAChCjB,WAAW,EAAEA,WAAY;UACzBF,SAAS,EAAEA;QAAU,CACtB,CACF;MAAA,CACD,CAAC;IAEP,CAAC,CAAC,OAAOsC,KAAK,EAAE;MACd,IAAIC,OAAO,EACTC,OAAO,CAACF,KAAK,CAAC,oCAAoC,EAAEA,KAAK,CAAC;MAC5D,oBACExI,IAAA,CAAC7B,UAAU,CAACsJ,IAAI;QAACI,KAAK,EAAEc,MAAM,CAACC,QAAS;QAAApB,QAAA,eACtCxH,IAAA,CAAC1B,MAAM,CAACuK,IAAI;UAACC,IAAI,EAAC,cAAc;UAAAtB,QAAA,EAAC;QAEjC,CAAa;MAAC,CACC,CAAC;IAEtB;EACF,CAAC,EACD,CACEpF,aAAa,EACbc,aAAa,EACbF,cAAc,EACdH,mBAAmB,EACnBH,iBAAiB,EACjBd,YAAY,EACZC,UAAU,EACVC,WAAW,EACX2D,sBAAsB,EACtBnE,wBAAwB,EACxB8E,WAAW,EACXF,SAAS,EACTvD,gBAAgB,EAAE4E,eAAe,EACjC5E,gBAAgB,EAAE2E,gBAAgB,EAClCrE,YAAY,EACZiC,aAAa,EACbG,iBAAiB,EACjBgB,kBAAkB,CAEtB,CAAC;;EAED;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,MAAM0C,6BAAmE,GACvE5L,OAAO,CAAC,OAAO;IAAE6L,IAAI,EAAE;EAAK,CAAC,CAAC,EAAE,EAAE,CAAC;;EAErC;EACA;EACA;EACA;EACA,MAAMC,WAAW,GAAG/L,WAAW,CAC5BsJ,IAAiB,IAAK;IACrB,MAAM0C,QAAQ,GAAG,CAAC,CAAC5H,wBAAwB,GAAGkF,IAAI,CAAC;IACnD,OAAO,GAAGA,IAAI,EAAE2C,WAAW,IAAI,SAAS,GAAGD,QAAQ,GAAG,SAAS,GAAG,EAAE,EAAE;EACxE,CAAC,EACD,CAAC5H,wBAAwB,CAC3B,CAAC;;EAED;EACA;EACA;EACA;EACA;EACA;EACA,MAAM8H,gBAAgB,GAAGlM,WAAW,CAClC,CAACsJ,IAAiB,EAAEC,KAAa,KAAyB;IACxD,MAAMd,OAAO,GAAGa,IAAI;IACpB,MAAMd,SAAS,GAAGhH,kBAAkB,CAACiH,OAAO,EAAEc,KAAK,CAAC;IAEpD,MAAMK,WAAW,GAAG9D,cAAc,CAAC6C,GAAG,CAACH,SAAS,CAAC;IACjD;IACA;IACA,IAAIoB,WAAW,EAAEC,QAAQ,IAAID,WAAW,EAAEE,SAAS,EAAE,OAAOnD,SAAS;;IAErE;IACA;IACA,IAAIhB,mBAAmB,IAAI8C,OAAO,CAACgB,MAAM,KAAKvE,aAAa,EAAE;MAC3D,OAAOyB,SAAS;IAClB;IAEA,MAAMwF,SAAS,GAAGpI,kBAAkB,CAClC6F,WAAW,EAAEb,aAAa,IAAI,MAChC,CAAC;;IAED;IACA;IACA;IACA;IACA;IACA,IAAIqD,aAAqB;IACzB,QAAQ3D,OAAO,CAACwD,WAAW;MACzB,KAAK3J,WAAW,CAAC+J,cAAc;QAC7BD,aAAa,GACX1J,uBAAuB,CAAC+F,OAAO,EAAEnD,WAAW,CAAC,CAAC8B,MAAM,GAAG+E,SAAS;QAClE;MACF,KAAK7J,WAAW,CAACgK,YAAY;QAC3BF,aAAa,GACXzJ,eAAe,CAAC4J,aAAa,CAC3B3J,sBAAsB,CAAC4J,oBACzB,CAAC,CAACpF,MAAM,GAAG+E,SAAS;QACtB;MACF;MACA;MACA;MACA;MACA;QACE,OAAOxF,SAAS;IACpB;;IAEA;IACA;IACA;IACA;IACA;IACA,IAAIvC,wBAAwB,GAAGqE,OAAO,CAAC,EAAE,OAAO9B,SAAS;IAEzD,MAAM6C,UAAU,GAAGf,OAAO,CAACgB,MAAM,KAAKvE,aAAa;IACnD,MAAMyE,cAAc,GAAG,CAACH,UAAU,IAAIhB,SAAS,KAAKxC,aAAa;IACjE,MAAMmE,qBAAqB,GAAGtI,wBAAwB,CACpD4D,gBAAgB,EAAE4E,eACpB,CAAC;IACD,IACEV,cAAc,IACdnE,iBAAiB,IACjB2E,qBAAqB,CAACjE,MAAM,GAAG,CAAC,EAChC;MACA,OAAOS,SAAS;IAClB;IAEA,OAAOyF,aAAa;EACtB,CAAC,EACD,CACEtG,cAAc,EACd1B,wBAAwB,EACxBc,aAAa,EACbS,mBAAmB,EACnBK,aAAa,EACbR,iBAAiB,EACjBC,gBAAgB,EAAE4E,eAAe,EACjC/E,WAAW,CAEf,CAAC;;EAED;EACA;EACA;EACA;EACA,MAAMmH,aAAa,GAAGxM,OAAO,CAC3B,OAAO;IACL6F,cAAc;IACd4G,UAAU,EAAEjH,gBAAgB,EAAE4E,eAAe,EAAEsC,EAAE,IAAI,EAAE;IACvD3G,aAAa;IACbgC,aAAa;IACbG;EACF,CAAC,CAAC,EACF,CACErC,cAAc,EACdL,gBAAgB,EAAE4E,eAAe,EAAEsC,EAAE,EACrC3G,aAAa,EACbgC,aAAa,EACbG,iBAAiB,CAErB,CAAC;EAED,MAAMyE,kBAAkB,GAAG5M,WAAW,CAAC,MAAM;IAC3C;IACA;IACA;IACA,IAAI,CAACwH,kBAAkB,CAACI,OAAO,EAAE;IACjC,IAAIrD,UAAU,IAAI,CAACpC,eAAe,CAAC0K,QAAQ,CAAC,CAAC,CAACvI,cAAc,EAAE;MAC5DD,aAAa,GAAG,IAAI,CAAC;IACvB;EACF,CAAC,EAAE,CAACE,UAAU,EAAEF,aAAa,CAAC,CAAC;EAE/B,MAAMyI,gBAAgB,GAAG9M,WAAW,CAAC,MAAM;IACzC,IAAI,CAACwH,kBAAkB,CAACI,OAAO,EAAE;IACjC,IAAInD,UAAU,IAAI,CAACtC,eAAe,CAAC0K,QAAQ,CAAC,CAAC,CAACE,cAAc,EAAE;MAC5DvI,aAAa,GAAG,IAAI,CAAC;IACvB;EACF,CAAC,EAAE,CAACC,UAAU,EAAED,aAAa,CAAC,CAAC;EAE/B,MAAMwI,qBAAqB,GAAGhN,WAAW,CAAC,MAAM;IAC9CwH,kBAAkB,CAACI,OAAO,GAAG,IAAI;EACnC,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMqF,YAAY,GAAGjN,WAAW,CAC7BkH,CAAM,IAAK;IACV;IACA;IACA;IACA;IACA;IACA;IACA;IACA,IAAIH,sBAAsB,CAACa,OAAO,EAAE;IAEpC,MAAM;MAAEsF,aAAa;MAAEC,WAAW;MAAEC;IAAkB,CAAC,GAAGlG,CAAC,CAACmG,WAAW;IACvE,MAAMC,UAAU,GACdJ,aAAa,CAACpE,CAAC,GAAGsE,iBAAiB,CAAChG,MAAM,IAC1C+F,WAAW,CAAC/F,MAAM,GAAG,GAAG;;IAE1B;IACA,IAAIV,iBAAiB,CAACkB,OAAO,EAAE;MAC7B2F,YAAY,CAAC7G,iBAAiB,CAACkB,OAAO,CAAC;IACzC;IAEAlB,iBAAiB,CAACkB,OAAO,GAAG4F,UAAU,CAAC,MAAM;MAC3C,IAAI/G,aAAa,CAACmB,OAAO,KAAK0F,UAAU,EAAE;QACxC7G,aAAa,CAACmB,OAAO,GAAG0F,UAAU;QAClC9G,aAAa,CAACW,KAAK,GAAGvG,UAAU,CAC9B0M,UAAU,GAAG,CAAC,GAAG,CAAC,EAClBjK,kBACF,CAAC;MACH;MACA,IAAIiK,UAAU,EAAE;QACd7K,cAAc,CAACgL,sBAAsB,CAACtJ,cAAc,IAAI,EAAE,CAAC;MAC7D;IACF,CAAC,EAAE,EAAE,CAAC;EACR,CAAC,EACD,CAACqC,aAAa,EAAErC,cAAc,CAChC,CAAC;EAED,MAAMuJ,oBAAoB,GAAG1N,WAAW,CAAC,MAAM;IAC7C,IAAIyE,UAAU,EAAE;MACdJ,aAAa,GAAG,KAAK,CAAC;MACtB;IACF;IACA;IACA;IACA;IACA;IACA,IAAIoC,aAAa,CAACmB,OAAO,EAAE;IAC3B7C,kBAAkB,CAAC;MAAE4I,QAAQ,EAAE,IAAI;MAAEC,aAAa,EAAE;IAAM,CAAC,CAAC;IAC5DpH,aAAa,CAACW,KAAK,GAAGvG,UAAU,CAAC,CAAC,EAAEyC,kBAAkB,CAAC;IACvDoD,aAAa,CAACmB,OAAO,GAAG,IAAI;IAC5BG,YAAY,CAAC,KAAK,CAAC;EACrB,CAAC,EAAE,CAACtD,UAAU,EAAEJ,aAAa,EAAEU,kBAAkB,EAAEyB,aAAa,CAAC,CAAC;;EAElE;EACA;EACA;EACA,MAAMqH,qBAAqB,GAAG5N,OAAO,CACnC,MAAM,CACJwL,MAAM,CAACqC,OAAO,EACd;IAAEC,aAAa,EAAErK,wBAAwB,GAAGmD;EAAc,CAAC,CAC5D,EACD,CAACA,aAAa,CAChB,CAAC;EAED,MAAMmH,mBAAmB,GAAGrN,gBAAgB,CAAC,OAAO;IAClDsN,OAAO,EAAEzH,aAAa,CAACW,KAAK;IAC5B+G,aAAa,EAAE1H,aAAa,CAACW,KAAK,KAAK,CAAC,GAAG,MAAM,GAAG;EACtD,CAAC,CAAC,CAAC;;EAEH;EACAjH,SAAS,CAAC,MAAM;IACd,OAAO,MAAM;MACX,IAAIwG,iBAAiB,CAACkB,OAAO,EAAE;QAC7B2F,YAAY,CAAC7G,iBAAiB,CAACkB,OAAO,CAAC;MACzC;IACF,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;;EAEN;EACA;EACA;EACA;EACA;EACA;EACA1H,SAAS,CAAC,MAAM;IACd,IAAIiO,aAAwD;IAC5D,IAAIC,YAAgC;IACpC,MAAMC,YAAY,GAAGA,CAAA,KAAM;MACzB,IAAIF,aAAa,EAAE;QACjBZ,YAAY,CAACY,aAAa,CAAC;QAC3BA,aAAa,GAAGxH,SAAS;MAC3B;MACA,IAAIyH,YAAY,KAAKzH,SAAS,EAAE;QAC9B2H,oBAAoB,CAACF,YAAY,CAAC;QAClCA,YAAY,GAAGzH,SAAS;MAC1B;MACAI,sBAAsB,CAACa,OAAO,GAAG,KAAK;IACxC,CAAC;;IAED;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA,MAAM2G,cAAc,GAAGA,CAACC,EAAU,EAAElL,QAAgB,KAAK;MACvD,MAAMmL,SAAS,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC;MAC5B,MAAMC,WAAW,GAAGC,IAAI,CAACC,GAAG,CAC1BD,IAAI,CAACE,GAAG,CAAC/H,kBAAkB,CAACG,KAAK,CAAC,GAAGnC,cAAc,EACnD,CACF,CAAC;MACD,IAAIgK,UAAU,GAAG,CAAC;MAClBjI,sBAAsB,CAACa,OAAO,GAAG,IAAI;MACrC,MAAMqH,IAAI,GAAGA,CAAA,KAAM;QACjB,MAAMC,IAAI,GAAGL,IAAI,CAACC,GAAG,CACnBD,IAAI,CAACE,GAAG,CAAC/H,kBAAkB,CAACG,KAAK,CAAC,GAAGnC,cAAc,EACnD,CACF,CAAC;QACD;QACA;QACA;QACA;QACA,MAAMmK,OAAO,GAAGN,IAAI,CAACE,GAAG,CAACG,IAAI,GAAGV,EAAE,CAAC,IAAI,CAAC;QACxC,MAAMY,QAAQ,GACZ,CAACD,OAAO,IAAIT,IAAI,CAACC,GAAG,CAAC,CAAC,GAAGF,SAAS,IAAInL,QAAQ,GAAGK,kBAAkB;QACrE;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,MAAM0L,KAAK,GAAGR,IAAI,CAACE,GAAG,CAACG,IAAI,GAAGN,WAAW,CAAC,GAAG,CAAC;QAC9C,IAAIO,OAAO,EAAE;UACXH,UAAU,IAAI,CAAC;QACjB;QACA,MAAMM,IAAI,GAAGF,QAAQ,IAAIJ,UAAU,IAAInL,kBAAkB;QACzD,MAAM0L,QAAQ,GAAGJ,OAAO,IAAKC,QAAQ,IAAIC,KAAM,GAAGb,EAAE,GAAGU,IAAI;QAE3DpI,gBAAgB,CAACyI,QAAQ,CAAC;QAC1B,IAAIA,QAAQ,KAAKf,EAAE,EAAE;UACnB;UACA;UACA5H,gBAAgB,CAACgB,OAAO,GAAG2H,QAAQ;QACrC;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA1K,OAAO,CAAC+C,OAAO,EAAE4H,WAAW,CAAC;UAAE7B,QAAQ,EAAE;QAAM,CAAC,CAAC;QAEjD,IAAI2B,IAAI,EAAE;UACRlB,YAAY,GAAGzH,SAAS;UACxB;UACA;UACA;UACAF,aAAa,CAACmB,OAAO,GAAG,IAAI;UAC5BpB,aAAa,CAACW,KAAK,GAAGvG,UAAU,CAAC,CAAC,EAAEyC,kBAAkB,CAAC;UACvD0E,YAAY,CAAC,KAAK,CAAC;UACnBoG,aAAa,GAAGX,UAAU,CAAC,MAAM;YAC/BW,aAAa,GAAGxH,SAAS;YACzBI,sBAAsB,CAACa,OAAO,GAAG,KAAK;UACxC,CAAC,EAAEhE,gBAAgB,CAAC;UACpB;QACF;QACAwK,YAAY,GAAGqB,qBAAqB,CAACR,IAAI,CAAC;MAC5C,CAAC;MACDb,YAAY,GAAGqB,qBAAqB,CAACR,IAAI,CAAC;IAC5C,CAAC;IAED,MAAMS,UAAU,GAAGA,CAACC,SAAiB,EAAErM,QAAgB,KAAK;MAC1D;MACA;MACA;MACA,IAAIsD,gBAAgB,CAACgB,OAAO,KAAK+H,SAAS,EAAE;MAC5C/I,gBAAgB,CAACgB,OAAO,GAAG+H,SAAS;;MAEpC;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA,IAAI,CAAClJ,aAAa,CAACmB,OAAO,EAAE;QAC1Bd,gBAAgB,CAAC6I,SAAS,CAAC;QAC3B;MACF;MACApB,cAAc,CAACoB,SAAS,EAAErM,QAAQ,CAAC;IACrC,CAAC;IAED,MAAMsM,QAAQ,GAAG7O,cAAc,CAAC8O,WAAW,CAAC,kBAAkB,EAAG3I,CAAC,IAAK;MACrEmH,YAAY,CAAC,CAAC;MACdqB,UAAU,CAACb,IAAI,CAACC,GAAG,CAAC5H,CAAC,CAACE,MAAM,GAAGpC,cAAc,EAAE,CAAC,CAAC,EAAEkC,CAAC,CAAC5D,QAAQ,CAAC;IAChE,CAAC,CAAC;IACF,MAAMwM,QAAQ,GAAG/O,cAAc,CAAC8O,WAAW,CAAC,kBAAkB,EAAG3I,CAAC,IAAK;MACrEmH,YAAY,CAAC,CAAC;MACdqB,UAAU,CAAC,CAAC,EAAExI,CAAC,CAAC5D,QAAQ,CAAC;IAC3B,CAAC,CAAC;IAEF,OAAO,MAAM;MACX+K,YAAY,CAAC,CAAC;MACduB,QAAQ,CAACG,MAAM,CAAC,CAAC;MACjBD,QAAQ,CAACC,MAAM,CAAC,CAAC;IACnB,CAAC;EACH,CAAC,EAAE,CAACvJ,aAAa,EAAExB,cAAc,EAAEH,OAAO,EAAEmC,kBAAkB,CAAC,CAAC;;EAEhE;EACA;EACA;EACA;EACA;EACA9G,SAAS,CAAC,MAAM;IACdsH,kBAAkB,CAACI,OAAO,GAAG,KAAK;IAClCH,6BAA6B,CAACG,OAAO,GAAG,KAAK;IAC7CF,wBAAwB,CAACE,OAAO,GAAG,IAAI;EACzC,CAAC,EAAE,CAACzD,cAAc,CAAC,CAAC;;EAEpB;EACA;EACA;EACA;EACAjE,SAAS,CAAC,MAAM;IACd,MAAM8P,qBAAqB,GAAGtI,wBAAwB,CAACE,OAAO;IAC9DF,wBAAwB,CAACE,OAAO,GAAG5B,aAAa;;IAEhD;IACA;IACA;IACA,MAAMiK,UAAU,GACdD,qBAAqB,KAAK,IAAI,IAC9B,CAAC,CAAChK,aAAa,IACf,CAAC2B,iBAAiB,CAACC,OAAO,IAC1BnB,aAAa,CAACmB,OAAO;IAEvB,IAAI,CAACqI,UAAU,EAAE;IAEjBlL,kBAAkB,CAAC;MAAE4I,QAAQ,EAAE,IAAI;MAAEC,aAAa,EAAE;IAAM,CAAC,CAAC;EAC9D,CAAC,EAAE,CAAC5H,aAAa,EAAEjB,kBAAkB,CAAC,CAAC;EAEvC,MAAMmL,cAAc,GAAGlQ,WAAW,CAAC,MAAM;IACvC,IAAIyH,6BAA6B,CAACG,OAAO,EAAE;IAC3CH,6BAA6B,CAACG,OAAO,GAAG,IAAI;IAE5C7C,kBAAkB,CAAC;MAAE4I,QAAQ,EAAE,KAAK;MAAEC,aAAa,EAAE;IAAM,CAAC,CAAC;EAC/D,CAAC,EAAE,CAAC7I,kBAAkB,CAAC,CAAC;EAExB7E,SAAS,CAAC,MAAM;IACd,MAAMiQ,kBAAkB,GAAG7P,kBAAkB,CAACuP,WAAW,CACvD3N,SAAS,CAACkO,cAAc,EACxB1C,oBACF,CAAC;IAED,MAAM2C,YAAY,GAAG/P,kBAAkB,CAACuP,WAAW,CACjD3N,SAAS,CAACoO,eAAe,EACzB,CAAC;MAAEC;IAAwC,CAAC,KAAK;MAC/C,MAAMhH,KAAK,GAAG1B,WAAW,CAACD,OAAO,CAAC4I,SAAS,CACxCC,CAAC,IAAKA,CAAC,CAACtK,WAAW,KAAKoK,eAC3B,CAAC;MAED,IAAIhH,KAAK,IAAI,CAAC,EAAE;QACd,IAAI;UACF1E,OAAO,CAAC+C,OAAO,EACX8I,aAAa,CAAC;YACdnH,KAAK;YACLoE,QAAQ,EAAE,IAAI;YACdgD,YAAY,EAAE;UAChB,CAAC,CAAC,CACDC,OAAO,CAAC,MAAM;YACb,IAAI1I,iBAAiB,CAACN,OAAO,EAC3B2F,YAAY,CAACrF,iBAAiB,CAACN,OAAO,CAAC;YACzCK,gBAAgB,CAACsI,eAAe,CAAC;YACjCrI,iBAAiB,CAACN,OAAO,GAAG4F,UAAU,CACpC,MAAMvF,gBAAgB,CAAC,IAAI,CAAC,EAC5B,IACF,CAAC;UACH,CAAC,CAAC;QACN,CAAC,CAAC,MAAM;UACN;UACAK,cAAc,CAAC;YACbD,eAAe;YACflE,cAAc;YACd0M,gBAAgB,EAAEN;UACpB,CAAC,CAAC;QACJ;QACA;MACF;MAEAjI,cAAc,CAAC;QACbD,eAAe;QACflE,cAAc;QACd0M,gBAAgB,EAAEN;MACpB,CAAC,CAAC;IACJ,CACF,CAAC;IAED,OAAO,MAAM;MACXJ,kBAAkB,CAACJ,MAAM,CAAC,CAAC;MAC3BM,YAAY,CAACN,MAAM,CAAC,CAAC;IACvB,CAAC;EACH,CAAC,EAAE,CACD1H,eAAe,EACfC,cAAc,EACdnE,cAAc,EACduJ,oBAAoB,EACpB7I,OAAO,CACR,CAAC;EAEF,IAAII,SAAS,EAAE;IACb,oBACEnC,IAAA,CAAC7B,UAAU,CAACsJ,IAAI;MAACuG,IAAI;MAACC,MAAM;MAACC,UAAU,EAAE9P,OAAO,CAAC+P,KAAM;MAAA3G,QAAA,eACrDxH,IAAA,CAACzC,iBAAiB;QAAC6Q,KAAK,EAAEhQ,OAAO,CAACiQ,OAAO,CAACC,MAAO;QAACC,IAAI,EAAC;MAAO,CAAE;IAAC,CAClD,CAAC;EAEtB;EAEA,oBACEnO,KAAA,CAACjC,UAAU,CAACsJ,IAAI;IAACuG,IAAI;IAACE,UAAU,EAAE9P,OAAO,CAAC+P,KAAM;IAACtG,KAAK,EAAEc,MAAM,CAAC6F,SAAU;IAAAhH,QAAA,gBACvExH,IAAA,CAAChC,uBAAuB;MACtB0J,GAAG,EAAE3F,OAAQ;MACbiH,IAAI,EAAE5H,QAAS;MACfmF,UAAU,EAAEA;MACZ;MACA;MACA;MAAA;MACAkI,iBAAiB,EAAE,EAAG;MACtBxF,WAAW,EAAEA,WAAY;MACzBG,gBAAgB,EAAEA,gBAAiB;MACnCsF,YAAY,EAAGlI,IAAI,IAAKmI,MAAM,CAACnI,IAAI,CAACnD,WAAW,IAAImD,IAAI,CAAClD,WAAW,CAAE;MACrEsL,YAAY;MACZC,SAAS,EAAElF,aAAc;MACzBmF,eAAe;MACfC,YAAY,EAAE;QACZC,GAAG,EAAE;MACP,CAAE;MACFC,mBAAmB;MACnBC,8BAA8B,EAAEnG;MAChC;MACA;MACA;MAAA;MACAoG,YAAY,EAAE,GAAI;MAClBnN,MAAM,EAAEA,MAAO;MACfE,cAAc,EAAElB;MAChB;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MAAA;MACAoO,gCAAgC,EAAE;MAClC;MACA;MACA;MAAA;MACAC,oBAAoB,EAAC,OAAO;MAC5BC,mBAAmB,EAAE,EAAG;MACxBC,QAAQ,EAAEpF,YAAa;MACvBqF,iBAAiB,EAAEtF,qBAAsB;MACzCuF,MAAM,EAAErC,cAAe;MACvBrC,qBAAqB,EAAEA,qBAAsB;MAC7C2E,qBAAqB,EAAE;QAAEC,KAAK,EAAE;MAAE,CAAE;MACpCC,mBAAmB,eACjB5P,IAAA,CAACnB,qBAAqB;QAACsD,SAAS,EAAEX;MAAe,CAAE,CACpD;MACDqO,cAAc,EAAE/F;MAChB;MACA;MACA;MACA;MACA;MACA;MAAA;MACAgG,uBAAuB,EAAE,GAAI;MAC7BC,YAAY,EAAE/F,gBAAiB;MAC/BgG,qBAAqB,EAAE,GAAI;MAC3BC,kBAAkB;IAAA,CACnB,CAAC,eACFjQ,IAAA,CAACrC,QAAQ,CAAC8J,IAAI;MACZI,KAAK,EAAE,CAACc,MAAM,CAACuH,oBAAoB,EAAEhF,mBAAmB,CAAE;MAAA1D,QAAA,eAE1DpH,KAAA,CAACjC,UAAU,CAACgS,SAAS;QACnB/H,OAAO,EAAEwC,oBAAqB;QAC9BwF,aAAa,EAAE,GAAI;QACnBvI,KAAK,EAAEc,MAAM,CAAC0H,WAAY;QAC1BC,UAAU;QACVC,kBAAkB,EAAC,2BAA2B;QAC9CC,iBAAiB,EAAC,QAAQ;QAAAhJ,QAAA,gBAE1BxH,IAAA,CAACxB,MAAM,CAACiS,WAAW;UACjBC,IAAI,EAAC,cAAc;UACnBnC,IAAI,EAAE,EAAG;UACTH,KAAK,EAAEhQ,OAAO,CAACuS;QAAM,CACtB,CAAC,EACD3L,SAAS,iBAAIhF,IAAA,CAAC7B,UAAU,CAACsJ,IAAI;UAACI,KAAK,EAAEc,MAAM,CAACiI;QAAM,CAAE,CAAC;MAAA,CAClC;IAAC,CACV,CAAC;EAAA,CACD,CAAC;AAEtB,CACF,CAAC;AAEDzP,cAAc,CAAC0P,WAAW,GAAG,gBAAgB;AAE7C,MAAMlI,MAAM,GAAGlL,UAAU,CAACqT,MAAM,CAAC;EAC/BtC,SAAS,EAAE;IACTtN,QAAQ,EAAE;EACZ,CAAC;EACD8J,OAAO,EAAE;IACP+F,eAAe,EAAEnQ,wBAAwB;IACzCoQ,QAAQ,EAAE;EACZ,CAAC;EACDd,oBAAoB,EAAE;IACpBhP,QAAQ,EAAE,UAAU;IACpB+P,MAAM,EAAE,EAAE;IACVtB,KAAK,EAAE,EAAE;IACTuB,MAAM,EAAE;EACV,CAAC;EACDb,WAAW,EAAE;IACXnP,QAAQ,EAAE,UAAU;IACpBuB,KAAK,EAAE,EAAE;IACT6B,MAAM,EAAE,EAAE;IACV6M,YAAY,EAAE5S,YAAY,CAAC6S,KAAK;IAChCC,eAAe,EAAEjT,OAAO,CAAC+P,KAAK;IAC9BmD,cAAc,EAAE,QAAQ;IACxBC,UAAU,EAAE,QAAQ;IACpBC,WAAW,EAAEpT,OAAO,CAACuS,KAAK;IAC1Bc,YAAY,EAAE;MAAEhP,KAAK,EAAE,CAAC;MAAE6B,MAAM,EAAE;IAAE,CAAC;IACrCoN,aAAa,EAAE,IAAI;IACnBC,YAAY,EAAE,CAAC;IACfC,SAAS,EAAE;EACb,CAAC;EACDhJ,QAAQ,EAAE;IACRiJ,OAAO,EAAE,EAAE;IACXP,cAAc,EAAE,QAAQ;IACxBC,UAAU,EAAE;EACd,CAAC;EACDX,KAAK,EAAE;IACL1P,QAAQ,EAAE,UAAU;IACpB8N,GAAG,EAAE,CAAC,CAAC;IACPW,KAAK,EAAE,CAAC,CAAC;IACTlN,KAAK,EAAE,EAAE;IACT6B,MAAM,EAAE,EAAE;IACV6M,YAAY,EAAE,CAAC;IACfE,eAAe,EAAEjT,OAAO,CAAC0T,OAAO,CAACzD,OAAO,CAAC0D,IAAI;IAC7CC,WAAW,EAAE;EACf;AACF,CAAC,CAAC","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 = currentMessages.find(msg => msg.clientMsgID === startClientMsgId);
171
+ const targetMessage = newMessages.find(msg => msg.clientMsgID === startClientMsgId);
172
172
  if (!targetMessage || isMessageRevoked(targetMessage)) {
173
173
  DeviceEventEmitter.emit(ChatEvent.TargetMessageUnavailable);
174
174
  return;