stream-chat-react 10.4.0 → 10.4.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.
@@ -13588,424 +13588,6 @@ var StreamChatReact = (function (exports, React$2, streamChat, ReactDOM) {
13588
13588
  });
13589
13589
  };
13590
13590
 
13591
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var AttachmentWithinContainer = function (_a) {
13592
- var _b;
13593
- var _c;
13594
- var attachment = _a.attachment, children = _a.children, componentType = _a.componentType;
13595
- var isGAT = isGalleryAttachmentType(attachment);
13596
- var extra = '';
13597
- if (!isGAT) {
13598
- extra =
13599
- componentType === 'card' && !(attachment === null || attachment === void 0 ? void 0 : attachment.image_url) && !(attachment === null || attachment === void 0 ? void 0 : attachment.thumb_url)
13600
- ? 'no-image'
13601
- : ((_c = attachment === null || attachment === void 0 ? void 0 : attachment.actions) === null || _c === void 0 ? void 0 : _c.length)
13602
- ? 'actions'
13603
- : '';
13604
- }
13605
- var classNames = clsx('str-chat__message-attachment str-chat__message-attachment-dynamic-size', (_b = {},
13606
- _b["str-chat__message-attachment--".concat(componentType)] = componentType,
13607
- _b["str-chat__message-attachment--".concat(attachment === null || attachment === void 0 ? void 0 : attachment.type)] = attachment === null || attachment === void 0 ? void 0 : attachment.type,
13608
- _b["str-chat__message-attachment--".concat(componentType, "--").concat(extra)] = componentType && extra,
13609
- _b['str-chat__message-attachment--svg-image'] = isSvgAttachment(attachment),
13610
- _b['str-chat__message-attachment-with-actions'] = extra === 'actions',
13611
- _b));
13612
- return React__default["default"].createElement("div", { className: classNames }, children);
13613
- };
13614
- var AttachmentActionsContainer = function (_a) {
13615
- var _b;
13616
- var actionHandler = _a.actionHandler, attachment = _a.attachment, _c = _a.AttachmentActions, AttachmentActions$1 = _c === void 0 ? AttachmentActions : _c;
13617
- if (!((_b = attachment.actions) === null || _b === void 0 ? void 0 : _b.length))
13618
- return null;
13619
- return (React__default["default"].createElement(AttachmentActions$1, __assign$8({}, attachment, { actionHandler: actionHandler, actions: attachment.actions, id: attachment.id || '', text: attachment.text || '' })));
13620
- };
13621
- function getCssDimensionsVariables(url) {
13622
- var _a;
13623
- var cssVars = (_a = {},
13624
- _a['--original-height'] = 1000000,
13625
- _a['--original-width'] = 1000000,
13626
- _a);
13627
- if (url) {
13628
- var urlParams = new URL(url).searchParams;
13629
- var oh = Number(urlParams.get('oh'));
13630
- var ow = Number(urlParams.get('ow'));
13631
- var originalHeight = oh > 1 ? oh : 1000000;
13632
- var originalWidth = ow > 1 ? ow : 1000000;
13633
- cssVars['--original-width'] = originalWidth;
13634
- cssVars['--original-height'] = originalHeight;
13635
- }
13636
- return cssVars;
13637
- }
13638
- var GalleryContainer = function (_a) {
13639
- var attachment = _a.attachment, _b = _a.Gallery, Gallery$1 = _b === void 0 ? Gallery : _b;
13640
- var imageElements = React$2.useRef([]);
13641
- var imageAttachmentSizeHandler = useChannelStateContext().imageAttachmentSizeHandler;
13642
- var _c = React$2.useState([]), attachmentConfigurations = _c[0], setAttachmentConfigurations = _c[1];
13643
- React$2.useLayoutEffect(function () {
13644
- if (imageElements.current &&
13645
- imageElements.current.every(function (element) { return !!element; }) &&
13646
- imageAttachmentSizeHandler) {
13647
- var newConfigurations_1 = [];
13648
- imageElements.current.forEach(function (element, i) {
13649
- var config = imageAttachmentSizeHandler(attachment.images[i], element);
13650
- newConfigurations_1.push(config);
13651
- });
13652
- setAttachmentConfigurations(newConfigurations_1);
13653
- }
13654
- }, [imageElements, imageAttachmentSizeHandler, attachment]);
13655
- var images = attachment.images.map(function (image, i) {
13656
- var _a, _b, _c;
13657
- return (__assign$8(__assign$8({}, 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) || '') }));
13658
- });
13659
- return (React__default["default"].createElement(AttachmentWithinContainer, { attachment: attachment, componentType: 'gallery' },
13660
- React__default["default"].createElement(Gallery$1, { images: images || [], innerRefs: imageElements, key: 'gallery' })));
13661
- };
13662
- var ImageContainer = function (props) {
13663
- var attachment = props.attachment, _a = props.Image, Image = _a === void 0 ? ImageComponent : _a;
13664
- var componentType = 'image';
13665
- var imageElement = React$2.useRef(null);
13666
- var imageAttachmentSizeHandler = useChannelStateContext().imageAttachmentSizeHandler;
13667
- var _b = React$2.useState(undefined), attachmentConfiguration = _b[0], setAttachmentConfiguration = _b[1];
13668
- React$2.useLayoutEffect(function () {
13669
- if (imageElement.current && imageAttachmentSizeHandler) {
13670
- var config = imageAttachmentSizeHandler(attachment, imageElement.current);
13671
- setAttachmentConfiguration(config);
13672
- }
13673
- }, [imageElement, imageAttachmentSizeHandler, attachment]);
13674
- var imageConfig = __assign$8(__assign$8({}, attachment), { previewUrl: (attachmentConfiguration === null || attachmentConfiguration === void 0 ? void 0 : attachmentConfiguration.url) || 'about:blank', style: getCssDimensionsVariables(attachment.image_url || attachment.thumb_url || '') });
13675
- if (attachment.actions && attachment.actions.length) {
13676
- return (React__default["default"].createElement(AttachmentWithinContainer, { attachment: attachment, componentType: componentType },
13677
- React__default["default"].createElement("div", { className: 'str-chat__attachment' },
13678
- React__default["default"].createElement(Image, __assign$8({}, imageConfig, { innerRef: imageElement })),
13679
- React__default["default"].createElement(AttachmentActionsContainer, __assign$8({}, props)))));
13680
- }
13681
- return (React__default["default"].createElement(AttachmentWithinContainer, { attachment: attachment, componentType: componentType },
13682
- React__default["default"].createElement(Image, __assign$8({}, imageConfig, { innerRef: imageElement }))));
13683
- };
13684
- var CardContainer = function (props) {
13685
- var attachment = props.attachment, _a = props.Card, Card = _a === void 0 ? Card$1 : _a;
13686
- var componentType = 'card';
13687
- if (attachment.actions && attachment.actions.length) {
13688
- return (React__default["default"].createElement(AttachmentWithinContainer, { attachment: attachment, componentType: componentType },
13689
- React__default["default"].createElement("div", { className: 'str-chat__attachment' },
13690
- React__default["default"].createElement(Card, __assign$8({}, attachment)),
13691
- React__default["default"].createElement(AttachmentActionsContainer, __assign$8({}, props)))));
13692
- }
13693
- return (React__default["default"].createElement(AttachmentWithinContainer, { attachment: attachment, componentType: componentType },
13694
- React__default["default"].createElement(Card, __assign$8({}, attachment))));
13695
- };
13696
- var FileContainer = function (_a) {
13697
- var attachment = _a.attachment, _b = _a.File, File = _b === void 0 ? FileAttachment : _b;
13698
- if (!attachment.asset_url)
13699
- return null;
13700
- return (React__default["default"].createElement(AttachmentWithinContainer, { attachment: attachment, componentType: 'file' },
13701
- React__default["default"].createElement(File, { attachment: attachment })));
13702
- };
13703
- var AudioContainer = function (_a) {
13704
- var attachment = _a.attachment, _b = _a.Audio, Audio$1 = _b === void 0 ? Audio : _b;
13705
- return (React__default["default"].createElement(AttachmentWithinContainer, { attachment: attachment, componentType: 'audio' },
13706
- React__default["default"].createElement("div", { className: 'str-chat__attachment' },
13707
- React__default["default"].createElement(Audio$1, { og: attachment }))));
13708
- };
13709
- var MediaContainer = function (props) {
13710
- var _a;
13711
- var attachment = props.attachment, _b = props.Media, Media = _b === void 0 ? ReactPlayer : _b;
13712
- var componentType = 'media';
13713
- var _c = useChannelStateContext(), shouldGenerateVideoThumbnail = _c.shouldGenerateVideoThumbnail, videoAttachmentSizeHandler = _c.videoAttachmentSizeHandler;
13714
- var videoElement = React$2.useRef(null);
13715
- var _d = React$2.useState(), attachmentConfiguration = _d[0], setAttachmentConfiguration = _d[1];
13716
- React$2.useLayoutEffect(function () {
13717
- if (videoElement.current && videoAttachmentSizeHandler) {
13718
- var config = videoAttachmentSizeHandler(attachment, videoElement.current, shouldGenerateVideoThumbnail);
13719
- setAttachmentConfiguration(config);
13720
- }
13721
- }, [videoElement, videoAttachmentSizeHandler, attachment]);
13722
- var content = (React__default["default"].createElement("div", { className: 'str-chat__player-wrapper', "data-testid": 'video-wrapper', ref: videoElement, style: getCssDimensionsVariables(attachment.thumb_url || '') },
13723
- React__default["default"].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%' })));
13724
- return ((_a = attachment.actions) === null || _a === void 0 ? void 0 : _a.length) ? (React__default["default"].createElement(AttachmentWithinContainer, { attachment: attachment, componentType: componentType },
13725
- React__default["default"].createElement("div", { className: 'str-chat__attachment str-chat__attachment-media' },
13726
- content,
13727
- React__default["default"].createElement(AttachmentActionsContainer, __assign$8({}, props))))) : (React__default["default"].createElement(AttachmentWithinContainer, { attachment: attachment, componentType: componentType }, content));
13728
- };
13729
-
13730
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var CONTAINER_MAP = {
13731
- audio: AudioContainer,
13732
- card: CardContainer,
13733
- file: FileContainer,
13734
- media: MediaContainer,
13735
- };
13736
- var ATTACHMENT_GROUPS_ORDER = [
13737
- 'card',
13738
- 'gallery',
13739
- 'image',
13740
- 'media',
13741
- 'audio',
13742
- 'file',
13743
- ];
13744
- /**
13745
- * A component used for rendering message attachments. By default, the component supports: AttachmentActions, Audio, Card, File, Gallery, Image, and Video
13746
- */
13747
- var Attachment = function (props) {
13748
- var attachments = props.attachments;
13749
- var groupedAttachments = React$2.useMemo(function () { return renderGroupedAttachments(props); }, [attachments]);
13750
- return (React__default["default"].createElement("div", { className: 'str-chat__attachment-list' }, ATTACHMENT_GROUPS_ORDER.reduce(function (acc, groupName) { return __spreadArray(__spreadArray([], acc, true), groupedAttachments[groupName], true); }, [])));
13751
- };
13752
- var renderGroupedAttachments = function (_a) {
13753
- var attachments = _a.attachments, rest = __rest$4(_a, ["attachments"]);
13754
- var uploadedImages = [];
13755
- var containers = attachments.reduce(function (acc, attachment) {
13756
- if (isUploadedImage(attachment)) {
13757
- uploadedImages.push(__assign$8(__assign$8({}, attachment), { image_url: sanitizeUrl_1(attachment.image_url), thumb_url: sanitizeUrl_1(attachment.thumb_url) }));
13758
- }
13759
- else {
13760
- var attachmentType = getAttachmentType(attachment);
13761
- if (attachmentType) {
13762
- var Container = CONTAINER_MAP[attachmentType];
13763
- acc[attachmentType].push(React__default["default"].createElement(Container, __assign$8({ key: "".concat(attachmentType, "-").concat(acc[attachmentType].length) }, rest, { attachment: attachment })));
13764
- }
13765
- }
13766
- return acc;
13767
- }, {
13768
- audio: [],
13769
- card: [],
13770
- file: [],
13771
- gallery: [],
13772
- image: [],
13773
- media: [],
13774
- });
13775
- if (uploadedImages.length > 1) {
13776
- containers['gallery'] = [
13777
- React__default["default"].createElement(GalleryContainer, __assign$8({ key: 'gallery-container' }, rest, { attachment: {
13778
- images: uploadedImages,
13779
- type: 'gallery',
13780
- } })),
13781
- ];
13782
- }
13783
- else if (uploadedImages.length === 1) {
13784
- containers['image'] = [
13785
- React__default["default"].createElement(ImageContainer, __assign$8({ key: 'image-container' }, rest, { attachment: uploadedImages[0] })),
13786
- ];
13787
- }
13788
- return containers;
13789
- };
13790
- var getAttachmentType = function (attachment) {
13791
- if (isScrapedContent(attachment)) {
13792
- return 'card';
13793
- }
13794
- else if (isMediaAttachment(attachment)) {
13795
- return 'media';
13796
- }
13797
- else if (isAudioAttachment(attachment)) {
13798
- return 'audio';
13799
- }
13800
- else if (isFileAttachment(attachment)) {
13801
- return 'file';
13802
- }
13803
- return null;
13804
- };
13805
-
13806
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
13807
-
13808
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var Item$1 = /*#__PURE__*/React__default["default"].forwardRef(function Item(props, innerRef) {
13809
- var className = props.className,
13810
- Component = props.component,
13811
- item = props.item,
13812
- onClickHandler = props.onClickHandler,
13813
- onSelectHandler = props.onSelectHandler,
13814
- selected = props.selected,
13815
- style = props.style;
13816
-
13817
- var _useChatContext = useChatContext('SuggestionItem'),
13818
- themeVersion = _useChatContext.themeVersion;
13819
-
13820
- var selectItem = React$2.useCallback(function () {
13821
- return onSelectHandler(item);
13822
- }, [item, onClickHandler]);
13823
- if (themeVersion === '2') return /*#__PURE__*/React__default["default"].createElement("li", {
13824
- className: clsx(className, {
13825
- 'str-chat__suggestion-item--selected': selected
13826
- }),
13827
- style: style
13828
- }, /*#__PURE__*/React__default["default"].createElement("a", {
13829
- href: "",
13830
- onClick: onClickHandler,
13831
- onFocus: selectItem,
13832
- onMouseEnter: selectItem,
13833
- ref: innerRef
13834
- }, /*#__PURE__*/React__default["default"].createElement(Component, {
13835
- entity: item,
13836
- selected: selected
13837
- })));
13838
- return /*#__PURE__*/React__default["default"].createElement("li", {
13839
- className: clsx('rta__item', className),
13840
- style: style
13841
- }, /*#__PURE__*/React__default["default"].createElement("button", {
13842
- className: clsx('rta__entity', {
13843
- 'rta__entity--selected': selected
13844
- }),
13845
- onClick: onClickHandler,
13846
- onFocus: selectItem,
13847
- onMouseEnter: selectItem,
13848
- ref: innerRef
13849
- }, /*#__PURE__*/React__default["default"].createElement("div", {
13850
- tabIndex: -1
13851
- }, /*#__PURE__*/React__default["default"].createElement(Component, {
13852
- entity: item,
13853
- selected: selected
13854
- }))));
13855
- });
13856
-
13857
- var defineProperty$1 = {exports: {}};
13858
-
13859
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
13860
- var hasRequiredDefineProperty;
13861
-
13862
- function requireDefineProperty () {
13863
- if (hasRequiredDefineProperty) return defineProperty$1.exports;
13864
- hasRequiredDefineProperty = 1;
13865
- (function (module) {
13866
- function _defineProperty(obj, key, value) {
13867
- if (key in obj) {
13868
- Object.defineProperty(obj, key, {
13869
- value: value,
13870
- enumerable: true,
13871
- configurable: true,
13872
- writable: true
13873
- });
13874
- } else {
13875
- obj[key] = value;
13876
- }
13877
-
13878
- return obj;
13879
- }
13880
-
13881
- module.exports = _defineProperty, module.exports.__esModule = true, module.exports["default"] = module.exports;
13882
- } (defineProperty$1));
13883
- return defineProperty$1.exports;
13884
- }
13885
-
13886
- var definePropertyExports = requireDefineProperty();
13887
-
13888
- var slicedToArray = {exports: {}};
13889
-
13890
- var arrayWithHoles = {exports: {}};
13891
-
13892
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
13893
- (function (module) {
13894
- function _arrayWithHoles(arr) {
13895
- if (Array.isArray(arr)) return arr;
13896
- }
13897
-
13898
- module.exports = _arrayWithHoles, module.exports.__esModule = true, module.exports["default"] = module.exports;
13899
- } (arrayWithHoles));
13900
-
13901
- var iterableToArrayLimit = {exports: {}};
13902
-
13903
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
13904
- (function (module) {
13905
- function _iterableToArrayLimit(arr, i) {
13906
- var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
13907
-
13908
- if (_i == null) return;
13909
- var _arr = [];
13910
- var _n = true;
13911
- var _d = false;
13912
-
13913
- var _s, _e;
13914
-
13915
- try {
13916
- for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
13917
- _arr.push(_s.value);
13918
-
13919
- if (i && _arr.length === i) break;
13920
- }
13921
- } catch (err) {
13922
- _d = true;
13923
- _e = err;
13924
- } finally {
13925
- try {
13926
- if (!_n && _i["return"] != null) _i["return"]();
13927
- } finally {
13928
- if (_d) throw _e;
13929
- }
13930
- }
13931
-
13932
- return _arr;
13933
- }
13934
-
13935
- module.exports = _iterableToArrayLimit, module.exports.__esModule = true, module.exports["default"] = module.exports;
13936
- } (iterableToArrayLimit));
13937
-
13938
- var unsupportedIterableToArray = {exports: {}};
13939
-
13940
- var arrayLikeToArray = {exports: {}};
13941
-
13942
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
13943
- (function (module) {
13944
- function _arrayLikeToArray(arr, len) {
13945
- if (len == null || len > arr.length) len = arr.length;
13946
-
13947
- for (var i = 0, arr2 = new Array(len); i < len; i++) {
13948
- arr2[i] = arr[i];
13949
- }
13950
-
13951
- return arr2;
13952
- }
13953
-
13954
- module.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
13955
- } (arrayLikeToArray));
13956
-
13957
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
13958
- (function (module) {
13959
- var arrayLikeToArray$1 = arrayLikeToArray.exports;
13960
-
13961
- function _unsupportedIterableToArray(o, minLen) {
13962
- if (!o) return;
13963
- if (typeof o === "string") return arrayLikeToArray$1(o, minLen);
13964
- var n = Object.prototype.toString.call(o).slice(8, -1);
13965
- if (n === "Object" && o.constructor) n = o.constructor.name;
13966
- if (n === "Map" || n === "Set") return Array.from(o);
13967
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray$1(o, minLen);
13968
- }
13969
-
13970
- module.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
13971
- } (unsupportedIterableToArray));
13972
-
13973
- var nonIterableRest = {exports: {}};
13974
-
13975
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
13976
- (function (module) {
13977
- function _nonIterableRest() {
13978
- throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
13979
- }
13980
-
13981
- module.exports = _nonIterableRest, module.exports.__esModule = true, module.exports["default"] = module.exports;
13982
- } (nonIterableRest));
13983
-
13984
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
13985
- (function (module) {
13986
- var arrayWithHoles$1 = arrayWithHoles.exports;
13987
-
13988
- var iterableToArrayLimit$1 = iterableToArrayLimit.exports;
13989
-
13990
- var unsupportedIterableToArray$1 = unsupportedIterableToArray.exports;
13991
-
13992
- var nonIterableRest$1 = nonIterableRest.exports;
13993
-
13994
- function _slicedToArray(arr, i) {
13995
- return arrayWithHoles$1(arr) || iterableToArrayLimit$1(arr, i) || unsupportedIterableToArray$1(arr, i) || nonIterableRest$1();
13996
- }
13997
-
13998
- module.exports = _slicedToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
13999
- } (slicedToArray));
14000
-
14001
- var _slicedToArray$2 = /*@__PURE__*/getDefaultExportFromCjs(slicedToArray.exports);
14002
-
14003
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
14004
- var emojiRegex = function () {
14005
- // https://mths.be/emoji
14006
- return /\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\uD83D[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3])\uFE0F|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26A7\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g;
14007
- };
14008
-
14009
13591
  var linkifyjs = {exports: {}};
14010
13592
 
14011
13593
  var linkify = {};
@@ -15386,6 +14968,423 @@ var StreamChatReact = (function (exports, React$2, streamChat, ReactDOM) {
15386
14968
  module.exports = linkify;
15387
14969
  } (linkifyjs));
15388
14970
 
14971
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var AttachmentWithinContainer = function (_a) {
14972
+ var _b;
14973
+ var _c;
14974
+ var attachment = _a.attachment, children = _a.children, componentType = _a.componentType;
14975
+ var isGAT = isGalleryAttachmentType(attachment);
14976
+ var extra = '';
14977
+ if (!isGAT) {
14978
+ extra =
14979
+ componentType === 'card' && !(attachment === null || attachment === void 0 ? void 0 : attachment.image_url) && !(attachment === null || attachment === void 0 ? void 0 : attachment.thumb_url)
14980
+ ? 'no-image'
14981
+ : ((_c = attachment === null || attachment === void 0 ? void 0 : attachment.actions) === null || _c === void 0 ? void 0 : _c.length)
14982
+ ? 'actions'
14983
+ : '';
14984
+ }
14985
+ var classNames = clsx('str-chat__message-attachment str-chat__message-attachment-dynamic-size', (_b = {},
14986
+ _b["str-chat__message-attachment--".concat(componentType)] = componentType,
14987
+ _b["str-chat__message-attachment--".concat(attachment === null || attachment === void 0 ? void 0 : attachment.type)] = attachment === null || attachment === void 0 ? void 0 : attachment.type,
14988
+ _b["str-chat__message-attachment--".concat(componentType, "--").concat(extra)] = componentType && extra,
14989
+ _b['str-chat__message-attachment--svg-image'] = isSvgAttachment(attachment),
14990
+ _b['str-chat__message-attachment-with-actions'] = extra === 'actions',
14991
+ _b));
14992
+ return React__default["default"].createElement("div", { className: classNames }, children);
14993
+ };
14994
+ var AttachmentActionsContainer = function (_a) {
14995
+ var _b;
14996
+ var actionHandler = _a.actionHandler, attachment = _a.attachment, _c = _a.AttachmentActions, AttachmentActions$1 = _c === void 0 ? AttachmentActions : _c;
14997
+ if (!((_b = attachment.actions) === null || _b === void 0 ? void 0 : _b.length))
14998
+ return null;
14999
+ return (React__default["default"].createElement(AttachmentActions$1, __assign$8({}, attachment, { actionHandler: actionHandler, actions: attachment.actions, id: attachment.id || '', text: attachment.text || '' })));
15000
+ };
15001
+ function getCssDimensionsVariables(url) {
15002
+ var cssVars = {
15003
+ '--original-height': 1000000,
15004
+ '--original-width': 1000000,
15005
+ };
15006
+ if (linkifyjs.exports.test(url, 'url')) {
15007
+ var urlParams = new URL(url).searchParams;
15008
+ var oh = Number(urlParams.get('oh'));
15009
+ var ow = Number(urlParams.get('ow'));
15010
+ var originalHeight = oh > 1 ? oh : 1000000;
15011
+ var originalWidth = ow > 1 ? ow : 1000000;
15012
+ cssVars['--original-width'] = originalWidth;
15013
+ cssVars['--original-height'] = originalHeight;
15014
+ }
15015
+ return cssVars;
15016
+ }
15017
+ var GalleryContainer = function (_a) {
15018
+ var attachment = _a.attachment, _b = _a.Gallery, Gallery$1 = _b === void 0 ? Gallery : _b;
15019
+ var imageElements = React$2.useRef([]);
15020
+ var imageAttachmentSizeHandler = useChannelStateContext().imageAttachmentSizeHandler;
15021
+ var _c = React$2.useState([]), attachmentConfigurations = _c[0], setAttachmentConfigurations = _c[1];
15022
+ React$2.useLayoutEffect(function () {
15023
+ if (imageElements.current &&
15024
+ imageElements.current.every(function (element) { return !!element; }) &&
15025
+ imageAttachmentSizeHandler) {
15026
+ var newConfigurations_1 = [];
15027
+ imageElements.current.forEach(function (element, i) {
15028
+ var config = imageAttachmentSizeHandler(attachment.images[i], element);
15029
+ newConfigurations_1.push(config);
15030
+ });
15031
+ setAttachmentConfigurations(newConfigurations_1);
15032
+ }
15033
+ }, [imageElements, imageAttachmentSizeHandler, attachment]);
15034
+ var images = attachment.images.map(function (image, i) {
15035
+ var _a, _b, _c;
15036
+ return (__assign$8(__assign$8({}, 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) || '') }));
15037
+ });
15038
+ return (React__default["default"].createElement(AttachmentWithinContainer, { attachment: attachment, componentType: 'gallery' },
15039
+ React__default["default"].createElement(Gallery$1, { images: images || [], innerRefs: imageElements, key: 'gallery' })));
15040
+ };
15041
+ var ImageContainer = function (props) {
15042
+ var attachment = props.attachment, _a = props.Image, Image = _a === void 0 ? ImageComponent : _a;
15043
+ var componentType = 'image';
15044
+ var imageElement = React$2.useRef(null);
15045
+ var imageAttachmentSizeHandler = useChannelStateContext().imageAttachmentSizeHandler;
15046
+ var _b = React$2.useState(undefined), attachmentConfiguration = _b[0], setAttachmentConfiguration = _b[1];
15047
+ React$2.useLayoutEffect(function () {
15048
+ if (imageElement.current && imageAttachmentSizeHandler) {
15049
+ var config = imageAttachmentSizeHandler(attachment, imageElement.current);
15050
+ setAttachmentConfiguration(config);
15051
+ }
15052
+ }, [imageElement, imageAttachmentSizeHandler, attachment]);
15053
+ var imageConfig = __assign$8(__assign$8({}, attachment), { previewUrl: (attachmentConfiguration === null || attachmentConfiguration === void 0 ? void 0 : attachmentConfiguration.url) || 'about:blank', style: getCssDimensionsVariables(attachment.image_url || attachment.thumb_url || '') });
15054
+ if (attachment.actions && attachment.actions.length) {
15055
+ return (React__default["default"].createElement(AttachmentWithinContainer, { attachment: attachment, componentType: componentType },
15056
+ React__default["default"].createElement("div", { className: 'str-chat__attachment' },
15057
+ React__default["default"].createElement(Image, __assign$8({}, imageConfig, { innerRef: imageElement })),
15058
+ React__default["default"].createElement(AttachmentActionsContainer, __assign$8({}, props)))));
15059
+ }
15060
+ return (React__default["default"].createElement(AttachmentWithinContainer, { attachment: attachment, componentType: componentType },
15061
+ React__default["default"].createElement(Image, __assign$8({}, imageConfig, { innerRef: imageElement }))));
15062
+ };
15063
+ var CardContainer = function (props) {
15064
+ var attachment = props.attachment, _a = props.Card, Card = _a === void 0 ? Card$1 : _a;
15065
+ var componentType = 'card';
15066
+ if (attachment.actions && attachment.actions.length) {
15067
+ return (React__default["default"].createElement(AttachmentWithinContainer, { attachment: attachment, componentType: componentType },
15068
+ React__default["default"].createElement("div", { className: 'str-chat__attachment' },
15069
+ React__default["default"].createElement(Card, __assign$8({}, attachment)),
15070
+ React__default["default"].createElement(AttachmentActionsContainer, __assign$8({}, props)))));
15071
+ }
15072
+ return (React__default["default"].createElement(AttachmentWithinContainer, { attachment: attachment, componentType: componentType },
15073
+ React__default["default"].createElement(Card, __assign$8({}, attachment))));
15074
+ };
15075
+ var FileContainer = function (_a) {
15076
+ var attachment = _a.attachment, _b = _a.File, File = _b === void 0 ? FileAttachment : _b;
15077
+ if (!attachment.asset_url)
15078
+ return null;
15079
+ return (React__default["default"].createElement(AttachmentWithinContainer, { attachment: attachment, componentType: 'file' },
15080
+ React__default["default"].createElement(File, { attachment: attachment })));
15081
+ };
15082
+ var AudioContainer = function (_a) {
15083
+ var attachment = _a.attachment, _b = _a.Audio, Audio$1 = _b === void 0 ? Audio : _b;
15084
+ return (React__default["default"].createElement(AttachmentWithinContainer, { attachment: attachment, componentType: 'audio' },
15085
+ React__default["default"].createElement("div", { className: 'str-chat__attachment' },
15086
+ React__default["default"].createElement(Audio$1, { og: attachment }))));
15087
+ };
15088
+ var MediaContainer = function (props) {
15089
+ var _a;
15090
+ var attachment = props.attachment, _b = props.Media, Media = _b === void 0 ? ReactPlayer : _b;
15091
+ var componentType = 'media';
15092
+ var _c = useChannelStateContext(), shouldGenerateVideoThumbnail = _c.shouldGenerateVideoThumbnail, videoAttachmentSizeHandler = _c.videoAttachmentSizeHandler;
15093
+ var videoElement = React$2.useRef(null);
15094
+ var _d = React$2.useState(), attachmentConfiguration = _d[0], setAttachmentConfiguration = _d[1];
15095
+ React$2.useLayoutEffect(function () {
15096
+ if (videoElement.current && videoAttachmentSizeHandler) {
15097
+ var config = videoAttachmentSizeHandler(attachment, videoElement.current, shouldGenerateVideoThumbnail);
15098
+ setAttachmentConfiguration(config);
15099
+ }
15100
+ }, [videoElement, videoAttachmentSizeHandler, attachment]);
15101
+ var content = (React__default["default"].createElement("div", { className: 'str-chat__player-wrapper', "data-testid": 'video-wrapper', ref: videoElement, style: getCssDimensionsVariables(attachment.thumb_url || '') },
15102
+ React__default["default"].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%' })));
15103
+ return ((_a = attachment.actions) === null || _a === void 0 ? void 0 : _a.length) ? (React__default["default"].createElement(AttachmentWithinContainer, { attachment: attachment, componentType: componentType },
15104
+ React__default["default"].createElement("div", { className: 'str-chat__attachment str-chat__attachment-media' },
15105
+ content,
15106
+ React__default["default"].createElement(AttachmentActionsContainer, __assign$8({}, props))))) : (React__default["default"].createElement(AttachmentWithinContainer, { attachment: attachment, componentType: componentType }, content));
15107
+ };
15108
+
15109
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var CONTAINER_MAP = {
15110
+ audio: AudioContainer,
15111
+ card: CardContainer,
15112
+ file: FileContainer,
15113
+ media: MediaContainer,
15114
+ };
15115
+ var ATTACHMENT_GROUPS_ORDER = [
15116
+ 'card',
15117
+ 'gallery',
15118
+ 'image',
15119
+ 'media',
15120
+ 'audio',
15121
+ 'file',
15122
+ ];
15123
+ /**
15124
+ * A component used for rendering message attachments. By default, the component supports: AttachmentActions, Audio, Card, File, Gallery, Image, and Video
15125
+ */
15126
+ var Attachment = function (props) {
15127
+ var attachments = props.attachments;
15128
+ var groupedAttachments = React$2.useMemo(function () { return renderGroupedAttachments(props); }, [attachments]);
15129
+ return (React__default["default"].createElement("div", { className: 'str-chat__attachment-list' }, ATTACHMENT_GROUPS_ORDER.reduce(function (acc, groupName) { return __spreadArray(__spreadArray([], acc, true), groupedAttachments[groupName], true); }, [])));
15130
+ };
15131
+ var renderGroupedAttachments = function (_a) {
15132
+ var attachments = _a.attachments, rest = __rest$4(_a, ["attachments"]);
15133
+ var uploadedImages = [];
15134
+ var containers = attachments.reduce(function (acc, attachment) {
15135
+ if (isUploadedImage(attachment)) {
15136
+ uploadedImages.push(__assign$8(__assign$8({}, attachment), { image_url: sanitizeUrl_1(attachment.image_url), thumb_url: sanitizeUrl_1(attachment.thumb_url) }));
15137
+ }
15138
+ else {
15139
+ var attachmentType = getAttachmentType(attachment);
15140
+ if (attachmentType) {
15141
+ var Container = CONTAINER_MAP[attachmentType];
15142
+ acc[attachmentType].push(React__default["default"].createElement(Container, __assign$8({ key: "".concat(attachmentType, "-").concat(acc[attachmentType].length) }, rest, { attachment: attachment })));
15143
+ }
15144
+ }
15145
+ return acc;
15146
+ }, {
15147
+ audio: [],
15148
+ card: [],
15149
+ file: [],
15150
+ gallery: [],
15151
+ image: [],
15152
+ media: [],
15153
+ });
15154
+ if (uploadedImages.length > 1) {
15155
+ containers['gallery'] = [
15156
+ React__default["default"].createElement(GalleryContainer, __assign$8({ key: 'gallery-container' }, rest, { attachment: {
15157
+ images: uploadedImages,
15158
+ type: 'gallery',
15159
+ } })),
15160
+ ];
15161
+ }
15162
+ else if (uploadedImages.length === 1) {
15163
+ containers['image'] = [
15164
+ React__default["default"].createElement(ImageContainer, __assign$8({ key: 'image-container' }, rest, { attachment: uploadedImages[0] })),
15165
+ ];
15166
+ }
15167
+ return containers;
15168
+ };
15169
+ var getAttachmentType = function (attachment) {
15170
+ if (isScrapedContent(attachment)) {
15171
+ return 'card';
15172
+ }
15173
+ else if (isMediaAttachment(attachment)) {
15174
+ return 'media';
15175
+ }
15176
+ else if (isAudioAttachment(attachment)) {
15177
+ return 'audio';
15178
+ }
15179
+ else if (isFileAttachment(attachment)) {
15180
+ return 'file';
15181
+ }
15182
+ return null;
15183
+ };
15184
+
15185
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
15186
+
15187
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var Item$1 = /*#__PURE__*/React__default["default"].forwardRef(function Item(props, innerRef) {
15188
+ var className = props.className,
15189
+ Component = props.component,
15190
+ item = props.item,
15191
+ onClickHandler = props.onClickHandler,
15192
+ onSelectHandler = props.onSelectHandler,
15193
+ selected = props.selected,
15194
+ style = props.style;
15195
+
15196
+ var _useChatContext = useChatContext('SuggestionItem'),
15197
+ themeVersion = _useChatContext.themeVersion;
15198
+
15199
+ var selectItem = React$2.useCallback(function () {
15200
+ return onSelectHandler(item);
15201
+ }, [item, onClickHandler]);
15202
+ if (themeVersion === '2') return /*#__PURE__*/React__default["default"].createElement("li", {
15203
+ className: clsx(className, {
15204
+ 'str-chat__suggestion-item--selected': selected
15205
+ }),
15206
+ style: style
15207
+ }, /*#__PURE__*/React__default["default"].createElement("a", {
15208
+ href: "",
15209
+ onClick: onClickHandler,
15210
+ onFocus: selectItem,
15211
+ onMouseEnter: selectItem,
15212
+ ref: innerRef
15213
+ }, /*#__PURE__*/React__default["default"].createElement(Component, {
15214
+ entity: item,
15215
+ selected: selected
15216
+ })));
15217
+ return /*#__PURE__*/React__default["default"].createElement("li", {
15218
+ className: clsx('rta__item', className),
15219
+ style: style
15220
+ }, /*#__PURE__*/React__default["default"].createElement("button", {
15221
+ className: clsx('rta__entity', {
15222
+ 'rta__entity--selected': selected
15223
+ }),
15224
+ onClick: onClickHandler,
15225
+ onFocus: selectItem,
15226
+ onMouseEnter: selectItem,
15227
+ ref: innerRef
15228
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
15229
+ tabIndex: -1
15230
+ }, /*#__PURE__*/React__default["default"].createElement(Component, {
15231
+ entity: item,
15232
+ selected: selected
15233
+ }))));
15234
+ });
15235
+
15236
+ var defineProperty$1 = {exports: {}};
15237
+
15238
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
15239
+ var hasRequiredDefineProperty;
15240
+
15241
+ function requireDefineProperty () {
15242
+ if (hasRequiredDefineProperty) return defineProperty$1.exports;
15243
+ hasRequiredDefineProperty = 1;
15244
+ (function (module) {
15245
+ function _defineProperty(obj, key, value) {
15246
+ if (key in obj) {
15247
+ Object.defineProperty(obj, key, {
15248
+ value: value,
15249
+ enumerable: true,
15250
+ configurable: true,
15251
+ writable: true
15252
+ });
15253
+ } else {
15254
+ obj[key] = value;
15255
+ }
15256
+
15257
+ return obj;
15258
+ }
15259
+
15260
+ module.exports = _defineProperty, module.exports.__esModule = true, module.exports["default"] = module.exports;
15261
+ } (defineProperty$1));
15262
+ return defineProperty$1.exports;
15263
+ }
15264
+
15265
+ var definePropertyExports = requireDefineProperty();
15266
+
15267
+ var slicedToArray = {exports: {}};
15268
+
15269
+ var arrayWithHoles = {exports: {}};
15270
+
15271
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
15272
+ (function (module) {
15273
+ function _arrayWithHoles(arr) {
15274
+ if (Array.isArray(arr)) return arr;
15275
+ }
15276
+
15277
+ module.exports = _arrayWithHoles, module.exports.__esModule = true, module.exports["default"] = module.exports;
15278
+ } (arrayWithHoles));
15279
+
15280
+ var iterableToArrayLimit = {exports: {}};
15281
+
15282
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
15283
+ (function (module) {
15284
+ function _iterableToArrayLimit(arr, i) {
15285
+ var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
15286
+
15287
+ if (_i == null) return;
15288
+ var _arr = [];
15289
+ var _n = true;
15290
+ var _d = false;
15291
+
15292
+ var _s, _e;
15293
+
15294
+ try {
15295
+ for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
15296
+ _arr.push(_s.value);
15297
+
15298
+ if (i && _arr.length === i) break;
15299
+ }
15300
+ } catch (err) {
15301
+ _d = true;
15302
+ _e = err;
15303
+ } finally {
15304
+ try {
15305
+ if (!_n && _i["return"] != null) _i["return"]();
15306
+ } finally {
15307
+ if (_d) throw _e;
15308
+ }
15309
+ }
15310
+
15311
+ return _arr;
15312
+ }
15313
+
15314
+ module.exports = _iterableToArrayLimit, module.exports.__esModule = true, module.exports["default"] = module.exports;
15315
+ } (iterableToArrayLimit));
15316
+
15317
+ var unsupportedIterableToArray = {exports: {}};
15318
+
15319
+ var arrayLikeToArray = {exports: {}};
15320
+
15321
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
15322
+ (function (module) {
15323
+ function _arrayLikeToArray(arr, len) {
15324
+ if (len == null || len > arr.length) len = arr.length;
15325
+
15326
+ for (var i = 0, arr2 = new Array(len); i < len; i++) {
15327
+ arr2[i] = arr[i];
15328
+ }
15329
+
15330
+ return arr2;
15331
+ }
15332
+
15333
+ module.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
15334
+ } (arrayLikeToArray));
15335
+
15336
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
15337
+ (function (module) {
15338
+ var arrayLikeToArray$1 = arrayLikeToArray.exports;
15339
+
15340
+ function _unsupportedIterableToArray(o, minLen) {
15341
+ if (!o) return;
15342
+ if (typeof o === "string") return arrayLikeToArray$1(o, minLen);
15343
+ var n = Object.prototype.toString.call(o).slice(8, -1);
15344
+ if (n === "Object" && o.constructor) n = o.constructor.name;
15345
+ if (n === "Map" || n === "Set") return Array.from(o);
15346
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray$1(o, minLen);
15347
+ }
15348
+
15349
+ module.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
15350
+ } (unsupportedIterableToArray));
15351
+
15352
+ var nonIterableRest = {exports: {}};
15353
+
15354
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
15355
+ (function (module) {
15356
+ function _nonIterableRest() {
15357
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
15358
+ }
15359
+
15360
+ module.exports = _nonIterableRest, module.exports.__esModule = true, module.exports["default"] = module.exports;
15361
+ } (nonIterableRest));
15362
+
15363
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
15364
+ (function (module) {
15365
+ var arrayWithHoles$1 = arrayWithHoles.exports;
15366
+
15367
+ var iterableToArrayLimit$1 = iterableToArrayLimit.exports;
15368
+
15369
+ var unsupportedIterableToArray$1 = unsupportedIterableToArray.exports;
15370
+
15371
+ var nonIterableRest$1 = nonIterableRest.exports;
15372
+
15373
+ function _slicedToArray(arr, i) {
15374
+ return arrayWithHoles$1(arr) || iterableToArrayLimit$1(arr, i) || unsupportedIterableToArray$1(arr, i) || nonIterableRest$1();
15375
+ }
15376
+
15377
+ module.exports = _slicedToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
15378
+ } (slicedToArray));
15379
+
15380
+ var _slicedToArray$2 = /*@__PURE__*/getDefaultExportFromCjs(slicedToArray.exports);
15381
+
15382
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
15383
+ var emojiRegex = function () {
15384
+ // https://mths.be/emoji
15385
+ return /\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\uD83D[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3])\uFE0F|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26A7\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g;
15386
+ };
15387
+
15389
15388
  window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
15390
15389
 
15391
15390
  window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};let nanoid = (size = 21) =>
@@ -36673,7 +36672,7 @@ var StreamChatReact = (function (exports, React$2, streamChat, ReactDOM) {
36673
36672
  // valid cases: "text @", "@", " @"
36674
36673
  // invalid cases: "text@", "@text",
36675
36674
  /.?\s?@$|^@$/.test(node.value) &&
36676
- nextChildHref.startsWith('mailto:')) {
36675
+ (nextChildHref === null || nextChildHref === void 0 ? void 0 : nextChildHref.startsWith('mailto:'))) {
36677
36676
  var newTextValue = node.value.replace(/@$/, '');
36678
36677
  var username = nextChildHref.replace('mailto:', '');
36679
36678
  parent.children[index] = u$3('text', newTextValue);
@@ -42718,7 +42717,8 @@ var StreamChatReact = (function (exports, React$2, streamChat, ReactDOM) {
42718
42717
  _a.label = 1;
42719
42718
  case 1:
42720
42719
  _a.trys.push([1, 3, , 4]);
42721
- return [4 /*yield*/, client.queryUsers(__assign$8({ $or: [{ id: { $autocomplete: query } }, { name: { $autocomplete: query } }], id: { $ne: client.userID } }, mentionQueryParams.filters), __assign$8({ id: 1 }, mentionQueryParams.sort), __assign$8({ limit: 10 }, mentionQueryParams.options))];
42720
+ return [4 /*yield*/, client.queryUsers(__assign$8({ $or: [{ id: { $autocomplete: query } }, { name: { $autocomplete: query } }], id: { $ne: client.userID } }, mentionQueryParams.filters), Array.isArray(mentionQueryParams.sort)
42721
+ ? __spreadArray([{ id: 1 }], mentionQueryParams.sort, true) : __assign$8({ id: 1 }, mentionQueryParams.sort), __assign$8({ limit: 10 }, mentionQueryParams.options))];
42722
42722
  case 2:
42723
42723
  users = (_a.sent()).users;
42724
42724
  if (onReady && users.length) {
@@ -44675,24 +44675,28 @@ var StreamChatReact = (function (exports, React$2, streamChat, ReactDOM) {
44675
44675
  };
44676
44676
 
44677
44677
  window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var useCooldownTimer = function () {
44678
+ var _a;
44678
44679
  var latestMessageDatesByChannels = useChatContext('useCooldownTimer').latestMessageDatesByChannels;
44679
- var channel = useChannelStateContext('useCooldownTimer').channel;
44680
- var _a = (channel.data ||
44681
- {}), cooldownInterval = _a.cooldown, own_capabilities = _a.own_capabilities;
44682
- var _b = React$2.useState(), cooldownRemaining = _b[0], setCooldownRemaining = _b[1];
44680
+ var _b = useChannelStateContext('useCooldownTimer'), channel = _b.channel, _c = _b.messages, messages = _c === void 0 ? [] : _c;
44681
+ var client = useChatContext('useCooldownTimer').client;
44682
+ var _d = React$2.useState(), cooldownRemaining = _d[0], setCooldownRemaining = _d[1];
44683
+ var _e = (channel.data ||
44684
+ {}), cooldownInterval = _e.cooldown, own_capabilities = _e.own_capabilities;
44683
44685
  var skipCooldown = !(own_capabilities === null || own_capabilities === void 0 ? void 0 : own_capabilities.includes('slow-mode'));
44686
+ var ownLatestMessageDate = React$2.useMemo(function () {
44687
+ var _a, _b;
44688
+ return (_a = latestMessageDatesByChannels[channel.cid]) !== null && _a !== void 0 ? _a : (_b = __spreadArray([], messages, true).sort(function (a, b) { var _a, _b; return ((_a = b.created_at) === null || _a === void 0 ? void 0 : _a.getTime()) - ((_b = a.created_at) === null || _b === void 0 ? void 0 : _b.getTime()); })
44689
+ .find(function (v) { var _a, _b; return ((_a = v.user) === null || _a === void 0 ? void 0 : _a.id) === ((_b = client.user) === null || _b === void 0 ? void 0 : _b.id); })) === null || _b === void 0 ? void 0 : _b.created_at;
44690
+ }, [messages, (_a = client.user) === null || _a === void 0 ? void 0 : _a.id, latestMessageDatesByChannels, channel.cid]);
44684
44691
  React$2.useEffect(function () {
44685
- var latestMessageDate = latestMessageDatesByChannels[channel.cid];
44686
- if (!cooldownInterval || !latestMessageDate) {
44692
+ if (skipCooldown || !cooldownInterval || !ownLatestMessageDate)
44687
44693
  return;
44688
- }
44689
- var remainingCooldown = Math.round(cooldownInterval - (new Date().getTime() - latestMessageDate.getTime()) / 1000);
44690
- if (remainingCooldown > 0 && !skipCooldown) {
44694
+ var remainingCooldown = Math.round(cooldownInterval - (new Date().getTime() - ownLatestMessageDate.getTime()) / 1000);
44695
+ if (remainingCooldown > 0)
44691
44696
  setCooldownRemaining(remainingCooldown);
44692
- }
44693
- }, [channel.id, cooldownInterval, latestMessageDatesByChannels[channel.cid]]);
44697
+ }, [cooldownInterval, ownLatestMessageDate, skipCooldown]);
44694
44698
  return {
44695
- cooldownInterval: cooldownInterval || 0,
44699
+ cooldownInterval: cooldownInterval !== null && cooldownInterval !== void 0 ? cooldownInterval : 0,
44696
44700
  cooldownRemaining: cooldownRemaining,
44697
44701
  setCooldownRemaining: setCooldownRemaining,
44698
44702
  };
@@ -46280,21 +46284,28 @@ var StreamChatReact = (function (exports, React$2, streamChat, ReactDOM) {
46280
46284
  };
46281
46285
 
46282
46286
  window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var getImageAttachmentConfiguration = function (attachment, element) {
46283
- var url = new URL((attachment.image_url || attachment.thumb_url || ''));
46284
- var resizeDimensions = getSizingRestrictions(url, element);
46285
- if (resizeDimensions) {
46286
- // Apply 2x for retina displays
46287
- resizeDimensions.height *= 2;
46288
- resizeDimensions.width *= 2;
46289
- addResizingParamsToUrl(resizeDimensions, url);
46287
+ var newUrl = undefined;
46288
+ var urlToTest = attachment.image_url || attachment.thumb_url || '';
46289
+ if (linkifyjs.exports.test(urlToTest, 'url')) {
46290
+ var url = new URL(urlToTest);
46291
+ var resizeDimensions = getSizingRestrictions(url, element);
46292
+ if (resizeDimensions) {
46293
+ // Apply 2x for retina displays
46294
+ resizeDimensions.height *= 2;
46295
+ resizeDimensions.width *= 2;
46296
+ addResizingParamsToUrl(resizeDimensions, url);
46297
+ }
46298
+ newUrl = url.href;
46290
46299
  }
46291
46300
  return {
46292
- url: url.href,
46301
+ url: newUrl || '',
46293
46302
  };
46294
46303
  };
46295
46304
  var getVideoAttachmentConfiguration = function (attachment, element, shouldGenerateVideoThumbnail) {
46296
46305
  var thumbUrl = undefined;
46297
- if (attachment.thumb_url && shouldGenerateVideoThumbnail) {
46306
+ if (attachment.thumb_url &&
46307
+ shouldGenerateVideoThumbnail &&
46308
+ linkifyjs.exports.test(attachment.thumb_url, 'url')) {
46298
46309
  var url = new URL(attachment.thumb_url);
46299
46310
  var resizeDimensions = getSizingRestrictions(url, element);
46300
46311
  if (resizeDimensions) {
@@ -48121,7 +48132,7 @@ var StreamChatReact = (function (exports, React$2, streamChat, ReactDOM) {
48121
48132
 
48122
48133
  window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
48123
48134
 
48124
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var version$1 = '10.4.0';
48135
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var version$1 = '10.4.2';
48125
48136
 
48126
48137
  window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var useChat = function (_a) {
48127
48138
  var _b, _c;