react-native-chatbot-ai 0.1.56 → 0.1.58

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.
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  import { KColors, KContainer, KLabel, KSpacingValue } from '@droppii/libs';
4
- import { StyleSheet } from 'react-native';
4
+ import { StyleSheet, Platform } from 'react-native';
5
5
  import SuggestionItem from "./SuggestionItem.js";
6
6
  import { useSendMessage } from "../../hooks/message/useSendMessage.js";
7
7
  import debounce from 'lodash/debounce';
@@ -65,7 +65,12 @@ const styles = StyleSheet.create({
65
65
  justifyContent: 'center',
66
66
  alignItems: 'center',
67
67
  padding: KSpacingValue['0.75rem'],
68
- gap: KSpacingValue['0.5rem']
68
+ gap: KSpacingValue['0.5rem'],
69
+ transform: [Platform.OS === 'android' ? {
70
+ scale: -1
71
+ } : {
72
+ scaleY: -1
73
+ }]
69
74
  },
70
75
  disclaimer: {
71
76
  fontSize: 11,
@@ -1 +1 @@
1
- {"version":3,"names":["KColors","KContainer","KLabel","KSpacingValue","StyleSheet","SuggestionItem","useSendMessage","debounce","SendActionLogType","trans","useChatContext","GAEvents","jsx","_jsx","jsxs","_jsxs","ChatEmpty","suggestions","onSendMessage","logGA","onPress","item","index","newChatNewChatPrmSuggTap","suggestion_id","suggestion_content","content","slice","suggestion_cate","category","order","undefined","promptSuggestion","View","style","styles","container","children","Text","typo","center","color","gray","normal","map","onPressItem","light","textAlign","disclaimer","create","flexGrow","justifyContent","alignItems","padding","gap","fontSize","paddingHorizontal"],"sourceRoot":"../../../../src","sources":["components/chat/ChatEmpty.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["KColors","KContainer","KLabel","KSpacingValue","StyleSheet","Platform","SuggestionItem","useSendMessage","debounce","SendActionLogType","trans","useChatContext","GAEvents","jsx","_jsx","jsxs","_jsxs","ChatEmpty","suggestions","onSendMessage","logGA","onPress","item","index","newChatNewChatPrmSuggTap","suggestion_id","suggestion_content","content","slice","suggestion_cate","category","order","undefined","promptSuggestion","View","style","styles","container","children","Text","typo","center","color","gray","normal","map","onPressItem","light","textAlign","disclaimer","create","flexGrow","justifyContent","alignItems","padding","gap","transform","OS","scale","scaleY","fontSize","paddingHorizontal"],"sourceRoot":"../../../../src","sources":["components/chat/ChatEmpty.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,41 +1,45 @@
1
1
  "use strict";
2
2
 
3
- import { StyleSheet, View, DeviceEventEmitter } from 'react-native';
3
+ import { FlatList, StyleSheet, View, DeviceEventEmitter } from 'react-native';
4
4
  import { useCallback, useRef, useEffect, useState } from 'react';
5
5
  import ChatEmpty from "./ChatEmpty.js";
6
6
  import ChatItem from "./item/index.js";
7
7
  import { KSpacingValue, KColors, KImage, KContainer } from '@droppii/libs';
8
8
  import { events } from "../../constants/events.js";
9
- import { FlashList } from '@shopify/flash-list';
10
9
  import { useFetchSuggestions } from "../../hooks/suggestions/useFetchSuggestions.js";
10
+ import useSessionStore from "../../store/session.js";
11
11
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
12
- const FlashListComponent = FlashList;
12
+ const FlatListComponent = FlatList;
13
13
  const ChatMessageList = ({
14
14
  messageList = []
15
15
  }) => {
16
16
  const {
17
17
  data: suggestions
18
18
  } = useFetchSuggestions();
19
+ const sessionId = useSessionStore(state => state.sessionId);
19
20
  const flatListRef = useRef(null);
20
21
  const scrollOffsetRef = useRef(0);
21
- const contentHeightRef = useRef(0);
22
- const viewportHeightRef = useRef(0);
23
22
  const [showScrollToBottom, setShowScrollToBottom] = useState(false);
24
23
  const onScroll = useCallback(event => {
25
24
  const offsetY = event?.nativeEvent?.contentOffset?.y ?? 0;
26
- const layoutHeight = event?.nativeEvent?.layoutMeasurement?.height ?? 0;
27
- const contentHeight = event?.nativeEvent?.contentSize?.height ?? 0;
28
25
  scrollOffsetRef.current = offsetY;
29
26
  const threshold = 20;
30
- const atBottom = layoutHeight + offsetY >= contentHeight - threshold;
31
- setShowScrollToBottom(!atBottom);
27
+ setShowScrollToBottom(offsetY > threshold);
32
28
  }, []);
33
29
  const scrollToBottom = useCallback(async () => {
34
30
  await new Promise(resolve => setTimeout(resolve, 300));
35
- const offset = Math.max(0, contentHeightRef.current - viewportHeightRef.current);
36
31
  flatListRef.current?.scrollToOffset({
37
32
  animated: true,
38
- offset
33
+ offset: 0
34
+ });
35
+ }, []);
36
+ const renderItem = useCallback(({
37
+ item,
38
+ index
39
+ }) => {
40
+ return /*#__PURE__*/_jsx(ChatItem, {
41
+ item: item,
42
+ isLastItem: index === 0
39
43
  });
40
44
  }, []);
41
45
  useEffect(() => {
@@ -46,11 +50,14 @@ const ChatMessageList = ({
46
50
  useEffect(() => {
47
51
  const subScrollToMessage = DeviceEventEmitter.addListener(events.scrollToMessage, messageId => {
48
52
  const index = messageList.findIndex(m => m.id === messageId);
49
- if (index === -1) return;
50
- flatListRef.current?.scrollToIndex({
51
- animated: true,
52
- index
53
- });
53
+ //scroll to previous message if it exists because of the flatlist scroll to the bottom of item
54
+ if (messageList?.[index + 1]) {
55
+ flatListRef.current?.scrollToIndex({
56
+ animated: true,
57
+ index: index + 1,
58
+ viewPosition: 1
59
+ });
60
+ }
54
61
  });
55
62
  return () => {
56
63
  subScrollToMessage.remove();
@@ -58,31 +65,25 @@ const ChatMessageList = ({
58
65
  }, [messageList]);
59
66
  return /*#__PURE__*/_jsxs(View, {
60
67
  style: styles.flex,
61
- children: [/*#__PURE__*/_jsx(FlashListComponent, {
68
+ children: [/*#__PURE__*/_jsx(FlatListComponent, {
62
69
  ref: flatListRef,
63
70
  data: messageList,
64
- renderItem: ({
65
- item,
66
- index
67
- }) => /*#__PURE__*/_jsx(ChatItem, {
68
- item: item,
69
- isLastItem: index === messageList.length - 1
70
- }),
71
+ renderItem: renderItem,
71
72
  keyExtractor: item => item.id,
72
- contentContainerStyle: styles.container,
73
73
  ListEmptyComponent: /*#__PURE__*/_jsx(ChatEmpty, {
74
74
  suggestions: suggestions?.suggestions || []
75
75
  }),
76
76
  onScroll: onScroll,
77
77
  scrollEventThrottle: 16,
78
- estimatedItemSize: 60,
79
- onLayout: e => {
80
- viewportHeightRef.current = e?.nativeEvent?.layout?.height || 0;
81
- },
82
- onContentSizeChange: (_, height) => {
83
- contentHeightRef.current = height;
84
- }
85
- }), showScrollToBottom && /*#__PURE__*/_jsx(KContainer.Touchable, {
78
+ inverted: true,
79
+ contentContainerStyle: styles.container,
80
+ maintainVisibleContentPosition: messageList?.length > 1 ? {
81
+ minIndexForVisible: 1
82
+ } : undefined,
83
+ showsVerticalScrollIndicator: false,
84
+ maxToRenderPerBatch: 6,
85
+ initialNumToRender: 6
86
+ }, sessionId), showScrollToBottom && /*#__PURE__*/_jsx(KContainer.Touchable, {
86
87
  style: styles.scrollButton,
87
88
  onPress: scrollToBottom,
88
89
  children: /*#__PURE__*/_jsx(KImage.VectorIcons, {
@@ -101,7 +102,8 @@ const styles = StyleSheet.create({
101
102
  container: {
102
103
  flexGrow: 1,
103
104
  gap: KSpacingValue['0.5rem'],
104
- paddingVertical: KSpacingValue['1rem']
105
+ paddingTop: KSpacingValue['1rem'],
106
+ justifyContent: 'flex-end'
105
107
  },
106
108
  scrollButton: {
107
109
  position: 'absolute',
@@ -1 +1 @@
1
- {"version":3,"names":["StyleSheet","View","DeviceEventEmitter","useCallback","useRef","useEffect","useState","ChatEmpty","ChatItem","KSpacingValue","KColors","KImage","KContainer","events","FlashList","useFetchSuggestions","jsx","_jsx","jsxs","_jsxs","FlashListComponent","ChatMessageList","messageList","data","suggestions","flatListRef","scrollOffsetRef","contentHeightRef","viewportHeightRef","showScrollToBottom","setShowScrollToBottom","onScroll","event","offsetY","nativeEvent","contentOffset","y","layoutHeight","layoutMeasurement","height","contentHeight","contentSize","current","threshold","atBottom","scrollToBottom","Promise","resolve","setTimeout","offset","Math","max","scrollToOffset","animated","length","subScrollToMessage","addListener","scrollToMessage","messageId","index","findIndex","m","id","scrollToIndex","remove","style","styles","flex","children","ref","renderItem","item","isLastItem","keyExtractor","contentContainerStyle","container","ListEmptyComponent","scrollEventThrottle","estimatedItemSize","onLayout","e","layout","onContentSizeChange","_","Touchable","scrollButton","onPress","VectorIcons","name","size","color","black","create","flexGrow","gap","paddingVertical","position","bottom","right","backgroundColor","white","width","borderRadius","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","justifyContent","alignItems"],"sourceRoot":"../../../../src","sources":["components/chat/ChatMessageList.tsx"],"mappings":";;AAAA,SAASA,UAAU,EAAEC,IAAI,EAAEC,kBAAkB,QAAQ,cAAc;AAEnE,SAASC,WAAW,EAAEC,MAAM,EAAEC,SAAS,EAAEC,QAAQ,QAAQ,OAAO;AAChE,OAAOC,SAAS,MAAM,gBAAa;AACnC,OAAOC,QAAQ,MAAM,iBAAQ;AAC7B,SAASC,aAAa,EAAEC,OAAO,EAAEC,MAAM,EAAEC,UAAU,QAAQ,eAAe;AAE1E,SAASC,MAAM,QAAQ,2BAAwB;AAC/C,SAASC,SAAS,QAAQ,qBAAqB;AAC/C,SAASC,mBAAmB,QAAQ,gDAA6C;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAElF,MAAMC,kBAAkB,GAAGN,SAA0C;AAMrE,MAAMO,eAAe,GAAGA,CAAC;EAAEC,WAAW,GAAG;AAA0B,CAAC,KAAK;EACvE,MAAM;IAAEC,IAAI,EAAEC;EAAY,CAAC,GAAGT,mBAAmB,CAAC,CAAC;EAEnD,MAAMU,WAAW,GAAGrB,MAAM,CAAM,IAAI,CAAC;EACrC,MAAMsB,eAAe,GAAGtB,MAAM,CAAC,CAAC,CAAC;EACjC,MAAMuB,gBAAgB,GAAGvB,MAAM,CAAC,CAAC,CAAC;EAClC,MAAMwB,iBAAiB,GAAGxB,MAAM,CAAC,CAAC,CAAC;EACnC,MAAM,CAACyB,kBAAkB,EAAEC,qBAAqB,CAAC,GAAGxB,QAAQ,CAAC,KAAK,CAAC;EAEnE,MAAMyB,QAAQ,GAAG5B,WAAW,CAAE6B,KAAU,IAAK;IAC3C,MAAMC,OAAO,GAAGD,KAAK,EAAEE,WAAW,EAAEC,aAAa,EAAEC,CAAC,IAAI,CAAC;IACzD,MAAMC,YAAY,GAAGL,KAAK,EAAEE,WAAW,EAAEI,iBAAiB,EAAEC,MAAM,IAAI,CAAC;IACvE,MAAMC,aAAa,GAAGR,KAAK,EAAEE,WAAW,EAAEO,WAAW,EAAEF,MAAM,IAAI,CAAC;IAClEb,eAAe,CAACgB,OAAO,GAAGT,OAAO;IAEjC,MAAMU,SAAS,GAAG,EAAE;IACpB,MAAMC,QAAQ,GAAGP,YAAY,GAAGJ,OAAO,IAAIO,aAAa,GAAGG,SAAS;IACpEb,qBAAqB,CAAC,CAACc,QAAQ,CAAC;EAClC,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,cAAc,GAAG1C,WAAW,CAAC,YAAY;IAC7C,MAAM,IAAI2C,OAAO,CAAEC,OAAO,IAAKC,UAAU,CAACD,OAAO,EAAE,GAAG,CAAC,CAAC;IACxD,MAAME,MAAM,GAAGC,IAAI,CAACC,GAAG,CACrB,CAAC,EACDxB,gBAAgB,CAACe,OAAO,GAAGd,iBAAiB,CAACc,OAC/C,CAAC;IACDjB,WAAW,CAACiB,OAAO,EAAEU,cAAc,CAAC;MAAEC,QAAQ,EAAE,IAAI;MAAEJ;IAAO,CAAC,CAAC;EACjE,CAAC,EAAE,EAAE,CAAC;EAEN5C,SAAS,CAAC,MAAM;IACd,IAAIiB,WAAW,CAACgC,MAAM,GAAG,CAAC,EAAE;MAC1BT,cAAc,CAAC,CAAC;IAClB;EACF,CAAC,EAAE,CAACvB,WAAW,CAACgC,MAAM,EAAET,cAAc,CAAC,CAAC;EAExCxC,SAAS,CAAC,MAAM;IACd,MAAMkD,kBAAkB,GAAGrD,kBAAkB,CAACsD,WAAW,CACvD3C,MAAM,CAAC4C,eAAe,EACrBC,SAAiB,IAAK;MACrB,MAAMC,KAAK,GAAGrC,WAAW,CAACsC,SAAS,CAAEC,CAAC,IAAKA,CAAC,CAACC,EAAE,KAAKJ,SAAS,CAAC;MAC9D,IAAIC,KAAK,KAAK,CAAC,CAAC,EAAE;MAClBlC,WAAW,CAACiB,OAAO,EAAEqB,aAAa,CAAC;QACjCV,QAAQ,EAAE,IAAI;QACdM;MACF,CAAC,CAAC;IACJ,CACF,CAAC;IAED,OAAO,MAAM;MACXJ,kBAAkB,CAACS,MAAM,CAAC,CAAC;IAC7B,CAAC;EACH,CAAC,EAAE,CAAC1C,WAAW,CAAC,CAAC;EAEjB,oBACEH,KAAA,CAAClB,IAAI;IAACgE,KAAK,EAAEC,MAAM,CAACC,IAAK;IAAAC,QAAA,gBACvBnD,IAAA,CAACG,kBAAkB;MACjBiD,GAAG,EAAE5C,WAAY;MACjBF,IAAI,EAAED,WAAY;MAClBgD,UAAU,EAAEA,CAAC;QACXC,IAAI;QACJZ;MAIF,CAAC,kBACC1C,IAAA,CAACT,QAAQ;QAAC+D,IAAI,EAAEA,IAAK;QAACC,UAAU,EAAEb,KAAK,KAAKrC,WAAW,CAACgC,MAAM,GAAG;MAAE,CAAE,CACrE;MACFmB,YAAY,EAAGF,IAAkB,IAAKA,IAAI,CAACT,EAAG;MAC9CY,qBAAqB,EAAER,MAAM,CAACS,SAAU;MACxCC,kBAAkB,eAChB3D,IAAA,CAACV,SAAS;QAACiB,WAAW,EAAEA,WAAW,EAAEA,WAAW,IAAI;MAAG,CAAE,CAC1D;MACDO,QAAQ,EAAEA,QAAS;MACnB8C,mBAAmB,EAAE,EAAG;MACxBC,iBAAiB,EAAE,EAAG;MACtBC,QAAQ,EAAGC,CAAM,IAAK;QACpBpD,iBAAiB,CAACc,OAAO,GAAGsC,CAAC,EAAE9C,WAAW,EAAE+C,MAAM,EAAE1C,MAAM,IAAI,CAAC;MACjE,CAAE;MACF2C,mBAAmB,EAAEA,CAACC,CAAM,EAAE5C,MAAc,KAAK;QAC/CZ,gBAAgB,CAACe,OAAO,GAAGH,MAAM;MACnC;IAAE,CACH,CAAC,EAEDV,kBAAkB,iBACjBZ,IAAA,CAACL,UAAU,CAACwE,SAAS;MACnBnB,KAAK,EAAEC,MAAM,CAACmB,YAAa;MAC3BC,OAAO,EAAEzC,cAAe;MAAAuB,QAAA,eAExBnD,IAAA,CAACN,MAAM,CAAC4E,WAAW;QACjBC,IAAI,EAAC,cAAc;QACnBC,IAAI,EAAE,EAAG;QACTC,KAAK,EAAEhF,OAAO,CAACiF;MAAM,CACtB;IAAC,CACkB,CACvB;EAAA,CACG,CAAC;AAEX,CAAC;AAED,eAAetE,eAAe;AAE9B,MAAM6C,MAAM,GAAGlE,UAAU,CAAC4F,MAAM,CAAC;EAC/BzB,IAAI,EAAE;IACJA,IAAI,EAAE;EACR,CAAC;EACDQ,SAAS,EAAE;IACTkB,QAAQ,EAAE,CAAC;IACXC,GAAG,EAAErF,aAAa,CAAC,QAAQ,CAAC;IAC5BsF,eAAe,EAAEtF,aAAa,CAAC,MAAM;EACvC,CAAC;EACD4E,YAAY,EAAE;IACZW,QAAQ,EAAE,UAAU;IACpBC,MAAM,EAAE,EAAE;IACVC,KAAK,EAAE,EAAE;IACTC,eAAe,EAAEzF,OAAO,CAAC0F,KAAK;IAC9BC,KAAK,EAAE,EAAE;IACT9D,MAAM,EAAE,EAAE;IACV+D,YAAY,EAAE,EAAE;IAEhB;IACAC,WAAW,EAAE7F,OAAO,CAACiF,KAAK;IAC1Ba,YAAY,EAAE;MAAEH,KAAK,EAAE,CAAC;MAAE9D,MAAM,EAAE;IAAE,CAAC;IACrCkE,aAAa,EAAE,IAAI;IACnBC,YAAY,EAAE,CAAC;IAEf;IACAC,SAAS,EAAE,CAAC;IAEZC,cAAc,EAAE,QAAQ;IACxBC,UAAU,EAAE;EACd;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["FlatList","StyleSheet","View","DeviceEventEmitter","useCallback","useRef","useEffect","useState","ChatEmpty","ChatItem","KSpacingValue","KColors","KImage","KContainer","events","useFetchSuggestions","useSessionStore","jsx","_jsx","jsxs","_jsxs","FlatListComponent","ChatMessageList","messageList","data","suggestions","sessionId","state","flatListRef","scrollOffsetRef","showScrollToBottom","setShowScrollToBottom","onScroll","event","offsetY","nativeEvent","contentOffset","y","current","threshold","scrollToBottom","Promise","resolve","setTimeout","scrollToOffset","animated","offset","renderItem","item","index","isLastItem","length","subScrollToMessage","addListener","scrollToMessage","messageId","findIndex","m","id","scrollToIndex","viewPosition","remove","style","styles","flex","children","ref","keyExtractor","ListEmptyComponent","scrollEventThrottle","inverted","contentContainerStyle","container","maintainVisibleContentPosition","minIndexForVisible","undefined","showsVerticalScrollIndicator","maxToRenderPerBatch","initialNumToRender","Touchable","scrollButton","onPress","VectorIcons","name","size","color","black","create","flexGrow","gap","paddingTop","justifyContent","position","bottom","right","backgroundColor","white","width","height","borderRadius","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","alignItems"],"sourceRoot":"../../../../src","sources":["components/chat/ChatMessageList.tsx"],"mappings":"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","ignoreList":[]}
@@ -40,8 +40,7 @@ const ChatBotAI = () => {
40
40
  const sourceTabCount = useMemo(() => {
41
41
  return externalSessionInfo?.sources?.count || 0;
42
42
  }, [externalSessionInfo?.sources?.count]);
43
- const messageLength = messageState?.messages?.length;
44
- const lastMessage = messageLength > 0 ? messageState?.messages?.[messageLength - 1] : undefined;
43
+ const lastMessage = messageState?.messages?.[0];
45
44
  const renderScene = useCallback(({
46
45
  route
47
46
  }) => {
@@ -1 +1 @@
1
- {"version":3,"names":["KColors","KContainer","KLabel","KRadiusValue","KSpacingValue","ChatHeader","ChatMessageList","ChatFooter","KeyboardAvoidingView","KeyboardAvoidingViewAndroid","Platform","StyleSheet","useWindowDimensions","KeyboardAvoidingViewIOS","useMessage","TabView","useCallback","useEffect","useMemo","useSessionStore","useGetExternalSessionInfo","ChatProductList","useChatContext","GAEvents","ChatSessionTab","getRouteKey","routes","LinearGradient","jsx","_jsx","jsxs","_jsxs","OS","ChatBotAI","messageState","layout","tabIndex","setTabIndex","logGA","sessionId","state","data","externalSessionInfo","productTabCount","products","count","sourceTabCount","sources","messageLength","messages","length","lastMessage","undefined","renderScene","route","key","answer","messageList","source","product","items","newChatPageView","chatDetailPageView","conversation_id","tab_type","Page","flex","children","style","styles","container","behavior","keyboardVerticalOffset","VisibleView","visible","View","tabContainer","map","index","isCurTab","borderColor","primary","normal","transparent","textColor","gray","light","bagdeColor","gradients","Touchable","onPress","tabContent","Text","typo","color","title","colors","badge","white","tabBorder","background","navigationState","onIndexChange","initialLayout","width","renderTabBar","swipeEnabled","create","flexGrow","flexDirection","gap","paddingHorizontal","borderBottomWidth","borderBottomColor","border","marginTop","alignItems","height","borderRadius","x","minWidth","justifyContent","round"],"sourceRoot":"../../../../src","sources":["components/chat/index.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["KColors","KContainer","KLabel","KRadiusValue","KSpacingValue","ChatHeader","ChatMessageList","ChatFooter","KeyboardAvoidingView","KeyboardAvoidingViewAndroid","Platform","StyleSheet","useWindowDimensions","KeyboardAvoidingViewIOS","useMessage","TabView","useCallback","useEffect","useMemo","useSessionStore","useGetExternalSessionInfo","ChatProductList","useChatContext","GAEvents","ChatSessionTab","getRouteKey","routes","LinearGradient","jsx","_jsx","jsxs","_jsxs","OS","ChatBotAI","messageState","layout","tabIndex","setTabIndex","logGA","sessionId","state","data","externalSessionInfo","productTabCount","products","count","sourceTabCount","sources","lastMessage","messages","renderScene","route","key","answer","messageList","source","product","items","newChatPageView","chatDetailPageView","conversation_id","tab_type","Page","flex","children","style","styles","container","behavior","keyboardVerticalOffset","VisibleView","visible","View","tabContainer","map","index","isCurTab","borderColor","primary","normal","transparent","textColor","gray","light","bagdeColor","gradients","Touchable","onPress","tabContent","Text","typo","color","title","colors","badge","white","tabBorder","background","navigationState","onIndexChange","initialLayout","width","renderTabBar","swipeEnabled","create","flexGrow","flexDirection","gap","paddingHorizontal","borderBottomWidth","borderBottomColor","border","marginTop","alignItems","height","borderRadius","x","minWidth","justifyContent","round"],"sourceRoot":"../../../../src","sources":["components/chat/index.tsx"],"mappings":"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","ignoreList":[]}
@@ -5,6 +5,7 @@ import ChatBotAI from "../components/chat/index.js";
5
5
  import Portal from "../components/portal/index.js";
6
6
  import ReanimatedDrawerExample from "../components/Drawer/index.js";
7
7
  import useSessionStore from "../store/session.js";
8
+ import useStreamMessageStore from "../store/streamMessage.js";
8
9
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
9
10
  export const ChatContext = /*#__PURE__*/createContext({
10
11
  apiAddress: '',
@@ -26,8 +27,10 @@ export const ChatContext = /*#__PURE__*/createContext({
26
27
  export const useChatContext = () => useContext(ChatContext);
27
28
  export const ChatProvider = props => {
28
29
  const ref = useRef(null);
30
+ const spanRef = useRef(null);
29
31
  const [tabIndex, setTabIndex] = useState(0);
30
32
  const sessionId = useSessionStore(state => state.sessionId);
33
+ const isStreaming = useStreamMessageStore(state => state.isStreaming);
31
34
  const openDrawer = () => {
32
35
  ref.current?.openDrawer();
33
36
  };
@@ -46,11 +49,28 @@ export const ChatProvider = props => {
46
49
  pushLinkTo,
47
50
  chatbotUrl,
48
51
  logGA,
49
- notifyError
52
+ notifyError,
53
+ startCustomSpan
50
54
  } = props;
51
55
  useEffect(() => {
52
56
  setTabIndex(0);
53
57
  }, [sessionId]);
58
+ useEffect(() => {
59
+ const run = async () => {
60
+ if (isStreaming) {
61
+ const span = await startCustomSpan?.('chatbot.streaming');
62
+ spanRef.current = span;
63
+ } else {
64
+ spanRef.current?.end();
65
+ spanRef.current = null;
66
+ }
67
+ };
68
+ run();
69
+ return () => {
70
+ spanRef.current?.end();
71
+ spanRef.current = null;
72
+ };
73
+ }, [isStreaming, startCustomSpan]);
54
74
  return /*#__PURE__*/_jsx(ChatContext.Provider, {
55
75
  value: {
56
76
  apiAddress,
@@ -1 +1 @@
1
- {"version":3,"names":["createContext","useContext","useEffect","useRef","useState","ChatBotAI","Portal","ReanimatedDrawerExample","useSessionStore","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ChatContext","apiAddress","userId","cartButton","undefined","onAddToCart","onBuyNow","onNavigateToProduct","csTeamId","pushLinkTo","openDrawer","closeDrawer","chatbotUrl","logGA","notifyError","tabIndex","setTabIndex","useChatContext","ChatProvider","props","ref","sessionId","state","current","openImageViewer","Provider","value","children"],"sourceRoot":"../../../src","sources":["context/ChatContext.tsx"],"mappings":";;AAAA,SAASA,aAAa,EAAEC,UAAU,EAAEC,SAAS,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,OAAO;AAE9E,OAAOC,SAAS,MAAM,6BAAoB;AAC1C,OAAOC,MAAM,MAAM,+BAAsB;AACzC,OAAOC,uBAAuB,MAAM,+BAAsB;AAC1D,OAAOC,eAAe,MAAM,qBAAkB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA,EAAAC,IAAA,IAAAC,KAAA;AAE/C,OAAO,MAAMC,WAAW,gBAAGf,aAAa,CAAkB;EACxDgB,UAAU,EAAE,EAAE;EACdC,MAAM,EAAE,EAAE;EACVC,UAAU,EAAEC,SAAS;EACrBC,WAAW,EAAEA,CAAA,KAAM,CAAC,CAAC;EACrBC,QAAQ,EAAEA,CAAA,KAAM,CAAC,CAAC;EAClBC,mBAAmB,EAAEA,CAAA,KAAM,CAAC,CAAC;EAC7BC,QAAQ,EAAE,EAAE;EACZC,UAAU,EAAEA,CAAA,KAAM,CAAC,CAAC;EACpBC,UAAU,EAAEA,CAAA,KAAM,CAAC,CAAC;EACpBC,WAAW,EAAEA,CAAA,KAAM,CAAC,CAAC;EACrBC,UAAU,EAAE,EAAE;EACdC,KAAK,EAAEA,CAAA,KAAM,CAAC,CAAC;EACfC,WAAW,EAAEA,CAAA,KAAM,CAAC,CAAC;EACrBC,QAAQ,EAAE,CAAC;EACXC,WAAW,EAAEA,CAAA,KAAM,CAAC;AACtB,CAAC,CAAC;AAEF,OAAO,MAAMC,cAAc,GAAGA,CAAA,KAAM/B,UAAU,CAACc,WAAW,CAAC;AAE3D,OAAO,MAAMkB,YAAY,GAAIC,KAAwB,IAAK;EACxD,MAAMC,GAAG,GAAGhC,MAAM,CAAM,IAAI,CAAC;EAC7B,MAAM,CAAC2B,QAAQ,EAAEC,WAAW,CAAC,GAAG3B,QAAQ,CAAC,CAAC,CAAC;EAC3C,MAAMgC,SAAS,GAAG5B,eAAe,CAAE6B,KAAK,IAAKA,KAAK,CAACD,SAAS,CAAC;EAE7D,MAAMX,UAAU,GAAGA,CAAA,KAAM;IACvBU,GAAG,CAACG,OAAO,EAAEb,UAAU,CAAC,CAAC;EAC3B,CAAC;EAED,MAAMC,WAAW,GAAGA,CAAA,KAAM;IACxBS,GAAG,CAACG,OAAO,EAAEZ,WAAW,CAAC,CAAC;EAC5B,CAAC;EACD,MAAM;IACJV,UAAU;IACVC,MAAM;IACNC,UAAU;IACVqB,eAAe;IACfnB,WAAW;IACXC,QAAQ;IACRC,mBAAmB;IACnBC,QAAQ;IACRC,UAAU;IACVG,UAAU;IACVC,KAAK;IACLC;EACF,CAAC,GAAGK,KAAK;EAEThC,SAAS,CAAC,MAAM;IACd6B,WAAW,CAAC,CAAC,CAAC;EAChB,CAAC,EAAE,CAACK,SAAS,CAAC,CAAC;EAEf,oBACE1B,IAAA,CAACK,WAAW,CAACyB,QAAQ;IACnBC,KAAK,EAAE;MACLzB,UAAU;MACVC,MAAM;MACNC,UAAU;MACVqB,eAAe;MACfnB,WAAW;MACXC,QAAQ;MACRC,mBAAmB;MACnBC,QAAQ;MACRC,UAAU;MACVC,UAAU;MACVC,WAAW;MACXC,UAAU;MACVC,KAAK;MACLC,WAAW;MACXC,QAAQ;MACRC;IACF,CAAE;IAAAW,QAAA,eAEFhC,IAAA,CAACH,uBAAuB;MAAC4B,GAAG,EAAEA,GAAI;MAAAO,QAAA,eAChC5B,KAAA,CAAAF,SAAA;QAAA8B,QAAA,gBACEhC,IAAA,CAACL,SAAS,IAAE,CAAC,eACbK,IAAA,CAACJ,MAAM,IAAE,CAAC;MAAA,CACV;IAAC,CACoB;EAAC,CACN,CAAC;AAE3B,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["createContext","useContext","useEffect","useRef","useState","ChatBotAI","Portal","ReanimatedDrawerExample","useSessionStore","useStreamMessageStore","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ChatContext","apiAddress","userId","cartButton","undefined","onAddToCart","onBuyNow","onNavigateToProduct","csTeamId","pushLinkTo","openDrawer","closeDrawer","chatbotUrl","logGA","notifyError","tabIndex","setTabIndex","useChatContext","ChatProvider","props","ref","spanRef","sessionId","state","isStreaming","current","openImageViewer","startCustomSpan","run","span","end","Provider","value","children"],"sourceRoot":"../../../src","sources":["context/ChatContext.tsx"],"mappings":";;AAAA,SAASA,aAAa,EAAEC,UAAU,EAAEC,SAAS,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,OAAO;AAE9E,OAAOC,SAAS,MAAM,6BAAoB;AAC1C,OAAOC,MAAM,MAAM,+BAAsB;AACzC,OAAOC,uBAAuB,MAAM,+BAAsB;AAC1D,OAAOC,eAAe,MAAM,qBAAkB;AAC9C,OAAOC,qBAAqB,MAAM,2BAAwB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA,EAAAC,IAAA,IAAAC,KAAA;AAE3D,OAAO,MAAMC,WAAW,gBAAGhB,aAAa,CAAkB;EACxDiB,UAAU,EAAE,EAAE;EACdC,MAAM,EAAE,EAAE;EACVC,UAAU,EAAEC,SAAS;EACrBC,WAAW,EAAEA,CAAA,KAAM,CAAC,CAAC;EACrBC,QAAQ,EAAEA,CAAA,KAAM,CAAC,CAAC;EAClBC,mBAAmB,EAAEA,CAAA,KAAM,CAAC,CAAC;EAC7BC,QAAQ,EAAE,EAAE;EACZC,UAAU,EAAEA,CAAA,KAAM,CAAC,CAAC;EACpBC,UAAU,EAAEA,CAAA,KAAM,CAAC,CAAC;EACpBC,WAAW,EAAEA,CAAA,KAAM,CAAC,CAAC;EACrBC,UAAU,EAAE,EAAE;EACdC,KAAK,EAAEA,CAAA,KAAM,CAAC,CAAC;EACfC,WAAW,EAAEA,CAAA,KAAM,CAAC,CAAC;EACrBC,QAAQ,EAAE,CAAC;EACXC,WAAW,EAAEA,CAAA,KAAM,CAAC;AACtB,CAAC,CAAC;AAEF,OAAO,MAAMC,cAAc,GAAGA,CAAA,KAAMhC,UAAU,CAACe,WAAW,CAAC;AAE3D,OAAO,MAAMkB,YAAY,GAAIC,KAAwB,IAAK;EACxD,MAAMC,GAAG,GAAGjC,MAAM,CAAM,IAAI,CAAC;EAC7B,MAAMkC,OAAO,GAAGlC,MAAM,CAAM,IAAI,CAAC;EACjC,MAAM,CAAC4B,QAAQ,EAAEC,WAAW,CAAC,GAAG5B,QAAQ,CAAC,CAAC,CAAC;EAC3C,MAAMkC,SAAS,GAAG9B,eAAe,CAAE+B,KAAK,IAAKA,KAAK,CAACD,SAAS,CAAC;EAC7D,MAAME,WAAW,GAAG/B,qBAAqB,CAAE8B,KAAK,IAAKA,KAAK,CAACC,WAAW,CAAC;EAEvE,MAAMd,UAAU,GAAGA,CAAA,KAAM;IACvBU,GAAG,CAACK,OAAO,EAAEf,UAAU,CAAC,CAAC;EAC3B,CAAC;EAED,MAAMC,WAAW,GAAGA,CAAA,KAAM;IACxBS,GAAG,CAACK,OAAO,EAAEd,WAAW,CAAC,CAAC;EAC5B,CAAC;EACD,MAAM;IACJV,UAAU;IACVC,MAAM;IACNC,UAAU;IACVuB,eAAe;IACfrB,WAAW;IACXC,QAAQ;IACRC,mBAAmB;IACnBC,QAAQ;IACRC,UAAU;IACVG,UAAU;IACVC,KAAK;IACLC,WAAW;IACXa;EACF,CAAC,GAAGR,KAAK;EAETjC,SAAS,CAAC,MAAM;IACd8B,WAAW,CAAC,CAAC,CAAC;EAChB,CAAC,EAAE,CAACM,SAAS,CAAC,CAAC;EAEfpC,SAAS,CAAC,MAAM;IACd,MAAM0C,GAAG,GAAG,MAAAA,CAAA,KAAY;MACtB,IAAIJ,WAAW,EAAE;QACf,MAAMK,IAAS,GAAG,MAAMF,eAAe,GAAG,mBAAmB,CAAC;QAC9DN,OAAO,CAACI,OAAO,GAAGI,IAAI;MACxB,CAAC,MAAM;QACLR,OAAO,CAACI,OAAO,EAAEK,GAAG,CAAC,CAAC;QACtBT,OAAO,CAACI,OAAO,GAAG,IAAI;MACxB;IACF,CAAC;IAEDG,GAAG,CAAC,CAAC;IAEL,OAAO,MAAM;MACXP,OAAO,CAACI,OAAO,EAAEK,GAAG,CAAC,CAAC;MACtBT,OAAO,CAACI,OAAO,GAAG,IAAI;IACxB,CAAC;EACH,CAAC,EAAE,CAACD,WAAW,EAAEG,eAAe,CAAC,CAAC;EAElC,oBACEhC,IAAA,CAACK,WAAW,CAAC+B,QAAQ;IACnBC,KAAK,EAAE;MACL/B,UAAU;MACVC,MAAM;MACNC,UAAU;MACVuB,eAAe;MACfrB,WAAW;MACXC,QAAQ;MACRC,mBAAmB;MACnBC,QAAQ;MACRC,UAAU;MACVC,UAAU;MACVC,WAAW;MACXC,UAAU;MACVC,KAAK;MACLC,WAAW;MACXC,QAAQ;MACRC;IACF,CAAE;IAAAiB,QAAA,eAEFtC,IAAA,CAACJ,uBAAuB;MAAC6B,GAAG,EAAEA,GAAI;MAAAa,QAAA,eAChClC,KAAA,CAAAF,SAAA;QAAAoC,QAAA,gBACEtC,IAAA,CAACN,SAAS,IAAE,CAAC,eACbM,IAAA,CAACL,MAAM,IAAE,CAAC;MAAA,CACV;IAAC,CACoB;EAAC,CACN,CAAC;AAE3B,CAAC","ignoreList":[]}
@@ -32,7 +32,7 @@ export const useMessage = () => {
32
32
  if (!res) return;
33
33
  setLoadState(prev => ({
34
34
  ...res,
35
- messages: res?.messages?.length > 0 ? res.messages : prev.messages
35
+ messages: res?.messages?.length > 0 ? res.messages.reverse() : prev.messages
36
36
  }));
37
37
  }, [sessionId, getSessionById]);
38
38
  useEffect(() => {
@@ -59,7 +59,7 @@ export const useMessage = () => {
59
59
  }
60
60
  return {
61
61
  ...prev,
62
- messages: [...prev.messages, messageItem]
62
+ messages: [messageItem, ...prev.messages]
63
63
  };
64
64
  });
65
65
  });
@@ -69,10 +69,10 @@ export const useMessage = () => {
69
69
  return prev;
70
70
  }
71
71
  const existingIds = new Set(prev.messages.map(m => m?.id));
72
- const filtered = messageItems.filter(m => !existingIds.has(m?.id));
72
+ const filtered = messageItems.filter(m => !existingIds.has(m?.id)).reverse();
73
73
  return {
74
74
  ...prev,
75
- messages: [...prev.messages, ...filtered]
75
+ messages: [...filtered, ...prev.messages]
76
76
  };
77
77
  });
78
78
  });
@@ -92,7 +92,7 @@ export const useMessage = () => {
92
92
  const newItems = messages.filter(u => !existingIds.has(u.id));
93
93
  return {
94
94
  ...prev,
95
- messages: [...merged, ...newItems]
95
+ messages: [...newItems, ...merged]
96
96
  };
97
97
  });
98
98
  useStreamMessageStore.getState().clearStreamMessageRecordById(messages.map(m => m.id));
@@ -107,7 +107,7 @@ export const useMessage = () => {
107
107
  }
108
108
  const messageIndex = prev.messages.findIndex(m => m.id === messageId);
109
109
  if (messageIndex === -1) return prev;
110
- const updatedMessages = prev.messages.slice(messageIndex).map((m, i) => i === updatedMessages?.length - 1 ? {
110
+ const updatedMessages = prev.messages.slice(messageIndex).map((m, i) => i === 0 ? {
111
111
  ...m,
112
112
  metadata: {
113
113
  ...m.metadata,
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useEffect","useState","useSessionStore","useFetchSessionById","DeviceEventEmitter","events","useStreamMessageStore","useQueryClient","QUERY_KEYS","initialState","id","title","created_at","updated_at","metadata","source","shared","messages","useMessage","queryClient","sessionId","state","mutateAsync","getSessionById","loadState","setLoadState","onGetSessionById","res","prev","length","subOneMessage","addListener","updateOneMessage","messageItem","messageIndex","findIndex","m","updatedMessages","subMultipleMessage","updateMultipleMessage","messageItems","sID","existingIds","Set","map","filtered","filter","has","subForceUpdateMessages","forceUpdateMessages","merged","msg","update","find","u","newItems","getState","clearStreamMessageRecordById","refetchQueries","queryKey","GET_EXTERNAL_SESSION_INFO","subUpdateMessageError","updateMessageError","messageId","slice","i","remove","messageState"],"sourceRoot":"../../../../src","sources":["hooks/message/useMessage.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useEffect","useState","useSessionStore","useFetchSessionById","DeviceEventEmitter","events","useStreamMessageStore","useQueryClient","QUERY_KEYS","initialState","id","title","created_at","updated_at","metadata","source","shared","messages","useMessage","queryClient","sessionId","state","mutateAsync","getSessionById","loadState","setLoadState","onGetSessionById","res","prev","length","reverse","subOneMessage","addListener","updateOneMessage","messageItem","messageIndex","findIndex","m","updatedMessages","subMultipleMessage","updateMultipleMessage","messageItems","sID","existingIds","Set","map","filtered","filter","has","subForceUpdateMessages","forceUpdateMessages","merged","msg","update","find","u","newItems","getState","clearStreamMessageRecordById","refetchQueries","queryKey","GET_EXTERNAL_SESSION_INFO","subUpdateMessageError","updateMessageError","messageId","slice","i","remove","messageState"],"sourceRoot":"../../../../src","sources":["hooks/message/useMessage.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["SessionLogType","SendActionLogType"],"sourceRoot":"../../../src","sources":["types/chat.ts"],"mappings":";;AAiDA,WAAYA,cAAc,0BAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAA,OAAdA,cAAc;AAAA;AAM1B,WAAYC,iBAAiB,0BAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAA,OAAjBA,iBAAiB;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["SessionLogType","SendActionLogType"],"sourceRoot":"../../../src","sources":["types/chat.ts"],"mappings":";;AAkDA,WAAYA,cAAc,0BAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAA,OAAdA,cAAc;AAAA;AAM1B,WAAYC,iBAAiB,0BAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAA,OAAjBA,iBAAiB;AAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"ChatMessageList.d.ts","sourceRoot":"","sources":["../../../../../src/components/chat/ChatMessageList.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAOhD,UAAU,qBAAqB;IAC7B,WAAW,CAAC,EAAE,YAAY,EAAE,CAAC;CAC9B;AAED,QAAA,MAAM,eAAe,GAAI,iBAAsB,qBAAqB,4CAiGnE,CAAC;AAEF,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"ChatMessageList.d.ts","sourceRoot":"","sources":["../../../../../src/components/chat/ChatMessageList.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAOhD,UAAU,qBAAqB;IAC7B,WAAW,CAAC,EAAE,YAAY,EAAE,CAAC;CAC9B;AAED,QAAA,MAAM,eAAe,GAAI,iBAAsB,qBAAqB,4CA4FnE,CAAC;AAEF,eAAe,eAAe,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/chat/index.tsx"],"names":[],"mappings":"AA+BA,QAAA,MAAM,SAAS,+CAsHd,CAAC;AAEF,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/chat/index.tsx"],"names":[],"mappings":"AA+BA,QAAA,MAAM,SAAS,+CAmHd,CAAC;AAEF,eAAe,SAAS,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ChatContext.d.ts","sourceRoot":"","sources":["../../../../src/context/ChatContext.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAMxE,eAAO,MAAM,WAAW,0CAgBtB,CAAC;AAEH,eAAO,MAAM,cAAc,uBAAgC,CAAC;AAE5D,eAAO,MAAM,YAAY,GAAI,OAAO,iBAAiB,4CA4DpD,CAAC"}
1
+ {"version":3,"file":"ChatContext.d.ts","sourceRoot":"","sources":["../../../../src/context/ChatContext.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAOxE,eAAO,MAAM,WAAW,0CAgBtB,CAAC;AAEH,eAAO,MAAM,cAAc,uBAAgC,CAAC;AAE5D,eAAO,MAAM,YAAY,GAAI,OAAO,iBAAiB,4CAkFpD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useMessage.d.ts","sourceRoot":"","sources":["../../../../../src/hooks/message/useMessage.ts"],"names":[],"mappings":"AAGA,OAAO,EAAgB,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAkBtE,eAAO,MAAM,UAAU;;CAgJtB,CAAC"}
1
+ {"version":3,"file":"useMessage.d.ts","sourceRoot":"","sources":["../../../../../src/hooks/message/useMessage.ts"],"names":[],"mappings":"AAGA,OAAO,EAAgB,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAkBtE,eAAO,MAAM,UAAU;;CAmJtB,CAAC"}
@@ -36,6 +36,7 @@ export interface ChatProviderProps {
36
36
  chatbotUrl: string;
37
37
  logGA: (event: string, params?: any) => void;
38
38
  notifyError?: ErrorLogger;
39
+ startCustomSpan?: (name: string) => Promise<void>;
39
40
  }
40
41
  export type ErrorLogger = (p: {
41
42
  errorClass: string | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../../../src/types/chat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../../../src/types/chat.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-chatbot-ai",
3
- "version": "0.1.56",
3
+ "version": "0.1.58",
4
4
  "description": "React Native library for Chatbot AI",
5
5
  "main": "./lib/module/index.js",
6
6
  "types": "./lib/typescript/src/index.d.ts",
@@ -1,5 +1,5 @@
1
1
  import { KColors, KContainer, KLabel, KSpacingValue } from '@droppii/libs';
2
- import { StyleSheet } from 'react-native';
2
+ import { StyleSheet, Platform } from 'react-native';
3
3
  import SuggestionItem from './SuggestionItem';
4
4
  import { useSendMessage } from '../../hooks/message/useSendMessage';
5
5
  import debounce from 'lodash/debounce';
@@ -69,6 +69,7 @@ const styles = StyleSheet.create({
69
69
  alignItems: 'center',
70
70
  padding: KSpacingValue['0.75rem'],
71
71
  gap: KSpacingValue['0.5rem'],
72
+ transform: [Platform.OS === 'android' ? { scale: -1 } : { scaleY: -1 }],
72
73
  },
73
74
  disclaimer: {
74
75
  fontSize: 11,
@@ -1,4 +1,4 @@
1
- import { StyleSheet, View, DeviceEventEmitter } from 'react-native';
1
+ import { FlatList, StyleSheet, View, DeviceEventEmitter } from 'react-native';
2
2
  import type { ComponentType } from 'react';
3
3
  import { useCallback, useRef, useEffect, useState } from 'react';
4
4
  import ChatEmpty from './ChatEmpty';
@@ -6,10 +6,10 @@ import ChatItem from './item';
6
6
  import { KSpacingValue, KColors, KImage, KContainer } from '@droppii/libs';
7
7
  import type { IMessageItem } from '../../types';
8
8
  import { events } from '../../constants/events';
9
- import { FlashList } from '@shopify/flash-list';
10
9
  import { useFetchSuggestions } from '../../hooks/suggestions/useFetchSuggestions';
10
+ import useSessionStore from '../../store/session';
11
11
 
12
- const FlashListComponent = FlashList as unknown as ComponentType<any>;
12
+ const FlatListComponent = FlatList as unknown as ComponentType<any>;
13
13
 
14
14
  interface IChatMessageListProps {
15
15
  messageList?: IMessageItem[];
@@ -17,33 +17,32 @@ interface IChatMessageListProps {
17
17
 
18
18
  const ChatMessageList = ({ messageList = [] }: IChatMessageListProps) => {
19
19
  const { data: suggestions } = useFetchSuggestions();
20
+ const sessionId = useSessionStore((state) => state.sessionId);
20
21
 
21
22
  const flatListRef = useRef<any>(null);
22
23
  const scrollOffsetRef = useRef(0);
23
- const contentHeightRef = useRef(0);
24
- const viewportHeightRef = useRef(0);
25
24
  const [showScrollToBottom, setShowScrollToBottom] = useState(false);
26
25
 
27
26
  const onScroll = useCallback((event: any) => {
28
27
  const offsetY = event?.nativeEvent?.contentOffset?.y ?? 0;
29
- const layoutHeight = event?.nativeEvent?.layoutMeasurement?.height ?? 0;
30
- const contentHeight = event?.nativeEvent?.contentSize?.height ?? 0;
31
28
  scrollOffsetRef.current = offsetY;
32
29
 
33
30
  const threshold = 20;
34
- const atBottom = layoutHeight + offsetY >= contentHeight - threshold;
35
- setShowScrollToBottom(!atBottom);
31
+ setShowScrollToBottom(offsetY > threshold);
36
32
  }, []);
37
33
 
38
34
  const scrollToBottom = useCallback(async () => {
39
35
  await new Promise((resolve) => setTimeout(resolve, 300));
40
- const offset = Math.max(
41
- 0,
42
- contentHeightRef.current - viewportHeightRef.current
43
- );
44
- flatListRef.current?.scrollToOffset({ animated: true, offset });
36
+ flatListRef.current?.scrollToOffset({ animated: true, offset: 0 });
45
37
  }, []);
46
38
 
39
+ const renderItem = useCallback(
40
+ ({ item, index }: { item: IMessageItem; index: number }) => {
41
+ return <ChatItem item={item} isLastItem={index === 0} />;
42
+ },
43
+ []
44
+ );
45
+
47
46
  useEffect(() => {
48
47
  if (messageList.length > 0) {
49
48
  scrollToBottom();
@@ -55,11 +54,14 @@ const ChatMessageList = ({ messageList = [] }: IChatMessageListProps) => {
55
54
  events.scrollToMessage,
56
55
  (messageId: string) => {
57
56
  const index = messageList.findIndex((m) => m.id === messageId);
58
- if (index === -1) return;
59
- flatListRef.current?.scrollToIndex({
60
- animated: true,
61
- index,
62
- });
57
+ //scroll to previous message if it exists because of the flatlist scroll to the bottom of item
58
+ if (messageList?.[index + 1]) {
59
+ flatListRef.current?.scrollToIndex({
60
+ animated: true,
61
+ index: index + 1,
62
+ viewPosition: 1,
63
+ });
64
+ }
63
65
  }
64
66
  );
65
67
 
@@ -70,32 +72,25 @@ const ChatMessageList = ({ messageList = [] }: IChatMessageListProps) => {
70
72
 
71
73
  return (
72
74
  <View style={styles.flex}>
73
- <FlashListComponent
75
+ <FlatListComponent
76
+ key={sessionId}
74
77
  ref={flatListRef}
75
78
  data={messageList}
76
- renderItem={({
77
- item,
78
- index,
79
- }: {
80
- item: IMessageItem;
81
- index: number;
82
- }) => (
83
- <ChatItem item={item} isLastItem={index === messageList.length - 1} />
84
- )}
79
+ renderItem={renderItem}
85
80
  keyExtractor={(item: IMessageItem) => item.id}
86
- contentContainerStyle={styles.container}
87
81
  ListEmptyComponent={
88
82
  <ChatEmpty suggestions={suggestions?.suggestions || []} />
89
83
  }
90
84
  onScroll={onScroll}
91
85
  scrollEventThrottle={16}
92
- estimatedItemSize={60}
93
- onLayout={(e: any) => {
94
- viewportHeightRef.current = e?.nativeEvent?.layout?.height || 0;
95
- }}
96
- onContentSizeChange={(_: any, height: number) => {
97
- contentHeightRef.current = height;
98
- }}
86
+ inverted
87
+ contentContainerStyle={styles.container}
88
+ maintainVisibleContentPosition={
89
+ messageList?.length > 1 ? { minIndexForVisible: 1 } : undefined
90
+ }
91
+ showsVerticalScrollIndicator={false}
92
+ maxToRenderPerBatch={6}
93
+ initialNumToRender={6}
99
94
  />
100
95
 
101
96
  {showScrollToBottom && (
@@ -123,7 +118,8 @@ const styles = StyleSheet.create({
123
118
  container: {
124
119
  flexGrow: 1,
125
120
  gap: KSpacingValue['0.5rem'],
126
- paddingVertical: KSpacingValue['1rem'],
121
+ paddingTop: KSpacingValue['1rem'],
122
+ justifyContent: 'flex-end',
127
123
  },
128
124
  scrollButton: {
129
125
  position: 'absolute',
@@ -46,10 +46,7 @@ const ChatBotAI = () => {
46
46
  return externalSessionInfo?.sources?.count || 0;
47
47
  }, [externalSessionInfo?.sources?.count]);
48
48
 
49
- const messageLength = messageState?.messages?.length;
50
-
51
- const lastMessage =
52
- messageLength > 0 ? messageState?.messages?.[messageLength - 1] : undefined;
49
+ const lastMessage = messageState?.messages?.[0];
53
50
 
54
51
  const renderScene = useCallback(
55
52
  ({ route }: { route: any }) => {
@@ -4,6 +4,7 @@ import ChatBotAI from '../components/chat';
4
4
  import Portal from '../components/portal';
5
5
  import ReanimatedDrawerExample from '../components/Drawer';
6
6
  import useSessionStore from '../store/session';
7
+ import useStreamMessageStore from '../store/streamMessage';
7
8
 
8
9
  export const ChatContext = createContext<ChatContextType>({
9
10
  apiAddress: '',
@@ -27,8 +28,10 @@ export const useChatContext = () => useContext(ChatContext);
27
28
 
28
29
  export const ChatProvider = (props: ChatProviderProps) => {
29
30
  const ref = useRef<any>(null);
31
+ const spanRef = useRef<any>(null);
30
32
  const [tabIndex, setTabIndex] = useState(0);
31
33
  const sessionId = useSessionStore((state) => state.sessionId);
34
+ const isStreaming = useStreamMessageStore((state) => state.isStreaming);
32
35
 
33
36
  const openDrawer = () => {
34
37
  ref.current?.openDrawer();
@@ -50,12 +53,32 @@ export const ChatProvider = (props: ChatProviderProps) => {
50
53
  chatbotUrl,
51
54
  logGA,
52
55
  notifyError,
56
+ startCustomSpan,
53
57
  } = props;
54
58
 
55
59
  useEffect(() => {
56
60
  setTabIndex(0);
57
61
  }, [sessionId]);
58
62
 
63
+ useEffect(() => {
64
+ const run = async () => {
65
+ if (isStreaming) {
66
+ const span: any = await startCustomSpan?.('chatbot.streaming');
67
+ spanRef.current = span;
68
+ } else {
69
+ spanRef.current?.end();
70
+ spanRef.current = null;
71
+ }
72
+ };
73
+
74
+ run();
75
+
76
+ return () => {
77
+ spanRef.current?.end();
78
+ spanRef.current = null;
79
+ };
80
+ }, [isStreaming, startCustomSpan]);
81
+
59
82
  return (
60
83
  <ChatContext.Provider
61
84
  value={{
@@ -32,7 +32,8 @@ export const useMessage = () => {
32
32
  if (!res) return;
33
33
  setLoadState((prev) => ({
34
34
  ...res,
35
- messages: res?.messages?.length > 0 ? res.messages : prev.messages,
35
+ messages:
36
+ res?.messages?.length > 0 ? res.messages.reverse() : prev.messages,
36
37
  }));
37
38
  }, [sessionId, getSessionById]);
38
39
 
@@ -68,7 +69,7 @@ export const useMessage = () => {
68
69
 
69
70
  return {
70
71
  ...prev,
71
- messages: [...prev.messages, messageItem],
72
+ messages: [messageItem, ...prev.messages],
72
73
  };
73
74
  });
74
75
  }
@@ -83,10 +84,12 @@ export const useMessage = () => {
83
84
  }
84
85
 
85
86
  const existingIds = new Set(prev.messages.map((m) => m?.id));
86
- const filtered = messageItems.filter((m) => !existingIds.has(m?.id));
87
+ const filtered = messageItems
88
+ .filter((m) => !existingIds.has(m?.id))
89
+ .reverse();
87
90
  return {
88
91
  ...prev,
89
- messages: [...prev.messages, ...filtered],
92
+ messages: [...filtered, ...prev.messages],
90
93
  };
91
94
  });
92
95
  }
@@ -108,7 +111,7 @@ export const useMessage = () => {
108
111
  const newItems = messages.filter((u) => !existingIds.has(u.id));
109
112
  return {
110
113
  ...prev,
111
- messages: [...merged, ...newItems],
114
+ messages: [...newItems, ...merged],
112
115
  };
113
116
  });
114
117
  useStreamMessageStore
@@ -134,7 +137,7 @@ export const useMessage = () => {
134
137
  const updatedMessages: IMessageItem[] = prev.messages
135
138
  .slice(messageIndex)
136
139
  .map((m, i) =>
137
- i === updatedMessages?.length - 1
140
+ i === 0
138
141
  ? {
139
142
  ...m,
140
143
  metadata: {
package/src/types/chat.ts CHANGED
@@ -34,6 +34,7 @@ export interface ChatProviderProps {
34
34
  chatbotUrl: string;
35
35
  logGA: (event: string, params?: any) => void;
36
36
  notifyError?: ErrorLogger;
37
+ startCustomSpan?: (name: string) => Promise<void>;
37
38
  }
38
39
 
39
40
  export type ErrorLogger = (