diff --git a/docs/pages/get-started/nextjs-comments-ag-grid.mdx b/docs/pages/get-started/nextjs-comments-ag-grid.mdx
index 0e0bdea39b..7ba4767977 100644
--- a/docs/pages/get-started/nextjs-comments-ag-grid.mdx
+++ b/docs/pages/get-started/nextjs-comments-ag-grid.mdx
@@ -187,7 +187,11 @@ components from
```tsx file="app/CommentCell.tsx"
"use client";
- import { FloatingComposer, FloatingThread } from "@liveblocks/react-ui";
+ import {
+ Comment,
+ FloatingComposer,
+ FloatingThread,
+ } from "@liveblocks/react-ui";
import { CustomCellRendererProps } from "ag-grid-react";
import { useCellThread } from "./CellThreadContext";
@@ -249,7 +253,15 @@ components from
style={{ zIndex: 10 }}
autoFocus
>
-
+
)}
diff --git a/docs/pages/get-started/nextjs-comments-table.mdx b/docs/pages/get-started/nextjs-comments-table.mdx
index e1d26a5736..f6b9a27f9f 100644
--- a/docs/pages/get-started/nextjs-comments-table.mdx
+++ b/docs/pages/get-started/nextjs-comments-table.mdx
@@ -161,7 +161,11 @@ components from
import { useState } from "react";
import { useThreads } from "@liveblocks/react/suspense";
- import { FloatingComposer, FloatingThread } from "@liveblocks/react-ui";
+ import {
+ Comment,
+ FloatingComposer,
+ FloatingThread,
+ } from "@liveblocks/react-ui";
const TABLE_DATA = [
{ id: "1", name: "Laptop", price: 1000 },
@@ -226,7 +230,16 @@ components from
}}
autoFocus
>
-
+
) : (
-
-
-
-
-
This example shows how to build commenting to your
[AG Grid](https://www.ag-grid.com/) table with
[Liveblocks](https://liveblocks.io) and [Next.js](https://nextjs.org/).
diff --git a/package-lock.json b/package-lock.json
index 307e1c0538..1a89ae3d23 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -37178,10 +37178,10 @@
},
"packages/liveblocks-client": {
"name": "@liveblocks/client",
- "version": "3.14.1",
+ "version": "3.15.0",
"license": "Apache-2.0",
"dependencies": {
- "@liveblocks/core": "3.14.1"
+ "@liveblocks/core": "3.15.0"
},
"devDependencies": {
"@liveblocks/eslint-config": "*",
@@ -37190,7 +37190,7 @@
},
"packages/liveblocks-core": {
"name": "@liveblocks/core",
- "version": "3.14.1",
+ "version": "3.15.0",
"license": "Apache-2.0",
"devDependencies": {
"@liveblocks/eslint-config": "*",
@@ -37208,11 +37208,11 @@
},
"packages/liveblocks-emails": {
"name": "@liveblocks/emails",
- "version": "3.14.1",
+ "version": "3.15.0",
"license": "Apache-2.0",
"dependencies": {
- "@liveblocks/core": "3.14.1",
- "@liveblocks/node": "3.14.1"
+ "@liveblocks/core": "3.15.0",
+ "@liveblocks/node": "3.15.0"
},
"devDependencies": {
"@liveblocks/eslint-config": "*",
@@ -37231,10 +37231,10 @@
},
"packages/liveblocks-node": {
"name": "@liveblocks/node",
- "version": "3.14.1",
+ "version": "3.15.0",
"license": "Apache-2.0",
"dependencies": {
- "@liveblocks/core": "3.14.1",
+ "@liveblocks/core": "3.15.0",
"@stablelib/base64": "^1.0.1",
"fast-sha256": "^1.3.0",
"node-fetch": "^2.6.1"
@@ -37249,11 +37249,11 @@
},
"packages/liveblocks-node-lexical": {
"name": "@liveblocks/node-lexical",
- "version": "3.14.1",
+ "version": "3.15.0",
"license": "Apache-2.0",
"dependencies": {
- "@liveblocks/core": "3.14.1",
- "@liveblocks/node": "3.14.1",
+ "@liveblocks/core": "3.15.0",
+ "@liveblocks/node": "3.15.0",
"yjs": "^13.6.18"
},
"devDependencies": {
@@ -37270,11 +37270,11 @@
},
"packages/liveblocks-node-prosemirror": {
"name": "@liveblocks/node-prosemirror",
- "version": "3.14.1",
+ "version": "3.15.0",
"license": "Apache-2.0",
"dependencies": {
- "@liveblocks/core": "3.14.1",
- "@liveblocks/node": "3.14.1",
+ "@liveblocks/core": "3.15.0",
+ "@liveblocks/node": "3.15.0",
"yjs": "^13.6.20"
},
"devDependencies": {
@@ -37294,11 +37294,11 @@
},
"packages/liveblocks-react": {
"name": "@liveblocks/react",
- "version": "3.14.1",
+ "version": "3.15.0",
"license": "Apache-2.0",
"dependencies": {
- "@liveblocks/client": "3.14.1",
- "@liveblocks/core": "3.14.1"
+ "@liveblocks/client": "3.15.0",
+ "@liveblocks/core": "3.15.0"
},
"devDependencies": {
"@liveblocks/eslint-config": "*",
@@ -37328,15 +37328,15 @@
},
"packages/liveblocks-react-blocknote": {
"name": "@liveblocks/react-blocknote",
- "version": "3.14.1",
+ "version": "3.15.0",
"license": "Apache-2.0",
"dependencies": {
- "@liveblocks/client": "3.14.1",
- "@liveblocks/core": "3.14.1",
- "@liveblocks/react": "3.14.1",
- "@liveblocks/react-tiptap": "3.14.1",
- "@liveblocks/react-ui": "3.14.1",
- "@liveblocks/yjs": "3.14.1",
+ "@liveblocks/client": "3.15.0",
+ "@liveblocks/core": "3.15.0",
+ "@liveblocks/react": "3.15.0",
+ "@liveblocks/react-tiptap": "3.15.0",
+ "@liveblocks/react-ui": "3.15.0",
+ "@liveblocks/yjs": "3.15.0",
"@tiptap/core": "^3.19.0",
"vitest-tsconfig-paths": "^3.4.1"
},
@@ -37373,15 +37373,15 @@
},
"packages/liveblocks-react-lexical": {
"name": "@liveblocks/react-lexical",
- "version": "3.14.1",
+ "version": "3.15.0",
"license": "Apache-2.0",
"dependencies": {
"@floating-ui/react-dom": "^2.1.0",
- "@liveblocks/client": "3.14.1",
- "@liveblocks/core": "3.14.1",
- "@liveblocks/react": "3.14.1",
- "@liveblocks/react-ui": "3.14.1",
- "@liveblocks/yjs": "3.14.1",
+ "@liveblocks/client": "3.15.0",
+ "@liveblocks/core": "3.15.0",
+ "@liveblocks/react": "3.15.0",
+ "@liveblocks/react-ui": "3.15.0",
+ "@liveblocks/yjs": "3.15.0",
"radix-ui": "^1.4.0",
"yjs": "^13.6.18"
},
@@ -39015,15 +39015,15 @@
},
"packages/liveblocks-react-tiptap": {
"name": "@liveblocks/react-tiptap",
- "version": "3.14.1",
+ "version": "3.15.0",
"license": "Apache-2.0",
"dependencies": {
"@floating-ui/react-dom": "^2.1.0",
- "@liveblocks/client": "3.14.1",
- "@liveblocks/core": "3.14.1",
- "@liveblocks/react": "3.14.1",
- "@liveblocks/react-ui": "3.14.1",
- "@liveblocks/yjs": "3.14.1",
+ "@liveblocks/client": "3.15.0",
+ "@liveblocks/core": "3.15.0",
+ "@liveblocks/react": "3.15.0",
+ "@liveblocks/react-ui": "3.15.0",
+ "@liveblocks/yjs": "3.15.0",
"@tiptap/core": "^3.19.0",
"@tiptap/react": "^3.19.0",
"@tiptap/suggestion": "^3.19.0",
@@ -40671,13 +40671,13 @@
},
"packages/liveblocks-react-ui": {
"name": "@liveblocks/react-ui",
- "version": "3.14.1",
+ "version": "3.15.0",
"license": "Apache-2.0",
"dependencies": {
"@floating-ui/react-dom": "^2.1.0",
- "@liveblocks/client": "3.14.1",
- "@liveblocks/core": "3.14.1",
- "@liveblocks/react": "3.14.1",
+ "@liveblocks/client": "3.15.0",
+ "@liveblocks/core": "3.15.0",
+ "@liveblocks/react": "3.15.0",
"frimousse": "^0.2.0",
"marked": "^15.0.11",
"radix-ui": "^1.4.0",
@@ -41051,11 +41051,11 @@
},
"packages/liveblocks-redux": {
"name": "@liveblocks/redux",
- "version": "3.14.1",
+ "version": "3.15.0",
"license": "Apache-2.0",
"dependencies": {
- "@liveblocks/client": "3.14.1",
- "@liveblocks/core": "3.14.1"
+ "@liveblocks/client": "3.15.0",
+ "@liveblocks/core": "3.15.0"
},
"devDependencies": {
"@liveblocks/eslint-config": "*",
@@ -41211,11 +41211,11 @@
},
"packages/liveblocks-yjs": {
"name": "@liveblocks/yjs",
- "version": "3.14.1",
+ "version": "3.15.0",
"license": "Apache-2.0",
"dependencies": {
- "@liveblocks/client": "3.14.1",
- "@liveblocks/core": "3.14.1",
+ "@liveblocks/client": "3.15.0",
+ "@liveblocks/core": "3.15.0",
"@noble/hashes": "^1.8.0",
"js-base64": "^3.7.7",
"y-indexeddb": "^9.0.12"
@@ -41280,11 +41280,11 @@
},
"packages/liveblocks-zustand": {
"name": "@liveblocks/zustand",
- "version": "3.14.1",
+ "version": "3.15.0",
"license": "Apache-2.0",
"dependencies": {
- "@liveblocks/client": "3.14.1",
- "@liveblocks/core": "3.14.1"
+ "@liveblocks/client": "3.15.0",
+ "@liveblocks/core": "3.15.0"
},
"devDependencies": {
"@liveblocks/eslint-config": "*",
diff --git a/packages/liveblocks-client/package.json b/packages/liveblocks-client/package.json
index 205185cf11..8f8d2b3e94 100644
--- a/packages/liveblocks-client/package.json
+++ b/packages/liveblocks-client/package.json
@@ -1,6 +1,6 @@
{
"name": "@liveblocks/client",
- "version": "3.14.1",
+ "version": "3.15.0",
"description": "A client that lets you interact with Liveblocks servers. Liveblocks is the all-in-one toolkit to build collaborative products like Figma, Notion, and more.",
"license": "Apache-2.0",
"author": "Liveblocks Inc.",
@@ -36,7 +36,7 @@
"test:watch": "NODE_OPTIONS=\"--no-deprecation\" vitest"
},
"dependencies": {
- "@liveblocks/core": "3.14.1"
+ "@liveblocks/core": "3.15.0"
},
"devDependencies": {
"@liveblocks/eslint-config": "*",
diff --git a/packages/liveblocks-core/package.json b/packages/liveblocks-core/package.json
index 9244f94f5e..45719b73fe 100644
--- a/packages/liveblocks-core/package.json
+++ b/packages/liveblocks-core/package.json
@@ -1,6 +1,6 @@
{
"name": "@liveblocks/core",
- "version": "3.14.1",
+ "version": "3.15.0",
"description": "Private internals for Liveblocks. DO NOT import directly from this package!",
"type": "module",
"main": "./dist/index.cjs",
diff --git a/packages/liveblocks-emails/package.json b/packages/liveblocks-emails/package.json
index d8bce51bf7..5ac86af68d 100644
--- a/packages/liveblocks-emails/package.json
+++ b/packages/liveblocks-emails/package.json
@@ -1,6 +1,6 @@
{
"name": "@liveblocks/emails",
- "version": "3.14.1",
+ "version": "3.15.0",
"description": "A set of functions and utilities to make sending emails based on Liveblocks notification events easy. Liveblocks is the all-in-one toolkit to build collaborative products like Figma, Notion, and more.",
"license": "Apache-2.0",
"author": "Liveblocks Inc.",
@@ -37,8 +37,8 @@
"test:watch": "NODE_OPTIONS=\"--no-deprecation\" vitest"
},
"dependencies": {
- "@liveblocks/core": "3.14.1",
- "@liveblocks/node": "3.14.1"
+ "@liveblocks/core": "3.15.0",
+ "@liveblocks/node": "3.15.0"
},
"peerDependencies": {
"react": "^18 || ^19 || ^19.0.0-rc"
diff --git a/packages/liveblocks-node-lexical/package.json b/packages/liveblocks-node-lexical/package.json
index 804e1501df..f9219d45a5 100644
--- a/packages/liveblocks-node-lexical/package.json
+++ b/packages/liveblocks-node-lexical/package.json
@@ -1,6 +1,6 @@
{
"name": "@liveblocks/node-lexical",
- "version": "3.14.1",
+ "version": "3.15.0",
"description": "A server-side utility that lets you modify lexical documents hosted in Liveblocks.",
"license": "Apache-2.0",
"author": "Liveblocks Inc.",
@@ -36,8 +36,8 @@
"test:watch": "NODE_OPTIONS=\"--no-deprecation\" vitest"
},
"dependencies": {
- "@liveblocks/core": "3.14.1",
- "@liveblocks/node": "3.14.1",
+ "@liveblocks/core": "3.15.0",
+ "@liveblocks/node": "3.15.0",
"yjs": "^13.6.18"
},
"peerDependencies": {
diff --git a/packages/liveblocks-node-prosemirror/package.json b/packages/liveblocks-node-prosemirror/package.json
index 3fed604ec4..bcd4daa70b 100644
--- a/packages/liveblocks-node-prosemirror/package.json
+++ b/packages/liveblocks-node-prosemirror/package.json
@@ -1,6 +1,6 @@
{
"name": "@liveblocks/node-prosemirror",
- "version": "3.14.1",
+ "version": "3.15.0",
"description": "A server-side utility that lets you modify prosemirror and tiptap documents hosted in Liveblocks.",
"license": "Apache-2.0",
"author": "Liveblocks Inc.",
@@ -36,8 +36,8 @@
"test:watch": "NODE_OPTIONS=\"--no-deprecation\" vitest"
},
"dependencies": {
- "@liveblocks/core": "3.14.1",
- "@liveblocks/node": "3.14.1",
+ "@liveblocks/core": "3.15.0",
+ "@liveblocks/node": "3.15.0",
"yjs": "^13.6.20"
},
"peerDependencies": {
diff --git a/packages/liveblocks-node/package.json b/packages/liveblocks-node/package.json
index c74efcfbfa..097354ffcb 100644
--- a/packages/liveblocks-node/package.json
+++ b/packages/liveblocks-node/package.json
@@ -1,6 +1,6 @@
{
"name": "@liveblocks/node",
- "version": "3.14.1",
+ "version": "3.15.0",
"description": "A server-side utility that lets you set up a Liveblocks authentication endpoint. Liveblocks is the all-in-one toolkit to build collaborative products like Figma, Notion, and more.",
"license": "Apache-2.0",
"author": "Liveblocks Inc.",
@@ -36,7 +36,7 @@
"test:watch": "NODE_OPTIONS=\"--no-deprecation\" vitest"
},
"dependencies": {
- "@liveblocks/core": "3.14.1",
+ "@liveblocks/core": "3.15.0",
"@stablelib/base64": "^1.0.1",
"fast-sha256": "^1.3.0",
"node-fetch": "^2.6.1"
diff --git a/packages/liveblocks-react-blocknote/package.json b/packages/liveblocks-react-blocknote/package.json
index 443b5582cb..292f32364e 100644
--- a/packages/liveblocks-react-blocknote/package.json
+++ b/packages/liveblocks-react-blocknote/package.json
@@ -1,6 +1,6 @@
{
"name": "@liveblocks/react-blocknote",
- "version": "3.14.1",
+ "version": "3.15.0",
"description": "An integration of BlockNote + React to enable collaboration, comments, live cursors, and more with Liveblocks.",
"license": "Apache-2.0",
"author": "Liveblocks Inc.",
@@ -44,12 +44,12 @@
"test:watch": "NODE_OPTIONS=\"--no-deprecation\" vitest"
},
"dependencies": {
- "@liveblocks/client": "3.14.1",
- "@liveblocks/core": "3.14.1",
- "@liveblocks/react": "3.14.1",
- "@liveblocks/react-tiptap": "3.14.1",
- "@liveblocks/react-ui": "3.14.1",
- "@liveblocks/yjs": "3.14.1",
+ "@liveblocks/client": "3.15.0",
+ "@liveblocks/core": "3.15.0",
+ "@liveblocks/react": "3.15.0",
+ "@liveblocks/react-tiptap": "3.15.0",
+ "@liveblocks/react-ui": "3.15.0",
+ "@liveblocks/yjs": "3.15.0",
"@tiptap/core": "^3.19.0",
"vitest-tsconfig-paths": "^3.4.1"
},
diff --git a/packages/liveblocks-react-lexical/package.json b/packages/liveblocks-react-lexical/package.json
index 8c12949e3b..788948b41a 100644
--- a/packages/liveblocks-react-lexical/package.json
+++ b/packages/liveblocks-react-lexical/package.json
@@ -1,6 +1,6 @@
{
"name": "@liveblocks/react-lexical",
- "version": "3.14.1",
+ "version": "3.15.0",
"description": "An integration of Lexical + React to enable collaboration, comments, live cursors, and more with Liveblocks.",
"license": "Apache-2.0",
"author": "Liveblocks Inc.",
@@ -45,11 +45,11 @@
},
"dependencies": {
"@floating-ui/react-dom": "^2.1.0",
- "@liveblocks/client": "3.14.1",
- "@liveblocks/core": "3.14.1",
- "@liveblocks/react": "3.14.1",
- "@liveblocks/react-ui": "3.14.1",
- "@liveblocks/yjs": "3.14.1",
+ "@liveblocks/client": "3.15.0",
+ "@liveblocks/core": "3.15.0",
+ "@liveblocks/react": "3.15.0",
+ "@liveblocks/react-ui": "3.15.0",
+ "@liveblocks/yjs": "3.15.0",
"radix-ui": "^1.4.0",
"yjs": "^13.6.18"
},
diff --git a/packages/liveblocks-react-tiptap/package.json b/packages/liveblocks-react-tiptap/package.json
index ed46f7a1c1..9a40ac8f63 100644
--- a/packages/liveblocks-react-tiptap/package.json
+++ b/packages/liveblocks-react-tiptap/package.json
@@ -1,6 +1,6 @@
{
"name": "@liveblocks/react-tiptap",
- "version": "3.14.1",
+ "version": "3.15.0",
"description": "An integration of TipTap + React to enable collaboration, comments, live cursors, and more with Liveblocks.",
"license": "Apache-2.0",
"author": "Liveblocks Inc.",
@@ -45,11 +45,11 @@
},
"dependencies": {
"@floating-ui/react-dom": "^2.1.0",
- "@liveblocks/client": "3.14.1",
- "@liveblocks/core": "3.14.1",
- "@liveblocks/react": "3.14.1",
- "@liveblocks/react-ui": "3.14.1",
- "@liveblocks/yjs": "3.14.1",
+ "@liveblocks/client": "3.15.0",
+ "@liveblocks/core": "3.15.0",
+ "@liveblocks/react": "3.15.0",
+ "@liveblocks/react-ui": "3.15.0",
+ "@liveblocks/yjs": "3.15.0",
"@tiptap/core": "^3.19.0",
"@tiptap/react": "^3.19.0",
"@tiptap/suggestion": "^3.19.0",
diff --git a/packages/liveblocks-react-ui/package.json b/packages/liveblocks-react-ui/package.json
index 2b570e8c0f..b8b0b77bfc 100644
--- a/packages/liveblocks-react-ui/package.json
+++ b/packages/liveblocks-react-ui/package.json
@@ -1,6 +1,6 @@
{
"name": "@liveblocks/react-ui",
- "version": "3.14.1",
+ "version": "3.15.0",
"description": "A set of React pre-built components for the Liveblocks products. Liveblocks is the all-in-one toolkit to build collaborative products like Figma, Notion, and more.",
"license": "Apache-2.0",
"author": "Liveblocks Inc.",
@@ -78,9 +78,9 @@
},
"dependencies": {
"@floating-ui/react-dom": "^2.1.0",
- "@liveblocks/client": "3.14.1",
- "@liveblocks/core": "3.14.1",
- "@liveblocks/react": "3.14.1",
+ "@liveblocks/client": "3.15.0",
+ "@liveblocks/core": "3.15.0",
+ "@liveblocks/react": "3.15.0",
"frimousse": "^0.2.0",
"marked": "^15.0.11",
"radix-ui": "^1.4.0",
diff --git a/packages/liveblocks-react/package.json b/packages/liveblocks-react/package.json
index 46cedd9813..6df9037796 100644
--- a/packages/liveblocks-react/package.json
+++ b/packages/liveblocks-react/package.json
@@ -1,6 +1,6 @@
{
"name": "@liveblocks/react",
- "version": "3.14.1",
+ "version": "3.15.0",
"description": "A set of React hooks and providers to use Liveblocks declaratively. Liveblocks is the all-in-one toolkit to build collaborative products like Figma, Notion, and more.",
"license": "Apache-2.0",
"author": "Liveblocks Inc.",
@@ -63,8 +63,8 @@
"showdeps": "depcruise src --include-only '^src' --exclude='__tests__' --output-type dot | dot -T svg > /tmp/dependency-graph.svg && open /tmp/dependency-graph.svg"
},
"dependencies": {
- "@liveblocks/client": "3.14.1",
- "@liveblocks/core": "3.14.1"
+ "@liveblocks/client": "3.15.0",
+ "@liveblocks/core": "3.15.0"
},
"peerDependencies": {
"@types/react": "*",
diff --git a/packages/liveblocks-redux/package.json b/packages/liveblocks-redux/package.json
index 9e2a680908..a4fc9c82d8 100644
--- a/packages/liveblocks-redux/package.json
+++ b/packages/liveblocks-redux/package.json
@@ -1,6 +1,6 @@
{
"name": "@liveblocks/redux",
- "version": "3.14.1",
+ "version": "3.15.0",
"description": "A store enhancer to integrate Liveblocks into Redux stores. Liveblocks is the all-in-one toolkit to build collaborative products like Figma, Notion, and more.",
"license": "Apache-2.0",
"author": "Liveblocks Inc.",
@@ -35,8 +35,8 @@
"test:watch": "vitest"
},
"dependencies": {
- "@liveblocks/client": "3.14.1",
- "@liveblocks/core": "3.14.1"
+ "@liveblocks/client": "3.15.0",
+ "@liveblocks/core": "3.15.0"
},
"peerDependencies": {
"redux": "^4 || ^5"
diff --git a/packages/liveblocks-yjs/package.json b/packages/liveblocks-yjs/package.json
index aeadda1fa2..a6186c8b16 100644
--- a/packages/liveblocks-yjs/package.json
+++ b/packages/liveblocks-yjs/package.json
@@ -1,6 +1,6 @@
{
"name": "@liveblocks/yjs",
- "version": "3.14.1",
+ "version": "3.15.0",
"description": "Integrate your existing or new Yjs documents with Liveblocks.",
"license": "Apache-2.0",
"author": "Liveblocks Inc.",
@@ -35,8 +35,8 @@
"test:watch": "vitest"
},
"dependencies": {
- "@liveblocks/client": "3.14.1",
- "@liveblocks/core": "3.14.1",
+ "@liveblocks/client": "3.15.0",
+ "@liveblocks/core": "3.15.0",
"@noble/hashes": "^1.8.0",
"js-base64": "^3.7.7",
"y-indexeddb": "^9.0.12"
diff --git a/packages/liveblocks-zustand/package.json b/packages/liveblocks-zustand/package.json
index 4e94c68882..348bb6e37b 100644
--- a/packages/liveblocks-zustand/package.json
+++ b/packages/liveblocks-zustand/package.json
@@ -1,6 +1,6 @@
{
"name": "@liveblocks/zustand",
- "version": "3.14.1",
+ "version": "3.15.0",
"description": "A middleware for Zustand to automatically synchronize your stores with Liveblocks. Liveblocks is the all-in-one toolkit to build collaborative products like Figma, Notion, and more.",
"license": "Apache-2.0",
"author": "Liveblocks Inc.",
@@ -36,8 +36,8 @@
"test:watch": "vitest"
},
"dependencies": {
- "@liveblocks/client": "3.14.1",
- "@liveblocks/core": "3.14.1"
+ "@liveblocks/client": "3.15.0",
+ "@liveblocks/core": "3.15.0"
},
"peerDependencies": {
"zustand": "^5.0.1"