react-native-gifted-chat 2.6.5 → 2.7.1

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 (228) hide show
  1. package/README.md +8 -17
  2. package/lib/Actions.d.ts +0 -11
  3. package/lib/Actions.js +2 -14
  4. package/lib/Actions.js.map +1 -1
  5. package/lib/Avatar.d.ts +1 -23
  6. package/lib/Avatar.js +32 -40
  7. package/lib/Avatar.js.map +1 -1
  8. package/lib/Bubble/index.d.ts +30 -0
  9. package/lib/{Bubble.js → Bubble/index.js} +31 -181
  10. package/lib/Bubble/index.js.map +1 -0
  11. package/lib/Bubble/styles.d.ts +69 -0
  12. package/lib/Bubble/styles.js +72 -0
  13. package/lib/Bubble/styles.js.map +1 -0
  14. package/lib/Bubble/types.d.ts +47 -0
  15. package/lib/Bubble/types.js +2 -0
  16. package/lib/Bubble/types.js.map +1 -0
  17. package/lib/Composer.d.ts +0 -17
  18. package/lib/Composer.js +3 -18
  19. package/lib/Composer.js.map +1 -1
  20. package/lib/Constant.d.ts +1 -1
  21. package/lib/Constant.js +1 -1
  22. package/lib/Constant.js.map +1 -1
  23. package/lib/Day/index.d.ts +4 -0
  24. package/lib/Day/index.js +39 -0
  25. package/lib/Day/index.js.map +1 -0
  26. package/lib/Day/styles.d.ts +20 -0
  27. package/lib/Day/styles.js +22 -0
  28. package/lib/Day/styles.js.map +1 -0
  29. package/lib/Day/types.d.ts +9 -0
  30. package/lib/Day/types.js +2 -0
  31. package/lib/Day/types.js.map +1 -0
  32. package/lib/GiftedAvatar.d.ts +1 -11
  33. package/lib/GiftedAvatar.js +26 -33
  34. package/lib/GiftedAvatar.js.map +1 -1
  35. package/lib/GiftedChat/index.d.ts +26 -0
  36. package/lib/{GiftedChat.js → GiftedChat/index.js} +46 -52
  37. package/lib/GiftedChat/index.js.map +1 -0
  38. package/lib/GiftedChat/styles.d.ts +6 -0
  39. package/lib/GiftedChat/styles.js +7 -0
  40. package/lib/GiftedChat/styles.js.map +1 -0
  41. package/lib/{GiftedChat.d.ts → GiftedChat/types.d.ts} +28 -38
  42. package/lib/GiftedChat/types.js +2 -0
  43. package/lib/GiftedChat/types.js.map +1 -0
  44. package/lib/InputToolbar.d.ts +1 -14
  45. package/lib/InputToolbar.js +0 -12
  46. package/lib/InputToolbar.js.map +1 -1
  47. package/lib/LoadEarlier.d.ts +0 -14
  48. package/lib/LoadEarlier.js +2 -16
  49. package/lib/LoadEarlier.js.map +1 -1
  50. package/lib/Message/index.d.ts +6 -0
  51. package/lib/Message/index.js +85 -0
  52. package/lib/Message/index.js.map +1 -0
  53. package/lib/Message/styles.d.ts +21 -0
  54. package/lib/Message/styles.js +22 -0
  55. package/lib/Message/styles.js.map +1 -0
  56. package/lib/Message/types.d.ts +22 -0
  57. package/lib/Message/types.js +2 -0
  58. package/lib/Message/types.js.map +1 -0
  59. package/lib/MessageAudio.js +1 -2
  60. package/lib/MessageAudio.js.map +1 -1
  61. package/lib/MessageContainer/components/DayAnimated/index.d.ts +5 -0
  62. package/lib/MessageContainer/components/DayAnimated/index.js +85 -0
  63. package/lib/MessageContainer/components/DayAnimated/index.js.map +1 -0
  64. package/lib/MessageContainer/components/DayAnimated/styles.d.ts +11 -0
  65. package/lib/MessageContainer/components/DayAnimated/styles.js +12 -0
  66. package/lib/MessageContainer/components/DayAnimated/styles.js.map +1 -0
  67. package/lib/MessageContainer/components/DayAnimated/types.d.ts +17 -0
  68. package/lib/MessageContainer/components/DayAnimated/types.js +2 -0
  69. package/lib/MessageContainer/components/DayAnimated/types.js.map +1 -0
  70. package/lib/MessageContainer/components/Item/index.d.ts +22 -0
  71. package/lib/MessageContainer/components/Item/index.js +69 -0
  72. package/lib/MessageContainer/components/Item/index.js.map +1 -0
  73. package/lib/MessageContainer/components/Item/types.d.ts +18 -0
  74. package/lib/MessageContainer/components/Item/types.js +2 -0
  75. package/lib/MessageContainer/components/Item/types.js.map +1 -0
  76. package/lib/MessageContainer/index.d.ts +6 -0
  77. package/lib/MessageContainer/index.js +200 -0
  78. package/lib/MessageContainer/index.js.map +1 -0
  79. package/lib/MessageContainer/styles.d.ts +34 -0
  80. package/lib/MessageContainer/styles.js +31 -0
  81. package/lib/MessageContainer/styles.js.map +1 -0
  82. package/lib/MessageContainer/types.d.ts +54 -0
  83. package/lib/MessageContainer/types.js +2 -0
  84. package/lib/MessageContainer/types.js.map +1 -0
  85. package/lib/MessageImage.d.ts +1 -12
  86. package/lib/MessageImage.js +2 -12
  87. package/lib/MessageImage.js.map +1 -1
  88. package/lib/MessageText.d.ts +1 -24
  89. package/lib/MessageText.js +0 -22
  90. package/lib/MessageText.js.map +1 -1
  91. package/lib/MessageVideo.js +1 -2
  92. package/lib/MessageVideo.js.map +1 -1
  93. package/lib/QuickReplies.d.ts +1 -12
  94. package/lib/QuickReplies.js +10 -20
  95. package/lib/QuickReplies.js.map +1 -1
  96. package/lib/Send.d.ts +2 -16
  97. package/lib/Send.js +0 -13
  98. package/lib/Send.js.map +1 -1
  99. package/lib/SystemMessage.d.ts +1 -10
  100. package/lib/SystemMessage.js +2 -12
  101. package/lib/SystemMessage.js.map +1 -1
  102. package/lib/Time.d.ts +1 -17
  103. package/lib/Time.js +0 -15
  104. package/lib/Time.js.map +1 -1
  105. package/lib/TypingIndicator/index.d.ts +5 -0
  106. package/lib/{TypingIndicator.js → TypingIndicator/index.js} +9 -30
  107. package/lib/TypingIndicator/index.js.map +1 -0
  108. package/lib/TypingIndicator/styles.d.ts +20 -0
  109. package/lib/TypingIndicator/styles.js +22 -0
  110. package/lib/TypingIndicator/styles.js.map +1 -0
  111. package/lib/TypingIndicator/types.d.ts +3 -0
  112. package/lib/TypingIndicator/types.js +2 -0
  113. package/lib/TypingIndicator/types.js.map +1 -0
  114. package/lib/index.d.ts +0 -1
  115. package/lib/index.js +0 -1
  116. package/lib/index.js.map +1 -1
  117. package/lib/styles.d.ts +10 -0
  118. package/lib/styles.js +11 -0
  119. package/lib/styles.js.map +1 -0
  120. package/lib/{Models.d.ts → types.d.ts} +1 -1
  121. package/lib/types.js +2 -0
  122. package/lib/types.js.map +1 -0
  123. package/lib/utils.d.ts +1 -3
  124. package/lib/utils.js +0 -7
  125. package/lib/utils.js.map +1 -1
  126. package/package.json +21 -29
  127. package/src/Actions.tsx +3 -15
  128. package/src/Avatar.tsx +43 -52
  129. package/src/{Bubble.tsx → Bubble/index.tsx} +52 -269
  130. package/src/Bubble/styles.ts +73 -0
  131. package/src/Bubble/types.ts +90 -0
  132. package/src/Composer.tsx +3 -19
  133. package/src/Constant.ts +1 -1
  134. package/src/Day/index.tsx +63 -0
  135. package/src/Day/styles.ts +22 -0
  136. package/src/Day/types.ts +14 -0
  137. package/src/GiftedAvatar.tsx +31 -38
  138. package/src/GiftedChat/index.tsx +501 -0
  139. package/src/GiftedChat/styles.ts +7 -0
  140. package/src/GiftedChat/types.ts +206 -0
  141. package/src/InputToolbar.tsx +1 -14
  142. package/src/LoadEarlier.tsx +2 -17
  143. package/src/Message/index.tsx +135 -0
  144. package/src/Message/styles.ts +22 -0
  145. package/src/Message/types.ts +26 -0
  146. package/src/MessageAudio.tsx +1 -4
  147. package/src/MessageContainer/components/DayAnimated/index.tsx +143 -0
  148. package/src/MessageContainer/components/DayAnimated/styles.ts +12 -0
  149. package/src/MessageContainer/components/DayAnimated/types.ts +12 -0
  150. package/src/MessageContainer/components/Item/index.tsx +136 -0
  151. package/src/MessageContainer/components/Item/types.ts +13 -0
  152. package/src/MessageContainer/index.tsx +343 -0
  153. package/src/MessageContainer/styles.ts +31 -0
  154. package/src/MessageContainer/types.ts +60 -0
  155. package/src/MessageImage.tsx +3 -14
  156. package/src/MessageText.tsx +1 -24
  157. package/src/MessageVideo.tsx +1 -4
  158. package/src/QuickReplies.tsx +14 -25
  159. package/src/Send.tsx +1 -15
  160. package/src/SystemMessage.tsx +3 -14
  161. package/src/Time.tsx +1 -17
  162. package/src/{TypingIndicator.tsx → TypingIndicator/index.tsx} +12 -35
  163. package/src/TypingIndicator/styles.ts +22 -0
  164. package/src/TypingIndicator/types.ts +3 -0
  165. package/src/__tests__/Bubble.test.tsx +7 -4
  166. package/src/__tests__/GiftedAvatar.test.tsx +6 -2
  167. package/src/__tests__/GiftedChat.test.tsx +20 -14
  168. package/src/__tests__/Message.test.tsx +4 -1
  169. package/src/__tests__/__snapshots__/Actions.test.tsx.snap +6 -2
  170. package/src/__tests__/__snapshots__/Bubble.test.tsx.snap +3 -1
  171. package/src/__tests__/__snapshots__/Composer.test.tsx.snap +2 -0
  172. package/src/__tests__/__snapshots__/Constant.test.tsx.snap +1 -1
  173. package/src/__tests__/__snapshots__/Day.test.tsx.snap +1 -33
  174. package/src/__tests__/__snapshots__/GiftedAvatar.test.tsx.snap +4 -2
  175. package/src/__tests__/__snapshots__/GiftedChat.test.tsx.snap +22 -9
  176. package/src/__tests__/__snapshots__/InputToolbar.test.tsx.snap +2 -0
  177. package/src/__tests__/__snapshots__/LoadEarlier.test.tsx.snap +3 -1
  178. package/src/__tests__/__snapshots__/Message.test.tsx.snap +21 -100
  179. package/src/__tests__/__snapshots__/MessageContainer.test.tsx.snap +282 -82
  180. package/src/__tests__/__snapshots__/MessageImage.test.tsx.snap +8 -4
  181. package/src/__tests__/__snapshots__/SystemMessage.test.tsx.snap +5 -1
  182. package/src/__tests__/data.ts +1 -1
  183. package/src/index.ts +0 -2
  184. package/src/styles.ts +11 -0
  185. package/src/{Models.ts → types.ts} +1 -1
  186. package/src/utils.ts +1 -9
  187. package/lib/Actions.js.flow +0 -21
  188. package/lib/Avatar.js.flow +0 -27
  189. package/lib/Bubble.d.ts +0 -148
  190. package/lib/Bubble.js.flow +0 -69
  191. package/lib/Bubble.js.map +0 -1
  192. package/lib/Composer.js.flow +0 -24
  193. package/lib/Day.d.ts +0 -15
  194. package/lib/Day.js +0 -36
  195. package/lib/Day.js.flow +0 -23
  196. package/lib/Day.js.map +0 -1
  197. package/lib/GiftedAvatar.js.flow +0 -17
  198. package/lib/GiftedChat.js.flow +0 -163
  199. package/lib/GiftedChat.js.map +0 -1
  200. package/lib/InputToolbar.js.flow +0 -31
  201. package/lib/LoadEarlier.js.flow +0 -20
  202. package/lib/Message.d.ts +0 -67
  203. package/lib/Message.js +0 -157
  204. package/lib/Message.js.flow +0 -32
  205. package/lib/Message.js.map +0 -1
  206. package/lib/MessageAudio.js.flow +0 -15
  207. package/lib/MessageContainer.d.ts +0 -105
  208. package/lib/MessageContainer.js +0 -224
  209. package/lib/MessageContainer.js.flow +0 -39
  210. package/lib/MessageContainer.js.map +0 -1
  211. package/lib/MessageImage.js.flow +0 -20
  212. package/lib/MessageText.js.flow +0 -23
  213. package/lib/MessageVideo.js.flow +0 -16
  214. package/lib/Models.js +0 -2
  215. package/lib/Models.js.map +0 -1
  216. package/lib/QuickReplies.js.flow +0 -25
  217. package/lib/Send.js.flow +0 -19
  218. package/lib/SystemMessage.js.flow +0 -18
  219. package/lib/Time.js.flow +0 -19
  220. package/lib/TypingIndicator.d.ts +0 -6
  221. package/lib/TypingIndicator.js.map +0 -1
  222. package/lib/index.js.flow +0 -2
  223. package/lib/types.js.flow +0 -43
  224. package/lib/utils.js.flow +0 -16
  225. package/src/Day.tsx +0 -71
  226. package/src/GiftedChat.tsx +0 -689
  227. package/src/Message.tsx +0 -229
  228. package/src/MessageContainer.tsx +0 -361
@@ -2,35 +2,36 @@ import React, { createRef, useEffect, useMemo, useRef, useState, useCallback, }
2
2
  import { ActionSheetProvider, } from '@expo/react-native-action-sheet';
3
3
  import dayjs from 'dayjs';
4
4
  import localizedFormat from 'dayjs/plugin/localizedFormat';
5
- import { Platform, StyleSheet, View, } from 'react-native';
6
- import { v4 as uuidv4 } from 'uuid';
7
- import { Actions } from './Actions';
8
- import { Avatar } from './Avatar';
9
- import Bubble from './Bubble';
10
- import { Composer } from './Composer';
11
- import { MAX_COMPOSER_HEIGHT, MIN_COMPOSER_HEIGHT, TEST_ID } from './Constant';
12
- import { Day } from './Day';
13
- import { GiftedAvatar } from './GiftedAvatar';
14
- import { GiftedChatContext } from './GiftedChatContext';
15
- import { InputToolbar } from './InputToolbar';
16
- import { LoadEarlier } from './LoadEarlier';
17
- import Message from './Message';
18
- import MessageContainer from './MessageContainer';
19
- import { MessageImage } from './MessageImage';
20
- import { MessageText } from './MessageText';
21
- import { Send } from './Send';
22
- import { SystemMessage } from './SystemMessage';
23
- import { Time } from './Time';
24
- import * as utils from './utils';
25
- import Animated, { useAnimatedKeyboard, useAnimatedStyle, useAnimatedReaction, useSharedValue, withTiming, runOnJS, } from 'react-native-reanimated';
26
- import { useSafeAreaInsets } from 'react-native-safe-area-context';
5
+ import { Platform, View, } from 'react-native';
6
+ import { Actions } from '../Actions';
7
+ import { Avatar } from '../Avatar';
8
+ import Bubble from '../Bubble';
9
+ import { Composer } from '../Composer';
10
+ import { MAX_COMPOSER_HEIGHT, MIN_COMPOSER_HEIGHT, TEST_ID } from '../Constant';
11
+ import { Day } from '../Day';
12
+ import { GiftedAvatar } from '../GiftedAvatar';
13
+ import { GiftedChatContext } from '../GiftedChatContext';
14
+ import { InputToolbar } from '../InputToolbar';
15
+ import { LoadEarlier } from '../LoadEarlier';
16
+ import Message from '../Message';
17
+ import MessageContainer from '../MessageContainer';
18
+ import { MessageImage } from '../MessageImage';
19
+ import { MessageText } from '../MessageText';
20
+ import { Send } from '../Send';
21
+ import { SystemMessage } from '../SystemMessage';
22
+ import { Time } from '../Time';
23
+ import * as utils from '../utils';
24
+ import Animated, { useAnimatedStyle, useAnimatedReaction, useSharedValue, withTiming, runOnJS, } from 'react-native-reanimated';
25
+ import { KeyboardProvider, useReanimatedKeyboardAnimation } from 'react-native-keyboard-controller';
26
+ import stylesCommon from '../styles';
27
+ import styles from './styles';
27
28
  dayjs.extend(localizedFormat);
28
29
  function GiftedChat(props) {
29
- const { messages = [], initialText = '', isTyping, messageIdGenerator = () => uuidv4(), user = {}, onSend, locale = 'en', renderLoading, actionSheet = null, textInputProps, renderChatFooter = null, renderInputToolbar = null, bottomOffset = 0, focusOnInputWhenOpeningKeyboard = true, keyboardShouldPersistTaps = Platform.select({
30
+ const { messages = [], initialText = '', isTyping, messageIdGenerator = () => crypto.randomUUID(), user = {}, onSend, locale = 'en', renderLoading, actionSheet = null, textInputProps, renderChatFooter = null, renderInputToolbar = null, bottomOffset = 0, focusOnInputWhenOpeningKeyboard = true, keyboardShouldPersistTaps = Platform.select({
30
31
  ios: 'never',
31
32
  android: 'always',
32
33
  default: 'never',
33
- }), onInputTextChanged = null, maxInputLength = null, inverted = true, minComposerHeight = MIN_COMPOSER_HEIGHT, maxComposerHeight = MAX_COMPOSER_HEIGHT, isKeyboardInternallyHandled = true, isStatusBarTranslucentAndroid, } = props;
34
+ }), onInputTextChanged = null, maxInputLength = null, inverted = true, minComposerHeight = MIN_COMPOSER_HEIGHT, maxComposerHeight = MAX_COMPOSER_HEIGHT, isKeyboardInternallyHandled = true, } = props;
34
35
  const actionSheetRef = useRef(null);
35
36
  const messageContainerRef = useMemo(() => props.messageContainerRef || createRef(), [props.messageContainerRef]);
36
37
  const textInputRef = useMemo(() => props.textInputRef || createRef(), [props.textInputRef]);
@@ -39,14 +40,13 @@ function GiftedChat(props) {
39
40
  const [composerHeight, setComposerHeight] = useState(minComposerHeight);
40
41
  const [text, setText] = useState(() => props.text || '');
41
42
  const [isTypingDisabled, setIsTypingDisabled] = useState(false);
42
- const keyboard = useAnimatedKeyboard({ isStatusBarTranslucentAndroid });
43
+ const keyboard = useReanimatedKeyboardAnimation();
43
44
  const trackingKeyboardMovement = useSharedValue(false);
44
- const debounceEnableTypingTimeoutId = useRef();
45
- const insets = useSafeAreaInsets();
45
+ const debounceEnableTypingTimeoutId = useRef(undefined);
46
46
  const keyboardOffsetBottom = useSharedValue(0);
47
47
  const contentStyleAnim = useAnimatedStyle(() => ({
48
48
  transform: [
49
- { translateY: -keyboard.height.value + keyboardOffsetBottom.value },
49
+ { translateY: keyboard.height.value - keyboardOffsetBottom.value },
50
50
  ],
51
51
  }), [keyboard, keyboardOffsetBottom]);
52
52
  const getTextFromProp = useCallback((fallback) => {
@@ -107,7 +107,7 @@ function GiftedChat(props) {
107
107
  if (!isInitialized)
108
108
  return null;
109
109
  const { messagesContainerStyle, ...messagesContainerProps } = props;
110
- const fragment = (<View style={[styles.fill, messagesContainerStyle]}>
110
+ const fragment = (<View style={[stylesCommon.fill, messagesContainerStyle]}>
111
111
  <MessageContainer {...messagesContainerProps} invertibleScrollViewProps={{
112
112
  inverted,
113
113
  keyboardShouldPersistTaps,
@@ -157,7 +157,8 @@ function GiftedChat(props) {
157
157
  resetInputToolbar();
158
158
  }
159
159
  onSend?.(newMessages);
160
- }, [messageIdGenerator, onSend, user, resetInputToolbar, disableTyping]);
160
+ setTimeout(() => scrollToBottom(), 10);
161
+ }, [messageIdGenerator, onSend, user, resetInputToolbar, disableTyping, scrollToBottom]);
161
162
  const onInputSizeChanged = useCallback((size) => {
162
163
  const newComposerHeight = Math.max(minComposerHeight, Math.min(maxComposerHeight, size.height));
163
164
  setComposerHeight(newComposerHeight);
@@ -227,16 +228,12 @@ function GiftedChat(props) {
227
228
  if (props.text != null)
228
229
  setText(props.text);
229
230
  }, [props.text]);
230
- useEffect(() => {
231
- if (!inverted && messages?.length)
232
- setTimeout(() => scrollToBottom(false), 200);
233
- }, [messages?.length, inverted, scrollToBottom]);
234
- useAnimatedReaction(() => keyboard.height.value, (value, prevValue) => {
231
+ useAnimatedReaction(() => -keyboard.height.value, (value, prevValue) => {
235
232
  if (prevValue !== null && value !== prevValue) {
236
233
  const isKeyboardMovingUp = value > prevValue;
237
234
  if (isKeyboardMovingUp !== trackingKeyboardMovement.value) {
238
235
  trackingKeyboardMovement.value = isKeyboardMovingUp;
239
- keyboardOffsetBottom.value = withTiming(isKeyboardMovingUp ? insets.bottom + bottomOffset : 0, {
236
+ keyboardOffsetBottom.value = withTiming(isKeyboardMovingUp ? bottomOffset : 0, {
240
237
  // If `bottomOffset` exists, we change the duration to a smaller value to fix the delay in the keyboard animation speed
241
238
  duration: bottomOffset ? 150 : 400,
242
239
  });
@@ -258,18 +255,18 @@ function GiftedChat(props) {
258
255
  keyboard,
259
256
  trackingKeyboardMovement,
260
257
  focusOnInputWhenOpeningKeyboard,
261
- insets,
262
258
  handleTextInputFocusWhenKeyboardHide,
263
259
  handleTextInputFocusWhenKeyboardShow,
264
260
  enableTyping,
265
261
  disableTyping,
266
262
  debounceEnableTyping,
263
+ bottomOffset,
267
264
  ]);
268
265
  return (<GiftedChatContext.Provider value={contextValues}>
269
266
  <ActionSheetProvider ref={actionSheetRef}>
270
- <View testID={TEST_ID.WRAPPER} style={[styles.fill, styles.contentContainer]} onLayout={onInitialLayoutViewLayout}>
267
+ <View testID={TEST_ID.WRAPPER} style={[stylesCommon.fill, styles.contentContainer]} onLayout={onInitialLayoutViewLayout}>
271
268
  {isInitialized
272
- ? (<Animated.View style={[styles.fill, isKeyboardInternallyHandled && contentStyleAnim]}>
269
+ ? (<Animated.View style={[stylesCommon.fill, isKeyboardInternallyHandled && contentStyleAnim]}>
273
270
  {renderMessages}
274
271
  {inputToolbarFragment}
275
272
  </Animated.View>)
@@ -278,28 +275,25 @@ function GiftedChat(props) {
278
275
  </ActionSheetProvider>
279
276
  </GiftedChatContext.Provider>);
280
277
  }
281
- GiftedChat.append = (currentMessages = [], messages, inverted = true) => {
278
+ function GiftedChatWrapper(props) {
279
+ return (<KeyboardProvider>
280
+ <GiftedChat {...props}/>
281
+ </KeyboardProvider>);
282
+ }
283
+ GiftedChatWrapper.append = (currentMessages = [], messages, inverted = true) => {
282
284
  if (!Array.isArray(messages))
283
285
  messages = [messages];
284
286
  return inverted
285
287
  ? messages.concat(currentMessages)
286
288
  : currentMessages.concat(messages);
287
289
  };
288
- GiftedChat.prepend = (currentMessages = [], messages, inverted = true) => {
290
+ GiftedChatWrapper.prepend = (currentMessages = [], messages, inverted = true) => {
289
291
  if (!Array.isArray(messages))
290
292
  messages = [messages];
291
293
  return inverted
292
294
  ? currentMessages.concat(messages)
293
295
  : messages.concat(currentMessages);
294
296
  };
295
- const styles = StyleSheet.create({
296
- fill: {
297
- flex: 1,
298
- },
299
- contentContainer: {
300
- overflow: 'hidden',
301
- },
302
- });
303
- export * from './Models';
304
- export { GiftedChat, Actions, Avatar, Bubble, SystemMessage, MessageImage, MessageText, Composer, Day, InputToolbar, LoadEarlier, Message, MessageContainer, Send, Time, GiftedAvatar, utils };
305
- //# sourceMappingURL=GiftedChat.js.map
297
+ export * from '../types';
298
+ export { GiftedChatWrapper as GiftedChat, Actions, Avatar, Bubble, SystemMessage, MessageImage, MessageText, Composer, Day, InputToolbar, LoadEarlier, Message, MessageContainer, Send, Time, GiftedAvatar, utils };
299
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/GiftedChat/index.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ declare const _default: {
2
+ contentContainer: {
3
+ overflow: "hidden";
4
+ };
5
+ };
6
+ export default _default;
@@ -0,0 +1,7 @@
1
+ import { StyleSheet } from 'react-native';
2
+ export default StyleSheet.create({
3
+ contentContainer: {
4
+ overflow: 'hidden',
5
+ },
6
+ });
7
+ //# sourceMappingURL=styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../src/GiftedChat/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAEzC,eAAe,UAAU,CAAC,MAAM,CAAC;IAC/B,gBAAgB,EAAE;QAChB,QAAQ,EAAE,QAAQ;KACnB;CACF,CAAC,CAAA"}
@@ -1,35 +1,33 @@
1
- import React from 'react';
1
+ import React, { RefObject } from 'react';
2
2
  import { ActionSheetOptions } from '@expo/react-native-action-sheet';
3
- import { FlatList, StyleProp, TextInput, TextStyle, ViewStyle } from 'react-native';
3
+ import { TextInput, StyleProp, TextStyle, ViewStyle } from 'react-native';
4
4
  import { LightboxProps } from 'react-native-lightbox-v2';
5
- import { Actions, ActionsProps } from './Actions';
6
- import { Avatar, AvatarProps } from './Avatar';
7
- import Bubble from './Bubble';
8
- import { Composer, ComposerProps } from './Composer';
9
- import { Day, DayProps } from './Day';
10
- import { GiftedAvatar } from './GiftedAvatar';
11
- import { InputToolbar, InputToolbarProps } from './InputToolbar';
12
- import { LoadEarlier, LoadEarlierProps } from './LoadEarlier';
13
- import Message from './Message';
14
- import MessageContainer from './MessageContainer';
15
- import { MessageImage, MessageImageProps } from './MessageImage';
16
- import { MessageText, MessageTextProps } from './MessageText';
17
- import { IMessage, LeftRightStyle, MessageAudioProps, MessageVideoProps, Reply, User } from './Models';
18
- import { QuickRepliesProps } from './QuickReplies';
19
- import { Send, SendProps } from './Send';
20
- import { SystemMessage, SystemMessageProps } from './SystemMessage';
21
- import { Time, TimeProps } from './Time';
22
- import * as utils from './utils';
23
- export interface GiftedChatProps<TMessage extends IMessage = IMessage> extends Partial<Omit<MessageContainer<TMessage>, 'scrollToBottom'>> {
24
- messageContainerRef?: React.RefObject<FlatList<IMessage>>;
25
- textInputRef?: React.RefObject<TextInput>;
5
+ import { ActionsProps } from '../Actions';
6
+ import { AvatarProps } from '../Avatar';
7
+ import { ComposerProps } from '../Composer';
8
+ import { DayProps } from '../Day';
9
+ import { InputToolbarProps } from '../InputToolbar';
10
+ import { LoadEarlierProps } from '../LoadEarlier';
11
+ import { MessageProps } from '../Message';
12
+ import { MessageImageProps } from '../MessageImage';
13
+ import { MessageTextProps } from '../MessageText';
14
+ import { IMessage, LeftRightStyle, MessageAudioProps, MessageVideoProps, Reply, User } from '../types';
15
+ import { QuickRepliesProps } from '../QuickReplies';
16
+ import { SendProps } from '../Send';
17
+ import { SystemMessageProps } from '../SystemMessage';
18
+ import { TimeProps } from '../Time';
19
+ import MessageContainer, { AnimatedList, ListViewProps } from '../MessageContainer';
20
+ import Bubble from '../Bubble';
21
+ export interface GiftedChatProps<TMessage extends IMessage = IMessage> extends Partial<Omit<typeof MessageContainer<TMessage>, 'isScrollToBottomEnabled'>> {
22
+ messageContainerRef?: RefObject<AnimatedList>;
23
+ textInputRef?: RefObject<TextInput>;
26
24
  messages?: TMessage[];
27
25
  isTyping?: boolean;
28
26
  renderUsernameOnMessage?: boolean;
29
27
  messagesContainerStyle?: StyleProp<ViewStyle>;
30
28
  text?: string;
31
29
  alignTop?: boolean;
32
- scrollToBottom?: boolean;
30
+ isScrollToBottomEnabled?: boolean;
33
31
  scrollToBottomStyle?: StyleProp<ViewStyle>;
34
32
  initialText?: string;
35
33
  placeholder?: string;
@@ -38,6 +36,7 @@ export interface GiftedChatProps<TMessage extends IMessage = IMessage> extends P
38
36
  locale?: string;
39
37
  timeFormat?: string;
40
38
  dateFormat?: string;
39
+ dateFormatCalendar?: object;
41
40
  loadEarlier?: boolean;
42
41
  isLoadingEarlier?: boolean;
43
42
  isKeyboardInternallyHandled?: boolean;
@@ -45,12 +44,12 @@ export interface GiftedChatProps<TMessage extends IMessage = IMessage> extends P
45
44
  showAvatarForEveryMessage?: boolean;
46
45
  renderAvatarOnTop?: boolean;
47
46
  inverted?: boolean;
48
- imageProps?: Message<TMessage>['props'];
47
+ imageProps?: MessageImageProps<TMessage>;
49
48
  lightboxProps?: LightboxProps;
50
49
  bottomOffset?: number;
51
50
  focusOnInputWhenOpeningKeyboard?: boolean;
52
51
  minInputToolbarHeight?: number;
53
- listViewProps?: object;
52
+ listViewProps?: ListViewProps;
54
53
  textInputProps?: object;
55
54
  keyboardShouldPersistTaps?: 'always' | 'never' | 'handled';
56
55
  maxInputLength?: number;
@@ -69,8 +68,6 @@ export interface GiftedChatProps<TMessage extends IMessage = IMessage> extends P
69
68
  isCustomViewBottom?: boolean;
70
69
  infiniteScroll?: boolean;
71
70
  timeTextStyle?: LeftRightStyle<TextStyle>;
72
- /** If you use translucent status bar on Android, set this option to true. Ignored on iOS. */
73
- isStatusBarTranslucentAndroid?: boolean;
74
71
  actionSheet?(): {
75
72
  showActionSheetWithOptions: (options: ActionSheetOptions, callback: (buttonIndex: number) => void | Promise<void>) => void;
76
73
  };
@@ -87,13 +84,13 @@ export interface GiftedChatProps<TMessage extends IMessage = IMessage> extends P
87
84
  onPress?(context: unknown, message: TMessage): void;
88
85
  onLongPress?(context: unknown, message: TMessage): void;
89
86
  renderUsername?(user: User): React.ReactNode;
90
- renderMessage?(message: Message<TMessage>['props']): React.ReactElement;
87
+ renderMessage?(message: MessageProps<TMessage>): React.ReactElement;
91
88
  renderMessageText?(messageText: MessageTextProps<TMessage>): React.ReactNode;
92
89
  renderMessageImage?(props: MessageImageProps<TMessage>): React.ReactNode;
93
90
  renderMessageVideo?(props: MessageVideoProps<TMessage>): React.ReactNode;
94
91
  renderMessageAudio?(props: MessageAudioProps<TMessage>): React.ReactNode;
95
92
  renderCustomView?(props: Bubble<TMessage>['props']): React.ReactNode;
96
- renderDay?(props: DayProps<TMessage>): React.ReactNode;
93
+ renderDay?(props: DayProps): React.ReactNode;
97
94
  renderTime?(props: TimeProps<TMessage>): React.ReactNode;
98
95
  renderFooter?(): React.ReactNode;
99
96
  renderChatEmpty?(): React.ReactNode;
@@ -116,12 +113,5 @@ export interface GiftedChatProps<TMessage extends IMessage = IMessage> extends P
116
113
  renderQuickReplies?(quickReplies: QuickRepliesProps<TMessage>): React.ReactNode;
117
114
  renderQuickReplySend?(): React.ReactNode;
118
115
  scrollToBottomComponent?(): React.ReactNode;
119
- shouldUpdateMessage?(props: Message<TMessage>['props'], nextProps: Message<TMessage>['props']): boolean;
116
+ shouldUpdateMessage?(props: MessageProps<TMessage>, nextProps: MessageProps<TMessage>): boolean;
120
117
  }
121
- declare function GiftedChat<TMessage extends IMessage = IMessage>(props: GiftedChatProps): React.JSX.Element;
122
- declare namespace GiftedChat {
123
- var append: <TMessage extends IMessage>(currentMessages: TMessage[] | undefined, messages: TMessage[], inverted?: boolean) => TMessage[];
124
- var prepend: <TMessage extends IMessage>(currentMessages: TMessage[] | undefined, messages: TMessage[], inverted?: boolean) => TMessage[];
125
- }
126
- export * from './Models';
127
- export { GiftedChat, Actions, Avatar, Bubble, SystemMessage, MessageImage, MessageText, Composer, Day, InputToolbar, LoadEarlier, Message, MessageContainer, Send, Time, GiftedAvatar, utils };
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/GiftedChat/types.ts"],"names":[],"mappings":""}
@@ -1,10 +1,9 @@
1
- import PropTypes from 'prop-types';
2
1
  import React from 'react';
3
2
  import { StyleProp, ViewStyle } from 'react-native';
4
3
  import { ComposerProps } from './Composer';
5
4
  import { SendProps } from './Send';
6
5
  import { ActionsProps } from './Actions';
7
- import { IMessage } from './Models';
6
+ import { IMessage } from './types';
8
7
  export interface InputToolbarProps<TMessage extends IMessage> {
9
8
  options?: {
10
9
  [key: string]: () => void;
@@ -22,15 +21,3 @@ export interface InputToolbarProps<TMessage extends IMessage> {
22
21
  wrapperStyle?: StyleProp<ViewStyle>;
23
22
  }
24
23
  export declare function InputToolbar<TMessage extends IMessage = IMessage>(props: InputToolbarProps<TMessage>): React.JSX.Element;
25
- export declare namespace InputToolbar {
26
- var propTypes: {
27
- renderAccessory: PropTypes.Requireable<(...args: any[]) => any>;
28
- renderActions: PropTypes.Requireable<(...args: any[]) => any>;
29
- renderSend: PropTypes.Requireable<(...args: any[]) => any>;
30
- renderComposer: PropTypes.Requireable<(...args: any[]) => any>;
31
- onPressActionButton: PropTypes.Requireable<(...args: any[]) => any>;
32
- containerStyle: PropTypes.Requireable<NonNullable<number | boolean | object | null | undefined>>;
33
- primaryStyle: PropTypes.Requireable<NonNullable<number | boolean | object | null | undefined>>;
34
- accessoryStyle: PropTypes.Requireable<NonNullable<number | boolean | object | null | undefined>>;
35
- };
36
- }
@@ -1,11 +1,9 @@
1
- import PropTypes from 'prop-types';
2
1
  import React, { useMemo } from 'react';
3
2
  import { StyleSheet, View } from 'react-native';
4
3
  import { Composer } from './Composer';
5
4
  import { Send } from './Send';
6
5
  import { Actions } from './Actions';
7
6
  import Color from './Color';
8
- import { StylePropType } from './utils';
9
7
  export function InputToolbar(props) {
10
8
  const { renderActions, onPressActionButton, renderComposer, renderSend, renderAccessory, options, optionTintColor, icon, wrapperStyle, containerStyle, } = props;
11
9
  const actionsFragment = useMemo(() => {
@@ -40,16 +38,6 @@ export function InputToolbar(props) {
40
38
  </View>)}
41
39
  </View>);
42
40
  }
43
- InputToolbar.propTypes = {
44
- renderAccessory: PropTypes.func,
45
- renderActions: PropTypes.func,
46
- renderSend: PropTypes.func,
47
- renderComposer: PropTypes.func,
48
- onPressActionButton: PropTypes.func,
49
- containerStyle: StylePropType,
50
- primaryStyle: StylePropType,
51
- accessoryStyle: StylePropType,
52
- };
53
41
  const styles = StyleSheet.create({
54
42
  container: {
55
43
  borderTopWidth: StyleSheet.hairlineWidth,
@@ -1 +1 @@
1
- {"version":3,"file":"InputToolbar.js","sourceRoot":"","sources":["../src/InputToolbar.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"InputToolbar.js","sourceRoot":"","sources":["../src/InputToolbar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAwB,MAAM,cAAc,CAAA;AAErE,OAAO,EAAE,QAAQ,EAAiB,MAAM,YAAY,CAAA;AACpD,OAAO,EAAE,IAAI,EAAa,MAAM,QAAQ,CAAA;AACxC,OAAO,EAAE,OAAO,EAAgB,MAAM,WAAW,CAAA;AACjD,OAAO,KAAK,MAAM,SAAS,CAAA;AAkB3B,MAAM,UAAU,YAAY,CAC1B,KAAkC;IAElC,MAAM,EACJ,aAAa,EACb,mBAAmB,EACnB,cAAc,EACd,UAAU,EACV,eAAe,EACf,OAAO,EACP,eAAe,EACf,IAAI,EACJ,YAAY,EACZ,cAAc,GACf,GAAG,KAAK,CAAA;IAET,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,EAAE;QACnC,MAAM,KAAK,GAAG;YACZ,OAAO;YACP,eAAe;YACf,IAAI;YACJ,YAAY;YACZ,cAAc;SACf,CAAA;QAED,OAAO,CACL,aAAa,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,mBAAmB,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,EAAG,CAAC,CAC1E,CAAA;IACH,CAAC,EAAE;QACD,aAAa;QACb,mBAAmB;QACnB,OAAO;QACP,eAAe;QACf,IAAI;QACJ,YAAY;QACZ,cAAc;KACf,CAAC,CAAA;IAEF,MAAM,gBAAgB,GAAG,OAAO,CAAC,GAAG,EAAE;QACpC,OAAO,CACL,cAAc,EAAE,CAAC,KAAsB,CAAC,IAAI,CAC1C,CAAC,QAAQ,CAAC,IAAK,KAAuB,CAAC,EAAG,CAC3C,CACF,CAAA;IACH,CAAC,EAAE,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC,CAAA;IAE3B,OAAO,CACL,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC,CAC9C;MAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC,CAChD;QAAA,CAAC,eAAe,CAChB;QAAA,CAAC,gBAAgB,CACjB;QAAA,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,EAAG,CAC7C;MAAA,EAAE,IAAI,CACN;MAAA,CAAC,eAAe,IAAI,CAClB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC,CACpD;UAAA,CAAC,eAAe,CAAC,KAAK,CAAC,CACzB;QAAA,EAAE,IAAI,CAAC,CACR,CACH;IAAA,EAAE,IAAI,CAAC,CACR,CAAA;AACH,CAAC;AAED,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAC/B,SAAS,EAAE;QACT,cAAc,EAAE,UAAU,CAAC,aAAa;QACxC,cAAc,EAAE,KAAK,CAAC,YAAY;QAClC,eAAe,EAAE,KAAK,CAAC,KAAK;KAC7B;IACD,OAAO,EAAE;QACP,aAAa,EAAE,KAAK;QACpB,UAAU,EAAE,UAAU;KACvB;IACD,SAAS,EAAE;QACT,MAAM,EAAE,EAAE;KACX;CACF,CAAC,CAAA"}
@@ -1,4 +1,3 @@
1
- import PropTypes from 'prop-types';
2
1
  import React from 'react';
3
2
  import { StyleProp, ViewStyle, TextStyle } from 'react-native';
4
3
  export interface LoadEarlierProps {
@@ -13,16 +12,3 @@ export interface LoadEarlierProps {
13
12
  onLoadEarlier?(): void;
14
13
  }
15
14
  export declare function LoadEarlier({ isLoadingEarlier, onLoadEarlier, label, containerStyle, wrapperStyle, textStyle, activityIndicatorColor, activityIndicatorSize, activityIndicatorStyle, }: LoadEarlierProps): React.ReactElement;
16
- export declare namespace LoadEarlier {
17
- var propTypes: {
18
- onLoadEarlier: PropTypes.Requireable<(...args: any[]) => any>;
19
- isLoadingEarlier: PropTypes.Requireable<boolean>;
20
- label: PropTypes.Requireable<string>;
21
- containerStyle: PropTypes.Requireable<NonNullable<number | boolean | object | null | undefined>>;
22
- wrapperStyle: PropTypes.Requireable<NonNullable<number | boolean | object | null | undefined>>;
23
- textStyle: PropTypes.Requireable<NonNullable<number | boolean | object | null | undefined>>;
24
- activityIndicatorStyle: PropTypes.Requireable<NonNullable<number | boolean | object | null | undefined>>;
25
- activityIndicatorColor: PropTypes.Requireable<string>;
26
- activityIndicatorSize: PropTypes.Requireable<string>;
27
- };
28
- }
@@ -1,8 +1,7 @@
1
- import PropTypes from 'prop-types';
2
1
  import React from 'react';
3
2
  import { ActivityIndicator, Platform, StyleSheet, Text, TouchableOpacity, View, } from 'react-native';
4
3
  import Color from './Color';
5
- import { StylePropType } from './utils';
4
+ import stylesCommon from './styles';
6
5
  const styles = StyleSheet.create({
7
6
  container: {
8
7
  alignItems: 'center',
@@ -10,8 +9,6 @@ const styles = StyleSheet.create({
10
9
  marginBottom: 10,
11
10
  },
12
11
  wrapper: {
13
- alignItems: 'center',
14
- justifyContent: 'center',
15
12
  backgroundColor: Color.defaultColor,
16
13
  borderRadius: 15,
17
14
  height: 30,
@@ -33,7 +30,7 @@ const styles = StyleSheet.create({
33
30
  });
34
31
  export function LoadEarlier({ isLoadingEarlier = false, onLoadEarlier = () => { }, label = 'Load earlier messages', containerStyle, wrapperStyle, textStyle, activityIndicatorColor = 'white', activityIndicatorSize = 'small', activityIndicatorStyle, }) {
35
32
  return (<TouchableOpacity style={[styles.container, containerStyle]} onPress={onLoadEarlier} disabled={isLoadingEarlier} accessibilityRole='button'>
36
- <View style={[styles.wrapper, wrapperStyle]}>
33
+ <View style={[stylesCommon.centerItems, styles.wrapper, wrapperStyle]}>
37
34
  {isLoadingEarlier
38
35
  ? (<View>
39
36
  <Text style={[styles.text, textStyle, { opacity: 0 }]}>
@@ -45,15 +42,4 @@ export function LoadEarlier({ isLoadingEarlier = false, onLoadEarlier = () => {
45
42
  </View>
46
43
  </TouchableOpacity>);
47
44
  }
48
- LoadEarlier.propTypes = {
49
- onLoadEarlier: PropTypes.func,
50
- isLoadingEarlier: PropTypes.bool,
51
- label: PropTypes.string,
52
- containerStyle: StylePropType,
53
- wrapperStyle: StylePropType,
54
- textStyle: StylePropType,
55
- activityIndicatorStyle: StylePropType,
56
- activityIndicatorColor: PropTypes.string,
57
- activityIndicatorSize: PropTypes.string,
58
- };
59
45
  //# sourceMappingURL=LoadEarlier.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LoadEarlier.js","sourceRoot":"","sources":["../src/LoadEarlier.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LoadEarlier.js","sourceRoot":"","sources":["../src/LoadEarlier.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EACL,iBAAiB,EACjB,QAAQ,EACR,UAAU,EACV,IAAI,EACJ,gBAAgB,EAChB,IAAI,GAIL,MAAM,cAAc,CAAA;AACrB,OAAO,KAAK,MAAM,SAAS,CAAA;AAC3B,OAAO,YAAY,MAAM,UAAU,CAAA;AAEnC,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAC/B,SAAS,EAAE;QACT,UAAU,EAAE,QAAQ;QACpB,SAAS,EAAE,CAAC;QACZ,YAAY,EAAE,EAAE;KACjB;IACD,OAAO,EAAE;QACP,eAAe,EAAE,KAAK,CAAC,YAAY;QACnC,YAAY,EAAE,EAAE;QAChB,MAAM,EAAE,EAAE;QACV,WAAW,EAAE,EAAE;QACf,YAAY,EAAE,EAAE;KACjB;IACD,IAAI,EAAE;QACJ,eAAe,EAAE,KAAK,CAAC,qBAAqB;QAC5C,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,QAAQ,EAAE,EAAE;KACb;IACD,iBAAiB,EAAE;QACjB,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC;YACzB,GAAG,EAAE,CAAC,EAAE;YACR,OAAO,EAAE,CAAC,EAAE;YACZ,OAAO,EAAE,CAAC,EAAE;SACb,CAAC;KACH;CACF,CAAC,CAAA;AAcF,MAAM,UAAU,WAAW,CAAE,EAC3B,gBAAgB,GAAG,KAAK,EACxB,aAAa,GAAG,GAAG,EAAE,GAAE,CAAC,EACxB,KAAK,GAAG,uBAAuB,EAC/B,cAAc,EACd,YAAY,EACZ,SAAS,EACT,sBAAsB,GAAG,OAAO,EAChC,qBAAqB,GAAG,OAAO,EAC/B,sBAAsB,GACL;IACjB,OAAO,CACL,CAAC,gBAAgB,CACf,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC,CAC1C,OAAO,CAAC,CAAC,aAAa,CAAC,CACvB,QAAQ,CAAC,CAAC,gBAAgB,CAAC,CAC3B,iBAAiB,CAAC,QAAQ,CAE1B;MAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CACpE;QAAA,CAAC,gBAAgB;YACf,CAAC,CAAC,CACA,CAAC,IAAI,CACH;cAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CACpD;gBAAA,CAAC,KAAK,CACR;cAAA,EAAE,IAAI,CACN;cAAA,CAAC,iBAAiB,CAChB,KAAK,CAAC,CAAC,sBAAuB,CAAC,CAC/B,IAAI,CAAC,CAAC,qBAAsB,CAAC,CAC7B,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,iBAAiB,EAAE,sBAAsB,CAAC,CAAC,EAE9D;YAAA,EAAE,IAAI,CAAC,CACR;YACD,CAAC,CAAC,CACA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CACtD,CACL;MAAA,EAAE,IAAI,CACR;IAAA,EAAE,gBAAgB,CAAC,CACpB,CAAA;AACH,CAAC"}
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ import { IMessage } from '../types';
3
+ import { MessageProps } from './types';
4
+ export * from './types';
5
+ declare let Message: React.FC<MessageProps<IMessage>>;
6
+ export default Message;
@@ -0,0 +1,85 @@
1
+ import React, { memo, useCallback } from 'react';
2
+ import { View } from 'react-native';
3
+ import isEqual from 'lodash.isequal';
4
+ import { Avatar } from '../Avatar';
5
+ import Bubble from '../Bubble';
6
+ import { SystemMessage } from '../SystemMessage';
7
+ import { isSameUser } from '../utils';
8
+ import styles from './styles';
9
+ export * from './types';
10
+ let Message = (props) => {
11
+ const { currentMessage, renderBubble: renderBubbleProp, renderSystemMessage: renderSystemMessageProp, onMessageLayout, nextMessage, position, containerStyle, user, showUserAvatar, } = props;
12
+ const renderBubble = useCallback(() => {
13
+ const {
14
+ /* eslint-disable @typescript-eslint/no-unused-vars */
15
+ containerStyle, onMessageLayout,
16
+ /* eslint-enable @typescript-eslint/no-unused-vars */
17
+ ...rest } = props;
18
+ if (renderBubbleProp)
19
+ return renderBubbleProp(rest);
20
+ return <Bubble {...rest}/>;
21
+ }, [props, renderBubbleProp]);
22
+ const renderSystemMessage = useCallback(() => {
23
+ const {
24
+ /* eslint-disable @typescript-eslint/no-unused-vars */
25
+ containerStyle, onMessageLayout,
26
+ /* eslint-enable @typescript-eslint/no-unused-vars */
27
+ ...rest } = props;
28
+ if (renderSystemMessageProp)
29
+ return renderSystemMessageProp(rest);
30
+ return <SystemMessage {...rest}/>;
31
+ }, [props, renderSystemMessageProp]);
32
+ const renderAvatar = useCallback(() => {
33
+ if (user?._id &&
34
+ currentMessage?.user &&
35
+ user._id === currentMessage.user._id &&
36
+ !showUserAvatar)
37
+ return null;
38
+ if (currentMessage?.user?.avatar === null)
39
+ return null;
40
+ const {
41
+ /* eslint-disable @typescript-eslint/no-unused-vars */
42
+ containerStyle, onMessageLayout,
43
+ /* eslint-enable @typescript-eslint/no-unused-vars */
44
+ ...rest } = props;
45
+ return <Avatar {...rest}/>;
46
+ }, [
47
+ props,
48
+ user,
49
+ currentMessage,
50
+ showUserAvatar,
51
+ ]);
52
+ if (!currentMessage)
53
+ return null;
54
+ const sameUser = isSameUser(currentMessage, nextMessage);
55
+ return (<View onLayout={onMessageLayout}>
56
+ {currentMessage.system
57
+ ? (renderSystemMessage())
58
+ : (<View style={[
59
+ styles[position].container,
60
+ { marginBottom: sameUser ? 2 : 10 },
61
+ !props.inverted && { marginBottom: 2 },
62
+ containerStyle?.[position],
63
+ ]}>
64
+ {position === 'left' ? renderAvatar() : null}
65
+ {renderBubble()}
66
+ {position === 'right' ? renderAvatar() : null}
67
+ </View>)}
68
+ </View>);
69
+ };
70
+ Message = memo(Message, (props, nextProps) => {
71
+ const next = nextProps.currentMessage;
72
+ const current = props.currentMessage;
73
+ const { previousMessage, nextMessage } = props;
74
+ const nextPropsMessage = nextProps.nextMessage;
75
+ const nextPropsPreviousMessage = nextProps.previousMessage;
76
+ let shouldUpdate = props.shouldUpdateMessage?.(props, nextProps) || false;
77
+ shouldUpdate =
78
+ shouldUpdate ||
79
+ !isEqual(current, next) ||
80
+ !isEqual(previousMessage, nextPropsPreviousMessage) ||
81
+ !isEqual(nextMessage, nextPropsMessage);
82
+ return shouldUpdate;
83
+ });
84
+ export default Message;
85
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Message/index.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ declare const _default: {
2
+ left: {
3
+ container: {
4
+ flexDirection: "row";
5
+ alignItems: "flex-end";
6
+ justifyContent: "flex-start";
7
+ marginLeft: number;
8
+ marginRight: number;
9
+ };
10
+ };
11
+ right: {
12
+ container: {
13
+ flexDirection: "row";
14
+ alignItems: "flex-end";
15
+ justifyContent: "flex-end";
16
+ marginLeft: number;
17
+ marginRight: number;
18
+ };
19
+ };
20
+ };
21
+ export default _default;