stream-chat-react 10.0.0-theming-v2.2 → 10.0.0-theming-v2.3

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.
Files changed (53) hide show
  1. package/dist/browser.full-bundle.js +1625 -2037
  2. package/dist/browser.full-bundle.js.map +1 -1
  3. package/dist/browser.full-bundle.min.js +5 -5
  4. package/dist/browser.full-bundle.min.js.map +1 -1
  5. package/dist/components/AutoCompleteTextarea/Textarea.d.ts +7 -0
  6. package/dist/components/AutoCompleteTextarea/Textarea.d.ts.map +1 -1
  7. package/dist/components/AutoCompleteTextarea/Textarea.js +10 -1
  8. package/dist/components/Channel/Channel.js +26 -23
  9. package/dist/components/Message/MessageStatus.d.ts.map +1 -1
  10. package/dist/components/Message/MessageStatus.js +32 -30
  11. package/dist/components/MessageInput/MessageInputFlat.d.ts.map +1 -1
  12. package/dist/components/MessageInput/MessageInputFlat.js +5 -2
  13. package/dist/components/Reactions/ReactionsList.d.ts.map +1 -1
  14. package/dist/components/Reactions/ReactionsList.js +18 -3
  15. package/dist/components/Reactions/hooks/useProcessReactions.d.ts +1 -0
  16. package/dist/components/Reactions/hooks/useProcessReactions.d.ts.map +1 -1
  17. package/dist/components/Reactions/hooks/useProcessReactions.js +11 -0
  18. package/dist/components/Tooltip/Tooltip.d.ts +14 -2
  19. package/dist/components/Tooltip/Tooltip.d.ts.map +1 -1
  20. package/dist/components/Tooltip/Tooltip.js +22 -3
  21. package/dist/components/Tooltip/hooks/index.d.ts +2 -0
  22. package/dist/components/Tooltip/hooks/index.d.ts.map +1 -0
  23. package/dist/components/Tooltip/hooks/index.js +1 -0
  24. package/dist/components/Tooltip/hooks/useEnterLeaveHandlers.d.ts +7 -0
  25. package/dist/components/Tooltip/hooks/useEnterLeaveHandlers.d.ts.map +1 -0
  26. package/dist/components/Tooltip/hooks/useEnterLeaveHandlers.js +14 -0
  27. package/dist/context/ChannelActionContext.d.ts +1 -1
  28. package/dist/context/ChannelActionContext.d.ts.map +1 -1
  29. package/dist/context/DefaultEmoji.d.ts +3 -0
  30. package/dist/context/DefaultEmoji.d.ts.map +1 -0
  31. package/dist/context/DefaultEmoji.js +3 -0
  32. package/dist/context/DefaultEmojiPicker.d.ts +3 -0
  33. package/dist/context/DefaultEmojiPicker.d.ts.map +1 -0
  34. package/dist/context/DefaultEmojiPicker.js +3 -0
  35. package/dist/context/EmojiContext.d.ts.map +1 -1
  36. package/dist/context/EmojiContext.js +2 -58
  37. package/dist/css/index.css +1 -1
  38. package/dist/css/index.css.map +1 -1
  39. package/dist/css/v2/index.css +1 -1
  40. package/dist/css/v2/index.css.map +1 -1
  41. package/dist/css/v2/index.layout.css +1 -1
  42. package/dist/css/v2/index.layout.css.map +1 -1
  43. package/dist/index.cjs.js +1121 -1507
  44. package/dist/index.cjs.js.map +1 -1
  45. package/dist/scss/ImageCarousel.scss +6 -0
  46. package/dist/scss/Message.scss +6 -1
  47. package/dist/scss/MessageInput.scss +1 -0
  48. package/dist/scss/v2/Message/Message-layout.scss +7 -18
  49. package/dist/scss/v2/MessageReactions/MessageReactions-layout.scss +1 -10
  50. package/dist/scss/v2/Tooltip/Tooltip-layout.scss +2 -23
  51. package/dist/version.d.ts +1 -1
  52. package/dist/version.js +1 -1
  53. package/package.json +7 -9
@@ -6832,32 +6832,12 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
6832
6832
 
6833
6833
  var DefaultEmojiIndex = unwrapExports(nimbleEmojiIndex);
6834
6834
 
6835
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var DefaultEmoji = React__default["default"].lazy(function () { return __awaiter$3(void 0, void 0, void 0, function () {
6836
- var emoji;
6837
- return __generator$3(this, function (_a) {
6838
- switch (_a.label) {
6839
- case 0: return [4 /*yield*/, Promise.resolve().then(function () { return nimbleEmoji$2; })];
6840
- case 1:
6841
- emoji = _a.sent();
6842
- return [2 /*return*/, { default: emoji.default }];
6843
- }
6844
- });
6845
- }); });
6846
- var DefaultEmojiPicker = React__default["default"].lazy(function () { return __awaiter$3(void 0, void 0, void 0, function () {
6847
- var emojiPicker;
6848
- return __generator$3(this, function (_a) {
6849
- switch (_a.label) {
6850
- case 0: return [4 /*yield*/, Promise.resolve().then(function () { return nimblePicker$2; })];
6851
- case 1:
6852
- emojiPicker = _a.sent();
6853
- return [2 /*return*/, { default: emojiPicker.default }];
6854
- }
6855
- });
6856
- }); });
6835
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var DefaultEmoji$1 = React__default["default"].lazy(function () { return Promise.resolve().then(function () { return DefaultEmoji; }); });
6836
+ var DefaultEmojiPicker$1 = React__default["default"].lazy(function () { return Promise.resolve().then(function () { return DefaultEmojiPicker; }); });
6857
6837
  var EmojiContext = React__default["default"].createContext(undefined);
6858
6838
  var EmojiProvider = function (_a) {
6859
6839
  var children = _a.children, value = _a.value;
6860
- var _b = value.Emoji, Emoji = _b === void 0 ? DefaultEmoji : _b, emojiConfig = value.emojiConfig, _c = value.EmojiIndex, EmojiIndex = _c === void 0 ? DefaultEmojiIndex : _c, _d = value.EmojiPicker, EmojiPicker = _d === void 0 ? DefaultEmojiPicker : _d;
6840
+ var _b = value.Emoji, Emoji = _b === void 0 ? DefaultEmoji$1 : _b, emojiConfig = value.emojiConfig, _c = value.EmojiIndex, EmojiIndex = _c === void 0 ? DefaultEmojiIndex : _c, _d = value.EmojiPicker, EmojiPicker = _d === void 0 ? DefaultEmojiPicker$1 : _d;
6861
6841
  var emojiContextValue = {
6862
6842
  Emoji: Emoji,
6863
6843
  emojiConfig: emojiConfig,
@@ -7061,7 +7041,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
7061
7041
  return _getPrototypeOf$1(o);
7062
7042
  }
7063
7043
 
7064
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};function _defineProperty$6(obj, key, value) {
7044
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};function _defineProperty$5(obj, key, value) {
7065
7045
  if (key in obj) {
7066
7046
  Object.defineProperty(obj, key, {
7067
7047
  value: value,
@@ -7114,7 +7094,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
7114
7094
  window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
7115
7095
  function ownKeys$6(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
7116
7096
 
7117
- function _objectSpread$6(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$6(Object(source), true).forEach(function (key) { _defineProperty$6(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$6(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
7097
+ function _objectSpread$6(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$6(Object(source), true).forEach(function (key) { _defineProperty$5(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$6(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
7118
7098
 
7119
7099
  var consoleLogger = {
7120
7100
  type: 'logger',
@@ -7420,7 +7400,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
7420
7400
 
7421
7401
  function ownKeys$1$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
7422
7402
 
7423
- function _objectSpread$1$1(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$1$1(Object(source), true).forEach(function (key) { _defineProperty$6(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$1$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
7403
+ function _objectSpread$1$1(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$1$1(Object(source), true).forEach(function (key) { _defineProperty$5(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$1$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
7424
7404
 
7425
7405
  function _createSuper$1(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$1(); return function _createSuperInternal() { var Super = _getPrototypeOf$1(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf$1(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn$1(this, result); }; }
7426
7406
 
@@ -7664,7 +7644,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
7664
7644
 
7665
7645
  function ownKeys$2$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
7666
7646
 
7667
- function _objectSpread$2$1(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$2$1(Object(source), true).forEach(function (key) { _defineProperty$6(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$2$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
7647
+ function _objectSpread$2$1(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$2$1(Object(source), true).forEach(function (key) { _defineProperty$5(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$2$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
7668
7648
 
7669
7649
  function _createSuper$1$1(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$1$1(); return function _createSuperInternal() { var Super = _getPrototypeOf$1(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf$1(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn$1(this, result); }; }
7670
7650
 
@@ -8563,7 +8543,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
8563
8543
 
8564
8544
  function ownKeys$3$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
8565
8545
 
8566
- function _objectSpread$3$1(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$3$1(Object(source), true).forEach(function (key) { _defineProperty$6(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$3$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
8546
+ function _objectSpread$3$1(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$3$1(Object(source), true).forEach(function (key) { _defineProperty$5(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$3$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
8567
8547
 
8568
8548
  var Interpolator = function () {
8569
8549
  function Interpolator() {
@@ -8785,7 +8765,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
8785
8765
 
8786
8766
  function ownKeys$4$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
8787
8767
 
8788
- function _objectSpread$4$1(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$4$1(Object(source), true).forEach(function (key) { _defineProperty$6(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$4$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
8768
+ function _objectSpread$4$1(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$4$1(Object(source), true).forEach(function (key) { _defineProperty$5(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$4$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
8789
8769
 
8790
8770
  function parseFormatStr(formatStr) {
8791
8771
  var formatName = formatStr.toLowerCase().trim();
@@ -8908,7 +8888,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
8908
8888
 
8909
8889
  function ownKeys$5$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
8910
8890
 
8911
- function _objectSpread$5$1(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$5$1(Object(source), true).forEach(function (key) { _defineProperty$6(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$5$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
8891
+ function _objectSpread$5$1(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$5$1(Object(source), true).forEach(function (key) { _defineProperty$5(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$5$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
8912
8892
 
8913
8893
  function _createSuper$2(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$2(); return function _createSuperInternal() { var Super = _getPrototypeOf$1(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf$1(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn$1(this, result); }; }
8914
8894
 
@@ -9225,7 +9205,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
9225
9205
 
9226
9206
  function ownKeys$6$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
9227
9207
 
9228
- function _objectSpread$6$1(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$6$1(Object(source), true).forEach(function (key) { _defineProperty$6(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$6$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
9208
+ function _objectSpread$6$1(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$6$1(Object(source), true).forEach(function (key) { _defineProperty$5(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$6$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
9229
9209
 
9230
9210
  function _createSuper$3(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$3(); return function _createSuperInternal() { var Super = _getPrototypeOf$1(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf$1(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn$1(this, result); }; }
9231
9211
 
@@ -9829,7 +9809,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
9829
9809
  return I18n;
9830
9810
  }(EventEmitter);
9831
9811
 
9832
- _defineProperty$6(I18n, "createInstance", function () {
9812
+ _defineProperty$5(I18n, "createInstance", function () {
9833
9813
  var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
9834
9814
  var callback = arguments.length > 1 ? arguments[1] : undefined;
9835
9815
  return new I18n(options, callback);
@@ -11845,7 +11825,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
11845
11825
  function fromEvent$1(evt) {
11846
11826
  return __awaiter$1(this, void 0, void 0, function () {
11847
11827
  return __generator$1(this, function (_a) {
11848
- if (isObject$4(evt) && isDataTransfer$1(evt)) {
11828
+ if (isObject$3(evt) && isDataTransfer$1(evt)) {
11849
11829
  return [2 /*return*/, getDataTransferFiles$1(evt.dataTransfer, evt.type)];
11850
11830
  }
11851
11831
  else if (isChangeEvt$1(evt)) {
@@ -11859,12 +11839,12 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
11859
11839
  });
11860
11840
  }
11861
11841
  function isDataTransfer$1(value) {
11862
- return isObject$4(value.dataTransfer);
11842
+ return isObject$3(value.dataTransfer);
11863
11843
  }
11864
11844
  function isChangeEvt$1(value) {
11865
- return isObject$4(value) && isObject$4(value.target);
11845
+ return isObject$3(value) && isObject$3(value.target);
11866
11846
  }
11867
- function isObject$4(v) {
11847
+ function isObject$3(v) {
11868
11848
  return typeof v === 'object' && v !== null;
11869
11849
  }
11870
11850
  function getInputFiles$1(evt) {
@@ -12058,9 +12038,9 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
12058
12038
 
12059
12039
  window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};function ownKeys$5(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
12060
12040
 
12061
- function _objectSpread$5(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$5(Object(source), !0).forEach(function (key) { _defineProperty$5(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$5(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
12041
+ function _objectSpread$5(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$5(Object(source), !0).forEach(function (key) { _defineProperty$4(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$5(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
12062
12042
 
12063
- function _defineProperty$5(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
12043
+ function _defineProperty$4(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
12064
12044
 
12065
12045
  function _slicedToArray$4(arr, i) { return _arrayWithHoles$3(arr) || _iterableToArrayLimit$3(arr, i) || _unsupportedIterableToArray$4(arr, i) || _nonIterableRest$3(); }
12066
12046
 
@@ -12244,7 +12224,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
12244
12224
  accept.filter(function (item) {
12245
12225
  return item === "audio/*" || item === "video/*" || item === "image/*" || item === "text/*" || /\w+\/[-+.\w]+/g.test(item);
12246
12226
  }).reduce(function (a, b) {
12247
- return _objectSpread$5(_objectSpread$5({}, a), {}, _defineProperty$5({}, b, []));
12227
+ return _objectSpread$5(_objectSpread$5({}, a), {}, _defineProperty$4({}, b, []));
12248
12228
  }, {}) : {}
12249
12229
  }];
12250
12230
  }
@@ -12298,9 +12278,9 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
12298
12278
 
12299
12279
  function ownKeys$4(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
12300
12280
 
12301
- function _objectSpread$4(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$4(Object(source), !0).forEach(function (key) { _defineProperty$4(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$4(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
12281
+ function _objectSpread$4(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$4(Object(source), !0).forEach(function (key) { _defineProperty$3(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$4(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
12302
12282
 
12303
- function _defineProperty$4(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
12283
+ function _defineProperty$3(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
12304
12284
 
12305
12285
  function _objectWithoutProperties$1(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose$3(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
12306
12286
 
@@ -13067,7 +13047,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
13067
13047
  onDrop = _ref2.onDrop,
13068
13048
  rest = _objectWithoutProperties$1(_ref2, _excluded3$1);
13069
13049
 
13070
- return _objectSpread$4(_objectSpread$4(_defineProperty$4({
13050
+ return _objectSpread$4(_objectSpread$4(_defineProperty$3({
13071
13051
  onKeyDown: composeKeyboardHandler(composeEventHandlers$1(onKeyDown, onKeyDownCb)),
13072
13052
  onFocus: composeKeyboardHandler(composeEventHandlers$1(onFocus, onFocusCb)),
13073
13053
  onBlur: composeKeyboardHandler(composeEventHandlers$1(onBlur, onBlurCb)),
@@ -13094,7 +13074,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
13094
13074
  onClick = _ref3.onClick,
13095
13075
  rest = _objectWithoutProperties$1(_ref3, _excluded4$1);
13096
13076
 
13097
- var inputProps = _defineProperty$4({
13077
+ var inputProps = _defineProperty$3({
13098
13078
  accept: accept,
13099
13079
  multiple: multiple,
13100
13080
  type: "file",
@@ -13739,7 +13719,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
13739
13719
  });
13740
13720
 
13741
13721
  window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
13742
- var defineProperty$2 = createCommonjsModule$1(function (module) {
13722
+ var defineProperty$1 = createCommonjsModule$1(function (module) {
13743
13723
  function _defineProperty(obj, key, value) {
13744
13724
  if (key in obj) {
13745
13725
  Object.defineProperty(obj, key, {
@@ -13758,7 +13738,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
13758
13738
  module.exports = _defineProperty, module.exports.__esModule = true, module.exports["default"] = module.exports;
13759
13739
  });
13760
13740
 
13761
- var _defineProperty$3 = unwrapExports(defineProperty$2);
13741
+ var _defineProperty$2 = unwrapExports(defineProperty$1);
13762
13742
 
13763
13743
  window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
13764
13744
  var arrayWithHoles = createCommonjsModule$1(function (module) {
@@ -16061,7 +16041,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
16061
16041
 
16062
16042
  window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var immutable = extend$1;
16063
16043
 
16064
- var hasOwnProperty$3 = Object.prototype.hasOwnProperty;
16044
+ var hasOwnProperty = Object.prototype.hasOwnProperty;
16065
16045
 
16066
16046
  function extend$1() {
16067
16047
  var target = {};
@@ -16070,7 +16050,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
16070
16050
  var source = arguments[i];
16071
16051
 
16072
16052
  for (var key in source) {
16073
- if (hasOwnProperty$3.call(source, key)) {
16053
+ if (hasOwnProperty.call(source, key)) {
16074
16054
  target[key] = source[key];
16075
16055
  }
16076
16056
  }
@@ -16103,7 +16083,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
16103
16083
  window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
16104
16084
  var hasOwn = Object.prototype.hasOwnProperty;
16105
16085
  var toStr = Object.prototype.toString;
16106
- var defineProperty$1 = Object.defineProperty;
16086
+ var defineProperty = Object.defineProperty;
16107
16087
  var gOPD = Object.getOwnPropertyDescriptor;
16108
16088
 
16109
16089
  var isArray = function isArray(arr) {
@@ -16136,8 +16116,8 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
16136
16116
 
16137
16117
  // If name is '__proto__', and Object.defineProperty is available, define __proto__ as an own property on target
16138
16118
  var setProperty = function setProperty(target, options) {
16139
- if (defineProperty$1 && options.name === '__proto__') {
16140
- defineProperty$1(target, options.name, {
16119
+ if (defineProperty && options.name === '__proto__') {
16120
+ defineProperty(target, options.name, {
16141
16121
  enumerable: true,
16142
16122
  configurable: true,
16143
16123
  value: options.newValue,
@@ -33567,13 +33547,13 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
33567
33547
  };
33568
33548
 
33569
33549
  /** Detect free variable `global` from Node.js. */
33570
- var freeGlobal$4 = typeof commonjsGlobal == 'object' && commonjsGlobal && commonjsGlobal.Object === Object && commonjsGlobal;
33550
+ var freeGlobal$3 = typeof commonjsGlobal == 'object' && commonjsGlobal && commonjsGlobal.Object === Object && commonjsGlobal;
33571
33551
 
33572
33552
  /** Detect free variable `self`. */
33573
- var freeSelf$4 = typeof self == 'object' && self && self.Object === Object && self;
33553
+ var freeSelf$3 = typeof self == 'object' && self && self.Object === Object && self;
33574
33554
 
33575
33555
  /** Used as a reference to the global object. */
33576
- var root$4 = freeGlobal$4 || freeSelf$4 || Function('return this')();
33556
+ var root$3 = freeGlobal$3 || freeSelf$3 || Function('return this')();
33577
33557
 
33578
33558
  /**
33579
33559
  * A specialized version of `_.reduce` for arrays without support for
@@ -33703,20 +33683,20 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
33703
33683
  }
33704
33684
 
33705
33685
  /** Used for built-in method references. */
33706
- var objectProto$7 = Object.prototype;
33686
+ var objectProto$3 = Object.prototype;
33707
33687
 
33708
33688
  /**
33709
33689
  * Used to resolve the
33710
33690
  * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
33711
33691
  * of values.
33712
33692
  */
33713
- var objectToString$4 = objectProto$7.toString;
33693
+ var objectToString$3 = objectProto$3.toString;
33714
33694
 
33715
33695
  /** Built-in value references. */
33716
- var Symbol$3 = root$4.Symbol;
33696
+ var Symbol$2 = root$3.Symbol;
33717
33697
 
33718
33698
  /** Used to convert symbols to primitives and strings. */
33719
- var symbolProto$1 = Symbol$3 ? Symbol$3.prototype : undefined,
33699
+ var symbolProto$1 = Symbol$2 ? Symbol$2.prototype : undefined,
33720
33700
  symbolToString$1 = symbolProto$1 ? symbolProto$1.toString : undefined;
33721
33701
 
33722
33702
  /**
@@ -33871,7 +33851,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
33871
33851
  */
33872
33852
  function isSymbol$3(value) {
33873
33853
  return typeof value == 'symbol' ||
33874
- (isObjectLike$3(value) && objectToString$4.call(value) == symbolTag$3);
33854
+ (isObjectLike$3(value) && objectToString$3.call(value) == symbolTag$3);
33875
33855
  }
33876
33856
 
33877
33857
  /**
@@ -37787,7 +37767,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
37787
37767
  window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
37788
37768
  function ownKeys$3(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
37789
37769
 
37790
- function _objectSpread$3(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$3(Object(source), !0).forEach(function (key) { _defineProperty$3(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$3(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
37770
+ function _objectSpread$3(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$3(Object(source), !0).forEach(function (key) { _defineProperty$2(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$3(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
37791
37771
  var List = function List(_ref) {
37792
37772
  var className = _ref.className,
37793
37773
  component = _ref.component,
@@ -38654,7 +38634,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
38654
38634
  window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
38655
38635
  function ownKeys$2(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
38656
38636
 
38657
- function _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$2(Object(source), !0).forEach(function (key) { _defineProperty$3(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$2(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
38637
+ function _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$2(Object(source), !0).forEach(function (key) { _defineProperty$2(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$2(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
38658
38638
 
38659
38639
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
38660
38640
 
@@ -38671,7 +38651,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
38671
38651
 
38672
38652
  _this = _super.call(this, _props);
38673
38653
 
38674
- _defineProperty$3(_assertThisInitialized(_this), "getSelectionPosition", function () {
38654
+ _defineProperty$2(_assertThisInitialized(_this), "getSelectionPosition", function () {
38675
38655
  if (!_this.textareaRef) return null;
38676
38656
  return {
38677
38657
  selectionEnd: _this.textareaRef.selectionEnd,
@@ -38679,7 +38659,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
38679
38659
  };
38680
38660
  });
38681
38661
 
38682
- _defineProperty$3(_assertThisInitialized(_this), "getSelectedText", function () {
38662
+ _defineProperty$2(_assertThisInitialized(_this), "getSelectedText", function () {
38683
38663
  if (!_this.textareaRef) return null;
38684
38664
  var _this$textareaRef = _this.textareaRef,
38685
38665
  selectionEnd = _this$textareaRef.selectionEnd,
@@ -38688,7 +38668,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
38688
38668
  return _this.state.value.substr(selectionStart, selectionEnd - selectionStart);
38689
38669
  });
38690
38670
 
38691
- _defineProperty$3(_assertThisInitialized(_this), "setCaretPosition", function () {
38671
+ _defineProperty$2(_assertThisInitialized(_this), "setCaretPosition", function () {
38692
38672
  var position = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
38693
38673
  if (!_this.textareaRef) return;
38694
38674
 
@@ -38697,16 +38677,16 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
38697
38677
  _this.textareaRef.setSelectionRange(position, position);
38698
38678
  });
38699
38679
 
38700
- _defineProperty$3(_assertThisInitialized(_this), "getCaretPosition", function () {
38680
+ _defineProperty$2(_assertThisInitialized(_this), "getCaretPosition", function () {
38701
38681
  if (!_this.textareaRef) return 0;
38702
38682
  return _this.textareaRef.selectionEnd;
38703
38683
  });
38704
38684
 
38705
- _defineProperty$3(_assertThisInitialized(_this), "_defaultShouldSubmit", function (event) {
38706
- return event.key === 'Enter' && !event.shiftKey;
38685
+ _defineProperty$2(_assertThisInitialized(_this), "_defaultShouldSubmit", function (event) {
38686
+ return event.key === 'Enter' && !event.shiftKey && !event.nativeEvent.isComposing;
38707
38687
  });
38708
38688
 
38709
- _defineProperty$3(_assertThisInitialized(_this), "_handleKeyDown", function (event) {
38689
+ _defineProperty$2(_assertThisInitialized(_this), "_handleKeyDown", function (event) {
38710
38690
  var _this$props$shouldSub = _this.props.shouldSubmit,
38711
38691
  shouldSubmit = _this$props$shouldSub === void 0 ? _this._defaultShouldSubmit : _this$props$shouldSub;
38712
38692
  if (shouldSubmit !== null && shouldSubmit !== void 0 && shouldSubmit(event)) return _this._onEnter(event);
@@ -38714,7 +38694,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
38714
38694
  if (event.key === 'Escape') return _this._closeAutocomplete();
38715
38695
  });
38716
38696
 
38717
- _defineProperty$3(_assertThisInitialized(_this), "_onEnter", function (event) {
38697
+ _defineProperty$2(_assertThisInitialized(_this), "_onEnter", function (event) {
38718
38698
  if (!_this.textareaRef) return;
38719
38699
  var trigger = _this.state.currentTrigger;
38720
38700
 
@@ -38732,7 +38712,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
38732
38712
  }
38733
38713
  });
38734
38714
 
38735
- _defineProperty$3(_assertThisInitialized(_this), "_onSpace", function () {
38715
+ _defineProperty$2(_assertThisInitialized(_this), "_onSpace", function () {
38736
38716
  if (!_this.props.replaceWord || !_this.textareaRef) return; // don't change characters if the element doesn't have focus
38737
38717
 
38738
38718
  var hasFocus = _this.textareaRef.matches(':focus');
@@ -38742,7 +38722,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
38742
38722
  _this._replaceWord();
38743
38723
  });
38744
38724
 
38745
- _defineProperty$3(_assertThisInitialized(_this), "_replaceWord", function () {
38725
+ _defineProperty$2(_assertThisInitialized(_this), "_replaceWord", function () {
38746
38726
  var value = _this.state.value;
38747
38727
  var lastWordRegex = /([^\s]+)(\s*)$/;
38748
38728
  var match = lastWordRegex.exec(value.slice(0, _this.getCaretPosition()));
@@ -38771,7 +38751,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
38771
38751
  });
38772
38752
  });
38773
38753
 
38774
- _defineProperty$3(_assertThisInitialized(_this), "_onSelect", function (newToken) {
38754
+ _defineProperty$2(_assertThisInitialized(_this), "_onSelect", function (newToken) {
38775
38755
  var _this$props = _this.props,
38776
38756
  closeCommandsList = _this$props.closeCommandsList,
38777
38757
  closeMentionsList = _this$props.closeMentionsList,
@@ -38833,7 +38813,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
38833
38813
  if (showMentionsList) closeMentionsList();
38834
38814
  });
38835
38815
 
38836
- _defineProperty$3(_assertThisInitialized(_this), "_getItemOnSelect", function (paramTrigger) {
38816
+ _defineProperty$2(_assertThisInitialized(_this), "_getItemOnSelect", function (paramTrigger) {
38837
38817
  var stateTrigger = _this.state.currentTrigger;
38838
38818
 
38839
38819
  var triggerSettings = _this._getCurrentTriggerSettings(paramTrigger);
@@ -38855,7 +38835,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
38855
38835
  };
38856
38836
  });
38857
38837
 
38858
- _defineProperty$3(_assertThisInitialized(_this), "_getTextToReplace", function (paramTrigger) {
38838
+ _defineProperty$2(_assertThisInitialized(_this), "_getTextToReplace", function (paramTrigger) {
38859
38839
  var _this$state2 = _this.state,
38860
38840
  actualToken = _this$state2.actualToken,
38861
38841
  stateTrigger = _this$state2.currentTrigger;
@@ -38906,14 +38886,14 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
38906
38886
  };
38907
38887
  });
38908
38888
 
38909
- _defineProperty$3(_assertThisInitialized(_this), "_getCurrentTriggerSettings", function (paramTrigger) {
38889
+ _defineProperty$2(_assertThisInitialized(_this), "_getCurrentTriggerSettings", function (paramTrigger) {
38910
38890
  var stateTrigger = _this.state.currentTrigger;
38911
38891
  var currentTrigger = paramTrigger || stateTrigger;
38912
38892
  if (!currentTrigger) return null;
38913
38893
  return _this.props.trigger[currentTrigger];
38914
38894
  });
38915
38895
 
38916
- _defineProperty$3(_assertThisInitialized(_this), "_getValuesFromProvider", function () {
38896
+ _defineProperty$2(_assertThisInitialized(_this), "_getValuesFromProvider", function () {
38917
38897
  var _this$state3 = _this.state,
38918
38898
  actualToken = _this$state3.actualToken,
38919
38899
  currentTrigger = _this$state3.currentTrigger;
@@ -38962,7 +38942,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
38962
38942
  });
38963
38943
  });
38964
38944
 
38965
- _defineProperty$3(_assertThisInitialized(_this), "_getSuggestions", function (paramTrigger) {
38945
+ _defineProperty$2(_assertThisInitialized(_this), "_getSuggestions", function (paramTrigger) {
38966
38946
  var _this$state4 = _this.state,
38967
38947
  stateTrigger = _this$state4.currentTrigger,
38968
38948
  data = _this$state4.data;
@@ -38971,7 +38951,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
38971
38951
  return data;
38972
38952
  });
38973
38953
 
38974
- _defineProperty$3(_assertThisInitialized(_this), "_closeAutocomplete", function () {
38954
+ _defineProperty$2(_assertThisInitialized(_this), "_closeAutocomplete", function () {
38975
38955
  _this.setState({
38976
38956
  currentTrigger: null,
38977
38957
  data: null,
@@ -38981,7 +38961,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
38981
38961
  });
38982
38962
  });
38983
38963
 
38984
- _defineProperty$3(_assertThisInitialized(_this), "_cleanUpProps", function () {
38964
+ _defineProperty$2(_assertThisInitialized(_this), "_cleanUpProps", function () {
38985
38965
  var props = _objectSpread$2({}, _this.props);
38986
38966
 
38987
38967
  var notSafe = ['additionalTextareaProps', 'className', 'closeCommandsList', 'closeMentionsList', 'closeOnClickOutside', 'containerClassName', 'containerStyle', 'disableMentions', 'dropdownClassName', 'dropdownStyle', 'grow', 'handleSubmit', 'innerRef', 'itemClassName', 'itemStyle', 'listClassName', 'listStyle', 'loaderClassName', 'loaderStyle', 'loadingComponent', 'minChar', 'movePopupAsYouType', 'onCaretPositionChange', 'onChange', 'ref', 'replaceWord', 'scrollToItem', 'shouldSubmit', 'showCommandsList', 'showMentionsList', 'SuggestionItem', 'SuggestionList', 'trigger', 'value']; // eslint-disable-next-line
@@ -38993,13 +38973,13 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
38993
38973
  return props;
38994
38974
  });
38995
38975
 
38996
- _defineProperty$3(_assertThisInitialized(_this), "_isCommand", function (text) {
38976
+ _defineProperty$2(_assertThisInitialized(_this), "_isCommand", function (text) {
38997
38977
  if (text[0] !== '/') return false;
38998
38978
  var tokens = text.split(' ');
38999
38979
  return tokens.length <= 1;
39000
38980
  });
39001
38981
 
39002
- _defineProperty$3(_assertThisInitialized(_this), "_changeHandler", function (e) {
38982
+ _defineProperty$2(_assertThisInitialized(_this), "_changeHandler", function (e) {
39003
38983
  var _this$props2 = _this.props,
39004
38984
  minChar = _this$props2.minChar,
39005
38985
  movePopupAsYouType = _this$props2.movePopupAsYouType,
@@ -39084,7 +39064,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
39084
39064
  });
39085
39065
  });
39086
39066
 
39087
- _defineProperty$3(_assertThisInitialized(_this), "_selectHandler", function (e) {
39067
+ _defineProperty$2(_assertThisInitialized(_this), "_selectHandler", function (e) {
39088
39068
  var _this$props3 = _this.props,
39089
39069
  onCaretPositionChange = _this$props3.onCaretPositionChange,
39090
39070
  onSelect = _this$props3.onSelect;
@@ -39096,7 +39076,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
39096
39076
  }
39097
39077
  });
39098
39078
 
39099
- _defineProperty$3(_assertThisInitialized(_this), "_onClickAndBlurHandler", function (e) {
39079
+ _defineProperty$2(_assertThisInitialized(_this), "_onClickAndBlurHandler", function (e) {
39100
39080
  var _this$props4 = _this.props,
39101
39081
  closeOnClickOutside = _this$props4.closeOnClickOutside,
39102
39082
  onBlur = _this$props4.onBlur; // If this is a click: e.target is the textarea, and e.relatedTarget is the thing
@@ -39117,11 +39097,11 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
39117
39097
  }
39118
39098
  });
39119
39099
 
39120
- _defineProperty$3(_assertThisInitialized(_this), "_onScrollHandler", function () {
39100
+ _defineProperty$2(_assertThisInitialized(_this), "_onScrollHandler", function () {
39121
39101
  return _this._closeAutocomplete();
39122
39102
  });
39123
39103
 
39124
- _defineProperty$3(_assertThisInitialized(_this), "_dropdownScroll", function (item) {
39104
+ _defineProperty$2(_assertThisInitialized(_this), "_dropdownScroll", function (item) {
39125
39105
  var scrollToItem = _this.props.scrollToItem;
39126
39106
  if (!scrollToItem) return;
39127
39107
 
@@ -39137,7 +39117,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
39137
39117
  scrollToItem(_this.dropdownRef, item);
39138
39118
  });
39139
39119
 
39140
- _defineProperty$3(_assertThisInitialized(_this), "getTriggerProps", function () {
39120
+ _defineProperty$2(_assertThisInitialized(_this), "getTriggerProps", function () {
39141
39121
  var _this$props5 = _this.props,
39142
39122
  showCommandsList = _this$props5.showCommandsList,
39143
39123
  showMentionsList = _this$props5.showMentionsList,
@@ -39182,7 +39162,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
39182
39162
  return triggerProps;
39183
39163
  });
39184
39164
 
39185
- _defineProperty$3(_assertThisInitialized(_this), "setDropdownRef", function (element) {
39165
+ _defineProperty$2(_assertThisInitialized(_this), "setDropdownRef", function (element) {
39186
39166
  _this.dropdownRef = element;
39187
39167
  });
39188
39168
 
@@ -39319,7 +39299,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
39319
39299
  return ReactTextareaAutocomplete;
39320
39300
  }(React__default["default"].Component);
39321
39301
 
39322
- _defineProperty$3(ReactTextareaAutocomplete, "defaultProps", {
39302
+ _defineProperty$2(ReactTextareaAutocomplete, "defaultProps", {
39323
39303
  closeOnClickOutside: true,
39324
39304
  maxRows: 10,
39325
39305
  minChar: 1,
@@ -39391,385 +39371,6 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
39391
39371
  /** Built-in method references without a dependency on `root`. */
39392
39372
  var freeParseInt$1 = parseInt;
39393
39373
 
39394
- /** Detect free variable `global` from Node.js. */
39395
- var freeGlobal$3 = typeof commonjsGlobal == 'object' && commonjsGlobal && commonjsGlobal.Object === Object && commonjsGlobal;
39396
-
39397
- /** Detect free variable `self`. */
39398
- var freeSelf$3 = typeof self == 'object' && self && self.Object === Object && self;
39399
-
39400
- /** Used as a reference to the global object. */
39401
- var root$3 = freeGlobal$3 || freeSelf$3 || Function('return this')();
39402
-
39403
- /** Used for built-in method references. */
39404
- var objectProto$6 = Object.prototype;
39405
-
39406
- /**
39407
- * Used to resolve the
39408
- * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
39409
- * of values.
39410
- */
39411
- var objectToString$3 = objectProto$6.toString;
39412
-
39413
- /* Built-in method references for those with the same name as other `lodash` methods. */
39414
- var nativeMax$1 = Math.max,
39415
- nativeMin$1 = Math.min;
39416
-
39417
- /**
39418
- * Gets the timestamp of the number of milliseconds that have elapsed since
39419
- * the Unix epoch (1 January 1970 00:00:00 UTC).
39420
- *
39421
- * @static
39422
- * @memberOf _
39423
- * @since 2.4.0
39424
- * @category Date
39425
- * @returns {number} Returns the timestamp.
39426
- * @example
39427
- *
39428
- * _.defer(function(stamp) {
39429
- * console.log(_.now() - stamp);
39430
- * }, _.now());
39431
- * // => Logs the number of milliseconds it took for the deferred invocation.
39432
- */
39433
- var now$1 = function() {
39434
- return root$3.Date.now();
39435
- };
39436
-
39437
- /**
39438
- * Creates a debounced function that delays invoking `func` until after `wait`
39439
- * milliseconds have elapsed since the last time the debounced function was
39440
- * invoked. The debounced function comes with a `cancel` method to cancel
39441
- * delayed `func` invocations and a `flush` method to immediately invoke them.
39442
- * Provide `options` to indicate whether `func` should be invoked on the
39443
- * leading and/or trailing edge of the `wait` timeout. The `func` is invoked
39444
- * with the last arguments provided to the debounced function. Subsequent
39445
- * calls to the debounced function return the result of the last `func`
39446
- * invocation.
39447
- *
39448
- * **Note:** If `leading` and `trailing` options are `true`, `func` is
39449
- * invoked on the trailing edge of the timeout only if the debounced function
39450
- * is invoked more than once during the `wait` timeout.
39451
- *
39452
- * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred
39453
- * until to the next tick, similar to `setTimeout` with a timeout of `0`.
39454
- *
39455
- * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)
39456
- * for details over the differences between `_.debounce` and `_.throttle`.
39457
- *
39458
- * @static
39459
- * @memberOf _
39460
- * @since 0.1.0
39461
- * @category Function
39462
- * @param {Function} func The function to debounce.
39463
- * @param {number} [wait=0] The number of milliseconds to delay.
39464
- * @param {Object} [options={}] The options object.
39465
- * @param {boolean} [options.leading=false]
39466
- * Specify invoking on the leading edge of the timeout.
39467
- * @param {number} [options.maxWait]
39468
- * The maximum time `func` is allowed to be delayed before it's invoked.
39469
- * @param {boolean} [options.trailing=true]
39470
- * Specify invoking on the trailing edge of the timeout.
39471
- * @returns {Function} Returns the new debounced function.
39472
- * @example
39473
- *
39474
- * // Avoid costly calculations while the window size is in flux.
39475
- * jQuery(window).on('resize', _.debounce(calculateLayout, 150));
39476
- *
39477
- * // Invoke `sendMail` when clicked, debouncing subsequent calls.
39478
- * jQuery(element).on('click', _.debounce(sendMail, 300, {
39479
- * 'leading': true,
39480
- * 'trailing': false
39481
- * }));
39482
- *
39483
- * // Ensure `batchLog` is invoked once after 1 second of debounced calls.
39484
- * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });
39485
- * var source = new EventSource('/stream');
39486
- * jQuery(source).on('message', debounced);
39487
- *
39488
- * // Cancel the trailing debounced invocation.
39489
- * jQuery(window).on('popstate', debounced.cancel);
39490
- */
39491
- function debounce$2(func, wait, options) {
39492
- var lastArgs,
39493
- lastThis,
39494
- maxWait,
39495
- result,
39496
- timerId,
39497
- lastCallTime,
39498
- lastInvokeTime = 0,
39499
- leading = false,
39500
- maxing = false,
39501
- trailing = true;
39502
-
39503
- if (typeof func != 'function') {
39504
- throw new TypeError(FUNC_ERROR_TEXT$1);
39505
- }
39506
- wait = toNumber$1(wait) || 0;
39507
- if (isObject$3(options)) {
39508
- leading = !!options.leading;
39509
- maxing = 'maxWait' in options;
39510
- maxWait = maxing ? nativeMax$1(toNumber$1(options.maxWait) || 0, wait) : maxWait;
39511
- trailing = 'trailing' in options ? !!options.trailing : trailing;
39512
- }
39513
-
39514
- function invokeFunc(time) {
39515
- var args = lastArgs,
39516
- thisArg = lastThis;
39517
-
39518
- lastArgs = lastThis = undefined;
39519
- lastInvokeTime = time;
39520
- result = func.apply(thisArg, args);
39521
- return result;
39522
- }
39523
-
39524
- function leadingEdge(time) {
39525
- // Reset any `maxWait` timer.
39526
- lastInvokeTime = time;
39527
- // Start the timer for the trailing edge.
39528
- timerId = setTimeout(timerExpired, wait);
39529
- // Invoke the leading edge.
39530
- return leading ? invokeFunc(time) : result;
39531
- }
39532
-
39533
- function remainingWait(time) {
39534
- var timeSinceLastCall = time - lastCallTime,
39535
- timeSinceLastInvoke = time - lastInvokeTime,
39536
- result = wait - timeSinceLastCall;
39537
-
39538
- return maxing ? nativeMin$1(result, maxWait - timeSinceLastInvoke) : result;
39539
- }
39540
-
39541
- function shouldInvoke(time) {
39542
- var timeSinceLastCall = time - lastCallTime,
39543
- timeSinceLastInvoke = time - lastInvokeTime;
39544
-
39545
- // Either this is the first call, activity has stopped and we're at the
39546
- // trailing edge, the system time has gone backwards and we're treating
39547
- // it as the trailing edge, or we've hit the `maxWait` limit.
39548
- return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||
39549
- (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));
39550
- }
39551
-
39552
- function timerExpired() {
39553
- var time = now$1();
39554
- if (shouldInvoke(time)) {
39555
- return trailingEdge(time);
39556
- }
39557
- // Restart the timer.
39558
- timerId = setTimeout(timerExpired, remainingWait(time));
39559
- }
39560
-
39561
- function trailingEdge(time) {
39562
- timerId = undefined;
39563
-
39564
- // Only invoke if we have `lastArgs` which means `func` has been
39565
- // debounced at least once.
39566
- if (trailing && lastArgs) {
39567
- return invokeFunc(time);
39568
- }
39569
- lastArgs = lastThis = undefined;
39570
- return result;
39571
- }
39572
-
39573
- function cancel() {
39574
- if (timerId !== undefined) {
39575
- clearTimeout(timerId);
39576
- }
39577
- lastInvokeTime = 0;
39578
- lastArgs = lastCallTime = lastThis = timerId = undefined;
39579
- }
39580
-
39581
- function flush() {
39582
- return timerId === undefined ? result : trailingEdge(now$1());
39583
- }
39584
-
39585
- function debounced() {
39586
- var time = now$1(),
39587
- isInvoking = shouldInvoke(time);
39588
-
39589
- lastArgs = arguments;
39590
- lastThis = this;
39591
- lastCallTime = time;
39592
-
39593
- if (isInvoking) {
39594
- if (timerId === undefined) {
39595
- return leadingEdge(lastCallTime);
39596
- }
39597
- if (maxing) {
39598
- // Handle invocations in a tight loop.
39599
- timerId = setTimeout(timerExpired, wait);
39600
- return invokeFunc(lastCallTime);
39601
- }
39602
- }
39603
- if (timerId === undefined) {
39604
- timerId = setTimeout(timerExpired, wait);
39605
- }
39606
- return result;
39607
- }
39608
- debounced.cancel = cancel;
39609
- debounced.flush = flush;
39610
- return debounced;
39611
- }
39612
-
39613
- /**
39614
- * Checks if `value` is the
39615
- * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
39616
- * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
39617
- *
39618
- * @static
39619
- * @memberOf _
39620
- * @since 0.1.0
39621
- * @category Lang
39622
- * @param {*} value The value to check.
39623
- * @returns {boolean} Returns `true` if `value` is an object, else `false`.
39624
- * @example
39625
- *
39626
- * _.isObject({});
39627
- * // => true
39628
- *
39629
- * _.isObject([1, 2, 3]);
39630
- * // => true
39631
- *
39632
- * _.isObject(_.noop);
39633
- * // => true
39634
- *
39635
- * _.isObject(null);
39636
- * // => false
39637
- */
39638
- function isObject$3(value) {
39639
- var type = typeof value;
39640
- return !!value && (type == 'object' || type == 'function');
39641
- }
39642
-
39643
- /**
39644
- * Checks if `value` is object-like. A value is object-like if it's not `null`
39645
- * and has a `typeof` result of "object".
39646
- *
39647
- * @static
39648
- * @memberOf _
39649
- * @since 4.0.0
39650
- * @category Lang
39651
- * @param {*} value The value to check.
39652
- * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
39653
- * @example
39654
- *
39655
- * _.isObjectLike({});
39656
- * // => true
39657
- *
39658
- * _.isObjectLike([1, 2, 3]);
39659
- * // => true
39660
- *
39661
- * _.isObjectLike(_.noop);
39662
- * // => false
39663
- *
39664
- * _.isObjectLike(null);
39665
- * // => false
39666
- */
39667
- function isObjectLike$2(value) {
39668
- return !!value && typeof value == 'object';
39669
- }
39670
-
39671
- /**
39672
- * Checks if `value` is classified as a `Symbol` primitive or object.
39673
- *
39674
- * @static
39675
- * @memberOf _
39676
- * @since 4.0.0
39677
- * @category Lang
39678
- * @param {*} value The value to check.
39679
- * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.
39680
- * @example
39681
- *
39682
- * _.isSymbol(Symbol.iterator);
39683
- * // => true
39684
- *
39685
- * _.isSymbol('abc');
39686
- * // => false
39687
- */
39688
- function isSymbol$2(value) {
39689
- return typeof value == 'symbol' ||
39690
- (isObjectLike$2(value) && objectToString$3.call(value) == symbolTag$2);
39691
- }
39692
-
39693
- /**
39694
- * Converts `value` to a number.
39695
- *
39696
- * @static
39697
- * @memberOf _
39698
- * @since 4.0.0
39699
- * @category Lang
39700
- * @param {*} value The value to process.
39701
- * @returns {number} Returns the number.
39702
- * @example
39703
- *
39704
- * _.toNumber(3.2);
39705
- * // => 3.2
39706
- *
39707
- * _.toNumber(Number.MIN_VALUE);
39708
- * // => 5e-324
39709
- *
39710
- * _.toNumber(Infinity);
39711
- * // => Infinity
39712
- *
39713
- * _.toNumber('3.2');
39714
- * // => 3.2
39715
- */
39716
- function toNumber$1(value) {
39717
- if (typeof value == 'number') {
39718
- return value;
39719
- }
39720
- if (isSymbol$2(value)) {
39721
- return NAN$1;
39722
- }
39723
- if (isObject$3(value)) {
39724
- var other = typeof value.valueOf == 'function' ? value.valueOf() : value;
39725
- value = isObject$3(other) ? (other + '') : other;
39726
- }
39727
- if (typeof value != 'string') {
39728
- return value === 0 ? value : +value;
39729
- }
39730
- value = value.replace(reTrim$1, '');
39731
- var isBinary = reIsBinary$1.test(value);
39732
- return (isBinary || reIsOctal$1.test(value))
39733
- ? freeParseInt$1(value.slice(2), isBinary ? 2 : 8)
39734
- : (reIsBadHex$1.test(value) ? NAN$1 : +value);
39735
- }
39736
-
39737
- var lodash_debounce = debounce$2;
39738
-
39739
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
39740
- /**
39741
- * lodash (Custom Build) <https://lodash.com/>
39742
- * Build: `lodash modularize exports="npm" -o ./`
39743
- * Copyright jQuery Foundation and other contributors <https://jquery.org/>
39744
- * Released under MIT license <https://lodash.com/license>
39745
- * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
39746
- * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
39747
- */
39748
-
39749
- /** Used as the `TypeError` message for "Functions" methods. */
39750
- var FUNC_ERROR_TEXT = 'Expected a function';
39751
-
39752
- /** Used as references for various `Number` constants. */
39753
- var NAN = 0 / 0;
39754
-
39755
- /** `Object#toString` result references. */
39756
- var symbolTag$1 = '[object Symbol]';
39757
-
39758
- /** Used to match leading and trailing whitespace. */
39759
- var reTrim = /^\s+|\s+$/g;
39760
-
39761
- /** Used to detect bad signed hexadecimal string values. */
39762
- var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;
39763
-
39764
- /** Used to detect binary string values. */
39765
- var reIsBinary = /^0b[01]+$/i;
39766
-
39767
- /** Used to detect octal string values. */
39768
- var reIsOctal = /^0o[0-7]+$/i;
39769
-
39770
- /** Built-in method references without a dependency on `root`. */
39771
- var freeParseInt = parseInt;
39772
-
39773
39374
  /** Detect free variable `global` from Node.js. */
39774
39375
  var freeGlobal$2 = typeof commonjsGlobal == 'object' && commonjsGlobal && commonjsGlobal.Object === Object && commonjsGlobal;
39775
39376
 
@@ -39780,18 +39381,18 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
39780
39381
  var root$2 = freeGlobal$2 || freeSelf$2 || Function('return this')();
39781
39382
 
39782
39383
  /** Used for built-in method references. */
39783
- var objectProto$5 = Object.prototype;
39384
+ var objectProto$2 = Object.prototype;
39784
39385
 
39785
39386
  /**
39786
39387
  * Used to resolve the
39787
39388
  * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
39788
39389
  * of values.
39789
39390
  */
39790
- var objectToString$2 = objectProto$5.toString;
39391
+ var objectToString$2 = objectProto$2.toString;
39791
39392
 
39792
39393
  /* Built-in method references for those with the same name as other `lodash` methods. */
39793
- var nativeMax = Math.max,
39794
- nativeMin = Math.min;
39394
+ var nativeMax$1 = Math.max,
39395
+ nativeMin$1 = Math.min;
39795
39396
 
39796
39397
  /**
39797
39398
  * Gets the timestamp of the number of milliseconds that have elapsed since
@@ -39809,10 +39410,389 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
39809
39410
  * }, _.now());
39810
39411
  * // => Logs the number of milliseconds it took for the deferred invocation.
39811
39412
  */
39812
- var now = function() {
39413
+ var now$1 = function() {
39813
39414
  return root$2.Date.now();
39814
39415
  };
39815
39416
 
39417
+ /**
39418
+ * Creates a debounced function that delays invoking `func` until after `wait`
39419
+ * milliseconds have elapsed since the last time the debounced function was
39420
+ * invoked. The debounced function comes with a `cancel` method to cancel
39421
+ * delayed `func` invocations and a `flush` method to immediately invoke them.
39422
+ * Provide `options` to indicate whether `func` should be invoked on the
39423
+ * leading and/or trailing edge of the `wait` timeout. The `func` is invoked
39424
+ * with the last arguments provided to the debounced function. Subsequent
39425
+ * calls to the debounced function return the result of the last `func`
39426
+ * invocation.
39427
+ *
39428
+ * **Note:** If `leading` and `trailing` options are `true`, `func` is
39429
+ * invoked on the trailing edge of the timeout only if the debounced function
39430
+ * is invoked more than once during the `wait` timeout.
39431
+ *
39432
+ * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred
39433
+ * until to the next tick, similar to `setTimeout` with a timeout of `0`.
39434
+ *
39435
+ * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)
39436
+ * for details over the differences between `_.debounce` and `_.throttle`.
39437
+ *
39438
+ * @static
39439
+ * @memberOf _
39440
+ * @since 0.1.0
39441
+ * @category Function
39442
+ * @param {Function} func The function to debounce.
39443
+ * @param {number} [wait=0] The number of milliseconds to delay.
39444
+ * @param {Object} [options={}] The options object.
39445
+ * @param {boolean} [options.leading=false]
39446
+ * Specify invoking on the leading edge of the timeout.
39447
+ * @param {number} [options.maxWait]
39448
+ * The maximum time `func` is allowed to be delayed before it's invoked.
39449
+ * @param {boolean} [options.trailing=true]
39450
+ * Specify invoking on the trailing edge of the timeout.
39451
+ * @returns {Function} Returns the new debounced function.
39452
+ * @example
39453
+ *
39454
+ * // Avoid costly calculations while the window size is in flux.
39455
+ * jQuery(window).on('resize', _.debounce(calculateLayout, 150));
39456
+ *
39457
+ * // Invoke `sendMail` when clicked, debouncing subsequent calls.
39458
+ * jQuery(element).on('click', _.debounce(sendMail, 300, {
39459
+ * 'leading': true,
39460
+ * 'trailing': false
39461
+ * }));
39462
+ *
39463
+ * // Ensure `batchLog` is invoked once after 1 second of debounced calls.
39464
+ * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });
39465
+ * var source = new EventSource('/stream');
39466
+ * jQuery(source).on('message', debounced);
39467
+ *
39468
+ * // Cancel the trailing debounced invocation.
39469
+ * jQuery(window).on('popstate', debounced.cancel);
39470
+ */
39471
+ function debounce$2(func, wait, options) {
39472
+ var lastArgs,
39473
+ lastThis,
39474
+ maxWait,
39475
+ result,
39476
+ timerId,
39477
+ lastCallTime,
39478
+ lastInvokeTime = 0,
39479
+ leading = false,
39480
+ maxing = false,
39481
+ trailing = true;
39482
+
39483
+ if (typeof func != 'function') {
39484
+ throw new TypeError(FUNC_ERROR_TEXT$1);
39485
+ }
39486
+ wait = toNumber$1(wait) || 0;
39487
+ if (isObject$2(options)) {
39488
+ leading = !!options.leading;
39489
+ maxing = 'maxWait' in options;
39490
+ maxWait = maxing ? nativeMax$1(toNumber$1(options.maxWait) || 0, wait) : maxWait;
39491
+ trailing = 'trailing' in options ? !!options.trailing : trailing;
39492
+ }
39493
+
39494
+ function invokeFunc(time) {
39495
+ var args = lastArgs,
39496
+ thisArg = lastThis;
39497
+
39498
+ lastArgs = lastThis = undefined;
39499
+ lastInvokeTime = time;
39500
+ result = func.apply(thisArg, args);
39501
+ return result;
39502
+ }
39503
+
39504
+ function leadingEdge(time) {
39505
+ // Reset any `maxWait` timer.
39506
+ lastInvokeTime = time;
39507
+ // Start the timer for the trailing edge.
39508
+ timerId = setTimeout(timerExpired, wait);
39509
+ // Invoke the leading edge.
39510
+ return leading ? invokeFunc(time) : result;
39511
+ }
39512
+
39513
+ function remainingWait(time) {
39514
+ var timeSinceLastCall = time - lastCallTime,
39515
+ timeSinceLastInvoke = time - lastInvokeTime,
39516
+ result = wait - timeSinceLastCall;
39517
+
39518
+ return maxing ? nativeMin$1(result, maxWait - timeSinceLastInvoke) : result;
39519
+ }
39520
+
39521
+ function shouldInvoke(time) {
39522
+ var timeSinceLastCall = time - lastCallTime,
39523
+ timeSinceLastInvoke = time - lastInvokeTime;
39524
+
39525
+ // Either this is the first call, activity has stopped and we're at the
39526
+ // trailing edge, the system time has gone backwards and we're treating
39527
+ // it as the trailing edge, or we've hit the `maxWait` limit.
39528
+ return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||
39529
+ (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));
39530
+ }
39531
+
39532
+ function timerExpired() {
39533
+ var time = now$1();
39534
+ if (shouldInvoke(time)) {
39535
+ return trailingEdge(time);
39536
+ }
39537
+ // Restart the timer.
39538
+ timerId = setTimeout(timerExpired, remainingWait(time));
39539
+ }
39540
+
39541
+ function trailingEdge(time) {
39542
+ timerId = undefined;
39543
+
39544
+ // Only invoke if we have `lastArgs` which means `func` has been
39545
+ // debounced at least once.
39546
+ if (trailing && lastArgs) {
39547
+ return invokeFunc(time);
39548
+ }
39549
+ lastArgs = lastThis = undefined;
39550
+ return result;
39551
+ }
39552
+
39553
+ function cancel() {
39554
+ if (timerId !== undefined) {
39555
+ clearTimeout(timerId);
39556
+ }
39557
+ lastInvokeTime = 0;
39558
+ lastArgs = lastCallTime = lastThis = timerId = undefined;
39559
+ }
39560
+
39561
+ function flush() {
39562
+ return timerId === undefined ? result : trailingEdge(now$1());
39563
+ }
39564
+
39565
+ function debounced() {
39566
+ var time = now$1(),
39567
+ isInvoking = shouldInvoke(time);
39568
+
39569
+ lastArgs = arguments;
39570
+ lastThis = this;
39571
+ lastCallTime = time;
39572
+
39573
+ if (isInvoking) {
39574
+ if (timerId === undefined) {
39575
+ return leadingEdge(lastCallTime);
39576
+ }
39577
+ if (maxing) {
39578
+ // Handle invocations in a tight loop.
39579
+ timerId = setTimeout(timerExpired, wait);
39580
+ return invokeFunc(lastCallTime);
39581
+ }
39582
+ }
39583
+ if (timerId === undefined) {
39584
+ timerId = setTimeout(timerExpired, wait);
39585
+ }
39586
+ return result;
39587
+ }
39588
+ debounced.cancel = cancel;
39589
+ debounced.flush = flush;
39590
+ return debounced;
39591
+ }
39592
+
39593
+ /**
39594
+ * Checks if `value` is the
39595
+ * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
39596
+ * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
39597
+ *
39598
+ * @static
39599
+ * @memberOf _
39600
+ * @since 0.1.0
39601
+ * @category Lang
39602
+ * @param {*} value The value to check.
39603
+ * @returns {boolean} Returns `true` if `value` is an object, else `false`.
39604
+ * @example
39605
+ *
39606
+ * _.isObject({});
39607
+ * // => true
39608
+ *
39609
+ * _.isObject([1, 2, 3]);
39610
+ * // => true
39611
+ *
39612
+ * _.isObject(_.noop);
39613
+ * // => true
39614
+ *
39615
+ * _.isObject(null);
39616
+ * // => false
39617
+ */
39618
+ function isObject$2(value) {
39619
+ var type = typeof value;
39620
+ return !!value && (type == 'object' || type == 'function');
39621
+ }
39622
+
39623
+ /**
39624
+ * Checks if `value` is object-like. A value is object-like if it's not `null`
39625
+ * and has a `typeof` result of "object".
39626
+ *
39627
+ * @static
39628
+ * @memberOf _
39629
+ * @since 4.0.0
39630
+ * @category Lang
39631
+ * @param {*} value The value to check.
39632
+ * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
39633
+ * @example
39634
+ *
39635
+ * _.isObjectLike({});
39636
+ * // => true
39637
+ *
39638
+ * _.isObjectLike([1, 2, 3]);
39639
+ * // => true
39640
+ *
39641
+ * _.isObjectLike(_.noop);
39642
+ * // => false
39643
+ *
39644
+ * _.isObjectLike(null);
39645
+ * // => false
39646
+ */
39647
+ function isObjectLike$2(value) {
39648
+ return !!value && typeof value == 'object';
39649
+ }
39650
+
39651
+ /**
39652
+ * Checks if `value` is classified as a `Symbol` primitive or object.
39653
+ *
39654
+ * @static
39655
+ * @memberOf _
39656
+ * @since 4.0.0
39657
+ * @category Lang
39658
+ * @param {*} value The value to check.
39659
+ * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.
39660
+ * @example
39661
+ *
39662
+ * _.isSymbol(Symbol.iterator);
39663
+ * // => true
39664
+ *
39665
+ * _.isSymbol('abc');
39666
+ * // => false
39667
+ */
39668
+ function isSymbol$2(value) {
39669
+ return typeof value == 'symbol' ||
39670
+ (isObjectLike$2(value) && objectToString$2.call(value) == symbolTag$2);
39671
+ }
39672
+
39673
+ /**
39674
+ * Converts `value` to a number.
39675
+ *
39676
+ * @static
39677
+ * @memberOf _
39678
+ * @since 4.0.0
39679
+ * @category Lang
39680
+ * @param {*} value The value to process.
39681
+ * @returns {number} Returns the number.
39682
+ * @example
39683
+ *
39684
+ * _.toNumber(3.2);
39685
+ * // => 3.2
39686
+ *
39687
+ * _.toNumber(Number.MIN_VALUE);
39688
+ * // => 5e-324
39689
+ *
39690
+ * _.toNumber(Infinity);
39691
+ * // => Infinity
39692
+ *
39693
+ * _.toNumber('3.2');
39694
+ * // => 3.2
39695
+ */
39696
+ function toNumber$1(value) {
39697
+ if (typeof value == 'number') {
39698
+ return value;
39699
+ }
39700
+ if (isSymbol$2(value)) {
39701
+ return NAN$1;
39702
+ }
39703
+ if (isObject$2(value)) {
39704
+ var other = typeof value.valueOf == 'function' ? value.valueOf() : value;
39705
+ value = isObject$2(other) ? (other + '') : other;
39706
+ }
39707
+ if (typeof value != 'string') {
39708
+ return value === 0 ? value : +value;
39709
+ }
39710
+ value = value.replace(reTrim$1, '');
39711
+ var isBinary = reIsBinary$1.test(value);
39712
+ return (isBinary || reIsOctal$1.test(value))
39713
+ ? freeParseInt$1(value.slice(2), isBinary ? 2 : 8)
39714
+ : (reIsBadHex$1.test(value) ? NAN$1 : +value);
39715
+ }
39716
+
39717
+ var lodash_debounce = debounce$2;
39718
+
39719
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
39720
+ /**
39721
+ * lodash (Custom Build) <https://lodash.com/>
39722
+ * Build: `lodash modularize exports="npm" -o ./`
39723
+ * Copyright jQuery Foundation and other contributors <https://jquery.org/>
39724
+ * Released under MIT license <https://lodash.com/license>
39725
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
39726
+ * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
39727
+ */
39728
+
39729
+ /** Used as the `TypeError` message for "Functions" methods. */
39730
+ var FUNC_ERROR_TEXT = 'Expected a function';
39731
+
39732
+ /** Used as references for various `Number` constants. */
39733
+ var NAN = 0 / 0;
39734
+
39735
+ /** `Object#toString` result references. */
39736
+ var symbolTag$1 = '[object Symbol]';
39737
+
39738
+ /** Used to match leading and trailing whitespace. */
39739
+ var reTrim = /^\s+|\s+$/g;
39740
+
39741
+ /** Used to detect bad signed hexadecimal string values. */
39742
+ var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;
39743
+
39744
+ /** Used to detect binary string values. */
39745
+ var reIsBinary = /^0b[01]+$/i;
39746
+
39747
+ /** Used to detect octal string values. */
39748
+ var reIsOctal = /^0o[0-7]+$/i;
39749
+
39750
+ /** Built-in method references without a dependency on `root`. */
39751
+ var freeParseInt = parseInt;
39752
+
39753
+ /** Detect free variable `global` from Node.js. */
39754
+ var freeGlobal$1 = typeof commonjsGlobal == 'object' && commonjsGlobal && commonjsGlobal.Object === Object && commonjsGlobal;
39755
+
39756
+ /** Detect free variable `self`. */
39757
+ var freeSelf$1 = typeof self == 'object' && self && self.Object === Object && self;
39758
+
39759
+ /** Used as a reference to the global object. */
39760
+ var root$1 = freeGlobal$1 || freeSelf$1 || Function('return this')();
39761
+
39762
+ /** Used for built-in method references. */
39763
+ var objectProto$1 = Object.prototype;
39764
+
39765
+ /**
39766
+ * Used to resolve the
39767
+ * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
39768
+ * of values.
39769
+ */
39770
+ var objectToString$1 = objectProto$1.toString;
39771
+
39772
+ /* Built-in method references for those with the same name as other `lodash` methods. */
39773
+ var nativeMax = Math.max,
39774
+ nativeMin = Math.min;
39775
+
39776
+ /**
39777
+ * Gets the timestamp of the number of milliseconds that have elapsed since
39778
+ * the Unix epoch (1 January 1970 00:00:00 UTC).
39779
+ *
39780
+ * @static
39781
+ * @memberOf _
39782
+ * @since 2.4.0
39783
+ * @category Date
39784
+ * @returns {number} Returns the timestamp.
39785
+ * @example
39786
+ *
39787
+ * _.defer(function(stamp) {
39788
+ * console.log(_.now() - stamp);
39789
+ * }, _.now());
39790
+ * // => Logs the number of milliseconds it took for the deferred invocation.
39791
+ */
39792
+ var now = function() {
39793
+ return root$1.Date.now();
39794
+ };
39795
+
39816
39796
  /**
39817
39797
  * Creates a debounced function that delays invoking `func` until after `wait`
39818
39798
  * milliseconds have elapsed since the last time the debounced function was
@@ -39883,7 +39863,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
39883
39863
  throw new TypeError(FUNC_ERROR_TEXT);
39884
39864
  }
39885
39865
  wait = toNumber(wait) || 0;
39886
- if (isObject$2(options)) {
39866
+ if (isObject$1(options)) {
39887
39867
  leading = !!options.leading;
39888
39868
  maxing = 'maxWait' in options;
39889
39869
  maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;
@@ -40040,7 +40020,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
40040
40020
  if (typeof func != 'function') {
40041
40021
  throw new TypeError(FUNC_ERROR_TEXT);
40042
40022
  }
40043
- if (isObject$2(options)) {
40023
+ if (isObject$1(options)) {
40044
40024
  leading = 'leading' in options ? !!options.leading : leading;
40045
40025
  trailing = 'trailing' in options ? !!options.trailing : trailing;
40046
40026
  }
@@ -40076,7 +40056,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
40076
40056
  * _.isObject(null);
40077
40057
  * // => false
40078
40058
  */
40079
- function isObject$2(value) {
40059
+ function isObject$1(value) {
40080
40060
  var type = typeof value;
40081
40061
  return !!value && (type == 'object' || type == 'function');
40082
40062
  }
@@ -40128,7 +40108,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
40128
40108
  */
40129
40109
  function isSymbol$1(value) {
40130
40110
  return typeof value == 'symbol' ||
40131
- (isObjectLike$1(value) && objectToString$2.call(value) == symbolTag$1);
40111
+ (isObjectLike$1(value) && objectToString$1.call(value) == symbolTag$1);
40132
40112
  }
40133
40113
 
40134
40114
  /**
@@ -40161,9 +40141,9 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
40161
40141
  if (isSymbol$1(value)) {
40162
40142
  return NAN;
40163
40143
  }
40164
- if (isObject$2(value)) {
40144
+ if (isObject$1(value)) {
40165
40145
  var other = typeof value.valueOf == 'function' ? value.valueOf() : value;
40166
- value = isObject$2(other) ? (other + '') : other;
40146
+ value = isObject$1(other) ? (other + '') : other;
40167
40147
  }
40168
40148
  if (typeof value != 'string') {
40169
40149
  return value === 0 ? value : +value;
@@ -41081,701 +41061,6 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
41081
41061
  };
41082
41062
  var MessageRepliesCountButton = React__default["default"].memo(UnMemoizedMessageRepliesCountButton);
41083
41063
 
41084
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var Tooltip = function (props) {
41085
- var children = props.children, rest = __rest$4(props, ["children"]);
41086
- return (React__default["default"].createElement("div", __assign$8({ className: 'str-chat__tooltip' }, rest), children));
41087
- };
41088
-
41089
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
41090
-
41091
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};// TODO: remove after fully deprecating V1 theming
41092
- var TooltipContainer = function (_a) {
41093
- var children = _a.children;
41094
- var themeVersion = useChatContext('TooltipContainer').themeVersion;
41095
- return themeVersion === '2' ? (React__default["default"].createElement("div", { className: 'str-chat__message-status-tooltip-container' }, children)) : (React__default["default"].createElement(React__default["default"].Fragment, null, children));
41096
- };
41097
- var UnMemoizedMessageStatus = function (props) {
41098
- var _a;
41099
- var propAvatar = props.Avatar, _b = props.messageType, messageType = _b === void 0 ? 'simple' : _b, _c = props.tooltipUserNameMapper, tooltipUserNameMapper = _c === void 0 ? mapToUserNameOrId : _c;
41100
- var client = useChatContext('MessageStatus').client;
41101
- var contextAvatar = useComponentContext('MessageStatus').Avatar;
41102
- var _d = useMessageContext('MessageStatus'), isMyMessage = _d.isMyMessage, lastReceivedId = _d.lastReceivedId, message = _d.message, readBy = _d.readBy, threadList = _d.threadList;
41103
- var t = useTranslationContext('MessageStatus').t;
41104
- var themeVersion = useChatContext('MessageStatus').themeVersion;
41105
- var Avatar$1 = propAvatar || contextAvatar || Avatar;
41106
- if (!isMyMessage() || message.type === 'error') {
41107
- return null;
41108
- }
41109
- var justReadByMe = (readBy === null || readBy === void 0 ? void 0 : readBy.length) === 1 && readBy[0].id === ((_a = client.user) === null || _a === void 0 ? void 0 : _a.id);
41110
- var rootClassName = "str-chat__message-".concat(messageType, "-status str-chat__message-status");
41111
- if (message.status === 'sending') {
41112
- return (React__default["default"].createElement("span", { className: rootClassName, "data-testid": 'message-status-sending' },
41113
- React__default["default"].createElement(Tooltip, null, t('Sending...')),
41114
- React__default["default"].createElement(LoadingIndicator, null)));
41115
- }
41116
- if ((readBy === null || readBy === void 0 ? void 0 : readBy.length) && !threadList && !justReadByMe) {
41117
- var lastReadUser = readBy.filter(function (item) { var _a; return item.id !== ((_a = client.user) === null || _a === void 0 ? void 0 : _a.id); })[0];
41118
- return (React__default["default"].createElement("span", { className: rootClassName, "data-testid": 'message-status-read-by' },
41119
- React__default["default"].createElement(TooltipContainer, null,
41120
- React__default["default"].createElement(Tooltip, null, getReadByTooltipText(readBy, t, client, tooltipUserNameMapper)),
41121
- React__default["default"].createElement(Avatar$1, { image: lastReadUser.image, name: lastReadUser.name || lastReadUser.id, size: 15, user: lastReadUser })),
41122
- readBy.length > 2 && (React__default["default"].createElement("span", { className: "str-chat__message-".concat(messageType, "-status-number"), "data-testid": 'message-status-read-by-many' }, readBy.length - 1))));
41123
- }
41124
- if (message.status === 'received' && message.id === lastReceivedId && !threadList) {
41125
- return (React__default["default"].createElement("span", { className: rootClassName, "data-testid": 'message-status-received' },
41126
- React__default["default"].createElement(Tooltip, null, t('Delivered')),
41127
- themeVersion === '2' ? React__default["default"].createElement(MessageDeliveredIcon, null) : React__default["default"].createElement(DeliveredCheckIcon, null)));
41128
- }
41129
- return null;
41130
- };
41131
- var MessageStatus = React__default["default"].memo(UnMemoizedMessageStatus);
41132
-
41133
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var QuotedMessage = function () {
41134
- var _a, _b;
41135
- var _c = useComponentContext('QuotedMessage'), Attachment = _c.Attachment, ContextAvatar = _c.Avatar;
41136
- var _d = useMessageContext('QuotedMessage'), isMyMessage = _d.isMyMessage, message = _d.message;
41137
- var userLanguage = useTranslationContext('QuotedMessage').userLanguage;
41138
- var jumpToMessage = useChannelActionContext('QuotedMessage').jumpToMessage;
41139
- var Avatar$1 = ContextAvatar || Avatar;
41140
- var quoted_message = message.quoted_message;
41141
- if (!quoted_message)
41142
- return null;
41143
- var quotedMessageText = ((_a = quoted_message.i18n) === null || _a === void 0 ? void 0 : _a["".concat(userLanguage, "_text")]) ||
41144
- quoted_message.text;
41145
- // @ts-expect-error
41146
- var quotedMessageAttachment = quoted_message.attachments.length
41147
- ? // @ts-expect-error
41148
- quoted_message.attachments[0]
41149
- : null;
41150
- if (!quotedMessageText && !quotedMessageAttachment)
41151
- return null;
41152
- return (React__default["default"].createElement(React__default["default"].Fragment, null,
41153
- React__default["default"].createElement("div", { className: clsx('str-chat__quoted-message-preview quoted-message', { mine: isMyMessage() }), onClickCapture: function (e) {
41154
- e.stopPropagation();
41155
- e.preventDefault();
41156
- jumpToMessage(quoted_message.id);
41157
- } },
41158
- quoted_message.user && (React__default["default"].createElement(Avatar$1, { image: quoted_message.user.image, name: quoted_message.user.name || quoted_message.user.id, size: 20, user: quoted_message.user })),
41159
- React__default["default"].createElement("div", { className: 'quoted-message-inner str-chat__quoted-message-bubble' },
41160
- quotedMessageAttachment && React__default["default"].createElement(Attachment, { attachments: [quotedMessageAttachment] }),
41161
- React__default["default"].createElement("div", null, quotedMessageText))),
41162
- ((_b = message.attachments) === null || _b === void 0 ? void 0 : _b.length) && message.quoted_message ? (React__default["default"].createElement(Attachment, { attachments: message.attachments })) : null));
41163
- };
41164
-
41165
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var UnMemoizedMessageTextComponent = function (props) {
41166
- var _a;
41167
- var customInnerClass = props.customInnerClass, _b = props.customWrapperClass, customWrapperClass = _b === void 0 ? '' : _b, propMessage = props.message, _c = props.theme, theme = _c === void 0 ? 'simple' : _c;
41168
- var _d = useComponentContext('MessageText').QuotedMessage, QuotedMessage$1 = _d === void 0 ? QuotedMessage : _d;
41169
- var _e = useMessageContext('MessageText'), contextMessage = _e.message, onMentionsClickMessage = _e.onMentionsClickMessage, onMentionsHoverMessage = _e.onMentionsHoverMessage, _f = _e.renderText, renderText$1 = _f === void 0 ? renderText : _f, unsafeHTML = _e.unsafeHTML;
41170
- var _g = useTranslationContext('MessageText'), t = _g.t, userLanguage = _g.userLanguage;
41171
- var message = propMessage || contextMessage;
41172
- var hasAttachment = messageHasAttachments(message);
41173
- var messageTextToRender = ((_a = message.i18n) === null || _a === void 0 ? void 0 : _a["".concat(userLanguage, "_text")]) || message.text;
41174
- var messageText = React.useMemo(function () { return renderText$1(messageTextToRender, message.mentioned_users); }, [
41175
- message.mentioned_users,
41176
- messageTextToRender,
41177
- ]);
41178
- var wrapperClass = customWrapperClass || 'str-chat__message-text';
41179
- var innerClass = customInnerClass || "str-chat__message-text-inner str-chat__message-".concat(theme, "-text-inner");
41180
- if (!messageTextToRender && !message.quoted_message)
41181
- return null;
41182
- return (React__default["default"].createElement("div", { className: wrapperClass, tabIndex: 0 },
41183
- React__default["default"].createElement("div", { className: "\n ".concat(innerClass, "\n ").concat(hasAttachment ? " str-chat__message-".concat(theme, "-text-inner--has-attachment") : '', "\n ").concat(isOnlyEmojis(message.text) && !message.quoted_message
41184
- ? " str-chat__message-".concat(theme, "-text-inner--is-emoji")
41185
- : '', "\n ").trim(), "data-testid": 'message-text-inner-wrapper', onClick: onMentionsClickMessage, onMouseOver: onMentionsHoverMessage },
41186
- message.quoted_message && React__default["default"].createElement(QuotedMessage$1, null),
41187
- message.type === 'error' && (React__default["default"].createElement("div", { className: "str-chat__".concat(theme, "-message--error-message str-chat__message--error-message") }, t('Error · Unsent'))),
41188
- message.status === 'failed' && (React__default["default"].createElement("div", { className: "str-chat__".concat(theme, "-message--error-message str-chat__message--error-message") }, message.errorStatusCode !== 403
41189
- ? t('Message Failed · Click to try again')
41190
- : t('Message Failed · Unauthorized'))),
41191
- unsafeHTML && message.html ? (React__default["default"].createElement("div", { dangerouslySetInnerHTML: { __html: message.html } })) : (React__default["default"].createElement("div", null, messageText)))));
41192
- };
41193
- var MessageText = React__default["default"].memo(UnMemoizedMessageTextComponent);
41194
-
41195
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var notValidDateWarning = 'MessageTimestamp was called without a message, or message has invalid created_at date.';
41196
- var noParsingFunctionWarning = 'MessageTimestamp was called but there is no datetime parsing function available';
41197
- function getDateString(_a) {
41198
- var calendar = _a.calendar, format = _a.format, formatDate = _a.formatDate, messageCreatedAt = _a.messageCreatedAt, tDateTimeParser = _a.tDateTimeParser;
41199
- if (!messageCreatedAt ||
41200
- (typeof messageCreatedAt === 'string' && !Date.parse(messageCreatedAt))) {
41201
- console.warn(notValidDateWarning);
41202
- return null;
41203
- }
41204
- if (typeof formatDate === 'function') {
41205
- return formatDate(new Date(messageCreatedAt));
41206
- }
41207
- if (!tDateTimeParser) {
41208
- console.warn(noParsingFunctionWarning);
41209
- return null;
41210
- }
41211
- var parsedTime = tDateTimeParser(messageCreatedAt);
41212
- if (isDayOrMoment(parsedTime)) {
41213
- /**
41214
- * parsedTime.calendar is guaranteed on the type but is only
41215
- * available when a user calls dayjs.extend(calendar)
41216
- */
41217
- return calendar && parsedTime.calendar ? parsedTime.calendar() : parsedTime.format(format);
41218
- }
41219
- if (isDate(parsedTime)) {
41220
- return parsedTime.toDateString();
41221
- }
41222
- if (isNumberOrString(parsedTime)) {
41223
- return parsedTime;
41224
- }
41225
- return null;
41226
- }
41227
-
41228
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var defaultTimestampFormat = 'h:mmA';
41229
- var UnMemoizedMessageTimestamp = function (props) {
41230
- var _a = props.calendar, calendar = _a === void 0 ? false : _a, _b = props.customClass, customClass = _b === void 0 ? '' : _b, _c = props.format, format = _c === void 0 ? defaultTimestampFormat : _c, propMessage = props.message;
41231
- var _d = useMessageContext('MessageTimestamp'), formatDate = _d.formatDate, contextMessage = _d.message;
41232
- var tDateTimeParser = useTranslationContext('MessageTimestamp').tDateTimeParser;
41233
- var message = propMessage || contextMessage;
41234
- var messageCreatedAt = message.created_at && isDate(message.created_at)
41235
- ? message.created_at.toISOString()
41236
- : message.created_at;
41237
- var when = React.useMemo(function () { return getDateString({ calendar: calendar, format: format, formatDate: formatDate, messageCreatedAt: messageCreatedAt, tDateTimeParser: tDateTimeParser }); }, [formatDate, calendar, tDateTimeParser, format, messageCreatedAt]);
41238
- if (!when)
41239
- return null;
41240
- return (React__default["default"].createElement("time", { className: customClass, dateTime: messageCreatedAt, title: messageCreatedAt }, when));
41241
- };
41242
- var MessageTimestamp = React__default["default"].memo(UnMemoizedMessageTimestamp);
41243
-
41244
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var CUSTOM_MESSAGE_TYPE = {
41245
- date: 'message.date',
41246
- intro: 'channel.intro',
41247
- };
41248
-
41249
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var useCommandTrigger = function () {
41250
- var themeVersion = useChatContext('useCommandTrigger').themeVersion;
41251
- var channelConfig = useChannelStateContext('useCommandTrigger').channelConfig;
41252
- var commands = channelConfig === null || channelConfig === void 0 ? void 0 : channelConfig.commands;
41253
- return {
41254
- component: CommandItem,
41255
- dataProvider: function (query, text, onReady) {
41256
- if (text.indexOf('/') !== 0 || !commands) {
41257
- return [];
41258
- }
41259
- var selectedCommands = commands.filter(function (command) { var _a; return ((_a = command.name) === null || _a === void 0 ? void 0 : _a.indexOf(query)) !== -1; });
41260
- // sort alphabetically unless the you're matching the first char
41261
- selectedCommands.sort(function (a, b) {
41262
- var _a, _b;
41263
- var nameA = (_a = a.name) === null || _a === void 0 ? void 0 : _a.toLowerCase();
41264
- var nameB = (_b = b.name) === null || _b === void 0 ? void 0 : _b.toLowerCase();
41265
- if ((nameA === null || nameA === void 0 ? void 0 : nameA.indexOf(query)) === 0) {
41266
- nameA = "0".concat(nameA);
41267
- }
41268
- if ((nameB === null || nameB === void 0 ? void 0 : nameB.indexOf(query)) === 0) {
41269
- nameB = "0".concat(nameB);
41270
- }
41271
- // Should confirm possible null / undefined when TS is fully implemented
41272
- if (nameA != null && nameB != null) {
41273
- if (nameA < nameB) {
41274
- return -1;
41275
- }
41276
- if (nameA > nameB) {
41277
- return 1;
41278
- }
41279
- }
41280
- return 0;
41281
- });
41282
- var result = selectedCommands.slice(0, themeVersion === '2' ? 5 : 10);
41283
- if (onReady)
41284
- onReady(result.filter(function (result) {
41285
- return result.name !== undefined;
41286
- }), query);
41287
- return result;
41288
- },
41289
- output: function (entity) { return ({
41290
- caretPosition: 'next',
41291
- key: entity.name,
41292
- text: "/".concat(entity.name),
41293
- }); },
41294
- };
41295
- };
41296
-
41297
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var UnMemoizedEmoticonItem = function (props) {
41298
- var entity = props.entity;
41299
- var hasEntity = Object.keys(entity).length;
41300
- var itemParts = entity === null || entity === void 0 ? void 0 : entity.itemNameParts;
41301
- var renderName = function () {
41302
- if (!hasEntity)
41303
- return null;
41304
- return (hasEntity &&
41305
- itemParts.parts.map(function (part, i) {
41306
- return part.toLowerCase() === itemParts.match.toLowerCase() ? (React__default["default"].createElement("span", { className: 'str-chat__emoji-item--highlight', key: "part-".concat(i) }, part)) : (React__default["default"].createElement("span", { className: 'str-chat__emoji-item--part', key: "part-".concat(i) }, part));
41307
- }));
41308
- };
41309
- return (React__default["default"].createElement("div", { className: 'str-chat__emoji-item' },
41310
- React__default["default"].createElement("span", { className: 'str-chat__emoji-item--entity' }, entity.native),
41311
- React__default["default"].createElement("span", { className: 'str-chat__emoji-item--name' }, renderName())));
41312
- };
41313
- var EmoticonItem = React__default["default"].memo(UnMemoizedEmoticonItem);
41314
-
41315
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var useEmojiTrigger = function (emojiIndex) {
41316
- var themeVersion = useChatContext('useEmojiTrigger').themeVersion;
41317
- return {
41318
- component: EmoticonItem,
41319
- dataProvider: function (query, _, onReady) {
41320
- if (query.length === 0 || query.charAt(0).match(/[^a-zA-Z0-9+-]/)) {
41321
- return [];
41322
- }
41323
- var emojis = (emojiIndex === null || emojiIndex === void 0 ? void 0 : emojiIndex.search(query)) || [];
41324
- // emojiIndex.search sometimes returns undefined values, so filter those out first
41325
- var result = emojis.filter(Boolean).slice(0, themeVersion === '2' ? 7 : 10);
41326
- if (onReady)
41327
- onReady(result, query);
41328
- return result;
41329
- },
41330
- output: function (entity) { return ({
41331
- caretPosition: 'next',
41332
- key: entity.id,
41333
- text: "".concat('native' in entity ? entity.native : ''),
41334
- }); },
41335
- };
41336
- };
41337
-
41338
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var accentsMap = {
41339
- a: 'á|à|ã|â|À|Á|Ã|Â',
41340
- c: 'ç|Ç',
41341
- e: 'é|è|ê|É|È|Ê',
41342
- i: 'í|ì|î|Í|Ì|Î',
41343
- n: 'ñ|Ñ',
41344
- o: 'ó|ò|ô|ő|õ|Ó|Ò|Ô|Õ',
41345
- u: 'ú|ù|û|ü|Ú|Ù|Û|Ü',
41346
- };
41347
- var removeDiacritics = function (text) {
41348
- if (!text)
41349
- return '';
41350
- return Object.keys(accentsMap).reduce(function (acc, current) { return acc.replace(new RegExp(accentsMap[current], 'g'), current); }, text);
41351
- };
41352
- var calculateLevenshtein = function (query, name) {
41353
- if (query.length === 0)
41354
- return name.length;
41355
- if (name.length === 0)
41356
- return query.length;
41357
- var matrix = [];
41358
- var i;
41359
- for (i = 0; i <= name.length; i++) {
41360
- matrix[i] = [i];
41361
- }
41362
- var j;
41363
- for (j = 0; j <= query.length; j++) {
41364
- matrix[0][j] = j;
41365
- }
41366
- for (i = 1; i <= name.length; i++) {
41367
- for (j = 1; j <= query.length; j++) {
41368
- if (name.charAt(i - 1) === query.charAt(j - 1)) {
41369
- matrix[i][j] = matrix[i - 1][j - 1];
41370
- }
41371
- else {
41372
- matrix[i][j] = Math.min(matrix[i - 1][j - 1] + 1, // substitution
41373
- Math.min(matrix[i][j - 1] + 1, // insertion
41374
- matrix[i - 1][j] + 1)); // deletion
41375
- }
41376
- }
41377
- }
41378
- return matrix[name.length][query.length];
41379
- };
41380
- var searchLocalUsers = function (params) {
41381
- var ownUserId = params.ownUserId, query = params.query, text = params.text, useMentionsTransliteration = params.useMentionsTransliteration, users = params.users;
41382
- var matchingUsers = users.filter(function (user) {
41383
- if (user.id === ownUserId)
41384
- return false;
41385
- if (!query)
41386
- return true;
41387
- var updatedId = removeDiacritics(user.id).toLowerCase();
41388
- var updatedName = removeDiacritics(user.name).toLowerCase();
41389
- var updatedQuery = removeDiacritics(query).toLowerCase();
41390
- if (useMentionsTransliteration) {
41391
- (function () { return __awaiter$3(void 0, void 0, void 0, function () {
41392
- var transliterate;
41393
- return __generator$3(this, function (_a) {
41394
- switch (_a.label) {
41395
- case 0: return [4 /*yield*/, Promise.resolve().then(function () { return index_module; })];
41396
- case 1:
41397
- transliterate = (_a.sent()).default;
41398
- updatedName = transliterate(user.name || '').toLowerCase();
41399
- updatedQuery = transliterate(query).toLowerCase();
41400
- updatedId = transliterate(user.id).toLowerCase();
41401
- return [2 /*return*/];
41402
- }
41403
- });
41404
- }); })();
41405
- }
41406
- var maxDistance = 3;
41407
- var lastDigits = text.slice(-(maxDistance + 1)).includes('@');
41408
- if (updatedName) {
41409
- var levenshtein_1 = calculateLevenshtein(updatedQuery, updatedName);
41410
- if (updatedName.includes(updatedQuery) || (levenshtein_1 <= maxDistance && lastDigits)) {
41411
- return true;
41412
- }
41413
- }
41414
- var levenshtein = calculateLevenshtein(updatedQuery, updatedId);
41415
- return updatedId.includes(updatedQuery) || (levenshtein <= maxDistance && lastDigits);
41416
- });
41417
- return matchingUsers;
41418
- };
41419
- var checkUploadPermissions = function (params) { return __awaiter$3(void 0, void 0, void 0, function () {
41420
- var addNotification, file, getAppSettings, t, uploadType, appSettings, _a, allowed_file_extensions, allowed_mime_types, blocked_file_extensions, blocked_mime_types, sendErrorNotification, allowed, blocked, allowed, blocked;
41421
- var _b, _c;
41422
- return __generator$3(this, function (_d) {
41423
- switch (_d.label) {
41424
- case 0:
41425
- addNotification = params.addNotification, file = params.file, getAppSettings = params.getAppSettings, t = params.t, uploadType = params.uploadType;
41426
- appSettings = null;
41427
- return [4 /*yield*/, getAppSettings()];
41428
- case 1:
41429
- appSettings = _d.sent();
41430
- _a = (uploadType === 'image'
41431
- ? (_b = appSettings === null || appSettings === void 0 ? void 0 : appSettings.app) === null || _b === void 0 ? void 0 : _b.image_upload_config
41432
- : (_c = appSettings === null || appSettings === void 0 ? void 0 : appSettings.app) === null || _c === void 0 ? void 0 : _c.file_upload_config) || {}, allowed_file_extensions = _a.allowed_file_extensions, allowed_mime_types = _a.allowed_mime_types, blocked_file_extensions = _a.blocked_file_extensions, blocked_mime_types = _a.blocked_mime_types;
41433
- sendErrorNotification = function () {
41434
- return addNotification(t("Upload type: \"{{ type }}\" is not allowed", { type: file.type || 'unknown type' }), 'error');
41435
- };
41436
- if (allowed_file_extensions === null || allowed_file_extensions === void 0 ? void 0 : allowed_file_extensions.length) {
41437
- allowed = allowed_file_extensions.some(function (ext) {
41438
- return file.name.toLowerCase().endsWith(ext.toLowerCase());
41439
- });
41440
- if (!allowed) {
41441
- sendErrorNotification();
41442
- return [2 /*return*/, false];
41443
- }
41444
- }
41445
- if (blocked_file_extensions === null || blocked_file_extensions === void 0 ? void 0 : blocked_file_extensions.length) {
41446
- blocked = blocked_file_extensions.some(function (ext) {
41447
- return file.name.toLowerCase().endsWith(ext.toLowerCase());
41448
- });
41449
- if (blocked) {
41450
- sendErrorNotification();
41451
- return [2 /*return*/, false];
41452
- }
41453
- }
41454
- if (allowed_mime_types === null || allowed_mime_types === void 0 ? void 0 : allowed_mime_types.length) {
41455
- allowed = allowed_mime_types.some(function (type) { var _a; return type.toLowerCase() === ((_a = file.type) === null || _a === void 0 ? void 0 : _a.toLowerCase()); });
41456
- if (!allowed) {
41457
- sendErrorNotification();
41458
- return [2 /*return*/, false];
41459
- }
41460
- }
41461
- if (blocked_mime_types === null || blocked_mime_types === void 0 ? void 0 : blocked_mime_types.length) {
41462
- blocked = blocked_mime_types.some(function (type) { var _a; return type.toLowerCase() === ((_a = file.type) === null || _a === void 0 ? void 0 : _a.toLowerCase()); });
41463
- if (blocked) {
41464
- sendErrorNotification();
41465
- return [2 /*return*/, false];
41466
- }
41467
- }
41468
- return [2 /*return*/, true];
41469
- }
41470
- });
41471
- }); };
41472
-
41473
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var useUserTrigger = function (params) {
41474
- var disableMentions = params.disableMentions, mentionAllAppUsers = params.mentionAllAppUsers, _a = params.mentionQueryParams, mentionQueryParams = _a === void 0 ? {} : _a, onSelectUser = params.onSelectUser, useMentionsTransliteration = params.useMentionsTransliteration;
41475
- var _b = React.useState(false), searching = _b[0], setSearching = _b[1];
41476
- var _c = useChatContext('useUserTrigger'), client = _c.client, mutes = _c.mutes, themeVersion = _c.themeVersion;
41477
- var channel = useChannelStateContext('useUserTrigger').channel;
41478
- var members = channel.state.members;
41479
- var watchers = channel.state.watchers;
41480
- var getMembersAndWatchers = React.useCallback(function () {
41481
- var memberUsers = members ? Object.values(members).map(function (_a) {
41482
- var user = _a.user;
41483
- return user;
41484
- }) : [];
41485
- var watcherUsers = watchers ? Object.values(watchers) : [];
41486
- var users = __spreadArray$1(__spreadArray$1([], memberUsers, true), watcherUsers, true);
41487
- // make sure we don't list users twice
41488
- var uniqueUsers = {};
41489
- users.forEach(function (user) {
41490
- if (user && !uniqueUsers[user.id]) {
41491
- uniqueUsers[user.id] = user;
41492
- }
41493
- });
41494
- return Object.values(uniqueUsers);
41495
- }, [members, watchers]);
41496
- var queryMembersThrottled = React.useCallback(lodash_throttle(function (query, onReady) { return __awaiter$3(void 0, void 0, void 0, function () {
41497
- var response, users, error_1;
41498
- return __generator$3(this, function (_a) {
41499
- switch (_a.label) {
41500
- case 0:
41501
- _a.trys.push([0, 2, , 3]);
41502
- return [4 /*yield*/, channel.queryMembers({
41503
- name: { $autocomplete: query },
41504
- })];
41505
- case 1:
41506
- response = _a.sent();
41507
- users = response.members.map(function (member) { return member.user; });
41508
- if (onReady && users.length) {
41509
- onReady(users);
41510
- }
41511
- else {
41512
- onReady([]);
41513
- }
41514
- return [3 /*break*/, 3];
41515
- case 2:
41516
- error_1 = _a.sent();
41517
- console.log({ error: error_1 });
41518
- return [3 /*break*/, 3];
41519
- case 3: return [2 /*return*/];
41520
- }
41521
- });
41522
- }); }, 200), [channel]);
41523
- var queryUsers = function (query, onReady) { return __awaiter$3(void 0, void 0, void 0, function () {
41524
- var users, error_2;
41525
- return __generator$3(this, function (_a) {
41526
- switch (_a.label) {
41527
- case 0:
41528
- if (!query || searching)
41529
- return [2 /*return*/];
41530
- setSearching(true);
41531
- _a.label = 1;
41532
- case 1:
41533
- _a.trys.push([1, 3, , 4]);
41534
- 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))];
41535
- case 2:
41536
- users = (_a.sent()).users;
41537
- if (onReady && users.length) {
41538
- onReady(users);
41539
- }
41540
- else {
41541
- onReady([]);
41542
- }
41543
- return [3 /*break*/, 4];
41544
- case 3:
41545
- error_2 = _a.sent();
41546
- console.log({ error: error_2 });
41547
- return [3 /*break*/, 4];
41548
- case 4:
41549
- setSearching(false);
41550
- return [2 /*return*/];
41551
- }
41552
- });
41553
- }); };
41554
- var queryUsersThrottled = lodash_throttle(queryUsers, 200);
41555
- return {
41556
- callback: function (item) { return onSelectUser(item); },
41557
- component: UserItem,
41558
- dataProvider: function (query, text, onReady) {
41559
- var _a, _b;
41560
- if (disableMentions)
41561
- return;
41562
- var filterMutes = function (data) {
41563
- if (text.includes('/unmute') && !mutes.length) {
41564
- return [];
41565
- }
41566
- if (!mutes.length)
41567
- return data;
41568
- if (text.includes('/unmute')) {
41569
- return data.filter(function (suggestion) {
41570
- return mutes.some(function (mute) { return mute.target.id === suggestion.id; });
41571
- });
41572
- }
41573
- return data.filter(function (suggestion) { return mutes.every(function (mute) { return mute.target.id !== suggestion.id; }); });
41574
- };
41575
- if (mentionAllAppUsers) {
41576
- return queryUsersThrottled(query, function (data) {
41577
- if (onReady)
41578
- onReady(filterMutes(data), query);
41579
- });
41580
- }
41581
- /**
41582
- * By default, we return maximum 100 members via queryChannels api call.
41583
- * Thus it is safe to assume, that if number of members in channel.state is < 100,
41584
- * then all the members are already available on client side and we don't need to
41585
- * make any api call to queryMembers endpoint.
41586
- */
41587
- if (!query || Object.values(members || {}).length < 100) {
41588
- var users = getMembersAndWatchers();
41589
- var params_1 = {
41590
- ownUserId: client.userID,
41591
- query: query,
41592
- text: text,
41593
- useMentionsTransliteration: useMentionsTransliteration,
41594
- users: users,
41595
- };
41596
- var matchingUsers = searchLocalUsers(params_1);
41597
- var usersToShow = (_b = (_a = mentionQueryParams.options) === null || _a === void 0 ? void 0 : _a.limit) !== null && _b !== void 0 ? _b : (themeVersion === '2' ? 7 : 10);
41598
- var data = matchingUsers.slice(0, usersToShow);
41599
- if (onReady)
41600
- onReady(filterMutes(data), query);
41601
- return data;
41602
- }
41603
- return queryMembersThrottled(query, function (data) {
41604
- if (onReady)
41605
- onReady(filterMutes(data), query);
41606
- });
41607
- },
41608
- output: function (entity) { return ({
41609
- caretPosition: 'next',
41610
- key: entity.id,
41611
- text: "@".concat(entity.name || entity.id),
41612
- }); },
41613
- };
41614
- };
41615
-
41616
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var DefaultTriggerProvider = function (_a) {
41617
- var children = _a.children;
41618
- var currentValue = useMessageInputContext('DefaultTriggerProvider');
41619
- var defaultAutocompleteTriggers = {
41620
- '/': useCommandTrigger(),
41621
- ':': useEmojiTrigger(currentValue.emojiIndex),
41622
- '@': useUserTrigger({
41623
- disableMentions: currentValue.disableMentions,
41624
- mentionAllAppUsers: currentValue.mentionAllAppUsers,
41625
- mentionQueryParams: currentValue.mentionQueryParams,
41626
- onSelectUser: currentValue.onSelectUser,
41627
- useMentionsTransliteration: currentValue.useMentionsTransliteration,
41628
- }),
41629
- };
41630
- var newValue = __assign$8(__assign$8({}, currentValue), { autocompleteTriggers: defaultAutocompleteTriggers });
41631
- return React__default["default"].createElement(MessageInputContextProvider, { value: newValue }, children);
41632
- };
41633
-
41634
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var filterEmoji = function (emoji) {
41635
- return !(emoji.name === 'White Smiling Face' || emoji.name === 'White Frowning Face');
41636
- };
41637
- var EmojiPicker = function (_a) {
41638
- var small = _a.small;
41639
- var _b = useEmojiContext('EmojiPicker'), emojiConfig = _b.emojiConfig, EmojiPickerComponent = _b.EmojiPicker;
41640
- var t = useTranslationContext('EmojiPicker').t;
41641
- var _c = useMessageInputContext('EmojiPicker'), emojiPickerIsOpen = _c.emojiPickerIsOpen, emojiPickerRef = _c.emojiPickerRef, onSelectEmoji = _c.onSelectEmoji;
41642
- var emojiData = (emojiConfig || {}).emojiData;
41643
- if (!emojiPickerIsOpen || !emojiData)
41644
- return null;
41645
- return (React__default["default"].createElement("div", { className: clsx('str-chat__emoji-picker-container', {
41646
- 'str-chat__input--emojipicker': !small,
41647
- 'str-chat__small-message-input-emojipicker': small,
41648
- }), ref: emojiPickerRef },
41649
- React__default["default"].createElement(React.Suspense, { fallback: null },
41650
- React__default["default"].createElement(EmojiPickerComponent, { color: '#006CFF', data: emojiData, emoji: 'point_up', emojisToShowFilter: filterEmoji, native: true, onSelect: onSelectEmoji, set: 'facebook', showPreview: false, showSkinTones: false, title: t('Pick your emoji'), useButton: true }))));
41651
- };
41652
-
41653
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var EmojiIconLarge = function () {
41654
- var t = useTranslationContext('EmojiIconLarge').t;
41655
- return (React__default["default"].createElement("svg", { height: '28', width: '28', xmlns: 'http://www.w3.org/2000/svg' },
41656
- React__default["default"].createElement("title", null, t('Open emoji picker')),
41657
- React__default["default"].createElement("g", { clipRule: 'evenodd', fillRule: 'evenodd' },
41658
- React__default["default"].createElement("path", { d: 'M14 4.4C8.6 4.4 4.4 8.6 4.4 14c0 5.4 4.2 9.6 9.6 9.6c5.4 0 9.6-4.2 9.6-9.6c0-5.4-4.2-9.6-9.6-9.6zM2 14c0-6.6 5.4-12 12-12s12 5.4 12 12s-5.4 12-12 12s-12-5.4-12-12zM12.8 11c0 1-.8 1.8-1.8 1.8s-1.8-.8-1.8-1.8s.8-1.8 1.8-1.8s1.8.8 1.8 1.8zM18.8 11c0 1-.8 1.8-1.8 1.8s-1.8-.8-1.8-1.8s.8-1.8 1.8-1.8s1.8.8 1.8 1.8zM8.6 15.4c.6-.4 1.2-.2 1.6.2c.6.8 1.6 1.8 3 2c1.2.4 2.8.2 4.8-2c.4-.4 1.2-.6 1.6 0c.4.4.6 1.2 0 1.6c-2.2 2.6-4.8 3.4-7 3c-2-.4-3.6-1.8-4.4-3c-.4-.6-.2-1.2.4-1.8z' }))));
41659
- };
41660
- var EmojiIconSmall = function () {
41661
- var t = useTranslationContext('EmojiIconSmall').t;
41662
- return (React__default["default"].createElement("svg", { height: '14', width: '14', xmlns: 'http://www.w3.org/2000/svg' },
41663
- React__default["default"].createElement("title", null, t('Open emoji picker')),
41664
- React__default["default"].createElement("g", { clipRule: 'evenodd', fillRule: 'evenodd' },
41665
- React__default["default"].createElement("path", { d: 'M6.7 1.42C3.73 1.42 1.42 3.73 1.42 6.7c0 2.97 2.31 5.28 5.28 5.28c2.97 0 5.28-2.31 5.28-5.28c0-2.97-2.31-5.28-5.28-5.28zM.1 6.7c0-3.63 2.97-6.6 6.6-6.6s6.6 2.97 6.6 6.6s-2.97 6.6-6.6 6.6s-6.6-2.97-6.6-6.6zM6.04 5.05c0 .55-.44.99-.99.99s-.99-.44-.99-.99s.44-.99.99-.99s.99.44.99.99zM9.34 5.05c0 .55-.44.99-.99.99s-.99-.44-.99-.99s.44-.99.99-.99s.99.44.99.99zM3.73 7.47c.33-.22.66-.11.88.11c.33.44.88.99 1.65 1.1c.66.22 1.54.11 2.64-1.1c.22-.22.66-.33.88 0c.22.22.33.66 0 .88c-1.21 1.43-2.64 1.87-3.85 1.65c-1.1-.22-1.98-.99-2.42-1.65c-.22-.33-.11-.66.22-.99z' }))));
41666
- };
41667
- // ThemingV2 icon
41668
- var EmojiPickerIcon = function () { return (React__default["default"].createElement("svg", { preserveAspectRatio: 'xMinYMin', viewBox: '0 0 28 28', width: '100%', xmlns: 'http://www.w3.org/2000/svg' },
41669
- React__default["default"].createElement("g", { clipRule: 'evenodd', fillRule: 'evenodd' },
41670
- React__default["default"].createElement("path", { d: 'M14 4.4C8.6 4.4 4.4 8.6 4.4 14c0 5.4 4.2 9.6 9.6 9.6c5.4 0 9.6-4.2 9.6-9.6c0-5.4-4.2-9.6-9.6-9.6zM2 14c0-6.6 5.4-12 12-12s12 5.4 12 12s-5.4 12-12 12s-12-5.4-12-12zM12.8 11c0 1-.8 1.8-1.8 1.8s-1.8-.8-1.8-1.8s.8-1.8 1.8-1.8s1.8.8 1.8 1.8zM18.8 11c0 1-.8 1.8-1.8 1.8s-1.8-.8-1.8-1.8s.8-1.8 1.8-1.8s1.8.8 1.8 1.8zM8.6 15.4c.6-.4 1.2-.2 1.6.2c.6.8 1.6 1.8 3 2c1.2.4 2.8.2 4.8-2c.4-.4 1.2-.6 1.6 0c.4.4.6 1.2 0 1.6c-2.2 2.6-4.8 3.4-7 3c-2-.4-3.6-1.8-4.4-3c-.4-.6-.2-1.2.4-1.8z' })))); };
41671
- var FileUploadIcon = function () {
41672
- var t = useTranslationContext('FileUploadIcon').t;
41673
- return (React__default["default"].createElement("svg", { height: '14', width: '14', xmlns: 'http://www.w3.org/2000/svg' },
41674
- React__default["default"].createElement("title", null, t('Attach files')),
41675
- React__default["default"].createElement("path", { d: 'M7 .5c3.59 0 6.5 2.91 6.5 6.5s-2.91 6.5-6.5 6.5S.5 10.59.5 7 3.41.5 7 .5zm0 12c3.031 0 5.5-2.469 5.5-5.5S10.031 1.5 7 1.5A5.506 5.506 0 0 0 1.5 7c0 3.034 2.469 5.5 5.5 5.5zM7.506 3v3.494H11v1.05H7.506V11h-1.05V7.544H3v-1.05h3.456V3h1.05z', fillRule: 'nonzero' })));
41676
- };
41677
- var FileUploadIconFlat = function () {
41678
- var t = useTranslationContext('FileUploadIconFlat').t;
41679
- return (React__default["default"].createElement("svg", { height: '14', width: '14', xmlns: 'http://www.w3.org/2000/svg' },
41680
- React__default["default"].createElement("title", null, t('Attach files')),
41681
- React__default["default"].createElement("path", { d: 'M1.667.333h10.666c.737 0 1.334.597 1.334 1.334v10.666c0 .737-.597 1.334-1.334 1.334H1.667a1.333 1.333 0 0 1-1.334-1.334V1.667C.333.93.93.333 1.667.333zm2 1.334a1.667 1.667 0 1 0 0 3.333 1.667 1.667 0 0 0 0-3.333zm-2 9.333v1.333h10.666v-4l-2-2-4 4-2-2L1.667 11z', fillRule: 'nonzero' })));
41682
- };
41683
- var LoadingIndicatorIcon = function (_a) {
41684
- var _b = _a.size, size = _b === void 0 ? 20 : _b;
41685
- var id = React.useId();
41686
- return (React__default["default"].createElement("div", { className: 'str-chat__loading-indicator' },
41687
- React__default["default"].createElement("svg", { "data-testid": 'loading-indicator', height: size, viewBox: '0 0 30 30', width: size, xmlns: 'http://www.w3.org/2000/svg' },
41688
- React__default["default"].createElement("defs", null,
41689
- React__default["default"].createElement("linearGradient", { id: "".concat(id, "-linear-gradient"), x1: '50%', x2: '50%', y1: '0%', y2: '100%' },
41690
- React__default["default"].createElement("stop", { offset: '0%', stopColor: '#FFF', stopOpacity: '0' }),
41691
- React__default["default"].createElement("stop", { "data-testid": 'stop-color', offset: '100%', stopOpacity: '1' }))),
41692
- React__default["default"].createElement("path", { d: 'M2.518 23.321l1.664-1.11A12.988 12.988 0 0 0 15 28c7.18 0 13-5.82 13-13S22.18 2 15 2V0c8.284 0 15 6.716 15 15 0 8.284-6.716 15-15 15-5.206 0-9.792-2.652-12.482-6.679z', fill: "url(#".concat(id, "-linear-gradient)"), fillRule: 'evenodd' }))));
41693
- };
41694
- // ThemingV2 icon
41695
- var UploadIcon = function () { return (React__default["default"].createElement("svg", { "data-testid": 'attach', fill: 'none', height: '24', viewBox: '0 0 24 24', width: '24', xmlns: 'http://www.w3.org/2000/svg' },
41696
- React__default["default"].createElement("g", { clipPath: 'url(#clip0_10878_5)' },
41697
- React__default["default"].createElement("path", { d: 'M12.9997 6.99993L10.9997 6.99993L10.9997 10.9999L6.99972 10.9999L6.99972 12.9999L10.9997 12.9999L10.9997 16.9999L12.9997 16.9999L12.9997 12.9999L16.9997 12.9999L16.9997 10.9999L12.9997 10.9999L12.9997 6.99993ZM11.9997 1.99992C6.47972 1.99992 1.99972 6.47993 1.99972 11.9999C1.99972 17.5199 6.47972 21.9999 11.9997 21.9999C17.5197 21.9999 21.9997 17.5199 21.9997 11.9999C21.9997 6.47993 17.5197 1.99992 11.9997 1.99992ZM11.9997 19.9999C7.58972 19.9999 3.99972 16.4099 3.99972 11.9999C3.99972 7.58993 7.58972 3.99993 11.9997 3.99993C16.4097 3.99993 19.9997 7.58993 19.9997 11.9999C19.9997 16.4099 16.4097 19.9999 11.9997 19.9999Z', fill: 'black' })),
41698
- React__default["default"].createElement("defs", null,
41699
- React__default["default"].createElement("clipPath", { id: 'clip0_10878_5' },
41700
- React__default["default"].createElement("rect", { fill: 'white', height: '24', width: '24' }))))); };
41701
- var CloseIcon$1 = function () { return (React__default["default"].createElement("svg", { "data-testid": 'close-no-outline', fill: 'none', height: '24', viewBox: '0 0 24 24', width: '24', xmlns: 'http://www.w3.org/2000/svg' },
41702
- React__default["default"].createElement("path", { d: 'M19 6.41L17.59 5L12 10.59L6.41 5L5 6.41L10.59 12L5 17.59L6.41 19L12 13.41L17.59 19L19 17.59L13.41 12L19 6.41Z', fill: 'black' }))); };
41703
- var RetryIcon = function () { return (React__default["default"].createElement("svg", { "data-testid": 'retry', fill: 'none', height: '24', viewBox: '0 0 24 24', width: '24', xmlns: 'http://www.w3.org/2000/svg' },
41704
- React__default["default"].createElement("path", { d: 'M17.6449 6.35C16.1949 4.9 14.2049 4 11.9949 4C7.57488 4 4.00488 7.58 4.00488 12C4.00488 16.42 7.57488 20 11.9949 20C15.7249 20 18.8349 17.45 19.7249 14H17.6449C16.8249 16.33 14.6049 18 11.9949 18C8.68488 18 5.99488 15.31 5.99488 12C5.99488 8.69 8.68488 6 11.9949 6C13.6549 6 15.1349 6.69 16.2149 7.78L12.9949 11H19.9949V4L17.6449 6.35Z', fill: 'black' }))); };
41705
- var DownloadIcon = function () { return (React__default["default"].createElement("svg", { "data-testid": 'download', fill: 'none', height: '24', viewBox: '0 0 24 24', width: '24', xmlns: 'http://www.w3.org/2000/svg' },
41706
- React__default["default"].createElement("path", { d: 'M19.35 10.04C18.67 6.59 15.64 4 12 4C9.11 4 6.6 5.64 5.35 8.04C2.34 8.36 0 10.91 0 14C0 17.31 2.69 20 6 20H19C21.76 20 24 17.76 24 15C24 12.36 21.95 10.22 19.35 10.04ZM19 18H6C3.79 18 2 16.21 2 14C2 11.95 3.53 10.24 5.56 10.03L6.63 9.92L7.13 8.97C8.08 7.14 9.94 6 12 6C14.62 6 16.88 7.86 17.39 10.43L17.69 11.93L19.22 12.04C20.78 12.14 22 13.45 22 15C22 16.65 20.65 18 19 18ZM13.45 10H10.55V13H8L12 17L16 13H13.45V10Z', fill: 'black' }))); };
41707
- var SendIconV1 = function () {
41708
- var t = useTranslationContext('SendButton').t;
41709
- return (React__default["default"].createElement("svg", { height: '17', viewBox: '0 0 18 17', width: '18', xmlns: 'http://www.w3.org/2000/svg' },
41710
- React__default["default"].createElement("title", null, t('Send')),
41711
- React__default["default"].createElement("path", { d: 'M0 17.015l17.333-8.508L0 0v6.617l12.417 1.89L0 10.397z', fill: '#006cff', fillRule: 'evenodd' })));
41712
- };
41713
- var SendIconV2 = function () {
41714
- var t = useTranslationContext('SendButton').t;
41715
- return (React__default["default"].createElement("svg", { "data-testid": 'send', fill: 'none', height: '24', viewBox: '0 0 24 24', width: '24', xmlns: 'http://www.w3.org/2000/svg' },
41716
- React__default["default"].createElement("title", null, t('Send')),
41717
- React__default["default"].createElement("path", { d: 'M4.00952 22L24 12L4.00952 2L4 9.77778L18.2857 12L4 14.2222L4.00952 22Z', fill: 'black' })));
41718
- };
41719
- var SendButton = function (_a) {
41720
- var sendMessage = _a.sendMessage, rest = __rest$4(_a, ["sendMessage"]);
41721
- var themeVersion = useChatContext('SendButton').themeVersion;
41722
- return (React__default["default"].createElement("button", __assign$8({ "aria-label": 'Send', className: 'str-chat__send-button', "data-testid": 'send-button', onClick: sendMessage, type: 'button' }, rest), themeVersion === '2' ? React__default["default"].createElement(SendIconV2, null) : React__default["default"].createElement(SendIconV1, null)));
41723
- };
41724
-
41725
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};/**
41726
- * @deprecated This component has been deprecated in favor of `AttachmentPreviewList` as this component
41727
- * utilises outdated components from the package [`react-file-utils`](https://github.com/GetStream/react-file-utils)
41728
- * which will no longer receive updates for aforementioned components.
41729
- *
41730
- * **Will be removed with the complete transition to the theming V2.**
41731
- */
41732
- var UploadsPreview = function () {
41733
- var themeVersion = useChatContext('UploadsPreview').themeVersion;
41734
- var _a = useChannelStateContext('UploadsPreview'), _b = _a.maxNumberOfFiles, maxNumberOfFiles = _b === void 0 ? 0 : _b, multipleUploads = _a.multipleUploads;
41735
- var _c = useMessageInputContext('UploadsPreview'), fileOrder = _c.fileOrder, fileUploads = _c.fileUploads, imageOrder = _c.imageOrder, imageUploads = _c.imageUploads, _d = _c.numberOfUploads, numberOfUploads = _d === void 0 ? 0 : _d, removeFile = _c.removeFile, removeImage = _c.removeImage, uploadFile = _c.uploadFile, uploadImage = _c.uploadImage, uploadNewFiles = _c.uploadNewFiles;
41736
- var imagesToPreview = imageOrder
41737
- .map(function (id) { return imageUploads[id]; })
41738
- // filter OG scraped images
41739
- .filter(function (image) { return !image.og_scrape_url; });
41740
- var filesToPreview = fileOrder.map(function (id) { return fileUploads[id]; });
41741
- return (React__default["default"].createElement(React__default["default"].Fragment, null,
41742
- imageOrder.length > 0 && (React__default["default"].createElement(ImagePreviewer, { disabled: !multipleUploads || numberOfUploads >= maxNumberOfFiles, handleFiles: uploadNewFiles, handleRemove: removeImage, handleRetry: uploadImage, imageUploads: imagesToPreview, multiple: multipleUploads })),
41743
- fileOrder.length > 0 && (React__default["default"].createElement(FilePreviewer, { fileIconProps: {
41744
- className: 'str-chat__file-icon',
41745
- version: themeVersion,
41746
- }, handleFiles: uploadNewFiles, handleRemove: removeFile, handleRetry: uploadFile, uploads: filesToPreview }))));
41747
- };
41748
-
41749
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var UnMemoizedChatAutoComplete = function (props) {
41750
- var _a = useComponentContext('ChatAutoComplete'), SuggestionItem = _a.AutocompleteSuggestionItem, SuggestionList = _a.AutocompleteSuggestionList;
41751
- var t = useTranslationContext('ChatAutoComplete').t;
41752
- var messageInput = useMessageInputContext('ChatAutoComplete');
41753
- var cooldownRemaining = messageInput.cooldownRemaining, disabled = messageInput.disabled, emojiIndex = messageInput.emojiIndex, innerRef = messageInput.textareaRef;
41754
- var placeholder = props.placeholder || t('Type your message');
41755
- var emojiReplace = props.wordReplace
41756
- ? function (word) { var _a; return (_a = props.wordReplace) === null || _a === void 0 ? void 0 : _a.call(props, word, emojiIndex); }
41757
- : function (word) {
41758
- var found = (emojiIndex === null || emojiIndex === void 0 ? void 0 : emojiIndex.search(word)) || [];
41759
- var emoji = found
41760
- .filter(Boolean)
41761
- .slice(0, 10)
41762
- .find(function (_a) {
41763
- var emoticons = _a.emoticons;
41764
- return !!(emoticons === null || emoticons === void 0 ? void 0 : emoticons.includes(word));
41765
- });
41766
- if (!emoji || !('native' in emoji))
41767
- return null;
41768
- return emoji.native;
41769
- };
41770
- var updateInnerRef = React.useCallback(function (ref) {
41771
- if (innerRef) {
41772
- innerRef.current = ref;
41773
- }
41774
- }, [innerRef]);
41775
- return (React__default["default"].createElement(ReactTextareaAutocomplete, { additionalTextareaProps: messageInput.additionalTextareaProps, "aria-label": cooldownRemaining ? t('Slow Mode ON') : placeholder, className: 'str-chat__textarea__textarea str-chat__message-textarea', closeCommandsList: messageInput.closeCommandsList, closeMentionsList: messageInput.closeMentionsList, containerClassName: 'str-chat__textarea str-chat__message-textarea-react-host', disabled: disabled || !!cooldownRemaining, disableMentions: messageInput.disableMentions, dropdownClassName: 'str-chat__emojisearch', grow: messageInput.grow, handleSubmit: props.handleSubmit || messageInput.handleSubmit, innerRef: updateInnerRef, itemClassName: 'str-chat__emojisearch__item', listClassName: 'str-chat__emojisearch__list', loadingComponent: LoadingIndicator, maxRows: messageInput.maxRows, minChar: 0, onBlur: props.onBlur, onChange: props.onChange || messageInput.handleChange, onFocus: props.onFocus, onPaste: props.onPaste || messageInput.onPaste, placeholder: cooldownRemaining ? t('Slow Mode ON') : placeholder, replaceWord: emojiReplace, rows: props.rows || 1, shouldSubmit: messageInput.shouldSubmit, showCommandsList: messageInput.showCommandsList, showMentionsList: messageInput.showMentionsList, SuggestionItem: SuggestionItem, SuggestionList: SuggestionList, trigger: messageInput.autocompleteTriggers || {}, value: props.value || messageInput.text }));
41776
- };
41777
- var ChatAutoComplete = React__default["default"].memo(UnMemoizedChatAutoComplete);
41778
-
41779
41064
  window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};/**
41780
41065
  * Simple ponyfill for Object.fromEntries
41781
41066
  */
@@ -43305,396 +42590,1125 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
43305
42590
  isScrollParent(documentElement)) {
43306
42591
  scroll = getNodeScroll(offsetParent);
43307
42592
  }
43308
-
43309
- if (isHTMLElement(offsetParent)) {
43310
- offsets = getBoundingClientRect(offsetParent, true);
43311
- offsets.x += offsetParent.clientLeft;
43312
- offsets.y += offsetParent.clientTop;
43313
- } else if (documentElement) {
43314
- offsets.x = getWindowScrollBarX(documentElement);
42593
+
42594
+ if (isHTMLElement(offsetParent)) {
42595
+ offsets = getBoundingClientRect(offsetParent, true);
42596
+ offsets.x += offsetParent.clientLeft;
42597
+ offsets.y += offsetParent.clientTop;
42598
+ } else if (documentElement) {
42599
+ offsets.x = getWindowScrollBarX(documentElement);
42600
+ }
42601
+ }
42602
+
42603
+ return {
42604
+ x: rect.left + scroll.scrollLeft - offsets.x,
42605
+ y: rect.top + scroll.scrollTop - offsets.y,
42606
+ width: rect.width,
42607
+ height: rect.height
42608
+ };
42609
+ }
42610
+
42611
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
42612
+ function order(modifiers) {
42613
+ var map = new Map();
42614
+ var visited = new Set();
42615
+ var result = [];
42616
+ modifiers.forEach(function (modifier) {
42617
+ map.set(modifier.name, modifier);
42618
+ }); // On visiting object, check for its dependencies and visit them recursively
42619
+
42620
+ function sort(modifier) {
42621
+ visited.add(modifier.name);
42622
+ var requires = [].concat(modifier.requires || [], modifier.requiresIfExists || []);
42623
+ requires.forEach(function (dep) {
42624
+ if (!visited.has(dep)) {
42625
+ var depModifier = map.get(dep);
42626
+
42627
+ if (depModifier) {
42628
+ sort(depModifier);
42629
+ }
42630
+ }
42631
+ });
42632
+ result.push(modifier);
42633
+ }
42634
+
42635
+ modifiers.forEach(function (modifier) {
42636
+ if (!visited.has(modifier.name)) {
42637
+ // check for visited object
42638
+ sort(modifier);
42639
+ }
42640
+ });
42641
+ return result;
42642
+ }
42643
+
42644
+ function orderModifiers(modifiers) {
42645
+ // order based on dependencies
42646
+ var orderedModifiers = order(modifiers); // order based on phase
42647
+
42648
+ return modifierPhases.reduce(function (acc, phase) {
42649
+ return acc.concat(orderedModifiers.filter(function (modifier) {
42650
+ return modifier.phase === phase;
42651
+ }));
42652
+ }, []);
42653
+ }
42654
+
42655
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};function debounce(fn) {
42656
+ var pending;
42657
+ return function () {
42658
+ if (!pending) {
42659
+ pending = new Promise(function (resolve) {
42660
+ Promise.resolve().then(function () {
42661
+ pending = undefined;
42662
+ resolve(fn());
42663
+ });
42664
+ });
42665
+ }
42666
+
42667
+ return pending;
42668
+ };
42669
+ }
42670
+
42671
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};function mergeByName(modifiers) {
42672
+ var merged = modifiers.reduce(function (merged, current) {
42673
+ var existing = merged[current.name];
42674
+ merged[current.name] = existing ? Object.assign({}, existing, current, {
42675
+ options: Object.assign({}, existing.options, current.options),
42676
+ data: Object.assign({}, existing.data, current.data)
42677
+ }) : current;
42678
+ return merged;
42679
+ }, {}); // IE11 does not support Object.values
42680
+
42681
+ return Object.keys(merged).map(function (key) {
42682
+ return merged[key];
42683
+ });
42684
+ }
42685
+
42686
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var DEFAULT_OPTIONS$1 = {
42687
+ placement: 'bottom',
42688
+ modifiers: [],
42689
+ strategy: 'absolute'
42690
+ };
42691
+
42692
+ function areValidElements() {
42693
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
42694
+ args[_key] = arguments[_key];
42695
+ }
42696
+
42697
+ return !args.some(function (element) {
42698
+ return !(element && typeof element.getBoundingClientRect === 'function');
42699
+ });
42700
+ }
42701
+
42702
+ function popperGenerator(generatorOptions) {
42703
+ if (generatorOptions === void 0) {
42704
+ generatorOptions = {};
42705
+ }
42706
+
42707
+ var _generatorOptions = generatorOptions,
42708
+ _generatorOptions$def = _generatorOptions.defaultModifiers,
42709
+ defaultModifiers = _generatorOptions$def === void 0 ? [] : _generatorOptions$def,
42710
+ _generatorOptions$def2 = _generatorOptions.defaultOptions,
42711
+ defaultOptions = _generatorOptions$def2 === void 0 ? DEFAULT_OPTIONS$1 : _generatorOptions$def2;
42712
+ return function createPopper(reference, popper, options) {
42713
+ if (options === void 0) {
42714
+ options = defaultOptions;
42715
+ }
42716
+
42717
+ var state = {
42718
+ placement: 'bottom',
42719
+ orderedModifiers: [],
42720
+ options: Object.assign({}, DEFAULT_OPTIONS$1, defaultOptions),
42721
+ modifiersData: {},
42722
+ elements: {
42723
+ reference: reference,
42724
+ popper: popper
42725
+ },
42726
+ attributes: {},
42727
+ styles: {}
42728
+ };
42729
+ var effectCleanupFns = [];
42730
+ var isDestroyed = false;
42731
+ var instance = {
42732
+ state: state,
42733
+ setOptions: function setOptions(setOptionsAction) {
42734
+ var options = typeof setOptionsAction === 'function' ? setOptionsAction(state.options) : setOptionsAction;
42735
+ cleanupModifierEffects();
42736
+ state.options = Object.assign({}, defaultOptions, state.options, options);
42737
+ state.scrollParents = {
42738
+ reference: isElement(reference) ? listScrollParents(reference) : reference.contextElement ? listScrollParents(reference.contextElement) : [],
42739
+ popper: listScrollParents(popper)
42740
+ }; // Orders the modifiers based on their dependencies and `phase`
42741
+ // properties
42742
+
42743
+ var orderedModifiers = orderModifiers(mergeByName([].concat(defaultModifiers, state.options.modifiers))); // Strip out disabled modifiers
42744
+
42745
+ state.orderedModifiers = orderedModifiers.filter(function (m) {
42746
+ return m.enabled;
42747
+ }); // Validate the provided modifiers so that the consumer will get warned
42748
+
42749
+ runModifierEffects();
42750
+ return instance.update();
42751
+ },
42752
+ // Sync update – it will always be executed, even if not necessary. This
42753
+ // is useful for low frequency updates where sync behavior simplifies the
42754
+ // logic.
42755
+ // For high frequency updates (e.g. `resize` and `scroll` events), always
42756
+ // prefer the async Popper#update method
42757
+ forceUpdate: function forceUpdate() {
42758
+ if (isDestroyed) {
42759
+ return;
42760
+ }
42761
+
42762
+ var _state$elements = state.elements,
42763
+ reference = _state$elements.reference,
42764
+ popper = _state$elements.popper; // Don't proceed if `reference` or `popper` are not valid elements
42765
+ // anymore
42766
+
42767
+ if (!areValidElements(reference, popper)) {
42768
+
42769
+ return;
42770
+ } // Store the reference and popper rects to be read by modifiers
42771
+
42772
+
42773
+ state.rects = {
42774
+ reference: getCompositeRect(reference, getOffsetParent(popper), state.options.strategy === 'fixed'),
42775
+ popper: getLayoutRect(popper)
42776
+ }; // Modifiers have the ability to reset the current update cycle. The
42777
+ // most common use case for this is the `flip` modifier changing the
42778
+ // placement, which then needs to re-run all the modifiers, because the
42779
+ // logic was previously ran for the previous placement and is therefore
42780
+ // stale/incorrect
42781
+
42782
+ state.reset = false;
42783
+ state.placement = state.options.placement; // On each update cycle, the `modifiersData` property for each modifier
42784
+ // is filled with the initial data specified by the modifier. This means
42785
+ // it doesn't persist and is fresh on each update.
42786
+ // To ensure persistent data, use `${name}#persistent`
42787
+
42788
+ state.orderedModifiers.forEach(function (modifier) {
42789
+ return state.modifiersData[modifier.name] = Object.assign({}, modifier.data);
42790
+ });
42791
+
42792
+ for (var index = 0; index < state.orderedModifiers.length; index++) {
42793
+
42794
+ if (state.reset === true) {
42795
+ state.reset = false;
42796
+ index = -1;
42797
+ continue;
42798
+ }
42799
+
42800
+ var _state$orderedModifie = state.orderedModifiers[index],
42801
+ fn = _state$orderedModifie.fn,
42802
+ _state$orderedModifie2 = _state$orderedModifie.options,
42803
+ _options = _state$orderedModifie2 === void 0 ? {} : _state$orderedModifie2,
42804
+ name = _state$orderedModifie.name;
42805
+
42806
+ if (typeof fn === 'function') {
42807
+ state = fn({
42808
+ state: state,
42809
+ options: _options,
42810
+ name: name,
42811
+ instance: instance
42812
+ }) || state;
42813
+ }
42814
+ }
42815
+ },
42816
+ // Async and optimistically optimized update – it will not be executed if
42817
+ // not necessary (debounced to run at most once-per-tick)
42818
+ update: debounce(function () {
42819
+ return new Promise(function (resolve) {
42820
+ instance.forceUpdate();
42821
+ resolve(state);
42822
+ });
42823
+ }),
42824
+ destroy: function destroy() {
42825
+ cleanupModifierEffects();
42826
+ isDestroyed = true;
42827
+ }
42828
+ };
42829
+
42830
+ if (!areValidElements(reference, popper)) {
42831
+
42832
+ return instance;
42833
+ }
42834
+
42835
+ instance.setOptions(options).then(function (state) {
42836
+ if (!isDestroyed && options.onFirstUpdate) {
42837
+ options.onFirstUpdate(state);
42838
+ }
42839
+ }); // Modifiers have the ability to execute arbitrary code before the first
42840
+ // update cycle runs. They will be executed in the same order as the update
42841
+ // cycle. This is useful when a modifier adds some persistent data that
42842
+ // other modifiers need to use, but the modifier is run after the dependent
42843
+ // one.
42844
+
42845
+ function runModifierEffects() {
42846
+ state.orderedModifiers.forEach(function (_ref3) {
42847
+ var name = _ref3.name,
42848
+ _ref3$options = _ref3.options,
42849
+ options = _ref3$options === void 0 ? {} : _ref3$options,
42850
+ effect = _ref3.effect;
42851
+
42852
+ if (typeof effect === 'function') {
42853
+ var cleanupFn = effect({
42854
+ state: state,
42855
+ name: name,
42856
+ instance: instance,
42857
+ options: options
42858
+ });
42859
+
42860
+ var noopFn = function noopFn() {};
42861
+
42862
+ effectCleanupFns.push(cleanupFn || noopFn);
42863
+ }
42864
+ });
42865
+ }
42866
+
42867
+ function cleanupModifierEffects() {
42868
+ effectCleanupFns.forEach(function (fn) {
42869
+ return fn();
42870
+ });
42871
+ effectCleanupFns = [];
42872
+ }
42873
+
42874
+ return instance;
42875
+ };
42876
+ }
42877
+
42878
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var defaultModifiers = [eventListeners, popperOffsets$1, computeStyles$1, applyStyles$1, offset$1, flip$1, preventOverflow$1, arrow$1, hide$1];
42879
+ var createPopper = /*#__PURE__*/popperGenerator({
42880
+ defaultModifiers: defaultModifiers
42881
+ }); // eslint-disable-next-line import/no-unused-modules
42882
+
42883
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var EMPTY_MODIFIERS = [];
42884
+ var usePopper = function usePopper(referenceElement, popperElement, options) {
42885
+ if (options === void 0) {
42886
+ options = {};
42887
+ }
42888
+
42889
+ var prevOptions = React__namespace.useRef(null);
42890
+ var optionsWithDefaults = {
42891
+ onFirstUpdate: options.onFirstUpdate,
42892
+ placement: options.placement || 'bottom',
42893
+ strategy: options.strategy || 'absolute',
42894
+ modifiers: options.modifiers || EMPTY_MODIFIERS
42895
+ };
42896
+
42897
+ var _React$useState = React__namespace.useState({
42898
+ styles: {
42899
+ popper: {
42900
+ position: optionsWithDefaults.strategy,
42901
+ left: '0',
42902
+ top: '0'
42903
+ },
42904
+ arrow: {
42905
+ position: 'absolute'
42906
+ }
42907
+ },
42908
+ attributes: {}
42909
+ }),
42910
+ state = _React$useState[0],
42911
+ setState = _React$useState[1];
42912
+
42913
+ var updateStateModifier = React__namespace.useMemo(function () {
42914
+ return {
42915
+ name: 'updateState',
42916
+ enabled: true,
42917
+ phase: 'write',
42918
+ fn: function fn(_ref) {
42919
+ var state = _ref.state;
42920
+ var elements = Object.keys(state.elements);
42921
+ ReactDOM__namespace.flushSync(function () {
42922
+ setState({
42923
+ styles: fromEntries(elements.map(function (element) {
42924
+ return [element, state.styles[element] || {}];
42925
+ })),
42926
+ attributes: fromEntries(elements.map(function (element) {
42927
+ return [element, state.attributes[element]];
42928
+ }))
42929
+ });
42930
+ });
42931
+ },
42932
+ requires: ['computeStyles']
42933
+ };
42934
+ }, []);
42935
+ var popperOptions = React__namespace.useMemo(function () {
42936
+ var newOptions = {
42937
+ onFirstUpdate: optionsWithDefaults.onFirstUpdate,
42938
+ placement: optionsWithDefaults.placement,
42939
+ strategy: optionsWithDefaults.strategy,
42940
+ modifiers: [].concat(optionsWithDefaults.modifiers, [updateStateModifier, {
42941
+ name: 'applyStyles',
42942
+ enabled: false
42943
+ }])
42944
+ };
42945
+
42946
+ if (reactFastCompare(prevOptions.current, newOptions)) {
42947
+ return prevOptions.current || newOptions;
42948
+ } else {
42949
+ prevOptions.current = newOptions;
42950
+ return newOptions;
42951
+ }
42952
+ }, [optionsWithDefaults.onFirstUpdate, optionsWithDefaults.placement, optionsWithDefaults.strategy, optionsWithDefaults.modifiers, updateStateModifier]);
42953
+ var popperInstanceRef = React__namespace.useRef();
42954
+ useIsomorphicLayoutEffect$1(function () {
42955
+ if (popperInstanceRef.current) {
42956
+ popperInstanceRef.current.setOptions(popperOptions);
42957
+ }
42958
+ }, [popperOptions]);
42959
+ useIsomorphicLayoutEffect$1(function () {
42960
+ if (referenceElement == null || popperElement == null) {
42961
+ return;
43315
42962
  }
43316
- }
43317
42963
 
42964
+ var createPopper$1 = options.createPopper || createPopper;
42965
+ var popperInstance = createPopper$1(referenceElement, popperElement, popperOptions);
42966
+ popperInstanceRef.current = popperInstance;
42967
+ return function () {
42968
+ popperInstance.destroy();
42969
+ popperInstanceRef.current = null;
42970
+ };
42971
+ }, [referenceElement, popperElement, options.createPopper]);
43318
42972
  return {
43319
- x: rect.left + scroll.scrollLeft - offsets.x,
43320
- y: rect.top + scroll.scrollTop - offsets.y,
43321
- width: rect.width,
43322
- height: rect.height
42973
+ state: popperInstanceRef.current ? popperInstanceRef.current.state : null,
42974
+ styles: state.styles,
42975
+ attributes: state.attributes,
42976
+ update: popperInstanceRef.current ? popperInstanceRef.current.update : null,
42977
+ forceUpdate: popperInstanceRef.current ? popperInstanceRef.current.forceUpdate : null
43323
42978
  };
43324
- }
43325
-
43326
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
43327
- function order(modifiers) {
43328
- var map = new Map();
43329
- var visited = new Set();
43330
- var result = [];
43331
- modifiers.forEach(function (modifier) {
43332
- map.set(modifier.name, modifier);
43333
- }); // On visiting object, check for its dependencies and visit them recursively
43334
-
43335
- function sort(modifier) {
43336
- visited.add(modifier.name);
43337
- var requires = [].concat(modifier.requires || [], modifier.requiresIfExists || []);
43338
- requires.forEach(function (dep) {
43339
- if (!visited.has(dep)) {
43340
- var depModifier = map.get(dep);
43341
-
43342
- if (depModifier) {
43343
- sort(depModifier);
43344
- }
43345
- }
43346
- });
43347
- result.push(modifier);
43348
- }
43349
-
43350
- modifiers.forEach(function (modifier) {
43351
- if (!visited.has(modifier.name)) {
43352
- // check for visited object
43353
- sort(modifier);
43354
- }
43355
- });
43356
- return result;
43357
- }
42979
+ };
43358
42980
 
43359
- function orderModifiers(modifiers) {
43360
- // order based on dependencies
43361
- var orderedModifiers = order(modifiers); // order based on phase
42981
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};// Public components
42982
+ // Public types
43362
42983
 
43363
- return modifierPhases.reduce(function (acc, phase) {
43364
- return acc.concat(orderedModifiers.filter(function (modifier) {
43365
- return modifier.phase === phase;
43366
- }));
43367
- }, []);
43368
- }
42984
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var Tooltip = function (_a) {
42985
+ var children = _a.children, rest = __rest$4(_a, ["children"]);
42986
+ return (React__default["default"].createElement("div", __assign$8({ className: 'str-chat__tooltip' }, rest), children));
42987
+ };
42988
+ var PopperTooltip = function (_a) {
42989
+ var children = _a.children, _b = _a.offset, offset = _b === void 0 ? [0, 10] : _b, referenceElement = _a.referenceElement, _c = _a.placement, placement = _c === void 0 ? 'top' : _c, _d = _a.visible, visible = _d === void 0 ? false : _d;
42990
+ var _e = React.useState(null), popperElement = _e[0], setPopperElement = _e[1];
42991
+ var _f = usePopper(referenceElement, popperElement, {
42992
+ modifiers: [
42993
+ {
42994
+ name: 'offset',
42995
+ options: {
42996
+ offset: offset,
42997
+ },
42998
+ },
42999
+ ],
43000
+ placement: placement,
43001
+ }), attributes = _f.attributes, styles = _f.styles;
43002
+ if (!visible)
43003
+ return null;
43004
+ return (React__default["default"].createElement("div", __assign$8({ className: 'str-chat__tooltip', ref: setPopperElement, style: styles.popper }, attributes.popper), children));
43005
+ };
43369
43006
 
43370
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};function debounce(fn) {
43371
- var pending;
43372
- return function () {
43373
- if (!pending) {
43374
- pending = new Promise(function (resolve) {
43375
- Promise.resolve().then(function () {
43376
- pending = undefined;
43377
- resolve(fn());
43378
- });
43379
- });
43380
- }
43007
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
43381
43008
 
43382
- return pending;
43383
- };
43384
- }
43009
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var useEnterLeaveHandlers = function (_a) {
43010
+ var _b = _a === void 0 ? {} : _a, onMouseEnter = _b.onMouseEnter, onMouseLeave = _b.onMouseLeave;
43011
+ var _c = React.useState(false), tooltipVisible = _c[0], setTooltipVisible = _c[1];
43012
+ var handleEnter = React.useCallback(function (e) {
43013
+ setTooltipVisible(true);
43014
+ onMouseEnter === null || onMouseEnter === void 0 ? void 0 : onMouseEnter(e);
43015
+ }, [onMouseEnter]);
43016
+ var handleLeave = React.useCallback(function (e) {
43017
+ setTooltipVisible(false);
43018
+ onMouseLeave === null || onMouseLeave === void 0 ? void 0 : onMouseLeave(e);
43019
+ }, [onMouseLeave]);
43020
+ return { handleEnter: handleEnter, handleLeave: handleLeave, tooltipVisible: tooltipVisible };
43021
+ };
43385
43022
 
43386
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};function mergeByName(modifiers) {
43387
- var merged = modifiers.reduce(function (merged, current) {
43388
- var existing = merged[current.name];
43389
- merged[current.name] = existing ? Object.assign({}, existing, current, {
43390
- options: Object.assign({}, existing.options, current.options),
43391
- data: Object.assign({}, existing.data, current.data)
43392
- }) : current;
43393
- return merged;
43394
- }, {}); // IE11 does not support Object.values
43023
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
43395
43024
 
43396
- return Object.keys(merged).map(function (key) {
43397
- return merged[key];
43398
- });
43399
- }
43025
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var UnMemoizedMessageStatus = function (props) {
43026
+ var _a;
43027
+ var propAvatar = props.Avatar, _b = props.messageType, messageType = _b === void 0 ? 'simple' : _b, _c = props.tooltipUserNameMapper, tooltipUserNameMapper = _c === void 0 ? mapToUserNameOrId : _c;
43028
+ var _d = useEnterLeaveHandlers(), handleEnter = _d.handleEnter, handleLeave = _d.handleLeave, tooltipVisible = _d.tooltipVisible;
43029
+ var client = useChatContext('MessageStatus').client;
43030
+ var contextAvatar = useComponentContext('MessageStatus').Avatar;
43031
+ var _e = useMessageContext('MessageStatus'), isMyMessage = _e.isMyMessage, lastReceivedId = _e.lastReceivedId, message = _e.message, readBy = _e.readBy, threadList = _e.threadList;
43032
+ var t = useTranslationContext('MessageStatus').t;
43033
+ var themeVersion = useChatContext('MessageStatus').themeVersion;
43034
+ var _f = React.useState(null), referenceElement = _f[0], setReferenceElement = _f[1];
43035
+ var Avatar$1 = propAvatar || contextAvatar || Avatar;
43036
+ if (!isMyMessage() || message.type === 'error')
43037
+ return null;
43038
+ var justReadByMe = (readBy === null || readBy === void 0 ? void 0 : readBy.length) === 1 && readBy[0].id === ((_a = client.user) === null || _a === void 0 ? void 0 : _a.id);
43039
+ var rootClassName = "str-chat__message-".concat(messageType, "-status str-chat__message-status");
43040
+ var sending = message.status === 'sending';
43041
+ var delivered = message.status === 'received' && message.id === lastReceivedId && !threadList;
43042
+ var deliveredAndRead = !!((readBy === null || readBy === void 0 ? void 0 : readBy.length) && !threadList && !justReadByMe);
43043
+ var lastReadUser = (deliveredAndRead
43044
+ ? readBy.filter(function (item) { var _a; return item.id !== ((_a = client.user) === null || _a === void 0 ? void 0 : _a.id); })
43045
+ : [])[0];
43046
+ return (React__default["default"].createElement("span", { className: rootClassName, "data-testid": clsx({
43047
+ 'message-status-read-by': deliveredAndRead,
43048
+ 'message-status-received': delivered && !deliveredAndRead,
43049
+ 'message-status-sending': sending,
43050
+ }), onMouseEnter: handleEnter, onMouseLeave: handleLeave, ref: setReferenceElement },
43051
+ sending && (React__default["default"].createElement(React__default["default"].Fragment, null,
43052
+ themeVersion === '1' && React__default["default"].createElement(Tooltip, null, t('Sending...')),
43053
+ themeVersion === '2' && (React__default["default"].createElement(PopperTooltip, { offset: [0, 5], referenceElement: referenceElement, visible: tooltipVisible }, t('Sending...'))),
43054
+ React__default["default"].createElement(LoadingIndicator, null))),
43055
+ delivered && !deliveredAndRead && (React__default["default"].createElement(React__default["default"].Fragment, null,
43056
+ themeVersion === '1' && React__default["default"].createElement(Tooltip, null, t('Delivered')),
43057
+ themeVersion === '2' && (React__default["default"].createElement(PopperTooltip, { offset: [0, 5], referenceElement: referenceElement, visible: tooltipVisible }, t('Delivered'))),
43058
+ themeVersion === '2' ? React__default["default"].createElement(MessageDeliveredIcon, null) : React__default["default"].createElement(DeliveredCheckIcon, null))),
43059
+ deliveredAndRead && (React__default["default"].createElement(React__default["default"].Fragment, null,
43060
+ themeVersion === '1' && (React__default["default"].createElement(Tooltip, null, getReadByTooltipText(readBy, t, client, tooltipUserNameMapper))),
43061
+ themeVersion === '2' && (React__default["default"].createElement(PopperTooltip, { offset: [0, 5], referenceElement: referenceElement, visible: tooltipVisible }, getReadByTooltipText(readBy, t, client, tooltipUserNameMapper))),
43062
+ React__default["default"].createElement(Avatar$1, { image: lastReadUser.image, name: lastReadUser.name || lastReadUser.id, size: 15, user: lastReadUser }),
43063
+ readBy.length > 2 && (React__default["default"].createElement("span", { className: "str-chat__message-".concat(messageType, "-status-number"), "data-testid": 'message-status-read-by-many' }, readBy.length - 1))))));
43064
+ };
43065
+ var MessageStatus = React__default["default"].memo(UnMemoizedMessageStatus);
43400
43066
 
43401
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var DEFAULT_OPTIONS$1 = {
43402
- placement: 'bottom',
43403
- modifiers: [],
43404
- strategy: 'absolute'
43067
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var QuotedMessage = function () {
43068
+ var _a, _b;
43069
+ var _c = useComponentContext('QuotedMessage'), Attachment = _c.Attachment, ContextAvatar = _c.Avatar;
43070
+ var _d = useMessageContext('QuotedMessage'), isMyMessage = _d.isMyMessage, message = _d.message;
43071
+ var userLanguage = useTranslationContext('QuotedMessage').userLanguage;
43072
+ var jumpToMessage = useChannelActionContext('QuotedMessage').jumpToMessage;
43073
+ var Avatar$1 = ContextAvatar || Avatar;
43074
+ var quoted_message = message.quoted_message;
43075
+ if (!quoted_message)
43076
+ return null;
43077
+ var quotedMessageText = ((_a = quoted_message.i18n) === null || _a === void 0 ? void 0 : _a["".concat(userLanguage, "_text")]) ||
43078
+ quoted_message.text;
43079
+ // @ts-expect-error
43080
+ var quotedMessageAttachment = quoted_message.attachments.length
43081
+ ? // @ts-expect-error
43082
+ quoted_message.attachments[0]
43083
+ : null;
43084
+ if (!quotedMessageText && !quotedMessageAttachment)
43085
+ return null;
43086
+ return (React__default["default"].createElement(React__default["default"].Fragment, null,
43087
+ React__default["default"].createElement("div", { className: clsx('str-chat__quoted-message-preview quoted-message', { mine: isMyMessage() }), onClickCapture: function (e) {
43088
+ e.stopPropagation();
43089
+ e.preventDefault();
43090
+ jumpToMessage(quoted_message.id);
43091
+ } },
43092
+ quoted_message.user && (React__default["default"].createElement(Avatar$1, { image: quoted_message.user.image, name: quoted_message.user.name || quoted_message.user.id, size: 20, user: quoted_message.user })),
43093
+ React__default["default"].createElement("div", { className: 'quoted-message-inner str-chat__quoted-message-bubble' },
43094
+ quotedMessageAttachment && React__default["default"].createElement(Attachment, { attachments: [quotedMessageAttachment] }),
43095
+ React__default["default"].createElement("div", null, quotedMessageText))),
43096
+ ((_b = message.attachments) === null || _b === void 0 ? void 0 : _b.length) && message.quoted_message ? (React__default["default"].createElement(Attachment, { attachments: message.attachments })) : null));
43405
43097
  };
43406
43098
 
43407
- function areValidElements() {
43408
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
43409
- args[_key] = arguments[_key];
43410
- }
43099
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var UnMemoizedMessageTextComponent = function (props) {
43100
+ var _a;
43101
+ var customInnerClass = props.customInnerClass, _b = props.customWrapperClass, customWrapperClass = _b === void 0 ? '' : _b, propMessage = props.message, _c = props.theme, theme = _c === void 0 ? 'simple' : _c;
43102
+ var _d = useComponentContext('MessageText').QuotedMessage, QuotedMessage$1 = _d === void 0 ? QuotedMessage : _d;
43103
+ var _e = useMessageContext('MessageText'), contextMessage = _e.message, onMentionsClickMessage = _e.onMentionsClickMessage, onMentionsHoverMessage = _e.onMentionsHoverMessage, _f = _e.renderText, renderText$1 = _f === void 0 ? renderText : _f, unsafeHTML = _e.unsafeHTML;
43104
+ var _g = useTranslationContext('MessageText'), t = _g.t, userLanguage = _g.userLanguage;
43105
+ var message = propMessage || contextMessage;
43106
+ var hasAttachment = messageHasAttachments(message);
43107
+ var messageTextToRender = ((_a = message.i18n) === null || _a === void 0 ? void 0 : _a["".concat(userLanguage, "_text")]) || message.text;
43108
+ var messageText = React.useMemo(function () { return renderText$1(messageTextToRender, message.mentioned_users); }, [
43109
+ message.mentioned_users,
43110
+ messageTextToRender,
43111
+ ]);
43112
+ var wrapperClass = customWrapperClass || 'str-chat__message-text';
43113
+ var innerClass = customInnerClass || "str-chat__message-text-inner str-chat__message-".concat(theme, "-text-inner");
43114
+ if (!messageTextToRender && !message.quoted_message)
43115
+ return null;
43116
+ return (React__default["default"].createElement("div", { className: wrapperClass, tabIndex: 0 },
43117
+ React__default["default"].createElement("div", { className: "\n ".concat(innerClass, "\n ").concat(hasAttachment ? " str-chat__message-".concat(theme, "-text-inner--has-attachment") : '', "\n ").concat(isOnlyEmojis(message.text) && !message.quoted_message
43118
+ ? " str-chat__message-".concat(theme, "-text-inner--is-emoji")
43119
+ : '', "\n ").trim(), "data-testid": 'message-text-inner-wrapper', onClick: onMentionsClickMessage, onMouseOver: onMentionsHoverMessage },
43120
+ message.quoted_message && React__default["default"].createElement(QuotedMessage$1, null),
43121
+ message.type === 'error' && (React__default["default"].createElement("div", { className: "str-chat__".concat(theme, "-message--error-message str-chat__message--error-message") }, t('Error · Unsent'))),
43122
+ message.status === 'failed' && (React__default["default"].createElement("div", { className: "str-chat__".concat(theme, "-message--error-message str-chat__message--error-message") }, message.errorStatusCode !== 403
43123
+ ? t('Message Failed · Click to try again')
43124
+ : t('Message Failed · Unauthorized'))),
43125
+ unsafeHTML && message.html ? (React__default["default"].createElement("div", { dangerouslySetInnerHTML: { __html: message.html } })) : (React__default["default"].createElement("div", null, messageText)))));
43126
+ };
43127
+ var MessageText = React__default["default"].memo(UnMemoizedMessageTextComponent);
43411
43128
 
43412
- return !args.some(function (element) {
43413
- return !(element && typeof element.getBoundingClientRect === 'function');
43414
- });
43129
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var notValidDateWarning = 'MessageTimestamp was called without a message, or message has invalid created_at date.';
43130
+ var noParsingFunctionWarning = 'MessageTimestamp was called but there is no datetime parsing function available';
43131
+ function getDateString(_a) {
43132
+ var calendar = _a.calendar, format = _a.format, formatDate = _a.formatDate, messageCreatedAt = _a.messageCreatedAt, tDateTimeParser = _a.tDateTimeParser;
43133
+ if (!messageCreatedAt ||
43134
+ (typeof messageCreatedAt === 'string' && !Date.parse(messageCreatedAt))) {
43135
+ console.warn(notValidDateWarning);
43136
+ return null;
43137
+ }
43138
+ if (typeof formatDate === 'function') {
43139
+ return formatDate(new Date(messageCreatedAt));
43140
+ }
43141
+ if (!tDateTimeParser) {
43142
+ console.warn(noParsingFunctionWarning);
43143
+ return null;
43144
+ }
43145
+ var parsedTime = tDateTimeParser(messageCreatedAt);
43146
+ if (isDayOrMoment(parsedTime)) {
43147
+ /**
43148
+ * parsedTime.calendar is guaranteed on the type but is only
43149
+ * available when a user calls dayjs.extend(calendar)
43150
+ */
43151
+ return calendar && parsedTime.calendar ? parsedTime.calendar() : parsedTime.format(format);
43152
+ }
43153
+ if (isDate(parsedTime)) {
43154
+ return parsedTime.toDateString();
43155
+ }
43156
+ if (isNumberOrString(parsedTime)) {
43157
+ return parsedTime;
43158
+ }
43159
+ return null;
43415
43160
  }
43416
43161
 
43417
- function popperGenerator(generatorOptions) {
43418
- if (generatorOptions === void 0) {
43419
- generatorOptions = {};
43420
- }
43162
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var defaultTimestampFormat = 'h:mmA';
43163
+ var UnMemoizedMessageTimestamp = function (props) {
43164
+ var _a = props.calendar, calendar = _a === void 0 ? false : _a, _b = props.customClass, customClass = _b === void 0 ? '' : _b, _c = props.format, format = _c === void 0 ? defaultTimestampFormat : _c, propMessage = props.message;
43165
+ var _d = useMessageContext('MessageTimestamp'), formatDate = _d.formatDate, contextMessage = _d.message;
43166
+ var tDateTimeParser = useTranslationContext('MessageTimestamp').tDateTimeParser;
43167
+ var message = propMessage || contextMessage;
43168
+ var messageCreatedAt = message.created_at && isDate(message.created_at)
43169
+ ? message.created_at.toISOString()
43170
+ : message.created_at;
43171
+ var when = React.useMemo(function () { return getDateString({ calendar: calendar, format: format, formatDate: formatDate, messageCreatedAt: messageCreatedAt, tDateTimeParser: tDateTimeParser }); }, [formatDate, calendar, tDateTimeParser, format, messageCreatedAt]);
43172
+ if (!when)
43173
+ return null;
43174
+ return (React__default["default"].createElement("time", { className: customClass, dateTime: messageCreatedAt, title: messageCreatedAt }, when));
43175
+ };
43176
+ var MessageTimestamp = React__default["default"].memo(UnMemoizedMessageTimestamp);
43421
43177
 
43422
- var _generatorOptions = generatorOptions,
43423
- _generatorOptions$def = _generatorOptions.defaultModifiers,
43424
- defaultModifiers = _generatorOptions$def === void 0 ? [] : _generatorOptions$def,
43425
- _generatorOptions$def2 = _generatorOptions.defaultOptions,
43426
- defaultOptions = _generatorOptions$def2 === void 0 ? DEFAULT_OPTIONS$1 : _generatorOptions$def2;
43427
- return function createPopper(reference, popper, options) {
43428
- if (options === void 0) {
43429
- options = defaultOptions;
43430
- }
43178
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var CUSTOM_MESSAGE_TYPE = {
43179
+ date: 'message.date',
43180
+ intro: 'channel.intro',
43181
+ };
43431
43182
 
43432
- var state = {
43433
- placement: 'bottom',
43434
- orderedModifiers: [],
43435
- options: Object.assign({}, DEFAULT_OPTIONS$1, defaultOptions),
43436
- modifiersData: {},
43437
- elements: {
43438
- reference: reference,
43439
- popper: popper
43440
- },
43441
- attributes: {},
43442
- styles: {}
43183
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var useCommandTrigger = function () {
43184
+ var themeVersion = useChatContext('useCommandTrigger').themeVersion;
43185
+ var channelConfig = useChannelStateContext('useCommandTrigger').channelConfig;
43186
+ var commands = channelConfig === null || channelConfig === void 0 ? void 0 : channelConfig.commands;
43187
+ return {
43188
+ component: CommandItem,
43189
+ dataProvider: function (query, text, onReady) {
43190
+ if (text.indexOf('/') !== 0 || !commands) {
43191
+ return [];
43192
+ }
43193
+ var selectedCommands = commands.filter(function (command) { var _a; return ((_a = command.name) === null || _a === void 0 ? void 0 : _a.indexOf(query)) !== -1; });
43194
+ // sort alphabetically unless the you're matching the first char
43195
+ selectedCommands.sort(function (a, b) {
43196
+ var _a, _b;
43197
+ var nameA = (_a = a.name) === null || _a === void 0 ? void 0 : _a.toLowerCase();
43198
+ var nameB = (_b = b.name) === null || _b === void 0 ? void 0 : _b.toLowerCase();
43199
+ if ((nameA === null || nameA === void 0 ? void 0 : nameA.indexOf(query)) === 0) {
43200
+ nameA = "0".concat(nameA);
43201
+ }
43202
+ if ((nameB === null || nameB === void 0 ? void 0 : nameB.indexOf(query)) === 0) {
43203
+ nameB = "0".concat(nameB);
43204
+ }
43205
+ // Should confirm possible null / undefined when TS is fully implemented
43206
+ if (nameA != null && nameB != null) {
43207
+ if (nameA < nameB) {
43208
+ return -1;
43209
+ }
43210
+ if (nameA > nameB) {
43211
+ return 1;
43212
+ }
43213
+ }
43214
+ return 0;
43215
+ });
43216
+ var result = selectedCommands.slice(0, themeVersion === '2' ? 5 : 10);
43217
+ if (onReady)
43218
+ onReady(result.filter(function (result) {
43219
+ return result.name !== undefined;
43220
+ }), query);
43221
+ return result;
43222
+ },
43223
+ output: function (entity) { return ({
43224
+ caretPosition: 'next',
43225
+ key: entity.name,
43226
+ text: "/".concat(entity.name),
43227
+ }); },
43443
43228
  };
43444
- var effectCleanupFns = [];
43445
- var isDestroyed = false;
43446
- var instance = {
43447
- state: state,
43448
- setOptions: function setOptions(setOptionsAction) {
43449
- var options = typeof setOptionsAction === 'function' ? setOptionsAction(state.options) : setOptionsAction;
43450
- cleanupModifierEffects();
43451
- state.options = Object.assign({}, defaultOptions, state.options, options);
43452
- state.scrollParents = {
43453
- reference: isElement(reference) ? listScrollParents(reference) : reference.contextElement ? listScrollParents(reference.contextElement) : [],
43454
- popper: listScrollParents(popper)
43455
- }; // Orders the modifiers based on their dependencies and `phase`
43456
- // properties
43229
+ };
43457
43230
 
43458
- var orderedModifiers = orderModifiers(mergeByName([].concat(defaultModifiers, state.options.modifiers))); // Strip out disabled modifiers
43231
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var UnMemoizedEmoticonItem = function (props) {
43232
+ var entity = props.entity;
43233
+ var hasEntity = Object.keys(entity).length;
43234
+ var itemParts = entity === null || entity === void 0 ? void 0 : entity.itemNameParts;
43235
+ var renderName = function () {
43236
+ if (!hasEntity)
43237
+ return null;
43238
+ return (hasEntity &&
43239
+ itemParts.parts.map(function (part, i) {
43240
+ return part.toLowerCase() === itemParts.match.toLowerCase() ? (React__default["default"].createElement("span", { className: 'str-chat__emoji-item--highlight', key: "part-".concat(i) }, part)) : (React__default["default"].createElement("span", { className: 'str-chat__emoji-item--part', key: "part-".concat(i) }, part));
43241
+ }));
43242
+ };
43243
+ return (React__default["default"].createElement("div", { className: 'str-chat__emoji-item' },
43244
+ React__default["default"].createElement("span", { className: 'str-chat__emoji-item--entity' }, entity.native),
43245
+ React__default["default"].createElement("span", { className: 'str-chat__emoji-item--name' }, renderName())));
43246
+ };
43247
+ var EmoticonItem = React__default["default"].memo(UnMemoizedEmoticonItem);
43459
43248
 
43460
- state.orderedModifiers = orderedModifiers.filter(function (m) {
43461
- return m.enabled;
43462
- }); // Validate the provided modifiers so that the consumer will get warned
43249
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var useEmojiTrigger = function (emojiIndex) {
43250
+ var themeVersion = useChatContext('useEmojiTrigger').themeVersion;
43251
+ return {
43252
+ component: EmoticonItem,
43253
+ dataProvider: function (query, _, onReady) {
43254
+ if (query.length === 0 || query.charAt(0).match(/[^a-zA-Z0-9+-]/)) {
43255
+ return [];
43256
+ }
43257
+ var emojis = (emojiIndex === null || emojiIndex === void 0 ? void 0 : emojiIndex.search(query)) || [];
43258
+ // emojiIndex.search sometimes returns undefined values, so filter those out first
43259
+ var result = emojis.filter(Boolean).slice(0, themeVersion === '2' ? 7 : 10);
43260
+ if (onReady)
43261
+ onReady(result, query);
43262
+ return result;
43263
+ },
43264
+ output: function (entity) { return ({
43265
+ caretPosition: 'next',
43266
+ key: entity.id,
43267
+ text: "".concat('native' in entity ? entity.native : ''),
43268
+ }); },
43269
+ };
43270
+ };
43463
43271
 
43464
- runModifierEffects();
43465
- return instance.update();
43466
- },
43467
- // Sync update – it will always be executed, even if not necessary. This
43468
- // is useful for low frequency updates where sync behavior simplifies the
43469
- // logic.
43470
- // For high frequency updates (e.g. `resize` and `scroll` events), always
43471
- // prefer the async Popper#update method
43472
- forceUpdate: function forceUpdate() {
43473
- if (isDestroyed) {
43474
- return;
43272
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var accentsMap = {
43273
+ a: 'á|à|ã|â|À|Á|Ã|Â',
43274
+ c: 'ç|Ç',
43275
+ e: 'é|è|ê|É|È|Ê',
43276
+ i: 'í|ì|î|Í|Ì|Î',
43277
+ n: 'ñ|Ñ',
43278
+ o: 'ó|ò|ô|ő|õ|Ó|Ò|Ô|Õ',
43279
+ u: 'ú|ù|û|ü|Ú|Ù|Û|Ü',
43280
+ };
43281
+ var removeDiacritics = function (text) {
43282
+ if (!text)
43283
+ return '';
43284
+ return Object.keys(accentsMap).reduce(function (acc, current) { return acc.replace(new RegExp(accentsMap[current], 'g'), current); }, text);
43285
+ };
43286
+ var calculateLevenshtein = function (query, name) {
43287
+ if (query.length === 0)
43288
+ return name.length;
43289
+ if (name.length === 0)
43290
+ return query.length;
43291
+ var matrix = [];
43292
+ var i;
43293
+ for (i = 0; i <= name.length; i++) {
43294
+ matrix[i] = [i];
43295
+ }
43296
+ var j;
43297
+ for (j = 0; j <= query.length; j++) {
43298
+ matrix[0][j] = j;
43299
+ }
43300
+ for (i = 1; i <= name.length; i++) {
43301
+ for (j = 1; j <= query.length; j++) {
43302
+ if (name.charAt(i - 1) === query.charAt(j - 1)) {
43303
+ matrix[i][j] = matrix[i - 1][j - 1];
43304
+ }
43305
+ else {
43306
+ matrix[i][j] = Math.min(matrix[i - 1][j - 1] + 1, // substitution
43307
+ Math.min(matrix[i][j - 1] + 1, // insertion
43308
+ matrix[i - 1][j] + 1)); // deletion
43309
+ }
43310
+ }
43311
+ }
43312
+ return matrix[name.length][query.length];
43313
+ };
43314
+ var searchLocalUsers = function (params) {
43315
+ var ownUserId = params.ownUserId, query = params.query, text = params.text, useMentionsTransliteration = params.useMentionsTransliteration, users = params.users;
43316
+ var matchingUsers = users.filter(function (user) {
43317
+ if (user.id === ownUserId)
43318
+ return false;
43319
+ if (!query)
43320
+ return true;
43321
+ var updatedId = removeDiacritics(user.id).toLowerCase();
43322
+ var updatedName = removeDiacritics(user.name).toLowerCase();
43323
+ var updatedQuery = removeDiacritics(query).toLowerCase();
43324
+ if (useMentionsTransliteration) {
43325
+ (function () { return __awaiter$3(void 0, void 0, void 0, function () {
43326
+ var transliterate;
43327
+ return __generator$3(this, function (_a) {
43328
+ switch (_a.label) {
43329
+ case 0: return [4 /*yield*/, Promise.resolve().then(function () { return index_module; })];
43330
+ case 1:
43331
+ transliterate = (_a.sent()).default;
43332
+ updatedName = transliterate(user.name || '').toLowerCase();
43333
+ updatedQuery = transliterate(query).toLowerCase();
43334
+ updatedId = transliterate(user.id).toLowerCase();
43335
+ return [2 /*return*/];
43336
+ }
43337
+ });
43338
+ }); })();
43339
+ }
43340
+ var maxDistance = 3;
43341
+ var lastDigits = text.slice(-(maxDistance + 1)).includes('@');
43342
+ if (updatedName) {
43343
+ var levenshtein_1 = calculateLevenshtein(updatedQuery, updatedName);
43344
+ if (updatedName.includes(updatedQuery) || (levenshtein_1 <= maxDistance && lastDigits)) {
43345
+ return true;
43346
+ }
43347
+ }
43348
+ var levenshtein = calculateLevenshtein(updatedQuery, updatedId);
43349
+ return updatedId.includes(updatedQuery) || (levenshtein <= maxDistance && lastDigits);
43350
+ });
43351
+ return matchingUsers;
43352
+ };
43353
+ var checkUploadPermissions = function (params) { return __awaiter$3(void 0, void 0, void 0, function () {
43354
+ var addNotification, file, getAppSettings, t, uploadType, appSettings, _a, allowed_file_extensions, allowed_mime_types, blocked_file_extensions, blocked_mime_types, sendErrorNotification, allowed, blocked, allowed, blocked;
43355
+ var _b, _c;
43356
+ return __generator$3(this, function (_d) {
43357
+ switch (_d.label) {
43358
+ case 0:
43359
+ addNotification = params.addNotification, file = params.file, getAppSettings = params.getAppSettings, t = params.t, uploadType = params.uploadType;
43360
+ appSettings = null;
43361
+ return [4 /*yield*/, getAppSettings()];
43362
+ case 1:
43363
+ appSettings = _d.sent();
43364
+ _a = (uploadType === 'image'
43365
+ ? (_b = appSettings === null || appSettings === void 0 ? void 0 : appSettings.app) === null || _b === void 0 ? void 0 : _b.image_upload_config
43366
+ : (_c = appSettings === null || appSettings === void 0 ? void 0 : appSettings.app) === null || _c === void 0 ? void 0 : _c.file_upload_config) || {}, allowed_file_extensions = _a.allowed_file_extensions, allowed_mime_types = _a.allowed_mime_types, blocked_file_extensions = _a.blocked_file_extensions, blocked_mime_types = _a.blocked_mime_types;
43367
+ sendErrorNotification = function () {
43368
+ return addNotification(t("Upload type: \"{{ type }}\" is not allowed", { type: file.type || 'unknown type' }), 'error');
43369
+ };
43370
+ if (allowed_file_extensions === null || allowed_file_extensions === void 0 ? void 0 : allowed_file_extensions.length) {
43371
+ allowed = allowed_file_extensions.some(function (ext) {
43372
+ return file.name.toLowerCase().endsWith(ext.toLowerCase());
43373
+ });
43374
+ if (!allowed) {
43375
+ sendErrorNotification();
43376
+ return [2 /*return*/, false];
43377
+ }
43378
+ }
43379
+ if (blocked_file_extensions === null || blocked_file_extensions === void 0 ? void 0 : blocked_file_extensions.length) {
43380
+ blocked = blocked_file_extensions.some(function (ext) {
43381
+ return file.name.toLowerCase().endsWith(ext.toLowerCase());
43382
+ });
43383
+ if (blocked) {
43384
+ sendErrorNotification();
43385
+ return [2 /*return*/, false];
43386
+ }
43387
+ }
43388
+ if (allowed_mime_types === null || allowed_mime_types === void 0 ? void 0 : allowed_mime_types.length) {
43389
+ allowed = allowed_mime_types.some(function (type) { var _a; return type.toLowerCase() === ((_a = file.type) === null || _a === void 0 ? void 0 : _a.toLowerCase()); });
43390
+ if (!allowed) {
43391
+ sendErrorNotification();
43392
+ return [2 /*return*/, false];
43393
+ }
43394
+ }
43395
+ if (blocked_mime_types === null || blocked_mime_types === void 0 ? void 0 : blocked_mime_types.length) {
43396
+ blocked = blocked_mime_types.some(function (type) { var _a; return type.toLowerCase() === ((_a = file.type) === null || _a === void 0 ? void 0 : _a.toLowerCase()); });
43397
+ if (blocked) {
43398
+ sendErrorNotification();
43399
+ return [2 /*return*/, false];
43400
+ }
43401
+ }
43402
+ return [2 /*return*/, true];
43475
43403
  }
43404
+ });
43405
+ }); };
43476
43406
 
43477
- var _state$elements = state.elements,
43478
- reference = _state$elements.reference,
43479
- popper = _state$elements.popper; // Don't proceed if `reference` or `popper` are not valid elements
43480
- // anymore
43481
-
43482
- if (!areValidElements(reference, popper)) {
43483
-
43484
- return;
43485
- } // Store the reference and popper rects to be read by modifiers
43486
-
43487
-
43488
- state.rects = {
43489
- reference: getCompositeRect(reference, getOffsetParent(popper), state.options.strategy === 'fixed'),
43490
- popper: getLayoutRect(popper)
43491
- }; // Modifiers have the ability to reset the current update cycle. The
43492
- // most common use case for this is the `flip` modifier changing the
43493
- // placement, which then needs to re-run all the modifiers, because the
43494
- // logic was previously ran for the previous placement and is therefore
43495
- // stale/incorrect
43496
-
43497
- state.reset = false;
43498
- state.placement = state.options.placement; // On each update cycle, the `modifiersData` property for each modifier
43499
- // is filled with the initial data specified by the modifier. This means
43500
- // it doesn't persist and is fresh on each update.
43501
- // To ensure persistent data, use `${name}#persistent`
43502
-
43503
- state.orderedModifiers.forEach(function (modifier) {
43504
- return state.modifiersData[modifier.name] = Object.assign({}, modifier.data);
43407
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var useUserTrigger = function (params) {
43408
+ var disableMentions = params.disableMentions, mentionAllAppUsers = params.mentionAllAppUsers, _a = params.mentionQueryParams, mentionQueryParams = _a === void 0 ? {} : _a, onSelectUser = params.onSelectUser, useMentionsTransliteration = params.useMentionsTransliteration;
43409
+ var _b = React.useState(false), searching = _b[0], setSearching = _b[1];
43410
+ var _c = useChatContext('useUserTrigger'), client = _c.client, mutes = _c.mutes, themeVersion = _c.themeVersion;
43411
+ var channel = useChannelStateContext('useUserTrigger').channel;
43412
+ var members = channel.state.members;
43413
+ var watchers = channel.state.watchers;
43414
+ var getMembersAndWatchers = React.useCallback(function () {
43415
+ var memberUsers = members ? Object.values(members).map(function (_a) {
43416
+ var user = _a.user;
43417
+ return user;
43418
+ }) : [];
43419
+ var watcherUsers = watchers ? Object.values(watchers) : [];
43420
+ var users = __spreadArray$1(__spreadArray$1([], memberUsers, true), watcherUsers, true);
43421
+ // make sure we don't list users twice
43422
+ var uniqueUsers = {};
43423
+ users.forEach(function (user) {
43424
+ if (user && !uniqueUsers[user.id]) {
43425
+ uniqueUsers[user.id] = user;
43426
+ }
43505
43427
  });
43506
-
43507
- for (var index = 0; index < state.orderedModifiers.length; index++) {
43508
-
43509
- if (state.reset === true) {
43510
- state.reset = false;
43511
- index = -1;
43512
- continue;
43513
- }
43514
-
43515
- var _state$orderedModifie = state.orderedModifiers[index],
43516
- fn = _state$orderedModifie.fn,
43517
- _state$orderedModifie2 = _state$orderedModifie.options,
43518
- _options = _state$orderedModifie2 === void 0 ? {} : _state$orderedModifie2,
43519
- name = _state$orderedModifie.name;
43520
-
43521
- if (typeof fn === 'function') {
43522
- state = fn({
43523
- state: state,
43524
- options: _options,
43525
- name: name,
43526
- instance: instance
43527
- }) || state;
43528
- }
43529
- }
43530
- },
43531
- // Async and optimistically optimized update – it will not be executed if
43532
- // not necessary (debounced to run at most once-per-tick)
43533
- update: debounce(function () {
43534
- return new Promise(function (resolve) {
43535
- instance.forceUpdate();
43536
- resolve(state);
43428
+ return Object.values(uniqueUsers);
43429
+ }, [members, watchers]);
43430
+ var queryMembersThrottled = React.useCallback(lodash_throttle(function (query, onReady) { return __awaiter$3(void 0, void 0, void 0, function () {
43431
+ var response, users, error_1;
43432
+ return __generator$3(this, function (_a) {
43433
+ switch (_a.label) {
43434
+ case 0:
43435
+ _a.trys.push([0, 2, , 3]);
43436
+ return [4 /*yield*/, channel.queryMembers({
43437
+ name: { $autocomplete: query },
43438
+ })];
43439
+ case 1:
43440
+ response = _a.sent();
43441
+ users = response.members.map(function (member) { return member.user; });
43442
+ if (onReady && users.length) {
43443
+ onReady(users);
43444
+ }
43445
+ else {
43446
+ onReady([]);
43447
+ }
43448
+ return [3 /*break*/, 3];
43449
+ case 2:
43450
+ error_1 = _a.sent();
43451
+ console.log({ error: error_1 });
43452
+ return [3 /*break*/, 3];
43453
+ case 3: return [2 /*return*/];
43454
+ }
43537
43455
  });
43538
- }),
43539
- destroy: function destroy() {
43540
- cleanupModifierEffects();
43541
- isDestroyed = true;
43542
- }
43456
+ }); }, 200), [channel]);
43457
+ var queryUsers = function (query, onReady) { return __awaiter$3(void 0, void 0, void 0, function () {
43458
+ var users, error_2;
43459
+ return __generator$3(this, function (_a) {
43460
+ switch (_a.label) {
43461
+ case 0:
43462
+ if (!query || searching)
43463
+ return [2 /*return*/];
43464
+ setSearching(true);
43465
+ _a.label = 1;
43466
+ case 1:
43467
+ _a.trys.push([1, 3, , 4]);
43468
+ 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))];
43469
+ case 2:
43470
+ users = (_a.sent()).users;
43471
+ if (onReady && users.length) {
43472
+ onReady(users);
43473
+ }
43474
+ else {
43475
+ onReady([]);
43476
+ }
43477
+ return [3 /*break*/, 4];
43478
+ case 3:
43479
+ error_2 = _a.sent();
43480
+ console.log({ error: error_2 });
43481
+ return [3 /*break*/, 4];
43482
+ case 4:
43483
+ setSearching(false);
43484
+ return [2 /*return*/];
43485
+ }
43486
+ });
43487
+ }); };
43488
+ var queryUsersThrottled = lodash_throttle(queryUsers, 200);
43489
+ return {
43490
+ callback: function (item) { return onSelectUser(item); },
43491
+ component: UserItem,
43492
+ dataProvider: function (query, text, onReady) {
43493
+ var _a, _b;
43494
+ if (disableMentions)
43495
+ return;
43496
+ var filterMutes = function (data) {
43497
+ if (text.includes('/unmute') && !mutes.length) {
43498
+ return [];
43499
+ }
43500
+ if (!mutes.length)
43501
+ return data;
43502
+ if (text.includes('/unmute')) {
43503
+ return data.filter(function (suggestion) {
43504
+ return mutes.some(function (mute) { return mute.target.id === suggestion.id; });
43505
+ });
43506
+ }
43507
+ return data.filter(function (suggestion) { return mutes.every(function (mute) { return mute.target.id !== suggestion.id; }); });
43508
+ };
43509
+ if (mentionAllAppUsers) {
43510
+ return queryUsersThrottled(query, function (data) {
43511
+ if (onReady)
43512
+ onReady(filterMutes(data), query);
43513
+ });
43514
+ }
43515
+ /**
43516
+ * By default, we return maximum 100 members via queryChannels api call.
43517
+ * Thus it is safe to assume, that if number of members in channel.state is < 100,
43518
+ * then all the members are already available on client side and we don't need to
43519
+ * make any api call to queryMembers endpoint.
43520
+ */
43521
+ if (!query || Object.values(members || {}).length < 100) {
43522
+ var users = getMembersAndWatchers();
43523
+ var params_1 = {
43524
+ ownUserId: client.userID,
43525
+ query: query,
43526
+ text: text,
43527
+ useMentionsTransliteration: useMentionsTransliteration,
43528
+ users: users,
43529
+ };
43530
+ var matchingUsers = searchLocalUsers(params_1);
43531
+ var usersToShow = (_b = (_a = mentionQueryParams.options) === null || _a === void 0 ? void 0 : _a.limit) !== null && _b !== void 0 ? _b : (themeVersion === '2' ? 7 : 10);
43532
+ var data = matchingUsers.slice(0, usersToShow);
43533
+ if (onReady)
43534
+ onReady(filterMutes(data), query);
43535
+ return data;
43536
+ }
43537
+ return queryMembersThrottled(query, function (data) {
43538
+ if (onReady)
43539
+ onReady(filterMutes(data), query);
43540
+ });
43541
+ },
43542
+ output: function (entity) { return ({
43543
+ caretPosition: 'next',
43544
+ key: entity.id,
43545
+ text: "@".concat(entity.name || entity.id),
43546
+ }); },
43543
43547
  };
43548
+ };
43544
43549
 
43545
- if (!areValidElements(reference, popper)) {
43546
-
43547
- return instance;
43548
- }
43549
-
43550
- instance.setOptions(options).then(function (state) {
43551
- if (!isDestroyed && options.onFirstUpdate) {
43552
- options.onFirstUpdate(state);
43553
- }
43554
- }); // Modifiers have the ability to execute arbitrary code before the first
43555
- // update cycle runs. They will be executed in the same order as the update
43556
- // cycle. This is useful when a modifier adds some persistent data that
43557
- // other modifiers need to use, but the modifier is run after the dependent
43558
- // one.
43550
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var DefaultTriggerProvider = function (_a) {
43551
+ var children = _a.children;
43552
+ var currentValue = useMessageInputContext('DefaultTriggerProvider');
43553
+ var defaultAutocompleteTriggers = {
43554
+ '/': useCommandTrigger(),
43555
+ ':': useEmojiTrigger(currentValue.emojiIndex),
43556
+ '@': useUserTrigger({
43557
+ disableMentions: currentValue.disableMentions,
43558
+ mentionAllAppUsers: currentValue.mentionAllAppUsers,
43559
+ mentionQueryParams: currentValue.mentionQueryParams,
43560
+ onSelectUser: currentValue.onSelectUser,
43561
+ useMentionsTransliteration: currentValue.useMentionsTransliteration,
43562
+ }),
43563
+ };
43564
+ var newValue = __assign$8(__assign$8({}, currentValue), { autocompleteTriggers: defaultAutocompleteTriggers });
43565
+ return React__default["default"].createElement(MessageInputContextProvider, { value: newValue }, children);
43566
+ };
43559
43567
 
43560
- function runModifierEffects() {
43561
- state.orderedModifiers.forEach(function (_ref3) {
43562
- var name = _ref3.name,
43563
- _ref3$options = _ref3.options,
43564
- options = _ref3$options === void 0 ? {} : _ref3$options,
43565
- effect = _ref3.effect;
43568
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var filterEmoji = function (emoji) {
43569
+ return !(emoji.name === 'White Smiling Face' || emoji.name === 'White Frowning Face');
43570
+ };
43571
+ var EmojiPicker = function (_a) {
43572
+ var small = _a.small;
43573
+ var _b = useEmojiContext('EmojiPicker'), emojiConfig = _b.emojiConfig, EmojiPickerComponent = _b.EmojiPicker;
43574
+ var t = useTranslationContext('EmojiPicker').t;
43575
+ var _c = useMessageInputContext('EmojiPicker'), emojiPickerIsOpen = _c.emojiPickerIsOpen, emojiPickerRef = _c.emojiPickerRef, onSelectEmoji = _c.onSelectEmoji;
43576
+ var emojiData = (emojiConfig || {}).emojiData;
43577
+ if (!emojiPickerIsOpen || !emojiData)
43578
+ return null;
43579
+ return (React__default["default"].createElement("div", { className: clsx('str-chat__emoji-picker-container', {
43580
+ 'str-chat__input--emojipicker': !small,
43581
+ 'str-chat__small-message-input-emojipicker': small,
43582
+ }), ref: emojiPickerRef },
43583
+ React__default["default"].createElement(React.Suspense, { fallback: null },
43584
+ React__default["default"].createElement(EmojiPickerComponent, { color: '#006CFF', data: emojiData, emoji: 'point_up', emojisToShowFilter: filterEmoji, native: true, onSelect: onSelectEmoji, set: 'facebook', showPreview: false, showSkinTones: false, title: t('Pick your emoji'), useButton: true }))));
43585
+ };
43566
43586
 
43567
- if (typeof effect === 'function') {
43568
- var cleanupFn = effect({
43569
- state: state,
43570
- name: name,
43571
- instance: instance,
43572
- options: options
43573
- });
43587
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var EmojiIconLarge = function () {
43588
+ var t = useTranslationContext('EmojiIconLarge').t;
43589
+ return (React__default["default"].createElement("svg", { height: '28', width: '28', xmlns: 'http://www.w3.org/2000/svg' },
43590
+ React__default["default"].createElement("title", null, t('Open emoji picker')),
43591
+ React__default["default"].createElement("g", { clipRule: 'evenodd', fillRule: 'evenodd' },
43592
+ React__default["default"].createElement("path", { d: 'M14 4.4C8.6 4.4 4.4 8.6 4.4 14c0 5.4 4.2 9.6 9.6 9.6c5.4 0 9.6-4.2 9.6-9.6c0-5.4-4.2-9.6-9.6-9.6zM2 14c0-6.6 5.4-12 12-12s12 5.4 12 12s-5.4 12-12 12s-12-5.4-12-12zM12.8 11c0 1-.8 1.8-1.8 1.8s-1.8-.8-1.8-1.8s.8-1.8 1.8-1.8s1.8.8 1.8 1.8zM18.8 11c0 1-.8 1.8-1.8 1.8s-1.8-.8-1.8-1.8s.8-1.8 1.8-1.8s1.8.8 1.8 1.8zM8.6 15.4c.6-.4 1.2-.2 1.6.2c.6.8 1.6 1.8 3 2c1.2.4 2.8.2 4.8-2c.4-.4 1.2-.6 1.6 0c.4.4.6 1.2 0 1.6c-2.2 2.6-4.8 3.4-7 3c-2-.4-3.6-1.8-4.4-3c-.4-.6-.2-1.2.4-1.8z' }))));
43593
+ };
43594
+ var EmojiIconSmall = function () {
43595
+ var t = useTranslationContext('EmojiIconSmall').t;
43596
+ return (React__default["default"].createElement("svg", { height: '14', width: '14', xmlns: 'http://www.w3.org/2000/svg' },
43597
+ React__default["default"].createElement("title", null, t('Open emoji picker')),
43598
+ React__default["default"].createElement("g", { clipRule: 'evenodd', fillRule: 'evenodd' },
43599
+ React__default["default"].createElement("path", { d: 'M6.7 1.42C3.73 1.42 1.42 3.73 1.42 6.7c0 2.97 2.31 5.28 5.28 5.28c2.97 0 5.28-2.31 5.28-5.28c0-2.97-2.31-5.28-5.28-5.28zM.1 6.7c0-3.63 2.97-6.6 6.6-6.6s6.6 2.97 6.6 6.6s-2.97 6.6-6.6 6.6s-6.6-2.97-6.6-6.6zM6.04 5.05c0 .55-.44.99-.99.99s-.99-.44-.99-.99s.44-.99.99-.99s.99.44.99.99zM9.34 5.05c0 .55-.44.99-.99.99s-.99-.44-.99-.99s.44-.99.99-.99s.99.44.99.99zM3.73 7.47c.33-.22.66-.11.88.11c.33.44.88.99 1.65 1.1c.66.22 1.54.11 2.64-1.1c.22-.22.66-.33.88 0c.22.22.33.66 0 .88c-1.21 1.43-2.64 1.87-3.85 1.65c-1.1-.22-1.98-.99-2.42-1.65c-.22-.33-.11-.66.22-.99z' }))));
43600
+ };
43601
+ // ThemingV2 icon
43602
+ var EmojiPickerIcon = function () { return (React__default["default"].createElement("svg", { preserveAspectRatio: 'xMinYMin', viewBox: '0 0 28 28', width: '100%', xmlns: 'http://www.w3.org/2000/svg' },
43603
+ React__default["default"].createElement("g", { clipRule: 'evenodd', fillRule: 'evenodd' },
43604
+ React__default["default"].createElement("path", { d: 'M14 4.4C8.6 4.4 4.4 8.6 4.4 14c0 5.4 4.2 9.6 9.6 9.6c5.4 0 9.6-4.2 9.6-9.6c0-5.4-4.2-9.6-9.6-9.6zM2 14c0-6.6 5.4-12 12-12s12 5.4 12 12s-5.4 12-12 12s-12-5.4-12-12zM12.8 11c0 1-.8 1.8-1.8 1.8s-1.8-.8-1.8-1.8s.8-1.8 1.8-1.8s1.8.8 1.8 1.8zM18.8 11c0 1-.8 1.8-1.8 1.8s-1.8-.8-1.8-1.8s.8-1.8 1.8-1.8s1.8.8 1.8 1.8zM8.6 15.4c.6-.4 1.2-.2 1.6.2c.6.8 1.6 1.8 3 2c1.2.4 2.8.2 4.8-2c.4-.4 1.2-.6 1.6 0c.4.4.6 1.2 0 1.6c-2.2 2.6-4.8 3.4-7 3c-2-.4-3.6-1.8-4.4-3c-.4-.6-.2-1.2.4-1.8z' })))); };
43605
+ var FileUploadIcon = function () {
43606
+ var t = useTranslationContext('FileUploadIcon').t;
43607
+ return (React__default["default"].createElement("svg", { height: '14', width: '14', xmlns: 'http://www.w3.org/2000/svg' },
43608
+ React__default["default"].createElement("title", null, t('Attach files')),
43609
+ React__default["default"].createElement("path", { d: 'M7 .5c3.59 0 6.5 2.91 6.5 6.5s-2.91 6.5-6.5 6.5S.5 10.59.5 7 3.41.5 7 .5zm0 12c3.031 0 5.5-2.469 5.5-5.5S10.031 1.5 7 1.5A5.506 5.506 0 0 0 1.5 7c0 3.034 2.469 5.5 5.5 5.5zM7.506 3v3.494H11v1.05H7.506V11h-1.05V7.544H3v-1.05h3.456V3h1.05z', fillRule: 'nonzero' })));
43610
+ };
43611
+ var FileUploadIconFlat = function () {
43612
+ var t = useTranslationContext('FileUploadIconFlat').t;
43613
+ return (React__default["default"].createElement("svg", { height: '14', width: '14', xmlns: 'http://www.w3.org/2000/svg' },
43614
+ React__default["default"].createElement("title", null, t('Attach files')),
43615
+ React__default["default"].createElement("path", { d: 'M1.667.333h10.666c.737 0 1.334.597 1.334 1.334v10.666c0 .737-.597 1.334-1.334 1.334H1.667a1.333 1.333 0 0 1-1.334-1.334V1.667C.333.93.93.333 1.667.333zm2 1.334a1.667 1.667 0 1 0 0 3.333 1.667 1.667 0 0 0 0-3.333zm-2 9.333v1.333h10.666v-4l-2-2-4 4-2-2L1.667 11z', fillRule: 'nonzero' })));
43616
+ };
43617
+ var LoadingIndicatorIcon = function (_a) {
43618
+ var _b = _a.size, size = _b === void 0 ? 20 : _b;
43619
+ var id = React.useId();
43620
+ return (React__default["default"].createElement("div", { className: 'str-chat__loading-indicator' },
43621
+ React__default["default"].createElement("svg", { "data-testid": 'loading-indicator', height: size, viewBox: '0 0 30 30', width: size, xmlns: 'http://www.w3.org/2000/svg' },
43622
+ React__default["default"].createElement("defs", null,
43623
+ React__default["default"].createElement("linearGradient", { id: "".concat(id, "-linear-gradient"), x1: '50%', x2: '50%', y1: '0%', y2: '100%' },
43624
+ React__default["default"].createElement("stop", { offset: '0%', stopColor: '#FFF', stopOpacity: '0' }),
43625
+ React__default["default"].createElement("stop", { "data-testid": 'stop-color', offset: '100%', stopOpacity: '1' }))),
43626
+ React__default["default"].createElement("path", { d: 'M2.518 23.321l1.664-1.11A12.988 12.988 0 0 0 15 28c7.18 0 13-5.82 13-13S22.18 2 15 2V0c8.284 0 15 6.716 15 15 0 8.284-6.716 15-15 15-5.206 0-9.792-2.652-12.482-6.679z', fill: "url(#".concat(id, "-linear-gradient)"), fillRule: 'evenodd' }))));
43627
+ };
43628
+ // ThemingV2 icon
43629
+ var UploadIcon = function () { return (React__default["default"].createElement("svg", { "data-testid": 'attach', fill: 'none', height: '24', viewBox: '0 0 24 24', width: '24', xmlns: 'http://www.w3.org/2000/svg' },
43630
+ React__default["default"].createElement("g", { clipPath: 'url(#clip0_10878_5)' },
43631
+ React__default["default"].createElement("path", { d: 'M12.9997 6.99993L10.9997 6.99993L10.9997 10.9999L6.99972 10.9999L6.99972 12.9999L10.9997 12.9999L10.9997 16.9999L12.9997 16.9999L12.9997 12.9999L16.9997 12.9999L16.9997 10.9999L12.9997 10.9999L12.9997 6.99993ZM11.9997 1.99992C6.47972 1.99992 1.99972 6.47993 1.99972 11.9999C1.99972 17.5199 6.47972 21.9999 11.9997 21.9999C17.5197 21.9999 21.9997 17.5199 21.9997 11.9999C21.9997 6.47993 17.5197 1.99992 11.9997 1.99992ZM11.9997 19.9999C7.58972 19.9999 3.99972 16.4099 3.99972 11.9999C3.99972 7.58993 7.58972 3.99993 11.9997 3.99993C16.4097 3.99993 19.9997 7.58993 19.9997 11.9999C19.9997 16.4099 16.4097 19.9999 11.9997 19.9999Z', fill: 'black' })),
43632
+ React__default["default"].createElement("defs", null,
43633
+ React__default["default"].createElement("clipPath", { id: 'clip0_10878_5' },
43634
+ React__default["default"].createElement("rect", { fill: 'white', height: '24', width: '24' }))))); };
43635
+ var CloseIcon$1 = function () { return (React__default["default"].createElement("svg", { "data-testid": 'close-no-outline', fill: 'none', height: '24', viewBox: '0 0 24 24', width: '24', xmlns: 'http://www.w3.org/2000/svg' },
43636
+ React__default["default"].createElement("path", { d: 'M19 6.41L17.59 5L12 10.59L6.41 5L5 6.41L10.59 12L5 17.59L6.41 19L12 13.41L17.59 19L19 17.59L13.41 12L19 6.41Z', fill: 'black' }))); };
43637
+ var RetryIcon = function () { return (React__default["default"].createElement("svg", { "data-testid": 'retry', fill: 'none', height: '24', viewBox: '0 0 24 24', width: '24', xmlns: 'http://www.w3.org/2000/svg' },
43638
+ React__default["default"].createElement("path", { d: 'M17.6449 6.35C16.1949 4.9 14.2049 4 11.9949 4C7.57488 4 4.00488 7.58 4.00488 12C4.00488 16.42 7.57488 20 11.9949 20C15.7249 20 18.8349 17.45 19.7249 14H17.6449C16.8249 16.33 14.6049 18 11.9949 18C8.68488 18 5.99488 15.31 5.99488 12C5.99488 8.69 8.68488 6 11.9949 6C13.6549 6 15.1349 6.69 16.2149 7.78L12.9949 11H19.9949V4L17.6449 6.35Z', fill: 'black' }))); };
43639
+ var DownloadIcon = function () { return (React__default["default"].createElement("svg", { "data-testid": 'download', fill: 'none', height: '24', viewBox: '0 0 24 24', width: '24', xmlns: 'http://www.w3.org/2000/svg' },
43640
+ React__default["default"].createElement("path", { d: 'M19.35 10.04C18.67 6.59 15.64 4 12 4C9.11 4 6.6 5.64 5.35 8.04C2.34 8.36 0 10.91 0 14C0 17.31 2.69 20 6 20H19C21.76 20 24 17.76 24 15C24 12.36 21.95 10.22 19.35 10.04ZM19 18H6C3.79 18 2 16.21 2 14C2 11.95 3.53 10.24 5.56 10.03L6.63 9.92L7.13 8.97C8.08 7.14 9.94 6 12 6C14.62 6 16.88 7.86 17.39 10.43L17.69 11.93L19.22 12.04C20.78 12.14 22 13.45 22 15C22 16.65 20.65 18 19 18ZM13.45 10H10.55V13H8L12 17L16 13H13.45V10Z', fill: 'black' }))); };
43641
+ var SendIconV1 = function () {
43642
+ var t = useTranslationContext('SendButton').t;
43643
+ return (React__default["default"].createElement("svg", { height: '17', viewBox: '0 0 18 17', width: '18', xmlns: 'http://www.w3.org/2000/svg' },
43644
+ React__default["default"].createElement("title", null, t('Send')),
43645
+ React__default["default"].createElement("path", { d: 'M0 17.015l17.333-8.508L0 0v6.617l12.417 1.89L0 10.397z', fill: '#006cff', fillRule: 'evenodd' })));
43646
+ };
43647
+ var SendIconV2 = function () {
43648
+ var t = useTranslationContext('SendButton').t;
43649
+ return (React__default["default"].createElement("svg", { "data-testid": 'send', fill: 'none', height: '24', viewBox: '0 0 24 24', width: '24', xmlns: 'http://www.w3.org/2000/svg' },
43650
+ React__default["default"].createElement("title", null, t('Send')),
43651
+ React__default["default"].createElement("path", { d: 'M4.00952 22L24 12L4.00952 2L4 9.77778L18.2857 12L4 14.2222L4.00952 22Z', fill: 'black' })));
43652
+ };
43653
+ var SendButton = function (_a) {
43654
+ var sendMessage = _a.sendMessage, rest = __rest$4(_a, ["sendMessage"]);
43655
+ var themeVersion = useChatContext('SendButton').themeVersion;
43656
+ return (React__default["default"].createElement("button", __assign$8({ "aria-label": 'Send', className: 'str-chat__send-button', "data-testid": 'send-button', onClick: sendMessage, type: 'button' }, rest), themeVersion === '2' ? React__default["default"].createElement(SendIconV2, null) : React__default["default"].createElement(SendIconV1, null)));
43657
+ };
43574
43658
 
43575
- var noopFn = function noopFn() {};
43659
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};/**
43660
+ * @deprecated This component has been deprecated in favor of `AttachmentPreviewList` as this component
43661
+ * utilises outdated components from the package [`react-file-utils`](https://github.com/GetStream/react-file-utils)
43662
+ * which will no longer receive updates for aforementioned components.
43663
+ *
43664
+ * **Will be removed with the complete transition to the theming V2.**
43665
+ */
43666
+ var UploadsPreview = function () {
43667
+ var themeVersion = useChatContext('UploadsPreview').themeVersion;
43668
+ var _a = useChannelStateContext('UploadsPreview'), _b = _a.maxNumberOfFiles, maxNumberOfFiles = _b === void 0 ? 0 : _b, multipleUploads = _a.multipleUploads;
43669
+ var _c = useMessageInputContext('UploadsPreview'), fileOrder = _c.fileOrder, fileUploads = _c.fileUploads, imageOrder = _c.imageOrder, imageUploads = _c.imageUploads, _d = _c.numberOfUploads, numberOfUploads = _d === void 0 ? 0 : _d, removeFile = _c.removeFile, removeImage = _c.removeImage, uploadFile = _c.uploadFile, uploadImage = _c.uploadImage, uploadNewFiles = _c.uploadNewFiles;
43670
+ var imagesToPreview = imageOrder
43671
+ .map(function (id) { return imageUploads[id]; })
43672
+ // filter OG scraped images
43673
+ .filter(function (image) { return !image.og_scrape_url; });
43674
+ var filesToPreview = fileOrder.map(function (id) { return fileUploads[id]; });
43675
+ return (React__default["default"].createElement(React__default["default"].Fragment, null,
43676
+ imageOrder.length > 0 && (React__default["default"].createElement(ImagePreviewer, { disabled: !multipleUploads || numberOfUploads >= maxNumberOfFiles, handleFiles: uploadNewFiles, handleRemove: removeImage, handleRetry: uploadImage, imageUploads: imagesToPreview, multiple: multipleUploads })),
43677
+ fileOrder.length > 0 && (React__default["default"].createElement(FilePreviewer, { fileIconProps: {
43678
+ className: 'str-chat__file-icon',
43679
+ version: themeVersion,
43680
+ }, handleFiles: uploadNewFiles, handleRemove: removeFile, handleRetry: uploadFile, uploads: filesToPreview }))));
43681
+ };
43576
43682
 
43577
- effectCleanupFns.push(cleanupFn || noopFn);
43683
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var UnMemoizedChatAutoComplete = function (props) {
43684
+ var _a = useComponentContext('ChatAutoComplete'), SuggestionItem = _a.AutocompleteSuggestionItem, SuggestionList = _a.AutocompleteSuggestionList;
43685
+ var t = useTranslationContext('ChatAutoComplete').t;
43686
+ var messageInput = useMessageInputContext('ChatAutoComplete');
43687
+ var cooldownRemaining = messageInput.cooldownRemaining, disabled = messageInput.disabled, emojiIndex = messageInput.emojiIndex, innerRef = messageInput.textareaRef;
43688
+ var placeholder = props.placeholder || t('Type your message');
43689
+ var emojiReplace = props.wordReplace
43690
+ ? function (word) { var _a; return (_a = props.wordReplace) === null || _a === void 0 ? void 0 : _a.call(props, word, emojiIndex); }
43691
+ : function (word) {
43692
+ var found = (emojiIndex === null || emojiIndex === void 0 ? void 0 : emojiIndex.search(word)) || [];
43693
+ var emoji = found
43694
+ .filter(Boolean)
43695
+ .slice(0, 10)
43696
+ .find(function (_a) {
43697
+ var emoticons = _a.emoticons;
43698
+ return !!(emoticons === null || emoticons === void 0 ? void 0 : emoticons.includes(word));
43699
+ });
43700
+ if (!emoji || !('native' in emoji))
43701
+ return null;
43702
+ return emoji.native;
43703
+ };
43704
+ var updateInnerRef = React.useCallback(function (ref) {
43705
+ if (innerRef) {
43706
+ innerRef.current = ref;
43578
43707
  }
43579
- });
43580
- }
43581
-
43582
- function cleanupModifierEffects() {
43583
- effectCleanupFns.forEach(function (fn) {
43584
- return fn();
43585
- });
43586
- effectCleanupFns = [];
43587
- }
43588
-
43589
- return instance;
43590
- };
43591
- }
43592
-
43593
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var defaultModifiers = [eventListeners, popperOffsets$1, computeStyles$1, applyStyles$1, offset$1, flip$1, preventOverflow$1, arrow$1, hide$1];
43594
- var createPopper = /*#__PURE__*/popperGenerator({
43595
- defaultModifiers: defaultModifiers
43596
- }); // eslint-disable-next-line import/no-unused-modules
43597
-
43598
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var EMPTY_MODIFIERS = [];
43599
- var usePopper = function usePopper(referenceElement, popperElement, options) {
43600
- if (options === void 0) {
43601
- options = {};
43602
- }
43603
-
43604
- var prevOptions = React__namespace.useRef(null);
43605
- var optionsWithDefaults = {
43606
- onFirstUpdate: options.onFirstUpdate,
43607
- placement: options.placement || 'bottom',
43608
- strategy: options.strategy || 'absolute',
43609
- modifiers: options.modifiers || EMPTY_MODIFIERS
43610
- };
43611
-
43612
- var _React$useState = React__namespace.useState({
43613
- styles: {
43614
- popper: {
43615
- position: optionsWithDefaults.strategy,
43616
- left: '0',
43617
- top: '0'
43618
- },
43619
- arrow: {
43620
- position: 'absolute'
43621
- }
43622
- },
43623
- attributes: {}
43624
- }),
43625
- state = _React$useState[0],
43626
- setState = _React$useState[1];
43627
-
43628
- var updateStateModifier = React__namespace.useMemo(function () {
43629
- return {
43630
- name: 'updateState',
43631
- enabled: true,
43632
- phase: 'write',
43633
- fn: function fn(_ref) {
43634
- var state = _ref.state;
43635
- var elements = Object.keys(state.elements);
43636
- ReactDOM__namespace.flushSync(function () {
43637
- setState({
43638
- styles: fromEntries(elements.map(function (element) {
43639
- return [element, state.styles[element] || {}];
43640
- })),
43641
- attributes: fromEntries(elements.map(function (element) {
43642
- return [element, state.attributes[element]];
43643
- }))
43644
- });
43645
- });
43646
- },
43647
- requires: ['computeStyles']
43648
- };
43649
- }, []);
43650
- var popperOptions = React__namespace.useMemo(function () {
43651
- var newOptions = {
43652
- onFirstUpdate: optionsWithDefaults.onFirstUpdate,
43653
- placement: optionsWithDefaults.placement,
43654
- strategy: optionsWithDefaults.strategy,
43655
- modifiers: [].concat(optionsWithDefaults.modifiers, [updateStateModifier, {
43656
- name: 'applyStyles',
43657
- enabled: false
43658
- }])
43659
- };
43660
-
43661
- if (reactFastCompare(prevOptions.current, newOptions)) {
43662
- return prevOptions.current || newOptions;
43663
- } else {
43664
- prevOptions.current = newOptions;
43665
- return newOptions;
43666
- }
43667
- }, [optionsWithDefaults.onFirstUpdate, optionsWithDefaults.placement, optionsWithDefaults.strategy, optionsWithDefaults.modifiers, updateStateModifier]);
43668
- var popperInstanceRef = React__namespace.useRef();
43669
- useIsomorphicLayoutEffect$1(function () {
43670
- if (popperInstanceRef.current) {
43671
- popperInstanceRef.current.setOptions(popperOptions);
43672
- }
43673
- }, [popperOptions]);
43674
- useIsomorphicLayoutEffect$1(function () {
43675
- if (referenceElement == null || popperElement == null) {
43676
- return;
43677
- }
43678
-
43679
- var createPopper$1 = options.createPopper || createPopper;
43680
- var popperInstance = createPopper$1(referenceElement, popperElement, popperOptions);
43681
- popperInstanceRef.current = popperInstance;
43682
- return function () {
43683
- popperInstance.destroy();
43684
- popperInstanceRef.current = null;
43685
- };
43686
- }, [referenceElement, popperElement, options.createPopper]);
43687
- return {
43688
- state: popperInstanceRef.current ? popperInstanceRef.current.state : null,
43689
- styles: state.styles,
43690
- attributes: state.attributes,
43691
- update: popperInstanceRef.current ? popperInstanceRef.current.update : null,
43692
- forceUpdate: popperInstanceRef.current ? popperInstanceRef.current.forceUpdate : null
43693
- };
43708
+ }, [innerRef]);
43709
+ return (React__default["default"].createElement(ReactTextareaAutocomplete, { additionalTextareaProps: messageInput.additionalTextareaProps, "aria-label": cooldownRemaining ? t('Slow Mode ON') : placeholder, className: 'str-chat__textarea__textarea str-chat__message-textarea', closeCommandsList: messageInput.closeCommandsList, closeMentionsList: messageInput.closeMentionsList, containerClassName: 'str-chat__textarea str-chat__message-textarea-react-host', disabled: disabled || !!cooldownRemaining, disableMentions: messageInput.disableMentions, dropdownClassName: 'str-chat__emojisearch', grow: messageInput.grow, handleSubmit: props.handleSubmit || messageInput.handleSubmit, innerRef: updateInnerRef, itemClassName: 'str-chat__emojisearch__item', listClassName: 'str-chat__emojisearch__list', loadingComponent: LoadingIndicator, maxRows: messageInput.maxRows, minChar: 0, onBlur: props.onBlur, onChange: props.onChange || messageInput.handleChange, onFocus: props.onFocus, onPaste: props.onPaste || messageInput.onPaste, placeholder: cooldownRemaining ? t('Slow Mode ON') : placeholder, replaceWord: emojiReplace, rows: props.rows || 1, shouldSubmit: messageInput.shouldSubmit, showCommandsList: messageInput.showCommandsList, showMentionsList: messageInput.showMentionsList, SuggestionItem: SuggestionItem, SuggestionList: SuggestionList, trigger: messageInput.autocompleteTriggers || {}, value: props.value || messageInput.text }));
43694
43710
  };
43695
-
43696
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};// Public components
43697
- // Public types
43711
+ var ChatAutoComplete = React__default["default"].memo(UnMemoizedChatAutoComplete);
43698
43712
 
43699
43713
  window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};/******************************************************************************
43700
43714
  Copyright (c) Microsoft Corporation.
@@ -43917,7 +43931,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
43917
43931
  function fromEvent(evt) {
43918
43932
  return __awaiter(this, void 0, void 0, function () {
43919
43933
  return __generator(this, function (_a) {
43920
- if (isObject$1(evt) && isDataTransfer(evt.dataTransfer)) {
43934
+ if (isObject(evt) && isDataTransfer(evt.dataTransfer)) {
43921
43935
  return [2 /*return*/, getDataTransferFiles(evt.dataTransfer, evt.type)];
43922
43936
  }
43923
43937
  else if (isChangeEvt(evt)) {
@@ -43931,12 +43945,12 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
43931
43945
  });
43932
43946
  }
43933
43947
  function isDataTransfer(value) {
43934
- return isObject$1(value);
43948
+ return isObject(value);
43935
43949
  }
43936
43950
  function isChangeEvt(value) {
43937
- return isObject$1(value) && isObject$1(value.target);
43951
+ return isObject(value) && isObject(value.target);
43938
43952
  }
43939
- function isObject$1(v) {
43953
+ function isObject(v) {
43940
43954
  return typeof v === 'object' && v !== null;
43941
43955
  }
43942
43956
  function getInputFiles(evt) {
@@ -44104,9 +44118,9 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
44104
44118
 
44105
44119
  function ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
44106
44120
 
44107
- function _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$1(Object(source), !0).forEach(function (key) { _defineProperty$2(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
44121
+ function _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$1(Object(source), !0).forEach(function (key) { _defineProperty$1(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
44108
44122
 
44109
- function _defineProperty$2(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
44123
+ function _defineProperty$1(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
44110
44124
 
44111
44125
  function _slicedToArray$1(arr, i) { return _arrayWithHoles$1(arr) || _iterableToArrayLimit$1(arr, i) || _unsupportedIterableToArray$2(arr, i) || _nonIterableRest$1(); }
44112
44126
 
@@ -44321,7 +44335,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
44321
44335
  mimeType = _ref5[0],
44322
44336
  ext = _ref5[1];
44323
44337
 
44324
- return _objectSpread$1(_objectSpread$1({}, agg), {}, _defineProperty$2({}, mimeType, ext));
44338
+ return _objectSpread$1(_objectSpread$1({}, agg), {}, _defineProperty$1({}, mimeType, ext));
44325
44339
  }, {});
44326
44340
  return [{
44327
44341
  accept: acceptForPicker
@@ -44434,9 +44448,9 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
44434
44448
 
44435
44449
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
44436
44450
 
44437
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty$1(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
44451
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
44438
44452
 
44439
- function _defineProperty$1(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
44453
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
44440
44454
 
44441
44455
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose$1(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
44442
44456
 
@@ -45268,7 +45282,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
45268
45282
  onDrop = _ref2.onDrop,
45269
45283
  rest = _objectWithoutProperties(_ref2, _excluded3);
45270
45284
 
45271
- return _objectSpread(_objectSpread(_defineProperty$1({
45285
+ return _objectSpread(_objectSpread(_defineProperty({
45272
45286
  onKeyDown: composeKeyboardHandler(composeEventHandlers(onKeyDown, onKeyDownCb)),
45273
45287
  onFocus: composeKeyboardHandler(composeEventHandlers(onFocus, onFocusCb)),
45274
45288
  onBlur: composeKeyboardHandler(composeEventHandlers(onBlur, onBlurCb)),
@@ -45295,7 +45309,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
45295
45309
  onClick = _ref3.onClick,
45296
45310
  rest = _objectWithoutProperties(_ref3, _excluded4);
45297
45311
 
45298
- var inputProps = _defineProperty$1({
45312
+ var inputProps = _defineProperty({
45299
45313
  accept: acceptAttr,
45300
45314
  multiple: multiple,
45301
45315
  type: "file",
@@ -45371,465 +45385,6 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
45371
45385
 
45372
45386
  function noop$1() {}
45373
45387
 
45374
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
45375
- /** Detect free variable `global` from Node.js. */
45376
- var freeGlobal$1 = typeof commonjsGlobal == 'object' && commonjsGlobal && commonjsGlobal.Object === Object && commonjsGlobal;
45377
-
45378
- var _freeGlobal = freeGlobal$1;
45379
-
45380
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
45381
- /** Detect free variable `self`. */
45382
- var freeSelf$1 = typeof self == 'object' && self && self.Object === Object && self;
45383
-
45384
- /** Used as a reference to the global object. */
45385
- var root$1 = _freeGlobal || freeSelf$1 || Function('return this')();
45386
-
45387
- var _root = root$1;
45388
-
45389
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
45390
- /** Built-in value references. */
45391
- var Symbol$2 = _root.Symbol;
45392
-
45393
- var _Symbol = Symbol$2;
45394
-
45395
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
45396
- /** Used for built-in method references. */
45397
- var objectProto$4 = Object.prototype;
45398
-
45399
- /** Used to check objects for own properties. */
45400
- var hasOwnProperty$2 = objectProto$4.hasOwnProperty;
45401
-
45402
- /**
45403
- * Used to resolve the
45404
- * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
45405
- * of values.
45406
- */
45407
- var nativeObjectToString$1 = objectProto$4.toString;
45408
-
45409
- /** Built-in value references. */
45410
- var symToStringTag$1 = _Symbol ? _Symbol.toStringTag : undefined;
45411
-
45412
- /**
45413
- * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.
45414
- *
45415
- * @private
45416
- * @param {*} value The value to query.
45417
- * @returns {string} Returns the raw `toStringTag`.
45418
- */
45419
- function getRawTag(value) {
45420
- var isOwn = hasOwnProperty$2.call(value, symToStringTag$1),
45421
- tag = value[symToStringTag$1];
45422
-
45423
- try {
45424
- value[symToStringTag$1] = undefined;
45425
- var unmasked = true;
45426
- } catch (e) {}
45427
-
45428
- var result = nativeObjectToString$1.call(value);
45429
- if (unmasked) {
45430
- if (isOwn) {
45431
- value[symToStringTag$1] = tag;
45432
- } else {
45433
- delete value[symToStringTag$1];
45434
- }
45435
- }
45436
- return result;
45437
- }
45438
-
45439
- var _getRawTag = getRawTag;
45440
-
45441
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};/** Used for built-in method references. */
45442
- var objectProto$3 = Object.prototype;
45443
-
45444
- /**
45445
- * Used to resolve the
45446
- * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
45447
- * of values.
45448
- */
45449
- var nativeObjectToString = objectProto$3.toString;
45450
-
45451
- /**
45452
- * Converts `value` to a string using `Object.prototype.toString`.
45453
- *
45454
- * @private
45455
- * @param {*} value The value to convert.
45456
- * @returns {string} Returns the converted string.
45457
- */
45458
- function objectToString$1(value) {
45459
- return nativeObjectToString.call(value);
45460
- }
45461
-
45462
- var _objectToString = objectToString$1;
45463
-
45464
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
45465
- /** `Object#toString` result references. */
45466
- var nullTag = '[object Null]',
45467
- undefinedTag = '[object Undefined]';
45468
-
45469
- /** Built-in value references. */
45470
- var symToStringTag = _Symbol ? _Symbol.toStringTag : undefined;
45471
-
45472
- /**
45473
- * The base implementation of `getTag` without fallbacks for buggy environments.
45474
- *
45475
- * @private
45476
- * @param {*} value The value to query.
45477
- * @returns {string} Returns the `toStringTag`.
45478
- */
45479
- function baseGetTag(value) {
45480
- if (value == null) {
45481
- return value === undefined ? undefinedTag : nullTag;
45482
- }
45483
- return (symToStringTag && symToStringTag in Object(value))
45484
- ? _getRawTag(value)
45485
- : _objectToString(value);
45486
- }
45487
-
45488
- var _baseGetTag = baseGetTag;
45489
-
45490
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};/**
45491
- * Checks if `value` is the
45492
- * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
45493
- * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
45494
- *
45495
- * @static
45496
- * @memberOf _
45497
- * @since 0.1.0
45498
- * @category Lang
45499
- * @param {*} value The value to check.
45500
- * @returns {boolean} Returns `true` if `value` is an object, else `false`.
45501
- * @example
45502
- *
45503
- * _.isObject({});
45504
- * // => true
45505
- *
45506
- * _.isObject([1, 2, 3]);
45507
- * // => true
45508
- *
45509
- * _.isObject(_.noop);
45510
- * // => true
45511
- *
45512
- * _.isObject(null);
45513
- * // => false
45514
- */
45515
- function isObject(value) {
45516
- var type = typeof value;
45517
- return value != null && (type == 'object' || type == 'function');
45518
- }
45519
-
45520
- var isObject_1 = isObject;
45521
-
45522
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
45523
- /** `Object#toString` result references. */
45524
- var asyncTag = '[object AsyncFunction]',
45525
- funcTag = '[object Function]',
45526
- genTag = '[object GeneratorFunction]',
45527
- proxyTag = '[object Proxy]';
45528
-
45529
- /**
45530
- * Checks if `value` is classified as a `Function` object.
45531
- *
45532
- * @static
45533
- * @memberOf _
45534
- * @since 0.1.0
45535
- * @category Lang
45536
- * @param {*} value The value to check.
45537
- * @returns {boolean} Returns `true` if `value` is a function, else `false`.
45538
- * @example
45539
- *
45540
- * _.isFunction(_);
45541
- * // => true
45542
- *
45543
- * _.isFunction(/abc/);
45544
- * // => false
45545
- */
45546
- function isFunction(value) {
45547
- if (!isObject_1(value)) {
45548
- return false;
45549
- }
45550
- // The use of `Object#toString` avoids issues with the `typeof` operator
45551
- // in Safari 9 which returns 'object' for typed arrays and other constructors.
45552
- var tag = _baseGetTag(value);
45553
- return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;
45554
- }
45555
-
45556
- var isFunction_1 = isFunction;
45557
-
45558
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
45559
- /** Used to detect overreaching core-js shims. */
45560
- var coreJsData = _root['__core-js_shared__'];
45561
-
45562
- var _coreJsData = coreJsData;
45563
-
45564
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
45565
- /** Used to detect methods masquerading as native. */
45566
- var maskSrcKey = (function() {
45567
- var uid = /[^.]+$/.exec(_coreJsData && _coreJsData.keys && _coreJsData.keys.IE_PROTO || '');
45568
- return uid ? ('Symbol(src)_1.' + uid) : '';
45569
- }());
45570
-
45571
- /**
45572
- * Checks if `func` has its source masked.
45573
- *
45574
- * @private
45575
- * @param {Function} func The function to check.
45576
- * @returns {boolean} Returns `true` if `func` is masked, else `false`.
45577
- */
45578
- function isMasked(func) {
45579
- return !!maskSrcKey && (maskSrcKey in func);
45580
- }
45581
-
45582
- var _isMasked = isMasked;
45583
-
45584
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};/** Used for built-in method references. */
45585
- var funcProto$1 = Function.prototype;
45586
-
45587
- /** Used to resolve the decompiled source of functions. */
45588
- var funcToString$1 = funcProto$1.toString;
45589
-
45590
- /**
45591
- * Converts `func` to its source code.
45592
- *
45593
- * @private
45594
- * @param {Function} func The function to convert.
45595
- * @returns {string} Returns the source code.
45596
- */
45597
- function toSource(func) {
45598
- if (func != null) {
45599
- try {
45600
- return funcToString$1.call(func);
45601
- } catch (e) {}
45602
- try {
45603
- return (func + '');
45604
- } catch (e) {}
45605
- }
45606
- return '';
45607
- }
45608
-
45609
- var _toSource = toSource;
45610
-
45611
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
45612
- /**
45613
- * Used to match `RegExp`
45614
- * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).
45615
- */
45616
- var reRegExpChar = /[\\^$.*+?()[\]{}|]/g;
45617
-
45618
- /** Used to detect host constructors (Safari). */
45619
- var reIsHostCtor = /^\[object .+?Constructor\]$/;
45620
-
45621
- /** Used for built-in method references. */
45622
- var funcProto = Function.prototype,
45623
- objectProto$2 = Object.prototype;
45624
-
45625
- /** Used to resolve the decompiled source of functions. */
45626
- var funcToString = funcProto.toString;
45627
-
45628
- /** Used to check objects for own properties. */
45629
- var hasOwnProperty$1 = objectProto$2.hasOwnProperty;
45630
-
45631
- /** Used to detect if a method is native. */
45632
- var reIsNative = RegExp('^' +
45633
- funcToString.call(hasOwnProperty$1).replace(reRegExpChar, '\\$&')
45634
- .replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$'
45635
- );
45636
-
45637
- /**
45638
- * The base implementation of `_.isNative` without bad shim checks.
45639
- *
45640
- * @private
45641
- * @param {*} value The value to check.
45642
- * @returns {boolean} Returns `true` if `value` is a native function,
45643
- * else `false`.
45644
- */
45645
- function baseIsNative(value) {
45646
- if (!isObject_1(value) || _isMasked(value)) {
45647
- return false;
45648
- }
45649
- var pattern = isFunction_1(value) ? reIsNative : reIsHostCtor;
45650
- return pattern.test(_toSource(value));
45651
- }
45652
-
45653
- var _baseIsNative = baseIsNative;
45654
-
45655
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};/**
45656
- * Gets the value at `key` of `object`.
45657
- *
45658
- * @private
45659
- * @param {Object} [object] The object to query.
45660
- * @param {string} key The key of the property to get.
45661
- * @returns {*} Returns the property value.
45662
- */
45663
- function getValue$1(object, key) {
45664
- return object == null ? undefined : object[key];
45665
- }
45666
-
45667
- var _getValue = getValue$1;
45668
-
45669
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
45670
- /**
45671
- * Gets the native function at `key` of `object`.
45672
- *
45673
- * @private
45674
- * @param {Object} object The object to query.
45675
- * @param {string} key The key of the method to get.
45676
- * @returns {*} Returns the function if it's native, else `undefined`.
45677
- */
45678
- function getNative(object, key) {
45679
- var value = _getValue(object, key);
45680
- return _baseIsNative(value) ? value : undefined;
45681
- }
45682
-
45683
- var _getNative = getNative;
45684
-
45685
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
45686
- var defineProperty = (function() {
45687
- try {
45688
- var func = _getNative(Object, 'defineProperty');
45689
- func({}, '', {});
45690
- return func;
45691
- } catch (e) {}
45692
- }());
45693
-
45694
- var _defineProperty = defineProperty;
45695
-
45696
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
45697
- /**
45698
- * The base implementation of `assignValue` and `assignMergeValue` without
45699
- * value checks.
45700
- *
45701
- * @private
45702
- * @param {Object} object The object to modify.
45703
- * @param {string} key The key of the property to assign.
45704
- * @param {*} value The value to assign.
45705
- */
45706
- function baseAssignValue(object, key, value) {
45707
- if (key == '__proto__' && _defineProperty) {
45708
- _defineProperty(object, key, {
45709
- 'configurable': true,
45710
- 'enumerable': true,
45711
- 'value': value,
45712
- 'writable': true
45713
- });
45714
- } else {
45715
- object[key] = value;
45716
- }
45717
- }
45718
-
45719
- var _baseAssignValue = baseAssignValue;
45720
-
45721
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};/**
45722
- * Performs a
45723
- * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
45724
- * comparison between two values to determine if they are equivalent.
45725
- *
45726
- * @static
45727
- * @memberOf _
45728
- * @since 4.0.0
45729
- * @category Lang
45730
- * @param {*} value The value to compare.
45731
- * @param {*} other The other value to compare.
45732
- * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
45733
- * @example
45734
- *
45735
- * var object = { 'a': 1 };
45736
- * var other = { 'a': 1 };
45737
- *
45738
- * _.eq(object, object);
45739
- * // => true
45740
- *
45741
- * _.eq(object, other);
45742
- * // => false
45743
- *
45744
- * _.eq('a', 'a');
45745
- * // => true
45746
- *
45747
- * _.eq('a', Object('a'));
45748
- * // => false
45749
- *
45750
- * _.eq(NaN, NaN);
45751
- * // => true
45752
- */
45753
- function eq(value, other) {
45754
- return value === other || (value !== value && other !== other);
45755
- }
45756
-
45757
- var eq_1 = eq;
45758
-
45759
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
45760
- /** Used for built-in method references. */
45761
- var objectProto$1 = Object.prototype;
45762
-
45763
- /** Used to check objects for own properties. */
45764
- var hasOwnProperty = objectProto$1.hasOwnProperty;
45765
-
45766
- /**
45767
- * Assigns `value` to `key` of `object` if the existing value is not equivalent
45768
- * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
45769
- * for equality comparisons.
45770
- *
45771
- * @private
45772
- * @param {Object} object The object to modify.
45773
- * @param {string} key The key of the property to assign.
45774
- * @param {*} value The value to assign.
45775
- */
45776
- function assignValue(object, key, value) {
45777
- var objValue = object[key];
45778
- if (!(hasOwnProperty.call(object, key) && eq_1(objValue, value)) ||
45779
- (value === undefined && !(key in object))) {
45780
- _baseAssignValue(object, key, value);
45781
- }
45782
- }
45783
-
45784
- var _assignValue = assignValue;
45785
-
45786
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};/**
45787
- * This base implementation of `_.zipObject` which assigns values using `assignFunc`.
45788
- *
45789
- * @private
45790
- * @param {Array} props The property identifiers.
45791
- * @param {Array} values The property values.
45792
- * @param {Function} assignFunc The function to assign values.
45793
- * @returns {Object} Returns the new object.
45794
- */
45795
- function baseZipObject(props, values, assignFunc) {
45796
- var index = -1,
45797
- length = props.length,
45798
- valsLength = values.length,
45799
- result = {};
45800
-
45801
- while (++index < length) {
45802
- var value = index < valsLength ? values[index] : undefined;
45803
- assignFunc(result, props[index], value);
45804
- }
45805
- return result;
45806
- }
45807
-
45808
- var _baseZipObject = baseZipObject;
45809
-
45810
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
45811
- /**
45812
- * This method is like `_.fromPairs` except that it accepts two arrays,
45813
- * one of property identifiers and one of corresponding values.
45814
- *
45815
- * @static
45816
- * @memberOf _
45817
- * @since 0.4.0
45818
- * @category Array
45819
- * @param {Array} [props=[]] The property identifiers.
45820
- * @param {Array} [values=[]] The property values.
45821
- * @returns {Object} Returns the new object.
45822
- * @example
45823
- *
45824
- * _.zipObject(['a', 'b'], [1, 2]);
45825
- * // => { 'a': 1, 'b': 2 }
45826
- */
45827
- function zipObject(props, values) {
45828
- return _baseZipObject(props || [], values || [], _assignValue);
45829
- }
45830
-
45831
- var zipObject_1 = zipObject;
45832
-
45833
45388
  window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var CooldownTimer = function (_a) {
45834
45389
  var cooldownInterval = _a.cooldownInterval, setCooldownRemaining = _a.setCooldownRemaining;
45835
45390
  var _b = React.useState(cooldownInterval), seconds = _b[0], setSeconds = _b[1];
@@ -46038,7 +45593,11 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
46038
45593
  }), attributes = _m.attributes, styles = _m.styles;
46039
45594
  var id = React.useMemo(function () { return nanoid(); }, []);
46040
45595
  var accept = React.useMemo(function () {
46041
- return zipObject_1(acceptedFiles, Array.from({ length: acceptedFiles.length }, function () { return []; }));
45596
+ return acceptedFiles.reduce(function (mediaTypeMap, mediaType) {
45597
+ var _a;
45598
+ (_a = mediaTypeMap[mediaType]) !== null && _a !== void 0 ? _a : (mediaTypeMap[mediaType] = []);
45599
+ return mediaTypeMap;
45600
+ }, {});
46042
45601
  }, [acceptedFiles]);
46043
45602
  var _o = useDropzone({
46044
45603
  accept: accept,
@@ -47226,8 +46785,19 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
47226
46785
  ? Object.values(reactionCounts).reduce(function (total, count) { return total + count; }, 0)
47227
46786
  : 0;
47228
46787
  }, [reactionCounts, supportedReactionsArePresent]);
46788
+ var aggregatedUserNamesByType = React.useMemo(function () {
46789
+ return latestReactions.reduce(function (typeMap, _a) {
46790
+ var _b;
46791
+ var type = _a.type, user = _a.user;
46792
+ (_b = typeMap[type]) !== null && _b !== void 0 ? _b : (typeMap[type] = []);
46793
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
46794
+ typeMap[type].push((user === null || user === void 0 ? void 0 : user.name) || user.id);
46795
+ return typeMap;
46796
+ }, {});
46797
+ }, [latestReactions]);
47229
46798
  return {
47230
46799
  additionalEmojiProps: reactionsAreCustom ? additionalEmojiProps : emojiSetDef,
46800
+ aggregatedUserNamesByType: aggregatedUserNamesByType,
47231
46801
  emojiData: emojiData,
47232
46802
  getEmojiByReactionType: getEmojiByReactionType,
47233
46803
  iHaveReactedWithReaction: iHaveReactedWithReaction,
@@ -47239,11 +46809,23 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
47239
46809
  };
47240
46810
  };
47241
46811
 
47242
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var UnMemoizedReactionsList = function (props) {
46812
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var ButtonWithTooltip = function (_a) {
46813
+ var children = _a.children, onMouseEnter = _a.onMouseEnter, onMouseLeave = _a.onMouseLeave, rest = __rest$4(_a, ["children", "onMouseEnter", "onMouseLeave"]);
46814
+ var _b = React.useState(null), referenceElement = _b[0], setReferenceElement = _b[1];
46815
+ var _c = useEnterLeaveHandlers({
46816
+ onMouseEnter: onMouseEnter,
46817
+ onMouseLeave: onMouseLeave,
46818
+ }), handleEnter = _c.handleEnter, handleLeave = _c.handleLeave, tooltipVisible = _c.tooltipVisible;
46819
+ var themeVersion = useChatContext('ButtonWithTooltip').themeVersion;
46820
+ return (React__default["default"].createElement(React__default["default"].Fragment, null,
46821
+ themeVersion === '2' && (React__default["default"].createElement(PopperTooltip, { referenceElement: referenceElement, visible: tooltipVisible }, rest.title)),
46822
+ React__default["default"].createElement("button", __assign$8({ onMouseEnter: handleEnter, onMouseLeave: handleLeave, ref: setReferenceElement }, rest), children)));
46823
+ };
46824
+ var UnMemoizedReactionsList = function (props) {
47243
46825
  var onClick = props.onClick, _a = props.reverse, reverse = _a === void 0 ? false : _a, rest = __rest$4(props, ["onClick", "reverse"]);
47244
46826
  var _b = useEmojiContext('ReactionsList'), Emoji = _b.Emoji, emojiConfig = _b.emojiConfig;
47245
46827
  var onReactionListClick = useMessageContext('ReactionsList').onReactionListClick;
47246
- var _c = useProcessReactions(__assign$8({ emojiConfig: emojiConfig }, rest)), additionalEmojiProps = _c.additionalEmojiProps, emojiData = _c.emojiData, getEmojiByReactionType = _c.getEmojiByReactionType, iHaveReactedWithReaction = _c.iHaveReactedWithReaction, latestReactions = _c.latestReactions, latestReactionTypes = _c.latestReactionTypes, reactionCounts = _c.reactionCounts, supportedReactionsArePresent = _c.supportedReactionsArePresent, totalReactionCount = _c.totalReactionCount;
46828
+ var _c = useProcessReactions(__assign$8({ emojiConfig: emojiConfig }, rest)), additionalEmojiProps = _c.additionalEmojiProps, aggregatedUserNamesByType = _c.aggregatedUserNamesByType, emojiData = _c.emojiData, getEmojiByReactionType = _c.getEmojiByReactionType, iHaveReactedWithReaction = _c.iHaveReactedWithReaction, latestReactions = _c.latestReactions, latestReactionTypes = _c.latestReactionTypes, reactionCounts = _c.reactionCounts, supportedReactionsArePresent = _c.supportedReactionsArePresent, totalReactionCount = _c.totalReactionCount;
47247
46829
  if (!latestReactions.length)
47248
46830
  return null;
47249
46831
  if (!supportedReactionsArePresent)
@@ -47258,7 +46840,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
47258
46840
  return emojiObject ? (React__default["default"].createElement("li", { className: clsx('str-chat__message-reaction', {
47259
46841
  'str-chat__message-reaction-own': isOwnReaction,
47260
46842
  }), key: emojiObject.id },
47261
- React__default["default"].createElement("button", { "aria-label": "Reactions: ".concat(reactionType) },
46843
+ React__default["default"].createElement(ButtonWithTooltip, { "aria-label": "Reactions: ".concat(reactionType), title: aggregatedUserNamesByType[reactionType].join(', '), type: 'button' },
47262
46844
  React__default["default"].createElement(React.Suspense, { fallback: null },
47263
46845
  React__default["default"].createElement("span", { className: 'str-chat__message-reaction-emoji' },
47264
46846
  React__default["default"].createElement(Emoji, __assign$8({ data: emojiData, emoji: emojiObject, size: 16 }, additionalEmojiProps)))),
@@ -47930,30 +47512,33 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
47930
47512
  });
47931
47513
  });
47932
47514
  };
47933
- var jumpToMessage = function (messageId) { return __awaiter$3(void 0, void 0, void 0, function () {
47934
- var indexOfMessage, hasMoreMessages;
47935
- return __generator$3(this, function (_a) {
47936
- switch (_a.label) {
47937
- case 0:
47938
- dispatch({ loadingMore: true, type: 'setLoadingMore' });
47939
- return [4 /*yield*/, channel.state.loadMessageIntoState(messageId)];
47940
- case 1:
47941
- _a.sent();
47942
- indexOfMessage = channel.state.messages.findIndex(function (message) { return message.id === messageId; });
47943
- hasMoreMessages = indexOfMessage >= Math.floor(DEFAULT_INITIAL_CHANNEL_PAGE_SIZE / 2);
47944
- loadMoreFinished(hasMoreMessages, channel.state.messages);
47945
- dispatch({
47946
- hasMoreNewer: channel.state.messages !== channel.state.latestMessages,
47947
- highlightedMessageId: messageId,
47948
- type: 'jumpToMessageFinished',
47949
- });
47950
- setTimeout(function () {
47951
- dispatch({ type: 'clearHighlightedMessage' });
47952
- }, 500);
47953
- return [2 /*return*/];
47954
- }
47515
+ var jumpToMessage = function (messageId, messageLimit) {
47516
+ if (messageLimit === void 0) { messageLimit = 100; }
47517
+ return __awaiter$3(void 0, void 0, void 0, function () {
47518
+ var indexOfMessage, hasMoreMessages;
47519
+ return __generator$3(this, function (_a) {
47520
+ switch (_a.label) {
47521
+ case 0:
47522
+ dispatch({ loadingMore: true, type: 'setLoadingMore' });
47523
+ return [4 /*yield*/, channel.state.loadMessageIntoState(messageId, undefined, messageLimit)];
47524
+ case 1:
47525
+ _a.sent();
47526
+ indexOfMessage = channel.state.messages.findIndex(function (message) { return message.id === messageId; });
47527
+ hasMoreMessages = indexOfMessage >= Math.floor(messageLimit / 2);
47528
+ loadMoreFinished(hasMoreMessages, channel.state.messages);
47529
+ dispatch({
47530
+ hasMoreNewer: channel.state.messages !== channel.state.latestMessages,
47531
+ highlightedMessageId: messageId,
47532
+ type: 'jumpToMessageFinished',
47533
+ });
47534
+ setTimeout(function () {
47535
+ dispatch({ type: 'clearHighlightedMessage' });
47536
+ }, 500);
47537
+ return [2 /*return*/];
47538
+ }
47539
+ });
47955
47540
  });
47956
- }); };
47541
+ };
47957
47542
  var jumpToLatestMessage = function () { return __awaiter$3(void 0, void 0, void 0, function () {
47958
47543
  var hasMoreOlder;
47959
47544
  return __generator$3(this, function (_a) {
@@ -49378,7 +48963,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
49378
48963
 
49379
48964
  window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
49380
48965
 
49381
- window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var version = '10.0.0-theming-v2.2';
48966
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var version = '10.0.0-theming-v2.3';
49382
48967
 
49383
48968
  window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};var useChat = function (_a) {
49384
48969
  var _b, _c;
@@ -52762,7 +52347,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
52762
52347
 
52763
52348
  var _extends2 = interopRequireDefault(_extends_1);
52764
52349
 
52765
- var _defineProperty2 = interopRequireDefault(defineProperty$2);
52350
+ var _defineProperty2 = interopRequireDefault(defineProperty$1);
52766
52351
 
52767
52352
  var _react = interopRequireDefault(React__default["default"]);
52768
52353
 
@@ -53006,10 +52591,11 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
53006
52591
 
53007
52592
  var nimbleEmoji$1 = unwrapExports(nimbleEmoji);
53008
52593
 
53009
- var nimbleEmoji$2 = /*#__PURE__*/Object.freeze({
52594
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};// @ts-expect-error
52595
+
52596
+ var DefaultEmoji = /*#__PURE__*/Object.freeze({
53010
52597
  __proto__: null,
53011
- 'default': nimbleEmoji$1,
53012
- __moduleExports: nimbleEmoji
52598
+ 'default': nimbleEmoji$1
53013
52599
  });
53014
52600
 
53015
52601
  window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
@@ -53463,7 +53049,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
53463
53049
  });
53464
53050
  exports["default"] = void 0;
53465
53051
 
53466
- var _defineProperty2 = interopRequireDefault(defineProperty$2);
53052
+ var _defineProperty2 = interopRequireDefault(defineProperty$1);
53467
53053
 
53468
53054
  var _classCallCheck2 = interopRequireDefault(classCallCheck);
53469
53055
 
@@ -53546,7 +53132,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
53546
53132
  });
53547
53133
  exports["default"] = void 0;
53548
53134
 
53549
- var _defineProperty2 = interopRequireDefault(defineProperty$2);
53135
+ var _defineProperty2 = interopRequireDefault(defineProperty$1);
53550
53136
 
53551
53137
  var _classCallCheck2 = interopRequireDefault(classCallCheck);
53552
53138
 
@@ -54153,7 +53739,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
54153
53739
  });
54154
53740
  exports["default"] = void 0;
54155
53741
 
54156
- var _defineProperty2 = interopRequireDefault(defineProperty$2);
53742
+ var _defineProperty2 = interopRequireDefault(defineProperty$1);
54157
53743
 
54158
53744
  var _classCallCheck2 = interopRequireDefault(classCallCheck);
54159
53745
 
@@ -54486,7 +54072,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
54486
54072
  });
54487
54073
  exports["default"] = void 0;
54488
54074
 
54489
- var _defineProperty2 = interopRequireDefault(defineProperty$2);
54075
+ var _defineProperty2 = interopRequireDefault(defineProperty$1);
54490
54076
 
54491
54077
  var _classCallCheck2 = interopRequireDefault(classCallCheck);
54492
54078
 
@@ -55191,10 +54777,11 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
55191
54777
 
55192
54778
  var nimblePicker$1 = unwrapExports(nimblePicker);
55193
54779
 
55194
- var nimblePicker$2 = /*#__PURE__*/Object.freeze({
54780
+ window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};// @ts-expect-error
54781
+
54782
+ var DefaultEmojiPicker = /*#__PURE__*/Object.freeze({
55195
54783
  __proto__: null,
55196
- 'default': nimblePicker$1,
55197
- __moduleExports: nimblePicker
54784
+ 'default': nimblePicker$1
55198
54785
  });
55199
54786
 
55200
54787
  window.StreamChat.StreamChat=StreamChat;window.StreamChat.logChatPromiseExecution=logChatPromiseExecution;window.StreamChat.Channel=Channel;window.ICAL=window.ICAL||{};
@@ -69202,6 +68789,7 @@ var StreamChatReact = (function (exports, React, streamChat, ReactDOM) {
69202
68789
  exports.PinIcon = PinIcon;
69203
68790
  exports.PinIndicator = PinIndicator;
69204
68791
  exports.PlayButton = PlayButton;
68792
+ exports.PopperTooltip = PopperTooltip;
69205
68793
  exports.ProgressBar = ProgressBar;
69206
68794
  exports.QuotedMessagePreview = QuotedMessagePreview;
69207
68795
  exports.QuotedMessagePreviewHeader = QuotedMessagePreviewHeader;