|
1 | 1 | # Changelog - v3
|
2 | 2 |
|
| 3 | +## [v3.3.0] (Nov 23 2022) |
| 4 | +Features: |
| 5 | +* Provide new module `Thread`. See the specific informations of this module on the [Docs page](https://sendbird.com/docs/uikit) |
| 6 | + * You can use a combined component `Thread`. Import it with |
| 7 | + ```typescript |
| 8 | + import Thread from "@sendbird/uikit-react/Thread" |
| 9 | + ``` |
| 10 | + * Also you can use `ThreadProvider` and `useThreadContext` for customization. Import it with |
| 11 | + ```typescript |
| 12 | + import { ThreadProvider, useThreadContext } from "@sendbird/uikit-react/Thread/context" |
| 13 | + ``` |
| 14 | + * And the other UI components are provided under the Thread. `ThreadUI`, `ThreadHeader`, `ParentMessageInfo`, `ParentMessageInfoItem`, `ThreadList`, `ThreadListItem`, and `ThreadMessageInput` are it |
| 15 | +* Add channel props |
| 16 | + * `threadReplySelectType`: Type of the value should be |
| 17 | + ```typescript |
| 18 | + enum ThreadReplySelectType { PARENT, THREAD } |
| 19 | + ``` |
| 20 | + You can see how to use it below |
| 21 | + ```typescript |
| 22 | + import { ThreadReplySelectType } from "@sendbird/uikit-react/Channel/context"; |
| 23 | +
|
| 24 | + <Channel |
| 25 | + ... |
| 26 | + threadReplySelectType={ThreadReplySelectType.PARENT} |
| 27 | + /> |
| 28 | + ``` |
| 29 | + * `animatedMessage`: Type of the value should be number(messageId) |
| 30 | + * `onReplyInThread`: This function is called when user click the button "Reply in thread" on the message context menu |
| 31 | + ```typescript |
| 32 | + type onReplyInThread = ({ message: UserMessage | FileMessage }) => void |
| 33 | + ``` |
| 34 | + * `onQuoteMessageClick`: This function is called when user click the quote message on the message of Channel |
| 35 | + ```typescript |
| 36 | + type onQuoteMessageClick = ({ message: UserMessage | FileMessage }) => {} |
| 37 | + ``` |
| 38 | + * `onMessageAnimated`: This function is called after that message item is animated |
| 39 | + ```typescript |
| 40 | + type onMessageAnimated = () => void |
| 41 | + ``` |
| 42 | + * `onMessageHighlighted`: This function is called after that message item is highlighted |
| 43 | + ```typescript |
| 44 | + type onMessageHighlighted = () => void |
| 45 | + ``` |
| 46 | +* Add `ui/ThreadReplies` component |
| 47 | + ```typescript |
| 48 | + interface ThreadRepliesProps { |
| 49 | + className?: string; |
| 50 | + threadInfo: ThreadInfo; |
| 51 | + onClick?: (e: React.MouseEvent<HTMLElement> | React.KeyboardEvent<HTMLElement>) => void; |
| 52 | + } |
| 53 | + ``` |
| 54 | + |
| 55 | +Fixes: |
| 56 | +* Do not allow operator to unregister itself on the OperatorList of GroupChannel |
| 57 | +* Create new group channel when user open 1:1 channel on the UserProfile |
| 58 | +* Register the channel creator as an operator in 1:1 channel |
| 59 | + |
3 | 60 | ## [v3.2.6] (Nov 14 2022)
|
4 | 61 | Fix:
|
5 | 62 | * Use ref instead of querySelector for DOM manipulation
|
|
0 commit comments