@droppii-org/chat-mobile 0.2.50 → 0.2.51

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 (137) hide show
  1. package/lib/module/components/StickerPicker/StickerCategoryTabs.js +86 -0
  2. package/lib/module/components/StickerPicker/StickerCategoryTabs.js.map +1 -0
  3. package/lib/module/components/StickerPicker/StickerPickerPlaceholder.js +18 -0
  4. package/lib/module/components/StickerPicker/StickerPickerPlaceholder.js.map +1 -0
  5. package/lib/module/components/StickerPicker/StickerPickerRowItem.js +35 -0
  6. package/lib/module/components/StickerPicker/StickerPickerRowItem.js.map +1 -0
  7. package/lib/module/components/StickerPicker/StickerSectionList.js +110 -0
  8. package/lib/module/components/StickerPicker/StickerSectionList.js.map +1 -0
  9. package/lib/module/components/StickerPicker/constants.js +14 -0
  10. package/lib/module/components/StickerPicker/constants.js.map +1 -0
  11. package/lib/module/components/StickerPicker/index.js +134 -0
  12. package/lib/module/components/StickerPicker/index.js.map +1 -0
  13. package/lib/module/components/messages/stickerMessage/index.js +28 -0
  14. package/lib/module/components/messages/stickerMessage/index.js.map +1 -0
  15. package/lib/module/config/api-endpoints.js +4 -1
  16. package/lib/module/config/api-endpoints.js.map +1 -1
  17. package/lib/module/hooks/conversation/useGetConversationDetail.js +15 -0
  18. package/lib/module/hooks/conversation/useGetConversationDetail.js.map +1 -1
  19. package/lib/module/hooks/flows/useGetConversationFlowMainMenu.js +1 -1
  20. package/lib/module/hooks/flows/useGetConversationFlowMainMenu.js.map +1 -1
  21. package/lib/module/hooks/message/useSendMessage.js +45 -18
  22. package/lib/module/hooks/message/useSendMessage.js.map +1 -1
  23. package/lib/module/hooks/query-keys.js +7 -0
  24. package/lib/module/hooks/query-keys.js.map +1 -1
  25. package/lib/module/hooks/stickers/useFetchStickerByCategory.js +12 -0
  26. package/lib/module/hooks/stickers/useFetchStickerByCategory.js.map +1 -0
  27. package/lib/module/hooks/stickers/useStickerCategories.js +14 -0
  28. package/lib/module/hooks/stickers/useStickerCategories.js.map +1 -0
  29. package/lib/module/hooks/stickers/useStickerHistory.js +16 -0
  30. package/lib/module/hooks/stickers/useStickerHistory.js.map +1 -0
  31. package/lib/module/hooks/useChatCompose.js +1 -18
  32. package/lib/module/hooks/useChatCompose.js.map +1 -1
  33. package/lib/module/screens/chat-detail/ChatComposer.js +64 -16
  34. package/lib/module/screens/chat-detail/ChatComposer.js.map +1 -1
  35. package/lib/module/screens/chat-detail/ChatDetail.js +6 -20
  36. package/lib/module/screens/chat-detail/ChatDetail.js.map +1 -1
  37. package/lib/module/screens/chat-detail/hooks/useChatComposerAnimation.js +15 -4
  38. package/lib/module/screens/chat-detail/hooks/useChatComposerAnimation.js.map +1 -1
  39. package/lib/module/screens/chat-detail/hooks/useChatComposerState.js +3 -0
  40. package/lib/module/screens/chat-detail/hooks/useChatComposerState.js.map +1 -1
  41. package/lib/module/screens/chat-detail/legend/LegendChatMessage.js +5 -6
  42. package/lib/module/screens/chat-detail/legend/LegendChatMessage.js.map +1 -1
  43. package/lib/module/services/attachmentOrchestrator.js +1 -1
  44. package/lib/module/services/attachmentOrchestrator.js.map +1 -1
  45. package/lib/module/services/endpoints.js +4 -1
  46. package/lib/module/services/endpoints.js.map +1 -1
  47. package/lib/module/store/conversation.js +1 -20
  48. package/lib/module/store/conversation.js.map +1 -1
  49. package/lib/module/translation/resources/i18n.js +3 -1
  50. package/lib/module/translation/resources/i18n.js.map +1 -1
  51. package/lib/module/types/chat.js +6 -0
  52. package/lib/module/types/chat.js.map +1 -1
  53. package/lib/module/types/sticker.js +2 -0
  54. package/lib/module/types/sticker.js.map +1 -0
  55. package/lib/module/utils/conversation.js +1 -24
  56. package/lib/module/utils/conversation.js.map +1 -1
  57. package/lib/module/utils/messageUtils.js +2 -0
  58. package/lib/module/utils/messageUtils.js.map +1 -1
  59. package/lib/typescript/src/components/StickerPicker/StickerCategoryTabs.d.ts +9 -0
  60. package/lib/typescript/src/components/StickerPicker/StickerCategoryTabs.d.ts.map +1 -0
  61. package/lib/typescript/src/components/StickerPicker/StickerPickerPlaceholder.d.ts +2 -0
  62. package/lib/typescript/src/components/StickerPicker/StickerPickerPlaceholder.d.ts.map +1 -0
  63. package/lib/typescript/src/components/StickerPicker/StickerPickerRowItem.d.ts +8 -0
  64. package/lib/typescript/src/components/StickerPicker/StickerPickerRowItem.d.ts.map +1 -0
  65. package/lib/typescript/src/components/StickerPicker/StickerSectionList.d.ts +15 -0
  66. package/lib/typescript/src/components/StickerPicker/StickerSectionList.d.ts.map +1 -0
  67. package/lib/typescript/src/components/StickerPicker/constants.d.ts +11 -0
  68. package/lib/typescript/src/components/StickerPicker/constants.d.ts.map +1 -0
  69. package/lib/typescript/src/components/StickerPicker/index.d.ts +7 -0
  70. package/lib/typescript/src/components/StickerPicker/index.d.ts.map +1 -0
  71. package/lib/typescript/src/components/messages/stickerMessage/index.d.ts +3 -0
  72. package/lib/typescript/src/components/messages/stickerMessage/index.d.ts.map +1 -0
  73. package/lib/typescript/src/config/api-endpoints.d.ts +3 -0
  74. package/lib/typescript/src/config/api-endpoints.d.ts.map +1 -1
  75. package/lib/typescript/src/hooks/conversation/useGetConversationDetail.d.ts +2 -1
  76. package/lib/typescript/src/hooks/conversation/useGetConversationDetail.d.ts.map +1 -1
  77. package/lib/typescript/src/hooks/message/useSendMessage.d.ts +5 -3
  78. package/lib/typescript/src/hooks/message/useSendMessage.d.ts.map +1 -1
  79. package/lib/typescript/src/hooks/query-keys.d.ts +7 -0
  80. package/lib/typescript/src/hooks/query-keys.d.ts.map +1 -1
  81. package/lib/typescript/src/hooks/stickers/useFetchStickerByCategory.d.ts +3 -0
  82. package/lib/typescript/src/hooks/stickers/useFetchStickerByCategory.d.ts.map +1 -0
  83. package/lib/typescript/src/hooks/stickers/useStickerCategories.d.ts +3 -0
  84. package/lib/typescript/src/hooks/stickers/useStickerCategories.d.ts.map +1 -0
  85. package/lib/typescript/src/hooks/stickers/useStickerHistory.d.ts +3 -0
  86. package/lib/typescript/src/hooks/stickers/useStickerHistory.d.ts.map +1 -0
  87. package/lib/typescript/src/hooks/useChatCompose.d.ts.map +1 -1
  88. package/lib/typescript/src/screens/chat-detail/ChatComposer.d.ts +2 -2
  89. package/lib/typescript/src/screens/chat-detail/ChatComposer.d.ts.map +1 -1
  90. package/lib/typescript/src/screens/chat-detail/ChatDetail.d.ts.map +1 -1
  91. package/lib/typescript/src/screens/chat-detail/hooks/useChatComposerAnimation.d.ts +2 -1
  92. package/lib/typescript/src/screens/chat-detail/hooks/useChatComposerAnimation.d.ts.map +1 -1
  93. package/lib/typescript/src/screens/chat-detail/hooks/useChatComposerState.d.ts +3 -0
  94. package/lib/typescript/src/screens/chat-detail/hooks/useChatComposerState.d.ts.map +1 -1
  95. package/lib/typescript/src/screens/chat-detail/legend/LegendChatMessage.d.ts.map +1 -1
  96. package/lib/typescript/src/services/endpoints.d.ts +4 -1
  97. package/lib/typescript/src/services/endpoints.d.ts.map +1 -1
  98. package/lib/typescript/src/store/conversation.d.ts +0 -3
  99. package/lib/typescript/src/store/conversation.d.ts.map +1 -1
  100. package/lib/typescript/src/translation/resources/i18n.d.ts.map +1 -1
  101. package/lib/typescript/src/types/chat.d.ts +12 -19
  102. package/lib/typescript/src/types/chat.d.ts.map +1 -1
  103. package/lib/typescript/src/types/sticker.d.ts +21 -0
  104. package/lib/typescript/src/types/sticker.d.ts.map +1 -0
  105. package/lib/typescript/src/utils/conversation.d.ts +1 -2
  106. package/lib/typescript/src/utils/conversation.d.ts.map +1 -1
  107. package/lib/typescript/src/utils/messageUtils.d.ts.map +1 -1
  108. package/package.json +2 -2
  109. package/src/components/StickerPicker/StickerCategoryTabs.tsx +103 -0
  110. package/src/components/StickerPicker/StickerPickerPlaceholder.tsx +16 -0
  111. package/src/components/StickerPicker/StickerPickerRowItem.tsx +43 -0
  112. package/src/components/StickerPicker/StickerSectionList.tsx +141 -0
  113. package/src/components/StickerPicker/constants.ts +20 -0
  114. package/src/components/StickerPicker/index.tsx +166 -0
  115. package/src/components/messages/stickerMessage/index.tsx +26 -0
  116. package/src/config/api-endpoints.ts +6 -0
  117. package/src/hooks/conversation/useGetConversationDetail.ts +20 -1
  118. package/src/hooks/flows/useGetConversationFlowMainMenu.ts +1 -1
  119. package/src/hooks/message/useSendMessage.ts +49 -27
  120. package/src/hooks/query-keys.ts +10 -0
  121. package/src/hooks/stickers/useFetchStickerByCategory.ts +15 -0
  122. package/src/hooks/stickers/useStickerCategories.ts +17 -0
  123. package/src/hooks/stickers/useStickerHistory.ts +19 -0
  124. package/src/hooks/useChatCompose.ts +0 -19
  125. package/src/screens/chat-detail/ChatComposer.tsx +106 -19
  126. package/src/screens/chat-detail/ChatDetail.tsx +5 -19
  127. package/src/screens/chat-detail/hooks/useChatComposerAnimation.ts +21 -5
  128. package/src/screens/chat-detail/hooks/useChatComposerState.ts +7 -0
  129. package/src/screens/chat-detail/legend/LegendChatMessage.tsx +4 -5
  130. package/src/services/attachmentOrchestrator.ts +1 -1
  131. package/src/services/endpoints.ts +6 -1
  132. package/src/store/conversation.ts +0 -24
  133. package/src/translation/resources/i18n.ts +3 -0
  134. package/src/types/chat.ts +13 -21
  135. package/src/types/sticker.ts +23 -0
  136. package/src/utils/conversation.ts +0 -28
  137. package/src/utils/messageUtils.ts +3 -0
@@ -8,39 +8,41 @@ import { extractUrls } from "../../utils/url.js";
8
8
  import OpenIMSDK from '@droppii/openim-rn-client-sdk';
9
9
  import { CustomMessageType } from "../../types/chat.js";
10
10
  import { useChatContext, useChatDetailContext } from "../../context/index.js";
11
- import { generateContentBasedOnMessageType, getBotId } from "../../utils/conversation.js";
11
+ import { getBotId } from "../../utils/conversation.js";
12
12
  import { markMessageRevoked, useMessageStore } from "../../store/message.js";
13
13
  import uuid from 'react-native-uuid';
14
14
  import { DeviceEventEmitter } from 'react-native';
15
15
  import { ChatEvent } from "../../types/events.js";
16
- const buildSendParams = (message, recvID, groupID, extendMessageInfo, plainText) => ({
16
+ import { useQueryClient } from '@tanstack/react-query';
17
+ import { stickerQueryKeys } from "../query-keys.js";
18
+ import { getMessagePreview } from "../../utils/messageUtils.js";
19
+ const buildSendParams = (message, recvID, groupID, extendMessageInfo) => ({
17
20
  groupID,
18
21
  recvID,
19
22
  message: {
20
23
  ...message,
21
24
  ex: JSON.stringify(extendMessageInfo) || '{}'
22
25
  },
23
- offlinePushInfo: generateOfflinePushInfo(message.contentType, plainText)
26
+ offlinePushInfo: generateOfflinePushInfo(message)
24
27
  });
25
28
  export const useSendMessage = () => {
26
29
  const applicationType = useChatContext().applicationType;
27
30
  const pushNewMessage = useMessageStore(state => state.pushNewMessage);
28
31
  const updateOneMessage = useMessageStore(state => state.updateOneMessage);
29
- const deleteOneMessage = useMessageStore(state => state.deleteOneMessage);
30
32
  const {
31
33
  quotedMessage,
32
34
  setQuotedMessage
33
35
  } = useChatDetailContext();
34
- const dispatchSend = useCallback(async (message, recvID, groupID, extendMessageInfo, plainText) => {
36
+ const queryClient = useQueryClient();
37
+ const dispatchSend = useCallback(async (message, recvID, groupID, extendMessageInfo) => {
35
38
  pushNewMessage({
36
39
  ...message,
37
40
  status: MessageStatus.Sending
38
41
  });
39
42
  try {
40
- const sendParams = buildSendParams(message, recvID, groupID, extendMessageInfo, plainText);
43
+ const sendParams = buildSendParams(message, recvID, groupID, extendMessageInfo);
41
44
  // console.log('[useSendMessage] dispatchSend params', sendParams);
42
45
  const sent = await OpenIMSDK.sendMessage(sendParams);
43
- deleteOneMessage(message.clientMsgID);
44
46
  pushNewMessage(sent);
45
47
  } catch {
46
48
  updateOneMessage({
@@ -50,12 +52,13 @@ export const useSendMessage = () => {
50
52
  }
51
53
  await new Promise(resolve => setTimeout(resolve, 300));
52
54
  DeviceEventEmitter.emit(ChatEvent.ScrollToBottom);
53
- }, [pushNewMessage, updateOneMessage, deleteOneMessage]);
55
+ }, [pushNewMessage, updateOneMessage]);
54
56
  const sendMessage = useCallback(async ({
55
57
  plainText,
56
58
  urlMetadata,
57
59
  flow,
58
- customMessage
60
+ customMessage,
61
+ sticker
59
62
  }) => {
60
63
  const currentConversation = useConversationStore.getState().getCurrentConversation();
61
64
  const targetUserId = useConversationStore.getState().currentUserId;
@@ -98,15 +101,28 @@ export const useSendMessage = () => {
98
101
  if (!message) return;
99
102
  messageList.push(message);
100
103
  }
104
+
105
+ //sticker msg
106
+ if (!!sticker && !!sticker?.file?.fullUrl) {
107
+ let stickerMessage = await createStickerMessage(sticker?.file?.fullUrl);
108
+ if (!stickerMessage) return;
109
+ messageList.push(stickerMessage);
110
+ }
101
111
  for (const message of messageList) {
102
112
  const extendMessageInfo = {
103
113
  applicationType,
104
114
  urlMetadata,
105
- flow
115
+ flow,
116
+ stickerId: sticker?.id
106
117
  };
107
- await dispatchSend(message, recvID || '', groupID || '', extendMessageInfo, plainText || '');
118
+ await dispatchSend(message, recvID || '', groupID || '', extendMessageInfo);
119
+ }
120
+ if (!!sticker && !!sticker?.id) {
121
+ queryClient.invalidateQueries({
122
+ queryKey: stickerQueryKeys.recent()
123
+ });
108
124
  }
109
- }, [applicationType, dispatchSend, quotedMessage, setQuotedMessage]);
125
+ }, [applicationType, dispatchSend, quotedMessage, setQuotedMessage, queryClient]);
110
126
  const retryMessage = useCallback(async message => {
111
127
  const {
112
128
  userID: recvID,
@@ -125,11 +141,10 @@ export const useSendMessage = () => {
125
141
  recvID: recvID || '',
126
142
  groupID: groupID || '',
127
143
  message,
128
- offlinePushInfo: generateOfflinePushInfo(message.contentType, '')
144
+ offlinePushInfo: generateOfflinePushInfo(message)
129
145
  };
130
146
  try {
131
- const sent = isAttachment ? await OpenIMSDK.sendMessageNotOss(params) : await OpenIMSDK.sendMessage(buildSendParams(message, recvID || '', groupID || '', JSON.parse(message.ex || '{}'), ''));
132
- deleteOneMessage(message.clientMsgID);
147
+ const sent = isAttachment ? await OpenIMSDK.sendMessageNotOss(params) : await OpenIMSDK.sendMessage(buildSendParams(message, recvID || '', groupID || '', JSON.parse(message.ex || '{}')));
133
148
  pushNewMessage(sent);
134
149
  } catch {
135
150
  updateOneMessage({
@@ -139,7 +154,7 @@ export const useSendMessage = () => {
139
154
  }
140
155
  await new Promise(resolve => setTimeout(resolve, 300));
141
156
  DeviceEventEmitter.emit(ChatEvent.ScrollToBottom);
142
- }, [pushNewMessage, updateOneMessage, deleteOneMessage]);
157
+ }, [pushNewMessage, updateOneMessage]);
143
158
  const revokeMessage = useCallback(async message => {
144
159
  const conversationID = useConversationStore.getState().getCurrentConversation()?.conversationID;
145
160
  if (!conversationID) throw new Error('No active conversation');
@@ -155,11 +170,11 @@ export const useSendMessage = () => {
155
170
  revokeMessage
156
171
  };
157
172
  };
158
- export const generateOfflinePushInfo = (contentType, plainText) => {
173
+ export const generateOfflinePushInfo = message => {
159
174
  const conversationData = useConversationStore?.getState?.()?.getCurrentConversation();
160
175
  const operatorUserID = useUserStore.getState().user?.userID || '';
161
176
  const title = conversationData?.showName || 'Droppii';
162
- const desc = generateContentBasedOnMessageType(contentType, plainText);
177
+ const desc = getMessagePreview(message);
163
178
  return {
164
179
  title,
165
180
  desc,
@@ -224,4 +239,16 @@ export const createQuotedMessage = async params => {
224
239
  });
225
240
  return quotedMessage;
226
241
  };
242
+ export const createStickerMessage = async sticker => {
243
+ let stickerMessage = await OpenIMSDK.createStickerMessage(sticker, uuid.v4()).then(data => {
244
+ return data;
245
+ }).catch(({
246
+ errCode,
247
+ errMsg
248
+ }) => {
249
+ console.error('createStickerMessage', errCode, errMsg);
250
+ return null;
251
+ });
252
+ return stickerMessage;
253
+ };
227
254
  //# sourceMappingURL=useSendMessage.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useConversationStore","useUserStore","MessageStatus","MessageType","extractUrls","OpenIMSDK","CustomMessageType","useChatContext","useChatDetailContext","generateContentBasedOnMessageType","getBotId","markMessageRevoked","useMessageStore","uuid","DeviceEventEmitter","ChatEvent","buildSendParams","message","recvID","groupID","extendMessageInfo","plainText","ex","JSON","stringify","offlinePushInfo","generateOfflinePushInfo","contentType","useSendMessage","applicationType","pushNewMessage","state","updateOneMessage","deleteOneMessage","quotedMessage","setQuotedMessage","dispatchSend","status","Sending","sendParams","sent","sendMessage","clientMsgID","Failed","Promise","resolve","setTimeout","emit","ScrollToBottom","urlMetadata","flow","customMessage","currentConversation","getState","getCurrentConversation","targetUserId","currentUserId","targetGroupId","currentGroupId","userID","messageList","hasText","trim","hasPreview","url","urls","isUrlMessage","length","createQuotedMessage","text","undefined","createUrlTextMessage","createTextMessage","push","customElem","data","extension","type","description","Order","orderCode","createCustomMessage","retryMessage","isAttachment","PictureMessage","VideoMessage","FileMessage","MergeMessage","includes","params","sendMessageNotOss","parse","revokeMessage","conversationID","Error","conversationData","operatorUserID","user","title","showName","desc","icon","faceURL","conversationId","userId","groupId","botId","iOSPushSound","iOSBadgeCount","textMessage","v4","then","catch","errCode","errMsg","console","error","urlTextMessage","createQuoteMessage"],"sourceRoot":"../../../../src","sources":["hooks/message/useSendMessage.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useConversationStore","useUserStore","MessageStatus","MessageType","extractUrls","OpenIMSDK","CustomMessageType","useChatContext","useChatDetailContext","getBotId","markMessageRevoked","useMessageStore","uuid","DeviceEventEmitter","ChatEvent","useQueryClient","stickerQueryKeys","getMessagePreview","buildSendParams","message","recvID","groupID","extendMessageInfo","ex","JSON","stringify","offlinePushInfo","generateOfflinePushInfo","useSendMessage","applicationType","pushNewMessage","state","updateOneMessage","quotedMessage","setQuotedMessage","queryClient","dispatchSend","status","Sending","sendParams","sent","sendMessage","Failed","Promise","resolve","setTimeout","emit","ScrollToBottom","plainText","urlMetadata","flow","customMessage","sticker","currentConversation","getState","getCurrentConversation","targetUserId","currentUserId","targetGroupId","currentGroupId","userID","messageList","hasText","trim","hasPreview","url","urls","isUrlMessage","length","createQuotedMessage","text","undefined","createUrlTextMessage","createTextMessage","push","customElem","data","extension","type","description","Order","orderCode","createCustomMessage","file","fullUrl","stickerMessage","createStickerMessage","stickerId","id","invalidateQueries","queryKey","recent","retryMessage","isAttachment","PictureMessage","VideoMessage","FileMessage","MergeMessage","includes","contentType","params","sendMessageNotOss","parse","revokeMessage","conversationID","Error","clientMsgID","conversationData","operatorUserID","user","title","showName","desc","icon","faceURL","conversationId","userId","groupId","botId","iOSPushSound","iOSBadgeCount","textMessage","v4","then","catch","errCode","errMsg","console","error","urlTextMessage","createQuoteMessage"],"sourceRoot":"../../../../src","sources":["hooks/message/useSendMessage.ts"],"mappings":"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","ignoreList":[]}
@@ -11,6 +11,7 @@ export const conversationQueryKeys = {
11
11
  details: () => [...conversationQueryKeys.all, 'detail'],
12
12
  detail: conversationId => [...conversationQueryKeys.details(), conversationId],
13
13
  getStatusBot: botId => ['getStatusBot', botId],
14
+ conversationTarget: conversationId => ['conversationTarget', conversationId],
14
15
  flow: conversationId => ['conversationFlow', conversationId],
15
16
  flowMainMenu: conversationId => ['conversationFlowMainMenu', conversationId],
16
17
  resetFlow: conversationId => ['resetConversationFlow', conversationId],
@@ -24,4 +25,10 @@ export const usersQueryKeys = {
24
25
  all: ['users'],
25
26
  list: userIds => [...usersQueryKeys.all, ...userIds]
26
27
  };
28
+ export const stickerQueryKeys = {
29
+ all: ['stickers'],
30
+ categories: () => [...stickerQueryKeys.all, 'categories'],
31
+ byCategory: categoryId => [...stickerQueryKeys.all, 'category', categoryId],
32
+ recent: () => [...stickerQueryKeys.all, 'recent']
33
+ };
27
34
  //# sourceMappingURL=query-keys.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["commonQueryKeys","all","urlMetadata","url","conversationQueryKeys","lists","list","applicationType","details","detail","conversationId","getStatusBot","botId","flow","flowMainMenu","resetFlow","runFlow","detailByBotId","detailBySourceId","sourceId","joinedGroup","groupId","create","userId","usersQueryKeys","userIds"],"sourceRoot":"../../../src","sources":["hooks/query-keys.ts"],"mappings":";;AAAA,OAAO,MAAMA,eAAe,GAAG;EAC7BC,GAAG,EAAE,CAAC,QAAQ,CAAU;EACxBC,WAAW,EAAGC,GAAW,IAAK,CAAC,MAAM,EAAEA,GAAG;AAC5C,CAAC;AAED,OAAO,MAAMC,qBAAqB,GAAG;EACnCH,GAAG,EAAE,CAAC,eAAe,CAAU;EAC/BI,KAAK,EAAEA,CAAA,KAAM,CAAC,GAAGD,qBAAqB,CAACH,GAAG,EAAE,MAAM,CAAU;EAC5DK,IAAI,EAAGC,eAAuB,IAC5B,CAAC,GAAGH,qBAAqB,CAACC,KAAK,CAAC,CAAC,EAAEE,eAAe,CAAU;EAC9DC,OAAO,EAAEA,CAAA,KAAM,CAAC,GAAGJ,qBAAqB,CAACH,GAAG,EAAE,QAAQ,CAAU;EAChEQ,MAAM,EAAGC,cAAsB,IAC7B,CAAC,GAAGN,qBAAqB,CAACI,OAAO,CAAC,CAAC,EAAEE,cAAc,CAAU;EAC/DC,YAAY,EAAGC,KAAa,IAAK,CAAC,cAAc,EAAEA,KAAK,CAAU;EACjEC,IAAI,EAAGH,cAAsB,IAAK,CAAC,kBAAkB,EAAEA,cAAc,CAAC;EACtEI,YAAY,EAAGJ,cAAsB,IAAK,CACxC,0BAA0B,EAC1BA,cAAc,CACf;EACDK,SAAS,EAAGL,cAAsB,IAAK,CACrC,uBAAuB,EACvBA,cAAc,CACf;EACDM,OAAO,EAAGN,cAAsB,IAAK,CAAC,qBAAqB,EAAEA,cAAc,CAAC;EAC5EO,aAAa,EAAGL,KAAa,IAAK,CAAC,qBAAqB,EAAEA,KAAK,CAAC;EAChEM,gBAAgB,EAAGC,QAAgB,IAAK,CAAC,kBAAkB,EAAEA,QAAQ,CAAC;EACtEC,WAAW,EAAGC,OAAgB,IAAK,CAAC,GAAGjB,qBAAqB,CAACH,GAAG,EAAEoB,OAAO,CAAC;EAC1EC,MAAM,EAAGC,MAAe,IAAK,CAAC,QAAQ,EAAEA,MAAM;AAChD,CAAC;AAED,OAAO,MAAMC,cAAc,GAAG;EAC5BvB,GAAG,EAAE,CAAC,OAAO,CAAU;EACvBK,IAAI,EAAGmB,OAAiB,IAAK,CAAC,GAAGD,cAAc,CAACvB,GAAG,EAAE,GAAGwB,OAAO;AACjE,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["commonQueryKeys","all","urlMetadata","url","conversationQueryKeys","lists","list","applicationType","details","detail","conversationId","getStatusBot","botId","conversationTarget","flow","flowMainMenu","resetFlow","runFlow","detailByBotId","detailBySourceId","sourceId","joinedGroup","groupId","create","userId","usersQueryKeys","userIds","stickerQueryKeys","categories","byCategory","categoryId","recent"],"sourceRoot":"../../../src","sources":["hooks/query-keys.ts"],"mappings":";;AAAA,OAAO,MAAMA,eAAe,GAAG;EAC7BC,GAAG,EAAE,CAAC,QAAQ,CAAU;EACxBC,WAAW,EAAGC,GAAW,IAAK,CAAC,MAAM,EAAEA,GAAG;AAC5C,CAAC;AAED,OAAO,MAAMC,qBAAqB,GAAG;EACnCH,GAAG,EAAE,CAAC,eAAe,CAAU;EAC/BI,KAAK,EAAEA,CAAA,KAAM,CAAC,GAAGD,qBAAqB,CAACH,GAAG,EAAE,MAAM,CAAU;EAC5DK,IAAI,EAAGC,eAAuB,IAC5B,CAAC,GAAGH,qBAAqB,CAACC,KAAK,CAAC,CAAC,EAAEE,eAAe,CAAU;EAC9DC,OAAO,EAAEA,CAAA,KAAM,CAAC,GAAGJ,qBAAqB,CAACH,GAAG,EAAE,QAAQ,CAAU;EAChEQ,MAAM,EAAGC,cAAsB,IAC7B,CAAC,GAAGN,qBAAqB,CAACI,OAAO,CAAC,CAAC,EAAEE,cAAc,CAAU;EAC/DC,YAAY,EAAGC,KAAa,IAAK,CAAC,cAAc,EAAEA,KAAK,CAAU;EACjEC,kBAAkB,EAAGH,cAAsB,IACzC,CAAC,oBAAoB,EAAEA,cAAc,CAAU;EACjDI,IAAI,EAAGJ,cAAsB,IAAK,CAAC,kBAAkB,EAAEA,cAAc,CAAC;EACtEK,YAAY,EAAGL,cAAsB,IAAK,CACxC,0BAA0B,EAC1BA,cAAc,CACf;EACDM,SAAS,EAAGN,cAAsB,IAAK,CACrC,uBAAuB,EACvBA,cAAc,CACf;EACDO,OAAO,EAAGP,cAAsB,IAAK,CAAC,qBAAqB,EAAEA,cAAc,CAAC;EAC5EQ,aAAa,EAAGN,KAAa,IAAK,CAAC,qBAAqB,EAAEA,KAAK,CAAC;EAChEO,gBAAgB,EAAGC,QAAgB,IAAK,CAAC,kBAAkB,EAAEA,QAAQ,CAAC;EACtEC,WAAW,EAAGC,OAAgB,IAAK,CAAC,GAAGlB,qBAAqB,CAACH,GAAG,EAAEqB,OAAO,CAAC;EAC1EC,MAAM,EAAGC,MAAe,IAAK,CAAC,QAAQ,EAAEA,MAAM;AAChD,CAAC;AAED,OAAO,MAAMC,cAAc,GAAG;EAC5BxB,GAAG,EAAE,CAAC,OAAO,CAAU;EACvBK,IAAI,EAAGoB,OAAiB,IAAK,CAAC,GAAGD,cAAc,CAACxB,GAAG,EAAE,GAAGyB,OAAO;AACjE,CAAC;AAID,OAAO,MAAMC,gBAAgB,GAAG;EAC9B1B,GAAG,EAAE,CAAC,UAAU,CAAU;EAC1B2B,UAAU,EAAEA,CAAA,KAAM,CAAC,GAAGD,gBAAgB,CAAC1B,GAAG,EAAE,YAAY,CAAU;EAClE4B,UAAU,EAAGC,UAAkB,IAC7B,CAAC,GAAGH,gBAAgB,CAAC1B,GAAG,EAAE,UAAU,EAAE6B,UAAU,CAAU;EAC5DC,MAAM,EAAEA,CAAA,KAAM,CAAC,GAAGJ,gBAAgB,CAAC1B,GAAG,EAAE,QAAQ;AAClD,CAAC","ignoreList":[]}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+
3
+ import { useMutation } from '@tanstack/react-query';
4
+ import { apiInstance } from "../../services/apis.js";
5
+ import { ENDPOINTS } from "../../services/endpoints.js";
6
+ export const useFetchStickerByCategory = () => useMutation({
7
+ mutationFn: async categoryId => {
8
+ const res = await apiInstance?.get(ENDPOINTS.chatService.stickersByCategoryId(categoryId));
9
+ return res?.data?.data || [];
10
+ }
11
+ });
12
+ //# sourceMappingURL=useFetchStickerByCategory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useMutation","apiInstance","ENDPOINTS","useFetchStickerByCategory","mutationFn","categoryId","res","get","chatService","stickersByCategoryId","data"],"sourceRoot":"../../../../src","sources":["hooks/stickers/useFetchStickerByCategory.ts"],"mappings":";;AAAA,SAASA,WAAW,QAAQ,uBAAuB;AACnD,SAASC,WAAW,QAAQ,wBAAqB;AACjD,SAASC,SAAS,QAAQ,6BAA0B;AAIpD,OAAO,MAAMC,yBAAyB,GAAGA,CAAA,KACvCH,WAAW,CAAC;EACVI,UAAU,EAAE,MAAOC,UAAkB,IAAK;IACxC,MAAMC,GAAG,GAAG,MAAML,WAAW,EAAEM,GAAG,CAChCL,SAAS,CAACM,WAAW,CAACC,oBAAoB,CAACJ,UAAU,CACvD,CAAC;IACD,OAAOC,GAAG,EAAEI,IAAI,EAAEA,IAAI,IAAI,EAAE;EAC9B;AACF,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+
3
+ import { useQuery } from '@tanstack/react-query';
4
+ import { apiInstance } from "../../services/apis.js";
5
+ import { stickerQueryKeys } from "../query-keys.js";
6
+ import { ENDPOINTS } from "../../services/endpoints.js";
7
+ export const useStickerCategories = () => useQuery({
8
+ queryKey: stickerQueryKeys.categories(),
9
+ queryFn: async () => {
10
+ const res = await apiInstance?.get(ENDPOINTS.chatService.stickerCategories());
11
+ return res?.data?.data || [];
12
+ }
13
+ });
14
+ //# sourceMappingURL=useStickerCategories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useQuery","apiInstance","stickerQueryKeys","ENDPOINTS","useStickerCategories","queryKey","categories","queryFn","res","get","chatService","stickerCategories","data"],"sourceRoot":"../../../../src","sources":["hooks/stickers/useStickerCategories.ts"],"mappings":";;AAAA,SAASA,QAAQ,QAAQ,uBAAuB;AAChD,SAASC,WAAW,QAAQ,wBAAqB;AACjD,SAASC,gBAAgB,QAAQ,kBAAe;AAChD,SAASC,SAAS,QAAQ,6BAA0B;AAIpD,OAAO,MAAMC,oBAAoB,GAAGA,CAAA,KAClCJ,QAAQ,CAAC;EACPK,QAAQ,EAAEH,gBAAgB,CAACI,UAAU,CAAC,CAAC;EACvCC,OAAO,EAAE,MAAAA,CAAA,KAAY;IACnB,MAAMC,GAAG,GAAG,MAAMP,WAAW,EAAEQ,GAAG,CAChCN,SAAS,CAACO,WAAW,CAACC,iBAAiB,CAAC,CAC1C,CAAC;IACD,OAAOH,GAAG,EAAEI,IAAI,EAAEA,IAAI,IAAI,EAAE;EAC9B;AACF,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+
3
+ import { useQuery } from '@tanstack/react-query';
4
+ import { apiInstance } from "../../services/apis.js";
5
+ import { stickerQueryKeys } from "../query-keys.js";
6
+ import { ENDPOINTS } from "../../services/endpoints.js";
7
+ export const useStickerHistory = () => useQuery({
8
+ queryKey: stickerQueryKeys.recent(),
9
+ queryFn: async () => {
10
+ const res = await apiInstance?.get(ENDPOINTS.chatService.stickerHistory());
11
+ return res?.data?.data || [];
12
+ },
13
+ staleTime: 0,
14
+ gcTime: 0
15
+ });
16
+ //# sourceMappingURL=useStickerHistory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useQuery","apiInstance","stickerQueryKeys","ENDPOINTS","useStickerHistory","queryKey","recent","queryFn","res","get","chatService","stickerHistory","data","staleTime","gcTime"],"sourceRoot":"../../../../src","sources":["hooks/stickers/useStickerHistory.ts"],"mappings":";;AAAA,SAASA,QAAQ,QAAQ,uBAAuB;AAChD,SAASC,WAAW,QAAQ,wBAAqB;AACjD,SAASC,gBAAgB,QAAQ,kBAAe;AAChD,SAASC,SAAS,QAAQ,6BAA0B;AAIpD,OAAO,MAAMC,iBAAiB,GAAGA,CAAA,KAC/BJ,QAAQ,CAAC;EACPK,QAAQ,EAAEH,gBAAgB,CAACI,MAAM,CAAC,CAAC;EACnCC,OAAO,EAAE,MAAAA,CAAA,KAAY;IACnB,MAAMC,GAAG,GAAG,MAAMP,WAAW,EAAEQ,GAAG,CAChCN,SAAS,CAACO,WAAW,CAACC,cAAc,CAAC,CACvC,CAAC;IACD,OAAOH,GAAG,EAAEI,IAAI,EAAEA,IAAI,IAAI,EAAE;EAC9B,CAAC;EACDC,SAAS,EAAE,CAAC;EACZC,MAAM,EAAE;AACV,CAAC,CAAC","ignoreList":[]}
@@ -9,9 +9,6 @@ import { useSendAttachment } from "./useSendAttachment.js";
9
9
  import { useSendMessage } from "./message/useSendMessage.js";
10
10
  import { isVideoFromPicker } from "../utils/imageUtils.js";
11
11
  import { generateAndUploadVideoThumbnails } from "../utils/videoThumbnailUpload.js";
12
- import { useConversationStore } from "../store/index.js";
13
- import { DChatCategory } from "../types/chat.js";
14
- import { useChatContext } from "../context/index.js";
15
12
  export function useChatCompose() {
16
13
  const [text, setText] = useState('');
17
14
  const imageAttachment = useImageAttachment();
@@ -23,9 +20,6 @@ export function useChatCompose() {
23
20
  const {
24
21
  sendMessage
25
22
  } = useSendMessage();
26
- const {
27
- applicationType
28
- } = useChatContext();
29
23
  const isUploading = useMemo(() => imageAttachment.selectedImages.some(img => img.isUploading) || fileAttachment.selectedFiles.some(f => f.isUploading || !!f.error), [imageAttachment.selectedImages, fileAttachment.selectedFiles]);
30
24
  const canSend = useMemo(() => (text.trim().length > 0 || imageAttachment.selectedImages.length > 0 || fileAttachment.selectedFiles.length > 0) && !isUploading, [text, imageAttachment.selectedImages, fileAttachment.selectedFiles, isUploading]);
31
25
  const send = useCallback(async () => {
@@ -38,17 +32,6 @@ export function useChatCompose() {
38
32
  clearAllFiles
39
33
  } = fileAttachment;
40
34
  const urlMeta = linkPreview.isVisible ? linkPreview.metadata : undefined;
41
- const currentConversationId = useConversationStore.getState().currentConversationId;
42
- const targetUserId = useConversationStore.getState().currentUserId;
43
- const isCreatingConversation = useConversationStore.getState().isCreatingConversation;
44
- if (targetUserId && !currentConversationId && !isCreatingConversation) {
45
- await useConversationStore.getState().createConversation({
46
- chatType: 'SINGLE',
47
- chatCategory: DChatCategory.BIZ_BIZ,
48
- applicationType,
49
- peerUserId: targetUserId
50
- });
51
- }
52
35
 
53
36
  // --- Attachments ---
54
37
  if (selectedImages.length > 0 || selectedFiles.length > 0) {
@@ -135,7 +118,7 @@ export function useChatCompose() {
135
118
  urlMetadata: urlMeta
136
119
  });
137
120
  }
138
- }, [imageAttachment, fileAttachment, linkPreview.isVisible, linkPreview.metadata, sendAttachments, sendMessage, text, applicationType]);
121
+ }, [imageAttachment, fileAttachment, linkPreview.isVisible, linkPreview.metadata, sendAttachments, sendMessage, text]);
139
122
  return {
140
123
  // Text
141
124
  text,
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useMemo","useState","ImagePicker","useImageAttachment","useFileAttachment","useLinkPreview","useSendAttachment","useSendMessage","isVideoFromPicker","generateAndUploadVideoThumbnails","useConversationStore","DChatCategory","useChatContext","useChatCompose","text","setText","imageAttachment","fileAttachment","linkPreview","send","sendAttachments","sendMessage","applicationType","isUploading","selectedImages","some","img","selectedFiles","f","error","canSend","trim","length","clearAllImages","clearAllFiles","urlMeta","isVisible","metadata","undefined","currentConversationId","getState","targetUserId","currentUserId","isCreatingConversation","createConversation","chatType","chatCategory","BIZ_BIZ","peerUserId","actualImages","filter","image","videos","uploadedImages","uploadedUrl","uploadedVideos","v","videosMissingThumbnail","thumbnailUrl","videoThumbnails","attachmentItems","map","type","vid","vidIdx","videoId","thumb","video","path","filename","size","width","height","duration","uploadProgress","url","thumbnailSize","clean","catch","uploadedFiles","file","uri","name","plainText","urlMetadata","isImagePreviewVisible","isFilePreviewVisible","addImages","handleImageAttach","addFiles","handleFileAttach","removeImage","handleImageRemove","removeFile","handleFileRemove","showLinkPreview","isMetadataLoading","isLoading","dismissPreview","dismiss","clearAll"],"sourceRoot":"../../../src","sources":["hooks/useChatCompose.ts"],"mappings":";;AAAA,SAASA,WAAW,EAAEC,OAAO,EAAEC,QAAQ,QAAQ,OAAO;AACtD,OAAOC,WAAW,MAAM,gCAAgC;AACxD,SACEC,kBAAkB,QAEb,yBAAsB;AAC7B,SAASC,iBAAiB,QAAQ,wBAAqB;AACvD,SAASC,cAAc,QAAQ,oCAAiC;AAChE,SAASC,iBAAiB,QAAQ,wBAAqB;AACvD,SAASC,cAAc,QAAQ,6BAA0B;AACzD,SAASC,iBAAiB,QAAQ,wBAAqB;AACvD,SACEC,gCAAgC,QAE3B,kCAA+B;AACtC,SAASC,oBAAoB,QAAQ,mBAAU;AAC/C,SAASC,aAAa,QAAQ,kBAAe;AAC7C,SAASC,cAAc,QAAQ,qBAAY;AAE3C,OAAO,SAASC,cAAcA,CAAA,EAAG;EAC/B,MAAM,CAACC,IAAI,EAAEC,OAAO,CAAC,GAAGd,QAAQ,CAAC,EAAE,CAAC;EAEpC,MAAMe,eAAe,GAAGb,kBAAkB,CAAC,CAAC;EAC5C,MAAMc,cAAc,GAAGb,iBAAiB,CAAC,CAAC;EAC1C,MAAMc,WAAW,GAAGb,cAAc,CAACS,IAAI,CAAC;EACxC,MAAM;IAAEK,IAAI,EAAEC;EAAgB,CAAC,GAAGd,iBAAiB,CAAC,CAAC;EACrD,MAAM;IAAEe;EAAY,CAAC,GAAGd,cAAc,CAAC,CAAC;EACxC,MAAM;IAAEe;EAAgB,CAAC,GAAGV,cAAc,CAAC,CAAC;EAE5C,MAAMW,WAAW,GAAGvB,OAAO,CACzB,MACEgB,eAAe,CAACQ,cAAc,CAACC,IAAI,CAChCC,GAA0B,IAAKA,GAAG,CAACH,WACtC,CAAC,IAAIN,cAAc,CAACU,aAAa,CAACF,IAAI,CAAEG,CAAC,IAAKA,CAAC,CAACL,WAAW,IAAI,CAAC,CAACK,CAAC,CAACC,KAAK,CAAC,EAC3E,CAACb,eAAe,CAACQ,cAAc,EAAEP,cAAc,CAACU,aAAa,CAC/D,CAAC;EAED,MAAMG,OAAO,GAAG9B,OAAO,CACrB,MACE,CAACc,IAAI,CAACiB,IAAI,CAAC,CAAC,CAACC,MAAM,GAAG,CAAC,IACrBhB,eAAe,CAACQ,cAAc,CAACQ,MAAM,GAAG,CAAC,IACzCf,cAAc,CAACU,aAAa,CAACK,MAAM,GAAG,CAAC,KACzC,CAACT,WAAW,EACd,CACET,IAAI,EACJE,eAAe,CAACQ,cAAc,EAC9BP,cAAc,CAACU,aAAa,EAC5BJ,WAAW,CAEf,CAAC;EAED,MAAMJ,IAAI,GAAGpB,WAAW,CAAC,YAAY;IACnC,MAAM;MAAEyB,cAAc;MAAES;IAAe,CAAC,GAAGjB,eAAe;IAC1D,MAAM;MAAEW,aAAa;MAAEO;IAAc,CAAC,GAAGjB,cAAc;IACvD,MAAMkB,OAAO,GAAGjB,WAAW,CAACkB,SAAS,GAAGlB,WAAW,CAACmB,QAAQ,GAAGC,SAAS;IACxE,MAAMC,qBAAqB,GACzB7B,oBAAoB,CAAC8B,QAAQ,CAAC,CAAC,CAACD,qBAAqB;IACvD,MAAME,YAAY,GAAG/B,oBAAoB,CAAC8B,QAAQ,CAAC,CAAC,CAACE,aAAa;IAClE,MAAMC,sBAAsB,GAC1BjC,oBAAoB,CAAC8B,QAAQ,CAAC,CAAC,CAACG,sBAAsB;IAExD,IAAIF,YAAY,IAAI,CAACF,qBAAqB,IAAI,CAACI,sBAAsB,EAAE;MACrE,MAAMjC,oBAAoB,CAAC8B,QAAQ,CAAC,CAAC,CAACI,kBAAkB,CAAC;QACvDC,QAAQ,EAAE,QAAQ;QAClBC,YAAY,EAAEnC,aAAa,CAACoC,OAAO;QACnCzB,eAAe;QACf0B,UAAU,EAAEP;MACd,CAAC,CAAC;IACJ;;IAEA;IACA,IAAIjB,cAAc,CAACQ,MAAM,GAAG,CAAC,IAAIL,aAAa,CAACK,MAAM,GAAG,CAAC,EAAE;MACzD,MAAMiB,YAAY,GAAGzB,cAAc,CAAC0B,MAAM,CACvCxB,GAA0B,IAAK,CAAClB,iBAAiB,CAACkB,GAAG,CAACyB,KAAK,CAC9D,CAAC;MACD,MAAMC,MAAM,GAAG5B,cAAc,CAAC0B,MAAM,CAAExB,GAA0B,IAC9DlB,iBAAiB,CAACkB,GAAG,CAACyB,KAAK,CAC7B,CAAC;MAED,MAAME,cAAc,GAAGJ,YAAY,CAACC,MAAM,CACvCxB,GAA0B,IAAKA,GAAG,CAAC4B,WACtC,CAAC;MACD,MAAMC,cAAc,GAAGH,MAAM,CAACF,MAAM,CACjCM,CAAC,IAAKA,CAAC,CAACF,WACX,CAAuC;;MAEvC;MACA;MACA;MACA,MAAMG,sBAAsB,GAAGF,cAAc,CAACL,MAAM,CACjDM,CAAC,IAAK,CAACA,CAAC,CAACE,YACZ,CAAC;MACD,IAAIC,eAA8D,GAAG,CAAC,CAAC;MACvE,IAAIF,sBAAsB,CAACzB,MAAM,GAAG,CAAC,EAAE;QACrC2B,eAAe,GAAG,MAAMlD,gCAAgC,CACtDgD,sBACF,CAAC;MACH;;MAEA;MACA,IAAIJ,cAAc,CAACrB,MAAM,GAAG,CAAC,IAAIuB,cAAc,CAACvB,MAAM,GAAG,CAAC,EAAE;QAC1D,MAAM4B,eAAe,GAAG,CACtB,GAAGP,cAAc,CAACQ,GAAG,CAAEnC,GAA0B,KAAM;UACrD,GAAGA,GAAG;UACNoC,IAAI,EAAE;QACR,CAAC,CAAC,CAAC,EACH,GAAGP,cAAc,CAACM,GAAG,CACnB,CAACE,GAA0B,EAAEC,MAAc,KAAK;UAC9C,MAAMC,OAAO,GAAGF,GAAG,CAACT,WAAW,IAAI,SAASU,MAAM,EAAE;UACpD,MAAME,KAAK,GAAGP,eAAe,CAACM,OAAO,CAAC;UACtC,OAAO;YACLH,IAAI,EAAE,OAAgB;YACtBK,KAAK,EAAE;cACLC,IAAI,EAAEL,GAAG,CAACZ,KAAK,CAACiB,IAAI;cACpBC,QAAQ,EAAEN,GAAG,CAACZ,KAAK,CAACkB,QAAQ,IAAI/B,SAAS;cACzCgC,IAAI,EAAEP,GAAG,CAACZ,KAAK,CAACmB,IAAI,IAAIhC,SAAS;cACjCiC,KAAK,EAAER,GAAG,CAACZ,KAAK,CAACoB,KAAK,IAAIjC,SAAS;cACnCkC,MAAM,EAAET,GAAG,CAACZ,KAAK,CAACqB,MAAM,IAAIlC,SAAS;cACrCmC,QAAQ,EAAEV,GAAG,CAACZ,KAAK,CAACsB,QAAQ,IAAInC;YAClC,CAAC;YACDoC,cAAc,EAAEX,GAAG,CAACW,cAAc;YAClC7C,KAAK,EAAEkC,GAAG,CAAClC,KAAK;YAChBN,WAAW,EAAEwC,GAAG,CAACxC,WAAW;YAC5B+B,WAAW,EAAES,GAAG,CAACT,WAAW;YAC5BI,YAAY,EAAEK,GAAG,CAACL,YAAY,IAAIQ,KAAK,EAAES,GAAG;YAC5CC,aAAa,EAAEb,GAAG,CAACa,aAAa,IAAIV,KAAK,EAAEI;UAC7C,CAAC;QACH,CACF,CAAC,CACF;;QAED;QACA;QACApE,WAAW,CAAC2E,KAAK,CAAC,CAAC,CAACC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;QACnC7C,cAAc,CAAC,CAAC;QAChB;QACA;QACA,MAAMb,eAAe,CAACwC,eAAe,EAAEtB,SAAS,CAAC;MACnD;;MAEA;MACA;MACA,MAAMyC,aAAa,GAAGpD,aAAa,CAACuB,MAAM,CACvCtB,CAAC,IAAKA,CAAC,CAAC0B,WAAW,IAAI,CAAC1B,CAAC,CAACC,KAC7B,CAAC;MACD,IAAIkD,aAAa,CAAC/C,MAAM,GAAG,CAAC,EAAE;QAC5BE,aAAa,CAAC,CAAC;QACf,KAAK,MAAM8C,IAAI,IAAID,aAAa,EAAE;UAChC,MAAM3D,eAAe,CACnB,CACE;YACE0C,IAAI,EAAE,MAAe;YACrBkB,IAAI,EAAE;cAAEZ,IAAI,EAAEY,IAAI,CAACC,GAAG;cAAEZ,QAAQ,EAAEW,IAAI,CAACE,IAAI;cAAEZ,IAAI,EAAEU,IAAI,CAACV;YAAK,CAAC;YAC9DI,cAAc,EAAE,GAAG;YACnB7C,KAAK,EAAE,IAAI;YACXN,WAAW,EAAE,KAAK;YAClB+B,WAAW,EAAE0B,IAAI,CAAC1B;UACpB,CAAC,CACF,EACDhB,SACF,CAAC;QACH;MACF;IACF;;IAEA;IACA,IAAIxB,IAAI,CAACiB,IAAI,CAAC,CAAC,IAAII,OAAO,EAAE;MAC1B,MAAMgD,SAAS,GAAGrE,IAAI,CAACiB,IAAI,CAAC,CAAC;MAC7B;MACA;MACAhB,OAAO,CAAC,EAAE,CAAC;MACX,MAAMM,WAAW,CAAC;QAAE8D,SAAS;QAAEC,WAAW,EAAEjD;MAAQ,CAAC,CAAC;IACxD;EACF,CAAC,EAAE,CACDnB,eAAe,EACfC,cAAc,EACdC,WAAW,CAACkB,SAAS,EACrBlB,WAAW,CAACmB,QAAQ,EACpBjB,eAAe,EACfC,WAAW,EACXP,IAAI,EACJQ,eAAe,CAChB,CAAC;EAEF,OAAO;IACL;IACAR,IAAI;IACJC,OAAO;IACP;IACAS,cAAc,EAAER,eAAe,CAACQ,cAAc;IAC9CG,aAAa,EAAEV,cAAc,CAACU,aAAa;IAC3C0D,qBAAqB,EAAErE,eAAe,CAACqE,qBAAqB;IAC5DC,oBAAoB,EAAErE,cAAc,CAACqE,oBAAoB;IACzDC,SAAS,EAAEvE,eAAe,CAACwE,iBAAiB;IAC5CC,QAAQ,EAAExE,cAAc,CAACyE,gBAAgB;IACzCC,WAAW,EAAE3E,eAAe,CAAC4E,iBAAiB;IAC9CC,UAAU,EAAE5E,cAAc,CAAC6E,gBAAgB;IAC3C;IACAC,eAAe,EAAE7E,WAAW,CAACkB,SAAS;IACtCgD,WAAW,EAAElE,WAAW,CAACmB,QAAQ;IACjC2D,iBAAiB,EAAE9E,WAAW,CAAC+E,SAAS;IACxCC,cAAc,EAAEhF,WAAW,CAACiF,OAAO;IACnC;IACA5E,WAAW;IACXO,OAAO;IACP;IACAX,IAAI;IACJiF,QAAQ,EAAEA,CAAA,KAAM;MACdpF,eAAe,CAACiB,cAAc,CAAC,CAAC;MAChChB,cAAc,CAACiB,aAAa,CAAC,CAAC;MAC9BnB,OAAO,CAAC,EAAE,CAAC;IACb;EACF,CAAC;AACH","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useMemo","useState","ImagePicker","useImageAttachment","useFileAttachment","useLinkPreview","useSendAttachment","useSendMessage","isVideoFromPicker","generateAndUploadVideoThumbnails","useChatCompose","text","setText","imageAttachment","fileAttachment","linkPreview","send","sendAttachments","sendMessage","isUploading","selectedImages","some","img","selectedFiles","f","error","canSend","trim","length","clearAllImages","clearAllFiles","urlMeta","isVisible","metadata","undefined","actualImages","filter","image","videos","uploadedImages","uploadedUrl","uploadedVideos","v","videosMissingThumbnail","thumbnailUrl","videoThumbnails","attachmentItems","map","type","vid","vidIdx","videoId","thumb","video","path","filename","size","width","height","duration","uploadProgress","url","thumbnailSize","clean","catch","uploadedFiles","file","uri","name","plainText","urlMetadata","isImagePreviewVisible","isFilePreviewVisible","addImages","handleImageAttach","addFiles","handleFileAttach","removeImage","handleImageRemove","removeFile","handleFileRemove","showLinkPreview","isMetadataLoading","isLoading","dismissPreview","dismiss","clearAll"],"sourceRoot":"../../../src","sources":["hooks/useChatCompose.ts"],"mappings":"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","ignoreList":[]}
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
 
3
3
  import { memo, useCallback, useEffect, useMemo, useRef } from 'react';
4
- import { Platform, StyleSheet } from 'react-native';
4
+ import { Keyboard, Platform, StyleSheet } from 'react-native';
5
5
  import { debounce } from 'lodash';
6
6
  import Reanimated from 'react-native-reanimated';
7
- import { KeyboardStickyView } from 'react-native-keyboard-controller';
7
+ import { KeyboardStickyView, useKeyboardState } from 'react-native-keyboard-controller';
8
8
  import { useSafeAreaInsets } from 'react-native-safe-area-context';
9
9
  import { KContainer, KColors, KImage, KButton, KLabel } from '@droppii/libs';
10
10
  const IS_IOS = Platform.OS === 'ios';
@@ -15,7 +15,9 @@ import { ChatAttachmentPanel } from "./ChatAttachmentPanel.js";
15
15
  import { ChatLinkPreview } from "./ChatLinkPreview.js";
16
16
  import { ChatMessageInput } from "./components/ChatMessageInput.js";
17
17
  import { AttachmentPreview } from "../../components/AttachmentPreview/index.js";
18
+ import { StickerPicker } from "../../components/StickerPicker/index.js";
18
19
  import { DEFAULT_QUICK_ACTIONS, getAttachmentPanelHeight, DEFAULT_PANNEL_ACTIONS } from "./constants.js";
20
+ import { STICKER_PICKER_HEIGHT } from "../../components/StickerPicker/constants.js";
19
21
  import { DChatPannelActionItemType } from "./types.js";
20
22
  import { useChatComposerState } from "./hooks/useChatComposerState.js";
21
23
  import { useChatComposerAnimation } from "./hooks/useChatComposerAnimation.js";
@@ -26,15 +28,18 @@ import { ReactFlowsNodeTypes } from "../../types/flows.js";
26
28
  import { useAttachmentMapping } from "./hooks/useAttachmentMapping.js";
27
29
  import { useChatCompose } from "../../hooks/useChatCompose.js";
28
30
  import { ChatCurrentQuotedMessage } from "./ChatCurrentQuotedMessage.js";
31
+ import { useSendMessage } from "../../hooks/message/useSendMessage.js";
29
32
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
30
33
  export const ChatComposer = /*#__PURE__*/memo(({
31
34
  isEmptyMessage = false,
32
35
  pannelActions,
33
- isDisableCompose = false,
36
+ isComposeDisabled = false,
34
37
  composerRef,
35
38
  onComposerLayout
36
39
  }) => {
37
40
  const insets = useSafeAreaInsets();
41
+ const isDisableCompose = isComposeDisabled;
42
+ const isKeyboardVisible = useKeyboardState(state => state.isVisible);
38
43
  const {
39
44
  isBotConversation,
40
45
  conversationFlow
@@ -43,8 +48,13 @@ export const ChatComposer = /*#__PURE__*/memo(({
43
48
  mutate: runFlow,
44
49
  isPending
45
50
  } = useRunFlow();
51
+ const {
52
+ sendMessage
53
+ } = useSendMessage();
46
54
  const compose = useChatCompose();
47
55
  const {
56
+ activePanelType,
57
+ setActivePanelType,
48
58
  isAttachmentOpen,
49
59
  setIsAttachmentOpen,
50
60
  isInputFocused,
@@ -53,10 +63,12 @@ export const ChatComposer = /*#__PURE__*/memo(({
53
63
  isMultilineInput,
54
64
  inputRef
55
65
  } = useChatComposerState(compose.text);
56
- const panelHeight = useMemo(() => getAttachmentPanelHeight(DEFAULT_PANNEL_ACTIONS.length), []);
66
+ const attachmentPanelHeight = useMemo(() => getAttachmentPanelHeight(DEFAULT_PANNEL_ACTIONS.length), []);
67
+ const panelHeight = activePanelType === 'sticker' ? STICKER_PICKER_HEIGHT : attachmentPanelHeight;
57
68
  const {
58
69
  accessorySlotStyle,
59
70
  toggleAttachmentVisibility,
71
+ openWithHeight,
60
72
  closeAttachment
61
73
  } = useChatComposerAnimation({
62
74
  panelHeight,
@@ -72,8 +84,37 @@ export const ChatComposer = /*#__PURE__*/memo(({
72
84
  }, [compose]);
73
85
  const handleInputFocus = useCallback(() => {
74
86
  setIsInputFocused(true);
75
- if (isAttachmentOpen) closeAttachment(true);
76
- }, [closeAttachment, isAttachmentOpen, setIsInputFocused]);
87
+ if (isAttachmentOpen) {
88
+ // Use immediate close (no animation) when sticker panel is open to avoid
89
+ // layout conflict between the panel closing and keyboard appearing.
90
+ // Attachment panel is small enough that animation is fine (speedUp=true).
91
+ const immediate = activePanelType === 'sticker';
92
+ closeAttachment(!immediate, immediate);
93
+ setActivePanelType(null);
94
+ }
95
+ }, [closeAttachment, isAttachmentOpen, activePanelType, setIsInputFocused, setActivePanelType]);
96
+ const handleToggleAttachment = useCallback(() => {
97
+ if (activePanelType === 'sticker') {
98
+ // switch from sticker to attachment
99
+ setActivePanelType('attachment');
100
+ openWithHeight(attachmentPanelHeight);
101
+ return;
102
+ }
103
+ setActivePanelType(isAttachmentOpen ? null : 'attachment');
104
+ toggleAttachmentVisibility();
105
+ }, [activePanelType, isAttachmentOpen, attachmentPanelHeight, openWithHeight, toggleAttachmentVisibility, setActivePanelType]);
106
+ const handleToggleSticker = useCallback(() => {
107
+ if (activePanelType === 'sticker') {
108
+ closeAttachment();
109
+ setActivePanelType(null);
110
+ return;
111
+ }
112
+ if (isKeyboardVisible) {
113
+ Keyboard.dismiss();
114
+ }
115
+ setActivePanelType('sticker');
116
+ openWithHeight(STICKER_PICKER_HEIGHT);
117
+ }, [activePanelType, isKeyboardVisible, closeAttachment, openWithHeight, setActivePanelType]);
77
118
  const handleInputBlur = useCallback(() => {
78
119
  setIsInputFocused(false);
79
120
  }, [setIsInputFocused]);
@@ -131,6 +172,11 @@ export const ChatComposer = /*#__PURE__*/memo(({
131
172
  const inputRowStyle = useMemo(() => ({
132
173
  paddingBottom: isAttachmentOpen ? 8 : insets.bottom + 12
133
174
  }), [insets.bottom, isAttachmentOpen]);
175
+ const handleStickerSelect = useCallback(sticker => {
176
+ sendMessage({
177
+ sticker
178
+ });
179
+ }, [sendMessage]);
134
180
  const attachments = useAttachmentMapping({
135
181
  selectedImages: compose.selectedImages,
136
182
  selectedFiles: compose.selectedFiles
@@ -155,7 +201,7 @@ export const ChatComposer = /*#__PURE__*/memo(({
155
201
  })
156
202
  }), /*#__PURE__*/_jsx(KLabel.Text, {
157
203
  typo: "TextXsNormal",
158
- children: "Ng\u01B0\u1EDDi d\xF9ng n\xE0y kh\xF4ng c\xF2n kh\u1EA3 d\u1EE5ng"
204
+ children: trans('chat:compose_disabled_seller_inactive')
159
205
  })]
160
206
  });
161
207
  } else if (isNewBotConversation) {
@@ -197,13 +243,13 @@ export const ChatComposer = /*#__PURE__*/memo(({
197
243
  paddingB: "0.75rem",
198
244
  style: inputRowStyle,
199
245
  children: [/*#__PURE__*/_jsx(KContainer.Touchable, {
200
- onPress: toggleAttachmentVisibility,
246
+ onPress: handleToggleAttachment,
201
247
  center: true,
202
248
  br: "round",
203
249
  children: /*#__PURE__*/_jsx(KImage.VectorIcons, {
204
- name: isAttachmentOpen ? 'close-circle-o' : 'plus-circle-o',
250
+ name: activePanelType === 'attachment' ? 'close-circle-o' : 'plus-circle-o',
205
251
  size: 24,
206
- color: isAttachmentOpen ? KColors.palette.primary.w400 : KColors.palette.gray.w600
252
+ color: activePanelType === 'attachment' ? KColors.palette.primary.w400 : KColors.palette.gray.w600
207
253
  })
208
254
  }), /*#__PURE__*/_jsx(ChatMessageInput, {
209
255
  value: compose.text,
@@ -214,7 +260,8 @@ export const ChatComposer = /*#__PURE__*/memo(({
214
260
  onContentSizeChange: handleInputContentSizeChange,
215
261
  isInputFocused: isInputFocused,
216
262
  isMultilineInput: isMultilineInput,
217
- inputRef: inputRef
263
+ inputRef: inputRef,
264
+ onEmojiPress: handleToggleSticker
218
265
  }), /*#__PURE__*/_jsx(KContainer.Touchable, {
219
266
  onPress: compose.isUploading ? undefined : handleSend,
220
267
  pointerEvents: compose.isUploading ? 'none' : 'auto',
@@ -226,8 +273,7 @@ export const ChatComposer = /*#__PURE__*/memo(({
226
273
  marginL: "0.75rem",
227
274
  opacity: compose.isUploading ? 0.6 : 1,
228
275
  children: /*#__PURE__*/_jsx(KImage.VectorIcons, {
229
- name: "send",
230
- provider: "MaterialCommunityIcons",
276
+ name: "send-b",
231
277
  size: 20,
232
278
  color: KColors.white
233
279
  })
@@ -246,12 +292,14 @@ export const ChatComposer = /*#__PURE__*/memo(({
246
292
  children: content
247
293
  }), /*#__PURE__*/_jsx(KContainer.VisibleView, {
248
294
  visible: !isDisableCompose && !isNewBotConversation,
249
- children: /*#__PURE__*/_jsx(Reanimated.View, {
295
+ children: /*#__PURE__*/_jsxs(Reanimated.View, {
250
296
  style: [styles.accessorySlot, accessorySlotStyle],
251
297
  pointerEvents: isAttachmentOpen ? 'auto' : 'none',
252
- children: /*#__PURE__*/_jsx(ChatAttachmentPanel, {
298
+ children: [activePanelType === 'attachment' && /*#__PURE__*/_jsx(ChatAttachmentPanel, {
253
299
  actions: resolvedPannelActons
254
- })
300
+ }), activePanelType === 'sticker' && /*#__PURE__*/_jsx(StickerPicker, {
301
+ onSelectSticker: handleStickerSelect
302
+ })]
255
303
  })
256
304
  })]
257
305
  });