stream-chat-react-native-core 5.4.1 → 5.4.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.
- package/lib/commonjs/components/MessageList/MessageList.js +59 -40
- package/lib/commonjs/components/MessageList/MessageList.js.map +1 -1
- package/lib/commonjs/components/MessageList/hooks/useMessageList.js +4 -3
- package/lib/commonjs/components/MessageList/hooks/useMessageList.js.map +1 -1
- package/lib/commonjs/mock-builders/generator/message.js +1 -1
- package/lib/commonjs/mock-builders/generator/message.js.map +1 -1
- package/lib/commonjs/version.json +1 -1
- package/lib/module/components/MessageList/MessageList.js +59 -40
- package/lib/module/components/MessageList/MessageList.js.map +1 -1
- package/lib/module/components/MessageList/hooks/useMessageList.js +4 -3
- package/lib/module/components/MessageList/hooks/useMessageList.js.map +1 -1
- package/lib/module/mock-builders/generator/message.js +1 -1
- package/lib/module/mock-builders/generator/message.js.map +1 -1
- package/lib/module/version.json +1 -1
- package/lib/typescript/components/MessageList/__tests__/useMessageList.test.d.ts +1 -0
- package/lib/typescript/components/MessageList/hooks/useMessageList.d.ts +0 -1
- package/package.json +1 -1
- package/src/components/MessageList/MessageList.tsx +21 -20
- package/src/components/MessageList/__tests__/useMessageList.test.tsx +67 -0
- package/src/components/MessageList/hooks/useMessageList.ts +4 -7
- package/src/mock-builders/generator/message.js +1 -1
- package/src/version.json +1 -1
|
@@ -5,6 +5,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.useMessageList = exports.isMessageWithStylesReadByAndDateSeparator = void 0;
|
|
7
7
|
|
|
8
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
9
|
+
|
|
8
10
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
11
|
|
|
10
12
|
var _ChannelContext = require("../../../contexts/channelContext/ChannelContext");
|
|
@@ -30,8 +32,7 @@ var isMessageWithStylesReadByAndDateSeparator = function isMessageWithStylesRead
|
|
|
30
32
|
exports.isMessageWithStylesReadByAndDateSeparator = isMessageWithStylesReadByAndDateSeparator;
|
|
31
33
|
|
|
32
34
|
var useMessageList = function useMessageList(params) {
|
|
33
|
-
var
|
|
34
|
-
noGroupByUser = params.noGroupByUser,
|
|
35
|
+
var noGroupByUser = params.noGroupByUser,
|
|
35
36
|
threadList = params.threadList;
|
|
36
37
|
|
|
37
38
|
var _useChatContext = (0, _ChatContext.useChatContext)(),
|
|
@@ -93,7 +94,7 @@ var useMessageList = function useMessageList(params) {
|
|
|
93
94
|
readBy: msg.id ? readData[msg.id] || false : false
|
|
94
95
|
});
|
|
95
96
|
});
|
|
96
|
-
return
|
|
97
|
+
return (0, _toConsumableArray2["default"])(messagesWithStylesReadByAndDateSeparator).reverse();
|
|
97
98
|
};
|
|
98
99
|
|
|
99
100
|
exports.useMessageList = useMessageList;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["useMessageList.ts"],"names":["isMessageWithStylesReadByAndDateSeparator","message","readBy","undefined","useMessageList","params","
|
|
1
|
+
{"version":3,"sources":["useMessageList.ts"],"names":["isMessageWithStylesReadByAndDateSeparator","message","readBy","undefined","useMessageList","params","noGroupByUser","threadList","client","hideDateSeparators","maxTimeBetweenGroupedMessages","read","deletedMessagesVisibilityType","getMessagesGroupStyles","getGroupStyles","messages","threadMessages","messageList","readList","dateSeparators","userId","userID","messageGroupStyles","readData","messagesWithStylesReadByAndDateSeparator","filter","msg","isMessageTypeDeleted","type","user","id","map","dateSeparator","groupStyles","reverse"],"mappings":"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","sourcesContent":["import type { ChannelState, MessageResponse } from 'stream-chat';\n\nimport {\n ChannelContextValue,\n useChannelContext,\n} from '../../../contexts/channelContext/ChannelContext';\nimport { useChatContext } from '../../../contexts/chatContext/ChatContext';\nimport {\n DeletedMessagesVisibilityType,\n useMessagesContext,\n} from '../../../contexts/messagesContext/MessagesContext';\nimport { usePaginatedMessageListContext } from '../../../contexts/paginatedMessageListContext/PaginatedMessageListContext';\nimport { useThreadContext } from '../../../contexts/threadContext/ThreadContext';\nimport type { DefaultStreamChatGenerics } from '../../../types/types';\nimport { getDateSeparators } from '../utils/getDateSeparators';\nimport { getGroupStyles } from '../utils/getGroupStyles';\nimport { getReadStates } from '../utils/getReadStates';\n\nexport type UseMessageListParams = {\n deletedMessagesVisibilityType?: DeletedMessagesVisibilityType;\n noGroupByUser?: boolean;\n threadList?: boolean;\n};\n\nexport type GroupType = string;\n\nexport type MessagesWithStylesReadByAndDateSeparator<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = MessageResponse<StreamChatGenerics> & {\n groupStyles: GroupType[];\n readBy: boolean | number;\n dateSeparator?: Date;\n};\n\nexport type MessageType<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> =\n | ReturnType<ChannelState<StreamChatGenerics>['formatMessage']>\n | MessagesWithStylesReadByAndDateSeparator<StreamChatGenerics>;\n\n// Type guards to check MessageType\nexport const isMessageWithStylesReadByAndDateSeparator = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n message: MessageType<StreamChatGenerics>,\n): message is MessagesWithStylesReadByAndDateSeparator<StreamChatGenerics> =>\n (message as MessagesWithStylesReadByAndDateSeparator<StreamChatGenerics>).readBy !== undefined;\n\nexport const useMessageList = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n params: UseMessageListParams,\n) => {\n const { noGroupByUser, threadList } = params;\n const { client } = useChatContext<StreamChatGenerics>();\n const { hideDateSeparators, maxTimeBetweenGroupedMessages, read } =\n useChannelContext<StreamChatGenerics>();\n const { deletedMessagesVisibilityType, getMessagesGroupStyles = getGroupStyles } =\n useMessagesContext<StreamChatGenerics>();\n const { messages } = usePaginatedMessageListContext<StreamChatGenerics>();\n const { threadMessages } = useThreadContext<StreamChatGenerics>();\n\n const messageList = threadList ? threadMessages : messages;\n const readList: ChannelContextValue<StreamChatGenerics>['read'] | undefined = threadList\n ? undefined\n : read;\n\n const dateSeparators = getDateSeparators<StreamChatGenerics>({\n deletedMessagesVisibilityType,\n hideDateSeparators,\n messages: messageList,\n userId: client.userID,\n });\n\n const messageGroupStyles = getMessagesGroupStyles<StreamChatGenerics>({\n dateSeparators,\n hideDateSeparators,\n maxTimeBetweenGroupedMessages,\n messages: messageList,\n noGroupByUser,\n userId: client.userID,\n });\n\n const readData = getReadStates(client.userID, messageList, readList);\n\n const messagesWithStylesReadByAndDateSeparator = messageList\n .filter((msg) => {\n const isMessageTypeDeleted = msg.type === 'deleted';\n if (deletedMessagesVisibilityType === 'sender') {\n return !isMessageTypeDeleted || msg.user?.id === client.userID;\n } else if (deletedMessagesVisibilityType === 'receiver') {\n return !isMessageTypeDeleted || msg.user?.id !== client.userID;\n } else if (deletedMessagesVisibilityType === 'never') {\n return !isMessageTypeDeleted;\n } else {\n return msg;\n }\n })\n .map((msg) => ({\n ...msg,\n dateSeparator: dateSeparators[msg.id] || undefined,\n groupStyles: messageGroupStyles[msg.id] || ['single'],\n readBy: msg.id ? readData[msg.id] || false : false,\n }));\n\n return [\n ...messagesWithStylesReadByAndDateSeparator,\n ].reverse() as MessageType<StreamChatGenerics>[];\n};\n"]}
|
|
@@ -16,7 +16,7 @@ var generateMessage = function generateMessage() {
|
|
|
16
16
|
var timestamp = options.timestamp || new Date(new Date().getTime() - Math.floor(Math.random() * 100000));
|
|
17
17
|
return (0, _extends2["default"])({
|
|
18
18
|
attachments: [],
|
|
19
|
-
created_at: timestamp
|
|
19
|
+
created_at: timestamp,
|
|
20
20
|
html: '<p>regular</p>',
|
|
21
21
|
id: (0, _uuid.v4)(),
|
|
22
22
|
text: (0, _uuid.v4)(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["message.js"],"names":["generateMessage","options","timestamp","Date","getTime","Math","floor","random","attachments","created_at","
|
|
1
|
+
{"version":3,"sources":["message.js"],"names":["generateMessage","options","timestamp","Date","getTime","Math","floor","random","attachments","created_at","html","id","text","type","updated_at","toString","user","StreamReactNativeNamespace","generateStaticMessage","seed","date"],"mappings":";;;;;;;;;AAAA;;AAEA;;AAEO,IAAMA,eAAe,GAAG,SAAlBA,eAAkB,GAAkB;AAAA,MAAjBC,OAAiB,uEAAP,EAAO;AAC/C,MAAMC,SAAS,GACbD,OAAO,CAACC,SAAR,IAAqB,IAAIC,IAAJ,CAAS,IAAIA,IAAJ,GAAWC,OAAX,KAAuBC,IAAI,CAACC,KAAL,CAAWD,IAAI,CAACE,MAAL,KAAgB,MAA3B,CAAhC,CADvB;AAGA;AACEC,IAAAA,WAAW,EAAE,EADf;AAEEC,IAAAA,UAAU,EAAEP,SAFd;AAGEQ,IAAAA,IAAI,EAAE,gBAHR;AAIEC,IAAAA,EAAE,EAAE,eAJN;AAKEC,IAAAA,IAAI,EAAE,eALR;AAMEC,IAAAA,IAAI,EAAE,SANR;AAOEC,IAAAA,UAAU,EAAEZ,SAAS,CAACa,QAAV,EAPd;AAQEC,IAAAA,IAAI,EAAE;AARR,KASKf,OATL;AAWD,CAfM;;;AAiBP,IAAMgB,0BAA0B,GAAG,sCAAnC;;AACO,IAAMC,qBAAqB,GAAG,SAAxBA,qBAAwB,CAACC,IAAD,EAAOlB,OAAP,EAAgBmB,IAAhB;AAAA,SACnCpB,eAAe;AACbS,IAAAA,UAAU,EAAEW,IAAI,IAAI,6BADP;AAEbT,IAAAA,EAAE,EAAE,cAAOQ,IAAP,EAAaF,0BAAb,CAFS;AAGbL,IAAAA,IAAI,EAAEO,IAHO;AAIbL,IAAAA,UAAU,EAAEM,IAAI,IAAI;AAJP,KAKVnB,OALU,EADoB;AAAA,CAA9B","sourcesContent":["import { v4 as uuidv4, v5 as uuidv5 } from 'uuid';\n\nimport { generateUser } from './user';\n\nexport const generateMessage = (options = {}) => {\n const timestamp =\n options.timestamp || new Date(new Date().getTime() - Math.floor(Math.random() * 100000));\n\n return {\n attachments: [],\n created_at: timestamp,\n html: '<p>regular</p>',\n id: uuidv4(),\n text: uuidv4(),\n type: 'regular',\n updated_at: timestamp.toString(),\n user: generateUser(),\n ...options,\n };\n};\n\nconst StreamReactNativeNamespace = '9b244ee4-7d69-4d7b-ae23-cf89e9f7b035';\nexport const generateStaticMessage = (seed, options, date) =>\n generateMessage({\n created_at: date || '2020-04-27T13:39:49.331742Z',\n id: uuidv5(seed, StreamReactNativeNamespace),\n text: seed,\n updated_at: date || '2020-04-27T13:39:49.331742Z',\n ...options,\n });\n"]}
|
|
@@ -90,7 +90,9 @@ var styles = _reactNative.StyleSheet.create({
|
|
|
90
90
|
});
|
|
91
91
|
|
|
92
92
|
var keyExtractor = function keyExtractor(item) {
|
|
93
|
-
|
|
93
|
+
if (item.id) return item.id;
|
|
94
|
+
if (item.created_at) return typeof item.created_at === 'string' ? item.created_at : item.created_at.toISOString();
|
|
95
|
+
return Date.now().toString();
|
|
94
96
|
};
|
|
95
97
|
|
|
96
98
|
var flatListViewabilityConfig = {
|
|
@@ -171,7 +173,6 @@ var MessageListWithContext = function MessageListWithContext(props) {
|
|
|
171
173
|
});
|
|
172
174
|
}, [myMessageTheme, theme]);
|
|
173
175
|
var messageList = (0, _useMessageList.useMessageList)({
|
|
174
|
-
inverted: inverted,
|
|
175
176
|
noGroupByUser: noGroupByUser,
|
|
176
177
|
threadList: threadList
|
|
177
178
|
});
|
|
@@ -334,7 +335,7 @@ var MessageListWithContext = function MessageListWithContext(props) {
|
|
|
334
335
|
__self: _this,
|
|
335
336
|
__source: {
|
|
336
337
|
fileName: _jsxFileName,
|
|
337
|
-
lineNumber:
|
|
338
|
+
lineNumber: 543,
|
|
338
339
|
columnNumber: 11
|
|
339
340
|
}
|
|
340
341
|
}, _react["default"].createElement(MessageSystem, {
|
|
@@ -343,14 +344,14 @@ var MessageListWithContext = function MessageListWithContext(props) {
|
|
|
343
344
|
__self: _this,
|
|
344
345
|
__source: {
|
|
345
346
|
fileName: _jsxFileName,
|
|
346
|
-
lineNumber:
|
|
347
|
+
lineNumber: 544,
|
|
347
348
|
columnNumber: 13
|
|
348
349
|
}
|
|
349
350
|
})), insertInlineUnreadIndicator && _react["default"].createElement(InlineUnreadIndicator, {
|
|
350
351
|
__self: _this,
|
|
351
352
|
__source: {
|
|
352
353
|
fileName: _jsxFileName,
|
|
353
|
-
lineNumber:
|
|
354
|
+
lineNumber: 546,
|
|
354
355
|
columnNumber: 43
|
|
355
356
|
}
|
|
356
357
|
}));
|
|
@@ -362,7 +363,7 @@ var MessageListWithContext = function MessageListWithContext(props) {
|
|
|
362
363
|
__self: _this,
|
|
363
364
|
__source: {
|
|
364
365
|
fileName: _jsxFileName,
|
|
365
|
-
lineNumber:
|
|
366
|
+
lineNumber: 554,
|
|
366
367
|
columnNumber: 9
|
|
367
368
|
}
|
|
368
369
|
}, _react["default"].createElement(_reactNative.View, {
|
|
@@ -370,7 +371,7 @@ var MessageListWithContext = function MessageListWithContext(props) {
|
|
|
370
371
|
__self: _this,
|
|
371
372
|
__source: {
|
|
372
373
|
fileName: _jsxFileName,
|
|
373
|
-
lineNumber:
|
|
374
|
+
lineNumber: 555,
|
|
374
375
|
columnNumber: 11
|
|
375
376
|
}
|
|
376
377
|
}, _react["default"].createElement(Message, {
|
|
@@ -386,7 +387,7 @@ var MessageListWithContext = function MessageListWithContext(props) {
|
|
|
386
387
|
__self: _this,
|
|
387
388
|
__source: {
|
|
388
389
|
fileName: _jsxFileName,
|
|
389
|
-
lineNumber:
|
|
390
|
+
lineNumber: 556,
|
|
390
391
|
columnNumber: 13
|
|
391
392
|
}
|
|
392
393
|
}))), (0, _useMessageList.isMessageWithStylesReadByAndDateSeparator)(message) && message.dateSeparator && _react["default"].createElement(InlineDateSeparator, {
|
|
@@ -394,14 +395,14 @@ var MessageListWithContext = function MessageListWithContext(props) {
|
|
|
394
395
|
__self: _this,
|
|
395
396
|
__source: {
|
|
396
397
|
fileName: _jsxFileName,
|
|
397
|
-
lineNumber:
|
|
398
|
+
lineNumber: 572,
|
|
398
399
|
columnNumber: 11
|
|
399
400
|
}
|
|
400
401
|
}), insertInlineUnreadIndicator && _react["default"].createElement(InlineUnreadIndicator, {
|
|
401
402
|
__self: _this,
|
|
402
403
|
__source: {
|
|
403
404
|
fileName: _jsxFileName,
|
|
404
|
-
lineNumber:
|
|
405
|
+
lineNumber: 575,
|
|
405
406
|
columnNumber: 41
|
|
406
407
|
}
|
|
407
408
|
})) : _react["default"].createElement(_react["default"].Fragment, null, _react["default"].createElement(_reactNative.View, {
|
|
@@ -409,7 +410,7 @@ var MessageListWithContext = function MessageListWithContext(props) {
|
|
|
409
410
|
__self: _this,
|
|
410
411
|
__source: {
|
|
411
412
|
fileName: _jsxFileName,
|
|
412
|
-
lineNumber:
|
|
413
|
+
lineNumber: 579,
|
|
413
414
|
columnNumber: 9
|
|
414
415
|
}
|
|
415
416
|
}, _react["default"].createElement(Message, {
|
|
@@ -425,7 +426,7 @@ var MessageListWithContext = function MessageListWithContext(props) {
|
|
|
425
426
|
__self: _this,
|
|
426
427
|
__source: {
|
|
427
428
|
fileName: _jsxFileName,
|
|
428
|
-
lineNumber:
|
|
429
|
+
lineNumber: 580,
|
|
429
430
|
columnNumber: 11
|
|
430
431
|
}
|
|
431
432
|
})), (0, _useMessageList.isMessageWithStylesReadByAndDateSeparator)(message) && message.dateSeparator && _react["default"].createElement(InlineDateSeparator, {
|
|
@@ -433,14 +434,14 @@ var MessageListWithContext = function MessageListWithContext(props) {
|
|
|
433
434
|
__self: _this,
|
|
434
435
|
__source: {
|
|
435
436
|
fileName: _jsxFileName,
|
|
436
|
-
lineNumber:
|
|
437
|
+
lineNumber: 599,
|
|
437
438
|
columnNumber: 11
|
|
438
439
|
}
|
|
439
440
|
}), insertInlineUnreadIndicator && _react["default"].createElement(InlineUnreadIndicator, {
|
|
440
441
|
__self: _this,
|
|
441
442
|
__source: {
|
|
442
443
|
fileName: _jsxFileName,
|
|
443
|
-
lineNumber:
|
|
444
|
+
lineNumber: 602,
|
|
444
445
|
columnNumber: 41
|
|
445
446
|
}
|
|
446
447
|
}));
|
|
@@ -752,7 +753,11 @@ var MessageListWithContext = function MessageListWithContext(props) {
|
|
|
752
753
|
}, [imageString, isListActive, legacyImageViewerSwipeBehaviour, numberOfMessagesWithImages, threadExists, threadList]);
|
|
753
754
|
var stickyHeaderFormatDate = (stickyHeaderDate == null ? void 0 : stickyHeaderDate.getFullYear()) === new Date().getFullYear() ? 'MMM D' : 'MMM D, YYYY';
|
|
754
755
|
var tStickyHeaderDate = stickyHeaderDate && !hideStickyDateHeader ? tDateTimeParser(stickyHeaderDate) : null;
|
|
755
|
-
var
|
|
756
|
+
var stickyHeaderDateString = (0, _react.useMemo)(function () {
|
|
757
|
+
if (tStickyHeaderDate === null || hideStickyDateHeader) return null;
|
|
758
|
+
if ((0, _TranslationContext.isDayOrMoment)(tStickyHeaderDate)) return tStickyHeaderDate.format(stickyHeaderFormatDate);
|
|
759
|
+
return new Date(tStickyHeaderDate).toDateString();
|
|
760
|
+
}, [tStickyHeaderDate, stickyHeaderFormatDate, hideStickyDateHeader]);
|
|
756
761
|
|
|
757
762
|
var dismissImagePicker = function dismissImagePicker() {
|
|
758
763
|
if (!hasMoved && selectedPicker) {
|
|
@@ -795,7 +800,7 @@ var MessageListWithContext = function MessageListWithContext(props) {
|
|
|
795
800
|
__self: _this,
|
|
796
801
|
__source: {
|
|
797
802
|
fileName: _jsxFileName,
|
|
798
|
-
lineNumber:
|
|
803
|
+
lineNumber: 951,
|
|
799
804
|
columnNumber: 5
|
|
800
805
|
}
|
|
801
806
|
}, _react["default"].createElement(EmptyStateIndicator, {
|
|
@@ -803,7 +808,7 @@ var MessageListWithContext = function MessageListWithContext(props) {
|
|
|
803
808
|
__self: _this,
|
|
804
809
|
__source: {
|
|
805
810
|
fileName: _jsxFileName,
|
|
806
|
-
lineNumber:
|
|
811
|
+
lineNumber: 952,
|
|
807
812
|
columnNumber: 7
|
|
808
813
|
}
|
|
809
814
|
}));
|
|
@@ -817,7 +822,7 @@ var MessageListWithContext = function MessageListWithContext(props) {
|
|
|
817
822
|
__self: _this,
|
|
818
823
|
__source: {
|
|
819
824
|
fileName: _jsxFileName,
|
|
820
|
-
lineNumber:
|
|
825
|
+
lineNumber: 960,
|
|
821
826
|
columnNumber: 7
|
|
822
827
|
}
|
|
823
828
|
}, _react["default"].createElement(LoadingIndicator, {
|
|
@@ -825,12 +830,35 @@ var MessageListWithContext = function MessageListWithContext(props) {
|
|
|
825
830
|
__self: _this,
|
|
826
831
|
__source: {
|
|
827
832
|
fileName: _jsxFileName,
|
|
828
|
-
lineNumber:
|
|
833
|
+
lineNumber: 961,
|
|
829
834
|
columnNumber: 9
|
|
830
835
|
}
|
|
831
836
|
}));
|
|
832
837
|
}
|
|
833
838
|
|
|
839
|
+
var StickyHeaderComponent = function StickyHeaderComponent() {
|
|
840
|
+
if (!stickyHeaderDateString) return null;
|
|
841
|
+
if (StickyHeader) return _react["default"].createElement(StickyHeader, {
|
|
842
|
+
dateString: stickyHeaderDateString,
|
|
843
|
+
__self: _this,
|
|
844
|
+
__source: {
|
|
845
|
+
fileName: _jsxFileName,
|
|
846
|
+
lineNumber: 968,
|
|
847
|
+
columnNumber: 30
|
|
848
|
+
}
|
|
849
|
+
});
|
|
850
|
+
if (messageListLengthAfterUpdate) return _react["default"].createElement(DateHeader, {
|
|
851
|
+
dateString: stickyHeaderDateString,
|
|
852
|
+
__self: _this,
|
|
853
|
+
__source: {
|
|
854
|
+
fileName: _jsxFileName,
|
|
855
|
+
lineNumber: 969,
|
|
856
|
+
columnNumber: 46
|
|
857
|
+
}
|
|
858
|
+
});
|
|
859
|
+
return null;
|
|
860
|
+
};
|
|
861
|
+
|
|
834
862
|
return _react["default"].createElement(_reactNative.View, {
|
|
835
863
|
style: [styles.container, {
|
|
836
864
|
backgroundColor: white_snow
|
|
@@ -839,7 +867,7 @@ var MessageListWithContext = function MessageListWithContext(props) {
|
|
|
839
867
|
__self: _this,
|
|
840
868
|
__source: {
|
|
841
869
|
fileName: _jsxFileName,
|
|
842
|
-
lineNumber:
|
|
870
|
+
lineNumber: 974,
|
|
843
871
|
columnNumber: 5
|
|
844
872
|
}
|
|
845
873
|
}, _react["default"].createElement(FlatList, (0, _extends2["default"])({
|
|
@@ -873,7 +901,7 @@ var MessageListWithContext = function MessageListWithContext(props) {
|
|
|
873
901
|
__self: _this,
|
|
874
902
|
__source: {
|
|
875
903
|
fileName: _jsxFileName,
|
|
876
|
-
lineNumber:
|
|
904
|
+
lineNumber: 978,
|
|
877
905
|
columnNumber: 7
|
|
878
906
|
}
|
|
879
907
|
})), !loading && _react["default"].createElement(_react["default"].Fragment, null, _react["default"].createElement(_reactNative.View, {
|
|
@@ -881,37 +909,28 @@ var MessageListWithContext = function MessageListWithContext(props) {
|
|
|
881
909
|
__self: _this,
|
|
882
910
|
__source: {
|
|
883
911
|
fileName: _jsxFileName,
|
|
884
|
-
lineNumber:
|
|
912
|
+
lineNumber: 1010,
|
|
885
913
|
columnNumber: 11
|
|
886
914
|
}
|
|
887
|
-
},
|
|
888
|
-
dateString: stickyHeaderDateToRender,
|
|
915
|
+
}, _react["default"].createElement(StickyHeaderComponent, {
|
|
889
916
|
__self: _this,
|
|
890
917
|
__source: {
|
|
891
918
|
fileName: _jsxFileName,
|
|
892
|
-
lineNumber:
|
|
893
|
-
columnNumber:
|
|
894
|
-
}
|
|
895
|
-
}) : messageListLengthAfterUpdate ? _react["default"].createElement(DateHeader, {
|
|
896
|
-
dateString: stickyHeaderDateToRender,
|
|
897
|
-
__self: _this,
|
|
898
|
-
__source: {
|
|
899
|
-
fileName: _jsxFileName,
|
|
900
|
-
lineNumber: 1009,
|
|
901
|
-
columnNumber: 17
|
|
919
|
+
lineNumber: 1011,
|
|
920
|
+
columnNumber: 13
|
|
902
921
|
}
|
|
903
|
-
})
|
|
922
|
+
})), !disableTypingIndicator && TypingIndicator && _react["default"].createElement(TypingIndicatorContainer, {
|
|
904
923
|
__self: _this,
|
|
905
924
|
__source: {
|
|
906
925
|
fileName: _jsxFileName,
|
|
907
|
-
lineNumber:
|
|
926
|
+
lineNumber: 1014,
|
|
908
927
|
columnNumber: 13
|
|
909
928
|
}
|
|
910
929
|
}, _react["default"].createElement(TypingIndicator, {
|
|
911
930
|
__self: _this,
|
|
912
931
|
__source: {
|
|
913
932
|
fileName: _jsxFileName,
|
|
914
|
-
lineNumber:
|
|
933
|
+
lineNumber: 1015,
|
|
915
934
|
columnNumber: 15
|
|
916
935
|
}
|
|
917
936
|
})), _react["default"].createElement(ScrollToBottomButton, {
|
|
@@ -921,14 +940,14 @@ var MessageListWithContext = function MessageListWithContext(props) {
|
|
|
921
940
|
__self: _this,
|
|
922
941
|
__source: {
|
|
923
942
|
fileName: _jsxFileName,
|
|
924
|
-
lineNumber:
|
|
943
|
+
lineNumber: 1018,
|
|
925
944
|
columnNumber: 11
|
|
926
945
|
}
|
|
927
946
|
})), _react["default"].createElement(NetworkDownIndicator, {
|
|
928
947
|
__self: _this,
|
|
929
948
|
__source: {
|
|
930
949
|
fileName: _jsxFileName,
|
|
931
|
-
lineNumber:
|
|
950
|
+
lineNumber: 1025,
|
|
932
951
|
columnNumber: 7
|
|
933
952
|
}
|
|
934
953
|
}));
|
|
@@ -1045,7 +1064,7 @@ var MessageList = function MessageList(props) {
|
|
|
1045
1064
|
__self: _this,
|
|
1046
1065
|
__source: {
|
|
1047
1066
|
fileName: _jsxFileName,
|
|
1048
|
-
lineNumber:
|
|
1067
|
+
lineNumber: 1083,
|
|
1049
1068
|
columnNumber: 5
|
|
1050
1069
|
}
|
|
1051
1070
|
}));
|