react-native-gifted-chat 2.7.3 → 2.8.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 (47) hide show
  1. package/README.md +14 -6
  2. package/lib/Bubble/index.d.ts +2 -26
  3. package/lib/Bubble/index.js +151 -123
  4. package/lib/Bubble/index.js.map +1 -1
  5. package/lib/Day/index.d.ts +1 -1
  6. package/lib/Day/index.js +2 -2
  7. package/lib/Day/index.js.map +1 -1
  8. package/lib/GiftedChat/index.d.ts +1 -1
  9. package/lib/GiftedChat/index.js +1 -2
  10. package/lib/GiftedChat/index.js.map +1 -1
  11. package/lib/GiftedChat/types.d.ts +7 -7
  12. package/lib/GiftedChatContext.d.ts +1 -2
  13. package/lib/GiftedChatContext.js +3 -3
  14. package/lib/GiftedChatContext.js.map +1 -1
  15. package/lib/InputToolbar.js +1 -0
  16. package/lib/InputToolbar.js.map +1 -1
  17. package/lib/Message/index.js +7 -12
  18. package/lib/Message/index.js.map +1 -1
  19. package/lib/Message/types.d.ts +2 -2
  20. package/lib/MessageContainer/components/Item/index.d.ts +2 -1
  21. package/lib/MessageContainer/components/Item/index.js +5 -6
  22. package/lib/MessageContainer/components/Item/index.js.map +1 -1
  23. package/lib/MessageContainer/components/Item/types.d.ts +4 -5
  24. package/lib/MessageContainer/index.js +61 -33
  25. package/lib/MessageContainer/index.js.map +1 -1
  26. package/lib/MessageContainer/types.d.ts +5 -5
  27. package/lib/MessageText.js +2 -2
  28. package/lib/MessageText.js.map +1 -1
  29. package/lib/Time.d.ts +1 -1
  30. package/lib/Time.js +3 -3
  31. package/lib/Time.js.map +1 -1
  32. package/package.json +13 -15
  33. package/src/Bubble/index.tsx +170 -146
  34. package/src/Day/index.tsx +2 -2
  35. package/src/GiftedChat/index.tsx +7 -9
  36. package/src/GiftedChat/types.ts +7 -7
  37. package/src/GiftedChatContext.ts +3 -3
  38. package/src/InputToolbar.tsx +1 -0
  39. package/src/Message/index.tsx +10 -16
  40. package/src/Message/types.ts +2 -2
  41. package/src/MessageContainer/components/Item/index.tsx +5 -16
  42. package/src/MessageContainer/components/Item/types.ts +4 -5
  43. package/src/MessageContainer/index.tsx +98 -54
  44. package/src/MessageContainer/types.ts +5 -4
  45. package/src/MessageText.tsx +2 -2
  46. package/src/Time.tsx +5 -3
  47. package/src/__tests__/__snapshots__/MessageContainer.test.tsx.snap +72 -279
@@ -16,10 +16,10 @@ import { QuickRepliesProps } from '../QuickReplies';
16
16
  import { SendProps } from '../Send';
17
17
  import { SystemMessageProps } from '../SystemMessage';
18
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>;
19
+ import { AnimatedList, ListViewProps, MessageContainerProps } from '../MessageContainer';
20
+ import { BubbleProps } from '../Bubble';
21
+ export interface GiftedChatProps<TMessage extends IMessage> extends Partial<MessageContainerProps<TMessage>> {
22
+ messageContainerRef?: RefObject<AnimatedList<TMessage>>;
23
23
  textInputRef?: RefObject<TextInput>;
24
24
  messages?: TMessage[];
25
25
  isTyping?: boolean;
@@ -79,7 +79,7 @@ export interface GiftedChatProps<TMessage extends IMessage = IMessage> extends P
79
79
  renderLoading?(): React.ReactNode;
80
80
  renderLoadEarlier?(props: LoadEarlierProps): React.ReactNode;
81
81
  renderAvatar?: null | ((props: AvatarProps<TMessage>) => React.ReactNode);
82
- renderBubble?(props: Bubble<TMessage>['props']): React.ReactNode;
82
+ renderBubble?(props: BubbleProps<TMessage>): React.ReactNode;
83
83
  renderSystemMessage?(props: SystemMessageProps<TMessage>): React.ReactNode;
84
84
  onPress?(context: unknown, message: TMessage): void;
85
85
  onLongPress?(context: unknown, message: TMessage): void;
@@ -89,10 +89,10 @@ export interface GiftedChatProps<TMessage extends IMessage = IMessage> extends P
89
89
  renderMessageImage?(props: MessageImageProps<TMessage>): React.ReactNode;
90
90
  renderMessageVideo?(props: MessageVideoProps<TMessage>): React.ReactNode;
91
91
  renderMessageAudio?(props: MessageAudioProps<TMessage>): React.ReactNode;
92
- renderCustomView?(props: Bubble<TMessage>['props']): React.ReactNode;
92
+ renderCustomView?(props: BubbleProps<TMessage>): React.ReactNode;
93
93
  renderDay?(props: DayProps): React.ReactNode;
94
94
  renderTime?(props: TimeProps<TMessage>): React.ReactNode;
95
- renderFooter?(): React.ReactNode;
95
+ renderFooter?(props: MessageContainerProps<TMessage>): React.ReactNode;
96
96
  renderChatEmpty?(): React.ReactNode;
97
97
  renderChatFooter?(): React.ReactNode;
98
98
  renderInputToolbar?(props: InputToolbarProps<TMessage>): React.ReactNode;
@@ -1,4 +1,3 @@
1
- import * as React from 'react';
2
1
  import { ActionSheetOptions } from '@expo/react-native-action-sheet';
3
2
  export interface IGiftedChatContext {
4
3
  actionSheet(): {
@@ -6,5 +5,5 @@ export interface IGiftedChatContext {
6
5
  };
7
6
  getLocale(): string;
8
7
  }
9
- export declare const GiftedChatContext: React.Context<IGiftedChatContext>;
8
+ export declare const GiftedChatContext: import("react").Context<IGiftedChatContext>;
10
9
  export declare const useChatContext: () => IGiftedChatContext;
@@ -1,9 +1,9 @@
1
- import * as React from 'react';
2
- export const GiftedChatContext = React.createContext({
1
+ import { createContext, useContext } from 'react';
2
+ export const GiftedChatContext = createContext({
3
3
  getLocale: () => 'en',
4
4
  actionSheet: () => ({
5
5
  showActionSheetWithOptions: () => { },
6
6
  }),
7
7
  });
8
- export const useChatContext = () => React.useContext(GiftedChatContext);
8
+ export const useChatContext = () => useContext(GiftedChatContext);
9
9
  //# sourceMappingURL=GiftedChatContext.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GiftedChatContext.js","sourceRoot":"","sources":["../src/GiftedChatContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAe9B,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,CAAC,aAAa,CAAqB;IACvE,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI;IACrB,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;QAClB,0BAA0B,EAAE,GAAG,EAAE,GAAE,CAAC;KACrC,CAAC;CACH,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAA"}
1
+ {"version":3,"file":"GiftedChatContext.js","sourceRoot":"","sources":["../src/GiftedChatContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAejD,MAAM,CAAC,MAAM,iBAAiB,GAAG,aAAa,CAAqB;IACjE,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI;IACrB,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;QAClB,0BAA0B,EAAE,GAAG,EAAE,GAAE,CAAC;KACrC,CAAC;CACH,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAA"}
@@ -8,6 +8,7 @@ export function InputToolbar(props) {
8
8
  const { renderActions, onPressActionButton, renderComposer, renderSend, renderAccessory, options, optionTintColor, icon, wrapperStyle, containerStyle, } = props;
9
9
  const actionsFragment = useMemo(() => {
10
10
  const props = {
11
+ onPressActionButton,
11
12
  options,
12
13
  optionTintColor,
13
14
  icon,
@@ -1 +1 @@
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
+ {"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,mBAAmB;YACnB,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"}
@@ -68,18 +68,13 @@ let Message = (props) => {
68
68
  </View>);
69
69
  };
70
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;
71
+ const shouldUpdate = props.shouldUpdateMessage?.(props, nextProps) ||
72
+ !isEqual(props.currentMessage, nextProps.currentMessage) ||
73
+ !isEqual(props.previousMessage, nextProps.previousMessage) ||
74
+ !isEqual(props.nextMessage, nextProps.nextMessage);
75
+ if (shouldUpdate)
76
+ return false;
77
+ return true;
83
78
  });
84
79
  export default Message;
85
80
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Message/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Message/index.tsx"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import { AvatarProps } from '../Avatar';
3
3
  import { SystemMessageProps } from '../SystemMessage';
4
4
  import { DayProps } from '../Day';
5
5
  import { IMessage, User, LeftRightStyle } from '../types';
6
- import Bubble from '../Bubble';
6
+ import { BubbleProps } from '../Bubble';
7
7
  export interface MessageProps<TMessage extends IMessage> {
8
8
  showUserAvatar?: boolean;
9
9
  position: 'left' | 'right';
@@ -13,7 +13,7 @@ export interface MessageProps<TMessage extends IMessage> {
13
13
  user: User;
14
14
  inverted?: boolean;
15
15
  containerStyle?: LeftRightStyle<ViewStyle>;
16
- renderBubble?(props: Bubble['props']): React.ReactNode;
16
+ renderBubble?(props: BubbleProps<TMessage>): React.ReactNode;
17
17
  renderDay?(props: DayProps): React.ReactNode;
18
18
  renderSystemMessage?(props: SystemMessageProps<TMessage>): React.ReactNode;
19
19
  renderAvatar?(props: AvatarProps<TMessage>): React.ReactNode;
@@ -1,4 +1,5 @@
1
1
  import React from 'react';
2
+ import { IMessage } from '../../../types';
2
3
  import { DaysPositions } from '../../types';
3
4
  import { ItemProps } from './types';
4
5
  export * from './types';
@@ -18,5 +19,5 @@ export declare const useRelativeScrolledPositionToBottomOfDay: (listHeight: {
18
19
  }, containerHeight: {
19
20
  value: number;
20
21
  }, dayBottomMargin: number, dayTopOffset: number, createdAt?: number) => import("react-native-reanimated").DerivedValue<number>;
21
- declare const Item: (props: ItemProps) => React.JSX.Element;
22
+ declare const Item: <TMessage extends IMessage>(props: ItemProps<TMessage>) => React.JSX.Element;
22
23
  export default Item;
@@ -51,7 +51,7 @@ const DayWrapper = forwardRef((props, ref) => {
51
51
  </View>);
52
52
  });
53
53
  const Item = (props) => {
54
- const { onRefDayWrapper, renderMessage: renderMessageProp, scrolledY, daysPositions, listHeight, ...rest } = props;
54
+ const { renderMessage: renderMessageProp, scrolledY, daysPositions, listHeight, ...rest } = props;
55
55
  const dayContainerHeight = useSharedValue(0);
56
56
  const dayTopOffset = useMemo(() => 10, []);
57
57
  const dayBottomMargin = useMemo(() => 10, []);
@@ -73,12 +73,11 @@ const Item = (props) => {
73
73
  1,
74
74
  ], 'clamp'),
75
75
  }), [relativeScrolledPositionToBottomOfDay, dayContainerHeight, dayTopOffset]);
76
- const handleRef = useCallback((ref) => {
77
- onRefDayWrapper(ref, props.currentMessage._id, new Date(props.currentMessage.createdAt).getTime());
78
- }, [onRefDayWrapper, props.currentMessage]);
79
- return (<View key={props.currentMessage._id.toString()}>
76
+ return (
77
+ // do not remove key. it helps to get correct position of the day container
78
+ <View key={props.currentMessage._id.toString()}>
80
79
  <Animated.View style={style} onLayout={handleLayoutDayContainer}>
81
- <DayWrapper {...rest} ref={handleRef}/>
80
+ <DayWrapper {...rest}/>
82
81
  </Animated.View>
83
82
  {renderMessageProp
84
83
  ? renderMessageProp(rest)
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/MessageContainer/components/Item/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/MessageContainer/components/Item/index.tsx"],"names":[],"mappings":"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"}
@@ -1,10 +1,9 @@
1
1
  import { MessageContainerProps, DaysPositions } from '../../types';
2
2
  import { IMessage } from '../../../types';
3
- export interface ItemProps extends MessageContainerProps<IMessage> {
4
- onRefDayWrapper: (ref: unknown, id: string | number, createdAt: number) => void;
5
- currentMessage: IMessage;
6
- previousMessage?: IMessage;
7
- nextMessage?: IMessage;
3
+ export interface ItemProps<TMessage extends IMessage> extends MessageContainerProps<TMessage> {
4
+ currentMessage: TMessage;
5
+ previousMessage?: TMessage;
6
+ nextMessage?: TMessage;
8
7
  position: 'left' | 'right';
9
8
  scrolledY: {
10
9
  value: number;
@@ -1,6 +1,5 @@
1
- import React, { useCallback, useMemo, useState } from 'react';
2
- import { View, TouchableOpacity, Text, Platform, } from 'react-native';
3
- import { FlashList } from '@shopify/flash-list';
1
+ import React, { useCallback, useEffect, useMemo, useState } from 'react';
2
+ import { View, TouchableOpacity, Text, Platform, FlatList, } from 'react-native';
4
3
  import Animated, { runOnJS, useAnimatedScrollHandler, useAnimatedStyle, useSharedValue, withTiming } from 'react-native-reanimated';
5
4
  import DayAnimated from './components/DayAnimated';
6
5
  import Item from './components/Item';
@@ -9,8 +8,9 @@ import TypingIndicator from '../TypingIndicator';
9
8
  import { warning } from '../logging';
10
9
  import stylesCommon from '../styles';
11
10
  import styles from './styles';
11
+ import { isSameDay } from '../utils';
12
12
  export * from './types';
13
- const AnimatedFlashList = Animated.createAnimatedComponent(FlashList);
13
+ const AnimatedFlatList = Animated.createAnimatedComponent(FlatList);
14
14
  function MessageContainer(props) {
15
15
  const { messages = [], user, isTyping = false, renderChatEmpty: renderChatEmptyProp, onLoadEarlier, inverted = true, loadEarlier = false, listViewProps, invertibleScrollViewProps, extraData = null, isScrollToBottomEnabled = false, scrollToBottomOffset = 200, alignTop = false, scrollToBottomStyle, infiniteScroll = false, isLoadingEarlier = false, renderTypingIndicator: renderTypingIndicatorProp, renderFooter: renderFooterProp, renderLoadEarlier: renderLoadEarlierProp, forwardRef, handleOnScroll: handleOnScrollProp, scrollToBottomComponent: scrollToBottomComponentProp, } = props;
16
16
  const scrollToBottomOpacity = useSharedValue(0);
@@ -32,7 +32,7 @@ function MessageContainer(props) {
32
32
  return <>{renderTypingIndicator()}</>;
33
33
  }, [renderFooterProp, renderTypingIndicator, props]);
34
34
  const renderLoadEarlier = useCallback(() => {
35
- if (loadEarlier === true) {
35
+ if (loadEarlier) {
36
36
  if (renderLoadEarlierProp)
37
37
  return renderLoadEarlierProp(props);
38
38
  return <LoadEarlier {...props}/>;
@@ -74,27 +74,6 @@ function MessageContainer(props) {
74
74
  else
75
75
  makeScrollToBottomHidden();
76
76
  }, [handleOnScrollProp, inverted, scrollToBottomOffset, scrollToBottomOpacity]);
77
- const handleLayoutDayWrapper = useCallback((ref, id, createdAt) => {
78
- setTimeout(() => {
79
- const itemLayout = forwardRef?.current?.recyclerlistview_unsafe?.getLayout(messages.findIndex(m => m._id === id));
80
- if (ref && itemLayout)
81
- daysPositions.modify(value => {
82
- 'worklet';
83
- // @ts-expect-error: https://docs.swmansion.com/react-native-reanimated/docs/core/useSharedValue#remarks
84
- value[id] = {
85
- ...itemLayout,
86
- createdAt,
87
- };
88
- return value;
89
- });
90
- else if (daysPositions.value[id] != null)
91
- daysPositions.modify(value => {
92
- 'worklet';
93
- delete value[id];
94
- return value;
95
- });
96
- }, 100);
97
- }, [messages, daysPositions, forwardRef]);
98
77
  const renderItem = useCallback(({ item, index }) => {
99
78
  const messageItem = item;
100
79
  if (!messageItem._id && messageItem._id !== 0)
@@ -114,7 +93,6 @@ function MessageContainer(props) {
114
93
  previousMessage,
115
94
  nextMessage,
116
95
  position: messageItem.user._id === user._id ? 'right' : 'left',
117
- onRefDayWrapper: handleLayoutDayWrapper,
118
96
  scrolledY,
119
97
  daysPositions,
120
98
  listHeight,
@@ -122,7 +100,7 @@ function MessageContainer(props) {
122
100
  return (<Item {...messageProps}/>);
123
101
  }
124
102
  return null;
125
- }, [props, inverted, handleLayoutDayWrapper, scrolledY, daysPositions, listHeight, user]);
103
+ }, [props, inverted, scrolledY, daysPositions, listHeight, user]);
126
104
  const renderChatEmpty = useCallback(() => {
127
105
  if (renderChatEmptyProp)
128
106
  return inverted
@@ -146,16 +124,16 @@ function MessageContainer(props) {
146
124
  const renderScrollToBottomWrapper = useCallback(() => {
147
125
  if (!isScrollToBottomVisible)
148
126
  return null;
149
- return (<Animated.View style={[
127
+ return (<TouchableOpacity onPress={() => doScrollToBottom()}>
128
+ <Animated.View style={[
150
129
  stylesCommon.centerItems,
151
130
  styles.scrollToBottomStyle,
152
131
  scrollToBottomStyle,
153
132
  scrollToBottomStyleAnim,
154
133
  ]}>
155
- <TouchableOpacity onPress={() => doScrollToBottom()} hitSlop={{ top: 5, left: 5, right: 5, bottom: 5 }}>
156
134
  {renderScrollBottomComponent()}
157
- </TouchableOpacity>
158
- </Animated.View>);
135
+ </Animated.View>
136
+ </TouchableOpacity>);
159
137
  }, [scrollToBottomStyle, renderScrollBottomComponent, doScrollToBottom, scrollToBottomStyleAnim, isScrollToBottomVisible]);
160
138
  const onLayoutList = useCallback((event) => {
161
139
  listHeight.value = event.nativeEvent.layout.height;
@@ -175,17 +153,67 @@ function MessageContainer(props) {
175
153
  onLoadEarlier();
176
154
  }, [infiniteScroll, loadEarlier, onLoadEarlier, isLoadingEarlier]);
177
155
  const keyExtractor = useCallback((item) => item._id.toString(), []);
156
+ const renderCell = useCallback((props) => {
157
+ const handleOnLayout = (event) => {
158
+ props.onLayout?.(event);
159
+ const { y, height } = event.nativeEvent.layout;
160
+ const newValue = {
161
+ y,
162
+ height,
163
+ createdAt: new Date(props.item.createdAt).getTime(),
164
+ };
165
+ daysPositions.modify(value => {
166
+ 'worklet';
167
+ const isSameDay = (date1, date2) => {
168
+ const d1 = new Date(date1);
169
+ const d2 = new Date(date2);
170
+ return (d1.getDate() === d2.getDate() &&
171
+ d1.getMonth() === d2.getMonth() &&
172
+ d1.getFullYear() === d2.getFullYear());
173
+ };
174
+ for (const [key, item] of Object.entries(value))
175
+ if (isSameDay(newValue.createdAt, item.createdAt) && (inverted ? item.y <= newValue.y : item.y >= newValue.y)) {
176
+ delete value[key];
177
+ break;
178
+ }
179
+ // @ts-expect-error: https://docs.swmansion.com/react-native-reanimated/docs/core/useSharedValue#remarks
180
+ value[props.item._id] = newValue;
181
+ return value;
182
+ });
183
+ };
184
+ return (<View {...props} onLayout={handleOnLayout}>
185
+ {props.children}
186
+ </View>);
187
+ }, [daysPositions, inverted]);
178
188
  const scrollHandler = useAnimatedScrollHandler({
179
189
  onScroll: event => {
180
190
  scrolledY.value = event.contentOffset.y;
181
191
  runOnJS(handleOnScroll)(event);
182
192
  },
183
193
  }, [handleOnScroll]);
194
+ // removes unrendered days positions when messages are added/removed
195
+ useEffect(() => {
196
+ Object.keys(daysPositions.value).forEach(key => {
197
+ const messageIndex = messages.findIndex(m => m._id.toString() === key);
198
+ let shouldRemove = messageIndex === -1;
199
+ if (!shouldRemove) {
200
+ const prevMessage = messages[messageIndex + (inverted ? 1 : -1)];
201
+ const message = messages[messageIndex];
202
+ shouldRemove = !!prevMessage && isSameDay(message, prevMessage);
203
+ }
204
+ if (shouldRemove)
205
+ daysPositions.modify(value => {
206
+ 'worklet';
207
+ delete value[key];
208
+ return value;
209
+ });
210
+ });
211
+ }, [messages, daysPositions, inverted]);
184
212
  return (<View style={[
185
213
  styles.contentContainerStyle,
186
214
  alignTop ? styles.containerAlignTop : stylesCommon.fill,
187
215
  ]}>
188
- <AnimatedFlashList ref={forwardRef} extraData={[extraData, isTyping]} keyExtractor={keyExtractor} automaticallyAdjustContentInsets={false} inverted={inverted} data={messages} style={stylesCommon.fill} renderItem={renderItem} {...invertibleScrollViewProps} ListEmptyComponent={renderChatEmpty} ListFooterComponent={inverted ? ListHeaderComponent : ListFooterComponent} ListHeaderComponent={inverted ? ListFooterComponent : ListHeaderComponent} onScroll={scrollHandler} scrollEventThrottle={16} onEndReached={onEndReached} onEndReachedThreshold={0.1} estimatedItemSize={100} {...listViewProps} onLayout={onLayoutList}/>
216
+ <AnimatedFlatList extraData={extraData} ref={forwardRef} keyExtractor={keyExtractor} data={messages} renderItem={renderItem} inverted={inverted} automaticallyAdjustContentInsets={false} style={stylesCommon.fill} {...invertibleScrollViewProps} ListEmptyComponent={renderChatEmpty} ListFooterComponent={inverted ? ListHeaderComponent : ListFooterComponent} ListHeaderComponent={inverted ? ListFooterComponent : ListHeaderComponent} onScroll={scrollHandler} scrollEventThrottle={1} onEndReached={onEndReached} onEndReachedThreshold={0.1} {...listViewProps} onLayout={onLayoutList} CellRendererComponent={renderCell}/>
189
217
  {isScrollToBottomEnabled
190
218
  ? renderScrollToBottomWrapper()
191
219
  : null}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/MessageContainer/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/MessageContainer/index.tsx"],"names":[],"mappings":"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"}
@@ -1,17 +1,17 @@
1
1
  import React, { Component, RefObject } from 'react';
2
- import { LayoutChangeEvent, StyleProp, ViewStyle } from 'react-native';
3
- import { FlashList, FlashListProps } from '@shopify/flash-list';
2
+ import { FlatListProps, LayoutChangeEvent, StyleProp, ViewStyle } from 'react-native';
4
3
  import { LoadEarlierProps } from '../LoadEarlier';
5
4
  import { MessageProps } from '../Message';
6
5
  import { User, IMessage, Reply } from '../types';
7
6
  import { ReanimatedScrollEvent } from 'react-native-reanimated/lib/typescript/hook/commonTypes';
7
+ import { FlatList } from 'react-native-reanimated/lib/typescript/Animated';
8
8
  import { AnimateProps } from 'react-native-reanimated';
9
9
  export type ListViewProps = {
10
10
  onLayout?: (event: LayoutChangeEvent) => void;
11
11
  } & object;
12
- export type AnimatedList = Component<AnimateProps<FlashListProps<unknown>>, unknown, unknown> & FlashList<FlashListProps<unknown>>;
13
- export interface MessageContainerProps<TMessage extends IMessage> {
14
- forwardRef?: RefObject<AnimatedList | null>;
12
+ export type AnimatedList<TMessage> = Component<AnimateProps<FlatListProps<TMessage>>, unknown, unknown> & FlatList<FlatListProps<TMessage>>;
13
+ export interface MessageContainerProps<TMessage extends IMessage = IMessage> {
14
+ forwardRef?: RefObject<AnimatedList<TMessage>>;
15
15
  messages?: TMessage[];
16
16
  isTyping?: boolean;
17
17
  user?: User;
@@ -89,11 +89,11 @@ export function MessageText({ currentMessage = {}, optionTitles = DEFAULT_OPTION
89
89
  ];
90
90
  return (<View style={[
91
91
  styles[position].container,
92
- containerStyle && containerStyle[position],
92
+ containerStyle?.[position],
93
93
  ]}>
94
94
  <ParsedText style={[
95
95
  styles[position].text,
96
- textStyle && textStyle[position],
96
+ textStyle?.[position],
97
97
  customTextStyle,
98
98
  ]} parse={[
99
99
  ...(parsePatterns ? parsePatterns(linkStyle) : []),
@@ -1 +1 @@
1
- {"version":3,"file":"MessageText.js","sourceRoot":"","sources":["../src/MessageText.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MessageText.js","sourceRoot":"","sources":["../src/MessageText.tsx"],"names":[],"mappings":"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"}
package/lib/Time.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import * as React from 'react';
1
+ import React from 'react';
2
2
  import { ViewStyle, TextStyle } from 'react-native';
3
3
  import { LeftRightStyle, IMessage } from './types';
4
4
  export interface TimeProps<TMessage extends IMessage> {
package/lib/Time.js CHANGED
@@ -1,4 +1,4 @@
1
- import * as React from 'react';
1
+ import React from 'react';
2
2
  import { StyleSheet, Text, View } from 'react-native';
3
3
  import dayjs from 'dayjs';
4
4
  import Color from './Color';
@@ -43,11 +43,11 @@ export function Time({ position = 'left', containerStyle, currentMessage, timeFo
43
43
  return null;
44
44
  return (<View style={[
45
45
  styles[position].container,
46
- containerStyle && containerStyle[position],
46
+ containerStyle?.[position],
47
47
  ]}>
48
48
  <Text style={[
49
49
  styles[position].text,
50
- timeTextStyle && timeTextStyle[position],
50
+ timeTextStyle?.[position],
51
51
  ]}>
52
52
  {dayjs(currentMessage.createdAt).locale(getLocale()).format(timeFormat)}
53
53
  </Text>
package/lib/Time.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Time.js","sourceRoot":"","sources":["../src/Time.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAwB,MAAM,cAAc,CAAA;AAC3E,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,MAAM,SAAS,CAAA;AAC3B,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAExC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEpD,MAAM,EAAE,cAAc,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC;IAC3C,cAAc,EAAE;QACd,UAAU,EAAE,EAAE;QACd,WAAW,EAAE,EAAE;QACf,YAAY,EAAE,CAAC;KAChB;CACF,CAAC,CAAA;AACF,MAAM,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC;IACtC,SAAS,EAAE;QACT,QAAQ,EAAE,EAAE;QACZ,SAAS,EAAE,OAAO;KACnB;CACF,CAAC,CAAA;AAEF,MAAM,MAAM,GAAG;IACb,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC;QACtB,SAAS,EAAE;YACT,GAAG,cAAc;SAClB;QACD,IAAI,EAAE;YACJ,KAAK,EAAE,KAAK,CAAC,aAAa;YAC1B,GAAG,SAAS;SACb;KACF,CAAC;IACF,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC;QACvB,SAAS,EAAE;YACT,GAAG,cAAc;SAClB;QACD,IAAI,EAAE;YACJ,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,GAAG,SAAS;SACb;KACF,CAAC;CACH,CAAA;AAUD,MAAM,UAAU,IAAI,CAAwC,EAC1D,QAAQ,GAAG,MAAM,EACjB,cAAc,EACd,cAAc,EACd,UAAU,GAAG,WAAW,EACxB,aAAa,GACO;IACpB,MAAM,EAAE,SAAS,EAAE,GAAG,cAAc,EAAE,CAAA;IACtC,IAAI,cAAc,IAAI,IAAI;QACxB,OAAO,IAAI,CAAA;IAEb,OAAO,CACL,CAAC,IAAI,CACH,KAAK,CAAC,CAAC;YACL,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS;YAC1B,cAAc,IAAI,cAAc,CAAC,QAAQ,CAAC;SAC3C,CAAC,CAEF;MAAA,CAAC,IAAI,CACH,KAAK,CAAC,CAAC;YACL,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI;YACrB,aAAa,IAAI,aAAa,CAAC,QAAQ,CAAC;SACzC,CAAC,CAEF;QAAA,CAAC,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CACzE;MAAA,EAAE,IAAI,CACR;IAAA,EAAE,IAAI,CAAC,CACR,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"Time.js","sourceRoot":"","sources":["../src/Time.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAwB,MAAM,cAAc,CAAA;AAC3E,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,MAAM,SAAS,CAAA;AAC3B,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAExC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEpD,MAAM,EAAE,cAAc,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC;IAC3C,cAAc,EAAE;QACd,UAAU,EAAE,EAAE;QACd,WAAW,EAAE,EAAE;QACf,YAAY,EAAE,CAAC;KAChB;CACF,CAAC,CAAA;AAEF,MAAM,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC;IACtC,SAAS,EAAE;QACT,QAAQ,EAAE,EAAE;QACZ,SAAS,EAAE,OAAO;KACnB;CACF,CAAC,CAAA;AAEF,MAAM,MAAM,GAAG;IACb,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC;QACtB,SAAS,EAAE;YACT,GAAG,cAAc;SAClB;QACD,IAAI,EAAE;YACJ,KAAK,EAAE,KAAK,CAAC,aAAa;YAC1B,GAAG,SAAS;SACb;KACF,CAAC;IACF,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC;QACvB,SAAS,EAAE;YACT,GAAG,cAAc;SAClB;QACD,IAAI,EAAE;YACJ,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,GAAG,SAAS;SACb;KACF,CAAC;CACH,CAAA;AAUD,MAAM,UAAU,IAAI,CAAwC,EAC1D,QAAQ,GAAG,MAAM,EACjB,cAAc,EACd,cAAc,EACd,UAAU,GAAG,WAAW,EACxB,aAAa,GACO;IACpB,MAAM,EAAE,SAAS,EAAE,GAAG,cAAc,EAAE,CAAA;IAEtC,IAAI,cAAc,IAAI,IAAI;QACxB,OAAO,IAAI,CAAA;IAEb,OAAO,CACL,CAAC,IAAI,CACH,KAAK,CAAC,CAAC;YACL,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS;YAC1B,cAAc,EAAE,CAAC,QAAQ,CAAC;SAC3B,CAAC,CAEF;MAAA,CAAC,IAAI,CACH,KAAK,CAAC,CAAC;YACL,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI;YACrB,aAAa,EAAE,CAAC,QAAQ,CAAC;SAC1B,CAAC,CAEF;QAAA,CAAC,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CACzE;MAAA,EAAE,IAAI,CACR;IAAA,EAAE,IAAI,CAAC,CACR,CAAA;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-gifted-chat",
3
- "version": "2.7.3",
3
+ "version": "2.8.1",
4
4
  "description": "The most complete chat UI for React Native",
5
5
  "keywords": [
6
6
  "android",
@@ -51,7 +51,7 @@
51
51
  ]
52
52
  },
53
53
  "dependencies": {
54
- "@expo/react-native-action-sheet": "^4.1.0",
54
+ "@expo/react-native-action-sheet": "^4.1.1",
55
55
  "@types/lodash.isequal": "^4.5.8",
56
56
  "dayjs": "^1.11.13",
57
57
  "lodash.isequal": "^4.5.0",
@@ -61,19 +61,18 @@
61
61
  "react-native-parsed-text": "^0.0.22"
62
62
  },
63
63
  "devDependencies": {
64
- "@babel/core": "^7.26.8",
64
+ "@babel/core": "^7.26.10",
65
65
  "@babel/plugin-transform-react-jsx": "^7.25.9",
66
66
  "@babel/plugin-transform-unicode-property-regex": "^7.25.9",
67
- "@babel/preset-env": "^7.26.8",
67
+ "@babel/preset-env": "^7.26.9",
68
68
  "@react-native/eslint-config": "^0.76.6",
69
- "@shopify/flash-list": "^1.7.3",
70
69
  "@stylistic/eslint-plugin": "^3.1.0",
71
70
  "@types/jest": "^29.5.14",
72
71
  "@types/react": "^19.0.10",
73
72
  "@types/react-dom": "^19.0.4",
74
73
  "@types/react-native": "^0.72.8",
75
- "@typescript-eslint/eslint-plugin": "^8.23.0",
76
- "@typescript-eslint/parser": "^8.23.0",
74
+ "@typescript-eslint/eslint-plugin": "^8.28.0",
75
+ "@typescript-eslint/parser": "^8.28.0",
77
76
  "babel-jest": "^29.7.0",
78
77
  "eslint": "^8.57.0",
79
78
  "eslint-config-standard": "^17.1.0",
@@ -81,28 +80,27 @@
81
80
  "eslint-plugin-import": "^2.31.0",
82
81
  "eslint-plugin-jest": "^28.11.0",
83
82
  "eslint-plugin-json": "^4.0.1",
84
- "eslint-plugin-n": "^17.15.1",
83
+ "eslint-plugin-n": "^17.17.0",
85
84
  "eslint-plugin-node": "^11.1.0",
86
85
  "eslint-plugin-promise": "^7.2.1",
87
86
  "eslint-plugin-react": "^7.37.4",
88
87
  "husky": "^9.1.7",
89
88
  "jest": "^29.7.0",
90
89
  "json": "^11.0.0",
91
- "lint-staged": "^15.4.3",
90
+ "lint-staged": "^15.5.0",
92
91
  "react": "^18.3.1",
93
92
  "react-dom": "^18.3.1",
94
93
  "react-native": "^0.76.6",
95
- "react-native-keyboard-controller": "^1.16.3",
96
- "react-native-reanimated": "^3.16.7",
94
+ "react-native-keyboard-controller": "^1.16.8",
95
+ "react-native-reanimated": "^3.17.1",
97
96
  "react-test-renderer": "^18.3.1",
98
- "typescript": "^5.7.3"
97
+ "typescript": "^5.8.2"
99
98
  },
100
99
  "peerDependencies": {
101
- "@shopify/flash-list": ">=1.0.0",
102
- "react": "*",
100
+ "react": ">=18.0.0",
103
101
  "react-native": "*",
104
102
  "react-native-keyboard-controller": ">=1.0.0",
105
- "react-native-reanimated": ">=2.0.0"
103
+ "react-native-reanimated": ">=3.0.0"
106
104
  },
107
105
  "packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e",
108
106
  "engines": {