stream-chat-react-native-core 5.23.1-beta.1 → 5.23.2-beta.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 (38) hide show
  1. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js +94 -93
  2. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
  3. package/lib/commonjs/components/MessageInput/MessageInput.js +28 -37
  4. package/lib/commonjs/components/MessageInput/MessageInput.js.map +1 -1
  5. package/lib/commonjs/i18n/fr.json +12 -12
  6. package/lib/commonjs/i18n/hi.json +12 -12
  7. package/lib/commonjs/i18n/it.json +12 -12
  8. package/lib/commonjs/i18n/nl.json +12 -12
  9. package/lib/commonjs/i18n/ru.json +12 -12
  10. package/lib/commonjs/i18n/tr.json +12 -12
  11. package/lib/commonjs/version.json +1 -1
  12. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js +94 -93
  13. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
  14. package/lib/module/components/MessageInput/MessageInput.js +28 -37
  15. package/lib/module/components/MessageInput/MessageInput.js.map +1 -1
  16. package/lib/module/i18n/fr.json +12 -12
  17. package/lib/module/i18n/hi.json +12 -12
  18. package/lib/module/i18n/it.json +12 -12
  19. package/lib/module/i18n/nl.json +12 -12
  20. package/lib/module/i18n/ru.json +12 -12
  21. package/lib/module/i18n/tr.json +12 -12
  22. package/lib/module/version.json +1 -1
  23. package/lib/typescript/i18n/fr.json +12 -12
  24. package/lib/typescript/i18n/hi.json +12 -12
  25. package/lib/typescript/i18n/it.json +12 -12
  26. package/lib/typescript/i18n/nl.json +12 -12
  27. package/lib/typescript/i18n/ru.json +12 -12
  28. package/lib/typescript/i18n/tr.json +12 -12
  29. package/package.json +1 -1
  30. package/src/components/AutoCompleteInput/AutoCompleteSuggestionList.tsx +83 -74
  31. package/src/components/MessageInput/MessageInput.tsx +2 -11
  32. package/src/i18n/fr.json +12 -12
  33. package/src/i18n/hi.json +12 -12
  34. package/src/i18n/it.json +12 -12
  35. package/src/i18n/nl.json +12 -12
  36. package/src/i18n/ru.json +12 -12
  37. package/src/i18n/tr.json +12 -12
  38. package/src/version.json +1 -1
@@ -1,31 +1,49 @@
1
1
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
2
+ var _typeof = require("@babel/runtime/helpers/typeof");
2
3
  Object.defineProperty(exports, "__esModule", {
3
4
  value: true
4
5
  });
5
6
  exports.AutoCompleteSuggestionListWithContext = exports.AutoCompleteSuggestionList = void 0;
7
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
6
8
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
7
9
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
8
- var _react = _interopRequireDefault(require("react"));
10
+ var _react = _interopRequireWildcard(require("react"));
9
11
  var _reactNative = require("react-native");
10
12
  var _SuggestionsContext = require("../../contexts/suggestionsContext/SuggestionsContext");
11
13
  var _ThemeContext = require("../../contexts/themeContext/ThemeContext");
12
- var _excluded = ["children"];
14
+ var _native = require("../../native");
15
+ var _excluded = ["children", "style"];
13
16
  var _this = this,
14
17
  _jsxFileName = "/home/runner/work/stream-chat-react-native/stream-chat-react-native/package/src/components/AutoCompleteInput/AutoCompleteSuggestionList.tsx";
18
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
19
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
20
+ var AUTO_COMPLETE_SUGGESTION_LIST_HEADER_HEIGHT = 30;
15
21
  var SuggestionsItem = function SuggestionsItem(props) {
16
22
  var children = props.children,
17
- touchableOpacityProps = (0, _objectWithoutProperties2["default"])(props, _excluded);
18
- return _react["default"].createElement(_reactNative.TouchableOpacity, (0, _extends2["default"])({}, touchableOpacityProps, {
23
+ propsStyle = props.style,
24
+ pressableProps = (0, _objectWithoutProperties2["default"])(props, _excluded);
25
+ var style = function style(_ref) {
26
+ var pressed = _ref.pressed;
27
+ return [propsStyle, {
28
+ opacity: pressed ? 0.2 : 1
29
+ }];
30
+ };
31
+ return _react["default"].createElement(_reactNative.Pressable, (0, _extends2["default"])({}, pressableProps, {
32
+ style: style,
19
33
  __self: _this,
20
34
  __source: {
21
35
  fileName: _jsxFileName,
22
- lineNumber: 36,
23
- columnNumber: 10
36
+ lineNumber: 52,
37
+ columnNumber: 5
24
38
  }
25
39
  }), children);
26
40
  };
27
41
  SuggestionsItem.displayName = 'SuggestionsHeader{messageInput{suggestions}}';
28
42
  var AutoCompleteSuggestionListWithContext = function AutoCompleteSuggestionListWithContext(props) {
43
+ var _useState = (0, _react.useState)(0),
44
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
45
+ itemHeight = _useState2[0],
46
+ setItemHeight = _useState2[1];
29
47
  var active = props.active,
30
48
  AutoCompleteSuggestionHeader = props.AutoCompleteSuggestionHeader,
31
49
  AutoCompleteSuggestionItem = props.AutoCompleteSuggestionItem,
@@ -34,98 +52,68 @@ var AutoCompleteSuggestionListWithContext = function AutoCompleteSuggestionListW
34
52
  queryText = props.queryText,
35
53
  triggerType = props.triggerType;
36
54
  var _useTheme = (0, _ThemeContext.useTheme)(),
37
- _useTheme$theme$messa = _useTheme.theme.messageInput,
55
+ _useTheme$theme = _useTheme.theme,
56
+ white = _useTheme$theme.colors.white,
57
+ _useTheme$theme$messa = _useTheme$theme.messageInput,
38
58
  maxHeight = _useTheme$theme$messa.container.maxHeight,
39
59
  itemStyle = _useTheme$theme$messa.suggestions.item,
40
60
  flatlist = _useTheme$theme$messa.suggestionsListContainer.flatlist;
41
- var renderItem = function renderItem(_ref) {
42
- var index = _ref.index,
43
- item = _ref.item;
61
+ var flatlistHeight = (0, _react.useMemo)(function () {
62
+ var totalItemHeight;
63
+ if (triggerType === 'emoji') {
64
+ totalItemHeight = data.length < 7 ? data.length * itemHeight : itemHeight * 6;
65
+ } else {
66
+ totalItemHeight = data.length < 4 ? data.length * itemHeight : itemHeight * 3;
67
+ }
68
+ return triggerType === 'emoji' || triggerType === 'command' ? totalItemHeight + AUTO_COMPLETE_SUGGESTION_LIST_HEADER_HEIGHT : totalItemHeight;
69
+ }, [itemHeight, data.length]);
70
+ var renderItem = function renderItem(_ref2) {
71
+ var item = _ref2.item;
44
72
  switch (triggerType) {
45
- case 'mention':
46
- if ((0, _SuggestionsContext.isSuggestionUser)(item)) {
47
- return _react["default"].createElement(SuggestionsItem, {
48
- onPress: function onPress() {
49
- onSelect(item);
50
- },
51
- style: [{
52
- paddingBottom: index === data.length - 1 ? 8 : 0,
53
- paddingTop: index === 0 ? 8 : 0
54
- }, itemStyle],
55
- __self: _this,
56
- __source: {
57
- fileName: _jsxFileName,
58
- lineNumber: 71,
59
- columnNumber: 13
60
- }
61
- }, AutoCompleteSuggestionItem && _react["default"].createElement(AutoCompleteSuggestionItem, {
62
- itemProps: item,
63
- triggerType: triggerType,
64
- __self: _this,
65
- __source: {
66
- fileName: _jsxFileName,
67
- lineNumber: 84,
68
- columnNumber: 17
69
- }
70
- }));
71
- }
72
- return null;
73
73
  case 'command':
74
- if ((0, _SuggestionsContext.isSuggestionCommand)(item)) {
75
- return _react["default"].createElement(SuggestionsItem, {
76
- onPress: function onPress() {
77
- onSelect(item);
78
- },
79
- style: [itemStyle],
80
- __self: _this,
81
- __source: {
82
- fileName: _jsxFileName,
83
- lineNumber: 93,
84
- columnNumber: 13
85
- }
86
- }, AutoCompleteSuggestionItem && _react["default"].createElement(AutoCompleteSuggestionItem, {
87
- itemProps: item,
88
- triggerType: triggerType,
89
- __self: _this,
90
- __source: {
91
- fileName: _jsxFileName,
92
- lineNumber: 100,
93
- columnNumber: 17
94
- }
95
- }));
96
- }
97
- return null;
74
+ case 'mention':
98
75
  case 'emoji':
99
- if ((0, _SuggestionsContext.isSuggestionEmoji)(item)) {
100
- return _react["default"].createElement(SuggestionsItem, {
101
- onPress: function onPress() {
102
- onSelect(item);
103
- },
104
- style: [itemStyle],
105
- __self: _this,
106
- __source: {
107
- fileName: _jsxFileName,
108
- lineNumber: 109,
109
- columnNumber: 13
110
- }
111
- }, AutoCompleteSuggestionItem && _react["default"].createElement(AutoCompleteSuggestionItem, {
112
- itemProps: item,
113
- triggerType: triggerType,
114
- __self: _this,
115
- __source: {
116
- fileName: _jsxFileName,
117
- lineNumber: 116,
118
- columnNumber: 17
119
- }
120
- }));
121
- }
122
- return null;
76
+ return _react["default"].createElement(SuggestionsItem, {
77
+ onLayout: function onLayout(event) {
78
+ return setItemHeight(event.nativeEvent.layout.height);
79
+ },
80
+ onPress: function onPress() {
81
+ onSelect(item);
82
+ },
83
+ style: itemStyle,
84
+ __self: _this,
85
+ __source: {
86
+ fileName: _jsxFileName,
87
+ lineNumber: 106,
88
+ columnNumber: 11
89
+ }
90
+ }, AutoCompleteSuggestionItem && _react["default"].createElement(AutoCompleteSuggestionItem, {
91
+ itemProps: item,
92
+ triggerType: triggerType,
93
+ __self: _this,
94
+ __source: {
95
+ fileName: _jsxFileName,
96
+ lineNumber: 114,
97
+ columnNumber: 15
98
+ }
99
+ }));
123
100
  default:
124
101
  return null;
125
102
  }
126
103
  };
127
104
  if (!active || data.length === 0) return null;
128
- return _react["default"].createElement(_reactNative.FlatList, {
105
+ return _react["default"].createElement(_reactNative.View, {
106
+ style: [styles.container, {
107
+ backgroundColor: white,
108
+ height: flatlistHeight
109
+ }],
110
+ __self: _this,
111
+ __source: {
112
+ fileName: _jsxFileName,
113
+ lineNumber: 126,
114
+ columnNumber: 5
115
+ }
116
+ }, _react["default"].createElement(_native.FlatList, {
129
117
  data: data,
130
118
  keyboardShouldPersistTaps: "always",
131
119
  keyExtractor: function keyExtractor(item, index) {
@@ -137,8 +125,8 @@ var AutoCompleteSuggestionListWithContext = function AutoCompleteSuggestionListW
137
125
  __self: _this,
138
126
  __source: {
139
127
  fileName: _jsxFileName,
140
- lineNumber: 138,
141
- columnNumber: 11
128
+ lineNumber: 135,
129
+ columnNumber: 13
142
130
  }
143
131
  }) : null,
144
132
  renderItem: renderItem,
@@ -148,10 +136,10 @@ var AutoCompleteSuggestionListWithContext = function AutoCompleteSuggestionListW
148
136
  __self: _this,
149
137
  __source: {
150
138
  fileName: _jsxFileName,
151
- lineNumber: 130,
152
- columnNumber: 5
139
+ lineNumber: 127,
140
+ columnNumber: 7
153
141
  }
154
- });
142
+ }));
155
143
  };
156
144
  exports.AutoCompleteSuggestionListWithContext = AutoCompleteSuggestionListWithContext;
157
145
  var areEqual = function areEqual(prevProps, nextProps) {
@@ -185,11 +173,24 @@ var AutoCompleteSuggestionList = function AutoCompleteSuggestionList(props) {
185
173
  __self: _this,
186
174
  __source: {
187
175
  fileName: _jsxFileName,
188
- lineNumber: 202,
176
+ lineNumber: 200,
189
177
  columnNumber: 5
190
178
  }
191
179
  }));
192
180
  };
193
181
  exports.AutoCompleteSuggestionList = AutoCompleteSuggestionList;
182
+ var styles = _reactNative.StyleSheet.create({
183
+ container: {
184
+ borderRadius: 8,
185
+ elevation: 3,
186
+ marginHorizontal: 8,
187
+ marginVertical: 8,
188
+ shadowOffset: {
189
+ height: 1,
190
+ width: 0
191
+ },
192
+ shadowOpacity: 0.15
193
+ }
194
+ });
194
195
  AutoCompleteSuggestionList.displayName = 'AutoCompleteSuggestionList{messageInput{suggestions{List}}}';
195
196
  //# sourceMappingURL=AutoCompleteSuggestionList.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_SuggestionsContext","_ThemeContext","_excluded","_this","_jsxFileName","SuggestionsItem","props","children","touchableOpacityProps","_objectWithoutProperties2","createElement","TouchableOpacity","_extends2","__self","__source","fileName","lineNumber","columnNumber","displayName","AutoCompleteSuggestionListWithContext","active","AutoCompleteSuggestionHeader","AutoCompleteSuggestionItem","data","onSelect","queryText","triggerType","_useTheme","useTheme","_useTheme$theme$messa","theme","messageInput","maxHeight","container","itemStyle","suggestions","item","flatlist","suggestionsListContainer","renderItem","_ref","index","isSuggestionUser","onPress","style","paddingBottom","length","paddingTop","itemProps","isSuggestionCommand","isSuggestionEmoji","FlatList","keyboardShouldPersistTaps","keyExtractor","name","id","ListHeaderComponent","exports","areEqual","prevProps","nextProps","prevActive","prevData","prevQueryText","prevType","nextActive","nextData","nextQueryText","nextType","activeEqual","queryTextEqual","dataEqual","typeEqual","MemoizedAutoCompleteSuggestionList","React","memo","AutoCompleteSuggestionList","_useSuggestionsContex","useSuggestionsContext"],"sources":["AutoCompleteSuggestionList.tsx"],"sourcesContent":["import React from 'react';\nimport { FlatList, TouchableOpacity, TouchableOpacityProps } from 'react-native';\n\nimport type { AutoCompleteSuggestionHeaderProps } from './AutoCompleteSuggestionHeader';\nimport type { AutoCompleteSuggestionItemProps } from './AutoCompleteSuggestionItem';\n\nimport {\n isSuggestionCommand,\n isSuggestionEmoji,\n isSuggestionUser,\n Suggestion,\n SuggestionsContextValue,\n useSuggestionsContext,\n} from '../../contexts/suggestionsContext/SuggestionsContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport type { DefaultStreamChatGenerics } from '../../types/types';\n\ntype AutoCompleteSuggestionListComponentProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<SuggestionsContextValue, 'queryText' | 'triggerType'> & {\n active: boolean;\n data: Suggestion<StreamChatGenerics>[];\n onSelect: (item: Suggestion<StreamChatGenerics>) => void;\n};\n\nexport type AutoCompleteSuggestionListPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<\n SuggestionsContextValue<StreamChatGenerics>,\n 'AutoCompleteSuggestionHeader' | 'AutoCompleteSuggestionItem'\n> &\n AutoCompleteSuggestionListComponentProps<StreamChatGenerics>;\n\nconst SuggestionsItem: React.FC<TouchableOpacityProps> = (props) => {\n const { children, ...touchableOpacityProps } = props;\n return <TouchableOpacity {...touchableOpacityProps}>{children}</TouchableOpacity>;\n};\n\nSuggestionsItem.displayName = 'SuggestionsHeader{messageInput{suggestions}}';\n\nexport const AutoCompleteSuggestionListWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: AutoCompleteSuggestionListPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n active,\n AutoCompleteSuggestionHeader,\n AutoCompleteSuggestionItem,\n data,\n onSelect,\n queryText,\n triggerType,\n } = props;\n\n const {\n theme: {\n messageInput: {\n container: { maxHeight },\n suggestions: { item: itemStyle },\n suggestionsListContainer: { flatlist },\n },\n },\n } = useTheme();\n\n const renderItem = ({ index, item }: { index: number; item: Suggestion<StreamChatGenerics> }) => {\n switch (triggerType) {\n case 'mention':\n if (isSuggestionUser(item)) {\n return (\n <SuggestionsItem\n onPress={() => {\n onSelect(item);\n }}\n style={[\n {\n paddingBottom: index === data.length - 1 ? 8 : 0,\n paddingTop: index === 0 ? 8 : 0,\n },\n itemStyle,\n ]}\n >\n {AutoCompleteSuggestionItem && (\n <AutoCompleteSuggestionItem itemProps={item} triggerType={triggerType} />\n )}\n </SuggestionsItem>\n );\n }\n return null;\n case 'command':\n if (isSuggestionCommand(item)) {\n return (\n <SuggestionsItem\n onPress={() => {\n onSelect(item);\n }}\n style={[itemStyle]}\n >\n {AutoCompleteSuggestionItem && (\n <AutoCompleteSuggestionItem itemProps={item} triggerType={triggerType} />\n )}\n </SuggestionsItem>\n );\n }\n return null;\n case 'emoji':\n if (isSuggestionEmoji(item)) {\n return (\n <SuggestionsItem\n onPress={() => {\n onSelect(item);\n }}\n style={[itemStyle]}\n >\n {AutoCompleteSuggestionItem && (\n <AutoCompleteSuggestionItem itemProps={item} triggerType={triggerType} />\n )}\n </SuggestionsItem>\n );\n }\n return null;\n default:\n return null;\n }\n };\n\n if (!active || data.length === 0) return null;\n\n return (\n <FlatList\n data={data}\n keyboardShouldPersistTaps='always'\n keyExtractor={(item, index) =>\n `${item.name || (isSuggestionUser(item) ? item.id : '')}${index}`\n }\n ListHeaderComponent={\n AutoCompleteSuggestionHeader ? (\n <AutoCompleteSuggestionHeader queryText={queryText} triggerType={triggerType} />\n ) : null\n }\n renderItem={renderItem}\n style={[flatlist, { maxHeight }]}\n />\n );\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: AutoCompleteSuggestionListPropsWithContext<StreamChatGenerics>,\n nextProps: AutoCompleteSuggestionListPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n active: prevActive,\n data: prevData,\n queryText: prevQueryText,\n triggerType: prevType,\n } = prevProps;\n const {\n active: nextActive,\n data: nextData,\n queryText: nextQueryText,\n triggerType: nextType,\n } = nextProps;\n\n const activeEqual = prevActive === nextActive;\n if (!activeEqual) return false;\n\n const queryTextEqual = prevQueryText === nextQueryText;\n if (!queryTextEqual) return false;\n\n const dataEqual = prevData === nextData;\n if (!dataEqual) return false;\n\n const typeEqual = prevType === nextType;\n if (!typeEqual) return false;\n\n return true;\n};\n\nconst MemoizedAutoCompleteSuggestionList = React.memo(\n AutoCompleteSuggestionListWithContext,\n areEqual,\n) as typeof AutoCompleteSuggestionListWithContext;\n\nexport type AutoCompleteSuggestionListProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = AutoCompleteSuggestionListComponentProps<StreamChatGenerics> & {\n AutoCompleteSuggestionHeader?: React.ComponentType<AutoCompleteSuggestionHeaderProps>;\n AutoCompleteSuggestionItem?: React.ComponentType<\n AutoCompleteSuggestionItemProps<StreamChatGenerics>\n >;\n};\n\nexport const AutoCompleteSuggestionList = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: AutoCompleteSuggestionListProps<StreamChatGenerics>,\n) => {\n const { AutoCompleteSuggestionHeader, AutoCompleteSuggestionItem } =\n useSuggestionsContext<StreamChatGenerics>();\n\n return (\n <MemoizedAutoCompleteSuggestionList\n {...{ AutoCompleteSuggestionHeader, AutoCompleteSuggestionItem }}\n {...props}\n />\n );\n};\n\nAutoCompleteSuggestionList.displayName =\n 'AutoCompleteSuggestionList{messageInput{suggestions{List}}}';\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAKA,IAAAE,mBAAA,GAAAF,OAAA;AAQA,IAAAG,aAAA,GAAAH,OAAA;AAAoE,IAAAI,SAAA;AAAA,IAAAC,KAAA;EAAAC,YAAA;AAmBpE,IAAMC,eAAgD,GAAG,SAAnDA,eAAgDA,CAAIC,KAAK,EAAK;EAClE,IAAQC,QAAQ,GAA+BD,KAAK,CAA5CC,QAAQ;IAAKC,qBAAqB,OAAAC,yBAAA,aAAKH,KAAK,EAAAJ,SAAA;EACpD,OAAON,MAAA,YAAAc,aAAA,CAACX,YAAA,CAAAY,gBAAgB,MAAAC,SAAA,iBAAKJ,qBAAqB;IAAAK,MAAA,EAAAV,KAAA;IAAAW,QAAA;MAAAC,QAAA,EAAAX,YAAA;MAAAY,UAAA;MAAAC,YAAA;IAAA;EAAA,IAAGV,QAA2B,CAAC;AACnF,CAAC;AAEDF,eAAe,CAACa,WAAW,GAAG,8CAA8C;AAErE,IAAMC,qCAAqC,GAAG,SAAxCA,qCAAqCA,CAGhDb,KAAqE,EAClE;EACH,IACEc,MAAM,GAOJd,KAAK,CAPPc,MAAM;IACNC,4BAA4B,GAM1Bf,KAAK,CANPe,4BAA4B;IAC5BC,0BAA0B,GAKxBhB,KAAK,CALPgB,0BAA0B;IAC1BC,IAAI,GAIFjB,KAAK,CAJPiB,IAAI;IACJC,QAAQ,GAGNlB,KAAK,CAHPkB,QAAQ;IACRC,SAAS,GAEPnB,KAAK,CAFPmB,SAAS;IACTC,WAAW,GACTpB,KAAK,CADPoB,WAAW;EAGb,IAAAC,SAAA,GAQI,IAAAC,sBAAQ,EAAC,CAAC;IAAAC,qBAAA,GAAAF,SAAA,CAPZG,KAAK,CACHC,YAAY;IACGC,SAAS,GAAAH,qBAAA,CAAtBI,SAAS,CAAID,SAAS;IACDE,SAAS,GAAAL,qBAAA,CAA9BM,WAAW,CAAIC,IAAI;IACSC,QAAQ,GAAAR,qBAAA,CAApCS,wBAAwB,CAAID,QAAQ;EAK1C,IAAME,UAAU,GAAG,SAAbA,UAAUA,CAAAC,IAAA,EAAiF;IAAA,IAA3EC,KAAK,GAAAD,IAAA,CAALC,KAAK;MAAEL,IAAI,GAAAI,IAAA,CAAJJ,IAAI;IAC/B,QAAQV,WAAW;MACjB,KAAK,SAAS;QACZ,IAAI,IAAAgB,oCAAgB,EAACN,IAAI,CAAC,EAAE;UAC1B,OACExC,MAAA,YAAAc,aAAA,CAACL,eAAe;YACdsC,OAAO,EAAE,SAAAA,QAAA,EAAM;cACbnB,QAAQ,CAACY,IAAI,CAAC;YAChB,CAAE;YACFQ,KAAK,EAAE,CACL;cACEC,aAAa,EAAEJ,KAAK,KAAKlB,IAAI,CAACuB,MAAM,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;cAChDC,UAAU,EAAEN,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG;YAChC,CAAC,EACDP,SAAS,CACT;YAAArB,MAAA,EAAAV,KAAA;YAAAW,QAAA;cAAAC,QAAA,EAAAX,YAAA;cAAAY,UAAA;cAAAC,YAAA;YAAA;UAAA,GAEDK,0BAA0B,IACzB1B,MAAA,YAAAc,aAAA,CAACY,0BAA0B;YAAC0B,SAAS,EAAEZ,IAAK;YAACV,WAAW,EAAEA,WAAY;YAAAb,MAAA,EAAAV,KAAA;YAAAW,QAAA;cAAAC,QAAA,EAAAX,YAAA;cAAAY,UAAA;cAAAC,YAAA;YAAA;UAAA,CAAE,CAE3D,CAAC;QAEtB;QACA,OAAO,IAAI;MACb,KAAK,SAAS;QACZ,IAAI,IAAAgC,uCAAmB,EAACb,IAAI,CAAC,EAAE;UAC7B,OACExC,MAAA,YAAAc,aAAA,CAACL,eAAe;YACdsC,OAAO,EAAE,SAAAA,QAAA,EAAM;cACbnB,QAAQ,CAACY,IAAI,CAAC;YAChB,CAAE;YACFQ,KAAK,EAAE,CAACV,SAAS,CAAE;YAAArB,MAAA,EAAAV,KAAA;YAAAW,QAAA;cAAAC,QAAA,EAAAX,YAAA;cAAAY,UAAA;cAAAC,YAAA;YAAA;UAAA,GAElBK,0BAA0B,IACzB1B,MAAA,YAAAc,aAAA,CAACY,0BAA0B;YAAC0B,SAAS,EAAEZ,IAAK;YAACV,WAAW,EAAEA,WAAY;YAAAb,MAAA,EAAAV,KAAA;YAAAW,QAAA;cAAAC,QAAA,EAAAX,YAAA;cAAAY,UAAA;cAAAC,YAAA;YAAA;UAAA,CAAE,CAE3D,CAAC;QAEtB;QACA,OAAO,IAAI;MACb,KAAK,OAAO;QACV,IAAI,IAAAiC,qCAAiB,EAACd,IAAI,CAAC,EAAE;UAC3B,OACExC,MAAA,YAAAc,aAAA,CAACL,eAAe;YACdsC,OAAO,EAAE,SAAAA,QAAA,EAAM;cACbnB,QAAQ,CAACY,IAAI,CAAC;YAChB,CAAE;YACFQ,KAAK,EAAE,CAACV,SAAS,CAAE;YAAArB,MAAA,EAAAV,KAAA;YAAAW,QAAA;cAAAC,QAAA,EAAAX,YAAA;cAAAY,UAAA;cAAAC,YAAA;YAAA;UAAA,GAElBK,0BAA0B,IACzB1B,MAAA,YAAAc,aAAA,CAACY,0BAA0B;YAAC0B,SAAS,EAAEZ,IAAK;YAACV,WAAW,EAAEA,WAAY;YAAAb,MAAA,EAAAV,KAAA;YAAAW,QAAA;cAAAC,QAAA,EAAAX,YAAA;cAAAY,UAAA;cAAAC,YAAA;YAAA;UAAA,CAAE,CAE3D,CAAC;QAEtB;QACA,OAAO,IAAI;MACb;QACE,OAAO,IAAI;IACf;EACF,CAAC;EAED,IAAI,CAACG,MAAM,IAAIG,IAAI,CAACuB,MAAM,KAAK,CAAC,EAAE,OAAO,IAAI;EAE7C,OACElD,MAAA,YAAAc,aAAA,CAACX,YAAA,CAAAoD,QAAQ;IACP5B,IAAI,EAAEA,IAAK;IACX6B,yBAAyB,EAAC,QAAQ;IAClCC,YAAY,EAAE,SAAAA,aAACjB,IAAI,EAAEK,KAAK;MAAA,aACrBL,IAAI,CAACkB,IAAI,KAAK,IAAAZ,oCAAgB,EAACN,IAAI,CAAC,GAAGA,IAAI,CAACmB,EAAE,GAAG,EAAE,CAAC,IAAGd,KAAK;IAAA,CAChE;IACDe,mBAAmB,EACjBnC,4BAA4B,GAC1BzB,MAAA,YAAAc,aAAA,CAACW,4BAA4B;MAACI,SAAS,EAAEA,SAAU;MAACC,WAAW,EAAEA,WAAY;MAAAb,MAAA,EAAAV,KAAA;MAAAW,QAAA;QAAAC,QAAA,EAAAX,YAAA;QAAAY,UAAA;QAAAC,YAAA;MAAA;IAAA,CAAE,CAAC,GAC9E,IACL;IACDsB,UAAU,EAAEA,UAAW;IACvBK,KAAK,EAAE,CAACP,QAAQ,EAAE;MAAEL,SAAS,EAATA;IAAU,CAAC,CAAE;IAAAnB,MAAA,EAAAV,KAAA;IAAAW,QAAA;MAAAC,QAAA,EAAAX,YAAA;MAAAY,UAAA;MAAAC,YAAA;IAAA;EAAA,CAClC,CAAC;AAEN,CAAC;AAACwC,OAAA,CAAAtC,qCAAA,GAAAA,qCAAA;AAEF,IAAMuC,QAAQ,GAAG,SAAXA,QAAQA,CACZC,SAAyE,EACzEC,SAAyE,EACtE;EACH,IACUC,UAAU,GAIhBF,SAAS,CAJXvC,MAAM;IACA0C,QAAQ,GAGZH,SAAS,CAHXpC,IAAI;IACOwC,aAAa,GAEtBJ,SAAS,CAFXlC,SAAS;IACIuC,QAAQ,GACnBL,SAAS,CADXjC,WAAW;EAEb,IACUuC,UAAU,GAIhBL,SAAS,CAJXxC,MAAM;IACA8C,QAAQ,GAGZN,SAAS,CAHXrC,IAAI;IACO4C,aAAa,GAEtBP,SAAS,CAFXnC,SAAS;IACI2C,QAAQ,GACnBR,SAAS,CADXlC,WAAW;EAGb,IAAM2C,WAAW,GAAGR,UAAU,KAAKI,UAAU;EAC7C,IAAI,CAACI,WAAW,EAAE,OAAO,KAAK;EAE9B,IAAMC,cAAc,GAAGP,aAAa,KAAKI,aAAa;EACtD,IAAI,CAACG,cAAc,EAAE,OAAO,KAAK;EAEjC,IAAMC,SAAS,GAAGT,QAAQ,KAAKI,QAAQ;EACvC,IAAI,CAACK,SAAS,EAAE,OAAO,KAAK;EAE5B,IAAMC,SAAS,GAAGR,QAAQ,KAAKI,QAAQ;EACvC,IAAI,CAACI,SAAS,EAAE,OAAO,KAAK;EAE5B,OAAO,IAAI;AACb,CAAC;AAED,IAAMC,kCAAkC,GAAGC,iBAAK,CAACC,IAAI,CACnDxD,qCAAqC,EACrCuC,QACF,CAAiD;AAW1C,IAAMkB,0BAA0B,GAAG,SAA7BA,0BAA0BA,CAGrCtE,KAA0D,EACvD;EACH,IAAAuE,qBAAA,GACE,IAAAC,yCAAqB,EAAqB,CAAC;IADrCzD,4BAA4B,GAAAwD,qBAAA,CAA5BxD,4BAA4B;IAAEC,0BAA0B,GAAAuD,qBAAA,CAA1BvD,0BAA0B;EAGhE,OACE1B,MAAA,YAAAc,aAAA,CAAC+D,kCAAkC,MAAA7D,SAAA;IAC3BS,4BAA4B,EAA5BA,4BAA4B;IAAEC,0BAA0B,EAA1BA;EAA0B,GAC1DhB,KAAK;IAAAO,MAAA,EAAAV,KAAA;IAAAW,QAAA;MAAAC,QAAA,EAAAX,YAAA;MAAAY,UAAA;MAAAC,YAAA;IAAA;EAAA,EACV,CAAC;AAEN,CAAC;AAACwC,OAAA,CAAAmB,0BAAA,GAAAA,0BAAA;AAEFA,0BAA0B,CAAC1D,WAAW,GACpC,6DAA6D"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_SuggestionsContext","_ThemeContext","_native","_excluded","_this","_jsxFileName","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","AUTO_COMPLETE_SUGGESTION_LIST_HEADER_HEIGHT","SuggestionsItem","props","children","propsStyle","style","pressableProps","_objectWithoutProperties2","_ref","pressed","opacity","createElement","Pressable","_extends2","__self","__source","fileName","lineNumber","columnNumber","displayName","AutoCompleteSuggestionListWithContext","_useState","useState","_useState2","_slicedToArray2","itemHeight","setItemHeight","active","AutoCompleteSuggestionHeader","AutoCompleteSuggestionItem","data","onSelect","queryText","triggerType","_useTheme","useTheme","_useTheme$theme","theme","white","colors","_useTheme$theme$messa","messageInput","maxHeight","container","itemStyle","suggestions","item","flatlist","suggestionsListContainer","flatlistHeight","useMemo","totalItemHeight","length","renderItem","_ref2","onLayout","event","nativeEvent","layout","height","onPress","itemProps","View","styles","backgroundColor","FlatList","keyboardShouldPersistTaps","keyExtractor","index","name","isSuggestionUser","id","ListHeaderComponent","exports","areEqual","prevProps","nextProps","prevActive","prevData","prevQueryText","prevType","nextActive","nextData","nextQueryText","nextType","activeEqual","queryTextEqual","dataEqual","typeEqual","MemoizedAutoCompleteSuggestionList","React","memo","AutoCompleteSuggestionList","_useSuggestionsContex","useSuggestionsContext","StyleSheet","create","borderRadius","elevation","marginHorizontal","marginVertical","shadowOffset","width","shadowOpacity"],"sources":["AutoCompleteSuggestionList.tsx"],"sourcesContent":["import React, { useMemo, useState } from 'react';\nimport {\n LayoutChangeEvent,\n Pressable,\n PressableProps,\n PressableStateCallbackType,\n StyleSheet,\n View,\n ViewStyle,\n} from 'react-native';\n\nimport type { AutoCompleteSuggestionHeaderProps } from './AutoCompleteSuggestionHeader';\nimport type { AutoCompleteSuggestionItemProps } from './AutoCompleteSuggestionItem';\n\nimport {\n isSuggestionUser,\n Suggestion,\n SuggestionsContextValue,\n useSuggestionsContext,\n} from '../../contexts/suggestionsContext/SuggestionsContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { FlatList } from '../../native';\nimport type { DefaultStreamChatGenerics } from '../../types/types';\n\nconst AUTO_COMPLETE_SUGGESTION_LIST_HEADER_HEIGHT = 30;\n\ntype AutoCompleteSuggestionListComponentProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<SuggestionsContextValue, 'queryText' | 'triggerType'> & {\n active: boolean;\n data: Suggestion<StreamChatGenerics>[];\n onSelect: (item: Suggestion<StreamChatGenerics>) => void;\n};\n\nexport type AutoCompleteSuggestionListPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<\n SuggestionsContextValue<StreamChatGenerics>,\n 'AutoCompleteSuggestionHeader' | 'AutoCompleteSuggestionItem'\n> &\n AutoCompleteSuggestionListComponentProps<StreamChatGenerics>;\n\nconst SuggestionsItem: React.FC<PressableProps> = (props) => {\n const { children, style: propsStyle, ...pressableProps } = props;\n\n const style = ({ pressed }: PressableStateCallbackType) => [\n propsStyle as ViewStyle,\n { opacity: pressed ? 0.2 : 1 },\n ];\n\n return (\n <Pressable {...pressableProps} style={style}>\n {children}\n </Pressable>\n );\n};\n\nSuggestionsItem.displayName = 'SuggestionsHeader{messageInput{suggestions}}';\n\nexport const AutoCompleteSuggestionListWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: AutoCompleteSuggestionListPropsWithContext<StreamChatGenerics>,\n) => {\n const [itemHeight, setItemHeight] = useState<number>(0);\n const {\n active,\n AutoCompleteSuggestionHeader,\n AutoCompleteSuggestionItem,\n data,\n onSelect,\n queryText,\n triggerType,\n } = props;\n\n const {\n theme: {\n colors: { white },\n messageInput: {\n container: { maxHeight },\n suggestions: { item: itemStyle },\n suggestionsListContainer: { flatlist },\n },\n },\n } = useTheme();\n\n const flatlistHeight = useMemo(() => {\n let totalItemHeight;\n if (triggerType === 'emoji') {\n totalItemHeight = data.length < 7 ? data.length * itemHeight : itemHeight * 6;\n } else {\n totalItemHeight = data.length < 4 ? data.length * itemHeight : itemHeight * 3;\n }\n\n return triggerType === 'emoji' || triggerType === 'command'\n ? totalItemHeight + AUTO_COMPLETE_SUGGESTION_LIST_HEADER_HEIGHT\n : totalItemHeight;\n }, [itemHeight, data.length]);\n\n const renderItem = ({ item }: { item: Suggestion<StreamChatGenerics> }) => {\n switch (triggerType) {\n case 'command':\n case 'mention':\n case 'emoji':\n return (\n <SuggestionsItem\n onLayout={(event: LayoutChangeEvent) => setItemHeight(event.nativeEvent.layout.height)}\n onPress={() => {\n onSelect(item);\n }}\n style={itemStyle}\n >\n {AutoCompleteSuggestionItem && (\n <AutoCompleteSuggestionItem itemProps={item} triggerType={triggerType} />\n )}\n </SuggestionsItem>\n );\n default:\n return null;\n }\n };\n\n if (!active || data.length === 0) return null;\n\n return (\n <View style={[styles.container, { backgroundColor: white, height: flatlistHeight }]}>\n <FlatList\n data={data}\n keyboardShouldPersistTaps='always'\n keyExtractor={(item, index) =>\n `${item.name || (isSuggestionUser(item) ? item.id : '')}${index}`\n }\n ListHeaderComponent={\n AutoCompleteSuggestionHeader ? (\n <AutoCompleteSuggestionHeader queryText={queryText} triggerType={triggerType} />\n ) : null\n }\n renderItem={renderItem}\n style={[flatlist, { maxHeight }]}\n />\n </View>\n );\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: AutoCompleteSuggestionListPropsWithContext<StreamChatGenerics>,\n nextProps: AutoCompleteSuggestionListPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n active: prevActive,\n data: prevData,\n queryText: prevQueryText,\n triggerType: prevType,\n } = prevProps;\n const {\n active: nextActive,\n data: nextData,\n queryText: nextQueryText,\n triggerType: nextType,\n } = nextProps;\n\n const activeEqual = prevActive === nextActive;\n if (!activeEqual) return false;\n\n const queryTextEqual = prevQueryText === nextQueryText;\n if (!queryTextEqual) return false;\n\n const dataEqual = prevData === nextData;\n if (!dataEqual) return false;\n\n const typeEqual = prevType === nextType;\n if (!typeEqual) return false;\n\n return true;\n};\n\nconst MemoizedAutoCompleteSuggestionList = React.memo(\n AutoCompleteSuggestionListWithContext,\n areEqual,\n) as typeof AutoCompleteSuggestionListWithContext;\n\nexport type AutoCompleteSuggestionListProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = AutoCompleteSuggestionListComponentProps<StreamChatGenerics> & {\n AutoCompleteSuggestionHeader?: React.ComponentType<AutoCompleteSuggestionHeaderProps>;\n AutoCompleteSuggestionItem?: React.ComponentType<\n AutoCompleteSuggestionItemProps<StreamChatGenerics>\n >;\n};\n\nexport const AutoCompleteSuggestionList = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: AutoCompleteSuggestionListProps<StreamChatGenerics>,\n) => {\n const { AutoCompleteSuggestionHeader, AutoCompleteSuggestionItem } =\n useSuggestionsContext<StreamChatGenerics>();\n\n return (\n <MemoizedAutoCompleteSuggestionList\n {...{ AutoCompleteSuggestionHeader, AutoCompleteSuggestionItem }}\n {...props}\n />\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n borderRadius: 8,\n elevation: 3,\n marginHorizontal: 8,\n marginVertical: 8,\n shadowOffset: { height: 1, width: 0 },\n shadowOpacity: 0.15,\n },\n});\n\nAutoCompleteSuggestionList.displayName =\n 'AutoCompleteSuggestionList{messageInput{suggestions{List}}}';\n"],"mappings":"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"}
@@ -67,16 +67,8 @@ var styles = _reactNative.StyleSheet.create({
67
67
  paddingLeft: 10
68
68
  },
69
69
  suggestionsListContainer: {
70
- borderRadius: 10,
71
- elevation: 3,
72
- left: 8,
73
70
  position: 'absolute',
74
- right: 8,
75
- shadowOffset: {
76
- height: 1,
77
- width: 0
78
- },
79
- shadowOpacity: 0.15
71
+ width: '100%'
80
72
  }
81
73
  });
82
74
  var MessageInputWithContext = function MessageInputWithContext(props) {
@@ -416,21 +408,21 @@ var MessageInputWithContext = function MessageInputWithContext(props) {
416
408
  __self: _this,
417
409
  __source: {
418
410
  fileName: _jsxFileName,
419
- lineNumber: 547,
411
+ lineNumber: 542,
420
412
  columnNumber: 7
421
413
  }
422
414
  }, editing && _react["default"].createElement(InputEditingStateHeader, {
423
415
  __self: _this,
424
416
  __source: {
425
417
  fileName: _jsxFileName,
426
- lineNumber: 555,
418
+ lineNumber: 550,
427
419
  columnNumber: 21
428
420
  }
429
421
  }), quotedMessage && _react["default"].createElement(InputReplyStateHeader, {
430
422
  __self: _this,
431
423
  __source: {
432
424
  fileName: _jsxFileName,
433
- lineNumber: 556,
425
+ lineNumber: 551,
434
426
  columnNumber: 27
435
427
  }
436
428
  }), _react["default"].createElement(_reactNative.View, {
@@ -438,7 +430,7 @@ var MessageInputWithContext = function MessageInputWithContext(props) {
438
430
  __self: _this,
439
431
  __source: {
440
432
  fileName: _jsxFileName,
441
- lineNumber: 557,
433
+ lineNumber: 552,
442
434
  columnNumber: 9
443
435
  }
444
436
  }, Input ? _react["default"].createElement(Input, {
@@ -447,7 +439,7 @@ var MessageInputWithContext = function MessageInputWithContext(props) {
447
439
  __self: _this,
448
440
  __source: {
449
441
  fileName: _jsxFileName,
450
- lineNumber: 559,
442
+ lineNumber: 554,
451
443
  columnNumber: 13
452
444
  }
453
445
  }) : _react["default"].createElement(_react["default"].Fragment, null, _react["default"].createElement(_reactNative.View, {
@@ -455,14 +447,14 @@ var MessageInputWithContext = function MessageInputWithContext(props) {
455
447
  __self: _this,
456
448
  __source: {
457
449
  fileName: _jsxFileName,
458
- lineNumber: 565,
450
+ lineNumber: 560,
459
451
  columnNumber: 15
460
452
  }
461
453
  }, InputButtons && _react["default"].createElement(InputButtons, {
462
454
  __self: _this,
463
455
  __source: {
464
456
  fileName: _jsxFileName,
465
- lineNumber: 566,
457
+ lineNumber: 561,
466
458
  columnNumber: 34
467
459
  }
468
460
  })), _react["default"].createElement(_reactNative.View, {
@@ -473,7 +465,7 @@ var MessageInputWithContext = function MessageInputWithContext(props) {
473
465
  __self: _this,
474
466
  __source: {
475
467
  fileName: _jsxFileName,
476
- lineNumber: 568,
468
+ lineNumber: 563,
477
469
  columnNumber: 15
478
470
  }
479
471
  }, (typeof editing !== 'boolean' && (editing == null ? void 0 : editing.quoted_message) || quotedMessage) && _react["default"].createElement(_reactNative.View, {
@@ -481,21 +473,21 @@ var MessageInputWithContext = function MessageInputWithContext(props) {
481
473
  __self: _this,
482
474
  __source: {
483
475
  fileName: _jsxFileName,
484
- lineNumber: 580,
476
+ lineNumber: 575,
485
477
  columnNumber: 19
486
478
  }
487
479
  }, _react["default"].createElement(Reply, {
488
480
  __self: _this,
489
481
  __source: {
490
482
  fileName: _jsxFileName,
491
- lineNumber: 581,
483
+ lineNumber: 576,
492
484
  columnNumber: 21
493
485
  }
494
486
  })), imageUploads.length ? _react["default"].createElement(ImageUploadPreview, {
495
487
  __self: _this,
496
488
  __source: {
497
489
  fileName: _jsxFileName,
498
- lineNumber: 584,
490
+ lineNumber: 579,
499
491
  columnNumber: 40
500
492
  }
501
493
  }) : null, imageUploads.length && fileUploads.length ? _react["default"].createElement(_reactNative.View, {
@@ -506,14 +498,14 @@ var MessageInputWithContext = function MessageInputWithContext(props) {
506
498
  __self: _this,
507
499
  __source: {
508
500
  fileName: _jsxFileName,
509
- lineNumber: 586,
501
+ lineNumber: 581,
510
502
  columnNumber: 19
511
503
  }
512
504
  }) : null, fileUploads.length ? _react["default"].createElement(FileUploadPreview, {
513
505
  __self: _this,
514
506
  __source: {
515
507
  fileName: _jsxFileName,
516
- lineNumber: 596,
508
+ lineNumber: 591,
517
509
  columnNumber: 39
518
510
  }
519
511
  }) : null, giphyActive ? _react["default"].createElement(InputGiphySearch, {
@@ -521,7 +513,7 @@ var MessageInputWithContext = function MessageInputWithContext(props) {
521
513
  __self: _this,
522
514
  __source: {
523
515
  fileName: _jsxFileName,
524
- lineNumber: 598,
516
+ lineNumber: 593,
525
517
  columnNumber: 19
526
518
  }
527
519
  }) : _react["default"].createElement(_reactNative.View, {
@@ -529,7 +521,7 @@ var MessageInputWithContext = function MessageInputWithContext(props) {
529
521
  __self: _this,
530
522
  __source: {
531
523
  fileName: _jsxFileName,
532
- lineNumber: 600,
524
+ lineNumber: 595,
533
525
  columnNumber: 19
534
526
  }
535
527
  }, _react["default"].createElement(_AutoCompleteInput.AutoCompleteInput, {
@@ -538,7 +530,7 @@ var MessageInputWithContext = function MessageInputWithContext(props) {
538
530
  __self: _this,
539
531
  __source: {
540
532
  fileName: _jsxFileName,
541
- lineNumber: 601,
533
+ lineNumber: 596,
542
534
  columnNumber: 21
543
535
  }
544
536
  }))), _react["default"].createElement(_reactNative.View, {
@@ -546,7 +538,7 @@ var MessageInputWithContext = function MessageInputWithContext(props) {
546
538
  __self: _this,
547
539
  __source: {
548
540
  fileName: _jsxFileName,
549
- lineNumber: 608,
541
+ lineNumber: 603,
550
542
  columnNumber: 15
551
543
  }
552
544
  }, cooldownRemainingSeconds ? _react["default"].createElement(CooldownTimer, {
@@ -554,7 +546,7 @@ var MessageInputWithContext = function MessageInputWithContext(props) {
554
546
  __self: _this,
555
547
  __source: {
556
548
  fileName: _jsxFileName,
557
- lineNumber: 610,
549
+ lineNumber: 605,
558
550
  columnNumber: 19
559
551
  }
560
552
  }) : _react["default"].createElement(SendButton, {
@@ -562,7 +554,7 @@ var MessageInputWithContext = function MessageInputWithContext(props) {
562
554
  __self: _this,
563
555
  __source: {
564
556
  fileName: _jsxFileName,
565
- lineNumber: 612,
557
+ lineNumber: 607,
566
558
  columnNumber: 19
567
559
  }
568
560
  })))), _react["default"].createElement(ShowThreadMessageInChannelButton, {
@@ -570,18 +562,17 @@ var MessageInputWithContext = function MessageInputWithContext(props) {
570
562
  __self: _this,
571
563
  __source: {
572
564
  fileName: _jsxFileName,
573
- lineNumber: 622,
565
+ lineNumber: 617,
574
566
  columnNumber: 9
575
567
  }
576
568
  })), triggerType && suggestions ? _react["default"].createElement(_reactNative.View, {
577
- style: [suggestionListContainer, styles.suggestionsListContainer, {
578
- backgroundColor: white,
569
+ style: [styles.suggestionsListContainer, suggestionListContainer, {
579
570
  bottom: height
580
571
  }],
581
572
  __self: _this,
582
573
  __source: {
583
574
  fileName: _jsxFileName,
584
- lineNumber: 626,
575
+ lineNumber: 621,
585
576
  columnNumber: 9
586
577
  }
587
578
  }, _react["default"].createElement(AutoCompleteSuggestionList, {
@@ -593,7 +584,7 @@ var MessageInputWithContext = function MessageInputWithContext(props) {
593
584
  __self: _this,
594
585
  __source: {
595
586
  fileName: _jsxFileName,
596
- lineNumber: 633,
587
+ lineNumber: 624,
597
588
  columnNumber: 11
598
589
  }
599
590
  })) : null, selectedPicker && _react["default"].createElement(_reactNative.View, {
@@ -604,14 +595,14 @@ var MessageInputWithContext = function MessageInputWithContext(props) {
604
595
  __self: _this,
605
596
  __source: {
606
597
  fileName: _jsxFileName,
607
- lineNumber: 643,
598
+ lineNumber: 634,
608
599
  columnNumber: 9
609
600
  }
610
601
  }, _react["default"].createElement(_AttachmentSelectionBar.AttachmentSelectionBar, {
611
602
  __self: _this,
612
603
  __source: {
613
604
  fileName: _jsxFileName,
614
- lineNumber: 655,
605
+ lineNumber: 646,
615
606
  columnNumber: 11
616
607
  }
617
608
  })));
@@ -758,7 +749,7 @@ var MessageInput = function MessageInput(props) {
758
749
  __self: _this,
759
750
  __source: {
760
751
  fileName: _jsxFileName,
761
- lineNumber: 861,
752
+ lineNumber: 852,
762
753
  columnNumber: 12
763
754
  }
764
755
  });
@@ -817,7 +808,7 @@ var MessageInput = function MessageInput(props) {
817
808
  __self: _this,
818
809
  __source: {
819
810
  fileName: _jsxFileName,
820
- lineNumber: 865,
811
+ lineNumber: 856,
821
812
  columnNumber: 5
822
813
  }
823
814
  }));