stream-chat-react 11.0.0-rc.3 → 11.0.0-rc.4

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 (61) hide show
  1. package/dist/browser.full-bundle.js +451 -414
  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/Attachment/AttachmentActions.d.ts.map +1 -1
  6. package/dist/components/Attachment/AttachmentActions.js +3 -1
  7. package/dist/components/AutoCompleteTextarea/Item.js +1 -1
  8. package/dist/components/AutoCompleteTextarea/List.js +14 -14
  9. package/dist/components/Channel/Channel.d.ts +3 -0
  10. package/dist/components/Channel/Channel.d.ts.map +1 -1
  11. package/dist/components/Channel/Channel.js +26 -2
  12. package/dist/components/ChannelList/hooks/usePaginatedChannels.d.ts.map +1 -1
  13. package/dist/components/ChannelList/hooks/usePaginatedChannels.js +2 -2
  14. package/dist/components/Chat/Chat.d.ts.map +1 -1
  15. package/dist/components/Chat/Chat.js +3 -1
  16. package/dist/components/Chat/hooks/useChat.d.ts +2 -0
  17. package/dist/components/Chat/hooks/useChat.d.ts.map +1 -1
  18. package/dist/components/Chat/hooks/useChat.js +7 -4
  19. package/dist/components/Chat/hooks/useCreateChatContext.d.ts.map +1 -1
  20. package/dist/components/Chat/hooks/useCreateChatContext.js +5 -1
  21. package/dist/components/Emojis/EmojiPicker.d.ts +1 -2
  22. package/dist/components/Emojis/EmojiPicker.d.ts.map +1 -1
  23. package/dist/components/Emojis/EmojiPicker.js +7 -3
  24. package/dist/components/Emojis/index.cjs.js +25 -4
  25. package/dist/components/LoadMore/LoadMoreButton.d.ts.map +1 -1
  26. package/dist/components/LoadMore/LoadMoreButton.js +5 -2
  27. package/dist/components/Message/hooks/useDeleteHandler.d.ts.map +1 -1
  28. package/dist/components/Message/hooks/useDeleteHandler.js +5 -5
  29. package/dist/components/MessageInput/hooks/useCommandTrigger.d.ts.map +1 -1
  30. package/dist/components/MessageInput/hooks/useCommandTrigger.js +1 -3
  31. package/dist/components/ReactFileUtilities/ImageDropzone.d.ts.map +1 -1
  32. package/dist/components/ReactFileUtilities/ImageDropzone.js +3 -1
  33. package/dist/context/ChannelActionContext.d.ts +2 -1
  34. package/dist/context/ChannelActionContext.d.ts.map +1 -1
  35. package/dist/context/ChannelStateContext.d.ts +1 -1
  36. package/dist/context/ChatContext.d.ts +29 -2
  37. package/dist/context/ChatContext.d.ts.map +1 -1
  38. package/dist/css/index.css +1 -1
  39. package/dist/css/v2/emoji-mart.css +1 -1
  40. package/dist/css/v2/emoji-replacement.css +1 -1
  41. package/dist/css/v2/index.css +1 -1
  42. package/dist/css/v2/index.layout.css +1 -1
  43. package/dist/i18n/Streami18n.d.ts +3 -0
  44. package/dist/i18n/Streami18n.d.ts.map +1 -1
  45. package/dist/i18n/de.json +15 -2
  46. package/dist/i18n/en.json +3 -0
  47. package/dist/i18n/es.json +15 -2
  48. package/dist/i18n/fr.json +15 -2
  49. package/dist/i18n/hi.json +15 -2
  50. package/dist/i18n/it.json +15 -2
  51. package/dist/i18n/ja.json +15 -2
  52. package/dist/i18n/ko.json +15 -2
  53. package/dist/i18n/nl.json +15 -2
  54. package/dist/i18n/pt.json +15 -2
  55. package/dist/i18n/ru.json +15 -2
  56. package/dist/i18n/tr.json +15 -2
  57. package/dist/{icons-f45b355f.js → icons-5ee8c22b.js} +43 -43
  58. package/dist/index.cjs.js +74 -41
  59. package/dist/version.d.ts +1 -1
  60. package/dist/version.js +1 -1
  61. package/package.json +2 -2
package/dist/index.cjs.js CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var icons = require('./icons-f45b355f.js');
5
+ var icons = require('./icons-5ee8c22b.js');
6
6
  var React = require('react');
7
7
  var ReactPlayer = require('react-player');
8
8
  var prettybytes = require('pretty-bytes');
@@ -111,11 +111,12 @@ function r(e){var t,f,n="";if("string"==typeof e||"number"==typeof e)n+=e;else i
111
111
 
112
112
  var UnMemoizedAttachmentActions = function (props) {
113
113
  var actionHandler = props.actionHandler, actions = props.actions, id = props.id, text = props.text;
114
+ var t = icons.useTranslationContext('UnMemoizedAttachmentActions').t;
114
115
  var handleActionClick = function (event, name, value) { return actionHandler === null || actionHandler === void 0 ? void 0 : actionHandler(name, value, event); };
115
116
  return (React__default["default"].createElement("div", { className: 'str-chat__message-attachment-actions' },
116
117
  React__default["default"].createElement("div", { className: 'str-chat__message-attachment-actions-form' },
117
118
  React__default["default"].createElement("span", null, text),
118
- actions.map(function (action) { return (React__default["default"].createElement("button", { className: "str-chat__message-attachment-actions-button str-chat__message-attachment-actions-button--".concat(action.style), "data-testid": "".concat(action.name), "data-value": action.value, key: "".concat(id, "-").concat(action.value), onClick: function (event) { return handleActionClick(event, action.name, action.value); } }, action.text)); }))));
119
+ actions.map(function (action) { return (React__default["default"].createElement("button", { className: "str-chat__message-attachment-actions-button str-chat__message-attachment-actions-button--".concat(action.style), "data-testid": "".concat(action.name), "data-value": action.value, key: "".concat(id, "-").concat(action.value), onClick: function (event) { return handleActionClick(event, action.name, action.value); } }, action.text ? t(action.text) : null)); }))));
119
120
  };
120
121
  /**
121
122
  * A component for rendering the actions you can take on an attachment.
@@ -2796,6 +2797,7 @@ function noop() {}
2796
2797
 
2797
2798
  var ImageDropzone = function (_a) {
2798
2799
  var _b = _a.accept, acceptedFiles = _b === void 0 ? [] : _b, children = _a.children, disabled = _a.disabled, handleFiles = _a.handleFiles, maxNumberOfFiles = _a.maxNumberOfFiles, multiple = _a.multiple;
2800
+ var t = icons.useTranslationContext('ImageDropzone').t;
2799
2801
  var handleDrop = React.useCallback(function (accepted) {
2800
2802
  if (!handleFiles) {
2801
2803
  return;
@@ -2830,7 +2832,7 @@ var ImageDropzone = function (_a) {
2830
2832
  React__default["default"].createElement("div", { className: 'rfu-dropzone__inner' },
2831
2833
  React__default["default"].createElement("svg", { height: '41', viewBox: '0 0 41 41', width: '41', xmlns: 'http://www.w3.org/2000/svg' },
2832
2834
  React__default["default"].createElement("path", { d: 'M40.517 28.002V3.997c0-2.197-1.808-3.992-4.005-3.992H12.507a4.004 4.004 0 0 0-3.992 3.993v24.004a4.004 4.004 0 0 0 3.992 3.993h24.005c2.197 0 4.005-1.795 4.005-3.993zm-22.002-7.997l4.062 5.42 5.937-7.423 7.998 10H12.507l6.008-7.997zM.517 8.003V36c0 2.198 1.795 4.005 3.993 4.005h27.997V36H4.51V8.002H.517z', fill: '#000', fillRule: 'nonzero' })),
2833
- React__default["default"].createElement("p", null, "Drag your files here to add to your post"))),
2835
+ React__default["default"].createElement("p", null, t('Drag your files here to add to your post')))),
2834
2836
  children));
2835
2837
  };
2836
2838
 
@@ -3334,7 +3336,7 @@ var Item$1 = /*#__PURE__*/React__default["default"].forwardRef(function Item(pro
3334
3336
  style: style
3335
3337
  }, /*#__PURE__*/React__default["default"].createElement("a", {
3336
3338
  href: "",
3337
- onClick: onClickHandler,
3339
+ onClick: handleClick,
3338
3340
  onFocus: handleSelect,
3339
3341
  onMouseEnter: handleSelect,
3340
3342
  ref: innerRef
@@ -25319,11 +25321,11 @@ var List = function List(_ref) {
25319
25321
  var SuggestionHeader = PropHeader || AutocompleteSuggestionHeader || DefaultSuggestionListHeader;
25320
25322
  var _useState = React.useState(undefined),
25321
25323
  _useState2 = _slicedToArray__default["default"](_useState, 2),
25322
- selectedItem = _useState2[0],
25323
- setSelectedItem = _useState2[1];
25324
+ selectedItemIndex = _useState2[0],
25325
+ setSelectedItemIndex = _useState2[1];
25324
25326
  var itemsRef = [];
25325
25327
  var isSelected = function isSelected(item) {
25326
- return selectedItem === values.findIndex(function (value) {
25328
+ return selectedItemIndex === values.findIndex(function (value) {
25327
25329
  return getId(value) === getId(item);
25328
25330
  });
25329
25331
  };
@@ -25354,32 +25356,30 @@ var List = function List(_ref) {
25354
25356
  }, [modifyText, findItemIndex]);
25355
25357
  var selectItem = React.useCallback(function (item) {
25356
25358
  var index = findItemIndex(item);
25357
- setSelectedItem(index);
25359
+ setSelectedItemIndex(index);
25358
25360
  }, [findItemIndex]);
25359
25361
  var handleKeyDown = React.useCallback(function (event) {
25360
25362
  if (event.key === 'ArrowUp') {
25361
- setSelectedItem(function (prevSelected) {
25363
+ setSelectedItemIndex(function (prevSelected) {
25362
25364
  if (prevSelected === undefined) return 0;
25363
- var newID = prevSelected === 0 ? values.length - 1 : prevSelected - 1;
25364
- dropdownScroll(itemsRef[newID]);
25365
- return newID;
25365
+ var newIndex = prevSelected === 0 ? values.length - 1 : prevSelected - 1;
25366
+ dropdownScroll(itemsRef[newIndex]);
25367
+ return newIndex;
25366
25368
  });
25367
25369
  }
25368
25370
  if (event.key === 'ArrowDown') {
25369
- setSelectedItem(function (prevSelected) {
25371
+ setSelectedItemIndex(function (prevSelected) {
25370
25372
  if (prevSelected === undefined) return 0;
25371
- var newID = prevSelected === values.length - 1 ? 0 : prevSelected + 1;
25372
- dropdownScroll(itemsRef[newID]);
25373
- return newID;
25373
+ var newIndex = prevSelected === values.length - 1 ? 0 : prevSelected + 1;
25374
+ dropdownScroll(itemsRef[newIndex]);
25375
+ return newIndex;
25374
25376
  });
25375
25377
  }
25376
- if ((event.key === 'Enter' || event.key === 'Tab') && selectedItem !== undefined) {
25377
- handleClick(event);
25378
+ if ((event.key === 'Enter' || event.key === 'Tab') && selectedItemIndex !== undefined) {
25379
+ handleClick(event, values[selectedItemIndex]);
25378
25380
  }
25379
25381
  return null;
25380
- }, [selectedItem, values] // eslint-disable-line
25381
- );
25382
-
25382
+ }, [selectedItemIndex, values]);
25383
25383
  React.useEffect(function () {
25384
25384
  document.addEventListener('keydown', handleKeyDown, false);
25385
25385
  return function () {
@@ -27442,9 +27442,7 @@ var useCommandTrigger = function () {
27442
27442
  })
27443
27443
  .map(function (commandData) {
27444
27444
  var translatedCommandData = {
27445
- name: t("".concat(commandData.name, "-command-name"), {
27446
- defaultValue: commandData.name,
27447
- }),
27445
+ name: commandData.name,
27448
27446
  };
27449
27447
  if (commandData.args)
27450
27448
  translatedCommandData.args = t("".concat(commandData.name, "-command-args"), {
@@ -30011,7 +30009,7 @@ var UnMemoizedChannel = function (props) {
30011
30009
  };
30012
30010
  var ChannelInner = function (props) {
30013
30011
  var _a;
30014
- var acceptedFiles = props.acceptedFiles, activeUnreadHandler = props.activeUnreadHandler, channel = props.channel, children = props.children, doMarkReadRequest = props.doMarkReadRequest, doSendMessageRequest = props.doSendMessageRequest, doUpdateMessageRequest = props.doUpdateMessageRequest, _b = props.dragAndDropWindow, dragAndDropWindow = _b === void 0 ? false : _b, enrichURLForPreviewConfig = props.enrichURLForPreviewConfig, _c = props.initializeOnMount, initializeOnMount = _c === void 0 ? true : _c, _d = props.LoadingErrorIndicator, LoadingErrorIndicator$1 = _d === void 0 ? LoadingErrorIndicator : _d, _e = props.LoadingIndicator, LoadingIndicator = _e === void 0 ? LoadingChannel : _e, maxNumberOfFiles = props.maxNumberOfFiles, _f = props.multipleUploads, multipleUploads = _f === void 0 ? true : _f, onMentionsClick = props.onMentionsClick, onMentionsHover = props.onMentionsHover, _g = props.optionalMessageInputProps, optionalMessageInputProps = _g === void 0 ? {} : _g, skipMessageDataMemoization = props.skipMessageDataMemoization;
30012
+ var acceptedFiles = props.acceptedFiles, activeUnreadHandler = props.activeUnreadHandler, channel = props.channel, children = props.children, doDeleteMessageRequest = props.doDeleteMessageRequest, doMarkReadRequest = props.doMarkReadRequest, doSendMessageRequest = props.doSendMessageRequest, doUpdateMessageRequest = props.doUpdateMessageRequest, _b = props.dragAndDropWindow, dragAndDropWindow = _b === void 0 ? false : _b, enrichURLForPreviewConfig = props.enrichURLForPreviewConfig, _c = props.initializeOnMount, initializeOnMount = _c === void 0 ? true : _c, _d = props.LoadingErrorIndicator, LoadingErrorIndicator$1 = _d === void 0 ? LoadingErrorIndicator : _d, _e = props.LoadingIndicator, LoadingIndicator = _e === void 0 ? LoadingChannel : _e, maxNumberOfFiles = props.maxNumberOfFiles, _f = props.multipleUploads, multipleUploads = _f === void 0 ? true : _f, onMentionsClick = props.onMentionsClick, onMentionsHover = props.onMentionsHover, _g = props.optionalMessageInputProps, optionalMessageInputProps = _g === void 0 ? {} : _g, skipMessageDataMemoization = props.skipMessageDataMemoization;
30015
30013
  var _h = icons.useChatContext('Channel'), client = _h.client, customClasses = _h.customClasses, latestMessageDatesByChannels = _h.latestMessageDatesByChannels, mutes = _h.mutes, theme = _h.theme;
30016
30014
  var t = icons.useTranslationContext('Channel').t;
30017
30015
  var _j = useChannelContainerClasses({ customClasses: customClasses }), channelClass = _j.channelClass, chatClass = _j.chatClass, chatContainerClass = _j.chatContainerClass, windowsEmojiClass = _j.windowsEmojiClass;
@@ -30348,6 +30346,28 @@ var ChannelInner = function (props) {
30348
30346
  }
30349
30347
  });
30350
30348
  }); };
30349
+ var deleteMessage = React.useCallback(function (message) { return icons.__awaiter(void 0, void 0, void 0, function () {
30350
+ var deletedMessage, result;
30351
+ return icons.__generator(this, function (_a) {
30352
+ switch (_a.label) {
30353
+ case 0:
30354
+ if (!(message === null || message === void 0 ? void 0 : message.id)) {
30355
+ throw new Error('Cannot delete a message - missing message ID.');
30356
+ }
30357
+ if (!doDeleteMessageRequest) return [3 /*break*/, 2];
30358
+ return [4 /*yield*/, doDeleteMessageRequest(message)];
30359
+ case 1:
30360
+ deletedMessage = _a.sent();
30361
+ return [3 /*break*/, 4];
30362
+ case 2: return [4 /*yield*/, client.deleteMessage(message.id)];
30363
+ case 3:
30364
+ result = _a.sent();
30365
+ deletedMessage = result.message;
30366
+ _a.label = 4;
30367
+ case 4: return [2 /*return*/, deletedMessage];
30368
+ }
30369
+ });
30370
+ }); }, [client, doDeleteMessageRequest]);
30351
30371
  var updateMessage = function (updatedMessage) {
30352
30372
  // add the message to the local channel state
30353
30373
  channel.state.addMessageSorted(updatedMessage, true);
@@ -30531,6 +30551,7 @@ var ChannelInner = function (props) {
30531
30551
  var channelActionContextValue = React.useMemo(function () { return ({
30532
30552
  addNotification: addNotification,
30533
30553
  closeThread: closeThread,
30554
+ deleteMessage: deleteMessage,
30534
30555
  dispatch: dispatch,
30535
30556
  editMessage: editMessage,
30536
30557
  jumpToLatestMessage: jumpToLatestMessage,
@@ -30549,6 +30570,7 @@ var ChannelInner = function (props) {
30549
30570
  updateMessage: updateMessage,
30550
30571
  }); }, [
30551
30572
  channel.cid,
30573
+ deleteMessage,
30552
30574
  enrichURLForPreviewConfig === null || enrichURLForPreviewConfig === void 0 ? void 0 : enrichURLForPreviewConfig.findURLFn,
30553
30575
  enrichURLForPreviewConfig === null || enrichURLForPreviewConfig === void 0 ? void 0 : enrichURLForPreviewConfig.onLinkPreviewDismissed,
30554
30576
  loadMore,
@@ -31092,8 +31114,7 @@ var RECOVER_LOADED_CHANNELS_THROTTLE_INTERVAL_IN_MS = 5000;
31092
31114
  var MIN_RECOVER_LOADED_CHANNELS_THROTTLE_INTERVAL_IN_MS = 2000;
31093
31115
  var usePaginatedChannels = function (client, filters, sort, options, activeChannelHandler, recoveryThrottleIntervalMs) {
31094
31116
  if (recoveryThrottleIntervalMs === void 0) { recoveryThrottleIntervalMs = RECOVER_LOADED_CHANNELS_THROTTLE_INTERVAL_IN_MS; }
31095
- var _a = icons.useChatContext('usePaginatedChannels').channelsQueryState, error = _a.error, setError = _a.setError, setQueryInProgress = _a.setQueryInProgress;
31096
- var _b = React.useState([]), channels = _b[0], setChannels = _b[1];
31117
+ var _a = icons.useChatContext('usePaginatedChannels'), channels = _a.channels, _b = _a.channelsQueryState, error = _b.error, setError = _b.setError, setQueryInProgress = _b.setQueryInProgress, setChannels = _a.setChannels;
31097
31118
  var _c = React.useState(true), hasNextPage = _c[0], setHasNextPage = _c[1];
31098
31119
  var lastRecoveryTimestamp = React.useRef();
31099
31120
  var recoveryThrottleInterval = recoveryThrottleIntervalMs < MIN_RECOVER_LOADED_CHANNELS_THROTTLE_INTERVAL_IN_MS
@@ -31173,6 +31194,7 @@ var usePaginatedChannels = function (client, filters, sort, options, activeChann
31173
31194
  React.useEffect(function () {
31174
31195
  queryChannels('reload');
31175
31196
  }, [filterString, sortString]);
31197
+ // FIXME: state refactor (breaking change) is needed - do not forward `channels` and `setChannel`
31176
31198
  return {
31177
31199
  channels: channels,
31178
31200
  hasNextPage: hasNextPage,
@@ -31774,13 +31796,15 @@ var deprecationAndReplacementWarning = function (pairs, component) {
31774
31796
  };
31775
31797
 
31776
31798
  var UnMemoizedLoadMoreButton = function (_a) {
31777
- var _b = _a.children, children = _b === void 0 ? 'Load more' : _b, isLoading = _a.isLoading, onClick = _a.onClick, refreshing = _a.refreshing;
31799
+ var children = _a.children, isLoading = _a.isLoading, onClick = _a.onClick, refreshing = _a.refreshing;
31800
+ var t = icons.useTranslationContext('UnMemoizedLoadMoreButton').t;
31801
+ var childrenOrDefaultString = children !== null && children !== void 0 ? children : t('Load more');
31778
31802
  var loading = typeof isLoading !== 'undefined' ? isLoading : refreshing;
31779
31803
  React.useEffect(function () {
31780
31804
  deprecationAndReplacementWarning([[{ refreshing: refreshing }, { isLoading: isLoading }]], 'LoadMoreButton');
31781
31805
  }, []);
31782
31806
  return (React__default["default"].createElement("div", { className: 'str-chat__load-more-button' },
31783
- React__default["default"].createElement("button", { "aria-label": 'Load More Channels', className: 'str-chat__load-more-button__button str-chat__cta-button', "data-testid": 'load-more-button', disabled: loading, onClick: onClick }, loading ? React__default["default"].createElement(LoadingIndicator, null) : children)));
31807
+ React__default["default"].createElement("button", { "aria-label": 'Load More Channels', className: 'str-chat__load-more-button__button str-chat__cta-button', "data-testid": 'load-more-button', disabled: loading, onClick: onClick }, loading ? React__default["default"].createElement(LoadingIndicator, null) : childrenOrDefaultString)));
31784
31808
  };
31785
31809
  var LoadMoreButton = React__default["default"].memo(UnMemoizedLoadMoreButton);
31786
31810
 
@@ -31925,7 +31949,7 @@ var UnMemoizedChannelList = function (props) {
31925
31949
  */
31926
31950
  var ChannelList = React__default["default"].memo(UnMemoizedChannelList);
31927
31951
 
31928
- var version = '11.0.0-rc.3';
31952
+ var version = '11.0.0-rc.4';
31929
31953
 
31930
31954
  var useChat = function (_a) {
31931
31955
  var _b, _c;
@@ -31935,10 +31959,11 @@ var useChat = function (_a) {
31935
31959
  tDateTimeParser: icons.defaultDateTimeParser,
31936
31960
  userLanguage: 'en',
31937
31961
  }), translators = _e[0], setTranslators = _e[1];
31938
- var _f = React.useState(), channel = _f[0], setChannel = _f[1];
31939
- var _g = React.useState([]), mutes = _g[0], setMutes = _g[1];
31940
- var _h = React.useState(initialNavOpen), navOpen = _h[0], setNavOpen = _h[1];
31941
- var _j = React.useState({}), latestMessageDatesByChannels = _j[0], setLatestMessageDatesByChannels = _j[1];
31962
+ var _f = React.useState([]), channels = _f[0], setChannels = _f[1];
31963
+ var _g = React.useState(), channel = _g[0], setChannel = _g[1];
31964
+ var _h = React.useState([]), mutes = _h[0], setMutes = _h[1];
31965
+ var _j = React.useState(initialNavOpen), navOpen = _j[0], setNavOpen = _j[1];
31966
+ var _k = React.useState({}), latestMessageDatesByChannels = _k[0], setLatestMessageDatesByChannels = _k[1];
31942
31967
  var clientMutes = ((_b = client.user) === null || _b === void 0 ? void 0 : _b.mutes) || [];
31943
31968
  var closeMobileNav = function () { return setNavOpen(false); };
31944
31969
  var openMobileNav = function () { return setTimeout(function () { return setNavOpen(true); }, 100); };
@@ -32009,6 +32034,7 @@ var useChat = function (_a) {
32009
32034
  }, [(_c = client.user) === null || _c === void 0 ? void 0 : _c.id]);
32010
32035
  return {
32011
32036
  channel: channel,
32037
+ channels: channels,
32012
32038
  closeMobileNav: closeMobileNav,
32013
32039
  getAppSettings: getAppSettings,
32014
32040
  latestMessageDatesByChannels: latestMessageDatesByChannels,
@@ -32016,13 +32042,14 @@ var useChat = function (_a) {
32016
32042
  navOpen: navOpen,
32017
32043
  openMobileNav: openMobileNav,
32018
32044
  setActiveChannel: setActiveChannel,
32045
+ setChannels: setChannels,
32019
32046
  translators: translators,
32020
32047
  };
32021
32048
  };
32022
32049
 
32023
32050
  var useCreateChatContext = function (value) {
32024
32051
  var _a;
32025
- var channel = value.channel, channelsQueryState = value.channelsQueryState, client = value.client, closeMobileNav = value.closeMobileNav, customClasses = value.customClasses, getAppSettings = value.getAppSettings, latestMessageDatesByChannels = value.latestMessageDatesByChannels, mutes = value.mutes, navOpen = value.navOpen, openMobileNav = value.openMobileNav, setActiveChannel = value.setActiveChannel, theme = value.theme, themeVersion = value.themeVersion, useImageFlagEmojisOnWindows = value.useImageFlagEmojisOnWindows;
32052
+ var channel = value.channel, channels = value.channels, channelsQueryState = value.channelsQueryState, client = value.client, closeMobileNav = value.closeMobileNav, customClasses = value.customClasses, getAppSettings = value.getAppSettings, latestMessageDatesByChannels = value.latestMessageDatesByChannels, mutes = value.mutes, navOpen = value.navOpen, openMobileNav = value.openMobileNav, setActiveChannel = value.setActiveChannel, setChannels = value.setChannels, theme = value.theme, themeVersion = value.themeVersion, useImageFlagEmojisOnWindows = value.useImageFlagEmojisOnWindows;
32026
32053
  var channelCid = channel === null || channel === void 0 ? void 0 : channel.cid;
32027
32054
  var channelsQueryError = channelsQueryState.error;
32028
32055
  var channelsQueryInProgress = channelsQueryState.queryInProgress;
@@ -32030,6 +32057,7 @@ var useCreateChatContext = function (value) {
32030
32057
  var mutedUsersLength = mutes.length;
32031
32058
  var chatContext = React.useMemo(function () { return ({
32032
32059
  channel: channel,
32060
+ channels: channels,
32033
32061
  channelsQueryState: channelsQueryState,
32034
32062
  client: client,
32035
32063
  closeMobileNav: closeMobileNav,
@@ -32040,6 +32068,7 @@ var useCreateChatContext = function (value) {
32040
32068
  navOpen: navOpen,
32041
32069
  openMobileNav: openMobileNav,
32042
32070
  setActiveChannel: setActiveChannel,
32071
+ setChannels: setChannels,
32043
32072
  theme: theme,
32044
32073
  themeVersion: themeVersion,
32045
32074
  useImageFlagEmojisOnWindows: useImageFlagEmojisOnWindows,
@@ -32047,10 +32076,12 @@ var useCreateChatContext = function (value) {
32047
32076
  channelCid,
32048
32077
  channelsQueryError,
32049
32078
  channelsQueryInProgress,
32079
+ channels,
32050
32080
  clientValues,
32051
32081
  getAppSettings,
32052
32082
  mutedUsersLength,
32053
32083
  navOpen,
32084
+ setChannels,
32054
32085
  ]);
32055
32086
  return chatContext;
32056
32087
  };
@@ -32109,7 +32140,7 @@ var useCustomStyles = function (customStyles) {
32109
32140
  */
32110
32141
  var Chat = function (props) {
32111
32142
  var children = props.children, client = props.client, customClasses = props.customClasses, customStyles = props.customStyles, _a = props.darkMode, darkMode = _a === void 0 ? false : _a, defaultLanguage = props.defaultLanguage, i18nInstance = props.i18nInstance, _b = props.initialNavOpen, initialNavOpen = _b === void 0 ? true : _b, _c = props.theme, theme = _c === void 0 ? 'messaging light' : _c, _d = props.useImageFlagEmojisOnWindows, useImageFlagEmojisOnWindows = _d === void 0 ? false : _d;
32112
- var _e = useChat({ client: client, defaultLanguage: defaultLanguage, i18nInstance: i18nInstance, initialNavOpen: initialNavOpen }), channel = _e.channel, closeMobileNav = _e.closeMobileNav, getAppSettings = _e.getAppSettings, latestMessageDatesByChannels = _e.latestMessageDatesByChannels, mutes = _e.mutes, navOpen = _e.navOpen, openMobileNav = _e.openMobileNav, setActiveChannel = _e.setActiveChannel, translators = _e.translators;
32143
+ var _e = useChat({ client: client, defaultLanguage: defaultLanguage, i18nInstance: i18nInstance, initialNavOpen: initialNavOpen }), channel = _e.channel, channels = _e.channels, closeMobileNav = _e.closeMobileNav, getAppSettings = _e.getAppSettings, latestMessageDatesByChannels = _e.latestMessageDatesByChannels, mutes = _e.mutes, navOpen = _e.navOpen, openMobileNav = _e.openMobileNav, setActiveChannel = _e.setActiveChannel, setChannels = _e.setChannels, translators = _e.translators;
32113
32144
  var channelsQueryState = useChannelsQueryState();
32114
32145
  var themeVersion = typeof window !== 'undefined'
32115
32146
  ? (window
@@ -32120,6 +32151,7 @@ var Chat = function (props) {
32120
32151
  useCustomStyles(darkMode ? darkModeTheme : customStyles);
32121
32152
  var chatContextValue = useCreateChatContext({
32122
32153
  channel: channel,
32154
+ channels: channels,
32123
32155
  channelsQueryState: channelsQueryState,
32124
32156
  client: client,
32125
32157
  closeMobileNav: closeMobileNav,
@@ -32130,6 +32162,7 @@ var Chat = function (props) {
32130
32162
  navOpen: navOpen,
32131
32163
  openMobileNav: openMobileNav,
32132
32164
  setActiveChannel: setActiveChannel,
32165
+ setChannels: setChannels,
32133
32166
  theme: theme,
32134
32167
  themeVersion: themeVersion,
32135
32168
  useImageFlagEmojisOnWindows: useImageFlagEmojisOnWindows,
@@ -32327,11 +32360,11 @@ function useActionHandler(message) {
32327
32360
  var useDeleteHandler = function (message, notifications) {
32328
32361
  if (notifications === void 0) { notifications = {}; }
32329
32362
  var getErrorNotification = notifications.getErrorNotification, notify = notifications.notify;
32330
- var updateMessage = icons.useChannelActionContext('useDeleteHandler').updateMessage;
32363
+ var _a = icons.useChannelActionContext('useDeleteHandler'), deleteMessage = _a.deleteMessage, updateMessage = _a.updateMessage;
32331
32364
  var client = icons.useChatContext('useDeleteHandler').client;
32332
32365
  var t = icons.useTranslationContext('useDeleteHandler').t;
32333
32366
  return function (event) { return icons.__awaiter(void 0, void 0, void 0, function () {
32334
- var data, errorMessage;
32367
+ var deletedMessage, errorMessage;
32335
32368
  return icons.__generator(this, function (_a) {
32336
32369
  switch (_a.label) {
32337
32370
  case 0:
@@ -32342,10 +32375,10 @@ var useDeleteHandler = function (message, notifications) {
32342
32375
  _a.label = 1;
32343
32376
  case 1:
32344
32377
  _a.trys.push([1, 3, , 4]);
32345
- return [4 /*yield*/, client.deleteMessage(message.id)];
32378
+ return [4 /*yield*/, deleteMessage(message)];
32346
32379
  case 2:
32347
- data = _a.sent();
32348
- updateMessage(data.message);
32380
+ deletedMessage = _a.sent();
32381
+ updateMessage(deletedMessage);
32349
32382
  return [3 /*break*/, 4];
32350
32383
  case 3:
32351
32384
  _a.sent();
package/dist/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const version = "11.0.0-rc.3";
1
+ export declare const version = "11.0.0-rc.4";
2
2
  //# sourceMappingURL=version.d.ts.map
package/dist/version.js CHANGED
@@ -1 +1 @@
1
- export var version = '11.0.0-rc.3';
1
+ export var version = '11.0.0-rc.4';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "stream-chat-react",
3
- "version": "11.0.0-rc.3",
3
+ "version": "11.0.0-rc.4",
4
4
  "description": "React components to create chat conversations or livestream style chat",
5
5
  "author": "GetStream",
6
6
  "homepage": "https://getstream.io/chat/",
@@ -53,7 +53,7 @@
53
53
  "dependencies": {
54
54
  "@braintree/sanitize-url": "^6.0.4",
55
55
  "@popperjs/core": "^2.11.5",
56
- "@stream-io/stream-chat-css": "^4.0.0-rc.4",
56
+ "@stream-io/stream-chat-css": "^4.0.0-rc.5",
57
57
  "clsx": "^2.0.0",
58
58
  "dayjs": "^1.10.4",
59
59
  "emoji-regex": "^9.2.0",