stream-chat-react 10.0.1 → 10.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/dist/browser.full-bundle.js +35 -24
  2. package/dist/browser.full-bundle.js.map +1 -1
  3. package/dist/browser.full-bundle.min.js +2 -2
  4. package/dist/browser.full-bundle.min.js.map +1 -1
  5. package/dist/components/Attachment/Card.d.ts.map +1 -1
  6. package/dist/components/Attachment/Card.js +5 -6
  7. package/dist/components/AutoCompleteTextarea/Textarea.d.ts.map +1 -1
  8. package/dist/components/AutoCompleteTextarea/Textarea.js +3 -0
  9. package/dist/components/Channel/Channel.d.ts +1 -1
  10. package/dist/components/Channel/Channel.d.ts.map +1 -1
  11. package/dist/components/Channel/Channel.js +10 -7
  12. package/dist/components/Channel/hooks/useChannelContainerClasses.js +1 -1
  13. package/dist/components/ChannelList/ChannelList.d.ts.map +1 -1
  14. package/dist/components/ChannelList/ChannelList.js +7 -6
  15. package/dist/components/Chat/Chat.d.ts +13 -4
  16. package/dist/components/Chat/Chat.d.ts.map +1 -1
  17. package/dist/components/Chat/hooks/useCustomStyles.d.ts +7 -0
  18. package/dist/components/Chat/hooks/useCustomStyles.d.ts.map +1 -1
  19. package/dist/components/Chat/hooks/useCustomStyles.js +7 -0
  20. package/dist/components/ChatAutoComplete/ChatAutoComplete.d.ts +1 -1
  21. package/dist/components/ChatAutoComplete/ChatAutoComplete.d.ts.map +1 -1
  22. package/dist/components/Message/MessageOptions.d.ts +4 -6
  23. package/dist/components/Message/MessageOptions.d.ts.map +1 -1
  24. package/dist/components/Message/MessageRepliesCountButton.d.ts.map +1 -1
  25. package/dist/components/Message/MessageStatus.d.ts.map +1 -1
  26. package/dist/components/Message/MessageText.d.ts.map +1 -1
  27. package/dist/components/Message/MessageTimestamp.d.ts.map +1 -1
  28. package/dist/components/Message/types.d.ts +2 -2
  29. package/dist/components/Message/types.d.ts.map +1 -1
  30. package/dist/components/MessageActions/MessageActions.d.ts +2 -2
  31. package/dist/components/MessageActions/MessageActions.d.ts.map +1 -1
  32. package/dist/components/MessageInput/MessageInputSmall.d.ts +1 -1
  33. package/dist/components/MessageInput/MessageInputSmall.js +1 -1
  34. package/dist/components/MessageInput/UploadsPreview.d.ts +1 -1
  35. package/dist/components/MessageInput/UploadsPreview.js +1 -1
  36. package/dist/components/MessageList/MessageList.d.ts +1 -1
  37. package/dist/components/MessageList/MessageList.d.ts.map +1 -1
  38. package/dist/components/MessageList/VirtualizedMessageList.d.ts +1 -1
  39. package/dist/components/MessageList/VirtualizedMessageList.d.ts.map +1 -1
  40. package/dist/context/ChatContext.d.ts +4 -7
  41. package/dist/context/ChatContext.d.ts.map +1 -1
  42. package/dist/index.cjs.js +35 -24
  43. package/dist/index.cjs.js.map +1 -1
  44. package/dist/version.d.ts +1 -1
  45. package/dist/version.js +1 -1
  46. package/package.json +4 -3
@@ -1,6 +1,6 @@
1
1
  import React, { PropsWithChildren } from 'react';
2
- import type { AppSettingsAPIResponse, Channel, Mute, StreamChat } from 'stream-chat';
3
- import type { Theme } from '../components/Chat/Chat';
2
+ import type { AppSettingsAPIResponse, Channel, Mute } from 'stream-chat';
3
+ import type { ChatProps } from '../components/Chat/Chat';
4
4
  import type { DefaultStreamChatGenerics, UnknownType } from '../types/types';
5
5
  import type { ChannelsQueryState } from '../components/Chat/hooks/useChannelsQueryState';
6
6
  declare type CSSClasses = 'chat' | 'chatContainer' | 'channel' | 'channelList' | 'message' | 'messageList' | 'thread' | 'threadList' | 'virtualMessage' | 'virtualizedMessageList';
@@ -9,7 +9,6 @@ declare type ChannelCID = string;
9
9
  export declare type ThemeVersion = '1' | '2';
10
10
  export declare type ChatContextValue<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = {
11
11
  channelsQueryState: ChannelsQueryState;
12
- client: StreamChat<StreamChatGenerics>;
13
12
  closeMobileNav: () => void;
14
13
  getAppSettings: () => Promise<AppSettingsAPIResponse<StreamChatGenerics>> | null;
15
14
  latestMessageDatesByChannels: Record<ChannelCID, Date>;
@@ -19,14 +18,12 @@ export declare type ChatContextValue<StreamChatGenerics extends DefaultStreamCha
19
18
  limit?: number;
20
19
  offset?: number;
21
20
  }, event?: React.BaseSyntheticEvent) => void;
22
- /** @deprecated */
23
- theme: Theme;
24
21
  themeVersion: ThemeVersion;
25
22
  useImageFlagEmojisOnWindows: boolean;
26
23
  channel?: Channel<StreamChatGenerics>;
27
24
  customClasses?: CustomClasses;
28
25
  navOpen?: boolean;
29
- };
26
+ } & Required<Pick<ChatProps<StreamChatGenerics>, 'theme' | 'client'>>;
30
27
  export declare const ChatContext: React.Context<ChatContextValue<DefaultStreamChatGenerics> | undefined>;
31
28
  export declare const ChatProvider: <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>({ children, value, }: React.PropsWithChildren<{
32
29
  value: ChatContextValue<StreamChatGenerics>;
@@ -38,7 +35,7 @@ export declare const useChatContext: <StreamChatGenerics extends DefaultStreamCh
38
35
  * wrapped component must be provided as the first generic.
39
36
  */
40
37
  export declare const withChatContext: <P extends UnknownType, StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(Component: React.ComponentType<P>) => {
41
- (props: Omit<P, keyof ChatContextValue<StreamChatGenerics>>): JSX.Element;
38
+ (props: Omit<P, "channel" | "client" | "mutes" | "navOpen" | "latestMessageDatesByChannels" | "theme" | "channelsQueryState" | "closeMobileNav" | "customClasses" | "getAppSettings" | "openMobileNav" | "setActiveChannel" | "themeVersion" | "useImageFlagEmojisOnWindows">): JSX.Element;
42
39
  displayName: string;
43
40
  };
44
41
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"ChatContext.d.ts","sourceRoot":"","sources":["../../src/context/ChatContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,iBAAiB,EAAc,MAAM,OAAO,CAAC;AAE7D,OAAO,KAAK,EAAE,sBAAsB,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGrF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,KAAK,EAAE,yBAAyB,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AAEzF,aAAK,UAAU,GACX,MAAM,GACN,eAAe,GACf,SAAS,GACT,aAAa,GACb,SAAS,GACT,aAAa,GACb,QAAQ,GACR,YAAY,GACZ,gBAAgB,GAChB,wBAAwB,CAAC;AAE7B,oBAAY,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;AAEhE,aAAK,UAAU,GAAG,MAAM,CAAC;AAEzB,oBAAY,YAAY,GAAG,GAAG,GAAG,GAAG,CAAC;AAErC,oBAAY,gBAAgB,CAC1B,kBAAkB,SAAS,yBAAyB,GAAG,yBAAyB,IAC9E;IACF,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,MAAM,EAAE,UAAU,CAAC,kBAAkB,CAAC,CAAC;IACvC,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,cAAc,EAAE,MAAM,OAAO,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,CAAC,GAAG,IAAI,CAAC;IACjF,4BAA4B,EAAE,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IACvD,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;IACvC,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,gBAAgB,EAAE,CAChB,UAAU,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,EACxC,QAAQ,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,EAC9C,KAAK,CAAC,EAAE,KAAK,CAAC,kBAAkB,KAC7B,IAAI,CAAC;IACV,kBAAkB;IAClB,KAAK,EAAE,KAAK,CAAC;IACb,YAAY,EAAE,YAAY,CAAC;IAC3B,2BAA2B,EAAE,OAAO,CAAC;IACrC,OAAO,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACtC,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,WAAW,wEAA+D,CAAC;AAExF,eAAO,MAAM,YAAY;;kBAWxB,CAAC;AAEF,eAAO,MAAM,cAAc,qGAGT,MAAM,yCAavB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,eAAe;;;CAa3B,CAAC"}
1
+ {"version":3,"file":"ChatContext.d.ts","sourceRoot":"","sources":["../../src/context/ChatContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,iBAAiB,EAAc,MAAM,OAAO,CAAC;AAE7D,OAAO,KAAK,EAAE,sBAAsB,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAGzE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,KAAK,EAAE,yBAAyB,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AAEzF,aAAK,UAAU,GACX,MAAM,GACN,eAAe,GACf,SAAS,GACT,aAAa,GACb,SAAS,GACT,aAAa,GACb,QAAQ,GACR,YAAY,GACZ,gBAAgB,GAChB,wBAAwB,CAAC;AAE7B,oBAAY,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;AAEhE,aAAK,UAAU,GAAG,MAAM,CAAC;AAEzB,oBAAY,YAAY,GAAG,GAAG,GAAG,GAAG,CAAC;AAErC,oBAAY,gBAAgB,CAC1B,kBAAkB,SAAS,yBAAyB,GAAG,yBAAyB,IAC9E;IACF,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,cAAc,EAAE,MAAM,OAAO,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,CAAC,GAAG,IAAI,CAAC;IACjF,4BAA4B,EAAE,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IACvD,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;IACvC,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,gBAAgB,EAAE,CAChB,UAAU,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,EACxC,QAAQ,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,EAC9C,KAAK,CAAC,EAAE,KAAK,CAAC,kBAAkB,KAC7B,IAAI,CAAC;IACV,YAAY,EAAE,YAAY,CAAC;IAC3B,2BAA2B,EAAE,OAAO,CAAC;IACrC,OAAO,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACtC,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC;AAEtE,eAAO,MAAM,WAAW,wEAA+D,CAAC;AAExF,eAAO,MAAM,YAAY;;kBAWxB,CAAC;AAEF,eAAO,MAAM,cAAc,qGAGT,MAAM,yCAavB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,eAAe;;;CAa3B,CAAC"}
package/dist/index.cjs.js CHANGED
@@ -1417,7 +1417,7 @@ var UnableToRenderCard = function (_a) {
1417
1417
  React__default["default"].createElement("div", { className: 'str-chat__message-attachment-card--text' }, t('this content could not be displayed')))));
1418
1418
  };
1419
1419
  var CardV1 = function (props) {
1420
- var giphy = props.giphy, image_url = props.image_url, og_scrape_url = props.og_scrape_url, text = props.text, thumb_url = props.thumb_url, title = props.title, title_link = props.title_link, type = props.type;
1420
+ var asset_url = props.asset_url, giphy = props.giphy, image_url = props.image_url, og_scrape_url = props.og_scrape_url, text = props.text, thumb_url = props.thumb_url, title = props.title, title_link = props.title_link, type = props.type;
1421
1421
  var giphyVersionName = useChannelStateContext('Card').giphyVersion;
1422
1422
  var image = thumb_url || image_url;
1423
1423
  var dimensions = {};
@@ -1427,20 +1427,19 @@ var CardV1 = function (props) {
1427
1427
  dimensions.height = giphyVersion.height;
1428
1428
  dimensions.width = giphyVersion.width;
1429
1429
  }
1430
- if (!title && !title_link && !image) {
1430
+ if (!title && !title_link && !asset_url && !image) {
1431
1431
  return React__default["default"].createElement(UnableToRenderCard, { type: type });
1432
1432
  }
1433
1433
  if (!title_link && !og_scrape_url) {
1434
1434
  return null;
1435
1435
  }
1436
1436
  return (React__default["default"].createElement("div", { className: "str-chat__message-attachment-card str-chat__message-attachment-card--".concat(type) },
1437
- image && (React__default["default"].createElement("div", { className: 'str-chat__message-attachment-card--header' },
1438
- React__default["default"].createElement("img", __assign({ alt: image, src: image }, dimensions)))),
1439
- React__default["default"].createElement("div", { className: 'str-chat__message-attachment-card--content' },
1437
+ React__default["default"].createElement(CardHeader, __assign({}, props, { dimensions: dimensions, image: image })),
1438
+ type !== 'video' && (React__default["default"].createElement("div", { className: 'str-chat__message-attachment-card--content' },
1440
1439
  React__default["default"].createElement("div", { className: 'str-chat__message-attachment-card--flex' },
1441
1440
  title && React__default["default"].createElement("div", { className: 'str-chat__message-attachment-card--title' }, title),
1442
1441
  text && React__default["default"].createElement("div", { className: 'str-chat__message-attachment-card--text' }, text),
1443
- (title_link || og_scrape_url) && (React__default["default"].createElement(SafeAnchor, { className: 'str-chat__message-attachment-card--url', href: title_link || og_scrape_url, rel: 'noopener noreferrer', target: '_blank' }, getHostFromURL(title_link || og_scrape_url)))))));
1442
+ (title_link || og_scrape_url) && (React__default["default"].createElement(SafeAnchor, { className: 'str-chat__message-attachment-card--url', href: title_link || og_scrape_url, rel: 'noopener noreferrer', target: '_blank' }, getHostFromURL(title_link || og_scrape_url))))))));
1444
1443
  };
1445
1444
  var SourceLink = function (_a) {
1446
1445
  var author_name = _a.author_name, url = _a.url;
@@ -3186,7 +3185,9 @@ var ReactTextareaAutocomplete = /*#__PURE__*/function (_React$Component) {
3186
3185
 
3187
3186
  _defineProperty__default["default"](_assertThisInitialized__default["default"](_this), "_handleKeyDown", function (event) {
3188
3187
  var _this$props$shouldSub = _this.props.shouldSubmit,
3189
- shouldSubmit = _this$props$shouldSub === void 0 ? _this._defaultShouldSubmit : _this$props$shouldSub;
3188
+ shouldSubmit = _this$props$shouldSub === void 0 ? _this._defaultShouldSubmit : _this$props$shouldSub; // prevent default behaviour when the selection list is rendered
3189
+
3190
+ if ((event.key === 'ArrowUp' || event.key === 'ArrowDown') && _this.dropdownRef) event.preventDefault();
3190
3191
  if (shouldSubmit !== null && shouldSubmit !== void 0 && shouldSubmit(event)) return _this._onEnter(event);
3191
3192
  if (event.key === ' ') return _this._onSpace(event);
3192
3193
  if (event.key === 'Escape') return _this._closeAutocomplete();
@@ -7312,7 +7313,7 @@ var SendButton = function (_a) {
7312
7313
  * utilises outdated components from the package [`react-file-utils`](https://github.com/GetStream/react-file-utils)
7313
7314
  * which will no longer receive updates for aforementioned components.
7314
7315
  *
7315
- * **Will be removed with the complete transition to the theming V2.**
7316
+ * **Will be removed with the complete transition to the theming V2 (next major release - `v11.0.0`).**
7316
7317
  */
7317
7318
  var UploadsPreview = function () {
7318
7319
  var themeVersion = useChatContext('UploadsPreview').themeVersion;
@@ -10258,7 +10259,7 @@ var MessageInput = React__default["default"].memo(UnMemoizedMessageInput);
10258
10259
  * In case you need to change styling in places where `MessageInputSmall` has been used previously ([`Thread`](../Thread/Thread.tsx))
10259
10260
  * please do so by updating the CSS or by overriding the component itself.
10260
10261
  *
10261
- * **Will be removed with the complete transition to the theming V2.**
10262
+ * **Will be removed with the complete transition to the theming V2 (next major release - `v11.0.0`).**
10262
10263
  */
10263
10264
  var MessageInputSmall = function () {
10264
10265
  var _a = useChannelStateContext('MessageInputSmall'), acceptedFiles = _a.acceptedFiles, multipleUploads = _a.multipleUploads, quotedMessage = _a.quotedMessage;
@@ -10906,7 +10907,7 @@ var useChannelContainerClasses = function (_a) {
10906
10907
  var customClasses = _a.customClasses;
10907
10908
  var useImageFlagEmojisOnWindows = useChatContext('Channel').useImageFlagEmojisOnWindows;
10908
10909
  return {
10909
- channelClass: (_b = customClasses === null || customClasses === void 0 ? void 0 : customClasses.channel) !== null && _b !== void 0 ? _b : 'str-chat-channel',
10910
+ channelClass: (_b = customClasses === null || customClasses === void 0 ? void 0 : customClasses.channel) !== null && _b !== void 0 ? _b : 'str-chat-channel str-chat__channel',
10910
10911
  chatClass: (_c = customClasses === null || customClasses === void 0 ? void 0 : customClasses.chat) !== null && _c !== void 0 ? _c : 'str-chat',
10911
10912
  chatContainerClass: (_d = customClasses === null || customClasses === void 0 ? void 0 : customClasses.chatContainer) !== null && _d !== void 0 ? _d : 'str-chat__container',
10912
10913
  windowsEmojiClass: useImageFlagEmojisOnWindows && navigator.userAgent.match(/Win/)
@@ -10922,16 +10923,17 @@ var UnMemoizedChannel = function (props) {
10922
10923
  customClasses: customClasses,
10923
10924
  }), channelClass = _d.channelClass, chatClass = _d.chatClass;
10924
10925
  var channel = propsChannel || contextChannel;
10926
+ var className = clsx(chatClass, theme, channelClass);
10925
10927
  if (channelsQueryState.queryInProgress === 'reload' && LoadingIndicator) {
10926
- return (React__default["default"].createElement("div", { className: "".concat(chatClass, " ").concat(channelClass, " str-chat__channel ").concat(theme) },
10928
+ return (React__default["default"].createElement("div", { className: className },
10927
10929
  React__default["default"].createElement(LoadingIndicator, null)));
10928
10930
  }
10929
10931
  if (channelsQueryState.error && LoadingErrorIndicator) {
10930
- return (React__default["default"].createElement("div", { className: "".concat(chatClass, " ").concat(channelClass, " str-chat__channel ").concat(theme) },
10932
+ return (React__default["default"].createElement("div", { className: className },
10931
10933
  React__default["default"].createElement(LoadingErrorIndicator, { error: channelsQueryState.error })));
10932
10934
  }
10933
10935
  if (!(channel === null || channel === void 0 ? void 0 : channel.cid)) {
10934
- return (React__default["default"].createElement("div", { className: "".concat(chatClass, " ").concat(channelClass, " str-chat__channel ").concat(theme) }, EmptyPlaceholder));
10936
+ return React__default["default"].createElement("div", { className: className }, EmptyPlaceholder);
10935
10937
  }
10936
10938
  // @ts-ignore
10937
10939
  return React__default["default"].createElement(ChannelInner, __assign({}, props, { channel: channel, key: channel.cid }));
@@ -11470,19 +11472,20 @@ var ChannelInner = function (props) {
11470
11472
  typing: typing,
11471
11473
  });
11472
11474
  var OptionalMessageInputProvider = React.useMemo(function () { return (dragAndDropWindow ? DropzoneProvider : React__default["default"].Fragment); }, [dragAndDropWindow]);
11475
+ var className = clsx(chatClass, theme, channelClass);
11473
11476
  if (state.error) {
11474
- return (React__default["default"].createElement("div", { className: "".concat(chatClass, " ").concat(channelClass, " str-chat__channel ").concat(theme) },
11477
+ return (React__default["default"].createElement("div", { className: className },
11475
11478
  React__default["default"].createElement(LoadingErrorIndicator$1, { error: state.error })));
11476
11479
  }
11477
11480
  if (state.loading) {
11478
- return (React__default["default"].createElement("div", { className: "".concat(chatClass, " ").concat(channelClass, " str-chat__channel ").concat(theme) },
11481
+ return (React__default["default"].createElement("div", { className: className },
11479
11482
  React__default["default"].createElement(LoadingIndicator, null)));
11480
11483
  }
11481
11484
  if (!channel.watch) {
11482
- return (React__default["default"].createElement("div", { className: "".concat(chatClass, " ").concat(channelClass, " str-chat__channel ").concat(theme) },
11485
+ return (React__default["default"].createElement("div", { className: className },
11483
11486
  React__default["default"].createElement("div", null, t('Channel Missing'))));
11484
11487
  }
11485
- return (React__default["default"].createElement("div", { className: "".concat(chatClass, " ").concat(channelClass, " str-chat__channel ").concat(theme, " ").concat(windowsEmojiClass) },
11488
+ return (React__default["default"].createElement("div", { className: clsx(className, windowsEmojiClass) },
11486
11489
  React__default["default"].createElement(ChannelStateProvider, { value: channelStateContextValue },
11487
11490
  React__default["default"].createElement(ChannelActionProvider, { value: channelActionContextValue },
11488
11491
  React__default["default"].createElement(ComponentProvider, { value: componentContextValue },
@@ -12520,11 +12523,12 @@ var DEFAULT_FILTERS = {};
12520
12523
  var DEFAULT_OPTIONS = {};
12521
12524
  var DEFAULT_SORT = {};
12522
12525
  var UnMemoizedChannelList = function (props) {
12523
- var additionalChannelSearchProps = props.additionalChannelSearchProps, _a = props.Avatar, Avatar$1 = _a === void 0 ? Avatar : _a, allowNewMessagesFromUnfilteredChannels = props.allowNewMessagesFromUnfilteredChannels, channelRenderFilterFn = props.channelRenderFilterFn, _b = props.ChannelSearch, ChannelSearch$1 = _b === void 0 ? ChannelSearch : _b, customActiveChannel = props.customActiveChannel, _c = props.EmptyStateIndicator, EmptyStateIndicator$1 = _c === void 0 ? EmptyStateIndicator : _c, filters = props.filters, _d = props.LoadingErrorIndicator, LoadingErrorIndicator = _d === void 0 ? ChatDown : _d, _e = props.LoadingIndicator, LoadingIndicator = _e === void 0 ? LoadingChannels : _e, _f = props.List, List = _f === void 0 ? ChannelListMessenger : _f, lockChannelOrder = props.lockChannelOrder, onAddedToChannel = props.onAddedToChannel, onChannelDeleted = props.onChannelDeleted, onChannelHidden = props.onChannelHidden, onChannelTruncated = props.onChannelTruncated, onChannelUpdated = props.onChannelUpdated, onChannelVisible = props.onChannelVisible, onMessageNew = props.onMessageNew, onRemovedFromChannel = props.onRemovedFromChannel, options = props.options, _g = props.Paginator, Paginator = _g === void 0 ? LoadMorePaginator : _g, Preview = props.Preview, renderChannels = props.renderChannels, _h = props.sendChannelsToList, sendChannelsToList = _h === void 0 ? false : _h, _j = props.setActiveChannelOnMount, setActiveChannelOnMount = _j === void 0 ? true : _j, _k = props.showChannelSearch, showChannelSearch = _k === void 0 ? false : _k, _l = props.sort, sort = _l === void 0 ? DEFAULT_SORT : _l, _m = props.watchers, watchers = _m === void 0 ? {} : _m;
12524
- var _o = useChatContext('ChannelList'), channel = _o.channel, channelsQueryState = _o.channelsQueryState, client = _o.client, closeMobileNav = _o.closeMobileNav, customClasses = _o.customClasses, _p = _o.navOpen, navOpen = _p === void 0 ? false : _p, setActiveChannel = _o.setActiveChannel, theme = _o.theme, useImageFlagEmojisOnWindows = _o.useImageFlagEmojisOnWindows;
12526
+ var _a, _b;
12527
+ var additionalChannelSearchProps = props.additionalChannelSearchProps, _c = props.Avatar, Avatar$1 = _c === void 0 ? Avatar : _c, allowNewMessagesFromUnfilteredChannels = props.allowNewMessagesFromUnfilteredChannels, channelRenderFilterFn = props.channelRenderFilterFn, _d = props.ChannelSearch, ChannelSearch$1 = _d === void 0 ? ChannelSearch : _d, customActiveChannel = props.customActiveChannel, _e = props.EmptyStateIndicator, EmptyStateIndicator$1 = _e === void 0 ? EmptyStateIndicator : _e, filters = props.filters, _f = props.LoadingErrorIndicator, LoadingErrorIndicator = _f === void 0 ? ChatDown : _f, _g = props.LoadingIndicator, LoadingIndicator = _g === void 0 ? LoadingChannels : _g, _h = props.List, List = _h === void 0 ? ChannelListMessenger : _h, lockChannelOrder = props.lockChannelOrder, onAddedToChannel = props.onAddedToChannel, onChannelDeleted = props.onChannelDeleted, onChannelHidden = props.onChannelHidden, onChannelTruncated = props.onChannelTruncated, onChannelUpdated = props.onChannelUpdated, onChannelVisible = props.onChannelVisible, onMessageNew = props.onMessageNew, onRemovedFromChannel = props.onRemovedFromChannel, options = props.options, _j = props.Paginator, Paginator = _j === void 0 ? LoadMorePaginator : _j, Preview = props.Preview, renderChannels = props.renderChannels, _k = props.sendChannelsToList, sendChannelsToList = _k === void 0 ? false : _k, _l = props.setActiveChannelOnMount, setActiveChannelOnMount = _l === void 0 ? true : _l, _m = props.showChannelSearch, showChannelSearch = _m === void 0 ? false : _m, _o = props.sort, sort = _o === void 0 ? DEFAULT_SORT : _o, _p = props.watchers, watchers = _p === void 0 ? {} : _p;
12528
+ var _q = useChatContext('ChannelList'), channel = _q.channel, channelsQueryState = _q.channelsQueryState, client = _q.client, closeMobileNav = _q.closeMobileNav, customClasses = _q.customClasses, _r = _q.navOpen, navOpen = _r === void 0 ? false : _r, setActiveChannel = _q.setActiveChannel, theme = _q.theme, useImageFlagEmojisOnWindows = _q.useImageFlagEmojisOnWindows;
12525
12529
  var channelListRef = React.useRef(null);
12526
- var _q = React.useState(0), channelUpdateCount = _q[0], setChannelUpdateCount = _q[1];
12527
- var _r = React.useState(false), searchActive = _r[0], setSearchActive = _r[1];
12530
+ var _s = React.useState(0), channelUpdateCount = _s[0], setChannelUpdateCount = _s[1];
12531
+ var _t = React.useState(false), searchActive = _t[0], setSearchActive = _t[1];
12528
12532
  /**
12529
12533
  * Set a channel with id {customActiveChannel} as active and move it to the top of the list.
12530
12534
  * If customActiveChannel prop is absent, then set the first channel in list as active channel.
@@ -12584,7 +12588,7 @@ var UnMemoizedChannelList = function (props) {
12584
12588
  setSearchActive(false);
12585
12589
  (_a = additionalChannelSearchProps === null || additionalChannelSearchProps === void 0 ? void 0 : additionalChannelSearchProps.onSearchExit) === null || _a === void 0 ? void 0 : _a.call(additionalChannelSearchProps);
12586
12590
  }, []);
12587
- var _s = usePaginatedChannels(client, filters || DEFAULT_FILTERS, sort || DEFAULT_SORT, options || DEFAULT_OPTIONS, activeChannelHandler), channels = _s.channels, hasNextPage = _s.hasNextPage, loadNextPage = _s.loadNextPage, setChannels = _s.setChannels;
12591
+ var _u = usePaginatedChannels(client, filters || DEFAULT_FILTERS, sort || DEFAULT_SORT, options || DEFAULT_OPTIONS, activeChannelHandler), channels = _u.channels, hasNextPage = _u.hasNextPage, loadNextPage = _u.loadNextPage, setChannels = _u.setChannels;
12588
12592
  var loadedChannels = channelRenderFilterFn ? channelRenderFilterFn(channels) : channels;
12589
12593
  useMobileNavigation(channelListRef, navOpen, closeMobileNav);
12590
12594
  useMessageNewListener(setChannels, lockChannelOrder, allowNewMessagesFromUnfilteredChannels);
@@ -12625,7 +12629,7 @@ var UnMemoizedChannelList = function (props) {
12625
12629
  };
12626
12630
  return React__default["default"].createElement(ChannelPreview, __assign({}, previewProps));
12627
12631
  };
12628
- var className = clsx('str-chat__channel-list', theme, (customClasses === null || customClasses === void 0 ? void 0 : customClasses.chat) || 'str-chat', (customClasses === null || customClasses === void 0 ? void 0 : customClasses.channelList) || 'str-chat-channel-list', {
12632
+ var className = clsx((_a = customClasses === null || customClasses === void 0 ? void 0 : customClasses.chat) !== null && _a !== void 0 ? _a : 'str-chat', theme, (_b = customClasses === null || customClasses === void 0 ? void 0 : customClasses.channelList) !== null && _b !== void 0 ? _b : 'str-chat-channel-list str-chat__channel-list', {
12629
12633
  'str-chat--windows-flags': useImageFlagEmojisOnWindows && navigator.userAgent.match(/Win/),
12630
12634
  'str-chat-channel-list--open': navOpen,
12631
12635
  });
@@ -12642,7 +12646,7 @@ var UnMemoizedChannelList = function (props) {
12642
12646
  */
12643
12647
  var ChannelList = React__default["default"].memo(UnMemoizedChannelList);
12644
12648
 
12645
- var version = '10.0.1';
12649
+ var version = '10.0.2';
12646
12650
 
12647
12651
  var useChat = function (_a) {
12648
12652
  var _b, _c;
@@ -12804,6 +12808,13 @@ var darkModeTheme = {
12804
12808
  '--white-smoke': '#13151b',
12805
12809
  '--white-snow': '#070a0d',
12806
12810
  };
12811
+ /**
12812
+ * @deprecated This hook has been deprecated in favor of the new
12813
+ * theming (V2) setup which sets its variables through CSS files.
12814
+ * Refer to the [documentation](https://getstream.io/chat/docs/sdk/react/theming/themingv2/) of the new theming for the upgrade.
12815
+ *
12816
+ * **Will be removed with the complete transition to the theming V2.**
12817
+ */
12807
12818
  var useCustomStyles = function (customStyles) {
12808
12819
  if (!customStyles)
12809
12820
  return;