stream-chat-react 8.1.3-beta.1 → 9.0.0
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/dist/browser.full-bundle.js +178 -250
- package/dist/browser.full-bundle.js.map +1 -1
- package/dist/browser.full-bundle.min.js +4 -4
- package/dist/browser.full-bundle.min.js.map +1 -1
- package/dist/components/Attachment/utils.js +2 -2
- package/dist/components/AutoCompleteTextarea/Textarea.d.ts +2 -1
- package/dist/components/AutoCompleteTextarea/Textarea.d.ts.map +1 -1
- package/dist/components/AutoCompleteTextarea/Textarea.js +10 -17
- package/dist/components/Channel/Channel.js +2 -2
- package/dist/components/Channel/hooks/useCreateChannelStateContext.js +2 -2
- package/dist/components/Channel/utils.js +2 -2
- package/dist/components/ChannelPreview/ChannelPreview.d.ts.map +1 -1
- package/dist/components/ChannelPreview/ChannelPreview.js +20 -4
- package/dist/components/ChatAutoComplete/ChatAutoComplete.js +1 -1
- package/dist/components/Message/utils.d.ts.map +1 -1
- package/dist/components/Message/utils.js +5 -10
- package/dist/components/MessageInput/MessageInput.d.ts +12 -8
- package/dist/components/MessageInput/MessageInput.d.ts.map +1 -1
- package/dist/components/MessageInput/hooks/useAttachments.js +2 -2
- package/dist/components/MessageInput/hooks/useCreateMessageInputContext.js +2 -2
- package/dist/components/MessageInput/hooks/useMessageInputState.d.ts.map +1 -1
- package/dist/components/MessageInput/hooks/useMessageInputState.js +24 -27
- package/dist/components/MessageInput/hooks/usePasteHandler.d.ts +1 -1
- package/dist/components/MessageInput/hooks/usePasteHandler.d.ts.map +1 -1
- package/dist/components/MessageInput/hooks/usePasteHandler.js +3 -1
- package/dist/components/MessageInput/hooks/useSubmitHandler.d.ts.map +1 -1
- package/dist/components/MessageInput/hooks/useSubmitHandler.js +17 -15
- package/dist/components/MessageList/utils.js +3 -3
- package/dist/components/Thread/Thread.js +50 -10
- package/dist/index.cjs.js +116 -105
- package/dist/index.cjs.js.map +1 -1
- package/dist/stories/{connected-user.stories.d.ts → add-message.stories.d.ts} +1 -1
- package/dist/stories/add-message.stories.d.ts.map +1 -0
- package/dist/stories/{connected-user.stories.js → add-message.stories.js} +4 -3
- package/dist/stories/jump-to-message.stories.d.ts.map +1 -1
- package/dist/stories/jump-to-message.stories.js +0 -3
- package/dist/stories/mark-read.stories.d.ts.map +1 -1
- package/dist/stories/mark-read.stories.js +4 -25
- package/dist/stories/navigate-long-message-lists.stories.d.ts +4 -0
- package/dist/stories/navigate-long-message-lists.stories.d.ts.map +1 -0
- package/dist/stories/navigate-long-message-lists.stories.js +167 -0
- package/dist/utils.d.ts +5 -1
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +5 -8
- package/dist/version.d.ts +1 -1
- package/dist/version.d.ts.map +1 -1
- package/dist/version.js +1 -1
- package/package.json +6 -5
- package/dist/stories/connected-user.stories.d.ts.map +0 -1
|
@@ -143,25 +143,27 @@ export var useSubmitHandler = function (props, state, dispatch, numberOfUploads)
|
|
|
143
143
|
err_1 = _a.sent();
|
|
144
144
|
addNotification(t('Edit message request failed'), 'error');
|
|
145
145
|
return [3 /*break*/, 4];
|
|
146
|
-
case 4: return [3 /*break*/,
|
|
146
|
+
case 4: return [3 /*break*/, 13];
|
|
147
147
|
case 5:
|
|
148
|
-
_a.trys.push([5,
|
|
148
|
+
_a.trys.push([5, 12, , 13]);
|
|
149
149
|
dispatch({ type: 'clear' });
|
|
150
|
-
if (!overrideSubmitHandler) return [3 /*break*/,
|
|
151
|
-
overrideSubmitHandler(__assign(__assign({}, updatedMessage), { parent: parent }), channel.cid);
|
|
152
|
-
|
|
153
|
-
case 6: return [4 /*yield*/, sendMessage(__assign(__assign({}, updatedMessage), { parent: parent }), customMessageData)];
|
|
154
|
-
case 7:
|
|
150
|
+
if (!overrideSubmitHandler) return [3 /*break*/, 7];
|
|
151
|
+
return [4 /*yield*/, overrideSubmitHandler(__assign(__assign({}, updatedMessage), { parent: parent }), channel.cid, customMessageData)];
|
|
152
|
+
case 6:
|
|
155
153
|
_a.sent();
|
|
156
|
-
|
|
154
|
+
return [3 /*break*/, 9];
|
|
155
|
+
case 7: return [4 /*yield*/, sendMessage(__assign(__assign({}, updatedMessage), { parent: parent }), customMessageData)];
|
|
157
156
|
case 8:
|
|
158
|
-
|
|
159
|
-
|
|
157
|
+
_a.sent();
|
|
158
|
+
_a.label = 9;
|
|
160
159
|
case 9:
|
|
160
|
+
if (!publishTypingEvent) return [3 /*break*/, 11];
|
|
161
|
+
return [4 /*yield*/, channel.stopTyping()];
|
|
162
|
+
case 10:
|
|
161
163
|
_a.sent();
|
|
162
|
-
_a.label =
|
|
163
|
-
case
|
|
164
|
-
case
|
|
164
|
+
_a.label = 11;
|
|
165
|
+
case 11: return [3 /*break*/, 13];
|
|
166
|
+
case 12:
|
|
165
167
|
err_2 = _a.sent();
|
|
166
168
|
dispatch({
|
|
167
169
|
getNewText: function () { return text; },
|
|
@@ -173,8 +175,8 @@ export var useSubmitHandler = function (props, state, dispatch, numberOfUploads)
|
|
|
173
175
|
});
|
|
174
176
|
}
|
|
175
177
|
addNotification(t('Send message request failed'), 'error');
|
|
176
|
-
return [3 /*break*/,
|
|
177
|
-
case
|
|
178
|
+
return [3 /*break*/, 13];
|
|
179
|
+
case 13: return [2 /*return*/];
|
|
178
180
|
}
|
|
179
181
|
});
|
|
180
182
|
}); };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/* eslint-disable no-continue */
|
|
2
|
-
import {
|
|
2
|
+
import { nanoid } from 'nanoid';
|
|
3
3
|
import { CUSTOM_MESSAGE_TYPE } from '../../constants/messageTypes';
|
|
4
4
|
import { isDate } from '../../context/TranslationContext';
|
|
5
5
|
/**
|
|
@@ -82,10 +82,10 @@ export var processMessages = function (params) {
|
|
|
82
82
|
export var makeDateMessageId = function (date) {
|
|
83
83
|
var idSuffix;
|
|
84
84
|
try {
|
|
85
|
-
idSuffix = !date ?
|
|
85
|
+
idSuffix = !date ? nanoid() : date instanceof Date ? date.toISOString() : date;
|
|
86
86
|
}
|
|
87
87
|
catch (e) {
|
|
88
|
-
idSuffix =
|
|
88
|
+
idSuffix = nanoid();
|
|
89
89
|
}
|
|
90
90
|
return CUSTOM_MESSAGE_TYPE.date + "-" + idSuffix;
|
|
91
91
|
};
|
|
@@ -9,6 +9,42 @@ var __assign = (this && this.__assign) || function () {
|
|
|
9
9
|
};
|
|
10
10
|
return __assign.apply(this, arguments);
|
|
11
11
|
};
|
|
12
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
13
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
14
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
15
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
16
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
17
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
18
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
19
|
+
});
|
|
20
|
+
};
|
|
21
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
22
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
23
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
24
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
25
|
+
function step(op) {
|
|
26
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
27
|
+
while (_) try {
|
|
28
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
29
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
30
|
+
switch (op[0]) {
|
|
31
|
+
case 0: case 1: t = op; break;
|
|
32
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
33
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
34
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
35
|
+
default:
|
|
36
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
37
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
38
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
39
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
40
|
+
if (t[2]) _.ops.pop();
|
|
41
|
+
_.trys.pop(); continue;
|
|
42
|
+
}
|
|
43
|
+
op = body.call(thisArg, _);
|
|
44
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
45
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
46
|
+
}
|
|
47
|
+
};
|
|
12
48
|
import React, { useEffect, useRef } from 'react';
|
|
13
49
|
import { FixedHeightMessage } from '../Message/FixedHeightMessage';
|
|
14
50
|
import { Message } from '../Message/Message';
|
|
@@ -54,7 +90,7 @@ var DefaultThreadStart = function () {
|
|
|
54
90
|
var ThreadInner = function (props) {
|
|
55
91
|
var additionalMessageInputProps = props.additionalMessageInputProps, additionalMessageListProps = props.additionalMessageListProps, additionalParentMessageProps = props.additionalParentMessageProps, additionalVirtualizedMessageListProps = props.additionalVirtualizedMessageListProps, _a = props.autoFocus, autoFocus = _a === void 0 ? true : _a, _b = props.enableDateSeparator, enableDateSeparator = _b === void 0 ? false : _b, _c = props.fullWidth, fullWidth = _c === void 0 ? false : _c, PropInput = props.Input, PropMessage = props.Message, virtualized = props.virtualized;
|
|
56
92
|
var _d = useChannelStateContext('Thread'), thread = _d.thread, threadHasMore = _d.threadHasMore, threadLoadingMore = _d.threadLoadingMore, threadMessages = _d.threadMessages;
|
|
57
|
-
var _e = useChannelActionContext('Thread'), closeThread = _e.closeThread, loadMoreThread = _e.loadMoreThread;
|
|
93
|
+
var _e = useChannelActionContext('Thread'), closeThread = _e.closeThread, loadMoreThread = _e.loadMoreThread, sendMessage = _e.sendMessage;
|
|
58
94
|
var customClasses = useChatContext('Thread').customClasses;
|
|
59
95
|
var _f = useComponentContext('Thread'), ContextInput = _f.ThreadInput, ContextMessage = _f.Message, _g = _f.ThreadHeader, ThreadHeader = _g === void 0 ? DefaultThreadHeader : _g, _h = _f.ThreadStart, ThreadStart = _h === void 0 ? DefaultThreadStart : _h, _j = _f.VirtualMessage, VirtualMessage = _j === void 0 ? FixedHeightMessage : _j;
|
|
60
96
|
var messageList = useRef(null);
|
|
@@ -67,15 +103,19 @@ var ThreadInner = function (props) {
|
|
|
67
103
|
loadMoreThread();
|
|
68
104
|
}
|
|
69
105
|
}, []);
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
106
|
+
var threadSubmitHandler = function (message, _, customMessageData) { return __awaiter(void 0, void 0, void 0, function () {
|
|
107
|
+
return __generator(this, function (_a) {
|
|
108
|
+
switch (_a.label) {
|
|
109
|
+
case 0: return [4 /*yield*/, sendMessage(message, customMessageData)];
|
|
110
|
+
case 1:
|
|
111
|
+
_a.sent();
|
|
112
|
+
if (messageList.current) {
|
|
113
|
+
messageList.current.scrollTop = messageList.current.scrollHeight;
|
|
114
|
+
}
|
|
115
|
+
return [2 /*return*/];
|
|
76
116
|
}
|
|
77
|
-
}
|
|
78
|
-
}
|
|
117
|
+
});
|
|
118
|
+
}); };
|
|
79
119
|
if (!thread)
|
|
80
120
|
return null;
|
|
81
121
|
var threadClass = (customClasses === null || customClasses === void 0 ? void 0 : customClasses.thread) || 'str-chat__thread';
|
|
@@ -85,5 +125,5 @@ var ThreadInner = function (props) {
|
|
|
85
125
|
React.createElement(Message, __assign({ initialMessage: true, message: thread, Message: ThreadMessage || FallbackMessage, threadList: true }, additionalParentMessageProps)),
|
|
86
126
|
React.createElement(ThreadStart, null),
|
|
87
127
|
React.createElement(ThreadMessageList, __assign({ disableDateSeparator: !enableDateSeparator, hasMore: threadHasMore, loadingMore: threadLoadingMore, loadMore: loadMoreThread, Message: ThreadMessage || FallbackMessage, messages: threadMessages || [], threadList: true }, (virtualized ? additionalVirtualizedMessageListProps : additionalMessageListProps)))),
|
|
88
|
-
React.createElement(MessageInput, __assign({ focus: autoFocus, Input: ThreadInput, parent: thread, publishTypingEvent: false }, additionalMessageInputProps))));
|
|
128
|
+
React.createElement(MessageInput, __assign({ focus: autoFocus, Input: ThreadInput, overrideSubmitHandler: threadSubmitHandler, parent: thread, publishTypingEvent: false }, additionalMessageInputProps))));
|
|
89
129
|
};
|