stream-chat-react 6.8.0 → 6.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (216) hide show
  1. package/CHANGELOG.md +1633 -0
  2. package/dist/browser.full-bundle.js +11245 -10648
  3. package/dist/browser.full-bundle.js.map +1 -1
  4. package/dist/browser.full-bundle.min.js +3 -3
  5. package/dist/browser.full-bundle.min.js.map +1 -1
  6. package/dist/components/Attachment/Card.js +1 -1
  7. package/dist/components/AutoCompleteTextarea/Header.d.ts +2 -0
  8. package/dist/components/AutoCompleteTextarea/Header.d.ts.map +1 -1
  9. package/dist/components/AutoCompleteTextarea/Header.js +10 -9
  10. package/dist/components/AutoCompleteTextarea/List.d.ts.map +1 -1
  11. package/dist/components/AutoCompleteTextarea/List.js +2 -2
  12. package/dist/components/Avatar/Avatar.d.ts.map +1 -1
  13. package/dist/components/Avatar/Avatar.js +3 -1
  14. package/dist/components/Channel/Channel.d.ts +2 -0
  15. package/dist/components/Channel/Channel.d.ts.map +1 -1
  16. package/dist/components/Channel/Channel.js +82 -102
  17. package/dist/components/Channel/hooks/useCreateChannelStateContext.d.ts +7 -0
  18. package/dist/components/Channel/hooks/useCreateChannelStateContext.d.ts.map +1 -0
  19. package/dist/components/Channel/hooks/useCreateChannelStateContext.js +92 -0
  20. package/dist/components/Channel/hooks/useCreateTypingContext.d.ts +4 -0
  21. package/dist/components/Channel/hooks/useCreateTypingContext.d.ts.map +1 -0
  22. package/dist/components/Channel/hooks/useCreateTypingContext.js +9 -0
  23. package/dist/components/Channel/hooks/useEditMessageHandler.js +1 -1
  24. package/dist/components/ChannelHeader/ChannelHeader.d.ts.map +1 -1
  25. package/dist/components/ChannelHeader/ChannelHeader.js +3 -3
  26. package/dist/components/ChannelList/ChannelList.d.ts.map +1 -1
  27. package/dist/components/ChannelList/ChannelList.js +3 -3
  28. package/dist/components/ChannelList/hooks/useChannelDeletedListener.js +1 -1
  29. package/dist/components/ChannelList/hooks/useChannelHiddenListener.js +1 -1
  30. package/dist/components/ChannelList/hooks/useChannelTruncatedListener.js +1 -1
  31. package/dist/components/ChannelList/hooks/useChannelUpdatedListener.js +1 -1
  32. package/dist/components/ChannelList/hooks/useChannelVisibleListener.js +1 -1
  33. package/dist/components/ChannelList/hooks/useConnectionRecoveredListener.js +1 -1
  34. package/dist/components/ChannelList/hooks/useMessageNewListener.js +1 -1
  35. package/dist/components/ChannelList/hooks/useNotificationAddedToChannelListener.d.ts.map +1 -1
  36. package/dist/components/ChannelList/hooks/useNotificationAddedToChannelListener.js +1 -1
  37. package/dist/components/ChannelList/hooks/useNotificationMessageNewListener.d.ts +1 -1
  38. package/dist/components/ChannelList/hooks/useNotificationMessageNewListener.d.ts.map +1 -1
  39. package/dist/components/ChannelList/hooks/useNotificationMessageNewListener.js +3 -5
  40. package/dist/components/ChannelList/hooks/useNotificationRemovedFromChannelListener.d.ts.map +1 -1
  41. package/dist/components/ChannelList/hooks/useNotificationRemovedFromChannelListener.js +1 -1
  42. package/dist/components/ChannelList/hooks/usePaginatedChannels.d.ts +0 -1
  43. package/dist/components/ChannelList/hooks/usePaginatedChannels.d.ts.map +1 -1
  44. package/dist/components/ChannelList/hooks/usePaginatedChannels.js +7 -15
  45. package/dist/components/ChannelList/hooks/useUserPresenceChangedListener.js +1 -1
  46. package/dist/components/ChannelPreview/ChannelPreview.js +2 -2
  47. package/dist/components/ChannelPreview/hooks/useIsChannelMuted.js +1 -1
  48. package/dist/components/ChannelSearch/ChannelSearch.js +1 -1
  49. package/dist/components/ChannelSearch/SearchInput.js +1 -1
  50. package/dist/components/ChannelSearch/SearchResults.js +1 -1
  51. package/dist/components/Chat/Chat.d.ts +1 -1
  52. package/dist/components/Chat/Chat.d.ts.map +1 -1
  53. package/dist/components/Chat/Chat.js +14 -12
  54. package/dist/components/Chat/hooks/useChat.js +1 -1
  55. package/dist/components/Chat/hooks/useCreateChatContext.d.ts +4 -0
  56. package/dist/components/Chat/hooks/useCreateChatContext.d.ts.map +1 -0
  57. package/dist/components/Chat/hooks/useCreateChatContext.js +21 -0
  58. package/dist/components/ChatAutoComplete/ChatAutoComplete.d.ts +1 -0
  59. package/dist/components/ChatAutoComplete/ChatAutoComplete.d.ts.map +1 -1
  60. package/dist/components/ChatAutoComplete/ChatAutoComplete.js +3 -3
  61. package/dist/components/ChatDown/ChatDown.js +1 -1
  62. package/dist/components/DateSeparator/DateSeparator.js +1 -1
  63. package/dist/components/EmptyStateIndicator/EmptyStateIndicator.js +1 -1
  64. package/dist/components/EventComponent/EventComponent.js +1 -1
  65. package/dist/components/Gallery/Gallery.js +1 -1
  66. package/dist/components/Loading/LoadingErrorIndicator.js +1 -1
  67. package/dist/components/MML/MML.js +1 -1
  68. package/dist/components/Message/FixedHeightMessage.js +4 -4
  69. package/dist/components/Message/Message.d.ts.map +1 -1
  70. package/dist/components/Message/Message.js +3 -6
  71. package/dist/components/Message/MessageCommerce.js +2 -2
  72. package/dist/components/Message/MessageDeleted.js +1 -1
  73. package/dist/components/Message/MessageLivestream.d.ts.map +1 -1
  74. package/dist/components/Message/MessageLivestream.js +5 -6
  75. package/dist/components/Message/MessageOptions.js +1 -1
  76. package/dist/components/Message/MessageRepliesCountButton.js +1 -1
  77. package/dist/components/Message/MessageSimple.js +2 -2
  78. package/dist/components/Message/MessageStatus.d.ts.map +1 -1
  79. package/dist/components/Message/MessageStatus.js +4 -4
  80. package/dist/components/Message/MessageTeam.js +3 -3
  81. package/dist/components/Message/MessageText.d.ts.map +1 -1
  82. package/dist/components/Message/MessageText.js +3 -3
  83. package/dist/components/Message/MessageTimestamp.d.ts.map +1 -1
  84. package/dist/components/Message/MessageTimestamp.js +2 -2
  85. package/dist/components/Message/QuotedMessage.js +3 -3
  86. package/dist/components/Message/hooks/useActionHandler.d.ts.map +1 -1
  87. package/dist/components/Message/hooks/useActionHandler.js +2 -2
  88. package/dist/components/Message/hooks/useDeleteHandler.js +3 -3
  89. package/dist/components/Message/hooks/useFlagHandler.js +2 -2
  90. package/dist/components/Message/hooks/useMentionsHandler.js +1 -1
  91. package/dist/components/Message/hooks/useMuteHandler.js +3 -3
  92. package/dist/components/Message/hooks/useOpenThreadHandler.d.ts.map +1 -1
  93. package/dist/components/Message/hooks/useOpenThreadHandler.js +1 -1
  94. package/dist/components/Message/hooks/usePinHandler.d.ts.map +1 -1
  95. package/dist/components/Message/hooks/usePinHandler.js +10 -17
  96. package/dist/components/Message/hooks/useReactionHandler.d.ts.map +1 -1
  97. package/dist/components/Message/hooks/useReactionHandler.js +5 -6
  98. package/dist/components/Message/hooks/useRetryHandler.js +1 -1
  99. package/dist/components/Message/hooks/useUserRole.d.ts +2 -2
  100. package/dist/components/Message/hooks/useUserRole.d.ts.map +1 -1
  101. package/dist/components/Message/hooks/useUserRole.js +8 -6
  102. package/dist/components/Message/types.d.ts +1 -1
  103. package/dist/components/Message/types.d.ts.map +1 -1
  104. package/dist/components/Message/utils.d.ts.map +1 -1
  105. package/dist/components/Message/utils.js +1 -0
  106. package/dist/components/MessageActions/MessageActions.js +2 -2
  107. package/dist/components/MessageActions/MessageActionsBox.d.ts.map +1 -1
  108. package/dist/components/MessageActions/MessageActionsBox.js +3 -3
  109. package/dist/components/MessageInput/DefaultTriggerProvider.d.ts.map +1 -1
  110. package/dist/components/MessageInput/DefaultTriggerProvider.js +1 -1
  111. package/dist/components/MessageInput/EditMessageForm.d.ts.map +1 -1
  112. package/dist/components/MessageInput/EditMessageForm.js +4 -4
  113. package/dist/components/MessageInput/EmojiPicker.js +3 -3
  114. package/dist/components/MessageInput/MessageInput.d.ts +1 -1
  115. package/dist/components/MessageInput/MessageInput.d.ts.map +1 -1
  116. package/dist/components/MessageInput/MessageInput.js +3 -2
  117. package/dist/components/MessageInput/MessageInputFlat.js +4 -4
  118. package/dist/components/MessageInput/MessageInputSmall.d.ts.map +1 -1
  119. package/dist/components/MessageInput/MessageInputSmall.js +4 -4
  120. package/dist/components/MessageInput/QuotedMessagePreview.d.ts.map +1 -1
  121. package/dist/components/MessageInput/QuotedMessagePreview.js +4 -4
  122. package/dist/components/MessageInput/UploadsPreview.d.ts.map +1 -1
  123. package/dist/components/MessageInput/UploadsPreview.js +2 -2
  124. package/dist/components/MessageInput/hooks/useAttachments.d.ts.map +1 -1
  125. package/dist/components/MessageInput/hooks/useAttachments.js +1 -1
  126. package/dist/components/MessageInput/hooks/useCommandTrigger.d.ts.map +1 -1
  127. package/dist/components/MessageInput/hooks/useCommandTrigger.js +2 -3
  128. package/dist/components/MessageInput/hooks/useCooldownTimer.js +2 -2
  129. package/dist/components/MessageInput/hooks/useCreateMessageInputContext.d.ts +4 -0
  130. package/dist/components/MessageInput/hooks/useCreateMessageInputContext.d.ts.map +1 -0
  131. package/dist/components/MessageInput/hooks/useCreateMessageInputContext.js +91 -0
  132. package/dist/components/MessageInput/hooks/useEmojiIndex.js +1 -1
  133. package/dist/components/MessageInput/hooks/useFileUploads.js +3 -3
  134. package/dist/components/MessageInput/hooks/useImageUploads.d.ts.map +1 -1
  135. package/dist/components/MessageInput/hooks/useImageUploads.js +3 -3
  136. package/dist/components/MessageInput/hooks/useMessageInputState.d.ts.map +1 -1
  137. package/dist/components/MessageInput/hooks/useMessageInputState.js +2 -3
  138. package/dist/components/MessageInput/hooks/useMessageInputText.js +1 -1
  139. package/dist/components/MessageInput/hooks/useSubmitHandler.js +3 -3
  140. package/dist/components/MessageInput/hooks/useUserTrigger.js +3 -2
  141. package/dist/components/MessageInput/hooks/utils.d.ts +1 -0
  142. package/dist/components/MessageInput/hooks/utils.d.ts.map +1 -1
  143. package/dist/components/MessageInput/hooks/utils.js +7 -4
  144. package/dist/components/MessageInput/icons.js +5 -5
  145. package/dist/components/MessageList/ConnectionStatus.js +2 -2
  146. package/dist/components/MessageList/MessageList.d.ts +1 -9
  147. package/dist/components/MessageList/MessageList.d.ts.map +1 -1
  148. package/dist/components/MessageList/MessageList.js +10 -18
  149. package/dist/components/MessageList/MessageListNotifications.d.ts +11 -0
  150. package/dist/components/MessageList/MessageListNotifications.d.ts.map +1 -0
  151. package/dist/components/MessageList/MessageListNotifications.js +12 -0
  152. package/dist/components/MessageList/VirtualizedMessageList.d.ts +4 -2
  153. package/dist/components/MessageList/VirtualizedMessageList.d.ts.map +1 -1
  154. package/dist/components/MessageList/VirtualizedMessageList.js +13 -14
  155. package/dist/components/MessageList/hooks/useEnrichedMessages.d.ts.map +1 -1
  156. package/dist/components/MessageList/hooks/useEnrichedMessages.js +2 -2
  157. package/dist/components/MessageList/hooks/useGiphyPreview.js +1 -1
  158. package/dist/components/MessageList/hooks/useMessageListElements.d.ts.map +1 -1
  159. package/dist/components/MessageList/hooks/useMessageListElements.js +2 -2
  160. package/dist/components/MessageList/hooks/useMessageListScrollManager.js +1 -1
  161. package/dist/components/Modal/Modal.js +1 -1
  162. package/dist/components/Reactions/ReactionSelector.d.ts.map +1 -1
  163. package/dist/components/Reactions/ReactionSelector.js +3 -3
  164. package/dist/components/Reactions/ReactionsList.d.ts.map +1 -1
  165. package/dist/components/Reactions/ReactionsList.js +2 -2
  166. package/dist/components/Reactions/SimpleReactionsList.js +2 -2
  167. package/dist/components/Thread/Thread.d.ts.map +1 -1
  168. package/dist/components/Thread/Thread.js +8 -9
  169. package/dist/components/TypingIndicator/TypingIndicator.d.ts.map +1 -1
  170. package/dist/components/TypingIndicator/TypingIndicator.js +3 -3
  171. package/dist/components/Window/Window.js +1 -1
  172. package/dist/context/ChannelActionContext.d.ts +2 -2
  173. package/dist/context/ChannelActionContext.d.ts.map +1 -1
  174. package/dist/context/ChannelActionContext.js +8 -3
  175. package/dist/context/ChannelStateContext.d.ts +4 -3
  176. package/dist/context/ChannelStateContext.d.ts.map +1 -1
  177. package/dist/context/ChannelStateContext.js +8 -3
  178. package/dist/context/ChatContext.d.ts +4 -3
  179. package/dist/context/ChatContext.d.ts.map +1 -1
  180. package/dist/context/ChatContext.js +9 -2
  181. package/dist/context/ComponentContext.d.ts +3 -3
  182. package/dist/context/ComponentContext.d.ts.map +1 -1
  183. package/dist/context/ComponentContext.js +8 -3
  184. package/dist/context/EmojiContext.d.ts +2 -2
  185. package/dist/context/EmojiContext.d.ts.map +1 -1
  186. package/dist/context/EmojiContext.js +8 -3
  187. package/dist/context/MessageContext.d.ts +3 -3
  188. package/dist/context/MessageContext.d.ts.map +1 -1
  189. package/dist/context/MessageContext.js +9 -2
  190. package/dist/context/MessageInputContext.d.ts +1 -4
  191. package/dist/context/MessageInputContext.d.ts.map +1 -1
  192. package/dist/context/MessageInputContext.js +4 -6
  193. package/dist/context/TranslationContext.d.ts +1 -1
  194. package/dist/context/TranslationContext.d.ts.map +1 -1
  195. package/dist/context/TranslationContext.js +8 -1
  196. package/dist/context/TypingContext.d.ts +2 -2
  197. package/dist/context/TypingContext.d.ts.map +1 -1
  198. package/dist/context/TypingContext.js +9 -2
  199. package/dist/css/index.css +1 -1
  200. package/dist/i18n/Streami18n.js +2 -2
  201. package/dist/i18n/de.json +4 -4
  202. package/dist/index.cjs.js +661 -426
  203. package/dist/index.cjs.js.map +1 -1
  204. package/dist/scss/Avatar.scss +19 -2
  205. package/dist/scss/Message.scss +2 -1
  206. package/dist/scss/MessageList.scss +10 -2
  207. package/dist/scss/MessageNotification.scss +36 -0
  208. package/dist/scss/_base.scss +4 -3
  209. package/dist/scss/_variables.scss +1 -1
  210. package/dist/utils.d.ts +9 -2
  211. package/dist/utils.d.ts.map +1 -1
  212. package/dist/utils.js +27 -20
  213. package/dist/version.d.ts +1 -1
  214. package/dist/version.d.ts.map +1 -1
  215. package/dist/version.js +1 -1
  216. package/package.json +6 -5
@@ -42,11 +42,27 @@
42
42
 
43
43
  .str-chat__message {
44
44
  &--me {
45
- > .str-chat__avatar {
45
+ %order {
46
46
  order: 1;
47
+ }
48
+
49
+ %margin {
47
50
  margin: 0;
48
51
  margin-left: var(--xs-m);
49
52
  }
53
+
54
+ > .str-chat__avatar {
55
+ @extend %order;
56
+ @extend %margin;
57
+ }
58
+
59
+ > .str-chat-angular__avatar-host {
60
+ @extend %order;
61
+
62
+ > .str-chat__avatar {
63
+ @extend %margin;
64
+ }
65
+ }
50
66
  }
51
67
  }
52
68
 
@@ -54,7 +70,8 @@
54
70
  &--top,
55
71
  &--middle {
56
72
  .str-chat__message {
57
- > .str-chat__avatar {
73
+ > .str-chat__avatar,
74
+ > .str-chat-angular__avatar-host {
58
75
  visibility: hidden;
59
76
  }
60
77
  }
@@ -864,7 +864,8 @@
864
864
  color: var(--overlay-dark);
865
865
  }
866
866
 
867
- > .str-chat__avatar {
867
+ > .str-chat__avatar,
868
+ > .str-chat-angular__avatar-host > .str-chat__avatar {
868
869
  align-self: flex-end;
869
870
  margin-right: 0;
870
871
  }
@@ -1,7 +1,15 @@
1
- .str-chat__list {
2
- flex: 1;
1
+ %scrollable {
3
2
  overflow-x: hidden;
4
3
  overflow-y: auto;
4
+ }
5
+
6
+ .str-chat-angular__message-list-host {
7
+ @extend %scrollable;
8
+ }
9
+
10
+ .str-chat__list {
11
+ @extend %scrollable;
12
+ flex: 1;
5
13
  -webkit-overflow-scrolling: touch; /* enable smooth scrolling on ios */
6
14
  padding: 0;
7
15
 
@@ -10,4 +10,40 @@
10
10
  font-size: var(--sm-font);
11
11
  bottom: 10px;
12
12
  z-index: 101;
13
+
14
+ &-right {
15
+ align-self: flex-end;
16
+ }
17
+
18
+ &-scroll-down {
19
+ cursor: pointer;
20
+ display: block;
21
+ width: 42px;
22
+ height: 42px;
23
+ background-size: 14px auto;
24
+ border-radius: 50%;
25
+ background: var(--white);
26
+ box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.26);
27
+
28
+ &::before {
29
+ position: absolute;
30
+ top: calc(50% - 8px);
31
+ left: calc(50% - 6px);
32
+ transform: rotate(-45deg);
33
+ display: block;
34
+ width: 12px;
35
+ height: 12px;
36
+ content: '';
37
+ border: 2px solid var(--primary-color);
38
+ border-width: 0 0 2px 2px;
39
+ }
40
+
41
+ &-unread-count {
42
+ font-size: 10px;
43
+ position: relative;
44
+ left: 50%;
45
+ transform: translateX(-50%);
46
+ bottom: 18px;
47
+ }
48
+ }
13
49
  }
@@ -17,11 +17,11 @@
17
17
 
18
18
  .messenger-chat {
19
19
  &.str-chat {
20
- height: 100vh;
21
- font-family: var(--second-font);
22
20
  display: flex;
23
21
  align-items: flex-start;
24
22
  justify-content: flex-start;
23
+ font-family: var(--second-font);
24
+ height: 100vh;
25
25
  margin: 0;
26
26
  flex: 1 0 100%;
27
27
 
@@ -125,7 +125,8 @@ $emoji-flag-unicode-range: U+1F1E6-1F1FF;
125
125
  height: 100%;
126
126
  display: flex;
127
127
 
128
- .str-chat__main-panel {
128
+ .str-chat__main-panel,
129
+ .str-chat-angular__main-panel-inner {
129
130
  height: 100%;
130
131
  width: 100%;
131
132
  min-width: 250px;
@@ -16,8 +16,8 @@ $border-color: #00000014;
16
16
  $black: #000000;
17
17
  $white: #ffffff;
18
18
  $grey: #f0f0f0;
19
- $lighten-black: #808080;
20
19
  $darken-grey: #343434;
20
+ $lighten-black: #808080;
21
21
  $lighten-grey: #858585;
22
22
 
23
23
  /* miscellaneous */
package/dist/utils.d.ts CHANGED
@@ -1,7 +1,14 @@
1
1
  import React from 'react';
2
2
  import type { UserResponse } from 'stream-chat';
3
- import type { DefaultUserType, UnknownType } from './types/types';
3
+ import type { DefaultUserType } from './types/types';
4
4
  export declare const isOnlyEmojis: (text?: string | undefined) => boolean;
5
+ export declare const matchMarkdownLinks: (message: string) => (string | null)[];
6
+ export declare const messageCodeBlocks: (message: string) => RegExpMatchArray;
7
+ export declare const markDownRenderers: {
8
+ [nodeType: string]: React.ElementType;
9
+ };
10
+ export declare const emojiMarkdownPlugin: () => <T extends unknown>(markdownAST: T) => T;
11
+ export declare const mentionsMarkdownPlugin: <Us extends DefaultUserType<Us> = DefaultUserType<import("./types/types").DefaultUserTypeInternal>>(mentioned_users: UserResponse<Us>[]) => () => <T extends unknown>(markdownAST: T) => T;
5
12
  export declare type MentionProps<Us extends DefaultUserType<Us> = DefaultUserType> = {
6
13
  mentioned_user: UserResponse<Us>;
7
14
  };
@@ -13,5 +20,5 @@ export declare type RenderTextOptions = {
13
20
  export declare const renderText: <Us extends DefaultUserType<Us> = DefaultUserType<import("./types/types").DefaultUserTypeInternal>>(text?: string | undefined, mentioned_users?: UserResponse<Us>[] | undefined, options?: RenderTextOptions) => JSX.Element | null;
14
21
  export declare function escapeRegExp(text: string): string;
15
22
  export declare function generateRandomId(): string;
16
- export declare const smartRender: (ElementOrComponentOrLiteral: React.ComponentType, props?: UnknownType | undefined, fallback?: React.ComponentType<{}> | null | undefined) => JSX.Element;
23
+ export declare const getWholeChar: (str: string, i: number) => string;
17
24
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AASjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAElE,eAAO,MAAM,YAAY,wCAOxB,CAAC;AA4HF,oBAAY,YAAY,CAAC,EAAE,SAAS,eAAe,CAAC,EAAE,CAAC,GAAG,eAAe,IAAI;IAC3E,cAAc,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC;CAClC,CAAC;AAMF,oBAAY,iBAAiB,GAAG;IAC9B,uBAAuB,CAAC,EAAE;QACxB,CAAC,QAAQ,EAAE,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC;KACvC,CAAC;CACH,CAAC;AAEF,eAAO,MAAM,UAAU,6LAGZ,iBAAiB,uBA8D3B,CAAC;AAEF,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,UAExC;AAOD,wBAAgB,gBAAgB,WAG/B;AAED,eAAO,MAAM,WAAW,gCACO,MAAM,aAAa,wGA2BjD,CAAC"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AASjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAErD,eAAO,MAAM,YAAY,wCAOxB,CAAC;AAoBF,eAAO,MAAM,kBAAkB,YAAa,MAAM,sBAajD,CAAC;AAEF,eAAO,MAAM,iBAAiB,YAAa,MAAM,qBAIhD,CAAC;AAOF,eAAO,MAAM,iBAAiB,EAAE;IAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,KAAK,CAAC,WAAW,CAAA;CAwBtE,CAAC;AAEF,eAAO,MAAM,mBAAmB,gDAe/B,CAAC;AAEF,eAAO,MAAM,sBAAsB,4LAiClC,CAAC;AAEF,oBAAY,YAAY,CAAC,EAAE,SAAS,eAAe,CAAC,EAAE,CAAC,GAAG,eAAe,IAAI;IAC3E,cAAc,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC;CAClC,CAAC;AAMF,oBAAY,iBAAiB,GAAG;IAC9B,uBAAuB,CAAC,EAAE;QACxB,CAAC,QAAQ,EAAE,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC;KACvC,CAAC;CACH,CAAC;AAEF,eAAO,MAAM,UAAU,6LAGZ,iBAAiB,uBA8D3B,CAAC;AAEF,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,UAExC;AAOD,wBAAgB,gBAAgB,WAG/B;AAGD,eAAO,MAAM,YAAY,QAAS,MAAM,KAAK,MAAM,WAgClD,CAAC"}
package/dist/utils.js CHANGED
@@ -41,7 +41,7 @@ var allowedMarkups = [
41
41
  'blockquote',
42
42
  'delete',
43
43
  ];
44
- var matchMarkdownLinks = function (message) {
44
+ export var matchMarkdownLinks = function (message) {
45
45
  var regexMdLinks = /\[([^[]+)\](\(.*\))/gm;
46
46
  var matches = message.match(regexMdLinks);
47
47
  var singleMatch = /\[([^[]+)\]\((.*)\)/;
@@ -53,12 +53,12 @@ var matchMarkdownLinks = function (message) {
53
53
  : [];
54
54
  return links.flat();
55
55
  };
56
- var messageCodeBlocks = function (message) {
56
+ export var messageCodeBlocks = function (message) {
57
57
  var codeRegex = /```[a-z]*\n[\s\S]*?\n```|`[a-z]*[\s\S]*?`/gm;
58
58
  var matches = message.match(codeRegex);
59
59
  return matches || [];
60
60
  };
61
- var markDownRenderers = {
61
+ export var markDownRenderers = {
62
62
  // eslint-disable-next-line react/display-name
63
63
  link: function (props) {
64
64
  var children = props.children, href = props.href;
@@ -71,7 +71,7 @@ var markDownRenderers = {
71
71
  },
72
72
  span: 'span',
73
73
  };
74
- var emojiMarkdownPlugin = function () {
74
+ export var emojiMarkdownPlugin = function () {
75
75
  function replace(match) {
76
76
  return {
77
77
  children: [{ type: 'text', value: match }],
@@ -85,7 +85,7 @@ var emojiMarkdownPlugin = function () {
85
85
  };
86
86
  return transform;
87
87
  };
88
- var mentionsMarkdownPlugin = function (mentioned_users) { return function () {
88
+ export var mentionsMarkdownPlugin = function (mentioned_users) { return function () {
89
89
  var mentioned_usernames = mentioned_users
90
90
  .map(function (user) { return user.name || user.id; })
91
91
  .filter(Boolean)
@@ -161,22 +161,29 @@ export function generateRandomId() {
161
161
  // prettier-ignore
162
162
  return (S4() + S4() + "-" + S4() + "-" + S4() + "-" + S4() + "-" + S4() + S4() + S4());
163
163
  }
164
- export var smartRender = function (ElementOrComponentOrLiteral, props, fallback) {
165
- if (ElementOrComponentOrLiteral === undefined && fallback) {
166
- ElementOrComponentOrLiteral = fallback;
164
+ // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/charAt#getting_whole_characters
165
+ export var getWholeChar = function (str, i) {
166
+ var code = str.charCodeAt(i);
167
+ if (Number.isNaN(code))
168
+ return '';
169
+ if (code < 0xd800 || code > 0xdfff)
170
+ return str.charAt(i);
171
+ if (0xd800 <= code && code <= 0xdbff) {
172
+ if (str.length <= i + 1) {
173
+ throw 'High surrogate without following low surrogate';
174
+ }
175
+ var next = str.charCodeAt(i + 1);
176
+ if (0xdc00 > next || next > 0xdfff) {
177
+ throw 'High surrogate without following low surrogate';
178
+ }
179
+ return str.charAt(i) + str.charAt(i + 1);
167
180
  }
168
- if (React.isValidElement(ElementOrComponentOrLiteral)) {
169
- // Flow cast through any, to make flow believe it's a React.Element
170
- var element = ElementOrComponentOrLiteral;
171
- return element;
181
+ if (i === 0) {
182
+ throw 'Low surrogate without preceding high surrogate';
172
183
  }
173
- // Flow cast through any to remove React.Element after previous check
174
- var ComponentOrLiteral = ElementOrComponentOrLiteral;
175
- if (typeof ComponentOrLiteral === 'string' ||
176
- typeof ComponentOrLiteral === 'number' ||
177
- typeof ComponentOrLiteral === 'boolean' ||
178
- ComponentOrLiteral == null) {
179
- return ComponentOrLiteral;
184
+ var prev = str.charCodeAt(i - 1);
185
+ if (0xd800 > prev || prev > 0xdbff) {
186
+ throw 'Low surrogate without preceding high surrogate';
180
187
  }
181
- return React.createElement(ComponentOrLiteral, __assign({}, props));
188
+ return '';
182
189
  };
package/dist/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const version = "6.8.0";
1
+ export declare const version = "6.11.0";
2
2
  //# sourceMappingURL=version.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,UAAU,CAAC"}
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,WAAW,CAAC"}
package/dist/version.js CHANGED
@@ -1 +1 @@
1
- export var version = '6.8.0';
1
+ export var version = '6.11.0';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "stream-chat-react",
3
- "version": "6.8.0",
3
+ "version": "6.11.0",
4
4
  "description": "React components to create chat conversations or livestream style chat",
5
5
  "author": "GetStream",
6
6
  "homepage": "https://getstream.io/chat/",
@@ -49,14 +49,14 @@
49
49
  "react-markdown": "^5.0.3",
50
50
  "react-player": "^2.7.0",
51
51
  "react-textarea-autosize": "^8.3.0",
52
- "react-virtuoso": "^1.10.8",
53
- "stream-chat-css": "1.0.0",
52
+ "react-virtuoso": "2.2.6",
53
+ "stream-chat-css": "^1.0.17",
54
54
  "textarea-caret": "^3.1.0",
55
55
  "uuid": "^8.3.1"
56
56
  },
57
57
  "optionalDependencies": {
58
58
  "@sindresorhus/transliterate": "^1.4.0",
59
- "mml-react": "^0.4.0"
59
+ "mml-react": "^0.4.2"
60
60
  },
61
61
  "peerDependencies": {
62
62
  "react": "^17.0.0 || ^16.8.0",
@@ -88,12 +88,13 @@
88
88
  "@testing-library/react": "^11.2.2",
89
89
  "@testing-library/react-hooks": "^3.4.2",
90
90
  "@types/deep-equal": "^1.0.1",
91
- "@types/emoji-mart": "^3.0.4",
91
+ "@types/emoji-mart": "^3.0.8",
92
92
  "@types/linkifyjs": "^2.1.3",
93
93
  "@types/lodash.debounce": "^4.0.6",
94
94
  "@types/lodash.isequal": "^4.5.5",
95
95
  "@types/lodash.throttle": "^4.1.6",
96
96
  "@types/lodash.uniqby": "^4.7.6",
97
+ "@types/moment": "^2.13.0",
97
98
  "@types/react-dom": "^17.0.0",
98
99
  "@types/react-is": "^17.0.0",
99
100
  "@types/textarea-caret": "3.0.0",