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,129 @@
1
+ "use strict";
2
+
3
+ import { StyleSheet } from 'react-native';
4
+ import { KContainer, KLabel, KColors, KSpacingValue, KImage } from '@droppii/libs';
5
+ import UIUtils from "../../utils/ui.js";
6
+ import { trans } from "../../translation/index.js";
7
+ import { openRenameSessionPopup } from "./RenameSessionPopup.js";
8
+ import { openShareSessionPopup } from "./ShareSessionPopup.js";
9
+ import { openDeleteSessionPopup } from "./DeleteSessionPopup.js";
10
+ import { GAEvents } from "../../constants/events.js";
11
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
12
+ const OptionItem = ({
13
+ icon,
14
+ label,
15
+ onPress,
16
+ isDanger
17
+ }) => {
18
+ const color = isDanger ? KColors.danger.normal : KColors.gray.dark;
19
+ return (
20
+ /*#__PURE__*/
21
+ // @ts-ignore
22
+ _jsxs(KContainer.Touchable, {
23
+ onPress: onPress,
24
+ style: styles.optionItem,
25
+ children: [/*#__PURE__*/_jsx(KImage.VectorIcons, {
26
+ name: icon,
27
+ size: 20,
28
+ color: color
29
+ }), /*#__PURE__*/_jsx(KLabel.Text, {
30
+ typo: "TextMdMedium",
31
+ color: color,
32
+ style: styles.optionLabel,
33
+ children: label
34
+ })]
35
+ })
36
+ );
37
+ };
38
+ export const openSessionOptionsBottomSheet = (session, closeDrawer, logGA) => {
39
+ const handleRename = () => {
40
+ UIUtils.bottomSheet.dismiss();
41
+ // Close drawer first, then open popup
42
+ closeDrawer?.();
43
+ setTimeout(() => {
44
+ openRenameSessionPopup(session);
45
+ }, 300);
46
+ logGA?.(GAEvents.chatDetailRenameBtnTap, {
47
+ conversation_id: session?.id
48
+ });
49
+ };
50
+ const handleShare = () => {
51
+ UIUtils.bottomSheet.dismiss();
52
+ // Close drawer first, then open popup
53
+ closeDrawer?.();
54
+ setTimeout(() => {
55
+ openShareSessionPopup(session);
56
+ }, 300);
57
+ logGA?.(GAEvents.chatDetailShareBtnTap, {
58
+ conversation_id: session?.id
59
+ });
60
+ };
61
+ const handleDelete = () => {
62
+ UIUtils.bottomSheet.dismiss();
63
+ // Close drawer first, then open popup
64
+ closeDrawer?.();
65
+ setTimeout(() => {
66
+ openDeleteSessionPopup(session, logGA);
67
+ }, 300);
68
+ };
69
+ const OptionsContent = () => {
70
+ return (
71
+ /*#__PURE__*/
72
+ // @ts-ignore
73
+ _jsxs(KContainer.View, {
74
+ style: styles.container,
75
+ children: [/*#__PURE__*/_jsx(OptionItem, {
76
+ icon: "edit-o",
77
+ label: trans('chatbot:session_rename'),
78
+ onPress: handleRename
79
+ }), /*#__PURE__*/_jsx(KContainer.View, {
80
+ style: styles.divider
81
+ }), /*#__PURE__*/_jsx(OptionItem, {
82
+ icon: "share-o",
83
+ label: trans('chatbot:session_share'),
84
+ onPress: handleShare
85
+ }), /*#__PURE__*/_jsx(KContainer.View, {
86
+ style: styles.divider
87
+ }), /*#__PURE__*/_jsx(OptionItem, {
88
+ icon: "trash-alt-o-1",
89
+ label: trans('chatbot:session_delete'),
90
+ onPress: handleDelete,
91
+ isDanger: true
92
+ })]
93
+ })
94
+ );
95
+ };
96
+ UIUtils.bottomSheet.open({
97
+ header: {
98
+ title: {
99
+ text: trans('chatbot:session_options_title')
100
+ },
101
+ showCloseButton: true
102
+ },
103
+ body: {
104
+ renderContent: () => /*#__PURE__*/_jsx(OptionsContent, {})
105
+ },
106
+ touchOutsideToDismiss: true
107
+ });
108
+ };
109
+ const styles = StyleSheet.create({
110
+ container: {
111
+ paddingHorizontal: KSpacingValue['1rem'],
112
+ paddingVertical: KSpacingValue['0.5rem']
113
+ },
114
+ optionItem: {
115
+ flexDirection: 'row',
116
+ alignItems: 'center',
117
+ paddingVertical: KSpacingValue['1rem'],
118
+ paddingHorizontal: KSpacingValue['0.5rem']
119
+ },
120
+ optionLabel: {
121
+ marginLeft: KSpacingValue['0.75rem']
122
+ },
123
+ divider: {
124
+ height: 1,
125
+ backgroundColor: KColors.border.light,
126
+ marginHorizontal: KSpacingValue['0.5rem']
127
+ }
128
+ });
129
+ //# sourceMappingURL=SessionOptionsBottomSheet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["StyleSheet","KContainer","KLabel","KColors","KSpacingValue","KImage","UIUtils","trans","openRenameSessionPopup","openShareSessionPopup","openDeleteSessionPopup","GAEvents","jsx","_jsx","jsxs","_jsxs","OptionItem","icon","label","onPress","isDanger","color","danger","normal","gray","dark","Touchable","style","styles","optionItem","children","VectorIcons","name","size","Text","typo","optionLabel","openSessionOptionsBottomSheet","session","closeDrawer","logGA","handleRename","bottomSheet","dismiss","setTimeout","chatDetailRenameBtnTap","conversation_id","id","handleShare","chatDetailShareBtnTap","handleDelete","OptionsContent","View","container","divider","open","header","title","text","showCloseButton","body","renderContent","touchOutsideToDismiss","create","paddingHorizontal","paddingVertical","flexDirection","alignItems","marginLeft","height","backgroundColor","border","light","marginHorizontal"],"sourceRoot":"../../../../src","sources":["components/Drawer/SessionOptionsBottomSheet.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,132 @@
1
+ "use strict";
2
+
3
+ import { useCallback, useState, useEffect } from 'react';
4
+ import { StyleSheet } from 'react-native';
5
+ import { KContainer, KLabel, KColors, KSpacingValue, KInput } from '@droppii/libs';
6
+ import { useShareSession } from "../../hooks/session/useShareSession.js";
7
+ import UIUtils from "../../utils/ui.js";
8
+ import { trans } from "../../translation/index.js";
9
+ import Clipboard from '@react-native-clipboard/clipboard';
10
+ import { useChatContext } from "../../context/ChatContext.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 ShareContent = ({
18
+ session,
19
+ onConfirmRef
20
+ }) => {
21
+ const {
22
+ mutateAsync: shareSession
23
+ } = useShareSession();
24
+ const {
25
+ chatbotUrl,
26
+ logGA
27
+ } = useChatContext();
28
+ const [shareUrl, setShareUrl] = useState('');
29
+
30
+ // Generate share URL based on chatbotUrl
31
+ useEffect(() => {
32
+ setShareUrl(`${chatbotUrl}/shared/${session.id}`);
33
+ }, [chatbotUrl, session.id]);
34
+
35
+ // Expose handleConfirm via ref
36
+ onConfirmRef.current = useCallback(async () => {
37
+ try {
38
+ const response = await shareSession(session.id);
39
+ if (response) {
40
+ // Copy the generated share URL to clipboard
41
+ Clipboard.setString(shareUrl);
42
+ UIUtils.toast.showSuccess(trans('chatbot:share_session_success'));
43
+ UIUtils.popup.dismiss();
44
+ logGA(GAEvents.shareChatModalCopyBtnTap, {
45
+ conversation_id: session.id
46
+ });
47
+ }
48
+ } catch (err) {
49
+ UIUtils.toast.showError(err);
50
+ }
51
+ }, [session.id, shareSession, shareUrl, logGA]);
52
+ const truncatedName = truncateText(session.title, 50);
53
+ const descriptionTemplate = trans('chatbot:share_session_description');
54
+ const parts = descriptionTemplate.split('{sessionName}');
55
+ return (
56
+ /*#__PURE__*/
57
+ // @ts-ignore
58
+ _jsxs(KContainer.View, {
59
+ style: styles.container,
60
+ children: [/*#__PURE__*/_jsxs(KLabel.Text, {
61
+ typo: "TextMdNormal",
62
+ color: KColors.gray.dark,
63
+ style: styles.description,
64
+ children: [parts[0], /*#__PURE__*/_jsx(KLabel.Text, {
65
+ typo: "TextMdBold",
66
+ color: KColors.gray.dark,
67
+ children: truncatedName
68
+ }), parts[1]]
69
+ }), /*#__PURE__*/_jsx(KContainer.View, {
70
+ style: [styles.inputWrapper],
71
+ children: /*#__PURE__*/_jsx(KInput.TextBox, {
72
+ value: shareUrl,
73
+ label: trans('chatbot:share_session_link_label'),
74
+ labelTypo: "TextMdBold",
75
+ disabled: true,
76
+ withBorder: true,
77
+ height: 40,
78
+ border: "entire",
79
+ radius: "borderless"
80
+ })
81
+ })]
82
+ })
83
+ );
84
+ };
85
+ export const openShareSessionPopup = session => {
86
+ const onConfirmRef = {
87
+ current: null
88
+ };
89
+ UIUtils.popup.open({
90
+ header: {
91
+ title: {
92
+ text: trans('chatbot:share_session_title')
93
+ },
94
+ showCloseButton: true,
95
+ alignment: 'left'
96
+ },
97
+ body: {
98
+ scrollable: false,
99
+ renderContent: () => /*#__PURE__*/_jsx(ShareContent, {
100
+ session: session,
101
+ onConfirmRef: onConfirmRef
102
+ })
103
+ },
104
+ actions: {
105
+ type: 'horizontal-button',
106
+ buttons: [{
107
+ kind: 'light',
108
+ label: trans('chatbot:share_session_cancel'),
109
+ weight: 'medium',
110
+ onPress: () => UIUtils.popup.dismiss()
111
+ }, {
112
+ kind: 'primary',
113
+ label: trans('chatbot:share_session_confirm'),
114
+ weight: 'medium',
115
+ onPress: () => onConfirmRef.current?.()
116
+ }]
117
+ }
118
+ });
119
+ };
120
+ const styles = StyleSheet.create({
121
+ container: {
122
+ paddingVertical: KSpacingValue['1rem'],
123
+ paddingHorizontal: KSpacingValue['1rem']
124
+ },
125
+ description: {
126
+ marginBottom: KSpacingValue['1rem']
127
+ },
128
+ inputWrapper: {
129
+ paddingBottom: KSpacingValue['0.5rem']
130
+ }
131
+ });
132
+ //# sourceMappingURL=ShareSessionPopup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useCallback","useState","useEffect","StyleSheet","KContainer","KLabel","KColors","KSpacingValue","KInput","useShareSession","UIUtils","trans","Clipboard","useChatContext","GAEvents","jsx","_jsx","jsxs","_jsxs","truncateText","text","maxLength","length","substring","ShareContent","session","onConfirmRef","mutateAsync","shareSession","chatbotUrl","logGA","shareUrl","setShareUrl","id","current","response","setString","toast","showSuccess","popup","dismiss","shareChatModalCopyBtnTap","conversation_id","err","showError","truncatedName","title","descriptionTemplate","parts","split","View","style","styles","container","children","Text","typo","color","gray","dark","description","inputWrapper","TextBox","value","label","labelTypo","disabled","withBorder","height","border","radius","openShareSessionPopup","open","header","showCloseButton","alignment","body","scrollable","renderContent","actions","type","buttons","kind","weight","onPress","create","paddingVertical","paddingHorizontal","marginBottom","paddingBottom"],"sourceRoot":"../../../../src","sources":["components/Drawer/ShareSessionPopup.tsx"],"mappings":"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","ignoreList":[]}
@@ -6,7 +6,10 @@ import { useFetchSuggestions } from "../../hooks/suggestions/useFetchSuggestions
6
6
  import SuggestionItem from "./SuggestionItem.js";
7
7
  import { useSendMessage } from "../../hooks/message/useSendMessage.js";
8
8
  import debounce from 'lodash/debounce';
9
- import trans from "../../translation/index.js";
9
+ import { SendActionLogType } from "../../types/index.js";
10
+ import { trans } from "../../translation/index.js";
11
+ import { useChatContext } from "../../context/ChatContext.js";
12
+ import { GAEvents } from "../../constants/events.js";
10
13
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
11
14
  const ChatEmpty = () => {
12
15
  const {
@@ -15,8 +18,15 @@ const ChatEmpty = () => {
15
18
  const {
16
19
  onSendMessage
17
20
  } = useSendMessage();
18
- const onPress = debounce(item => {
19
- onSendMessage(item.content);
21
+ const logGA = useChatContext().logGA;
22
+ const onPress = debounce((item, index) => {
23
+ logGA(GAEvents.newChatNewChatPrmSuggTap, {
24
+ suggestion_id: item.suggestion_id,
25
+ suggestion_content: item.content,
26
+ suggestion_cate: item.category,
27
+ order: index
28
+ });
29
+ onSendMessage(item.content, undefined, SendActionLogType.promptSuggestion);
20
30
  }, 200);
21
31
  return /*#__PURE__*/_jsxs(KContainer.ScrollView, {
22
32
  contentContainerStyle: styles.container,
@@ -38,8 +48,9 @@ const ChatEmpty = () => {
38
48
  color: KColors.gray.normal,
39
49
  children: trans('chat_empty_description_2')
40
50
  })]
41
- }), data?.suggestions?.map(item => /*#__PURE__*/_jsx(SuggestionItem, {
51
+ }), data?.suggestions?.map((item, index) => /*#__PURE__*/_jsx(SuggestionItem, {
42
52
  item: item,
53
+ index: index,
43
54
  onPressItem: onPress
44
55
  }, item.suggestion_id)), /*#__PURE__*/_jsx(KLabel.Text, {
45
56
  typo: "TextSmNormal",
@@ -1 +1 @@
1
- {"version":3,"names":["KColors","KContainer","KLabel","KSpacingValue","StyleSheet","Platform","useFetchSuggestions","SuggestionItem","useSendMessage","debounce","trans","jsx","_jsx","jsxs","_jsxs","ChatEmpty","data","onSendMessage","onPress","item","content","ScrollView","contentContainerStyle","styles","container","style","transformStyle","children","Text","typo","center","View","color","gray","normal","suggestions","map","onPressItem","suggestion_id","light","textAlign","create","flexGrow","justifyContent","alignItems","padding","gap","transform","OS","scale","scaleY"],"sourceRoot":"../../../../src","sources":["components/chat/ChatEmpty.tsx"],"mappings":";;AAAA,SAASA,OAAO,EAAEC,UAAU,EAAEC,MAAM,EAAEC,aAAa,QAAQ,eAAe;AAC1E,SAASC,UAAU,EAAEC,QAAQ,QAAQ,cAAc;AACnD,SAASC,mBAAmB,QAAQ,gDAA6C;AACjF,OAAOC,cAAc,MAAM,qBAAkB;AAC7C,SAASC,cAAc,QAAQ,uCAAoC;AACnE,OAAOC,QAAQ,MAAM,iBAAiB;AAEtC,OAAOC,KAAK,MAAM,4BAAmB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAEtC,MAAMC,SAAS,GAAGA,CAAA,KAAM;EACtB,MAAM;IAAEC;EAAK,CAAC,GAAGV,mBAAmB,CAAC,CAAC;EACtC,MAAM;IAAEW;EAAc,CAAC,GAAGT,cAAc,CAAC,CAAC;EAE1C,MAAMU,OAAO,GAAGT,QAAQ,CAAEU,IAAqB,IAAK;IAClDF,aAAa,CAACE,IAAI,CAACC,OAAO,CAAC;EAC7B,CAAC,EAAE,GAAG,CAAC;EAEP,oBACEN,KAAA,CAACb,UAAU,CAACoB,UAAU;IACpBC,qBAAqB,EAAEC,MAAM,CAACC,SAAU;IACxCC,KAAK,EAAEF,MAAM,CAACG,cAAe;IAAAC,QAAA,gBAE7Bf,IAAA,CAACV,MAAM,CAAC0B,IAAI;MAACC,IAAI,EAAC,eAAe;MAACC,MAAM;MAAAH,QAAA,EACrCjB,KAAK,CAAC,kBAAkB;IAAC,CACf,CAAC,eACdI,KAAA,CAACb,UAAU,CAAC8B,IAAI;MAACD,MAAM;MAAAH,QAAA,gBACrBf,IAAA,CAACV,MAAM,CAAC0B,IAAI;QAACC,IAAI,EAAC,cAAc;QAACC,MAAM;QAACE,KAAK,EAAEhC,OAAO,CAACiC,IAAI,CAACC,MAAO;QAAAP,QAAA,EAChEjB,KAAK,CAAC,0BAA0B;MAAC,CACvB,CAAC,eACdE,IAAA,CAACV,MAAM,CAAC0B,IAAI;QAACC,IAAI,EAAC,cAAc;QAACC,MAAM;QAACE,KAAK,EAAEhC,OAAO,CAACiC,IAAI,CAACC,MAAO;QAAAP,QAAA,EAChEjB,KAAK,CAAC,0BAA0B;MAAC,CACvB,CAAC;IAAA,CACC,CAAC,EACjBM,IAAI,EAAEmB,WAAW,EAAEC,GAAG,CAAEjB,IAAqB,iBAC5CP,IAAA,CAACL,cAAc;MAEbY,IAAI,EAAEA,IAAK;MACXkB,WAAW,EAAEnB;IAAQ,GAFhBC,IAAI,CAACmB,aAGX,CACF,CAAC,eACF1B,IAAA,CAACV,MAAM,CAAC0B,IAAI;MACVC,IAAI,EAAC,cAAc;MACnBG,KAAK,EAAEhC,OAAO,CAACiC,IAAI,CAACM,KAAM;MAC1BC,SAAS,EAAC,QAAQ;MAAAb,QAAA,EAEjBjB,KAAK,CAAC,gBAAgB;IAAC,CACb,CAAC;EAAA,CACO,CAAC;AAE5B,CAAC;AAED,eAAeK,SAAS;AAExB,MAAMQ,MAAM,GAAGnB,UAAU,CAACqC,MAAM,CAAC;EAC/BjB,SAAS,EAAE;IACTkB,QAAQ,EAAE,CAAC;IACXC,cAAc,EAAE,QAAQ;IACxBC,UAAU,EAAE,QAAQ;IACpBC,OAAO,EAAE1C,aAAa,CAAC,SAAS,CAAC;IACjC2C,GAAG,EAAE3C,aAAa,CAAC,QAAQ;EAC7B,CAAC;EACDuB,cAAc,EAAE;IACdqB,SAAS,EAAE,CAAC1C,QAAQ,CAAC2C,EAAE,KAAK,SAAS,GAAG;MAAEC,KAAK,EAAE,CAAC;IAAE,CAAC,GAAG;MAAEC,MAAM,EAAE,CAAC;IAAE,CAAC;EACxE;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["KColors","KContainer","KLabel","KSpacingValue","StyleSheet","Platform","useFetchSuggestions","SuggestionItem","useSendMessage","debounce","SendActionLogType","trans","useChatContext","GAEvents","jsx","_jsx","jsxs","_jsxs","ChatEmpty","data","onSendMessage","logGA","onPress","item","index","newChatNewChatPrmSuggTap","suggestion_id","suggestion_content","content","suggestion_cate","category","order","undefined","promptSuggestion","ScrollView","contentContainerStyle","styles","container","style","transformStyle","children","Text","typo","center","View","color","gray","normal","suggestions","map","onPressItem","light","textAlign","create","flexGrow","justifyContent","alignItems","padding","gap","transform","OS","scale","scaleY"],"sourceRoot":"../../../../src","sources":["components/chat/ChatEmpty.tsx"],"mappings":"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","ignoreList":[]}
@@ -7,6 +7,8 @@ import { ImageBackground, StatusBar, StyleSheet } from 'react-native';
7
7
  import { useSafeAreaInsets } from 'react-native-safe-area-context';
8
8
  import useSessionStore from "../../store/session.js";
9
9
  import { useChatContext } from "../../context/ChatContext.js";
10
+ import { SessionLogType } from "../../types/chat.js";
11
+ import { GAEvents } from "../../constants/events.js";
10
12
 
11
13
  // Type assertion to fix TypeScript issue with React Native components
12
14
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
@@ -17,11 +19,15 @@ export const ChatHeader = () => {
17
19
  const setSessionId = useSessionStore(state => state.setSessionId);
18
20
  const {
19
21
  cartButton,
20
- openDrawer
22
+ openDrawer,
23
+ logGA
21
24
  } = useChatContext();
22
- const onPressNewSession = () => {
23
- setSessionId(undefined);
24
- };
25
+ const onPressNewSession = useCallback(() => {
26
+ setSessionId(undefined, SessionLogType.newChatBtn);
27
+ logGA(GAEvents.newChatCreateBtnTap, {
28
+ button_type: 'quick_button'
29
+ });
30
+ }, [setSessionId, logGA]);
25
31
  const renderStatusBar = useCallback(() => {
26
32
  return /*#__PURE__*/_jsx(KContainer.View, {
27
33
  height: insets.top,
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","KColors","KContainer","KImage","KLabel","KSpacingValue","images","ImageBackground","StatusBar","StyleSheet","useSafeAreaInsets","useSessionStore","useChatContext","jsx","_jsx","jsxs","_jsxs","StatusBarComponent","ImageBackgroundComponent","ChatHeader","insets","setSessionId","state","cartButton","openDrawer","onPressNewSession","undefined","renderStatusBar","View","height","top","background","children","translucent","source","bg_header","resizeMode","style","styles","header","Touchable","button","onPress","VectorIcons","name","size","color","white","Text","flex","typo","create","paddingHorizontal","paddingVertical","flexDirection","gap","alignItems","width","justifyContent"],"sourceRoot":"../../../../src","sources":["components/chat/ChatHeader.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","KColors","KContainer","KImage","KLabel","KSpacingValue","images","ImageBackground","StatusBar","StyleSheet","useSafeAreaInsets","useSessionStore","useChatContext","SessionLogType","GAEvents","jsx","_jsx","jsxs","_jsxs","StatusBarComponent","ImageBackgroundComponent","ChatHeader","insets","setSessionId","state","cartButton","openDrawer","logGA","onPressNewSession","undefined","newChatBtn","newChatCreateBtnTap","button_type","renderStatusBar","View","height","top","background","children","translucent","source","bg_header","resizeMode","style","styles","header","Touchable","button","onPress","VectorIcons","name","size","color","white","Text","flex","typo","create","paddingHorizontal","paddingVertical","flexDirection","gap","alignItems","width","justifyContent"],"sourceRoot":"../../../../src","sources":["components/chat/ChatHeader.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,23 +1,34 @@
1
1
  "use strict";
2
2
 
3
- import { FlatList, StyleSheet, DeviceEventEmitter } from 'react-native';
3
+ import { FlatList, StyleSheet, DeviceEventEmitter, View } from 'react-native';
4
+ import { useCallback, useRef, useEffect, useState } from 'react';
4
5
  import ChatEmpty from "./ChatEmpty.js";
5
6
  import ChatItem from "./item/index.js";
6
- import { KSpacingValue } from '@droppii/libs';
7
- import { useCallback, useRef } from 'react';
8
- import { useEffect } from 'react';
9
- import { events } from "../../constants/events.js";
10
-
11
- // Type assertion to fix TypeScript issue with React Native components
12
- import { jsx as _jsx } from "react/jsx-runtime";
7
+ import { KSpacingValue, KColors, KImage, KContainer } from '@droppii/libs';
8
+ import { events, GAEvents } from "../../constants/events.js";
9
+ import { useChatContext } from "../../context/ChatContext.js";
10
+ import useSessionStore from "../../store/session.js";
11
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
12
  const FlatListComponent = FlatList;
14
13
  const ChatMessageList = ({
15
14
  messageList = []
16
15
  }) => {
16
+ const logGA = useChatContext().logGA;
17
+ const sessionId = useSessionStore(state => state.sessionId);
17
18
  const flatListRef = useRef(null);
18
19
  const scrollOffsetRef = useRef(0);
20
+ const [showScrollToBottom, setShowScrollToBottom] = useState(false);
19
21
  const onScroll = useCallback(event => {
20
- scrollOffsetRef.current = event?.nativeEvent?.contentOffset?.y;
22
+ const offsetY = event?.nativeEvent?.contentOffset?.y ?? 0;
23
+ scrollOffsetRef.current = offsetY;
24
+ const threshold = 50;
25
+ setShowScrollToBottom(offsetY > threshold);
26
+ }, []);
27
+ const scrollToBottom = useCallback(() => {
28
+ flatListRef.current?.scrollToOffset({
29
+ offset: 0,
30
+ animated: true
31
+ }); // inverted => bottom = offset 0
21
32
  }, []);
22
33
  useEffect(() => {
23
34
  const subExpandThinkingStep = DeviceEventEmitter.addListener(events.expandThinkingStep, isExpand => {
@@ -37,21 +48,46 @@ const ChatMessageList = ({
37
48
  subExpandThinkingStep.remove();
38
49
  };
39
50
  }, []);
40
- return /*#__PURE__*/_jsx(FlatListComponent, {
41
- ref: flatListRef,
42
- data: messageList,
43
- renderItem: ({
44
- item,
45
- index
46
- }) => /*#__PURE__*/_jsx(ChatItem, {
47
- item: item,
48
- index: index
49
- }),
50
- keyExtractor: item => item.id,
51
- contentContainerStyle: styles.container,
52
- inverted: true,
53
- ListEmptyComponent: /*#__PURE__*/_jsx(ChatEmpty, {}),
54
- onScroll: onScroll
51
+ useEffect(() => {
52
+ if (!sessionId) {
53
+ logGA(GAEvents.newChatPageView);
54
+ } else {
55
+ logGA(GAEvents.chatDetailPageView, {
56
+ conversation_id: sessionId
57
+ });
58
+ }
59
+ }, [sessionId, logGA]);
60
+ return /*#__PURE__*/_jsxs(View, {
61
+ style: {
62
+ flex: 1
63
+ },
64
+ children: [/*#__PURE__*/_jsx(FlatListComponent, {
65
+ ref: flatListRef,
66
+ data: messageList,
67
+ renderItem: ({
68
+ item,
69
+ index
70
+ }) => /*#__PURE__*/_jsx(ChatItem, {
71
+ item: item,
72
+ index: index
73
+ }),
74
+ keyExtractor: item => item.id,
75
+ contentContainerStyle: styles.container,
76
+ inverted: true,
77
+ ListEmptyComponent: /*#__PURE__*/_jsx(ChatEmpty, {}),
78
+ onScroll: onScroll,
79
+ scrollEventThrottle: 16
80
+ }), showScrollToBottom && /*#__PURE__*/_jsx(KContainer.Touchable, {
81
+ style: styles.scrollButton,
82
+ onPress: scrollToBottom,
83
+ activeOpacity: 0.7,
84
+ center: true,
85
+ children: /*#__PURE__*/_jsx(KImage.VectorIcons, {
86
+ name: "arrow-down-o",
87
+ size: 16,
88
+ color: KColors.palette.gray.w400
89
+ })
90
+ })]
55
91
  });
56
92
  };
57
93
  export default ChatMessageList;
@@ -61,6 +97,21 @@ const styles = StyleSheet.create({
61
97
  gap: KSpacingValue['0.5rem'],
62
98
  paddingVertical: KSpacingValue['1rem'],
63
99
  justifyContent: 'flex-end'
100
+ },
101
+ scrollButton: {
102
+ position: 'absolute',
103
+ bottom: 20,
104
+ right: 16,
105
+ backgroundColor: KColors.white,
106
+ width: 32,
107
+ height: 32,
108
+ borderRadius: 16,
109
+ shadowColor: '#000',
110
+ shadowOpacity: 0.15,
111
+ shadowRadius: 4,
112
+ elevation: 4,
113
+ justifyContent: 'center',
114
+ alignItems: 'center'
64
115
  }
65
116
  });
66
117
  //# sourceMappingURL=ChatMessageList.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["FlatList","StyleSheet","DeviceEventEmitter","ChatEmpty","ChatItem","KSpacingValue","useCallback","useRef","useEffect","events","jsx","_jsx","FlatListComponent","ChatMessageList","messageList","flatListRef","scrollOffsetRef","onScroll","event","current","nativeEvent","contentOffset","y","subExpandThinkingStep","addListener","expandThinkingStep","isExpand","scrollToOffset","offset","animated","setTimeout","error","console","remove","ref","data","renderItem","item","index","keyExtractor","id","contentContainerStyle","styles","container","inverted","ListEmptyComponent","create","flexGrow","gap","paddingVertical","justifyContent"],"sourceRoot":"../../../../src","sources":["components/chat/ChatMessageList.tsx"],"mappings":";;AAAA,SAASA,QAAQ,EAAEC,UAAU,EAAEC,kBAAkB,QAAQ,cAAc;AAEvE,OAAOC,SAAS,MAAM,gBAAa;AACnC,OAAOC,QAAQ,MAAM,iBAAQ;AAC7B,SAASC,aAAa,QAAQ,eAAe;AAE7C,SAASC,WAAW,EAAEC,MAAM,QAAQ,OAAO;AAC3C,SAASC,SAAS,QAAQ,OAAO;AACjC,SAASC,MAAM,QAAQ,2BAAwB;;AAE/C;AAAA,SAAAC,GAAA,IAAAC,IAAA;AACA,MAAMC,iBAAiB,GAAGZ,QAAyC;AAKnE,MAAMa,eAAe,GAAGA,CAAC;EAAEC,WAAW,GAAG;AAA0B,CAAC,KAAK;EACvE,MAAMC,WAAW,GAAGR,MAAM,CAAM,IAAI,CAAC;EACrC,MAAMS,eAAe,GAAGT,MAAM,CAAC,CAAC,CAAC;EAEjC,MAAMU,QAAQ,GAAGX,WAAW,CAAEY,KAAU,IAAK;IAC3CF,eAAe,CAACG,OAAO,GAAGD,KAAK,EAAEE,WAAW,EAAEC,aAAa,EAAEC,CAAC;EAChE,CAAC,EAAE,EAAE,CAAC;EAENd,SAAS,CAAC,MAAM;IACd,MAAMe,qBAAqB,GAAGrB,kBAAkB,CAACsB,WAAW,CAC1Df,MAAM,CAACgB,kBAAkB,EACxBC,QAAiB,IAAK;MACrB,IAAI;QACF,MAAMC,cAAc,GAAGZ,WAAW,CAACI,OAAO,EAAEQ,cAAc,CAAC;UACzDC,MAAM,EAAEZ,eAAe,CAACG,OAAO,IAAIO,QAAQ,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;UACvDG,QAAQ,EAAE;QACZ,CAAC,CAAC;QACFC,UAAU,CAAC,MAAM;UACfH,cAAc,GAAG,CAAC;QACpB,CAAC,EAAE,GAAG,CAAC;MACT,CAAC,CAAC,OAAOI,KAAK,EAAE;QACdC,OAAO,CAACD,KAAK,CAACA,KAAK,CAAC;MACtB;IACF,CACF,CAAC;IAED,OAAO,MAAM;MACXR,qBAAqB,CAACU,MAAM,CAAC,CAAC;IAChC,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,oBACEtB,IAAA,CAACC,iBAAiB;IAChBsB,GAAG,EAAEnB,WAAY;IACjBoB,IAAI,EAAErB,WAAY;IAClBsB,UAAU,EAAEA,CAAC;MAAEC,IAAI;MAAEC;IAA6C,CAAC,kBACjE3B,IAAA,CAACP,QAAQ;MAACiC,IAAI,EAAEA,IAAK;MAACC,KAAK,EAAEA;IAAM,CAAE,CACrC;IACFC,YAAY,EAAGF,IAAkB,IAAKA,IAAI,CAACG,EAAG;IAC9CC,qBAAqB,EAAEC,MAAM,CAACC,SAAU;IACxCC,QAAQ;IACRC,kBAAkB,eAAElC,IAAA,CAACR,SAAS,IAAE,CAAE;IAClCc,QAAQ,EAAEA;EAAS,CACpB,CAAC;AAEN,CAAC;AAED,eAAeJ,eAAe;AAE9B,MAAM6B,MAAM,GAAGzC,UAAU,CAAC6C,MAAM,CAAC;EAC/BH,SAAS,EAAE;IACTI,QAAQ,EAAE,CAAC;IACXC,GAAG,EAAE3C,aAAa,CAAC,QAAQ,CAAC;IAC5B4C,eAAe,EAAE5C,aAAa,CAAC,MAAM,CAAC;IACtC6C,cAAc,EAAE;EAClB;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["FlatList","StyleSheet","DeviceEventEmitter","View","useCallback","useRef","useEffect","useState","ChatEmpty","ChatItem","KSpacingValue","KColors","KImage","KContainer","events","GAEvents","useChatContext","useSessionStore","jsx","_jsx","jsxs","_jsxs","FlatListComponent","ChatMessageList","messageList","logGA","sessionId","state","flatListRef","scrollOffsetRef","showScrollToBottom","setShowScrollToBottom","onScroll","event","offsetY","nativeEvent","contentOffset","y","current","threshold","scrollToBottom","scrollToOffset","offset","animated","subExpandThinkingStep","addListener","expandThinkingStep","isExpand","setTimeout","error","console","remove","newChatPageView","chatDetailPageView","conversation_id","style","flex","children","ref","data","renderItem","item","index","keyExtractor","id","contentContainerStyle","styles","container","inverted","ListEmptyComponent","scrollEventThrottle","Touchable","scrollButton","onPress","activeOpacity","center","VectorIcons","name","size","color","palette","gray","w400","create","flexGrow","gap","paddingVertical","justifyContent","position","bottom","right","backgroundColor","white","width","height","borderRadius","shadowColor","shadowOpacity","shadowRadius","elevation","alignItems"],"sourceRoot":"../../../../src","sources":["components/chat/ChatMessageList.tsx"],"mappings":"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","ignoreList":[]}
@@ -7,6 +7,7 @@ import { StyleSheet } from 'react-native';
7
7
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
8
8
  const SuggestionItem = ({
9
9
  item,
10
+ index,
10
11
  onPressItem
11
12
  }) => {
12
13
  const icon = useMemo(() => {
@@ -57,7 +58,7 @@ const SuggestionItem = ({
57
58
  }, [item.category]);
58
59
  return /*#__PURE__*/_jsxs(KContainer.Touchable, {
59
60
  style: styles.container,
60
- onPress: () => onPressItem(item),
61
+ onPress: () => onPressItem(item, index),
61
62
  children: [icon, /*#__PURE__*/_jsx(KLabel.Text, {
62
63
  flex: true,
63
64
  typo: "TextNmNormal",
@@ -1 +1 @@
1
- {"version":3,"names":["useMemo","KColors","KContainer","KImage","KLabel","KRadiusValue","KSpacingValue","SuggestionCategory","StyleSheet","jsx","_jsx","jsxs","_jsxs","SuggestionItem","item","onPressItem","icon","category","product","VectorIcons","name","size","color","palette","primary","w400","discount","danger","normal","gift","success","health_advice","secondary","content","warning","guide","blue","Touchable","style","styles","container","onPress","children","Text","flex","typo","create","flexDirection","alignItems","gap","paddingHorizontal","paddingVertical","borderRadius","backgroundColor","hexToRgba","gray","dark"],"sourceRoot":"../../../../src","sources":["components/chat/SuggestionItem.tsx"],"mappings":";;AAAA,SAASA,OAAO,QAAQ,OAAO;AAE/B,SACEC,OAAO,EACPC,UAAU,EACVC,MAAM,EACNC,MAAM,EACNC,YAAY,EACZC,aAAa,QACR,eAAe;AACtB,SAASC,kBAAkB,QAAQ,uBAAoB;AACvD,SAASC,UAAU,QAAQ,cAAc;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAO1C,MAAMC,cAAc,GAAGA,CAAC;EAAEC,IAAI;EAAEC;AAAiC,CAAC,KAAK;EACrE,MAAMC,IAAI,GAAGhB,OAAO,CAAC,MAAM;IACzB,QAAQc,IAAI,CAACG,QAAQ;MACnB,KAAKV,kBAAkB,CAACW,OAAO;QAC7B,oBACER,IAAA,CAACP,MAAM,CAACgB,WAAW;UACjBC,IAAI,EAAC,mBAAmB;UACxBC,IAAI,EAAE,EAAG;UACTC,KAAK,EAAErB,OAAO,CAACsB,OAAO,CAACC,OAAO,CAACC;QAAK,CACrC,CAAC;MAEN,KAAKlB,kBAAkB,CAACmB,QAAQ;QAC9B,oBACEhB,IAAA,CAACP,MAAM,CAACgB,WAAW;UACjBC,IAAI,EAAC,kBAAkB;UACvBC,IAAI,EAAE,EAAG;UACTC,KAAK,EAAErB,OAAO,CAAC0B,MAAM,CAACC;QAAO,CAC9B,CAAC;MAEN,KAAKrB,kBAAkB,CAACsB,IAAI;QAC1B,oBACEnB,IAAA,CAACP,MAAM,CAACgB,WAAW;UACjBC,IAAI,EAAC,QAAQ;UACbC,IAAI,EAAE,EAAG;UACTC,KAAK,EAAErB,OAAO,CAAC6B,OAAO,CAACF;QAAO,CAC/B,CAAC;MAEN,KAAKrB,kBAAkB,CAACwB,aAAa;QACnC,oBACErB,IAAA,CAACP,MAAM,CAACgB,WAAW;UACjBC,IAAI,EAAC,cAAc;UACnBC,IAAI,EAAE,EAAG;UACTC,KAAK,EAAErB,OAAO,CAAC+B,SAAS,CAACJ;QAAO,CACjC,CAAC;MAEN,KAAKrB,kBAAkB,CAAC0B,OAAO;QAC7B,oBACEvB,IAAA,CAACP,MAAM,CAACgB,WAAW;UACjBC,IAAI,EAAC,QAAQ;UACbC,IAAI,EAAE,EAAG;UACTC,KAAK,EAAErB,OAAO,CAACiC,OAAO,CAACN;QAAO,CAC/B,CAAC;MAEN,KAAKrB,kBAAkB,CAAC4B,KAAK;QAC3B,oBACEzB,IAAA,CAACP,MAAM,CAACgB,WAAW;UACjBC,IAAI,EAAC,MAAM;UACXC,IAAI,EAAE,EAAG;UACTC,KAAK,EAAErB,OAAO,CAACsB,OAAO,CAACa,IAAI,CAACX;QAAK,CAClC,CAAC;MAEN;QACE,oBACEf,IAAA,CAACP,MAAM,CAACgB,WAAW;UACjBC,IAAI,EAAC,QAAQ;UACbC,IAAI,EAAE,EAAG;UACTC,KAAK,EAAErB,OAAO,CAACiC,OAAO,CAACN;QAAO,CAC/B,CAAC;IAER;EACF,CAAC,EAAE,CAACd,IAAI,CAACG,QAAQ,CAAC,CAAC;EAEnB,oBACEL,KAAA,CAACV,UAAU,CAACmC,SAAS;IACnBC,KAAK,EAAEC,MAAM,CAACC,SAAU;IACxBC,OAAO,EAAEA,CAAA,KAAM1B,WAAW,CAACD,IAAI,CAAE;IAAA4B,QAAA,GAEhC1B,IAAI,eACLN,IAAA,CAACN,MAAM,CAACuC,IAAI;MAACC,IAAI;MAACC,IAAI,EAAC,cAAc;MAAAH,QAAA,EAClC5B,IAAI,EAAEmB,OAAO,IAAI;IAAE,CACT,CAAC;EAAA,CACM,CAAC;AAE3B,CAAC;AAED,eAAepB,cAAc;AAE7B,MAAM0B,MAAM,GAAG/B,UAAU,CAACsC,MAAM,CAAC;EAC/BN,SAAS,EAAE;IACTO,aAAa,EAAE,KAAK;IACpBC,UAAU,EAAE,QAAQ;IACpBC,GAAG,EAAE3C,aAAa,CAAC,SAAS,CAAC;IAC7B4C,iBAAiB,EAAE5C,aAAa,CAAC,SAAS,CAAC;IAC3C6C,eAAe,EAAE,CAAC;IAClBC,YAAY,EAAE/C,YAAY,CAAC,IAAI,CAAC;IAChCgD,eAAe,EAAEpD,OAAO,CAACqD,SAAS,CAACrD,OAAO,CAACsD,IAAI,CAACC,IAAI,EAAE,IAAI;EAC5D;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["useMemo","KColors","KContainer","KImage","KLabel","KRadiusValue","KSpacingValue","SuggestionCategory","StyleSheet","jsx","_jsx","jsxs","_jsxs","SuggestionItem","item","index","onPressItem","icon","category","product","VectorIcons","name","size","color","palette","primary","w400","discount","danger","normal","gift","success","health_advice","secondary","content","warning","guide","blue","Touchable","style","styles","container","onPress","children","Text","flex","typo","create","flexDirection","alignItems","gap","paddingHorizontal","paddingVertical","borderRadius","backgroundColor","hexToRgba","gray","dark"],"sourceRoot":"../../../../src","sources":["components/chat/SuggestionItem.tsx"],"mappings":"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","ignoreList":[]}