react-native-chatbot-ai 0.1.19 → 0.1.22

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 (263) hide show
  1. package/lib/module/components/Drawer/DeleteSessionPopup.js +113 -0
  2. package/lib/module/components/Drawer/DeleteSessionPopup.js.map +1 -0
  3. package/lib/module/components/Drawer/DrawerContent.js +21 -8
  4. package/lib/module/components/Drawer/DrawerContent.js.map +1 -1
  5. package/lib/module/components/Drawer/RenameSessionPopup.js +121 -0
  6. package/lib/module/components/Drawer/RenameSessionPopup.js.map +1 -0
  7. package/lib/module/components/Drawer/SearchInput.js +10 -3
  8. package/lib/module/components/Drawer/SearchInput.js.map +1 -1
  9. package/lib/module/components/Drawer/SessionItem.js +36 -20
  10. package/lib/module/components/Drawer/SessionItem.js.map +1 -1
  11. package/lib/module/components/Drawer/SessionList.js +2 -5
  12. package/lib/module/components/Drawer/SessionList.js.map +1 -1
  13. package/lib/module/components/Drawer/SessionOptionsBottomSheet.js +129 -0
  14. package/lib/module/components/Drawer/SessionOptionsBottomSheet.js.map +1 -0
  15. package/lib/module/components/Drawer/ShareSessionPopup.js +132 -0
  16. package/lib/module/components/Drawer/ShareSessionPopup.js.map +1 -0
  17. package/lib/module/components/chat/ChatEmpty.js +15 -4
  18. package/lib/module/components/chat/ChatEmpty.js.map +1 -1
  19. package/lib/module/components/chat/ChatHeader.js +10 -4
  20. package/lib/module/components/chat/ChatHeader.js.map +1 -1
  21. package/lib/module/components/chat/ChatMessageList.js +75 -24
  22. package/lib/module/components/chat/ChatMessageList.js.map +1 -1
  23. package/lib/module/components/chat/SuggestionItem.js +2 -1
  24. package/lib/module/components/chat/SuggestionItem.js.map +1 -1
  25. package/lib/module/components/chat/footer/index.js +77 -15
  26. package/lib/module/components/chat/footer/index.js.map +1 -1
  27. package/lib/module/components/chat/footer/item/UploadImageItem.js +21 -1
  28. package/lib/module/components/chat/footer/item/UploadImageItem.js.map +1 -1
  29. package/lib/module/components/chat/index.js +7 -6
  30. package/lib/module/components/chat/index.js.map +1 -1
  31. package/lib/module/components/chat/item/ChatAIAnswerMessageItem.js +36 -5
  32. package/lib/module/components/chat/item/ChatAIAnswerMessageItem.js.map +1 -1
  33. package/lib/module/components/chat/item/DeeplinkItem.js +30 -2
  34. package/lib/module/components/chat/item/DeeplinkItem.js.map +1 -1
  35. package/lib/module/components/chat/item/MessageActionsBar.js +243 -0
  36. package/lib/module/components/chat/item/MessageActionsBar.js.map +1 -0
  37. package/lib/module/components/chat/item/actions/ActionButton.js +56 -0
  38. package/lib/module/components/chat/item/actions/ActionButton.js.map +1 -0
  39. package/lib/module/components/portal/BottomSheet.js +245 -0
  40. package/lib/module/components/portal/BottomSheet.js.map +1 -0
  41. package/lib/module/components/portal/Popup.js +278 -0
  42. package/lib/module/components/portal/Popup.js.map +1 -0
  43. package/lib/module/components/portal/index.js +11 -5
  44. package/lib/module/components/portal/index.js.map +1 -1
  45. package/lib/module/components/product/CardHorizontal.js +44 -7
  46. package/lib/module/components/product/CardHorizontal.js.map +1 -1
  47. package/lib/module/constants/events.js +33 -0
  48. package/lib/module/constants/events.js.map +1 -1
  49. package/lib/module/constants/index.js +5 -1
  50. package/lib/module/constants/index.js.map +1 -1
  51. package/lib/module/constants/query.js +5 -1
  52. package/lib/module/constants/query.js.map +1 -1
  53. package/lib/module/context/ChatContext.js +9 -3
  54. package/lib/module/context/ChatContext.js.map +1 -1
  55. package/lib/module/hooks/message/useSendMessage.js +21 -3
  56. package/lib/module/hooks/message/useSendMessage.js.map +1 -1
  57. package/lib/module/hooks/message/useStreamMessage.js +10 -3
  58. package/lib/module/hooks/message/useStreamMessage.js.map +1 -1
  59. package/lib/module/hooks/messageActions/index.js +13 -0
  60. package/lib/module/hooks/messageActions/index.js.map +1 -0
  61. package/lib/module/hooks/messageActions/useAudioPlayer.js +269 -0
  62. package/lib/module/hooks/messageActions/useAudioPlayer.js.map +1 -0
  63. package/lib/module/hooks/messageActions/useCopyToClipboard.js +38 -0
  64. package/lib/module/hooks/messageActions/useCopyToClipboard.js.map +1 -0
  65. package/lib/module/hooks/messageActions/useFeedback.js +93 -0
  66. package/lib/module/hooks/messageActions/useFeedback.js.map +1 -0
  67. package/lib/module/hooks/messageActions/useSendFeedback.js +24 -0
  68. package/lib/module/hooks/messageActions/useSendFeedback.js.map +1 -0
  69. package/lib/module/hooks/messageActions/useShareMessage.js +128 -0
  70. package/lib/module/hooks/messageActions/useShareMessage.js.map +1 -0
  71. package/lib/module/hooks/session/useDeleteSession.js +23 -0
  72. package/lib/module/hooks/session/useDeleteSession.js.map +1 -0
  73. package/lib/module/hooks/session/useRenameSession.js +28 -0
  74. package/lib/module/hooks/session/useRenameSession.js.map +1 -0
  75. package/lib/module/hooks/session/useSearchSessions.js +5 -1
  76. package/lib/module/hooks/session/useSearchSessions.js.map +1 -1
  77. package/lib/module/hooks/session/useShareSession.js +16 -0
  78. package/lib/module/hooks/session/useShareSession.js.map +1 -0
  79. package/lib/module/hooks/upload/useImageUpload.js +2 -1
  80. package/lib/module/hooks/upload/useImageUpload.js.map +1 -1
  81. package/lib/module/services/endpoints.js +6 -1
  82. package/lib/module/services/endpoints.js.map +1 -1
  83. package/lib/module/services/index.js +1 -0
  84. package/lib/module/services/index.js.map +1 -1
  85. package/lib/module/services/playbackService.js +22 -0
  86. package/lib/module/services/playbackService.js.map +1 -0
  87. package/lib/module/store/audioPlayer.js +75 -0
  88. package/lib/module/store/audioPlayer.js.map +1 -0
  89. package/lib/module/store/messageActions.js +160 -0
  90. package/lib/module/store/messageActions.js.map +1 -0
  91. package/lib/module/store/session.js +6 -3
  92. package/lib/module/store/session.js.map +1 -1
  93. package/lib/module/translation/index.js +21 -25
  94. package/lib/module/translation/index.js.map +1 -1
  95. package/lib/module/translation/resources/i18n.js +39 -0
  96. package/lib/module/translation/resources/i18n.js.map +1 -0
  97. package/lib/module/types/chat.js +12 -1
  98. package/lib/module/types/chat.js.map +1 -1
  99. package/lib/module/types/index.js +1 -0
  100. package/lib/module/types/index.js.map +1 -1
  101. package/lib/module/types/messageActions.js +56 -0
  102. package/lib/module/types/messageActions.js.map +1 -0
  103. package/lib/module/utils/textCleaner.js +67 -0
  104. package/lib/module/utils/textCleaner.js.map +1 -0
  105. package/lib/module/utils/ui.js +27 -1
  106. package/lib/module/utils/ui.js.map +1 -1
  107. package/lib/typescript/src/components/Drawer/DeleteSessionPopup.d.ts +3 -0
  108. package/lib/typescript/src/components/Drawer/DeleteSessionPopup.d.ts.map +1 -0
  109. package/lib/typescript/src/components/Drawer/DrawerContent.d.ts.map +1 -1
  110. package/lib/typescript/src/components/Drawer/RenameSessionPopup.d.ts +3 -0
  111. package/lib/typescript/src/components/Drawer/RenameSessionPopup.d.ts.map +1 -0
  112. package/lib/typescript/src/components/Drawer/SearchInput.d.ts.map +1 -1
  113. package/lib/typescript/src/components/Drawer/SessionItem.d.ts.map +1 -1
  114. package/lib/typescript/src/components/Drawer/SessionList.d.ts.map +1 -1
  115. package/lib/typescript/src/components/Drawer/SessionOptionsBottomSheet.d.ts +3 -0
  116. package/lib/typescript/src/components/Drawer/SessionOptionsBottomSheet.d.ts.map +1 -0
  117. package/lib/typescript/src/components/Drawer/ShareSessionPopup.d.ts +3 -0
  118. package/lib/typescript/src/components/Drawer/ShareSessionPopup.d.ts.map +1 -0
  119. package/lib/typescript/src/components/chat/ChatEmpty.d.ts.map +1 -1
  120. package/lib/typescript/src/components/chat/ChatHeader.d.ts.map +1 -1
  121. package/lib/typescript/src/components/chat/ChatMessageList.d.ts.map +1 -1
  122. package/lib/typescript/src/components/chat/SuggestionItem.d.ts +3 -2
  123. package/lib/typescript/src/components/chat/SuggestionItem.d.ts.map +1 -1
  124. package/lib/typescript/src/components/chat/footer/index.d.ts.map +1 -1
  125. package/lib/typescript/src/components/chat/footer/item/UploadImageItem.d.ts.map +1 -1
  126. package/lib/typescript/src/components/chat/index.d.ts.map +1 -1
  127. package/lib/typescript/src/components/chat/item/ChatAIAnswerMessageItem.d.ts.map +1 -1
  128. package/lib/typescript/src/components/chat/item/DeeplinkItem.d.ts +2 -1
  129. package/lib/typescript/src/components/chat/item/DeeplinkItem.d.ts.map +1 -1
  130. package/lib/typescript/src/components/chat/item/MessageActionsBar.d.ts +16 -0
  131. package/lib/typescript/src/components/chat/item/MessageActionsBar.d.ts.map +1 -0
  132. package/lib/typescript/src/components/chat/item/actions/ActionButton.d.ts +19 -0
  133. package/lib/typescript/src/components/chat/item/actions/ActionButton.d.ts.map +1 -0
  134. package/lib/typescript/src/components/portal/BottomSheet.d.ts +8 -0
  135. package/lib/typescript/src/components/portal/BottomSheet.d.ts.map +1 -0
  136. package/lib/typescript/src/components/portal/Popup.d.ts +4 -0
  137. package/lib/typescript/src/components/portal/Popup.d.ts.map +1 -0
  138. package/lib/typescript/src/components/portal/index.d.ts.map +1 -1
  139. package/lib/typescript/src/components/product/CardHorizontal.d.ts +3 -2
  140. package/lib/typescript/src/components/product/CardHorizontal.d.ts.map +1 -1
  141. package/lib/typescript/src/constants/events.d.ts +33 -0
  142. package/lib/typescript/src/constants/events.d.ts.map +1 -1
  143. package/lib/typescript/src/constants/index.d.ts +5 -1
  144. package/lib/typescript/src/constants/index.d.ts.map +1 -1
  145. package/lib/typescript/src/constants/query.d.ts +4 -0
  146. package/lib/typescript/src/constants/query.d.ts.map +1 -1
  147. package/lib/typescript/src/context/ChatContext.d.ts.map +1 -1
  148. package/lib/typescript/src/hooks/message/useSendMessage.d.ts +2 -2
  149. package/lib/typescript/src/hooks/message/useSendMessage.d.ts.map +1 -1
  150. package/lib/typescript/src/hooks/message/useStreamMessage.d.ts.map +1 -1
  151. package/lib/typescript/src/hooks/messageActions/index.d.ts +10 -0
  152. package/lib/typescript/src/hooks/messageActions/index.d.ts.map +1 -0
  153. package/lib/typescript/src/hooks/messageActions/useAudioPlayer.d.ts +14 -0
  154. package/lib/typescript/src/hooks/messageActions/useAudioPlayer.d.ts.map +1 -0
  155. package/lib/typescript/src/hooks/messageActions/useCopyToClipboard.d.ts +9 -0
  156. package/lib/typescript/src/hooks/messageActions/useCopyToClipboard.d.ts.map +1 -0
  157. package/lib/typescript/src/hooks/messageActions/useFeedback.d.ts +18 -0
  158. package/lib/typescript/src/hooks/messageActions/useFeedback.d.ts.map +1 -0
  159. package/lib/typescript/src/hooks/messageActions/useSendFeedback.d.ts +6 -0
  160. package/lib/typescript/src/hooks/messageActions/useSendFeedback.d.ts.map +1 -0
  161. package/lib/typescript/src/hooks/messageActions/useShareMessage.d.ts +12 -0
  162. package/lib/typescript/src/hooks/messageActions/useShareMessage.d.ts.map +1 -0
  163. package/lib/typescript/src/hooks/session/useDeleteSession.d.ts +2 -0
  164. package/lib/typescript/src/hooks/session/useDeleteSession.d.ts.map +1 -0
  165. package/lib/typescript/src/hooks/session/useRenameSession.d.ts +2 -0
  166. package/lib/typescript/src/hooks/session/useRenameSession.d.ts.map +1 -0
  167. package/lib/typescript/src/hooks/session/useSearchSessions.d.ts +1 -1
  168. package/lib/typescript/src/hooks/session/useSearchSessions.d.ts.map +1 -1
  169. package/lib/typescript/src/hooks/session/useShareSession.d.ts +2 -0
  170. package/lib/typescript/src/hooks/session/useShareSession.d.ts.map +1 -0
  171. package/lib/typescript/src/hooks/upload/useImageUpload.d.ts +1 -1
  172. package/lib/typescript/src/hooks/upload/useImageUpload.d.ts.map +1 -1
  173. package/lib/typescript/src/services/endpoints.d.ts +5 -0
  174. package/lib/typescript/src/services/endpoints.d.ts.map +1 -1
  175. package/lib/typescript/src/services/index.d.ts +1 -0
  176. package/lib/typescript/src/services/index.d.ts.map +1 -1
  177. package/lib/typescript/src/services/playbackService.d.ts +2 -0
  178. package/lib/typescript/src/services/playbackService.d.ts.map +1 -0
  179. package/lib/typescript/src/store/audioPlayer.d.ts +27 -0
  180. package/lib/typescript/src/store/audioPlayer.d.ts.map +1 -0
  181. package/lib/typescript/src/store/messageActions.d.ts +9 -0
  182. package/lib/typescript/src/store/messageActions.d.ts.map +1 -0
  183. package/lib/typescript/src/store/session.d.ts.map +1 -1
  184. package/lib/typescript/src/translation/index.d.ts +3 -4
  185. package/lib/typescript/src/translation/index.d.ts.map +1 -1
  186. package/lib/typescript/src/translation/resources/i18n.d.ts +5 -0
  187. package/lib/typescript/src/translation/resources/i18n.d.ts.map +1 -0
  188. package/lib/typescript/src/types/chat.d.ts +16 -1
  189. package/lib/typescript/src/types/chat.d.ts.map +1 -1
  190. package/lib/typescript/src/types/dto.d.ts +11 -0
  191. package/lib/typescript/src/types/dto.d.ts.map +1 -1
  192. package/lib/typescript/src/types/index.d.ts +1 -0
  193. package/lib/typescript/src/types/index.d.ts.map +1 -1
  194. package/lib/typescript/src/types/messageActions.d.ts +85 -0
  195. package/lib/typescript/src/types/messageActions.d.ts.map +1 -0
  196. package/lib/typescript/src/types/ui.d.ts +16 -1
  197. package/lib/typescript/src/types/ui.d.ts.map +1 -1
  198. package/lib/typescript/src/utils/textCleaner.d.ts +30 -0
  199. package/lib/typescript/src/utils/textCleaner.d.ts.map +1 -0
  200. package/lib/typescript/src/utils/ui.d.ts +12 -1
  201. package/lib/typescript/src/utils/ui.d.ts.map +1 -1
  202. package/package.json +6 -6
  203. package/src/components/Drawer/DeleteSessionPopup.tsx +121 -0
  204. package/src/components/Drawer/DrawerContent.tsx +23 -7
  205. package/src/components/Drawer/RenameSessionPopup.tsx +145 -0
  206. package/src/components/Drawer/SearchInput.tsx +11 -2
  207. package/src/components/Drawer/SessionItem.tsx +22 -8
  208. package/src/components/Drawer/SessionList.tsx +0 -2
  209. package/src/components/Drawer/SessionOptionsBottomSheet.tsx +138 -0
  210. package/src/components/Drawer/ShareSessionPopup.tsx +145 -0
  211. package/src/components/chat/ChatEmpty.tsx +15 -5
  212. package/src/components/chat/ChatHeader.tsx +9 -4
  213. package/src/components/chat/ChatMessageList.tsx +78 -18
  214. package/src/components/chat/SuggestionItem.tsx +4 -3
  215. package/src/components/chat/footer/index.tsx +95 -14
  216. package/src/components/chat/footer/item/UploadImageItem.tsx +21 -1
  217. package/src/components/chat/index.tsx +8 -11
  218. package/src/components/chat/item/ChatAIAnswerMessageItem.tsx +55 -6
  219. package/src/components/chat/item/DeeplinkItem.tsx +30 -2
  220. package/src/components/chat/item/MessageActionsBar.tsx +326 -0
  221. package/src/components/chat/item/actions/ActionButton.tsx +65 -0
  222. package/src/components/portal/BottomSheet.tsx +307 -0
  223. package/src/components/portal/Popup.tsx +345 -0
  224. package/src/components/portal/index.tsx +5 -1
  225. package/src/components/product/CardHorizontal.tsx +45 -10
  226. package/src/constants/events.ts +34 -0
  227. package/src/constants/index.ts +6 -1
  228. package/src/constants/query.ts +4 -0
  229. package/src/context/ChatContext.tsx +6 -0
  230. package/src/hooks/message/useSendMessage.ts +47 -4
  231. package/src/hooks/message/useStreamMessage.ts +15 -4
  232. package/src/hooks/messageActions/index.ts +10 -0
  233. package/src/hooks/messageActions/useAudioPlayer.ts +346 -0
  234. package/src/hooks/messageActions/useCopyToClipboard.ts +38 -0
  235. package/src/hooks/messageActions/useFeedback.ts +114 -0
  236. package/src/hooks/messageActions/useSendFeedback.ts +31 -0
  237. package/src/hooks/messageActions/useShareMessage.ts +146 -0
  238. package/src/hooks/session/useDeleteSession.ts +25 -0
  239. package/src/hooks/session/useRenameSession.ts +37 -0
  240. package/src/hooks/session/useSearchSessions.ts +6 -1
  241. package/src/hooks/session/useShareSession.ts +22 -0
  242. package/src/hooks/upload/useImageUpload.ts +6 -2
  243. package/src/ignore.d.ts +20 -1
  244. package/src/services/endpoints.ts +10 -0
  245. package/src/services/index.ts +1 -0
  246. package/src/services/playbackService.ts +22 -0
  247. package/src/store/audioPlayer.ts +112 -0
  248. package/src/store/messageActions.ts +161 -0
  249. package/src/store/session.ts +4 -2
  250. package/src/translation/index.ts +27 -19
  251. package/src/translation/resources/i18n.ts +45 -0
  252. package/src/types/chat.ts +21 -1
  253. package/src/types/dto.ts +14 -0
  254. package/src/types/index.ts +1 -0
  255. package/src/types/messageActions.ts +131 -0
  256. package/src/types/ui.ts +19 -1
  257. package/src/utils/textCleaner.ts +65 -0
  258. package/src/utils/ui.tsx +29 -2
  259. package/lib/module/translation/resources/vi.js +0 -12
  260. package/lib/module/translation/resources/vi.js.map +0 -1
  261. package/lib/typescript/src/translation/resources/vi.d.ts +0 -11
  262. package/lib/typescript/src/translation/resources/vi.d.ts.map +0 -1
  263. package/src/translation/resources/vi.ts +0 -10
@@ -0,0 +1,113 @@
1
+ "use strict";
2
+
3
+ import { useCallback } from 'react';
4
+ import { StyleSheet } from 'react-native';
5
+ import { KContainer, KLabel, KColors, KSpacingValue } from '@droppii/libs';
6
+ import { useDeleteSession } from "../../hooks/session/useDeleteSession.js";
7
+ import UIUtils from "../../utils/ui.js";
8
+ import { trans } from "../../translation/index.js";
9
+ import useSessionStore from "../../store/session.js";
10
+ import { SessionLogType } from "../../types/index.js";
11
+ import { GAEvents } from "../../constants/events.js";
12
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
+ const truncateText = (text, maxLength) => {
14
+ if (text.length <= maxLength) return text;
15
+ return text.substring(0, maxLength) + '…';
16
+ };
17
+ const DeleteContent = ({
18
+ session,
19
+ onConfirmRef
20
+ }) => {
21
+ const {
22
+ mutateAsync: deleteSession
23
+ } = useDeleteSession();
24
+ const currentSessionId = useSessionStore(state => state.sessionId);
25
+ const setSessionId = useSessionStore(state => state.setSessionId);
26
+
27
+ // Expose handleConfirm via ref
28
+ onConfirmRef.current = useCallback(async () => {
29
+ try {
30
+ await deleteSession(session.id);
31
+
32
+ // If the deleted session is the current active session, clear it
33
+ if (currentSessionId === session.id) {
34
+ setSessionId(undefined, SessionLogType.newChatBtn);
35
+ }
36
+ UIUtils.toast.showSuccess(trans('chatbot:delete_session_success'));
37
+ UIUtils.popup.dismiss();
38
+ } catch (err) {
39
+ UIUtils.toast.showError(err);
40
+ }
41
+ }, [session.id, currentSessionId, deleteSession, setSessionId]);
42
+ const truncatedName = truncateText(session.title, 50);
43
+ const descriptionTemplate = trans('chatbot:delete_session_description');
44
+ const parts = descriptionTemplate.split('{sessionName}');
45
+ return (
46
+ /*#__PURE__*/
47
+ // @ts-ignore
48
+ _jsx(KContainer.View, {
49
+ style: styles.container,
50
+ children: /*#__PURE__*/_jsxs(KLabel.Text, {
51
+ typo: "TextMdNormal",
52
+ color: KColors.gray.dark,
53
+ children: [parts[0], /*#__PURE__*/_jsx(KLabel.Text, {
54
+ typo: "TextMdBold",
55
+ color: KColors.gray.dark,
56
+ children: truncatedName
57
+ }), parts[1]]
58
+ })
59
+ })
60
+ );
61
+ };
62
+ export const openDeleteSessionPopup = (session, logGA) => {
63
+ const onConfirmRef = {
64
+ current: null
65
+ };
66
+ UIUtils.popup.open({
67
+ header: {
68
+ title: {
69
+ text: trans('chatbot:delete_session_title')
70
+ },
71
+ showCloseButton: false
72
+ },
73
+ body: {
74
+ scrollable: false,
75
+ renderContent: () => /*#__PURE__*/_jsx(DeleteContent, {
76
+ session: session,
77
+ onConfirmRef: onConfirmRef
78
+ })
79
+ },
80
+ actions: {
81
+ type: 'horizontal-button',
82
+ buttons: [{
83
+ kind: 'light',
84
+ label: trans('chatbot:delete_session_cancel'),
85
+ weight: 'medium',
86
+ onPress: () => {
87
+ UIUtils.popup.dismiss();
88
+ logGA?.(GAEvents.deleteChatModalDeleteBtnTap, {
89
+ conversation_id: session.id,
90
+ button: 'cancel'
91
+ });
92
+ }
93
+ }, {
94
+ kind: 'danger',
95
+ label: trans('chatbot:delete_session_confirm'),
96
+ weight: 'medium',
97
+ onPress: () => {
98
+ onConfirmRef.current?.();
99
+ logGA?.(GAEvents.deleteChatModalDeleteBtnTap, {
100
+ conversation_id: session.id,
101
+ button: 'delete'
102
+ });
103
+ }
104
+ }]
105
+ }
106
+ });
107
+ };
108
+ const styles = StyleSheet.create({
109
+ container: {
110
+ padding: KSpacingValue['1rem']
111
+ }
112
+ });
113
+ //# sourceMappingURL=DeleteSessionPopup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useCallback","StyleSheet","KContainer","KLabel","KColors","KSpacingValue","useDeleteSession","UIUtils","trans","useSessionStore","SessionLogType","GAEvents","jsx","_jsx","jsxs","_jsxs","truncateText","text","maxLength","length","substring","DeleteContent","session","onConfirmRef","mutateAsync","deleteSession","currentSessionId","state","sessionId","setSessionId","current","id","undefined","newChatBtn","toast","showSuccess","popup","dismiss","err","showError","truncatedName","title","descriptionTemplate","parts","split","View","style","styles","container","children","Text","typo","color","gray","dark","openDeleteSessionPopup","logGA","open","header","showCloseButton","body","scrollable","renderContent","actions","type","buttons","kind","label","weight","onPress","deleteChatModalDeleteBtnTap","conversation_id","button","create","padding"],"sourceRoot":"../../../../src","sources":["components/Drawer/DeleteSessionPopup.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
 
3
3
  import { useCallback, useMemo, useState, useEffect, useRef } from 'react';
4
- import { StyleSheet } from 'react-native';
5
- import { KContainer } from '@droppii/libs';
4
+ import { StyleSheet, Platform } from 'react-native';
5
+ import { KContainer, KSpacingValue } from '@droppii/libs';
6
6
  import debounce from 'lodash/debounce';
7
7
  import useSessionStore from "../../store/session.js";
8
8
  import { useChatContext } from "../../context/ChatContext.js";
@@ -10,12 +10,15 @@ import { useSearchSessions } from "../../hooks/session/useSearchSessions.js";
10
10
  import NewChatButton from "./NewChatButton.js";
11
11
  import SearchInput from "./SearchInput.js";
12
12
  import SessionList from "./SessionList.js";
13
+ import { SessionLogType } from "../../types/index.js";
14
+ import { GAEvents } from "../../constants/events.js";
13
15
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
14
16
  const DrawerContent = () => {
15
17
  const setSessionId = useSessionStore(state => state.setSessionId);
16
18
  const sessionId = useSessionStore(state => state.sessionId);
17
19
  const {
18
- closeDrawer
20
+ closeDrawer,
21
+ logGA
19
22
  } = useChatContext();
20
23
  const [searchQuery, setSearchQuery] = useState('');
21
24
  const [debouncedSearchTerm, setDebouncedSearchTerm] = useState('');
@@ -29,6 +32,12 @@ const DrawerContent = () => {
29
32
  debouncedFn.cancel();
30
33
  };
31
34
  }, [searchQuery]);
35
+ const onSearchCallback = useCallback(isSuccess => {
36
+ logGA(GAEvents.sidebarSearchConversationSend, {
37
+ content: debouncedSearchTerm,
38
+ search_result: isSuccess ? 'yes' : null
39
+ });
40
+ }, [logGA, debouncedSearchTerm]);
32
41
  const {
33
42
  data,
34
43
  isLoading,
@@ -37,16 +46,19 @@ const DrawerContent = () => {
37
46
  fetchNextPage,
38
47
  hasNextPage,
39
48
  isFetchingNextPage
40
- } = useSearchSessions(true, debouncedSearchTerm);
49
+ } = useSearchSessions(true, debouncedSearchTerm, onSearchCallback);
41
50
  const sessions = useMemo(() => {
42
51
  return data?.pages.flatMap(page => page?.data || []) || [];
43
52
  }, [data]);
44
53
  const onPressNewSession = useCallback(() => {
45
- setSessionId(undefined);
54
+ setSessionId(undefined, SessionLogType.newChatBtn);
46
55
  closeDrawer();
47
- }, [setSessionId, closeDrawer]);
56
+ logGA(GAEvents.newChatCreateBtnTap, {
57
+ button_type: 'sidebar'
58
+ });
59
+ }, [setSessionId, closeDrawer, logGA]);
48
60
  const onPressSession = useCallback(item => {
49
- setSessionId(item.id);
61
+ setSessionId(item.id, SessionLogType.oldChat);
50
62
  closeDrawer();
51
63
  }, [setSessionId, closeDrawer]);
52
64
  const onEndReached = useCallback(() => {
@@ -78,7 +90,8 @@ const DrawerContent = () => {
78
90
  const styles = StyleSheet.create({
79
91
  drawerContainer: {
80
92
  flex: 1,
81
- backgroundColor: 'white'
93
+ backgroundColor: 'white',
94
+ paddingTop: Platform.OS === 'android' ? KSpacingValue['2rem'] : 0
82
95
  }
83
96
  });
84
97
  export default DrawerContent;
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useMemo","useState","useEffect","useRef","StyleSheet","KContainer","debounce","useSessionStore","useChatContext","useSearchSessions","NewChatButton","SearchInput","SessionList","jsx","_jsx","jsxs","_jsxs","DrawerContent","setSessionId","state","sessionId","closeDrawer","searchQuery","setSearchQuery","debouncedSearchTerm","setDebouncedSearchTerm","debounceRef","value","debouncedFn","current","cancel","data","isLoading","isRefetching","refetch","fetchNextPage","hasNextPage","isFetchingNextPage","sessions","pages","flatMap","page","onPressNewSession","undefined","onPressSession","item","id","onEndReached","View","edges","style","styles","drawerContainer","children","onPress","onChangeText","activeSessionId","onRefresh","create","flex","backgroundColor"],"sourceRoot":"../../../../src","sources":["components/Drawer/DrawerContent.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useMemo","useState","useEffect","useRef","StyleSheet","Platform","KContainer","KSpacingValue","debounce","useSessionStore","useChatContext","useSearchSessions","NewChatButton","SearchInput","SessionList","SessionLogType","GAEvents","jsx","_jsx","jsxs","_jsxs","DrawerContent","setSessionId","state","sessionId","closeDrawer","logGA","searchQuery","setSearchQuery","debouncedSearchTerm","setDebouncedSearchTerm","debounceRef","value","debouncedFn","current","cancel","onSearchCallback","isSuccess","sidebarSearchConversationSend","content","search_result","data","isLoading","isRefetching","refetch","fetchNextPage","hasNextPage","isFetchingNextPage","sessions","pages","flatMap","page","onPressNewSession","undefined","newChatBtn","newChatCreateBtnTap","button_type","onPressSession","item","id","oldChat","onEndReached","View","edges","style","styles","drawerContainer","children","onPress","onChangeText","activeSessionId","onRefresh","create","flex","backgroundColor","paddingTop","OS"],"sourceRoot":"../../../../src","sources":["components/Drawer/DrawerContent.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,121 @@
1
+ "use strict";
2
+
3
+ import { useState, useCallback } from 'react';
4
+ import { useRenameSession } from "../../hooks/session/useRenameSession.js";
5
+ import UIUtils from "../../utils/ui.js";
6
+ import { trans } from "../../translation/index.js";
7
+ import { StyleSheet, Keyboard } from 'react-native';
8
+ import { KButton, KColors, KContainer, KInput, KLabel, KSpacingValue } from '@droppii/libs';
9
+ import { useChatContext } from "../../context/ChatContext.js";
10
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
11
+ const MAX_LENGTH = 250;
12
+ const MIN_LENGTH = 1;
13
+ const RenameSessionPopup = ({
14
+ session
15
+ }) => {
16
+ const [value, setValue] = useState(session.title);
17
+ const [confirmDisabled, setConfirmDisabled] = useState(true);
18
+ const {
19
+ mutateAsync: renameSession
20
+ } = useRenameSession();
21
+ const {
22
+ openDrawer
23
+ } = useChatContext();
24
+ const onChangeText = useCallback(text => {
25
+ const newText = text.slice(0, MAX_LENGTH);
26
+ setValue(newText);
27
+ const disabled = newText.trim().length < MIN_LENGTH || newText.length > MAX_LENGTH || newText.trim() === session.title.trim();
28
+ setConfirmDisabled(disabled);
29
+ }, [session.title]);
30
+ const onClear = useCallback(() => {
31
+ setValue('');
32
+ setConfirmDisabled(true);
33
+ }, []);
34
+ const handleConfirm = useCallback(async () => {
35
+ const trimmed = value.trim();
36
+ if (confirmDisabled || !trimmed || trimmed.length < MIN_LENGTH || trimmed.length > MAX_LENGTH || trimmed === session.title.trim()) {
37
+ return;
38
+ }
39
+ try {
40
+ await renameSession({
41
+ sessionId: session.id,
42
+ title: trimmed
43
+ });
44
+ Keyboard.dismiss();
45
+ UIUtils.toast.showSuccess(trans('chatbot:rename_session_success'));
46
+ UIUtils.popup.dismiss();
47
+ setTimeout(() => {
48
+ openDrawer();
49
+ }, 500);
50
+ } catch (err) {
51
+ UIUtils.toast.showError(err);
52
+ }
53
+ }, [confirmDisabled, value, session, renameSession, openDrawer]);
54
+ return /*#__PURE__*/_jsxs(KContainer.View, {
55
+ children: [/*#__PURE__*/_jsxs(KContainer.View, {
56
+ style: [styles.searchInputWrapper],
57
+ children: [/*#__PURE__*/_jsx(KInput.TextBox, {
58
+ placeholder: trans('chatbot:rename_session_placeholder'),
59
+ value: value,
60
+ onChangeText: onChangeText,
61
+ onClear: onClear,
62
+ border: "entire",
63
+ radius: "borderless",
64
+ withBorder: true,
65
+ height: 160,
66
+ maxLength: MAX_LENGTH,
67
+ paddingV: "0.5rem",
68
+ multiline: true,
69
+ textAlignVertical: "top"
70
+ }), /*#__PURE__*/_jsx(KLabel.Text, {
71
+ color: KColors.gray.light,
72
+ children: value.trim().length === 0 ? `Tối đa ${MAX_LENGTH} ký tự` : `Còn ${MAX_LENGTH - value.length}/${MAX_LENGTH} ký tự`
73
+ })]
74
+ }), /*#__PURE__*/_jsx(KContainer.View, {
75
+ style: styles.divider
76
+ }), /*#__PURE__*/_jsx(KContainer.View, {
77
+ style: styles.buttonConfirm,
78
+ children: /*#__PURE__*/_jsx(KButton.Solid, {
79
+ label: trans('rename_session_confirm'),
80
+ stretch: true,
81
+ size: "lg",
82
+ marginT: "1rem",
83
+ disabled: confirmDisabled,
84
+ onPress: handleConfirm
85
+ })
86
+ })]
87
+ });
88
+ };
89
+ export const openRenameSessionPopup = session => {
90
+ UIUtils.popup.open({
91
+ header: {
92
+ title: {
93
+ text: trans('chatbot:rename_session_title')
94
+ },
95
+ showCloseButton: true,
96
+ alignment: 'left'
97
+ },
98
+ body: {
99
+ scrollable: false,
100
+ renderContent: () => /*#__PURE__*/_jsx(RenameSessionPopup, {
101
+ session: session
102
+ })
103
+ }
104
+ });
105
+ };
106
+ const styles = StyleSheet.create({
107
+ searchInputWrapper: {
108
+ marginHorizontal: KSpacingValue['1rem'],
109
+ marginBottom: KSpacingValue['0.75rem'],
110
+ paddingTop: KSpacingValue['0.25rem']
111
+ },
112
+ divider: {
113
+ height: 1,
114
+ backgroundColor: KColors.border.light
115
+ },
116
+ buttonConfirm: {
117
+ padding: KSpacingValue['1rem'],
118
+ paddingTop: 0
119
+ }
120
+ });
121
+ //# sourceMappingURL=RenameSessionPopup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useState","useCallback","useRenameSession","UIUtils","trans","StyleSheet","Keyboard","KButton","KColors","KContainer","KInput","KLabel","KSpacingValue","useChatContext","jsx","_jsx","jsxs","_jsxs","MAX_LENGTH","MIN_LENGTH","RenameSessionPopup","session","value","setValue","title","confirmDisabled","setConfirmDisabled","mutateAsync","renameSession","openDrawer","onChangeText","text","newText","slice","disabled","trim","length","onClear","handleConfirm","trimmed","sessionId","id","dismiss","toast","showSuccess","popup","setTimeout","err","showError","View","children","style","styles","searchInputWrapper","TextBox","placeholder","border","radius","withBorder","height","maxLength","paddingV","multiline","textAlignVertical","Text","color","gray","light","divider","buttonConfirm","Solid","label","stretch","size","marginT","onPress","openRenameSessionPopup","open","header","showCloseButton","alignment","body","scrollable","renderContent","create","marginHorizontal","marginBottom","paddingTop","backgroundColor","padding"],"sourceRoot":"../../../../src","sources":["components/Drawer/RenameSessionPopup.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,17 +1,23 @@
1
1
  "use strict";
2
2
 
3
- import { memo } from 'react';
3
+ import { useCallback, memo } from 'react';
4
4
  import { StyleSheet } from 'react-native';
5
5
  import { KContainer, KInput, KColors, KSpacingValue } from '@droppii/libs';
6
+ import { useChatContext } from "../../context/ChatContext.js";
7
+ import { GAEvents } from "../../constants/events.js";
6
8
  import { jsx as _jsx } from "react/jsx-runtime";
7
9
  const SearchInput = /*#__PURE__*/memo(({
8
10
  value,
9
11
  onChangeText
10
12
  }) => {
13
+ const logGA = useChatContext().logGA;
14
+ const onFocus = useCallback(() => {
15
+ logGA(GAEvents.sidebarSearchConversationTap);
16
+ }, [logGA]);
11
17
  return /*#__PURE__*/_jsx(KContainer.View, {
12
18
  style: styles.searchInputWrapper,
13
19
  children: /*#__PURE__*/_jsx(KInput.TextBox, {
14
- placeholder: 'Tìm kiếm đoạn chát',
20
+ placeholder: 'Tìm kiếm đoạn chat',
15
21
  value: value,
16
22
  onChangeText: onChangeText,
17
23
  searchIconLeftColor: KColors.gray.normal,
@@ -19,7 +25,8 @@ const SearchInput = /*#__PURE__*/memo(({
19
25
  border: "entire",
20
26
  radius: "borderless",
21
27
  withBorder: true,
22
- height: 40
28
+ height: 40,
29
+ onFocus: onFocus
23
30
  })
24
31
  });
25
32
  });
@@ -1 +1 @@
1
- {"version":3,"names":["memo","StyleSheet","KContainer","KInput","KColors","KSpacingValue","jsx","_jsx","SearchInput","value","onChangeText","View","style","styles","searchInputWrapper","children","TextBox","placeholder","searchIconLeftColor","gray","normal","returnKeyType","border","radius","withBorder","height","displayName","create","marginHorizontal","marginBottom"],"sourceRoot":"../../../../src","sources":["components/Drawer/SearchInput.tsx"],"mappings":";;AAAA,SAASA,IAAI,QAAQ,OAAO;AAC5B,SAASC,UAAU,QAAQ,cAAc;AACzC,SAASC,UAAU,EAAEC,MAAM,EAAEC,OAAO,EAAEC,aAAa,QAAQ,eAAe;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAO3E,MAAMC,WAAW,gBAAGR,IAAI,CAAmB,CAAC;EAAES,KAAK;EAAEC;AAAa,CAAC,KAAK;EACtE,oBACEH,IAAA,CAACL,UAAU,CAACS,IAAI;IAACC,KAAK,EAAEC,MAAM,CAACC,kBAAmB;IAAAC,QAAA,eAChDR,IAAA,CAACJ,MAAM,CAACa,OAAO;MACbC,WAAW,EAAE,oBAAqB;MAClCR,KAAK,EAAEA,KAAM;MACbC,YAAY,EAAEA,YAAa;MAC3BQ,mBAAmB,EAAEd,OAAO,CAACe,IAAI,CAACC,MAAO;MACzCC,aAAa,EAAC,QAAQ;MACtBC,MAAM,EAAC,QAAQ;MACfC,MAAM,EAAC,YAAY;MACnBC,UAAU;MACVC,MAAM,EAAE;IAAG,CACZ;EAAC,CACa,CAAC;AAEtB,CAAC,CAAC;AAEFjB,WAAW,CAACkB,WAAW,GAAG,aAAa;AAEvC,MAAMb,MAAM,GAAGZ,UAAU,CAAC0B,MAAM,CAAC;EAC/Bb,kBAAkB,EAAE;IAClBc,gBAAgB,EAAEvB,aAAa,CAAC,MAAM,CAAC;IACvCwB,YAAY,EAAExB,aAAa,CAAC,SAAS;EACvC;AACF,CAAC,CAAC;AAEF,eAAeG,WAAW","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","memo","StyleSheet","KContainer","KInput","KColors","KSpacingValue","useChatContext","GAEvents","jsx","_jsx","SearchInput","value","onChangeText","logGA","onFocus","sidebarSearchConversationTap","View","style","styles","searchInputWrapper","children","TextBox","placeholder","searchIconLeftColor","gray","normal","returnKeyType","border","radius","withBorder","height","displayName","create","marginHorizontal","marginBottom"],"sourceRoot":"../../../../src","sources":["components/Drawer/SearchInput.tsx"],"mappings":";;AAAA,SAASA,WAAW,EAAEC,IAAI,QAAQ,OAAO;AACzC,SAASC,UAAU,QAAQ,cAAc;AACzC,SAASC,UAAU,EAAEC,MAAM,EAAEC,OAAO,EAAEC,aAAa,QAAQ,eAAe;AAC1E,SAASC,cAAc,QAAQ,8BAA2B;AAC1D,SAASC,QAAQ,QAAQ,2BAAwB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAOlD,MAAMC,WAAW,gBAAGV,IAAI,CAAmB,CAAC;EAAEW,KAAK;EAAEC;AAAa,CAAC,KAAK;EACtE,MAAMC,KAAK,GAAGP,cAAc,CAAC,CAAC,CAACO,KAAK;EAEpC,MAAMC,OAAO,GAAGf,WAAW,CAAC,MAAM;IAChCc,KAAK,CAACN,QAAQ,CAACQ,4BAA4B,CAAC;EAC9C,CAAC,EAAE,CAACF,KAAK,CAAC,CAAC;EAEX,oBACEJ,IAAA,CAACP,UAAU,CAACc,IAAI;IAACC,KAAK,EAAEC,MAAM,CAACC,kBAAmB;IAAAC,QAAA,eAChDX,IAAA,CAACN,MAAM,CAACkB,OAAO;MACbC,WAAW,EAAE,oBAAqB;MAClCX,KAAK,EAAEA,KAAM;MACbC,YAAY,EAAEA,YAAa;MAC3BW,mBAAmB,EAAEnB,OAAO,CAACoB,IAAI,CAACC,MAAO;MACzCC,aAAa,EAAC,QAAQ;MACtBC,MAAM,EAAC,QAAQ;MACfC,MAAM,EAAC,YAAY;MACnBC,UAAU;MACVC,MAAM,EAAE,EAAG;MACXhB,OAAO,EAAEA;IAAQ,CAClB;EAAC,CACa,CAAC;AAEtB,CAAC,CAAC;AAEFJ,WAAW,CAACqB,WAAW,GAAG,aAAa;AAEvC,MAAMb,MAAM,GAAGjB,UAAU,CAAC+B,MAAM,CAAC;EAC/Bb,kBAAkB,EAAE;IAClBc,gBAAgB,EAAE5B,aAAa,CAAC,MAAM,CAAC;IACvC6B,YAAY,EAAE7B,aAAa,CAAC,SAAS;EACvC;AACF,CAAC,CAAC;AAEF,eAAeK,WAAW","ignoreList":[]}
@@ -1,32 +1,48 @@
1
1
  "use strict";
2
2
 
3
- import { memo } from 'react';
3
+ import { memo, useCallback } from 'react';
4
4
  import { StyleSheet } from 'react-native';
5
5
  import { KContainer, KLabel, KColors, KSpacingValue, KImage } from '@droppii/libs';
6
+ import { openSessionOptionsBottomSheet } from "./SessionOptionsBottomSheet.js";
7
+ import { useChatContext } from "../../context/ChatContext.js";
6
8
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
7
9
  const SessionItem = /*#__PURE__*/memo(({
8
10
  item,
9
11
  isActive,
10
12
  onPress
11
13
  }) => {
12
- return /*#__PURE__*/_jsxs(KContainer.View, {
13
- style: [styles.sessionItem, isActive && styles.sessionItemActive],
14
- children: [/*#__PURE__*/_jsx(KContainer.Touchable, {
15
- style: styles.sessionItemTouchable,
16
- onPress: () => onPress(item),
17
- children: /*#__PURE__*/_jsx(KLabel.Text, {
18
- typo: "TextMdNormal",
19
- color: KColors.gray.dark,
20
- numberOfLines: 1,
21
- children: item.title
22
- })
23
- }), /*#__PURE__*/_jsx(KImage.VectorIcons, {
24
- name: "more-horizontal-b",
25
- size: 20,
26
- color: KColors.gray.dark,
27
- style: styles.menuIcon
28
- })]
29
- });
14
+ const {
15
+ closeDrawer,
16
+ logGA
17
+ } = useChatContext();
18
+ const handlePressOptions = useCallback(() => {
19
+ openSessionOptionsBottomSheet(item, closeDrawer, logGA);
20
+ }, [item, closeDrawer, logGA]);
21
+ return (
22
+ /*#__PURE__*/
23
+ // @ts-ignore
24
+ _jsxs(KContainer.View, {
25
+ style: [styles.sessionItem, isActive && styles.sessionItemActive],
26
+ children: [/*#__PURE__*/_jsx(KContainer.Touchable, {
27
+ style: styles.sessionItemTouchable,
28
+ onPress: () => onPress(item),
29
+ children: /*#__PURE__*/_jsx(KLabel.Text, {
30
+ typo: "TextMdNormal",
31
+ color: KColors.gray.dark,
32
+ numberOfLines: 1,
33
+ children: item.title
34
+ })
35
+ }), /*#__PURE__*/_jsx(KContainer.Touchable, {
36
+ onPress: handlePressOptions,
37
+ children: /*#__PURE__*/_jsx(KImage.VectorIcons, {
38
+ name: "more-horizontal-b",
39
+ size: 20,
40
+ color: KColors.gray.dark,
41
+ style: styles.menuIcon
42
+ })
43
+ })]
44
+ })
45
+ );
30
46
  });
31
47
  SessionItem.displayName = 'SessionItem';
32
48
  const styles = StyleSheet.create({
@@ -40,7 +56,7 @@ const styles = StyleSheet.create({
40
56
  // marginVertical: KSpacingValue['0.25rem'],
41
57
  },
42
58
  sessionItemActive: {
43
- backgroundColor: KColors.primary.lightest
59
+ backgroundColor: KColors.hexToRgba(KColors.primary.normal, 0.1)
44
60
  },
45
61
  sessionItemTouchable: {
46
62
  flex: 1
@@ -1 +1 @@
1
- {"version":3,"names":["memo","StyleSheet","KContainer","KLabel","KColors","KSpacingValue","KImage","jsx","_jsx","jsxs","_jsxs","SessionItem","item","isActive","onPress","View","style","styles","sessionItem","sessionItemActive","children","Touchable","sessionItemTouchable","Text","typo","color","gray","dark","numberOfLines","title","VectorIcons","name","size","menuIcon","displayName","create","flexDirection","alignItems","height","borderRadius","backgroundColor","primary","lightest","flex","marginLeft"],"sourceRoot":"../../../../src","sources":["components/Drawer/SessionItem.tsx"],"mappings":";;AAAA,SAASA,IAAI,QAAQ,OAAO;AAC5B,SAASC,UAAU,QAAQ,cAAc;AACzC,SACEC,UAAU,EACVC,MAAM,EACNC,OAAO,EACPC,aAAa,EACbC,MAAM,QACD,eAAe;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AASvB,MAAMC,WAAW,gBAAGX,IAAI,CAAmB,CAAC;EAAEY,IAAI;EAAEC,QAAQ;EAAEC;AAAQ,CAAC,KAAK;EAC1E,oBACEJ,KAAA,CAACR,UAAU,CAACa,IAAI;IACdC,KAAK,EAAE,CAACC,MAAM,CAACC,WAAW,EAAEL,QAAQ,IAAII,MAAM,CAACE,iBAAiB,CAAE;IAAAC,QAAA,gBAElEZ,IAAA,CAACN,UAAU,CAACmB,SAAS;MACnBL,KAAK,EAAEC,MAAM,CAACK,oBAAqB;MACnCR,OAAO,EAAEA,CAAA,KAAMA,OAAO,CAACF,IAAI,CAAE;MAAAQ,QAAA,eAE7BZ,IAAA,CAACL,MAAM,CAACoB,IAAI;QACVC,IAAI,EAAC,cAAc;QACnBC,KAAK,EAAErB,OAAO,CAACsB,IAAI,CAACC,IAAK;QACzBC,aAAa,EAAE,CAAE;QAAAR,QAAA,EAEhBR,IAAI,CAACiB;MAAK,CACA;IAAC,CACM,CAAC,eACvBrB,IAAA,CAACF,MAAM,CAACwB,WAAW;MACjBC,IAAI,EAAC,mBAAmB;MACxBC,IAAI,EAAE,EAAG;MACTP,KAAK,EAAErB,OAAO,CAACsB,IAAI,CAACC,IAAK;MACzBX,KAAK,EAAEC,MAAM,CAACgB;IAAS,CACxB,CAAC;EAAA,CACa,CAAC;AAEtB,CAAC,CAAC;AAEFtB,WAAW,CAACuB,WAAW,GAAG,aAAa;AAEvC,MAAMjB,MAAM,GAAGhB,UAAU,CAACkC,MAAM,CAAC;EAC/BjB,WAAW,EAAE;IACXkB,aAAa,EAAE,KAAK;IACpBC,UAAU,EAAE,QAAQ;IACpBC,MAAM,EAAE,EAAE;IACV;IACA;IACAC,YAAY,EAAElC,aAAa,CAAC,QAAQ;IACpC;EACF,CAAC;EACDc,iBAAiB,EAAE;IACjBqB,eAAe,EAAEpC,OAAO,CAACqC,OAAO,CAACC;EACnC,CAAC;EACDpB,oBAAoB,EAAE;IACpBqB,IAAI,EAAE;EACR,CAAC;EACDV,QAAQ,EAAE;IACRW,UAAU,EAAEvC,aAAa,CAAC,QAAQ;EACpC;AACF,CAAC,CAAC;AAEF,eAAeM,WAAW","ignoreList":[]}
1
+ {"version":3,"names":["memo","useCallback","StyleSheet","KContainer","KLabel","KColors","KSpacingValue","KImage","openSessionOptionsBottomSheet","useChatContext","jsx","_jsx","jsxs","_jsxs","SessionItem","item","isActive","onPress","closeDrawer","logGA","handlePressOptions","View","style","styles","sessionItem","sessionItemActive","children","Touchable","sessionItemTouchable","Text","typo","color","gray","dark","numberOfLines","title","VectorIcons","name","size","menuIcon","displayName","create","flexDirection","alignItems","height","borderRadius","backgroundColor","hexToRgba","primary","normal","flex","marginLeft"],"sourceRoot":"../../../../src","sources":["components/Drawer/SessionItem.tsx"],"mappings":";;AAAA,SAASA,IAAI,EAAEC,WAAW,QAAQ,OAAO;AACzC,SAASC,UAAU,QAAQ,cAAc;AACzC,SACEC,UAAU,EACVC,MAAM,EACNC,OAAO,EACPC,aAAa,EACbC,MAAM,QACD,eAAe;AAEtB,SAASC,6BAA6B,QAAQ,gCAA6B;AAC3E,SAASC,cAAc,QAAQ,8BAA2B;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAQ3D,MAAMC,WAAW,gBAAGd,IAAI,CAAmB,CAAC;EAAEe,IAAI;EAAEC,QAAQ;EAAEC;AAAQ,CAAC,KAAK;EAC1E,MAAM;IAAEC,WAAW;IAAEC;EAAM,CAAC,GAAGV,cAAc,CAAC,CAAC;EAE/C,MAAMW,kBAAkB,GAAGnB,WAAW,CAAC,MAAM;IAC3CO,6BAA6B,CAACO,IAAI,EAAEG,WAAW,EAAEC,KAAK,CAAC;EACzD,CAAC,EAAE,CAACJ,IAAI,EAAEG,WAAW,EAAEC,KAAK,CAAC,CAAC;EAE9B;IAAA;IACE;IACAN,KAAA,CAACV,UAAU,CAACkB,IAAI;MACdC,KAAK,EAAE,CAACC,MAAM,CAACC,WAAW,EAAER,QAAQ,IAAIO,MAAM,CAACE,iBAAiB,CAAE;MAAAC,QAAA,gBAGlEf,IAAA,CAACR,UAAU,CAACwB,SAAS;QACnBL,KAAK,EAAEC,MAAM,CAACK,oBAAqB;QACnCX,OAAO,EAAEA,CAAA,KAAMA,OAAO,CAACF,IAAI,CAAE;QAAAW,QAAA,eAG7Bf,IAAA,CAACP,MAAM,CAACyB,IAAI;UACVC,IAAI,EAAC,cAAc;UACnBC,KAAK,EAAE1B,OAAO,CAAC2B,IAAI,CAACC,IAAK;UACzBC,aAAa,EAAE,CAAE;UAAAR,QAAA,EAEhBX,IAAI,CAACoB;QAAK,CACA;MAAC,CACM,CAAC,eAEvBxB,IAAA,CAACR,UAAU,CAACwB,SAAS;QAACV,OAAO,EAAEG,kBAAmB;QAAAM,QAAA,eAChDf,IAAA,CAACJ,MAAM,CAAC6B,WAAW;UACjBC,IAAI,EAAC,mBAAmB;UACxBC,IAAI,EAAE,EAAG;UACTP,KAAK,EAAE1B,OAAO,CAAC2B,IAAI,CAACC,IAAK;UACzBX,KAAK,EAAEC,MAAM,CAACgB;QAAS,CACxB;MAAC,CACkB,CAAC;IAAA,CACR;EAAC;AAEtB,CAAC,CAAC;AAEFzB,WAAW,CAAC0B,WAAW,GAAG,aAAa;AAEvC,MAAMjB,MAAM,GAAGrB,UAAU,CAACuC,MAAM,CAAC;EAC/BjB,WAAW,EAAE;IACXkB,aAAa,EAAE,KAAK;IACpBC,UAAU,EAAE,QAAQ;IACpBC,MAAM,EAAE,EAAE;IACV;IACA;IACAC,YAAY,EAAEvC,aAAa,CAAC,QAAQ;IACpC;EACF,CAAC;EACDmB,iBAAiB,EAAE;IACjBqB,eAAe,EAAEzC,OAAO,CAAC0C,SAAS,CAAC1C,OAAO,CAAC2C,OAAO,CAACC,MAAM,EAAE,GAAG;EAChE,CAAC;EACDrB,oBAAoB,EAAE;IACpBsB,IAAI,EAAE;EACR,CAAC;EACDX,QAAQ,EAAE;IACRY,UAAU,EAAE7C,aAAa,CAAC,QAAQ;EACpC;AACF,CAAC,CAAC;AAEF,eAAeQ,WAAW","ignoreList":[]}
@@ -28,15 +28,12 @@ const SessionList = /*#__PURE__*/memo(({
28
28
  onPress: onPressSession
29
29
  }), [onPressSession]);
30
30
  const keyExtractor = useCallback(item => item.id, []);
31
- return /*#__PURE__*/ /* @ts-expect-error - FlashList type issue */_jsx(FlashList, {
31
+ return /*#__PURE__*/_jsx(FlashList, {
32
32
  data: sessions,
33
33
  renderItem: renderItem,
34
34
  keyExtractor: keyExtractor,
35
35
  contentContainerStyle: styles.listContainer,
36
- refreshControl:
37
- /*#__PURE__*/
38
- /* @ts-expect-error - React Native RefreshControl type issue */
39
- _jsx(RefreshControl, {
36
+ refreshControl: /*#__PURE__*/_jsx(RefreshControl, {
40
37
  refreshing: isRefetching,
41
38
  onRefresh: onRefresh
42
39
  }),
@@ -1 +1 @@
1
- {"version":3,"names":["memo","useCallback","StyleSheet","RefreshControl","FlashList","KSpacingValue","SessionItem","EmptyState","KContainer","jsx","_jsx","ItemSeparator","View","height","SessionList","sessions","activeSessionId","_activeSessionId","isLoading","isRefetching","onPressSession","onRefresh","onEndReached","renderItem","item","isActive","onPress","keyExtractor","id","data","contentContainerStyle","styles","listContainer","refreshControl","refreshing","onEndReachedThreshold","ItemSeparatorComponent","estimatedItemSize","ListEmptyComponent","displayName","create","flexGrow","paddingHorizontal"],"sourceRoot":"../../../../src","sources":["components/Drawer/SessionList.tsx"],"mappings":";;AAAA,SAASA,IAAI,EAAEC,WAAW,QAAQ,OAAO;AACzC,SAASC,UAAU,EAAEC,cAAc,QAAQ,cAAc;AACzD,SAASC,SAAS,QAAQ,qBAAqB;AAC/C,SAASC,aAAa,QAAQ,eAAe;AAE7C,OAAOC,WAAW,MAAM,kBAAe;AACvC,OAAOC,UAAU,MAAM,iBAAc;AACrC,SAASC,UAAU,QAAQ,eAAe;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE3C,MAAMC,aAAa,GAAGA,CAAA,kBAAMD,IAAA,CAACF,UAAU,CAACI,IAAI;EAACC,MAAM,EAAE;AAAE,CAAE,CAAC;AAc1D,MAAMC,WAAW,gBAAGd,IAAI,CACtB,CAAC;EACCe,QAAQ;EACRC,eAAe,EAAEC,gBAAgB;EACjCC,SAAS;EACTC,YAAY;EACZC,cAAc;EACdC,SAAS;EACTC;AACF,CAAC,KAAK;EACJ,MAAMC,UAAU,GAAGtB,WAAW,CAC5B,CAAC;IAAEuB;EAAkC,CAAC,kBACpCd,IAAA,CAACJ,WAAW;IAACkB,IAAI,EAAEA,IAAK;IAACC,QAAQ,EAAE,KAAM;IAACC,OAAO,EAAEN;EAAe,CAAE,CACrE,EACD,CAACA,cAAc,CACjB,CAAC;EAED,MAAMO,YAAY,GAAG1B,WAAW,CAAEuB,IAAuB,IAAKA,IAAI,CAACI,EAAE,EAAE,EAAE,CAAC;EAE1E,qBACE,6CACAlB,IAAA,CAACN,SAAS;IACRyB,IAAI,EAAEd,QAAS;IACfQ,UAAU,EAAEA,UAAW;IACvBI,YAAY,EAAEA,YAAa;IAC3BG,qBAAqB,EAAEC,MAAM,CAACC,aAAc;IAC5CC,cAAc;IAAA;IACZ;IACAvB,IAAA,CAACP,cAAc;MAAC+B,UAAU,EAAEf,YAAa;MAACE,SAAS,EAAEA;IAAU,CAAE,CAClE;IACDC,YAAY,EAAEA,YAAa;IAC3Ba,qBAAqB,EAAE,GAAI;IAC3BC,sBAAsB,EAAEzB,aAAc;IACtC0B,iBAAiB,EAAE,EAAG;IACtBC,kBAAkB,EAAE,CAACpB,SAAS,gBAAGR,IAAA,CAACH,UAAU,IAAE,CAAC,GAAG;EAAK,CACxD,CAAC;AAEN,CACF,CAAC;AAEDO,WAAW,CAACyB,WAAW,GAAG,aAAa;AAEvC,MAAMR,MAAM,GAAG7B,UAAU,CAACsC,MAAM,CAAC;EAC/BR,aAAa,EAAE;IACbS,QAAQ,EAAE,CAAC;IACXC,iBAAiB,EAAErC,aAAa,CAAC,MAAM;EACzC;AACF,CAAC,CAAC;AAEF,eAAeS,WAAW","ignoreList":[]}
1
+ {"version":3,"names":["memo","useCallback","StyleSheet","RefreshControl","FlashList","KSpacingValue","SessionItem","EmptyState","KContainer","jsx","_jsx","ItemSeparator","View","height","SessionList","sessions","activeSessionId","_activeSessionId","isLoading","isRefetching","onPressSession","onRefresh","onEndReached","renderItem","item","isActive","onPress","keyExtractor","id","data","contentContainerStyle","styles","listContainer","refreshControl","refreshing","onEndReachedThreshold","ItemSeparatorComponent","estimatedItemSize","ListEmptyComponent","displayName","create","flexGrow","paddingHorizontal"],"sourceRoot":"../../../../src","sources":["components/Drawer/SessionList.tsx"],"mappings":";;AAAA,SAASA,IAAI,EAAEC,WAAW,QAAQ,OAAO;AACzC,SAASC,UAAU,EAAEC,cAAc,QAAQ,cAAc;AACzD,SAASC,SAAS,QAAQ,qBAAqB;AAC/C,SAASC,aAAa,QAAQ,eAAe;AAE7C,OAAOC,WAAW,MAAM,kBAAe;AACvC,OAAOC,UAAU,MAAM,iBAAc;AACrC,SAASC,UAAU,QAAQ,eAAe;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE3C,MAAMC,aAAa,GAAGA,CAAA,kBAAMD,IAAA,CAACF,UAAU,CAACI,IAAI;EAACC,MAAM,EAAE;AAAE,CAAE,CAAC;AAc1D,MAAMC,WAAW,gBAAGd,IAAI,CACtB,CAAC;EACCe,QAAQ;EACRC,eAAe,EAAEC,gBAAgB;EACjCC,SAAS;EACTC,YAAY;EACZC,cAAc;EACdC,SAAS;EACTC;AACF,CAAC,KAAK;EACJ,MAAMC,UAAU,GAAGtB,WAAW,CAC5B,CAAC;IAAEuB;EAAkC,CAAC,kBACpCd,IAAA,CAACJ,WAAW;IAACkB,IAAI,EAAEA,IAAK;IAACC,QAAQ,EAAE,KAAM;IAACC,OAAO,EAAEN;EAAe,CAAE,CACrE,EACD,CAACA,cAAc,CACjB,CAAC;EAED,MAAMO,YAAY,GAAG1B,WAAW,CAAEuB,IAAuB,IAAKA,IAAI,CAACI,EAAE,EAAE,EAAE,CAAC;EAE1E,oBACElB,IAAA,CAACN,SAAS;IACRyB,IAAI,EAAEd,QAAS;IACfQ,UAAU,EAAEA,UAAW;IACvBI,YAAY,EAAEA,YAAa;IAC3BG,qBAAqB,EAAEC,MAAM,CAACC,aAAc;IAC5CC,cAAc,eACZvB,IAAA,CAACP,cAAc;MAAC+B,UAAU,EAAEf,YAAa;MAACE,SAAS,EAAEA;IAAU,CAAE,CAClE;IACDC,YAAY,EAAEA,YAAa;IAC3Ba,qBAAqB,EAAE,GAAI;IAC3BC,sBAAsB,EAAEzB,aAAc;IACtC0B,iBAAiB,EAAE,EAAG;IACtBC,kBAAkB,EAAE,CAACpB,SAAS,gBAAGR,IAAA,CAACH,UAAU,IAAE,CAAC,GAAG;EAAK,CACxD,CAAC;AAEN,CACF,CAAC;AAEDO,WAAW,CAACyB,WAAW,GAAG,aAAa;AAEvC,MAAMR,MAAM,GAAG7B,UAAU,CAACsC,MAAM,CAAC;EAC/BR,aAAa,EAAE;IACbS,QAAQ,EAAE,CAAC;IACXC,iBAAiB,EAAErC,aAAa,CAAC,MAAM;EACzC;AACF,CAAC,CAAC;AAEF,eAAeS,WAAW","ignoreList":[]}