stream-chat-react 10.1.1 → 10.2.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 +328 -202
- package/dist/browser.full-bundle.js.map +1 -1
- package/dist/browser.full-bundle.min.js +5 -5
- package/dist/browser.full-bundle.min.js.map +1 -1
- package/dist/components/Attachment/AttachmentContainer.d.ts.map +1 -1
- package/dist/components/Attachment/AttachmentContainer.js +67 -15
- package/dist/components/Attachment/attachment-sizing.d.ts +9 -0
- package/dist/components/Attachment/attachment-sizing.d.ts.map +1 -0
- package/dist/components/Attachment/attachment-sizing.js +72 -0
- package/dist/components/Channel/Channel.d.ts +7 -1
- package/dist/components/Channel/Channel.d.ts.map +1 -1
- package/dist/components/Channel/Channel.js +2 -1
- package/dist/components/Channel/hooks/useCreateChannelStateContext.d.ts.map +1 -1
- package/dist/components/Channel/hooks/useCreateChannelStateContext.js +5 -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/Gallery/Gallery.d.ts +7 -2
- package/dist/components/Gallery/Gallery.d.ts.map +1 -1
- package/dist/components/Gallery/Gallery.js +16 -5
- package/dist/components/Gallery/Image.d.ts +4 -0
- package/dist/components/Gallery/Image.d.ts.map +1 -1
- package/dist/components/Gallery/Image.js +3 -3
- 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/hooks/useFileUploads.d.ts.map +1 -1
- package/dist/components/MessageInput/hooks/useFileUploads.js +1 -0
- package/dist/components/MessageInput/hooks/useMessageInputState.d.ts +2 -0
- package/dist/components/MessageInput/hooks/useMessageInputState.d.ts.map +1 -1
- package/dist/components/MessageInput/hooks/useMessageInputState.js +2 -1
- package/dist/components/MessageInput/hooks/useSubmitHandler.d.ts.map +1 -1
- package/dist/components/MessageInput/hooks/useSubmitHandler.js +1 -0
- 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/MessageList.d.ts.map +1 -1
- package/dist/components/MessageList/MessageList.js +1 -2
- package/dist/components/MessageList/VirtualizedMessageList.d.ts.map +1 -1
- package/dist/components/MessageList/VirtualizedMessageList.js +0 -1
- package/dist/components/MessageList/hooks/useMessageListElements.d.ts +0 -1
- package/dist/components/MessageList/hooks/useMessageListElements.d.ts.map +1 -1
- package/dist/components/MessageList/hooks/useMessageListElements.js +2 -3
- package/dist/components/MessageList/hooks/useScrollLocationLogic.d.ts +0 -1
- package/dist/components/MessageList/hooks/useScrollLocationLogic.d.ts.map +1 -1
- package/dist/components/MessageList/hooks/useScrollLocationLogic.js +0 -10
- package/dist/components/Thread/Thread.d.ts.map +1 -1
- package/dist/components/Thread/Thread.js +7 -2
- 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/context/ChannelStateContext.d.ts +5 -2
- package/dist/context/ChannelStateContext.d.ts.map +1 -1
- package/dist/css/index.css +1 -1
- package/dist/css/index.css.map +1 -1
- package/dist/css/v2/index.css +1 -1
- package/dist/css/v2/index.css.map +1 -1
- package/dist/css/v2/index.layout.css +1 -1
- package/dist/css/v2/index.layout.css.map +1 -1
- package/dist/index.cjs.js +324 -202
- package/dist/index.cjs.js.map +1 -1
- package/dist/scss/Attachment.scss +49 -20
- package/dist/scss/Audio.scss +1 -0
- package/dist/scss/Message.scss +44 -41
- package/dist/scss/MessageCommerce.scss +1 -1
- package/dist/scss/Thread.scss +39 -2
- package/dist/scss/VirtualMessage.scss +2 -6
- package/dist/scss/v2/AttachmentList/AttachmentList-layout.scss +33 -19
- package/dist/scss/v2/Message/Message-layout.scss +12 -0
- package/dist/scss/v2/Message/Message-theme.scss +20 -0
- package/dist/scss/v2/MessageList/MessageList-layout.scss +1 -4
- package/dist/scss/v2/MessageList/VirtualizedMessageList-layout.scss +21 -0
- package/dist/scss/v2/MessageList/VirtualizedMessageList-theme.scss +9 -0
- package/dist/scss/v2/Notification/NotificationList-theme.scss +2 -2
- package/dist/scss/v2/_utils.scss +8 -0
- package/dist/stories/attachment-sizing.stories.d.ts +2 -0
- package/dist/stories/attachment-sizing.stories.d.ts.map +1 -0
- package/dist/stories/attachment-sizing.stories.js +179 -0
- 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/types/types.d.ts +9 -1
- package/dist/types/types.d.ts.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +3 -3
- 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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AttachmentContainer.d.ts","sourceRoot":"","sources":["../../../src/components/Attachment/AttachmentContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,iBAAiB,
|
|
1
|
+
{"version":3,"file":"AttachmentContainer.d.ts","sourceRoot":"","sources":["../../../src/components/Attachment/AttachmentContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,iBAAiB,EAAqC,MAAM,OAAO,CAAC;AASpF,OAAO,EACL,wBAAwB,EAGxB,qBAAqB,EACrB,kBAAkB,EACnB,MAAM,SAAS,CAAC;AAIjB,OAAO,KAAK,EACV,yBAAyB,EAG1B,MAAM,mBAAmB,CAAC;AAE3B,eAAO,MAAM,yBAAyB,oNA+BrC,CAAC;AAEF,eAAO,MAAM,0BAA0B,wMAkBtC,CAAC;AAoBF,eAAO,MAAM,gBAAgB,qKAwC5B,CAAC;AAEF,eAAO,MAAM,cAAc,qJA0C1B,CAAC;AAEF,eAAO,MAAM,aAAa,qJAwBzB,CAAC;AAEF,eAAO,MAAM,aAAa,4KAazB,CAAC;AACF,eAAO,MAAM,cAAc,sKAW1B,CAAC;AAEF,eAAO,MAAM,cAAc,qJAuD1B,CAAC"}
|
|
@@ -9,7 +9,7 @@ var __assign = (this && this.__assign) || function () {
|
|
|
9
9
|
};
|
|
10
10
|
return __assign.apply(this, arguments);
|
|
11
11
|
};
|
|
12
|
-
import React from 'react';
|
|
12
|
+
import React, { useLayoutEffect, useRef, useState } from 'react';
|
|
13
13
|
import ReactPlayer from 'react-player';
|
|
14
14
|
import clsx from 'clsx';
|
|
15
15
|
import { AttachmentActions as DefaultAttachmentActions } from './AttachmentActions';
|
|
@@ -18,6 +18,7 @@ import { Gallery as DefaultGallery, ImageComponent as DefaultImage } from '../Ga
|
|
|
18
18
|
import { Card as DefaultCard } from './Card';
|
|
19
19
|
import { FileAttachment as DefaultFile } from './FileAttachment';
|
|
20
20
|
import { isGalleryAttachmentType, isSvgAttachment, } from './utils';
|
|
21
|
+
import { useChannelStateContext } from '../../context/ChannelStateContext';
|
|
21
22
|
export var AttachmentWithinContainer = function (_a) {
|
|
22
23
|
var _b;
|
|
23
24
|
var _c;
|
|
@@ -32,7 +33,7 @@ export var AttachmentWithinContainer = function (_a) {
|
|
|
32
33
|
? 'actions'
|
|
33
34
|
: '';
|
|
34
35
|
}
|
|
35
|
-
var classNames = clsx('str-chat__message-attachment', (_b = {},
|
|
36
|
+
var classNames = clsx('str-chat__message-attachment str-chat__message-attachment-dynamic-size', (_b = {},
|
|
36
37
|
_b["str-chat__message-attachment--".concat(componentType)] = componentType,
|
|
37
38
|
_b["str-chat__message-attachment--".concat(attachment === null || attachment === void 0 ? void 0 : attachment.type)] = attachment === null || attachment === void 0 ? void 0 : attachment.type,
|
|
38
39
|
_b["str-chat__message-attachment--".concat(componentType, "--").concat(extra)] = componentType && extra,
|
|
@@ -48,22 +49,68 @@ export var AttachmentActionsContainer = function (_a) {
|
|
|
48
49
|
return null;
|
|
49
50
|
return (React.createElement(AttachmentActions, __assign({}, attachment, { actionHandler: actionHandler, actions: attachment.actions, id: attachment.id || '', text: attachment.text || '' })));
|
|
50
51
|
};
|
|
52
|
+
function getCssDimensionsVariables(url) {
|
|
53
|
+
var _a;
|
|
54
|
+
var cssVars = (_a = {},
|
|
55
|
+
_a['--original-height'] = 1000000,
|
|
56
|
+
_a['--original-width'] = 1000000,
|
|
57
|
+
_a);
|
|
58
|
+
if (url) {
|
|
59
|
+
var urlParams = new URL(url).searchParams;
|
|
60
|
+
var oh = Number(urlParams.get('oh'));
|
|
61
|
+
var ow = Number(urlParams.get('ow'));
|
|
62
|
+
var originalHeight = oh > 1 ? oh : 1000000;
|
|
63
|
+
var originalWidth = ow > 1 ? ow : 1000000;
|
|
64
|
+
cssVars['--original-width'] = originalWidth;
|
|
65
|
+
cssVars['--original-height'] = originalHeight;
|
|
66
|
+
}
|
|
67
|
+
return cssVars;
|
|
68
|
+
}
|
|
51
69
|
export var GalleryContainer = function (_a) {
|
|
52
70
|
var attachment = _a.attachment, _b = _a.Gallery, Gallery = _b === void 0 ? DefaultGallery : _b;
|
|
71
|
+
var imageElements = useRef([]);
|
|
72
|
+
var imageAttachmentSizeHandler = useChannelStateContext().imageAttachmentSizeHandler;
|
|
73
|
+
var _c = useState([]), attachmentConfigurations = _c[0], setAttachmentConfigurations = _c[1];
|
|
74
|
+
useLayoutEffect(function () {
|
|
75
|
+
if (imageElements.current &&
|
|
76
|
+
imageElements.current.every(function (element) { return !!element; }) &&
|
|
77
|
+
imageAttachmentSizeHandler) {
|
|
78
|
+
var newConfigurations_1 = [];
|
|
79
|
+
imageElements.current.forEach(function (element, i) {
|
|
80
|
+
var config = imageAttachmentSizeHandler(attachment.images[i], element);
|
|
81
|
+
newConfigurations_1.push(config);
|
|
82
|
+
});
|
|
83
|
+
setAttachmentConfigurations(newConfigurations_1);
|
|
84
|
+
}
|
|
85
|
+
}, [imageElements, imageAttachmentSizeHandler, attachment]);
|
|
86
|
+
var images = attachment.images.map(function (image, i) {
|
|
87
|
+
var _a, _b, _c;
|
|
88
|
+
return (__assign(__assign({}, image), { previewUrl: ((_a = attachmentConfigurations[i]) === null || _a === void 0 ? void 0 : _a.url) || 'about:blank', style: getCssDimensionsVariables(((_b = attachment.images[i]) === null || _b === void 0 ? void 0 : _b.image_url) || ((_c = attachment.images[i]) === null || _c === void 0 ? void 0 : _c.thumb_url) || '') }));
|
|
89
|
+
});
|
|
53
90
|
return (React.createElement(AttachmentWithinContainer, { attachment: attachment, componentType: 'gallery' },
|
|
54
|
-
React.createElement(Gallery, { images:
|
|
91
|
+
React.createElement(Gallery, { images: images || [], innerRefs: imageElements, key: 'gallery' })));
|
|
55
92
|
};
|
|
56
93
|
export var ImageContainer = function (props) {
|
|
57
94
|
var attachment = props.attachment, _a = props.Image, Image = _a === void 0 ? DefaultImage : _a;
|
|
58
95
|
var componentType = 'image';
|
|
96
|
+
var imageElement = useRef(null);
|
|
97
|
+
var imageAttachmentSizeHandler = useChannelStateContext().imageAttachmentSizeHandler;
|
|
98
|
+
var _b = useState(undefined), attachmentConfiguration = _b[0], setAttachmentConfiguration = _b[1];
|
|
99
|
+
useLayoutEffect(function () {
|
|
100
|
+
if (imageElement.current && imageAttachmentSizeHandler) {
|
|
101
|
+
var config = imageAttachmentSizeHandler(attachment, imageElement.current);
|
|
102
|
+
setAttachmentConfiguration(config);
|
|
103
|
+
}
|
|
104
|
+
}, [imageElement, imageAttachmentSizeHandler, attachment]);
|
|
105
|
+
var imageConfig = __assign(__assign({}, attachment), { previewUrl: (attachmentConfiguration === null || attachmentConfiguration === void 0 ? void 0 : attachmentConfiguration.url) || 'about:blank', style: getCssDimensionsVariables(attachment.image_url || attachment.thumb_url || '') });
|
|
59
106
|
if (attachment.actions && attachment.actions.length) {
|
|
60
107
|
return (React.createElement(AttachmentWithinContainer, { attachment: attachment, componentType: componentType },
|
|
61
108
|
React.createElement("div", { className: 'str-chat__attachment' },
|
|
62
|
-
React.createElement(Image, __assign({},
|
|
109
|
+
React.createElement(Image, __assign({}, imageConfig, { innerRef: imageElement })),
|
|
63
110
|
React.createElement(AttachmentActionsContainer, __assign({}, props)))));
|
|
64
111
|
}
|
|
65
112
|
return (React.createElement(AttachmentWithinContainer, { attachment: attachment, componentType: componentType },
|
|
66
|
-
React.createElement(Image, __assign({},
|
|
113
|
+
React.createElement(Image, __assign({}, imageConfig, { innerRef: imageElement }))));
|
|
67
114
|
};
|
|
68
115
|
export var CardContainer = function (props) {
|
|
69
116
|
var attachment = props.attachment, _a = props.Card, Card = _a === void 0 ? DefaultCard : _a;
|
|
@@ -94,14 +141,19 @@ export var MediaContainer = function (props) {
|
|
|
94
141
|
var _a;
|
|
95
142
|
var attachment = props.attachment, _b = props.Media, Media = _b === void 0 ? ReactPlayer : _b;
|
|
96
143
|
var componentType = 'media';
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
144
|
+
var _c = useChannelStateContext(), shouldGenerateVideoThumbnail = _c.shouldGenerateVideoThumbnail, videoAttachmentSizeHandler = _c.videoAttachmentSizeHandler;
|
|
145
|
+
var videoElement = useRef(null);
|
|
146
|
+
var _d = useState(), attachmentConfiguration = _d[0], setAttachmentConfiguration = _d[1];
|
|
147
|
+
useLayoutEffect(function () {
|
|
148
|
+
if (videoElement.current && videoAttachmentSizeHandler) {
|
|
149
|
+
var config = videoAttachmentSizeHandler(attachment, videoElement.current, shouldGenerateVideoThumbnail);
|
|
150
|
+
setAttachmentConfiguration(config);
|
|
151
|
+
}
|
|
152
|
+
}, [videoElement, videoAttachmentSizeHandler, attachment]);
|
|
153
|
+
var content = (React.createElement("div", { className: 'str-chat__player-wrapper', "data-testid": 'video-wrapper', ref: videoElement, style: getCssDimensionsVariables(attachment.thumb_url || '') },
|
|
154
|
+
React.createElement(Media, { className: 'react-player', config: { file: { attributes: { poster: attachmentConfiguration === null || attachmentConfiguration === void 0 ? void 0 : attachmentConfiguration.thumbUrl } } }, controls: true, height: '100%', url: attachmentConfiguration === null || attachmentConfiguration === void 0 ? void 0 : attachmentConfiguration.url, width: '100%' })));
|
|
155
|
+
return ((_a = attachment.actions) === null || _a === void 0 ? void 0 : _a.length) ? (React.createElement(AttachmentWithinContainer, { attachment: attachment, componentType: componentType },
|
|
156
|
+
React.createElement("div", { className: 'str-chat__attachment str-chat__attachment-media' },
|
|
157
|
+
content,
|
|
158
|
+
React.createElement(AttachmentActionsContainer, __assign({}, props))))) : (React.createElement(AttachmentWithinContainer, { attachment: attachment, componentType: componentType }, content));
|
|
107
159
|
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { Attachment } from 'stream-chat';
|
|
2
|
+
export declare const getImageAttachmentConfiguration: (attachment: Attachment, element: HTMLElement) => {
|
|
3
|
+
url: string;
|
|
4
|
+
};
|
|
5
|
+
export declare const getVideoAttachmentConfiguration: (attachment: Attachment, element: HTMLElement, shouldGenerateVideoThumbnail: boolean) => {
|
|
6
|
+
thumbUrl: string | undefined;
|
|
7
|
+
url: string;
|
|
8
|
+
};
|
|
9
|
+
//# sourceMappingURL=attachment-sizing.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attachment-sizing.d.ts","sourceRoot":"","sources":["../../../src/components/Attachment/attachment-sizing.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,eAAO,MAAM,+BAA+B,eAAgB,UAAU,WAAW,WAAW;;CAc3F,CAAC;AAEF,eAAO,MAAM,+BAA+B,eAC9B,UAAU,WACb,WAAW,gCACU,OAAO;;;CAoBtC,CAAC"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
export var getImageAttachmentConfiguration = function (attachment, element) {
|
|
2
|
+
var url = new URL((attachment.image_url || attachment.thumb_url || ''));
|
|
3
|
+
var resizeDimensions = getSizingRestrictions(url, element);
|
|
4
|
+
if (resizeDimensions) {
|
|
5
|
+
// Apply 2x for retina displays
|
|
6
|
+
resizeDimensions.height *= 2;
|
|
7
|
+
resizeDimensions.width *= 2;
|
|
8
|
+
addResizingParamsToUrl(resizeDimensions, url);
|
|
9
|
+
}
|
|
10
|
+
return {
|
|
11
|
+
url: url.href,
|
|
12
|
+
};
|
|
13
|
+
};
|
|
14
|
+
export var getVideoAttachmentConfiguration = function (attachment, element, shouldGenerateVideoThumbnail) {
|
|
15
|
+
var thumbUrl = undefined;
|
|
16
|
+
if (attachment.thumb_url && shouldGenerateVideoThumbnail) {
|
|
17
|
+
var url = new URL(attachment.thumb_url);
|
|
18
|
+
var resizeDimensions = getSizingRestrictions(url, element);
|
|
19
|
+
if (resizeDimensions) {
|
|
20
|
+
// Apply 2x for retina displays
|
|
21
|
+
resizeDimensions.height *= 2;
|
|
22
|
+
resizeDimensions.width *= 2;
|
|
23
|
+
addResizingParamsToUrl(resizeDimensions, url);
|
|
24
|
+
}
|
|
25
|
+
thumbUrl = url.href;
|
|
26
|
+
}
|
|
27
|
+
return {
|
|
28
|
+
thumbUrl: thumbUrl,
|
|
29
|
+
url: attachment.asset_url || '',
|
|
30
|
+
};
|
|
31
|
+
};
|
|
32
|
+
var getSizingRestrictions = function (url, htmlElement) {
|
|
33
|
+
var urlParams = url.searchParams;
|
|
34
|
+
var originalHeight = Number(urlParams.get('oh')) || 1;
|
|
35
|
+
var originalWidth = Number(urlParams.get('ow')) || 1;
|
|
36
|
+
var cssSizeRestriction = getCSSSizeRestrictions(htmlElement);
|
|
37
|
+
var resizeDimensions;
|
|
38
|
+
if ((cssSizeRestriction.maxHeight || cssSizeRestriction.height) && cssSizeRestriction.maxWidth) {
|
|
39
|
+
resizeDimensions = getResizeDimensions(originalHeight, originalWidth,
|
|
40
|
+
/* eslint-disable-next-line @typescript-eslint/no-non-null-assertion */
|
|
41
|
+
cssSizeRestriction.maxHeight || cssSizeRestriction.height, cssSizeRestriction.maxWidth);
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
resizeDimensions = undefined;
|
|
45
|
+
}
|
|
46
|
+
return resizeDimensions;
|
|
47
|
+
};
|
|
48
|
+
var getResizeDimensions = function (originalHeight, originalWidth, maxHeight, maxWidth) { return ({
|
|
49
|
+
height: Math.round(Math.max(maxHeight, (maxWidth / originalWidth) * originalHeight)),
|
|
50
|
+
width: Math.round(Math.max(maxHeight, (maxWidth / originalHeight) * originalWidth)),
|
|
51
|
+
}); };
|
|
52
|
+
var getCSSSizeRestrictions = function (htmlElement) {
|
|
53
|
+
var computedStylesheet = getComputedStyle(htmlElement);
|
|
54
|
+
var height = getValueRepresentationOfCSSProperty(computedStylesheet.getPropertyValue('height'));
|
|
55
|
+
var maxHeight = getValueRepresentationOfCSSProperty(computedStylesheet.getPropertyValue('max-height'));
|
|
56
|
+
var maxWidth = getValueRepresentationOfCSSProperty(computedStylesheet.getPropertyValue('max-width'));
|
|
57
|
+
if (!((height || maxHeight) && maxWidth)) {
|
|
58
|
+
console.warn("Invalid value set for height/max-height and/or max-width for HTML element, this can cause scrolling issues inside the message list, more info https://getstream.io/chat/docs/sdk/react/message-components/attachment/#image-and-video-sizing");
|
|
59
|
+
}
|
|
60
|
+
return { height: height, maxHeight: maxHeight, maxWidth: maxWidth };
|
|
61
|
+
};
|
|
62
|
+
var getValueRepresentationOfCSSProperty = function (property) {
|
|
63
|
+
if (!property.endsWith('px')) {
|
|
64
|
+
return undefined;
|
|
65
|
+
}
|
|
66
|
+
var number = parseFloat(property);
|
|
67
|
+
return isNaN(number) ? undefined : number;
|
|
68
|
+
};
|
|
69
|
+
var addResizingParamsToUrl = function (resizeDimensions, url) {
|
|
70
|
+
url.searchParams.set('h', resizeDimensions.height.toString());
|
|
71
|
+
url.searchParams.set('w', resizeDimensions.width.toString());
|
|
72
|
+
};
|
|
@@ -7,7 +7,7 @@ import { EmojiContextValue } from '../../context/EmojiContext';
|
|
|
7
7
|
import type { Data as EmojiMartData } from 'emoji-mart';
|
|
8
8
|
import type { MessageProps } from '../Message/types';
|
|
9
9
|
import type { MessageInputProps } from '../MessageInput/MessageInput';
|
|
10
|
-
import type { CustomTrigger, DefaultStreamChatGenerics, GiphyVersions } from '../../types/types';
|
|
10
|
+
import type { CustomTrigger, DefaultStreamChatGenerics, GiphyVersions, ImageAttachmentSizeHandler, VideoAttachmentSizeHandler } from '../../types/types';
|
|
11
11
|
export declare type ChannelProps<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics, V extends CustomTrigger = CustomTrigger> = {
|
|
12
12
|
/** List of accepted file types */
|
|
13
13
|
acceptedFiles?: string[];
|
|
@@ -61,6 +61,8 @@ export declare type ChannelProps<StreamChatGenerics extends DefaultStreamChatGen
|
|
|
61
61
|
giphyVersion?: GiphyVersions;
|
|
62
62
|
/** Custom UI component to render at the top of the `MessageList` */
|
|
63
63
|
HeaderComponent?: ComponentContextValue<StreamChatGenerics>['HeaderComponent'];
|
|
64
|
+
/** A custom function to provide size configuration for image attachments */
|
|
65
|
+
imageAttachmentSizeHandler?: ImageAttachmentSizeHandler;
|
|
64
66
|
/** Custom UI component handling how the message input is rendered, defaults to and accepts the same props as [MessageInputFlat](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageInput/MessageInputFlat.tsx) */
|
|
65
67
|
Input?: ComponentContextValue<StreamChatGenerics>['Input'];
|
|
66
68
|
/** Custom UI component to be shown if the channel query fails, defaults to and accepts same props as: [LoadingErrorIndicator](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Loading/LoadingErrorIndicator.tsx) */
|
|
@@ -109,6 +111,8 @@ export declare type ChannelProps<StreamChatGenerics extends DefaultStreamChatGen
|
|
|
109
111
|
ReactionsList?: ComponentContextValue<StreamChatGenerics>['ReactionsList'];
|
|
110
112
|
/** Custom UI component for send button, defaults to and accepts same props as: [SendButton](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageInput/icons.tsx) */
|
|
111
113
|
SendButton?: ComponentContextValue<StreamChatGenerics>['SendButton'];
|
|
114
|
+
/** You can turn on/off thumbnail generation for video attachments */
|
|
115
|
+
shouldGenerateVideoThumbnail?: boolean;
|
|
112
116
|
/** If true, skips the message data string comparison used to memoize the current channel messages (helpful for channels with 1000s of messages) */
|
|
113
117
|
skipMessageDataMemoization?: boolean;
|
|
114
118
|
/** Custom UI component that displays thread's parent or other message at the top of the `MessageList`, defaults to and accepts same props as [MessageSimple](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Message/MessageSimple.tsx) */
|
|
@@ -121,6 +125,8 @@ export declare type ChannelProps<StreamChatGenerics extends DefaultStreamChatGen
|
|
|
121
125
|
TriggerProvider?: ComponentContextValue<StreamChatGenerics>['TriggerProvider'];
|
|
122
126
|
/** Custom UI component for the typing indicator, defaults to and accepts same props as: [TypingIndicator](https://github.com/GetStream/stream-chat-react/blob/master/src/components/TypingIndicator/TypingIndicator.tsx) */
|
|
123
127
|
TypingIndicator?: ComponentContextValue<StreamChatGenerics>['TypingIndicator'];
|
|
128
|
+
/** A custom function to provide size configuration for video attachments */
|
|
129
|
+
videoAttachmentSizeHandler?: VideoAttachmentSizeHandler;
|
|
124
130
|
/** Custom UI component to display a message in the `VirtualizedMessageList`, does not have a default implementation */
|
|
125
131
|
VirtualMessage?: ComponentContextValue<StreamChatGenerics>['VirtualMessage'];
|
|
126
132
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Channel.d.ts","sourceRoot":"","sources":["../../../src/components/Channel/Channel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EACZ,iBAAiB,EAOlB,MAAM,OAAO,CAAC;AAIf,OAAO,EAKL,OAAO,EACP,eAAe,EAEf,OAAO,IAAI,aAAa,EACxB,UAAU,EACV,cAAc,EAEf,MAAM,aAAa,CAAC;AAUrB,OAAO,EAAE,eAAe,EAAuB,MAAM,6BAA6B,CAAC;AAGnF,OAAO,EAEL,0BAA0B,EAC3B,MAAM,YAAY,CAAC;AAepB,OAAO,EAAE,qBAAqB,EAAqB,MAAM,gCAAgC,CAAC;AAE1F,OAAO,EAAe,iBAAiB,EAAiB,MAAM,4BAA4B,CAAC;AAc3F,OAAO,KAAK,EAAE,IAAI,IAAI,aAAa,EAAE,MAAM,YAAY,CAAC;AAExD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEtE,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"Channel.d.ts","sourceRoot":"","sources":["../../../src/components/Channel/Channel.tsx"],"names":[],"mappings":"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"}
|
|
@@ -86,6 +86,7 @@ import { hasMoreMessagesProbably, hasNotMoreMessages } from '../MessageList/util
|
|
|
86
86
|
import defaultEmojiData from '../../stream-emoji.json';
|
|
87
87
|
import { makeAddNotifications } from './utils';
|
|
88
88
|
import { useChannelContainerClasses } from './hooks/useChannelContainerClasses';
|
|
89
|
+
import { getImageAttachmentConfiguration, getVideoAttachmentConfiguration, } from '../Attachment/attachment-sizing';
|
|
89
90
|
var UnMemoizedChannel = function (props) {
|
|
90
91
|
var propsChannel = props.channel, _a = props.EmptyPlaceholder, EmptyPlaceholder = _a === void 0 ? null : _a, LoadingErrorIndicator = props.LoadingErrorIndicator, _b = props.LoadingIndicator, LoadingIndicator = _b === void 0 ? DefaultLoadingIndicator : _b;
|
|
91
92
|
var _c = useChatContext('Channel'), contextChannel = _c.channel, channelsQueryState = _c.channelsQueryState, customClasses = _c.customClasses, theme = _c.theme;
|
|
@@ -572,7 +573,7 @@ var ChannelInner = function (props) {
|
|
|
572
573
|
var onMentionsHoverOrClick = useMentionsHandlers(onMentionsHover, onMentionsClick);
|
|
573
574
|
var editMessage = useEditMessageHandler(doUpdateMessageRequest);
|
|
574
575
|
var typing = state.typing, restState = __rest(state, ["typing"]);
|
|
575
|
-
var channelStateContextValue = useCreateChannelStateContext(__assign(__assign({}, restState), { acceptedFiles: acceptedFiles, channel: channel, channelCapabilitiesArray: channelCapabilitiesArray, channelConfig: channelConfig, dragAndDropWindow: dragAndDropWindow, giphyVersion: props.giphyVersion || 'fixed_height', maxNumberOfFiles: maxNumberOfFiles, multipleUploads: multipleUploads, mutes: mutes, notifications: notifications, quotedMessage: quotedMessage, watcher_count: state.watcherCount }));
|
|
576
|
+
var channelStateContextValue = useCreateChannelStateContext(__assign(__assign({}, restState), { acceptedFiles: acceptedFiles, channel: channel, channelCapabilitiesArray: channelCapabilitiesArray, channelConfig: channelConfig, dragAndDropWindow: dragAndDropWindow, giphyVersion: props.giphyVersion || 'fixed_height', imageAttachmentSizeHandler: props.imageAttachmentSizeHandler || getImageAttachmentConfiguration, maxNumberOfFiles: maxNumberOfFiles, multipleUploads: multipleUploads, mutes: mutes, notifications: notifications, quotedMessage: quotedMessage, shouldGenerateVideoThumbnail: props.shouldGenerateVideoThumbnail || true, videoAttachmentSizeHandler: props.videoAttachmentSizeHandler || getVideoAttachmentConfiguration, watcher_count: state.watcherCount }));
|
|
576
577
|
var channelActionContextValue = useMemo(function () { return ({
|
|
577
578
|
addNotification: addNotification,
|
|
578
579
|
closeThread: closeThread,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCreateChannelStateContext.d.ts","sourceRoot":"","sources":["../../../../src/components/Channel/hooks/useCreateChannelStateContext.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AAErF,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAEtE,eAAO,MAAM,4BAA4B;8BAIX,MAAM,EAAE;;
|
|
1
|
+
{"version":3,"file":"useCreateChannelStateContext.d.ts","sourceRoot":"","sources":["../../../../src/components/Channel/hooks/useCreateChannelStateContext.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AAErF,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAEtE,eAAO,MAAM,4BAA4B;8BAIX,MAAM,EAAE;;kDAkJrC,CAAC"}
|
|
@@ -2,7 +2,7 @@ import { useMemo } from 'react';
|
|
|
2
2
|
import { isDate, isDayOrMoment } from '../../../context/TranslationContext';
|
|
3
3
|
export var useCreateChannelStateContext = function (value) {
|
|
4
4
|
var _a;
|
|
5
|
-
var acceptedFiles = value.acceptedFiles, channel = value.channel, _b = value.channelCapabilitiesArray, channelCapabilitiesArray = _b === void 0 ? [] : _b, channelConfig = value.channelConfig, dragAndDropWindow = value.dragAndDropWindow, giphyVersion = value.giphyVersion, error = value.error, hasMore = value.hasMore, hasMoreNewer = value.hasMoreNewer, suppressAutoscroll = value.suppressAutoscroll, highlightedMessageId = value.highlightedMessageId, loading = value.loading, loadingMore = value.loadingMore, maxNumberOfFiles = value.maxNumberOfFiles, members = value.members, _c = value.messages, messages = _c === void 0 ? [] : _c, multipleUploads = value.multipleUploads, mutes = value.mutes, notifications = value.notifications, pinnedMessages = value.pinnedMessages, quotedMessage = value.quotedMessage, _d = value.read, read = _d === void 0 ? {} : _d, skipMessageDataMemoization = value.skipMessageDataMemoization, thread = value.thread, threadHasMore = value.threadHasMore, threadLoadingMore = value.threadLoadingMore, _e = value.threadMessages, threadMessages = _e === void 0 ? [] : _e, watcherCount = value.watcherCount, watcher_count = value.watcher_count, watchers = value.watchers;
|
|
5
|
+
var acceptedFiles = value.acceptedFiles, channel = value.channel, _b = value.channelCapabilitiesArray, channelCapabilitiesArray = _b === void 0 ? [] : _b, channelConfig = value.channelConfig, dragAndDropWindow = value.dragAndDropWindow, giphyVersion = value.giphyVersion, error = value.error, hasMore = value.hasMore, hasMoreNewer = value.hasMoreNewer, imageAttachmentSizeHandler = value.imageAttachmentSizeHandler, suppressAutoscroll = value.suppressAutoscroll, highlightedMessageId = value.highlightedMessageId, loading = value.loading, loadingMore = value.loadingMore, maxNumberOfFiles = value.maxNumberOfFiles, members = value.members, _c = value.messages, messages = _c === void 0 ? [] : _c, multipleUploads = value.multipleUploads, mutes = value.mutes, notifications = value.notifications, pinnedMessages = value.pinnedMessages, quotedMessage = value.quotedMessage, _d = value.read, read = _d === void 0 ? {} : _d, shouldGenerateVideoThumbnail = value.shouldGenerateVideoThumbnail, skipMessageDataMemoization = value.skipMessageDataMemoization, thread = value.thread, threadHasMore = value.threadHasMore, threadLoadingMore = value.threadLoadingMore, _e = value.threadMessages, threadMessages = _e === void 0 ? [] : _e, videoAttachmentSizeHandler = value.videoAttachmentSizeHandler, watcherCount = value.watcherCount, watcher_count = value.watcher_count, watchers = value.watchers;
|
|
6
6
|
var channelId = channel.cid;
|
|
7
7
|
var lastRead = channel.initialized && ((_a = channel.lastRead()) === null || _a === void 0 ? void 0 : _a.getTime());
|
|
8
8
|
var membersLength = Object.keys(members || []).length;
|
|
@@ -53,6 +53,7 @@ export var useCreateChannelStateContext = function (value) {
|
|
|
53
53
|
hasMore: hasMore,
|
|
54
54
|
hasMoreNewer: hasMoreNewer,
|
|
55
55
|
highlightedMessageId: highlightedMessageId,
|
|
56
|
+
imageAttachmentSizeHandler: imageAttachmentSizeHandler,
|
|
56
57
|
loading: loading,
|
|
57
58
|
loadingMore: loadingMore,
|
|
58
59
|
maxNumberOfFiles: maxNumberOfFiles,
|
|
@@ -64,11 +65,13 @@ export var useCreateChannelStateContext = function (value) {
|
|
|
64
65
|
pinnedMessages: pinnedMessages,
|
|
65
66
|
quotedMessage: quotedMessage,
|
|
66
67
|
read: read,
|
|
68
|
+
shouldGenerateVideoThumbnail: shouldGenerateVideoThumbnail,
|
|
67
69
|
suppressAutoscroll: suppressAutoscroll,
|
|
68
70
|
thread: thread,
|
|
69
71
|
threadHasMore: threadHasMore,
|
|
70
72
|
threadLoadingMore: threadLoadingMore,
|
|
71
73
|
threadMessages: threadMessages,
|
|
74
|
+
videoAttachmentSizeHandler: videoAttachmentSizeHandler,
|
|
72
75
|
watcher_count: watcher_count,
|
|
73
76
|
watcherCount: watcherCount,
|
|
74
77
|
watchers: watchers,
|
|
@@ -88,6 +91,7 @@ export var useCreateChannelStateContext = function (value) {
|
|
|
88
91
|
quotedMessage,
|
|
89
92
|
readUsersLength,
|
|
90
93
|
readUsersLastReads,
|
|
94
|
+
shouldGenerateVideoThumbnail,
|
|
91
95
|
skipMessageDataMemoization,
|
|
92
96
|
suppressAutoscroll,
|
|
93
97
|
thread,
|
|
@@ -15,8 +15,6 @@ export declare type ChannelPreviewUIComponentProps<StreamChatGenerics extends De
|
|
|
15
15
|
lastMessage?: StreamMessage<StreamChatGenerics>;
|
|
16
16
|
/** Latest message preview to display, will be a string or JSX element supporting markdown. */
|
|
17
17
|
latestMessage?: string | JSX.Element;
|
|
18
|
-
/** Custom ChannelPreview click handler function */
|
|
19
|
-
onSelect?: (event: React.MouseEvent) => void;
|
|
20
18
|
/** Number of unread Messages */
|
|
21
19
|
unread?: number;
|
|
22
20
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChannelPreview.d.ts","sourceRoot":"","sources":["../../../src/components/ChannelPreview/ChannelPreview.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2C,MAAM,OAAO,CAAC;AAOhE,OAAO,EAAE,gBAAgB,EAAkB,MAAM,2BAA2B,CAAC;AAG7E,OAAO,KAAK,EAAE,OAAO,EAAS,MAAM,aAAa,CAAC;AAElD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAEvE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAEnE,oBAAY,8BAA8B,CACxC,kBAAkB,SAAS,yBAAyB,GAAG,yBAAyB,IAC9E,mBAAmB,CAAC,kBAAkB,CAAC,GAAG;IAC5C,kEAAkE;IAClE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,kCAAkC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kCAAkC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,6CAA6C;IAC7C,WAAW,CAAC,EAAE,aAAa,CAAC,kBAAkB,CAAC,CAAC;IAChD,8FAA8F;IAC9F,aAAa,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC;IACrC,
|
|
1
|
+
{"version":3,"file":"ChannelPreview.d.ts","sourceRoot":"","sources":["../../../src/components/ChannelPreview/ChannelPreview.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2C,MAAM,OAAO,CAAC;AAOhE,OAAO,EAAE,gBAAgB,EAAkB,MAAM,2BAA2B,CAAC;AAG7E,OAAO,KAAK,EAAE,OAAO,EAAS,MAAM,aAAa,CAAC;AAElD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAEvE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAEnE,oBAAY,8BAA8B,CACxC,kBAAkB,SAAS,yBAAyB,GAAG,yBAAyB,IAC9E,mBAAmB,CAAC,kBAAkB,CAAC,GAAG;IAC5C,kEAAkE;IAClE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,kCAAkC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kCAAkC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,6CAA6C;IAC7C,WAAW,CAAC,EAAE,aAAa,CAAC,kBAAkB,CAAC,CAAC;IAChD,8FAA8F;IAC9F,aAAa,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC;IACrC,gCAAgC;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,oBAAY,mBAAmB,CAC7B,kBAAkB,SAAS,yBAAyB,GAAG,yBAAyB,IAC9E;IACF,6MAA6M;IAC7M,OAAO,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACrC,sCAAsC;IACtC,aAAa,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC5C,+LAA+L;IAC/L,MAAM,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;IAC1C,+DAA+D;IAC/D,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,mDAAmD;IACnD,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;IAC7C,6PAA6P;IAC7P,OAAO,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,8BAA8B,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAClF,kCAAkC;IAClC,gBAAgB,CAAC,EAAE,gBAAgB,CAAC,kBAAkB,CAAC,CAAC,kBAAkB,CAAC,CAAC;IAC5E,2CAA2C;IAC3C,QAAQ,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAChD,CAAC;AAEF,eAAO,MAAM,cAAc,0JAyE1B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/ChannelPreview/hooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { useChannelPreviewInfo } from './useChannelPreviewInfo';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ChannelPreview/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ChannelPreview/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC"}
|
|
@@ -1,10 +1,15 @@
|
|
|
1
|
+
import { CSSProperties, MutableRefObject } from 'react';
|
|
1
2
|
import type { Attachment } from 'stream-chat';
|
|
2
3
|
import type { DefaultStreamChatGenerics } from '../../types/types';
|
|
3
4
|
export declare type GalleryProps<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = {
|
|
4
|
-
images: {
|
|
5
|
+
images: (({
|
|
5
6
|
image_url?: string | undefined;
|
|
6
7
|
thumb_url?: string | undefined;
|
|
7
|
-
}
|
|
8
|
+
} | Attachment<StreamChatGenerics>) & {
|
|
9
|
+
previewUrl?: string;
|
|
10
|
+
style?: CSSProperties;
|
|
11
|
+
})[];
|
|
12
|
+
innerRefs?: MutableRefObject<(HTMLElement | null)[]>;
|
|
8
13
|
};
|
|
9
14
|
/**
|
|
10
15
|
* Displays images in a simple responsive grid with a light box to view the images.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Gallery.d.ts","sourceRoot":"","sources":["../../../src/components/Gallery/Gallery.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Gallery.d.ts","sourceRoot":"","sources":["../../../src/components/Gallery/Gallery.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,aAAa,EAAE,gBAAgB,EAAY,MAAM,OAAO,CAAC;AASzE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAEnE,oBAAY,YAAY,CACtB,kBAAkB,SAAS,yBAAyB,GAAG,yBAAyB,IAC9E;IACF,MAAM,EAAE,CAAC,CACL;QACE,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QAC/B,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;KAChC,GACD,UAAU,CAAC,kBAAkB,CAAC,CACjC,GAAG;QAAE,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,aAAa,CAAA;KAAE,CAAC,EAAE,CAAC;IACtD,SAAS,CAAC,EAAE,gBAAgB,CAAC,CAAC,WAAW,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;CACtD,CAAC;AAkFF;;GAEG;AACH,eAAO,MAAM,OAAO,4IAA4D,CAAC"}
|
|
@@ -1,3 +1,14 @@
|
|
|
1
|
+
var __assign = (this && this.__assign) || function () {
|
|
2
|
+
__assign = Object.assign || function(t) {
|
|
3
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
+
s = arguments[i];
|
|
5
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
+
t[p] = s[p];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
return __assign.apply(this, arguments);
|
|
11
|
+
};
|
|
1
12
|
import React, { useState } from 'react';
|
|
2
13
|
import clsx from 'clsx';
|
|
3
14
|
import { Modal } from '../Modal';
|
|
@@ -5,7 +16,7 @@ import { ModalGallery as DefaultModalGallery } from './ModalGallery';
|
|
|
5
16
|
import { useComponentContext } from '../../context/ComponentContext';
|
|
6
17
|
import { useTranslationContext } from '../../context/TranslationContext';
|
|
7
18
|
var UnMemoizedGallery = function (props) {
|
|
8
|
-
var images = props.images;
|
|
19
|
+
var images = props.images, innerRefs = props.innerRefs;
|
|
9
20
|
var _a = useState(0), index = _a[0], setIndex = _a[1];
|
|
10
21
|
var _b = useState(false), modalOpen = _b[0], setModalOpen = _b[1];
|
|
11
22
|
var _c = useComponentContext('Gallery').ModalGallery, ModalGallery = _c === void 0 ? DefaultModalGallery : _c;
|
|
@@ -22,13 +33,13 @@ var UnMemoizedGallery = function (props) {
|
|
|
22
33
|
}
|
|
23
34
|
};
|
|
24
35
|
var renderImages = images.slice(0, countImagesDisplayedInPreview).map(function (image, i) {
|
|
25
|
-
return i === lastImageIndexInPreview && images.length > countImagesDisplayedInPreview ? (React.createElement("button", { className: 'str-chat__gallery-placeholder', key: "gallery-image-".concat(i), onClick: function () { return toggleModal(i); }, style: {
|
|
26
|
-
|
|
27
|
-
|
|
36
|
+
return i === lastImageIndexInPreview && images.length > countImagesDisplayedInPreview ? (React.createElement("button", __assign({ className: 'str-chat__gallery-placeholder', "data-testid": 'gallery-image-last', key: "gallery-image-".concat(i), onClick: function () { return toggleModal(i); }, style: __assign({ backgroundImage: "url(".concat(images[lastImageIndexInPreview].previewUrl ||
|
|
37
|
+
images[lastImageIndexInPreview].image_url ||
|
|
38
|
+
images[lastImageIndexInPreview].thumb_url, ")") }, image.style) }, ((innerRefs === null || innerRefs === void 0 ? void 0 : innerRefs.current) && { ref: function (r) { return (innerRefs.current[i] = r); } })),
|
|
28
39
|
React.createElement("p", null, t('{{ imageCount }} more', {
|
|
29
40
|
imageCount: images.length - countImagesDisplayedInPreview,
|
|
30
41
|
})))) : (React.createElement("button", { className: 'str-chat__gallery-image', "data-testid": 'gallery-image', key: "gallery-image-".concat(i), onClick: function () { return toggleModal(i); } },
|
|
31
|
-
React.createElement("img", { alt: 'User uploaded content', src: image.image_url || image.thumb_url })));
|
|
42
|
+
React.createElement("img", __assign({ alt: 'User uploaded content', src: image.previewUrl || image.image_url || image.thumb_url, style: image.style }, ((innerRefs === null || innerRefs === void 0 ? void 0 : innerRefs.current) && { ref: function (r) { return (innerRefs.current[i] = r); } })))));
|
|
32
43
|
});
|
|
33
44
|
var className = clsx('str-chat__gallery', {
|
|
34
45
|
'str-chat__gallery--square': images.length > lastImageIndexInPreview,
|
|
@@ -1,7 +1,11 @@
|
|
|
1
|
+
import { CSSProperties, MutableRefObject } from 'react';
|
|
1
2
|
import type { Attachment } from 'stream-chat';
|
|
2
3
|
import type { DefaultStreamChatGenerics, Dimensions } from '../../types/types';
|
|
3
4
|
export declare type ImageProps<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = {
|
|
4
5
|
dimensions?: Dimensions;
|
|
6
|
+
innerRef?: MutableRefObject<HTMLImageElement | null>;
|
|
7
|
+
previewUrl?: string;
|
|
8
|
+
style?: CSSProperties;
|
|
5
9
|
} & ({
|
|
6
10
|
/** The text fallback for the image */
|
|
7
11
|
fallback?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Image.d.ts","sourceRoot":"","sources":["../../../src/components/Gallery/Image.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Image.d.ts","sourceRoot":"","sources":["../../../src/components/Gallery/Image.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,aAAa,EAAE,gBAAgB,EAAY,MAAM,OAAO,CAAC;AAOzE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,KAAK,EAAE,yBAAyB,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/E,oBAAY,UAAU,CACpB,kBAAkB,SAAS,yBAAyB,GAAG,yBAAyB,IAC9E;IACF,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,QAAQ,CAAC,EAAE,gBAAgB,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC;IACrD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB,GAAG,CACA;IACE,sCAAsC;IACtC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8BAA8B;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oBAAoB;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GACD,UAAU,CAAC,kBAAkB,CAAC,CACjC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc,0IAgC1B,CAAC"}
|
|
@@ -18,13 +18,13 @@ import { useComponentContext } from '../../context';
|
|
|
18
18
|
* A simple component that displays an image.
|
|
19
19
|
*/
|
|
20
20
|
export var ImageComponent = function (props) {
|
|
21
|
-
var _a = props.dimensions, dimensions = _a === void 0 ? {} : _a, fallback = props.fallback, image_url = props.image_url, thumb_url = props.thumb_url;
|
|
21
|
+
var _a = props.dimensions, dimensions = _a === void 0 ? {} : _a, fallback = props.fallback, image_url = props.image_url, thumb_url = props.thumb_url, innerRef = props.innerRef, previewUrl = props.previewUrl, style = props.style;
|
|
22
22
|
var _b = useState(false), modalIsOpen = _b[0], setModalIsOpen = _b[1];
|
|
23
23
|
var _c = useComponentContext('ImageComponent').ModalGallery, ModalGallery = _c === void 0 ? DefaultModalGallery : _c;
|
|
24
|
-
var imageSrc = sanitizeUrl(image_url || thumb_url);
|
|
24
|
+
var imageSrc = sanitizeUrl(previewUrl || image_url || thumb_url);
|
|
25
25
|
var toggleModal = function () { return setModalIsOpen(function (modalIsOpen) { return !modalIsOpen; }); };
|
|
26
26
|
return (React.createElement(React.Fragment, null,
|
|
27
|
-
React.createElement("img", __assign({ alt: fallback, className: 'str-chat__message-attachment--img', "data-testid": 'image-test', onClick: toggleModal, src: imageSrc, tabIndex: 0 }, dimensions)),
|
|
27
|
+
React.createElement("img", __assign({ alt: fallback, className: 'str-chat__message-attachment--img', "data-testid": 'image-test', onClick: toggleModal, src: imageSrc, style: style, tabIndex: 0 }, dimensions, (innerRef && { ref: innerRef }))),
|
|
28
28
|
React.createElement(Modal, { onClose: toggleModal, open: modalIsOpen },
|
|
29
29
|
React.createElement(ModalGallery, { images: [props], index: 0 }))));
|
|
30
30
|
};
|
|
@@ -3,10 +3,13 @@ import { LoadMoreButtonProps } from './LoadMoreButton';
|
|
|
3
3
|
export declare type LoadMorePaginatorProps = {
|
|
4
4
|
/** callback to load the next page */
|
|
5
5
|
loadNextPage: () => void;
|
|
6
|
+
/** Boolean for if there is a next page to load */
|
|
6
7
|
hasNextPage?: boolean;
|
|
8
|
+
/** A UI button component that handles pagination logic */
|
|
7
9
|
LoadMoreButton?: React.ComponentType<LoadMoreButtonProps>;
|
|
8
|
-
/** indicates if there
|
|
10
|
+
/** indicates if there's currently any refreshing taking place */
|
|
9
11
|
refreshing?: boolean;
|
|
12
|
+
/** indicates if the `LoadMoreButton` should be displayed at the top of the list of channels instead of the bottom of the list (the default) */
|
|
10
13
|
reverse?: boolean;
|
|
11
14
|
};
|
|
12
15
|
export declare const UnMemoizedLoadMorePaginator: (props: PropsWithChildren<LoadMorePaginatorProps>) => JSX.Element;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoadMorePaginator.d.ts","sourceRoot":"","sources":["../../../src/components/LoadMore/LoadMorePaginator.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAEjD,OAAO,EAA2C,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAEhG,oBAAY,sBAAsB,GAAG;IACnC,qCAAqC;IACrC,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC;IAC1D,
|
|
1
|
+
{"version":3,"file":"LoadMorePaginator.d.ts","sourceRoot":"","sources":["../../../src/components/LoadMore/LoadMorePaginator.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAEjD,OAAO,EAA2C,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAEhG,oBAAY,sBAAsB,GAAG;IACnC,qCAAqC;IACrC,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,kDAAkD;IAClD,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,0DAA0D;IAC1D,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC;IAC1D,iEAAiE;IACjE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,+IAA+I;IAC/I,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,2BAA2B,UAAW,kBAAkB,sBAAsB,CAAC,gBAiB3F,CAAC;AAEF,eAAO,MAAM,iBAAiB,UAnBqB,kBAAkB,sBAAsB,CAAC,gBAqBrD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePinHandler.d.ts","sourceRoot":"","sources":["../../../../src/components/Message/hooks/usePinHandler.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAA0B,MAAM,sCAAsC,CAAC;AAI7F,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAElD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAGtE,oBAAY,mBAAmB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,GAAG;IACzF,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AAGF,oBAAY,cAAc,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,CAAC,SAAS,MAAM,GAAG,MAAM,IAAI,OAAO,CACxF,MAAM,CAAC,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAClC,GAAG;IACF,QAAQ,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC;IAClC,MAAM,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC;IAChC,UAAU,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC;IACpC,SAAS,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC;IACnC,IAAI,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC;CAC/B,CAAC;AAEF,oBAAY,uBAAuB,CACjC,kBAAkB,SAAS,yBAAyB,GAAG,yBAAyB,IAC9E;IACF,oBAAoB,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC,kBAAkB,CAAC,KAAK,MAAM,CAAC;IAC9E,MAAM,CAAC,EAAE,CAAC,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,OAAO,KAAK,IAAI,CAAC;CACxE,CAAC;AAEF,eAAO,MAAM,aAAa,gJAKV,cAAc;;;
|
|
1
|
+
{"version":3,"file":"usePinHandler.d.ts","sourceRoot":"","sources":["../../../../src/components/Message/hooks/usePinHandler.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAA0B,MAAM,sCAAsC,CAAC;AAI7F,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAElD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAGtE,oBAAY,mBAAmB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,GAAG;IACzF,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AAGF,oBAAY,cAAc,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,CAAC,SAAS,MAAM,GAAG,MAAM,IAAI,OAAO,CACxF,MAAM,CAAC,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAClC,GAAG;IACF,QAAQ,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC;IAClC,MAAM,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC;IAChC,UAAU,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC;IACpC,SAAS,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC;IACnC,IAAI,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC;CAC/B,CAAC;AAEF,oBAAY,uBAAuB,CACjC,kBAAkB,SAAS,yBAAyB,GAAG,yBAAyB,IAC9E;IACF,oBAAoB,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC,kBAAkB,CAAC,KAAK,MAAM,CAAC;IAC9E,MAAM,CAAC,EAAE,CAAC,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,OAAO,KAAK,IAAI,CAAC;CACxE,CAAC;AAEF,eAAO,MAAM,aAAa,gJAKV,cAAc;;;CA4D7B,CAAC"}
|
|
@@ -63,7 +63,7 @@ notifications) {
|
|
|
63
63
|
var t = useTranslationContext('usePinHandler').t;
|
|
64
64
|
var canPin = !!channelCapabilities['pin-message'];
|
|
65
65
|
var handlePin = function (event) { return __awaiter(void 0, void 0, void 0, function () {
|
|
66
|
-
var optimisticMessage,
|
|
66
|
+
var optimisticMessage, e_1, errorMessage, optimisticMessage, e_2, errorMessage;
|
|
67
67
|
return __generator(this, function (_a) {
|
|
68
68
|
switch (_a.label) {
|
|
69
69
|
case 0:
|
|
@@ -78,8 +78,7 @@ notifications) {
|
|
|
78
78
|
updateMessage(optimisticMessage);
|
|
79
79
|
return [4 /*yield*/, client.pinMessage(message)];
|
|
80
80
|
case 2:
|
|
81
|
-
|
|
82
|
-
updateMessage(messageResponse.message);
|
|
81
|
+
_a.sent();
|
|
83
82
|
return [3 /*break*/, 4];
|
|
84
83
|
case 3:
|
|
85
84
|
e_1 = _a.sent();
|
|
@@ -95,8 +94,7 @@ notifications) {
|
|
|
95
94
|
updateMessage(optimisticMessage);
|
|
96
95
|
return [4 /*yield*/, client.unpinMessage(message)];
|
|
97
96
|
case 6:
|
|
98
|
-
|
|
99
|
-
updateMessage(messageResponse.message);
|
|
97
|
+
_a.sent();
|
|
100
98
|
return [3 /*break*/, 8];
|
|
101
99
|
case 7:
|
|
102
100
|
e_2 = _a.sent();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useFileUploads.d.ts","sourceRoot":"","sources":["../../../../src/components/MessageInput/hooks/useFileUploads.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3F,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEzD,OAAO,KAAK,EAAE,aAAa,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAErF,eAAO,MAAM,cAAc;qBAoBW,MAAM;qBAJN,MAAM;
|
|
1
|
+
{"version":3,"file":"useFileUploads.d.ts","sourceRoot":"","sources":["../../../../src/components/MessageInput/hooks/useFileUploads.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3F,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEzD,OAAO,KAAK,EAAE,aAAa,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAErF,eAAO,MAAM,cAAc;qBAoBW,MAAM;qBAJN,MAAM;CAkF3C,CAAC"}
|