@magmamath/students-features 0.11.0-rc.3 → 0.11.0-rc.4

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.
@@ -7,6 +7,7 @@ exports.Chat = void 0;
7
7
  var _react = _interopRequireWildcard(require("react"));
8
8
  var _reactNative = require("react-native");
9
9
  var _effectorReact = require("effector-react");
10
+ var _reactNativeReanimated = _interopRequireWildcard(require("react-native-reanimated"));
10
11
  var _reactNativeUi = require("@magmamath/react-native-ui");
11
12
  var _ChatbotIcon = require("../../../../shared/icons/ChatbotIcon.js");
12
13
  var _AnimatedMessage = require("../ChatMessage/AnimatedMessage.js");
@@ -51,6 +52,12 @@ const Chat = ({
51
52
  }) => messages);
52
53
  const lastMessageId = messages.at(-1)?.id;
53
54
  const renderedCountRef = (0, _react.useRef)(messages.length);
55
+ const animatedIdsRef = (0, _react.useRef)(new Set());
56
+ (0, _react.useEffect)(() => {
57
+ if (messages.length < renderedCountRef.current) {
58
+ renderedCountRef.current = messages.length;
59
+ }
60
+ }, [messages.length]);
54
61
  const [showBottomFade, setShowBottomFade] = (0, _react.useState)(false);
55
62
  const handleScroll = (0, _react.useCallback)(e => {
56
63
  const {
@@ -89,6 +96,10 @@ const Chat = ({
89
96
  const messageHighlightIndex = model.t2s.isWordHighlightEnabled && isPlayingMessage ? highlightedWordIndex : -1;
90
97
  const isNew = index >= renderedCountRef.current;
91
98
  const hasIcon = !message.isOwnMessage && message.id === lastMessageId;
99
+ if (isNew && !animatedIdsRef.current.has(message.id)) {
100
+ animatedIdsRef.current.add(message.id);
101
+ }
102
+ const shouldAnimate = animatedIdsRef.current.has(message.id);
92
103
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
93
104
  style: hasIcon ? styles.messageWithIcon : undefined,
94
105
  children: [hasIcon && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
@@ -98,7 +109,7 @@ const Chat = ({
98
109
  height: 73
99
110
  })
100
111
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_AnimatedMessage.AnimatedMessage, {
101
- animate: isNew && !hasIcon,
112
+ animate: shouldAnimate,
102
113
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ConditionalWrapper.ConditionalWrapper, {
103
114
  withWrapper: shouldWrapMessage,
104
115
  Wrapper: MessageWrapper,
@@ -123,7 +134,9 @@ const Chat = ({
123
134
  }, key);
124
135
  }), isHelpRequestPending && /*#__PURE__*/(0, _jsxRuntime.jsx)(_MessageLoader.MessageLoader, {})]
125
136
  })
126
- }), showBottomFade && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
137
+ }), showBottomFade && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
138
+ entering: _reactNativeReanimated.FadeIn.duration(200),
139
+ exiting: _reactNativeReanimated.FadeOut.duration(200),
127
140
  style: styles.bottomFade,
128
141
  pointerEvents: "none"
129
142
  }), isOpen && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
@@ -143,9 +156,9 @@ const styles = _reactNative.StyleSheet.create({
143
156
  container: {
144
157
  flex: 1,
145
158
  alignItems: 'flex-end',
146
- // width: 378,
159
+ width: 374,
147
160
  height: '100%',
148
- paddingRight: _reactNativeUi.SPACING['200']
161
+ paddingRight: _reactNativeUi.SPACING['100']
149
162
  },
150
163
  list: {
151
164
  alignItems: 'flex-end',
@@ -164,12 +177,12 @@ const styles = _reactNative.StyleSheet.create({
164
177
  overflow: 'hidden'
165
178
  },
166
179
  bottomFade: {
167
- width: 372,
180
+ width: 374,
168
181
  position: 'absolute',
169
182
  bottom: 62,
170
183
  right: 0,
171
- height: 32,
172
- backgroundImage: 'linear-gradient(to top, rgba(255,255,255), transparent)'
184
+ height: 40,
185
+ backgroundImage: 'linear-gradient(to top, rgba(255,255,255,1) 0%, rgba(255,255,255,0.8) 40%, transparent 100%)'
173
186
  },
174
187
  messageWithIcon: {
175
188
  flexDirection: 'row',
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_effectorReact","_reactNativeUi","_ChatbotIcon","_AnimatedMessage","_ChatMessage","_MessageLoader","_ChatInput","_CloseButton","_modelTypes","_styleTypes","_ConditionalWrapper","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","SCROLL_BOTTOM_THRESHOLD","TOOLBAR_HEIGHT","BOTTOM_OFFSET","Platform","select","web","Chat","model","isHintFeedback","isTextToSpeechEnabled","isInputDisabled","colorScheme","ColorScheme","Blue","MessageWrapper","TTSHighlightRenderer","onPressClose","dimensions","useWindowDimensions","ref","useRef","isOpen","useUnit","$isOpen","isHelpRequestPending","sendHelpRequestFx","pending","isTextToSpeechPending","api","textToSpeechTextFx","audioStatus","t2s","$status","currentPlayingId","$currentPlayingId","highlightedWordIndex","wordHighlight","$highlightedWordIndex","isTranslated","translation","$isTranslated","errorSpottingEnabled","errorSpotting","$isEnabled","messages","useStoreMap","$currentChatData","lastMessageId","at","id","renderedCountRef","length","showBottomFade","setShowBottomFade","useState","handleScroll","useCallback","contentOffset","layoutMeasurement","contentSize","nativeEvent","isAtBottom","y","height","MAX_HEIGHT","shouldWrapMessage","jsxs","View","style","styles","container","maxHeight","children","jsx","ScrollView","bounces","contentContainerStyle","list","onScroll","scrollEventThrottle","onContentSizeChange","_","current","scrollToEnd","setScrollActive","gap","messagesWithoutInput","map","message","index","key","isPlayingMessage","messageHighlightIndex","isWordHighlightEnabled","isNew","hasIcon","isOwnMessage","messageWithIcon","undefined","icon","ChatbotIcon","width","AnimatedMessage","animate","ConditionalWrapper","withWrapper","Wrapper","ChatMessage","variant","MessageVariant","SENT","RECEIVED","withErrorSpotting","t2sState","isEnabled","isActive","isLoading","status","disabled","MessageLoader","bottomFade","pointerEvents","inputRow","CloseButton","onPress","ChatInput","hasMessages","exports","StyleSheet","create","flex","alignItems","paddingRight","SPACING","paddingVertical","marginBottom","flexDirection","scrollContainer","overflow","position","bottom","right","backgroundImage","marginRight"],"sourceRoot":"../../../../../../src","sources":["features/chatbot/components/Chat/Chat.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_effectorReact","_reactNativeReanimated","_reactNativeUi","_ChatbotIcon","_AnimatedMessage","_ChatMessage","_MessageLoader","_ChatInput","_CloseButton","_modelTypes","_styleTypes","_ConditionalWrapper","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","SCROLL_BOTTOM_THRESHOLD","TOOLBAR_HEIGHT","BOTTOM_OFFSET","Platform","select","web","Chat","model","isHintFeedback","isTextToSpeechEnabled","isInputDisabled","colorScheme","ColorScheme","Blue","MessageWrapper","TTSHighlightRenderer","onPressClose","dimensions","useWindowDimensions","ref","useRef","isOpen","useUnit","$isOpen","isHelpRequestPending","sendHelpRequestFx","pending","isTextToSpeechPending","api","textToSpeechTextFx","audioStatus","t2s","$status","currentPlayingId","$currentPlayingId","highlightedWordIndex","wordHighlight","$highlightedWordIndex","isTranslated","translation","$isTranslated","errorSpottingEnabled","errorSpotting","$isEnabled","messages","useStoreMap","$currentChatData","lastMessageId","at","id","renderedCountRef","length","animatedIdsRef","Set","useEffect","current","showBottomFade","setShowBottomFade","useState","handleScroll","useCallback","contentOffset","layoutMeasurement","contentSize","nativeEvent","isAtBottom","y","height","MAX_HEIGHT","shouldWrapMessage","jsxs","View","style","styles","container","maxHeight","children","jsx","ScrollView","bounces","contentContainerStyle","list","onScroll","scrollEventThrottle","onContentSizeChange","_","scrollToEnd","setScrollActive","gap","messagesWithoutInput","map","message","index","key","isPlayingMessage","messageHighlightIndex","isWordHighlightEnabled","isNew","hasIcon","isOwnMessage","add","shouldAnimate","messageWithIcon","undefined","icon","ChatbotIcon","width","AnimatedMessage","animate","ConditionalWrapper","withWrapper","Wrapper","ChatMessage","variant","MessageVariant","SENT","RECEIVED","withErrorSpotting","t2sState","isEnabled","isActive","isLoading","status","disabled","MessageLoader","entering","FadeIn","duration","exiting","FadeOut","bottomFade","pointerEvents","inputRow","CloseButton","onPress","ChatInput","hasMessages","exports","StyleSheet","create","flex","alignItems","paddingRight","SPACING","paddingVertical","marginBottom","flexDirection","scrollContainer","overflow","position","bottom","right","backgroundImage","marginRight"],"sourceRoot":"../../../../../../src","sources":["features/chatbot/components/Chat/Chat.tsx"],"mappings":"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","ignoreList":[]}
@@ -47,7 +47,8 @@ const styles = _reactNative.StyleSheet.create({
47
47
  maxWidth: 365,
48
48
  width: 305,
49
49
  alignItems: 'flex-end',
50
- justifyContent: 'flex-end'
50
+ justifyContent: 'flex-end',
51
+ paddingRight: 2
51
52
  // backgroundColor: COLORS.BLUE_6,
52
53
  },
53
54
  message: {
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNativeUi","_styleTypes","_modelTypes","_MessageContent","_jsxRuntime","e","__esModule","default","ReceivedMessage","message","isTranslated","t2sState","colorScheme","ColorScheme","Blue","withErrorSpotting","highlightedWordIndex","TTSHighlightRenderer","text","translatedMessage","jsx","View","style","styles","container","children","MessageContent","variant","MessageVariant","RECEIVED","exports","StyleSheet","create","flex","flexDirection","maxWidth","width","alignItems","justifyContent","padding","shadowColor","shadowOffset","height","shadowOpacity","shadowRadius","elevation","borderRadius","BORDER_RADIUS","borderBottomLeftRadius","backgroundColor"],"sourceRoot":"../../../../../../src","sources":["features/chatbot/components/ChatMessage/ReceivedMessage.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AAEA,IAAAG,WAAA,GAAAH,OAAA;AACA,IAAAI,WAAA,GAAAJ,OAAA;AAEA,IAAAK,eAAA,GAAAL,OAAA;AAAiD,IAAAM,WAAA,GAAAN,OAAA;AAAA,SAAAD,uBAAAQ,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAE1C,MAAMG,eAAe,GAAGA,CAAC;EAC9BC,OAAO;EACPC,YAAY;EACZC,QAAQ;EACRC,WAAW,GAAGC,uBAAW,CAACC,IAAI;EAC9BC,iBAAiB;EACjBC,oBAAoB;EACpBC;AACY,CAAC,KAAK;EAClB,MAAMC,IAAI,GAAGR,YAAY,GAAGD,OAAO,CAACU,iBAAiB,GAAGV,OAAO,CAACA,OAAO;EAEvE,oBACE,IAAAL,WAAA,CAAAgB,GAAA,EAACrB,YAAA,CAAAsB,IAAI;IAACC,KAAK,EAAEC,MAAM,CAACC,SAAU;IAAAC,QAAA,eAC5B,IAAArB,WAAA,CAAAgB,GAAA,EAACrB,YAAA,CAAAsB,IAAI;MAACC,KAAK,EAAEC,MAAM,CAACd,OAAQ;MAAAgB,QAAA,eAC1B,IAAArB,WAAA,CAAAgB,GAAA,EAACjB,eAAA,CAAAuB,cAAc;QACbjB,OAAO,EAAEA,OAAQ;QACjBkB,OAAO,EAAEC,0BAAc,CAACC,QAAS;QACjClB,QAAQ,EAAEA,QAAS;QACnBO,IAAI,EAAEA,IAAI,IAAI,EAAG;QACjBN,WAAW,EAAEA,WAAY;QACzBG,iBAAiB,EAAEA,iBAAkB;QACrCC,oBAAoB,EAAEA,oBAAqB;QAC3CC,oBAAoB,EAAEA;MAAqB,CAC5C;IAAC,CACE;EAAC,CACH,CAAC;AAEX,CAAC;AAAAa,OAAA,CAAAtB,eAAA,GAAAA,eAAA;AAED,MAAMe,MAAM,GAAGQ,uBAAU,CAACC,MAAM,CAAC;EAC/BR,SAAS,EAAE;IACTS,IAAI,EAAE,CAAC;IACPC,aAAa,EAAE,KAAK;IACpBC,QAAQ,EAAE,GAAG;IACbC,KAAK,EAAE,GAAG;IACVC,UAAU,EAAE,UAAU;IACtBC,cAAc,EAAE;IAChB;EACF,CAAC;EACD7B,OAAO,EAAE;IACP;IACAwB,IAAI,EAAE,CAAC;IACPC,aAAa,EAAE,KAAK;IACpBC,QAAQ,EAAE,GAAG;IACbI,OAAO,EAAE,CAAC;IACVC,WAAW,EAAE,MAAM;IACnBC,YAAY,EAAE;MAAEL,KAAK,EAAE,CAAC;MAAEM,MAAM,EAAE;IAAE,CAAC;IACrCC,aAAa,EAAE,IAAI;IACnBC,YAAY,EAAE,CAAC;IACfC,SAAS,EAAE,CAAC;IACZC,YAAY,EAAEC,4BAAa,CAAC,GAAG,CAAC;IAChCC,sBAAsB,EAAE,CAAC;IACzBC,eAAe,EAAE,SAAS;IAC1BZ,UAAU,EAAE,UAAU;IACtBC,cAAc,EAAE;EAClB;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNativeUi","_styleTypes","_modelTypes","_MessageContent","_jsxRuntime","e","__esModule","default","ReceivedMessage","message","isTranslated","t2sState","colorScheme","ColorScheme","Blue","withErrorSpotting","highlightedWordIndex","TTSHighlightRenderer","text","translatedMessage","jsx","View","style","styles","container","children","MessageContent","variant","MessageVariant","RECEIVED","exports","StyleSheet","create","flex","flexDirection","maxWidth","width","alignItems","justifyContent","paddingRight","padding","shadowColor","shadowOffset","height","shadowOpacity","shadowRadius","elevation","borderRadius","BORDER_RADIUS","borderBottomLeftRadius","backgroundColor"],"sourceRoot":"../../../../../../src","sources":["features/chatbot/components/ChatMessage/ReceivedMessage.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AAEA,IAAAG,WAAA,GAAAH,OAAA;AACA,IAAAI,WAAA,GAAAJ,OAAA;AAEA,IAAAK,eAAA,GAAAL,OAAA;AAAiD,IAAAM,WAAA,GAAAN,OAAA;AAAA,SAAAD,uBAAAQ,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAE1C,MAAMG,eAAe,GAAGA,CAAC;EAC9BC,OAAO;EACPC,YAAY;EACZC,QAAQ;EACRC,WAAW,GAAGC,uBAAW,CAACC,IAAI;EAC9BC,iBAAiB;EACjBC,oBAAoB;EACpBC;AACY,CAAC,KAAK;EAClB,MAAMC,IAAI,GAAGR,YAAY,GAAGD,OAAO,CAACU,iBAAiB,GAAGV,OAAO,CAACA,OAAO;EAEvE,oBACE,IAAAL,WAAA,CAAAgB,GAAA,EAACrB,YAAA,CAAAsB,IAAI;IAACC,KAAK,EAAEC,MAAM,CAACC,SAAU;IAAAC,QAAA,eAC5B,IAAArB,WAAA,CAAAgB,GAAA,EAACrB,YAAA,CAAAsB,IAAI;MAACC,KAAK,EAAEC,MAAM,CAACd,OAAQ;MAAAgB,QAAA,eAC1B,IAAArB,WAAA,CAAAgB,GAAA,EAACjB,eAAA,CAAAuB,cAAc;QACbjB,OAAO,EAAEA,OAAQ;QACjBkB,OAAO,EAAEC,0BAAc,CAACC,QAAS;QACjClB,QAAQ,EAAEA,QAAS;QACnBO,IAAI,EAAEA,IAAI,IAAI,EAAG;QACjBN,WAAW,EAAEA,WAAY;QACzBG,iBAAiB,EAAEA,iBAAkB;QACrCC,oBAAoB,EAAEA,oBAAqB;QAC3CC,oBAAoB,EAAEA;MAAqB,CAC5C;IAAC,CACE;EAAC,CACH,CAAC;AAEX,CAAC;AAAAa,OAAA,CAAAtB,eAAA,GAAAA,eAAA;AAED,MAAMe,MAAM,GAAGQ,uBAAU,CAACC,MAAM,CAAC;EAC/BR,SAAS,EAAE;IACTS,IAAI,EAAE,CAAC;IACPC,aAAa,EAAE,KAAK;IACpBC,QAAQ,EAAE,GAAG;IACbC,KAAK,EAAE,GAAG;IACVC,UAAU,EAAE,UAAU;IACtBC,cAAc,EAAE,UAAU;IAC1BC,YAAY,EAAE;IACd;EACF,CAAC;EACD9B,OAAO,EAAE;IACP;IACAwB,IAAI,EAAE,CAAC;IACPC,aAAa,EAAE,KAAK;IACpBC,QAAQ,EAAE,GAAG;IACbK,OAAO,EAAE,CAAC;IACVC,WAAW,EAAE,MAAM;IACnBC,YAAY,EAAE;MAAEN,KAAK,EAAE,CAAC;MAAEO,MAAM,EAAE;IAAE,CAAC;IACrCC,aAAa,EAAE,IAAI;IACnBC,YAAY,EAAE,CAAC;IACfC,SAAS,EAAE,CAAC;IACZC,YAAY,EAAEC,4BAAa,CAAC,GAAG,CAAC;IAChCC,sBAAsB,EAAE,CAAC;IACzBC,eAAe,EAAE,SAAS;IAC1Bb,UAAU,EAAE,UAAU;IACtBC,cAAc,EAAE;EAClB;AACF,CAAC,CAAC","ignoreList":[]}
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
2
 
3
- import React, { useCallback, useRef, useState } from 'react';
3
+ import React, { useCallback, useEffect, useRef, useState } from 'react';
4
4
  import { Platform, ScrollView, StyleSheet, useWindowDimensions, View } from 'react-native';
5
5
  import { useStoreMap, useUnit } from 'effector-react';
6
+ import Animated, { FadeIn, FadeOut } from 'react-native-reanimated';
6
7
  import { SPACING } from '@magmamath/react-native-ui';
7
8
  import { ChatbotIcon } from "../../../../shared/icons/ChatbotIcon.js";
8
9
  import { AnimatedMessage } from "../ChatMessage/AnimatedMessage.js";
@@ -45,6 +46,12 @@ export const Chat = ({
45
46
  }) => messages);
46
47
  const lastMessageId = messages.at(-1)?.id;
47
48
  const renderedCountRef = useRef(messages.length);
49
+ const animatedIdsRef = useRef(new Set());
50
+ useEffect(() => {
51
+ if (messages.length < renderedCountRef.current) {
52
+ renderedCountRef.current = messages.length;
53
+ }
54
+ }, [messages.length]);
48
55
  const [showBottomFade, setShowBottomFade] = useState(false);
49
56
  const handleScroll = useCallback(e => {
50
57
  const {
@@ -83,6 +90,10 @@ export const Chat = ({
83
90
  const messageHighlightIndex = model.t2s.isWordHighlightEnabled && isPlayingMessage ? highlightedWordIndex : -1;
84
91
  const isNew = index >= renderedCountRef.current;
85
92
  const hasIcon = !message.isOwnMessage && message.id === lastMessageId;
93
+ if (isNew && !animatedIdsRef.current.has(message.id)) {
94
+ animatedIdsRef.current.add(message.id);
95
+ }
96
+ const shouldAnimate = animatedIdsRef.current.has(message.id);
86
97
  return /*#__PURE__*/_jsxs(View, {
87
98
  style: hasIcon ? styles.messageWithIcon : undefined,
88
99
  children: [hasIcon && /*#__PURE__*/_jsx(View, {
@@ -92,7 +103,7 @@ export const Chat = ({
92
103
  height: 73
93
104
  })
94
105
  }), /*#__PURE__*/_jsx(AnimatedMessage, {
95
- animate: isNew && !hasIcon,
106
+ animate: shouldAnimate,
96
107
  children: /*#__PURE__*/_jsx(ConditionalWrapper, {
97
108
  withWrapper: shouldWrapMessage,
98
109
  Wrapper: MessageWrapper,
@@ -117,7 +128,9 @@ export const Chat = ({
117
128
  }, key);
118
129
  }), isHelpRequestPending && /*#__PURE__*/_jsx(MessageLoader, {})]
119
130
  })
120
- }), showBottomFade && /*#__PURE__*/_jsx(View, {
131
+ }), showBottomFade && /*#__PURE__*/_jsx(Animated.View, {
132
+ entering: FadeIn.duration(200),
133
+ exiting: FadeOut.duration(200),
121
134
  style: styles.bottomFade,
122
135
  pointerEvents: "none"
123
136
  }), isOpen && /*#__PURE__*/_jsxs(View, {
@@ -136,9 +149,9 @@ const styles = StyleSheet.create({
136
149
  container: {
137
150
  flex: 1,
138
151
  alignItems: 'flex-end',
139
- // width: 378,
152
+ width: 374,
140
153
  height: '100%',
141
- paddingRight: SPACING['200']
154
+ paddingRight: SPACING['100']
142
155
  },
143
156
  list: {
144
157
  alignItems: 'flex-end',
@@ -157,12 +170,12 @@ const styles = StyleSheet.create({
157
170
  overflow: 'hidden'
158
171
  },
159
172
  bottomFade: {
160
- width: 372,
173
+ width: 374,
161
174
  position: 'absolute',
162
175
  bottom: 62,
163
176
  right: 0,
164
- height: 32,
165
- backgroundImage: 'linear-gradient(to top, rgba(255,255,255), transparent)'
177
+ height: 40,
178
+ backgroundImage: 'linear-gradient(to top, rgba(255,255,255,1) 0%, rgba(255,255,255,0.8) 40%, transparent 100%)'
166
179
  },
167
180
  messageWithIcon: {
168
181
  flexDirection: 'row',
@@ -1 +1 @@
1
- {"version":3,"names":["React","useCallback","useRef","useState","Platform","ScrollView","StyleSheet","useWindowDimensions","View","useStoreMap","useUnit","SPACING","ChatbotIcon","AnimatedMessage","ChatMessage","MessageLoader","ChatInput","CloseButton","MessageVariant","ColorScheme","ConditionalWrapper","jsx","_jsx","jsxs","_jsxs","SCROLL_BOTTOM_THRESHOLD","TOOLBAR_HEIGHT","BOTTOM_OFFSET","select","web","default","Chat","model","isHintFeedback","isTextToSpeechEnabled","isInputDisabled","colorScheme","Blue","MessageWrapper","TTSHighlightRenderer","onPressClose","dimensions","ref","isOpen","$isOpen","isHelpRequestPending","sendHelpRequestFx","pending","isTextToSpeechPending","api","textToSpeechTextFx","audioStatus","t2s","$status","currentPlayingId","$currentPlayingId","highlightedWordIndex","wordHighlight","$highlightedWordIndex","isTranslated","translation","$isTranslated","errorSpottingEnabled","errorSpotting","$isEnabled","messages","$currentChatData","lastMessageId","at","id","renderedCountRef","length","showBottomFade","setShowBottomFade","handleScroll","e","contentOffset","layoutMeasurement","contentSize","nativeEvent","isAtBottom","y","height","MAX_HEIGHT","shouldWrapMessage","style","styles","container","maxHeight","children","bounces","contentContainerStyle","list","onScroll","scrollEventThrottle","onContentSizeChange","_","current","scrollToEnd","setScrollActive","gap","messagesWithoutInput","map","message","index","key","isPlayingMessage","messageHighlightIndex","isWordHighlightEnabled","isNew","hasIcon","isOwnMessage","messageWithIcon","undefined","icon","width","animate","withWrapper","Wrapper","variant","SENT","RECEIVED","withErrorSpotting","t2sState","isEnabled","isActive","isLoading","status","disabled","bottomFade","pointerEvents","inputRow","onPress","hasMessages","create","flex","alignItems","paddingRight","paddingVertical","marginBottom","flexDirection","scrollContainer","overflow","position","bottom","right","backgroundImage","marginRight"],"sourceRoot":"../../../../../../src","sources":["features/chatbot/components/Chat/Chat.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useCallback","useEffect","useRef","useState","Platform","ScrollView","StyleSheet","useWindowDimensions","View","useStoreMap","useUnit","Animated","FadeIn","FadeOut","SPACING","ChatbotIcon","AnimatedMessage","ChatMessage","MessageLoader","ChatInput","CloseButton","MessageVariant","ColorScheme","ConditionalWrapper","jsx","_jsx","jsxs","_jsxs","SCROLL_BOTTOM_THRESHOLD","TOOLBAR_HEIGHT","BOTTOM_OFFSET","select","web","default","Chat","model","isHintFeedback","isTextToSpeechEnabled","isInputDisabled","colorScheme","Blue","MessageWrapper","TTSHighlightRenderer","onPressClose","dimensions","ref","isOpen","$isOpen","isHelpRequestPending","sendHelpRequestFx","pending","isTextToSpeechPending","api","textToSpeechTextFx","audioStatus","t2s","$status","currentPlayingId","$currentPlayingId","highlightedWordIndex","wordHighlight","$highlightedWordIndex","isTranslated","translation","$isTranslated","errorSpottingEnabled","errorSpotting","$isEnabled","messages","$currentChatData","lastMessageId","at","id","renderedCountRef","length","animatedIdsRef","Set","current","showBottomFade","setShowBottomFade","handleScroll","e","contentOffset","layoutMeasurement","contentSize","nativeEvent","isAtBottom","y","height","MAX_HEIGHT","shouldWrapMessage","style","styles","container","maxHeight","children","bounces","contentContainerStyle","list","onScroll","scrollEventThrottle","onContentSizeChange","_","scrollToEnd","setScrollActive","gap","messagesWithoutInput","map","message","index","key","isPlayingMessage","messageHighlightIndex","isWordHighlightEnabled","isNew","hasIcon","isOwnMessage","has","add","shouldAnimate","messageWithIcon","undefined","icon","width","animate","withWrapper","Wrapper","variant","SENT","RECEIVED","withErrorSpotting","t2sState","isEnabled","isActive","isLoading","status","disabled","entering","duration","exiting","bottomFade","pointerEvents","inputRow","onPress","hasMessages","create","flex","alignItems","paddingRight","paddingVertical","marginBottom","flexDirection","scrollContainer","overflow","position","bottom","right","backgroundImage","marginRight"],"sourceRoot":"../../../../../../src","sources":["features/chatbot/components/Chat/Chat.tsx"],"mappings":"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","ignoreList":[]}
@@ -41,7 +41,8 @@ const styles = StyleSheet.create({
41
41
  maxWidth: 365,
42
42
  width: 305,
43
43
  alignItems: 'flex-end',
44
- justifyContent: 'flex-end'
44
+ justifyContent: 'flex-end',
45
+ paddingRight: 2
45
46
  // backgroundColor: COLORS.BLUE_6,
46
47
  },
47
48
  message: {
@@ -1 +1 @@
1
- {"version":3,"names":["React","StyleSheet","View","BORDER_RADIUS","ColorScheme","MessageVariant","MessageContent","jsx","_jsx","ReceivedMessage","message","isTranslated","t2sState","colorScheme","Blue","withErrorSpotting","highlightedWordIndex","TTSHighlightRenderer","text","translatedMessage","style","styles","container","children","variant","RECEIVED","create","flex","flexDirection","maxWidth","width","alignItems","justifyContent","padding","shadowColor","shadowOffset","height","shadowOpacity","shadowRadius","elevation","borderRadius","borderBottomLeftRadius","backgroundColor"],"sourceRoot":"../../../../../../src","sources":["features/chatbot/components/ChatMessage/ReceivedMessage.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,UAAU,EAAEC,IAAI,QAAQ,cAAc;AAC/C,SAASC,aAAa,QAAgB,4BAA4B;AAElE,SAASC,WAAW,QAAQ,4BAAyB;AACrD,SAASC,cAAc,QAAQ,4BAAyB;AAExD,SAASC,cAAc,QAAQ,qBAAkB;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAEjD,OAAO,MAAMC,eAAe,GAAGA,CAAC;EAC9BC,OAAO;EACPC,YAAY;EACZC,QAAQ;EACRC,WAAW,GAAGT,WAAW,CAACU,IAAI;EAC9BC,iBAAiB;EACjBC,oBAAoB;EACpBC;AACY,CAAC,KAAK;EAClB,MAAMC,IAAI,GAAGP,YAAY,GAAGD,OAAO,CAACS,iBAAiB,GAAGT,OAAO,CAACA,OAAO;EAEvE,oBACEF,IAAA,CAACN,IAAI;IAACkB,KAAK,EAAEC,MAAM,CAACC,SAAU;IAAAC,QAAA,eAC5Bf,IAAA,CAACN,IAAI;MAACkB,KAAK,EAAEC,MAAM,CAACX,OAAQ;MAAAa,QAAA,eAC1Bf,IAAA,CAACF,cAAc;QACbI,OAAO,EAAEA,OAAQ;QACjBc,OAAO,EAAEnB,cAAc,CAACoB,QAAS;QACjCb,QAAQ,EAAEA,QAAS;QACnBM,IAAI,EAAEA,IAAI,IAAI,EAAG;QACjBL,WAAW,EAAEA,WAAY;QACzBE,iBAAiB,EAAEA,iBAAkB;QACrCC,oBAAoB,EAAEA,oBAAqB;QAC3CC,oBAAoB,EAAEA;MAAqB,CAC5C;IAAC,CACE;EAAC,CACH,CAAC;AAEX,CAAC;AAED,MAAMI,MAAM,GAAGpB,UAAU,CAACyB,MAAM,CAAC;EAC/BJ,SAAS,EAAE;IACTK,IAAI,EAAE,CAAC;IACPC,aAAa,EAAE,KAAK;IACpBC,QAAQ,EAAE,GAAG;IACbC,KAAK,EAAE,GAAG;IACVC,UAAU,EAAE,UAAU;IACtBC,cAAc,EAAE;IAChB;EACF,CAAC;EACDtB,OAAO,EAAE;IACP;IACAiB,IAAI,EAAE,CAAC;IACPC,aAAa,EAAE,KAAK;IACpBC,QAAQ,EAAE,GAAG;IACbI,OAAO,EAAE,CAAC;IACVC,WAAW,EAAE,MAAM;IACnBC,YAAY,EAAE;MAAEL,KAAK,EAAE,CAAC;MAAEM,MAAM,EAAE;IAAE,CAAC;IACrCC,aAAa,EAAE,IAAI;IACnBC,YAAY,EAAE,CAAC;IACfC,SAAS,EAAE,CAAC;IACZC,YAAY,EAAErC,aAAa,CAAC,GAAG,CAAC;IAChCsC,sBAAsB,EAAE,CAAC;IACzBC,eAAe,EAAE,SAAS;IAC1BX,UAAU,EAAE,UAAU;IACtBC,cAAc,EAAE;EAClB;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","StyleSheet","View","BORDER_RADIUS","ColorScheme","MessageVariant","MessageContent","jsx","_jsx","ReceivedMessage","message","isTranslated","t2sState","colorScheme","Blue","withErrorSpotting","highlightedWordIndex","TTSHighlightRenderer","text","translatedMessage","style","styles","container","children","variant","RECEIVED","create","flex","flexDirection","maxWidth","width","alignItems","justifyContent","paddingRight","padding","shadowColor","shadowOffset","height","shadowOpacity","shadowRadius","elevation","borderRadius","borderBottomLeftRadius","backgroundColor"],"sourceRoot":"../../../../../../src","sources":["features/chatbot/components/ChatMessage/ReceivedMessage.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,UAAU,EAAEC,IAAI,QAAQ,cAAc;AAC/C,SAASC,aAAa,QAAgB,4BAA4B;AAElE,SAASC,WAAW,QAAQ,4BAAyB;AACrD,SAASC,cAAc,QAAQ,4BAAyB;AAExD,SAASC,cAAc,QAAQ,qBAAkB;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAEjD,OAAO,MAAMC,eAAe,GAAGA,CAAC;EAC9BC,OAAO;EACPC,YAAY;EACZC,QAAQ;EACRC,WAAW,GAAGT,WAAW,CAACU,IAAI;EAC9BC,iBAAiB;EACjBC,oBAAoB;EACpBC;AACY,CAAC,KAAK;EAClB,MAAMC,IAAI,GAAGP,YAAY,GAAGD,OAAO,CAACS,iBAAiB,GAAGT,OAAO,CAACA,OAAO;EAEvE,oBACEF,IAAA,CAACN,IAAI;IAACkB,KAAK,EAAEC,MAAM,CAACC,SAAU;IAAAC,QAAA,eAC5Bf,IAAA,CAACN,IAAI;MAACkB,KAAK,EAAEC,MAAM,CAACX,OAAQ;MAAAa,QAAA,eAC1Bf,IAAA,CAACF,cAAc;QACbI,OAAO,EAAEA,OAAQ;QACjBc,OAAO,EAAEnB,cAAc,CAACoB,QAAS;QACjCb,QAAQ,EAAEA,QAAS;QACnBM,IAAI,EAAEA,IAAI,IAAI,EAAG;QACjBL,WAAW,EAAEA,WAAY;QACzBE,iBAAiB,EAAEA,iBAAkB;QACrCC,oBAAoB,EAAEA,oBAAqB;QAC3CC,oBAAoB,EAAEA;MAAqB,CAC5C;IAAC,CACE;EAAC,CACH,CAAC;AAEX,CAAC;AAED,MAAMI,MAAM,GAAGpB,UAAU,CAACyB,MAAM,CAAC;EAC/BJ,SAAS,EAAE;IACTK,IAAI,EAAE,CAAC;IACPC,aAAa,EAAE,KAAK;IACpBC,QAAQ,EAAE,GAAG;IACbC,KAAK,EAAE,GAAG;IACVC,UAAU,EAAE,UAAU;IACtBC,cAAc,EAAE,UAAU;IAC1BC,YAAY,EAAE;IACd;EACF,CAAC;EACDvB,OAAO,EAAE;IACP;IACAiB,IAAI,EAAE,CAAC;IACPC,aAAa,EAAE,KAAK;IACpBC,QAAQ,EAAE,GAAG;IACbK,OAAO,EAAE,CAAC;IACVC,WAAW,EAAE,MAAM;IACnBC,YAAY,EAAE;MAAEN,KAAK,EAAE,CAAC;MAAEO,MAAM,EAAE;IAAE,CAAC;IACrCC,aAAa,EAAE,IAAI;IACnBC,YAAY,EAAE,CAAC;IACfC,SAAS,EAAE,CAAC;IACZC,YAAY,EAAEtC,aAAa,CAAC,GAAG,CAAC;IAChCuC,sBAAsB,EAAE,CAAC;IACzBC,eAAe,EAAE,SAAS;IAC1BZ,UAAU,EAAE,UAAU;IACtBC,cAAc,EAAE;EAClB;AACF,CAAC,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"Chat.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/chatbot/components/Chat/Chat.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,aAAa,EAAE,iBAAiB,EAAiC,MAAM,OAAO,CAAA;AAa9F,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAQvD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAErD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAU5D,KAAK,SAAS,GAAG;IACf,KAAK,EAAE,YAAY,CAAA;IACnB,cAAc,EAAE,OAAO,CAAA;IACvB,qBAAqB,EAAE,OAAO,CAAA;IAC9B,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,cAAc,CAAC,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAA;IACjD,oBAAoB,CAAC,EAAE,oBAAoB,CAAA;IAC3C,YAAY,CAAC,EAAE,MAAM,IAAI,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,IAAI,wIASd,SAAS,sBAiHX,CAAA"}
1
+ {"version":3,"file":"Chat.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/chatbot/components/Chat/Chat.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,aAAa,EAAE,iBAAiB,EAA4C,MAAM,OAAO,CAAA;AAczG,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAQvD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAErD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAU5D,KAAK,SAAS,GAAG;IACf,KAAK,EAAE,YAAY,CAAA;IACnB,cAAc,EAAE,OAAO,CAAA;IACvB,qBAAqB,EAAE,OAAO,CAAA;IAC9B,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,cAAc,CAAC,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAA;IACjD,oBAAoB,CAAC,EAAE,oBAAoB,CAAA;IAC3C,YAAY,CAAC,EAAE,MAAM,IAAI,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,IAAI,wIASd,SAAS,sBAoIX,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"Chat.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/chatbot/components/Chat/Chat.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,aAAa,EAAE,iBAAiB,EAAiC,MAAM,OAAO,CAAA;AAa9F,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAQvD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAErD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAU5D,KAAK,SAAS,GAAG;IACf,KAAK,EAAE,YAAY,CAAA;IACnB,cAAc,EAAE,OAAO,CAAA;IACvB,qBAAqB,EAAE,OAAO,CAAA;IAC9B,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,cAAc,CAAC,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAA;IACjD,oBAAoB,CAAC,EAAE,oBAAoB,CAAA;IAC3C,YAAY,CAAC,EAAE,MAAM,IAAI,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,IAAI,wIASd,SAAS,sBAiHX,CAAA"}
1
+ {"version":3,"file":"Chat.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/chatbot/components/Chat/Chat.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,aAAa,EAAE,iBAAiB,EAA4C,MAAM,OAAO,CAAA;AAczG,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAQvD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAErD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAU5D,KAAK,SAAS,GAAG;IACf,KAAK,EAAE,YAAY,CAAA;IACnB,cAAc,EAAE,OAAO,CAAA;IACvB,qBAAqB,EAAE,OAAO,CAAA;IAC9B,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,cAAc,CAAC,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAA;IACjD,oBAAoB,CAAC,EAAE,oBAAoB,CAAA;IAC3C,YAAY,CAAC,EAAE,MAAM,IAAI,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,IAAI,wIASd,SAAS,sBAoIX,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@magmamath/students-features",
3
- "version": "0.11.0-rc.3",
3
+ "version": "0.11.0-rc.4",
4
4
  "description": "Magmamath features library",
5
5
  "source": "src/index.ts",
6
6
  "main": "src/index.ts",
@@ -1,4 +1,4 @@
1
- import React, { ComponentType, PropsWithChildren, useCallback, useRef, useState } from 'react'
1
+ import React, { ComponentType, PropsWithChildren, useCallback, useEffect, useRef, useState } from 'react'
2
2
  import {
3
3
  NativeScrollEvent,
4
4
  NativeSyntheticEvent,
@@ -9,6 +9,7 @@ import {
9
9
  View,
10
10
  } from 'react-native'
11
11
  import { useStoreMap, useUnit } from 'effector-react'
12
+ import Animated, { FadeIn, FadeOut } from 'react-native-reanimated'
12
13
  import { SPACING } from '@magmamath/react-native-ui'
13
14
 
14
15
  import { ChatbotModel } from '../../model/ChatBotModel'
@@ -69,6 +70,13 @@ export const Chat = ({
69
70
  const messages = useStoreMap(model.$currentChatData, ({ messages }) => messages)
70
71
  const lastMessageId = messages.at(-1)?.id
71
72
  const renderedCountRef = useRef(messages.length)
73
+ const animatedIdsRef = useRef(new Set<string>())
74
+
75
+ useEffect(() => {
76
+ if (messages.length < renderedCountRef.current) {
77
+ renderedCountRef.current = messages.length
78
+ }
79
+ }, [messages.length])
72
80
 
73
81
  const [showBottomFade, setShowBottomFade] = useState(false)
74
82
 
@@ -111,6 +119,11 @@ export const Chat = ({
111
119
  const isNew = index >= renderedCountRef.current
112
120
  const hasIcon = !message.isOwnMessage && message.id === lastMessageId
113
121
 
122
+ if (isNew && !animatedIdsRef.current.has(message.id)) {
123
+ animatedIdsRef.current.add(message.id)
124
+ }
125
+ const shouldAnimate = animatedIdsRef.current.has(message.id)
126
+
114
127
  return (
115
128
  <View key={key} style={hasIcon ? styles.messageWithIcon : undefined}>
116
129
  {hasIcon && (
@@ -118,7 +131,7 @@ export const Chat = ({
118
131
  <ChatbotIcon width={53} height={73} />
119
132
  </View>
120
133
  )}
121
- <AnimatedMessage animate={isNew && !hasIcon}>
134
+ <AnimatedMessage animate={shouldAnimate}>
122
135
  <ConditionalWrapper withWrapper={shouldWrapMessage} Wrapper={MessageWrapper}>
123
136
  <ChatMessage
124
137
  isTranslated={isTranslated}
@@ -148,7 +161,14 @@ export const Chat = ({
148
161
  </View>
149
162
  )}
150
163
  </ScrollView>
151
- {showBottomFade && <View style={styles.bottomFade} pointerEvents="none" />}
164
+ {showBottomFade && (
165
+ <Animated.View
166
+ entering={FadeIn.duration(200)}
167
+ exiting={FadeOut.duration(200)}
168
+ style={styles.bottomFade}
169
+ pointerEvents="none"
170
+ />
171
+ )}
152
172
 
153
173
  {isOpen && (
154
174
  <View style={styles.inputRow}>
@@ -170,9 +190,9 @@ const styles = StyleSheet.create({
170
190
  container: {
171
191
  flex: 1,
172
192
  alignItems: 'flex-end',
173
- // width: 378,
193
+ width: 374,
174
194
  height: '100%',
175
- paddingRight: SPACING['200'],
195
+ paddingRight: SPACING['100'],
176
196
  },
177
197
  list: {
178
198
  alignItems: 'flex-end',
@@ -191,12 +211,13 @@ const styles = StyleSheet.create({
191
211
  overflow: 'hidden',
192
212
  },
193
213
  bottomFade: {
194
- width: 372,
214
+ width: 374,
195
215
  position: 'absolute',
196
216
  bottom: 62,
197
217
  right: 0,
198
- height: 32,
199
- backgroundImage: 'linear-gradient(to top, rgba(255,255,255), transparent)',
218
+ height: 40,
219
+ backgroundImage:
220
+ 'linear-gradient(to top, rgba(255,255,255,1) 0%, rgba(255,255,255,0.8) 40%, transparent 100%)',
200
221
  } as any,
201
222
  messageWithIcon: {
202
223
  flexDirection: 'row',
@@ -44,6 +44,7 @@ const styles = StyleSheet.create({
44
44
  width: 305,
45
45
  alignItems: 'flex-end',
46
46
  justifyContent: 'flex-end',
47
+ paddingRight: 2,
47
48
  // backgroundColor: COLORS.BLUE_6,
48
49
  },
49
50
  message: {