stream-chat-react 9.4.1 → 9.5.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 +65 -93
- package/dist/browser.full-bundle.js.map +1 -1
- package/dist/browser.full-bundle.min.js +1 -1
- package/dist/browser.full-bundle.min.js.map +1 -1
- package/dist/components/AutoCompleteTextarea/Textarea.d.ts +7 -0
- package/dist/components/AutoCompleteTextarea/Textarea.d.ts.map +1 -1
- package/dist/components/AutoCompleteTextarea/Textarea.js +10 -1
- package/dist/components/Channel/Channel.d.ts.map +1 -1
- package/dist/components/Channel/Channel.js +26 -24
- package/dist/components/MessageInput/hooks/useAttachments.d.ts.map +1 -1
- package/dist/components/MessageInput/hooks/useAttachments.js +8 -1
- package/dist/components/MessageInput/hooks/useImageUploads.d.ts.map +1 -1
- package/dist/components/MessageInput/hooks/useImageUploads.js +17 -36
- package/dist/context/ChannelActionContext.d.ts +1 -1
- package/dist/context/ChannelActionContext.d.ts.map +1 -1
- package/dist/context/DefaultEmoji.d.ts +3 -0
- package/dist/context/DefaultEmoji.d.ts.map +1 -0
- package/dist/context/DefaultEmoji.js +3 -0
- package/dist/context/DefaultEmojiPicker.d.ts +3 -0
- package/dist/context/DefaultEmojiPicker.d.ts.map +1 -0
- package/dist/context/DefaultEmojiPicker.js +3 -0
- package/dist/context/EmojiContext.d.ts.map +1 -1
- package/dist/context/EmojiContext.js +2 -58
- package/dist/css/index.css +1 -1
- package/dist/index.cjs.js +74 -86
- package/dist/index.cjs.js.map +1 -1
- package/dist/scss/Gallery.scss +6 -0
- package/dist/scss/Message.scss +67 -34
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +3 -3
|
@@ -35929,7 +35929,7 @@ var StreamChatReact = (function (exports, React, streamChat, reactDom) {
|
|
|
35929
35929
|
});
|
|
35930
35930
|
|
|
35931
35931
|
_defineProperty(_assertThisInitialized(_this), "_defaultShouldSubmit", function (event) {
|
|
35932
|
-
return event.key === 'Enter' && !event.shiftKey;
|
|
35932
|
+
return event.key === 'Enter' && !event.shiftKey && !event.nativeEvent.isComposing;
|
|
35933
35933
|
});
|
|
35934
35934
|
|
|
35935
35935
|
_defineProperty(_assertThisInitialized(_this), "_handleKeyDown", function (event) {
|
|
@@ -39813,32 +39813,12 @@ var StreamChatReact = (function (exports, React, streamChat, reactDom) {
|
|
|
39813
39813
|
|
|
39814
39814
|
var DefaultEmojiIndex = unwrapExports(nimbleEmojiIndex);
|
|
39815
39815
|
|
|
39816
|
-
window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var DefaultEmoji = React__default['default'].lazy(function () { return
|
|
39817
|
-
|
|
39818
|
-
return __generator$1(this, function (_a) {
|
|
39819
|
-
switch (_a.label) {
|
|
39820
|
-
case 0: return [4 /*yield*/, Promise.resolve().then(function () { return nimbleEmoji$2; })];
|
|
39821
|
-
case 1:
|
|
39822
|
-
emoji = _a.sent();
|
|
39823
|
-
return [2 /*return*/, { default: emoji.default }];
|
|
39824
|
-
}
|
|
39825
|
-
});
|
|
39826
|
-
}); });
|
|
39827
|
-
var DefaultEmojiPicker = React__default['default'].lazy(function () { return __awaiter$1(void 0, void 0, void 0, function () {
|
|
39828
|
-
var emojiPicker;
|
|
39829
|
-
return __generator$1(this, function (_a) {
|
|
39830
|
-
switch (_a.label) {
|
|
39831
|
-
case 0: return [4 /*yield*/, Promise.resolve().then(function () { return nimblePicker$2; })];
|
|
39832
|
-
case 1:
|
|
39833
|
-
emojiPicker = _a.sent();
|
|
39834
|
-
return [2 /*return*/, { default: emojiPicker.default }];
|
|
39835
|
-
}
|
|
39836
|
-
});
|
|
39837
|
-
}); });
|
|
39816
|
+
window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var DefaultEmoji$1 = React__default['default'].lazy(function () { return Promise.resolve().then(function () { return DefaultEmoji; }); });
|
|
39817
|
+
var DefaultEmojiPicker$1 = React__default['default'].lazy(function () { return Promise.resolve().then(function () { return DefaultEmojiPicker; }); });
|
|
39838
39818
|
var EmojiContext = React__default['default'].createContext(undefined);
|
|
39839
39819
|
var EmojiProvider = function (_a) {
|
|
39840
39820
|
var children = _a.children, value = _a.value;
|
|
39841
|
-
var _b = value.Emoji, Emoji = _b === void 0 ? DefaultEmoji : _b, emojiConfig = value.emojiConfig, _c = value.EmojiIndex, EmojiIndex = _c === void 0 ? DefaultEmojiIndex : _c, _d = value.EmojiPicker, EmojiPicker = _d === void 0 ? DefaultEmojiPicker : _d;
|
|
39821
|
+
var _b = value.Emoji, Emoji = _b === void 0 ? DefaultEmoji$1 : _b, emojiConfig = value.emojiConfig, _c = value.EmojiIndex, EmojiIndex = _c === void 0 ? DefaultEmojiIndex : _c, _d = value.EmojiPicker, EmojiPicker = _d === void 0 ? DefaultEmojiPicker$1 : _d;
|
|
39842
39822
|
var emojiContextValue = {
|
|
39843
39823
|
Emoji: Emoji,
|
|
39844
39824
|
emojiConfig: emojiConfig,
|
|
@@ -40553,8 +40533,9 @@ var StreamChatReact = (function (exports, React, streamChat, reactDom) {
|
|
|
40553
40533
|
}, []);
|
|
40554
40534
|
var uploadImage = React.useCallback(function (id) { return __awaiter$1(void 0, void 0, void 0, function () {
|
|
40555
40535
|
var img, file, canUpload, response, error_1, errorMessage, alreadyRemoved;
|
|
40556
|
-
|
|
40557
|
-
|
|
40536
|
+
var _a;
|
|
40537
|
+
return __generator$1(this, function (_b) {
|
|
40538
|
+
switch (_b.label) {
|
|
40558
40539
|
case 0:
|
|
40559
40540
|
img = imageUploads[id];
|
|
40560
40541
|
if (!img)
|
|
@@ -40571,24 +40552,24 @@ var StreamChatReact = (function (exports, React, streamChat, reactDom) {
|
|
|
40571
40552
|
uploadType: 'image',
|
|
40572
40553
|
})];
|
|
40573
40554
|
case 1:
|
|
40574
|
-
canUpload =
|
|
40555
|
+
canUpload = _b.sent();
|
|
40575
40556
|
if (!canUpload)
|
|
40576
40557
|
return [2 /*return*/, removeImage(id)];
|
|
40577
|
-
|
|
40558
|
+
_b.label = 2;
|
|
40578
40559
|
case 2:
|
|
40579
|
-
|
|
40560
|
+
_b.trys.push([2, 7, , 8]);
|
|
40580
40561
|
if (!doImageUploadRequest) return [3 /*break*/, 4];
|
|
40581
40562
|
return [4 /*yield*/, doImageUploadRequest(file, channel)];
|
|
40582
40563
|
case 3:
|
|
40583
|
-
response =
|
|
40564
|
+
response = _b.sent();
|
|
40584
40565
|
return [3 /*break*/, 6];
|
|
40585
40566
|
case 4: return [4 /*yield*/, channel.sendImage(file)];
|
|
40586
40567
|
case 5:
|
|
40587
|
-
response =
|
|
40588
|
-
|
|
40568
|
+
response = _b.sent();
|
|
40569
|
+
_b.label = 6;
|
|
40589
40570
|
case 6: return [3 /*break*/, 8];
|
|
40590
40571
|
case 7:
|
|
40591
|
-
error_1 =
|
|
40572
|
+
error_1 = _b.sent();
|
|
40592
40573
|
errorMessage = typeof error_1.message === 'string'
|
|
40593
40574
|
? error_1.message
|
|
40594
40575
|
: t('Error uploading image');
|
|
@@ -40612,8 +40593,11 @@ var StreamChatReact = (function (exports, React, streamChat, reactDom) {
|
|
|
40612
40593
|
removeImage(id);
|
|
40613
40594
|
return [2 /*return*/];
|
|
40614
40595
|
}
|
|
40596
|
+
if (img.previewUri)
|
|
40597
|
+
(_a = URL.revokeObjectURL) === null || _a === void 0 ? void 0 : _a.call(URL, img.previewUri);
|
|
40615
40598
|
dispatch({
|
|
40616
40599
|
id: id,
|
|
40600
|
+
previewUri: undefined,
|
|
40617
40601
|
state: 'finished',
|
|
40618
40602
|
type: 'setImageUpload',
|
|
40619
40603
|
url: response.file,
|
|
@@ -40623,33 +40607,10 @@ var StreamChatReact = (function (exports, React, streamChat, reactDom) {
|
|
|
40623
40607
|
});
|
|
40624
40608
|
}); }, [imageUploads, channel, doImageUploadRequest, errorHandler, removeImage]);
|
|
40625
40609
|
React.useEffect(function () {
|
|
40626
|
-
|
|
40627
|
-
|
|
40628
|
-
|
|
40629
|
-
|
|
40630
|
-
if (upload) {
|
|
40631
|
-
var file = upload.file, id_1 = upload.id;
|
|
40632
|
-
// TODO: Possibly use URL.createObjectURL instead. However, then we need
|
|
40633
|
-
// to release the previews when not used anymore though.
|
|
40634
|
-
var reader_1 = new FileReader();
|
|
40635
|
-
reader_1.onload = function (event) {
|
|
40636
|
-
var _a;
|
|
40637
|
-
if (typeof ((_a = event.target) === null || _a === void 0 ? void 0 : _a.result) !== 'string')
|
|
40638
|
-
return;
|
|
40639
|
-
dispatch({
|
|
40640
|
-
id: id_1,
|
|
40641
|
-
previewUri: event.target.result,
|
|
40642
|
-
type: 'setImageUpload',
|
|
40643
|
-
});
|
|
40644
|
-
};
|
|
40645
|
-
reader_1.readAsDataURL(file);
|
|
40646
|
-
uploadImage(id_1);
|
|
40647
|
-
return function () {
|
|
40648
|
-
reader_1.onload = null;
|
|
40649
|
-
};
|
|
40650
|
-
}
|
|
40651
|
-
}
|
|
40652
|
-
return;
|
|
40610
|
+
var upload = Object.values(imageUploads).find(function (imageUpload) { return imageUpload.state === 'uploading' && imageUpload.file; });
|
|
40611
|
+
if (!upload)
|
|
40612
|
+
return;
|
|
40613
|
+
uploadImage(upload.id);
|
|
40653
40614
|
}, [imageUploads, uploadImage]);
|
|
40654
40615
|
return {
|
|
40655
40616
|
removeImage: removeImage,
|
|
@@ -40773,11 +40734,18 @@ var StreamChatReact = (function (exports, React, streamChat, reactDom) {
|
|
|
40773
40734
|
Array.from(files)
|
|
40774
40735
|
.slice(0, maxFilesLeft)
|
|
40775
40736
|
.forEach(function (file) {
|
|
40737
|
+
var _a;
|
|
40776
40738
|
var id = nanoid();
|
|
40777
40739
|
if (file.type.startsWith('image/') &&
|
|
40778
40740
|
!file.type.endsWith('.photoshop') // photoshop files begin with 'image/'
|
|
40779
40741
|
) {
|
|
40780
|
-
dispatch({
|
|
40742
|
+
dispatch({
|
|
40743
|
+
file: file,
|
|
40744
|
+
id: id,
|
|
40745
|
+
previewUri: (_a = URL.createObjectURL) === null || _a === void 0 ? void 0 : _a.call(URL, file),
|
|
40746
|
+
state: 'uploading',
|
|
40747
|
+
type: 'setImageUpload',
|
|
40748
|
+
});
|
|
40781
40749
|
}
|
|
40782
40750
|
else if (file instanceof File && !noFiles) {
|
|
40783
40751
|
dispatch({ file: file, id: id, state: 'uploading', type: 'setFileUpload' });
|
|
@@ -41887,8 +41855,7 @@ var StreamChatReact = (function (exports, React, streamChat, reactDom) {
|
|
|
41887
41855
|
notificationTimeouts.push(timeout);
|
|
41888
41856
|
}; };
|
|
41889
41857
|
|
|
41890
|
-
window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=streamChat.logChatPromiseExecution;window.StreamChat.Channel=Channel$1;window.ICAL=window.ICAL||{};var
|
|
41891
|
-
var UnMemoizedChannel = function (props) {
|
|
41858
|
+
window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=streamChat.logChatPromiseExecution;window.StreamChat.Channel=Channel$1;window.ICAL=window.ICAL||{};var UnMemoizedChannel = function (props) {
|
|
41892
41859
|
var propsChannel = props.channel, _a = props.EmptyPlaceholder, EmptyPlaceholder = _a === void 0 ? null : _a, LoadingErrorIndicator = props.LoadingErrorIndicator, LoadingIndicator = props.LoadingIndicator;
|
|
41893
41860
|
var _b = useChatContext('Channel'), contextChannel = _b.channel, channelsQueryState = _b.channelsQueryState;
|
|
41894
41861
|
var channel = propsChannel || contextChannel;
|
|
@@ -42157,30 +42124,33 @@ var StreamChatReact = (function (exports, React, streamChat, reactDom) {
|
|
|
42157
42124
|
});
|
|
42158
42125
|
});
|
|
42159
42126
|
};
|
|
42160
|
-
var jumpToMessage = function (messageId
|
|
42161
|
-
|
|
42162
|
-
return
|
|
42163
|
-
|
|
42164
|
-
|
|
42165
|
-
|
|
42166
|
-
|
|
42167
|
-
|
|
42168
|
-
|
|
42169
|
-
|
|
42170
|
-
|
|
42171
|
-
|
|
42172
|
-
|
|
42173
|
-
|
|
42174
|
-
|
|
42175
|
-
|
|
42176
|
-
|
|
42177
|
-
|
|
42178
|
-
|
|
42179
|
-
|
|
42180
|
-
|
|
42181
|
-
|
|
42127
|
+
var jumpToMessage = function (messageId, messageLimit) {
|
|
42128
|
+
if (messageLimit === void 0) { messageLimit = 100; }
|
|
42129
|
+
return __awaiter$1(void 0, void 0, void 0, function () {
|
|
42130
|
+
var indexOfMessage, hasMoreMessages;
|
|
42131
|
+
return __generator$1(this, function (_a) {
|
|
42132
|
+
switch (_a.label) {
|
|
42133
|
+
case 0:
|
|
42134
|
+
dispatch({ loadingMore: true, type: 'setLoadingMore' });
|
|
42135
|
+
return [4 /*yield*/, channel.state.loadMessageIntoState(messageId, undefined, messageLimit)];
|
|
42136
|
+
case 1:
|
|
42137
|
+
_a.sent();
|
|
42138
|
+
indexOfMessage = channel.state.messages.findIndex(function (message) { return message.id === messageId; });
|
|
42139
|
+
hasMoreMessages = indexOfMessage >= Math.floor(messageLimit / 2);
|
|
42140
|
+
loadMoreFinished(hasMoreMessages, channel.state.messages);
|
|
42141
|
+
dispatch({
|
|
42142
|
+
hasMoreNewer: channel.state.messages !== channel.state.latestMessages,
|
|
42143
|
+
highlightedMessageId: messageId,
|
|
42144
|
+
type: 'jumpToMessageFinished',
|
|
42145
|
+
});
|
|
42146
|
+
setTimeout(function () {
|
|
42147
|
+
dispatch({ type: 'clearHighlightedMessage' });
|
|
42148
|
+
}, 500);
|
|
42149
|
+
return [2 /*return*/];
|
|
42150
|
+
}
|
|
42151
|
+
});
|
|
42182
42152
|
});
|
|
42183
|
-
}
|
|
42153
|
+
};
|
|
42184
42154
|
var jumpToLatestMessage = function () { return __awaiter$1(void 0, void 0, void 0, function () {
|
|
42185
42155
|
var hasMoreOlder;
|
|
42186
42156
|
return __generator$1(this, function (_a) {
|
|
@@ -43408,7 +43378,7 @@ var StreamChatReact = (function (exports, React, streamChat, reactDom) {
|
|
|
43408
43378
|
|
|
43409
43379
|
window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
|
|
43410
43380
|
|
|
43411
|
-
window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var version = '9.
|
|
43381
|
+
window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var version = '9.5.0';
|
|
43412
43382
|
|
|
43413
43383
|
window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var useChat = function (_a) {
|
|
43414
43384
|
var _b, _c;
|
|
@@ -47353,10 +47323,11 @@ var StreamChatReact = (function (exports, React, streamChat, reactDom) {
|
|
|
47353
47323
|
|
|
47354
47324
|
var nimbleEmoji$1 = unwrapExports(nimbleEmoji);
|
|
47355
47325
|
|
|
47356
|
-
|
|
47326
|
+
window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};// @ts-expect-error
|
|
47327
|
+
|
|
47328
|
+
var DefaultEmoji = /*#__PURE__*/Object.freeze({
|
|
47357
47329
|
__proto__: null,
|
|
47358
|
-
'default': nimbleEmoji$1
|
|
47359
|
-
__moduleExports: nimbleEmoji
|
|
47330
|
+
'default': nimbleEmoji$1
|
|
47360
47331
|
});
|
|
47361
47332
|
|
|
47362
47333
|
window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
|
|
@@ -49538,10 +49509,11 @@ var StreamChatReact = (function (exports, React, streamChat, reactDom) {
|
|
|
49538
49509
|
|
|
49539
49510
|
var nimblePicker$1 = unwrapExports(nimblePicker);
|
|
49540
49511
|
|
|
49541
|
-
|
|
49512
|
+
window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};// @ts-expect-error
|
|
49513
|
+
|
|
49514
|
+
var DefaultEmojiPicker = /*#__PURE__*/Object.freeze({
|
|
49542
49515
|
__proto__: null,
|
|
49543
|
-
'default': nimblePicker$1
|
|
49544
|
-
__moduleExports: nimblePicker
|
|
49516
|
+
'default': nimblePicker$1
|
|
49545
49517
|
});
|
|
49546
49518
|
|
|
49547
49519
|
window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
|