stream-chat-react 10.1.0 → 10.1.2
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 +170 -164
- 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/ChannelPreview/ChannelPreview.d.ts +0 -2
- package/dist/components/ChannelPreview/ChannelPreview.d.ts.map +1 -1
- package/dist/components/ChannelPreview/hooks/index.d.ts +2 -0
- package/dist/components/ChannelPreview/hooks/index.d.ts.map +1 -0
- package/dist/components/ChannelPreview/hooks/index.js +1 -0
- package/dist/components/ChannelPreview/index.d.ts +1 -0
- package/dist/components/ChannelPreview/index.d.ts.map +1 -1
- package/dist/components/ChannelPreview/index.js +1 -0
- package/dist/components/LoadMore/LoadMorePaginator.d.ts +4 -1
- package/dist/components/LoadMore/LoadMorePaginator.d.ts.map +1 -1
- package/dist/components/Message/hooks/usePinHandler.d.ts.map +1 -1
- package/dist/components/Message/hooks/usePinHandler.js +3 -5
- package/dist/components/MessageInput/index.d.ts +2 -1
- package/dist/components/MessageInput/index.d.ts.map +1 -1
- package/dist/components/MessageInput/index.js +2 -1
- package/dist/components/MessageList/hooks/usePrependMessagesCount.d.ts.map +1 -1
- package/dist/components/MessageList/hooks/usePrependMessagesCount.js +7 -5
- package/dist/components/Tooltip/Tooltip.d.ts +1 -1
- package/dist/components/Tooltip/Tooltip.d.ts.map +1 -1
- package/dist/components/TypingIndicator/TypingIndicator.d.ts +1 -1
- package/dist/components/TypingIndicator/TypingIndicator.d.ts.map +1 -1
- package/dist/components/index.d.ts +2 -2
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +2 -2
- package/dist/css/index.css +1 -1
- package/dist/css/index.css.map +1 -1
- package/dist/index.cjs.js +166 -164
- package/dist/index.cjs.js.map +1 -1
- package/dist/scss/Attachment.scss +5 -3
- package/dist/scss/Message.scss +16 -30
- package/dist/scss/MessageCommerce.scss +1 -1
- package/dist/scss/Thread.scss +39 -2
- package/dist/scss/VirtualMessage.scss +2 -6
- package/dist/stories/edit-message.stories.d.ts.map +1 -1
- package/dist/stories/edit-message.stories.js +0 -4
- package/dist/stories/pin-message.stories.d.ts +2 -0
- package/dist/stories/pin-message.stories.d.ts.map +1 -0
- package/dist/stories/pin-message.stories.js +98 -0
- package/dist/stories/utils.d.ts +1 -1
- package/dist/stories/utils.d.ts.map +1 -1
- package/dist/stories/utils.js +30 -19
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +2 -2
- package/dist/components/MessageList/Center.d.ts +0 -3
- package/dist/components/MessageList/Center.d.ts.map +0 -1
- package/dist/components/MessageList/Center.js +0 -6
package/dist/index.cjs.js
CHANGED
|
@@ -6832,6 +6832,159 @@ var CUSTOM_MESSAGE_TYPE = {
|
|
|
6832
6832
|
intro: 'channel.intro',
|
|
6833
6833
|
};
|
|
6834
6834
|
|
|
6835
|
+
var useFileState = function (file) {
|
|
6836
|
+
return React.useMemo(function () { return ({
|
|
6837
|
+
failed: file.state === 'failed',
|
|
6838
|
+
finished: file.state === 'finished',
|
|
6839
|
+
uploading: file.state === 'uploading',
|
|
6840
|
+
}); }, [file.state]);
|
|
6841
|
+
};
|
|
6842
|
+
|
|
6843
|
+
var EmojiIconLarge = function () {
|
|
6844
|
+
var t = useTranslationContext('EmojiIconLarge').t;
|
|
6845
|
+
return (React__default["default"].createElement("svg", { height: '28', width: '28', xmlns: 'http://www.w3.org/2000/svg' },
|
|
6846
|
+
React__default["default"].createElement("title", null, t('Open emoji picker')),
|
|
6847
|
+
React__default["default"].createElement("g", { clipRule: 'evenodd', fillRule: 'evenodd' },
|
|
6848
|
+
React__default["default"].createElement("path", { d: 'M14 4.4C8.6 4.4 4.4 8.6 4.4 14c0 5.4 4.2 9.6 9.6 9.6c5.4 0 9.6-4.2 9.6-9.6c0-5.4-4.2-9.6-9.6-9.6zM2 14c0-6.6 5.4-12 12-12s12 5.4 12 12s-5.4 12-12 12s-12-5.4-12-12zM12.8 11c0 1-.8 1.8-1.8 1.8s-1.8-.8-1.8-1.8s.8-1.8 1.8-1.8s1.8.8 1.8 1.8zM18.8 11c0 1-.8 1.8-1.8 1.8s-1.8-.8-1.8-1.8s.8-1.8 1.8-1.8s1.8.8 1.8 1.8zM8.6 15.4c.6-.4 1.2-.2 1.6.2c.6.8 1.6 1.8 3 2c1.2.4 2.8.2 4.8-2c.4-.4 1.2-.6 1.6 0c.4.4.6 1.2 0 1.6c-2.2 2.6-4.8 3.4-7 3c-2-.4-3.6-1.8-4.4-3c-.4-.6-.2-1.2.4-1.8z' }))));
|
|
6849
|
+
};
|
|
6850
|
+
var EmojiIconSmall = function () {
|
|
6851
|
+
var t = useTranslationContext('EmojiIconSmall').t;
|
|
6852
|
+
return (React__default["default"].createElement("svg", { height: '14', width: '14', xmlns: 'http://www.w3.org/2000/svg' },
|
|
6853
|
+
React__default["default"].createElement("title", null, t('Open emoji picker')),
|
|
6854
|
+
React__default["default"].createElement("g", { clipRule: 'evenodd', fillRule: 'evenodd' },
|
|
6855
|
+
React__default["default"].createElement("path", { d: 'M6.7 1.42C3.73 1.42 1.42 3.73 1.42 6.7c0 2.97 2.31 5.28 5.28 5.28c2.97 0 5.28-2.31 5.28-5.28c0-2.97-2.31-5.28-5.28-5.28zM.1 6.7c0-3.63 2.97-6.6 6.6-6.6s6.6 2.97 6.6 6.6s-2.97 6.6-6.6 6.6s-6.6-2.97-6.6-6.6zM6.04 5.05c0 .55-.44.99-.99.99s-.99-.44-.99-.99s.44-.99.99-.99s.99.44.99.99zM9.34 5.05c0 .55-.44.99-.99.99s-.99-.44-.99-.99s.44-.99.99-.99s.99.44.99.99zM3.73 7.47c.33-.22.66-.11.88.11c.33.44.88.99 1.65 1.1c.66.22 1.54.11 2.64-1.1c.22-.22.66-.33.88 0c.22.22.33.66 0 .88c-1.21 1.43-2.64 1.87-3.85 1.65c-1.1-.22-1.98-.99-2.42-1.65c-.22-.33-.11-.66.22-.99z' }))));
|
|
6856
|
+
};
|
|
6857
|
+
// ThemingV2 icon
|
|
6858
|
+
var EmojiPickerIcon = function () { return (React__default["default"].createElement("svg", { preserveAspectRatio: 'xMinYMin', viewBox: '0 0 28 28', width: '100%', xmlns: 'http://www.w3.org/2000/svg' },
|
|
6859
|
+
React__default["default"].createElement("g", { clipRule: 'evenodd', fillRule: 'evenodd' },
|
|
6860
|
+
React__default["default"].createElement("path", { d: 'M14 4.4C8.6 4.4 4.4 8.6 4.4 14c0 5.4 4.2 9.6 9.6 9.6c5.4 0 9.6-4.2 9.6-9.6c0-5.4-4.2-9.6-9.6-9.6zM2 14c0-6.6 5.4-12 12-12s12 5.4 12 12s-5.4 12-12 12s-12-5.4-12-12zM12.8 11c0 1-.8 1.8-1.8 1.8s-1.8-.8-1.8-1.8s.8-1.8 1.8-1.8s1.8.8 1.8 1.8zM18.8 11c0 1-.8 1.8-1.8 1.8s-1.8-.8-1.8-1.8s.8-1.8 1.8-1.8s1.8.8 1.8 1.8zM8.6 15.4c.6-.4 1.2-.2 1.6.2c.6.8 1.6 1.8 3 2c1.2.4 2.8.2 4.8-2c.4-.4 1.2-.6 1.6 0c.4.4.6 1.2 0 1.6c-2.2 2.6-4.8 3.4-7 3c-2-.4-3.6-1.8-4.4-3c-.4-.6-.2-1.2.4-1.8z' })))); };
|
|
6861
|
+
var FileUploadIcon = function () {
|
|
6862
|
+
var t = useTranslationContext('FileUploadIcon').t;
|
|
6863
|
+
return (React__default["default"].createElement("svg", { height: '14', width: '14', xmlns: 'http://www.w3.org/2000/svg' },
|
|
6864
|
+
React__default["default"].createElement("title", null, t('Attach files')),
|
|
6865
|
+
React__default["default"].createElement("path", { d: 'M7 .5c3.59 0 6.5 2.91 6.5 6.5s-2.91 6.5-6.5 6.5S.5 10.59.5 7 3.41.5 7 .5zm0 12c3.031 0 5.5-2.469 5.5-5.5S10.031 1.5 7 1.5A5.506 5.506 0 0 0 1.5 7c0 3.034 2.469 5.5 5.5 5.5zM7.506 3v3.494H11v1.05H7.506V11h-1.05V7.544H3v-1.05h3.456V3h1.05z', fillRule: 'nonzero' })));
|
|
6866
|
+
};
|
|
6867
|
+
var FileUploadIconFlat = function () {
|
|
6868
|
+
var t = useTranslationContext('FileUploadIconFlat').t;
|
|
6869
|
+
return (React__default["default"].createElement("svg", { height: '14', width: '14', xmlns: 'http://www.w3.org/2000/svg' },
|
|
6870
|
+
React__default["default"].createElement("title", null, t('Attach files')),
|
|
6871
|
+
React__default["default"].createElement("path", { d: 'M1.667.333h10.666c.737 0 1.334.597 1.334 1.334v10.666c0 .737-.597 1.334-1.334 1.334H1.667a1.333 1.333 0 0 1-1.334-1.334V1.667C.333.93.93.333 1.667.333zm2 1.334a1.667 1.667 0 1 0 0 3.333 1.667 1.667 0 0 0 0-3.333zm-2 9.333v1.333h10.666v-4l-2-2-4 4-2-2L1.667 11z', fillRule: 'nonzero' })));
|
|
6872
|
+
};
|
|
6873
|
+
var LoadingIndicatorIcon = function (_a) {
|
|
6874
|
+
var _b = _a.size, size = _b === void 0 ? 20 : _b;
|
|
6875
|
+
var id = React.useMemo(function () { return nanoid.nanoid(); }, []);
|
|
6876
|
+
return (React__default["default"].createElement("div", { className: 'str-chat__loading-indicator' },
|
|
6877
|
+
React__default["default"].createElement("svg", { "data-testid": 'loading-indicator', height: size, viewBox: '0 0 30 30', width: size, xmlns: 'http://www.w3.org/2000/svg' },
|
|
6878
|
+
React__default["default"].createElement("defs", null,
|
|
6879
|
+
React__default["default"].createElement("linearGradient", { id: "".concat(id, "-linear-gradient"), x1: '50%', x2: '50%', y1: '0%', y2: '100%' },
|
|
6880
|
+
React__default["default"].createElement("stop", { offset: '0%', stopColor: '#FFF', stopOpacity: '0' }),
|
|
6881
|
+
React__default["default"].createElement("stop", { "data-testid": 'stop-color', offset: '100%', stopOpacity: '1' }))),
|
|
6882
|
+
React__default["default"].createElement("path", { d: 'M2.518 23.321l1.664-1.11A12.988 12.988 0 0 0 15 28c7.18 0 13-5.82 13-13S22.18 2 15 2V0c8.284 0 15 6.716 15 15 0 8.284-6.716 15-15 15-5.206 0-9.792-2.652-12.482-6.679z', fill: "url(#".concat(id, "-linear-gradient)"), fillRule: 'evenodd' }))));
|
|
6883
|
+
};
|
|
6884
|
+
// ThemingV2 icon
|
|
6885
|
+
var UploadIcon = function () { return (React__default["default"].createElement("svg", { "data-testid": 'attach', fill: 'none', height: '24', viewBox: '0 0 24 24', width: '24', xmlns: 'http://www.w3.org/2000/svg' },
|
|
6886
|
+
React__default["default"].createElement("g", { clipPath: 'url(#clip0_10878_5)' },
|
|
6887
|
+
React__default["default"].createElement("path", { d: 'M12.9997 6.99993L10.9997 6.99993L10.9997 10.9999L6.99972 10.9999L6.99972 12.9999L10.9997 12.9999L10.9997 16.9999L12.9997 16.9999L12.9997 12.9999L16.9997 12.9999L16.9997 10.9999L12.9997 10.9999L12.9997 6.99993ZM11.9997 1.99992C6.47972 1.99992 1.99972 6.47993 1.99972 11.9999C1.99972 17.5199 6.47972 21.9999 11.9997 21.9999C17.5197 21.9999 21.9997 17.5199 21.9997 11.9999C21.9997 6.47993 17.5197 1.99992 11.9997 1.99992ZM11.9997 19.9999C7.58972 19.9999 3.99972 16.4099 3.99972 11.9999C3.99972 7.58993 7.58972 3.99993 11.9997 3.99993C16.4097 3.99993 19.9997 7.58993 19.9997 11.9999C19.9997 16.4099 16.4097 19.9999 11.9997 19.9999Z', fill: 'black' })),
|
|
6888
|
+
React__default["default"].createElement("defs", null,
|
|
6889
|
+
React__default["default"].createElement("clipPath", { id: 'clip0_10878_5' },
|
|
6890
|
+
React__default["default"].createElement("rect", { fill: 'white', height: '24', width: '24' }))))); };
|
|
6891
|
+
var CloseIcon$1 = function () { return (React__default["default"].createElement("svg", { "data-testid": 'close-no-outline', fill: 'none', height: '24', viewBox: '0 0 24 24', width: '24', xmlns: 'http://www.w3.org/2000/svg' },
|
|
6892
|
+
React__default["default"].createElement("path", { d: 'M19 6.41L17.59 5L12 10.59L6.41 5L5 6.41L10.59 12L5 17.59L6.41 19L12 13.41L17.59 19L19 17.59L13.41 12L19 6.41Z', fill: 'black' }))); };
|
|
6893
|
+
var RetryIcon = function () { return (React__default["default"].createElement("svg", { "data-testid": 'retry', fill: 'none', height: '24', viewBox: '0 0 24 24', width: '24', xmlns: 'http://www.w3.org/2000/svg' },
|
|
6894
|
+
React__default["default"].createElement("path", { d: 'M17.6449 6.35C16.1949 4.9 14.2049 4 11.9949 4C7.57488 4 4.00488 7.58 4.00488 12C4.00488 16.42 7.57488 20 11.9949 20C15.7249 20 18.8349 17.45 19.7249 14H17.6449C16.8249 16.33 14.6049 18 11.9949 18C8.68488 18 5.99488 15.31 5.99488 12C5.99488 8.69 8.68488 6 11.9949 6C13.6549 6 15.1349 6.69 16.2149 7.78L12.9949 11H19.9949V4L17.6449 6.35Z', fill: 'black' }))); };
|
|
6895
|
+
var DownloadIcon = function () { return (React__default["default"].createElement("svg", { "data-testid": 'download', fill: 'none', height: '24', viewBox: '0 0 24 24', width: '24', xmlns: 'http://www.w3.org/2000/svg' },
|
|
6896
|
+
React__default["default"].createElement("path", { d: 'M19.35 10.04C18.67 6.59 15.64 4 12 4C9.11 4 6.6 5.64 5.35 8.04C2.34 8.36 0 10.91 0 14C0 17.31 2.69 20 6 20H19C21.76 20 24 17.76 24 15C24 12.36 21.95 10.22 19.35 10.04ZM19 18H6C3.79 18 2 16.21 2 14C2 11.95 3.53 10.24 5.56 10.03L6.63 9.92L7.13 8.97C8.08 7.14 9.94 6 12 6C14.62 6 16.88 7.86 17.39 10.43L17.69 11.93L19.22 12.04C20.78 12.14 22 13.45 22 15C22 16.65 20.65 18 19 18ZM13.45 10H10.55V13H8L12 17L16 13H13.45V10Z', fill: 'black' }))); };
|
|
6897
|
+
var SendIconV1 = function () {
|
|
6898
|
+
var t = useTranslationContext('SendButton').t;
|
|
6899
|
+
return (React__default["default"].createElement("svg", { height: '17', viewBox: '0 0 18 17', width: '18', xmlns: 'http://www.w3.org/2000/svg' },
|
|
6900
|
+
React__default["default"].createElement("title", null, t('Send')),
|
|
6901
|
+
React__default["default"].createElement("path", { d: 'M0 17.015l17.333-8.508L0 0v6.617l12.417 1.89L0 10.397z', fill: '#006cff', fillRule: 'evenodd' })));
|
|
6902
|
+
};
|
|
6903
|
+
var SendIconV2 = function () {
|
|
6904
|
+
var t = useTranslationContext('SendButton').t;
|
|
6905
|
+
return (React__default["default"].createElement("svg", { "data-testid": 'send', fill: 'none', height: '24', viewBox: '0 0 24 24', width: '24', xmlns: 'http://www.w3.org/2000/svg' },
|
|
6906
|
+
React__default["default"].createElement("title", null, t('Send')),
|
|
6907
|
+
React__default["default"].createElement("path", { d: 'M4.00952 22L24 12L4.00952 2L4 9.77778L18.2857 12L4 14.2222L4.00952 22Z', fill: 'black' })));
|
|
6908
|
+
};
|
|
6909
|
+
var SendButton = function (_a) {
|
|
6910
|
+
var sendMessage = _a.sendMessage, rest = __rest(_a, ["sendMessage"]);
|
|
6911
|
+
var themeVersion = useChatContext('SendButton').themeVersion;
|
|
6912
|
+
return (React__default["default"].createElement("button", __assign({ "aria-label": 'Send', className: 'str-chat__send-button', "data-testid": 'send-button', onClick: sendMessage, type: 'button' }, rest), themeVersion === '2' ? React__default["default"].createElement(SendIconV2, null) : React__default["default"].createElement(SendIconV1, null)));
|
|
6913
|
+
};
|
|
6914
|
+
|
|
6915
|
+
var AttachmentPreviewList = function () {
|
|
6916
|
+
var _a = useMessageInputContext('AttachmentPreviewList'), fileOrder = _a.fileOrder, imageOrder = _a.imageOrder;
|
|
6917
|
+
return (React__default["default"].createElement("div", { className: 'str-chat__attachment-preview-list' },
|
|
6918
|
+
React__default["default"].createElement("div", { className: 'str-chat__attachment-list-scroll-container', "data-testid": 'attachment-list-scroll-container' },
|
|
6919
|
+
imageOrder.map(function (id) { return (React__default["default"].createElement(ImagePreviewItem, { id: id, key: id })); }),
|
|
6920
|
+
fileOrder.map(function (id) { return (React__default["default"].createElement(FilePreviewItem, { id: id, key: id })); }))));
|
|
6921
|
+
};
|
|
6922
|
+
var ImagePreviewItem = function (_a) {
|
|
6923
|
+
var _b;
|
|
6924
|
+
var id = _a.id;
|
|
6925
|
+
var _c = useMessageInputContext('ImagePreviewItem'), imageUploads = _c.imageUploads, removeImage = _c.removeImage, uploadImage = _c.uploadImage;
|
|
6926
|
+
var handleRemove = React.useCallback(function (e) {
|
|
6927
|
+
e.stopPropagation();
|
|
6928
|
+
removeImage(id);
|
|
6929
|
+
}, [removeImage, id]);
|
|
6930
|
+
var handleRetry = React.useCallback(function () { return uploadImage(id); }, [uploadImage, id]);
|
|
6931
|
+
var image = imageUploads[id];
|
|
6932
|
+
var state = useFileState(image);
|
|
6933
|
+
// do not display scraped attachments
|
|
6934
|
+
if (!image || image.og_scrape_url)
|
|
6935
|
+
return null;
|
|
6936
|
+
return (React__default["default"].createElement("div", { className: 'str-chat__attachment-preview-image', "data-testid": 'attachment-preview-image' },
|
|
6937
|
+
React__default["default"].createElement("button", { className: 'str-chat__attachment-preview-delete', "data-testid": 'image-preview-item-delete-button', disabled: state.uploading, onClick: handleRemove },
|
|
6938
|
+
React__default["default"].createElement(CloseIcon$1, null)),
|
|
6939
|
+
state.failed && (React__default["default"].createElement("button", { className: 'str-chat__attachment-preview-error str-chat__attachment-preview-error-image', "data-testid": 'image-preview-item-retry-button', onClick: handleRetry },
|
|
6940
|
+
React__default["default"].createElement(RetryIcon, null))),
|
|
6941
|
+
state.uploading && (React__default["default"].createElement("div", { className: 'str-chat__attachment-preview-image-loading' },
|
|
6942
|
+
React__default["default"].createElement(LoadingIndicatorIcon, { size: 17 }))),
|
|
6943
|
+
(image.previewUri || image.url) && (React__default["default"].createElement("img", { alt: image.file.name, className: 'str-chat__attachment-preview-thumbnail', src: (_b = image.previewUri) !== null && _b !== void 0 ? _b : image.url }))));
|
|
6944
|
+
};
|
|
6945
|
+
var FilePreviewItem = function (_a) {
|
|
6946
|
+
var id = _a.id;
|
|
6947
|
+
var _b = useMessageInputContext('FilePreviewItem'), fileUploads = _b.fileUploads, removeFile = _b.removeFile, uploadFile = _b.uploadFile;
|
|
6948
|
+
var handleRemove = React.useCallback(function (e) {
|
|
6949
|
+
e.stopPropagation();
|
|
6950
|
+
removeFile(id);
|
|
6951
|
+
}, [removeFile, id]);
|
|
6952
|
+
var handleRetry = React.useCallback(function () { return uploadFile(id); }, [uploadFile, id]);
|
|
6953
|
+
var file = fileUploads[id];
|
|
6954
|
+
var state = useFileState(file);
|
|
6955
|
+
if (!file)
|
|
6956
|
+
return null;
|
|
6957
|
+
return (React__default["default"].createElement("div", { className: 'str-chat__attachment-preview-file', "data-testid": 'attachment-preview-file' },
|
|
6958
|
+
React__default["default"].createElement("div", { className: 'str-chat__attachment-preview-file-icon' },
|
|
6959
|
+
React__default["default"].createElement(reactFileUtils.FileIcon, { filename: file.file.name, mimeType: file.file.type, version: '2' })),
|
|
6960
|
+
React__default["default"].createElement("button", { className: 'str-chat__attachment-preview-delete', "data-testid": 'file-preview-item-delete-button', disabled: state.uploading, onClick: handleRemove },
|
|
6961
|
+
React__default["default"].createElement(CloseIcon$1, null)),
|
|
6962
|
+
state.failed && (React__default["default"].createElement("button", { className: 'str-chat__attachment-preview-error str-chat__attachment-preview-error-file', "data-testid": 'file-preview-item-retry-button', onClick: handleRetry },
|
|
6963
|
+
React__default["default"].createElement(RetryIcon, null))),
|
|
6964
|
+
React__default["default"].createElement("div", { className: 'str-chat__attachment-preview-file-end' },
|
|
6965
|
+
React__default["default"].createElement("div", { className: 'str-chat__attachment-preview-file-name' }, file.file.name),
|
|
6966
|
+
state.finished && (React__default["default"].createElement("a", { className: 'str-chat__attachment-preview-file-download', download: true, href: file.url, rel: 'noreferrer', target: '_blank' },
|
|
6967
|
+
React__default["default"].createElement(DownloadIcon, null))),
|
|
6968
|
+
state.uploading && React__default["default"].createElement(LoadingIndicatorIcon, { size: 17 }))));
|
|
6969
|
+
};
|
|
6970
|
+
|
|
6971
|
+
var CooldownTimer = function (_a) {
|
|
6972
|
+
var cooldownInterval = _a.cooldownInterval, setCooldownRemaining = _a.setCooldownRemaining;
|
|
6973
|
+
var _b = React.useState(cooldownInterval), seconds = _b[0], setSeconds = _b[1];
|
|
6974
|
+
React.useEffect(function () {
|
|
6975
|
+
var countdownInterval = setInterval(function () {
|
|
6976
|
+
if (seconds > 0) {
|
|
6977
|
+
setSeconds(seconds - 1);
|
|
6978
|
+
}
|
|
6979
|
+
else {
|
|
6980
|
+
setCooldownRemaining(0);
|
|
6981
|
+
}
|
|
6982
|
+
}, 1000);
|
|
6983
|
+
return function () { return clearInterval(countdownInterval); };
|
|
6984
|
+
});
|
|
6985
|
+
return (React__default["default"].createElement("div", { className: 'str-chat__message-input-cooldown', "data-testid": 'cooldown-timer' }, seconds === 0 ? null : seconds));
|
|
6986
|
+
};
|
|
6987
|
+
|
|
6835
6988
|
var useCommandTrigger = function () {
|
|
6836
6989
|
var themeVersion = useChatContext('useCommandTrigger').themeVersion;
|
|
6837
6990
|
var channelConfig = useChannelStateContext('useCommandTrigger').channelConfig;
|
|
@@ -7236,78 +7389,6 @@ var EmojiPicker = function (_a) {
|
|
|
7236
7389
|
React__default["default"].createElement(EmojiPickerComponent, { color: '#006CFF', data: emojiData, emoji: 'point_up', emojisToShowFilter: filterEmoji, native: true, onSelect: onSelectEmoji, set: 'facebook', showPreview: false, showSkinTones: false, title: t('Pick your emoji'), useButton: true }))));
|
|
7237
7390
|
};
|
|
7238
7391
|
|
|
7239
|
-
var EmojiIconLarge = function () {
|
|
7240
|
-
var t = useTranslationContext('EmojiIconLarge').t;
|
|
7241
|
-
return (React__default["default"].createElement("svg", { height: '28', width: '28', xmlns: 'http://www.w3.org/2000/svg' },
|
|
7242
|
-
React__default["default"].createElement("title", null, t('Open emoji picker')),
|
|
7243
|
-
React__default["default"].createElement("g", { clipRule: 'evenodd', fillRule: 'evenodd' },
|
|
7244
|
-
React__default["default"].createElement("path", { d: 'M14 4.4C8.6 4.4 4.4 8.6 4.4 14c0 5.4 4.2 9.6 9.6 9.6c5.4 0 9.6-4.2 9.6-9.6c0-5.4-4.2-9.6-9.6-9.6zM2 14c0-6.6 5.4-12 12-12s12 5.4 12 12s-5.4 12-12 12s-12-5.4-12-12zM12.8 11c0 1-.8 1.8-1.8 1.8s-1.8-.8-1.8-1.8s.8-1.8 1.8-1.8s1.8.8 1.8 1.8zM18.8 11c0 1-.8 1.8-1.8 1.8s-1.8-.8-1.8-1.8s.8-1.8 1.8-1.8s1.8.8 1.8 1.8zM8.6 15.4c.6-.4 1.2-.2 1.6.2c.6.8 1.6 1.8 3 2c1.2.4 2.8.2 4.8-2c.4-.4 1.2-.6 1.6 0c.4.4.6 1.2 0 1.6c-2.2 2.6-4.8 3.4-7 3c-2-.4-3.6-1.8-4.4-3c-.4-.6-.2-1.2.4-1.8z' }))));
|
|
7245
|
-
};
|
|
7246
|
-
var EmojiIconSmall = function () {
|
|
7247
|
-
var t = useTranslationContext('EmojiIconSmall').t;
|
|
7248
|
-
return (React__default["default"].createElement("svg", { height: '14', width: '14', xmlns: 'http://www.w3.org/2000/svg' },
|
|
7249
|
-
React__default["default"].createElement("title", null, t('Open emoji picker')),
|
|
7250
|
-
React__default["default"].createElement("g", { clipRule: 'evenodd', fillRule: 'evenodd' },
|
|
7251
|
-
React__default["default"].createElement("path", { d: 'M6.7 1.42C3.73 1.42 1.42 3.73 1.42 6.7c0 2.97 2.31 5.28 5.28 5.28c2.97 0 5.28-2.31 5.28-5.28c0-2.97-2.31-5.28-5.28-5.28zM.1 6.7c0-3.63 2.97-6.6 6.6-6.6s6.6 2.97 6.6 6.6s-2.97 6.6-6.6 6.6s-6.6-2.97-6.6-6.6zM6.04 5.05c0 .55-.44.99-.99.99s-.99-.44-.99-.99s.44-.99.99-.99s.99.44.99.99zM9.34 5.05c0 .55-.44.99-.99.99s-.99-.44-.99-.99s.44-.99.99-.99s.99.44.99.99zM3.73 7.47c.33-.22.66-.11.88.11c.33.44.88.99 1.65 1.1c.66.22 1.54.11 2.64-1.1c.22-.22.66-.33.88 0c.22.22.33.66 0 .88c-1.21 1.43-2.64 1.87-3.85 1.65c-1.1-.22-1.98-.99-2.42-1.65c-.22-.33-.11-.66.22-.99z' }))));
|
|
7252
|
-
};
|
|
7253
|
-
// ThemingV2 icon
|
|
7254
|
-
var EmojiPickerIcon = function () { return (React__default["default"].createElement("svg", { preserveAspectRatio: 'xMinYMin', viewBox: '0 0 28 28', width: '100%', xmlns: 'http://www.w3.org/2000/svg' },
|
|
7255
|
-
React__default["default"].createElement("g", { clipRule: 'evenodd', fillRule: 'evenodd' },
|
|
7256
|
-
React__default["default"].createElement("path", { d: 'M14 4.4C8.6 4.4 4.4 8.6 4.4 14c0 5.4 4.2 9.6 9.6 9.6c5.4 0 9.6-4.2 9.6-9.6c0-5.4-4.2-9.6-9.6-9.6zM2 14c0-6.6 5.4-12 12-12s12 5.4 12 12s-5.4 12-12 12s-12-5.4-12-12zM12.8 11c0 1-.8 1.8-1.8 1.8s-1.8-.8-1.8-1.8s.8-1.8 1.8-1.8s1.8.8 1.8 1.8zM18.8 11c0 1-.8 1.8-1.8 1.8s-1.8-.8-1.8-1.8s.8-1.8 1.8-1.8s1.8.8 1.8 1.8zM8.6 15.4c.6-.4 1.2-.2 1.6.2c.6.8 1.6 1.8 3 2c1.2.4 2.8.2 4.8-2c.4-.4 1.2-.6 1.6 0c.4.4.6 1.2 0 1.6c-2.2 2.6-4.8 3.4-7 3c-2-.4-3.6-1.8-4.4-3c-.4-.6-.2-1.2.4-1.8z' })))); };
|
|
7257
|
-
var FileUploadIcon = function () {
|
|
7258
|
-
var t = useTranslationContext('FileUploadIcon').t;
|
|
7259
|
-
return (React__default["default"].createElement("svg", { height: '14', width: '14', xmlns: 'http://www.w3.org/2000/svg' },
|
|
7260
|
-
React__default["default"].createElement("title", null, t('Attach files')),
|
|
7261
|
-
React__default["default"].createElement("path", { d: 'M7 .5c3.59 0 6.5 2.91 6.5 6.5s-2.91 6.5-6.5 6.5S.5 10.59.5 7 3.41.5 7 .5zm0 12c3.031 0 5.5-2.469 5.5-5.5S10.031 1.5 7 1.5A5.506 5.506 0 0 0 1.5 7c0 3.034 2.469 5.5 5.5 5.5zM7.506 3v3.494H11v1.05H7.506V11h-1.05V7.544H3v-1.05h3.456V3h1.05z', fillRule: 'nonzero' })));
|
|
7262
|
-
};
|
|
7263
|
-
var FileUploadIconFlat = function () {
|
|
7264
|
-
var t = useTranslationContext('FileUploadIconFlat').t;
|
|
7265
|
-
return (React__default["default"].createElement("svg", { height: '14', width: '14', xmlns: 'http://www.w3.org/2000/svg' },
|
|
7266
|
-
React__default["default"].createElement("title", null, t('Attach files')),
|
|
7267
|
-
React__default["default"].createElement("path", { d: 'M1.667.333h10.666c.737 0 1.334.597 1.334 1.334v10.666c0 .737-.597 1.334-1.334 1.334H1.667a1.333 1.333 0 0 1-1.334-1.334V1.667C.333.93.93.333 1.667.333zm2 1.334a1.667 1.667 0 1 0 0 3.333 1.667 1.667 0 0 0 0-3.333zm-2 9.333v1.333h10.666v-4l-2-2-4 4-2-2L1.667 11z', fillRule: 'nonzero' })));
|
|
7268
|
-
};
|
|
7269
|
-
var LoadingIndicatorIcon = function (_a) {
|
|
7270
|
-
var _b = _a.size, size = _b === void 0 ? 20 : _b;
|
|
7271
|
-
var id = React.useMemo(function () { return nanoid.nanoid(); }, []);
|
|
7272
|
-
return (React__default["default"].createElement("div", { className: 'str-chat__loading-indicator' },
|
|
7273
|
-
React__default["default"].createElement("svg", { "data-testid": 'loading-indicator', height: size, viewBox: '0 0 30 30', width: size, xmlns: 'http://www.w3.org/2000/svg' },
|
|
7274
|
-
React__default["default"].createElement("defs", null,
|
|
7275
|
-
React__default["default"].createElement("linearGradient", { id: "".concat(id, "-linear-gradient"), x1: '50%', x2: '50%', y1: '0%', y2: '100%' },
|
|
7276
|
-
React__default["default"].createElement("stop", { offset: '0%', stopColor: '#FFF', stopOpacity: '0' }),
|
|
7277
|
-
React__default["default"].createElement("stop", { "data-testid": 'stop-color', offset: '100%', stopOpacity: '1' }))),
|
|
7278
|
-
React__default["default"].createElement("path", { d: 'M2.518 23.321l1.664-1.11A12.988 12.988 0 0 0 15 28c7.18 0 13-5.82 13-13S22.18 2 15 2V0c8.284 0 15 6.716 15 15 0 8.284-6.716 15-15 15-5.206 0-9.792-2.652-12.482-6.679z', fill: "url(#".concat(id, "-linear-gradient)"), fillRule: 'evenodd' }))));
|
|
7279
|
-
};
|
|
7280
|
-
// ThemingV2 icon
|
|
7281
|
-
var UploadIcon = function () { return (React__default["default"].createElement("svg", { "data-testid": 'attach', fill: 'none', height: '24', viewBox: '0 0 24 24', width: '24', xmlns: 'http://www.w3.org/2000/svg' },
|
|
7282
|
-
React__default["default"].createElement("g", { clipPath: 'url(#clip0_10878_5)' },
|
|
7283
|
-
React__default["default"].createElement("path", { d: 'M12.9997 6.99993L10.9997 6.99993L10.9997 10.9999L6.99972 10.9999L6.99972 12.9999L10.9997 12.9999L10.9997 16.9999L12.9997 16.9999L12.9997 12.9999L16.9997 12.9999L16.9997 10.9999L12.9997 10.9999L12.9997 6.99993ZM11.9997 1.99992C6.47972 1.99992 1.99972 6.47993 1.99972 11.9999C1.99972 17.5199 6.47972 21.9999 11.9997 21.9999C17.5197 21.9999 21.9997 17.5199 21.9997 11.9999C21.9997 6.47993 17.5197 1.99992 11.9997 1.99992ZM11.9997 19.9999C7.58972 19.9999 3.99972 16.4099 3.99972 11.9999C3.99972 7.58993 7.58972 3.99993 11.9997 3.99993C16.4097 3.99993 19.9997 7.58993 19.9997 11.9999C19.9997 16.4099 16.4097 19.9999 11.9997 19.9999Z', fill: 'black' })),
|
|
7284
|
-
React__default["default"].createElement("defs", null,
|
|
7285
|
-
React__default["default"].createElement("clipPath", { id: 'clip0_10878_5' },
|
|
7286
|
-
React__default["default"].createElement("rect", { fill: 'white', height: '24', width: '24' }))))); };
|
|
7287
|
-
var CloseIcon$1 = function () { return (React__default["default"].createElement("svg", { "data-testid": 'close-no-outline', fill: 'none', height: '24', viewBox: '0 0 24 24', width: '24', xmlns: 'http://www.w3.org/2000/svg' },
|
|
7288
|
-
React__default["default"].createElement("path", { d: 'M19 6.41L17.59 5L12 10.59L6.41 5L5 6.41L10.59 12L5 17.59L6.41 19L12 13.41L17.59 19L19 17.59L13.41 12L19 6.41Z', fill: 'black' }))); };
|
|
7289
|
-
var RetryIcon = function () { return (React__default["default"].createElement("svg", { "data-testid": 'retry', fill: 'none', height: '24', viewBox: '0 0 24 24', width: '24', xmlns: 'http://www.w3.org/2000/svg' },
|
|
7290
|
-
React__default["default"].createElement("path", { d: 'M17.6449 6.35C16.1949 4.9 14.2049 4 11.9949 4C7.57488 4 4.00488 7.58 4.00488 12C4.00488 16.42 7.57488 20 11.9949 20C15.7249 20 18.8349 17.45 19.7249 14H17.6449C16.8249 16.33 14.6049 18 11.9949 18C8.68488 18 5.99488 15.31 5.99488 12C5.99488 8.69 8.68488 6 11.9949 6C13.6549 6 15.1349 6.69 16.2149 7.78L12.9949 11H19.9949V4L17.6449 6.35Z', fill: 'black' }))); };
|
|
7291
|
-
var DownloadIcon = function () { return (React__default["default"].createElement("svg", { "data-testid": 'download', fill: 'none', height: '24', viewBox: '0 0 24 24', width: '24', xmlns: 'http://www.w3.org/2000/svg' },
|
|
7292
|
-
React__default["default"].createElement("path", { d: 'M19.35 10.04C18.67 6.59 15.64 4 12 4C9.11 4 6.6 5.64 5.35 8.04C2.34 8.36 0 10.91 0 14C0 17.31 2.69 20 6 20H19C21.76 20 24 17.76 24 15C24 12.36 21.95 10.22 19.35 10.04ZM19 18H6C3.79 18 2 16.21 2 14C2 11.95 3.53 10.24 5.56 10.03L6.63 9.92L7.13 8.97C8.08 7.14 9.94 6 12 6C14.62 6 16.88 7.86 17.39 10.43L17.69 11.93L19.22 12.04C20.78 12.14 22 13.45 22 15C22 16.65 20.65 18 19 18ZM13.45 10H10.55V13H8L12 17L16 13H13.45V10Z', fill: 'black' }))); };
|
|
7293
|
-
var SendIconV1 = function () {
|
|
7294
|
-
var t = useTranslationContext('SendButton').t;
|
|
7295
|
-
return (React__default["default"].createElement("svg", { height: '17', viewBox: '0 0 18 17', width: '18', xmlns: 'http://www.w3.org/2000/svg' },
|
|
7296
|
-
React__default["default"].createElement("title", null, t('Send')),
|
|
7297
|
-
React__default["default"].createElement("path", { d: 'M0 17.015l17.333-8.508L0 0v6.617l12.417 1.89L0 10.397z', fill: '#006cff', fillRule: 'evenodd' })));
|
|
7298
|
-
};
|
|
7299
|
-
var SendIconV2 = function () {
|
|
7300
|
-
var t = useTranslationContext('SendButton').t;
|
|
7301
|
-
return (React__default["default"].createElement("svg", { "data-testid": 'send', fill: 'none', height: '24', viewBox: '0 0 24 24', width: '24', xmlns: 'http://www.w3.org/2000/svg' },
|
|
7302
|
-
React__default["default"].createElement("title", null, t('Send')),
|
|
7303
|
-
React__default["default"].createElement("path", { d: 'M4.00952 22L24 12L4.00952 2L4 9.77778L18.2857 12L4 14.2222L4.00952 22Z', fill: 'black' })));
|
|
7304
|
-
};
|
|
7305
|
-
var SendButton = function (_a) {
|
|
7306
|
-
var sendMessage = _a.sendMessage, rest = __rest(_a, ["sendMessage"]);
|
|
7307
|
-
var themeVersion = useChatContext('SendButton').themeVersion;
|
|
7308
|
-
return (React__default["default"].createElement("button", __assign({ "aria-label": 'Send', className: 'str-chat__send-button', "data-testid": 'send-button', onClick: sendMessage, type: 'button' }, rest), themeVersion === '2' ? React__default["default"].createElement(SendIconV2, null) : React__default["default"].createElement(SendIconV1, null)));
|
|
7309
|
-
};
|
|
7310
|
-
|
|
7311
7392
|
/**
|
|
7312
7393
|
* @deprecated This component has been deprecated in favor of `AttachmentPreviewList` as this component
|
|
7313
7394
|
* utilises outdated components from the package [`react-file-utils`](https://github.com/GetStream/react-file-utils)
|
|
@@ -9109,87 +9190,6 @@ var QuotedMessagePreview = function (_a) {
|
|
|
9109
9190
|
themeVersion === '1' && React__default["default"].createElement(React__default["default"].Fragment, null, quotedMessageText))))));
|
|
9110
9191
|
};
|
|
9111
9192
|
|
|
9112
|
-
var useFileState = function (file) {
|
|
9113
|
-
return React.useMemo(function () { return ({
|
|
9114
|
-
failed: file.state === 'failed',
|
|
9115
|
-
finished: file.state === 'finished',
|
|
9116
|
-
uploading: file.state === 'uploading',
|
|
9117
|
-
}); }, [file.state]);
|
|
9118
|
-
};
|
|
9119
|
-
|
|
9120
|
-
var AttachmentPreviewList = function () {
|
|
9121
|
-
var _a = useMessageInputContext('AttachmentPreviewList'), fileOrder = _a.fileOrder, imageOrder = _a.imageOrder;
|
|
9122
|
-
return (React__default["default"].createElement("div", { className: 'str-chat__attachment-preview-list' },
|
|
9123
|
-
React__default["default"].createElement("div", { className: 'str-chat__attachment-list-scroll-container', "data-testid": 'attachment-list-scroll-container' },
|
|
9124
|
-
imageOrder.map(function (id) { return (React__default["default"].createElement(ImagePreviewItem, { id: id, key: id })); }),
|
|
9125
|
-
fileOrder.map(function (id) { return (React__default["default"].createElement(FilePreviewItem, { id: id, key: id })); }))));
|
|
9126
|
-
};
|
|
9127
|
-
var ImagePreviewItem = function (_a) {
|
|
9128
|
-
var _b;
|
|
9129
|
-
var id = _a.id;
|
|
9130
|
-
var _c = useMessageInputContext('ImagePreviewItem'), imageUploads = _c.imageUploads, removeImage = _c.removeImage, uploadImage = _c.uploadImage;
|
|
9131
|
-
var handleRemove = React.useCallback(function (e) {
|
|
9132
|
-
e.stopPropagation();
|
|
9133
|
-
removeImage(id);
|
|
9134
|
-
}, [removeImage, id]);
|
|
9135
|
-
var handleRetry = React.useCallback(function () { return uploadImage(id); }, [uploadImage, id]);
|
|
9136
|
-
var image = imageUploads[id];
|
|
9137
|
-
var state = useFileState(image);
|
|
9138
|
-
// do not display scraped attachments
|
|
9139
|
-
if (!image || image.og_scrape_url)
|
|
9140
|
-
return null;
|
|
9141
|
-
return (React__default["default"].createElement("div", { className: 'str-chat__attachment-preview-image', "data-testid": 'attachment-preview-image' },
|
|
9142
|
-
React__default["default"].createElement("button", { className: 'str-chat__attachment-preview-delete', "data-testid": 'image-preview-item-delete-button', disabled: state.uploading, onClick: handleRemove },
|
|
9143
|
-
React__default["default"].createElement(CloseIcon$1, null)),
|
|
9144
|
-
state.failed && (React__default["default"].createElement("button", { className: 'str-chat__attachment-preview-error str-chat__attachment-preview-error-image', "data-testid": 'image-preview-item-retry-button', onClick: handleRetry },
|
|
9145
|
-
React__default["default"].createElement(RetryIcon, null))),
|
|
9146
|
-
state.uploading && (React__default["default"].createElement("div", { className: 'str-chat__attachment-preview-image-loading' },
|
|
9147
|
-
React__default["default"].createElement(LoadingIndicatorIcon, { size: 17 }))),
|
|
9148
|
-
(image.previewUri || image.url) && (React__default["default"].createElement("img", { alt: image.file.name, className: 'str-chat__attachment-preview-thumbnail', src: (_b = image.previewUri) !== null && _b !== void 0 ? _b : image.url }))));
|
|
9149
|
-
};
|
|
9150
|
-
var FilePreviewItem = function (_a) {
|
|
9151
|
-
var id = _a.id;
|
|
9152
|
-
var _b = useMessageInputContext('FilePreviewItem'), fileUploads = _b.fileUploads, removeFile = _b.removeFile, uploadFile = _b.uploadFile;
|
|
9153
|
-
var handleRemove = React.useCallback(function (e) {
|
|
9154
|
-
e.stopPropagation();
|
|
9155
|
-
removeFile(id);
|
|
9156
|
-
}, [removeFile, id]);
|
|
9157
|
-
var handleRetry = React.useCallback(function () { return uploadFile(id); }, [uploadFile, id]);
|
|
9158
|
-
var file = fileUploads[id];
|
|
9159
|
-
var state = useFileState(file);
|
|
9160
|
-
if (!file)
|
|
9161
|
-
return null;
|
|
9162
|
-
return (React__default["default"].createElement("div", { className: 'str-chat__attachment-preview-file', "data-testid": 'attachment-preview-file' },
|
|
9163
|
-
React__default["default"].createElement("div", { className: 'str-chat__attachment-preview-file-icon' },
|
|
9164
|
-
React__default["default"].createElement(reactFileUtils.FileIcon, { filename: file.file.name, mimeType: file.file.type, version: '2' })),
|
|
9165
|
-
React__default["default"].createElement("button", { className: 'str-chat__attachment-preview-delete', "data-testid": 'file-preview-item-delete-button', disabled: state.uploading, onClick: handleRemove },
|
|
9166
|
-
React__default["default"].createElement(CloseIcon$1, null)),
|
|
9167
|
-
state.failed && (React__default["default"].createElement("button", { className: 'str-chat__attachment-preview-error str-chat__attachment-preview-error-file', "data-testid": 'file-preview-item-retry-button', onClick: handleRetry },
|
|
9168
|
-
React__default["default"].createElement(RetryIcon, null))),
|
|
9169
|
-
React__default["default"].createElement("div", { className: 'str-chat__attachment-preview-file-end' },
|
|
9170
|
-
React__default["default"].createElement("div", { className: 'str-chat__attachment-preview-file-name' }, file.file.name),
|
|
9171
|
-
state.finished && (React__default["default"].createElement("a", { className: 'str-chat__attachment-preview-file-download', download: true, href: file.url, rel: 'noreferrer', target: '_blank' },
|
|
9172
|
-
React__default["default"].createElement(DownloadIcon, null))),
|
|
9173
|
-
state.uploading && React__default["default"].createElement(LoadingIndicatorIcon, { size: 17 }))));
|
|
9174
|
-
};
|
|
9175
|
-
|
|
9176
|
-
var CooldownTimer = function (_a) {
|
|
9177
|
-
var cooldownInterval = _a.cooldownInterval, setCooldownRemaining = _a.setCooldownRemaining;
|
|
9178
|
-
var _b = React.useState(cooldownInterval), seconds = _b[0], setSeconds = _b[1];
|
|
9179
|
-
React.useEffect(function () {
|
|
9180
|
-
var countdownInterval = setInterval(function () {
|
|
9181
|
-
if (seconds > 0) {
|
|
9182
|
-
setSeconds(seconds - 1);
|
|
9183
|
-
}
|
|
9184
|
-
else {
|
|
9185
|
-
setCooldownRemaining(0);
|
|
9186
|
-
}
|
|
9187
|
-
}, 1000);
|
|
9188
|
-
return function () { return clearInterval(countdownInterval); };
|
|
9189
|
-
});
|
|
9190
|
-
return (React__default["default"].createElement("div", { className: 'str-chat__message-input-cooldown', "data-testid": 'cooldown-timer' }, seconds === 0 ? null : seconds));
|
|
9191
|
-
};
|
|
9192
|
-
|
|
9193
9193
|
var MessageInputFlat = function () {
|
|
9194
9194
|
var quotedMessage = useChannelStateContext('MessageInputFlat').quotedMessage;
|
|
9195
9195
|
var setQuotedMessage = useChannelActionContext('MessageInputFlat').setQuotedMessage;
|
|
@@ -12648,7 +12648,7 @@ var UnMemoizedChannelList = function (props) {
|
|
|
12648
12648
|
*/
|
|
12649
12649
|
var ChannelList = React__default["default"].memo(UnMemoizedChannelList);
|
|
12650
12650
|
|
|
12651
|
-
var version = '10.1.
|
|
12651
|
+
var version = '10.1.2';
|
|
12652
12652
|
|
|
12653
12653
|
var useChat = function (_a) {
|
|
12654
12654
|
var _b, _c;
|
|
@@ -13224,7 +13224,7 @@ notifications) {
|
|
|
13224
13224
|
var t = useTranslationContext('usePinHandler').t;
|
|
13225
13225
|
var canPin = !!channelCapabilities['pin-message'];
|
|
13226
13226
|
var handlePin = function (event) { return __awaiter$1(void 0, void 0, void 0, function () {
|
|
13227
|
-
var optimisticMessage,
|
|
13227
|
+
var optimisticMessage, errorMessage, optimisticMessage, errorMessage;
|
|
13228
13228
|
return __generator$1(this, function (_a) {
|
|
13229
13229
|
switch (_a.label) {
|
|
13230
13230
|
case 0:
|
|
@@ -13239,8 +13239,7 @@ notifications) {
|
|
|
13239
13239
|
updateMessage(optimisticMessage);
|
|
13240
13240
|
return [4 /*yield*/, client.pinMessage(message)];
|
|
13241
13241
|
case 2:
|
|
13242
|
-
|
|
13243
|
-
updateMessage(messageResponse.message);
|
|
13242
|
+
_a.sent();
|
|
13244
13243
|
return [3 /*break*/, 4];
|
|
13245
13244
|
case 3:
|
|
13246
13245
|
_a.sent();
|
|
@@ -13256,8 +13255,7 @@ notifications) {
|
|
|
13256
13255
|
updateMessage(optimisticMessage);
|
|
13257
13256
|
return [4 /*yield*/, client.unpinMessage(message)];
|
|
13258
13257
|
case 6:
|
|
13259
|
-
|
|
13260
|
-
updateMessage(messageResponse.message);
|
|
13258
|
+
_a.sent();
|
|
13261
13259
|
return [3 /*break*/, 8];
|
|
13262
13260
|
case 7:
|
|
13263
13261
|
_a.sent();
|
|
@@ -14226,16 +14224,17 @@ function useNewMessageNotification(messages, currentUserId, hasMoreNewer) {
|
|
|
14226
14224
|
}
|
|
14227
14225
|
|
|
14228
14226
|
function usePrependedMessagesCount(messages, hasDateSeparator) {
|
|
14229
|
-
var _a;
|
|
14230
14227
|
var firstRealMessageIndex = hasDateSeparator ? 1 : 0;
|
|
14231
|
-
var
|
|
14232
|
-
var
|
|
14233
|
-
var earliestMessageId = React.useRef(currentFirstMessageId);
|
|
14228
|
+
var firstMessageId = React.useRef();
|
|
14229
|
+
var earliestMessageId = React.useRef();
|
|
14234
14230
|
var previousNumItemsPrepended = React.useRef(0);
|
|
14235
14231
|
var numItemsPrepended = React.useMemo(function () {
|
|
14232
|
+
var _a;
|
|
14236
14233
|
if (!messages || !messages.length) {
|
|
14234
|
+
previousNumItemsPrepended.current = 0;
|
|
14237
14235
|
return 0;
|
|
14238
14236
|
}
|
|
14237
|
+
var currentFirstMessageId = (_a = messages === null || messages === void 0 ? void 0 : messages[firstRealMessageIndex]) === null || _a === void 0 ? void 0 : _a.id;
|
|
14239
14238
|
// if no new messages were prepended, return early (same amount as before)
|
|
14240
14239
|
if (currentFirstMessageId === earliestMessageId.current) {
|
|
14241
14240
|
return previousNumItemsPrepended.current;
|
|
@@ -14252,8 +14251,9 @@ function usePrependedMessagesCount(messages, hasDateSeparator) {
|
|
|
14252
14251
|
return i;
|
|
14253
14252
|
}
|
|
14254
14253
|
}
|
|
14255
|
-
// if no match has found, we have jumped
|
|
14254
|
+
// if no match has found, we have jumped - reset the prepend item count.
|
|
14256
14255
|
firstMessageId.current = currentFirstMessageId;
|
|
14256
|
+
previousNumItemsPrepended.current = 0;
|
|
14257
14257
|
return 0;
|
|
14258
14258
|
// TODO: there's a bug here, the messages prop is the same array instance (something mutates it)
|
|
14259
14259
|
// that's why the second dependency is necessary
|
|
@@ -14659,6 +14659,7 @@ exports.ActionsIcon = ActionsIcon;
|
|
|
14659
14659
|
exports.Attachment = Attachment;
|
|
14660
14660
|
exports.AttachmentActions = AttachmentActions;
|
|
14661
14661
|
exports.AttachmentActionsContainer = AttachmentActionsContainer;
|
|
14662
|
+
exports.AttachmentPreviewList = AttachmentPreviewList;
|
|
14662
14663
|
exports.AttachmentWithinContainer = AttachmentWithinContainer;
|
|
14663
14664
|
exports.Audio = Audio;
|
|
14664
14665
|
exports.AudioContainer = AudioContainer;
|
|
@@ -14873,6 +14874,7 @@ exports.useChannelDeletedListener = useChannelDeletedListener;
|
|
|
14873
14874
|
exports.useChannelEditMessageHandler = useEditMessageHandler;
|
|
14874
14875
|
exports.useChannelHiddenListener = useChannelHiddenListener;
|
|
14875
14876
|
exports.useChannelMentionsHandler = useMentionsHandlers;
|
|
14877
|
+
exports.useChannelPreviewInfo = useChannelPreviewInfo;
|
|
14876
14878
|
exports.useChannelStateContext = useChannelStateContext;
|
|
14877
14879
|
exports.useChannelTruncatedListener = useChannelTruncatedListener;
|
|
14878
14880
|
exports.useChannelUpdatedListener = useChannelUpdatedListener;
|