v1.9.0 @liveblocks/node- Add the Comments write REST APIs as fully typed methods. (includes
createThread,editThreadMetadata,createComment,editComment,deleteComment,addCommentReaction, andremoveCommentReactionmethods) - Fix the return type of
getActiveUsersto match the data returned from the endpoint.
@liveblocks/react- Add
queryoption touseThreadsto filter threads based on their metadata.
@liveblocks/react-comments- Add support for exit animations to
ComposerSuggestions.
- Add the Comments write REST APIs as fully typed methods. (includes
v1.8.2 @liveblocks/react- Improve Comments revalidation when losing network or staying in the background.
- Improve error handling of Comments mutations. (e.g. thread creation, comment creation, etc.)
@liveblocks/client- Export the
CommentBodyutilities added to@liveblocks/nodein v1.8.0. - Harmonize exports with
@liveblocks/node. (addedIUserInfoandPlainLsonObject)
@liveblocks/node- Harmonize exports with
@liveblocks/client. (addedCommentBody,CommentBodyBlockElement,CommentBodyElement,CommentBodyInlineElement,CommentBodyLink,CommentBodyMention,CommentBodyParagraph,CommentBodyText,JsonArray,JsonScalar,Lson,LsonObject, andUser)
v1.8.1 - Fix a bug in
toPlainLsonhelper - Fix a bug where pausing history more than once could lead to history loss
- Fix a bug in
v1.8.0 This release adds all the REST APIs as fully typed methods, and utilities to transform comments, to
@liveblocks/node.@liveblocks/node- Add all the REST APIs as fully typed methods to
Liveblocksclient. See docs. - Add utilities to work with the
CommentBodyformat from Comments:getMentionedIdsFromCommentBody(body)- Get a list of all mentioned IDs from aCommentBody. See docs.stringifyCommentBody(body, options)- Convert aCommentBodyto a string, either as plain text, HTML, or Markdown. It supports resolving mention IDs similarly to@liveblocks/reactand overriding each element to control the formatting. See docs.
- Add all the REST APIs as fully typed methods to
v1.7.1 @liveblocks/react-comments- Fix
Composerfocus issues. - Improve relative date formatting for some locales. (e.g. the `"fr"`` locale formatted “1h ago” as “-1 h” instead of “il y a 1 h”)
- Improve default monospace font for inline code blocks.
- Fix
v1.7.0 Liveblocks Comments is now available for everyone as a public beta, learn more about this in the announcement.
@liveblocks/client- Improve some internal logging.
@liveblocks/react- Improve Comments-specific error logging.
@liveblocks/react-comments- Improve default relative date formatting. (e.g. “2 hours ago” → “2h ago”)
create-liveblocks-app- Add
ThreadMetadatatype to--initcommand.
v1.6.0 @liveblocks/yjs- Add support for subdocs.
v1.5.2 @liveblocks/react- Fix return type of
resolveUsers.
- Fix return type of
v1.5.1 - Fixes a bug in the bounds check of the
backgroundKeepAliveTimeoutoption.
- Fixes a bug in the bounds check of the
v1.5.0 Support multiple RoomProviders, or mixing and matching our React package in the same app with a Redux and/or Zustand instance.
At the client level, there is a new API for entering/leaving rooms, which we’re now recommending over the old APIs. (The old APIs remain working exactly how they are today, however.)
@liveblocks/client- New client config option:
backgroundKeepAliveTimeout(a numeric value in milliseconds). See docs. - New APIs:
Client.enterRoom(roomId, options)– enters the room and return both the room and an "unsubscribe function" to leave that room again. This newer API supports entering/leaving the same room multiple times, making it possible to connect to the same room from different parts of your application. See docs.Client.logout()– Call this on the Liveblocks client when you log out a user in your application. It will purge all auth tokens and force-leave any rooms, if any are still connected. See docs.LiveList.clone()– see docs.LiveMap.clone()– see docs.LiveObject.clone()– see docs.
- Deprecated APIs:
client.enter(roomId, options)client.leave(roomId)
- Renamed enter option:
shouldInitiallyConnect→autoConnect. Its meaning or working did not change. - Fixes a potential
Cannot set parent: node already has a parenterror when initializing storage with Live datastructures that are already tied to a Storage tree.
@liveblocks/react- Support using multiple
RoomProvidercomponents in your component tree for the same room ID. - Renamed
RoomProviderprop:shouldInitiallyConnect→autoConnect. Its meaning or working did not change. - New hook:
useOthersListener({ type, user, others }), see docs
@liveblocks/redux- Breaking: The
leaveRoom()function no longer accepts aroomId. It will always leave the currently joined room.
@liveblocks/zustand- The
enterRoom()function will now return a leave callback function. - Breaking: The
leaveRoom()function no longer accepts aroomId. It will always leave the currently joined room.
- New client config option: