diff --git a/.changeset/fix-table-markdown-lookbehind-safari.md b/.changeset/fix-table-markdown-lookbehind-safari.md
deleted file mode 100644
index 28f1ab4d55..0000000000
--- a/.changeset/fix-table-markdown-lookbehind-safari.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-'@tiptap/extension-table': patch
----
-
-Fixed table markdown pipe escaping so the extension loads on older Safari and iOS versions (WebKit before Safari 16.4).
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 756824fa20..6edf5a8c30 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,572 @@
# Releases
+## v3.30.1
+
+### @tiptap/extension-table
+
+#### Patch Changes
+
+- abc8828: Fixed table markdown pipe escaping so the extension loads on older Safari and iOS versions (WebKit before Safari 16.4).
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/core
+
+#### Patch Changes
+
+- abc8828: Added new ProseMirror helpers that check whether a value is a specific ProseMirror type.
+- @tiptap/pm@3.30.1
+
+### @tiptap/extension-table-cell
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/extension-table@3.30.1
+
+### @tiptap/extension-table-header
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/extension-table@3.30.1
+
+### @tiptap/extension-table-row
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/extension-table@3.30.1
+
+### @tiptap/extension-audio
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
+### @tiptap/extension-blockquote
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/extension-bold
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
+### @tiptap/extension-bubble-menu
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/extension-code
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
+### @tiptap/extension-code-block
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/extension-code-block-lowlight
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/extension-code-block@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/extension-collaboration
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/extension-collaboration-caret
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/extension-details
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/extension-text-style@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/extension-document
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
+### @tiptap/extension-drag-handle
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/extension-collaboration@3.30.1
+ - @tiptap/extension-node-range@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/extension-emoji
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/suggestion@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/extension-file-handler
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/extension-text-style@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/extension-find-and-replace
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/extension-floating-menu
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/extension-hard-break
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
+### @tiptap/extension-heading
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
+### @tiptap/extension-highlight
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
+### @tiptap/extension-horizontal-rule
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/extension-image
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
+### @tiptap/extension-invisible-characters
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/extension-text-style@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/extension-italic
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
+### @tiptap/extension-link
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/extension-list
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/extension-mathematics
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/extension-mention
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/suggestion@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/extension-node-range
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/extension-paragraph
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
+### @tiptap/extension-ruby-text
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/extension-strike
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
+### @tiptap/extension-subscript
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/extension-superscript
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/extension-table-of-contents
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/extension-text
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
+### @tiptap/extension-text-align
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
+### @tiptap/extension-text-style
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
+### @tiptap/extension-twitch
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
+### @tiptap/extension-typography
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
+### @tiptap/extension-underline
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
+### @tiptap/extension-unique-id
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/extension-youtube
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
+### @tiptap/extensions
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/html
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/markdown
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/react
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/starter-kit
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/extension-blockquote@3.30.1
+ - @tiptap/extension-bold@3.30.1
+ - @tiptap/extension-code@3.30.1
+ - @tiptap/extension-code-block@3.30.1
+ - @tiptap/extension-document@3.30.1
+ - @tiptap/extension-hard-break@3.30.1
+ - @tiptap/extension-heading@3.30.1
+ - @tiptap/extension-horizontal-rule@3.30.1
+ - @tiptap/extension-italic@3.30.1
+ - @tiptap/extension-link@3.30.1
+ - @tiptap/extension-list@3.30.1
+ - @tiptap/extension-paragraph@3.30.1
+ - @tiptap/extension-strike@3.30.1
+ - @tiptap/extension-text@3.30.1
+ - @tiptap/extension-underline@3.30.1
+ - @tiptap/extensions@3.30.1
+ - @tiptap/extension-list-item@3.30.1
+ - @tiptap/extension-list-keymap@3.30.1
+ - @tiptap/extension-bullet-list@3.30.1
+ - @tiptap/extension-ordered-list@3.30.1
+ - @tiptap/extension-dropcursor@3.30.1
+ - @tiptap/extension-gapcursor@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/static-renderer
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/suggestion
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/vue-2
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/vue-3
+
+#### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/extension-drag-handle-react
+
+#### Patch Changes
+
+- @tiptap/extension-drag-handle@3.30.1
+ - @tiptap/react@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/extension-drag-handle-vue-2
+
+#### Patch Changes
+
+- @tiptap/extension-drag-handle@3.30.1
+ - @tiptap/vue-2@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/extension-drag-handle-vue-3
+
+#### Patch Changes
+
+- @tiptap/extension-drag-handle@3.30.1
+ - @tiptap/vue-3@3.30.1
+ - @tiptap/pm@3.30.1
+
+### @tiptap/extension-list-item
+
+#### Patch Changes
+
+- @tiptap/extension-list@3.30.1
+
+### @tiptap/extension-list-keymap
+
+#### Patch Changes
+
+- @tiptap/extension-list@3.30.1
+
+### @tiptap/extension-task-item
+
+#### Patch Changes
+
+- @tiptap/extension-list@3.30.1
+
+### @tiptap/extension-task-list
+
+#### Patch Changes
+
+- @tiptap/extension-list@3.30.1
+
+### @tiptap/extension-bullet-list
+
+#### Patch Changes
+
+- @tiptap/extension-list@3.30.1
+
+### @tiptap/extension-ordered-list
+
+#### Patch Changes
+
+- @tiptap/extension-list@3.30.1
+
+### @tiptap/extension-color
+
+#### Patch Changes
+
+- @tiptap/extension-text-style@3.30.1
+
+### @tiptap/extension-font-family
+
+#### Patch Changes
+
+- @tiptap/extension-text-style@3.30.1
+
+### @tiptap/extension-character-count
+
+#### Patch Changes
+
+- @tiptap/extensions@3.30.1
+
+### @tiptap/extension-dropcursor
+
+#### Patch Changes
+
+- @tiptap/extensions@3.30.1
+
+### @tiptap/extension-focus
+
+#### Patch Changes
+
+- @tiptap/extensions@3.30.1
+
+### @tiptap/extension-gapcursor
+
+#### Patch Changes
+
+- @tiptap/extensions@3.30.1
+
+### @tiptap/extension-history
+
+#### Patch Changes
+
+- @tiptap/extensions@3.30.1
+
+### @tiptap/extension-placeholder
+
+#### Patch Changes
+
+- @tiptap/extensions@3.30.1
+
## v3.30.0
### @tiptap/vue-2
diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md
index b0a95e4351..3b9fe72901 100644
--- a/packages-deprecated/extension-character-count/CHANGELOG.md
+++ b/packages-deprecated/extension-character-count/CHANGELOG.md
@@ -1,5 +1,11 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- @tiptap/extensions@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json
index 29d83add6d..06bff1625f 100644
--- a/packages-deprecated/extension-character-count/package.json
+++ b/packages-deprecated/extension-character-count/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-character-count",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "font family extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md
index 9c6170d207..9b3334d78a 100644
--- a/packages-deprecated/extension-dropcursor/CHANGELOG.md
+++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md
@@ -1,5 +1,11 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- @tiptap/extensions@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json
index 8f66720b6e..731c7383c2 100644
--- a/packages-deprecated/extension-dropcursor/package.json
+++ b/packages-deprecated/extension-dropcursor/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-dropcursor",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "dropcursor extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md
index 9bdc99947b..d3719a6074 100644
--- a/packages-deprecated/extension-focus/CHANGELOG.md
+++ b/packages-deprecated/extension-focus/CHANGELOG.md
@@ -1,5 +1,11 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- @tiptap/extensions@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json
index be27105dba..bb7ab16946 100644
--- a/packages-deprecated/extension-focus/package.json
+++ b/packages-deprecated/extension-focus/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-focus",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "focus extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md
index 1636e9b50c..a6e20b0282 100644
--- a/packages-deprecated/extension-gapcursor/CHANGELOG.md
+++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md
@@ -1,5 +1,11 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- @tiptap/extensions@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json
index 0147cfd1e9..7cb34f3889 100644
--- a/packages-deprecated/extension-gapcursor/package.json
+++ b/packages-deprecated/extension-gapcursor/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-gapcursor",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "gapcursor extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md
index 8d7aa9d1b1..103f9fb4d0 100644
--- a/packages-deprecated/extension-history/CHANGELOG.md
+++ b/packages-deprecated/extension-history/CHANGELOG.md
@@ -1,5 +1,11 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- @tiptap/extensions@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json
index 0db7d2806c..39a8f91827 100644
--- a/packages-deprecated/extension-history/package.json
+++ b/packages-deprecated/extension-history/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-history",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "history extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md
index 2e2b94d5dd..0f77e08256 100644
--- a/packages-deprecated/extension-list-item/CHANGELOG.md
+++ b/packages-deprecated/extension-list-item/CHANGELOG.md
@@ -1,5 +1,11 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- @tiptap/extension-list@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json
index 83a7f75ead..c7ebfc7f9c 100644
--- a/packages-deprecated/extension-list-item/package.json
+++ b/packages-deprecated/extension-list-item/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-list-item",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "list item extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md
index bf4653fc4b..ce24938097 100644
--- a/packages-deprecated/extension-list-keymap/CHANGELOG.md
+++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md
@@ -1,5 +1,11 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- @tiptap/extension-list@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json
index 91d4911320..d417f4ab00 100644
--- a/packages-deprecated/extension-list-keymap/package.json
+++ b/packages-deprecated/extension-list-keymap/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-list-keymap",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "list keymap extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md
index a047a574d7..d613dd1461 100644
--- a/packages-deprecated/extension-placeholder/CHANGELOG.md
+++ b/packages-deprecated/extension-placeholder/CHANGELOG.md
@@ -1,5 +1,11 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- @tiptap/extensions@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json
index 48cb505c80..6036acb109 100644
--- a/packages-deprecated/extension-placeholder/package.json
+++ b/packages-deprecated/extension-placeholder/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-placeholder",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "placeholder extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md
index 1e9d8ddd22..4b7d03c58c 100644
--- a/packages-deprecated/extension-table-cell/CHANGELOG.md
+++ b/packages-deprecated/extension-table-cell/CHANGELOG.md
@@ -1,5 +1,12 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [3c929ad]
+ - @tiptap/extension-table@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json
index 65f57729bd..819b1cfbb5 100644
--- a/packages-deprecated/extension-table-cell/package.json
+++ b/packages-deprecated/extension-table-cell/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-table-cell",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "table cell extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md
index 570bed6ed3..2b29ac3611 100644
--- a/packages-deprecated/extension-table-header/CHANGELOG.md
+++ b/packages-deprecated/extension-table-header/CHANGELOG.md
@@ -1,5 +1,12 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [3c929ad]
+ - @tiptap/extension-table@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json
index c836c95013..805f22faa8 100644
--- a/packages-deprecated/extension-table-header/package.json
+++ b/packages-deprecated/extension-table-header/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-table-header",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "table cell extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md
index 1508c6af5c..c35f39e2ec 100644
--- a/packages-deprecated/extension-table-row/CHANGELOG.md
+++ b/packages-deprecated/extension-table-row/CHANGELOG.md
@@ -1,5 +1,12 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [3c929ad]
+ - @tiptap/extension-table@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json
index 37182b7fb5..615761469b 100644
--- a/packages-deprecated/extension-table-row/package.json
+++ b/packages-deprecated/extension-table-row/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-table-row",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "table row extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md
index 9c4cb7a4c2..c98bf6a0b6 100644
--- a/packages-deprecated/extension-task-item/CHANGELOG.md
+++ b/packages-deprecated/extension-task-item/CHANGELOG.md
@@ -1,5 +1,11 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- @tiptap/extension-list@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json
index f7ed31e5ab..beca00beca 100644
--- a/packages-deprecated/extension-task-item/package.json
+++ b/packages-deprecated/extension-task-item/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-task-item",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "task item extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md
index f9655e0e76..efe50db3eb 100644
--- a/packages-deprecated/extension-task-list/CHANGELOG.md
+++ b/packages-deprecated/extension-task-list/CHANGELOG.md
@@ -1,5 +1,11 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- @tiptap/extension-list@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json
index 28d90293ce..49dc9e6cc6 100644
--- a/packages-deprecated/extension-task-list/package.json
+++ b/packages-deprecated/extension-task-list/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-task-list",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "task list extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md
index 7d55317a23..6eecfaf17c 100644
--- a/packages/core/CHANGELOG.md
+++ b/packages/core/CHANGELOG.md
@@ -1,5 +1,12 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- abc8828: Added new ProseMirror helpers that check whether a value is a specific ProseMirror type.
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Minor Changes
diff --git a/packages/core/package.json b/packages/core/package.json
index 23e94eb021..d8c73bbba4 100644
--- a/packages/core/package.json
+++ b/packages/core/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/core",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "headless rich text editor",
"keywords": [
"headless",
diff --git a/packages/core/src/helpers/__tests__/isProseMirrorAddMarkStep.test.ts b/packages/core/src/helpers/__tests__/isProseMirrorAddMarkStep.test.ts
new file mode 100644
index 0000000000..8b60c63b64
--- /dev/null
+++ b/packages/core/src/helpers/__tests__/isProseMirrorAddMarkStep.test.ts
@@ -0,0 +1,19 @@
+import type { Mark } from '@tiptap/pm/model'
+import { AddMarkStep, RemoveMarkStep } from '@tiptap/pm/transform'
+import { describe, expect, it } from 'vitest'
+
+import { isProseMirrorAddMarkStep } from '../isProseMirrorAddMarkStep.js'
+
+const mark = { toJSON: () => ({ type: 'bold', attrs: {} }) } as unknown as Mark
+
+describe('isProseMirrorAddMarkStep', () => {
+ it('returns true for an AddMarkStep', () => {
+ expect(isProseMirrorAddMarkStep(new AddMarkStep(1, 5, mark))).toBe(true)
+ })
+
+ it('returns false for other steps and values', () => {
+ expect(isProseMirrorAddMarkStep(new RemoveMarkStep(1, 5, mark))).toBe(false)
+ expect(isProseMirrorAddMarkStep(null)).toBe(false)
+ expect(isProseMirrorAddMarkStep({})).toBe(false)
+ })
+})
diff --git a/packages/core/src/helpers/__tests__/isProseMirrorAddNodeMarkStep.test.ts b/packages/core/src/helpers/__tests__/isProseMirrorAddNodeMarkStep.test.ts
new file mode 100644
index 0000000000..2e59033872
--- /dev/null
+++ b/packages/core/src/helpers/__tests__/isProseMirrorAddNodeMarkStep.test.ts
@@ -0,0 +1,19 @@
+import type { Mark } from '@tiptap/pm/model'
+import { AddNodeMarkStep, RemoveNodeMarkStep } from '@tiptap/pm/transform'
+import { describe, expect, it } from 'vitest'
+
+import { isProseMirrorAddNodeMarkStep } from '../isProseMirrorAddNodeMarkStep.js'
+
+const mark = { toJSON: () => ({ type: 'bold', attrs: {} }) } as unknown as Mark
+
+describe('isProseMirrorAddNodeMarkStep', () => {
+ it('returns true for an AddNodeMarkStep', () => {
+ expect(isProseMirrorAddNodeMarkStep(new AddNodeMarkStep(1, mark))).toBe(true)
+ })
+
+ it('returns false for other steps and values', () => {
+ expect(isProseMirrorAddNodeMarkStep(new RemoveNodeMarkStep(1, mark))).toBe(false)
+ expect(isProseMirrorAddNodeMarkStep(null)).toBe(false)
+ expect(isProseMirrorAddNodeMarkStep({})).toBe(false)
+ })
+})
diff --git a/packages/core/src/helpers/__tests__/isProseMirrorAttrStep.test.ts b/packages/core/src/helpers/__tests__/isProseMirrorAttrStep.test.ts
new file mode 100644
index 0000000000..30c2f32cdc
--- /dev/null
+++ b/packages/core/src/helpers/__tests__/isProseMirrorAttrStep.test.ts
@@ -0,0 +1,17 @@
+import { AttrStep, ReplaceStep } from '@tiptap/pm/transform'
+import { Slice } from '@tiptap/pm/model'
+import { describe, expect, it } from 'vitest'
+
+import { isProseMirrorAttrStep } from '../isProseMirrorAttrStep.js'
+
+describe('isProseMirrorAttrStep', () => {
+ it('returns true for an AttrStep', () => {
+ expect(isProseMirrorAttrStep(new AttrStep(1, 'src', 'image.png'))).toBe(true)
+ })
+
+ it('returns false for other steps and values', () => {
+ expect(isProseMirrorAttrStep(new ReplaceStep(1, 5, Slice.empty))).toBe(false)
+ expect(isProseMirrorAttrStep(null)).toBe(false)
+ expect(isProseMirrorAttrStep({})).toBe(false)
+ })
+})
diff --git a/packages/core/src/helpers/__tests__/isProseMirrorCellSelection.test.ts b/packages/core/src/helpers/__tests__/isProseMirrorCellSelection.test.ts
new file mode 100644
index 0000000000..0bdaf7d09c
--- /dev/null
+++ b/packages/core/src/helpers/__tests__/isProseMirrorCellSelection.test.ts
@@ -0,0 +1,17 @@
+import { describe, expect, it } from 'vitest'
+
+import { isProseMirrorCellSelection } from '../isProseMirrorCellSelection.js'
+
+describe('isProseMirrorCellSelection', () => {
+ it('returns true for a value with the cell-iteration API', () => {
+ expect(isProseMirrorCellSelection({ forEachCell: () => {} })).toBe(true)
+ })
+
+ it('returns false for other selections and values', () => {
+ expect(isProseMirrorCellSelection(null)).toBe(false)
+ expect(isProseMirrorCellSelection(undefined)).toBe(false)
+ expect(isProseMirrorCellSelection({})).toBe(false)
+ expect(isProseMirrorCellSelection('selection')).toBe(false)
+ expect(isProseMirrorCellSelection(42)).toBe(false)
+ })
+})
diff --git a/packages/core/src/helpers/__tests__/isProseMirrorDocAttrStep.test.ts b/packages/core/src/helpers/__tests__/isProseMirrorDocAttrStep.test.ts
new file mode 100644
index 0000000000..c849f2971a
--- /dev/null
+++ b/packages/core/src/helpers/__tests__/isProseMirrorDocAttrStep.test.ts
@@ -0,0 +1,17 @@
+import { DocAttrStep, ReplaceStep } from '@tiptap/pm/transform'
+import { Slice } from '@tiptap/pm/model'
+import { describe, expect, it } from 'vitest'
+
+import { isProseMirrorDocAttrStep } from '../isProseMirrorDocAttrStep.js'
+
+describe('isProseMirrorDocAttrStep', () => {
+ it('returns true for a DocAttrStep', () => {
+ expect(isProseMirrorDocAttrStep(new DocAttrStep('title', 'demo'))).toBe(true)
+ })
+
+ it('returns false for other steps and values', () => {
+ expect(isProseMirrorDocAttrStep(new ReplaceStep(1, 5, Slice.empty))).toBe(false)
+ expect(isProseMirrorDocAttrStep(null)).toBe(false)
+ expect(isProseMirrorDocAttrStep({})).toBe(false)
+ })
+})
diff --git a/packages/core/src/helpers/__tests__/isProseMirrorFragment.test.ts b/packages/core/src/helpers/__tests__/isProseMirrorFragment.test.ts
new file mode 100644
index 0000000000..f01e994a62
--- /dev/null
+++ b/packages/core/src/helpers/__tests__/isProseMirrorFragment.test.ts
@@ -0,0 +1,27 @@
+import { Fragment } from '@tiptap/pm/model'
+import { describe, expect, it } from 'vitest'
+
+import { isProseMirrorFragment } from '../isProseMirrorFragment.js'
+
+describe('isProseMirrorFragment', () => {
+ it('returns true for a fragment', () => {
+ expect(isProseMirrorFragment(Fragment.empty)).toBe(true)
+ })
+
+ it('returns false for other values', () => {
+ expect(isProseMirrorFragment(null)).toBe(false)
+ expect(isProseMirrorFragment('text')).toBe(false)
+ expect(isProseMirrorFragment({ size: 0 })).toBe(false)
+ expect(
+ isProseMirrorFragment({
+ content: [],
+ size: 0,
+ nodesBetween: () => {},
+ descendants: () => {},
+ textBetween: () => {},
+ append: () => {},
+ cut: () => {},
+ }),
+ ).toBe(false)
+ })
+})
diff --git a/packages/core/src/helpers/__tests__/isProseMirrorNodeSelection.test.ts b/packages/core/src/helpers/__tests__/isProseMirrorNodeSelection.test.ts
new file mode 100644
index 0000000000..dae8891d45
--- /dev/null
+++ b/packages/core/src/helpers/__tests__/isProseMirrorNodeSelection.test.ts
@@ -0,0 +1,35 @@
+import { Editor } from '@tiptap/core'
+import Document from '@tiptap/extension-document'
+import Paragraph from '@tiptap/extension-paragraph'
+import Text from '@tiptap/extension-text'
+import { NodeSelection, TextSelection } from '@tiptap/pm/state'
+import { describe, expect, it } from 'vitest'
+
+import { isProseMirrorNodeSelection } from '../isProseMirrorNodeSelection.js'
+
+function createDoc() {
+ const editor = new Editor({
+ extensions: [Document, Paragraph, Text],
+ content: '
hello
',
+ })
+ const doc = editor.state.doc
+ editor.destroy()
+
+ return doc
+}
+
+describe('isProseMirrorNodeSelection', () => {
+ it('returns true for a node selection', () => {
+ expect(isProseMirrorNodeSelection(NodeSelection.create(createDoc(), 1))).toBe(true)
+ })
+
+ it('returns false for other selections and values', () => {
+ expect(isProseMirrorNodeSelection(TextSelection.create(createDoc(), 2))).toBe(false)
+ expect(isProseMirrorNodeSelection(null)).toBe(false)
+ expect(isProseMirrorNodeSelection(undefined)).toBe(false)
+ expect(isProseMirrorNodeSelection('selection')).toBe(false)
+ expect(isProseMirrorNodeSelection(42)).toBe(false)
+ expect(isProseMirrorNodeSelection({ node: undefined })).toBe(false)
+ expect(isProseMirrorNodeSelection({ node: null })).toBe(false)
+ })
+})
diff --git a/packages/core/src/helpers/__tests__/isProseMirrorRemoveMarkStep.test.ts b/packages/core/src/helpers/__tests__/isProseMirrorRemoveMarkStep.test.ts
new file mode 100644
index 0000000000..c5967863b7
--- /dev/null
+++ b/packages/core/src/helpers/__tests__/isProseMirrorRemoveMarkStep.test.ts
@@ -0,0 +1,19 @@
+import type { Mark } from '@tiptap/pm/model'
+import { AddMarkStep, RemoveMarkStep } from '@tiptap/pm/transform'
+import { describe, expect, it } from 'vitest'
+
+import { isProseMirrorRemoveMarkStep } from '../isProseMirrorRemoveMarkStep.js'
+
+const mark = { toJSON: () => ({ type: 'bold', attrs: {} }) } as unknown as Mark
+
+describe('isProseMirrorRemoveMarkStep', () => {
+ it('returns true for a RemoveMarkStep', () => {
+ expect(isProseMirrorRemoveMarkStep(new RemoveMarkStep(1, 5, mark))).toBe(true)
+ })
+
+ it('returns false for other steps and values', () => {
+ expect(isProseMirrorRemoveMarkStep(new AddMarkStep(1, 5, mark))).toBe(false)
+ expect(isProseMirrorRemoveMarkStep(null)).toBe(false)
+ expect(isProseMirrorRemoveMarkStep({})).toBe(false)
+ })
+})
diff --git a/packages/core/src/helpers/__tests__/isProseMirrorRemoveNodeMarkStep.test.ts b/packages/core/src/helpers/__tests__/isProseMirrorRemoveNodeMarkStep.test.ts
new file mode 100644
index 0000000000..b2ff2c592c
--- /dev/null
+++ b/packages/core/src/helpers/__tests__/isProseMirrorRemoveNodeMarkStep.test.ts
@@ -0,0 +1,19 @@
+import type { Mark } from '@tiptap/pm/model'
+import { AddNodeMarkStep, RemoveNodeMarkStep } from '@tiptap/pm/transform'
+import { describe, expect, it } from 'vitest'
+
+import { isProseMirrorRemoveNodeMarkStep } from '../isProseMirrorRemoveNodeMarkStep.js'
+
+const mark = { toJSON: () => ({ type: 'bold', attrs: {} }) } as unknown as Mark
+
+describe('isProseMirrorRemoveNodeMarkStep', () => {
+ it('returns true for a RemoveNodeMarkStep', () => {
+ expect(isProseMirrorRemoveNodeMarkStep(new RemoveNodeMarkStep(1, mark))).toBe(true)
+ })
+
+ it('returns false for other steps and values', () => {
+ expect(isProseMirrorRemoveNodeMarkStep(new AddNodeMarkStep(1, mark))).toBe(false)
+ expect(isProseMirrorRemoveNodeMarkStep(null)).toBe(false)
+ expect(isProseMirrorRemoveNodeMarkStep({})).toBe(false)
+ })
+})
diff --git a/packages/core/src/helpers/__tests__/isProseMirrorReplaceAroundStep.test.ts b/packages/core/src/helpers/__tests__/isProseMirrorReplaceAroundStep.test.ts
new file mode 100644
index 0000000000..8bff8f158b
--- /dev/null
+++ b/packages/core/src/helpers/__tests__/isProseMirrorReplaceAroundStep.test.ts
@@ -0,0 +1,19 @@
+import { ReplaceAroundStep, ReplaceStep } from '@tiptap/pm/transform'
+import { Slice } from '@tiptap/pm/model'
+import { describe, expect, it } from 'vitest'
+
+import { isProseMirrorReplaceAroundStep } from '../isProseMirrorReplaceAroundStep.js'
+
+describe('isProseMirrorReplaceAroundStep', () => {
+ it('returns true for a ReplaceAroundStep', () => {
+ expect(isProseMirrorReplaceAroundStep(new ReplaceAroundStep(1, 5, 2, 4, Slice.empty, 0))).toBe(
+ true,
+ )
+ })
+
+ it('returns false for other steps and values', () => {
+ expect(isProseMirrorReplaceAroundStep(new ReplaceStep(1, 5, Slice.empty))).toBe(false)
+ expect(isProseMirrorReplaceAroundStep(null)).toBe(false)
+ expect(isProseMirrorReplaceAroundStep({})).toBe(false)
+ })
+})
diff --git a/packages/core/src/helpers/__tests__/isProseMirrorReplaceStep.test.ts b/packages/core/src/helpers/__tests__/isProseMirrorReplaceStep.test.ts
new file mode 100644
index 0000000000..87721a0db7
--- /dev/null
+++ b/packages/core/src/helpers/__tests__/isProseMirrorReplaceStep.test.ts
@@ -0,0 +1,17 @@
+import { ReplaceAroundStep, ReplaceStep } from '@tiptap/pm/transform'
+import { Slice } from '@tiptap/pm/model'
+import { describe, expect, it } from 'vitest'
+
+import { isProseMirrorReplaceStep } from '../isProseMirrorReplaceStep.js'
+
+describe('isProseMirrorReplaceStep', () => {
+ it('returns true for a ReplaceStep', () => {
+ expect(isProseMirrorReplaceStep(new ReplaceStep(1, 5, Slice.empty))).toBe(true)
+ })
+
+ it('returns false for other steps and values', () => {
+ expect(isProseMirrorReplaceStep(new ReplaceAroundStep(1, 5, 2, 4, Slice.empty, 0))).toBe(false)
+ expect(isProseMirrorReplaceStep(null)).toBe(false)
+ expect(isProseMirrorReplaceStep({})).toBe(false)
+ })
+})
diff --git a/packages/core/src/helpers/__tests__/isProseMirrorSlice.test.ts b/packages/core/src/helpers/__tests__/isProseMirrorSlice.test.ts
new file mode 100644
index 0000000000..2227c452dd
--- /dev/null
+++ b/packages/core/src/helpers/__tests__/isProseMirrorSlice.test.ts
@@ -0,0 +1,16 @@
+import { Slice } from '@tiptap/pm/model'
+import { describe, expect, it } from 'vitest'
+
+import { isProseMirrorSlice } from '../isProseMirrorSlice.js'
+
+describe('isProseMirrorSlice', () => {
+ it('returns true for a slice', () => {
+ expect(isProseMirrorSlice(Slice.empty)).toBe(true)
+ })
+
+ it('returns false for other values', () => {
+ expect(isProseMirrorSlice(null)).toBe(false)
+ expect(isProseMirrorSlice('text')).toBe(false)
+ expect(isProseMirrorSlice({ openStart: 0, openEnd: 0 })).toBe(false)
+ })
+})
diff --git a/packages/core/src/helpers/__tests__/isProseMirrorStep.test.ts b/packages/core/src/helpers/__tests__/isProseMirrorStep.test.ts
new file mode 100644
index 0000000000..4261804fb4
--- /dev/null
+++ b/packages/core/src/helpers/__tests__/isProseMirrorStep.test.ts
@@ -0,0 +1,30 @@
+import { ReplaceStep } from '@tiptap/pm/transform'
+import { Slice } from '@tiptap/pm/model'
+import { describe, expect, it } from 'vitest'
+
+import { isProseMirrorStep } from '../isProseMirrorStep.js'
+
+describe('isProseMirrorStep', () => {
+ it('returns true for a step', () => {
+ expect(isProseMirrorStep(new ReplaceStep(1, 5, Slice.empty))).toBe(true)
+ })
+
+ it('returns true for an object with the step shape', () => {
+ const stepShape = {
+ apply: () => {},
+ getMap: () => {},
+ invert: () => {},
+ map: () => {},
+ merge: () => {},
+ toJSON: () => {},
+ }
+
+ expect(isProseMirrorStep(stepShape)).toBe(true)
+ })
+
+ it('returns false for other values', () => {
+ expect(isProseMirrorStep(null)).toBe(false)
+ expect(isProseMirrorStep('step')).toBe(false)
+ expect(isProseMirrorStep({})).toBe(false)
+ })
+})
diff --git a/packages/core/src/helpers/__tests__/isProseMirrorStepResult.test.ts b/packages/core/src/helpers/__tests__/isProseMirrorStepResult.test.ts
new file mode 100644
index 0000000000..49283fb54b
--- /dev/null
+++ b/packages/core/src/helpers/__tests__/isProseMirrorStepResult.test.ts
@@ -0,0 +1,17 @@
+import { describe, expect, it } from 'vitest'
+
+import { isProseMirrorStepResult } from '../isProseMirrorStepResult.js'
+
+describe('isProseMirrorStepResult', () => {
+ it('returns true for a success and a failure result', () => {
+ expect(isProseMirrorStepResult({ doc: {}, failed: null })).toBe(true)
+ expect(isProseMirrorStepResult({ doc: null, failed: 'boom' })).toBe(true)
+ })
+
+ it('returns false for other values', () => {
+ expect(isProseMirrorStepResult({ doc: {}, failed: 'boom' })).toBe(false)
+ expect(isProseMirrorStepResult({ doc: null, failed: null })).toBe(false)
+ expect(isProseMirrorStepResult(null)).toBe(false)
+ expect(isProseMirrorStepResult({})).toBe(false)
+ })
+})
diff --git a/packages/core/src/helpers/index.ts b/packages/core/src/helpers/index.ts
index 8e45245a70..98aafd19cd 100644
--- a/packages/core/src/helpers/index.ts
+++ b/packages/core/src/helpers/index.ts
@@ -46,6 +46,20 @@ export * from './isNodeActive.js'
export * from './isNodeEmpty.js'
export * from './isNodeSelection.js'
export * from './isNodeViewSelected.js'
+export * from './isProseMirrorAddMarkStep.js'
+export * from './isProseMirrorAddNodeMarkStep.js'
+export * from './isProseMirrorAttrStep.js'
+export * from './isProseMirrorCellSelection.js'
+export * from './isProseMirrorDocAttrStep.js'
+export * from './isProseMirrorFragment.js'
+export * from './isProseMirrorNodeSelection.js'
+export * from './isProseMirrorRemoveMarkStep.js'
+export * from './isProseMirrorRemoveNodeMarkStep.js'
+export * from './isProseMirrorReplaceAroundStep.js'
+export * from './isProseMirrorReplaceStep.js'
+export * from './isProseMirrorSlice.js'
+export * from './isProseMirrorStep.js'
+export * from './isProseMirrorStepResult.js'
export * from './isTextSelection.js'
export * from './MappablePosition.js'
export * from './posToDOMRect.js'
diff --git a/packages/core/src/helpers/isProseMirrorAddMarkStep.ts b/packages/core/src/helpers/isProseMirrorAddMarkStep.ts
new file mode 100644
index 0000000000..0b0cae3cdf
--- /dev/null
+++ b/packages/core/src/helpers/isProseMirrorAddMarkStep.ts
@@ -0,0 +1,31 @@
+import { type AddMarkStep } from '@tiptap/pm/transform'
+import { isProseMirrorStep } from './isProseMirrorStep.js'
+
+/**
+ * Checks if a value is a ProseMirror add mark step
+ * @param value The value to check
+ * @returns - A boolean, if the boolean is true the value is a ProseMirror AddMarkStep
+ * @example ```js
+ * isProseMirrorAddMarkStep(transaction.steps[0])
+ * ```
+ */
+export function isProseMirrorAddMarkStep(value: unknown): value is AddMarkStep {
+ if (value === null || typeof value !== 'object') {
+ return false
+ }
+
+ const step = value as Record
+
+ if (!isProseMirrorStep(step)) {
+ return false
+ }
+
+ const json = step.toJSON()
+
+ // we use the steps jsonID to check if the step is an add mark step
+ if (json === null || typeof json !== 'object' || json.stepType !== 'addMark') {
+ return false
+ }
+
+ return true
+}
diff --git a/packages/core/src/helpers/isProseMirrorAddNodeMarkStep.ts b/packages/core/src/helpers/isProseMirrorAddNodeMarkStep.ts
new file mode 100644
index 0000000000..05cef4b802
--- /dev/null
+++ b/packages/core/src/helpers/isProseMirrorAddNodeMarkStep.ts
@@ -0,0 +1,31 @@
+import { type AddNodeMarkStep } from '@tiptap/pm/transform'
+import { isProseMirrorStep } from './isProseMirrorStep.js'
+
+/**
+ * Checks if a value is a ProseMirror add node mark step
+ * @param value The value to check
+ * @returns - A boolean, if the boolean is true the value is a ProseMirror AddNodeMarkStep
+ * @example ```js
+ * isProseMirrorAddNodeMarkStep(transaction.steps[0])
+ * ```
+ */
+export function isProseMirrorAddNodeMarkStep(value: unknown): value is AddNodeMarkStep {
+ if (value === null || typeof value !== 'object') {
+ return false
+ }
+
+ const step = value as Record
+
+ if (!isProseMirrorStep(step)) {
+ return false
+ }
+
+ const json = step.toJSON()
+
+ // we use the steps jsonID to check if the step is an add node mark step
+ if (json === null || typeof json !== 'object' || json.stepType !== 'addNodeMark') {
+ return false
+ }
+
+ return true
+}
diff --git a/packages/core/src/helpers/isProseMirrorAttrStep.ts b/packages/core/src/helpers/isProseMirrorAttrStep.ts
new file mode 100644
index 0000000000..608661c07f
--- /dev/null
+++ b/packages/core/src/helpers/isProseMirrorAttrStep.ts
@@ -0,0 +1,31 @@
+import { type AttrStep } from '@tiptap/pm/transform'
+import { isProseMirrorStep } from './isProseMirrorStep.js'
+
+/**
+ * Checks if a value is a ProseMirror attribute step
+ * @param value The value to check
+ * @returns - A boolean, if the boolean is true the value is a ProseMirror AttrStep
+ * @example ```js
+ * isProseMirrorAttrStep(transaction.steps[0])
+ * ```
+ */
+export function isProseMirrorAttrStep(value: unknown): value is AttrStep {
+ if (value === null || typeof value !== 'object') {
+ return false
+ }
+
+ const step = value as Record
+
+ if (!isProseMirrorStep(step)) {
+ return false
+ }
+
+ const json = step.toJSON()
+
+ // we use the steps jsonID to check if the step is an attribute step
+ if (json === null || typeof json !== 'object' || json.stepType !== 'attr') {
+ return false
+ }
+
+ return true
+}
diff --git a/packages/core/src/helpers/isProseMirrorCellSelection.ts b/packages/core/src/helpers/isProseMirrorCellSelection.ts
new file mode 100644
index 0000000000..43a215f236
--- /dev/null
+++ b/packages/core/src/helpers/isProseMirrorCellSelection.ts
@@ -0,0 +1,18 @@
+import type { CellSelection } from '@tiptap/pm/tables'
+
+/**
+ * Check whether a selection provides the cell-iteration API.
+ *
+ * @param selection - Selection to inspect.
+ * @returns Whether the selection is a table cell selection.
+ * @example ```js
+ * isProseMirrorCellSelection(editor.state.selection)
+ * ```
+ */
+export function isProseMirrorCellSelection(selection: unknown): selection is CellSelection {
+ if (selection === null || typeof selection !== 'object') {
+ return false
+ }
+
+ return 'forEachCell' in selection && typeof selection.forEachCell === 'function'
+}
diff --git a/packages/core/src/helpers/isProseMirrorDocAttrStep.ts b/packages/core/src/helpers/isProseMirrorDocAttrStep.ts
new file mode 100644
index 0000000000..70e6959355
--- /dev/null
+++ b/packages/core/src/helpers/isProseMirrorDocAttrStep.ts
@@ -0,0 +1,31 @@
+import { type DocAttrStep } from '@tiptap/pm/transform'
+import { isProseMirrorStep } from './isProseMirrorStep.js'
+
+/**
+ * Checks if a value is a ProseMirror document attribute step
+ * @param value The value to check
+ * @returns - A boolean, if the boolean is true the value is a ProseMirror DocAttrStep
+ * @example ```js
+ * isProseMirrorDocAttrStep(transaction.steps[0])
+ * ```
+ */
+export function isProseMirrorDocAttrStep(value: unknown): value is DocAttrStep {
+ if (value === null || typeof value !== 'object') {
+ return false
+ }
+
+ const step = value as Record
+
+ if (!isProseMirrorStep(step)) {
+ return false
+ }
+
+ const json = step.toJSON()
+
+ // we use the steps jsonID to check if the step is a document attribute step
+ if (json === null || typeof json !== 'object' || json.stepType !== 'docAttr') {
+ return false
+ }
+
+ return true
+}
diff --git a/packages/core/src/helpers/isProseMirrorFragment.ts b/packages/core/src/helpers/isProseMirrorFragment.ts
new file mode 100644
index 0000000000..bb902f3392
--- /dev/null
+++ b/packages/core/src/helpers/isProseMirrorFragment.ts
@@ -0,0 +1,34 @@
+import { type Fragment } from '@tiptap/pm/model'
+
+/**
+ * Checks if a value is a ProseMirror fragment by inspecting it
+ * @param value The value to check
+ * @returns - A boolean, if true the value is a ProseMirror fragment
+ * @example ```js
+ * isProseMirrorFragment(editor.state.doc.content)
+ * ```
+ */
+export function isProseMirrorFragment(value: unknown): value is Fragment {
+ if (value === null || typeof value !== 'object') {
+ return false
+ }
+
+ const fragment = value as Record
+
+ if (
+ !Array.isArray(fragment.content) ||
+ typeof fragment.size !== 'number' ||
+ typeof fragment.nodesBetween !== 'function' ||
+ typeof fragment.descendants !== 'function' ||
+ typeof fragment.textBetween !== 'function' ||
+ typeof fragment.append !== 'function' ||
+ typeof fragment.cut !== 'function' ||
+ typeof fragment.eq !== 'function' ||
+ typeof fragment.child !== 'function' ||
+ typeof fragment.forEach !== 'function'
+ ) {
+ return false
+ }
+
+ return true
+}
diff --git a/packages/core/src/helpers/isProseMirrorNodeSelection.ts b/packages/core/src/helpers/isProseMirrorNodeSelection.ts
new file mode 100644
index 0000000000..14e14090cd
--- /dev/null
+++ b/packages/core/src/helpers/isProseMirrorNodeSelection.ts
@@ -0,0 +1,18 @@
+import type { NodeSelection } from '@tiptap/pm/state'
+
+/**
+ * Check whether a selection exposes a selected node.
+ *
+ * @param selection - Selection to inspect.
+ * @returns Whether the selection is a node selection.
+ * @example ```js
+ * isProseMirrorNodeSelection(editor.state.selection)
+ * ```
+ */
+export function isProseMirrorNodeSelection(selection: unknown): selection is NodeSelection {
+ if (selection === null || typeof selection !== 'object') {
+ return false
+ }
+
+ return 'node' in selection && selection.node != null
+}
diff --git a/packages/core/src/helpers/isProseMirrorRemoveMarkStep.ts b/packages/core/src/helpers/isProseMirrorRemoveMarkStep.ts
new file mode 100644
index 0000000000..c650d3c2a4
--- /dev/null
+++ b/packages/core/src/helpers/isProseMirrorRemoveMarkStep.ts
@@ -0,0 +1,31 @@
+import { type RemoveMarkStep } from '@tiptap/pm/transform'
+import { isProseMirrorStep } from './isProseMirrorStep.js'
+
+/**
+ * Checks if a value is a ProseMirror remove mark step
+ * @param value The value to check
+ * @returns - A boolean, if the boolean is true the value is a ProseMirror RemoveMarkStep
+ * @example ```js
+ * isProseMirrorRemoveMarkStep(transaction.steps[0])
+ * ```
+ */
+export function isProseMirrorRemoveMarkStep(value: unknown): value is RemoveMarkStep {
+ if (value === null || typeof value !== 'object') {
+ return false
+ }
+
+ const step = value as Record
+
+ if (!isProseMirrorStep(step)) {
+ return false
+ }
+
+ const json = step.toJSON()
+
+ // we use the steps jsonID to check if the step is a remove mark step
+ if (json === null || typeof json !== 'object' || json.stepType !== 'removeMark') {
+ return false
+ }
+
+ return true
+}
diff --git a/packages/core/src/helpers/isProseMirrorRemoveNodeMarkStep.ts b/packages/core/src/helpers/isProseMirrorRemoveNodeMarkStep.ts
new file mode 100644
index 0000000000..32252a9aa8
--- /dev/null
+++ b/packages/core/src/helpers/isProseMirrorRemoveNodeMarkStep.ts
@@ -0,0 +1,31 @@
+import { type RemoveNodeMarkStep } from '@tiptap/pm/transform'
+import { isProseMirrorStep } from './isProseMirrorStep.js'
+
+/**
+ * Checks if a value is a ProseMirror remove node mark step
+ * @param value The value to check
+ * @returns - A boolean, if the boolean is true the value is a ProseMirror RemoveNodeMarkStep
+ * @example ```js
+ * isProseMirrorRemoveNodeMarkStep(transaction.steps[0])
+ * ```
+ */
+export function isProseMirrorRemoveNodeMarkStep(value: unknown): value is RemoveNodeMarkStep {
+ if (value === null || typeof value !== 'object') {
+ return false
+ }
+
+ const step = value as Record
+
+ if (!isProseMirrorStep(step)) {
+ return false
+ }
+
+ const json = step.toJSON()
+
+ // we use the steps jsonID to check if the step is a remove node mark step
+ if (json === null || typeof json !== 'object' || json.stepType !== 'removeNodeMark') {
+ return false
+ }
+
+ return true
+}
diff --git a/packages/core/src/helpers/isProseMirrorReplaceAroundStep.ts b/packages/core/src/helpers/isProseMirrorReplaceAroundStep.ts
new file mode 100644
index 0000000000..d907e9c709
--- /dev/null
+++ b/packages/core/src/helpers/isProseMirrorReplaceAroundStep.ts
@@ -0,0 +1,31 @@
+import { type ReplaceAroundStep } from '@tiptap/pm/transform'
+import { isProseMirrorStep } from './isProseMirrorStep.js'
+
+/**
+ * Checks if a value is a ProseMirror replace around step
+ * @param value The value to check
+ * @returns - A boolean, if the boolean is true the value is a ProseMirror ReplaceAroundStep
+ * @example ```js
+ * isProseMirrorReplaceAroundStep(transaction.steps[0])
+ * ```
+ */
+export function isProseMirrorReplaceAroundStep(value: unknown): value is ReplaceAroundStep {
+ if (value === null || typeof value !== 'object') {
+ return false
+ }
+
+ const step = value as Record
+
+ if (!isProseMirrorStep(step)) {
+ return false
+ }
+
+ const json = step.toJSON()
+
+ // we use the steps jsonID to check if the step is a replace around step
+ if (json === null || typeof json !== 'object' || json.stepType !== 'replaceAround') {
+ return false
+ }
+
+ return true
+}
diff --git a/packages/core/src/helpers/isProseMirrorReplaceStep.ts b/packages/core/src/helpers/isProseMirrorReplaceStep.ts
new file mode 100644
index 0000000000..6a6ddd33dd
--- /dev/null
+++ b/packages/core/src/helpers/isProseMirrorReplaceStep.ts
@@ -0,0 +1,31 @@
+import { type ReplaceStep } from '@tiptap/pm/transform'
+import { isProseMirrorStep } from './isProseMirrorStep.js'
+
+/**
+ * Checks if a value is a ProseMirror replace step result
+ * @param value The value to check
+ * @returns - A boolean, if the boolean is true the value is a ProseMirror ReplaceStep
+ * @example ```js
+ * isProseMirrorReplaceStep(transaction.steps[0])
+ * ```
+ */
+export function isProseMirrorReplaceStep(value: unknown): value is ReplaceStep {
+ if (value === null || typeof value !== 'object') {
+ return false
+ }
+
+ const step = value as Record
+
+ if (!isProseMirrorStep(step)) {
+ return false
+ }
+
+ const json = step.toJSON()
+
+ // we use the steps jsonID to check if the step is a replace step
+ if (json === null || typeof json !== 'object' || json.stepType !== 'replace') {
+ return false
+ }
+
+ return true
+}
diff --git a/packages/core/src/helpers/isProseMirrorSlice.ts b/packages/core/src/helpers/isProseMirrorSlice.ts
new file mode 100644
index 0000000000..4f9f388b2c
--- /dev/null
+++ b/packages/core/src/helpers/isProseMirrorSlice.ts
@@ -0,0 +1,43 @@
+import { type Slice } from '@tiptap/pm/model'
+import { isProseMirrorFragment } from './isProseMirrorFragment.js'
+
+/**
+ * Checks if a value is a ProseMirror slice by inspecting it
+ * @param value The value to check
+ * @returns - A boolean, if true the value is a ProseMirror slice
+ * @example ```js
+ * isProseMirrorSlice(editor.state.doc.content.slice(0, 10))
+ * ```
+ */
+export function isProseMirrorSlice(value: unknown): value is Slice {
+ if (value === null || typeof value !== 'object') {
+ return false
+ }
+
+ const slice = value as Record
+
+ const openStartIsNumber = Number.isInteger(slice.openStart) && (slice.openStart as number) >= 0
+ const openEndIsNumber = Number.isInteger(slice.openEnd) && (slice.openEnd as number) >= 0
+ const sliceHasRequiredProperties =
+ typeof slice.size === 'number' &&
+ typeof slice.eq === 'function' &&
+ typeof slice.toJSON === 'function'
+
+ if (!openStartIsNumber || !openEndIsNumber || !sliceHasRequiredProperties) {
+ return false
+ }
+
+ const content = slice.content
+
+ if (content === null || typeof content !== 'object') {
+ return false
+ }
+
+ const fragment = content as Record
+
+ if (!isProseMirrorFragment(fragment)) {
+ return false
+ }
+
+ return true
+}
diff --git a/packages/core/src/helpers/isProseMirrorStep.ts b/packages/core/src/helpers/isProseMirrorStep.ts
new file mode 100644
index 0000000000..411a4690ee
--- /dev/null
+++ b/packages/core/src/helpers/isProseMirrorStep.ts
@@ -0,0 +1,30 @@
+import { type Step } from '@tiptap/pm/transform'
+
+/**
+ * Checks if a value is a ProseMirror step
+ * @param value The value to check
+ * @returns - A boolean, if the boolean is true the value is a ProseMirror Step
+ * @example ```js
+ * isProseMirrorStep(transaction.steps[0])
+ * ```
+ */
+export function isProseMirrorStep(value: unknown): value is Step {
+ if (value === null || typeof value !== 'object') {
+ return false
+ }
+
+ const step = value as Record
+
+ if (
+ typeof step.apply !== 'function' ||
+ typeof step.getMap !== 'function' ||
+ typeof step.invert !== 'function' ||
+ typeof step.map !== 'function' ||
+ typeof step.merge !== 'function' ||
+ typeof step.toJSON !== 'function'
+ ) {
+ return false
+ }
+
+ return true
+}
diff --git a/packages/core/src/helpers/isProseMirrorStepResult.ts b/packages/core/src/helpers/isProseMirrorStepResult.ts
new file mode 100644
index 0000000000..60530ee61b
--- /dev/null
+++ b/packages/core/src/helpers/isProseMirrorStepResult.ts
@@ -0,0 +1,26 @@
+import { type StepResult } from '@tiptap/pm/transform'
+
+/**
+ * Checks if a value is a ProseMirror step result
+ * @param value The value to check
+ * @returns - A boolean, if the boolean is true the value is a ProseMirror StepResult
+ * @example ```js
+ * isProseMirrorStepResult(step.apply(editor.state.doc))
+ * ```
+ */
+export function isProseMirrorStepResult(value: unknown): value is StepResult {
+ if (value === null || typeof value !== 'object') {
+ return false
+ }
+
+ const result = value as Record
+
+ const isValidDoc = result.doc !== null && typeof result.doc === 'object' && result.failed === null
+ const isValidFailed = typeof result.failed === 'string' && result.doc === null
+
+ if (!isValidDoc && !isValidFailed) {
+ return false
+ }
+
+ return true
+}
diff --git a/packages/extension-audio/CHANGELOG.md b/packages/extension-audio/CHANGELOG.md
index 2a00654f12..90382eb1d1 100644
--- a/packages/extension-audio/CHANGELOG.md
+++ b/packages/extension-audio/CHANGELOG.md
@@ -1,5 +1,12 @@
# @tiptap/extension-audio
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-audio/package.json b/packages/extension-audio/package.json
index 191d63ff05..46362e32b6 100644
--- a/packages/extension-audio/package.json
+++ b/packages/extension-audio/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-audio",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "audio extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md
index 6eee7fbbd7..8d39169338 100644
--- a/packages/extension-blockquote/CHANGELOG.md
+++ b/packages/extension-blockquote/CHANGELOG.md
@@ -1,5 +1,13 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json
index b070137efc..52609b0cd8 100644
--- a/packages/extension-blockquote/package.json
+++ b/packages/extension-blockquote/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-blockquote",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "blockquote extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md
index 0203fa6ce3..66a5ca1b33 100644
--- a/packages/extension-bold/CHANGELOG.md
+++ b/packages/extension-bold/CHANGELOG.md
@@ -1,5 +1,12 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json
index da65a506cc..43a723e39e 100644
--- a/packages/extension-bold/package.json
+++ b/packages/extension-bold/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-bold",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "bold extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md
index 9b2e12a769..80d5e5eade 100644
--- a/packages/extension-bubble-menu/CHANGELOG.md
+++ b/packages/extension-bubble-menu/CHANGELOG.md
@@ -1,5 +1,13 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json
index b09cb2fac2..4db0fd14b8 100644
--- a/packages/extension-bubble-menu/package.json
+++ b/packages/extension-bubble-menu/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-bubble-menu",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "bubble-menu extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md
index 205908f461..8692324632 100644
--- a/packages/extension-bullet-list/CHANGELOG.md
+++ b/packages/extension-bullet-list/CHANGELOG.md
@@ -1,5 +1,11 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- @tiptap/extension-list@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json
index 51ea48b1e7..34a6e1d7d1 100644
--- a/packages/extension-bullet-list/package.json
+++ b/packages/extension-bullet-list/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-bullet-list",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "bullet list extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md
index 44d50aee93..62e523b42e 100644
--- a/packages/extension-code-block-lowlight/CHANGELOG.md
+++ b/packages/extension-code-block-lowlight/CHANGELOG.md
@@ -1,5 +1,14 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/extension-code-block@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json
index ab124d7a16..1f66aa524a 100644
--- a/packages/extension-code-block-lowlight/package.json
+++ b/packages/extension-code-block-lowlight/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-code-block-lowlight",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "code block extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md
index 1ae5c81aab..768762c83b 100644
--- a/packages/extension-code-block/CHANGELOG.md
+++ b/packages/extension-code-block/CHANGELOG.md
@@ -1,5 +1,13 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json
index 6468a0ae1b..572c9f0fa4 100644
--- a/packages/extension-code-block/package.json
+++ b/packages/extension-code-block/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-code-block",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "code block extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md
index a79e20f426..1beb475be0 100644
--- a/packages/extension-code/CHANGELOG.md
+++ b/packages/extension-code/CHANGELOG.md
@@ -1,5 +1,12 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json
index f2c4d82eef..85d255a390 100644
--- a/packages/extension-code/package.json
+++ b/packages/extension-code/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-code",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "code extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md
index ac9c562021..32ac706d76 100644
--- a/packages/extension-collaboration-caret/CHANGELOG.md
+++ b/packages/extension-collaboration-caret/CHANGELOG.md
@@ -1,5 +1,13 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json
index c1f63c380e..c94b7e163b 100644
--- a/packages/extension-collaboration-caret/package.json
+++ b/packages/extension-collaboration-caret/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-collaboration-caret",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "collaboration caret extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md
index 62b9d2cb4a..4c91a12fd9 100644
--- a/packages/extension-collaboration/CHANGELOG.md
+++ b/packages/extension-collaboration/CHANGELOG.md
@@ -1,5 +1,13 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json
index 2a46ecf1a8..abd226e5ec 100644
--- a/packages/extension-collaboration/package.json
+++ b/packages/extension-collaboration/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-collaboration",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "collaboration extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md
index d161ec1386..c5eda65f22 100644
--- a/packages/extension-color/CHANGELOG.md
+++ b/packages/extension-color/CHANGELOG.md
@@ -1,5 +1,11 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- @tiptap/extension-text-style@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json
index 40976b0941..0aa4262065 100644
--- a/packages/extension-color/package.json
+++ b/packages/extension-color/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-color",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "text color extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md
index d0cea23d55..71e3154980 100644
--- a/packages/extension-details/CHANGELOG.md
+++ b/packages/extension-details/CHANGELOG.md
@@ -1,5 +1,14 @@
# @tiptap/extension-details
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/extension-text-style@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json
index 4259ee6d1b..cf4156655e 100644
--- a/packages/extension-details/package.json
+++ b/packages/extension-details/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-details",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "details extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md
index 278a03aa40..c61aa4b338 100644
--- a/packages/extension-document/CHANGELOG.md
+++ b/packages/extension-document/CHANGELOG.md
@@ -1,5 +1,12 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json
index 6b57add88a..bdf4acde9c 100644
--- a/packages/extension-document/package.json
+++ b/packages/extension-document/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-document",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "document extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md
index 6b374b5c60..4ff3476777 100644
--- a/packages/extension-drag-handle-react/CHANGELOG.md
+++ b/packages/extension-drag-handle-react/CHANGELOG.md
@@ -1,5 +1,13 @@
# @tiptap/extension-drag-handle-react
+## 3.30.1
+
+### Patch Changes
+
+- @tiptap/extension-drag-handle@3.30.1
+- @tiptap/react@3.30.1
+- @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json
index 4c8b30c28e..cf68becbdb 100644
--- a/packages/extension-drag-handle-react/package.json
+++ b/packages/extension-drag-handle-react/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-drag-handle-react",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "drag handle extension for tiptap with react",
"keywords": [
"tiptap",
diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md
index 62c6a3b842..a715f7cecc 100644
--- a/packages/extension-drag-handle-vue-2/CHANGELOG.md
+++ b/packages/extension-drag-handle-vue-2/CHANGELOG.md
@@ -1,5 +1,13 @@
# @tiptap/extension-drag-handle-vue-2
+## 3.30.1
+
+### Patch Changes
+
+- @tiptap/extension-drag-handle@3.30.1
+- @tiptap/vue-2@3.30.1
+- @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json
index bfd1d5cc0c..1de9141ae7 100644
--- a/packages/extension-drag-handle-vue-2/package.json
+++ b/packages/extension-drag-handle-vue-2/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-drag-handle-vue-2",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "drag handle extension for tiptap with vue 2",
"keywords": [
"tiptap",
diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md
index a554f1d7bf..bfdc25aba8 100644
--- a/packages/extension-drag-handle-vue-3/CHANGELOG.md
+++ b/packages/extension-drag-handle-vue-3/CHANGELOG.md
@@ -1,5 +1,13 @@
# @tiptap/extension-drag-handle-vue-3
+## 3.30.1
+
+### Patch Changes
+
+- @tiptap/extension-drag-handle@3.30.1
+- @tiptap/vue-3@3.30.1
+- @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json
index 269a025264..e1c21af2f0 100644
--- a/packages/extension-drag-handle-vue-3/package.json
+++ b/packages/extension-drag-handle-vue-3/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-drag-handle-vue-3",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "drag handle extension for tiptap with vue 3",
"keywords": [
"tiptap",
diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md
index 45a603cec7..78695ea9f1 100644
--- a/packages/extension-drag-handle/CHANGELOG.md
+++ b/packages/extension-drag-handle/CHANGELOG.md
@@ -1,5 +1,15 @@
# @tiptap/extension-drag-handle
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/extension-collaboration@3.30.1
+ - @tiptap/extension-node-range@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json
index d9553fd925..7e67ddcfb3 100644
--- a/packages/extension-drag-handle/package.json
+++ b/packages/extension-drag-handle/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-drag-handle",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "drag handle extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md
index 5b458fa880..46f6cc942a 100644
--- a/packages/extension-emoji/CHANGELOG.md
+++ b/packages/extension-emoji/CHANGELOG.md
@@ -1,5 +1,14 @@
# @tiptap/extension-emoji
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/suggestion@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json
index 4bed45ede5..80da42ea92 100644
--- a/packages/extension-emoji/package.json
+++ b/packages/extension-emoji/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-emoji",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "emoji extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md
index a0ae37ea7d..c81257317b 100644
--- a/packages/extension-file-handler/CHANGELOG.md
+++ b/packages/extension-file-handler/CHANGELOG.md
@@ -1,5 +1,14 @@
# @tiptap/extension-file-handler
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/extension-text-style@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json
index 05686ecca8..2ca6e94c50 100644
--- a/packages/extension-file-handler/package.json
+++ b/packages/extension-file-handler/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-file-handler",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "file handler extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-find-and-replace/CHANGELOG.md b/packages/extension-find-and-replace/CHANGELOG.md
index c68c01262c..7a4aa16fbb 100644
--- a/packages/extension-find-and-replace/CHANGELOG.md
+++ b/packages/extension-find-and-replace/CHANGELOG.md
@@ -1,5 +1,13 @@
# @tiptap/extension-find-and-replace
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-find-and-replace/package.json b/packages/extension-find-and-replace/package.json
index d5525cff48..f98a5e9d44 100644
--- a/packages/extension-find-and-replace/package.json
+++ b/packages/extension-find-and-replace/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-find-and-replace",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "find and replace extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md
index 65dd3dd4b9..9c40c6c07d 100644
--- a/packages/extension-floating-menu/CHANGELOG.md
+++ b/packages/extension-floating-menu/CHANGELOG.md
@@ -1,5 +1,13 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json
index f860c1846a..0cc1dee855 100644
--- a/packages/extension-floating-menu/package.json
+++ b/packages/extension-floating-menu/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-floating-menu",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "floating-menu extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md
index edd0501c44..d3ffd3d146 100644
--- a/packages/extension-font-family/CHANGELOG.md
+++ b/packages/extension-font-family/CHANGELOG.md
@@ -1,5 +1,11 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- @tiptap/extension-text-style@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json
index ff945ec493..520c9dd2f6 100644
--- a/packages/extension-font-family/package.json
+++ b/packages/extension-font-family/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-font-family",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "font family extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md
index e005de8744..b7cb5f076a 100644
--- a/packages/extension-hard-break/CHANGELOG.md
+++ b/packages/extension-hard-break/CHANGELOG.md
@@ -1,5 +1,12 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json
index 8ef8c03656..38e6238eba 100644
--- a/packages/extension-hard-break/package.json
+++ b/packages/extension-hard-break/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-hard-break",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "hard break extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md
index 6f257ce80b..b3fc0e3cac 100644
--- a/packages/extension-heading/CHANGELOG.md
+++ b/packages/extension-heading/CHANGELOG.md
@@ -1,5 +1,12 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json
index b8dd4ea790..4995ed07e5 100644
--- a/packages/extension-heading/package.json
+++ b/packages/extension-heading/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-heading",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "heading extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md
index ee0ddd2096..dceb75f354 100644
--- a/packages/extension-highlight/CHANGELOG.md
+++ b/packages/extension-highlight/CHANGELOG.md
@@ -1,5 +1,12 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json
index d6db9f77fb..5504ab137c 100644
--- a/packages/extension-highlight/package.json
+++ b/packages/extension-highlight/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-highlight",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "highlight extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md
index 5f55effdd0..86830a4424 100644
--- a/packages/extension-horizontal-rule/CHANGELOG.md
+++ b/packages/extension-horizontal-rule/CHANGELOG.md
@@ -1,5 +1,13 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json
index d7bd75dc18..7aa1794751 100644
--- a/packages/extension-horizontal-rule/package.json
+++ b/packages/extension-horizontal-rule/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-horizontal-rule",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "horizontal rule extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md
index a6ba25c02a..4f8658e1d2 100644
--- a/packages/extension-image/CHANGELOG.md
+++ b/packages/extension-image/CHANGELOG.md
@@ -1,5 +1,12 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json
index eae34c07c0..53ba87a1bc 100644
--- a/packages/extension-image/package.json
+++ b/packages/extension-image/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-image",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "image extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md
index 5e0a46f15b..8b92624340 100644
--- a/packages/extension-invisible-characters/CHANGELOG.md
+++ b/packages/extension-invisible-characters/CHANGELOG.md
@@ -1,5 +1,14 @@
# @tiptap/extension-invisible-characters
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/extension-text-style@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json
index 8bdcc00f27..04546b0c64 100644
--- a/packages/extension-invisible-characters/package.json
+++ b/packages/extension-invisible-characters/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-invisible-characters",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "invisible characters extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md
index 07780e30e7..3cb15af43a 100644
--- a/packages/extension-italic/CHANGELOG.md
+++ b/packages/extension-italic/CHANGELOG.md
@@ -1,5 +1,12 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json
index e4fdee6448..7aa3e782d0 100644
--- a/packages/extension-italic/package.json
+++ b/packages/extension-italic/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-italic",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "italic extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md
index 83d6b9e77c..8e5abdcc8c 100644
--- a/packages/extension-link/CHANGELOG.md
+++ b/packages/extension-link/CHANGELOG.md
@@ -1,5 +1,13 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json
index 0d0d039e0c..7791a4ecdc 100644
--- a/packages/extension-link/package.json
+++ b/packages/extension-link/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-link",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "link extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md
index 81f55293cb..b4d04f8520 100644
--- a/packages/extension-list/CHANGELOG.md
+++ b/packages/extension-list/CHANGELOG.md
@@ -1,5 +1,13 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Minor Changes
diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json
index c25f26dd8d..fa9acc6952 100644
--- a/packages/extension-list/package.json
+++ b/packages/extension-list/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-list",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "List extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md
index c16f2ba986..058be70bfc 100644
--- a/packages/extension-mathematics/CHANGELOG.md
+++ b/packages/extension-mathematics/CHANGELOG.md
@@ -1,5 +1,13 @@
# @tiptap/extension-mathematics
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json
index 6aaec8df43..dbd8bb3e5c 100644
--- a/packages/extension-mathematics/package.json
+++ b/packages/extension-mathematics/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-mathematics",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "latex math extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md
index 568b06f356..074fa94787 100644
--- a/packages/extension-mention/CHANGELOG.md
+++ b/packages/extension-mention/CHANGELOG.md
@@ -1,5 +1,14 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/suggestion@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json
index 36260df4b1..ef936dd015 100644
--- a/packages/extension-mention/package.json
+++ b/packages/extension-mention/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-mention",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "mention extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md
index 80b2be6900..292619ce34 100644
--- a/packages/extension-node-range/CHANGELOG.md
+++ b/packages/extension-node-range/CHANGELOG.md
@@ -1,5 +1,13 @@
# @tiptap/extension-node-range
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json
index b35d604e1f..d2bc13cf01 100644
--- a/packages/extension-node-range/package.json
+++ b/packages/extension-node-range/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-node-range",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "node range extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md
index dc10fc6fa3..1b4d74bb3c 100644
--- a/packages/extension-ordered-list/CHANGELOG.md
+++ b/packages/extension-ordered-list/CHANGELOG.md
@@ -1,5 +1,11 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- @tiptap/extension-list@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json
index 1229dae347..f4c8ce4257 100644
--- a/packages/extension-ordered-list/package.json
+++ b/packages/extension-ordered-list/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-ordered-list",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "ordered list extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md
index 6d3a36e141..04526f6a1a 100644
--- a/packages/extension-paragraph/CHANGELOG.md
+++ b/packages/extension-paragraph/CHANGELOG.md
@@ -1,5 +1,12 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json
index aacbc7d4b1..3902f6ee45 100644
--- a/packages/extension-paragraph/package.json
+++ b/packages/extension-paragraph/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-paragraph",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "paragraph extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-ruby-text/CHANGELOG.md b/packages/extension-ruby-text/CHANGELOG.md
index 731e9cf098..43b6cdf940 100644
--- a/packages/extension-ruby-text/CHANGELOG.md
+++ b/packages/extension-ruby-text/CHANGELOG.md
@@ -1,5 +1,13 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-ruby-text/package.json b/packages/extension-ruby-text/package.json
index 80fa6d7c6b..10519c1b48 100644
--- a/packages/extension-ruby-text/package.json
+++ b/packages/extension-ruby-text/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-ruby-text",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "HTML ruby text annotation extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md
index 4003196732..3634279759 100644
--- a/packages/extension-strike/CHANGELOG.md
+++ b/packages/extension-strike/CHANGELOG.md
@@ -1,5 +1,12 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json
index 790a89230e..0810d86290 100644
--- a/packages/extension-strike/package.json
+++ b/packages/extension-strike/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-strike",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "strike extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md
index d408dbee17..a20555a6fb 100644
--- a/packages/extension-subscript/CHANGELOG.md
+++ b/packages/extension-subscript/CHANGELOG.md
@@ -1,5 +1,13 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json
index 85631e33e5..d64595e3aa 100644
--- a/packages/extension-subscript/package.json
+++ b/packages/extension-subscript/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-subscript",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "subscript extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md
index 4ce4b31463..8e6f3b5fbb 100644
--- a/packages/extension-superscript/CHANGELOG.md
+++ b/packages/extension-superscript/CHANGELOG.md
@@ -1,5 +1,13 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json
index f13579809f..adffee4c3e 100644
--- a/packages/extension-superscript/package.json
+++ b/packages/extension-superscript/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-superscript",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "superscript extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md
index 736e3e067e..339fa1653e 100644
--- a/packages/extension-table-of-contents/CHANGELOG.md
+++ b/packages/extension-table-of-contents/CHANGELOG.md
@@ -1,5 +1,13 @@
# @tiptap/extension-table-of-contents
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json
index 3f3e4f57ee..263ac550ad 100644
--- a/packages/extension-table-of-contents/package.json
+++ b/packages/extension-table-of-contents/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-table-of-contents",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "table of contents extension for Tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md
index adc8c8c1af..0129d9a3fa 100644
--- a/packages/extension-table/CHANGELOG.md
+++ b/packages/extension-table/CHANGELOG.md
@@ -1,5 +1,14 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- 3c929ad: Fixed table markdown pipe escaping so the extension loads on older Safari and iOS versions (WebKit before Safari 16.4).
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json
index 68073db5b3..ae83ec82d2 100644
--- a/packages/extension-table/package.json
+++ b/packages/extension-table/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-table",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "table extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md
index 2ed71dcb2b..689d9549da 100644
--- a/packages/extension-text-align/CHANGELOG.md
+++ b/packages/extension-text-align/CHANGELOG.md
@@ -1,5 +1,12 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json
index 62c20e5715..95ac57d5e6 100644
--- a/packages/extension-text-align/package.json
+++ b/packages/extension-text-align/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-text-align",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "text align extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md
index 4aa2778726..ae09173759 100644
--- a/packages/extension-text-style/CHANGELOG.md
+++ b/packages/extension-text-style/CHANGELOG.md
@@ -1,5 +1,12 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json
index ed6035e103..36fa47ca42 100644
--- a/packages/extension-text-style/package.json
+++ b/packages/extension-text-style/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-text-style",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "text style extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md
index b3aa240f0b..307f394230 100644
--- a/packages/extension-text/CHANGELOG.md
+++ b/packages/extension-text/CHANGELOG.md
@@ -1,5 +1,12 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json
index 821e7a89c1..1befcc2244 100644
--- a/packages/extension-text/package.json
+++ b/packages/extension-text/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-text",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "text extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-twitch/CHANGELOG.md b/packages/extension-twitch/CHANGELOG.md
index 1f62f9192a..6d9963f0f3 100644
--- a/packages/extension-twitch/CHANGELOG.md
+++ b/packages/extension-twitch/CHANGELOG.md
@@ -1,5 +1,12 @@
# @tiptap/extension-twitch
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-twitch/package.json b/packages/extension-twitch/package.json
index 0c2908f16c..0b0a0fe756 100644
--- a/packages/extension-twitch/package.json
+++ b/packages/extension-twitch/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-twitch",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "a twitch embed extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md
index 845a28819b..d42fd5d253 100644
--- a/packages/extension-typography/CHANGELOG.md
+++ b/packages/extension-typography/CHANGELOG.md
@@ -1,5 +1,12 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json
index a055e890a5..3cc95e7733 100644
--- a/packages/extension-typography/package.json
+++ b/packages/extension-typography/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-typography",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "typography extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md
index 004a06d429..0ac976b911 100644
--- a/packages/extension-underline/CHANGELOG.md
+++ b/packages/extension-underline/CHANGELOG.md
@@ -1,5 +1,12 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json
index 40e91e3724..6c2aa70858 100644
--- a/packages/extension-underline/package.json
+++ b/packages/extension-underline/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-underline",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "underline extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md
index df3a28294c..68eb77fb00 100644
--- a/packages/extension-unique-id/CHANGELOG.md
+++ b/packages/extension-unique-id/CHANGELOG.md
@@ -1,5 +1,13 @@
# @tiptap/extension-unique-id
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json
index 4967eeb73a..a791731741 100644
--- a/packages/extension-unique-id/package.json
+++ b/packages/extension-unique-id/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-unique-id",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "unique id extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md
index 4b972cca44..3cb08d50a8 100644
--- a/packages/extension-youtube/CHANGELOG.md
+++ b/packages/extension-youtube/CHANGELOG.md
@@ -1,5 +1,12 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json
index b67e875e10..134a64c4f7 100644
--- a/packages/extension-youtube/package.json
+++ b/packages/extension-youtube/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extension-youtube",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "a youtube embed extension for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md
index fe7b12b653..3b85485de6 100644
--- a/packages/extensions/CHANGELOG.md
+++ b/packages/extensions/CHANGELOG.md
@@ -1,5 +1,13 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/extensions/package.json b/packages/extensions/package.json
index 89a98301c3..4921170f7a 100644
--- a/packages/extensions/package.json
+++ b/packages/extensions/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/extensions",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "various extensions for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md
index b44230d01e..37edbce50d 100644
--- a/packages/html/CHANGELOG.md
+++ b/packages/html/CHANGELOG.md
@@ -1,5 +1,13 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/html/package.json b/packages/html/package.json
index 45c242d407..f58f0babde 100644
--- a/packages/html/package.json
+++ b/packages/html/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/html",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "utility package to render tiptap JSON as HTML",
"keywords": [
"tiptap",
diff --git a/packages/markdown/CHANGELOG.md b/packages/markdown/CHANGELOG.md
index dd4271fdcf..88c9b2169d 100644
--- a/packages/markdown/CHANGELOG.md
+++ b/packages/markdown/CHANGELOG.md
@@ -1,5 +1,13 @@
# @tiptap/markdown
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/markdown/package.json b/packages/markdown/package.json
index c8458344a1..bc5b440852 100644
--- a/packages/markdown/package.json
+++ b/packages/markdown/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/markdown",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "markdown parser and serializer for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md
index 1af0491aa4..ca84366ea1 100644
--- a/packages/pm/CHANGELOG.md
+++ b/packages/pm/CHANGELOG.md
@@ -1,5 +1,7 @@
# Change Log
+## 3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/pm/package.json b/packages/pm/package.json
index 835650e252..1ba6db9ef1 100644
--- a/packages/pm/package.json
+++ b/packages/pm/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/pm",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "prosemirror wrapper package for tiptap",
"keywords": [
"prosemirror",
diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md
index cc6de0d997..c0604bfa01 100644
--- a/packages/react/CHANGELOG.md
+++ b/packages/react/CHANGELOG.md
@@ -1,5 +1,13 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Minor Changes
diff --git a/packages/react/package.json b/packages/react/package.json
index cdb04c57c9..1267fc9f3b 100644
--- a/packages/react/package.json
+++ b/packages/react/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/react",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "React components for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md
index 2edc0e11ac..441c08aa93 100644
--- a/packages/starter-kit/CHANGELOG.md
+++ b/packages/starter-kit/CHANGELOG.md
@@ -1,5 +1,35 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/extension-blockquote@3.30.1
+ - @tiptap/extension-bold@3.30.1
+ - @tiptap/extension-code@3.30.1
+ - @tiptap/extension-code-block@3.30.1
+ - @tiptap/extension-document@3.30.1
+ - @tiptap/extension-hard-break@3.30.1
+ - @tiptap/extension-heading@3.30.1
+ - @tiptap/extension-horizontal-rule@3.30.1
+ - @tiptap/extension-italic@3.30.1
+ - @tiptap/extension-link@3.30.1
+ - @tiptap/extension-list@3.30.1
+ - @tiptap/extension-paragraph@3.30.1
+ - @tiptap/extension-strike@3.30.1
+ - @tiptap/extension-text@3.30.1
+ - @tiptap/extension-underline@3.30.1
+ - @tiptap/extensions@3.30.1
+ - @tiptap/extension-list-item@3.30.1
+ - @tiptap/extension-list-keymap@3.30.1
+ - @tiptap/extension-bullet-list@3.30.1
+ - @tiptap/extension-ordered-list@3.30.1
+ - @tiptap/extension-dropcursor@3.30.1
+ - @tiptap/extension-gapcursor@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json
index 83a78a6e1d..085ed99cd5 100644
--- a/packages/starter-kit/package.json
+++ b/packages/starter-kit/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/starter-kit",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "starter kit for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md
index 3ed7ec70a8..25cd8dba1b 100644
--- a/packages/static-renderer/CHANGELOG.md
+++ b/packages/static-renderer/CHANGELOG.md
@@ -1,5 +1,13 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json
index be0365ebea..5a70f9c9e3 100644
--- a/packages/static-renderer/package.json
+++ b/packages/static-renderer/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/static-renderer",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "statically render Tiptap JSON",
"keywords": [
"tiptap",
diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md
index 3eb4dd6a50..bc37aa9b62 100644
--- a/packages/suggestion/CHANGELOG.md
+++ b/packages/suggestion/CHANGELOG.md
@@ -1,5 +1,13 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Patch Changes
diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json
index 69956b40ea..752f40d1d3 100644
--- a/packages/suggestion/package.json
+++ b/packages/suggestion/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/suggestion",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "suggestion plugin for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md
index d430c4b003..710bae1ab6 100644
--- a/packages/vue-2/CHANGELOG.md
+++ b/packages/vue-2/CHANGELOG.md
@@ -1,5 +1,13 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Minor Changes
diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json
index 5ac01398f0..c12e96af31 100644
--- a/packages/vue-2/package.json
+++ b/packages/vue-2/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/vue-2",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "Vue components for tiptap",
"keywords": [
"tiptap",
diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md
index c17eef9e5c..2e081f5e55 100644
--- a/packages/vue-3/CHANGELOG.md
+++ b/packages/vue-3/CHANGELOG.md
@@ -1,5 +1,13 @@
# Change Log
+## 3.30.1
+
+### Patch Changes
+
+- Updated dependencies [abc8828]
+ - @tiptap/core@3.30.1
+ - @tiptap/pm@3.30.1
+
## 3.30.0
### Minor Changes
diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json
index a21641e755..11535a6f92 100644
--- a/packages/vue-3/package.json
+++ b/packages/vue-3/package.json
@@ -1,6 +1,6 @@
{
"name": "@tiptap/vue-3",
- "version": "3.30.0",
+ "version": "3.30.1",
"description": "Vue components for tiptap",
"keywords": [
"tiptap",
diff --git a/skills/tiptap/SKILL.md b/skills/tiptap/SKILL.md
index fdada38d7f..49ef0081cc 100644
--- a/skills/tiptap/SKILL.md
+++ b/skills/tiptap/SKILL.md
@@ -12,10 +12,10 @@ metadata:
This skill contains instructions for integrating the Tiptap rich text editor into an app and
developing new features with it.
-This is not the Tiptap editor you know. Before you implement any feature with Tiptap, reference
-the Tiptap code and documentation to make sure you implement it correctly. Make sure any decision
-you make is in accordance to the "Best Practices" section and is grounded in the tiptap documentation
-and source code. Do not guess or invent patterns, make sure the code you write matches the library
+This is not the Tiptap editor you know: it may have evolved and changed since the version you're familiar with.
+Before you implement any feature with Tiptap, reference the Tiptap code and documentation to make sure you implement
+it correctly. Make sure any decision you make is in accordance to the "Best Practices" section and is grounded in the
+Tiptap documentation and source code. Do not guess or invent patterns, make sure the code you write matches the library
source code and the documentation.
## Initial setup
@@ -36,12 +36,26 @@ Before doing any task that involves the Tiptap editor:
1. Pull the latest changes of the `main` branch in the local tiptap and tiptap-docs repositories
2. Research the documentation and source code to see how to implement it
+Never implement new features from `tiptap-docs/src/content/ai/deprecated/`. Those pages document the
+retired AI Agent, AI Changes, and AI Suggestion extensions. In general, prefer the more powerful and flexible
+AI Toolkit: it supports robust AI functionality with agents reading, editing, and commenting on docs in various ways.
+For simple, non-agentic (one-shot) use cases, Basic AI Generation may be sufficient.
+
+To move an existing integration off the deprecated products, see
+`tiptap-docs/src/content/ai/ai-toolkit/client/advanced-guides/migration-guides/`.
+
## Best Practices
### General
-- Use the latest stable version of **Tiptap 3**.
-- All packages that start with `@tiptap/` must have the **same version number**.
+- For a new install, use the latest stable version. Resolve it with `npm view @tiptap/core version`.
+- The editor and extension packages published from the tiptap monorepo share one version line. Pin
+ every one of them to that same version. Mixing versions risks introducing bugs.
+- Some packages have their own version line. Resolve these from the registry, never from
+ `@tiptap/core`: `@tiptap/ai-toolkit`, `@tiptap/y-tiptap`, `@tiptap-pro/*` (private registry),
+ `@hocuspocus/*`.
+- Do not mix majors. For a project still on Tiptap 2, upgrade first. See
+ `tiptap-docs/src/content/guides/upgrade-tiptap-v2.mdx`.
- When integrating Tiptap for the first time, read the corresponding installation guide in tiptap-docs.
- When server-side rendering (e.g. Next.js), set the `immediatelyRender: false` option when initializing the editor. Otherwise, the editor will crash. Learn more about this in tiptap-docs.
@@ -99,21 +113,21 @@ Track, accept, and reject document edits. See `tiptap-docs/src/content/tracked-c
Convert documents to and from DOCX, PDF, Markdown, and other formats. See `tiptap-docs/src/content/conversion/`.
-### AI content generation
-
-Generate text content into the document using AI. See `tiptap-docs/src/content/content-ai/capabilities/ai-toolkit/workflows/insert-content.mdx`.
-
### AI agent document editing
-Give an AI agent the ability to edit Tiptap documents. See `tiptap-docs/src/content/content-ai/capabilities/ai-toolkit/`.
+Give an AI agent the ability to read, write to, and accurately edit Tiptap documents. See `tiptap-docs/src/content/ai/ai-toolkit/overview.mdx`.
### AI review and proofreading
-Review, proofread, and suggest style improvements. See `tiptap-docs/src/content/content-ai/capabilities/ai-toolkit/workflows/proofreader.mdx`.
+Review, proofread, and suggest style improvements. See `tiptap-docs/src/content/ai/ai-toolkit/overview.mdx`.
+
+### AI client-side agent tools
+
+Run AI workflows that edit rich text documents in the browser by interacting directly with the Tiptap editor. See `tiptap-docs/src/content/ai/ai-toolkit/client/overview.mdx`.
-### AI server-side processing
+### Basic (non-agent) AI content generation
-Run AI workflows that edit rich text documents on the server. See `tiptap-docs/src/content/content-ai/capabilities/server-ai-toolkit/`.
+Generate and edit text content via basic one-shot prompts. See `tiptap-docs/src/content/ai/basic/overview.mdx`.
### Version history